diff --git a/Microsoft/Windows/PowerShell/ModuleAnalysisCache b/Microsoft/Windows/PowerShell/ModuleAnalysisCache
new file mode 100644
index 00000000..dd634de2
Binary files /dev/null and b/Microsoft/Windows/PowerShell/ModuleAnalysisCache differ
diff --git a/apps/web/package-lock.json b/apps/web/package-lock.json
new file mode 100644
index 00000000..0a8c3d8f
--- /dev/null
+++ b/apps/web/package-lock.json
@@ -0,0 +1,19134 @@
+{
+ "name": "web",
+ "version": "0.1.0",
+ "lockfileVersion": 3,
+ "requires": true,
+ "packages": {
+ "": {
+ "name": "web",
+ "version": "0.1.0",
+ "dependencies": {
+ "@creit.tech/stellar-wallets-kit": "^2.0.1",
+ "@radix-ui/react-avatar": "^1.1.11",
+ "@radix-ui/react-dialog": "^1.1.2",
+ "@radix-ui/react-dropdown-menu": "^2.1.16",
+ "@radix-ui/react-popover": "^1.1.2",
+ "@radix-ui/react-scroll-area": "^1.2.10",
+ "@radix-ui/react-separator": "^1.1.8",
+ "@radix-ui/react-slot": "^1.2.4",
+ "@stellar/stellar-sdk": "^13.0.0",
+ "@tanstack/react-query": "^5.28.14",
+ "class-variance-authority": "^0.7.1",
+ "clsx": "^2.1.1",
+ "date-fns": "^4.1.0",
+ "lance": "file:../..",
+ "lucide-react": "^1.7.0",
+ "next": "16.1.6",
+ "next-themes": "^0.4.6",
+ "react": "19.2.3",
+ "react-dom": "19.2.3",
+ "recharts": "^3.8.1",
+ "sonner": "^2.0.7",
+ "tailwind-merge": "^2.6.0",
+ "zod": "4.3.6",
+ "zustand": "^5.0.3"
+ },
+ "devDependencies": {
+ "@tailwindcss/postcss": "^4",
+ "@testing-library/jest-dom": "^6.6.3",
+ "@testing-library/react": "^16.3.0",
+ "@types/node": "^20.19.39",
+ "@types/react": "^19",
+ "@types/react-dom": "^19",
+ "@vitest/coverage-v8": "^4.1.5",
+ "eslint": "^9",
+ "eslint-config-next": "16.1.6",
+ "jsdom": "^26.1.0",
+ "tailwindcss": "^4.2.2",
+ "typescript": "^5",
+ "vitest": "^4.1.5"
+ },
+ "optionalDependencies": {
+ "@next/swc-linux-x64-gnu": "16.1.6",
+ "@next/swc-linux-x64-musl": "16.1.6",
+ "@tailwindcss/oxide-linux-x64-gnu": "4.2.2",
+ "@tailwindcss/oxide-linux-x64-musl": "4.2.2",
+ "lightningcss-linux-x64-gnu": "1.32.0",
+ "lightningcss-linux-x64-musl": "1.32.0"
+ }
+ },
+ "../..": {
+ "workspaces": [
+ "apps/web"
+ ],
+ "dependencies": {
+ "@tanstack/react-query": "^5.100.1",
+ "zod": "4.3.6"
+ },
+ "devDependencies": {
+ "@playwright/test": "^1.43.0",
+ "@types/node": "^20.0.0"
+ },
+ "optionalDependencies": {
+ "@next/swc-linux-x64-gnu": "16.1.6",
+ "@next/swc-linux-x64-musl": "16.1.6",
+ "@tailwindcss/oxide-linux-x64-gnu": "4.2.2",
+ "@tailwindcss/oxide-linux-x64-musl": "4.2.2",
+ "lightningcss-linux-x64-gnu": "^1.32.0",
+ "lightningcss-linux-x64-musl": "^1.32.0"
+ }
+ },
+ "node_modules/@adobe/css-tools": {
+ "version": "4.5.0",
+ "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.5.0.tgz",
+ "integrity": "sha512-6OzddxPio9UiWTCemp4N8cYLV2ZN1ncRnV1cVGtve7dhPOtRkleRyx32GQCYSwDYgaHU3USMm84tNsvKzRCa1Q==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@adraffy/ens-normalize": {
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/@adraffy/ens-normalize/-/ens-normalize-1.11.1.tgz",
+ "integrity": "sha512-nhCBV3quEgesuf7c7KYfperqSS14T8bYuvJ8PcLJp6znkZpFc0AuW4qBtr8eKVyPPe/8RSr7sglCWPU5eaxwKQ==",
+ "license": "MIT"
+ },
+ "node_modules/@albedo-link/intent": {
+ "version": "0.12.0",
+ "resolved": "https://registry.npmjs.org/@albedo-link/intent/-/intent-0.12.0.tgz",
+ "integrity": "sha512-UlGBhi0qASDYOjLrOL4484vQ26Ee3zTK2oAgvPMClOs+1XNk3zbs3dECKZv+wqeSI8SkHow8mXLTa16eVh+dQA==",
+ "license": "MIT"
+ },
+ "node_modules/@alloc/quick-lru": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz",
+ "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/@asamuzakjp/css-color": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.2.0.tgz",
+ "integrity": "sha512-K1A6z8tS3XsmCMM86xoWdn7Fkdn9m6RSVtocUrJYIwZnFVkng/PvkEoWtOWmP+Scc6saYWHWZYbndEEXxl24jw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@csstools/css-calc": "^2.1.3",
+ "@csstools/css-color-parser": "^3.0.9",
+ "@csstools/css-parser-algorithms": "^3.0.4",
+ "@csstools/css-tokenizer": "^3.0.3",
+ "lru-cache": "^10.4.3"
+ }
+ },
+ "node_modules/@asamuzakjp/css-color/node_modules/lru-cache": {
+ "version": "10.4.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz",
+ "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/@babel/code-frame": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.7.tgz",
+ "integrity": "sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-validator-identifier": "^7.29.7",
+ "js-tokens": "^4.0.0",
+ "picocolors": "^1.1.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/compat-data": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.7.tgz",
+ "integrity": "sha512-locTkQyKvwIEgBzVrn8693ebc97F2U8ZHjbXwDXJ5Fn2TCpNwTlKcaKLkdHop5c/icOFE7qt7Q9JC5hnKNa6Gg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/core": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.7.tgz",
+ "integrity": "sha512-RgHBCvtjbOK2gXSNBNIkNoEc9qoVEtau3hj8gEqKQuL3HZAibKarWFEI3Lfm6EYKkLalOh8eSrj9b+ch9H/VBA==",
+ "dev": true,
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "@babel/code-frame": "^7.29.7",
+ "@babel/generator": "^7.29.7",
+ "@babel/helper-compilation-targets": "^7.29.7",
+ "@babel/helper-module-transforms": "^7.29.7",
+ "@babel/helpers": "^7.29.7",
+ "@babel/parser": "^7.29.7",
+ "@babel/template": "^7.29.7",
+ "@babel/traverse": "^7.29.7",
+ "@babel/types": "^7.29.7",
+ "@jridgewell/remapping": "^2.3.5",
+ "convert-source-map": "^2.0.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.2.3",
+ "semver": "^6.3.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/babel"
+ }
+ },
+ "node_modules/@babel/core/node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ }
+ },
+ "node_modules/@babel/generator": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz",
+ "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/parser": "^7.29.7",
+ "@babel/types": "^7.29.7",
+ "@jridgewell/gen-mapping": "^0.3.12",
+ "@jridgewell/trace-mapping": "^0.3.28",
+ "jsesc": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-compilation-targets": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.29.7.tgz",
+ "integrity": "sha512-wem6WaBj4NaVYVdNhLPPVacES6ZJ+KBBfSkTMD3YZxbP3rm3Di85tJU5ljaUNhaOynt+Aj0xruhYuzQBt8n71g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/compat-data": "^7.29.7",
+ "@babel/helper-validator-option": "^7.29.7",
+ "browserslist": "^4.24.0",
+ "lru-cache": "^5.1.1",
+ "semver": "^6.3.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-compilation-targets/node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ }
+ },
+ "node_modules/@babel/helper-globals": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz",
+ "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-module-imports": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.29.7.tgz",
+ "integrity": "sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/traverse": "^7.29.7",
+ "@babel/types": "^7.29.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-module-transforms": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.29.7.tgz",
+ "integrity": "sha512-UPUVSyXbOh627KiCIGQSgwWzGeBKLkaJ9PJEdrngIwMSzxLR4jS4+f1f1jb7VzBbg8nFLaYotvVPFCTqdrmTAg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-module-imports": "^7.29.7",
+ "@babel/helper-validator-identifier": "^7.29.7",
+ "@babel/traverse": "^7.29.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ },
+ "peerDependencies": {
+ "@babel/core": "^7.0.0"
+ }
+ },
+ "node_modules/@babel/helper-string-parser": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz",
+ "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-validator-identifier": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz",
+ "integrity": "sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-validator-option": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.29.7.tgz",
+ "integrity": "sha512-N9ZErrD+yW5geCDtBqnOoxmR8+tNKiGuxKlDpuJxfsqpa2dFcexaziGAE/qoHLiDDreVNMupxGmSoNlyvsA3gw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helpers": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.7.tgz",
+ "integrity": "sha512-1k2lAGRMfHTcwuNYcCNUmaUffmQv8KWMfh2iJUUeRlwlwH4FdNG7mfPI10NPfLHJFThE4Tyr4mv7kTNZOiPuBg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/template": "^7.29.7",
+ "@babel/types": "^7.29.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/parser": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.7.tgz",
+ "integrity": "sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/types": "^7.29.7"
+ },
+ "bin": {
+ "parser": "bin/babel-parser.js"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@babel/runtime": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.7.tgz",
+ "integrity": "sha512-Nq8OhGWiZIZGV6hLHoyAKLLcJihP/xFeBMGJoUrxTX2psI8dCifzLhZISFb+VWS3wFMRDmCGw5R+dOySCqPLhw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/template": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz",
+ "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/code-frame": "^7.29.7",
+ "@babel/parser": "^7.29.7",
+ "@babel/types": "^7.29.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/traverse": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz",
+ "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/code-frame": "^7.29.7",
+ "@babel/generator": "^7.29.7",
+ "@babel/helper-globals": "^7.29.7",
+ "@babel/parser": "^7.29.7",
+ "@babel/template": "^7.29.7",
+ "@babel/types": "^7.29.7",
+ "debug": "^4.3.1"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/types": {
+ "version": "7.29.7",
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz",
+ "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-string-parser": "^7.29.7",
+ "@babel/helper-validator-identifier": "^7.29.7"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@base-org/account": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/@base-org/account/-/account-2.4.0.tgz",
+ "integrity": "sha512-A4Umpi8B9/pqR78D1Yoze4xHyQaujioVRqqO3d6xuDFw9VRtjg6tK3bPlwE0aW+nVH/ntllCpPa2PbI8Rnjcug==",
+ "license": "Apache-2.0",
+ "optional": true,
+ "dependencies": {
+ "@coinbase/cdp-sdk": "^1.0.0",
+ "@noble/hashes": "1.4.0",
+ "clsx": "1.2.1",
+ "eventemitter3": "5.0.1",
+ "idb-keyval": "6.2.1",
+ "ox": "0.6.9",
+ "preact": "10.24.2",
+ "viem": "^2.31.7",
+ "zustand": "5.0.3"
+ }
+ },
+ "node_modules/@base-org/account/node_modules/@noble/hashes": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz",
+ "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==",
+ "license": "MIT",
+ "optional": true,
+ "engines": {
+ "node": ">= 16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@base-org/account/node_modules/clsx": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz",
+ "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==",
+ "license": "MIT",
+ "optional": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/@base-org/account/node_modules/preact": {
+ "version": "10.24.2",
+ "resolved": "https://registry.npmjs.org/preact/-/preact-10.24.2.tgz",
+ "integrity": "sha512-1cSoF0aCC8uaARATfrlz4VCBqE8LwZwRfLgkxJOQwAlQt6ayTmi0D9OF7nXid1POI5SZidFuG9CnlXbDfLqY/Q==",
+ "license": "MIT",
+ "optional": true,
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/preact"
+ }
+ },
+ "node_modules/@base-org/account/node_modules/zustand": {
+ "version": "5.0.3",
+ "resolved": "https://registry.npmjs.org/zustand/-/zustand-5.0.3.tgz",
+ "integrity": "sha512-14fwWQtU3pH4dE0dOpdMiWjddcH+QzKIgk1cl8epwSE7yag43k/AD/m4L6+K7DytAOr9gGBe3/EXj9g7cdostg==",
+ "license": "MIT",
+ "optional": true,
+ "engines": {
+ "node": ">=12.20.0"
+ },
+ "peerDependencies": {
+ "@types/react": ">=18.0.0",
+ "immer": ">=9.0.6",
+ "react": ">=18.0.0",
+ "use-sync-external-store": ">=1.2.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "immer": {
+ "optional": true
+ },
+ "react": {
+ "optional": true
+ },
+ "use-sync-external-store": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@bcoe/v8-coverage": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-1.0.2.tgz",
+ "integrity": "sha512-6zABk/ECA/QYSCQ1NGiVwwbQerUCZ+TQbp64Q3AgmfNvurHH0j8TtXa1qbShXA6qqkpAj4V5W8pP6mLe1mcMqA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@coinbase/cdp-sdk": {
+ "version": "1.50.0",
+ "resolved": "https://registry.npmjs.org/@coinbase/cdp-sdk/-/cdp-sdk-1.50.0.tgz",
+ "integrity": "sha512-lKK6aC2z8q8C3IA39unNuWc8lgM0hU9mSqkdd7Bncf5xvT28f8G6upexFtJweNwxkeAJwiLSgBkwOhqMK2/OGQ==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana-program/system": "^0.10.0",
+ "@solana-program/token": "^0.9.0",
+ "@solana/kit": "^5.5.1",
+ "abitype": "1.0.6",
+ "axios": "1.16.0",
+ "axios-retry": "^4.5.0",
+ "bs58": "^6.0.0",
+ "jose": "^6.2.0",
+ "md5": "^2.3.0",
+ "uncrypto": "^0.1.3",
+ "viem": "^2.47.0",
+ "zod": "^3.25.76"
+ }
+ },
+ "node_modules/@coinbase/cdp-sdk/node_modules/abitype": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/abitype/-/abitype-1.0.6.tgz",
+ "integrity": "sha512-MMSqYh4+C/aVqI2RQaWqbvI4Kxo5cQV40WQ4QFtDnNzCkqChm8MuENhElmynZlO0qUy/ObkEUaXtKqYnx1Kp3A==",
+ "license": "MIT",
+ "optional": true,
+ "funding": {
+ "url": "https://github.com/sponsors/wevm"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.0.4",
+ "zod": "^3 >=3.22.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ },
+ "zod": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@creit.tech/stellar-wallets-kit": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@creit.tech/stellar-wallets-kit/-/stellar-wallets-kit-2.2.0.tgz",
+ "integrity": "sha512-GUXS0HUggxWiK2c3sNi5vnIE/40iVQqIpH7OBca6s0BUOk3GCTmZrcaep4AhNxkuWpqOCQ78i29PVr7F/0xWvA==",
+ "license": "MIT",
+ "dependencies": {
+ "@albedo-link/intent": "0.12.0",
+ "@creit.tech/xbull-wallet-connect": "0.4.0",
+ "@hot-wallet/sdk": "1.0.11",
+ "@ledgerhq/hw-app-str": "7.2.8",
+ "@ledgerhq/hw-transport": "6.31.12",
+ "@ledgerhq/hw-transport-webusb": "6.29.12",
+ "@lobstrco/signer-extension-api": "2.0.0",
+ "@preact/signals": "2.9.0",
+ "@reown/appkit": "1.8.19",
+ "@stellar/freighter-api": "6.0.0",
+ "@stellar/stellar-base": "14.0.1",
+ "@trezor/connect-plugin-stellar": "9.2.6",
+ "@trezor/connect-web": "9.7.2",
+ "@twind/core": "1.1.3",
+ "@twind/preset-autoprefix": "1.0.7",
+ "@twind/preset-tailwind": "1.1.4",
+ "@walletconnect/sign-client": "2.23.0",
+ "@walletconnect/types": "2.23.9",
+ "htm": "3.1.1",
+ "preact": "^10.29.0"
+ }
+ },
+ "node_modules/@creit.tech/stellar-wallets-kit/node_modules/@twind/core": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/@twind/core/-/core-1.1.3.tgz",
+ "integrity": "sha512-/B/aNFerMb2IeyjSJy3SJxqVxhrT77gBDknLMiZqXIRr4vNJqiuhx7KqUSRzDCwUmyGuogkamz+aOLzN6MeSLw==",
+ "funding": [
+ {
+ "type": "Open Collective",
+ "url": "https://opencollective.com/twind"
+ },
+ {
+ "type": "Github Sponsor",
+ "url": "https://github.com/sponsors/tw-in-js"
+ },
+ {
+ "type": "Ko-fi",
+ "url": "https://ko-fi.com/twind"
+ }
+ ],
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "csstype": "^3.1.1"
+ },
+ "engines": {
+ "node": ">=14.15.0"
+ },
+ "peerDependencies": {
+ "typescript": "^4.8.4"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@creit.tech/stellar-wallets-kit/node_modules/@twind/preset-autoprefix": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/@twind/preset-autoprefix/-/preset-autoprefix-1.0.7.tgz",
+ "integrity": "sha512-3wmHO0pG/CVxYBNZUV0tWcL7CP0wD5KpyWAQE/KOalWmOVBj+nH6j3v6Y3I3pRuMFaG5DC78qbYbhA1O11uG3w==",
+ "funding": [
+ {
+ "type": "Open Collective",
+ "url": "https://opencollective.com/twind"
+ },
+ {
+ "type": "Github Sponsor",
+ "url": "https://github.com/sponsors/tw-in-js"
+ },
+ {
+ "type": "Ko-fi",
+ "url": "https://ko-fi.com/twind"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "style-vendorizer": "^2.2.3"
+ },
+ "engines": {
+ "node": ">=14.15.0"
+ },
+ "peerDependencies": {
+ "@twind/core": "^1.1.0",
+ "typescript": "^4.8.4"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@creit.tech/stellar-wallets-kit/node_modules/@twind/preset-tailwind": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/@twind/preset-tailwind/-/preset-tailwind-1.1.4.tgz",
+ "integrity": "sha512-zv85wrP/DW4AxgWrLfH7kyGn/KJF3K04FMLVl2AjoxZGYdCaoZDkL8ma3hzaKQ+WGgBFRubuB/Ku2Rtv/wjzVw==",
+ "funding": [
+ {
+ "type": "Open Collective",
+ "url": "https://opencollective.com/twind"
+ },
+ {
+ "type": "Github Sponsor",
+ "url": "https://github.com/sponsors/tw-in-js"
+ },
+ {
+ "type": "Ko-fi",
+ "url": "https://ko-fi.com/twind"
+ }
+ ],
+ "license": "MIT",
+ "engines": {
+ "node": ">=14.15.0"
+ },
+ "peerDependencies": {
+ "@twind/core": "^1.1.0",
+ "typescript": "^4.8.4"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@creit.tech/xbull-wallet-connect": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/@creit.tech/xbull-wallet-connect/-/xbull-wallet-connect-0.4.0.tgz",
+ "integrity": "sha512-LrCUIqUz50SkZ4mv2hTqSmwews8CNRYVoZ9+VjLsK/1U8PByzXTxv1vZyenj6avRTG86ifpoeihz7D3D5YIDrQ==",
+ "dependencies": {
+ "rxjs": "^7.5.5",
+ "tweetnacl": "^1.0.3",
+ "tweetnacl-util": "^0.15.1"
+ },
+ "engines": {
+ "node": ">=16"
+ }
+ },
+ "node_modules/@csstools/color-helpers": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.1.0.tgz",
+ "integrity": "sha512-S11EXWJyy0Mz5SYvRmY8nJYTFFd1LCNV+7cXyAgQtOOuzb4EsgfqDufL+9esx72/eLhsRdGZwaldu/h+E4t4BA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/csstools"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/csstools"
+ }
+ ],
+ "license": "MIT-0",
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@csstools/css-calc": {
+ "version": "2.1.4",
+ "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.4.tgz",
+ "integrity": "sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/csstools"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/csstools"
+ }
+ ],
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ },
+ "peerDependencies": {
+ "@csstools/css-parser-algorithms": "^3.0.5",
+ "@csstools/css-tokenizer": "^3.0.4"
+ }
+ },
+ "node_modules/@csstools/css-color-parser": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.1.0.tgz",
+ "integrity": "sha512-nbtKwh3a6xNVIp/VRuXV64yTKnb1IjTAEEh3irzS+HkKjAOYLTGNb9pmVNntZ8iVBHcWDA2Dof0QtPgFI1BaTA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/csstools"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/csstools"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "@csstools/color-helpers": "^5.1.0",
+ "@csstools/css-calc": "^2.1.4"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "peerDependencies": {
+ "@csstools/css-parser-algorithms": "^3.0.5",
+ "@csstools/css-tokenizer": "^3.0.4"
+ }
+ },
+ "node_modules/@csstools/css-parser-algorithms": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz",
+ "integrity": "sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/csstools"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/csstools"
+ }
+ ],
+ "license": "MIT",
+ "peer": true,
+ "engines": {
+ "node": ">=18"
+ },
+ "peerDependencies": {
+ "@csstools/css-tokenizer": "^3.0.4"
+ }
+ },
+ "node_modules/@csstools/css-tokenizer": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz",
+ "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/csstools"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/csstools"
+ }
+ ],
+ "license": "MIT",
+ "peer": true,
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@emnapi/wasi-threads": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.1.tgz",
+ "integrity": "sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==",
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "tslib": "^2.4.0"
+ }
+ },
+ "node_modules/@emurgo/cardano-serialization-lib-browser": {
+ "version": "13.2.1",
+ "resolved": "https://registry.npmjs.org/@emurgo/cardano-serialization-lib-browser/-/cardano-serialization-lib-browser-13.2.1.tgz",
+ "integrity": "sha512-7RfX1gI16Vj2DgCp/ZoXqyLAakWo6+X95ku/rYGbVzuS/1etrlSiJmdbmdm+eYmszMlGQjrtOJQeVLXoj4L/Ag==",
+ "license": "MIT"
+ },
+ "node_modules/@emurgo/cardano-serialization-lib-nodejs": {
+ "version": "13.2.0",
+ "resolved": "https://registry.npmjs.org/@emurgo/cardano-serialization-lib-nodejs/-/cardano-serialization-lib-nodejs-13.2.0.tgz",
+ "integrity": "sha512-Bz1zLGEqBQ0BVkqt1OgMxdBOE3BdUWUd7Ly9Ecr/aUwkA8AV1w1XzBMe4xblmJHnB1XXNlPH4SraXCvO+q0Mig==",
+ "license": "MIT"
+ },
+ "node_modules/@eslint-community/eslint-utils": {
+ "version": "4.9.1",
+ "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz",
+ "integrity": "sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "eslint-visitor-keys": "^3.4.3"
+ },
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
+ },
+ "peerDependencies": {
+ "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0"
+ }
+ },
+ "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": {
+ "version": "3.4.3",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
+ "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
+ }
+ },
+ "node_modules/@eslint-community/regexpp": {
+ "version": "4.12.2",
+ "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz",
+ "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
+ }
+ },
+ "node_modules/@eslint/config-array": {
+ "version": "0.21.2",
+ "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.2.tgz",
+ "integrity": "sha512-nJl2KGTlrf9GjLimgIru+V/mzgSK0ABCDQRvxw5BjURL7WfH5uoWmizbH7QB6MmnMBd8cIC9uceWnezL1VZWWw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@eslint/object-schema": "^2.1.7",
+ "debug": "^4.3.1",
+ "minimatch": "^3.1.5"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ }
+ },
+ "node_modules/@eslint/config-helpers": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.2.tgz",
+ "integrity": "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@eslint/core": "^0.17.0"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ }
+ },
+ "node_modules/@eslint/core": {
+ "version": "0.17.0",
+ "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.17.0.tgz",
+ "integrity": "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@types/json-schema": "^7.0.15"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ }
+ },
+ "node_modules/@eslint/eslintrc": {
+ "version": "3.3.5",
+ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.5.tgz",
+ "integrity": "sha512-4IlJx0X0qftVsN5E+/vGujTRIFtwuLbNsVUe7TO6zYPDR1O6nFwvwhIKEKSrl6dZchmYBITazxKoUYOjdtjlRg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ajv": "^6.14.0",
+ "debug": "^4.3.2",
+ "espree": "^10.0.1",
+ "globals": "^14.0.0",
+ "ignore": "^5.2.0",
+ "import-fresh": "^3.2.1",
+ "js-yaml": "^4.1.1",
+ "minimatch": "^3.1.5",
+ "strip-json-comments": "^3.1.1"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
+ }
+ },
+ "node_modules/@eslint/js": {
+ "version": "9.39.4",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.4.tgz",
+ "integrity": "sha512-nE7DEIchvtiFTwBw4Lfbu59PG+kCofhjsKaCWzxTpt4lfRjRMqG6uMBzKXuEcyXhOHoUp9riAm7/aWYGhXZ9cw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "url": "https://eslint.org/donate"
+ }
+ },
+ "node_modules/@eslint/object-schema": {
+ "version": "2.1.7",
+ "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz",
+ "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ }
+ },
+ "node_modules/@eslint/plugin-kit": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz",
+ "integrity": "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@eslint/core": "^0.17.0",
+ "levn": "^0.4.1"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ }
+ },
+ "node_modules/@ethereumjs/common": {
+ "version": "10.1.1",
+ "resolved": "https://registry.npmjs.org/@ethereumjs/common/-/common-10.1.1.tgz",
+ "integrity": "sha512-NefPzPlrJ9w+NWVe06P+sHZQU98E1AEU9vhiHJEVT2wEcNBC1YX6hON9+smrfbn86C4U1pb2zbvjhkF+n/LKBw==",
+ "license": "MIT",
+ "dependencies": {
+ "@ethereumjs/util": "^10.1.1",
+ "eventemitter3": "^5.0.1"
+ }
+ },
+ "node_modules/@ethereumjs/rlp": {
+ "version": "10.1.1",
+ "resolved": "https://registry.npmjs.org/@ethereumjs/rlp/-/rlp-10.1.1.tgz",
+ "integrity": "sha512-jbnWTEwcpoY+gE0r+wxfDG9zgiu54DcTcwnc9sX3DsqKR4l5K7x2V8mQL3Et6hURa4DuT9g7z6ukwpBLFchszg==",
+ "license": "MPL-2.0",
+ "bin": {
+ "rlp": "bin/rlp.cjs"
+ },
+ "engines": {
+ "node": ">=20"
+ }
+ },
+ "node_modules/@ethereumjs/tx": {
+ "version": "10.1.1",
+ "resolved": "https://registry.npmjs.org/@ethereumjs/tx/-/tx-10.1.1.tgz",
+ "integrity": "sha512-Kz8GWIKQjEQB60ko9hsYDX3rZMHZZOTcmm6OFl855Lu3padVnf5ZactUKM6nmWPsumHED5bWDjO32novZd1zyw==",
+ "license": "MPL-2.0",
+ "dependencies": {
+ "@ethereumjs/common": "^10.1.1",
+ "@ethereumjs/rlp": "^10.1.1",
+ "@ethereumjs/util": "^10.1.1",
+ "@noble/curves": "^2.0.1",
+ "@noble/hashes": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=20"
+ }
+ },
+ "node_modules/@ethereumjs/tx/node_modules/@noble/curves": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-2.2.0.tgz",
+ "integrity": "sha512-T/BoHgFXirb0ENSPBquzX0rcjXeM6Lo892a2jlYJkqk83LqZx0l1Of7DzlKJ6jkpvMrkHSnAcgb5JegL8SeIkQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@noble/hashes": "2.2.0"
+ },
+ "engines": {
+ "node": ">= 20.19.0"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@ethereumjs/tx/node_modules/@noble/hashes": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-2.2.0.tgz",
+ "integrity": "sha512-IYqDGiTXab6FniAgnSdZwgWbomxpy9FtYvLKs7wCUs2a8RkITG+DFGO1DM9cr+E3/RgADRpFjrKVaJ1z6sjtEg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 20.19.0"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@ethereumjs/util": {
+ "version": "10.1.1",
+ "resolved": "https://registry.npmjs.org/@ethereumjs/util/-/util-10.1.1.tgz",
+ "integrity": "sha512-r2EhaeEmLZXVs1dT2HJFQysAkr63ZWATu/9tgYSp1IlvjvwyC++DLg5kCDwMM49HBq3sOAhrPnXkoqf9DV2gbw==",
+ "license": "MPL-2.0",
+ "dependencies": {
+ "@ethereumjs/rlp": "^10.1.1",
+ "@noble/curves": "^2.0.1",
+ "@noble/hashes": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=20"
+ }
+ },
+ "node_modules/@ethereumjs/util/node_modules/@noble/curves": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-2.2.0.tgz",
+ "integrity": "sha512-T/BoHgFXirb0ENSPBquzX0rcjXeM6Lo892a2jlYJkqk83LqZx0l1Of7DzlKJ6jkpvMrkHSnAcgb5JegL8SeIkQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@noble/hashes": "2.2.0"
+ },
+ "engines": {
+ "node": ">= 20.19.0"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@ethereumjs/util/node_modules/@noble/hashes": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-2.2.0.tgz",
+ "integrity": "sha512-IYqDGiTXab6FniAgnSdZwgWbomxpy9FtYvLKs7wCUs2a8RkITG+DFGO1DM9cr+E3/RgADRpFjrKVaJ1z6sjtEg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 20.19.0"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@fivebinaries/coin-selection": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@fivebinaries/coin-selection/-/coin-selection-3.0.0.tgz",
+ "integrity": "sha512-h25Pn1ZA7oqQBQDodGAgIsQt66T2wDge9onBKNqE66WNWL0KJiKJbpij8YOLo5AAlEIg5IS7EB1QjBgDOIg6DQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@emurgo/cardano-serialization-lib-browser": "^13.2.0",
+ "@emurgo/cardano-serialization-lib-nodejs": "13.2.0"
+ }
+ },
+ "node_modules/@floating-ui/core": {
+ "version": "1.7.5",
+ "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.7.5.tgz",
+ "integrity": "sha512-1Ih4WTWyw0+lKyFMcBHGbb5U5FtuHJuujoyyr5zTaWS5EYMeT6Jb2AuDeftsCsEuchO+mM2ij5+q9crhydzLhQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@floating-ui/utils": "^0.2.11"
+ }
+ },
+ "node_modules/@floating-ui/dom": {
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.7.6.tgz",
+ "integrity": "sha512-9gZSAI5XM36880PPMm//9dfiEngYoC6Am2izES1FF406YFsjvyBMmeJ2g4SAju3xWwtuynNRFL2s9hgxpLI5SQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@floating-ui/core": "^1.7.5",
+ "@floating-ui/utils": "^0.2.11"
+ }
+ },
+ "node_modules/@floating-ui/react-dom": {
+ "version": "2.1.8",
+ "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.8.tgz",
+ "integrity": "sha512-cC52bHwM/n/CxS87FH0yWdngEZrjdtLW/qVruo68qg+prK7ZQ4YGdut2GyDVpoGeAYe/h899rVeOVm6Oi40k2A==",
+ "license": "MIT",
+ "dependencies": {
+ "@floating-ui/dom": "^1.7.6"
+ },
+ "peerDependencies": {
+ "react": ">=16.8.0",
+ "react-dom": ">=16.8.0"
+ }
+ },
+ "node_modules/@floating-ui/utils": {
+ "version": "0.2.11",
+ "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.11.tgz",
+ "integrity": "sha512-RiB/yIh78pcIxl6lLMG0CgBXAZ2Y0eVHqMPYugu+9U0AeT6YBeiJpf7lbdJNIugFP5SIjwNRgo4DhR1Qxi26Gg==",
+ "license": "MIT"
+ },
+ "node_modules/@hot-wallet/sdk": {
+ "version": "1.0.11",
+ "resolved": "https://registry.npmjs.org/@hot-wallet/sdk/-/sdk-1.0.11.tgz",
+ "integrity": "sha512-qRDH/4yqnRCnk7L/Qd0/LDOKDUKWcFgvf6eRELJkP0OgxIe65i/iXaG+u2lL0mLbTGkiWYk67uAvEerNUv2gzA==",
+ "dependencies": {
+ "@near-js/crypto": "^1.4.0",
+ "@near-js/utils": "^1.0.0",
+ "@near-wallet-selector/core": "^8.9.13",
+ "@solana/wallet-adapter-base": "^0.9.23",
+ "@solana/web3.js": "^1.95.0",
+ "borsh": "^2.0.0",
+ "js-sha256": "^0.11.0",
+ "sha1": "^1.1.1",
+ "uuid4": "^2.0.3"
+ }
+ },
+ "node_modules/@humanfs/core": {
+ "version": "0.19.2",
+ "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.2.tgz",
+ "integrity": "sha512-UhXNm+CFMWcbChXywFwkmhqjs3PRCmcSa/hfBgLIb7oQ5HNb1wS0icWsGtSAUNgefHeI+eBrA8I1fxmbHsGdvA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@humanfs/types": "^0.15.0"
+ },
+ "engines": {
+ "node": ">=18.18.0"
+ }
+ },
+ "node_modules/@humanfs/node": {
+ "version": "0.16.8",
+ "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.8.tgz",
+ "integrity": "sha512-gE1eQNZ3R++kTzFUpdGlpmy8kDZD/MLyHqDwqjkVQI0JMdI1D51sy1H958PNXYkM2rAac7e5/CnIKZrHtPh3BQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@humanfs/core": "^0.19.2",
+ "@humanfs/types": "^0.15.0",
+ "@humanwhocodes/retry": "^0.4.0"
+ },
+ "engines": {
+ "node": ">=18.18.0"
+ }
+ },
+ "node_modules/@humanfs/types": {
+ "version": "0.15.0",
+ "resolved": "https://registry.npmjs.org/@humanfs/types/-/types-0.15.0.tgz",
+ "integrity": "sha512-ZZ1w0aoQkwuUuC7Yf+7sdeaNfqQiiLcSRbfI08oAxqLtpXQr9AIVX7Ay7HLDuiLYAaFPu8oBYNq/QIi9URHJ3Q==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=18.18.0"
+ }
+ },
+ "node_modules/@humanwhocodes/module-importer": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
+ "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=12.22"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/nzakas"
+ }
+ },
+ "node_modules/@humanwhocodes/retry": {
+ "version": "0.4.3",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz",
+ "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=18.18"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/nzakas"
+ }
+ },
+ "node_modules/@img/colour": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@img/colour/-/colour-1.1.0.tgz",
+ "integrity": "sha512-Td76q7j57o/tLVdgS746cYARfSyxk8iEfRxewL9h4OMzYhbW4TAcppl0mT4eyqXddh6L/jwoM75mo7ixa/pCeQ==",
+ "license": "MIT",
+ "optional": true,
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@img/sharp-darwin-arm64": {
+ "version": "0.34.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.5.tgz",
+ "integrity": "sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "Apache-2.0",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-darwin-arm64": "1.2.4"
+ }
+ },
+ "node_modules/@img/sharp-darwin-x64": {
+ "version": "0.34.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.5.tgz",
+ "integrity": "sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "Apache-2.0",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-darwin-x64": "1.2.4"
+ }
+ },
+ "node_modules/@img/sharp-libvips-darwin-arm64": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.2.4.tgz",
+ "integrity": "sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-libvips-darwin-x64": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.2.4.tgz",
+ "integrity": "sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-libvips-linux-arm": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.2.4.tgz",
+ "integrity": "sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==",
+ "cpu": [
+ "arm"
+ ],
+ "license": "LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-libvips-linux-arm64": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.2.4.tgz",
+ "integrity": "sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-libvips-linux-ppc64": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.2.4.tgz",
+ "integrity": "sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==",
+ "cpu": [
+ "ppc64"
+ ],
+ "license": "LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-libvips-linux-riscv64": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-riscv64/-/sharp-libvips-linux-riscv64-1.2.4.tgz",
+ "integrity": "sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==",
+ "cpu": [
+ "riscv64"
+ ],
+ "license": "LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-libvips-linux-s390x": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.2.4.tgz",
+ "integrity": "sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==",
+ "cpu": [
+ "s390x"
+ ],
+ "license": "LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-libvips-linux-x64": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.2.4.tgz",
+ "integrity": "sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-libvips-linuxmusl-arm64": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.2.4.tgz",
+ "integrity": "sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-libvips-linuxmusl-x64": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.2.4.tgz",
+ "integrity": "sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-linux-arm": {
+ "version": "0.34.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.5.tgz",
+ "integrity": "sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==",
+ "cpu": [
+ "arm"
+ ],
+ "license": "Apache-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-linux-arm": "1.2.4"
+ }
+ },
+ "node_modules/@img/sharp-linux-arm64": {
+ "version": "0.34.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.5.tgz",
+ "integrity": "sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "Apache-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-linux-arm64": "1.2.4"
+ }
+ },
+ "node_modules/@img/sharp-linux-ppc64": {
+ "version": "0.34.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.34.5.tgz",
+ "integrity": "sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==",
+ "cpu": [
+ "ppc64"
+ ],
+ "license": "Apache-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-linux-ppc64": "1.2.4"
+ }
+ },
+ "node_modules/@img/sharp-linux-riscv64": {
+ "version": "0.34.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-riscv64/-/sharp-linux-riscv64-0.34.5.tgz",
+ "integrity": "sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==",
+ "cpu": [
+ "riscv64"
+ ],
+ "license": "Apache-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-linux-riscv64": "1.2.4"
+ }
+ },
+ "node_modules/@img/sharp-linux-s390x": {
+ "version": "0.34.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.5.tgz",
+ "integrity": "sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==",
+ "cpu": [
+ "s390x"
+ ],
+ "license": "Apache-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-linux-s390x": "1.2.4"
+ }
+ },
+ "node_modules/@img/sharp-linux-x64": {
+ "version": "0.34.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.5.tgz",
+ "integrity": "sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "Apache-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-linux-x64": "1.2.4"
+ }
+ },
+ "node_modules/@img/sharp-linuxmusl-arm64": {
+ "version": "0.34.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.5.tgz",
+ "integrity": "sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "Apache-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-linuxmusl-arm64": "1.2.4"
+ }
+ },
+ "node_modules/@img/sharp-linuxmusl-x64": {
+ "version": "0.34.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.5.tgz",
+ "integrity": "sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "Apache-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-linuxmusl-x64": "1.2.4"
+ }
+ },
+ "node_modules/@img/sharp-wasm32": {
+ "version": "0.34.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.34.5.tgz",
+ "integrity": "sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==",
+ "cpu": [
+ "wasm32"
+ ],
+ "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT",
+ "optional": true,
+ "dependencies": {
+ "@emnapi/runtime": "^1.7.0"
+ },
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-win32-arm64": {
+ "version": "0.34.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.34.5.tgz",
+ "integrity": "sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "Apache-2.0 AND LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-win32-ia32": {
+ "version": "0.34.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.5.tgz",
+ "integrity": "sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg==",
+ "cpu": [
+ "ia32"
+ ],
+ "license": "Apache-2.0 AND LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-win32-x64": {
+ "version": "0.34.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.5.tgz",
+ "integrity": "sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "Apache-2.0 AND LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@jridgewell/gen-mapping": {
+ "version": "0.3.13",
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz",
+ "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/sourcemap-codec": "^1.5.0",
+ "@jridgewell/trace-mapping": "^0.3.24"
+ }
+ },
+ "node_modules/@jridgewell/remapping": {
+ "version": "2.3.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz",
+ "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/gen-mapping": "^0.3.5",
+ "@jridgewell/trace-mapping": "^0.3.24"
+ }
+ },
+ "node_modules/@jridgewell/resolve-uri": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
+ "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@jridgewell/sourcemap-codec": {
+ "version": "1.5.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz",
+ "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@jridgewell/trace-mapping": {
+ "version": "0.3.31",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz",
+ "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/resolve-uri": "^3.1.0",
+ "@jridgewell/sourcemap-codec": "^1.4.14"
+ }
+ },
+ "node_modules/@ledgerhq/devices": {
+ "version": "8.6.1",
+ "resolved": "https://registry.npmjs.org/@ledgerhq/devices/-/devices-8.6.1.tgz",
+ "integrity": "sha512-PQR2fyWz7P/wMFHY9ZLz17WgFdxC/Im0RVDcWXpp24+iRQRyxhQeX2iG4mBKUzfaAW6pOIEiWt+vmJh88QP9rQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@ledgerhq/errors": "^6.26.0",
+ "@ledgerhq/logs": "^6.13.0",
+ "rxjs": "^7.8.1",
+ "semver": "^7.3.5"
+ }
+ },
+ "node_modules/@ledgerhq/errors": {
+ "version": "6.35.0",
+ "resolved": "https://registry.npmjs.org/@ledgerhq/errors/-/errors-6.35.0.tgz",
+ "integrity": "sha512-qk9PbqIvze7NXGogVxNCsz60rNo5FrGj8gKqs7pcyDk+em5L6s70G7cRxR+1HTXdam4WoPfntUq+WX9zQUynkg==",
+ "license": "Apache-2.0"
+ },
+ "node_modules/@ledgerhq/hw-app-str": {
+ "version": "7.2.8",
+ "resolved": "https://registry.npmjs.org/@ledgerhq/hw-app-str/-/hw-app-str-7.2.8.tgz",
+ "integrity": "sha512-VHICY9jyZW5LM/8zc/mSbW7fS2bAC1OTVOtRwdQLEDn6Gv9UaNcCWjaHI1UKAnDUqYX7DUQuIPiTP1b4O+mtUQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@ledgerhq/errors": "^6.26.0",
+ "@ledgerhq/hw-transport": "^6.31.12",
+ "bip32-path": "^0.4.2"
+ }
+ },
+ "node_modules/@ledgerhq/hw-transport": {
+ "version": "6.31.12",
+ "resolved": "https://registry.npmjs.org/@ledgerhq/hw-transport/-/hw-transport-6.31.12.tgz",
+ "integrity": "sha512-FO5LRIXYC8ELtaohlO8qK0b3TfHUNBZ3+CXKPHiHj2jJwrxPf4s5kcgBYrmzuf1C/1vfrMOjzyty6OgrMIbU6Q==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@ledgerhq/devices": "8.6.1",
+ "@ledgerhq/errors": "^6.26.0",
+ "@ledgerhq/logs": "^6.13.0",
+ "events": "^3.3.0"
+ }
+ },
+ "node_modules/@ledgerhq/hw-transport-webusb": {
+ "version": "6.29.12",
+ "resolved": "https://registry.npmjs.org/@ledgerhq/hw-transport-webusb/-/hw-transport-webusb-6.29.12.tgz",
+ "integrity": "sha512-mMGKPYAUz9MNcURe+hSTSHwqPwCli6D0lCl15Z4hDOpcqhZ26vwoeWVKeQp53NNCetHOl0lauPkN43Gt9pIggg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@ledgerhq/devices": "8.6.1",
+ "@ledgerhq/errors": "^6.26.0",
+ "@ledgerhq/hw-transport": "^6.31.12",
+ "@ledgerhq/logs": "^6.13.0"
+ }
+ },
+ "node_modules/@ledgerhq/logs": {
+ "version": "6.17.0",
+ "resolved": "https://registry.npmjs.org/@ledgerhq/logs/-/logs-6.17.0.tgz",
+ "integrity": "sha512-yra33g5q/AU7+PwAws+GaVpQGUuxnDREjVBnviJjcaJLVKuLzI4pnj8Bd3nY3fypM5k1yZEYKEXfUuGFUjP2+w==",
+ "license": "Apache-2.0"
+ },
+ "node_modules/@lit-labs/ssr-dom-shim": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/@lit-labs/ssr-dom-shim/-/ssr-dom-shim-1.6.0.tgz",
+ "integrity": "sha512-VHb0ALPMTlgKjM6yIxxoQNnpKyUKLD04VzeQdsiXkMqkvYlAHxq9glGLmgbb889/1GsohSOAjvQYoiBppXFqrQ==",
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/@lit/react": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/@lit/react/-/react-1.0.8.tgz",
+ "integrity": "sha512-p2+YcF+JE67SRX3mMlJ1TKCSTsgyOVdAwd/nxp3NuV1+Cb6MWALbN6nT7Ld4tpmYofcE5kcaSY1YBB9erY+6fw==",
+ "license": "BSD-3-Clause",
+ "optional": true,
+ "peerDependencies": {
+ "@types/react": "17 || 18 || 19"
+ }
+ },
+ "node_modules/@lit/reactive-element": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-2.1.2.tgz",
+ "integrity": "sha512-pbCDiVMnne1lYUIaYNN5wrwQXDtHaYtg7YEFPeW+hws6U47WeFvISGUWekPGKWOP1ygrs0ef0o1VJMk1exos5A==",
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "@lit-labs/ssr-dom-shim": "^1.5.0"
+ }
+ },
+ "node_modules/@lobstrco/signer-extension-api": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@lobstrco/signer-extension-api/-/signer-extension-api-2.0.0.tgz",
+ "integrity": "sha512-jwlVyzMFF296iaNgMWn1lu+EU6BeUD4mgPurEsy8EygYNCrjA8igLpsDlXhfvXhst9tX5w4wRuTDX+FZtpfCug==",
+ "license": "GPL-3.0"
+ },
+ "node_modules/@mobily/ts-belt": {
+ "version": "3.13.1",
+ "resolved": "https://registry.npmjs.org/@mobily/ts-belt/-/ts-belt-3.13.1.tgz",
+ "integrity": "sha512-K5KqIhPI/EoCTbA6CGbrenM9s41OouyK8A03fGJJcla/zKucsgLbz8HNbeseoLarRPgyWJsUyCYqFhI7t3Ra9Q==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 10.*"
+ }
+ },
+ "node_modules/@msgpack/msgpack": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/@msgpack/msgpack/-/msgpack-3.1.2.tgz",
+ "integrity": "sha512-JEW4DEtBzfe8HvUYecLU9e6+XJnKDlUAIve8FvPzF3Kzs6Xo/KuZkZJsDH0wJXl/qEZbeeE7edxDNY3kMs39hQ==",
+ "license": "ISC",
+ "engines": {
+ "node": ">= 18"
+ }
+ },
+ "node_modules/@napi-rs/wasm-runtime": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.4.tgz",
+ "integrity": "sha512-3NQNNgA1YSlJb/kMH1ildASP9HW7/7kYnRI2szWJaofaS1hWmbGI4H+d3+22aGzXXN9IJ+n+GiFVcGipJP18ow==",
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@tybys/wasm-util": "^0.10.1"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/Brooooooklyn"
+ },
+ "peerDependencies": {
+ "@emnapi/core": "^1.7.1",
+ "@emnapi/runtime": "^1.7.1"
+ }
+ },
+ "node_modules/@near-js/accounts": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/@near-js/accounts/-/accounts-1.4.1.tgz",
+ "integrity": "sha512-ni3QT9H3NdrbVVKyx56yvz93r89Dvpc/vgVtiIK2OdXjkK6jcj+UKMDRQ6F7rd9qJOInLkHZbVBtcR6j1CXLjw==",
+ "license": "ISC",
+ "dependencies": {
+ "@near-js/crypto": "1.4.2",
+ "@near-js/providers": "1.0.3",
+ "@near-js/signers": "0.2.2",
+ "@near-js/transactions": "1.3.3",
+ "@near-js/types": "0.3.1",
+ "@near-js/utils": "1.1.0",
+ "@noble/hashes": "1.7.1",
+ "borsh": "1.0.0",
+ "depd": "2.0.0",
+ "is-my-json-valid": "^2.20.6",
+ "lru_map": "0.4.1",
+ "near-abi": "0.2.0"
+ }
+ },
+ "node_modules/@near-js/accounts/node_modules/borsh": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/borsh/-/borsh-1.0.0.tgz",
+ "integrity": "sha512-fSVWzzemnyfF89EPwlUNsrS5swF5CrtiN4e+h0/lLf4dz2he4L3ndM20PS9wj7ICSkXJe/TQUHdaPTq15b1mNQ==",
+ "license": "Apache-2.0"
+ },
+ "node_modules/@near-js/crypto": {
+ "version": "1.4.2",
+ "resolved": "https://registry.npmjs.org/@near-js/crypto/-/crypto-1.4.2.tgz",
+ "integrity": "sha512-GRfchsyfWvSAPA1gI9hYhw5FH94Ac1BUo+Cmp5rSJt/V0K3xVzCWgOQxvv4R3kDnWjaXJEuAmpEEnr4Bp3FWrA==",
+ "license": "ISC",
+ "dependencies": {
+ "@near-js/types": "0.3.1",
+ "@near-js/utils": "1.1.0",
+ "@noble/curves": "1.8.1",
+ "borsh": "1.0.0",
+ "randombytes": "2.1.0",
+ "secp256k1": "5.0.1"
+ }
+ },
+ "node_modules/@near-js/crypto/node_modules/borsh": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/borsh/-/borsh-1.0.0.tgz",
+ "integrity": "sha512-fSVWzzemnyfF89EPwlUNsrS5swF5CrtiN4e+h0/lLf4dz2he4L3ndM20PS9wj7ICSkXJe/TQUHdaPTq15b1mNQ==",
+ "license": "Apache-2.0"
+ },
+ "node_modules/@near-js/keystores": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/@near-js/keystores/-/keystores-0.2.2.tgz",
+ "integrity": "sha512-DLhi/3a4qJUY+wgphw2Jl4S+L0AKsUYm1mtU0WxKYV5OBwjOXvbGrXNfdkheYkfh3nHwrQgtjvtszX6LrRXLLw==",
+ "license": "ISC",
+ "dependencies": {
+ "@near-js/crypto": "1.4.2",
+ "@near-js/types": "0.3.1"
+ }
+ },
+ "node_modules/@near-js/keystores-browser": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/@near-js/keystores-browser/-/keystores-browser-0.2.2.tgz",
+ "integrity": "sha512-Pxqm7WGtUu6zj32vGCy9JcEDpZDSB5CCaLQDTQdF3GQyL0flyRv2I/guLAgU5FLoYxU7dJAX9mslJhPW7P2Bfw==",
+ "license": "ISC",
+ "dependencies": {
+ "@near-js/crypto": "1.4.2",
+ "@near-js/keystores": "0.2.2"
+ }
+ },
+ "node_modules/@near-js/keystores-node": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/@near-js/keystores-node/-/keystores-node-0.1.2.tgz",
+ "integrity": "sha512-MWLvTszZOVziiasqIT/LYNhUyWqOJjDGlsthOsY6dTL4ZcXjjmhmzrbFydIIeQr+CcEl5wukTo68ORI9JrHl6g==",
+ "license": "ISC",
+ "dependencies": {
+ "@near-js/crypto": "1.4.2",
+ "@near-js/keystores": "0.2.2"
+ }
+ },
+ "node_modules/@near-js/providers": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/@near-js/providers/-/providers-1.0.3.tgz",
+ "integrity": "sha512-VJMboL14R/+MGKnlhhE3UPXCGYvMd1PpvF9OqZ9yBbulV7QVSIdTMfY4U1NnDfmUC2S3/rhAEr+3rMrIcNS7Fg==",
+ "license": "ISC",
+ "dependencies": {
+ "@near-js/transactions": "1.3.3",
+ "@near-js/types": "0.3.1",
+ "@near-js/utils": "1.1.0",
+ "borsh": "1.0.0",
+ "exponential-backoff": "^3.1.2"
+ },
+ "optionalDependencies": {
+ "node-fetch": "2.6.7"
+ }
+ },
+ "node_modules/@near-js/providers/node_modules/borsh": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/borsh/-/borsh-1.0.0.tgz",
+ "integrity": "sha512-fSVWzzemnyfF89EPwlUNsrS5swF5CrtiN4e+h0/lLf4dz2he4L3ndM20PS9wj7ICSkXJe/TQUHdaPTq15b1mNQ==",
+ "license": "Apache-2.0"
+ },
+ "node_modules/@near-js/providers/node_modules/node-fetch": {
+ "version": "2.6.7",
+ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
+ "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "whatwg-url": "^5.0.0"
+ },
+ "engines": {
+ "node": "4.x || >=6.0.0"
+ },
+ "peerDependencies": {
+ "encoding": "^0.1.0"
+ },
+ "peerDependenciesMeta": {
+ "encoding": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@near-js/providers/node_modules/tr46": {
+ "version": "0.0.3",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
+ "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==",
+ "license": "MIT",
+ "optional": true
+ },
+ "node_modules/@near-js/providers/node_modules/webidl-conversions": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
+ "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==",
+ "license": "BSD-2-Clause",
+ "optional": true
+ },
+ "node_modules/@near-js/providers/node_modules/whatwg-url": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
+ "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "tr46": "~0.0.3",
+ "webidl-conversions": "^3.0.0"
+ }
+ },
+ "node_modules/@near-js/signers": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/@near-js/signers/-/signers-0.2.2.tgz",
+ "integrity": "sha512-M6ib+af9zXAPRCjH2RyIS0+RhCmd9gxzCeIkQ+I2A3zjgGiEDkBZbYso9aKj8Zh2lPKKSH7h+u8JGymMOSwgyw==",
+ "license": "ISC",
+ "dependencies": {
+ "@near-js/crypto": "1.4.2",
+ "@near-js/keystores": "0.2.2",
+ "@noble/hashes": "1.3.3"
+ }
+ },
+ "node_modules/@near-js/signers/node_modules/@noble/hashes": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.3.tgz",
+ "integrity": "sha512-V7/fPHgl+jsVPXqqeOzT8egNj2iBIVt+ECeMMG8TdcnTikP3oaBtUVqpT/gYCR68aEBJSF+XbYUxStjbFMqIIA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@near-js/transactions": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/@near-js/transactions/-/transactions-1.3.3.tgz",
+ "integrity": "sha512-1AXD+HuxlxYQmRTLQlkVmH+RAmV3HwkAT8dyZDu+I2fK/Ec9BQHXakOJUnOBws3ihF+akQhamIBS5T0EXX/Ylw==",
+ "license": "ISC",
+ "dependencies": {
+ "@near-js/crypto": "1.4.2",
+ "@near-js/signers": "0.2.2",
+ "@near-js/types": "0.3.1",
+ "@near-js/utils": "1.1.0",
+ "@noble/hashes": "1.7.1",
+ "borsh": "1.0.0"
+ }
+ },
+ "node_modules/@near-js/transactions/node_modules/borsh": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/borsh/-/borsh-1.0.0.tgz",
+ "integrity": "sha512-fSVWzzemnyfF89EPwlUNsrS5swF5CrtiN4e+h0/lLf4dz2he4L3ndM20PS9wj7ICSkXJe/TQUHdaPTq15b1mNQ==",
+ "license": "Apache-2.0"
+ },
+ "node_modules/@near-js/types": {
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/@near-js/types/-/types-0.3.1.tgz",
+ "integrity": "sha512-8qIA7ynAEAuVFNAQc0cqz2xRbfyJH3PaAG5J2MgPPhD18lu/tCGd6pzYg45hjhtiJJRFDRjh/FUWKS+ZiIIxUw==",
+ "license": "ISC"
+ },
+ "node_modules/@near-js/utils": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@near-js/utils/-/utils-1.1.0.tgz",
+ "integrity": "sha512-5XWRq7xpu8Wud9pRXe2U347KXyi0mXofedUY2DQ9TaqiZUcMIaN9xj7DbCs2v6dws3pJyYrT1KWxeNp5fSaY3w==",
+ "license": "ISC",
+ "dependencies": {
+ "@near-js/types": "0.3.1",
+ "@scure/base": "^1.2.0",
+ "depd": "2.0.0",
+ "mustache": "4.0.0"
+ }
+ },
+ "node_modules/@near-js/wallet-account": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/@near-js/wallet-account/-/wallet-account-1.3.3.tgz",
+ "integrity": "sha512-GDzg/Kz0GBYF7tQfyQQQZ3vviwV8yD+8F2lYDzsWJiqIln7R1ov0zaXN4Tii86TeS21KPn2hHAsVu3Y4txa8OQ==",
+ "license": "ISC",
+ "dependencies": {
+ "@near-js/accounts": "1.4.1",
+ "@near-js/crypto": "1.4.2",
+ "@near-js/keystores": "0.2.2",
+ "@near-js/providers": "1.0.3",
+ "@near-js/signers": "0.2.2",
+ "@near-js/transactions": "1.3.3",
+ "@near-js/types": "0.3.1",
+ "@near-js/utils": "1.1.0",
+ "borsh": "1.0.0"
+ }
+ },
+ "node_modules/@near-js/wallet-account/node_modules/borsh": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/borsh/-/borsh-1.0.0.tgz",
+ "integrity": "sha512-fSVWzzemnyfF89EPwlUNsrS5swF5CrtiN4e+h0/lLf4dz2he4L3ndM20PS9wj7ICSkXJe/TQUHdaPTq15b1mNQ==",
+ "license": "Apache-2.0"
+ },
+ "node_modules/@near-wallet-selector/core": {
+ "version": "8.10.2",
+ "resolved": "https://registry.npmjs.org/@near-wallet-selector/core/-/core-8.10.2.tgz",
+ "integrity": "sha512-MH8sg6XHyylq2ZXxnOjrKHMCmuRgFfpfdC816fW0R8hctZiXZ0lmfLvgG1xfA2BAxrVytiU1g3dcE97/P5cZqg==",
+ "dependencies": {
+ "borsh": "1.0.0",
+ "events": "3.3.0",
+ "js-sha256": "0.9.0",
+ "rxjs": "7.8.1"
+ },
+ "peerDependencies": {
+ "near-api-js": "^4.0.0 || ^5.0.0"
+ }
+ },
+ "node_modules/@near-wallet-selector/core/node_modules/borsh": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/borsh/-/borsh-1.0.0.tgz",
+ "integrity": "sha512-fSVWzzemnyfF89EPwlUNsrS5swF5CrtiN4e+h0/lLf4dz2he4L3ndM20PS9wj7ICSkXJe/TQUHdaPTq15b1mNQ==",
+ "license": "Apache-2.0"
+ },
+ "node_modules/@near-wallet-selector/core/node_modules/js-sha256": {
+ "version": "0.9.0",
+ "resolved": "https://registry.npmjs.org/js-sha256/-/js-sha256-0.9.0.tgz",
+ "integrity": "sha512-sga3MHh9sgQN2+pJ9VYZ+1LPwXOxuBJBA5nrR5/ofPfuiJBE2hnjsaN8se8JznOmGLN2p49Pe5U/ttafcs/apA==",
+ "license": "MIT"
+ },
+ "node_modules/@near-wallet-selector/core/node_modules/rxjs": {
+ "version": "7.8.1",
+ "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz",
+ "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "tslib": "^2.1.0"
+ }
+ },
+ "node_modules/@next/env": {
+ "version": "16.1.6",
+ "resolved": "https://registry.npmjs.org/@next/env/-/env-16.1.6.tgz",
+ "integrity": "sha512-N1ySLuZjnAtN3kFnwhAwPvZah8RJxKasD7x1f8shFqhncnWZn4JMfg37diLNuoHsLAlrDfM3g4mawVdtAG8XLQ==",
+ "license": "MIT"
+ },
+ "node_modules/@next/eslint-plugin-next": {
+ "version": "16.1.6",
+ "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-16.1.6.tgz",
+ "integrity": "sha512-/Qq3PTagA6+nYVfryAtQ7/9FEr/6YVyvOtl6rZnGsbReGLf0jZU6gkpr1FuChAQpvV46a78p4cmHOVP8mbfSMQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "fast-glob": "3.3.1"
+ }
+ },
+ "node_modules/@next/swc-darwin-arm64": {
+ "version": "16.1.6",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-16.1.6.tgz",
+ "integrity": "sha512-wTzYulosJr/6nFnqGW7FrG3jfUUlEf8UjGA0/pyypJl42ExdVgC6xJgcXQ+V8QFn6niSG2Pb8+MIG1mZr2vczw==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@next/swc-darwin-x64": {
+ "version": "16.1.6",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-16.1.6.tgz",
+ "integrity": "sha512-BLFPYPDO+MNJsiDWbeVzqvYd4NyuRrEYVB5k2N3JfWncuHAy2IVwMAOlVQDFjj+krkWzhY2apvmekMkfQR0CUQ==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@next/swc-linux-arm64-gnu": {
+ "version": "16.1.6",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-16.1.6.tgz",
+ "integrity": "sha512-OJYkCd5pj/QloBvoEcJ2XiMnlJkRv9idWA/j0ugSuA34gMT6f5b7vOiCQHVRpvStoZUknhl6/UxOXL4OwtdaBw==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@next/swc-linux-arm64-musl": {
+ "version": "16.1.6",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-16.1.6.tgz",
+ "integrity": "sha512-S4J2v+8tT3NIO9u2q+S0G5KdvNDjXfAv06OhfOzNDaBn5rw84DGXWndOEB7d5/x852A20sW1M56vhC/tRVbccQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@next/swc-linux-x64-gnu": {
+ "version": "16.1.6",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-16.1.6.tgz",
+ "integrity": "sha512-2eEBDkFlMMNQnkTyPBhQOAyn2qMxyG2eE7GPH2WIDGEpEILcBPI/jdSv4t6xupSP+ot/jkfrCShLAa7+ZUPcJQ==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@next/swc-linux-x64-musl": {
+ "version": "16.1.6",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-16.1.6.tgz",
+ "integrity": "sha512-oicJwRlyOoZXVlxmIMaTq7f8pN9QNbdes0q2FXfRsPhfCi8n8JmOZJm5oo1pwDaFbnnD421rVU409M3evFbIqg==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@next/swc-win32-arm64-msvc": {
+ "version": "16.1.6",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-16.1.6.tgz",
+ "integrity": "sha512-gQmm8izDTPgs+DCWH22kcDmuUp7NyiJgEl18bcr8irXA5N2m2O+JQIr6f3ct42GOs9c0h8QF3L5SzIxcYAAXXw==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@next/swc-win32-x64-msvc": {
+ "version": "16.1.6",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-16.1.6.tgz",
+ "integrity": "sha512-NRfO39AIrzBnixKbjuo2YiYhB6o9d8v/ymU9m/Xk8cyVk+k7XylniXkHwjs4s70wedVffc6bQNbufk5v0xEm0A==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@noble/ciphers": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/@noble/ciphers/-/ciphers-1.3.0.tgz",
+ "integrity": "sha512-2I0gnIVPtfnMw9ee9h1dJG7tp81+8Ob3OJb3Mv37rx5L40/b0i7djjCVvGOVqc9AEIQyvyu1i6ypKdFw8R8gQw==",
+ "license": "MIT",
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@noble/curves": {
+ "version": "1.8.1",
+ "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.8.1.tgz",
+ "integrity": "sha512-warwspo+UYUPep0Q+vtdVB4Ugn8GGQj8iyB3gnRWsztmUHTI3S1nhdiWNsPUGL0vud7JlRRk1XEu7Lq1KGTnMQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@noble/hashes": "1.7.1"
+ },
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@noble/hashes": {
+ "version": "1.7.1",
+ "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.1.tgz",
+ "integrity": "sha512-B8XBPsn4vT/KJAGqDzbwztd+6Yte3P4V7iafm24bxgDe/mlRuK6xmWPuCNrKt2vDafZ8MfJLlchDG/vYafQEjQ==",
+ "license": "MIT",
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@nodelib/fs.scandir": {
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
+ "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@nodelib/fs.stat": "2.0.5",
+ "run-parallel": "^1.1.9"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nodelib/fs.stat": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
+ "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nodelib/fs.walk": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
+ "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@nodelib/fs.scandir": "2.1.5",
+ "fastq": "^1.6.0"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nolyfill/is-core-module": {
+ "version": "1.0.39",
+ "resolved": "https://registry.npmjs.org/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz",
+ "integrity": "sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=12.4.0"
+ }
+ },
+ "node_modules/@oxc-project/types": {
+ "version": "0.132.0",
+ "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.132.0.tgz",
+ "integrity": "sha512-FESMOxil5Se014ui/Eq8fT5uHJo6nIRwH0PfJrZJXs6Gek3ZVFOrpUv3YIZT20m+extU98Hg1Ym72U58rlsxUQ==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/sponsors/Boshen"
+ }
+ },
+ "node_modules/@phosphor-icons/webcomponents": {
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/@phosphor-icons/webcomponents/-/webcomponents-2.1.5.tgz",
+ "integrity": "sha512-JcvQkZxvcX2jK+QCclm8+e8HXqtdFW9xV4/kk2aL9Y3dJA2oQVt+pzbv1orkumz3rfx4K9mn9fDoMr1He1yr7Q==",
+ "license": "MIT",
+ "dependencies": {
+ "lit": "^3"
+ }
+ },
+ "node_modules/@preact/signals": {
+ "version": "2.9.0",
+ "resolved": "https://registry.npmjs.org/@preact/signals/-/signals-2.9.0.tgz",
+ "integrity": "sha512-hYrY0KyUqkDgOl1qba/JGn6y81pXnurn21PMaxfcMwdncdZ3M/oVdmpTvEnsGjh48dIwDVc7bjWHqIsngSjYug==",
+ "license": "MIT",
+ "dependencies": {
+ "@preact/signals-core": "^1.14.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/preact"
+ },
+ "peerDependencies": {
+ "preact": ">= 10.25.0 || >=11.0.0-0"
+ }
+ },
+ "node_modules/@preact/signals-core": {
+ "version": "1.14.2",
+ "resolved": "https://registry.npmjs.org/@preact/signals-core/-/signals-core-1.14.2.tgz",
+ "integrity": "sha512-RZHdBj9ZF4n40Rp4jS052EHHjBWf96P9oNdXPfhQTovCuWY9iQn3Gq+gOTJSgBO9A/JBuPfMOWsSX/lIU9Pc/A==",
+ "license": "MIT",
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/preact"
+ }
+ },
+ "node_modules/@protobufjs/aspromise": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz",
+ "integrity": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==",
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/@protobufjs/base64": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz",
+ "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==",
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/@protobufjs/codegen": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.5.tgz",
+ "integrity": "sha512-zgXFLzW3Ap33e6d0Wlj4MGIm6Ce8O89n/apUaGNB/jx+hw+ruWEp7EwGUshdLKVRCxZW12fp9r40E1mQrf/34g==",
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/@protobufjs/eventemitter": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.1.tgz",
+ "integrity": "sha512-vW1GmwMZNnL+gMRaovlh9yZX74kc+TTU3FObkkurpMaRtBfLP3ldjS9KQWlwZgraRE0+dheEEoAxdzcJQ8eXZg==",
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/@protobufjs/fetch": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.1.tgz",
+ "integrity": "sha512-GpptLrs57adMSuHi3VNj0mAF8dwh36LMaYF6XyJ6JMWlVsc+t42tm1HSEDmOs3A8fC9yyeisgLhsTVQokOZ0zw==",
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "@protobufjs/aspromise": "^1.1.1"
+ }
+ },
+ "node_modules/@protobufjs/float": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz",
+ "integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==",
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/@protobufjs/inquire": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.2.tgz",
+ "integrity": "sha512-pa0vFRuws4wkvaXKK1uXZMAwAX4/t8ANaJo45iw/oQHNQ9q5xUzwgFmVJGXiga2BeN+zpX7Vf9vmsiIa2J+MUw==",
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/@protobufjs/path": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz",
+ "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==",
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/@protobufjs/pool": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz",
+ "integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==",
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/@protobufjs/utf8": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.1.tgz",
+ "integrity": "sha512-oOAWABowe8EAbMyWKM0tYDKi8Yaox52D+HWZhAIJqQXbqe0xI/GV7FhLWqlEKreMkfDjshR5FKgi3mnle0h6Eg==",
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/@radix-ui/number": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@radix-ui/number/-/number-1.1.1.tgz",
+ "integrity": "sha512-MkKCwxlXTgz6CFoJx3pCwn07GKp36+aZyu/u2Ln2VrA5DcdyCZkASEDBTd8x5whTQQL5CiYf4prXKLcgQdv29g==",
+ "license": "MIT"
+ },
+ "node_modules/@radix-ui/primitive": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.3.tgz",
+ "integrity": "sha512-JTF99U/6XIjCBo0wqkU5sK10glYe27MRRsfwoiq5zzOEZLHU3A3KCMa5X/azekYRCJ0HlwI0crAXS/5dEHTzDg==",
+ "license": "MIT"
+ },
+ "node_modules/@radix-ui/react-arrow": {
+ "version": "1.1.7",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.1.7.tgz",
+ "integrity": "sha512-F+M1tLhO+mlQaOWspE8Wstg+z6PwxwRd8oQ8IXceWz92kfAmalTRf0EjrouQeo7QssEPfCn05B4Ihs1K9WQ/7w==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-primitive": "2.1.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-arrow/node_modules/@radix-ui/react-primitive": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz",
+ "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-slot": "1.2.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-arrow/node_modules/@radix-ui/react-slot": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz",
+ "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-compose-refs": "1.1.2"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-avatar": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-avatar/-/react-avatar-1.1.11.tgz",
+ "integrity": "sha512-0Qk603AHGV28BOBO34p7IgD5m+V5Sg/YovfayABkoDDBM5d3NCx0Mp4gGrjzLGes1jV5eNOE1r3itqOR33VC6Q==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-context": "1.1.3",
+ "@radix-ui/react-primitive": "2.1.4",
+ "@radix-ui/react-use-callback-ref": "1.1.1",
+ "@radix-ui/react-use-is-hydrated": "0.1.0",
+ "@radix-ui/react-use-layout-effect": "1.1.1"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-collection": {
+ "version": "1.1.7",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-collection/-/react-collection-1.1.7.tgz",
+ "integrity": "sha512-Fh9rGN0MoI4ZFUNyfFVNU4y9LUz93u9/0K+yLgA2bwRojxM8JU1DyvvMBabnZPBgMWREAJvU2jjVzq+LrFUglw==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-compose-refs": "1.1.2",
+ "@radix-ui/react-context": "1.1.2",
+ "@radix-ui/react-primitive": "2.1.3",
+ "@radix-ui/react-slot": "1.2.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-collection/node_modules/@radix-ui/react-context": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz",
+ "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-collection/node_modules/@radix-ui/react-primitive": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz",
+ "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-slot": "1.2.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-collection/node_modules/@radix-ui/react-slot": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz",
+ "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-compose-refs": "1.1.2"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-compose-refs": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.2.tgz",
+ "integrity": "sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-context": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.3.tgz",
+ "integrity": "sha512-ieIFACdMpYfMEjF0rEf5KLvfVyIkOz6PDGyNnP+u+4xQ6jny3VCgA4OgXOwNx2aUkxn8zx9fiVcM8CfFYv9Lxw==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-dialog": {
+ "version": "1.1.15",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.1.15.tgz",
+ "integrity": "sha512-TCglVRtzlffRNxRMEyR36DGBLJpeusFcgMVD9PZEzAKnUs1lKCgX5u9BmC2Yg+LL9MgZDugFFs1Vl+Jp4t/PGw==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/primitive": "1.1.3",
+ "@radix-ui/react-compose-refs": "1.1.2",
+ "@radix-ui/react-context": "1.1.2",
+ "@radix-ui/react-dismissable-layer": "1.1.11",
+ "@radix-ui/react-focus-guards": "1.1.3",
+ "@radix-ui/react-focus-scope": "1.1.7",
+ "@radix-ui/react-id": "1.1.1",
+ "@radix-ui/react-portal": "1.1.9",
+ "@radix-ui/react-presence": "1.1.5",
+ "@radix-ui/react-primitive": "2.1.3",
+ "@radix-ui/react-slot": "1.2.3",
+ "@radix-ui/react-use-controllable-state": "1.2.2",
+ "aria-hidden": "^1.2.4",
+ "react-remove-scroll": "^2.6.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-context": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz",
+ "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-primitive": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz",
+ "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-slot": "1.2.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-slot": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz",
+ "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-compose-refs": "1.1.2"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-direction": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-direction/-/react-direction-1.1.1.tgz",
+ "integrity": "sha512-1UEWRX6jnOA2y4H5WczZ44gOOjTEmlqv1uNW4GAJEO5+bauCBhv8snY65Iw5/VOS/ghKN9gr2KjnLKxrsvoMVw==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-dismissable-layer": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.11.tgz",
+ "integrity": "sha512-Nqcp+t5cTB8BinFkZgXiMJniQH0PsUt2k51FUhbdfeKvc4ACcG2uQniY/8+h1Yv6Kza4Q7lD7PQV0z0oicE0Mg==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/primitive": "1.1.3",
+ "@radix-ui/react-compose-refs": "1.1.2",
+ "@radix-ui/react-primitive": "2.1.3",
+ "@radix-ui/react-use-callback-ref": "1.1.1",
+ "@radix-ui/react-use-escape-keydown": "1.1.1"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-dismissable-layer/node_modules/@radix-ui/react-primitive": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz",
+ "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-slot": "1.2.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-dismissable-layer/node_modules/@radix-ui/react-slot": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz",
+ "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-compose-refs": "1.1.2"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-dropdown-menu": {
+ "version": "2.1.16",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-dropdown-menu/-/react-dropdown-menu-2.1.16.tgz",
+ "integrity": "sha512-1PLGQEynI/3OX/ftV54COn+3Sud/Mn8vALg2rWnBLnRaGtJDduNW/22XjlGgPdpcIbiQxjKtb7BkcjP00nqfJw==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/primitive": "1.1.3",
+ "@radix-ui/react-compose-refs": "1.1.2",
+ "@radix-ui/react-context": "1.1.2",
+ "@radix-ui/react-id": "1.1.1",
+ "@radix-ui/react-menu": "2.1.16",
+ "@radix-ui/react-primitive": "2.1.3",
+ "@radix-ui/react-use-controllable-state": "1.2.2"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-dropdown-menu/node_modules/@radix-ui/react-context": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz",
+ "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-dropdown-menu/node_modules/@radix-ui/react-primitive": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz",
+ "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-slot": "1.2.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-dropdown-menu/node_modules/@radix-ui/react-slot": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz",
+ "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-compose-refs": "1.1.2"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-focus-guards": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.1.3.tgz",
+ "integrity": "sha512-0rFg/Rj2Q62NCm62jZw0QX7a3sz6QCQU0LpZdNrJX8byRGaGVTqbrW9jAoIAHyMQqsNpeZ81YgSizOt5WXq0Pw==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-focus-scope": {
+ "version": "1.1.7",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.7.tgz",
+ "integrity": "sha512-t2ODlkXBQyn7jkl6TNaw/MtVEVvIGelJDCG41Okq/KwUsJBwQ4XVZsHAVUkK4mBv3ewiAS3PGuUWuY2BoK4ZUw==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-compose-refs": "1.1.2",
+ "@radix-ui/react-primitive": "2.1.3",
+ "@radix-ui/react-use-callback-ref": "1.1.1"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-focus-scope/node_modules/@radix-ui/react-primitive": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz",
+ "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-slot": "1.2.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-focus-scope/node_modules/@radix-ui/react-slot": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz",
+ "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-compose-refs": "1.1.2"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-id": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.1.tgz",
+ "integrity": "sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-use-layout-effect": "1.1.1"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-menu": {
+ "version": "2.1.16",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-menu/-/react-menu-2.1.16.tgz",
+ "integrity": "sha512-72F2T+PLlphrqLcAotYPp0uJMr5SjP5SL01wfEspJbru5Zs5vQaSHb4VB3ZMJPimgHHCHG7gMOeOB9H3Hdmtxg==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/primitive": "1.1.3",
+ "@radix-ui/react-collection": "1.1.7",
+ "@radix-ui/react-compose-refs": "1.1.2",
+ "@radix-ui/react-context": "1.1.2",
+ "@radix-ui/react-direction": "1.1.1",
+ "@radix-ui/react-dismissable-layer": "1.1.11",
+ "@radix-ui/react-focus-guards": "1.1.3",
+ "@radix-ui/react-focus-scope": "1.1.7",
+ "@radix-ui/react-id": "1.1.1",
+ "@radix-ui/react-popper": "1.2.8",
+ "@radix-ui/react-portal": "1.1.9",
+ "@radix-ui/react-presence": "1.1.5",
+ "@radix-ui/react-primitive": "2.1.3",
+ "@radix-ui/react-roving-focus": "1.1.11",
+ "@radix-ui/react-slot": "1.2.3",
+ "@radix-ui/react-use-callback-ref": "1.1.1",
+ "aria-hidden": "^1.2.4",
+ "react-remove-scroll": "^2.6.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-context": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz",
+ "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-primitive": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz",
+ "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-slot": "1.2.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-slot": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz",
+ "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-compose-refs": "1.1.2"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-popover": {
+ "version": "1.1.15",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-popover/-/react-popover-1.1.15.tgz",
+ "integrity": "sha512-kr0X2+6Yy/vJzLYJUPCZEc8SfQcf+1COFoAqauJm74umQhta9M7lNJHP7QQS3vkvcGLQUbWpMzwrXYwrYztHKA==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/primitive": "1.1.3",
+ "@radix-ui/react-compose-refs": "1.1.2",
+ "@radix-ui/react-context": "1.1.2",
+ "@radix-ui/react-dismissable-layer": "1.1.11",
+ "@radix-ui/react-focus-guards": "1.1.3",
+ "@radix-ui/react-focus-scope": "1.1.7",
+ "@radix-ui/react-id": "1.1.1",
+ "@radix-ui/react-popper": "1.2.8",
+ "@radix-ui/react-portal": "1.1.9",
+ "@radix-ui/react-presence": "1.1.5",
+ "@radix-ui/react-primitive": "2.1.3",
+ "@radix-ui/react-slot": "1.2.3",
+ "@radix-ui/react-use-controllable-state": "1.2.2",
+ "aria-hidden": "^1.2.4",
+ "react-remove-scroll": "^2.6.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-context": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz",
+ "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-primitive": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz",
+ "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-slot": "1.2.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-slot": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz",
+ "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-compose-refs": "1.1.2"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-popper": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.2.8.tgz",
+ "integrity": "sha512-0NJQ4LFFUuWkE7Oxf0htBKS6zLkkjBH+hM1uk7Ng705ReR8m/uelduy1DBo0PyBXPKVnBA6YBlU94MBGXrSBCw==",
+ "license": "MIT",
+ "dependencies": {
+ "@floating-ui/react-dom": "^2.0.0",
+ "@radix-ui/react-arrow": "1.1.7",
+ "@radix-ui/react-compose-refs": "1.1.2",
+ "@radix-ui/react-context": "1.1.2",
+ "@radix-ui/react-primitive": "2.1.3",
+ "@radix-ui/react-use-callback-ref": "1.1.1",
+ "@radix-ui/react-use-layout-effect": "1.1.1",
+ "@radix-ui/react-use-rect": "1.1.1",
+ "@radix-ui/react-use-size": "1.1.1",
+ "@radix-ui/rect": "1.1.1"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-popper/node_modules/@radix-ui/react-context": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz",
+ "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-popper/node_modules/@radix-ui/react-primitive": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz",
+ "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-slot": "1.2.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-popper/node_modules/@radix-ui/react-slot": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz",
+ "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-compose-refs": "1.1.2"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-portal": {
+ "version": "1.1.9",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.9.tgz",
+ "integrity": "sha512-bpIxvq03if6UNwXZ+HTK71JLh4APvnXntDc6XOX8UVq4XQOVl7lwok0AvIl+b8zgCw3fSaVTZMpAPPagXbKmHQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-primitive": "2.1.3",
+ "@radix-ui/react-use-layout-effect": "1.1.1"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-portal/node_modules/@radix-ui/react-primitive": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz",
+ "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-slot": "1.2.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-portal/node_modules/@radix-ui/react-slot": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz",
+ "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-compose-refs": "1.1.2"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-presence": {
+ "version": "1.1.5",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.5.tgz",
+ "integrity": "sha512-/jfEwNDdQVBCNvjkGit4h6pMOzq8bHkopq458dPt2lMjx+eBQUohZNG9A7DtO/O5ukSbxuaNGXMjHicgwy6rQQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-compose-refs": "1.1.2",
+ "@radix-ui/react-use-layout-effect": "1.1.1"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-primitive": {
+ "version": "2.1.4",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.4.tgz",
+ "integrity": "sha512-9hQc4+GNVtJAIEPEqlYqW5RiYdrr8ea5XQ0ZOnD6fgru+83kqT15mq2OCcbe8KnjRZl5vF3ks69AKz3kh1jrhg==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-slot": "1.2.4"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-roving-focus": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-roving-focus/-/react-roving-focus-1.1.11.tgz",
+ "integrity": "sha512-7A6S9jSgm/S+7MdtNDSb+IU859vQqJ/QAtcYQcfFC6W8RS4IxIZDldLR0xqCFZ6DCyrQLjLPsxtTNch5jVA4lA==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/primitive": "1.1.3",
+ "@radix-ui/react-collection": "1.1.7",
+ "@radix-ui/react-compose-refs": "1.1.2",
+ "@radix-ui/react-context": "1.1.2",
+ "@radix-ui/react-direction": "1.1.1",
+ "@radix-ui/react-id": "1.1.1",
+ "@radix-ui/react-primitive": "2.1.3",
+ "@radix-ui/react-use-callback-ref": "1.1.1",
+ "@radix-ui/react-use-controllable-state": "1.2.2"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-roving-focus/node_modules/@radix-ui/react-context": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz",
+ "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-roving-focus/node_modules/@radix-ui/react-primitive": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz",
+ "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-slot": "1.2.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-roving-focus/node_modules/@radix-ui/react-slot": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz",
+ "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-compose-refs": "1.1.2"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-scroll-area": {
+ "version": "1.2.10",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-scroll-area/-/react-scroll-area-1.2.10.tgz",
+ "integrity": "sha512-tAXIa1g3sM5CGpVT0uIbUx/U3Gs5N8T52IICuCtObaos1S8fzsrPXG5WObkQN3S6NVl6wKgPhAIiBGbWnvc97A==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/number": "1.1.1",
+ "@radix-ui/primitive": "1.1.3",
+ "@radix-ui/react-compose-refs": "1.1.2",
+ "@radix-ui/react-context": "1.1.2",
+ "@radix-ui/react-direction": "1.1.1",
+ "@radix-ui/react-presence": "1.1.5",
+ "@radix-ui/react-primitive": "2.1.3",
+ "@radix-ui/react-use-callback-ref": "1.1.1",
+ "@radix-ui/react-use-layout-effect": "1.1.1"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-scroll-area/node_modules/@radix-ui/react-context": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz",
+ "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-scroll-area/node_modules/@radix-ui/react-primitive": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz",
+ "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-slot": "1.2.3"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-scroll-area/node_modules/@radix-ui/react-slot": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz",
+ "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-compose-refs": "1.1.2"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-separator": {
+ "version": "1.1.8",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-separator/-/react-separator-1.1.8.tgz",
+ "integrity": "sha512-sDvqVY4itsKwwSMEe0jtKgfTh+72Sy3gPmQpjqcQneqQ4PFmr/1I0YA+2/puilhggCe2gJcx5EBAYFkWkdpa5g==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-primitive": "2.1.4"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "@types/react-dom": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-slot": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.4.tgz",
+ "integrity": "sha512-Jl+bCv8HxKnlTLVrcDE8zTMJ09R9/ukw4qBs/oZClOfoQk/cOTbDn+NceXfV7j09YPVQUryJPHurafcSg6EVKA==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-compose-refs": "1.1.2"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-use-callback-ref": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.1.tgz",
+ "integrity": "sha512-FkBMwD+qbGQeMu1cOHnuGB6x4yzPjho8ap5WtbEJ26umhgqVXbhekKUQO+hZEL1vU92a3wHwdp0HAcqAUF5iDg==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-use-controllable-state": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.2.2.tgz",
+ "integrity": "sha512-BjasUjixPFdS+NKkypcyyN5Pmg83Olst0+c6vGov0diwTEo6mgdqVR6hxcEgFuh4QrAs7Rc+9KuGJ9TVCj0Zzg==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-use-effect-event": "0.0.2",
+ "@radix-ui/react-use-layout-effect": "1.1.1"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-use-effect-event": {
+ "version": "0.0.2",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-use-effect-event/-/react-use-effect-event-0.0.2.tgz",
+ "integrity": "sha512-Qp8WbZOBe+blgpuUT+lw2xheLP8q0oatc9UpmiemEICxGvFLYmHm9QowVZGHtJlGbS6A6yJ3iViad/2cVjnOiA==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-use-layout-effect": "1.1.1"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-use-escape-keydown": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.1.tgz",
+ "integrity": "sha512-Il0+boE7w/XebUHyBjroE+DbByORGR9KKmITzbR7MyQ4akpORYP/ZmbhAr0DG7RmmBqoOnZdy2QlvajJ2QA59g==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-use-callback-ref": "1.1.1"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-use-is-hydrated": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-use-is-hydrated/-/react-use-is-hydrated-0.1.0.tgz",
+ "integrity": "sha512-U+UORVEq+cTnRIaostJv9AGdV3G6Y+zbVd+12e18jQ5A3c0xL03IhnHuiU4UV69wolOQp5GfR58NW/EgdQhwOA==",
+ "license": "MIT",
+ "dependencies": {
+ "use-sync-external-store": "^1.5.0"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-use-layout-effect": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.1.tgz",
+ "integrity": "sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-use-rect": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.1.1.tgz",
+ "integrity": "sha512-QTYuDesS0VtuHNNvMh+CjlKJ4LJickCMUAqjlE3+j8w+RlRpwyX3apEQKGFzbZGdo7XNG1tXa+bQqIE7HIXT2w==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/rect": "1.1.1"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/react-use-size": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.1.1.tgz",
+ "integrity": "sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@radix-ui/react-use-layout-effect": "1.1.1"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@radix-ui/rect": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-1.1.1.tgz",
+ "integrity": "sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==",
+ "license": "MIT"
+ },
+ "node_modules/@reduxjs/toolkit": {
+ "version": "2.12.0",
+ "resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-2.12.0.tgz",
+ "integrity": "sha512-KiT+RzZbp6mQET+Mg+h2c97+9j1sNflUxQkIHI7Yuzf6Peu+OYpmkn6nbHWmLLWj+1ZODUJFwGZ7gx3L9R9EOw==",
+ "license": "MIT",
+ "dependencies": {
+ "@standard-schema/spec": "^1.0.0",
+ "@standard-schema/utils": "^0.3.0",
+ "immer": "^11.0.0",
+ "redux": "^5.0.1",
+ "redux-thunk": "^3.1.0",
+ "reselect": "^5.1.0"
+ },
+ "peerDependencies": {
+ "react": "^16.9.0 || ^17.0.0 || ^18 || ^19",
+ "react-redux": "^7.2.1 || ^8.1.3 || ^9.0.0"
+ },
+ "peerDependenciesMeta": {
+ "react": {
+ "optional": true
+ },
+ "react-redux": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@reduxjs/toolkit/node_modules/immer": {
+ "version": "11.1.8",
+ "resolved": "https://registry.npmjs.org/immer/-/immer-11.1.8.tgz",
+ "integrity": "sha512-/tbkHMW7y10Lx6i1crLjD4/OhNkRG+Fo7byZHtah0547nIeXYcpIXaUh0IAQY6gO5459qpGGYapcEOHtFXkIuA==",
+ "license": "MIT",
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/immer"
+ }
+ },
+ "node_modules/@reown/appkit": {
+ "version": "1.8.19",
+ "resolved": "https://registry.npmjs.org/@reown/appkit/-/appkit-1.8.19.tgz",
+ "integrity": "sha512-wB+xatkRbOy0AY1cZxxtcKzzPk3l3CTFulDbaISLVmZI6ZnQrOFuLnYc285zGsC6DB4d6bmwYUh89zcMLa4PvQ==",
+ "hasInstallScript": true,
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@reown/appkit-common": "1.8.19",
+ "@reown/appkit-controllers": "1.8.19",
+ "@reown/appkit-pay": "1.8.19",
+ "@reown/appkit-polyfills": "1.8.19",
+ "@reown/appkit-scaffold-ui": "1.8.19",
+ "@reown/appkit-ui": "1.8.19",
+ "@reown/appkit-utils": "1.8.19",
+ "@reown/appkit-wallet": "1.8.19",
+ "@walletconnect/universal-provider": "2.23.7",
+ "bs58": "6.0.0",
+ "semver": "7.7.2",
+ "valtio": "2.1.7",
+ "viem": ">=2.45.0"
+ },
+ "optionalDependencies": {
+ "@lit/react": "1.0.8"
+ }
+ },
+ "node_modules/@reown/appkit-common": {
+ "version": "1.8.19",
+ "resolved": "https://registry.npmjs.org/@reown/appkit-common/-/appkit-common-1.8.19.tgz",
+ "integrity": "sha512-z5wDrYjUGY7YbM4b14NHVo54WKZ5++PQtGkcsXhiOP39yAVijubBQD8BfHs/Pu2fSFqnqLIFoCVvIEfNWWccRw==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "big.js": "6.2.2",
+ "dayjs": "1.11.13",
+ "viem": ">=2.45.0"
+ }
+ },
+ "node_modules/@reown/appkit-controllers": {
+ "version": "1.8.19",
+ "resolved": "https://registry.npmjs.org/@reown/appkit-controllers/-/appkit-controllers-1.8.19.tgz",
+ "integrity": "sha512-JFNT8CfAVit9FJXh596Ye4U8A/oIapW+Y0KQqjB59DXyTCDZbxZDB32rULBQrSkZ6PufTEa239Dil4kABCQKtg==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@reown/appkit-common": "1.8.19",
+ "@reown/appkit-wallet": "1.8.19",
+ "@walletconnect/universal-provider": "2.23.7",
+ "valtio": "2.1.7",
+ "viem": ">=2.45.0"
+ }
+ },
+ "node_modules/@reown/appkit-pay": {
+ "version": "1.8.19",
+ "resolved": "https://registry.npmjs.org/@reown/appkit-pay/-/appkit-pay-1.8.19.tgz",
+ "integrity": "sha512-HO/tQT0TbTQO3eONxNNPJAOZAOzUiHvjM0Mty1rFFeRBH68auiqQxQi2YFNMs014gNkRN+cb84VYau7+MCC0fQ==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@reown/appkit-common": "1.8.19",
+ "@reown/appkit-controllers": "1.8.19",
+ "@reown/appkit-ui": "1.8.19",
+ "@reown/appkit-utils": "1.8.19",
+ "lit": "3.3.0",
+ "valtio": "2.1.7"
+ }
+ },
+ "node_modules/@reown/appkit-polyfills": {
+ "version": "1.8.19",
+ "resolved": "https://registry.npmjs.org/@reown/appkit-polyfills/-/appkit-polyfills-1.8.19.tgz",
+ "integrity": "sha512-PSoetRSuZg7f2YFPzdfs4BayQl51zcGqYr7frwOe6td0XEsspLrrVFn/zk5QFbFHZVsMdfRZ+TTunt84ozRdnQ==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "buffer": "6.0.3"
+ }
+ },
+ "node_modules/@reown/appkit-scaffold-ui": {
+ "version": "1.8.19",
+ "resolved": "https://registry.npmjs.org/@reown/appkit-scaffold-ui/-/appkit-scaffold-ui-1.8.19.tgz",
+ "integrity": "sha512-Ak767x0VzeDIXb0wbzkl19kx6udw7vkb1EU0SAweG3iKc9BunW87Rfcd48/YimzMZycJaYmlbtfmqQQDYs6Few==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@reown/appkit-common": "1.8.19",
+ "@reown/appkit-controllers": "1.8.19",
+ "@reown/appkit-pay": "1.8.19",
+ "@reown/appkit-ui": "1.8.19",
+ "@reown/appkit-utils": "1.8.19",
+ "@reown/appkit-wallet": "1.8.19",
+ "lit": "3.3.0"
+ }
+ },
+ "node_modules/@reown/appkit-ui": {
+ "version": "1.8.19",
+ "resolved": "https://registry.npmjs.org/@reown/appkit-ui/-/appkit-ui-1.8.19.tgz",
+ "integrity": "sha512-fCAwW8yyyC3JcgKLBPvCtYuDGC4H8anO7u4LTaAXGEzdcU5H+IrCgNFSPNK7NuTSmgXm1TnoYxPxRFKNiNwFdA==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@phosphor-icons/webcomponents": "2.1.5",
+ "@reown/appkit-common": "1.8.19",
+ "@reown/appkit-controllers": "1.8.19",
+ "@reown/appkit-wallet": "1.8.19",
+ "lit": "3.3.0",
+ "qrcode": "1.5.3"
+ }
+ },
+ "node_modules/@reown/appkit-utils": {
+ "version": "1.8.19",
+ "resolved": "https://registry.npmjs.org/@reown/appkit-utils/-/appkit-utils-1.8.19.tgz",
+ "integrity": "sha512-VQPgUMTFqoh4UD3EDZSw9wyMkyZsmIVmu8CdQ2FUxIuqYW4fLd0VIpkDeO64MMhSv8b0X8Vd6m4+eGcqSwlUAg==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@reown/appkit-common": "1.8.19",
+ "@reown/appkit-controllers": "1.8.19",
+ "@reown/appkit-polyfills": "1.8.19",
+ "@reown/appkit-wallet": "1.8.19",
+ "@wallet-standard/wallet": "1.1.0",
+ "@walletconnect/logger": "3.0.2",
+ "@walletconnect/universal-provider": "2.23.7",
+ "valtio": "2.1.7",
+ "viem": ">=2.45.0"
+ },
+ "optionalDependencies": {
+ "@base-org/account": "2.4.0",
+ "@safe-global/safe-apps-provider": "0.18.6",
+ "@safe-global/safe-apps-sdk": "9.1.0"
+ },
+ "peerDependencies": {
+ "valtio": "2.1.7"
+ }
+ },
+ "node_modules/@reown/appkit-wallet": {
+ "version": "1.8.19",
+ "resolved": "https://registry.npmjs.org/@reown/appkit-wallet/-/appkit-wallet-1.8.19.tgz",
+ "integrity": "sha512-NVdIKceUhkXYtsG32925ctmVn0QJFNyDlr+mWheMLCEZ/IUPn+6aA53vTVaSUquhyeFxUXtrCOh3ln6v1tup5w==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@reown/appkit-common": "1.8.19",
+ "@reown/appkit-polyfills": "1.8.19",
+ "@walletconnect/logger": "3.0.2",
+ "zod": "3.22.4"
+ }
+ },
+ "node_modules/@reown/appkit-wallet/node_modules/zod": {
+ "version": "3.22.4",
+ "resolved": "https://registry.npmjs.org/zod/-/zod-3.22.4.tgz",
+ "integrity": "sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==",
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/sponsors/colinhacks"
+ }
+ },
+ "node_modules/@reown/appkit/node_modules/semver": {
+ "version": "7.7.2",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz",
+ "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==",
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/@rolldown/binding-android-arm64": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.2.tgz",
+ "integrity": "sha512-ZS4D1JPGn/MYQN/SYDWftIE/nVsM8j/AFOYEzAoOE2O3NktQOZru+/vYXGbR/qtdLdIfGCP0lcoJiYVzsEz+iQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-darwin-arm64": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.2.tgz",
+ "integrity": "sha512-vdFA9+C/rekyGce7WqHs/xoT0ioZEWaOFyZLIV1mEeNFaFDUQrPIo8Vs2GvJ6eetb3rzDUtUBgzto3ExpXJB3w==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-darwin-x64": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.2.tgz",
+ "integrity": "sha512-BewSOwTHazv77DTYiAZXSqqKZ4KP/KonFisDMVU7PImxoWfB2aepnPhd2E4SWz3zDzYgDNbs6jBmTdgNnF02GA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-freebsd-x64": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.2.tgz",
+ "integrity": "sha512-m41o7M0YWtUdqk61Tb+jnKb2rN++iRdIASlExkUoKfIAH30DOHCB8fVLzSUpbWHHU8esmEioY62PxzexE8MBuA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-linux-arm-gnueabihf": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.2.tgz",
+ "integrity": "sha512-jcojB9H7W/jS29pMKWAK1N+fU99vXodHDTatS3b3y/XSOCiHo0kkA74pL3jJmkoQtYpOCxDvaKs1fo2Ij/1X5w==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-linux-arm64-gnu": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.2.tgz",
+ "integrity": "sha512-1jn6qDU5iiOgFgygDzKUuKP0maTi0/f1+sBLgvij/76C77Nm3ts6ufz9Bjg5q5dduxiUIxtq86JIoBvo1xQ4Ig==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-linux-arm64-musl": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.2.tgz",
+ "integrity": "sha512-QVLO/czFMdoMFSqlX3bcswcJNm/23r+qoa/jgtmFc/qEp6/jXmIkDjF/XIo8dPfGaiwy1xfQn8o77L79GeXFgw==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-linux-ppc64-gnu": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.2.tgz",
+ "integrity": "sha512-hgO5Abm0w5UL6FEa2iFnZqo2KlK7TQ5QhV5x09hujBf7t5KzHQ1VmfPuTpqRy/rNlSxua3eWH374xxiVrP+lcA==",
+ "cpu": [
+ "ppc64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-linux-s390x-gnu": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.2.tgz",
+ "integrity": "sha512-fy8rXxuYEu602abC8MUNaPjYLIFzReOaEIEMKMUa0rFEUxNpVXhs15KSSQ4qlqSaM7B6rcj9rDZgADh/IGDzLQ==",
+ "cpu": [
+ "s390x"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-linux-x64-gnu": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.2.tgz",
+ "integrity": "sha512-0+bOkiQ779+r1WpoHOWHqncvyySci0vKph+myNDYb+im6meJAzHQXay6oEgnkHuUGouM1LKTZwqKpBow6Kj7CQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-linux-x64-musl": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.2.tgz",
+ "integrity": "sha512-mjSkrzZK5Qsl0a9d1JgILOiuZOSDTVdKENcSXBoqbzSrspLR/4/IRVDo5wd2GgZjNss/viBFJdeq+j7qH2nypw==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-openharmony-arm64": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.2.tgz",
+ "integrity": "sha512-1v5vHasdfQAZoEHakBV72LIFAC9JjnymsiKxp+GEr/ma3+NJCPSaYK+qavInOovJkgwFrs7GccX2d6IgDA3Z5w==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "openharmony"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-wasm32-wasi": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.2.tgz",
+ "integrity": "sha512-mb1VobWn6NheziTk5/WEaR6AKVbrwT5sOi6C7zk3gy/pD1qtJfU1j4PgTo2NJnOtbL9Dl3Aeei8w9jJ7qC2jZQ==",
+ "cpu": [
+ "wasm32"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@emnapi/core": "1.10.0",
+ "@emnapi/runtime": "1.10.0",
+ "@napi-rs/wasm-runtime": "^1.1.4"
+ },
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-win32-arm64-msvc": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.2.tgz",
+ "integrity": "sha512-SqKonF56vA/L2yHwHYcEp2P34URpOZ7d1fS635cTkpDnUtEGdUbhI6NzsPdqeSWvAAeGDrxjWjNmibDIdFf9/A==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/binding-win32-x64-msvc": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.2.tgz",
+ "integrity": "sha512-v7qRI7gXLRINcOGXt+7YmAZ6iFuyZVMIoXAxhd8oP+DR9dLfL9GfNIx7PLMxmhZdvq8waUJBQiWN9EKNy+TRBQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ }
+ },
+ "node_modules/@rolldown/pluginutils": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.1.tgz",
+ "integrity": "sha512-2j9bGt5Jh8hj+vPtgzPtl72j0yRxHAyumoo6TNfAjsLB04UtpSvPbPcDcBMxz7n+9CYB0c1GxQFxYRg2jimqGw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@rtsao/scc": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz",
+ "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@safe-global/safe-apps-provider": {
+ "version": "0.18.6",
+ "resolved": "https://registry.npmjs.org/@safe-global/safe-apps-provider/-/safe-apps-provider-0.18.6.tgz",
+ "integrity": "sha512-4LhMmjPWlIO8TTDC2AwLk44XKXaK6hfBTWyljDm0HQ6TWlOEijVWNrt2s3OCVMSxlXAcEzYfqyu1daHZooTC2Q==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@safe-global/safe-apps-sdk": "^9.1.0",
+ "events": "^3.3.0"
+ }
+ },
+ "node_modules/@safe-global/safe-apps-sdk": {
+ "version": "9.1.0",
+ "resolved": "https://registry.npmjs.org/@safe-global/safe-apps-sdk/-/safe-apps-sdk-9.1.0.tgz",
+ "integrity": "sha512-N5p/ulfnnA2Pi2M3YeWjULeWbjo7ei22JwU/IXnhoHzKq3pYCN6ynL9mJBOlvDVv892EgLPCWCOwQk/uBT2v0Q==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@safe-global/safe-gateway-typescript-sdk": "^3.5.3",
+ "viem": "^2.1.1"
+ }
+ },
+ "node_modules/@safe-global/safe-gateway-typescript-sdk": {
+ "version": "3.23.1",
+ "resolved": "https://registry.npmjs.org/@safe-global/safe-gateway-typescript-sdk/-/safe-gateway-typescript-sdk-3.23.1.tgz",
+ "integrity": "sha512-6ORQfwtEJYpalCeVO21L4XXGSdbEMfyp2hEv6cP82afKXSwvse6d3sdelgaPWUxHIsFRkWvHDdzh8IyyKHZKxw==",
+ "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.",
+ "license": "MIT",
+ "optional": true,
+ "engines": {
+ "node": ">=16"
+ }
+ },
+ "node_modules/@scure/base": {
+ "version": "1.2.6",
+ "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.2.6.tgz",
+ "integrity": "sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg==",
+ "license": "MIT",
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@scure/bip32": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.7.0.tgz",
+ "integrity": "sha512-E4FFX/N3f4B80AKWp5dP6ow+flD1LQZo/w8UnLGYZO674jS6YnYeepycOOksv+vLPSpgN35wgKgy+ybfTb2SMw==",
+ "license": "MIT",
+ "dependencies": {
+ "@noble/curves": "~1.9.0",
+ "@noble/hashes": "~1.8.0",
+ "@scure/base": "~1.2.5"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@scure/bip32/node_modules/@noble/curves": {
+ "version": "1.9.7",
+ "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.9.7.tgz",
+ "integrity": "sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw==",
+ "license": "MIT",
+ "dependencies": {
+ "@noble/hashes": "1.8.0"
+ },
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@scure/bip32/node_modules/@noble/hashes": {
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz",
+ "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==",
+ "license": "MIT",
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@scure/bip39": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.6.0.tgz",
+ "integrity": "sha512-+lF0BbLiJNwVlev4eKelw1WWLaiKXw7sSl8T6FvBlWkdX+94aGJ4o8XjUdlyhTCjd8c+B3KT3JfS8P0bLRNU6A==",
+ "license": "MIT",
+ "dependencies": {
+ "@noble/hashes": "~1.8.0",
+ "@scure/base": "~1.2.5"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@scure/bip39/node_modules/@noble/hashes": {
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz",
+ "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==",
+ "license": "MIT",
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@sinclair/typebox": {
+ "version": "0.33.22",
+ "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.33.22.tgz",
+ "integrity": "sha512-auUj4k+f4pyrIVf4GW5UKquSZFHJWri06QgARy9C0t9ZTjJLIuNIrr1yl9bWcJWJ1Gz1vOvYN1D+QPaIlNMVkQ==",
+ "license": "MIT"
+ },
+ "node_modules/@solana-program/system": {
+ "version": "0.10.0",
+ "resolved": "https://registry.npmjs.org/@solana-program/system/-/system-0.10.0.tgz",
+ "integrity": "sha512-Go+LOEZmqmNlfr+Gjy5ZWAdY5HbYzk2RBewD9QinEU/bBSzpFfzqDRT55JjFRBGJUvMgf3C2vfXEGT4i8DSI4g==",
+ "license": "Apache-2.0",
+ "optional": true,
+ "peerDependencies": {
+ "@solana/kit": "^5.0"
+ }
+ },
+ "node_modules/@solana-program/token": {
+ "version": "0.9.0",
+ "resolved": "https://registry.npmjs.org/@solana-program/token/-/token-0.9.0.tgz",
+ "integrity": "sha512-vnZxndd4ED4Fc56sw93cWZ2djEeeOFxtaPS8SPf5+a+JZjKA/EnKqzbE1y04FuMhIVrLERQ8uR8H2h72eZzlsA==",
+ "license": "Apache-2.0",
+ "optional": true,
+ "peerDependencies": {
+ "@solana/kit": "^5.0"
+ }
+ },
+ "node_modules/@solana/accounts": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/accounts/-/accounts-5.5.1.tgz",
+ "integrity": "sha512-TfOY9xixg5rizABuLVuZ9XI2x2tmWUC/OoN556xwfDlhBHBjKfszicYYOyD6nbFmwTGYarCmyGIdteXxTXIdhQ==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/addresses": "5.5.1",
+ "@solana/codecs-core": "5.5.1",
+ "@solana/codecs-strings": "5.5.1",
+ "@solana/errors": "5.5.1",
+ "@solana/rpc-spec": "5.5.1",
+ "@solana/rpc-types": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/addresses": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/addresses/-/addresses-5.5.1.tgz",
+ "integrity": "sha512-5xoah3Q9G30HQghu/9BiHLb5pzlPKRC3zydQDmE3O9H//WfayxTFppsUDCL6FjYUHqj/wzK6CWHySglc2RkpdA==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/assertions": "5.5.1",
+ "@solana/codecs-core": "5.5.1",
+ "@solana/codecs-strings": "5.5.1",
+ "@solana/errors": "5.5.1",
+ "@solana/nominal-types": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/assertions": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/assertions/-/assertions-5.5.1.tgz",
+ "integrity": "sha512-YTCSWAlGwSlVPnWtWLm3ukz81wH4j2YaCveK+TjpvUU88hTy6fmUqxi0+hvAMAe4zKXpJyj3Az7BrLJRxbIm4Q==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/errors": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/buffer-layout": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/@solana/buffer-layout/-/buffer-layout-4.0.1.tgz",
+ "integrity": "sha512-E1ImOIAD1tBZFRdjeM4/pzTiTApC0AOBGwyAMS4fwIodCWArzJ3DWdoh8cKxeFM2fElkxBh2Aqts1BPC373rHA==",
+ "license": "MIT",
+ "dependencies": {
+ "buffer": "~6.0.3"
+ },
+ "engines": {
+ "node": ">=5.10"
+ }
+ },
+ "node_modules/@solana/codecs": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/codecs/-/codecs-5.5.1.tgz",
+ "integrity": "sha512-Vea29nJub/bXjfzEV7ZZQ/PWr1pYLZo3z0qW0LQL37uKKVzVFRQlwetd7INk3YtTD3xm9WUYr7bCvYUk3uKy2g==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/codecs-core": "5.5.1",
+ "@solana/codecs-data-structures": "5.5.1",
+ "@solana/codecs-numbers": "5.5.1",
+ "@solana/codecs-strings": "5.5.1",
+ "@solana/options": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/codecs-core": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/codecs-core/-/codecs-core-5.5.1.tgz",
+ "integrity": "sha512-TgBt//bbKBct0t6/MpA8ElaOA3sa8eYVvR7LGslCZ84WiAwwjCY0lW/lOYsFHJQzwREMdUyuEyy5YWBKtdh8Rw==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/errors": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/codecs-data-structures": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/codecs-data-structures/-/codecs-data-structures-5.5.1.tgz",
+ "integrity": "sha512-97bJWGyUY9WvBz3mX1UV3YPWGDTez6btCfD0ip3UVEXJbItVuUiOkzcO5iFDUtQT5riKT6xC+Mzl+0nO76gd0w==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/codecs-core": "5.5.1",
+ "@solana/codecs-numbers": "5.5.1",
+ "@solana/errors": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/codecs-numbers": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/codecs-numbers/-/codecs-numbers-5.5.1.tgz",
+ "integrity": "sha512-rllMIZAHqmtvC0HO/dc/21wDuWaD0B8Ryv8o+YtsICQBuiL/0U4AGwH7Pi5GNFySYk0/crSuwfIqQFtmxNSPFw==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/codecs-core": "5.5.1",
+ "@solana/errors": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/codecs-strings": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/codecs-strings/-/codecs-strings-5.5.1.tgz",
+ "integrity": "sha512-7klX4AhfHYA+uKKC/nxRGP2MntbYQCR3N6+v7bk1W/rSxYuhNmt+FN8aoThSZtWIKwN6BEyR1167ka8Co1+E7A==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/codecs-core": "5.5.1",
+ "@solana/codecs-numbers": "5.5.1",
+ "@solana/errors": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "fastestsmallesttextencoderdecoder": "^1.0.22",
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "fastestsmallesttextencoderdecoder": {
+ "optional": true
+ },
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/errors": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/errors/-/errors-5.5.1.tgz",
+ "integrity": "sha512-vFO3p+S7HoyyrcAectnXbdsMfwUzY2zYFUc2DEe5BwpiE9J1IAxPBGjOWO6hL1bbYdBrlmjNx8DXCslqS+Kcmg==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "chalk": "5.6.2",
+ "commander": "14.0.2"
+ },
+ "bin": {
+ "errors": "bin/cli.mjs"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/fast-stable-stringify": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/fast-stable-stringify/-/fast-stable-stringify-5.5.1.tgz",
+ "integrity": "sha512-Ni7s2FN33zTzhTFgRjEbOVFO+UAmK8qi3Iu0/GRFYK4jN696OjKHnboSQH/EacQ+yGqS54bfxf409wU5dsLLCw==",
+ "license": "MIT",
+ "optional": true,
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/functional": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/functional/-/functional-5.5.1.tgz",
+ "integrity": "sha512-tTHoJcEQq3gQx5qsdsDJ0LEJeFzwNpXD80xApW9o/PPoCNimI3SALkZl+zNW8VnxRrV3l3yYvfHWBKe/X3WG3w==",
+ "license": "MIT",
+ "optional": true,
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/instruction-plans": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/instruction-plans/-/instruction-plans-5.5.1.tgz",
+ "integrity": "sha512-7z3CB7YMcFKuVvgcnNY8bY6IsZ8LG61Iytbz7HpNVGX2u1RthOs1tRW8luTzSG1MPL0Ox7afyAVMYeFqSPHnaQ==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/errors": "5.5.1",
+ "@solana/instructions": "5.5.1",
+ "@solana/keys": "5.5.1",
+ "@solana/promises": "5.5.1",
+ "@solana/transaction-messages": "5.5.1",
+ "@solana/transactions": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/instructions": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/instructions/-/instructions-5.5.1.tgz",
+ "integrity": "sha512-h0G1CG6S+gUUSt0eo6rOtsaXRBwCq1+Js2a+Ps9Bzk9q7YHNFA75/X0NWugWLgC92waRp66hrjMTiYYnLBoWOQ==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/codecs-core": "5.5.1",
+ "@solana/errors": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/keys": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/keys/-/keys-5.5.1.tgz",
+ "integrity": "sha512-KRD61cL7CRL+b4r/eB9dEoVxIf/2EJ1Pm1DmRYhtSUAJD2dJ5Xw8QFuehobOGm9URqQ7gaQl+Fkc1qvDlsWqKg==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/assertions": "5.5.1",
+ "@solana/codecs-core": "5.5.1",
+ "@solana/codecs-strings": "5.5.1",
+ "@solana/errors": "5.5.1",
+ "@solana/nominal-types": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/nominal-types": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/nominal-types/-/nominal-types-5.5.1.tgz",
+ "integrity": "sha512-I1ImR+kfrLFxN5z22UDiTWLdRZeKtU0J/pkWkO8qm/8WxveiwdIv4hooi8pb6JnlR4mSrWhq0pCIOxDYrL9GIQ==",
+ "license": "MIT",
+ "optional": true,
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/offchain-messages": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/offchain-messages/-/offchain-messages-5.5.1.tgz",
+ "integrity": "sha512-g+xHH95prTU+KujtbOzj8wn+C7ZNoiLhf3hj6nYq3MTyxOXtBEysguc97jJveUZG0K97aIKG6xVUlMutg5yxhw==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/addresses": "5.5.1",
+ "@solana/codecs-core": "5.5.1",
+ "@solana/codecs-data-structures": "5.5.1",
+ "@solana/codecs-numbers": "5.5.1",
+ "@solana/codecs-strings": "5.5.1",
+ "@solana/errors": "5.5.1",
+ "@solana/keys": "5.5.1",
+ "@solana/nominal-types": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/options": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/options/-/options-5.5.1.tgz",
+ "integrity": "sha512-eo971c9iLNLmk+yOFyo7yKIJzJ/zou6uKpy6mBuyb/thKtS/haiKIc3VLhyTXty3OH2PW8yOlORJnv4DexJB8A==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/codecs-core": "5.5.1",
+ "@solana/codecs-data-structures": "5.5.1",
+ "@solana/codecs-numbers": "5.5.1",
+ "@solana/codecs-strings": "5.5.1",
+ "@solana/errors": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/plugin-core": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/plugin-core/-/plugin-core-5.5.1.tgz",
+ "integrity": "sha512-VUZl30lDQFJeiSyNfzU1EjYt2QZvoBFKEwjn1lilUJw7KgqD5z7mbV7diJhT+dLFs36i0OsjXvq5kSygn8YJ3A==",
+ "license": "MIT",
+ "optional": true,
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/programs": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/programs/-/programs-5.5.1.tgz",
+ "integrity": "sha512-7U9kn0Jsx1NuBLn5HRTFYh78MV4XN145Yc3WP/q5BlqAVNlMoU9coG5IUTJIG847TUqC1lRto3Dnpwm6T4YRpA==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/addresses": "5.5.1",
+ "@solana/errors": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/promises": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/promises/-/promises-5.5.1.tgz",
+ "integrity": "sha512-T9lfuUYkGykJmppEcssNiCf6yiYQxJkhiLPP+pyAc2z84/7r3UVIb2tNJk4A9sucS66pzJnVHZKcZVGUUp6wzA==",
+ "license": "MIT",
+ "optional": true,
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/rpc": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/rpc/-/rpc-5.5.1.tgz",
+ "integrity": "sha512-ku8zTUMrkCWci66PRIBC+1mXepEnZH/q1f3ck0kJZ95a06bOTl5KU7HeXWtskkyefzARJ5zvCs54AD5nxjQJ+A==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/errors": "5.5.1",
+ "@solana/fast-stable-stringify": "5.5.1",
+ "@solana/functional": "5.5.1",
+ "@solana/rpc-api": "5.5.1",
+ "@solana/rpc-spec": "5.5.1",
+ "@solana/rpc-spec-types": "5.5.1",
+ "@solana/rpc-transformers": "5.5.1",
+ "@solana/rpc-transport-http": "5.5.1",
+ "@solana/rpc-types": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/rpc-api": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-api/-/rpc-api-5.5.1.tgz",
+ "integrity": "sha512-XWOQQPhKl06Vj0xi3RYHAc6oEQd8B82okYJ04K7N0Vvy3J4PN2cxeK7klwkjgavdcN9EVkYCChm2ADAtnztKnA==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/addresses": "5.5.1",
+ "@solana/codecs-core": "5.5.1",
+ "@solana/codecs-strings": "5.5.1",
+ "@solana/errors": "5.5.1",
+ "@solana/keys": "5.5.1",
+ "@solana/rpc-parsed-types": "5.5.1",
+ "@solana/rpc-spec": "5.5.1",
+ "@solana/rpc-transformers": "5.5.1",
+ "@solana/rpc-types": "5.5.1",
+ "@solana/transaction-messages": "5.5.1",
+ "@solana/transactions": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/rpc-parsed-types": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-parsed-types/-/rpc-parsed-types-5.5.1.tgz",
+ "integrity": "sha512-HEi3G2nZqGEsa3vX6U0FrXLaqnUCg4SKIUrOe8CezD+cSFbRTOn3rCLrUmJrhVyXlHoQVaRO9mmeovk31jWxJg==",
+ "license": "MIT",
+ "optional": true,
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/rpc-spec": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-spec/-/rpc-spec-5.5.1.tgz",
+ "integrity": "sha512-m3LX2bChm3E3by4mQrH4YwCAFY57QBzuUSWqlUw7ChuZ+oLLOq7b2czi4i6L4Vna67j3eCmB3e+4tqy1j5wy7Q==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/errors": "5.5.1",
+ "@solana/rpc-spec-types": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/rpc-spec-types": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-spec-types/-/rpc-spec-types-5.5.1.tgz",
+ "integrity": "sha512-6OFKtRpIEJQs8Jb2C4OO8KyP2h2Hy1MFhatMAoXA+0Ik8S3H+CicIuMZvGZ91mIu/tXicuOOsNNLu3HAkrakrw==",
+ "license": "MIT",
+ "optional": true,
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/rpc-subscriptions": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-subscriptions/-/rpc-subscriptions-5.5.1.tgz",
+ "integrity": "sha512-CTMy5bt/6mDh4tc6vUJms9EcuZj3xvK0/xq8IQ90rhkpYvate91RjBP+egvjgSayUg9yucU9vNuUpEjz4spM7w==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/errors": "5.5.1",
+ "@solana/fast-stable-stringify": "5.5.1",
+ "@solana/functional": "5.5.1",
+ "@solana/promises": "5.5.1",
+ "@solana/rpc-spec-types": "5.5.1",
+ "@solana/rpc-subscriptions-api": "5.5.1",
+ "@solana/rpc-subscriptions-channel-websocket": "5.5.1",
+ "@solana/rpc-subscriptions-spec": "5.5.1",
+ "@solana/rpc-transformers": "5.5.1",
+ "@solana/rpc-types": "5.5.1",
+ "@solana/subscribable": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/rpc-subscriptions-api": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-subscriptions-api/-/rpc-subscriptions-api-5.5.1.tgz",
+ "integrity": "sha512-5Oi7k+GdeS8xR2ly1iuSFkAv6CZqwG0Z6b1QZKbEgxadE1XGSDrhM2cn59l+bqCozUWCqh4c/A2znU/qQjROlw==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/addresses": "5.5.1",
+ "@solana/keys": "5.5.1",
+ "@solana/rpc-subscriptions-spec": "5.5.1",
+ "@solana/rpc-transformers": "5.5.1",
+ "@solana/rpc-types": "5.5.1",
+ "@solana/transaction-messages": "5.5.1",
+ "@solana/transactions": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/rpc-subscriptions-channel-websocket": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-subscriptions-channel-websocket/-/rpc-subscriptions-channel-websocket-5.5.1.tgz",
+ "integrity": "sha512-7tGfBBrYY8TrngOyxSHoCU5shy86iA9SRMRrPSyBhEaZRAk6dnbdpmUTez7gtdVo0BCvh9nzQtUycKWSS7PnFQ==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/errors": "5.5.1",
+ "@solana/functional": "5.5.1",
+ "@solana/rpc-subscriptions-spec": "5.5.1",
+ "@solana/subscribable": "5.5.1",
+ "ws": "^8.19.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/rpc-subscriptions-spec": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-subscriptions-spec/-/rpc-subscriptions-spec-5.5.1.tgz",
+ "integrity": "sha512-iq+rGq5fMKP3/mKHPNB6MC8IbVW41KGZg83Us/+LE3AWOTWV1WT20KT2iH1F1ik9roi42COv/TpoZZvhKj45XQ==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/errors": "5.5.1",
+ "@solana/promises": "5.5.1",
+ "@solana/rpc-spec-types": "5.5.1",
+ "@solana/subscribable": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/rpc-transformers": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-transformers/-/rpc-transformers-5.5.1.tgz",
+ "integrity": "sha512-OsWqLCQdcrRJKvHiMmwFhp9noNZ4FARuMkHT5us3ustDLXaxOjF0gfqZLnMkulSLcKt7TGXqMhBV+HCo7z5M8Q==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/errors": "5.5.1",
+ "@solana/functional": "5.5.1",
+ "@solana/nominal-types": "5.5.1",
+ "@solana/rpc-spec-types": "5.5.1",
+ "@solana/rpc-types": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/rpc-transport-http": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-transport-http/-/rpc-transport-http-5.5.1.tgz",
+ "integrity": "sha512-yv8GoVSHqEV0kUJEIhkdOVkR2SvJ6yoWC51cJn2rSV7plr6huLGe0JgujCmB7uZhhaLbcbP3zxXxu9sOjsi7Fg==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/errors": "5.5.1",
+ "@solana/rpc-spec": "5.5.1",
+ "@solana/rpc-spec-types": "5.5.1",
+ "undici-types": "^7.19.2"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/rpc-types": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-types/-/rpc-types-5.5.1.tgz",
+ "integrity": "sha512-bibTFQ7PbHJJjGJPmfYC2I+/5CRFS4O2p9WwbFraX1Keeel+nRrt/NBXIy8veP5AEn2sVJIyJPpWBRpCx1oATA==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/addresses": "5.5.1",
+ "@solana/codecs-core": "5.5.1",
+ "@solana/codecs-numbers": "5.5.1",
+ "@solana/codecs-strings": "5.5.1",
+ "@solana/errors": "5.5.1",
+ "@solana/nominal-types": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/signers": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/signers/-/signers-5.5.1.tgz",
+ "integrity": "sha512-FY0IVaBT2kCAze55vEieR6hag4coqcuJ31Aw3hqRH7mv6sV8oqwuJmUrx+uFwOp1gwd5OEAzlv6N4hOOple4sQ==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/addresses": "5.5.1",
+ "@solana/codecs-core": "5.5.1",
+ "@solana/errors": "5.5.1",
+ "@solana/instructions": "5.5.1",
+ "@solana/keys": "5.5.1",
+ "@solana/nominal-types": "5.5.1",
+ "@solana/offchain-messages": "5.5.1",
+ "@solana/transaction-messages": "5.5.1",
+ "@solana/transactions": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/subscribable": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/subscribable/-/subscribable-5.5.1.tgz",
+ "integrity": "sha512-9K0PsynFq0CsmK1CDi5Y2vUIJpCqkgSS5yfDN0eKPgHqEptLEaia09Kaxc90cSZDZU5mKY/zv1NBmB6Aro9zQQ==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/errors": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/sysvars": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/sysvars/-/sysvars-5.5.1.tgz",
+ "integrity": "sha512-k3Quq87Mm+geGUu1GWv6knPk0ALsfY6EKSJGw9xUJDHzY/RkYSBnh0RiOrUhtFm2TDNjOailg8/m0VHmi3reFA==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/accounts": "5.5.1",
+ "@solana/codecs": "5.5.1",
+ "@solana/errors": "5.5.1",
+ "@solana/rpc-types": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/transaction-confirmation": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/transaction-confirmation/-/transaction-confirmation-5.5.1.tgz",
+ "integrity": "sha512-j4mKlYPHEyu+OD7MBt3jRoX4ScFgkhZC6H65on4Fux6LMScgivPJlwnKoZMnsgxFgWds0pl+BYzSiALDsXlYtw==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/addresses": "5.5.1",
+ "@solana/codecs-strings": "5.5.1",
+ "@solana/errors": "5.5.1",
+ "@solana/keys": "5.5.1",
+ "@solana/promises": "5.5.1",
+ "@solana/rpc": "5.5.1",
+ "@solana/rpc-subscriptions": "5.5.1",
+ "@solana/rpc-types": "5.5.1",
+ "@solana/transaction-messages": "5.5.1",
+ "@solana/transactions": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/transaction-messages": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/transaction-messages/-/transaction-messages-5.5.1.tgz",
+ "integrity": "sha512-aXyhMCEaAp3M/4fP0akwBBQkFPr4pfwoC5CLDq999r/FUwDax2RE/h4Ic7h2Xk+JdcUwsb+rLq85Y52hq84XvQ==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/addresses": "5.5.1",
+ "@solana/codecs-core": "5.5.1",
+ "@solana/codecs-data-structures": "5.5.1",
+ "@solana/codecs-numbers": "5.5.1",
+ "@solana/errors": "5.5.1",
+ "@solana/functional": "5.5.1",
+ "@solana/instructions": "5.5.1",
+ "@solana/nominal-types": "5.5.1",
+ "@solana/rpc-types": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/transactions": {
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/@solana/transactions/-/transactions-5.5.1.tgz",
+ "integrity": "sha512-8hHtDxtqalZ157pnx6p8k10D7J/KY/biLzfgh9R09VNLLY3Fqi7kJvJCr7M2ik3oRll56pxhraAGCC9yIT6eOA==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@solana/addresses": "5.5.1",
+ "@solana/codecs-core": "5.5.1",
+ "@solana/codecs-data-structures": "5.5.1",
+ "@solana/codecs-numbers": "5.5.1",
+ "@solana/codecs-strings": "5.5.1",
+ "@solana/errors": "5.5.1",
+ "@solana/functional": "5.5.1",
+ "@solana/instructions": "5.5.1",
+ "@solana/keys": "5.5.1",
+ "@solana/nominal-types": "5.5.1",
+ "@solana/rpc-types": "5.5.1",
+ "@solana/transaction-messages": "5.5.1"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@solana/wallet-adapter-base": {
+ "version": "0.9.27",
+ "resolved": "https://registry.npmjs.org/@solana/wallet-adapter-base/-/wallet-adapter-base-0.9.27.tgz",
+ "integrity": "sha512-kXjeNfNFVs/NE9GPmysBRKQ/nf+foSaq3kfVSeMcO/iVgigyRmB551OjU3WyAolLG/1jeEfKLqF9fKwMCRkUqg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@solana/wallet-standard-features": "^1.3.0",
+ "@wallet-standard/base": "^1.1.0",
+ "@wallet-standard/features": "^1.1.0",
+ "eventemitter3": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=20"
+ },
+ "peerDependencies": {
+ "@solana/web3.js": "^1.98.0"
+ }
+ },
+ "node_modules/@solana/wallet-standard-features": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/wallet-standard-features/-/wallet-standard-features-1.3.0.tgz",
+ "integrity": "sha512-ZhpZtD+4VArf6RPitsVExvgkF+nGghd1rzPjd97GmBximpnt1rsUxMOEyoIEuH3XBxPyNB6Us7ha7RHWQR+abg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@wallet-standard/base": "^1.1.0",
+ "@wallet-standard/features": "^1.1.0"
+ },
+ "engines": {
+ "node": ">=16"
+ }
+ },
+ "node_modules/@solana/web3.js": {
+ "version": "1.98.4",
+ "resolved": "https://registry.npmjs.org/@solana/web3.js/-/web3.js-1.98.4.tgz",
+ "integrity": "sha512-vv9lfnvjUsRiq//+j5pBdXig0IQdtzA0BRZ3bXEP4KaIyF1CcaydWqgyzQgfZMNIsWNWmG+AUHwPy4AHOD6gpw==",
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "@babel/runtime": "^7.25.0",
+ "@noble/curves": "^1.4.2",
+ "@noble/hashes": "^1.4.0",
+ "@solana/buffer-layout": "^4.0.1",
+ "@solana/codecs-numbers": "^2.1.0",
+ "agentkeepalive": "^4.5.0",
+ "bn.js": "^5.2.1",
+ "borsh": "^0.7.0",
+ "bs58": "^4.0.1",
+ "buffer": "6.0.3",
+ "fast-stable-stringify": "^1.0.0",
+ "jayson": "^4.1.1",
+ "node-fetch": "^2.7.0",
+ "rpc-websockets": "^9.0.2",
+ "superstruct": "^2.0.2"
+ }
+ },
+ "node_modules/@solana/web3.js/node_modules/@solana/codecs-core": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/codecs-core/-/codecs-core-2.3.0.tgz",
+ "integrity": "sha512-oG+VZzN6YhBHIoSKgS5ESM9VIGzhWjEHEGNPSibiDTxFhsFWxNaz8LbMDPjBUE69r9wmdGLkrQ+wVPbnJcZPvw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@solana/web3.js/node_modules/@solana/codecs-numbers": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/codecs-numbers/-/codecs-numbers-2.3.0.tgz",
+ "integrity": "sha512-jFvvwKJKffvG7Iz9dmN51OGB7JBcy2CJ6Xf3NqD/VP90xak66m/Lg48T01u5IQ/hc15mChVHiBm+HHuOFDUrQg==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@solana/web3.js/node_modules/@solana/errors": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/errors/-/errors-2.3.0.tgz",
+ "integrity": "sha512-66RI9MAbwYV0UtP7kGcTBVLxJgUxoZGm8Fbc0ah+lGiAw17Gugco6+9GrJCV83VyF2mDWyYnYM9qdI3yjgpnaQ==",
+ "license": "MIT",
+ "dependencies": {
+ "chalk": "^5.4.1",
+ "commander": "^14.0.0"
+ },
+ "bin": {
+ "errors": "bin/cli.mjs"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@solana/web3.js/node_modules/base-x": {
+ "version": "3.0.11",
+ "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.11.tgz",
+ "integrity": "sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA==",
+ "license": "MIT",
+ "dependencies": {
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "node_modules/@solana/web3.js/node_modules/borsh": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/borsh/-/borsh-0.7.0.tgz",
+ "integrity": "sha512-CLCsZGIBCFnPtkNnieW/a8wmreDmfUtjU2m9yHrzPXIlNbqVs0AQrSatSG6vdNYUqdc83tkQi2eHfF98ubzQLA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "bn.js": "^5.2.0",
+ "bs58": "^4.0.0",
+ "text-encoding-utf-8": "^1.0.2"
+ }
+ },
+ "node_modules/@solana/web3.js/node_modules/bs58": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz",
+ "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==",
+ "license": "MIT",
+ "dependencies": {
+ "base-x": "^3.0.2"
+ }
+ },
+ "node_modules/@standard-schema/spec": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.1.0.tgz",
+ "integrity": "sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==",
+ "license": "MIT"
+ },
+ "node_modules/@standard-schema/utils": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/@standard-schema/utils/-/utils-0.3.0.tgz",
+ "integrity": "sha512-e7Mew686owMaPJVNNLs55PUvgz371nKgwsc4vxE49zsODpJEnxgxRo2y/OKrqueavXgZNMDVj3DdHFlaSAeU8g==",
+ "license": "MIT"
+ },
+ "node_modules/@stellar/freighter-api": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/@stellar/freighter-api/-/freighter-api-6.0.0.tgz",
+ "integrity": "sha512-8CTQcKQmTq/wL715ZUzn1x1POpR0eYhYPKEiaeA7AT0WYBOauOGTxfWPFtSidX3ohAlJZP5HFXy1kG29cVjqxw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "buffer": "6.0.3",
+ "semver": "7.7.1"
+ }
+ },
+ "node_modules/@stellar/freighter-api/node_modules/semver": {
+ "version": "7.7.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
+ "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==",
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/@stellar/js-xdr": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/@stellar/js-xdr/-/js-xdr-3.1.2.tgz",
+ "integrity": "sha512-VVolPL5goVEIsvuGqDc5uiKxV03lzfWdvYg1KikvwheDmTBO68CKDji3bAZ/kppZrx5iTA8z3Ld5yuytcvhvOQ==",
+ "license": "Apache-2.0"
+ },
+ "node_modules/@stellar/stellar-base": {
+ "version": "14.0.1",
+ "resolved": "https://registry.npmjs.org/@stellar/stellar-base/-/stellar-base-14.0.1.tgz",
+ "integrity": "sha512-mI6Kjh9hGWDA1APawQTtCbR7702dNT/8Te1uuRFPqqdoAKBk3WpXOQI3ZSZO+5olW7BSHpmVG5KBPZpIpQxIvw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@noble/curves": "^1.9.6",
+ "@stellar/js-xdr": "^3.1.2",
+ "base32.js": "^0.1.0",
+ "bignumber.js": "^9.3.1",
+ "buffer": "^6.0.3",
+ "sha.js": "^2.4.12"
+ },
+ "engines": {
+ "node": ">=20.0.0"
+ }
+ },
+ "node_modules/@stellar/stellar-base/node_modules/@noble/curves": {
+ "version": "1.9.7",
+ "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.9.7.tgz",
+ "integrity": "sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw==",
+ "license": "MIT",
+ "dependencies": {
+ "@noble/hashes": "1.8.0"
+ },
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@stellar/stellar-base/node_modules/@noble/hashes": {
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz",
+ "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==",
+ "license": "MIT",
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@stellar/stellar-sdk": {
+ "version": "13.3.0",
+ "resolved": "https://registry.npmjs.org/@stellar/stellar-sdk/-/stellar-sdk-13.3.0.tgz",
+ "integrity": "sha512-8+GHcZLp+mdin8gSjcgfb/Lb6sSMYRX6Nf/0LcSJxvjLQR0XHpjGzOiRbYb2jSXo51EnA6kAV5j+4Pzh5OUKUg==",
+ "license": "Apache-2.0",
+ "peer": true,
+ "dependencies": {
+ "@stellar/stellar-base": "^13.1.0",
+ "axios": "^1.8.4",
+ "bignumber.js": "^9.3.0",
+ "eventsource": "^2.0.2",
+ "feaxios": "^0.0.23",
+ "randombytes": "^2.1.0",
+ "toml": "^3.0.0",
+ "urijs": "^1.19.1"
+ },
+ "engines": {
+ "node": ">=18.0.0"
+ }
+ },
+ "node_modules/@stellar/stellar-sdk/node_modules/@stellar/stellar-base": {
+ "version": "13.1.0",
+ "resolved": "https://registry.npmjs.org/@stellar/stellar-base/-/stellar-base-13.1.0.tgz",
+ "integrity": "sha512-90EArG+eCCEzDGj3OJNoCtwpWDwxjv+rs/RNPhvg4bulpjN/CSRj+Ys/SalRcfM4/WRC5/qAfjzmJBAuquWhkA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@stellar/js-xdr": "^3.1.2",
+ "base32.js": "^0.1.0",
+ "bignumber.js": "^9.1.2",
+ "buffer": "^6.0.3",
+ "sha.js": "^2.3.6",
+ "tweetnacl": "^1.0.3"
+ },
+ "engines": {
+ "node": ">=18.0.0"
+ },
+ "optionalDependencies": {
+ "sodium-native": "^4.3.3"
+ }
+ },
+ "node_modules/@swc/helpers": {
+ "version": "0.5.15",
+ "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.15.tgz",
+ "integrity": "sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "tslib": "^2.8.0"
+ }
+ },
+ "node_modules/@tailwindcss/node": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.3.0.tgz",
+ "integrity": "sha512-aFb4gUhFOgdh9AXo4IzBEOzBkkAxm9VigwDJnMIYv3lcfXCJVesNfbEaBl4BNgVRyid92AmdviqwBUBRKSeY3g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/remapping": "^2.3.5",
+ "enhanced-resolve": "^5.21.0",
+ "jiti": "^2.6.1",
+ "lightningcss": "1.32.0",
+ "magic-string": "^0.30.21",
+ "source-map-js": "^1.2.1",
+ "tailwindcss": "4.3.0"
+ }
+ },
+ "node_modules/@tailwindcss/oxide": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.3.0.tgz",
+ "integrity": "sha512-F7HZGBeN9I0/AuuJS5PwcD8xayx5ri5GhjYUDBEVYUkexyA/giwbDNjRVrxSezE3T250OU2K/wp/ltWx3UOefg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 20"
+ },
+ "optionalDependencies": {
+ "@tailwindcss/oxide-android-arm64": "4.3.0",
+ "@tailwindcss/oxide-darwin-arm64": "4.3.0",
+ "@tailwindcss/oxide-darwin-x64": "4.3.0",
+ "@tailwindcss/oxide-freebsd-x64": "4.3.0",
+ "@tailwindcss/oxide-linux-arm-gnueabihf": "4.3.0",
+ "@tailwindcss/oxide-linux-arm64-gnu": "4.3.0",
+ "@tailwindcss/oxide-linux-arm64-musl": "4.3.0",
+ "@tailwindcss/oxide-linux-x64-gnu": "4.3.0",
+ "@tailwindcss/oxide-linux-x64-musl": "4.3.0",
+ "@tailwindcss/oxide-wasm32-wasi": "4.3.0",
+ "@tailwindcss/oxide-win32-arm64-msvc": "4.3.0",
+ "@tailwindcss/oxide-win32-x64-msvc": "4.3.0"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-android-arm64": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.3.0.tgz",
+ "integrity": "sha512-TJPiq67tKlLuObP6RkwvVGDoxCMBVtDgKkLfa/uyj7/FyxvQwHS+UOnVrXXgbEsfUaMgiVvC4KbJnRr26ho4Ng==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">= 20"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-darwin-arm64": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.3.0.tgz",
+ "integrity": "sha512-oMN/WZRb+SO37BmUElEgeEWuU8E/HXRkiODxJxLe1UTHVXLrdVSgfaJV7pSlhRGMSOiXLuxTIjfsF3wYvz8cgQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">= 20"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-darwin-x64": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.3.0.tgz",
+ "integrity": "sha512-N6CUmu4a6bKVADfw77p+iw6Yd9Q3OBhe0veaDX+QazfuVYlQsHfDgxBrsjQ/IW+zywL8mTrNd0SdJT/zgtvMdA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">= 20"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-freebsd-x64": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.3.0.tgz",
+ "integrity": "sha512-zDL5hBkQdH5C6MpqbK3gQAgP80tsMwSI26vjOzjJtNCMUo0lFgOItzHKBIupOZNQxt3ouPH7RPhvNhiTfCe5CQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">= 20"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.3.0.tgz",
+ "integrity": "sha512-R06HdNi7A7OEoMsf6d4tjZ71RCWnZQPHj2mnotSFURjNLdBC+cIgXQ7l81CqeoiQftjf6OOblxXMInMgN2VzMA==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 20"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-linux-arm64-gnu": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.3.0.tgz",
+ "integrity": "sha512-qTJHELX8jetjhRQHCLilkVLmybpzNQAtaI/gaoVoidn/ufbNDbAo8KlK2J+yPoc8wQxvDxCmh/5lr8nC1+lTbg==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 20"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-linux-arm64-musl": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.3.0.tgz",
+ "integrity": "sha512-Z6sukiQsngnWO+l39X4pPbiWT81IC+PLKF+PHxIlyZbGNb9MODfYlXEVlFvej5BOZInWX01kVyzeLvHsXhfczQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 20"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-linux-x64-gnu": {
+ "version": "4.2.2",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.2.2.tgz",
+ "integrity": "sha512-rTAGAkDgqbXHNp/xW0iugLVmX62wOp2PoE39BTCGKjv3Iocf6AFbRP/wZT/kuCxC9QBh9Pu8XPkv/zCZB2mcMg==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 20"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-linux-x64-musl": {
+ "version": "4.2.2",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.2.2.tgz",
+ "integrity": "sha512-XW3t3qwbIwiSyRCggeO2zxe3KWaEbM0/kW9e8+0XpBgyKU4ATYzcVSMKteZJ1iukJ3HgHBjbg9P5YPRCVUxlnQ==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 20"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-wasm32-wasi": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.3.0.tgz",
+ "integrity": "sha512-HNZGOUxEmElksYR7S6sC5jTeNGpobAsy9u7Gu0AskJ8/20FR9GqebUyB+HBcU/ax6BHuiuJi+Oda4B+YX6H1yA==",
+ "bundleDependencies": [
+ "@napi-rs/wasm-runtime",
+ "@emnapi/core",
+ "@emnapi/runtime",
+ "@tybys/wasm-util",
+ "@emnapi/wasi-threads",
+ "tslib"
+ ],
+ "cpu": [
+ "wasm32"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@emnapi/core": "^1.10.0",
+ "@emnapi/runtime": "^1.10.0",
+ "@emnapi/wasi-threads": "^1.2.1",
+ "@napi-rs/wasm-runtime": "^1.1.4",
+ "@tybys/wasm-util": "^0.10.1",
+ "tslib": "^2.8.1"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-win32-arm64-msvc": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.3.0.tgz",
+ "integrity": "sha512-Pe+RPVTi1T+qymuuRpcdvwSVZjnll/f7n8gBxMMh3xLTctMDKqpdfGimbMyioqtLhUYZxdJ9wGNhV7MKHvgZsQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">= 20"
+ }
+ },
+ "node_modules/@tailwindcss/oxide-win32-x64-msvc": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.3.0.tgz",
+ "integrity": "sha512-Mvrf2kXW/yeW/OTezZlCGOirXRcUuLIBx/5Y12BaPM7wJoryG6dfS/NJL8aBPqtTEx/Vm4T4vKzFUcKDT+TKUA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">= 20"
+ }
+ },
+ "node_modules/@tailwindcss/oxide/node_modules/@tailwindcss/oxide-linux-x64-gnu": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.3.0.tgz",
+ "integrity": "sha512-DRNdQRpSGzRGfARVuVkxvM8Q12nh19l4BF/G7zGA1oe+9wcC6saFBHTISrpIcKzhiXtSrlSrluCfvMuledoCTQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 20"
+ }
+ },
+ "node_modules/@tailwindcss/oxide/node_modules/@tailwindcss/oxide-linux-x64-musl": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.3.0.tgz",
+ "integrity": "sha512-Z0IADbDo8bh6I7h2IQMx601AdXBLfFpEdUotft86evd/8ZPflZe9COPO8Q1vw+pfLWIUo9zN/JGZvwuAJqduqg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 20"
+ }
+ },
+ "node_modules/@tailwindcss/postcss": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/@tailwindcss/postcss/-/postcss-4.3.0.tgz",
+ "integrity": "sha512-Jm05Tjx+9yCLGv5qw1c+84Psds8MnyrEQYCB+FFk2lgGiUjlRqdxke4mVTuYrj2xnVZqKim2Apr5ySuQRYAw/w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@alloc/quick-lru": "^5.2.0",
+ "@tailwindcss/node": "4.3.0",
+ "@tailwindcss/oxide": "4.3.0",
+ "postcss": "^8.5.10",
+ "tailwindcss": "4.3.0"
+ }
+ },
+ "node_modules/@tanstack/query-core": {
+ "version": "5.100.14",
+ "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.100.14.tgz",
+ "integrity": "sha512-5X41dGpxgeaHISCRW2oYwcSycZeULZzAunaudXT9ov1KOTj9xwt0CH6hbwqP1/z74ZWF7rYFnDpyYH07XFcZew==",
+ "license": "MIT",
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/tannerlinsley"
+ }
+ },
+ "node_modules/@tanstack/react-query": {
+ "version": "5.100.14",
+ "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.100.14.tgz",
+ "integrity": "sha512-oOr6aRdSFEwWhzxEkD/9ZcItM3+LjBSkeVmadWKwUssAHTsqd/7bOjWrX4AbvEkoEhgAxzN0Xk6H/aYzXiYBAw==",
+ "license": "MIT",
+ "dependencies": {
+ "@tanstack/query-core": "5.100.14"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/tannerlinsley"
+ },
+ "peerDependencies": {
+ "react": "^18 || ^19"
+ }
+ },
+ "node_modules/@testing-library/dom": {
+ "version": "10.4.1",
+ "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-10.4.1.tgz",
+ "integrity": "sha512-o4PXJQidqJl82ckFaXUeoAW+XysPLauYI43Abki5hABd853iMhitooc6znOnczgbTYmEP6U6/y1ZyKAIsvMKGg==",
+ "dev": true,
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "@babel/code-frame": "^7.10.4",
+ "@babel/runtime": "^7.12.5",
+ "@types/aria-query": "^5.0.1",
+ "aria-query": "5.3.0",
+ "dom-accessibility-api": "^0.5.9",
+ "lz-string": "^1.5.0",
+ "picocolors": "1.1.1",
+ "pretty-format": "^27.0.2"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@testing-library/jest-dom": {
+ "version": "6.9.1",
+ "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.9.1.tgz",
+ "integrity": "sha512-zIcONa+hVtVSSep9UT3jZ5rizo2BsxgyDYU7WFD5eICBE7no3881HGeb/QkGfsJs6JTkY1aQhT7rIPC7e+0nnA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@adobe/css-tools": "^4.4.0",
+ "aria-query": "^5.0.0",
+ "css.escape": "^1.5.1",
+ "dom-accessibility-api": "^0.6.3",
+ "picocolors": "^1.1.1",
+ "redent": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=14",
+ "npm": ">=6",
+ "yarn": ">=1"
+ }
+ },
+ "node_modules/@testing-library/jest-dom/node_modules/dom-accessibility-api": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.6.3.tgz",
+ "integrity": "sha512-7ZgogeTnjuHbo+ct10G9Ffp0mif17idi0IyWNVA/wcwcm7NPOD/WEHVP3n7n3MhXqxoIYm8d6MuZohYWIZ4T3w==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@testing-library/react": {
+ "version": "16.3.2",
+ "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-16.3.2.tgz",
+ "integrity": "sha512-XU5/SytQM+ykqMnAnvB2umaJNIOsLF3PVv//1Ew4CTcpz0/BRyy/af40qqrt7SjKpDdT1saBMc42CUok5gaw+g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/runtime": "^7.12.5"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "peerDependencies": {
+ "@testing-library/dom": "^10.0.0",
+ "@types/react": "^18.0.0 || ^19.0.0",
+ "@types/react-dom": "^18.0.0 || ^19.0.0",
+ "react": "^18.0.0 || ^19.0.0",
+ "react-dom": "^18.0.0 || ^19.0.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "@types/react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@trezor/analytics": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/@trezor/analytics/-/analytics-1.5.0.tgz",
+ "integrity": "sha512-evILW5XJEmfPlf0TY1duOLtGJ47pdGeSKVE3P75ODEUsRNxtPVqlkOUBPmYpCxPnzS8XDmkatT8lf9/DF0G6nA==",
+ "license": "See LICENSE.md in repo root",
+ "dependencies": {
+ "@trezor/env-utils": "1.5.0",
+ "@trezor/utils": "9.5.0"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/blockchain-link": {
+ "version": "2.6.2",
+ "resolved": "https://registry.npmjs.org/@trezor/blockchain-link/-/blockchain-link-2.6.2.tgz",
+ "integrity": "sha512-HMz+Dm6nMflqRkaebMqpv3uNnVkRrb6lD2HKTHNBGhjVbqf0wRzJ8JoQ08wn/sF00ljJZz8pGnpcMYHJNxE+wQ==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@solana-program/compute-budget": "^0.8.0",
+ "@solana-program/stake": "^0.2.1",
+ "@solana-program/token": "^0.5.1",
+ "@solana-program/token-2022": "^0.4.2",
+ "@solana/kit": "^2.3.0",
+ "@solana/rpc-types": "^2.3.0",
+ "@stellar/stellar-sdk": "14.2.0",
+ "@trezor/blockchain-link-types": "1.5.1",
+ "@trezor/blockchain-link-utils": "1.5.2",
+ "@trezor/env-utils": "1.5.0",
+ "@trezor/utils": "9.5.0",
+ "@trezor/utxo-lib": "2.5.0",
+ "@trezor/websocket-client": "1.3.0",
+ "@types/web": "^0.0.197",
+ "crypto-browserify": "3.12.0",
+ "socks-proxy-agent": "8.0.5",
+ "stream-browserify": "^3.0.0",
+ "xrpl": "4.4.3"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/blockchain-link-types": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/@trezor/blockchain-link-types/-/blockchain-link-types-1.5.1.tgz",
+ "integrity": "sha512-Idavz6LwLBW8sXc69fh5AJEnl666EDl2Nt3io7updvBgOR0/P12I900DgjNhCKtiWuv66A33/5RE7zLcj3lfnw==",
+ "license": "See LICENSE.md in repo root",
+ "dependencies": {
+ "@trezor/utils": "9.5.0",
+ "@trezor/utxo-lib": "2.5.0"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/blockchain-link-utils": {
+ "version": "1.5.2",
+ "resolved": "https://registry.npmjs.org/@trezor/blockchain-link-utils/-/blockchain-link-utils-1.5.2.tgz",
+ "integrity": "sha512-OSS5OEE98FMnYfjoEALPjBt7ebjC/FKnq3HOolHdEWXBpVlXZNN2+Vo1R9J6WbZUU087sHuUTJJy/GJYWY13Tg==",
+ "license": "See LICENSE.md in repo root",
+ "dependencies": {
+ "@mobily/ts-belt": "^3.13.1",
+ "@stellar/stellar-sdk": "14.2.0",
+ "@trezor/env-utils": "1.5.0",
+ "@trezor/protobuf": "1.5.2",
+ "@trezor/utils": "9.5.0",
+ "xrpl": "4.4.3"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/blockchain-link-utils/node_modules/@stellar/stellar-sdk": {
+ "version": "14.2.0",
+ "resolved": "https://registry.npmjs.org/@stellar/stellar-sdk/-/stellar-sdk-14.2.0.tgz",
+ "integrity": "sha512-7nh2ogzLRMhfkIC0fGjn1LHUzk3jqVw8tjAuTt5ADWfL9CSGBL18ILucE9igz2L/RU2AZgeAvhujAnW91Ut/oQ==",
+ "hasInstallScript": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@stellar/stellar-base": "^14.0.1",
+ "axios": "^1.12.2",
+ "bignumber.js": "^9.3.1",
+ "eventsource": "^2.0.2",
+ "feaxios": "^0.0.23",
+ "randombytes": "^2.1.0",
+ "toml": "^3.0.0",
+ "urijs": "^1.19.1"
+ },
+ "engines": {
+ "node": ">=20.0.0"
+ }
+ },
+ "node_modules/@trezor/blockchain-link-utils/node_modules/@trezor/protobuf": {
+ "version": "1.5.2",
+ "resolved": "https://registry.npmjs.org/@trezor/protobuf/-/protobuf-1.5.2.tgz",
+ "integrity": "sha512-zViaL1jKue8DUTVEDg0C/lMipqNMd/Z3kr29/+MeZOoupjaXIQ2Lqp3WAMe8hvNTKKX8aNQH9JrbapJ6w9FMXw==",
+ "license": "See LICENSE.md in repo root",
+ "dependencies": {
+ "@trezor/schema-utils": "1.4.0",
+ "long": "5.2.5",
+ "protobufjs": "7.4.0"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/blockchain-link-utils/node_modules/protobufjs": {
+ "version": "7.4.0",
+ "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.4.0.tgz",
+ "integrity": "sha512-mRUWCc3KUU4w1jU8sGxICXH/gNS94DvI1gxqDvBzhj1JpcsimQkYiOJfwsPUykUI5ZaspFbSgmBLER8IrQ3tqw==",
+ "hasInstallScript": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "@protobufjs/aspromise": "^1.1.2",
+ "@protobufjs/base64": "^1.1.2",
+ "@protobufjs/codegen": "^2.0.4",
+ "@protobufjs/eventemitter": "^1.1.0",
+ "@protobufjs/fetch": "^1.1.0",
+ "@protobufjs/float": "^1.0.2",
+ "@protobufjs/inquire": "^1.1.0",
+ "@protobufjs/path": "^1.1.2",
+ "@protobufjs/pool": "^1.1.0",
+ "@protobufjs/utf8": "^1.1.0",
+ "@types/node": ">=13.7.0",
+ "long": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana-program/compute-budget": {
+ "version": "0.8.0",
+ "resolved": "https://registry.npmjs.org/@solana-program/compute-budget/-/compute-budget-0.8.0.tgz",
+ "integrity": "sha512-qPKxdxaEsFxebZ4K5RPuy7VQIm/tfJLa1+Nlt3KNA8EYQkz9Xm8htdoEaXVrer9kpgzzp9R3I3Bh6omwCM06tQ==",
+ "license": "Apache-2.0",
+ "peerDependencies": {
+ "@solana/kit": "^2.1.0"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana-program/stake": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/@solana-program/stake/-/stake-0.2.1.tgz",
+ "integrity": "sha512-ssNPsJv9XHaA+L7ihzmWGYcm/+XYURQ8UA3wQMKf6ccEHyHOUgoglkkDU/BoA0+wul6HxZUN0tHFymC0qFw6sg==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@solana/kit": "^2.1.0"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana-program/token": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/@solana-program/token/-/token-0.5.1.tgz",
+ "integrity": "sha512-bJvynW5q9SFuVOZ5vqGVkmaPGA0MCC+m9jgJj1nk5m20I389/ms69ASnhWGoOPNcie7S9OwBX0gTj2fiyWpfag==",
+ "license": "Apache-2.0",
+ "peerDependencies": {
+ "@solana/kit": "^2.1.0"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana-program/token-2022": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/@solana-program/token-2022/-/token-2022-0.4.2.tgz",
+ "integrity": "sha512-zIpR5t4s9qEU3hZKupzIBxJ6nUV5/UVyIT400tu9vT1HMs5JHxaTTsb5GUhYjiiTvNwU0MQavbwc4Dl29L0Xvw==",
+ "license": "Apache-2.0",
+ "peerDependencies": {
+ "@solana/kit": "^2.1.0",
+ "@solana/sysvars": "^2.1.0"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/accounts": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/accounts/-/accounts-2.3.0.tgz",
+ "integrity": "sha512-QgQTj404Z6PXNOyzaOpSzjgMOuGwG8vC66jSDB+3zHaRcEPRVRd2sVSrd1U6sHtnV3aiaS6YyDuPQMheg4K2jw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/rpc-spec": "2.3.0",
+ "@solana/rpc-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/addresses": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/addresses/-/addresses-2.3.0.tgz",
+ "integrity": "sha512-ypTNkY2ZaRFpHLnHAgaW8a83N0/WoqdFvCqf4CQmnMdFsZSdC7qOwcbd7YzdaQn9dy+P2hybewzB+KP7LutxGA==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/assertions": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/nominal-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/assertions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/assertions/-/assertions-2.3.0.tgz",
+ "integrity": "sha512-Ekoet3khNg3XFLN7MIz8W31wPQISpKUGDGTylLptI+JjCDWx3PIa88xjEMqFo02WJ8sBj2NLV64Xg1sBcsHjZQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/codecs": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/codecs/-/codecs-2.3.0.tgz",
+ "integrity": "sha512-JVqGPkzoeyU262hJGdH64kNLH0M+Oew2CIPOa/9tR3++q2pEd4jU2Rxdfye9sd0Ce3XJrR5AIa8ZfbyQXzjh+g==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-data-structures": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/options": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/codecs-core": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/codecs-core/-/codecs-core-2.3.0.tgz",
+ "integrity": "sha512-oG+VZzN6YhBHIoSKgS5ESM9VIGzhWjEHEGNPSibiDTxFhsFWxNaz8LbMDPjBUE69r9wmdGLkrQ+wVPbnJcZPvw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/codecs-data-structures": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/codecs-data-structures/-/codecs-data-structures-2.3.0.tgz",
+ "integrity": "sha512-qvU5LE5DqEdYMYgELRHv+HMOx73sSoV1ZZkwIrclwUmwTbTaH8QAJURBj0RhQ/zCne7VuLLOZFFGv6jGigWhSw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/codecs-numbers": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/codecs-numbers/-/codecs-numbers-2.3.0.tgz",
+ "integrity": "sha512-jFvvwKJKffvG7Iz9dmN51OGB7JBcy2CJ6Xf3NqD/VP90xak66m/Lg48T01u5IQ/hc15mChVHiBm+HHuOFDUrQg==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/codecs-strings": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/codecs-strings/-/codecs-strings-2.3.0.tgz",
+ "integrity": "sha512-y5pSBYwzVziXu521hh+VxqUtp0hYGTl1eWGoc1W+8mdvBdC1kTqm/X7aYQw33J42hw03JjryvYOvmGgk3Qz/Ug==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "fastestsmallesttextencoderdecoder": "^1.0.22",
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/errors": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/errors/-/errors-2.3.0.tgz",
+ "integrity": "sha512-66RI9MAbwYV0UtP7kGcTBVLxJgUxoZGm8Fbc0ah+lGiAw17Gugco6+9GrJCV83VyF2mDWyYnYM9qdI3yjgpnaQ==",
+ "license": "MIT",
+ "dependencies": {
+ "chalk": "^5.4.1",
+ "commander": "^14.0.0"
+ },
+ "bin": {
+ "errors": "bin/cli.mjs"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/fast-stable-stringify": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/fast-stable-stringify/-/fast-stable-stringify-2.3.0.tgz",
+ "integrity": "sha512-KfJPrMEieUg6D3hfQACoPy0ukrAV8Kio883llt/8chPEG3FVTX9z/Zuf4O01a15xZmBbmQ7toil2Dp0sxMJSxw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/functional": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/functional/-/functional-2.3.0.tgz",
+ "integrity": "sha512-AgsPh3W3tE+nK3eEw/W9qiSfTGwLYEvl0rWaxHht/lRcuDVwfKRzeSa5G79eioWFFqr+pTtoCr3D3OLkwKz02Q==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/instructions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/instructions/-/instructions-2.3.0.tgz",
+ "integrity": "sha512-PLMsmaIKu7hEAzyElrk2T7JJx4D+9eRwebhFZpy2PXziNSmFF929eRHKUsKqBFM3cYR1Yy3m6roBZfA+bGE/oQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/keys": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/keys/-/keys-2.3.0.tgz",
+ "integrity": "sha512-ZVVdga79pNH+2pVcm6fr2sWz9HTwfopDVhYb0Lh3dh+WBmJjwkabXEIHey2rUES7NjFa/G7sV8lrUn/v8LDCCQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/assertions": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/nominal-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/kit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/kit/-/kit-2.3.0.tgz",
+ "integrity": "sha512-sb6PgwoW2LjE5oTFu4lhlS/cGt/NB3YrShEyx7JgWFWysfgLdJnhwWThgwy/4HjNsmtMrQGWVls0yVBHcMvlMQ==",
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "@solana/accounts": "2.3.0",
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/instructions": "2.3.0",
+ "@solana/keys": "2.3.0",
+ "@solana/programs": "2.3.0",
+ "@solana/rpc": "2.3.0",
+ "@solana/rpc-parsed-types": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0",
+ "@solana/rpc-subscriptions": "2.3.0",
+ "@solana/rpc-types": "2.3.0",
+ "@solana/signers": "2.3.0",
+ "@solana/sysvars": "2.3.0",
+ "@solana/transaction-confirmation": "2.3.0",
+ "@solana/transaction-messages": "2.3.0",
+ "@solana/transactions": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/nominal-types": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/nominal-types/-/nominal-types-2.3.0.tgz",
+ "integrity": "sha512-uKlMnlP4PWW5UTXlhKM8lcgIaNj8dvd8xO4Y9l+FVvh9RvW2TO0GwUO6JCo7JBzCB0PSqRJdWWaQ8pu1Ti/OkA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/options": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/options/-/options-2.3.0.tgz",
+ "integrity": "sha512-PPnnZBRCWWoZQ11exPxf//DRzN2C6AoFsDI/u2AsQfYih434/7Kp4XLpfOMT/XESi+gdBMFNNfbES5zg3wAIkw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-data-structures": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/programs": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/programs/-/programs-2.3.0.tgz",
+ "integrity": "sha512-UXKujV71VCI5uPs+cFdwxybtHZAIZyQkqDiDnmK+DawtOO9mBn4Nimdb/6RjR2CXT78mzO9ZCZ3qfyX+ydcB7w==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/promises": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/promises/-/promises-2.3.0.tgz",
+ "integrity": "sha512-GjVgutZKXVuojd9rWy1PuLnfcRfqsaCm7InCiZc8bqmJpoghlyluweNc7ml9Y5yQn1P2IOyzh9+p/77vIyNybQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/rpc": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc/-/rpc-2.3.0.tgz",
+ "integrity": "sha512-ZWN76iNQAOCpYC7yKfb3UNLIMZf603JckLKOOLTHuy9MZnTN8XV6uwvDFhf42XvhglgUjGCEnbUqWtxQ9pa/pQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/fast-stable-stringify": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/rpc-api": "2.3.0",
+ "@solana/rpc-spec": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0",
+ "@solana/rpc-transformers": "2.3.0",
+ "@solana/rpc-transport-http": "2.3.0",
+ "@solana/rpc-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/rpc-api": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-api/-/rpc-api-2.3.0.tgz",
+ "integrity": "sha512-UUdiRfWoyYhJL9PPvFeJr4aJ554ob2jXcpn4vKmRVn9ire0sCbpQKYx6K8eEKHZWXKrDW8IDspgTl0gT/aJWVg==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/keys": "2.3.0",
+ "@solana/rpc-parsed-types": "2.3.0",
+ "@solana/rpc-spec": "2.3.0",
+ "@solana/rpc-transformers": "2.3.0",
+ "@solana/rpc-types": "2.3.0",
+ "@solana/transaction-messages": "2.3.0",
+ "@solana/transactions": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/rpc-parsed-types": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-parsed-types/-/rpc-parsed-types-2.3.0.tgz",
+ "integrity": "sha512-B5pHzyEIbBJf9KHej+zdr5ZNAdSvu7WLU2lOUPh81KHdHQs6dEb310LGxcpCc7HVE8IEdO20AbckewDiAN6OCg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/rpc-spec": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-spec/-/rpc-spec-2.3.0.tgz",
+ "integrity": "sha512-fA2LMX4BMixCrNB2n6T83AvjZ3oUQTu7qyPLyt8gHQaoEAXs8k6GZmu6iYcr+FboQCjUmRPgMaABbcr9j2J9Sw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/rpc-spec-types": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-spec-types/-/rpc-spec-types-2.3.0.tgz",
+ "integrity": "sha512-xQsb65lahjr8Wc9dMtP7xa0ZmDS8dOE2ncYjlvfyw/h4mpdXTUdrSMi6RtFwX33/rGuztQ7Hwaid5xLNSLvsFQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/rpc-subscriptions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-subscriptions/-/rpc-subscriptions-2.3.0.tgz",
+ "integrity": "sha512-Uyr10nZKGVzvCOqwCZgwYrzuoDyUdwtgQRefh13pXIrdo4wYjVmoLykH49Omt6abwStB0a4UL5gX9V4mFdDJZg==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/fast-stable-stringify": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/promises": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0",
+ "@solana/rpc-subscriptions-api": "2.3.0",
+ "@solana/rpc-subscriptions-channel-websocket": "2.3.0",
+ "@solana/rpc-subscriptions-spec": "2.3.0",
+ "@solana/rpc-transformers": "2.3.0",
+ "@solana/rpc-types": "2.3.0",
+ "@solana/subscribable": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/rpc-subscriptions-api": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-subscriptions-api/-/rpc-subscriptions-api-2.3.0.tgz",
+ "integrity": "sha512-9mCjVbum2Hg9KGX3LKsrI5Xs0KX390lS+Z8qB80bxhar6MJPugqIPH8uRgLhCW9GN3JprAfjRNl7our8CPvsPQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/keys": "2.3.0",
+ "@solana/rpc-subscriptions-spec": "2.3.0",
+ "@solana/rpc-transformers": "2.3.0",
+ "@solana/rpc-types": "2.3.0",
+ "@solana/transaction-messages": "2.3.0",
+ "@solana/transactions": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/rpc-subscriptions-channel-websocket": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-subscriptions-channel-websocket/-/rpc-subscriptions-channel-websocket-2.3.0.tgz",
+ "integrity": "sha512-2oL6ceFwejIgeWzbNiUHI2tZZnaOxNTSerszcin7wYQwijxtpVgUHiuItM/Y70DQmH9sKhmikQp+dqeGalaJxw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/rpc-subscriptions-spec": "2.3.0",
+ "@solana/subscribable": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3",
+ "ws": "^8.18.0"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/rpc-subscriptions-spec": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-subscriptions-spec/-/rpc-subscriptions-spec-2.3.0.tgz",
+ "integrity": "sha512-rdmVcl4PvNKQeA2l8DorIeALCgJEMSu7U8AXJS1PICeb2lQuMeaR+6cs/iowjvIB0lMVjYN2sFf6Q3dJPu6wWg==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/promises": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0",
+ "@solana/subscribable": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/rpc-transformers": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-transformers/-/rpc-transformers-2.3.0.tgz",
+ "integrity": "sha512-UuHYK3XEpo9nMXdjyGKkPCOr7WsZsxs7zLYDO1A5ELH3P3JoehvrDegYRAGzBS2VKsfApZ86ZpJToP0K3PhmMA==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/nominal-types": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0",
+ "@solana/rpc-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/rpc-transport-http": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-transport-http/-/rpc-transport-http-2.3.0.tgz",
+ "integrity": "sha512-HFKydmxGw8nAF5N+S0NLnPBDCe5oMDtI2RAmW8DMqP4U3Zxt2XWhvV1SNkAldT5tF0U1vP+is6fHxyhk4xqEvg==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/rpc-spec": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0",
+ "undici-types": "^7.11.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/rpc-types": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-types/-/rpc-types-2.3.0.tgz",
+ "integrity": "sha512-O09YX2hED2QUyGxrMOxQ9GzH1LlEwwZWu69QbL4oYmIf6P5dzEEHcqRY6L1LsDVqc/dzAdEs/E1FaPrcIaIIPw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/nominal-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/signers": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/signers/-/signers-2.3.0.tgz",
+ "integrity": "sha512-OSv6fGr/MFRx6J+ZChQMRqKNPGGmdjkqarKkRzkwmv7v8quWsIRnJT5EV8tBy3LI4DLO/A8vKiNSPzvm1TdaiQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/instructions": "2.3.0",
+ "@solana/keys": "2.3.0",
+ "@solana/nominal-types": "2.3.0",
+ "@solana/transaction-messages": "2.3.0",
+ "@solana/transactions": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/subscribable": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/subscribable/-/subscribable-2.3.0.tgz",
+ "integrity": "sha512-DkgohEDbMkdTWiKAoatY02Njr56WXx9e/dKKfmne8/Ad6/2llUIrax78nCdlvZW9quXMaXPTxZvdQqo9N669Og==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/sysvars": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/sysvars/-/sysvars-2.3.0.tgz",
+ "integrity": "sha512-LvjADZrpZ+CnhlHqfI5cmsRzX9Rpyb1Ox2dMHnbsRNzeKAMhu9w4ZBIaeTdO322zsTr509G1B+k2ABD3whvUBA==",
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "@solana/accounts": "2.3.0",
+ "@solana/codecs": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/rpc-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/transaction-confirmation": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/transaction-confirmation/-/transaction-confirmation-2.3.0.tgz",
+ "integrity": "sha512-UiEuiHCfAAZEKdfne/XljFNJbsKAe701UQHKXEInYzIgBjRbvaeYZlBmkkqtxwcasgBTOmEaEKT44J14N9VZDw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/keys": "2.3.0",
+ "@solana/promises": "2.3.0",
+ "@solana/rpc": "2.3.0",
+ "@solana/rpc-subscriptions": "2.3.0",
+ "@solana/rpc-types": "2.3.0",
+ "@solana/transaction-messages": "2.3.0",
+ "@solana/transactions": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/transaction-messages": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/transaction-messages/-/transaction-messages-2.3.0.tgz",
+ "integrity": "sha512-bgqvWuy3MqKS5JdNLH649q+ngiyOu5rGS3DizSnWwYUd76RxZl1kN6CoqHSrrMzFMvis6sck/yPGG3wqrMlAww==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-data-structures": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/instructions": "2.3.0",
+ "@solana/nominal-types": "2.3.0",
+ "@solana/rpc-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@solana/transactions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/transactions/-/transactions-2.3.0.tgz",
+ "integrity": "sha512-LnTvdi8QnrQtuEZor5Msje61sDpPstTVwKg4y81tNxDhiyomjuvnSNLAq6QsB9gIxUqbNzPZgOG9IU4I4/Uaug==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-data-structures": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/instructions": "2.3.0",
+ "@solana/keys": "2.3.0",
+ "@solana/nominal-types": "2.3.0",
+ "@solana/rpc-types": "2.3.0",
+ "@solana/transaction-messages": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/blockchain-link/node_modules/@stellar/stellar-sdk": {
+ "version": "14.2.0",
+ "resolved": "https://registry.npmjs.org/@stellar/stellar-sdk/-/stellar-sdk-14.2.0.tgz",
+ "integrity": "sha512-7nh2ogzLRMhfkIC0fGjn1LHUzk3jqVw8tjAuTt5ADWfL9CSGBL18ILucE9igz2L/RU2AZgeAvhujAnW91Ut/oQ==",
+ "hasInstallScript": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@stellar/stellar-base": "^14.0.1",
+ "axios": "^1.12.2",
+ "bignumber.js": "^9.3.1",
+ "eventsource": "^2.0.2",
+ "feaxios": "^0.0.23",
+ "randombytes": "^2.1.0",
+ "toml": "^3.0.0",
+ "urijs": "^1.19.1"
+ },
+ "engines": {
+ "node": ">=20.0.0"
+ }
+ },
+ "node_modules/@trezor/connect": {
+ "version": "9.7.3",
+ "resolved": "https://registry.npmjs.org/@trezor/connect/-/connect-9.7.3.tgz",
+ "integrity": "sha512-oAOfvJHT8tPqOXTmCOhn8uTZcoqSDuWAiWXQegx7C46tq+NLg+enkYXxUYEHq/9PmfZAOrUT9VMxZDsXM2thkA==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@ethereumjs/common": "^10.1.0",
+ "@ethereumjs/tx": "^10.1.0",
+ "@fivebinaries/coin-selection": "3.0.0",
+ "@mobily/ts-belt": "^3.13.1",
+ "@noble/hashes": "^1.6.1",
+ "@scure/bip39": "^1.5.1",
+ "@solana-program/compute-budget": "^0.8.0",
+ "@solana-program/system": "^0.7.0",
+ "@solana-program/token": "^0.5.1",
+ "@solana-program/token-2022": "^0.4.2",
+ "@solana/kit": "^2.3.0",
+ "@trezor/blockchain-link": "2.6.2",
+ "@trezor/blockchain-link-types": "1.5.1",
+ "@trezor/blockchain-link-utils": "1.5.2",
+ "@trezor/connect-analytics": "1.4.0",
+ "@trezor/connect-common": "0.5.1",
+ "@trezor/crypto-utils": "1.2.0",
+ "@trezor/device-authenticity": "1.1.2",
+ "@trezor/device-utils": "1.2.0",
+ "@trezor/env-utils": "^1.5.0",
+ "@trezor/protobuf": "1.5.3",
+ "@trezor/protocol": "1.3.1",
+ "@trezor/schema-utils": "1.4.0",
+ "@trezor/transport": "1.6.3",
+ "@trezor/type-utils": "1.2.0",
+ "@trezor/utils": "9.5.0",
+ "@trezor/utxo-lib": "2.5.0",
+ "blakejs": "^1.2.1",
+ "bs58": "^6.0.0",
+ "bs58check": "^4.0.0",
+ "cbor": "^10.0.10",
+ "cross-fetch": "^4.0.0",
+ "jws": "^4.0.0"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/connect-analytics": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/@trezor/connect-analytics/-/connect-analytics-1.4.0.tgz",
+ "integrity": "sha512-hy2J2oeIhRC/e1bOWXo5dsVMVnDwO2UKnxhR6FD8PINR3jgM6PWAXc6k33WJsBcyiTzwMP7/xPysLcgNJH5o4w==",
+ "license": "See LICENSE.md in repo root",
+ "dependencies": {
+ "@trezor/analytics": "1.5.0"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/connect-common": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/@trezor/connect-common/-/connect-common-0.5.1.tgz",
+ "integrity": "sha512-wdpVCwdylBh4SBO5Ys40tB/d59UlfjmxgBHDkkLgaR+JcqkthCfiw5VlUrV9wu65lquejAZhA5KQL4mUUUhCow==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@trezor/env-utils": "1.5.0",
+ "@trezor/type-utils": "1.2.0",
+ "@trezor/utils": "9.5.0"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/connect-plugin-stellar": {
+ "version": "9.2.6",
+ "resolved": "https://registry.npmjs.org/@trezor/connect-plugin-stellar/-/connect-plugin-stellar-9.2.6.tgz",
+ "integrity": "sha512-RA0Q4GHaf1mFxgSX183yyH+5tWEgS1j+sfe9KiUyIn/VnpXeUnaCpQuKMomAjGXQ5oNuvikTOdHYOqsvuEdOyw==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@trezor/utils": "9.5.0"
+ },
+ "peerDependencies": {
+ "@stellar/stellar-sdk": "^13.3.0",
+ "@trezor/connect": "9.x.x",
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/connect-web": {
+ "version": "9.7.2",
+ "resolved": "https://registry.npmjs.org/@trezor/connect-web/-/connect-web-9.7.2.tgz",
+ "integrity": "sha512-r4wMnQ51KO1EaMpO8HLB95E+4s+aaZE9Vjx1dHYaD+Xj40LR7OJmR6DyDKuF0Ioji3Jxx1MwZCaFfvA+0JW+Sg==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@trezor/connect": "9.7.2",
+ "@trezor/connect-common": "0.5.1",
+ "@trezor/utils": "9.5.0",
+ "@trezor/websocket-client": "1.3.0"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana-program/compute-budget": {
+ "version": "0.8.0",
+ "resolved": "https://registry.npmjs.org/@solana-program/compute-budget/-/compute-budget-0.8.0.tgz",
+ "integrity": "sha512-qPKxdxaEsFxebZ4K5RPuy7VQIm/tfJLa1+Nlt3KNA8EYQkz9Xm8htdoEaXVrer9kpgzzp9R3I3Bh6omwCM06tQ==",
+ "license": "Apache-2.0",
+ "peerDependencies": {
+ "@solana/kit": "^2.1.0"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana-program/stake": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/@solana-program/stake/-/stake-0.2.1.tgz",
+ "integrity": "sha512-ssNPsJv9XHaA+L7ihzmWGYcm/+XYURQ8UA3wQMKf6ccEHyHOUgoglkkDU/BoA0+wul6HxZUN0tHFymC0qFw6sg==",
+ "license": "MIT",
+ "peerDependencies": {
+ "@solana/kit": "^2.1.0"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana-program/system": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/@solana-program/system/-/system-0.7.0.tgz",
+ "integrity": "sha512-FKTBsKHpvHHNc1ATRm7SlC5nF/VdJtOSjldhcyfMN9R7xo712Mo2jHIzvBgn8zQO5Kg0DcWuKB7268Kv1ocicw==",
+ "license": "Apache-2.0",
+ "peerDependencies": {
+ "@solana/kit": "^2.1.0"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana-program/token": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/@solana-program/token/-/token-0.5.1.tgz",
+ "integrity": "sha512-bJvynW5q9SFuVOZ5vqGVkmaPGA0MCC+m9jgJj1nk5m20I389/ms69ASnhWGoOPNcie7S9OwBX0gTj2fiyWpfag==",
+ "license": "Apache-2.0",
+ "peerDependencies": {
+ "@solana/kit": "^2.1.0"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana-program/token-2022": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/@solana-program/token-2022/-/token-2022-0.4.2.tgz",
+ "integrity": "sha512-zIpR5t4s9qEU3hZKupzIBxJ6nUV5/UVyIT400tu9vT1HMs5JHxaTTsb5GUhYjiiTvNwU0MQavbwc4Dl29L0Xvw==",
+ "license": "Apache-2.0",
+ "peerDependencies": {
+ "@solana/kit": "^2.1.0",
+ "@solana/sysvars": "^2.1.0"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/accounts": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/accounts/-/accounts-2.3.0.tgz",
+ "integrity": "sha512-QgQTj404Z6PXNOyzaOpSzjgMOuGwG8vC66jSDB+3zHaRcEPRVRd2sVSrd1U6sHtnV3aiaS6YyDuPQMheg4K2jw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/rpc-spec": "2.3.0",
+ "@solana/rpc-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/addresses": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/addresses/-/addresses-2.3.0.tgz",
+ "integrity": "sha512-ypTNkY2ZaRFpHLnHAgaW8a83N0/WoqdFvCqf4CQmnMdFsZSdC7qOwcbd7YzdaQn9dy+P2hybewzB+KP7LutxGA==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/assertions": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/nominal-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/assertions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/assertions/-/assertions-2.3.0.tgz",
+ "integrity": "sha512-Ekoet3khNg3XFLN7MIz8W31wPQISpKUGDGTylLptI+JjCDWx3PIa88xjEMqFo02WJ8sBj2NLV64Xg1sBcsHjZQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/codecs": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/codecs/-/codecs-2.3.0.tgz",
+ "integrity": "sha512-JVqGPkzoeyU262hJGdH64kNLH0M+Oew2CIPOa/9tR3++q2pEd4jU2Rxdfye9sd0Ce3XJrR5AIa8ZfbyQXzjh+g==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-data-structures": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/options": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/codecs-core": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/codecs-core/-/codecs-core-2.3.0.tgz",
+ "integrity": "sha512-oG+VZzN6YhBHIoSKgS5ESM9VIGzhWjEHEGNPSibiDTxFhsFWxNaz8LbMDPjBUE69r9wmdGLkrQ+wVPbnJcZPvw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/codecs-data-structures": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/codecs-data-structures/-/codecs-data-structures-2.3.0.tgz",
+ "integrity": "sha512-qvU5LE5DqEdYMYgELRHv+HMOx73sSoV1ZZkwIrclwUmwTbTaH8QAJURBj0RhQ/zCne7VuLLOZFFGv6jGigWhSw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/codecs-numbers": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/codecs-numbers/-/codecs-numbers-2.3.0.tgz",
+ "integrity": "sha512-jFvvwKJKffvG7Iz9dmN51OGB7JBcy2CJ6Xf3NqD/VP90xak66m/Lg48T01u5IQ/hc15mChVHiBm+HHuOFDUrQg==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/codecs-strings": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/codecs-strings/-/codecs-strings-2.3.0.tgz",
+ "integrity": "sha512-y5pSBYwzVziXu521hh+VxqUtp0hYGTl1eWGoc1W+8mdvBdC1kTqm/X7aYQw33J42hw03JjryvYOvmGgk3Qz/Ug==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "fastestsmallesttextencoderdecoder": "^1.0.22",
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/errors": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/errors/-/errors-2.3.0.tgz",
+ "integrity": "sha512-66RI9MAbwYV0UtP7kGcTBVLxJgUxoZGm8Fbc0ah+lGiAw17Gugco6+9GrJCV83VyF2mDWyYnYM9qdI3yjgpnaQ==",
+ "license": "MIT",
+ "dependencies": {
+ "chalk": "^5.4.1",
+ "commander": "^14.0.0"
+ },
+ "bin": {
+ "errors": "bin/cli.mjs"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/fast-stable-stringify": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/fast-stable-stringify/-/fast-stable-stringify-2.3.0.tgz",
+ "integrity": "sha512-KfJPrMEieUg6D3hfQACoPy0ukrAV8Kio883llt/8chPEG3FVTX9z/Zuf4O01a15xZmBbmQ7toil2Dp0sxMJSxw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/functional": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/functional/-/functional-2.3.0.tgz",
+ "integrity": "sha512-AgsPh3W3tE+nK3eEw/W9qiSfTGwLYEvl0rWaxHht/lRcuDVwfKRzeSa5G79eioWFFqr+pTtoCr3D3OLkwKz02Q==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/instructions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/instructions/-/instructions-2.3.0.tgz",
+ "integrity": "sha512-PLMsmaIKu7hEAzyElrk2T7JJx4D+9eRwebhFZpy2PXziNSmFF929eRHKUsKqBFM3cYR1Yy3m6roBZfA+bGE/oQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/keys": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/keys/-/keys-2.3.0.tgz",
+ "integrity": "sha512-ZVVdga79pNH+2pVcm6fr2sWz9HTwfopDVhYb0Lh3dh+WBmJjwkabXEIHey2rUES7NjFa/G7sV8lrUn/v8LDCCQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/assertions": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/nominal-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/kit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/kit/-/kit-2.3.0.tgz",
+ "integrity": "sha512-sb6PgwoW2LjE5oTFu4lhlS/cGt/NB3YrShEyx7JgWFWysfgLdJnhwWThgwy/4HjNsmtMrQGWVls0yVBHcMvlMQ==",
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "@solana/accounts": "2.3.0",
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/instructions": "2.3.0",
+ "@solana/keys": "2.3.0",
+ "@solana/programs": "2.3.0",
+ "@solana/rpc": "2.3.0",
+ "@solana/rpc-parsed-types": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0",
+ "@solana/rpc-subscriptions": "2.3.0",
+ "@solana/rpc-types": "2.3.0",
+ "@solana/signers": "2.3.0",
+ "@solana/sysvars": "2.3.0",
+ "@solana/transaction-confirmation": "2.3.0",
+ "@solana/transaction-messages": "2.3.0",
+ "@solana/transactions": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/nominal-types": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/nominal-types/-/nominal-types-2.3.0.tgz",
+ "integrity": "sha512-uKlMnlP4PWW5UTXlhKM8lcgIaNj8dvd8xO4Y9l+FVvh9RvW2TO0GwUO6JCo7JBzCB0PSqRJdWWaQ8pu1Ti/OkA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/options": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/options/-/options-2.3.0.tgz",
+ "integrity": "sha512-PPnnZBRCWWoZQ11exPxf//DRzN2C6AoFsDI/u2AsQfYih434/7Kp4XLpfOMT/XESi+gdBMFNNfbES5zg3wAIkw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-data-structures": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/programs": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/programs/-/programs-2.3.0.tgz",
+ "integrity": "sha512-UXKujV71VCI5uPs+cFdwxybtHZAIZyQkqDiDnmK+DawtOO9mBn4Nimdb/6RjR2CXT78mzO9ZCZ3qfyX+ydcB7w==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/promises": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/promises/-/promises-2.3.0.tgz",
+ "integrity": "sha512-GjVgutZKXVuojd9rWy1PuLnfcRfqsaCm7InCiZc8bqmJpoghlyluweNc7ml9Y5yQn1P2IOyzh9+p/77vIyNybQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/rpc": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc/-/rpc-2.3.0.tgz",
+ "integrity": "sha512-ZWN76iNQAOCpYC7yKfb3UNLIMZf603JckLKOOLTHuy9MZnTN8XV6uwvDFhf42XvhglgUjGCEnbUqWtxQ9pa/pQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/fast-stable-stringify": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/rpc-api": "2.3.0",
+ "@solana/rpc-spec": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0",
+ "@solana/rpc-transformers": "2.3.0",
+ "@solana/rpc-transport-http": "2.3.0",
+ "@solana/rpc-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/rpc-api": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-api/-/rpc-api-2.3.0.tgz",
+ "integrity": "sha512-UUdiRfWoyYhJL9PPvFeJr4aJ554ob2jXcpn4vKmRVn9ire0sCbpQKYx6K8eEKHZWXKrDW8IDspgTl0gT/aJWVg==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/keys": "2.3.0",
+ "@solana/rpc-parsed-types": "2.3.0",
+ "@solana/rpc-spec": "2.3.0",
+ "@solana/rpc-transformers": "2.3.0",
+ "@solana/rpc-types": "2.3.0",
+ "@solana/transaction-messages": "2.3.0",
+ "@solana/transactions": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/rpc-parsed-types": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-parsed-types/-/rpc-parsed-types-2.3.0.tgz",
+ "integrity": "sha512-B5pHzyEIbBJf9KHej+zdr5ZNAdSvu7WLU2lOUPh81KHdHQs6dEb310LGxcpCc7HVE8IEdO20AbckewDiAN6OCg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/rpc-spec": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-spec/-/rpc-spec-2.3.0.tgz",
+ "integrity": "sha512-fA2LMX4BMixCrNB2n6T83AvjZ3oUQTu7qyPLyt8gHQaoEAXs8k6GZmu6iYcr+FboQCjUmRPgMaABbcr9j2J9Sw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/rpc-spec-types": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-spec-types/-/rpc-spec-types-2.3.0.tgz",
+ "integrity": "sha512-xQsb65lahjr8Wc9dMtP7xa0ZmDS8dOE2ncYjlvfyw/h4mpdXTUdrSMi6RtFwX33/rGuztQ7Hwaid5xLNSLvsFQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/rpc-subscriptions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-subscriptions/-/rpc-subscriptions-2.3.0.tgz",
+ "integrity": "sha512-Uyr10nZKGVzvCOqwCZgwYrzuoDyUdwtgQRefh13pXIrdo4wYjVmoLykH49Omt6abwStB0a4UL5gX9V4mFdDJZg==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/fast-stable-stringify": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/promises": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0",
+ "@solana/rpc-subscriptions-api": "2.3.0",
+ "@solana/rpc-subscriptions-channel-websocket": "2.3.0",
+ "@solana/rpc-subscriptions-spec": "2.3.0",
+ "@solana/rpc-transformers": "2.3.0",
+ "@solana/rpc-types": "2.3.0",
+ "@solana/subscribable": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/rpc-subscriptions-api": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-subscriptions-api/-/rpc-subscriptions-api-2.3.0.tgz",
+ "integrity": "sha512-9mCjVbum2Hg9KGX3LKsrI5Xs0KX390lS+Z8qB80bxhar6MJPugqIPH8uRgLhCW9GN3JprAfjRNl7our8CPvsPQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/keys": "2.3.0",
+ "@solana/rpc-subscriptions-spec": "2.3.0",
+ "@solana/rpc-transformers": "2.3.0",
+ "@solana/rpc-types": "2.3.0",
+ "@solana/transaction-messages": "2.3.0",
+ "@solana/transactions": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/rpc-subscriptions-channel-websocket": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-subscriptions-channel-websocket/-/rpc-subscriptions-channel-websocket-2.3.0.tgz",
+ "integrity": "sha512-2oL6ceFwejIgeWzbNiUHI2tZZnaOxNTSerszcin7wYQwijxtpVgUHiuItM/Y70DQmH9sKhmikQp+dqeGalaJxw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/rpc-subscriptions-spec": "2.3.0",
+ "@solana/subscribable": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3",
+ "ws": "^8.18.0"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/rpc-subscriptions-spec": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-subscriptions-spec/-/rpc-subscriptions-spec-2.3.0.tgz",
+ "integrity": "sha512-rdmVcl4PvNKQeA2l8DorIeALCgJEMSu7U8AXJS1PICeb2lQuMeaR+6cs/iowjvIB0lMVjYN2sFf6Q3dJPu6wWg==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/promises": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0",
+ "@solana/subscribable": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/rpc-transformers": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-transformers/-/rpc-transformers-2.3.0.tgz",
+ "integrity": "sha512-UuHYK3XEpo9nMXdjyGKkPCOr7WsZsxs7zLYDO1A5ELH3P3JoehvrDegYRAGzBS2VKsfApZ86ZpJToP0K3PhmMA==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/nominal-types": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0",
+ "@solana/rpc-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/rpc-transport-http": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-transport-http/-/rpc-transport-http-2.3.0.tgz",
+ "integrity": "sha512-HFKydmxGw8nAF5N+S0NLnPBDCe5oMDtI2RAmW8DMqP4U3Zxt2XWhvV1SNkAldT5tF0U1vP+is6fHxyhk4xqEvg==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/rpc-spec": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0",
+ "undici-types": "^7.11.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/rpc-types": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-types/-/rpc-types-2.3.0.tgz",
+ "integrity": "sha512-O09YX2hED2QUyGxrMOxQ9GzH1LlEwwZWu69QbL4oYmIf6P5dzEEHcqRY6L1LsDVqc/dzAdEs/E1FaPrcIaIIPw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/nominal-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/signers": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/signers/-/signers-2.3.0.tgz",
+ "integrity": "sha512-OSv6fGr/MFRx6J+ZChQMRqKNPGGmdjkqarKkRzkwmv7v8quWsIRnJT5EV8tBy3LI4DLO/A8vKiNSPzvm1TdaiQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/instructions": "2.3.0",
+ "@solana/keys": "2.3.0",
+ "@solana/nominal-types": "2.3.0",
+ "@solana/transaction-messages": "2.3.0",
+ "@solana/transactions": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/subscribable": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/subscribable/-/subscribable-2.3.0.tgz",
+ "integrity": "sha512-DkgohEDbMkdTWiKAoatY02Njr56WXx9e/dKKfmne8/Ad6/2llUIrax78nCdlvZW9quXMaXPTxZvdQqo9N669Og==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/sysvars": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/sysvars/-/sysvars-2.3.0.tgz",
+ "integrity": "sha512-LvjADZrpZ+CnhlHqfI5cmsRzX9Rpyb1Ox2dMHnbsRNzeKAMhu9w4ZBIaeTdO322zsTr509G1B+k2ABD3whvUBA==",
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "@solana/accounts": "2.3.0",
+ "@solana/codecs": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/rpc-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/transaction-confirmation": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/transaction-confirmation/-/transaction-confirmation-2.3.0.tgz",
+ "integrity": "sha512-UiEuiHCfAAZEKdfne/XljFNJbsKAe701UQHKXEInYzIgBjRbvaeYZlBmkkqtxwcasgBTOmEaEKT44J14N9VZDw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/keys": "2.3.0",
+ "@solana/promises": "2.3.0",
+ "@solana/rpc": "2.3.0",
+ "@solana/rpc-subscriptions": "2.3.0",
+ "@solana/rpc-types": "2.3.0",
+ "@solana/transaction-messages": "2.3.0",
+ "@solana/transactions": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/transaction-messages": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/transaction-messages/-/transaction-messages-2.3.0.tgz",
+ "integrity": "sha512-bgqvWuy3MqKS5JdNLH649q+ngiyOu5rGS3DizSnWwYUd76RxZl1kN6CoqHSrrMzFMvis6sck/yPGG3wqrMlAww==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-data-structures": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/instructions": "2.3.0",
+ "@solana/nominal-types": "2.3.0",
+ "@solana/rpc-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@solana/transactions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/transactions/-/transactions-2.3.0.tgz",
+ "integrity": "sha512-LnTvdi8QnrQtuEZor5Msje61sDpPstTVwKg4y81tNxDhiyomjuvnSNLAq6QsB9gIxUqbNzPZgOG9IU4I4/Uaug==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-data-structures": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/instructions": "2.3.0",
+ "@solana/keys": "2.3.0",
+ "@solana/nominal-types": "2.3.0",
+ "@solana/rpc-types": "2.3.0",
+ "@solana/transaction-messages": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@stellar/stellar-sdk": {
+ "version": "14.2.0",
+ "resolved": "https://registry.npmjs.org/@stellar/stellar-sdk/-/stellar-sdk-14.2.0.tgz",
+ "integrity": "sha512-7nh2ogzLRMhfkIC0fGjn1LHUzk3jqVw8tjAuTt5ADWfL9CSGBL18ILucE9igz2L/RU2AZgeAvhujAnW91Ut/oQ==",
+ "hasInstallScript": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@stellar/stellar-base": "^14.0.1",
+ "axios": "^1.12.2",
+ "bignumber.js": "^9.3.1",
+ "eventsource": "^2.0.2",
+ "feaxios": "^0.0.23",
+ "randombytes": "^2.1.0",
+ "toml": "^3.0.0",
+ "urijs": "^1.19.1"
+ },
+ "engines": {
+ "node": ">=20.0.0"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@trezor/blockchain-link": {
+ "version": "2.6.1",
+ "resolved": "https://registry.npmjs.org/@trezor/blockchain-link/-/blockchain-link-2.6.1.tgz",
+ "integrity": "sha512-SPwxkihOMI0o79BOy0RkfgVL2meuJhIe1yWHCeR8uoqf5KGblUyeXxvNCy6w8ckJ9LRpM1+bZhsUODuNs3083Q==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@solana-program/compute-budget": "^0.8.0",
+ "@solana-program/stake": "^0.2.1",
+ "@solana-program/token": "^0.5.1",
+ "@solana-program/token-2022": "^0.4.2",
+ "@solana/kit": "^2.3.0",
+ "@solana/rpc-types": "^2.3.0",
+ "@stellar/stellar-sdk": "14.2.0",
+ "@trezor/blockchain-link-types": "1.5.0",
+ "@trezor/blockchain-link-utils": "1.5.1",
+ "@trezor/env-utils": "1.5.0",
+ "@trezor/utils": "9.5.0",
+ "@trezor/utxo-lib": "2.5.0",
+ "@trezor/websocket-client": "1.3.0",
+ "@types/web": "^0.0.197",
+ "crypto-browserify": "3.12.0",
+ "socks-proxy-agent": "8.0.5",
+ "stream-browserify": "^3.0.0",
+ "xrpl": "4.4.3"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@trezor/blockchain-link/node_modules/@trezor/blockchain-link-types": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/@trezor/blockchain-link-types/-/blockchain-link-types-1.5.0.tgz",
+ "integrity": "sha512-wD6FKKxNr89MTWYL+NikRkBcWXhiWNFR0AuDHW6GHmlCEHhKu/hAvQtcER8X5jt/Wd0hSKNZqtHBXJ1ZkpJ6rg==",
+ "license": "See LICENSE.md in repo root",
+ "dependencies": {
+ "@trezor/utils": "9.5.0",
+ "@trezor/utxo-lib": "2.5.0"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@trezor/blockchain-link/node_modules/@trezor/blockchain-link-utils": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/@trezor/blockchain-link-utils/-/blockchain-link-utils-1.5.1.tgz",
+ "integrity": "sha512-2tDGLEj5jzydjsJQONGTWVmCDDy6FTZ4ytr1/2gE6anyYEJU8MbaR+liTt3UvcP5jwZTNutwYLvZixRfrb8JpA==",
+ "license": "See LICENSE.md in repo root",
+ "dependencies": {
+ "@mobily/ts-belt": "^3.13.1",
+ "@stellar/stellar-sdk": "14.2.0",
+ "@trezor/env-utils": "1.5.0",
+ "@trezor/protobuf": "1.5.1",
+ "@trezor/utils": "9.5.0",
+ "xrpl": "4.4.3"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@trezor/blockchain-link/node_modules/@trezor/protobuf": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/@trezor/protobuf/-/protobuf-1.5.1.tgz",
+ "integrity": "sha512-nAkaCCAqLpErBd+IuKeG5MpbyLR/2RMgCw18TWc80m1Ws/XgQirhHY9Jbk6gLImTXb9GTrxP0+MDSahzd94rSA==",
+ "license": "See LICENSE.md in repo root",
+ "dependencies": {
+ "@trezor/schema-utils": "1.4.0",
+ "long": "5.2.5",
+ "protobufjs": "7.4.0"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@trezor/connect": {
+ "version": "9.7.2",
+ "resolved": "https://registry.npmjs.org/@trezor/connect/-/connect-9.7.2.tgz",
+ "integrity": "sha512-Sn6F4mNH+yi2vAHy29kwhs50bRLn92drg3znm3pkY+8yEBxI4MmuP8sKYjdgUEJnQflWh80KlcvEDeVa4olVRA==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@ethereumjs/common": "^10.1.0",
+ "@ethereumjs/tx": "^10.1.0",
+ "@fivebinaries/coin-selection": "3.0.0",
+ "@mobily/ts-belt": "^3.13.1",
+ "@noble/hashes": "^1.6.1",
+ "@scure/bip39": "^1.5.1",
+ "@solana-program/compute-budget": "^0.8.0",
+ "@solana-program/system": "^0.7.0",
+ "@solana-program/token": "^0.5.1",
+ "@solana-program/token-2022": "^0.4.2",
+ "@solana/kit": "^2.3.0",
+ "@trezor/blockchain-link": "2.6.1",
+ "@trezor/blockchain-link-types": "1.5.1",
+ "@trezor/blockchain-link-utils": "1.5.2",
+ "@trezor/connect-analytics": "1.4.0",
+ "@trezor/connect-common": "0.5.1",
+ "@trezor/crypto-utils": "1.2.0",
+ "@trezor/device-authenticity": "1.1.2",
+ "@trezor/device-utils": "1.2.0",
+ "@trezor/env-utils": "^1.5.0",
+ "@trezor/protobuf": "1.5.2",
+ "@trezor/protocol": "1.3.0",
+ "@trezor/schema-utils": "1.4.0",
+ "@trezor/transport": "1.6.2",
+ "@trezor/type-utils": "1.2.0",
+ "@trezor/utils": "9.5.0",
+ "@trezor/utxo-lib": "2.5.0",
+ "blakejs": "^1.2.1",
+ "bs58": "^6.0.0",
+ "bs58check": "^4.0.0",
+ "cbor": "^10.0.10",
+ "cross-fetch": "^4.0.0",
+ "jws": "^4.0.0"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@trezor/protobuf": {
+ "version": "1.5.2",
+ "resolved": "https://registry.npmjs.org/@trezor/protobuf/-/protobuf-1.5.2.tgz",
+ "integrity": "sha512-zViaL1jKue8DUTVEDg0C/lMipqNMd/Z3kr29/+MeZOoupjaXIQ2Lqp3WAMe8hvNTKKX8aNQH9JrbapJ6w9FMXw==",
+ "license": "See LICENSE.md in repo root",
+ "dependencies": {
+ "@trezor/schema-utils": "1.4.0",
+ "long": "5.2.5",
+ "protobufjs": "7.4.0"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@trezor/protocol": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/@trezor/protocol/-/protocol-1.3.0.tgz",
+ "integrity": "sha512-rmrxbDrdgxTouBPbZcSeqU7ba/e5WVT1dxvxxEntHqRdTiDl7d3VK+BErCrlyol8EH5YCqEF3/rXt0crSOfoFw==",
+ "license": "See LICENSE.md in repo root",
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/@trezor/transport": {
+ "version": "1.6.2",
+ "resolved": "https://registry.npmjs.org/@trezor/transport/-/transport-1.6.2.tgz",
+ "integrity": "sha512-w0HlD1fU+qTGO3tefBGHF/YS/ts/TWFja9FGIJ4+7+Z9NphvIG06HGvy2HzcD9AhJy9pvDeIsyoM2TTZTiyjkQ==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@trezor/protobuf": "1.5.2",
+ "@trezor/protocol": "1.3.0",
+ "@trezor/type-utils": "1.2.0",
+ "@trezor/utils": "9.5.0",
+ "cross-fetch": "^4.0.0",
+ "usb": "^2.15.0"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/connect-web/node_modules/protobufjs": {
+ "version": "7.4.0",
+ "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.4.0.tgz",
+ "integrity": "sha512-mRUWCc3KUU4w1jU8sGxICXH/gNS94DvI1gxqDvBzhj1JpcsimQkYiOJfwsPUykUI5ZaspFbSgmBLER8IrQ3tqw==",
+ "hasInstallScript": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "@protobufjs/aspromise": "^1.1.2",
+ "@protobufjs/base64": "^1.1.2",
+ "@protobufjs/codegen": "^2.0.4",
+ "@protobufjs/eventemitter": "^1.1.0",
+ "@protobufjs/fetch": "^1.1.0",
+ "@protobufjs/float": "^1.0.2",
+ "@protobufjs/inquire": "^1.1.0",
+ "@protobufjs/path": "^1.1.2",
+ "@protobufjs/pool": "^1.1.0",
+ "@protobufjs/utf8": "^1.1.0",
+ "@types/node": ">=13.7.0",
+ "long": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana-program/compute-budget": {
+ "version": "0.8.0",
+ "resolved": "https://registry.npmjs.org/@solana-program/compute-budget/-/compute-budget-0.8.0.tgz",
+ "integrity": "sha512-qPKxdxaEsFxebZ4K5RPuy7VQIm/tfJLa1+Nlt3KNA8EYQkz9Xm8htdoEaXVrer9kpgzzp9R3I3Bh6omwCM06tQ==",
+ "license": "Apache-2.0",
+ "peerDependencies": {
+ "@solana/kit": "^2.1.0"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana-program/system": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/@solana-program/system/-/system-0.7.0.tgz",
+ "integrity": "sha512-FKTBsKHpvHHNc1ATRm7SlC5nF/VdJtOSjldhcyfMN9R7xo712Mo2jHIzvBgn8zQO5Kg0DcWuKB7268Kv1ocicw==",
+ "license": "Apache-2.0",
+ "peerDependencies": {
+ "@solana/kit": "^2.1.0"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana-program/token": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/@solana-program/token/-/token-0.5.1.tgz",
+ "integrity": "sha512-bJvynW5q9SFuVOZ5vqGVkmaPGA0MCC+m9jgJj1nk5m20I389/ms69ASnhWGoOPNcie7S9OwBX0gTj2fiyWpfag==",
+ "license": "Apache-2.0",
+ "peerDependencies": {
+ "@solana/kit": "^2.1.0"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana-program/token-2022": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/@solana-program/token-2022/-/token-2022-0.4.2.tgz",
+ "integrity": "sha512-zIpR5t4s9qEU3hZKupzIBxJ6nUV5/UVyIT400tu9vT1HMs5JHxaTTsb5GUhYjiiTvNwU0MQavbwc4Dl29L0Xvw==",
+ "license": "Apache-2.0",
+ "peerDependencies": {
+ "@solana/kit": "^2.1.0",
+ "@solana/sysvars": "^2.1.0"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/accounts": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/accounts/-/accounts-2.3.0.tgz",
+ "integrity": "sha512-QgQTj404Z6PXNOyzaOpSzjgMOuGwG8vC66jSDB+3zHaRcEPRVRd2sVSrd1U6sHtnV3aiaS6YyDuPQMheg4K2jw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/rpc-spec": "2.3.0",
+ "@solana/rpc-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/addresses": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/addresses/-/addresses-2.3.0.tgz",
+ "integrity": "sha512-ypTNkY2ZaRFpHLnHAgaW8a83N0/WoqdFvCqf4CQmnMdFsZSdC7qOwcbd7YzdaQn9dy+P2hybewzB+KP7LutxGA==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/assertions": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/nominal-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/assertions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/assertions/-/assertions-2.3.0.tgz",
+ "integrity": "sha512-Ekoet3khNg3XFLN7MIz8W31wPQISpKUGDGTylLptI+JjCDWx3PIa88xjEMqFo02WJ8sBj2NLV64Xg1sBcsHjZQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/codecs": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/codecs/-/codecs-2.3.0.tgz",
+ "integrity": "sha512-JVqGPkzoeyU262hJGdH64kNLH0M+Oew2CIPOa/9tR3++q2pEd4jU2Rxdfye9sd0Ce3XJrR5AIa8ZfbyQXzjh+g==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-data-structures": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/options": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/codecs-core": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/codecs-core/-/codecs-core-2.3.0.tgz",
+ "integrity": "sha512-oG+VZzN6YhBHIoSKgS5ESM9VIGzhWjEHEGNPSibiDTxFhsFWxNaz8LbMDPjBUE69r9wmdGLkrQ+wVPbnJcZPvw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/codecs-data-structures": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/codecs-data-structures/-/codecs-data-structures-2.3.0.tgz",
+ "integrity": "sha512-qvU5LE5DqEdYMYgELRHv+HMOx73sSoV1ZZkwIrclwUmwTbTaH8QAJURBj0RhQ/zCne7VuLLOZFFGv6jGigWhSw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/codecs-numbers": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/codecs-numbers/-/codecs-numbers-2.3.0.tgz",
+ "integrity": "sha512-jFvvwKJKffvG7Iz9dmN51OGB7JBcy2CJ6Xf3NqD/VP90xak66m/Lg48T01u5IQ/hc15mChVHiBm+HHuOFDUrQg==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/codecs-strings": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/codecs-strings/-/codecs-strings-2.3.0.tgz",
+ "integrity": "sha512-y5pSBYwzVziXu521hh+VxqUtp0hYGTl1eWGoc1W+8mdvBdC1kTqm/X7aYQw33J42hw03JjryvYOvmGgk3Qz/Ug==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "fastestsmallesttextencoderdecoder": "^1.0.22",
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/errors": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/errors/-/errors-2.3.0.tgz",
+ "integrity": "sha512-66RI9MAbwYV0UtP7kGcTBVLxJgUxoZGm8Fbc0ah+lGiAw17Gugco6+9GrJCV83VyF2mDWyYnYM9qdI3yjgpnaQ==",
+ "license": "MIT",
+ "dependencies": {
+ "chalk": "^5.4.1",
+ "commander": "^14.0.0"
+ },
+ "bin": {
+ "errors": "bin/cli.mjs"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/fast-stable-stringify": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/fast-stable-stringify/-/fast-stable-stringify-2.3.0.tgz",
+ "integrity": "sha512-KfJPrMEieUg6D3hfQACoPy0ukrAV8Kio883llt/8chPEG3FVTX9z/Zuf4O01a15xZmBbmQ7toil2Dp0sxMJSxw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/functional": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/functional/-/functional-2.3.0.tgz",
+ "integrity": "sha512-AgsPh3W3tE+nK3eEw/W9qiSfTGwLYEvl0rWaxHht/lRcuDVwfKRzeSa5G79eioWFFqr+pTtoCr3D3OLkwKz02Q==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/instructions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/instructions/-/instructions-2.3.0.tgz",
+ "integrity": "sha512-PLMsmaIKu7hEAzyElrk2T7JJx4D+9eRwebhFZpy2PXziNSmFF929eRHKUsKqBFM3cYR1Yy3m6roBZfA+bGE/oQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/keys": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/keys/-/keys-2.3.0.tgz",
+ "integrity": "sha512-ZVVdga79pNH+2pVcm6fr2sWz9HTwfopDVhYb0Lh3dh+WBmJjwkabXEIHey2rUES7NjFa/G7sV8lrUn/v8LDCCQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/assertions": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/nominal-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/kit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/kit/-/kit-2.3.0.tgz",
+ "integrity": "sha512-sb6PgwoW2LjE5oTFu4lhlS/cGt/NB3YrShEyx7JgWFWysfgLdJnhwWThgwy/4HjNsmtMrQGWVls0yVBHcMvlMQ==",
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "@solana/accounts": "2.3.0",
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/instructions": "2.3.0",
+ "@solana/keys": "2.3.0",
+ "@solana/programs": "2.3.0",
+ "@solana/rpc": "2.3.0",
+ "@solana/rpc-parsed-types": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0",
+ "@solana/rpc-subscriptions": "2.3.0",
+ "@solana/rpc-types": "2.3.0",
+ "@solana/signers": "2.3.0",
+ "@solana/sysvars": "2.3.0",
+ "@solana/transaction-confirmation": "2.3.0",
+ "@solana/transaction-messages": "2.3.0",
+ "@solana/transactions": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/nominal-types": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/nominal-types/-/nominal-types-2.3.0.tgz",
+ "integrity": "sha512-uKlMnlP4PWW5UTXlhKM8lcgIaNj8dvd8xO4Y9l+FVvh9RvW2TO0GwUO6JCo7JBzCB0PSqRJdWWaQ8pu1Ti/OkA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/options": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/options/-/options-2.3.0.tgz",
+ "integrity": "sha512-PPnnZBRCWWoZQ11exPxf//DRzN2C6AoFsDI/u2AsQfYih434/7Kp4XLpfOMT/XESi+gdBMFNNfbES5zg3wAIkw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-data-structures": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/programs": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/programs/-/programs-2.3.0.tgz",
+ "integrity": "sha512-UXKujV71VCI5uPs+cFdwxybtHZAIZyQkqDiDnmK+DawtOO9mBn4Nimdb/6RjR2CXT78mzO9ZCZ3qfyX+ydcB7w==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/promises": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/promises/-/promises-2.3.0.tgz",
+ "integrity": "sha512-GjVgutZKXVuojd9rWy1PuLnfcRfqsaCm7InCiZc8bqmJpoghlyluweNc7ml9Y5yQn1P2IOyzh9+p/77vIyNybQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/rpc": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc/-/rpc-2.3.0.tgz",
+ "integrity": "sha512-ZWN76iNQAOCpYC7yKfb3UNLIMZf603JckLKOOLTHuy9MZnTN8XV6uwvDFhf42XvhglgUjGCEnbUqWtxQ9pa/pQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/fast-stable-stringify": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/rpc-api": "2.3.0",
+ "@solana/rpc-spec": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0",
+ "@solana/rpc-transformers": "2.3.0",
+ "@solana/rpc-transport-http": "2.3.0",
+ "@solana/rpc-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/rpc-api": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-api/-/rpc-api-2.3.0.tgz",
+ "integrity": "sha512-UUdiRfWoyYhJL9PPvFeJr4aJ554ob2jXcpn4vKmRVn9ire0sCbpQKYx6K8eEKHZWXKrDW8IDspgTl0gT/aJWVg==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/keys": "2.3.0",
+ "@solana/rpc-parsed-types": "2.3.0",
+ "@solana/rpc-spec": "2.3.0",
+ "@solana/rpc-transformers": "2.3.0",
+ "@solana/rpc-types": "2.3.0",
+ "@solana/transaction-messages": "2.3.0",
+ "@solana/transactions": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/rpc-parsed-types": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-parsed-types/-/rpc-parsed-types-2.3.0.tgz",
+ "integrity": "sha512-B5pHzyEIbBJf9KHej+zdr5ZNAdSvu7WLU2lOUPh81KHdHQs6dEb310LGxcpCc7HVE8IEdO20AbckewDiAN6OCg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/rpc-spec": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-spec/-/rpc-spec-2.3.0.tgz",
+ "integrity": "sha512-fA2LMX4BMixCrNB2n6T83AvjZ3oUQTu7qyPLyt8gHQaoEAXs8k6GZmu6iYcr+FboQCjUmRPgMaABbcr9j2J9Sw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/rpc-spec-types": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-spec-types/-/rpc-spec-types-2.3.0.tgz",
+ "integrity": "sha512-xQsb65lahjr8Wc9dMtP7xa0ZmDS8dOE2ncYjlvfyw/h4mpdXTUdrSMi6RtFwX33/rGuztQ7Hwaid5xLNSLvsFQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/rpc-subscriptions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-subscriptions/-/rpc-subscriptions-2.3.0.tgz",
+ "integrity": "sha512-Uyr10nZKGVzvCOqwCZgwYrzuoDyUdwtgQRefh13pXIrdo4wYjVmoLykH49Omt6abwStB0a4UL5gX9V4mFdDJZg==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/fast-stable-stringify": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/promises": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0",
+ "@solana/rpc-subscriptions-api": "2.3.0",
+ "@solana/rpc-subscriptions-channel-websocket": "2.3.0",
+ "@solana/rpc-subscriptions-spec": "2.3.0",
+ "@solana/rpc-transformers": "2.3.0",
+ "@solana/rpc-types": "2.3.0",
+ "@solana/subscribable": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/rpc-subscriptions-api": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-subscriptions-api/-/rpc-subscriptions-api-2.3.0.tgz",
+ "integrity": "sha512-9mCjVbum2Hg9KGX3LKsrI5Xs0KX390lS+Z8qB80bxhar6MJPugqIPH8uRgLhCW9GN3JprAfjRNl7our8CPvsPQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/keys": "2.3.0",
+ "@solana/rpc-subscriptions-spec": "2.3.0",
+ "@solana/rpc-transformers": "2.3.0",
+ "@solana/rpc-types": "2.3.0",
+ "@solana/transaction-messages": "2.3.0",
+ "@solana/transactions": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/rpc-subscriptions-channel-websocket": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-subscriptions-channel-websocket/-/rpc-subscriptions-channel-websocket-2.3.0.tgz",
+ "integrity": "sha512-2oL6ceFwejIgeWzbNiUHI2tZZnaOxNTSerszcin7wYQwijxtpVgUHiuItM/Y70DQmH9sKhmikQp+dqeGalaJxw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/rpc-subscriptions-spec": "2.3.0",
+ "@solana/subscribable": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3",
+ "ws": "^8.18.0"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/rpc-subscriptions-spec": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-subscriptions-spec/-/rpc-subscriptions-spec-2.3.0.tgz",
+ "integrity": "sha512-rdmVcl4PvNKQeA2l8DorIeALCgJEMSu7U8AXJS1PICeb2lQuMeaR+6cs/iowjvIB0lMVjYN2sFf6Q3dJPu6wWg==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/promises": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0",
+ "@solana/subscribable": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/rpc-transformers": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-transformers/-/rpc-transformers-2.3.0.tgz",
+ "integrity": "sha512-UuHYK3XEpo9nMXdjyGKkPCOr7WsZsxs7zLYDO1A5ELH3P3JoehvrDegYRAGzBS2VKsfApZ86ZpJToP0K3PhmMA==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/nominal-types": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0",
+ "@solana/rpc-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/rpc-transport-http": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-transport-http/-/rpc-transport-http-2.3.0.tgz",
+ "integrity": "sha512-HFKydmxGw8nAF5N+S0NLnPBDCe5oMDtI2RAmW8DMqP4U3Zxt2XWhvV1SNkAldT5tF0U1vP+is6fHxyhk4xqEvg==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0",
+ "@solana/rpc-spec": "2.3.0",
+ "@solana/rpc-spec-types": "2.3.0",
+ "undici-types": "^7.11.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/rpc-types": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/rpc-types/-/rpc-types-2.3.0.tgz",
+ "integrity": "sha512-O09YX2hED2QUyGxrMOxQ9GzH1LlEwwZWu69QbL4oYmIf6P5dzEEHcqRY6L1LsDVqc/dzAdEs/E1FaPrcIaIIPw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/nominal-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/signers": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/signers/-/signers-2.3.0.tgz",
+ "integrity": "sha512-OSv6fGr/MFRx6J+ZChQMRqKNPGGmdjkqarKkRzkwmv7v8quWsIRnJT5EV8tBy3LI4DLO/A8vKiNSPzvm1TdaiQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/instructions": "2.3.0",
+ "@solana/keys": "2.3.0",
+ "@solana/nominal-types": "2.3.0",
+ "@solana/transaction-messages": "2.3.0",
+ "@solana/transactions": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/subscribable": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/subscribable/-/subscribable-2.3.0.tgz",
+ "integrity": "sha512-DkgohEDbMkdTWiKAoatY02Njr56WXx9e/dKKfmne8/Ad6/2llUIrax78nCdlvZW9quXMaXPTxZvdQqo9N669Og==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/errors": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/sysvars": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/sysvars/-/sysvars-2.3.0.tgz",
+ "integrity": "sha512-LvjADZrpZ+CnhlHqfI5cmsRzX9Rpyb1Ox2dMHnbsRNzeKAMhu9w4ZBIaeTdO322zsTr509G1B+k2ABD3whvUBA==",
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "@solana/accounts": "2.3.0",
+ "@solana/codecs": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/rpc-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/transaction-confirmation": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/transaction-confirmation/-/transaction-confirmation-2.3.0.tgz",
+ "integrity": "sha512-UiEuiHCfAAZEKdfne/XljFNJbsKAe701UQHKXEInYzIgBjRbvaeYZlBmkkqtxwcasgBTOmEaEKT44J14N9VZDw==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/keys": "2.3.0",
+ "@solana/promises": "2.3.0",
+ "@solana/rpc": "2.3.0",
+ "@solana/rpc-subscriptions": "2.3.0",
+ "@solana/rpc-types": "2.3.0",
+ "@solana/transaction-messages": "2.3.0",
+ "@solana/transactions": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/transaction-messages": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/transaction-messages/-/transaction-messages-2.3.0.tgz",
+ "integrity": "sha512-bgqvWuy3MqKS5JdNLH649q+ngiyOu5rGS3DizSnWwYUd76RxZl1kN6CoqHSrrMzFMvis6sck/yPGG3wqrMlAww==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-data-structures": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/instructions": "2.3.0",
+ "@solana/nominal-types": "2.3.0",
+ "@solana/rpc-types": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/connect/node_modules/@solana/transactions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@solana/transactions/-/transactions-2.3.0.tgz",
+ "integrity": "sha512-LnTvdi8QnrQtuEZor5Msje61sDpPstTVwKg4y81tNxDhiyomjuvnSNLAq6QsB9gIxUqbNzPZgOG9IU4I4/Uaug==",
+ "license": "MIT",
+ "dependencies": {
+ "@solana/addresses": "2.3.0",
+ "@solana/codecs-core": "2.3.0",
+ "@solana/codecs-data-structures": "2.3.0",
+ "@solana/codecs-numbers": "2.3.0",
+ "@solana/codecs-strings": "2.3.0",
+ "@solana/errors": "2.3.0",
+ "@solana/functional": "2.3.0",
+ "@solana/instructions": "2.3.0",
+ "@solana/keys": "2.3.0",
+ "@solana/nominal-types": "2.3.0",
+ "@solana/rpc-types": "2.3.0",
+ "@solana/transaction-messages": "2.3.0"
+ },
+ "engines": {
+ "node": ">=20.18.0"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.3.3"
+ }
+ },
+ "node_modules/@trezor/crypto-utils": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@trezor/crypto-utils/-/crypto-utils-1.2.0.tgz",
+ "integrity": "sha512-9i1NrfW1IE6JO910ut7xrx4u5LxE++GETbpJhWLj4P5xpuGDDSDLEn/MXaYisls2DpE897aOrGPaa1qyt8V6tw==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/device-authenticity": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@trezor/device-authenticity/-/device-authenticity-1.1.2.tgz",
+ "integrity": "sha512-313uSXYR4XKDv3CjtCpgHA+yEe9xxqN7EFl/D68FEn70SPsuWI0+2zUvjPPh6TIOh/EcLv7hCO/QTHUAGd7ZWQ==",
+ "license": "See LICENSE.md in repo root",
+ "dependencies": {
+ "@noble/curves": "^2.0.1",
+ "@trezor/crypto-utils": "1.2.0",
+ "@trezor/protobuf": "1.5.2",
+ "@trezor/schema-utils": "1.4.0",
+ "@trezor/utils": "9.5.0"
+ }
+ },
+ "node_modules/@trezor/device-authenticity/node_modules/@noble/curves": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-2.2.0.tgz",
+ "integrity": "sha512-T/BoHgFXirb0ENSPBquzX0rcjXeM6Lo892a2jlYJkqk83LqZx0l1Of7DzlKJ6jkpvMrkHSnAcgb5JegL8SeIkQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@noble/hashes": "2.2.0"
+ },
+ "engines": {
+ "node": ">= 20.19.0"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@trezor/device-authenticity/node_modules/@noble/hashes": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-2.2.0.tgz",
+ "integrity": "sha512-IYqDGiTXab6FniAgnSdZwgWbomxpy9FtYvLKs7wCUs2a8RkITG+DFGO1DM9cr+E3/RgADRpFjrKVaJ1z6sjtEg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 20.19.0"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@trezor/device-authenticity/node_modules/@trezor/protobuf": {
+ "version": "1.5.2",
+ "resolved": "https://registry.npmjs.org/@trezor/protobuf/-/protobuf-1.5.2.tgz",
+ "integrity": "sha512-zViaL1jKue8DUTVEDg0C/lMipqNMd/Z3kr29/+MeZOoupjaXIQ2Lqp3WAMe8hvNTKKX8aNQH9JrbapJ6w9FMXw==",
+ "license": "See LICENSE.md in repo root",
+ "dependencies": {
+ "@trezor/schema-utils": "1.4.0",
+ "long": "5.2.5",
+ "protobufjs": "7.4.0"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/device-authenticity/node_modules/protobufjs": {
+ "version": "7.4.0",
+ "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.4.0.tgz",
+ "integrity": "sha512-mRUWCc3KUU4w1jU8sGxICXH/gNS94DvI1gxqDvBzhj1JpcsimQkYiOJfwsPUykUI5ZaspFbSgmBLER8IrQ3tqw==",
+ "hasInstallScript": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "@protobufjs/aspromise": "^1.1.2",
+ "@protobufjs/base64": "^1.1.2",
+ "@protobufjs/codegen": "^2.0.4",
+ "@protobufjs/eventemitter": "^1.1.0",
+ "@protobufjs/fetch": "^1.1.0",
+ "@protobufjs/float": "^1.0.2",
+ "@protobufjs/inquire": "^1.1.0",
+ "@protobufjs/path": "^1.1.2",
+ "@protobufjs/pool": "^1.1.0",
+ "@protobufjs/utf8": "^1.1.0",
+ "@types/node": ">=13.7.0",
+ "long": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ }
+ },
+ "node_modules/@trezor/device-utils": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@trezor/device-utils/-/device-utils-1.2.0.tgz",
+ "integrity": "sha512-Aqp7pIooFTx21zRUtTI6i1AS4d9Lrx7cclvksh2nJQF9WJvbzuCXshEGkLoOsHwhQrCl3IXfbGuMdA12yDenPA==",
+ "license": "See LICENSE.md in repo root"
+ },
+ "node_modules/@trezor/env-utils": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/@trezor/env-utils/-/env-utils-1.5.0.tgz",
+ "integrity": "sha512-u1TN7dMQ5Qhpbae08Z4JJmI9fQrbbJ4yj8eIAsuzMQn6vb+Sg9vbntl+IDsZ1G9WeI73uHTLu1wWMmAgiujH8w==",
+ "license": "See LICENSE.md in repo root",
+ "dependencies": {
+ "ua-parser-js": "^2.0.4"
+ },
+ "peerDependencies": {
+ "expo-constants": "*",
+ "expo-localization": "*",
+ "react-native": "*",
+ "tslib": "^2.6.2"
+ },
+ "peerDependenciesMeta": {
+ "expo-constants": {
+ "optional": true
+ },
+ "expo-localization": {
+ "optional": true
+ },
+ "react-native": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@trezor/protobuf": {
+ "version": "1.5.3",
+ "resolved": "https://registry.npmjs.org/@trezor/protobuf/-/protobuf-1.5.3.tgz",
+ "integrity": "sha512-ZYQtapkT2NaiVrAgb91Zprnk3uhl2Wca0bsnJcWgE7vwzqKegjrSorRnkZLqLTKTbCaT6sgkCYtM2hPl4Hqw5Q==",
+ "license": "See LICENSE.md in repo root",
+ "dependencies": {
+ "@trezor/schema-utils": "1.4.0",
+ "long": "5.2.5",
+ "protobufjs": "7.5.5"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/protocol": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/@trezor/protocol/-/protocol-1.3.1.tgz",
+ "integrity": "sha512-uNJ83n38+BM+AJKsWza1ocvQ206d6NXJQ8/g+DelPLTj5c37Rj6hFiY5Nb5zgM7DBnq6T8Aa2K8t4TVCzHT1qg==",
+ "license": "See LICENSE.md in repo root",
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/schema-utils": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/@trezor/schema-utils/-/schema-utils-1.4.0.tgz",
+ "integrity": "sha512-K7upSeh7VDrORaIC4KAxYVW93XNlohmUnH5if/5GKYmTdQSRp1nBkO6Jm+Z4hzIthdnz/1aLgnbeN3bDxWLRxA==",
+ "license": "See LICENSE.md in repo root",
+ "dependencies": {
+ "@sinclair/typebox": "^0.33.7",
+ "ts-mixer": "^6.0.3"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/transport": {
+ "version": "1.6.3",
+ "resolved": "https://registry.npmjs.org/@trezor/transport/-/transport-1.6.3.tgz",
+ "integrity": "sha512-GEi9KfiJsBgT/MCGNDIn9RDeXceLaAPjJT/GCayirXaCr3KnlpZCs6LGYkrjqapxiBm73nxM+BctKBKhpUl2cQ==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@trezor/protobuf": "1.5.3",
+ "@trezor/protocol": "1.3.1",
+ "@trezor/type-utils": "1.2.0",
+ "@trezor/utils": "9.5.0",
+ "cross-fetch": "^4.0.0",
+ "usb": "^2.15.0"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/type-utils": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@trezor/type-utils/-/type-utils-1.2.0.tgz",
+ "integrity": "sha512-+E2QntxkyQuYfQQyl8RvT01tq2i5Dp/LFUOXuizF+KVOqsZBjBY43j5hewcCO3+MokD7deDiPyekbUEN5/iVlw==",
+ "license": "See LICENSE.md in repo root"
+ },
+ "node_modules/@trezor/utils": {
+ "version": "9.5.0",
+ "resolved": "https://registry.npmjs.org/@trezor/utils/-/utils-9.5.0.tgz",
+ "integrity": "sha512-kdyMyDbxzvOZmwBNvTjAK+C/kzyOz8T4oUbFvq+KaXn5mBFf1uf8rq5X2HkxgdYRPArtHS3PxLKsfkNCdhCYtQ==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "bignumber.js": "^9.3.1"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/utxo-lib": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/@trezor/utxo-lib/-/utxo-lib-2.5.0.tgz",
+ "integrity": "sha512-Fa2cZh0037oX6AHNLfpFIj65UR/OoX0ZJTocFuQASe77/1PjZHysf6BvvGfmzuFToKfrAQ+DM/1Sx+P/vnyNmA==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@trezor/utils": "9.5.0",
+ "bech32": "^2.0.0",
+ "bip66": "^2.0.0",
+ "bitcoin-ops": "^1.4.1",
+ "blake-hash": "^2.0.0",
+ "blakejs": "^1.2.1",
+ "bn.js": "^5.2.2",
+ "bs58": "^6.0.0",
+ "bs58check": "^4.0.0",
+ "cashaddrjs": "0.4.4",
+ "create-hmac": "^1.1.7",
+ "int64-buffer": "^1.1.0",
+ "pushdata-bitcoin": "^1.0.1",
+ "tiny-secp256k1": "^1.1.7",
+ "typeforce": "^1.18.0",
+ "varuint-bitcoin": "2.0.0",
+ "wif": "^5.0.0"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@trezor/websocket-client": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/@trezor/websocket-client/-/websocket-client-1.3.0.tgz",
+ "integrity": "sha512-9KQSaVc3NtmM6rFFj1e+9bM0C5mVKVidbnxlfzuBJu7G2YMRdIdLPcAXhvmRZjs40uzDuBeApK+p547kODz2ug==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@trezor/utils": "9.5.0",
+ "ws": "^8.18.0"
+ },
+ "peerDependencies": {
+ "tslib": "^2.6.2"
+ }
+ },
+ "node_modules/@tybys/wasm-util": {
+ "version": "0.10.2",
+ "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.2.tgz",
+ "integrity": "sha512-RoBvJ2X0wuKlWFIjrwffGw1IqZHKQqzIchKaadZZfnNpsAYp2mM0h36JtPCjNDAHGgYez/15uMBpfGwchhiMgg==",
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "tslib": "^2.4.0"
+ }
+ },
+ "node_modules/@types/aria-query": {
+ "version": "5.0.4",
+ "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz",
+ "integrity": "sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/chai": {
+ "version": "5.2.3",
+ "resolved": "https://registry.npmjs.org/@types/chai/-/chai-5.2.3.tgz",
+ "integrity": "sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/deep-eql": "*",
+ "assertion-error": "^2.0.1"
+ }
+ },
+ "node_modules/@types/connect": {
+ "version": "3.4.38",
+ "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz",
+ "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==",
+ "license": "MIT",
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@types/d3-array": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.2.2.tgz",
+ "integrity": "sha512-hOLWVbm7uRza0BYXpIIW5pxfrKe0W+D5lrFiAEYR+pb6w3N2SwSMaJbXdUfSEv+dT4MfHBLtn5js0LAWaO6otw==",
+ "license": "MIT"
+ },
+ "node_modules/@types/d3-color": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.3.tgz",
+ "integrity": "sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A==",
+ "license": "MIT"
+ },
+ "node_modules/@types/d3-ease": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.2.tgz",
+ "integrity": "sha512-NcV1JjO5oDzoK26oMzbILE6HW7uVXOHLQvHshBUW4UMdZGfiY6v5BeQwh9a9tCzv+CeefZQHJt5SRgK154RtiA==",
+ "license": "MIT"
+ },
+ "node_modules/@types/d3-interpolate": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.4.tgz",
+ "integrity": "sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA==",
+ "license": "MIT",
+ "dependencies": {
+ "@types/d3-color": "*"
+ }
+ },
+ "node_modules/@types/d3-path": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.1.1.tgz",
+ "integrity": "sha512-VMZBYyQvbGmWyWVea0EHs/BwLgxc+MKi1zLDCONksozI4YJMcTt8ZEuIR4Sb1MMTE8MMW49v0IwI5+b7RmfWlg==",
+ "license": "MIT"
+ },
+ "node_modules/@types/d3-scale": {
+ "version": "4.0.9",
+ "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.9.tgz",
+ "integrity": "sha512-dLmtwB8zkAeO/juAMfnV+sItKjlsw2lKdZVVy6LRr0cBmegxSABiLEpGVmSJJ8O08i4+sGR6qQtb6WtuwJdvVw==",
+ "license": "MIT",
+ "dependencies": {
+ "@types/d3-time": "*"
+ }
+ },
+ "node_modules/@types/d3-shape": {
+ "version": "3.1.8",
+ "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.8.tgz",
+ "integrity": "sha512-lae0iWfcDeR7qt7rA88BNiqdvPS5pFVPpo5OfjElwNaT2yyekbM0C9vK+yqBqEmHr6lDkRnYNoTBYlAgJa7a4w==",
+ "license": "MIT",
+ "dependencies": {
+ "@types/d3-path": "*"
+ }
+ },
+ "node_modules/@types/d3-time": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.4.tgz",
+ "integrity": "sha512-yuzZug1nkAAaBlBBikKZTgzCeA+k1uy4ZFwWANOfKw5z5LRhV0gNA7gNkKm7HoK+HRN0wX3EkxGk0fpbWhmB7g==",
+ "license": "MIT"
+ },
+ "node_modules/@types/d3-timer": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.2.tgz",
+ "integrity": "sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw==",
+ "license": "MIT"
+ },
+ "node_modules/@types/deep-eql": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@types/deep-eql/-/deep-eql-4.0.2.tgz",
+ "integrity": "sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/estree": {
+ "version": "1.0.9",
+ "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.9.tgz",
+ "integrity": "sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/json-schema": {
+ "version": "7.0.15",
+ "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz",
+ "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==",
+ "license": "MIT"
+ },
+ "node_modules/@types/json5": {
+ "version": "0.0.29",
+ "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
+ "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/node": {
+ "version": "20.19.41",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.41.tgz",
+ "integrity": "sha512-ECymXOukMnOoVkC2bb1Vc/w/836DXncOg5m8Xj1RH7xSHZJWNYY6Zh7EH477vcnD5egKNNfy2RpNOmuChhFPgQ==",
+ "license": "MIT",
+ "dependencies": {
+ "undici-types": "~6.21.0"
+ }
+ },
+ "node_modules/@types/node/node_modules/undici-types": {
+ "version": "6.21.0",
+ "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz",
+ "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==",
+ "license": "MIT"
+ },
+ "node_modules/@types/react": {
+ "version": "19.2.15",
+ "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.15.tgz",
+ "integrity": "sha512-eRwcGNHve+E8qtEQSSRl6urh+rFop4v8gm6O8rGv25CodbvFdLjA1vVQ1KkiFE0w0UPOnb8tDiFKL5lp0rtY5Q==",
+ "devOptional": true,
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "csstype": "^3.2.2"
+ }
+ },
+ "node_modules/@types/react-dom": {
+ "version": "19.2.3",
+ "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.2.3.tgz",
+ "integrity": "sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==",
+ "devOptional": true,
+ "license": "MIT",
+ "peer": true,
+ "peerDependencies": {
+ "@types/react": "^19.2.0"
+ }
+ },
+ "node_modules/@types/trusted-types": {
+ "version": "2.0.7",
+ "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz",
+ "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==",
+ "license": "MIT"
+ },
+ "node_modules/@types/use-sync-external-store": {
+ "version": "0.0.6",
+ "resolved": "https://registry.npmjs.org/@types/use-sync-external-store/-/use-sync-external-store-0.0.6.tgz",
+ "integrity": "sha512-zFDAD+tlpf2r4asuHEj0XH6pY6i0g5NeAHPn+15wk3BV6JA69eERFXC1gyGThDkVa1zCyKr5jox1+2LbV/AMLg==",
+ "license": "MIT"
+ },
+ "node_modules/@types/uuid": {
+ "version": "10.0.0",
+ "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-10.0.0.tgz",
+ "integrity": "sha512-7gqG38EyHgyP1S+7+xomFtL+ZNHcKv6DwNaCZmJmo1vgMugyF3TCnXVg4t1uk89mLNwnLtnY3TpOpCOyp1/xHQ==",
+ "license": "MIT"
+ },
+ "node_modules/@types/w3c-web-usb": {
+ "version": "1.0.14",
+ "resolved": "https://registry.npmjs.org/@types/w3c-web-usb/-/w3c-web-usb-1.0.14.tgz",
+ "integrity": "sha512-Qu3Nn6JFuF4+sHKYl+IcX9vYiI40ogleXzFFSxoE1W94rG98o/kXs8uJ0QSfFzuwBCZWlGfUGpPkgwuuX4PchA==",
+ "license": "MIT"
+ },
+ "node_modules/@types/web": {
+ "version": "0.0.197",
+ "resolved": "https://registry.npmjs.org/@types/web/-/web-0.0.197.tgz",
+ "integrity": "sha512-V4sOroWDADFx9dLodWpKm298NOJ1VJ6zoDVgaP+WBb/utWxqQ6gnMzd9lvVDAr/F3ibiKaxH9i45eS0gQPSTaQ==",
+ "license": "Apache-2.0"
+ },
+ "node_modules/@types/ws": {
+ "version": "7.4.7",
+ "resolved": "https://registry.npmjs.org/@types/ws/-/ws-7.4.7.tgz",
+ "integrity": "sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==",
+ "license": "MIT",
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@typescript-eslint/eslint-plugin": {
+ "version": "8.60.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.60.0.tgz",
+ "integrity": "sha512-QYb/sa74/s7OKMbACMjrYnGspj9Hs5YI5aaffSL65UfeBUzVzBJfVo3oWSpbzPurvm7yaCCo2Lk7lVj610HqKw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@eslint-community/regexpp": "^4.12.2",
+ "@typescript-eslint/scope-manager": "8.60.0",
+ "@typescript-eslint/type-utils": "8.60.0",
+ "@typescript-eslint/utils": "8.60.0",
+ "@typescript-eslint/visitor-keys": "8.60.0",
+ "ignore": "^7.0.5",
+ "natural-compare": "^1.4.0",
+ "ts-api-utils": "^2.5.0"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "@typescript-eslint/parser": "^8.60.0",
+ "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0",
+ "typescript": ">=4.8.4 <6.1.0"
+ }
+ },
+ "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": {
+ "version": "7.0.5",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz",
+ "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 4"
+ }
+ },
+ "node_modules/@typescript-eslint/parser": {
+ "version": "8.60.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.60.0.tgz",
+ "integrity": "sha512-fcqpj/MyK4sxDPcbe7STNPbpQL4RLZOPWuaTmwZYuc+hJKzRf58yRxfhqGpc6PIq9ZyfSBpfHgmUHmHs0KwHwg==",
+ "dev": true,
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "@typescript-eslint/scope-manager": "8.60.0",
+ "@typescript-eslint/types": "8.60.0",
+ "@typescript-eslint/typescript-estree": "8.60.0",
+ "@typescript-eslint/visitor-keys": "8.60.0",
+ "debug": "^4.4.3"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0",
+ "typescript": ">=4.8.4 <6.1.0"
+ }
+ },
+ "node_modules/@typescript-eslint/project-service": {
+ "version": "8.60.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.60.0.tgz",
+ "integrity": "sha512-aZu74NNKJeUWqCjDddzdiKaS82dgYgV/vmf+Ui3ZdZejmgfXR/q+pRumgobnQ2cCJTgGTWp4ypiwsuofFubavg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@typescript-eslint/tsconfig-utils": "^8.60.0",
+ "@typescript-eslint/types": "^8.60.0",
+ "debug": "^4.4.3"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "typescript": ">=4.8.4 <6.1.0"
+ }
+ },
+ "node_modules/@typescript-eslint/scope-manager": {
+ "version": "8.60.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.60.0.tgz",
+ "integrity": "sha512-pFzqhllJMs+jghLQWzV00ds39xLzuyqPSev5pd8f4Ir0rtKR3ZLUB4/4dhjOFighWb9larvtfJvqL+4yKDI3Xw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@typescript-eslint/types": "8.60.0",
+ "@typescript-eslint/visitor-keys": "8.60.0"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ }
+ },
+ "node_modules/@typescript-eslint/tsconfig-utils": {
+ "version": "8.60.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.60.0.tgz",
+ "integrity": "sha512-BZPR3RGYlAXnly6ymAxfkVn5rCbZzQNou0rxv3GfWZ8cTQp+hhVd73khbGLAd8k1TlAPLISH337M+tAgAnaJDQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "typescript": ">=4.8.4 <6.1.0"
+ }
+ },
+ "node_modules/@typescript-eslint/type-utils": {
+ "version": "8.60.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.60.0.tgz",
+ "integrity": "sha512-SX46wEUtitCpq7AN38HkUU/+zvUpdKf7ephtWAFgckH8O7PQIyL5gvrhQgBLuEYgLfuKWOVvWVskMbuFHAz5xg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@typescript-eslint/types": "8.60.0",
+ "@typescript-eslint/typescript-estree": "8.60.0",
+ "@typescript-eslint/utils": "8.60.0",
+ "debug": "^4.4.3",
+ "ts-api-utils": "^2.5.0"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0",
+ "typescript": ">=4.8.4 <6.1.0"
+ }
+ },
+ "node_modules/@typescript-eslint/types": {
+ "version": "8.60.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.60.0.tgz",
+ "integrity": "sha512-AsE7x2XaAK+CVbeih0Fvbn+r1qHxtpLDJ3XUuFcIinT318T90yHMJC+Zgv+jUuDjQQd06HKwxnDu6sz1IcTilA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ }
+ },
+ "node_modules/@typescript-eslint/typescript-estree": {
+ "version": "8.60.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.60.0.tgz",
+ "integrity": "sha512-3AcZNBGMClm6CXDyo8kYvVGT/sx29sS0oBsIb9oZI2gunA4Vm2M3YHzRLPvsUBBsl+yB5FPtltq7gGH0iTlp9g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@typescript-eslint/project-service": "8.60.0",
+ "@typescript-eslint/tsconfig-utils": "8.60.0",
+ "@typescript-eslint/types": "8.60.0",
+ "@typescript-eslint/visitor-keys": "8.60.0",
+ "debug": "^4.4.3",
+ "minimatch": "^10.2.2",
+ "semver": "^7.7.3",
+ "tinyglobby": "^0.2.15",
+ "ts-api-utils": "^2.5.0"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "typescript": ">=4.8.4 <6.1.0"
+ }
+ },
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/balanced-match": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz",
+ "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "18 || 20 || >=22"
+ }
+ },
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": {
+ "version": "5.0.6",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.6.tgz",
+ "integrity": "sha512-kLpxurY4Z4r9sgMsyG0Z9uzsBlgiU/EFKhj/h91/8yHu0edo7XuixOIH3VcJ8kkxs6/jPzoI6U9Vj3WqbMQ94g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^4.0.2"
+ },
+ "engines": {
+ "node": "18 || 20 || >=22"
+ }
+ },
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": {
+ "version": "10.2.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.5.tgz",
+ "integrity": "sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==",
+ "dev": true,
+ "license": "BlueOak-1.0.0",
+ "dependencies": {
+ "brace-expansion": "^5.0.5"
+ },
+ "engines": {
+ "node": "18 || 20 || >=22"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/@typescript-eslint/utils": {
+ "version": "8.60.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.60.0.tgz",
+ "integrity": "sha512-HtXuPfrHTyBDkameWpl+vJb1Uevu2tznAyahM1Oc4AENidCLTPiZDWIo4GfcxNdC/RcfGcadzzkqbRG87dUrQA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@eslint-community/eslint-utils": "^4.9.1",
+ "@typescript-eslint/scope-manager": "8.60.0",
+ "@typescript-eslint/types": "8.60.0",
+ "@typescript-eslint/typescript-estree": "8.60.0"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0",
+ "typescript": ">=4.8.4 <6.1.0"
+ }
+ },
+ "node_modules/@typescript-eslint/visitor-keys": {
+ "version": "8.60.0",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.60.0.tgz",
+ "integrity": "sha512-9WI52t8ZGLVGrPMBet25yAftqY/n95+zmoUUtJBBQTKDSKUu7OsPTroT2op7U9JatkoRccL0YkWDNMFfC4Sjxg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@typescript-eslint/types": "8.60.0",
+ "eslint-visitor-keys": "^5.0.0"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ }
+ },
+ "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz",
+ "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": "^20.19.0 || ^22.13.0 || >=24"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
+ }
+ },
+ "node_modules/@vitest/coverage-v8": {
+ "version": "4.1.7",
+ "resolved": "https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-4.1.7.tgz",
+ "integrity": "sha512-qsYPeXc5Q9dFLd1i8Ap+Bx8sQgcp+rFVQo4R0dDsWNBzl26ldVF1qOO+RL24K7FDrR6pA+50XedRLSoSG24bVQ==",
+ "dev": true,
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "@bcoe/v8-coverage": "^1.0.2",
+ "@vitest/utils": "4.1.7",
+ "ast-v8-to-istanbul": "^1.0.0",
+ "istanbul-lib-coverage": "^3.2.2",
+ "istanbul-lib-report": "^3.0.1",
+ "istanbul-reports": "^3.2.0",
+ "magicast": "^0.5.2",
+ "obug": "^2.1.1",
+ "std-env": "^4.0.0-rc.1",
+ "tinyrainbow": "^3.1.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/vitest"
+ },
+ "peerDependencies": {
+ "@vitest/browser": "4.1.7",
+ "vitest": "4.1.7"
+ },
+ "peerDependenciesMeta": {
+ "@vitest/browser": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@vitest/expect": {
+ "version": "4.1.7",
+ "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-4.1.7.tgz",
+ "integrity": "sha512-1R+tw0ortHEbZDGMymm+pN7/AFQ/RkFFdtd7EN+VBpynKmLbP8A3rpEXdshBJ7+8hQ9zBJh/i1s0yKNtxAnU7w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@standard-schema/spec": "^1.1.0",
+ "@types/chai": "^5.2.2",
+ "@vitest/spy": "4.1.7",
+ "@vitest/utils": "4.1.7",
+ "chai": "^6.2.2",
+ "tinyrainbow": "^3.1.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/vitest"
+ }
+ },
+ "node_modules/@vitest/mocker": {
+ "version": "4.1.7",
+ "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-4.1.7.tgz",
+ "integrity": "sha512-vY7nuamKgfvpA1Koa3oYIw/k7D6kZnpGyNMZW8loow2bsBYla1TFdqTaXncWdRn4pgwNs+90RhnXhJScDwQeJA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@vitest/spy": "4.1.7",
+ "estree-walker": "^3.0.3",
+ "magic-string": "^0.30.21"
+ },
+ "funding": {
+ "url": "https://opencollective.com/vitest"
+ },
+ "peerDependencies": {
+ "msw": "^2.4.9",
+ "vite": "^6.0.0 || ^7.0.0 || ^8.0.0"
+ },
+ "peerDependenciesMeta": {
+ "msw": {
+ "optional": true
+ },
+ "vite": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@vitest/pretty-format": {
+ "version": "4.1.7",
+ "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.1.7.tgz",
+ "integrity": "sha512-umgCarTOYQWIaDMvGDRZij+6b9oVeLIyJzfN+AS88e0ZOU3QTgNNSTtjQOpcvWr3np1N0j4WgZj+sb3oYBDscw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "tinyrainbow": "^3.1.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/vitest"
+ }
+ },
+ "node_modules/@vitest/runner": {
+ "version": "4.1.7",
+ "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-4.1.7.tgz",
+ "integrity": "sha512-BapjmAQ2aI78WdMEfeUWivnfVzB+VPGwWRQcJE0OUq7qEeEcBsCSf+0T5iREBNE5nBb4wA5Ya0W6IA+sghdEFw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@vitest/utils": "4.1.7",
+ "pathe": "^2.0.3"
+ },
+ "funding": {
+ "url": "https://opencollective.com/vitest"
+ }
+ },
+ "node_modules/@vitest/snapshot": {
+ "version": "4.1.7",
+ "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-4.1.7.tgz",
+ "integrity": "sha512-ZacLzja+TmJeZ1h14xW2FB/WpeimUD3haBXQPyJqxvo8jQTmfeA8zv58mtjN2C7EHXZDYVcVYdYmAxjkWVvKCw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@vitest/pretty-format": "4.1.7",
+ "@vitest/utils": "4.1.7",
+ "magic-string": "^0.30.21",
+ "pathe": "^2.0.3"
+ },
+ "funding": {
+ "url": "https://opencollective.com/vitest"
+ }
+ },
+ "node_modules/@vitest/spy": {
+ "version": "4.1.7",
+ "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-4.1.7.tgz",
+ "integrity": "sha512-kbkI5LMWakyuTIvs6fUJ5qdIVb1XVKsYJAT4OJ938cHMROYMSfmoQdZy0aaAnjbbc8F61vkoTqz/Az+/HiIu5Q==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "url": "https://opencollective.com/vitest"
+ }
+ },
+ "node_modules/@vitest/utils": {
+ "version": "4.1.7",
+ "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-4.1.7.tgz",
+ "integrity": "sha512-T532WBu791cBxJlCl6SO+J14l81DQx6uQHm1bQbmCDY7nqlEIgkza/UFnSBNaUtSf41unldDFjdOBYEQC4b5Hw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@vitest/pretty-format": "4.1.7",
+ "convert-source-map": "^2.0.0",
+ "tinyrainbow": "^3.1.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/vitest"
+ }
+ },
+ "node_modules/@wallet-standard/base": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@wallet-standard/base/-/base-1.1.0.tgz",
+ "integrity": "sha512-DJDQhjKmSNVLKWItoKThJS+CsJQjR9AOBOirBVT1F9YpRyC9oYHE+ZnSf8y8bxUphtKqdQMPVQ2mHohYdRvDVQ==",
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=16"
+ }
+ },
+ "node_modules/@wallet-standard/features": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@wallet-standard/features/-/features-1.1.0.tgz",
+ "integrity": "sha512-hiEivWNztx73s+7iLxsuD1sOJ28xtRix58W7Xnz4XzzA/pF0+aicnWgjOdA10doVDEDZdUuZCIIqG96SFNlDUg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@wallet-standard/base": "^1.1.0"
+ },
+ "engines": {
+ "node": ">=16"
+ }
+ },
+ "node_modules/@wallet-standard/wallet": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@wallet-standard/wallet/-/wallet-1.1.0.tgz",
+ "integrity": "sha512-Gt8TnSlDZpAl+RWOOAB/kuvC7RpcdWAlFbHNoi4gsXsfaWa1QCT6LBcfIYTPdOZC9OVZUDwqGuGAcqZejDmHjg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@wallet-standard/base": "^1.1.0"
+ },
+ "engines": {
+ "node": ">=16"
+ }
+ },
+ "node_modules/@walletconnect/core": {
+ "version": "2.23.0",
+ "resolved": "https://registry.npmjs.org/@walletconnect/core/-/core-2.23.0.tgz",
+ "integrity": "sha512-W++xuXf+AsMPrBWn1It8GheIbCTp1ynTQP+aoFB86eUwyCtSiK7UQsn/+vJZdwElrn+Ptp2A0RqQx2onTMVHjQ==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@walletconnect/heartbeat": "1.2.2",
+ "@walletconnect/jsonrpc-provider": "1.0.14",
+ "@walletconnect/jsonrpc-types": "1.0.4",
+ "@walletconnect/jsonrpc-utils": "1.0.8",
+ "@walletconnect/jsonrpc-ws-connection": "1.0.16",
+ "@walletconnect/keyvaluestorage": "1.1.1",
+ "@walletconnect/logger": "3.0.0",
+ "@walletconnect/relay-api": "1.0.11",
+ "@walletconnect/relay-auth": "1.1.0",
+ "@walletconnect/safe-json": "1.0.2",
+ "@walletconnect/time": "1.0.2",
+ "@walletconnect/types": "2.23.0",
+ "@walletconnect/utils": "2.23.0",
+ "@walletconnect/window-getters": "1.0.1",
+ "es-toolkit": "1.39.3",
+ "events": "3.3.0",
+ "uint8arrays": "3.1.1"
+ },
+ "engines": {
+ "node": ">=18.20.8"
+ }
+ },
+ "node_modules/@walletconnect/core/node_modules/@walletconnect/logger": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@walletconnect/logger/-/logger-3.0.0.tgz",
+ "integrity": "sha512-DDktPBFdmt5d7U3sbp4e3fQHNS1b6amsR8FmtOnt6L2SnV7VfcZr8VmAGL12zetAR+4fndegbREmX0P8Mw6eDg==",
+ "license": "MIT",
+ "dependencies": {
+ "@walletconnect/safe-json": "^1.0.2",
+ "pino": "10.0.0"
+ }
+ },
+ "node_modules/@walletconnect/core/node_modules/@walletconnect/types": {
+ "version": "2.23.0",
+ "resolved": "https://registry.npmjs.org/@walletconnect/types/-/types-2.23.0.tgz",
+ "integrity": "sha512-9ZEOJyx/kNVCRncDHh3Qr9eH7Ih1dXBFB4k1J8iEudkv3t4GhYpXhqIt2kNdQWluPb1BBB4wEuckAT96yKuA8g==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@walletconnect/events": "1.0.1",
+ "@walletconnect/heartbeat": "1.2.2",
+ "@walletconnect/jsonrpc-types": "1.0.4",
+ "@walletconnect/keyvaluestorage": "1.1.1",
+ "@walletconnect/logger": "3.0.0",
+ "events": "3.3.0"
+ }
+ },
+ "node_modules/@walletconnect/environment": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@walletconnect/environment/-/environment-1.0.1.tgz",
+ "integrity": "sha512-T426LLZtHj8e8rYnKfzsw1aG6+M0BT1ZxayMdv/p8yM0MU+eJDISqNY3/bccxRr4LrF9csq02Rhqt08Ibl0VRg==",
+ "license": "MIT",
+ "dependencies": {
+ "tslib": "1.14.1"
+ }
+ },
+ "node_modules/@walletconnect/environment/node_modules/tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "license": "0BSD"
+ },
+ "node_modules/@walletconnect/events": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@walletconnect/events/-/events-1.0.1.tgz",
+ "integrity": "sha512-NPTqaoi0oPBVNuLv7qPaJazmGHs5JGyO8eEAk5VGKmJzDR7AHzD4k6ilox5kxk1iwiOnFopBOOMLs86Oa76HpQ==",
+ "license": "MIT",
+ "dependencies": {
+ "keyvaluestorage-interface": "^1.0.0",
+ "tslib": "1.14.1"
+ }
+ },
+ "node_modules/@walletconnect/events/node_modules/tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "license": "0BSD"
+ },
+ "node_modules/@walletconnect/heartbeat": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/@walletconnect/heartbeat/-/heartbeat-1.2.2.tgz",
+ "integrity": "sha512-uASiRmC5MwhuRuf05vq4AT48Pq8RMi876zV8rr8cV969uTOzWdB/k+Lj5yI2PBtB1bGQisGen7MM1GcZlQTBXw==",
+ "license": "MIT",
+ "dependencies": {
+ "@walletconnect/events": "^1.0.1",
+ "@walletconnect/time": "^1.0.2",
+ "events": "^3.3.0"
+ }
+ },
+ "node_modules/@walletconnect/jsonrpc-http-connection": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-http-connection/-/jsonrpc-http-connection-1.0.8.tgz",
+ "integrity": "sha512-+B7cRuaxijLeFDJUq5hAzNyef3e3tBDIxyaCNmFtjwnod5AGis3RToNqzFU33vpVcxFhofkpE7Cx+5MYejbMGw==",
+ "license": "MIT",
+ "dependencies": {
+ "@walletconnect/jsonrpc-utils": "^1.0.6",
+ "@walletconnect/safe-json": "^1.0.1",
+ "cross-fetch": "^3.1.4",
+ "events": "^3.3.0"
+ }
+ },
+ "node_modules/@walletconnect/jsonrpc-http-connection/node_modules/cross-fetch": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.2.0.tgz",
+ "integrity": "sha512-Q+xVJLoGOeIMXZmbUK4HYk+69cQH6LudR0Vu/pRm2YlU/hDV9CiS0gKUMaWY5f2NeUH9C1nV3bsTlCo0FsTV1Q==",
+ "license": "MIT",
+ "dependencies": {
+ "node-fetch": "^2.7.0"
+ }
+ },
+ "node_modules/@walletconnect/jsonrpc-provider": {
+ "version": "1.0.14",
+ "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-provider/-/jsonrpc-provider-1.0.14.tgz",
+ "integrity": "sha512-rtsNY1XqHvWj0EtITNeuf8PHMvlCLiS3EjQL+WOkxEOA4KPxsohFnBDeyPYiNm4ZvkQdLnece36opYidmtbmow==",
+ "license": "MIT",
+ "dependencies": {
+ "@walletconnect/jsonrpc-utils": "^1.0.8",
+ "@walletconnect/safe-json": "^1.0.2",
+ "events": "^3.3.0"
+ }
+ },
+ "node_modules/@walletconnect/jsonrpc-types": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-types/-/jsonrpc-types-1.0.4.tgz",
+ "integrity": "sha512-P6679fG/M+wuWg9TY8mh6xFSdYnFyFjwFelxyISxMDrlbXokorEVXYOxiqEbrU3x1BmBoCAJJ+vtEaEoMlpCBQ==",
+ "license": "MIT",
+ "dependencies": {
+ "events": "^3.3.0",
+ "keyvaluestorage-interface": "^1.0.0"
+ }
+ },
+ "node_modules/@walletconnect/jsonrpc-utils": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.8.tgz",
+ "integrity": "sha512-vdeb03bD8VzJUL6ZtzRYsFMq1eZQcM3EAzT0a3st59dyLfJ0wq+tKMpmGH7HlB7waD858UWgfIcudbPFsbzVdw==",
+ "license": "MIT",
+ "dependencies": {
+ "@walletconnect/environment": "^1.0.1",
+ "@walletconnect/jsonrpc-types": "^1.0.3",
+ "tslib": "1.14.1"
+ }
+ },
+ "node_modules/@walletconnect/jsonrpc-utils/node_modules/tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "license": "0BSD"
+ },
+ "node_modules/@walletconnect/jsonrpc-ws-connection": {
+ "version": "1.0.16",
+ "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-ws-connection/-/jsonrpc-ws-connection-1.0.16.tgz",
+ "integrity": "sha512-G81JmsMqh5nJheE1mPst1W0WfVv0SG3N7JggwLLGnI7iuDZJq8cRJvQwLGKHn5H1WTW7DEPCo00zz5w62AbL3Q==",
+ "license": "MIT",
+ "dependencies": {
+ "@walletconnect/jsonrpc-utils": "^1.0.6",
+ "@walletconnect/safe-json": "^1.0.2",
+ "events": "^3.3.0",
+ "ws": "^7.5.1"
+ }
+ },
+ "node_modules/@walletconnect/jsonrpc-ws-connection/node_modules/ws": {
+ "version": "7.5.11",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.11.tgz",
+ "integrity": "sha512-zS54Oen9bITtp7kp2XM3AydrCIq1D+HwJOuH+c+e4LfpL/lotP5osijd+UoMnxwAam1GN8R4KtLAyIrIcBNpiA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=8.3.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": "^5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@walletconnect/keyvaluestorage": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@walletconnect/keyvaluestorage/-/keyvaluestorage-1.1.1.tgz",
+ "integrity": "sha512-V7ZQq2+mSxAq7MrRqDxanTzu2RcElfK1PfNYiaVnJgJ7Q7G7hTVwF8voIBx92qsRyGHZihrwNPHuZd1aKkd0rA==",
+ "license": "MIT",
+ "dependencies": {
+ "@walletconnect/safe-json": "^1.0.1",
+ "idb-keyval": "^6.2.1",
+ "unstorage": "^1.9.0"
+ },
+ "peerDependencies": {
+ "@react-native-async-storage/async-storage": "1.x"
+ },
+ "peerDependenciesMeta": {
+ "@react-native-async-storage/async-storage": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@walletconnect/logger": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/@walletconnect/logger/-/logger-3.0.2.tgz",
+ "integrity": "sha512-7wR3wAwJTOmX4gbcUZcFMov8fjftY05+5cO/d4cpDD8wDzJ+cIlKdYOXaXfxHLSYeDazMXIsxMYjHYVDfkx+nA==",
+ "license": "MIT",
+ "dependencies": {
+ "@walletconnect/safe-json": "^1.0.2",
+ "pino": "10.0.0"
+ }
+ },
+ "node_modules/@walletconnect/relay-api": {
+ "version": "1.0.11",
+ "resolved": "https://registry.npmjs.org/@walletconnect/relay-api/-/relay-api-1.0.11.tgz",
+ "integrity": "sha512-tLPErkze/HmC9aCmdZOhtVmYZq1wKfWTJtygQHoWtgg722Jd4homo54Cs4ak2RUFUZIGO2RsOpIcWipaua5D5Q==",
+ "license": "MIT",
+ "dependencies": {
+ "@walletconnect/jsonrpc-types": "^1.0.2"
+ }
+ },
+ "node_modules/@walletconnect/relay-auth": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@walletconnect/relay-auth/-/relay-auth-1.1.0.tgz",
+ "integrity": "sha512-qFw+a9uRz26jRCDgL7Q5TA9qYIgcNY8jpJzI1zAWNZ8i7mQjaijRnWFKsCHAU9CyGjvt6RKrRXyFtFOpWTVmCQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@noble/curves": "1.8.0",
+ "@noble/hashes": "1.7.0",
+ "@walletconnect/safe-json": "^1.0.1",
+ "@walletconnect/time": "^1.0.2",
+ "uint8arrays": "^3.0.0"
+ }
+ },
+ "node_modules/@walletconnect/relay-auth/node_modules/@noble/curves": {
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.8.0.tgz",
+ "integrity": "sha512-j84kjAbzEnQHaSIhRPUmB3/eVXu2k3dKPl2LOrR8fSOIL+89U+7lV117EWHtq/GHM3ReGHM46iRBdZfpc4HRUQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@noble/hashes": "1.7.0"
+ },
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@walletconnect/relay-auth/node_modules/@noble/hashes": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.0.tgz",
+ "integrity": "sha512-HXydb0DgzTpDPwbVeDGCG1gIu7X6+AuU6Zl6av/E/KG8LMsvPntvq+w17CHRpKBmN6Ybdrt1eP3k4cj8DJa78w==",
+ "license": "MIT",
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@walletconnect/safe-json": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@walletconnect/safe-json/-/safe-json-1.0.2.tgz",
+ "integrity": "sha512-Ogb7I27kZ3LPC3ibn8ldyUr5544t3/STow9+lzz7Sfo808YD7SBWk7SAsdBFlYgP2zDRy2hS3sKRcuSRM0OTmA==",
+ "license": "MIT",
+ "dependencies": {
+ "tslib": "1.14.1"
+ }
+ },
+ "node_modules/@walletconnect/safe-json/node_modules/tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "license": "0BSD"
+ },
+ "node_modules/@walletconnect/sign-client": {
+ "version": "2.23.0",
+ "resolved": "https://registry.npmjs.org/@walletconnect/sign-client/-/sign-client-2.23.0.tgz",
+ "integrity": "sha512-Nzf5x/LnQgC0Yjk0NmkT8kdrIMcScpALiFm9gP0n3CulL+dkf3HumqWzdoTmQSqGPxwHu/TNhGOaRKZLGQXSqw==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@walletconnect/core": "2.23.0",
+ "@walletconnect/events": "1.0.1",
+ "@walletconnect/heartbeat": "1.2.2",
+ "@walletconnect/jsonrpc-utils": "1.0.8",
+ "@walletconnect/logger": "3.0.0",
+ "@walletconnect/time": "1.0.2",
+ "@walletconnect/types": "2.23.0",
+ "@walletconnect/utils": "2.23.0",
+ "events": "3.3.0"
+ }
+ },
+ "node_modules/@walletconnect/sign-client/node_modules/@walletconnect/logger": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@walletconnect/logger/-/logger-3.0.0.tgz",
+ "integrity": "sha512-DDktPBFdmt5d7U3sbp4e3fQHNS1b6amsR8FmtOnt6L2SnV7VfcZr8VmAGL12zetAR+4fndegbREmX0P8Mw6eDg==",
+ "license": "MIT",
+ "dependencies": {
+ "@walletconnect/safe-json": "^1.0.2",
+ "pino": "10.0.0"
+ }
+ },
+ "node_modules/@walletconnect/sign-client/node_modules/@walletconnect/types": {
+ "version": "2.23.0",
+ "resolved": "https://registry.npmjs.org/@walletconnect/types/-/types-2.23.0.tgz",
+ "integrity": "sha512-9ZEOJyx/kNVCRncDHh3Qr9eH7Ih1dXBFB4k1J8iEudkv3t4GhYpXhqIt2kNdQWluPb1BBB4wEuckAT96yKuA8g==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@walletconnect/events": "1.0.1",
+ "@walletconnect/heartbeat": "1.2.2",
+ "@walletconnect/jsonrpc-types": "1.0.4",
+ "@walletconnect/keyvaluestorage": "1.1.1",
+ "@walletconnect/logger": "3.0.0",
+ "events": "3.3.0"
+ }
+ },
+ "node_modules/@walletconnect/time": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@walletconnect/time/-/time-1.0.2.tgz",
+ "integrity": "sha512-uzdd9woDcJ1AaBZRhqy5rNC9laqWGErfc4dxA9a87mPdKOgWMD85mcFo9dIYIts/Jwocfwn07EC6EzclKubk/g==",
+ "license": "MIT",
+ "dependencies": {
+ "tslib": "1.14.1"
+ }
+ },
+ "node_modules/@walletconnect/time/node_modules/tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "license": "0BSD"
+ },
+ "node_modules/@walletconnect/types": {
+ "version": "2.23.9",
+ "resolved": "https://registry.npmjs.org/@walletconnect/types/-/types-2.23.9.tgz",
+ "integrity": "sha512-IUl1PpD/Dig8IE2OZ9XtjbPohEyOZJ73xs92EDUzoIyzRtfm36g2D340pY3iu3AAdLv1yFiaZafB8Hf8RFze8A==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@walletconnect/events": "1.0.1",
+ "@walletconnect/heartbeat": "1.2.2",
+ "@walletconnect/jsonrpc-types": "1.0.4",
+ "@walletconnect/keyvaluestorage": "1.1.1",
+ "@walletconnect/logger": "3.0.2",
+ "events": "3.3.0"
+ }
+ },
+ "node_modules/@walletconnect/universal-provider": {
+ "version": "2.23.7",
+ "resolved": "https://registry.npmjs.org/@walletconnect/universal-provider/-/universal-provider-2.23.7.tgz",
+ "integrity": "sha512-6UicU/Mhr/1bh7MNoajypz7BhigORbHpP1LFTf8FYLQGDqzmqHMqmMH2GDAImtaY2sFTi2jBvc22tLl8VMze/A==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@walletconnect/events": "1.0.1",
+ "@walletconnect/jsonrpc-http-connection": "1.0.8",
+ "@walletconnect/jsonrpc-provider": "1.0.14",
+ "@walletconnect/jsonrpc-types": "1.0.4",
+ "@walletconnect/jsonrpc-utils": "1.0.8",
+ "@walletconnect/keyvaluestorage": "1.1.1",
+ "@walletconnect/logger": "3.0.2",
+ "@walletconnect/sign-client": "2.23.7",
+ "@walletconnect/types": "2.23.7",
+ "@walletconnect/utils": "2.23.7",
+ "es-toolkit": "1.44.0",
+ "events": "3.3.0"
+ }
+ },
+ "node_modules/@walletconnect/universal-provider/node_modules/@msgpack/msgpack": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/@msgpack/msgpack/-/msgpack-3.1.3.tgz",
+ "integrity": "sha512-47XIizs9XZXvuJgoaJUIE2lFoID8ugvc0jzSHP+Ptfk8nTbnR8g788wv48N03Kx0UkAv559HWRQ3yzOgzlRNUA==",
+ "license": "ISC",
+ "engines": {
+ "node": ">= 18"
+ }
+ },
+ "node_modules/@walletconnect/universal-provider/node_modules/@noble/curves": {
+ "version": "1.9.7",
+ "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.9.7.tgz",
+ "integrity": "sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw==",
+ "license": "MIT",
+ "dependencies": {
+ "@noble/hashes": "1.8.0"
+ },
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@walletconnect/universal-provider/node_modules/@noble/hashes": {
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz",
+ "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==",
+ "license": "MIT",
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@walletconnect/universal-provider/node_modules/@walletconnect/core": {
+ "version": "2.23.7",
+ "resolved": "https://registry.npmjs.org/@walletconnect/core/-/core-2.23.7.tgz",
+ "integrity": "sha512-yTyymn9mFaDZkUfLfZ3E9VyaSDPeHAXlrPxQRmNx2zFsEt/25GmTU2A848aomimLxZnAG2jNLhxbJ8I0gyNV+w==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@walletconnect/heartbeat": "1.2.2",
+ "@walletconnect/jsonrpc-provider": "1.0.14",
+ "@walletconnect/jsonrpc-types": "1.0.4",
+ "@walletconnect/jsonrpc-utils": "1.0.8",
+ "@walletconnect/jsonrpc-ws-connection": "1.0.16",
+ "@walletconnect/keyvaluestorage": "1.1.1",
+ "@walletconnect/logger": "3.0.2",
+ "@walletconnect/relay-api": "1.0.11",
+ "@walletconnect/relay-auth": "1.1.0",
+ "@walletconnect/safe-json": "1.0.2",
+ "@walletconnect/time": "1.0.2",
+ "@walletconnect/types": "2.23.7",
+ "@walletconnect/utils": "2.23.7",
+ "@walletconnect/window-getters": "1.0.1",
+ "es-toolkit": "1.44.0",
+ "events": "3.3.0",
+ "uint8arrays": "3.1.1"
+ },
+ "engines": {
+ "node": ">=18.20.8"
+ }
+ },
+ "node_modules/@walletconnect/universal-provider/node_modules/@walletconnect/sign-client": {
+ "version": "2.23.7",
+ "resolved": "https://registry.npmjs.org/@walletconnect/sign-client/-/sign-client-2.23.7.tgz",
+ "integrity": "sha512-SX61lzb1bTl/LijlcHQttnoHPBzzoY5mW9ArR6qhFtDNDTS7yr2rcH7rCngxHlYeb4rAYcWLHgbiGSrdKxl/mg==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@walletconnect/core": "2.23.7",
+ "@walletconnect/events": "1.0.1",
+ "@walletconnect/heartbeat": "1.2.2",
+ "@walletconnect/jsonrpc-utils": "1.0.8",
+ "@walletconnect/logger": "3.0.2",
+ "@walletconnect/time": "1.0.2",
+ "@walletconnect/types": "2.23.7",
+ "@walletconnect/utils": "2.23.7",
+ "events": "3.3.0"
+ }
+ },
+ "node_modules/@walletconnect/universal-provider/node_modules/@walletconnect/types": {
+ "version": "2.23.7",
+ "resolved": "https://registry.npmjs.org/@walletconnect/types/-/types-2.23.7.tgz",
+ "integrity": "sha512-6PAKK+iR2IntmlkCFLMAHjYeIaerCJJYRDmdRimhon0u+aNmQT+HyGM6zxDAth0rdpBD7qEvKP5IXZTE7KFUhw==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@walletconnect/events": "1.0.1",
+ "@walletconnect/heartbeat": "1.2.2",
+ "@walletconnect/jsonrpc-types": "1.0.4",
+ "@walletconnect/keyvaluestorage": "1.1.1",
+ "@walletconnect/logger": "3.0.2",
+ "events": "3.3.0"
+ }
+ },
+ "node_modules/@walletconnect/universal-provider/node_modules/@walletconnect/utils": {
+ "version": "2.23.7",
+ "resolved": "https://registry.npmjs.org/@walletconnect/utils/-/utils-2.23.7.tgz",
+ "integrity": "sha512-3p38gNrkVcIiQixVrlsWSa66Gjs5PqHOug2TxDgYUVBW5NcKjwQA08GkC6CKBQUfr5iaCtbfy6uZJW1LKSIvWQ==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@msgpack/msgpack": "3.1.3",
+ "@noble/ciphers": "1.3.0",
+ "@noble/curves": "1.9.7",
+ "@noble/hashes": "1.8.0",
+ "@scure/base": "1.2.6",
+ "@walletconnect/jsonrpc-utils": "1.0.8",
+ "@walletconnect/keyvaluestorage": "1.1.1",
+ "@walletconnect/logger": "3.0.2",
+ "@walletconnect/relay-api": "1.0.11",
+ "@walletconnect/relay-auth": "1.1.0",
+ "@walletconnect/safe-json": "1.0.2",
+ "@walletconnect/time": "1.0.2",
+ "@walletconnect/types": "2.23.7",
+ "@walletconnect/window-getters": "1.0.1",
+ "@walletconnect/window-metadata": "1.0.1",
+ "blakejs": "1.2.1",
+ "detect-browser": "5.3.0",
+ "ox": "0.9.3",
+ "uint8arrays": "3.1.1"
+ }
+ },
+ "node_modules/@walletconnect/universal-provider/node_modules/es-toolkit": {
+ "version": "1.44.0",
+ "resolved": "https://registry.npmjs.org/es-toolkit/-/es-toolkit-1.44.0.tgz",
+ "integrity": "sha512-6penXeZalaV88MM3cGkFZZfOoLGWshWWfdy0tWw/RlVVyhvMaWSBTOvXNeiW3e5FwdS5ePW0LGEu17zT139ktg==",
+ "license": "MIT",
+ "workspaces": [
+ "docs",
+ "benchmarks"
+ ]
+ },
+ "node_modules/@walletconnect/universal-provider/node_modules/ox": {
+ "version": "0.9.3",
+ "resolved": "https://registry.npmjs.org/ox/-/ox-0.9.3.tgz",
+ "integrity": "sha512-KzyJP+fPV4uhuuqrTZyok4DC7vFzi7HLUFiUNEmpbyh59htKWkOC98IONC1zgXJPbHAhQgqs6B0Z6StCGhmQvg==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/wevm"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "@adraffy/ens-normalize": "^1.11.0",
+ "@noble/ciphers": "^1.3.0",
+ "@noble/curves": "1.9.1",
+ "@noble/hashes": "^1.8.0",
+ "@scure/bip32": "^1.7.0",
+ "@scure/bip39": "^1.6.0",
+ "abitype": "^1.0.9",
+ "eventemitter3": "5.0.1"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.4.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@walletconnect/universal-provider/node_modules/ox/node_modules/@noble/curves": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.9.1.tgz",
+ "integrity": "sha512-k11yZxZg+t+gWvBbIswW0yoJlu8cHOC7dhunwOzoWH/mXGBiYyR4YY6hAEK/3EUs4UpB8la1RfdRpeGsFHkWsA==",
+ "license": "MIT",
+ "dependencies": {
+ "@noble/hashes": "1.8.0"
+ },
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@walletconnect/utils": {
+ "version": "2.23.0",
+ "resolved": "https://registry.npmjs.org/@walletconnect/utils/-/utils-2.23.0.tgz",
+ "integrity": "sha512-bVyv4Hl+/wVGueZ6rEO0eYgDy5deSBA4JjpJHAMOdaNoYs05NTE1HymV2lfPQQHuqc7suYexo9jwuW7i3JLuAA==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@msgpack/msgpack": "3.1.2",
+ "@noble/ciphers": "1.3.0",
+ "@noble/curves": "1.9.7",
+ "@noble/hashes": "1.8.0",
+ "@scure/base": "1.2.6",
+ "@walletconnect/jsonrpc-utils": "1.0.8",
+ "@walletconnect/keyvaluestorage": "1.1.1",
+ "@walletconnect/logger": "3.0.0",
+ "@walletconnect/relay-api": "1.0.11",
+ "@walletconnect/relay-auth": "1.1.0",
+ "@walletconnect/safe-json": "1.0.2",
+ "@walletconnect/time": "1.0.2",
+ "@walletconnect/types": "2.23.0",
+ "@walletconnect/window-getters": "1.0.1",
+ "@walletconnect/window-metadata": "1.0.1",
+ "blakejs": "1.2.1",
+ "bs58": "6.0.0",
+ "detect-browser": "5.3.0",
+ "ox": "0.9.3",
+ "uint8arrays": "3.1.1"
+ }
+ },
+ "node_modules/@walletconnect/utils/node_modules/@noble/curves": {
+ "version": "1.9.7",
+ "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.9.7.tgz",
+ "integrity": "sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw==",
+ "license": "MIT",
+ "dependencies": {
+ "@noble/hashes": "1.8.0"
+ },
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@walletconnect/utils/node_modules/@noble/hashes": {
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz",
+ "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==",
+ "license": "MIT",
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@walletconnect/utils/node_modules/@walletconnect/logger": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@walletconnect/logger/-/logger-3.0.0.tgz",
+ "integrity": "sha512-DDktPBFdmt5d7U3sbp4e3fQHNS1b6amsR8FmtOnt6L2SnV7VfcZr8VmAGL12zetAR+4fndegbREmX0P8Mw6eDg==",
+ "license": "MIT",
+ "dependencies": {
+ "@walletconnect/safe-json": "^1.0.2",
+ "pino": "10.0.0"
+ }
+ },
+ "node_modules/@walletconnect/utils/node_modules/@walletconnect/types": {
+ "version": "2.23.0",
+ "resolved": "https://registry.npmjs.org/@walletconnect/types/-/types-2.23.0.tgz",
+ "integrity": "sha512-9ZEOJyx/kNVCRncDHh3Qr9eH7Ih1dXBFB4k1J8iEudkv3t4GhYpXhqIt2kNdQWluPb1BBB4wEuckAT96yKuA8g==",
+ "license": "SEE LICENSE IN LICENSE.md",
+ "dependencies": {
+ "@walletconnect/events": "1.0.1",
+ "@walletconnect/heartbeat": "1.2.2",
+ "@walletconnect/jsonrpc-types": "1.0.4",
+ "@walletconnect/keyvaluestorage": "1.1.1",
+ "@walletconnect/logger": "3.0.0",
+ "events": "3.3.0"
+ }
+ },
+ "node_modules/@walletconnect/utils/node_modules/ox": {
+ "version": "0.9.3",
+ "resolved": "https://registry.npmjs.org/ox/-/ox-0.9.3.tgz",
+ "integrity": "sha512-KzyJP+fPV4uhuuqrTZyok4DC7vFzi7HLUFiUNEmpbyh59htKWkOC98IONC1zgXJPbHAhQgqs6B0Z6StCGhmQvg==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/wevm"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "@adraffy/ens-normalize": "^1.11.0",
+ "@noble/ciphers": "^1.3.0",
+ "@noble/curves": "1.9.1",
+ "@noble/hashes": "^1.8.0",
+ "@scure/bip32": "^1.7.0",
+ "@scure/bip39": "^1.6.0",
+ "abitype": "^1.0.9",
+ "eventemitter3": "5.0.1"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.4.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@walletconnect/utils/node_modules/ox/node_modules/@noble/curves": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.9.1.tgz",
+ "integrity": "sha512-k11yZxZg+t+gWvBbIswW0yoJlu8cHOC7dhunwOzoWH/mXGBiYyR4YY6hAEK/3EUs4UpB8la1RfdRpeGsFHkWsA==",
+ "license": "MIT",
+ "dependencies": {
+ "@noble/hashes": "1.8.0"
+ },
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@walletconnect/window-getters": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@walletconnect/window-getters/-/window-getters-1.0.1.tgz",
+ "integrity": "sha512-vHp+HqzGxORPAN8gY03qnbTMnhqIwjeRJNOMOAzePRg4xVEEE2WvYsI9G2NMjOknA8hnuYbU3/hwLcKbjhc8+Q==",
+ "license": "MIT",
+ "dependencies": {
+ "tslib": "1.14.1"
+ }
+ },
+ "node_modules/@walletconnect/window-getters/node_modules/tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "license": "0BSD"
+ },
+ "node_modules/@walletconnect/window-metadata": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@walletconnect/window-metadata/-/window-metadata-1.0.1.tgz",
+ "integrity": "sha512-9koTqyGrM2cqFRW517BPY/iEtUDx2r1+Pwwu5m7sJ7ka79wi3EyqhqcICk/yDmv6jAS1rjKgTKXlEhanYjijcA==",
+ "license": "MIT",
+ "dependencies": {
+ "@walletconnect/window-getters": "^1.0.1",
+ "tslib": "1.14.1"
+ }
+ },
+ "node_modules/@walletconnect/window-metadata/node_modules/tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "license": "0BSD"
+ },
+ "node_modules/@xrplf/isomorphic": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@xrplf/isomorphic/-/isomorphic-1.0.1.tgz",
+ "integrity": "sha512-0bIpgx8PDjYdrLFeC3csF305QQ1L7sxaWnL5y71mCvhenZzJgku9QsA+9QCXBC1eNYtxWO/xR91zrXJy2T/ixg==",
+ "license": "ISC",
+ "dependencies": {
+ "@noble/hashes": "^1.0.0",
+ "eventemitter3": "5.0.1",
+ "ws": "^8.13.0"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/@xrplf/secret-numbers": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@xrplf/secret-numbers/-/secret-numbers-2.0.0.tgz",
+ "integrity": "sha512-z3AOibRTE9E8MbjgzxqMpG1RNaBhQ1jnfhNCa1cGf2reZUJzPMYs4TggQTc7j8+0WyV3cr7y/U8Oz99SXIkN5Q==",
+ "license": "ISC",
+ "dependencies": {
+ "@xrplf/isomorphic": "^1.0.1",
+ "ripple-keypairs": "^2.0.0"
+ }
+ },
+ "node_modules/abitype": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/abitype/-/abitype-1.2.4.tgz",
+ "integrity": "sha512-dpKH+N27vRjarMVTFFkeY445VTKftzGWpL0FiT7xmVmzQRKazZexzC5uHG0f6XKsVLAuUlndnbGau6lRejClxg==",
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/sponsors/wevm"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.0.4",
+ "zod": "^3.22.0 || ^4.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ },
+ "zod": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/acorn": {
+ "version": "8.16.0",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz",
+ "integrity": "sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==",
+ "dev": true,
+ "license": "MIT",
+ "peer": true,
+ "bin": {
+ "acorn": "bin/acorn"
+ },
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/acorn-jsx": {
+ "version": "5.3.2",
+ "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
+ "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
+ "dev": true,
+ "license": "MIT",
+ "peerDependencies": {
+ "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
+ }
+ },
+ "node_modules/agent-base": {
+ "version": "7.1.4",
+ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz",
+ "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/agentkeepalive": {
+ "version": "4.6.0",
+ "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.6.0.tgz",
+ "integrity": "sha512-kja8j7PjmncONqaTsB8fQ+wE2mSU2DJ9D4XKoJ5PFWIdRMa6SLSN1ff4mOr4jCbfRSsxR4keIiySJU0N9T5hIQ==",
+ "license": "MIT",
+ "dependencies": {
+ "humanize-ms": "^1.2.1"
+ },
+ "engines": {
+ "node": ">= 8.0.0"
+ }
+ },
+ "node_modules/ajv": {
+ "version": "6.15.0",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.15.0.tgz",
+ "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==",
+ "dev": true,
+ "license": "MIT",
+ "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"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/epoberezkin"
+ }
+ },
+ "node_modules/ansi-regex": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/ansi-styles": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
+ "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/anymatch": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
+ "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
+ "license": "ISC",
+ "dependencies": {
+ "normalize-path": "^3.0.0",
+ "picomatch": "^2.0.4"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/argparse": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
+ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
+ "dev": true,
+ "license": "Python-2.0"
+ },
+ "node_modules/aria-hidden": {
+ "version": "1.2.6",
+ "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.6.tgz",
+ "integrity": "sha512-ik3ZgC9dY/lYVVM++OISsaYDeg1tb0VtP5uL3ouh1koGOaUMDPpbFIei4JkFimWUFPn90sbMNMXQAIVOlnYKJA==",
+ "license": "MIT",
+ "dependencies": {
+ "tslib": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/aria-query": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz",
+ "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "dequal": "^2.0.3"
+ }
+ },
+ "node_modules/array-buffer-byte-length": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz",
+ "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.3",
+ "is-array-buffer": "^3.0.5"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/array-includes": {
+ "version": "3.1.9",
+ "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz",
+ "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.8",
+ "call-bound": "^1.0.4",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.24.0",
+ "es-object-atoms": "^1.1.1",
+ "get-intrinsic": "^1.3.0",
+ "is-string": "^1.1.1",
+ "math-intrinsics": "^1.1.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/array.prototype.findlast": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz",
+ "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.2",
+ "es-errors": "^1.3.0",
+ "es-object-atoms": "^1.0.0",
+ "es-shim-unscopables": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/array.prototype.findlastindex": {
+ "version": "1.2.6",
+ "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz",
+ "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.8",
+ "call-bound": "^1.0.4",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.9",
+ "es-errors": "^1.3.0",
+ "es-object-atoms": "^1.1.1",
+ "es-shim-unscopables": "^1.1.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/array.prototype.flat": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz",
+ "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.8",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.5",
+ "es-shim-unscopables": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/array.prototype.flatmap": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz",
+ "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.8",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.5",
+ "es-shim-unscopables": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/array.prototype.tosorted": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz",
+ "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.3",
+ "es-errors": "^1.3.0",
+ "es-shim-unscopables": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/arraybuffer.prototype.slice": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz",
+ "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "array-buffer-byte-length": "^1.0.1",
+ "call-bind": "^1.0.8",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.5",
+ "es-errors": "^1.3.0",
+ "get-intrinsic": "^1.2.6",
+ "is-array-buffer": "^3.0.4"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/asn1.js": {
+ "version": "4.10.1",
+ "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz",
+ "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==",
+ "license": "MIT",
+ "dependencies": {
+ "bn.js": "^4.0.0",
+ "inherits": "^2.0.1",
+ "minimalistic-assert": "^1.0.0"
+ }
+ },
+ "node_modules/asn1.js/node_modules/bn.js": {
+ "version": "4.12.3",
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.3.tgz",
+ "integrity": "sha512-fGTi3gxV/23FTYdAoUtLYp6qySe2KE3teyZitipKNRuVYcBkoP/bB3guXN/XVKUe9mxCHXnc9C4ocyz8OmgN0g==",
+ "license": "MIT"
+ },
+ "node_modules/assertion-error": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz",
+ "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/ast-types-flow": {
+ "version": "0.0.8",
+ "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz",
+ "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/ast-v8-to-istanbul": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/ast-v8-to-istanbul/-/ast-v8-to-istanbul-1.0.2.tgz",
+ "integrity": "sha512-dKmJxJsGItLmc5CYZKuEjuG6GnBs6PG4gohMhyFOWKaNQoYCuRZJDECaBlHmcG0lv2wc2E0uU8lESmBEumC3DQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/trace-mapping": "^0.3.31",
+ "estree-walker": "^3.0.3",
+ "js-tokens": "^10.0.0"
+ }
+ },
+ "node_modules/ast-v8-to-istanbul/node_modules/js-tokens": {
+ "version": "10.0.0",
+ "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-10.0.0.tgz",
+ "integrity": "sha512-lM/UBzQmfJRo9ABXbPWemivdCW8V2G8FHaHdypQaIy523snUjog0W71ayWXTjiR+ixeMyVHN2XcpnTd/liPg/Q==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/async-function": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz",
+ "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/asynckit": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
+ "license": "MIT"
+ },
+ "node_modules/atomic-sleep": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/atomic-sleep/-/atomic-sleep-1.0.0.tgz",
+ "integrity": "sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=8.0.0"
+ }
+ },
+ "node_modules/available-typed-arrays": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz",
+ "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==",
+ "license": "MIT",
+ "dependencies": {
+ "possible-typed-array-names": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/axe-core": {
+ "version": "4.11.4",
+ "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.11.4.tgz",
+ "integrity": "sha512-KunSNx+TVpkAw/6ULfhnx+HWRecjqZGTOyquAoWHYLRSdK1tB5Ihce1ZW+UY3fj33bYAFWPu7W/GRSmmrCGuxA==",
+ "dev": true,
+ "license": "MPL-2.0",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/axios": {
+ "version": "1.16.0",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-1.16.0.tgz",
+ "integrity": "sha512-6hp5CwvTPlN2A31g5dxnwAX0orzM7pmCRDLnZSX772mv8WDqICwFjowHuPs04Mc8deIld1+ejhtaMn5vp6b+1w==",
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "follow-redirects": "^1.16.0",
+ "form-data": "^4.0.5",
+ "proxy-from-env": "^2.1.0"
+ }
+ },
+ "node_modules/axios-retry": {
+ "version": "4.5.0",
+ "resolved": "https://registry.npmjs.org/axios-retry/-/axios-retry-4.5.0.tgz",
+ "integrity": "sha512-aR99oXhpEDGo0UuAlYcn2iGRds30k366Zfa05XWScR9QaQD4JYiP3/1Qt1u7YlefUOK+cn0CcwoL1oefavQUlQ==",
+ "license": "Apache-2.0",
+ "optional": true,
+ "dependencies": {
+ "is-retry-allowed": "^2.2.0"
+ },
+ "peerDependencies": {
+ "axios": "0.x || 1.x"
+ }
+ },
+ "node_modules/axobject-query": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz",
+ "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/balanced-match": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
+ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/bare-addon-resolve": {
+ "version": "1.10.0",
+ "resolved": "https://registry.npmjs.org/bare-addon-resolve/-/bare-addon-resolve-1.10.0.tgz",
+ "integrity": "sha512-sSd0jieRJlDaODOzj0oe0RjFVC1QI0ZIjGIdPkbrTXsdVVtENg14c+lHHAhHwmWCZ2nQlMhy8jA3Y5LYPc/isA==",
+ "license": "Apache-2.0",
+ "optional": true,
+ "dependencies": {
+ "bare-module-resolve": "^1.10.0",
+ "bare-semver": "^1.0.0"
+ },
+ "peerDependencies": {
+ "bare-url": "*"
+ },
+ "peerDependenciesMeta": {
+ "bare-url": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/bare-module-resolve": {
+ "version": "1.12.2",
+ "resolved": "https://registry.npmjs.org/bare-module-resolve/-/bare-module-resolve-1.12.2.tgz",
+ "integrity": "sha512-j+hiD5k99qec4KjJvYsI67q5AOBifmy9JG3oeMVxTmvrhn2sIdp8StrUvZu4YNgwTpO+NhniQG16N1ETDe1k5w==",
+ "license": "Apache-2.0",
+ "optional": true,
+ "dependencies": {
+ "bare-semver": "^1.0.0"
+ },
+ "peerDependencies": {
+ "bare-url": "*"
+ },
+ "peerDependenciesMeta": {
+ "bare-url": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/bare-semver": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/bare-semver/-/bare-semver-1.0.3.tgz",
+ "integrity": "sha512-HS/A30bi2+PiRJfU6R4+Kp+6KeLSCSByjYM2iiobOKzLAvtu1CT+S8xWfiU7wz0erknjkUoC+yXy108tzIuP5Q==",
+ "license": "Apache-2.0",
+ "optional": true
+ },
+ "node_modules/base-x": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/base-x/-/base-x-5.0.1.tgz",
+ "integrity": "sha512-M7uio8Zt++eg3jPj+rHMfCC+IuygQHHCOU+IYsVtik6FWjuYpVt/+MRKcgsAMHh8mMFAwnB+Bs+mTrFiXjMzKg==",
+ "license": "MIT"
+ },
+ "node_modules/base32.js": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/base32.js/-/base32.js-0.1.0.tgz",
+ "integrity": "sha512-n3TkB02ixgBOhTvANakDb4xaMXnYUVkNoRFJjQflcqMQhyEKxEHdj3E6N8t8sUQ0mjH/3/JxzlXuz3ul/J90pQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.12.0"
+ }
+ },
+ "node_modules/base64-js": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
+ "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/baseline-browser-mapping": {
+ "version": "2.10.32",
+ "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.32.tgz",
+ "integrity": "sha512-wbPvpyjJPC0zdfdKXxqEL3Ea+bOMD/87X4lftiJkkaBiuG6ALQy1SLmEd7BSmVCuwCQsBrCamgBoLyfFDD1EPg==",
+ "license": "Apache-2.0",
+ "bin": {
+ "baseline-browser-mapping": "dist/cli.cjs"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/bech32": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/bech32/-/bech32-2.0.0.tgz",
+ "integrity": "sha512-LcknSilhIGatDAsY1ak2I8VtGaHNhgMSYVxFrGLXv+xLHytaKZKcaUJJUE7qmBr7h33o5YQwP55pMI0xmkpJwg==",
+ "license": "MIT"
+ },
+ "node_modules/big-integer": {
+ "version": "1.6.36",
+ "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.36.tgz",
+ "integrity": "sha512-t70bfa7HYEA1D9idDbmuv7YbsbVkQ+Hp+8KFSul4aE5e/i1bjCNIRYJZlA8Q8p0r9T8cF/RVvwUgRA//FydEyg==",
+ "license": "Unlicense",
+ "engines": {
+ "node": ">=0.6"
+ }
+ },
+ "node_modules/big.js": {
+ "version": "6.2.2",
+ "resolved": "https://registry.npmjs.org/big.js/-/big.js-6.2.2.tgz",
+ "integrity": "sha512-y/ie+Faknx7sZA5MfGA2xKlu0GDv8RWrXGsmlteyJQ2lvoKv9GBK/fpRMc2qlSoBAgNxrixICFCBefIq8WCQpQ==",
+ "license": "MIT",
+ "engines": {
+ "node": "*"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/bigjs"
+ }
+ },
+ "node_modules/bignumber.js": {
+ "version": "9.3.1",
+ "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.3.1.tgz",
+ "integrity": "sha512-Ko0uX15oIUS7wJ3Rb30Fs6SkVbLmPBAKdlm7q9+ak9bbIeFf0MwuBsQV6z7+X768/cHsfg+WlysDWJcmthjsjQ==",
+ "license": "MIT",
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/bindings": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz",
+ "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
+ "license": "MIT",
+ "dependencies": {
+ "file-uri-to-path": "1.0.0"
+ }
+ },
+ "node_modules/bip32-path": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/bip32-path/-/bip32-path-0.4.2.tgz",
+ "integrity": "sha512-ZBMCELjJfcNMkz5bDuJ1WrYvjlhEF5k6mQ8vUr4N7MbVRsXei7ZOg8VhhwMfNiW68NWmLkgkc6WvTickrLGprQ==",
+ "license": "MIT"
+ },
+ "node_modules/bip66": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/bip66/-/bip66-2.0.0.tgz",
+ "integrity": "sha512-kBG+hSpgvZBrkIm9dt5T1Hd/7xGCPEX2npoxAWZfsK1FvjgaxySEh2WizjyIstWXriKo9K9uJ4u0OnsyLDUPXQ==",
+ "license": "MIT"
+ },
+ "node_modules/bitcoin-ops": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/bitcoin-ops/-/bitcoin-ops-1.4.1.tgz",
+ "integrity": "sha512-pef6gxZFztEhaE9RY9HmWVmiIHqCb2OyS4HPKkpc6CIiiOa3Qmuoylxc5P2EkU3w+5eTSifI9SEZC88idAIGow==",
+ "license": "MIT"
+ },
+ "node_modules/blake-hash": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/blake-hash/-/blake-hash-2.0.0.tgz",
+ "integrity": "sha512-Igj8YowDu1PRkRsxZA7NVkdFNxH5rKv5cpLxQ0CVXSIA77pVYwCPRQJ2sMew/oneUpfuYRyjG6r8SmmmnbZb1w==",
+ "hasInstallScript": true,
+ "license": "MIT",
+ "dependencies": {
+ "node-addon-api": "^3.0.0",
+ "node-gyp-build": "^4.2.2",
+ "readable-stream": "^3.6.0"
+ },
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/blakejs": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.2.1.tgz",
+ "integrity": "sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==",
+ "license": "MIT"
+ },
+ "node_modules/bn.js": {
+ "version": "5.2.3",
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.3.tgz",
+ "integrity": "sha512-EAcmnPkxpntVL+DS7bO1zhcZNvCkxqtkd0ZY53h06GNQ3DEkkGZ/gKgmDv6DdZQGj9BgfSPKtJJ7Dp1GPP8f7w==",
+ "license": "MIT"
+ },
+ "node_modules/borsh": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/borsh/-/borsh-2.0.0.tgz",
+ "integrity": "sha512-kc9+BgR3zz9+cjbwM8ODoUB4fs3X3I5A/HtX7LZKxCLaMrEeDFoBpnhZY//DTS1VZBSs6S5v46RZRbZjRFspEg==",
+ "license": "Apache-2.0"
+ },
+ "node_modules/brace-expansion": {
+ "version": "1.1.15",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.15.tgz",
+ "integrity": "sha512-EwOCDEex4quD37XhqM3omwtMoJjr//isUZz1JopUNWms+4Z2ViyM/k1YIRePpoVNnQhENnxtFjLaxNHrT7xIUg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/braces": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "fill-range": "^7.1.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/brorand": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
+ "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==",
+ "license": "MIT"
+ },
+ "node_modules/browserify-aes": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
+ "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
+ "license": "MIT",
+ "dependencies": {
+ "buffer-xor": "^1.0.3",
+ "cipher-base": "^1.0.0",
+ "create-hash": "^1.1.0",
+ "evp_bytestokey": "^1.0.3",
+ "inherits": "^2.0.1",
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "node_modules/browserify-cipher": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz",
+ "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==",
+ "license": "MIT",
+ "dependencies": {
+ "browserify-aes": "^1.0.4",
+ "browserify-des": "^1.0.0",
+ "evp_bytestokey": "^1.0.0"
+ }
+ },
+ "node_modules/browserify-des": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz",
+ "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==",
+ "license": "MIT",
+ "dependencies": {
+ "cipher-base": "^1.0.1",
+ "des.js": "^1.0.0",
+ "inherits": "^2.0.1",
+ "safe-buffer": "^5.1.2"
+ }
+ },
+ "node_modules/browserify-rsa": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.1.tgz",
+ "integrity": "sha512-YBjSAiTqM04ZVei6sXighu679a3SqWORA3qZTEqZImnlkDIFtKc6pNutpjyZ8RJTjQtuYfeetkxM11GwoYXMIQ==",
+ "license": "MIT",
+ "dependencies": {
+ "bn.js": "^5.2.1",
+ "randombytes": "^2.1.0",
+ "safe-buffer": "^5.2.1"
+ },
+ "engines": {
+ "node": ">= 0.10"
+ }
+ },
+ "node_modules/browserify-sign": {
+ "version": "4.2.6",
+ "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.6.tgz",
+ "integrity": "sha512-sd+Q65fjlWCYWtZKXiKfrUc8d+4jtp/8f0W2NkwzLtoW4bI6UDnWusLWIurHnmurW0XShIRxpwiOX4EoPtXUAg==",
+ "license": "ISC",
+ "dependencies": {
+ "bn.js": "^5.2.3",
+ "browserify-rsa": "^4.1.1",
+ "create-hash": "^1.2.0",
+ "create-hmac": "^1.1.7",
+ "elliptic": "^6.6.1",
+ "inherits": "^2.0.4",
+ "parse-asn1": "^5.1.9",
+ "readable-stream": "^2.3.8",
+ "safe-buffer": "^5.2.1"
+ },
+ "engines": {
+ "node": ">= 0.10"
+ }
+ },
+ "node_modules/browserify-sign/node_modules/isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==",
+ "license": "MIT"
+ },
+ "node_modules/browserify-sign/node_modules/readable-stream": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
+ "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
+ "license": "MIT",
+ "dependencies": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.3",
+ "isarray": "~1.0.0",
+ "process-nextick-args": "~2.0.0",
+ "safe-buffer": "~5.1.1",
+ "string_decoder": "~1.1.1",
+ "util-deprecate": "~1.0.1"
+ }
+ },
+ "node_modules/browserify-sign/node_modules/readable-stream/node_modules/safe-buffer": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
+ "license": "MIT"
+ },
+ "node_modules/browserify-sign/node_modules/string_decoder": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+ "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+ "license": "MIT",
+ "dependencies": {
+ "safe-buffer": "~5.1.0"
+ }
+ },
+ "node_modules/browserify-sign/node_modules/string_decoder/node_modules/safe-buffer": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
+ "license": "MIT"
+ },
+ "node_modules/browserslist": {
+ "version": "4.28.2",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.2.tgz",
+ "integrity": "sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "baseline-browser-mapping": "^2.10.12",
+ "caniuse-lite": "^1.0.30001782",
+ "electron-to-chromium": "^1.5.328",
+ "node-releases": "^2.0.36",
+ "update-browserslist-db": "^1.2.3"
+ },
+ "bin": {
+ "browserslist": "cli.js"
+ },
+ "engines": {
+ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
+ }
+ },
+ "node_modules/bs58": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/bs58/-/bs58-6.0.0.tgz",
+ "integrity": "sha512-PD0wEnEYg6ijszw/u8s+iI3H17cTymlrwkKhDhPZq+Sokl3AU4htyBFTjAeNAlCCmg0f53g6ih3jATyCKftTfw==",
+ "license": "MIT",
+ "dependencies": {
+ "base-x": "^5.0.0"
+ }
+ },
+ "node_modules/bs58check": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-4.0.0.tgz",
+ "integrity": "sha512-FsGDOnFg9aVI9erdriULkd/JjEWONV/lQE5aYziB5PoBsXRind56lh8doIZIc9X4HoxT5x4bLjMWN1/NB8Zp5g==",
+ "license": "MIT",
+ "dependencies": {
+ "@noble/hashes": "^1.2.0",
+ "bs58": "^6.0.0"
+ }
+ },
+ "node_modules/buffer": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz",
+ "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "base64-js": "^1.3.1",
+ "ieee754": "^1.2.1"
+ }
+ },
+ "node_modules/buffer-equal-constant-time": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz",
+ "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==",
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/buffer-xor": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
+ "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==",
+ "license": "MIT"
+ },
+ "node_modules/call-bind": {
+ "version": "1.0.9",
+ "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.9.tgz",
+ "integrity": "sha512-a/hy+pNsFUTR+Iz8TCJvXudKVLAnz/DyeSUo10I5yvFDQJBFU2s9uqQpoSrJlroHUKoKqzg+epxyP9lqFdzfBQ==",
+ "license": "MIT",
+ "dependencies": {
+ "call-bind-apply-helpers": "^1.0.2",
+ "es-define-property": "^1.0.1",
+ "get-intrinsic": "^1.3.0",
+ "set-function-length": "^1.2.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/call-bind-apply-helpers": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
+ "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
+ "license": "MIT",
+ "dependencies": {
+ "es-errors": "^1.3.0",
+ "function-bind": "^1.1.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/call-bound": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz",
+ "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==",
+ "license": "MIT",
+ "dependencies": {
+ "call-bind-apply-helpers": "^1.0.2",
+ "get-intrinsic": "^1.3.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/callsites": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/camelcase": {
+ "version": "5.3.1",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
+ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/caniuse-lite": {
+ "version": "1.0.30001793",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001793.tgz",
+ "integrity": "sha512-iwSsYWaCOoh26cV8NwNRViHlrfUvYsHDfRVcbtmw0Kg6PJIZZXwMkj1442FYLBGkeUf1juAsU3DTfxW579mrPA==",
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "license": "CC-BY-4.0"
+ },
+ "node_modules/cashaddrjs": {
+ "version": "0.4.4",
+ "resolved": "https://registry.npmjs.org/cashaddrjs/-/cashaddrjs-0.4.4.tgz",
+ "integrity": "sha512-xZkuWdNOh0uq/mxJIng6vYWfTowZLd9F4GMAlp2DwFHlcCqCm91NtuAc47RuV4L7r4PYcY5p6Cr2OKNb4hnkWA==",
+ "license": "MIT",
+ "dependencies": {
+ "big-integer": "1.6.36"
+ }
+ },
+ "node_modules/cbor": {
+ "version": "10.0.12",
+ "resolved": "https://registry.npmjs.org/cbor/-/cbor-10.0.12.tgz",
+ "integrity": "sha512-exQDevYd7ZQLP4moMQcZkKCVZsXLAtUSflObr3xTh4xzFIv/xBCdvCd6L259kQOUP2kcTC0jvC6PpZIf/WmRXA==",
+ "license": "MIT",
+ "dependencies": {
+ "nofilter": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=20"
+ }
+ },
+ "node_modules/chai": {
+ "version": "6.2.2",
+ "resolved": "https://registry.npmjs.org/chai/-/chai-6.2.2.tgz",
+ "integrity": "sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/chalk": {
+ "version": "5.6.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz",
+ "integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==",
+ "license": "MIT",
+ "engines": {
+ "node": "^12.17.0 || ^14.13 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/charenc": {
+ "version": "0.0.2",
+ "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz",
+ "integrity": "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==",
+ "license": "BSD-3-Clause",
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/chokidar": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-5.0.0.tgz",
+ "integrity": "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==",
+ "license": "MIT",
+ "dependencies": {
+ "readdirp": "^5.0.0"
+ },
+ "engines": {
+ "node": ">= 20.19.0"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/cipher-base": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.7.tgz",
+ "integrity": "sha512-Mz9QMT5fJe7bKI7MH31UilT5cEK5EHHRCccw/YRFsRY47AuNgaV6HY3rscp0/I4Q+tTW/5zoqpSeRRI54TkDWA==",
+ "license": "MIT",
+ "dependencies": {
+ "inherits": "^2.0.4",
+ "safe-buffer": "^5.2.1",
+ "to-buffer": "^1.2.2"
+ },
+ "engines": {
+ "node": ">= 0.10"
+ }
+ },
+ "node_modules/class-variance-authority": {
+ "version": "0.7.1",
+ "resolved": "https://registry.npmjs.org/class-variance-authority/-/class-variance-authority-0.7.1.tgz",
+ "integrity": "sha512-Ka+9Trutv7G8M6WT6SeiRWz792K5qEqIGEGzXKhAE6xOWAY6pPH8U+9IY3oCMv6kqTmLsv7Xh/2w2RigkePMsg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "clsx": "^2.1.1"
+ },
+ "funding": {
+ "url": "https://polar.sh/cva"
+ }
+ },
+ "node_modules/client-only": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz",
+ "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==",
+ "license": "MIT"
+ },
+ "node_modules/cliui": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
+ "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
+ "license": "ISC",
+ "dependencies": {
+ "string-width": "^4.2.0",
+ "strip-ansi": "^6.0.0",
+ "wrap-ansi": "^6.2.0"
+ }
+ },
+ "node_modules/clsx": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz",
+ "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "license": "MIT",
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "license": "MIT"
+ },
+ "node_modules/combined-stream": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
+ "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
+ "license": "MIT",
+ "dependencies": {
+ "delayed-stream": "~1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/commander": {
+ "version": "14.0.2",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-14.0.2.tgz",
+ "integrity": "sha512-TywoWNNRbhoD0BXs1P3ZEScW8W5iKrnbithIl0YH+uCmBd0QpPOA8yc82DS3BIE5Ma6FnBVUsJ7wVUDz4dvOWQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=20"
+ }
+ },
+ "node_modules/concat-map": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/convert-source-map": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/cookie-es": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-1.2.3.tgz",
+ "integrity": "sha512-lXVyvUvrNXblMqzIRrxHb57UUVmqsSWlxqt3XIjCkUP0wDAf6uicO6KMbEgYrMNtEvWgWHwe42CKxPu9MYAnWw==",
+ "license": "MIT"
+ },
+ "node_modules/core-util-is": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
+ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==",
+ "license": "MIT"
+ },
+ "node_modules/create-ecdh": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz",
+ "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==",
+ "license": "MIT",
+ "dependencies": {
+ "bn.js": "^4.1.0",
+ "elliptic": "^6.5.3"
+ }
+ },
+ "node_modules/create-ecdh/node_modules/bn.js": {
+ "version": "4.12.3",
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.3.tgz",
+ "integrity": "sha512-fGTi3gxV/23FTYdAoUtLYp6qySe2KE3teyZitipKNRuVYcBkoP/bB3guXN/XVKUe9mxCHXnc9C4ocyz8OmgN0g==",
+ "license": "MIT"
+ },
+ "node_modules/create-hash": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
+ "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
+ "license": "MIT",
+ "dependencies": {
+ "cipher-base": "^1.0.1",
+ "inherits": "^2.0.1",
+ "md5.js": "^1.3.4",
+ "ripemd160": "^2.0.1",
+ "sha.js": "^2.4.0"
+ }
+ },
+ "node_modules/create-hmac": {
+ "version": "1.1.7",
+ "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
+ "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
+ "license": "MIT",
+ "dependencies": {
+ "cipher-base": "^1.0.3",
+ "create-hash": "^1.1.0",
+ "inherits": "^2.0.1",
+ "ripemd160": "^2.0.0",
+ "safe-buffer": "^5.0.1",
+ "sha.js": "^2.4.8"
+ }
+ },
+ "node_modules/cross-fetch": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.1.0.tgz",
+ "integrity": "sha512-uKm5PU+MHTootlWEY+mZ4vvXoCn4fLQxT9dSc1sXVMSFkINTJVN8cAQROpwcKm8bJ/c7rgZVIBWzH5T78sNZZw==",
+ "license": "MIT",
+ "dependencies": {
+ "node-fetch": "^2.7.0"
+ }
+ },
+ "node_modules/cross-spawn": {
+ "version": "7.0.6",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
+ "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "path-key": "^3.1.0",
+ "shebang-command": "^2.0.0",
+ "which": "^2.0.1"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/crossws": {
+ "version": "0.3.5",
+ "resolved": "https://registry.npmjs.org/crossws/-/crossws-0.3.5.tgz",
+ "integrity": "sha512-ojKiDvcmByhwa8YYqbQI/hg7MEU0NC03+pSdEq4ZUnZR9xXpwk7E43SMNGkn+JxJGPFtNvQ48+vV2p+P1ml5PA==",
+ "license": "MIT",
+ "dependencies": {
+ "uncrypto": "^0.1.3"
+ }
+ },
+ "node_modules/crypt": {
+ "version": "0.0.2",
+ "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz",
+ "integrity": "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==",
+ "license": "BSD-3-Clause",
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/crypto-browserify": {
+ "version": "3.12.0",
+ "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz",
+ "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==",
+ "license": "MIT",
+ "dependencies": {
+ "browserify-cipher": "^1.0.0",
+ "browserify-sign": "^4.0.0",
+ "create-ecdh": "^4.0.0",
+ "create-hash": "^1.1.0",
+ "create-hmac": "^1.1.0",
+ "diffie-hellman": "^5.0.0",
+ "inherits": "^2.0.1",
+ "pbkdf2": "^3.0.3",
+ "public-encrypt": "^4.0.0",
+ "randombytes": "^2.0.0",
+ "randomfill": "^1.0.3"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/css.escape": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz",
+ "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/cssstyle": {
+ "version": "4.6.0",
+ "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.6.0.tgz",
+ "integrity": "sha512-2z+rWdzbbSZv6/rhtvzvqeZQHrBaqgogqt85sqFNbabZOuFbCVFb8kPeEtZjiKkbrm395irpNKiYeFeLiQnFPg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@asamuzakjp/css-color": "^3.2.0",
+ "rrweb-cssom": "^0.8.0"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/csstype": {
+ "version": "3.2.3",
+ "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz",
+ "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==",
+ "license": "MIT"
+ },
+ "node_modules/d3-array": {
+ "version": "3.2.4",
+ "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz",
+ "integrity": "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==",
+ "license": "ISC",
+ "dependencies": {
+ "internmap": "1 - 2"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/d3-color": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz",
+ "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==",
+ "license": "ISC",
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/d3-ease": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz",
+ "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==",
+ "license": "BSD-3-Clause",
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/d3-format": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.2.tgz",
+ "integrity": "sha512-AJDdYOdnyRDV5b6ArilzCPPwc1ejkHcoyFarqlPqT7zRYjhavcT3uSrqcMvsgh2CgoPbK3RCwyHaVyxYcP2Arg==",
+ "license": "ISC",
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/d3-interpolate": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz",
+ "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==",
+ "license": "ISC",
+ "dependencies": {
+ "d3-color": "1 - 3"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/d3-path": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz",
+ "integrity": "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==",
+ "license": "ISC",
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/d3-scale": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz",
+ "integrity": "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==",
+ "license": "ISC",
+ "dependencies": {
+ "d3-array": "2.10.0 - 3",
+ "d3-format": "1 - 3",
+ "d3-interpolate": "1.2.0 - 3",
+ "d3-time": "2.1.1 - 3",
+ "d3-time-format": "2 - 4"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/d3-shape": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz",
+ "integrity": "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==",
+ "license": "ISC",
+ "dependencies": {
+ "d3-path": "^3.1.0"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/d3-time": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz",
+ "integrity": "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==",
+ "license": "ISC",
+ "dependencies": {
+ "d3-array": "2 - 3"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/d3-time-format": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz",
+ "integrity": "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==",
+ "license": "ISC",
+ "dependencies": {
+ "d3-time": "1 - 3"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/d3-timer": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz",
+ "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==",
+ "license": "ISC",
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/damerau-levenshtein": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz",
+ "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==",
+ "dev": true,
+ "license": "BSD-2-Clause"
+ },
+ "node_modules/data-urls": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-5.0.0.tgz",
+ "integrity": "sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "whatwg-mimetype": "^4.0.0",
+ "whatwg-url": "^14.0.0"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/data-view-buffer": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz",
+ "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.3",
+ "es-errors": "^1.3.0",
+ "is-data-view": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/data-view-byte-length": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz",
+ "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.3",
+ "es-errors": "^1.3.0",
+ "is-data-view": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/inspect-js"
+ }
+ },
+ "node_modules/data-view-byte-offset": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz",
+ "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.2",
+ "es-errors": "^1.3.0",
+ "is-data-view": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/date-fns": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.3.0.tgz",
+ "integrity": "sha512-OYcL+3N/jyWbYdFGqoMAhytDgxP9pbYPUUiRCOgn4Fewaadk9l/Wam4Avciiyp2BgkpfQyBV9B+ehnVJych+eQ==",
+ "license": "MIT",
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/kossnocorp"
+ }
+ },
+ "node_modules/dayjs": {
+ "version": "1.11.13",
+ "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz",
+ "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==",
+ "license": "MIT"
+ },
+ "node_modules/debug": {
+ "version": "4.4.3",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
+ "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
+ "license": "MIT",
+ "dependencies": {
+ "ms": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/decamelize": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
+ "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/decimal.js": {
+ "version": "10.6.0",
+ "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz",
+ "integrity": "sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/decimal.js-light": {
+ "version": "2.5.1",
+ "resolved": "https://registry.npmjs.org/decimal.js-light/-/decimal.js-light-2.5.1.tgz",
+ "integrity": "sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg==",
+ "license": "MIT"
+ },
+ "node_modules/deep-is": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
+ "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/define-data-property": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz",
+ "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==",
+ "license": "MIT",
+ "dependencies": {
+ "es-define-property": "^1.0.0",
+ "es-errors": "^1.3.0",
+ "gopd": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/define-properties": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz",
+ "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "define-data-property": "^1.0.1",
+ "has-property-descriptors": "^1.0.0",
+ "object-keys": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/defu": {
+ "version": "6.1.7",
+ "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.7.tgz",
+ "integrity": "sha512-7z22QmUWiQ/2d0KkdYmANbRUVABpZ9SNYyH5vx6PZ+nE5bcC0l7uFvEfHlyld/HcGBFTL536ClDt3DEcSlEJAQ==",
+ "license": "MIT"
+ },
+ "node_modules/delay": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/delay/-/delay-5.0.0.tgz",
+ "integrity": "sha512-ReEBKkIfe4ya47wlPYf/gu5ib6yUG0/Aez0JQZQz94kiWtRQvZIQbTiehsnwHvLSWJnQdhVeqYue7Id1dKr0qw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/delayed-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+ "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/depd": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
+ "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/dequal": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz",
+ "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/des.js": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.1.0.tgz",
+ "integrity": "sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==",
+ "license": "MIT",
+ "dependencies": {
+ "inherits": "^2.0.1",
+ "minimalistic-assert": "^1.0.0"
+ }
+ },
+ "node_modules/destr": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/destr/-/destr-2.0.5.tgz",
+ "integrity": "sha512-ugFTXCtDZunbzasqBxrK93Ik/DRYsO6S/fedkWEMKqt04xZ4csmnmwGDBAb07QWNaGMAmnTIemsYZCksjATwsA==",
+ "license": "MIT"
+ },
+ "node_modules/detect-browser": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/detect-browser/-/detect-browser-5.3.0.tgz",
+ "integrity": "sha512-53rsFbGdwMwlF7qvCt0ypLM5V5/Mbl0szB7GPN8y9NCcbknYOeVVXdrXEq+90IwAfrrzt6Hd+u2E2ntakICU8w==",
+ "license": "MIT"
+ },
+ "node_modules/detect-europe-js": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/detect-europe-js/-/detect-europe-js-0.1.2.tgz",
+ "integrity": "sha512-lgdERlL3u0aUdHocoouzT10d9I89VVhk0qNRmll7mXdGfJT1/wqZ2ZLA4oJAjeACPY5fT1wsbq2AT+GkuInsow==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/faisalman"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/ua-parser-js"
+ },
+ {
+ "type": "paypal",
+ "url": "https://paypal.me/faisalman"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/detect-libc": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz",
+ "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==",
+ "devOptional": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/detect-node-es": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz",
+ "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==",
+ "license": "MIT"
+ },
+ "node_modules/diffie-hellman": {
+ "version": "5.0.3",
+ "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
+ "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
+ "license": "MIT",
+ "dependencies": {
+ "bn.js": "^4.1.0",
+ "miller-rabin": "^4.0.0",
+ "randombytes": "^2.0.0"
+ }
+ },
+ "node_modules/diffie-hellman/node_modules/bn.js": {
+ "version": "4.12.3",
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.3.tgz",
+ "integrity": "sha512-fGTi3gxV/23FTYdAoUtLYp6qySe2KE3teyZitipKNRuVYcBkoP/bB3guXN/XVKUe9mxCHXnc9C4ocyz8OmgN0g==",
+ "license": "MIT"
+ },
+ "node_modules/dijkstrajs": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.3.tgz",
+ "integrity": "sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA==",
+ "license": "MIT"
+ },
+ "node_modules/doctrine": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
+ "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "esutils": "^2.0.2"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/dom-accessibility-api": {
+ "version": "0.5.16",
+ "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz",
+ "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/dunder-proto": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
+ "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
+ "license": "MIT",
+ "dependencies": {
+ "call-bind-apply-helpers": "^1.0.1",
+ "es-errors": "^1.3.0",
+ "gopd": "^1.2.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/ecdsa-sig-formatter": {
+ "version": "1.0.11",
+ "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz",
+ "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "node_modules/electron-to-chromium": {
+ "version": "1.5.363",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.363.tgz",
+ "integrity": "sha512-VjUKPyWzGnT1fujlkEGC/BvN70Hh70KXtAqcmniXviYlJC/ivcT+BWGPyxWVbJZLfvtKR6dqg1L7T7pgAMBtWA==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/elliptic": {
+ "version": "6.6.1",
+ "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz",
+ "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==",
+ "license": "MIT",
+ "dependencies": {
+ "bn.js": "^4.11.9",
+ "brorand": "^1.1.0",
+ "hash.js": "^1.0.0",
+ "hmac-drbg": "^1.0.1",
+ "inherits": "^2.0.4",
+ "minimalistic-assert": "^1.0.1",
+ "minimalistic-crypto-utils": "^1.0.1"
+ }
+ },
+ "node_modules/elliptic/node_modules/bn.js": {
+ "version": "4.12.3",
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.3.tgz",
+ "integrity": "sha512-fGTi3gxV/23FTYdAoUtLYp6qySe2KE3teyZitipKNRuVYcBkoP/bB3guXN/XVKUe9mxCHXnc9C4ocyz8OmgN0g==",
+ "license": "MIT"
+ },
+ "node_modules/emoji-regex": {
+ "version": "9.2.2",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
+ "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/encode-utf8": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/encode-utf8/-/encode-utf8-1.0.3.tgz",
+ "integrity": "sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw==",
+ "license": "MIT"
+ },
+ "node_modules/enhanced-resolve": {
+ "version": "5.22.0",
+ "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.22.0.tgz",
+ "integrity": "sha512-xYcDWrpELkFzz9SpZ3PlI6Eu6eD93Yf0WLDRxikGhWJ3MAir2SNZTIVCVZqZ/NUyx8AdMc2gT9C0gPiw18kG+A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "graceful-fs": "^4.2.4",
+ "tapable": "^2.3.3"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
+ "node_modules/entities": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz",
+ "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": ">=0.12"
+ },
+ "funding": {
+ "url": "https://github.com/fb55/entities?sponsor=1"
+ }
+ },
+ "node_modules/es-abstract": {
+ "version": "1.24.2",
+ "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.2.tgz",
+ "integrity": "sha512-2FpH9Q5i2RRwyEP1AylXe6nYLR5OhaJTZwmlcP0dL/+JCbgg7yyEo/sEK6HeGZRf3dFpWwThaRHVApXSkW3xeg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "array-buffer-byte-length": "^1.0.2",
+ "arraybuffer.prototype.slice": "^1.0.4",
+ "available-typed-arrays": "^1.0.7",
+ "call-bind": "^1.0.8",
+ "call-bound": "^1.0.4",
+ "data-view-buffer": "^1.0.2",
+ "data-view-byte-length": "^1.0.2",
+ "data-view-byte-offset": "^1.0.1",
+ "es-define-property": "^1.0.1",
+ "es-errors": "^1.3.0",
+ "es-object-atoms": "^1.1.1",
+ "es-set-tostringtag": "^2.1.0",
+ "es-to-primitive": "^1.3.0",
+ "function.prototype.name": "^1.1.8",
+ "get-intrinsic": "^1.3.0",
+ "get-proto": "^1.0.1",
+ "get-symbol-description": "^1.1.0",
+ "globalthis": "^1.0.4",
+ "gopd": "^1.2.0",
+ "has-property-descriptors": "^1.0.2",
+ "has-proto": "^1.2.0",
+ "has-symbols": "^1.1.0",
+ "hasown": "^2.0.2",
+ "internal-slot": "^1.1.0",
+ "is-array-buffer": "^3.0.5",
+ "is-callable": "^1.2.7",
+ "is-data-view": "^1.0.2",
+ "is-negative-zero": "^2.0.3",
+ "is-regex": "^1.2.1",
+ "is-set": "^2.0.3",
+ "is-shared-array-buffer": "^1.0.4",
+ "is-string": "^1.1.1",
+ "is-typed-array": "^1.1.15",
+ "is-weakref": "^1.1.1",
+ "math-intrinsics": "^1.1.0",
+ "object-inspect": "^1.13.4",
+ "object-keys": "^1.1.1",
+ "object.assign": "^4.1.7",
+ "own-keys": "^1.0.1",
+ "regexp.prototype.flags": "^1.5.4",
+ "safe-array-concat": "^1.1.3",
+ "safe-push-apply": "^1.0.0",
+ "safe-regex-test": "^1.1.0",
+ "set-proto": "^1.0.0",
+ "stop-iteration-iterator": "^1.1.0",
+ "string.prototype.trim": "^1.2.10",
+ "string.prototype.trimend": "^1.0.9",
+ "string.prototype.trimstart": "^1.0.8",
+ "typed-array-buffer": "^1.0.3",
+ "typed-array-byte-length": "^1.0.3",
+ "typed-array-byte-offset": "^1.0.4",
+ "typed-array-length": "^1.0.7",
+ "unbox-primitive": "^1.1.0",
+ "which-typed-array": "^1.1.19"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/es-define-property": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
+ "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/es-errors": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
+ "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/es-iterator-helpers": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.3.2.tgz",
+ "integrity": "sha512-HVLACW1TppGYjJ8H6/jqH/pqOtKRw6wMlrB23xfExmFWxFquAIWCmwoLsOyN96K4a5KbmOf5At9ZUO3GZbetAw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.9",
+ "call-bound": "^1.0.4",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.24.2",
+ "es-errors": "^1.3.0",
+ "es-set-tostringtag": "^2.1.0",
+ "function-bind": "^1.1.2",
+ "get-intrinsic": "^1.3.0",
+ "globalthis": "^1.0.4",
+ "gopd": "^1.2.0",
+ "has-property-descriptors": "^1.0.2",
+ "has-proto": "^1.2.0",
+ "has-symbols": "^1.1.0",
+ "internal-slot": "^1.1.0",
+ "iterator.prototype": "^1.1.5",
+ "math-intrinsics": "^1.1.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/es-module-lexer": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-2.1.0.tgz",
+ "integrity": "sha512-n27zTYMjYu1aj4MjCWzSP7G9r75utsaoc8m61weK+W8JMBGGQybd43GstCXZ3WNmSFtGT9wi59qQTW6mhTR5LQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/es-object-atoms": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.2.tgz",
+ "integrity": "sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw==",
+ "license": "MIT",
+ "dependencies": {
+ "es-errors": "^1.3.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/es-set-tostringtag": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz",
+ "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==",
+ "license": "MIT",
+ "dependencies": {
+ "es-errors": "^1.3.0",
+ "get-intrinsic": "^1.2.6",
+ "has-tostringtag": "^1.0.2",
+ "hasown": "^2.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/es-shim-unscopables": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz",
+ "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "hasown": "^2.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/es-to-primitive": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz",
+ "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "is-callable": "^1.2.7",
+ "is-date-object": "^1.0.5",
+ "is-symbol": "^1.0.4"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/es-toolkit": {
+ "version": "1.39.3",
+ "resolved": "https://registry.npmjs.org/es-toolkit/-/es-toolkit-1.39.3.tgz",
+ "integrity": "sha512-Qb/TCFCldgOy8lZ5uC7nLGdqJwSabkQiYQShmw4jyiPk1pZzaYWTwaYKYP7EgLccWYgZocMrtItrwh683voaww==",
+ "license": "MIT",
+ "workspaces": [
+ "docs",
+ "benchmarks"
+ ]
+ },
+ "node_modules/es6-promise": {
+ "version": "4.2.8",
+ "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz",
+ "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==",
+ "license": "MIT"
+ },
+ "node_modules/es6-promisify": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz",
+ "integrity": "sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ==",
+ "license": "MIT",
+ "dependencies": {
+ "es6-promise": "^4.0.3"
+ }
+ },
+ "node_modules/escalade": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
+ "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/escape-string-regexp": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
+ "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/eslint": {
+ "version": "9.39.4",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.4.tgz",
+ "integrity": "sha512-XoMjdBOwe/esVgEvLmNsD3IRHkm7fbKIUGvrleloJXUZgDHig2IPWNniv+GwjyJXzuNqVjlr5+4yVUZjycJwfQ==",
+ "dev": true,
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "@eslint-community/eslint-utils": "^4.8.0",
+ "@eslint-community/regexpp": "^4.12.1",
+ "@eslint/config-array": "^0.21.2",
+ "@eslint/config-helpers": "^0.4.2",
+ "@eslint/core": "^0.17.0",
+ "@eslint/eslintrc": "^3.3.5",
+ "@eslint/js": "9.39.4",
+ "@eslint/plugin-kit": "^0.4.1",
+ "@humanfs/node": "^0.16.6",
+ "@humanwhocodes/module-importer": "^1.0.1",
+ "@humanwhocodes/retry": "^0.4.2",
+ "@types/estree": "^1.0.6",
+ "ajv": "^6.14.0",
+ "chalk": "^4.0.0",
+ "cross-spawn": "^7.0.6",
+ "debug": "^4.3.2",
+ "escape-string-regexp": "^4.0.0",
+ "eslint-scope": "^8.4.0",
+ "eslint-visitor-keys": "^4.2.1",
+ "espree": "^10.4.0",
+ "esquery": "^1.5.0",
+ "esutils": "^2.0.2",
+ "fast-deep-equal": "^3.1.3",
+ "file-entry-cache": "^8.0.0",
+ "find-up": "^5.0.0",
+ "glob-parent": "^6.0.2",
+ "ignore": "^5.2.0",
+ "imurmurhash": "^0.1.4",
+ "is-glob": "^4.0.0",
+ "json-stable-stringify-without-jsonify": "^1.0.1",
+ "lodash.merge": "^4.6.2",
+ "minimatch": "^3.1.5",
+ "natural-compare": "^1.4.0",
+ "optionator": "^0.9.3"
+ },
+ "bin": {
+ "eslint": "bin/eslint.js"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "url": "https://eslint.org/donate"
+ },
+ "peerDependencies": {
+ "jiti": "*"
+ },
+ "peerDependenciesMeta": {
+ "jiti": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/eslint-config-next": {
+ "version": "16.1.6",
+ "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-16.1.6.tgz",
+ "integrity": "sha512-vKq40io2B0XtkkNDYyleATwblNt8xuh3FWp8SpSz3pt7P01OkBFlKsJZ2mWt5WsCySlDQLckb1zMY9yE9Qy0LA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@next/eslint-plugin-next": "16.1.6",
+ "eslint-import-resolver-node": "^0.3.6",
+ "eslint-import-resolver-typescript": "^3.5.2",
+ "eslint-plugin-import": "^2.32.0",
+ "eslint-plugin-jsx-a11y": "^6.10.0",
+ "eslint-plugin-react": "^7.37.0",
+ "eslint-plugin-react-hooks": "^7.0.0",
+ "globals": "16.4.0",
+ "typescript-eslint": "^8.46.0"
+ },
+ "peerDependencies": {
+ "eslint": ">=9.0.0",
+ "typescript": ">=3.3.1"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/eslint-config-next/node_modules/globals": {
+ "version": "16.4.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-16.4.0.tgz",
+ "integrity": "sha512-ob/2LcVVaVGCYN+r14cnwnoDPUufjiYgSqRhiFD0Q1iI4Odora5RE8Iv1D24hAz5oMophRGkGz+yuvQmmUMnMw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/eslint-import-resolver-node": {
+ "version": "0.3.10",
+ "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.10.tgz",
+ "integrity": "sha512-tRrKqFyCaKict5hOd244sL6EQFNycnMQnBe+j8uqGNXYzsImGbGUU4ibtoaBmv5FLwJwcFJNeg1GeVjQfbMrDQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "debug": "^3.2.7",
+ "is-core-module": "^2.16.1",
+ "resolve": "^2.0.0-next.6"
+ }
+ },
+ "node_modules/eslint-import-resolver-node/node_modules/debug": {
+ "version": "3.2.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
+ "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ms": "^2.1.1"
+ }
+ },
+ "node_modules/eslint-import-resolver-typescript": {
+ "version": "3.10.1",
+ "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.10.1.tgz",
+ "integrity": "sha512-A1rHYb06zjMGAxdLSkN2fXPBwuSaQ0iO5M/hdyS0Ajj1VBaRp0sPD3dn1FhME3c/JluGFbwSxyCfqdSbtQLAHQ==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "@nolyfill/is-core-module": "1.0.39",
+ "debug": "^4.4.0",
+ "get-tsconfig": "^4.10.0",
+ "is-bun-module": "^2.0.0",
+ "stable-hash": "^0.0.5",
+ "tinyglobby": "^0.2.13",
+ "unrs-resolver": "^1.6.2"
+ },
+ "engines": {
+ "node": "^14.18.0 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint-import-resolver-typescript"
+ },
+ "peerDependencies": {
+ "eslint": "*",
+ "eslint-plugin-import": "*",
+ "eslint-plugin-import-x": "*"
+ },
+ "peerDependenciesMeta": {
+ "eslint-plugin-import": {
+ "optional": true
+ },
+ "eslint-plugin-import-x": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/eslint-module-utils": {
+ "version": "2.12.1",
+ "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.1.tgz",
+ "integrity": "sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "debug": "^3.2.7"
+ },
+ "engines": {
+ "node": ">=4"
+ },
+ "peerDependenciesMeta": {
+ "eslint": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/eslint-module-utils/node_modules/debug": {
+ "version": "3.2.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
+ "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ms": "^2.1.1"
+ }
+ },
+ "node_modules/eslint-plugin-import": {
+ "version": "2.32.0",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.32.0.tgz",
+ "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@rtsao/scc": "^1.1.0",
+ "array-includes": "^3.1.9",
+ "array.prototype.findlastindex": "^1.2.6",
+ "array.prototype.flat": "^1.3.3",
+ "array.prototype.flatmap": "^1.3.3",
+ "debug": "^3.2.7",
+ "doctrine": "^2.1.0",
+ "eslint-import-resolver-node": "^0.3.9",
+ "eslint-module-utils": "^2.12.1",
+ "hasown": "^2.0.2",
+ "is-core-module": "^2.16.1",
+ "is-glob": "^4.0.3",
+ "minimatch": "^3.1.2",
+ "object.fromentries": "^2.0.8",
+ "object.groupby": "^1.0.3",
+ "object.values": "^1.2.1",
+ "semver": "^6.3.1",
+ "string.prototype.trimend": "^1.0.9",
+ "tsconfig-paths": "^3.15.0"
+ },
+ "engines": {
+ "node": ">=4"
+ },
+ "peerDependencies": {
+ "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9"
+ }
+ },
+ "node_modules/eslint-plugin-import/node_modules/debug": {
+ "version": "3.2.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
+ "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ms": "^2.1.1"
+ }
+ },
+ "node_modules/eslint-plugin-import/node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ }
+ },
+ "node_modules/eslint-plugin-jsx-a11y": {
+ "version": "6.10.2",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.2.tgz",
+ "integrity": "sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "aria-query": "^5.3.2",
+ "array-includes": "^3.1.8",
+ "array.prototype.flatmap": "^1.3.2",
+ "ast-types-flow": "^0.0.8",
+ "axe-core": "^4.10.0",
+ "axobject-query": "^4.1.0",
+ "damerau-levenshtein": "^1.0.8",
+ "emoji-regex": "^9.2.2",
+ "hasown": "^2.0.2",
+ "jsx-ast-utils": "^3.3.5",
+ "language-tags": "^1.0.9",
+ "minimatch": "^3.1.2",
+ "object.fromentries": "^2.0.8",
+ "safe-regex-test": "^1.0.3",
+ "string.prototype.includes": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=4.0"
+ },
+ "peerDependencies": {
+ "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9"
+ }
+ },
+ "node_modules/eslint-plugin-jsx-a11y/node_modules/aria-query": {
+ "version": "5.3.2",
+ "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz",
+ "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/eslint-plugin-react": {
+ "version": "7.37.5",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz",
+ "integrity": "sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "array-includes": "^3.1.8",
+ "array.prototype.findlast": "^1.2.5",
+ "array.prototype.flatmap": "^1.3.3",
+ "array.prototype.tosorted": "^1.1.4",
+ "doctrine": "^2.1.0",
+ "es-iterator-helpers": "^1.2.1",
+ "estraverse": "^5.3.0",
+ "hasown": "^2.0.2",
+ "jsx-ast-utils": "^2.4.1 || ^3.0.0",
+ "minimatch": "^3.1.2",
+ "object.entries": "^1.1.9",
+ "object.fromentries": "^2.0.8",
+ "object.values": "^1.2.1",
+ "prop-types": "^15.8.1",
+ "resolve": "^2.0.0-next.5",
+ "semver": "^6.3.1",
+ "string.prototype.matchall": "^4.0.12",
+ "string.prototype.repeat": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ },
+ "peerDependencies": {
+ "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7"
+ }
+ },
+ "node_modules/eslint-plugin-react-hooks": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-7.1.1.tgz",
+ "integrity": "sha512-f2I7Gw6JbvCexzIInuSbZpfdQ44D7iqdWX01FKLvrPgqxoE7oMj8clOfto8U6vYiz4yd5oKu39rRSVOe1zRu0g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/core": "^7.24.4",
+ "@babel/parser": "^7.24.4",
+ "hermes-parser": "^0.25.1",
+ "zod": "^3.25.0 || ^4.0.0",
+ "zod-validation-error": "^3.5.0 || ^4.0.0"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "peerDependencies": {
+ "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 || ^10.0.0"
+ }
+ },
+ "node_modules/eslint-plugin-react/node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ }
+ },
+ "node_modules/eslint-scope": {
+ "version": "8.4.0",
+ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz",
+ "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "esrecurse": "^4.3.0",
+ "estraverse": "^5.2.0"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
+ }
+ },
+ "node_modules/eslint-visitor-keys": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz",
+ "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
+ }
+ },
+ "node_modules/eslint/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/eslint/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/espree": {
+ "version": "10.4.0",
+ "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz",
+ "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "acorn": "^8.15.0",
+ "acorn-jsx": "^5.3.2",
+ "eslint-visitor-keys": "^4.2.1"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
+ }
+ },
+ "node_modules/esquery": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.7.0.tgz",
+ "integrity": "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "estraverse": "^5.1.0"
+ },
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
+ "node_modules/esrecurse": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
+ "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "estraverse": "^5.2.0"
+ },
+ "engines": {
+ "node": ">=4.0"
+ }
+ },
+ "node_modules/estraverse": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
+ "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": ">=4.0"
+ }
+ },
+ "node_modules/estree-walker": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz",
+ "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/estree": "^1.0.0"
+ }
+ },
+ "node_modules/esutils": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
+ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/eventemitter3": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz",
+ "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==",
+ "license": "MIT"
+ },
+ "node_modules/events": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
+ "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.8.x"
+ }
+ },
+ "node_modules/eventsource": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-2.0.2.tgz",
+ "integrity": "sha512-IzUmBGPR3+oUG9dUeXynyNmf91/3zUSJg1lCktzKw47OXuhco54U3r9B7O4XX+Rb1Itm9OZ2b0RkTs10bICOxA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=12.0.0"
+ }
+ },
+ "node_modules/evp_bytestokey": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz",
+ "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==",
+ "license": "MIT",
+ "dependencies": {
+ "md5.js": "^1.3.4",
+ "safe-buffer": "^5.1.1"
+ }
+ },
+ "node_modules/expect-type": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.3.0.tgz",
+ "integrity": "sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=12.0.0"
+ }
+ },
+ "node_modules/exponential-backoff": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.3.tgz",
+ "integrity": "sha512-ZgEeZXj30q+I0EN+CbSSpIyPaJ5HVQD18Z1m+u1FXbAeT94mr1zw50q4q6jiiC447Nl/YTcIYSAftiGqetwXCA==",
+ "license": "Apache-2.0"
+ },
+ "node_modules/eyes": {
+ "version": "0.1.8",
+ "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz",
+ "integrity": "sha512-GipyPsXO1anza0AOZdy69Im7hGFCNB7Y/NGjDlZGJ3GJJLtwNSb2vrzYrTYJRrRloVx7pl+bhUaTB8yiccPvFQ==",
+ "engines": {
+ "node": "> 0.1.90"
+ }
+ },
+ "node_modules/fast-deep-equal": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/fast-glob": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz",
+ "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@nodelib/fs.stat": "^2.0.2",
+ "@nodelib/fs.walk": "^1.2.3",
+ "glob-parent": "^5.1.2",
+ "merge2": "^1.3.0",
+ "micromatch": "^4.0.4"
+ },
+ "engines": {
+ "node": ">=8.6.0"
+ }
+ },
+ "node_modules/fast-glob/node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "is-glob": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/fast-json-stable-stringify": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
+ "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
+ "license": "MIT"
+ },
+ "node_modules/fast-levenshtein": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
+ "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/fast-stable-stringify": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fast-stable-stringify/-/fast-stable-stringify-1.0.0.tgz",
+ "integrity": "sha512-wpYMUmFu5f00Sm0cj2pfivpmawLZ0NKdviQ4w9zJeR8JVtOpOxHmLaJuj0vxvGqMJQWyP/COUkF75/57OKyRag==",
+ "license": "MIT"
+ },
+ "node_modules/fastestsmallesttextencoderdecoder": {
+ "version": "1.0.22",
+ "resolved": "https://registry.npmjs.org/fastestsmallesttextencoderdecoder/-/fastestsmallesttextencoderdecoder-1.0.22.tgz",
+ "integrity": "sha512-Pb8d48e+oIuY4MaM64Cd7OW1gt4nxCHs7/ddPPZ/Ic3sg8yVGM7O9wDvZ7us6ScaUupzM+pfBolwtYhN1IxBIw==",
+ "license": "CC0-1.0",
+ "peer": true
+ },
+ "node_modules/fastq": {
+ "version": "1.20.1",
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.20.1.tgz",
+ "integrity": "sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "reusify": "^1.0.4"
+ }
+ },
+ "node_modules/feaxios": {
+ "version": "0.0.23",
+ "resolved": "https://registry.npmjs.org/feaxios/-/feaxios-0.0.23.tgz",
+ "integrity": "sha512-eghR0A21fvbkcQBgZuMfQhrXxJzC0GNUGC9fXhBge33D+mFDTwl0aJ35zoQQn575BhyjQitRc5N4f+L4cP708g==",
+ "license": "MIT",
+ "dependencies": {
+ "is-retry-allowed": "^3.0.0"
+ }
+ },
+ "node_modules/feaxios/node_modules/is-retry-allowed": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-3.0.0.tgz",
+ "integrity": "sha512-9xH0xvoggby+u0uGF7cZXdrutWiBiaFG8ZT4YFPXL8NzkyAwX3AKGLeFQLvzDpM430+nDFBZ1LHkie/8ocL06A==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/file-entry-cache": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz",
+ "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "flat-cache": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ }
+ },
+ "node_modules/file-uri-to-path": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
+ "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
+ "license": "MIT"
+ },
+ "node_modules/fill-range": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "to-regex-range": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/find-up": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
+ "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "locate-path": "^6.0.0",
+ "path-exists": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/flat-cache": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz",
+ "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "flatted": "^3.2.9",
+ "keyv": "^4.5.4"
+ },
+ "engines": {
+ "node": ">=16"
+ }
+ },
+ "node_modules/flatted": {
+ "version": "3.4.2",
+ "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.2.tgz",
+ "integrity": "sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/follow-redirects": {
+ "version": "1.16.0",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.16.0.tgz",
+ "integrity": "sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw==",
+ "funding": [
+ {
+ "type": "individual",
+ "url": "https://github.com/sponsors/RubenVerborgh"
+ }
+ ],
+ "license": "MIT",
+ "engines": {
+ "node": ">=4.0"
+ },
+ "peerDependenciesMeta": {
+ "debug": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/for-each": {
+ "version": "0.3.5",
+ "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz",
+ "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==",
+ "license": "MIT",
+ "dependencies": {
+ "is-callable": "^1.2.7"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/form-data": {
+ "version": "4.0.5",
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.5.tgz",
+ "integrity": "sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==",
+ "license": "MIT",
+ "dependencies": {
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.8",
+ "es-set-tostringtag": "^2.1.0",
+ "hasown": "^2.0.2",
+ "mime-types": "^2.1.12"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/fsevents": {
+ "version": "2.3.3",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
+ "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
+ "dev": true,
+ "hasInstallScript": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ }
+ },
+ "node_modules/function-bind": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/function.prototype.name": {
+ "version": "1.1.8",
+ "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz",
+ "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.8",
+ "call-bound": "^1.0.3",
+ "define-properties": "^1.2.1",
+ "functions-have-names": "^1.2.3",
+ "hasown": "^2.0.2",
+ "is-callable": "^1.2.7"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/functions-have-names": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz",
+ "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/generate-function": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz",
+ "integrity": "sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==",
+ "license": "MIT",
+ "dependencies": {
+ "is-property": "^1.0.2"
+ }
+ },
+ "node_modules/generate-object-property": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz",
+ "integrity": "sha512-TuOwZWgJ2VAMEGJvAyPWvpqxSANF0LDpmyHauMjFYzaACvn+QTT/AZomvPCzVBV7yDN3OmwHQ5OvHaeLKre3JQ==",
+ "license": "MIT",
+ "dependencies": {
+ "is-property": "^1.0.0"
+ }
+ },
+ "node_modules/generator-function": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/generator-function/-/generator-function-2.0.1.tgz",
+ "integrity": "sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/gensync": {
+ "version": "1.0.0-beta.2",
+ "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
+ "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/get-caller-file": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
+ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
+ "license": "ISC",
+ "engines": {
+ "node": "6.* || 8.* || >= 10.*"
+ }
+ },
+ "node_modules/get-intrinsic": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
+ "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
+ "license": "MIT",
+ "dependencies": {
+ "call-bind-apply-helpers": "^1.0.2",
+ "es-define-property": "^1.0.1",
+ "es-errors": "^1.3.0",
+ "es-object-atoms": "^1.1.1",
+ "function-bind": "^1.1.2",
+ "get-proto": "^1.0.1",
+ "gopd": "^1.2.0",
+ "has-symbols": "^1.1.0",
+ "hasown": "^2.0.2",
+ "math-intrinsics": "^1.1.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/get-nonce": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz",
+ "integrity": "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/get-proto": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
+ "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
+ "license": "MIT",
+ "dependencies": {
+ "dunder-proto": "^1.0.1",
+ "es-object-atoms": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/get-symbol-description": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz",
+ "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.3",
+ "es-errors": "^1.3.0",
+ "get-intrinsic": "^1.2.6"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/get-tsconfig": {
+ "version": "4.14.0",
+ "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.14.0.tgz",
+ "integrity": "sha512-yTb+8DXzDREzgvYmh6s9vHsSVCHeC0G3PI5bEXNBHtmshPnO+S5O7qgLEOn0I5QvMy6kpZN8K1NKGyilLb93wA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "resolve-pkg-maps": "^1.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1"
+ }
+ },
+ "node_modules/glob-parent": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
+ "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "is-glob": "^4.0.3"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
+ "node_modules/globals": {
+ "version": "14.0.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz",
+ "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/globalthis": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz",
+ "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "define-properties": "^1.2.1",
+ "gopd": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/gopd": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
+ "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/graceful-fs": {
+ "version": "4.2.11",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/h3": {
+ "version": "1.15.11",
+ "resolved": "https://registry.npmjs.org/h3/-/h3-1.15.11.tgz",
+ "integrity": "sha512-L3THSe2MPeBwgIZVSH5zLdBBU90TOxarvhK9d04IDY2AmVS8j2Jz2LIWtwsGOU3lu2I5jCN7FNvVfY2+XyF+mg==",
+ "license": "MIT",
+ "dependencies": {
+ "cookie-es": "^1.2.3",
+ "crossws": "^0.3.5",
+ "defu": "^6.1.6",
+ "destr": "^2.0.5",
+ "iron-webcrypto": "^1.2.1",
+ "node-mock-http": "^1.0.4",
+ "radix3": "^1.1.2",
+ "ufo": "^1.6.3",
+ "uncrypto": "^0.1.3"
+ }
+ },
+ "node_modules/has-bigints": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz",
+ "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/has-property-descriptors": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz",
+ "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==",
+ "license": "MIT",
+ "dependencies": {
+ "es-define-property": "^1.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/has-proto": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz",
+ "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "dunder-proto": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/has-symbols": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
+ "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/has-tostringtag": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz",
+ "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==",
+ "license": "MIT",
+ "dependencies": {
+ "has-symbols": "^1.0.3"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/hash-base": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.2.tgz",
+ "integrity": "sha512-Bb33KbowVTIj5s7Ked1OsqHUeCpz//tPwR+E2zJgJKo9Z5XolZ9b6bdUgjmYlwnWhoOQKoTd1TYToZGn5mAYOg==",
+ "license": "MIT",
+ "dependencies": {
+ "inherits": "^2.0.4",
+ "readable-stream": "^2.3.8",
+ "safe-buffer": "^5.2.1",
+ "to-buffer": "^1.2.1"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/hash-base/node_modules/isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==",
+ "license": "MIT"
+ },
+ "node_modules/hash-base/node_modules/readable-stream": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
+ "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
+ "license": "MIT",
+ "dependencies": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.3",
+ "isarray": "~1.0.0",
+ "process-nextick-args": "~2.0.0",
+ "safe-buffer": "~5.1.1",
+ "string_decoder": "~1.1.1",
+ "util-deprecate": "~1.0.1"
+ }
+ },
+ "node_modules/hash-base/node_modules/readable-stream/node_modules/safe-buffer": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
+ "license": "MIT"
+ },
+ "node_modules/hash-base/node_modules/string_decoder": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+ "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+ "license": "MIT",
+ "dependencies": {
+ "safe-buffer": "~5.1.0"
+ }
+ },
+ "node_modules/hash-base/node_modules/string_decoder/node_modules/safe-buffer": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
+ "license": "MIT"
+ },
+ "node_modules/hash.js": {
+ "version": "1.1.7",
+ "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz",
+ "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==",
+ "license": "MIT",
+ "dependencies": {
+ "inherits": "^2.0.3",
+ "minimalistic-assert": "^1.0.1"
+ }
+ },
+ "node_modules/hasown": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.3.tgz",
+ "integrity": "sha512-ej4AhfhfL2Q2zpMmLo7U1Uv9+PyhIZpgQLGT1F9miIGmiCJIoCgSmczFdrc97mWT4kVY72KA+WnnhJ5pghSvSg==",
+ "license": "MIT",
+ "dependencies": {
+ "function-bind": "^1.1.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/hermes-estree": {
+ "version": "0.25.1",
+ "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.25.1.tgz",
+ "integrity": "sha512-0wUoCcLp+5Ev5pDW2OriHC2MJCbwLwuRx+gAqMTOkGKJJiBCLjtrvy4PWUGn6MIVefecRpzoOZ/UV6iGdOr+Cw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/hermes-parser": {
+ "version": "0.25.1",
+ "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.25.1.tgz",
+ "integrity": "sha512-6pEjquH3rqaI6cYAXYPcz9MS4rY6R4ngRgrgfDshRptUZIc3lw0MCIJIGDj9++mfySOuPTHB4nrSW99BCvOPIA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "hermes-estree": "0.25.1"
+ }
+ },
+ "node_modules/hmac-drbg": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
+ "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==",
+ "license": "MIT",
+ "dependencies": {
+ "hash.js": "^1.0.3",
+ "minimalistic-assert": "^1.0.0",
+ "minimalistic-crypto-utils": "^1.0.1"
+ }
+ },
+ "node_modules/htm": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/htm/-/htm-3.1.1.tgz",
+ "integrity": "sha512-983Vyg8NwUE7JkZ6NmOqpCZ+sh1bKv2iYTlUkzlWmA5JD2acKoxd4KVxbMmxX/85mtfdnDmTFoNKcg5DGAvxNQ==",
+ "license": "Apache-2.0"
+ },
+ "node_modules/html-encoding-sniffer": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz",
+ "integrity": "sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "whatwg-encoding": "^3.1.1"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/html-escaper": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
+ "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/http-errors": {
+ "version": "1.7.2",
+ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz",
+ "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==",
+ "license": "MIT",
+ "dependencies": {
+ "depd": "~1.1.2",
+ "inherits": "2.0.3",
+ "setprototypeof": "1.1.1",
+ "statuses": ">= 1.5.0 < 2",
+ "toidentifier": "1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/http-errors/node_modules/depd": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
+ "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/http-errors/node_modules/inherits": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
+ "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==",
+ "license": "ISC"
+ },
+ "node_modules/http-proxy-agent": {
+ "version": "7.0.2",
+ "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz",
+ "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "agent-base": "^7.1.0",
+ "debug": "^4.3.4"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/https-proxy-agent": {
+ "version": "7.0.6",
+ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz",
+ "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "agent-base": "^7.1.2",
+ "debug": "4"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/humanize-ms": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz",
+ "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==",
+ "license": "MIT",
+ "dependencies": {
+ "ms": "^2.0.0"
+ }
+ },
+ "node_modules/iconv-lite": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
+ "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/idb-keyval": {
+ "version": "6.2.1",
+ "resolved": "https://registry.npmjs.org/idb-keyval/-/idb-keyval-6.2.1.tgz",
+ "integrity": "sha512-8Sb3veuYCyrZL+VBt9LJfZjLUPWVvqn8tG28VqYNFCo43KHcKuq+b4EiXGeuaLAQWL2YmyDgMp2aSpH9JHsEQg==",
+ "license": "Apache-2.0"
+ },
+ "node_modules/ieee754": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
+ "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/ignore": {
+ "version": "5.3.2",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
+ "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 4"
+ }
+ },
+ "node_modules/immer": {
+ "version": "10.2.0",
+ "resolved": "https://registry.npmjs.org/immer/-/immer-10.2.0.tgz",
+ "integrity": "sha512-d/+XTN3zfODyjr89gM3mPq1WNX2B8pYsu7eORitdwyA2sBubnTl3laYlBk4sXY5FUa5qTZGBDPJICVbvqzjlbw==",
+ "license": "MIT",
+ "peer": true,
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/immer"
+ }
+ },
+ "node_modules/import-fresh": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz",
+ "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "parent-module": "^1.0.0",
+ "resolve-from": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/imurmurhash": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
+ "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.8.19"
+ }
+ },
+ "node_modules/indent-string": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz",
+ "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
+ "license": "ISC"
+ },
+ "node_modules/int64-buffer": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/int64-buffer/-/int64-buffer-1.1.0.tgz",
+ "integrity": "sha512-94smTCQOvigN4d/2R/YDjz8YVG0Sufvv2aAh8P5m42gwhCsDAJqnbNOrxJsrADuAFAA69Q/ptGzxvNcNuIJcvw==",
+ "license": "MIT"
+ },
+ "node_modules/internal-slot": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz",
+ "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "es-errors": "^1.3.0",
+ "hasown": "^2.0.2",
+ "side-channel": "^1.1.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/internmap": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz",
+ "integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==",
+ "license": "ISC",
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/ip-address": {
+ "version": "10.2.0",
+ "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.2.0.tgz",
+ "integrity": "sha512-/+S6j4E9AHvW9SWMSEY9Xfy66O5PWvVEJ08O0y5JGyEKQpojb0K0GKpz/v5HJ/G0vi3D2sjGK78119oXZeE0qA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 12"
+ }
+ },
+ "node_modules/iron-webcrypto": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/iron-webcrypto/-/iron-webcrypto-1.2.1.tgz",
+ "integrity": "sha512-feOM6FaSr6rEABp/eDfVseKyTMDt+KGpeB35SkVn9Tyn0CqvVsY3EwI0v5i8nMHyJnzCIQf7nsy3p41TPkJZhg==",
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/sponsors/brc-dd"
+ }
+ },
+ "node_modules/is-array-buffer": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz",
+ "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.8",
+ "call-bound": "^1.0.3",
+ "get-intrinsic": "^1.2.6"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-async-function": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz",
+ "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "async-function": "^1.0.0",
+ "call-bound": "^1.0.3",
+ "get-proto": "^1.0.1",
+ "has-tostringtag": "^1.0.2",
+ "safe-regex-test": "^1.1.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-bigint": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz",
+ "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "has-bigints": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-boolean-object": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz",
+ "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.3",
+ "has-tostringtag": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-buffer": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
+ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
+ "license": "MIT",
+ "optional": true
+ },
+ "node_modules/is-bun-module": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-bun-module/-/is-bun-module-2.0.0.tgz",
+ "integrity": "sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "semver": "^7.7.1"
+ }
+ },
+ "node_modules/is-callable": {
+ "version": "1.2.7",
+ "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz",
+ "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-core-module": {
+ "version": "2.16.2",
+ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.2.tgz",
+ "integrity": "sha512-evOr8xfXKxE6qSR0hSXL2r3sd7ALj8+7jQEUvPYcm5sgZFdJ+AYzT6yNmJenvIYQBgIGwfwz08sL8zoL7yq2BA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "hasown": "^2.0.3"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-data-view": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz",
+ "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.2",
+ "get-intrinsic": "^1.2.6",
+ "is-typed-array": "^1.1.13"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-date-object": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz",
+ "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.2",
+ "has-tostringtag": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-extglob": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+ "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-finalizationregistry": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz",
+ "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.3"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-fullwidth-code-point": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
+ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/is-generator-function": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.2.tgz",
+ "integrity": "sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.4",
+ "generator-function": "^2.0.0",
+ "get-proto": "^1.0.1",
+ "has-tostringtag": "^1.0.2",
+ "safe-regex-test": "^1.1.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-glob": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
+ "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "is-extglob": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-map": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz",
+ "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-my-ip-valid": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.1.tgz",
+ "integrity": "sha512-jxc8cBcOWbNK2i2aTkCZP6i7wkHF1bqKFrwEHuN5Jtg5BSaZHUZQ/JTOJwoV41YvHnOaRyWWh72T/KvfNz9DJg==",
+ "license": "MIT"
+ },
+ "node_modules/is-my-json-valid": {
+ "version": "2.20.6",
+ "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.20.6.tgz",
+ "integrity": "sha512-1JQwulVNjx8UqkPE/bqDaxtH4PXCe/2VRh/y3p99heOV87HG4Id5/VfDswd+YiAfHcRTfDlWgISycnHuhZq1aw==",
+ "license": "MIT",
+ "dependencies": {
+ "generate-function": "^2.0.0",
+ "generate-object-property": "^1.1.0",
+ "is-my-ip-valid": "^1.0.0",
+ "jsonpointer": "^5.0.0",
+ "xtend": "^4.0.0"
+ }
+ },
+ "node_modules/is-negative-zero": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz",
+ "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-number": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
+ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.12.0"
+ }
+ },
+ "node_modules/is-number-object": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz",
+ "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.3",
+ "has-tostringtag": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-potential-custom-element-name": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz",
+ "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/is-property": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz",
+ "integrity": "sha512-Ks/IoX00TtClbGQr4TWXemAnktAQvYB7HzcCxDGqEZU6oCmb2INHuOoKxbtR+HFkmYWBKv/dOZtGRiAjDhj92g==",
+ "license": "MIT"
+ },
+ "node_modules/is-regex": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz",
+ "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.2",
+ "gopd": "^1.2.0",
+ "has-tostringtag": "^1.0.2",
+ "hasown": "^2.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-retry-allowed": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-2.2.0.tgz",
+ "integrity": "sha512-XVm7LOeLpTW4jV19QSH38vkswxoLud8sQ57YwJVTPWdiaI9I8keEhGFpBlslyVsgdQy4Opg8QOLb8YRgsyZiQg==",
+ "license": "MIT",
+ "optional": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/is-set": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz",
+ "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-shared-array-buffer": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz",
+ "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.3"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-standalone-pwa": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/is-standalone-pwa/-/is-standalone-pwa-0.1.1.tgz",
+ "integrity": "sha512-9Cbovsa52vNQCjdXOzeQq5CnCbAcRk05aU62K20WO372NrTv0NxibLFCK6lQ4/iZEFdEA3p3t2VNOn8AJ53F5g==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/faisalman"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/ua-parser-js"
+ },
+ {
+ "type": "paypal",
+ "url": "https://paypal.me/faisalman"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/is-string": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz",
+ "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.3",
+ "has-tostringtag": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-symbol": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz",
+ "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.2",
+ "has-symbols": "^1.1.0",
+ "safe-regex-test": "^1.1.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-typed-array": {
+ "version": "1.1.15",
+ "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz",
+ "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==",
+ "license": "MIT",
+ "dependencies": {
+ "which-typed-array": "^1.1.16"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-weakmap": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz",
+ "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-weakref": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz",
+ "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.3"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-weakset": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz",
+ "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.3",
+ "get-intrinsic": "^1.2.6"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/isarray": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
+ "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
+ "license": "MIT"
+ },
+ "node_modules/isexe": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/isomorphic-ws": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz",
+ "integrity": "sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w==",
+ "license": "MIT",
+ "peerDependencies": {
+ "ws": "*"
+ }
+ },
+ "node_modules/isows": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/isows/-/isows-1.0.7.tgz",
+ "integrity": "sha512-I1fSfDCZL5P0v33sVqeTDSpcstAg/N+wF5HS033mogOVIp4B+oHC7oOCsA3axAbBSGTJ8QubbNmnIRN/h8U7hg==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/wevm"
+ }
+ ],
+ "license": "MIT",
+ "peerDependencies": {
+ "ws": "*"
+ }
+ },
+ "node_modules/istanbul-lib-coverage": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz",
+ "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/istanbul-lib-report": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz",
+ "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "istanbul-lib-coverage": "^3.0.0",
+ "make-dir": "^4.0.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/istanbul-reports": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.2.0.tgz",
+ "integrity": "sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "html-escaper": "^2.0.0",
+ "istanbul-lib-report": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/iterator.prototype": {
+ "version": "1.1.5",
+ "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz",
+ "integrity": "sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "define-data-property": "^1.1.4",
+ "es-object-atoms": "^1.0.0",
+ "get-intrinsic": "^1.2.6",
+ "get-proto": "^1.0.0",
+ "has-symbols": "^1.1.0",
+ "set-function-name": "^2.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/jayson": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/jayson/-/jayson-4.3.0.tgz",
+ "integrity": "sha512-AauzHcUcqs8OBnCHOkJY280VaTiCm57AbuO7lqzcw7JapGj50BisE3xhksye4zlTSR1+1tAz67wLTl8tEH1obQ==",
+ "license": "MIT",
+ "dependencies": {
+ "@types/connect": "^3.4.33",
+ "@types/node": "^12.12.54",
+ "@types/ws": "^7.4.4",
+ "commander": "^2.20.3",
+ "delay": "^5.0.0",
+ "es6-promisify": "^5.0.0",
+ "eyes": "^0.1.8",
+ "isomorphic-ws": "^4.0.1",
+ "json-stringify-safe": "^5.0.1",
+ "stream-json": "^1.9.1",
+ "uuid": "^8.3.2",
+ "ws": "^7.5.10"
+ },
+ "bin": {
+ "jayson": "bin/jayson.js"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/jayson/node_modules/@types/node": {
+ "version": "12.20.55",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz",
+ "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==",
+ "license": "MIT"
+ },
+ "node_modules/jayson/node_modules/commander": {
+ "version": "2.20.3",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
+ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
+ "license": "MIT"
+ },
+ "node_modules/jayson/node_modules/ws": {
+ "version": "7.5.11",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.11.tgz",
+ "integrity": "sha512-zS54Oen9bITtp7kp2XM3AydrCIq1D+HwJOuH+c+e4LfpL/lotP5osijd+UoMnxwAam1GN8R4KtLAyIrIcBNpiA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=8.3.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": "^5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/jiti": {
+ "version": "2.7.0",
+ "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.7.0.tgz",
+ "integrity": "sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "jiti": "lib/jiti-cli.mjs"
+ }
+ },
+ "node_modules/jose": {
+ "version": "6.2.3",
+ "resolved": "https://registry.npmjs.org/jose/-/jose-6.2.3.tgz",
+ "integrity": "sha512-YYVDInQKFJfR/xa3ojUTl8c2KoTwiL1R5Wg9YCydwH0x0B9grbzlg5HC7mMjCtUJjbQ/YnGEZIhI5tCgfTb4Hw==",
+ "license": "MIT",
+ "optional": true,
+ "funding": {
+ "url": "https://github.com/sponsors/panva"
+ }
+ },
+ "node_modules/js-sha256": {
+ "version": "0.11.1",
+ "resolved": "https://registry.npmjs.org/js-sha256/-/js-sha256-0.11.1.tgz",
+ "integrity": "sha512-o6WSo/LUvY2uC4j7mO50a2ms7E/EAdbP0swigLV+nzHKTTaYnaLIWJ02VdXrsJX0vGedDESQnLsOekr94ryfjg==",
+ "license": "MIT"
+ },
+ "node_modules/js-tokens": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
+ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/js-yaml": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz",
+ "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "argparse": "^2.0.1"
+ },
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
+ }
+ },
+ "node_modules/jsdom": {
+ "version": "26.1.0",
+ "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-26.1.0.tgz",
+ "integrity": "sha512-Cvc9WUhxSMEo4McES3P7oK3QaXldCfNWp7pl2NNeiIFlCoLr3kfq9kb1fxftiwk1FLV7CvpvDfonxtzUDeSOPg==",
+ "dev": true,
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "cssstyle": "^4.2.1",
+ "data-urls": "^5.0.0",
+ "decimal.js": "^10.5.0",
+ "html-encoding-sniffer": "^4.0.0",
+ "http-proxy-agent": "^7.0.2",
+ "https-proxy-agent": "^7.0.6",
+ "is-potential-custom-element-name": "^1.0.1",
+ "nwsapi": "^2.2.16",
+ "parse5": "^7.2.1",
+ "rrweb-cssom": "^0.8.0",
+ "saxes": "^6.0.0",
+ "symbol-tree": "^3.2.4",
+ "tough-cookie": "^5.1.1",
+ "w3c-xmlserializer": "^5.0.0",
+ "webidl-conversions": "^7.0.0",
+ "whatwg-encoding": "^3.1.1",
+ "whatwg-mimetype": "^4.0.0",
+ "whatwg-url": "^14.1.1",
+ "ws": "^8.18.0",
+ "xml-name-validator": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "peerDependencies": {
+ "canvas": "^3.0.0"
+ },
+ "peerDependenciesMeta": {
+ "canvas": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/jsesc": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz",
+ "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "jsesc": "bin/jsesc"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/json-buffer": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
+ "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/json-schema-traverse": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
+ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/json-stable-stringify-without-jsonify": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
+ "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/json-stringify-safe": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
+ "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==",
+ "license": "ISC"
+ },
+ "node_modules/json5": {
+ "version": "2.2.3",
+ "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
+ "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "json5": "lib/cli.js"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/jsonpointer": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-5.0.1.tgz",
+ "integrity": "sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/jsx-ast-utils": {
+ "version": "3.3.5",
+ "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz",
+ "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "array-includes": "^3.1.6",
+ "array.prototype.flat": "^1.3.1",
+ "object.assign": "^4.1.4",
+ "object.values": "^1.1.6"
+ },
+ "engines": {
+ "node": ">=4.0"
+ }
+ },
+ "node_modules/jwa": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.1.tgz",
+ "integrity": "sha512-hRF04fqJIP8Abbkq5NKGN0Bbr3JxlQ+qhZufXVr0DvujKy93ZCbXZMHDL4EOtodSbCWxOqR8MS1tXA5hwqCXDg==",
+ "license": "MIT",
+ "dependencies": {
+ "buffer-equal-constant-time": "^1.0.1",
+ "ecdsa-sig-formatter": "1.0.11",
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "node_modules/jws": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/jws/-/jws-4.0.1.tgz",
+ "integrity": "sha512-EKI/M/yqPncGUUh44xz0PxSidXFr/+r0pA70+gIYhjv+et7yxM+s29Y+VGDkovRofQem0fs7Uvf4+YmAdyRduA==",
+ "license": "MIT",
+ "dependencies": {
+ "jwa": "^2.0.1",
+ "safe-buffer": "^5.0.1"
+ }
+ },
+ "node_modules/keyv": {
+ "version": "4.5.4",
+ "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz",
+ "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "json-buffer": "3.0.1"
+ }
+ },
+ "node_modules/keyvaluestorage-interface": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/keyvaluestorage-interface/-/keyvaluestorage-interface-1.0.0.tgz",
+ "integrity": "sha512-8t6Q3TclQ4uZynJY9IGr2+SsIGwK9JHcO6ootkHCGA0CrQCRy+VkouYNO2xicET6b9al7QKzpebNow+gkpCL8g==",
+ "license": "MIT"
+ },
+ "node_modules/lance": {
+ "resolved": "../..",
+ "link": true
+ },
+ "node_modules/language-subtag-registry": {
+ "version": "0.3.23",
+ "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.23.tgz",
+ "integrity": "sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==",
+ "dev": true,
+ "license": "CC0-1.0"
+ },
+ "node_modules/language-tags": {
+ "version": "1.0.9",
+ "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz",
+ "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "language-subtag-registry": "^0.3.20"
+ },
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
+ "node_modules/levn": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
+ "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "prelude-ls": "^1.2.1",
+ "type-check": "~0.4.0"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/lightningcss": {
+ "version": "1.32.0",
+ "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.32.0.tgz",
+ "integrity": "sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==",
+ "dev": true,
+ "license": "MPL-2.0",
+ "dependencies": {
+ "detect-libc": "^2.0.3"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ },
+ "optionalDependencies": {
+ "lightningcss-android-arm64": "1.32.0",
+ "lightningcss-darwin-arm64": "1.32.0",
+ "lightningcss-darwin-x64": "1.32.0",
+ "lightningcss-freebsd-x64": "1.32.0",
+ "lightningcss-linux-arm-gnueabihf": "1.32.0",
+ "lightningcss-linux-arm64-gnu": "1.32.0",
+ "lightningcss-linux-arm64-musl": "1.32.0",
+ "lightningcss-linux-x64-gnu": "1.32.0",
+ "lightningcss-linux-x64-musl": "1.32.0",
+ "lightningcss-win32-arm64-msvc": "1.32.0",
+ "lightningcss-win32-x64-msvc": "1.32.0"
+ }
+ },
+ "node_modules/lightningcss-android-arm64": {
+ "version": "1.32.0",
+ "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz",
+ "integrity": "sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-darwin-arm64": {
+ "version": "1.32.0",
+ "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz",
+ "integrity": "sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-darwin-x64": {
+ "version": "1.32.0",
+ "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz",
+ "integrity": "sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-freebsd-x64": {
+ "version": "1.32.0",
+ "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz",
+ "integrity": "sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-linux-arm-gnueabihf": {
+ "version": "1.32.0",
+ "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz",
+ "integrity": "sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-linux-arm64-gnu": {
+ "version": "1.32.0",
+ "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz",
+ "integrity": "sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-linux-arm64-musl": {
+ "version": "1.32.0",
+ "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz",
+ "integrity": "sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-linux-x64-gnu": {
+ "version": "1.32.0",
+ "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.32.0.tgz",
+ "integrity": "sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-linux-x64-musl": {
+ "version": "1.32.0",
+ "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.32.0.tgz",
+ "integrity": "sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-win32-arm64-msvc": {
+ "version": "1.32.0",
+ "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz",
+ "integrity": "sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lightningcss-win32-x64-msvc": {
+ "version": "1.32.0",
+ "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz",
+ "integrity": "sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MPL-2.0",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/parcel"
+ }
+ },
+ "node_modules/lit": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/lit/-/lit-3.3.0.tgz",
+ "integrity": "sha512-DGVsqsOIHBww2DqnuZzW7QsuCdahp50ojuDaBPC7jUDRpYoH0z7kHBBYZewRzer75FwtrkmkKk7iOAwSaWdBmw==",
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "@lit/reactive-element": "^2.1.0",
+ "lit-element": "^4.2.0",
+ "lit-html": "^3.3.0"
+ }
+ },
+ "node_modules/lit-element": {
+ "version": "4.2.2",
+ "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-4.2.2.tgz",
+ "integrity": "sha512-aFKhNToWxoyhkNDmWZwEva2SlQia+jfG0fjIWV//YeTaWrVnOxD89dPKfigCUspXFmjzOEUQpOkejH5Ly6sG0w==",
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "@lit-labs/ssr-dom-shim": "^1.5.0",
+ "@lit/reactive-element": "^2.1.0",
+ "lit-html": "^3.3.0"
+ }
+ },
+ "node_modules/lit-html": {
+ "version": "3.3.3",
+ "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-3.3.3.tgz",
+ "integrity": "sha512-el8M6jK2o3RXBnrSHX3ZKrsN8zEV63pSExTO1wYJz7QndGYZ8353e2a5PPX+qHe2aGayfnchQmkAojaWAREOIA==",
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "@types/trusted-types": "^2.0.2"
+ }
+ },
+ "node_modules/locate-path": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
+ "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-locate": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/lodash.merge": {
+ "version": "4.6.2",
+ "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
+ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/long": {
+ "version": "5.2.5",
+ "resolved": "https://registry.npmjs.org/long/-/long-5.2.5.tgz",
+ "integrity": "sha512-e0r9YBBgNCq1D1o5Dp8FMH0N5hsFtXDBiVa0qoJPHpakvZkmDKPRoGffZJII/XsHvj9An9blm+cRJ01yQqU+Dw==",
+ "license": "Apache-2.0"
+ },
+ "node_modules/loose-envify": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
+ "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "js-tokens": "^3.0.0 || ^4.0.0"
+ },
+ "bin": {
+ "loose-envify": "cli.js"
+ }
+ },
+ "node_modules/lru_map": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/lru_map/-/lru_map-0.4.1.tgz",
+ "integrity": "sha512-I+lBvqMMFfqaV8CJCISjI3wbjmwVu/VyOoU7+qtu9d7ioW5klMgsTTiUOUp+DJvfTTzKXoPbyC6YfgkNcyPSOg==",
+ "license": "MIT"
+ },
+ "node_modules/lru-cache": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
+ "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "yallist": "^3.0.2"
+ }
+ },
+ "node_modules/lucide-react": {
+ "version": "1.17.0",
+ "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-1.17.0.tgz",
+ "integrity": "sha512-9FA9evdox/JQL5PT57fdA1x/yg8T7knJ98+zjTL3UfKza6pflQUUh3XtaQIHKvnsJw1lmsEyHVlt5jchYxOQ5w==",
+ "license": "ISC",
+ "peerDependencies": {
+ "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0"
+ }
+ },
+ "node_modules/lz-string": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz",
+ "integrity": "sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "lz-string": "bin/bin.js"
+ }
+ },
+ "node_modules/magic-string": {
+ "version": "0.30.21",
+ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz",
+ "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/sourcemap-codec": "^1.5.5"
+ }
+ },
+ "node_modules/magicast": {
+ "version": "0.5.3",
+ "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.5.3.tgz",
+ "integrity": "sha512-pVKE4UdSQ7DvHzivsCIFx2BJn1mHG6KsyrFcaxFx6tONdneEuThrDx0Cj3AMg58KyN4pzYT+LHOotxDQDjNvkw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/parser": "^7.29.3",
+ "@babel/types": "^7.29.0",
+ "source-map-js": "^1.2.1"
+ }
+ },
+ "node_modules/make-dir": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz",
+ "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "semver": "^7.5.3"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/math-intrinsics": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
+ "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/md5": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz",
+ "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==",
+ "license": "BSD-3-Clause",
+ "optional": true,
+ "dependencies": {
+ "charenc": "0.0.2",
+ "crypt": "0.0.2",
+ "is-buffer": "~1.1.6"
+ }
+ },
+ "node_modules/md5.js": {
+ "version": "1.3.5",
+ "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz",
+ "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==",
+ "license": "MIT",
+ "dependencies": {
+ "hash-base": "^3.0.0",
+ "inherits": "^2.0.1",
+ "safe-buffer": "^5.1.2"
+ }
+ },
+ "node_modules/merge2": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
+ "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/micromatch": {
+ "version": "4.0.8",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
+ "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "braces": "^3.0.3",
+ "picomatch": "^2.3.1"
+ },
+ "engines": {
+ "node": ">=8.6"
+ }
+ },
+ "node_modules/miller-rabin": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz",
+ "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==",
+ "license": "MIT",
+ "dependencies": {
+ "bn.js": "^4.0.0",
+ "brorand": "^1.0.1"
+ },
+ "bin": {
+ "miller-rabin": "bin/miller-rabin"
+ }
+ },
+ "node_modules/miller-rabin/node_modules/bn.js": {
+ "version": "4.12.3",
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.3.tgz",
+ "integrity": "sha512-fGTi3gxV/23FTYdAoUtLYp6qySe2KE3teyZitipKNRuVYcBkoP/bB3guXN/XVKUe9mxCHXnc9C4ocyz8OmgN0g==",
+ "license": "MIT"
+ },
+ "node_modules/mime-db": {
+ "version": "1.52.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
+ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/mime-types": {
+ "version": "2.1.35",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
+ "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
+ "license": "MIT",
+ "dependencies": {
+ "mime-db": "1.52.0"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/min-indent": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz",
+ "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/minimalistic-assert": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
+ "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==",
+ "license": "ISC"
+ },
+ "node_modules/minimalistic-crypto-utils": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
+ "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==",
+ "license": "MIT"
+ },
+ "node_modules/minimatch": {
+ "version": "3.1.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz",
+ "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/minimist": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
+ "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/ms": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
+ "license": "MIT"
+ },
+ "node_modules/multiformats": {
+ "version": "9.9.0",
+ "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz",
+ "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==",
+ "license": "(Apache-2.0 AND MIT)"
+ },
+ "node_modules/mustache": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/mustache/-/mustache-4.0.0.tgz",
+ "integrity": "sha512-FJgjyX/IVkbXBXYUwH+OYwQKqWpFPLaLVESd70yHjSDunwzV2hZOoTBvPf4KLoxesUzzyfTH6F784Uqd7Wm5yA==",
+ "license": "MIT",
+ "bin": {
+ "mustache": "bin/mustache"
+ },
+ "engines": {
+ "npm": ">=1.4.0"
+ }
+ },
+ "node_modules/nan": {
+ "version": "2.27.0",
+ "resolved": "https://registry.npmjs.org/nan/-/nan-2.27.0.tgz",
+ "integrity": "sha512-hC+0LidcL3XE4rp1C4H54KujgXKzbfyTngZTwBByQxsOxCEKZT0MPQ4hOKUH2jU1OYstqdDH4onyHPDzcV0XdQ==",
+ "license": "MIT"
+ },
+ "node_modules/nanoid": {
+ "version": "3.3.12",
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz",
+ "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "license": "MIT",
+ "bin": {
+ "nanoid": "bin/nanoid.cjs"
+ },
+ "engines": {
+ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
+ }
+ },
+ "node_modules/natural-compare": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
+ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/near-abi": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/near-abi/-/near-abi-0.2.0.tgz",
+ "integrity": "sha512-kCwSf/3fraPU2zENK18sh+kKG4uKbEUEQdyWQkmW8ZofmLarObIz2+zAYjA1teDZLeMvEQew3UysnPDXgjneaA==",
+ "license": "(MIT AND Apache-2.0)",
+ "dependencies": {
+ "@types/json-schema": "^7.0.11"
+ }
+ },
+ "node_modules/near-api-js": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/near-api-js/-/near-api-js-5.1.1.tgz",
+ "integrity": "sha512-h23BGSKxNv8ph+zU6snicstsVK1/CTXsQz4LuGGwoRE24Hj424nSe4+/1tzoiC285Ljf60kPAqRCmsfv9etF2g==",
+ "license": "(MIT AND Apache-2.0)",
+ "dependencies": {
+ "@near-js/accounts": "1.4.1",
+ "@near-js/crypto": "1.4.2",
+ "@near-js/keystores": "0.2.2",
+ "@near-js/keystores-browser": "0.2.2",
+ "@near-js/keystores-node": "0.1.2",
+ "@near-js/providers": "1.0.3",
+ "@near-js/signers": "0.2.2",
+ "@near-js/transactions": "1.3.3",
+ "@near-js/types": "0.3.1",
+ "@near-js/utils": "1.1.0",
+ "@near-js/wallet-account": "1.3.3",
+ "@noble/curves": "1.8.1",
+ "borsh": "1.0.0",
+ "depd": "2.0.0",
+ "http-errors": "1.7.2",
+ "near-abi": "0.2.0",
+ "node-fetch": "2.6.7"
+ }
+ },
+ "node_modules/near-api-js/node_modules/borsh": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/borsh/-/borsh-1.0.0.tgz",
+ "integrity": "sha512-fSVWzzemnyfF89EPwlUNsrS5swF5CrtiN4e+h0/lLf4dz2he4L3ndM20PS9wj7ICSkXJe/TQUHdaPTq15b1mNQ==",
+ "license": "Apache-2.0"
+ },
+ "node_modules/near-api-js/node_modules/node-fetch": {
+ "version": "2.6.7",
+ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
+ "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
+ "license": "MIT",
+ "dependencies": {
+ "whatwg-url": "^5.0.0"
+ },
+ "engines": {
+ "node": "4.x || >=6.0.0"
+ },
+ "peerDependencies": {
+ "encoding": "^0.1.0"
+ },
+ "peerDependenciesMeta": {
+ "encoding": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/near-api-js/node_modules/tr46": {
+ "version": "0.0.3",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
+ "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==",
+ "license": "MIT"
+ },
+ "node_modules/near-api-js/node_modules/webidl-conversions": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
+ "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==",
+ "license": "BSD-2-Clause"
+ },
+ "node_modules/near-api-js/node_modules/whatwg-url": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
+ "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
+ "license": "MIT",
+ "dependencies": {
+ "tr46": "~0.0.3",
+ "webidl-conversions": "^3.0.0"
+ }
+ },
+ "node_modules/next": {
+ "version": "16.1.6",
+ "resolved": "https://registry.npmjs.org/next/-/next-16.1.6.tgz",
+ "integrity": "sha512-hkyRkcu5x/41KoqnROkfTm2pZVbKxvbZRuNvKXLRXxs3VfyO0WhY50TQS40EuKO9SW3rBj/sF3WbVwDACeMZyw==",
+ "license": "MIT",
+ "dependencies": {
+ "@next/env": "16.1.6",
+ "@swc/helpers": "0.5.15",
+ "baseline-browser-mapping": "^2.8.3",
+ "caniuse-lite": "^1.0.30001579",
+ "postcss": "8.4.31",
+ "styled-jsx": "5.1.6"
+ },
+ "bin": {
+ "next": "dist/bin/next"
+ },
+ "engines": {
+ "node": ">=20.9.0"
+ },
+ "optionalDependencies": {
+ "@next/swc-darwin-arm64": "16.1.6",
+ "@next/swc-darwin-x64": "16.1.6",
+ "@next/swc-linux-arm64-gnu": "16.1.6",
+ "@next/swc-linux-arm64-musl": "16.1.6",
+ "@next/swc-linux-x64-gnu": "16.1.6",
+ "@next/swc-linux-x64-musl": "16.1.6",
+ "@next/swc-win32-arm64-msvc": "16.1.6",
+ "@next/swc-win32-x64-msvc": "16.1.6",
+ "sharp": "^0.34.4"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": "^1.1.0",
+ "@playwright/test": "^1.51.1",
+ "babel-plugin-react-compiler": "*",
+ "react": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0",
+ "react-dom": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0",
+ "sass": "^1.3.0"
+ },
+ "peerDependenciesMeta": {
+ "@opentelemetry/api": {
+ "optional": true
+ },
+ "@playwright/test": {
+ "optional": true
+ },
+ "babel-plugin-react-compiler": {
+ "optional": true
+ },
+ "sass": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/next-themes": {
+ "version": "0.4.6",
+ "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.4.6.tgz",
+ "integrity": "sha512-pZvgD5L0IEvX5/9GWyHMf3m8BKiVQwsCMHfoFosXtXBMnaS0ZnIJ9ST4b4NqLVKDEm8QBxoNNGNaBv2JNF6XNA==",
+ "license": "MIT",
+ "peerDependencies": {
+ "react": "^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc",
+ "react-dom": "^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc"
+ }
+ },
+ "node_modules/next/node_modules/postcss": {
+ "version": "8.4.31",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz",
+ "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==",
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/postcss"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "nanoid": "^3.3.6",
+ "picocolors": "^1.0.0",
+ "source-map-js": "^1.0.2"
+ },
+ "engines": {
+ "node": "^10 || ^12 || >=14"
+ }
+ },
+ "node_modules/node-addon-api": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-3.2.1.tgz",
+ "integrity": "sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==",
+ "license": "MIT"
+ },
+ "node_modules/node-exports-info": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/node-exports-info/-/node-exports-info-1.6.0.tgz",
+ "integrity": "sha512-pyFS63ptit/P5WqUkt+UUfe+4oevH+bFeIiPPdfb0pFeYEu/1ELnJu5l+5EcTKYL5M7zaAa7S8ddywgXypqKCw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "array.prototype.flatmap": "^1.3.3",
+ "es-errors": "^1.3.0",
+ "object.entries": "^1.1.9",
+ "semver": "^6.3.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/node-exports-info/node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ }
+ },
+ "node_modules/node-fetch": {
+ "version": "2.7.0",
+ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz",
+ "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==",
+ "license": "MIT",
+ "dependencies": {
+ "whatwg-url": "^5.0.0"
+ },
+ "engines": {
+ "node": "4.x || >=6.0.0"
+ },
+ "peerDependencies": {
+ "encoding": "^0.1.0"
+ },
+ "peerDependenciesMeta": {
+ "encoding": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/node-fetch-native": {
+ "version": "1.6.7",
+ "resolved": "https://registry.npmjs.org/node-fetch-native/-/node-fetch-native-1.6.7.tgz",
+ "integrity": "sha512-g9yhqoedzIUm0nTnTqAQvueMPVOuIY16bqgAJJC8XOOubYFNwz6IER9qs0Gq2Xd0+CecCKFjtdDTMA4u4xG06Q==",
+ "license": "MIT"
+ },
+ "node_modules/node-fetch/node_modules/tr46": {
+ "version": "0.0.3",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
+ "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==",
+ "license": "MIT"
+ },
+ "node_modules/node-fetch/node_modules/webidl-conversions": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
+ "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==",
+ "license": "BSD-2-Clause"
+ },
+ "node_modules/node-fetch/node_modules/whatwg-url": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
+ "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
+ "license": "MIT",
+ "dependencies": {
+ "tr46": "~0.0.3",
+ "webidl-conversions": "^3.0.0"
+ }
+ },
+ "node_modules/node-gyp-build": {
+ "version": "4.8.4",
+ "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.4.tgz",
+ "integrity": "sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==",
+ "license": "MIT",
+ "bin": {
+ "node-gyp-build": "bin.js",
+ "node-gyp-build-optional": "optional.js",
+ "node-gyp-build-test": "build-test.js"
+ }
+ },
+ "node_modules/node-mock-http": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/node-mock-http/-/node-mock-http-1.0.4.tgz",
+ "integrity": "sha512-8DY+kFsDkNXy1sJglUfuODx1/opAGJGyrTuFqEoN90oRc2Vk0ZbD4K2qmKXBBEhZQzdKHIVfEJpDU8Ak2NJEvQ==",
+ "license": "MIT"
+ },
+ "node_modules/node-releases": {
+ "version": "2.0.46",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.46.tgz",
+ "integrity": "sha512-GYVXHE2KnrzAfsAjl4uP++evGFCrAU1jta4ubEjIG7YWt/64Gqv66a30yKwWczVjA6j3bM4nBwH7Pk1JmDHaxQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/nofilter": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-3.1.0.tgz",
+ "integrity": "sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=12.19"
+ }
+ },
+ "node_modules/normalize-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
+ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/nwsapi": {
+ "version": "2.2.23",
+ "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.23.tgz",
+ "integrity": "sha512-7wfH4sLbt4M0gCDzGE6vzQBo0bfTKjU7Sfpqy/7gs1qBfYz2vEJH6vXcBKpO3+6Yu1telwd0t9HpyOoLEQQbIQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/object-assign": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
+ "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/object-inspect": {
+ "version": "1.13.4",
+ "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz",
+ "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/object-keys": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
+ "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/object.assign": {
+ "version": "4.1.7",
+ "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz",
+ "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.8",
+ "call-bound": "^1.0.3",
+ "define-properties": "^1.2.1",
+ "es-object-atoms": "^1.0.0",
+ "has-symbols": "^1.1.0",
+ "object-keys": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/object.entries": {
+ "version": "1.1.9",
+ "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz",
+ "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.8",
+ "call-bound": "^1.0.4",
+ "define-properties": "^1.2.1",
+ "es-object-atoms": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/object.fromentries": {
+ "version": "2.0.8",
+ "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz",
+ "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.2",
+ "es-object-atoms": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/object.groupby": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz",
+ "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/object.values": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz",
+ "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.8",
+ "call-bound": "^1.0.3",
+ "define-properties": "^1.2.1",
+ "es-object-atoms": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/obug": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/obug/-/obug-2.1.1.tgz",
+ "integrity": "sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==",
+ "dev": true,
+ "funding": [
+ "https://github.com/sponsors/sxzz",
+ "https://opencollective.com/debug"
+ ],
+ "license": "MIT"
+ },
+ "node_modules/ofetch": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/ofetch/-/ofetch-1.5.1.tgz",
+ "integrity": "sha512-2W4oUZlVaqAPAil6FUg/difl6YhqhUR7x2eZY4bQCko22UXg3hptq9KLQdqFClV+Wu85UX7hNtdGTngi/1BxcA==",
+ "license": "MIT",
+ "dependencies": {
+ "destr": "^2.0.5",
+ "node-fetch-native": "^1.6.7",
+ "ufo": "^1.6.1"
+ }
+ },
+ "node_modules/on-exit-leak-free": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/on-exit-leak-free/-/on-exit-leak-free-2.1.2.tgz",
+ "integrity": "sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/optionator": {
+ "version": "0.9.4",
+ "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz",
+ "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "deep-is": "^0.1.3",
+ "fast-levenshtein": "^2.0.6",
+ "levn": "^0.4.1",
+ "prelude-ls": "^1.2.1",
+ "type-check": "^0.4.0",
+ "word-wrap": "^1.2.5"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/own-keys": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz",
+ "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "get-intrinsic": "^1.2.6",
+ "object-keys": "^1.1.1",
+ "safe-push-apply": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/ox": {
+ "version": "0.6.9",
+ "resolved": "https://registry.npmjs.org/ox/-/ox-0.6.9.tgz",
+ "integrity": "sha512-wi5ShvzE4eOcTwQVsIPdFr+8ycyX+5le/96iAJutaZAvCes1J0+RvpEPg5QDPDiaR0XQQAvZVl7AwqQcINuUug==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/wevm"
+ }
+ ],
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "@adraffy/ens-normalize": "^1.10.1",
+ "@noble/curves": "^1.6.0",
+ "@noble/hashes": "^1.5.0",
+ "@scure/bip32": "^1.5.0",
+ "@scure/bip39": "^1.4.0",
+ "abitype": "^1.0.6",
+ "eventemitter3": "5.0.1"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.4.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/p-limit": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
+ "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "yocto-queue": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/p-locate": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
+ "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-limit": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/p-try": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
+ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/parent-module": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
+ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "callsites": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/parse-asn1": {
+ "version": "5.1.9",
+ "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.9.tgz",
+ "integrity": "sha512-fIYNuZ/HastSb80baGOuPRo1O9cf4baWw5WsAp7dBuUzeTD/BoaG8sVTdlPFksBE2lF21dN+A1AnrpIjSWqHHg==",
+ "license": "ISC",
+ "dependencies": {
+ "asn1.js": "^4.10.1",
+ "browserify-aes": "^1.2.0",
+ "evp_bytestokey": "^1.0.3",
+ "pbkdf2": "^3.1.5",
+ "safe-buffer": "^5.2.1"
+ },
+ "engines": {
+ "node": ">= 0.10"
+ }
+ },
+ "node_modules/parse5": {
+ "version": "7.3.0",
+ "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz",
+ "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "entities": "^6.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/inikulin/parse5?sponsor=1"
+ }
+ },
+ "node_modules/path-exists": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/path-key": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/path-parse": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/pathe": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz",
+ "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/pbkdf2": {
+ "version": "3.1.6",
+ "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.6.tgz",
+ "integrity": "sha512-BT6eelPB1EyGHo8pC0o9Bl6k6SYVhKO1jEbd3lcTrtr7XHdjP8BW1YpfCV3G9Kwkxgattk+S5q2/RvuttCsS1g==",
+ "license": "MIT",
+ "dependencies": {
+ "create-hash": "^1.2.0",
+ "create-hmac": "^1.1.7",
+ "ripemd160": "^2.0.3",
+ "safe-buffer": "^5.2.1",
+ "sha.js": "^2.4.12",
+ "to-buffer": "^1.2.2"
+ },
+ "engines": {
+ "node": ">= 0.10"
+ }
+ },
+ "node_modules/picocolors": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
+ "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==",
+ "license": "ISC"
+ },
+ "node_modules/picomatch": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz",
+ "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=8.6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
+ }
+ },
+ "node_modules/pino": {
+ "version": "10.0.0",
+ "resolved": "https://registry.npmjs.org/pino/-/pino-10.0.0.tgz",
+ "integrity": "sha512-eI9pKwWEix40kfvSzqEP6ldqOoBIN7dwD/o91TY5z8vQI12sAffpR/pOqAD1IVVwIVHDpHjkq0joBPdJD0rafA==",
+ "license": "MIT",
+ "dependencies": {
+ "atomic-sleep": "^1.0.0",
+ "on-exit-leak-free": "^2.1.0",
+ "pino-abstract-transport": "^2.0.0",
+ "pino-std-serializers": "^7.0.0",
+ "process-warning": "^5.0.0",
+ "quick-format-unescaped": "^4.0.3",
+ "real-require": "^0.2.0",
+ "safe-stable-stringify": "^2.3.1",
+ "slow-redact": "^0.3.0",
+ "sonic-boom": "^4.0.1",
+ "thread-stream": "^3.0.0"
+ },
+ "bin": {
+ "pino": "bin.js"
+ }
+ },
+ "node_modules/pino-abstract-transport": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-2.0.0.tgz",
+ "integrity": "sha512-F63x5tizV6WCh4R6RHyi2Ml+M70DNRXt/+HANowMflpgGFMAym/VKm6G7ZOQRjqN7XbGxK1Lg9t6ZrtzOaivMw==",
+ "license": "MIT",
+ "dependencies": {
+ "split2": "^4.0.0"
+ }
+ },
+ "node_modules/pino-std-serializers": {
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-7.1.0.tgz",
+ "integrity": "sha512-BndPH67/JxGExRgiX1dX0w1FvZck5Wa4aal9198SrRhZjH3GxKQUKIBnYJTdj2HDN3UQAS06HlfcSbQj2OHmaw==",
+ "license": "MIT"
+ },
+ "node_modules/pngjs": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-5.0.0.tgz",
+ "integrity": "sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
+ "node_modules/possible-typed-array-names": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz",
+ "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/postcss": {
+ "version": "8.5.15",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.15.tgz",
+ "integrity": "sha512-FfR8sjd4em2T6fb3I2MwAJU7HWVMr9zba+enmQeeWFfCbm+UOC/0X4DS8XtpUTMwWMGbjKYP7xjfNekzyGmB3A==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/postcss/"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/postcss"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "nanoid": "^3.3.12",
+ "picocolors": "^1.1.1",
+ "source-map-js": "^1.2.1"
+ },
+ "engines": {
+ "node": "^10 || ^12 || >=14"
+ }
+ },
+ "node_modules/preact": {
+ "version": "10.29.2",
+ "resolved": "https://registry.npmjs.org/preact/-/preact-10.29.2.tgz",
+ "integrity": "sha512-7tNmwg/7mzzAoB/8kSg6Hl37JraAZw3Z3A0JSY7VXlZwo82Xn0G7wKbNNs2qoF4ZEEsQGTwDAroNdqKs1ofJxQ==",
+ "license": "MIT",
+ "peer": true,
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/preact"
+ }
+ },
+ "node_modules/prelude-ls": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
+ "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/pretty-format": {
+ "version": "27.5.1",
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz",
+ "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-regex": "^5.0.1",
+ "ansi-styles": "^5.0.0",
+ "react-is": "^17.0.1"
+ },
+ "engines": {
+ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
+ }
+ },
+ "node_modules/pretty-format/node_modules/react-is": {
+ "version": "17.0.2",
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
+ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/process-nextick-args": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
+ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
+ "license": "MIT"
+ },
+ "node_modules/process-warning": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-5.0.0.tgz",
+ "integrity": "sha512-a39t9ApHNx2L4+HBnQKqxxHNs1r7KF+Intd8Q/g1bUh6q0WIp9voPXJ/x0j+ZL45KF1pJd9+q2jLIRMfvEshkA==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/fastify"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/fastify"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/prop-types": {
+ "version": "15.8.1",
+ "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz",
+ "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "loose-envify": "^1.4.0",
+ "object-assign": "^4.1.1",
+ "react-is": "^16.13.1"
+ }
+ },
+ "node_modules/prop-types/node_modules/react-is": {
+ "version": "16.13.1",
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
+ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/protobufjs": {
+ "version": "7.5.5",
+ "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.5.5.tgz",
+ "integrity": "sha512-3wY1AxV+VBNW8Yypfd1yQY9pXnqTAN+KwQxL8iYm3/BjKYMNg4i0owhEe26PWDOMaIrzeeF98Lqd5NGz4omiIg==",
+ "hasInstallScript": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "@protobufjs/aspromise": "^1.1.2",
+ "@protobufjs/base64": "^1.1.2",
+ "@protobufjs/codegen": "^2.0.4",
+ "@protobufjs/eventemitter": "^1.1.0",
+ "@protobufjs/fetch": "^1.1.0",
+ "@protobufjs/float": "^1.0.2",
+ "@protobufjs/inquire": "^1.1.0",
+ "@protobufjs/path": "^1.1.2",
+ "@protobufjs/pool": "^1.1.0",
+ "@protobufjs/utf8": "^1.1.0",
+ "@types/node": ">=13.7.0",
+ "long": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ }
+ },
+ "node_modules/proxy-compare": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/proxy-compare/-/proxy-compare-3.0.1.tgz",
+ "integrity": "sha512-V9plBAt3qjMlS1+nC8771KNf6oJ12gExvaxnNzN/9yVRLdTv/lc+oJlnSzrdYDAvBfTStPCoiaCOTmTs0adv7Q==",
+ "license": "MIT"
+ },
+ "node_modules/proxy-from-env": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-2.1.0.tgz",
+ "integrity": "sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/public-encrypt": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz",
+ "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==",
+ "license": "MIT",
+ "dependencies": {
+ "bn.js": "^4.1.0",
+ "browserify-rsa": "^4.0.0",
+ "create-hash": "^1.1.0",
+ "parse-asn1": "^5.0.0",
+ "randombytes": "^2.0.1",
+ "safe-buffer": "^5.1.2"
+ }
+ },
+ "node_modules/public-encrypt/node_modules/bn.js": {
+ "version": "4.12.3",
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.3.tgz",
+ "integrity": "sha512-fGTi3gxV/23FTYdAoUtLYp6qySe2KE3teyZitipKNRuVYcBkoP/bB3guXN/XVKUe9mxCHXnc9C4ocyz8OmgN0g==",
+ "license": "MIT"
+ },
+ "node_modules/punycode": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz",
+ "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/pushdata-bitcoin": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/pushdata-bitcoin/-/pushdata-bitcoin-1.0.1.tgz",
+ "integrity": "sha512-hw7rcYTJRAl4olM8Owe8x0fBuJJ+WGbMhQuLWOXEMN3PxPCKQHRkhfL+XG0+iXUmSHjkMmb3Ba55Mt21cZc9kQ==",
+ "license": "MIT",
+ "dependencies": {
+ "bitcoin-ops": "^1.3.0"
+ }
+ },
+ "node_modules/qrcode": {
+ "version": "1.5.3",
+ "resolved": "https://registry.npmjs.org/qrcode/-/qrcode-1.5.3.tgz",
+ "integrity": "sha512-puyri6ApkEHYiVl4CFzo1tDkAZ+ATcnbJrJ6RiBM1Fhctdn/ix9MTE3hRph33omisEbC/2fcfemsseiKgBPKZg==",
+ "license": "MIT",
+ "dependencies": {
+ "dijkstrajs": "^1.0.1",
+ "encode-utf8": "^1.0.3",
+ "pngjs": "^5.0.0",
+ "yargs": "^15.3.1"
+ },
+ "bin": {
+ "qrcode": "bin/qrcode"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
+ "node_modules/queue-microtask": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
+ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/quick-format-unescaped": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz",
+ "integrity": "sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==",
+ "license": "MIT"
+ },
+ "node_modules/radix3": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/radix3/-/radix3-1.1.2.tgz",
+ "integrity": "sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA==",
+ "license": "MIT"
+ },
+ "node_modules/randombytes": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
+ "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
+ "license": "MIT",
+ "dependencies": {
+ "safe-buffer": "^5.1.0"
+ }
+ },
+ "node_modules/randomfill": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz",
+ "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==",
+ "license": "MIT",
+ "dependencies": {
+ "randombytes": "^2.0.5",
+ "safe-buffer": "^5.1.0"
+ }
+ },
+ "node_modules/react": {
+ "version": "19.2.3",
+ "resolved": "https://registry.npmjs.org/react/-/react-19.2.3.tgz",
+ "integrity": "sha512-Ku/hhYbVjOQnXDZFv2+RibmLFGwFdeeKHFcOTlrt7xplBnya5OGn/hIRDsqDiSUcfORsDC7MPxwork8jBwsIWA==",
+ "license": "MIT",
+ "peer": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/react-dom": {
+ "version": "19.2.3",
+ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.3.tgz",
+ "integrity": "sha512-yELu4WmLPw5Mr/lmeEpox5rw3RETacE++JgHqQzd2dg+YbJuat3jH4ingc+WPZhxaoFzdv9y33G+F7Nl5O0GBg==",
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "scheduler": "^0.27.0"
+ },
+ "peerDependencies": {
+ "react": "^19.2.3"
+ }
+ },
+ "node_modules/react-is": {
+ "version": "19.2.6",
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-19.2.6.tgz",
+ "integrity": "sha512-XjBR15BhXuylgWGuslhDKqlSayuqvqBX91BP8pauG8kd1zY8kotkNWbXksTCNRarse4kuGbe2kIY05ARtwNIvw==",
+ "license": "MIT",
+ "peer": true
+ },
+ "node_modules/react-redux": {
+ "version": "9.3.0",
+ "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-9.3.0.tgz",
+ "integrity": "sha512-KQopgqFo/p/fgmAs5qz6p5RWaNAzq40WAu7fJIXnQpYxFPbJYtsJPWvGeF2rOBaY/kEuV77AVsX8TsQzKm+A/g==",
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "@types/use-sync-external-store": "^0.0.6",
+ "use-sync-external-store": "^1.4.0"
+ },
+ "peerDependencies": {
+ "@types/react": "^18.2.25 || ^19",
+ "react": "^18.0 || ^19",
+ "redux": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "redux": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/react-remove-scroll": {
+ "version": "2.7.2",
+ "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.7.2.tgz",
+ "integrity": "sha512-Iqb9NjCCTt6Hf+vOdNIZGdTiH1QSqr27H/Ek9sv/a97gfueI/5h1s3yRi1nngzMUaOOToin5dI1dXKdXiF+u0Q==",
+ "license": "MIT",
+ "dependencies": {
+ "react-remove-scroll-bar": "^2.3.7",
+ "react-style-singleton": "^2.2.3",
+ "tslib": "^2.1.0",
+ "use-callback-ref": "^1.3.3",
+ "use-sidecar": "^1.1.3"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/react-remove-scroll-bar": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.8.tgz",
+ "integrity": "sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==",
+ "license": "MIT",
+ "dependencies": {
+ "react-style-singleton": "^2.2.2",
+ "tslib": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/react-style-singleton": {
+ "version": "2.2.3",
+ "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.3.tgz",
+ "integrity": "sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==",
+ "license": "MIT",
+ "dependencies": {
+ "get-nonce": "^1.0.0",
+ "tslib": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/readable-stream": {
+ "version": "3.6.2",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
+ "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
+ "license": "MIT",
+ "dependencies": {
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/readdirp": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-5.0.0.tgz",
+ "integrity": "sha512-9u/XQ1pvrQtYyMpZe7DXKv2p5CNvyVwzUB6uhLAnQwHMSgKMBR62lc7AHljaeteeHXn11XTAaLLUVZYVZyuRBQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 20.19.0"
+ },
+ "funding": {
+ "type": "individual",
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/real-require": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/real-require/-/real-require-0.2.0.tgz",
+ "integrity": "sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 12.13.0"
+ }
+ },
+ "node_modules/recharts": {
+ "version": "3.8.1",
+ "resolved": "https://registry.npmjs.org/recharts/-/recharts-3.8.1.tgz",
+ "integrity": "sha512-mwzmO1s9sFL0TduUpwndxCUNoXsBw3u3E/0+A+cLcrSfQitSG62L32N69GhqUrrT5qKcAE3pCGVINC6pqkBBQg==",
+ "license": "MIT",
+ "workspaces": [
+ "www"
+ ],
+ "dependencies": {
+ "@reduxjs/toolkit": "^1.9.0 || 2.x.x",
+ "clsx": "^2.1.1",
+ "decimal.js-light": "^2.5.1",
+ "es-toolkit": "^1.39.3",
+ "eventemitter3": "^5.0.1",
+ "immer": "^10.1.1",
+ "react-redux": "8.x.x || 9.x.x",
+ "reselect": "5.1.1",
+ "tiny-invariant": "^1.3.3",
+ "use-sync-external-store": "^1.2.2",
+ "victory-vendor": "^37.0.2"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "peerDependencies": {
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
+ "react-dom": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
+ "react-is": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"
+ }
+ },
+ "node_modules/redent": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz",
+ "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "indent-string": "^4.0.0",
+ "strip-indent": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/redux": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/redux/-/redux-5.0.1.tgz",
+ "integrity": "sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w==",
+ "license": "MIT",
+ "peer": true
+ },
+ "node_modules/redux-thunk": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/redux-thunk/-/redux-thunk-3.1.0.tgz",
+ "integrity": "sha512-NW2r5T6ksUKXCabzhL9z+h206HQw/NJkcLm1GPImRQ8IzfXwRGqjVhKJGauHirT0DAuyy6hjdnMZaRoAcy0Klw==",
+ "license": "MIT",
+ "peerDependencies": {
+ "redux": "^5.0.0"
+ }
+ },
+ "node_modules/reflect.getprototypeof": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz",
+ "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.8",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.9",
+ "es-errors": "^1.3.0",
+ "es-object-atoms": "^1.0.0",
+ "get-intrinsic": "^1.2.7",
+ "get-proto": "^1.0.1",
+ "which-builtin-type": "^1.2.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/regexp.prototype.flags": {
+ "version": "1.5.4",
+ "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz",
+ "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.8",
+ "define-properties": "^1.2.1",
+ "es-errors": "^1.3.0",
+ "get-proto": "^1.0.1",
+ "gopd": "^1.2.0",
+ "set-function-name": "^2.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/require-addon": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/require-addon/-/require-addon-1.2.0.tgz",
+ "integrity": "sha512-VNPDZlYgIYQwWp9jMTzljx+k0ZtatKlcvOhktZ/anNPI3dQ9NXk7cq2U4iJ1wd9IrytRnYhyEocFWbkdPb+MYA==",
+ "license": "Apache-2.0",
+ "optional": true,
+ "dependencies": {
+ "bare-addon-resolve": "^1.3.0"
+ },
+ "engines": {
+ "bare": ">=1.10.0"
+ }
+ },
+ "node_modules/require-directory": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
+ "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/require-main-filename": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
+ "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==",
+ "license": "ISC"
+ },
+ "node_modules/reselect": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/reselect/-/reselect-5.1.1.tgz",
+ "integrity": "sha512-K/BG6eIky/SBpzfHZv/dd+9JBFiS4SWV7FIujVyJRux6e45+73RaUHXLmIR1f7WOMaQ0U1km6qwklRQxpJJY0w==",
+ "license": "MIT"
+ },
+ "node_modules/resolve": {
+ "version": "2.0.0-next.7",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.7.tgz",
+ "integrity": "sha512-tqt+NBWwyaMgw3zDsnygx4CByWjQEJHOPMdslYhppaQSJUtL/D4JO9CcBBlhPoI8lz9oJIDXkwXfhF4aWqP8xQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "es-errors": "^1.3.0",
+ "is-core-module": "^2.16.2",
+ "node-exports-info": "^1.6.0",
+ "object-keys": "^1.1.1",
+ "path-parse": "^1.0.7",
+ "supports-preserve-symlinks-flag": "^1.0.0"
+ },
+ "bin": {
+ "resolve": "bin/resolve"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/resolve-from": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/resolve-pkg-maps": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz",
+ "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1"
+ }
+ },
+ "node_modules/reusify": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz",
+ "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "iojs": ">=1.0.0",
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/ripemd160": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.3.tgz",
+ "integrity": "sha512-5Di9UC0+8h1L6ZD2d7awM7E/T4uA1fJRlx6zk/NvdCCVEoAnFqvHmCuNeIKoCeIixBX/q8uM+6ycDvF8woqosA==",
+ "license": "MIT",
+ "dependencies": {
+ "hash-base": "^3.1.2",
+ "inherits": "^2.0.4"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/ripple-address-codec": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/ripple-address-codec/-/ripple-address-codec-5.0.0.tgz",
+ "integrity": "sha512-de7osLRH/pt5HX2xw2TRJtbdLLWHu0RXirpQaEeCnWKY5DYHykh3ETSkofvm0aX0LJiV7kwkegJxQkmbO94gWw==",
+ "license": "ISC",
+ "dependencies": {
+ "@scure/base": "^1.1.3",
+ "@xrplf/isomorphic": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 16"
+ }
+ },
+ "node_modules/ripple-binary-codec": {
+ "version": "2.7.0",
+ "resolved": "https://registry.npmjs.org/ripple-binary-codec/-/ripple-binary-codec-2.7.0.tgz",
+ "integrity": "sha512-gEBqan5muVp+q7jgZ6aUniSyN+e4FKRzn9uFAeFSIW7IgvkezP1cUolNtpahQ+jvaSK/33hxZA7wNmn1mc330g==",
+ "license": "ISC",
+ "dependencies": {
+ "@xrplf/isomorphic": "^1.0.1",
+ "bignumber.js": "^9.0.0",
+ "ripple-address-codec": "^5.0.0"
+ },
+ "engines": {
+ "node": ">= 18"
+ }
+ },
+ "node_modules/ripple-keypairs": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ripple-keypairs/-/ripple-keypairs-2.0.0.tgz",
+ "integrity": "sha512-b5rfL2EZiffmklqZk1W+dvSy97v3V/C7936WxCCgDynaGPp7GE6R2XO7EU9O2LlM/z95rj870IylYnOQs+1Rag==",
+ "license": "ISC",
+ "dependencies": {
+ "@noble/curves": "^1.0.0",
+ "@xrplf/isomorphic": "^1.0.0",
+ "ripple-address-codec": "^5.0.0"
+ },
+ "engines": {
+ "node": ">= 16"
+ }
+ },
+ "node_modules/rolldown": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.2.tgz",
+ "integrity": "sha512-oZx5zVDtVB44AW3eaifgDml1gWRDZGvjcfdxonE4swNPG98PrrXjaO/KrnUjzlMnztCCRVlUueA1kCXhARGk6g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@oxc-project/types": "=0.132.0",
+ "@rolldown/pluginutils": "^1.0.0"
+ },
+ "bin": {
+ "rolldown": "bin/cli.mjs"
+ },
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ },
+ "optionalDependencies": {
+ "@rolldown/binding-android-arm64": "1.0.2",
+ "@rolldown/binding-darwin-arm64": "1.0.2",
+ "@rolldown/binding-darwin-x64": "1.0.2",
+ "@rolldown/binding-freebsd-x64": "1.0.2",
+ "@rolldown/binding-linux-arm-gnueabihf": "1.0.2",
+ "@rolldown/binding-linux-arm64-gnu": "1.0.2",
+ "@rolldown/binding-linux-arm64-musl": "1.0.2",
+ "@rolldown/binding-linux-ppc64-gnu": "1.0.2",
+ "@rolldown/binding-linux-s390x-gnu": "1.0.2",
+ "@rolldown/binding-linux-x64-gnu": "1.0.2",
+ "@rolldown/binding-linux-x64-musl": "1.0.2",
+ "@rolldown/binding-openharmony-arm64": "1.0.2",
+ "@rolldown/binding-wasm32-wasi": "1.0.2",
+ "@rolldown/binding-win32-arm64-msvc": "1.0.2",
+ "@rolldown/binding-win32-x64-msvc": "1.0.2"
+ }
+ },
+ "node_modules/rpc-websockets": {
+ "version": "9.3.9",
+ "resolved": "https://registry.npmjs.org/rpc-websockets/-/rpc-websockets-9.3.9.tgz",
+ "integrity": "sha512-2iQDaTB4g5fDB2ihrTFSJSibCEuxaRi1q7qTW7ZO9/M5/TC+ToHA4D9/ffNLEbAoHNNrcdeP05oATNk44SKZXA==",
+ "license": "LGPL-3.0-only",
+ "dependencies": {
+ "@swc/helpers": "^0.5.11",
+ "@types/uuid": "^10.0.0",
+ "@types/ws": "^8.2.2",
+ "buffer": "^6.0.3",
+ "eventemitter3": "^5.0.1",
+ "uuid": "^14.0.0",
+ "ws": "^8.5.0"
+ },
+ "funding": {
+ "type": "paypal",
+ "url": "https://paypal.me/kozjak"
+ },
+ "optionalDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": "^6.0.0"
+ }
+ },
+ "node_modules/rpc-websockets/node_modules/@types/ws": {
+ "version": "8.18.1",
+ "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.18.1.tgz",
+ "integrity": "sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==",
+ "license": "MIT",
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
+ "node_modules/rpc-websockets/node_modules/uuid": {
+ "version": "14.0.0",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-14.0.0.tgz",
+ "integrity": "sha512-Qo+uWgilfSmAhXCMav1uYFynlQO7fMFiMVZsQqZRMIXp0O7rR7qjkj+cPvBHLgBqi960QCoo/PH2/6ZtVqKvrg==",
+ "funding": [
+ "https://github.com/sponsors/broofa",
+ "https://github.com/sponsors/ctavan"
+ ],
+ "license": "MIT",
+ "bin": {
+ "uuid": "dist-node/bin/uuid"
+ }
+ },
+ "node_modules/rrweb-cssom": {
+ "version": "0.8.0",
+ "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.8.0.tgz",
+ "integrity": "sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/run-parallel": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
+ "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "queue-microtask": "^1.2.2"
+ }
+ },
+ "node_modules/rxjs": {
+ "version": "7.8.2",
+ "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz",
+ "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "tslib": "^2.1.0"
+ }
+ },
+ "node_modules/safe-array-concat": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.4.tgz",
+ "integrity": "sha512-wtZlHyOje6OZTGqAoaDKxFkgRtkF9CnHAVnCHKfuj200wAgL+bSJhdsCD2l0Qx/2ekEXjPWcyKkfGb5CPboslg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.9",
+ "call-bound": "^1.0.4",
+ "get-intrinsic": "^1.3.0",
+ "has-symbols": "^1.1.0",
+ "isarray": "^2.0.5"
+ },
+ "engines": {
+ "node": ">=0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/safe-push-apply": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz",
+ "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "es-errors": "^1.3.0",
+ "isarray": "^2.0.5"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/safe-regex-test": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz",
+ "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.2",
+ "es-errors": "^1.3.0",
+ "is-regex": "^1.2.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/safe-stable-stringify": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz",
+ "integrity": "sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/safer-buffer": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/saxes": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz",
+ "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "xmlchars": "^2.2.0"
+ },
+ "engines": {
+ "node": ">=v12.22.7"
+ }
+ },
+ "node_modules/scheduler": {
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz",
+ "integrity": "sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==",
+ "license": "MIT"
+ },
+ "node_modules/secp256k1": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-5.0.1.tgz",
+ "integrity": "sha512-lDFs9AAIaWP9UCdtWrotXWWF9t8PWgQDcxqgAnpM9rMqxb3Oaq2J0thzPVSxBwdJgyQtkU/sYtFtbM1RSt/iYA==",
+ "hasInstallScript": true,
+ "license": "MIT",
+ "dependencies": {
+ "elliptic": "^6.5.7",
+ "node-addon-api": "^5.0.0",
+ "node-gyp-build": "^4.2.0"
+ },
+ "engines": {
+ "node": ">=18.0.0"
+ }
+ },
+ "node_modules/secp256k1/node_modules/node-addon-api": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz",
+ "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==",
+ "license": "MIT"
+ },
+ "node_modules/semver": {
+ "version": "7.8.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.1.tgz",
+ "integrity": "sha512-rkVq3IXh+4FDGch+KwzX3aV9W3kO54GyEgpvBzSyctDA6Xtd7RJQV1xmXbeQp5v7+VzLOfVqiutSE6GICgPFvg==",
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/set-blocking": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
+ "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==",
+ "license": "ISC"
+ },
+ "node_modules/set-function-length": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz",
+ "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==",
+ "license": "MIT",
+ "dependencies": {
+ "define-data-property": "^1.1.4",
+ "es-errors": "^1.3.0",
+ "function-bind": "^1.1.2",
+ "get-intrinsic": "^1.2.4",
+ "gopd": "^1.0.1",
+ "has-property-descriptors": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/set-function-name": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz",
+ "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "define-data-property": "^1.1.4",
+ "es-errors": "^1.3.0",
+ "functions-have-names": "^1.2.3",
+ "has-property-descriptors": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/set-proto": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz",
+ "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "dunder-proto": "^1.0.1",
+ "es-errors": "^1.3.0",
+ "es-object-atoms": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/setprototypeof": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz",
+ "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==",
+ "license": "ISC"
+ },
+ "node_modules/sha.js": {
+ "version": "2.4.12",
+ "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.12.tgz",
+ "integrity": "sha512-8LzC5+bvI45BjpfXU8V5fdU2mfeKiQe1D1gIMn7XUlF3OTUrpdJpPPH4EMAnF0DsHHdSZqCdSss5qCmJKuiO3w==",
+ "license": "(MIT AND BSD-3-Clause)",
+ "dependencies": {
+ "inherits": "^2.0.4",
+ "safe-buffer": "^5.2.1",
+ "to-buffer": "^1.2.0"
+ },
+ "bin": {
+ "sha.js": "bin.js"
+ },
+ "engines": {
+ "node": ">= 0.10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/sha1": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/sha1/-/sha1-1.1.1.tgz",
+ "integrity": "sha512-dZBS6OrMjtgVkopB1Gmo4RQCDKiZsqcpAQpkV/aaj+FCrCg8r4I4qMkDPQjBgLIxlmu9k4nUbWq6ohXahOneYA==",
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "charenc": ">= 0.0.1",
+ "crypt": ">= 0.0.1"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/sharp": {
+ "version": "0.34.5",
+ "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.34.5.tgz",
+ "integrity": "sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg==",
+ "hasInstallScript": true,
+ "license": "Apache-2.0",
+ "optional": true,
+ "dependencies": {
+ "@img/colour": "^1.0.0",
+ "detect-libc": "^2.1.2",
+ "semver": "^7.7.3"
+ },
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-darwin-arm64": "0.34.5",
+ "@img/sharp-darwin-x64": "0.34.5",
+ "@img/sharp-libvips-darwin-arm64": "1.2.4",
+ "@img/sharp-libvips-darwin-x64": "1.2.4",
+ "@img/sharp-libvips-linux-arm": "1.2.4",
+ "@img/sharp-libvips-linux-arm64": "1.2.4",
+ "@img/sharp-libvips-linux-ppc64": "1.2.4",
+ "@img/sharp-libvips-linux-riscv64": "1.2.4",
+ "@img/sharp-libvips-linux-s390x": "1.2.4",
+ "@img/sharp-libvips-linux-x64": "1.2.4",
+ "@img/sharp-libvips-linuxmusl-arm64": "1.2.4",
+ "@img/sharp-libvips-linuxmusl-x64": "1.2.4",
+ "@img/sharp-linux-arm": "0.34.5",
+ "@img/sharp-linux-arm64": "0.34.5",
+ "@img/sharp-linux-ppc64": "0.34.5",
+ "@img/sharp-linux-riscv64": "0.34.5",
+ "@img/sharp-linux-s390x": "0.34.5",
+ "@img/sharp-linux-x64": "0.34.5",
+ "@img/sharp-linuxmusl-arm64": "0.34.5",
+ "@img/sharp-linuxmusl-x64": "0.34.5",
+ "@img/sharp-wasm32": "0.34.5",
+ "@img/sharp-win32-arm64": "0.34.5",
+ "@img/sharp-win32-ia32": "0.34.5",
+ "@img/sharp-win32-x64": "0.34.5"
+ }
+ },
+ "node_modules/shebang-command": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "shebang-regex": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/shebang-regex": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/side-channel": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz",
+ "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "es-errors": "^1.3.0",
+ "object-inspect": "^1.13.3",
+ "side-channel-list": "^1.0.0",
+ "side-channel-map": "^1.0.1",
+ "side-channel-weakmap": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/side-channel-list": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz",
+ "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "es-errors": "^1.3.0",
+ "object-inspect": "^1.13.4"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/side-channel-map": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz",
+ "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.2",
+ "es-errors": "^1.3.0",
+ "get-intrinsic": "^1.2.5",
+ "object-inspect": "^1.13.3"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/side-channel-weakmap": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz",
+ "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.2",
+ "es-errors": "^1.3.0",
+ "get-intrinsic": "^1.2.5",
+ "object-inspect": "^1.13.3",
+ "side-channel-map": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/siginfo": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz",
+ "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/slow-redact": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/slow-redact/-/slow-redact-0.3.2.tgz",
+ "integrity": "sha512-MseHyi2+E/hBRqdOi5COy6wZ7j7DxXRz9NkseavNYSvvWC06D8a5cidVZX3tcG5eCW3NIyVU4zT63hw0Q486jw==",
+ "license": "MIT"
+ },
+ "node_modules/smart-buffer": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz",
+ "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 6.0.0",
+ "npm": ">= 3.0.0"
+ }
+ },
+ "node_modules/socks": {
+ "version": "2.8.9",
+ "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.9.tgz",
+ "integrity": "sha512-LJhUYUvItdQ0LkJTmPeaEObWXAqFyfmP85x0tch/ez9cahmhlBBLbIqDFnvBnUJGagb0JbIQrkBs1wJ+yRYpEw==",
+ "license": "MIT",
+ "dependencies": {
+ "ip-address": "^10.1.1",
+ "smart-buffer": "^4.2.0"
+ },
+ "engines": {
+ "node": ">= 10.0.0",
+ "npm": ">= 3.0.0"
+ }
+ },
+ "node_modules/socks-proxy-agent": {
+ "version": "8.0.5",
+ "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz",
+ "integrity": "sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==",
+ "license": "MIT",
+ "dependencies": {
+ "agent-base": "^7.1.2",
+ "debug": "^4.3.4",
+ "socks": "^2.8.3"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/sodium-native": {
+ "version": "4.3.3",
+ "resolved": "https://registry.npmjs.org/sodium-native/-/sodium-native-4.3.3.tgz",
+ "integrity": "sha512-OnxSlN3uyY8D0EsLHpmm2HOFmKddQVvEMmsakCrXUzSd8kjjbzL413t4ZNF3n0UxSwNgwTyUvkmZHTfuCeiYSw==",
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "require-addon": "^1.1.0"
+ }
+ },
+ "node_modules/sonic-boom": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.2.1.tgz",
+ "integrity": "sha512-w6AxtubXa2wTXAUsZMMWERrsIRAdrK0Sc+FUytWvYAhBJLyuI4llrMIC1DtlNSdI99EI86KZum2MMq3EAZlF9Q==",
+ "license": "MIT",
+ "dependencies": {
+ "atomic-sleep": "^1.0.0"
+ }
+ },
+ "node_modules/sonner": {
+ "version": "2.0.7",
+ "resolved": "https://registry.npmjs.org/sonner/-/sonner-2.0.7.tgz",
+ "integrity": "sha512-W6ZN4p58k8aDKA4XPcx2hpIQXBRAgyiWVkYhT7CvK6D3iAu7xjvVyhQHg2/iaKJZ1XVJ4r7XuwGL+WGEK37i9w==",
+ "license": "MIT",
+ "peerDependencies": {
+ "react": "^18.0.0 || ^19.0.0 || ^19.0.0-rc",
+ "react-dom": "^18.0.0 || ^19.0.0 || ^19.0.0-rc"
+ }
+ },
+ "node_modules/source-map-js": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
+ "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
+ "license": "BSD-3-Clause",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/split2": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz",
+ "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==",
+ "license": "ISC",
+ "engines": {
+ "node": ">= 10.x"
+ }
+ },
+ "node_modules/stable-hash": {
+ "version": "0.0.5",
+ "resolved": "https://registry.npmjs.org/stable-hash/-/stable-hash-0.0.5.tgz",
+ "integrity": "sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/stackback": {
+ "version": "0.0.2",
+ "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz",
+ "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/statuses": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
+ "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/std-env": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/std-env/-/std-env-4.1.0.tgz",
+ "integrity": "sha512-Rq7ybcX2RuC55r9oaPVEW7/xu3tj8u4GeBYHBWCychFtzMIr86A7e3PPEBPT37sHStKX3+TiX/Fr/ACmJLVlLQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/stop-iteration-iterator": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz",
+ "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "es-errors": "^1.3.0",
+ "internal-slot": "^1.1.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/stream-browserify": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz",
+ "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==",
+ "license": "MIT",
+ "dependencies": {
+ "inherits": "~2.0.4",
+ "readable-stream": "^3.5.0"
+ }
+ },
+ "node_modules/stream-chain": {
+ "version": "2.2.5",
+ "resolved": "https://registry.npmjs.org/stream-chain/-/stream-chain-2.2.5.tgz",
+ "integrity": "sha512-1TJmBx6aSWqZ4tx7aTpBDXK0/e2hhcNSTV8+CbFJtDjbb+I1mZ8lHit0Grw9GRT+6JbIrrDd8esncgBi8aBXGA==",
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/stream-json": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npmjs.org/stream-json/-/stream-json-1.9.1.tgz",
+ "integrity": "sha512-uWkjJ+2Nt/LO9Z/JyKZbMusL8Dkh97uUBTv3AJQ74y07lVahLY4eEFsPsE97pxYBwr8nnjMAIch5eqI0gPShyw==",
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "stream-chain": "^2.2.5"
+ }
+ },
+ "node_modules/string_decoder": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
+ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
+ "license": "MIT",
+ "dependencies": {
+ "safe-buffer": "~5.2.0"
+ }
+ },
+ "node_modules/string-width": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+ "license": "MIT",
+ "dependencies": {
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/string-width/node_modules/emoji-regex": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
+ "license": "MIT"
+ },
+ "node_modules/string.prototype.includes": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz",
+ "integrity": "sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.3"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/string.prototype.matchall": {
+ "version": "4.0.12",
+ "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz",
+ "integrity": "sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.8",
+ "call-bound": "^1.0.3",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.6",
+ "es-errors": "^1.3.0",
+ "es-object-atoms": "^1.0.0",
+ "get-intrinsic": "^1.2.6",
+ "gopd": "^1.2.0",
+ "has-symbols": "^1.1.0",
+ "internal-slot": "^1.1.0",
+ "regexp.prototype.flags": "^1.5.3",
+ "set-function-name": "^2.0.2",
+ "side-channel": "^1.1.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/string.prototype.repeat": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz",
+ "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "define-properties": "^1.1.3",
+ "es-abstract": "^1.17.5"
+ }
+ },
+ "node_modules/string.prototype.trim": {
+ "version": "1.2.10",
+ "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz",
+ "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.8",
+ "call-bound": "^1.0.2",
+ "define-data-property": "^1.1.4",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.5",
+ "es-object-atoms": "^1.0.0",
+ "has-property-descriptors": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/string.prototype.trimend": {
+ "version": "1.0.9",
+ "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz",
+ "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.8",
+ "call-bound": "^1.0.2",
+ "define-properties": "^1.2.1",
+ "es-object-atoms": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/string.prototype.trimstart": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz",
+ "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1",
+ "es-object-atoms": "^1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/strip-ansi": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+ "license": "MIT",
+ "dependencies": {
+ "ansi-regex": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/strip-bom": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
+ "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/strip-indent": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz",
+ "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "min-indent": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/strip-json-comments": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
+ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/style-vendorizer": {
+ "version": "2.2.3",
+ "resolved": "https://registry.npmjs.org/style-vendorizer/-/style-vendorizer-2.2.3.tgz",
+ "integrity": "sha512-/VDRsWvQAgspVy9eATN3z6itKTuyg+jW1q6UoTCQCFRqPDw8bi3E1hXIKnGw5LvXS2AQPuJ7Af4auTLYeBOLEg==",
+ "license": "MIT"
+ },
+ "node_modules/styled-jsx": {
+ "version": "5.1.6",
+ "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.6.tgz",
+ "integrity": "sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==",
+ "license": "MIT",
+ "dependencies": {
+ "client-only": "0.0.1"
+ },
+ "engines": {
+ "node": ">= 12.0.0"
+ },
+ "peerDependencies": {
+ "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0 || ^19.0.0-0"
+ },
+ "peerDependenciesMeta": {
+ "@babel/core": {
+ "optional": true
+ },
+ "babel-plugin-macros": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/superstruct": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/superstruct/-/superstruct-2.0.2.tgz",
+ "integrity": "sha512-uV+TFRZdXsqXTL2pRvujROjdZQ4RAlBUS5BTh9IGm+jTqQntYThciG/qu57Gs69yjnVUSqdxF9YLmSnpupBW9A==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/supports-preserve-symlinks-flag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/symbol-tree": {
+ "version": "3.2.4",
+ "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz",
+ "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/tailwind-merge": {
+ "version": "2.6.1",
+ "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-2.6.1.tgz",
+ "integrity": "sha512-Oo6tHdpZsGpkKG88HJ8RR1rg/RdnEkQEfMoEk2x1XRI3F1AxeU+ijRXpiVUF4UbLfcxxRGw6TbUINKYdWVsQTQ==",
+ "license": "MIT",
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/dcastil"
+ }
+ },
+ "node_modules/tailwindcss": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.3.0.tgz",
+ "integrity": "sha512-y6nxMGB1nMW9R6k96e5gdIFzcfL/gTJRNaqGes1YvkLnPVXzWgbqFF2yLC0T8G774n24cx3Pe8XrKoniCOAH+Q==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/tapable": {
+ "version": "2.3.3",
+ "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.3.tgz",
+ "integrity": "sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/webpack"
+ }
+ },
+ "node_modules/text-encoding-utf-8": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/text-encoding-utf-8/-/text-encoding-utf-8-1.0.2.tgz",
+ "integrity": "sha512-8bw4MY9WjdsD2aMtO0OzOCY3pXGYNx2d2FfHRVUKkiCPDWjKuOlhLVASS+pD7VkLTVjW268LYJHwsnPFlBpbAg=="
+ },
+ "node_modules/thread-stream": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-3.1.0.tgz",
+ "integrity": "sha512-OqyPZ9u96VohAyMfJykzmivOrY2wfMSf3C5TtFJVgN+Hm6aj+voFhlK+kZEIv2FBh1X6Xp3DlnCOfEQ3B2J86A==",
+ "license": "MIT",
+ "dependencies": {
+ "real-require": "^0.2.0"
+ }
+ },
+ "node_modules/tiny-invariant": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz",
+ "integrity": "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==",
+ "license": "MIT"
+ },
+ "node_modules/tiny-secp256k1": {
+ "version": "1.1.7",
+ "resolved": "https://registry.npmjs.org/tiny-secp256k1/-/tiny-secp256k1-1.1.7.tgz",
+ "integrity": "sha512-eb+F6NabSnjbLwNoC+2o5ItbmP1kg7HliWue71JgLegQt6A5mTN8YbvTLCazdlg6e5SV6A+r8OGvZYskdlmhqQ==",
+ "hasInstallScript": true,
+ "license": "MIT",
+ "dependencies": {
+ "bindings": "^1.3.0",
+ "bn.js": "^4.11.8",
+ "create-hmac": "^1.1.7",
+ "elliptic": "^6.4.0",
+ "nan": "^2.13.2"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/tiny-secp256k1/node_modules/bn.js": {
+ "version": "4.12.3",
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.3.tgz",
+ "integrity": "sha512-fGTi3gxV/23FTYdAoUtLYp6qySe2KE3teyZitipKNRuVYcBkoP/bB3guXN/XVKUe9mxCHXnc9C4ocyz8OmgN0g==",
+ "license": "MIT"
+ },
+ "node_modules/tinybench": {
+ "version": "2.9.0",
+ "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz",
+ "integrity": "sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/tinyexec": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.2.2.tgz",
+ "integrity": "sha512-M/Q0B2cp4K7kynaT/vnED1j8TlLY+Pp7C6Wl2bl/7u/F0mUVwdyOpwomQb8JpYLitHUssAJRmLZdMCGsrx7i+g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/tinyglobby": {
+ "version": "0.2.16",
+ "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.16.tgz",
+ "integrity": "sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "fdir": "^6.5.0",
+ "picomatch": "^4.0.4"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/SuperchupuDev"
+ }
+ },
+ "node_modules/tinyglobby/node_modules/fdir": {
+ "version": "6.5.0",
+ "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz",
+ "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=12.0.0"
+ },
+ "peerDependencies": {
+ "picomatch": "^3 || ^4"
+ },
+ "peerDependenciesMeta": {
+ "picomatch": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/tinyglobby/node_modules/picomatch": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz",
+ "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==",
+ "dev": true,
+ "license": "MIT",
+ "peer": true,
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
+ }
+ },
+ "node_modules/tinyrainbow": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-3.1.0.tgz",
+ "integrity": "sha512-Bf+ILmBgretUrdJxzXM0SgXLZ3XfiaUuOj/IKQHuTXip+05Xn+uyEYdVg0kYDipTBcLrCVyUzAPz7QmArb0mmw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/tldts": {
+ "version": "6.1.86",
+ "resolved": "https://registry.npmjs.org/tldts/-/tldts-6.1.86.tgz",
+ "integrity": "sha512-WMi/OQ2axVTf/ykqCQgXiIct+mSQDFdH2fkwhPwgEwvJ1kSzZRiinb0zF2Xb8u4+OqPChmyI6MEu4EezNJz+FQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "tldts-core": "^6.1.86"
+ },
+ "bin": {
+ "tldts": "bin/cli.js"
+ }
+ },
+ "node_modules/tldts-core": {
+ "version": "6.1.86",
+ "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.86.tgz",
+ "integrity": "sha512-Je6p7pkk+KMzMv2XXKmAE3McmolOQFdxkKw0R8EYNr7sELW46JqnNeTX8ybPiQgvg1ymCoF8LXs5fzFaZvJPTA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/to-buffer": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.2.2.tgz",
+ "integrity": "sha512-db0E3UJjcFhpDhAF4tLo03oli3pwl3dbnzXOUIlRKrp+ldk/VUxzpWYZENsw2SZiuBjHAk7DfB0VU7NKdpb6sw==",
+ "license": "MIT",
+ "dependencies": {
+ "isarray": "^2.0.5",
+ "safe-buffer": "^5.2.1",
+ "typed-array-buffer": "^1.0.3"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/to-regex-range": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
+ "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "is-number": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=8.0"
+ }
+ },
+ "node_modules/toidentifier": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz",
+ "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.6"
+ }
+ },
+ "node_modules/toml": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/toml/-/toml-3.0.0.tgz",
+ "integrity": "sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w==",
+ "license": "MIT"
+ },
+ "node_modules/tough-cookie": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-5.1.2.tgz",
+ "integrity": "sha512-FVDYdxtnj0G6Qm/DhNPSb8Ju59ULcup3tuJxkFb5K8Bv2pUXILbf0xZWU8PX8Ov19OXljbUyveOFwRMwkXzO+A==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "tldts": "^6.1.32"
+ },
+ "engines": {
+ "node": ">=16"
+ }
+ },
+ "node_modules/tr46": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz",
+ "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "punycode": "^2.3.1"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/ts-api-utils": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.5.0.tgz",
+ "integrity": "sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18.12"
+ },
+ "peerDependencies": {
+ "typescript": ">=4.8.4"
+ }
+ },
+ "node_modules/ts-mixer": {
+ "version": "6.0.4",
+ "resolved": "https://registry.npmjs.org/ts-mixer/-/ts-mixer-6.0.4.tgz",
+ "integrity": "sha512-ufKpbmrugz5Aou4wcr5Wc1UUFWOLhq+Fm6qa6P0w0K5Qw2yhaUoiWszhCVuNQyNwrlGiscHOmqYoAox1PtvgjA==",
+ "license": "MIT"
+ },
+ "node_modules/tsconfig-paths": {
+ "version": "3.15.0",
+ "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz",
+ "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/json5": "^0.0.29",
+ "json5": "^1.0.2",
+ "minimist": "^1.2.6",
+ "strip-bom": "^3.0.0"
+ }
+ },
+ "node_modules/tsconfig-paths/node_modules/json5": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
+ "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "minimist": "^1.2.0"
+ },
+ "bin": {
+ "json5": "lib/cli.js"
+ }
+ },
+ "node_modules/tslib": {
+ "version": "2.8.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
+ "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
+ "license": "0BSD",
+ "peer": true
+ },
+ "node_modules/tweetnacl": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz",
+ "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==",
+ "license": "Unlicense"
+ },
+ "node_modules/tweetnacl-util": {
+ "version": "0.15.1",
+ "resolved": "https://registry.npmjs.org/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz",
+ "integrity": "sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw==",
+ "license": "Unlicense"
+ },
+ "node_modules/type-check": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
+ "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "prelude-ls": "^1.2.1"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/typed-array-buffer": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz",
+ "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==",
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.3",
+ "es-errors": "^1.3.0",
+ "is-typed-array": "^1.1.14"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/typed-array-byte-length": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz",
+ "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.8",
+ "for-each": "^0.3.3",
+ "gopd": "^1.2.0",
+ "has-proto": "^1.2.0",
+ "is-typed-array": "^1.1.14"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/typed-array-byte-offset": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz",
+ "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "available-typed-arrays": "^1.0.7",
+ "call-bind": "^1.0.8",
+ "for-each": "^0.3.3",
+ "gopd": "^1.2.0",
+ "has-proto": "^1.2.0",
+ "is-typed-array": "^1.1.15",
+ "reflect.getprototypeof": "^1.0.9"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/typed-array-length": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz",
+ "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.7",
+ "for-each": "^0.3.3",
+ "gopd": "^1.0.1",
+ "is-typed-array": "^1.1.13",
+ "possible-typed-array-names": "^1.0.0",
+ "reflect.getprototypeof": "^1.0.6"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/typeforce": {
+ "version": "1.18.0",
+ "resolved": "https://registry.npmjs.org/typeforce/-/typeforce-1.18.0.tgz",
+ "integrity": "sha512-7uc1O8h1M1g0rArakJdf0uLRSSgFcYexrVoKo+bzJd32gd4gDy2L/Z+8/FjPnU9ydY3pEnVPtr9FyscYY60K1g==",
+ "license": "MIT"
+ },
+ "node_modules/typescript": {
+ "version": "5.9.3",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz",
+ "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
+ "license": "Apache-2.0",
+ "peer": true,
+ "bin": {
+ "tsc": "bin/tsc",
+ "tsserver": "bin/tsserver"
+ },
+ "engines": {
+ "node": ">=14.17"
+ }
+ },
+ "node_modules/typescript-eslint": {
+ "version": "8.60.0",
+ "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.60.0.tgz",
+ "integrity": "sha512-9f65qWLZdAW9m1JaxBDUHcqRUfL8bkxxXL7XxEfI+F09q56PkBvIfCjLF3yInsDM/BBmwkqmCQdCZe/RYlIWEw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@typescript-eslint/eslint-plugin": "8.60.0",
+ "@typescript-eslint/parser": "8.60.0",
+ "@typescript-eslint/typescript-estree": "8.60.0",
+ "@typescript-eslint/utils": "8.60.0"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0",
+ "typescript": ">=4.8.4 <6.1.0"
+ }
+ },
+ "node_modules/ua-is-frozen": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/ua-is-frozen/-/ua-is-frozen-0.1.2.tgz",
+ "integrity": "sha512-RwKDW2p3iyWn4UbaxpP2+VxwqXh0jpvdxsYpZ5j/MLLiQOfbsV5shpgQiw93+KMYQPcteeMQ289MaAFzs3G9pw==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/faisalman"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/ua-parser-js"
+ },
+ {
+ "type": "paypal",
+ "url": "https://paypal.me/faisalman"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/ua-parser-js": {
+ "version": "2.0.10",
+ "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-2.0.10.tgz",
+ "integrity": "sha512-t+3Ktbq0Ies2vaSezfOaWiolH4OigQIO1dk+1xDpOydB1COVPocVYOrEV5rqZ0kFY9XYG1v9LutCyMgYBpABcw==",
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/ua-parser-js"
+ },
+ {
+ "type": "paypal",
+ "url": "https://paypal.me/faisalman"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/faisalman"
+ }
+ ],
+ "license": "AGPL-3.0-or-later",
+ "dependencies": {
+ "detect-europe-js": "^0.1.2",
+ "is-standalone-pwa": "^0.1.1",
+ "ua-is-frozen": "^0.1.2"
+ },
+ "bin": {
+ "ua-parser-js": "script/cli.js"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/ufo": {
+ "version": "1.6.4",
+ "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.6.4.tgz",
+ "integrity": "sha512-JFNbkD1Svwe0KvGi8GOeLcP4kAWQ609twvCdcHxq1oSL8svv39ZuSvajcD8B+5D0eL4+s1Is2D/O6KN3qcTeRA==",
+ "license": "MIT"
+ },
+ "node_modules/uint8array-tools": {
+ "version": "0.0.8",
+ "resolved": "https://registry.npmjs.org/uint8array-tools/-/uint8array-tools-0.0.8.tgz",
+ "integrity": "sha512-xS6+s8e0Xbx++5/0L+yyexukU7pz//Yg6IHg3BKhXotg1JcYtgxVcUctQ0HxLByiJzpAkNFawz1Nz5Xadzo82g==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/uint8arrays": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.1.tgz",
+ "integrity": "sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==",
+ "license": "MIT",
+ "dependencies": {
+ "multiformats": "^9.4.2"
+ }
+ },
+ "node_modules/unbox-primitive": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz",
+ "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.3",
+ "has-bigints": "^1.0.2",
+ "has-symbols": "^1.1.0",
+ "which-boxed-primitive": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/uncrypto": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/uncrypto/-/uncrypto-0.1.3.tgz",
+ "integrity": "sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==",
+ "license": "MIT"
+ },
+ "node_modules/undici-types": {
+ "version": "7.26.0",
+ "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.26.0.tgz",
+ "integrity": "sha512-OY7qWYg4TsPpqg/kL2FfNnGA8cmAhPpLt45XQ2jd8p9UobYQ7Q09LeiCq5QwZhlKNLBj0iTUlBNhs4M2AVFmxA==",
+ "license": "MIT"
+ },
+ "node_modules/unrs-resolver": {
+ "version": "1.12.2",
+ "dev": true,
+ "hasInstallScript": true,
+ "license": "MIT",
+ "dependencies": {
+ "napi-postinstall": "^0.3.4"
+ },
+ "funding": {
+ "url": "https://opencollective.com/unrs-resolver"
+ },
+ "optionalDependencies": {
+ "@unrs/resolver-binding-android-arm-eabi": "1.12.2",
+ "@unrs/resolver-binding-android-arm64": "1.12.2",
+ "@unrs/resolver-binding-darwin-arm64": "1.12.2",
+ "@unrs/resolver-binding-darwin-x64": "1.12.2",
+ "@unrs/resolver-binding-freebsd-x64": "1.12.2",
+ "@unrs/resolver-binding-linux-arm-gnueabihf": "1.12.2",
+ "@unrs/resolver-binding-linux-arm-musleabihf": "1.12.2",
+ "@unrs/resolver-binding-linux-arm64-gnu": "1.12.2",
+ "@unrs/resolver-binding-linux-arm64-musl": "1.12.2",
+ "@unrs/resolver-binding-linux-loong64-gnu": "1.12.2",
+ "@unrs/resolver-binding-linux-loong64-musl": "1.12.2",
+ "@unrs/resolver-binding-linux-ppc64-gnu": "1.12.2",
+ "@unrs/resolver-binding-linux-riscv64-gnu": "1.12.2",
+ "@unrs/resolver-binding-linux-riscv64-musl": "1.12.2",
+ "@unrs/resolver-binding-linux-s390x-gnu": "1.12.2",
+ "@unrs/resolver-binding-linux-x64-gnu": "1.12.2",
+ "@unrs/resolver-binding-linux-x64-musl": "1.12.2",
+ "@unrs/resolver-binding-openharmony-arm64": "1.12.2",
+ "@unrs/resolver-binding-wasm32-wasi": "1.12.2",
+ "@unrs/resolver-binding-win32-arm64-msvc": "1.12.2",
+ "@unrs/resolver-binding-win32-ia32-msvc": "1.12.2",
+ "@unrs/resolver-binding-win32-x64-msvc": "1.12.2"
+ }
+ },
+ "node_modules/unstorage": {
+ "version": "1.17.5",
+ "resolved": "https://registry.npmjs.org/unstorage/-/unstorage-1.17.5.tgz",
+ "integrity": "sha512-0i3iqvRfx29hkNntHyQvJTpf5W9dQ9ZadSoRU8+xVlhVtT7jAX57fazYO9EHvcRCfBCyi5YRya7XCDOsbTgkPg==",
+ "license": "MIT",
+ "dependencies": {
+ "anymatch": "^3.1.3",
+ "chokidar": "^5.0.0",
+ "destr": "^2.0.5",
+ "h3": "^1.15.10",
+ "lru-cache": "^11.2.7",
+ "node-fetch-native": "^1.6.7",
+ "ofetch": "^1.5.1",
+ "ufo": "^1.6.3"
+ },
+ "peerDependencies": {
+ "@azure/app-configuration": "^1.8.0",
+ "@azure/cosmos": "^4.2.0",
+ "@azure/data-tables": "^13.3.0",
+ "@azure/identity": "^4.6.0",
+ "@azure/keyvault-secrets": "^4.9.0",
+ "@azure/storage-blob": "^12.26.0",
+ "@capacitor/preferences": "^6 || ^7 || ^8",
+ "@deno/kv": ">=0.9.0",
+ "@netlify/blobs": "^6.5.0 || ^7.0.0 || ^8.1.0 || ^9.0.0 || ^10.0.0",
+ "@planetscale/database": "^1.19.0",
+ "@upstash/redis": "^1.34.3",
+ "@vercel/blob": ">=0.27.1",
+ "@vercel/functions": "^2.2.12 || ^3.0.0",
+ "@vercel/kv": "^1 || ^2 || ^3",
+ "aws4fetch": "^1.0.20",
+ "db0": ">=0.2.1",
+ "idb-keyval": "^6.2.1",
+ "ioredis": "^5.4.2",
+ "uploadthing": "^7.4.4"
+ },
+ "peerDependenciesMeta": {
+ "@azure/app-configuration": {
+ "optional": true
+ },
+ "@azure/cosmos": {
+ "optional": true
+ },
+ "@azure/data-tables": {
+ "optional": true
+ },
+ "@azure/identity": {
+ "optional": true
+ },
+ "@azure/keyvault-secrets": {
+ "optional": true
+ },
+ "@azure/storage-blob": {
+ "optional": true
+ },
+ "@capacitor/preferences": {
+ "optional": true
+ },
+ "@deno/kv": {
+ "optional": true
+ },
+ "@netlify/blobs": {
+ "optional": true
+ },
+ "@planetscale/database": {
+ "optional": true
+ },
+ "@upstash/redis": {
+ "optional": true
+ },
+ "@vercel/blob": {
+ "optional": true
+ },
+ "@vercel/functions": {
+ "optional": true
+ },
+ "@vercel/kv": {
+ "optional": true
+ },
+ "aws4fetch": {
+ "optional": true
+ },
+ "db0": {
+ "optional": true
+ },
+ "idb-keyval": {
+ "optional": true
+ },
+ "ioredis": {
+ "optional": true
+ },
+ "uploadthing": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/unstorage/node_modules/lru-cache": {
+ "version": "11.5.1",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.1.tgz",
+ "integrity": "sha512-RPimw/7aMdv2oqRrxKwvZXcPfwBrn/JZ2xYcY9Hus/6LaS3VOAKVWKWgNLCFSiOm1ESXinjsDlidVU7JlnCN2A==",
+ "license": "BlueOak-1.0.0",
+ "engines": {
+ "node": "20 || >=22"
+ }
+ },
+ "node_modules/update-browserslist-db": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz",
+ "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "escalade": "^3.2.0",
+ "picocolors": "^1.1.1"
+ },
+ "bin": {
+ "update-browserslist-db": "cli.js"
+ },
+ "peerDependencies": {
+ "browserslist": ">= 4.21.0"
+ }
+ },
+ "node_modules/uri-js": {
+ "version": "4.4.1",
+ "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
+ "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "punycode": "^2.1.0"
+ }
+ },
+ "node_modules/urijs": {
+ "version": "1.19.11",
+ "resolved": "https://registry.npmjs.org/urijs/-/urijs-1.19.11.tgz",
+ "integrity": "sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==",
+ "license": "MIT"
+ },
+ "node_modules/usb": {
+ "version": "2.17.0",
+ "resolved": "https://registry.npmjs.org/usb/-/usb-2.17.0.tgz",
+ "integrity": "sha512-UuFgrlglgDn5ll6d5l7kl3nDb2Yx43qLUGcDq+7UNLZLtbNug0HZBb2Xodhgx2JZB1LqvU+dOGqLEeYUeZqsHg==",
+ "hasInstallScript": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/w3c-web-usb": "^1.0.6",
+ "node-addon-api": "^8.0.0",
+ "node-gyp-build": "^4.5.0"
+ },
+ "engines": {
+ "node": ">=12.22.0 <13.0 || >=14.17.0"
+ }
+ },
+ "node_modules/usb/node_modules/node-addon-api": {
+ "version": "8.8.0",
+ "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-8.8.0.tgz",
+ "integrity": "sha512-c5Ko1fZJIJmzhFIkhRN76WTq+fC6tWnGy9CXA0fA+XygsWZmEwG8vmbkNqxMyoaa0Tin4djul49NzdVcJJcjeA==",
+ "license": "MIT",
+ "engines": {
+ "node": "^18 || ^20 || >= 21"
+ }
+ },
+ "node_modules/use-callback-ref": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.3.tgz",
+ "integrity": "sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==",
+ "license": "MIT",
+ "dependencies": {
+ "tslib": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/use-sidecar": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.3.tgz",
+ "integrity": "sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==",
+ "license": "MIT",
+ "dependencies": {
+ "detect-node-es": "^1.1.0",
+ "tslib": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "peerDependencies": {
+ "@types/react": "*",
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/use-sync-external-store": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.6.0.tgz",
+ "integrity": "sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==",
+ "license": "MIT",
+ "peer": true,
+ "peerDependencies": {
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"
+ }
+ },
+ "node_modules/utf-8-validate": {
+ "version": "6.0.6",
+ "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-6.0.6.tgz",
+ "integrity": "sha512-q3l3P9UtEEiAHcsgsqTgf9PPjctrDWoIXW3NpOHFdRDbLvu4DLIcxHangJ4RLrWkBcKjmcs/6NkerI8T/rE4LA==",
+ "hasInstallScript": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "node-gyp-build": "^4.3.0"
+ },
+ "engines": {
+ "node": ">=6.14.2"
+ }
+ },
+ "node_modules/util-deprecate": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
+ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
+ "license": "MIT"
+ },
+ "node_modules/uuid": {
+ "version": "8.3.2",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
+ "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
+ "deprecated": "uuid@10 and below is no longer supported. For ESM codebases, update to uuid@latest. For CommonJS codebases, use uuid@11 (but be aware this version will likely be deprecated in 2028).",
+ "license": "MIT",
+ "bin": {
+ "uuid": "dist/bin/uuid"
+ }
+ },
+ "node_modules/uuid4": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/uuid4/-/uuid4-2.0.3.tgz",
+ "integrity": "sha512-CTpAkEVXMNJl2ojgtpLXHgz23dh8z81u6/HEPiQFOvBc/c2pde6TVHmH4uwY0d/GLF3tb7+VDAj4+2eJaQSdZQ==",
+ "license": "ISC"
+ },
+ "node_modules/valtio": {
+ "version": "2.1.7",
+ "resolved": "https://registry.npmjs.org/valtio/-/valtio-2.1.7.tgz",
+ "integrity": "sha512-DwJhCDpujuQuKdJ2H84VbTjEJJteaSmqsuUltsfbfdbotVfNeTE4K/qc/Wi57I9x8/2ed4JNdjEna7O6PfavRg==",
+ "license": "MIT",
+ "dependencies": {
+ "proxy-compare": "^3.0.1"
+ },
+ "engines": {
+ "node": ">=12.20.0"
+ },
+ "peerDependencies": {
+ "@types/react": ">=18.0.0",
+ "react": ">=18.0.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "react": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/varuint-bitcoin": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/varuint-bitcoin/-/varuint-bitcoin-2.0.0.tgz",
+ "integrity": "sha512-6QZbU/rHO2ZQYpWFDALCDSRsXbAs1VOEmXAxtbtjLtKuMJ/FQ8YbhfxlaiKv5nklci0M6lZtlZyxo9Q+qNnyog==",
+ "license": "MIT",
+ "dependencies": {
+ "uint8array-tools": "^0.0.8"
+ }
+ },
+ "node_modules/victory-vendor": {
+ "version": "37.3.6",
+ "resolved": "https://registry.npmjs.org/victory-vendor/-/victory-vendor-37.3.6.tgz",
+ "integrity": "sha512-SbPDPdDBYp+5MJHhBCAyI7wKM3d5ivekigc2Dk2s7pgbZ9wIgIBYGVw4zGHBml/qTFbexrofXW6Gu4noGxrOwQ==",
+ "license": "MIT AND ISC",
+ "dependencies": {
+ "@types/d3-array": "^3.0.3",
+ "@types/d3-ease": "^3.0.0",
+ "@types/d3-interpolate": "^3.0.1",
+ "@types/d3-scale": "^4.0.2",
+ "@types/d3-shape": "^3.1.0",
+ "@types/d3-time": "^3.0.0",
+ "@types/d3-timer": "^3.0.0",
+ "d3-array": "^3.1.6",
+ "d3-ease": "^3.0.1",
+ "d3-interpolate": "^3.0.1",
+ "d3-scale": "^4.0.2",
+ "d3-shape": "^3.1.0",
+ "d3-time": "^3.0.0",
+ "d3-timer": "^3.0.1"
+ }
+ },
+ "node_modules/viem": {
+ "version": "2.51.3",
+ "resolved": "https://registry.npmjs.org/viem/-/viem-2.51.3.tgz",
+ "integrity": "sha512-DA4EbrsvatzzLo6MwcWWiv6kI6dIr3I9HH9B6qsJaClN/s0AjIDUz5RIxl+VmGrovIUCcIvG8744yuGH7d37zw==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/wevm"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "@noble/curves": "1.9.1",
+ "@noble/hashes": "1.8.0",
+ "@scure/bip32": "1.7.0",
+ "@scure/bip39": "1.6.0",
+ "abitype": "1.2.3",
+ "isows": "1.0.7",
+ "ox": "0.14.25",
+ "ws": "8.20.1"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.0.4"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/viem/node_modules/@noble/curves": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.9.1.tgz",
+ "integrity": "sha512-k11yZxZg+t+gWvBbIswW0yoJlu8cHOC7dhunwOzoWH/mXGBiYyR4YY6hAEK/3EUs4UpB8la1RfdRpeGsFHkWsA==",
+ "license": "MIT",
+ "dependencies": {
+ "@noble/hashes": "1.8.0"
+ },
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/viem/node_modules/@noble/hashes": {
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz",
+ "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==",
+ "license": "MIT",
+ "engines": {
+ "node": "^14.21.3 || >=16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/viem/node_modules/abitype": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/abitype/-/abitype-1.2.3.tgz",
+ "integrity": "sha512-Ofer5QUnuUdTFsBRwARMoWKOH1ND5ehwYhJ3OJ/BQO+StkwQjHw0XyVh4vDttzHB7QOFhPHa/o413PJ82gU/Tg==",
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/sponsors/wevm"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.0.4",
+ "zod": "^3.22.0 || ^4.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ },
+ "zod": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/viem/node_modules/ox": {
+ "version": "0.14.25",
+ "resolved": "https://registry.npmjs.org/ox/-/ox-0.14.25.tgz",
+ "integrity": "sha512-8DoibKtxE8yw63Y2jjMhlbjaURev6WCx4QR4MWLusl2/qIaeTzMJMBIYIDl1KOF45+8H1Ur6eLTdPlUoO8PlRw==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/wevm"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "@adraffy/ens-normalize": "^1.11.0",
+ "@noble/ciphers": "^1.3.0",
+ "@noble/curves": "1.9.1",
+ "@noble/hashes": "^1.8.0",
+ "@scure/bip32": "^1.7.0",
+ "@scure/bip39": "^1.6.0",
+ "abitype": "^1.2.3",
+ "eventemitter3": "5.0.1"
+ },
+ "peerDependencies": {
+ "typescript": ">=5.4.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/viem/node_modules/ws": {
+ "version": "8.20.1",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.20.1.tgz",
+ "integrity": "sha512-It4dO0K5v//JtTXuPkfEOaI3uUN87iYPnqo/ZzqCoG3g8uhA66QUMs/SrM0YK7/NAu+r4LMh/9dq2A7k+rHs+w==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": ">=5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/vite": {
+ "version": "8.0.14",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-8.0.14.tgz",
+ "integrity": "sha512-s4BJJ+5y1pYL6Otw51FHhVJQhPnuRinKig64g/1+EUNaJsd3gCKdD31IPFvswUgW9/60QT9oFHbZHbQK5imcxw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "lightningcss": "^1.32.0",
+ "picomatch": "^4.0.4",
+ "postcss": "^8.5.15",
+ "rolldown": "1.0.2",
+ "tinyglobby": "^0.2.16"
+ },
+ "bin": {
+ "vite": "bin/vite.js"
+ },
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ },
+ "funding": {
+ "url": "https://github.com/vitejs/vite?sponsor=1"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.3"
+ },
+ "peerDependencies": {
+ "@types/node": "^20.19.0 || >=22.12.0",
+ "@vitejs/devtools": "^0.1.18",
+ "esbuild": "^0.27.0 || ^0.28.0",
+ "jiti": ">=1.21.0",
+ "less": "^4.0.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"
+ },
+ "peerDependenciesMeta": {
+ "@types/node": {
+ "optional": true
+ },
+ "@vitejs/devtools": {
+ "optional": true
+ },
+ "esbuild": {
+ "optional": true
+ },
+ "jiti": {
+ "optional": true
+ },
+ "less": {
+ "optional": true
+ },
+ "sass": {
+ "optional": true
+ },
+ "sass-embedded": {
+ "optional": true
+ },
+ "stylus": {
+ "optional": true
+ },
+ "sugarss": {
+ "optional": true
+ },
+ "terser": {
+ "optional": true
+ },
+ "tsx": {
+ "optional": true
+ },
+ "yaml": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/vite/node_modules/picomatch": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz",
+ "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
+ }
+ },
+ "node_modules/vitest": {
+ "version": "4.1.7",
+ "resolved": "https://registry.npmjs.org/vitest/-/vitest-4.1.7.tgz",
+ "integrity": "sha512-flYyaFd2CgoCoU+0UKt3pxksgC+S02iTDN0n3LtqaMeXsI9SBcdNujc2k0DeFLzUn/0k538yNjOSdwgCqcrwJA==",
+ "dev": true,
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "@vitest/expect": "4.1.7",
+ "@vitest/mocker": "4.1.7",
+ "@vitest/pretty-format": "4.1.7",
+ "@vitest/runner": "4.1.7",
+ "@vitest/snapshot": "4.1.7",
+ "@vitest/spy": "4.1.7",
+ "@vitest/utils": "4.1.7",
+ "es-module-lexer": "^2.0.0",
+ "expect-type": "^1.3.0",
+ "magic-string": "^0.30.21",
+ "obug": "^2.1.1",
+ "pathe": "^2.0.3",
+ "picomatch": "^4.0.3",
+ "std-env": "^4.0.0-rc.1",
+ "tinybench": "^2.9.0",
+ "tinyexec": "^1.0.2",
+ "tinyglobby": "^0.2.15",
+ "tinyrainbow": "^3.1.0",
+ "vite": "^6.0.0 || ^7.0.0 || ^8.0.0",
+ "why-is-node-running": "^2.3.0"
+ },
+ "bin": {
+ "vitest": "vitest.mjs"
+ },
+ "engines": {
+ "node": "^20.0.0 || ^22.0.0 || >=24.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/vitest"
+ },
+ "peerDependencies": {
+ "@edge-runtime/vm": "*",
+ "@opentelemetry/api": "^1.9.0",
+ "@types/node": "^20.0.0 || ^22.0.0 || >=24.0.0",
+ "@vitest/browser-playwright": "4.1.7",
+ "@vitest/browser-preview": "4.1.7",
+ "@vitest/browser-webdriverio": "4.1.7",
+ "@vitest/coverage-istanbul": "4.1.7",
+ "@vitest/coverage-v8": "4.1.7",
+ "@vitest/ui": "4.1.7",
+ "happy-dom": "*",
+ "jsdom": "*",
+ "vite": "^6.0.0 || ^7.0.0 || ^8.0.0"
+ },
+ "peerDependenciesMeta": {
+ "@edge-runtime/vm": {
+ "optional": true
+ },
+ "@opentelemetry/api": {
+ "optional": true
+ },
+ "@types/node": {
+ "optional": true
+ },
+ "@vitest/browser-playwright": {
+ "optional": true
+ },
+ "@vitest/browser-preview": {
+ "optional": true
+ },
+ "@vitest/browser-webdriverio": {
+ "optional": true
+ },
+ "@vitest/coverage-istanbul": {
+ "optional": true
+ },
+ "@vitest/coverage-v8": {
+ "optional": true
+ },
+ "@vitest/ui": {
+ "optional": true
+ },
+ "happy-dom": {
+ "optional": true
+ },
+ "jsdom": {
+ "optional": true
+ },
+ "vite": {
+ "optional": false
+ }
+ }
+ },
+ "node_modules/vitest/node_modules/picomatch": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz",
+ "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
+ }
+ },
+ "node_modules/w3c-xmlserializer": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz",
+ "integrity": "sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "xml-name-validator": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/webidl-conversions": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz",
+ "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/whatwg-encoding": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz",
+ "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==",
+ "deprecated": "Use @exodus/bytes instead for a more spec-conformant and faster implementation",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "iconv-lite": "0.6.3"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/whatwg-mimetype": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz",
+ "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/whatwg-url": {
+ "version": "14.2.0",
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz",
+ "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "tr46": "^5.1.0",
+ "webidl-conversions": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/which": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "isexe": "^2.0.0"
+ },
+ "bin": {
+ "node-which": "bin/node-which"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/which-boxed-primitive": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz",
+ "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "is-bigint": "^1.1.0",
+ "is-boolean-object": "^1.2.1",
+ "is-number-object": "^1.1.1",
+ "is-string": "^1.1.1",
+ "is-symbol": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/which-builtin-type": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz",
+ "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "call-bound": "^1.0.2",
+ "function.prototype.name": "^1.1.6",
+ "has-tostringtag": "^1.0.2",
+ "is-async-function": "^2.0.0",
+ "is-date-object": "^1.1.0",
+ "is-finalizationregistry": "^1.1.0",
+ "is-generator-function": "^1.0.10",
+ "is-regex": "^1.2.1",
+ "is-weakref": "^1.0.2",
+ "isarray": "^2.0.5",
+ "which-boxed-primitive": "^1.1.0",
+ "which-collection": "^1.0.2",
+ "which-typed-array": "^1.1.16"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/which-collection": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz",
+ "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "is-map": "^2.0.3",
+ "is-set": "^2.0.3",
+ "is-weakmap": "^2.0.2",
+ "is-weakset": "^2.0.3"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/which-module": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz",
+ "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==",
+ "license": "ISC"
+ },
+ "node_modules/which-typed-array": {
+ "version": "1.1.21",
+ "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.21.tgz",
+ "integrity": "sha512-zbRA8cVm6io/d5W8uIe2hblzN76/Wm3v/yiythQvr+dpBWeqhPSWIDNj4zOyHi4zKbMK6DN34Xsr9jPHJERAEw==",
+ "license": "MIT",
+ "dependencies": {
+ "available-typed-arrays": "^1.0.7",
+ "call-bind": "^1.0.9",
+ "call-bound": "^1.0.4",
+ "for-each": "^0.3.5",
+ "get-proto": "^1.0.1",
+ "gopd": "^1.2.0",
+ "has-tostringtag": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/why-is-node-running": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.3.0.tgz",
+ "integrity": "sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "siginfo": "^2.0.0",
+ "stackback": "0.0.2"
+ },
+ "bin": {
+ "why-is-node-running": "cli.js"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/wif": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/wif/-/wif-5.0.0.tgz",
+ "integrity": "sha512-iFzrC/9ne740qFbNjTZ2FciSRJlHIXoxqk/Y5EnE08QOXu1WjJyCCswwDTYbohAOEnlCtLaAAQBhyaLRFh2hMA==",
+ "license": "MIT",
+ "dependencies": {
+ "bs58check": "^4.0.0"
+ }
+ },
+ "node_modules/word-wrap": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz",
+ "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/wrap-ansi": {
+ "version": "6.2.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
+ "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
+ "license": "MIT",
+ "dependencies": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/wrap-ansi/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "license": "MIT",
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/ws": {
+ "version": "8.21.0",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.21.0.tgz",
+ "integrity": "sha512-Vsp28b7DRcimFQvrqu2Wek3z1iYxDCWqHYB8Qsnk/S4RfaCQzPGPyBNuVjJV3cd6UiKtUtp6sNM77gWvzcCH+g==",
+ "license": "MIT",
+ "peer": true,
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": ">=5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/xml-name-validator": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz",
+ "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/xmlchars": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz",
+ "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/xrpl": {
+ "version": "4.4.3",
+ "resolved": "https://registry.npmjs.org/xrpl/-/xrpl-4.4.3.tgz",
+ "integrity": "sha512-vi2OjuNkiaP8nv1j+nqHp8GZwwEjO6Y8+j/OuVMg6M4LwXEwyHdIj33dlg7cyY1Lw5+jb9HqFOQvABhaywVbTQ==",
+ "license": "ISC",
+ "dependencies": {
+ "@scure/bip32": "^1.3.1",
+ "@scure/bip39": "^1.2.1",
+ "@xrplf/isomorphic": "^1.0.1",
+ "@xrplf/secret-numbers": "^2.0.0",
+ "bignumber.js": "^9.0.0",
+ "eventemitter3": "^5.0.1",
+ "fast-json-stable-stringify": "^2.1.0",
+ "ripple-address-codec": "^5.0.0",
+ "ripple-binary-codec": "^2.5.0",
+ "ripple-keypairs": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=18.0.0"
+ }
+ },
+ "node_modules/xtend": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
+ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.4"
+ }
+ },
+ "node_modules/y18n": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
+ "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
+ "license": "ISC"
+ },
+ "node_modules/yallist": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
+ "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/yargs": {
+ "version": "15.4.1",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz",
+ "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
+ "license": "MIT",
+ "dependencies": {
+ "cliui": "^6.0.0",
+ "decamelize": "^1.2.0",
+ "find-up": "^4.1.0",
+ "get-caller-file": "^2.0.1",
+ "require-directory": "^2.1.1",
+ "require-main-filename": "^2.0.0",
+ "set-blocking": "^2.0.0",
+ "string-width": "^4.2.0",
+ "which-module": "^2.0.0",
+ "y18n": "^4.0.0",
+ "yargs-parser": "^18.1.2"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/yargs-parser": {
+ "version": "18.1.3",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
+ "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
+ "license": "ISC",
+ "dependencies": {
+ "camelcase": "^5.0.0",
+ "decamelize": "^1.2.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/yargs/node_modules/find-up": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
+ "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
+ "license": "MIT",
+ "dependencies": {
+ "locate-path": "^5.0.0",
+ "path-exists": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/yargs/node_modules/locate-path": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
+ "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
+ "license": "MIT",
+ "dependencies": {
+ "p-locate": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/yargs/node_modules/p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+ "license": "MIT",
+ "dependencies": {
+ "p-try": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/yargs/node_modules/p-locate": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
+ "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
+ "license": "MIT",
+ "dependencies": {
+ "p-limit": "^2.2.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/yocto-queue": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
+ "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/zod": {
+ "version": "4.3.6",
+ "resolved": "https://registry.npmjs.org/zod/-/zod-4.3.6.tgz",
+ "integrity": "sha512-rftlrkhHZOcjDwkGlnUtZZkvaPHCsDATp4pGpuOOMDaTdDDXF91wuVDJoWoPsKX/3YPQ5fHuF3STjcYyKr+Qhg==",
+ "license": "MIT",
+ "peer": true,
+ "funding": {
+ "url": "https://github.com/sponsors/colinhacks"
+ }
+ },
+ "node_modules/zod-validation-error": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/zod-validation-error/-/zod-validation-error-4.0.2.tgz",
+ "integrity": "sha512-Q6/nZLe6jxuU80qb/4uJ4t5v2VEZ44lzQjPDhYJNztRQ4wyWc6VF3D3Kb/fAuPetZQnhS3hnajCf9CsWesghLQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18.0.0"
+ },
+ "peerDependencies": {
+ "zod": "^3.25.0 || ^4.0.0"
+ }
+ },
+ "node_modules/zustand": {
+ "version": "5.0.14",
+ "resolved": "https://registry.npmjs.org/zustand/-/zustand-5.0.14.tgz",
+ "integrity": "sha512-/8tAspM5LMPr28b3fwLYrtdj77ECpfZviaP75CMTnwO8ISyaE4GDIG/9rDDYq/cH9D2Xw2A2RXglLInmVBQB/g==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=12.20.0"
+ },
+ "peerDependencies": {
+ "@types/react": ">=18.0.0",
+ "immer": ">=9.0.6",
+ "react": ">=18.0.0",
+ "use-sync-external-store": ">=1.2.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/react": {
+ "optional": true
+ },
+ "immer": {
+ "optional": true
+ },
+ "react": {
+ "optional": true
+ },
+ "use-sync-external-store": {
+ "optional": true
+ }
+ }
+ }
+ }
+}
diff --git a/contracts/escrow/src/lib.rs b/contracts/escrow/src/lib.rs
index 5e6dd625..d6d2e539 100644
--- a/contracts/escrow/src/lib.rs
+++ b/contracts/escrow/src/lib.rs
@@ -43,17 +43,32 @@ pub struct EscrowJob {
}
#[contracttype]
-#[derive(Clone, Debug, PartialEq)]
-pub struct TreasuryConfig {
- pub routing_address: Address,
- pub fee_bps: u32,
+pub enum DataKey {
+ Job(u64),
+ JobLock(u64),
+ Admin,
+ AgentJudge,
+ JobRegistry,
+ Locked,
+ Treasury,
+ FeeBps,
+ MultisigConfig(u64), // Per-job multisig configuration
+ UpgradeAdmin,
}
#[contracttype]
#[derive(Clone)]
-pub struct FeeConfigUpdatedEvent {
- pub treasury: Address,
- pub fee_bps: u32,
+pub struct EscrowInitializedEvent {
+ pub admin: Address,
+ pub agent_judge: Address,
+ pub initialized_at: u64,
+}
+
+#[contracttype]
+#[derive(Clone)]
+pub struct AgentJudgeUpdatedEvent {
+ pub old_agent: Address,
+ pub new_agent: Address,
pub updated_at: u64,
}
@@ -84,6 +99,155 @@ pub struct DisputeRaisedEvent {
pub raised_at: u64,
}
+#[contracttype]
+#[derive(Clone)]
+pub struct DepositEvent {
+ pub job_id: u64,
+ pub amount: i128,
+ pub deposited_at: u64,
+}
+#[contracttype]
+#[derive(Clone)]
+pub struct ReleaseMilestoneEvent {
+ pub job_id: u64,
+ pub milestone_index: u32,
+ pub amount: i128,
+ pub released_at: u64,
+}
+
+#[contracttype]
+#[derive(Clone)]
+pub struct OpenDisputeEvent {
+ pub job_id: u64,
+ pub initiator: Address,
+ pub opened_at: u64,
+}
+
+#[contracttype]
+#[derive(Clone)]
+pub struct JobRegistryConfiguredEvent {
+ pub configured_by: Address,
+ pub registry_contract: Address,
+ pub configured_at: u64,
+}
+
+#[contracttype]
+#[derive(Clone)]
+pub struct RegistryDisputeSyncedEvent {
+ pub job_id: u64,
+ pub registry_contract: Address,
+ pub synced_at: u64,
+}
+
+#[contracttype]
+#[derive(Clone)]
+pub struct ContractUpgradedEvent {
+ pub by_admin: Address,
+ pub new_wasm_hash: BytesN<32>,
+ pub upgraded_at: u64,
+}
+
+#[contracttype]
+#[derive(Clone)]
+pub struct BriefCanceledEvent {
+ pub job_id: u64,
+ pub refunded_amount: i128,
+ pub canceled_by: Address,
+ pub canceled_at: u64,
+}
+
+#[contracttype]
+#[derive(Clone, Debug, PartialEq)]
+pub struct MultisigConfig {
+ pub signers: Vec
,
+ pub required_signatures: u32,
+ pub current_signatures: Vec,
+}
+
+#[contracttype]
+#[derive(Clone)]
+pub struct MultisigConfiguredEvent {
+ pub job_id: u64,
+ pub required_signatures: u32,
+ pub total_signers: u32,
+ pub configured_at: u64,
+}
+
+#[contracttype]
+#[derive(Clone)]
+pub struct MultisigSignedEvent {
+ pub job_id: u64,
+ pub signer: Address,
+ pub signature_count: u32,
+ pub signed_at: u64,
+}
+
+#[contracttype]
+#[derive(Clone)]
+pub struct DisputeExpiredEvent {
+ pub job_id: u64,
+ pub refunded_to: Address,
+ pub amount: i128,
+ pub expired_at: u64,
+}
+
+#[contracttype]
+#[derive(Clone)]
+pub struct FeeConfigUpdatedEvent {
+ pub treasury: Address,
+ pub fee_bps: u32,
+ pub updated_at: u64,
+}
+
+#[contracttype]
+#[derive(Clone)]
+pub struct LockupUpdatedEvent {
+ pub job_id: u64,
+ pub expires_at: u64,
+ pub updated_at: u64,
+}
+
+#[contracttype]
+#[derive(Clone)]
+pub struct EmergencySweepEvent {
+ pub job_id: u64,
+ pub admin: Address,
+ pub rescue_address: Address,
+ pub amount: i128,
+ pub swept_at: u64,
+}
+
+#[contracttype]
+#[derive(Clone)]
+pub struct MilestonesAmendedEvent {
+ pub job_id: u64,
+ pub milestone_count: u32,
+ pub remaining_amount: i128,
+ pub amended_at: u64,
+}
+
+struct ReentrancyGuard<'a> {
+ env: &'a Env,
+}
+
+impl Drop for ReentrancyGuard<'_> {
+ fn drop(&mut self) {
+ self.env.storage().instance().remove(&DataKey::Locked);
+ }
+}
+
+fn enter_reentrancy_guard(env: &Env) -> ReentrancyGuard<'_> {
+ if env.storage().instance().has(&DataKey::Locked) {
+ panic_with_error!(env, EscrowError::ReentrancyDetected);
+ }
+ env.storage().instance().set(&DataKey::Locked, &());
+ ReentrancyGuard { env }
+}
+
+fn checked_i128_add(lhs: i128, rhs: i128) -> Result {
+ lhs.checked_add(rhs).ok_or(EscrowError::InvalidInput)
+}
+
#[contract]
pub struct EscrowContract;
@@ -160,17 +324,15 @@ impl EscrowContract {
panic!("job already exists");
}
let now: u64 = env.ledger().timestamp();
+ let expires_duration = 30u64
+ .checked_mul(24)
+ .and_then(|h| h.checked_mul(60))
+ .and_then(|m| m.checked_mul(60))
+ .ok_or(EscrowError::ArithmeticError)?;
+
let expires_at = now
- .checked_add(
- 30u64
- .checked_mul(24)
- .expect("overflow")
- .checked_mul(60)
- .expect("overflow")
- .checked_mul(60)
- .expect("overflow"),
- )
- .expect("overflow");
+ .checked_add(expires_duration)
+ .ok_or(EscrowError::ArithmeticError)?;
let job = EscrowJob {
client,
@@ -268,7 +430,28 @@ impl EscrowContract {
Self::check_reentrancy(&env, job_id);
let key = DataKey::Job(job_id);
- let mut job: EscrowJob = env.storage().persistent().get(&key).expect("job not found");
+ let mut job: EscrowJob = env
+ .storage()
+ .persistent()
+ .get(&key)
+ .ok_or(EscrowError::JobNotFound)?;
+ Self::bump_job_ttl(&env, &key);
+
+ Self::assert_not_same_ledger_as_funding(&env, &job)?;
+
+if !(job.status == EscrowStatus::Funded
+ || job.status == EscrowStatus::WorkInProgress)
+{
+ return Err(EscrowError::InvalidState);
+}
+
+if caller != job.client {
+ return Err(EscrowError::Unauthorized);
+}
+
+if milestone_index >= job.milestones.len() {
+ return Err(EscrowError::InvalidInput);
+}
assert!(
job.status == EscrowStatus::Funded || job.status == EscrowStatus::WorkInProgress,
@@ -321,10 +504,11 @@ impl EscrowContract {
);
// 3. Job must still be active
- assert!(
- job.status == EscrowStatus::Funded || job.status == EscrowStatus::WorkInProgress,
- "dispute cannot be raised: job is not in active state"
- );
+ Self::assert_not_same_ledger_as_funding(&env, &job)?;
+
+ if !(job.status == EscrowStatus::Funded || job.status == EscrowStatus::WorkInProgress) {
+ return Err(EscrowError::InvalidState);
+ }
// 4. Prevent dispute if all funds are already released
assert!(
@@ -434,6 +618,10 @@ impl EscrowContract {
.expect("overflow");
job.status = EscrowStatus::Resolved;
env.storage().persistent().set(&key, &job);
+ Self::bump_job_ttl(&env, &key);
+ Self::exit_job_lock(&env, lock_key);
+
+ Ok(())
}
/// Client recoups funds if freelancer never responded.
@@ -441,7 +629,29 @@ impl EscrowContract {
client.require_auth();
let key = DataKey::Job(job_id);
- let mut job: EscrowJob = env.storage().persistent().get(&key).expect("job not found");
+ let job: EscrowJob = env
+ .storage()
+ .persistent()
+ .get(&key)
+ .ok_or(EscrowError::JobNotFound)?;
+ Self::bump_job_ttl(&env, &key);
+
+ Self::assert_not_same_ledger_as_funding(&env, &job)?;
+
+ if !(job.status == EscrowStatus::Funded || job.status == EscrowStatus::WorkInProgress) {
+ return Err(EscrowError::InvalidState);
+ }
+
+ if client != job.client {
+ return Err(EscrowError::Unauthorized);
+ }
+
+ let remaining = job.total_amount - job.released_amount;
+ let lock_key = Self::enter_job_lock(&env, job_id)?;
+ if remaining > 0 {
+ let token_client = token::Client::new(&env, &job.token);
+ token_client.transfer(&env.current_contract_address(), &job.client, &remaining);
+ }
assert!(
job.status == EscrowStatus::Funded || job.status == EscrowStatus::WorkInProgress,
@@ -501,19 +711,25 @@ impl EscrowContract {
for m in job.milestones.iter() {
statuses.push_back(m.status);
}
- statuses
+ Ok(statuses)
}
-}
-impl EscrowContract {
- fn check_reentrancy(env: &Env, job_id: u64) {
- if env.storage().instance().has(&DataKey::GuardFlag(job_id)) {
- panic!("reentrant");
- }
+ /// Retrieve the multisig configuration for a given job.
+ pub fn get_multisig_config(env: Env, job_id: u64) -> Result {
+ let config_key = DataKey::MultisigConfig(job_id);
+ let config: MultisigConfig = env
+ .storage()
+ .persistent()
+ .get(&config_key)
+ .ok_or(EscrowError::InvalidInput)?;
+ Self::bump_job_ttl(&env, &config_key);
+ Ok(config)
}
- fn set_guard(env: &Env, job_id: u64) {
- env.storage()
+ /// Read-only helper exposing active escrow configuration.
+ pub fn get_escrow_config(env: Env) -> Result<(Address, Address, Option), EscrowError> {
+ let config: ContractConfig = env
+ .storage()
.instance()
.set(&DataKey::GuardFlag(job_id), &true);
}
@@ -578,6 +794,431 @@ impl EscrowContract {
&freelancer_amount,
);
}
+
+ log!(
+ &env,
+ "expire_dispute: job {} refunded {}",
+ job_id,
+ remaining
+ );
+ env.storage().persistent().set(&key, &job);
+ Self::bump_job_ttl(&env, &key);
+
+ exit_reentrancy_guard(&env);
+ env.events().publish(
+ ("escrow", "DisputeExpired"),
+ DisputeExpiredEvent {
+ job_id,
+ refunded_to: job.client,
+ amount: remaining,
+ expired_at: now,
+ },
+ );
+
+ Ok(())
+ }
+
+ /// Retrieve the status of all milestones for a given job.
+ pub fn get_milestone_status(
+ env: Env,
+ job_id: u64,
+ ) -> Result, EscrowError> {
+ let key = DataKey::Job(job_id);
+ let job: EscrowJob = env
+ .storage()
+ .persistent()
+ .get(&key)
+ .ok_or(EscrowError::JobNotFound)?;
+ Self::bump_job_ttl(&env, &key);
+ let mut statuses = Vec::new(&env);
+ for m in job.milestones.iter() {
+ statuses.push_back(m.status);
+ }
+ Ok(statuses)
+ }
+
+ /// Retrieve the multisig configuration for a given job.
+ pub fn get_multisig_config(env: Env, job_id: u64) -> Result {
+ let config_key = DataKey::MultisigConfig(job_id);
+ let config: MultisigConfig = env
+ .storage()
+ .persistent()
+ .get(&config_key)
+ .ok_or(EscrowError::InvalidInput)?;
+ Self::bump_job_ttl(&env, &config_key);
+ Ok(config)
+ }
+
+ /// Read-only helper exposing active escrow configuration.
+ pub fn get_escrow_config(env: Env) -> Result<(Address, Address, Option), EscrowError> {
+ let config: ContractConfig = env
+ .storage()
+ .instance()
+ .get(&DataKey::Config)
+ .ok_or(EscrowError::NotInitialized)?;
+ let job_registry: Option = env.storage().instance().get(&DataKey::JobRegistry);
+ Self::bump_instance_ttl(&env);
+ Ok((config.admin, config.agent_judge, job_registry))
+ }
+
+ /// Configure multisig for a job. Only callable by client during Setup phase.
+ pub fn configure_multisig(
+ env: Env,
+ job_id: u64,
+ signers: Vec,
+ required_signatures: u32,
+ ) -> Result<(), EscrowError> {
+ let key = DataKey::Job(job_id);
+ let mut job: EscrowJob = env
+ .storage()
+ .persistent()
+ .get(&key)
+ .ok_or(EscrowError::JobNotFound)?;
+ Self::bump_job_ttl(&env, &key);
+
+ job.client.require_auth();
+
+ if job.status != EscrowStatus::Setup {
+ return Err(EscrowError::InvalidState);
+ }
+
+ if signers.is_empty() || required_signatures == 0 {
+ return Err(EscrowError::InvalidInput);
+ }
+
+ if required_signatures > signers.len() {
+ return Err(EscrowError::InvalidInput);
+ }
+
+ let config = MultisigConfig {
+ signers: signers.clone(),
+ required_signatures,
+ current_signatures: Vec::new(&env),
+ };
+
+ env.storage()
+ .persistent()
+ .set(&DataKey::MultisigConfig(job_id), &config);
+
+ job.requires_multisig = true;
+ env.storage().persistent().set(&key, &job);
+ Self::bump_job_ttl(&env, &key);
+
+ env.events().publish(
+ ("escrow", "MultisigConfigured"),
+ MultisigConfiguredEvent {
+ job_id,
+ required_signatures,
+ total_signers: signers.len(),
+ configured_at: env.ledger().timestamp(),
+ },
+ );
+
+ Ok(())
+ }
+
+ /// Sign a multisig job. Callable by any configured signer.
+ pub fn sign_multisig(env: Env, job_id: u64, signer: Address) -> Result<(), EscrowError> {
+ signer.require_auth();
+
+ let key = DataKey::Job(job_id);
+ let mut job: EscrowJob = env
+ .storage()
+ .persistent()
+ .get(&key)
+ .ok_or(EscrowError::JobNotFound)?;
+ Self::bump_job_ttl(&env, &key);
+
+ job.client.require_auth();
+
+ if job.status != EscrowStatus::Setup {
+ return Err(EscrowError::InvalidState);
+ }
+
+ if signers.is_empty() || required_signatures == 0 {
+ return Err(EscrowError::InvalidInput);
+ }
+ }
+
+ fn set_guard(env: &Env, job_id: u64) {
+ env.storage()
+ .instance()
+ .get(&DataKey::Config)
+ .ok_or(EscrowError::NotInitialized)?;
+ let admin = config.admin;
+ admin.require_auth();
+
+ if fee_bps > MAX_FEE_BPS {
+ return Err(EscrowError::FeeTooHigh);
+ }
+
+ env.storage().instance().set(&DataKey::Treasury, &treasury);
+ env.storage().instance().set(&DataKey::FeeBps, &fee_bps);
+ Self::bump_instance_ttl(&env);
+
+ env.events().publish(
+ ("escrow", "FeeConfigUpdated"),
+ FeeConfigUpdatedEvent {
+ treasury,
+ fee_bps,
+ updated_at: env.ledger().timestamp(),
+ },
+ );
+
+ Ok(())
+ }
+
+ /// Returns the active platform fee in basis points (0 when unset).
+ pub fn get_fee_bps(env: Env) -> u32 {
+ Self::fee_bps(&env)
+ }
+
+ /// Returns the configured treasury address, if any.
+ pub fn get_treasury(env: Env) -> Option {
+ env.storage().instance().get(&DataKey::Treasury)
+ }
+
+ fn fee_bps(env: &Env) -> u32 {
+ env.storage()
+ .instance()
+ .get::<_, u32>(&DataKey::FeeBps)
+ .unwrap_or(0u32)
+ }
+
+ fn payout_with_fee(env: &Env, job: &EscrowJob, amount: i128) {
+ let treasury = env.storage().instance().get::<_, Address>(&DataKey::Treasury);
+ let fee_bps = Self::fee_bps(env);
+ let fee_amount = if fee_bps > 0 {
+ amount
+ .checked_mul(fee_bps as i128)
+ .and_then(|value| value.checked_div(10_000))
+ .unwrap_or(0)
+ } else {
+ 0
+ };
+ let payout_amount = amount.checked_sub(fee_amount).unwrap_or(0);
+ let token_client = token::Client::new(env, &job.token);
+
+ if fee_amount > 0 {
+ if let Some(treasury_addr) = treasury {
+ token_client.transfer(&env.current_contract_address(), &treasury_addr, &fee_amount);
+ }
+ }
+ if payout_amount > 0 {
+ token_client.transfer(&env.current_contract_address(), &job.freelancer, &payout_amount);
+ }
+ }
+
+ fn exit_reentrancy_guard(env: &Env) {
+ env.storage().instance().remove(&DataKey::Locked);
+ }
+
+ // ─────────────────────────────────────────────────────────────────────
+ // SC-ESC-002: Dynamic lockup durations
+ // ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
+
+ /// Client sets a custom lockup duration (in seconds) during Setup. The
+ /// job's expiry becomes `created_at + lockup_seconds`. Until expiry the
+ /// client cannot refund (see `refund`).
+ pub fn set_lockup_duration(
+ env: Env,
+ job_id: u64,
+ lockup_seconds: u64,
+ ) -> Result<(), EscrowError> {
+ let key = DataKey::Job(job_id);
+ let mut job: EscrowJob = env
+ .storage()
+ .persistent()
+ .get(&key)
+ .ok_or(EscrowError::JobNotFound)?;
+ Self::bump_job_ttl(&env, &key);
+
+ job.client.require_auth();
+
+ if job.status != EscrowStatus::Setup {
+ return Err(EscrowError::InvalidState);
+ }
+ if lockup_seconds == 0 {
+ return Err(EscrowError::InvalidInput);
+ }
+
+ let expires_at = job
+ .created_at
+ .checked_add(lockup_seconds)
+ .ok_or(EscrowError::InvalidInput)?;
+ job.expires_at = expires_at;
+
+ env.storage().persistent().set(&key, &job);
+ Self::bump_job_ttl(&env, &key);
+
+ env.events().publish(
+ ("escrow", "LockupUpdated"),
+ LockupUpdatedEvent {
+ job_id,
+ expires_at,
+ updated_at: env.ledger().timestamp(),
+ },
+ );
+
+ Ok(())
+ }
+
+ /// Returns the lockup expiry timestamp for a job.
+ pub fn get_expiry(env: Env, job_id: u64) -> Result {
+ let key = DataKey::Job(job_id);
+ let job: EscrowJob = env
+ .storage()
+ .persistent()
+ .get(&key)
+ .ok_or(EscrowError::JobNotFound)?;
+ Ok(job.expires_at)
+ }
+
+ // ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
+ // SC-ESC-003: Emergency escrow sweep (admin-gated)
+ // ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
+
+ /// Emergency sweep of the entire locked balance for a job to a rescue
+ /// address. Only the admin may invoke this. It overrides the active state
+ /// machine and bypasses standard release rules for catastrophic recovery.
+ pub fn emergency_sweep(
+ env: Env,
+ job_id: u64,
+ rescue_address: Address,
+ ) -> Result<(), EscrowError> {
+ let config: ContractConfig = env
+ .storage()
+ .instance()
+ .get(&DataKey::Config)
+ .ok_or(EscrowError::NotInitialized)?;
+ let admin = config.admin;
+ admin.require_auth();
+
+ let key = DataKey::Job(job_id);
+ let mut job: EscrowJob = env
+ .storage()
+ .persistent()
+ .get(&key)
+ .ok_or(EscrowError::JobNotFound)?;
+ Self::bump_job_ttl(&env, &key);
+
+ let remaining = job
+ .total_amount
+ .checked_sub(job.released_amount)
+ .ok_or(EscrowError::InvalidState)?;
+ if remaining <= 0 {
+ return Err(EscrowError::NothingToSweep);
+ }
+
+ let _guard = enter_reentrancy_guard(&env);
+
+ // Override the state machine: mark fully released and refunded.
+ job.released_amount = job.total_amount;
+ job.status = EscrowStatus::Refunded;
+
+ let token_client = token::Client::new(&env, &job.token);
+ token_client.transfer(&env.current_contract_address(), &rescue_address, &remaining);
+
+ env.storage().persistent().set(&key, &job);
+ Self::bump_job_ttl(&env, &key);
+
+ Self::exit_reentrancy_guard(&env);
+
+ env.events().publish(
+ ("escrow", "EmergencySweep"),
+ EmergencySweepEvent {
+ job_id,
+ admin,
+ rescue_address,
+ amount: remaining,
+ swept_at: env.ledger().timestamp(),
+ },
+ );
+
+ Ok(())
+ }
+
+ // ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
+ // SC-ESC-004: Milestone re-allocation / amendment
+ // ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
+
+ /// Mutually amend the remaining (unreleased) milestone structure. Both the
+ /// client and the freelancer must authorize. The sum of the new
+ /// allocations must equal the remaining balance. Amendments are rejected
+ /// once the job is disputed.
+ pub fn amend_milestones(
+ env: Env,
+ job_id: u64,
+ new_amounts: Vec,
+ ) -> Result<(), EscrowError> {
+ let key = DataKey::Job(job_id);
+ let mut job: EscrowJob = env
+ .storage()
+ .persistent()
+ .get(&key)
+ .ok_or(EscrowError::JobNotFound)?;
+ Self::bump_job_ttl(&env, &key);
+
+ // Both parties must cryptographically authorize the restructuring.
+ job.client.require_auth();
+ job.freelancer.require_auth();
+
+ // Locked once disputed (or otherwise inactive).
+ if !(job.status == EscrowStatus::Funded || job.status == EscrowStatus::WorkInProgress) {
+ return Err(EscrowError::InvalidState);
+ }
+
+ if new_amounts.is_empty() {
+ return Err(EscrowError::InvalidInput);
+ }
+
+ let mut new_sum: i128 = 0;
+ for amount in new_amounts.iter() {
+ if amount <= 0 {
+ return Err(EscrowError::InvalidInput);
+ }
+ new_sum = new_sum
+ .checked_add(amount)
+ .ok_or(EscrowError::InvalidInput)?;
+ }
+
+ let remaining = job
+ .total_amount
+ .checked_sub(job.released_amount)
+ .ok_or(EscrowError::InvalidState)?;
+ if new_sum != remaining {
+ return Err(EscrowError::AmountMismatch);
+ }
+
+ // Preserve already-released milestones; replace the pending set.
+ let mut rebuilt: Vec = Vec::new(&env);
+ for milestone in job.milestones.iter() {
+ if milestone.status == MilestoneStatus::Released {
+ rebuilt.push_back(milestone);
+ }
+ }
+ for amount in new_amounts.iter() {
+ rebuilt.push_back(Milestone {
+ amount,
+ status: MilestoneStatus::Pending,
+ });
+ }
+ job.milestones = rebuilt;
+
+ env.storage().persistent().set(&key, &job);
+ Self::bump_job_ttl(&env, &key);
+
+ env.events().publish(
+ ("escrow", "MilestonesAmended"),
+ MilestonesAmendedEvent {
+ job_id,
+ milestone_count: new_amounts.len(),
+ remaining_amount: remaining,
+ amended_at: env.ledger().timestamp(),
+ },
+ );
+
+ Ok(())
}
}
diff --git a/contracts/escrow/test_snapshots/test/test_deposit_with_wrong_total_panics.1.json b/contracts/escrow/test_snapshots/test/test_deposit_with_wrong_total_panics.1.json
index 5d2a662a..f05bc73a 100644
--- a/contracts/escrow/test_snapshots/test/test_deposit_with_wrong_total_panics.1.json
+++ b/contracts/escrow/test_snapshots/test/test_deposit_with_wrong_total_panics.1.json
@@ -997,7 +997,7 @@
"symbol": "fn_return"
},
{
- "symbol": "initialize"
+ "symbol": "create_job"
}
],
"data": "void"
@@ -1021,7 +1021,7 @@
"bytes": "0000000000000000000000000000000000000000000000000000000000000006"
},
{
- "symbol": "create_job"
+ "symbol": "add_milestone"
}
],
"data": {
@@ -1057,7 +1057,7 @@
"symbol": "fn_return"
},
{
- "symbol": "create_job"
+ "symbol": "add_milestone"
}
],
"data": "void"
@@ -1081,7 +1081,7 @@
"bytes": "0000000000000000000000000000000000000000000000000000000000000006"
},
{
- "symbol": "add_milestone"
+ "symbol": "deposit"
}
],
"data": {
@@ -1092,7 +1092,7 @@
{
"i128": {
"hi": 0,
- "lo": 500
+ "lo": 1000
}
}
]
@@ -1105,7 +1105,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "d63a954726751a876d37290072af1ee723d7d761eec3bf4191849d2116acdc73",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1114,35 +1114,34 @@
"symbol": "fn_return"
},
{
- "symbol": "add_milestone"
+ "symbol": "decimals"
}
],
- "data": "void"
+ "data": {
+ "u32": 7
+ }
}
}
},
- "failed_call": false
+ "failed_call": true
},
{
"event": {
"ext": "v0",
- "contract_id": null,
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000006"
- },
- {
- "symbol": "deposit"
+ "symbol": "log"
}
],
"data": {
"vec": [
+ {
+ "string": "caught panic 'sum of milestones must equal total amount' from contract function 'Symbol(deposit)'"
+ },
{
"u64": 1
},
@@ -1168,7 +1167,57 @@
"v0": {
"topics": [
{
- "symbol": "log"
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "d63a954726751a876d37290072af1ee723d7d761eec3bf4191849d2116acdc73"
+ },
+ {
+ "symbol": "decimals"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "d63a954726751a876d37290072af1ee723d7d761eec3bf4191849d2116acdc73",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "decimals"
+ }
+ ],
+ "data": {
+ "u32": 7
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "deposit"
}
],
"data": {
diff --git a/contracts/job_registry/src/lib.rs b/contracts/job_registry/src/lib.rs
index a4dd7b2f..53b9e379 100644
--- a/contracts/job_registry/src/lib.rs
+++ b/contracts/job_registry/src/lib.rs
@@ -1,188 +1,595 @@
#![no_std]
-use soroban_sdk::{contract, contractimpl, contracttype, Address, Env, String};
+use soroban_sdk::{contract, contractimpl, contracttype, contracterror, panic_with_error, Address, Bytes, BytesN, Env, Vec};
+// ─────────────────────────────────────────────────────────────────────────────
+// JobRegistryError – structured error codes for out-of-bounds & invalid states
+// ─────────────────────────────────────────────────────────────────────────────
+#[contracterror]
+#[derive(Copy, Clone, Debug, Eq, PartialEq)]
+pub enum JobRegistryError {
+ AlreadyInitialized = 1,
+ NotInitialized = 2,
+ InvalidJobId = 3,
+ InvalidBudget = 4,
+ InvalidHash = 5,
+ JobAlreadyExists = 6,
+ JobNotFound = 7,
+ JobNotOpen = 8,
+ Unauthorized = 9,
+ BidAlreadySubmitted = 10,
+ BidNotFound = 11,
+ InvalidStateTransition = 12,
+ JobExpired = 13,
+ Overflow = 14,
+ BidIndexOutOfBounds = 15,
+ ReentrancyDetected = 16,
+}
+
+// ─────────────────────────────────────────────────────────────────────────────
+// JobStatus – lifecycle states a job can occupy
+// ─────────────────────────────────────────────────────────────────────────────
#[contracttype]
-#[derive(Clone, Debug, PartialEq)]
+#[derive(Clone, Debug, Eq, PartialEq)]
pub enum JobStatus {
Open,
Assigned,
+ DeliverableSubmitted,
+ Disputed,
Closed,
}
+// ─────────────────────────────────────────────────────────────────────────────
+// Core on-chain records – only compact IPFS CIDs are persisted, never raw text
+// ─────────────────────────────────────────────────────────────────────────────
#[contracttype]
-#[derive(Clone, Debug, PartialEq)]
-pub struct Job {
- pub owner: Address,
- pub cid: String,
- pub budget: i128,
+#[derive(Clone, Debug, Eq, PartialEq)]
+pub struct JobRecord {
+ pub client: Address,
+ pub freelancer: Option,
+ pub metadata_hash: Bytes,
+ pub budget_stroops: i128,
pub status: JobStatus,
- pub bid_count: u32,
- pub assigned_bidder: Option,
+ pub bidding_deadline: u64,
+ pub expires_at: u64,
}
#[contracttype]
-#[derive(Clone, Debug, PartialEq)]
-pub struct Bid {
- pub bidder: Address,
- pub amount: i128,
- pub submitted_at: u64,
+#[derive(Clone, Debug, Eq, PartialEq)]
+pub struct BidRecord {
+ pub freelancer: Address,
+ pub proposal_hash: Bytes,
}
+// ─────────────────────────────────────────────────────────────────────────────
+// Storage layout – map-like keys for clean job→bid lookups
+// ─────────────────────────────────────────────────────────────────────────────
#[contracttype]
-#[derive(Clone)]
pub enum DataKey {
Admin,
+ Locked,
+ UpgradeAdmin,
Job(u64),
- Bid(u64, u32),
+ Bids(u64),
+ NextJobId,
+}
+
+// ─────────────────────────────────────────────────────────────────────────────
+// Event payloads
+// ─────────────────────────────────────────────────────────────────────────────
+#[contracttype]
+#[derive(Clone)]
+pub struct BidSubmittedEvent {
+ pub job_id: u64,
+ pub freelancer: Address,
+ pub proposal_hash: Bytes,
+ pub timestamp: u64,
+}
+
+#[contracttype]
+#[derive(Clone)]
+pub struct BidAcceptedEvent {
+ pub job_id: u64,
+ pub client: Address,
+ pub freelancer: Address,
+ pub timestamp: u64,
+}
+
+// ─────────────────────────────────────────────────────────────────────────────
+// Reentrancy guard – prevents reentrant calls during bid modification
+// ─────────────────────────────────────────────────────────────────────────────
+const MAX_HASH_LEN: u32 = 64;
+
+struct ReentrancyGuard<'a> {
+ env: &'a Env,
}
+impl Drop for ReentrancyGuard<'_> {
+ fn drop(&mut self) {
+ self.env.storage().instance().remove(&DataKey::Locked);
+ }
+}
+
+fn require_not_reentrant(env: &Env) -> ReentrancyGuard<'_> {
+ if env.storage().instance().has(&DataKey::Locked) {
+ panic_with_error!(env, JobRegistryError::ReentrancyDetected);
+ }
+ env.storage().instance().set(&DataKey::Locked, &());
+ ReentrancyGuard { env }
+}
+
+fn hash_is_valid(h: &Bytes) -> bool {
+ !h.is_empty() && h.len() <= MAX_HASH_LEN
+}
+
+// ─────────────────────────────────────────────────────────────────────────────
+// Contract
+// ─────────────────────────────────────────────────────────────────────────────
#[contract]
pub struct JobRegistryContract;
#[contractimpl]
impl JobRegistryContract {
+ // ── Admin ──────────────────────────────────────────────────────────────
pub fn initialize(env: Env, admin: Address) {
- admin.require_auth();
-
if env.storage().instance().has(&DataKey::Admin) {
- panic!("already initialized");
+ panic_with_error!(env, JobRegistryError::AlreadyInitialized);
}
-
env.storage().instance().set(&DataKey::Admin, &admin);
+ env.storage().instance().set(&DataKey::NextJobId, &1u64);
+ }
+
+ pub fn set_upgrade_admin(env: Env, caller: Address, new: Address) {
+ caller.require_auth();
+ let admin: Address = env
+ .storage()
+ .instance()
+ .get(&DataKey::Admin)
+ .expect("not initialized");
+ if caller != admin {
+ panic_with_error!(env, JobRegistryError::Unauthorized);
+ }
+ env.storage().instance().set(&DataKey::UpgradeAdmin, &new);
+ }
+
+ pub fn get_upgrade_admin(env: Env) -> Option {
+ env.storage().instance().get(&DataKey::UpgradeAdmin)
}
- pub fn post_job(env: Env, owner: Address, job_id: u64, cid: String, budget: i128) {
- owner.require_auth();
+ pub fn upgrade(env: Env, caller: Address, new_wasm_hash: BytesN<32>) {
+ caller.require_auth();
+ let upgrade_admin: Address = env
+ .storage()
+ .instance()
+ .get(&DataKey::UpgradeAdmin)
+ .expect("upgrade admin not set");
+ if caller != upgrade_admin {
+ panic_with_error!(env, JobRegistryError::Unauthorized);
+ }
+ env.deployer().update_current_contract_wasm(new_wasm_hash);
+ }
+
+ // ── Job posting ───────────────────────────────────────────────────────
+ pub fn post_job(
+ env: Env,
+ job_id: u64,
+ client: Address,
+ metadata_hash: Bytes,
+ budget_stroops: i128,
+ bidding_deadline: u64,
+ expires_at: u64,
+ ) {
+ client.require_auth();
+
+ if job_id == 0 {
+ panic_with_error!(env, JobRegistryError::InvalidJobId);
+ }
+ if budget_stroops <= 0 {
+ panic_with_error!(env, JobRegistryError::InvalidBudget);
+ }
+ if !hash_is_valid(&metadata_hash) {
+ panic_with_error!(env, JobRegistryError::InvalidHash);
+ }
- let checked_budget = budget.checked_mul(1).expect("overflow");
- if checked_budget <= 0 {
- panic!("budget must be positive");
+ let job_key = DataKey::Job(job_id);
+ if env.storage().persistent().has(&job_key) {
+ panic_with_error!(env, JobRegistryError::JobAlreadyExists);
}
- let key = DataKey::Job(job_id);
- if env.storage().persistent().has(&key) {
- panic!("job already exists");
+ Self::write_job(&env, job_id, client, metadata_hash, budget_stroops, bidding_deadline, expires_at);
+
+ let mut next: u64 = env
+ .storage()
+ .instance()
+ .get(&DataKey::NextJobId)
+ .unwrap_or(1);
+ if job_id >= next {
+ next = job_id.checked_add(1).expect("overflow");
+ env.storage().instance().set(&DataKey::NextJobId, &next);
}
+ }
- let job = Job {
- owner,
- cid,
- budget,
+ fn write_job(
+ env: &Env,
+ job_id: u64,
+ client: Address,
+ metadata_hash: Bytes,
+ budget_stroops: i128,
+ bidding_deadline: u64,
+ expires_at: u64,
+ ) {
+ let job = JobRecord {
+ client,
+ freelancer: None,
+ metadata_hash,
+ budget_stroops,
status: JobStatus::Open,
- bid_count: 0,
- assigned_bidder: None,
+ bidding_deadline,
+ expires_at,
};
+ env.storage().persistent().set(&DataKey::Job(job_id), &job);
+ }
+
+ pub fn post_job_auto(
+ env: Env,
+ client: Address,
+ metadata_hash: Bytes,
+ budget_stroops: i128,
+ bidding_deadline: u64,
+ expires_at: u64,
+ ) -> u64 {
+ client.require_auth();
- env.storage().persistent().set(&key, &job);
+ if budget_stroops <= 0 {
+ panic_with_error!(env, JobRegistryError::InvalidBudget);
+ }
+ if !hash_is_valid(&metadata_hash) {
+ panic_with_error!(env, JobRegistryError::InvalidHash);
+ }
+
+ let mut next: u64 = env
+ .storage()
+ .instance()
+ .get(&DataKey::NextJobId)
+ .unwrap_or(1);
+ let job_id = next;
+
+ next = next.checked_add(1).expect("overflow");
+ env.storage().instance().set(&DataKey::NextJobId, &next);
+
+ Self::write_job(&env, job_id, client, metadata_hash, budget_stroops, bidding_deadline, expires_at);
+ job_id
}
- pub fn submit_bid(env: Env, job_id: u64, bidder: Address, amount: i128) {
- bidder.require_auth();
+ // ── Bidding ───────────────────────────────────────────────────────────
+ pub fn submit_bid(
+ env: Env,
+ job_id: u64,
+ freelancer: Address,
+ proposal_hash: Bytes,
+ amount: i128,
+ ) {
+ let _guard = require_not_reentrant(&env);
+ freelancer.require_auth();
- let checked_amount = amount.checked_mul(1).expect("overflow");
- if checked_amount <= 0 {
- panic!("amount must be positive");
+ if !hash_is_valid(&proposal_hash) {
+ panic_with_error!(env, JobRegistryError::InvalidHash);
+ }
+ if amount < 0 {
+ panic_with_error!(env, JobRegistryError::InvalidBudget);
}
- let key = DataKey::Job(job_id);
- let mut job: Job = env
+ let now = env.ledger().timestamp();
+ let job_key = DataKey::Job(job_id);
+ let job: JobRecord = env
.storage()
.persistent()
- .get(&key)
- .expect("job not found");
+ .get(&job_key)
+ .unwrap_or_else(|| panic_with_error!(&env, JobRegistryError::JobNotFound));
if job.status != JobStatus::Open {
- panic!("job not open");
+ panic_with_error!(env, JobRegistryError::JobNotOpen);
+ }
+ if now > job.bidding_deadline && job.bidding_deadline > 0 {
+ panic_with_error!(env, JobRegistryError::JobExpired);
}
- let bid_index = job.bid_count;
- let bid = Bid {
- bidder,
- amount,
- submitted_at: env.ledger().timestamp(),
+ let bids_key = DataKey::Bids(job_id);
+ let mut bids: Vec = env
+ .storage()
+ .persistent()
+ .get(&bids_key)
+ .unwrap_or(Vec::new(&env));
+
+ // Prevent duplicate bid from the same freelancer
+ for b in bids.iter() {
+ if b.freelancer == freelancer {
+ panic_with_error!(env, JobRegistryError::BidAlreadySubmitted);
+ }
+ }
+
+ let ev_freelancer = freelancer.clone();
+ let ev_hash = proposal_hash.clone();
+
+ let bid = BidRecord {
+ freelancer,
+ proposal_hash,
};
+ bids.push_back(bid);
- env.storage()
+ env.storage().persistent().set(&bids_key, &bids);
+ env.storage().persistent().set(&job_key, &job);
+
+ env.events().publish(
+ ("job_registry", "BidSubmitted"),
+ BidSubmittedEvent {
+ job_id,
+ freelancer: ev_freelancer,
+ proposal_hash: ev_hash,
+ timestamp: now,
+ },
+ );
+ }
+
+ pub fn cancel_bid(env: Env, job_id: u64, freelancer: Address) {
+ let _guard = require_not_reentrant(&env);
+ freelancer.require_auth();
+
+ let job_key = DataKey::Job(job_id);
+ let job: JobRecord = env
+ .storage()
+ .persistent()
+ .get(&job_key)
+ .unwrap_or_else(|| panic_with_error!(&env, JobRegistryError::JobNotFound));
+
+ if job.status != JobStatus::Open {
+ panic_with_error!(env, JobRegistryError::JobNotOpen);
+ }
+
+ let bids_key = DataKey::Bids(job_id);
+ let mut bids: Vec = env
+ .storage()
.persistent()
- .set(&DataKey::Bid(job_id, bid_index), &bid);
+ .get(&bids_key)
+ .unwrap_or_else(|| panic_with_error!(&env, JobRegistryError::BidNotFound));
+
+ let len_before = bids.len();
+ let mut filtered: Vec = Vec::new(&env);
+ for b in bids.iter() {
+ if b.freelancer != freelancer {
+ filtered.push_back(b);
+ }
+ }
+ if filtered.len() == len_before {
+ panic_with_error!(env, JobRegistryError::BidNotFound);
+ }
+ bids = filtered;
- job.bid_count = job.bid_count.checked_add(1).expect("overflow");
- env.storage().persistent().set(&key, &job);
+ env.storage().persistent().set(&bids_key, &bids);
}
- pub fn accept_bid(env: Env, job_id: u64, caller: Address, bid_index: u32) {
+ // ── Acceptance ────────────────────────────────────────────────────────
+ pub fn accept_bid(env: Env, job_id: u64, caller: Address, freelancer: Address) {
+ let _guard = require_not_reentrant(&env);
caller.require_auth();
- let key = DataKey::Job(job_id);
- let mut job: Job = env
+ let now = env.ledger().timestamp();
+ let job_key = DataKey::Job(job_id);
+ let mut job: JobRecord = env
.storage()
.persistent()
- .get(&key)
- .expect("job not found");
+ .get(&job_key)
+ .unwrap_or_else(|| panic_with_error!(&env, JobRegistryError::JobNotFound));
- if caller != job.owner {
- panic!("unauthorized");
+ // Strict ownership: only the job creator can accept
+ if caller != job.client {
+ panic_with_error!(env, JobRegistryError::Unauthorized);
}
if job.status != JobStatus::Open {
- panic!("job not open");
+ panic_with_error!(env, JobRegistryError::JobNotOpen);
}
- if bid_index >= job.bid_count {
- panic!("invalid bid index");
+ if now > job.bidding_deadline && job.bidding_deadline > 0 {
+ panic_with_error!(env, JobRegistryError::JobExpired);
}
- let bid: Bid = env
+ let bids_key = DataKey::Bids(job_id);
+ let bids: Vec = env
.storage()
.persistent()
- .get(&DataKey::Bid(job_id, bid_index))
- .expect("bid not found");
+ .get(&bids_key)
+ .unwrap_or_else(|| panic_with_error!(&env, JobRegistryError::BidNotFound));
+ // Verify the selected freelancer actually submitted a bid
+ let mut found = false;
+ for b in bids.iter() {
+ if b.freelancer == freelancer {
+ found = true;
+ break;
+ }
+ }
+ if !found {
+ panic_with_error!(env, JobRegistryError::BidNotFound);
+ }
+
+ let ev_freelancer = freelancer.clone();
job.status = JobStatus::Assigned;
- job.assigned_bidder = Some(bid.bidder);
- env.storage().persistent().set(&key, &job);
+ job.freelancer = Some(freelancer);
+ env.storage().persistent().set(&job_key, &job);
+
+ env.events().publish(
+ ("job_registry", "BidAccepted"),
+ BidAcceptedEvent {
+ job_id,
+ client: caller,
+ freelancer: ev_freelancer,
+ timestamp: now,
+ },
+ );
+ }
+
+ // ── Deliverable ───────────────────────────────────────────────────────
+ pub fn submit_deliverable(
+ env: Env,
+ job_id: u64,
+ freelancer: Address,
+ deliverable_hash: Bytes,
+ ) {
+ let _guard = require_not_reentrant(&env);
+ freelancer.require_auth();
+
+ if !hash_is_valid(&deliverable_hash) {
+ panic_with_error!(env, JobRegistryError::InvalidHash);
+ }
+
+ let job_key = DataKey::Job(job_id);
+ let mut job: JobRecord = env
+ .storage()
+ .persistent()
+ .get(&job_key)
+ .unwrap_or_else(|| panic_with_error!(&env, JobRegistryError::JobNotFound));
+
+ if job.status != JobStatus::Assigned {
+ panic_with_error!(env, JobRegistryError::InvalidStateTransition);
+ }
+ if job.freelancer.as_ref() != Some(&freelancer) {
+ panic_with_error!(env, JobRegistryError::Unauthorized);
+ }
+
+ job.status = JobStatus::DeliverableSubmitted;
+ env.storage().persistent().set(&job_key, &job);
+ }
+
+ // ── Dispute ───────────────────────────────────────────────────────────
+ pub fn mark_disputed(env: Env, job_id: u64, caller: Address) {
+ caller.require_auth();
+
+ let job_key = DataKey::Job(job_id);
+ let mut job: JobRecord = env
+ .storage()
+ .persistent()
+ .get(&job_key)
+ .unwrap_or_else(|| panic_with_error!(&env, JobRegistryError::JobNotFound));
+
+ // Only client or freelancer can mark disputed
+ if caller != job.client && job.freelancer.as_ref() != Some(&caller) {
+ panic_with_error!(env, JobRegistryError::Unauthorized);
+ }
+
+ match job.status {
+ JobStatus::Assigned | JobStatus::DeliverableSubmitted => {
+ job.status = JobStatus::Disputed;
+ env.storage().persistent().set(&job_key, &job);
+ }
+ _ => panic_with_error!(env, JobRegistryError::InvalidStateTransition),
+ }
}
+ // ── Close / Cancel ────────────────────────────────────────────────────
pub fn close_job(env: Env, job_id: u64, caller: Address) {
+ let _guard = require_not_reentrant(&env);
caller.require_auth();
- let key = DataKey::Job(job_id);
- let mut job: Job = env
+ let job_key = DataKey::Job(job_id);
+ let mut job: JobRecord = env
.storage()
.persistent()
- .get(&key)
- .expect("job not found");
+ .get(&job_key)
+ .unwrap_or_else(|| panic_with_error!(&env, JobRegistryError::JobNotFound));
- if caller != job.owner {
- panic!("unauthorized");
+ if caller != job.client {
+ panic_with_error!(env, JobRegistryError::Unauthorized);
}
job.status = JobStatus::Closed;
- env.storage().persistent().set(&key, &job);
+ env.storage().persistent().set(&job_key, &job);
}
- pub fn get_job(env: Env, job_id: u64) -> Job {
- env.storage()
+ pub fn cancel_expired_job(env: Env, job_id: u64, caller: Address) {
+ caller.require_auth();
+
+ let job_key = DataKey::Job(job_id);
+ let mut job: JobRecord = env
+ .storage()
.persistent()
- .get(&DataKey::Job(job_id))
- .expect("job not found")
+ .get(&job_key)
+ .unwrap_or_else(|| panic_with_error!(&env, JobRegistryError::JobNotFound));
+
+ let now = env.ledger().timestamp();
+ if now <= job.expires_at || job.expires_at == 0 {
+ panic_with_error!(env, JobRegistryError::InvalidStateTransition);
+ }
+ if caller != job.client {
+ panic_with_error!(env, JobRegistryError::Unauthorized);
+ }
+
+ job.status = JobStatus::Closed;
+ env.storage().persistent().set(&job_key, &job);
}
- pub fn get_bid(env: Env, job_id: u64, bid_index: u32) -> Bid {
+ // ── View functions ────────────────────────────────────────────────────
+ pub fn get_job(env: Env, job_id: u64) -> JobRecord {
env.storage()
.persistent()
- .get(&DataKey::Bid(job_id, bid_index))
- .expect("bid not found")
+ .get(&DataKey::Job(job_id))
+ .unwrap_or_else(|| panic_with_error!(&env, JobRegistryError::JobNotFound))
}
pub fn get_job_status(env: Env, job_id: u64) -> JobStatus {
Self::get_job(env, job_id).status
}
+
+ pub fn get_bids(env: Env, job_id: u64) -> Vec {
+ // Verify the job exists first
+ Self::get_job(env.clone(), job_id);
+ env.storage()
+ .persistent()
+ .get(&DataKey::Bids(job_id))
+ .unwrap_or(Vec::new(&env))
+ }
+
+ pub fn get_bid_at(env: Env, job_id: u64, index: u32) -> BidRecord {
+ let bids = Self::get_bids(env.clone(), job_id);
+ if index >= bids.len() {
+ panic_with_error!(env, JobRegistryError::BidIndexOutOfBounds);
+ }
+ bids.get(index).unwrap()
+ }
+
+ pub fn get_bids_count(env: Env, job_id: u64) -> u32 {
+ Self::get_bids(env.clone(), job_id).len() as u32
+ }
+
+ pub fn get_bids_page(
+ env: Env,
+ job_id: u64,
+ offset: u32,
+ limit: u32,
+ ) -> Vec {
+ let bids = Self::get_bids(env.clone(), job_id);
+ let end = (offset + limit).min(bids.len());
+ if offset >= bids.len() {
+ return Vec::new(&env);
+ }
+ let mut page = Vec::new(&env);
+ let mut i = offset;
+ while i < end {
+ if let Some(b) = bids.get(i) {
+ page.push_back(b);
+ }
+ i += 1;
+ }
+ page
+ }
}
+// ═════════════════════════════════════════════════════════════════════════════
+// Tests
+// ═════════════════════════════════════════════════════════════════════════════
#[cfg(test)]
mod test {
use super::*;
use soroban_sdk::testutils::{Address as _, Ledger};
+ use soroban_sdk::{Bytes, Env};
fn setup_env() -> Env {
let env = Env::default();
@@ -201,115 +608,635 @@ mod test {
client
}
- fn cid(env: &Env, value: &str) -> String {
- String::from_str(env, value)
+ fn hash(env: &Env, bytes: &[u8]) -> Bytes {
+ Bytes::from_slice(env, bytes)
}
+ // ── Initialization ─────────────────────────────────────────────────────
#[test]
- fn test_happy_path() {
+ fn test_initialize_bootstraps_storage() {
+ let env = Env::default();
+ env.mock_all_auths();
+ let contract_id = env.register_contract(None, JobRegistryContract);
+ let client = JobRegistryContractClient::new(&env, &contract_id);
+ let admin = Address::generate(&env);
+ client.initialize(&admin);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #1")]
+ fn test_double_initialize_panics() {
+ let env = Env::default();
+ env.mock_all_auths();
+ let contract_id = env.register_contract(None, JobRegistryContract);
+ let client = JobRegistryContractClient::new(&env, &contract_id);
+ let admin = Address::generate(&env);
+ client.initialize(&admin);
+ client.initialize(&admin);
+ }
+
+ #[test]
+ fn test_post_job_works_without_explicit_initialize() {
+ let env = setup_env();
+ let contract_id = env.register_contract(None, JobRegistryContract);
+ let client = JobRegistryContractClient::new(&env, &contract_id);
+ // No explicit initialize – post_job can still create a job
+ let owner = Address::generate(&env);
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ let job = client.get_job(&1);
+ assert_eq!(job.client, owner);
+ assert_eq!(job.status, JobStatus::Open);
+ }
+
+ // ── post_job ───────────────────────────────────────────────────────────
+ #[test]
+ fn test_post_job_auto_allocates_sequential_ids() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+
+ let id1 = client.post_job_auto(&owner, &hash(&env, b"QmHash1"), &1000, &0, &0);
+ let id2 = client.post_job_auto(&owner, &hash(&env, b"QmHash2"), &2000, &0, &0);
+ assert_eq!(id1, 1);
+ assert_eq!(id2, 2);
+ }
+
+ #[test]
+ fn test_post_job_with_explicit_id_updates_next_job_id() {
let env = setup_env();
let client = setup_client(&env);
let owner = Address::generate(&env);
- let bidder_1 = Address::generate(&env);
- let bidder_2 = Address::generate(&env);
- client.post_job(&owner, &1, &cid(&env, "bafy-job-1"), &1_000);
- client.submit_bid(&1, &bidder_1, &800);
- client.submit_bid(&1, &bidder_2, &700);
- client.accept_bid(&1, &owner, &0);
+ client.post_job(&10, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ // Next should be 11
+ let id2 = client.post_job_auto(&owner, &hash(&env, b"QmHash2"), &2000, &0, &0);
+ assert_eq!(id2, 11);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #6")]
+ fn test_duplicate_job_id() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ client.post_job(&1, &owner, &hash(&env, b"QmHash1"), &1000, &0, &0);
+ client.post_job(&1, &owner, &hash(&env, b"QmHash2"), &2000, &0, &0);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #4")]
+ fn test_invalid_budget_panics() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &0, &0, &0);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #4")]
+ fn test_zero_budget_still_panics() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &0, &0, &0);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #4")]
+ fn test_budget_below_minimum_panics() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &-1, &0, &0);
+ }
+
+ #[test]
+ fn test_budget_at_minimum_succeeds() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1, &0, &0);
+ let job = client.get_job(&1);
+ assert_eq!(job.budget_stroops, 1);
+ }
+
+ #[test]
+ fn test_budget_at_maximum_succeeds() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &i128::MAX, &0, &0);
+ let job = client.get_job(&1);
+ assert_eq!(job.budget_stroops, i128::MAX);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #5")]
+ fn test_oversized_cid_panics_with_invalid_hash() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let long = Bytes::from_slice(&env, &[0u8; 65]);
+ client.post_job(&1, &owner, &long, &1000, &0, &0);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #5")]
+ fn test_empty_hash_panics() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ client.post_job(&1, &owner, &hash(&env, b""), &1000, &0, &0);
+ }
+
+ // ── submit_bid ─────────────────────────────────────────────────────────
+ #[test]
+ fn test_submit_bid_success() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let bidder = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &bidder, &hash(&env, b"QmProposal"), &500);
+
+ let bids = client.get_bids(&1);
+ assert_eq!(bids.len(), 1);
+ assert_eq!(bids.get(0).unwrap().freelancer, bidder);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #7")]
+ fn test_submit_bid_job_not_found() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let bidder = Address::generate(&env);
+ client.submit_bid(&999, &bidder, &hash(&env, b"QmProposal"), &500);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #10")]
+ fn test_duplicate_bid_panics() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let bidder = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &bidder, &hash(&env, b"QmProposal1"), &500);
+ client.submit_bid(&1, &bidder, &hash(&env, b"QmProposal2"), &600);
+ }
+
+ #[test]
+ fn test_multiple_bids_on_same_job() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let bidder1 = Address::generate(&env);
+ let bidder2 = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &bidder1, &hash(&env, b"QmProp1"), &500);
+ client.submit_bid(&1, &bidder2, &hash(&env, b"QmProp2"), &600);
+
+ let bids = client.get_bids(&1);
+ assert_eq!(bids.len(), 2);
+ }
+
+ #[test]
+ fn test_multiple_jobs_and_bids() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let b1 = Address::generate(&env);
+ let b2 = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmJ1"), &1000, &0, &0);
+ client.post_job(&2, &owner, &hash(&env, b"QmJ2"), &2000, &0, &0);
+ client.submit_bid(&1, &b1, &hash(&env, b"QmP1"), &500);
+ client.submit_bid(&2, &b2, &hash(&env, b"QmP2"), &1500);
+
+ assert_eq!(client.get_bids_count(&1), 1);
+ assert_eq!(client.get_bids_count(&2), 1);
+ }
+
+ #[test]
+ fn test_get_bids_count_empty_returns_zero() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ assert_eq!(client.get_bids_count(&1), 0);
+ }
+
+ #[test]
+ fn test_get_bids_count_after_submissions() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let b1 = Address::generate(&env);
+ let b2 = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &b1, &hash(&env, b"QmP1"), &500);
+ client.submit_bid(&1, &b2, &hash(&env, b"QmP2"), &600);
+
+ assert_eq!(client.get_bids_count(&1), 2);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #8")]
+ fn test_submit_bid_on_non_open_job() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let bidder = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ // First submit a bid for bidder so accept succeeds
+ client.submit_bid(&1, &bidder, &hash(&env, b"QmProposal"), &500);
+ client.accept_bid(&1, &owner, &bidder);
+ // Should fail - job no longer Open
+ client.submit_bid(&1, &bidder, &hash(&env, b"QmProposal2"), &600);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #8")]
+ fn test_bid_on_non_open_panics() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let bidder = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.close_job(&1, &owner);
+ client.submit_bid(&1, &bidder, &hash(&env, b"QmProposal"), &500);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #5")]
+ fn test_submit_bid_empty_proposal_hash() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let bidder = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &bidder, &hash(&env, b""), &500);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #13")]
+ fn test_submit_bid_after_expiration_panics() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let bidder = Address::generate(&env);
+
+ // bidding_deadline = 10
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &10, &100);
+ // Advance past deadline
+ env.ledger().with_mut(|li| li.timestamp = 20);
+ client.submit_bid(&1, &bidder, &hash(&env, b"QmProposal"), &500);
+ }
+
+ // ── cancel_bid ─────────────────────────────────────────────────────────
+ #[test]
+ fn test_cancel_bid_success() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let b1 = Address::generate(&env);
+ let b2 = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &b1, &hash(&env, b"QmP1"), &500);
+ client.submit_bid(&1, &b2, &hash(&env, b"QmP2"), &600);
+ client.cancel_bid(&1, &b1);
+
+ assert_eq!(client.get_bids_count(&1), 1);
+ let remaining = client.get_bid_at(&1, &0);
+ assert_eq!(remaining.freelancer, b2);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #11")]
+ fn test_cancel_nonexistent_bid() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let b1 = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.cancel_bid(&1, &b1);
+ }
+
+ // ── accept_bid ─────────────────────────────────────────────────────────
+ #[test]
+ fn test_accept_bid_success() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let b1 = Address::generate(&env);
+ let b2 = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &b1, &hash(&env, b"QmP1"), &500);
+ client.submit_bid(&1, &b2, &hash(&env, b"QmP2"), &600);
+ client.accept_bid(&1, &owner, &b1);
let job = client.get_job(&1);
assert_eq!(job.status, JobStatus::Assigned);
- assert_eq!(job.assigned_bidder, Some(bidder_1));
- assert_eq!(client.get_job_status(&1), JobStatus::Assigned);
+ assert_eq!(job.freelancer, Some(b1.clone()));
}
#[test]
- #[should_panic(expected = "unauthorized")]
+ fn test_full_lifecycle() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let freelancer = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmSomeIPFSHash"), &100000, &0, &0);
+ client.submit_bid(&1, &freelancer, &hash(&env, b"QmProposalHash"), &1000);
+ client.accept_bid(&1, &owner, &freelancer);
+
+ let job = client.get_job(&1);
+ assert_eq!(job.status, JobStatus::Assigned);
+ assert_eq!(job.freelancer, Some(freelancer.clone()));
+
+ client.submit_deliverable(&1, &freelancer, &hash(&env, b"QmDeliverableHash"));
+ let job = client.get_job(&1);
+ assert_eq!(job.status, JobStatus::DeliverableSubmitted);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #8")]
+ fn test_cannot_accept_bid_twice() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let b1 = Address::generate(&env);
+ let b2 = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &b1, &hash(&env, b"QmP1"), &500);
+ client.submit_bid(&1, &b2, &hash(&env, b"QmP2"), &600);
+ client.accept_bid(&1, &owner, &b1);
+ // Second attempt should fail
+ client.accept_bid(&1, &owner, &b2);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #9")]
fn test_unauthorized_accept_bid() {
let env = setup_env();
let client = setup_client(&env);
let owner = Address::generate(&env);
let bidder = Address::generate(&env);
- let caller = Address::generate(&env);
+ let stranger = Address::generate(&env);
- client.post_job(&owner, &1, &cid(&env, "bafy-job-1"), &1_000);
- client.submit_bid(&1, &bidder, &800);
- client.accept_bid(&1, &caller, &0);
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &bidder, &hash(&env, b"QmProposal"), &500);
+ client.accept_bid(&1, &stranger, &bidder);
}
#[test]
- #[should_panic(expected = "job not open")]
- fn test_submit_bid_on_assigned_job() {
+ #[should_panic(expected = "Contract, #11")]
+ fn test_accept_bid_requires_existing_bid() {
let env = setup_env();
let client = setup_client(&env);
let owner = Address::generate(&env);
- let bidder = Address::generate(&env);
- let late_bidder = Address::generate(&env);
+ let fake = Address::generate(&env);
- client.post_job(&owner, &1, &cid(&env, "bafy-job-1"), &1_000);
- client.submit_bid(&1, &bidder, &800);
- client.accept_bid(&1, &owner, &0);
- client.submit_bid(&1, &late_bidder, &700);
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.accept_bid(&1, &owner, &fake);
}
#[test]
- #[should_panic(expected = "invalid bid index")]
- fn test_invalid_bid_index() {
+ #[should_panic(expected = "Contract, #13")]
+ fn test_accept_bid_after_expiration_panics() {
let env = setup_env();
let client = setup_client(&env);
let owner = Address::generate(&env);
let bidder = Address::generate(&env);
- client.post_job(&owner, &1, &cid(&env, "bafy-job-1"), &1_000);
- client.submit_bid(&1, &bidder, &800);
- client.accept_bid(&1, &owner, &1);
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &10, &100);
+ client.submit_bid(&1, &bidder, &hash(&env, b"QmProposal"), &500);
+ env.ledger().with_mut(|li| li.timestamp = 20);
+ client.accept_bid(&1, &owner, &bidder);
}
#[test]
- #[should_panic(expected = "already initialized")]
- fn test_double_initialize() {
- let env = Env::default();
- env.mock_all_auths();
- let contract_id = env.register_contract(None, JobRegistryContract);
- let client = JobRegistryContractClient::new(&env, &contract_id);
- let admin = Address::generate(&env);
+ fn test_get_bids_page_first_window() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let b1 = Address::generate(&env);
+ let b2 = Address::generate(&env);
- client.initialize(&admin);
- client.initialize(&admin);
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &b1, &hash(&env, b"QmP1"), &500);
+ client.submit_bid(&1, &b2, &hash(&env, b"QmP2"), &600);
+
+ let page = client.get_bids_page(&1, &0, &1);
+ assert_eq!(page.len(), 1);
+ assert_eq!(page.get(0).unwrap().freelancer, b1);
}
#[test]
- #[should_panic(expected = "job already exists")]
- fn test_duplicate_job_id() {
+ fn test_get_bids_page_second_window() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let b1 = Address::generate(&env);
+ let b2 = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &b1, &hash(&env, b"QmP1"), &500);
+ client.submit_bid(&1, &b2, &hash(&env, b"QmP2"), &600);
+
+ let page = client.get_bids_page(&1, &1, &1);
+ assert_eq!(page.len(), 1);
+ assert_eq!(page.get(0).unwrap().freelancer, b2);
+ }
+
+ #[test]
+ fn test_get_bids_page_offset_beyond_end_returns_empty() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let b1 = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &b1, &hash(&env, b"QmP1"), &500);
+
+ let page = client.get_bids_page(&1, &5, &10);
+ assert_eq!(page.len(), 0);
+ }
+
+ // ── deliverable & dispute ──────────────────────────────────────────────
+ #[test]
+ fn test_submit_deliverable_success() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let f = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &f, &hash(&env, b"QmP"), &500);
+ client.accept_bid(&1, &owner, &f);
+ client.submit_deliverable(&1, &f, &hash(&env, b"QmDeliverable"));
+
+ let job = client.get_job(&1);
+ assert_eq!(job.status, JobStatus::DeliverableSubmitted);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #9")]
+ fn test_submit_deliverable_unauthorized() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let f = Address::generate(&env);
+ let imposter = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &f, &hash(&env, b"QmP"), &500);
+ client.accept_bid(&1, &owner, &f);
+ client.submit_deliverable(&1, &imposter, &hash(&env, b"QmBad"));
+ }
+
+ #[test]
+ fn test_get_deliverable_without_submission_returns_assigned() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let f = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &f, &hash(&env, b"QmP"), &500);
+ client.accept_bid(&1, &owner, &f);
+ // submit_deliverable was not called - job stays Assigned
+ let job = client.get_job(&1);
+ assert_eq!(job.status, JobStatus::Assigned);
+ }
+
+ #[test]
+ fn test_mark_disputed_from_assigned() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let f = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &f, &hash(&env, b"QmP"), &500);
+ client.accept_bid(&1, &owner, &f);
+ client.mark_disputed(&1, &owner);
+
+ let job = client.get_job(&1);
+ assert_eq!(job.status, JobStatus::Disputed);
+ }
+
+ #[test]
+ fn test_mark_disputed_from_deliverable_submitted() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let f = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &f, &hash(&env, b"QmP"), &500);
+ client.accept_bid(&1, &owner, &f);
+ client.submit_deliverable(&1, &f, &hash(&env, b"QmDeliverable"));
+ client.mark_disputed(&1, &f);
+
+ let job = client.get_job(&1);
+ assert_eq!(job.status, JobStatus::Disputed);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #12")]
+ fn test_mark_disputed_from_open_fails() {
let env = setup_env();
let client = setup_client(&env);
let owner = Address::generate(&env);
- client.post_job(&owner, &1, &cid(&env, "bafy-job-1"), &1_000);
- client.post_job(&owner, &1, &cid(&env, "bafy-job-duplicate"), &2_000);
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.mark_disputed(&1, &owner);
}
#[test]
- #[should_panic(expected = "budget must be positive")]
- fn test_negative_budget() {
+ #[should_panic(expected = "Contract, #12")]
+ fn test_mark_disputed_from_open_panics() {
let env = setup_env();
let client = setup_client(&env);
let owner = Address::generate(&env);
- client.post_job(&owner, &1, &cid(&env, "bafy-job-1"), &-1);
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.mark_disputed(&1, &owner);
}
+ // ── close / cancel expiry ─────────────────────────────────────────────
#[test]
fn test_close_job() {
let env = setup_env();
let client = setup_client(&env);
let owner = Address::generate(&env);
- client.post_job(&owner, &1, &cid(&env, "bafy-job-1"), &1_000);
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
client.close_job(&1, &owner);
- assert_eq!(client.get_job_status(&1), JobStatus::Closed);
+ let job = client.get_job(&1);
+ assert_eq!(job.status, JobStatus::Closed);
+ }
+
+ #[test]
+ fn test_cancel_expired_job_by_client() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+
+ // expires_at = 100
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &100);
+ env.ledger().with_mut(|li| li.timestamp = 200);
+ client.cancel_expired_job(&1, &owner);
+
+ let job = client.get_job(&1);
+ assert_eq!(job.status, JobStatus::Closed);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #12")]
+ fn test_cancel_expired_job_before_expiration_panics() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+
+ // expires_at far in the future relative to current ledger time
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &1_700_000_100);
+ // current time = 1_700_000_000 < 1_700_000_100, not expired yet
+ client.cancel_expired_job(&1, &owner);
+ }
+
+ // ── get_job / get_bid edge cases ──────────────────────────────────────
+ #[test]
+ #[should_panic(expected = "Contract, #7")]
+ fn test_get_job_not_found() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ client.get_job(&999);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #15")]
+ fn test_get_bid_at_out_of_bounds() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.get_bid_at(&1, &0);
}
#[test]
@@ -321,36 +1248,139 @@ mod test {
let bidder_1 = Address::generate(&env);
let bidder_2 = Address::generate(&env);
- client.post_job(&owner_1, &1, &cid(&env, "bafy-job-1"), &1_000);
- client.post_job(&owner_2, &2, &cid(&env, "bafy-job-2"), &2_000);
- client.submit_bid(&1, &bidder_1, &800);
- client.submit_bid(&2, &bidder_2, &1_700);
- client.accept_bid(&1, &owner_1, &0);
+ client.post_job(&1, &owner_1, &hash(&env, b"QmJ1"), &1000, &0, &0);
+ client.post_job(&2, &owner_2, &hash(&env, b"QmJ2"), &2000, &0, &0);
+ client.submit_bid(&1, &bidder_1, &hash(&env, b"QmP1"), &800);
+ client.submit_bid(&2, &bidder_2, &hash(&env, b"QmP2"), &1700);
+ client.accept_bid(&1, &owner_1, &bidder_1);
let job_1 = client.get_job(&1);
let job_2 = client.get_job(&2);
assert_eq!(job_1.status, JobStatus::Assigned);
- assert_eq!(job_1.assigned_bidder, Some(bidder_1));
+ assert_eq!(job_1.freelancer, Some(bidder_1));
assert_eq!(job_2.status, JobStatus::Open);
- assert_eq!(job_2.assigned_bidder, None);
- assert_eq!(job_1.bid_count, 1);
- assert_eq!(job_2.bid_count, 1);
+ assert_eq!(job_2.freelancer, None);
+ assert_eq!(client.get_bids_count(&1), 1);
+ assert_eq!(client.get_bids_count(&2), 1);
+ }
+
+ // ── upgrade admin ──────────────────────────────────────────────────────
+ #[test]
+ fn test_upgrade_admin_initialize_and_read() {
+ let env = setup_env();
+ let contract_id = env.register_contract(None, JobRegistryContract);
+ let client = JobRegistryContractClient::new(&env, &contract_id);
+ let admin = Address::generate(&env);
+ client.initialize(&admin);
+
+ let new_admin = Address::generate(&env);
+ client.set_upgrade_admin(&admin, &new_admin);
+ let stored = client.get_upgrade_admin();
+ assert_eq!(stored, Some(new_admin));
}
#[test]
- fn test_get_bid() {
+ #[should_panic(expected = "Contract, #9")]
+ fn test_set_upgrade_admin_requires_current_admin() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let admin = Address::generate(&env);
+ let stranger = Address::generate(&env);
+ let new_admin = Address::generate(&env);
+
+ client.set_upgrade_admin(&stranger, &new_admin);
+ }
+
+ // ── budget edge cases ──────────────────────────────────────────────────
+ #[test]
+ fn test_budget_above_maximum_succeeds() {
+ // No maximum enforcement; only minimum > 0
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &i128::MAX, &0, &0);
+ let job = client.get_job(&1);
+ assert_eq!(job.budget_stroops, i128::MAX);
+ }
+
+ // ── late bid after acceptance ──────────────────────────────────────────
+ #[test]
+ #[should_panic(expected = "Contract, #8")]
+ fn test_late_bid_after_acceptance_panics_with_job_not_open() {
let env = setup_env();
let client = setup_client(&env);
let owner = Address::generate(&env);
let bidder = Address::generate(&env);
+ let late = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &bidder, &hash(&env, b"QmP1"), &500);
+ client.accept_bid(&1, &owner, &bidder);
+ // Late bidder tries to bid on an already-assigned job
+ client.submit_bid(&1, &late, &hash(&env, b"QmLate"), &600);
+ }
- client.post_job(&owner, &1, &cid(&env, "bafy-job-1"), &1_000);
- client.submit_bid(&1, &bidder, &750);
+ // ── accept without matching bid ────────────────────────────────────────
+ #[test]
+ #[should_panic(expected = "Contract, #11")]
+ fn test_accept_without_matching_bid_panics() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let b1 = Address::generate(&env);
+ let nobody = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.submit_bid(&1, &b1, &hash(&env, b"QmP1"), &500);
+ // Try accepting a bidder that never submitted
+ client.accept_bid(&1, &owner, &nobody);
+ }
+
+ // ── accept_bid on empty bid list ───────────────────────────────────────
+ #[test]
+ #[should_panic(expected = "Contract, #11")]
+ fn test_accept_bid_with_no_bids_submitted() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ let owner = Address::generate(&env);
+ let nobody = Address::generate(&env);
+
+ client.post_job(&1, &owner, &hash(&env, b"QmHash"), &1000, &0, &0);
+ client.accept_bid(&1, &owner, &nobody);
+ }
+
+ // ── get_bids on missing job ────────────────────────────────────────────
+ #[test]
+ #[should_panic(expected = "Contract, #7")]
+ fn test_get_bids_job_not_found() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ client.get_bids(&999);
+ }
+
+ #[test]
+ #[should_panic(expected = "Contract, #7")]
+ fn test_get_bids_for_missing_job_panics() {
+ let env = setup_env();
+ let client = setup_client(&env);
+ client.get_bids(&999);
+ }
+
+ // ── set_escrow_deployer (alias for upgrade_admin round-trip) ──────────
+ // In this contract the "escrow deployer" role is not separate; the
+ // upgrade admin serves as the upgrade authority.
+ #[test]
+ fn test_set_escrow_deployer_round_trip() {
+ let env = setup_env();
+ let contract_id = env.register_contract(None, JobRegistryContract);
+ let client = JobRegistryContractClient::new(&env, &contract_id);
+ let admin = Address::generate(&env);
+ client.initialize(&admin);
- let bid = client.get_bid(&1, &0);
- assert_eq!(bid.bidder, bidder);
- assert_eq!(bid.amount, 750);
- assert_eq!(bid.submitted_at, 1_700_000_000);
+ let deployer = Address::generate(&env);
+ client.set_upgrade_admin(&admin, &deployer);
+ let stored = client.get_upgrade_admin();
+ assert_eq!(stored, Some(deployer));
}
}
diff --git a/contracts/job_registry/test_snapshots/test/test_accept_bid_after_expiration_panics.1.json b/contracts/job_registry/test_snapshots/test/test_accept_bid_after_expiration_panics.1.json
index 88709ccb..95c4c2e7 100644
--- a/contracts/job_registry/test_snapshots/test/test_accept_bid_after_expiration_panics.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_accept_bid_after_expiration_panics.1.json
@@ -4,39 +4,21 @@
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -44,36 +26,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 60
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 1
+ "u64": 10
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- },
- {
- "bytes": "516d50726f706f73616c"
+ "u64": 100
}
]
}
@@ -87,7 +47,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 61,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -98,171 +58,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "vec": [
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c"
- }
- }
- ]
- }
- ]
- }
- }
- },
- "ext": "v0"
- },
- 4095
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -282,7 +77,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -296,6 +91,14 @@
"durability": "persistent",
"val": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 10
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -303,7 +106,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
}
},
@@ -312,7 +115,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -320,7 +123,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 100
}
},
{
@@ -361,7 +164,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -372,7 +175,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -390,7 +193,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -415,6 +218,39 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -451,14 +287,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -468,54 +304,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "vec": [
- {
- "string": "JobRegistry initialized with admin: {}"
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "init"
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -545,7 +334,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -557,7 +346,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -565,47 +354,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 60
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "vec": [
- {
- "string": "post_job: id {} client {} budget {}"
+ "u64": 10
},
{
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 100000
- }
+ "u64": 100
}
]
}
@@ -617,40 +373,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "jobpost"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "vec": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 100000
- }
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -680,7 +403,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -692,120 +415,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
"bytes": "516d50726f706f73616c"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "vec": [
- {
- "string": "submit_bid: id {} freelancer {}"
- },
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "bid"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "submit_bid"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
- },
- {
- "symbol": "accept_bid"
- }
- ],
- "data": {
- "vec": [
- {
- "u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -817,7 +436,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -827,7 +446,7 @@
},
{
"error": {
- "contract": 16
+ "contract": 13
}
}
],
@@ -837,7 +456,7 @@
"string": "failing with contract error"
},
{
- "u32": 16
+ "u32": 13
}
]
}
@@ -849,7 +468,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -859,7 +478,7 @@
},
{
"error": {
- "contract": 16
+ "contract": 13
}
}
],
@@ -874,7 +493,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -884,7 +503,7 @@
},
{
"error": {
- "contract": 16
+ "contract": 13
}
}
],
@@ -909,7 +528,7 @@
},
{
"error": {
- "contract": 16
+ "contract": 13
}
}
],
@@ -919,7 +538,7 @@
"string": "contract call failed"
},
{
- "symbol": "accept_bid"
+ "symbol": "submit_bid"
},
{
"vec": [
@@ -927,10 +546,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "bytes": "516d50726f706f73616c"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -954,7 +579,7 @@
},
{
"error": {
- "contract": 16
+ "contract": 13
}
}
],
diff --git a/contracts/job_registry/test_snapshots/test/test_accept_bid_requires_existing_bid.1.json b/contracts/job_registry/test_snapshots/test/test_accept_bid_requires_existing_bid.1.json
index d31d906c..4b230785 100644
--- a/contracts/job_registry/test_snapshots/test/test_accept_bid_requires_existing_bid.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_accept_bid_requires_existing_bid.1.json
@@ -1,32 +1,39 @@
{
"generators": {
- "address": 3,
+ "address": 4,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d4a6f62"
+ "bytes": "516d48617368"
},
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -40,7 +47,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -51,39 +58,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"vec": [
{
@@ -103,7 +77,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -117,6 +91,14 @@
"durability": "persistent",
"val": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -124,7 +106,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
}
},
@@ -133,7 +115,15 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
}
},
{
@@ -147,7 +137,7 @@
"symbol": "metadata_hash"
},
"val": {
- "bytes": "516d4a6f62"
+ "bytes": "516d48617368"
}
},
{
@@ -168,13 +158,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -185,7 +175,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -193,7 +183,32 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
}
}
}
@@ -203,6 +218,39 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -239,7 +287,54 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -251,16 +346,22 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d4a6f62"
+ "bytes": "516d48617368"
},
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -272,7 +373,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -302,7 +403,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "accept_bid"
@@ -314,10 +415,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -329,22 +430,54 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_return"
+ "symbol": "error"
},
{
- "symbol": "accept_bid"
+ "error": {
+ "contract": 11
+ }
}
],
"data": {
- "error": {
- "contract": 6
+ "vec": [
+ {
+ "string": "failing with contract error"
+ },
+ {
+ "u32": 11
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 11
+ }
}
+ ],
+ "data": {
+ "string": "escalating error to panic"
}
}
}
@@ -354,7 +487,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -364,12 +497,12 @@
},
{
"error": {
- "contract": 6
+ "contract": 11
}
}
],
"data": {
- "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err"
+ "string": "caught error from function"
}
}
}
@@ -389,7 +522,7 @@
},
{
"error": {
- "contract": 6
+ "contract": 11
}
}
],
@@ -407,10 +540,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -434,7 +567,7 @@
},
{
"error": {
- "contract": 6
+ "contract": 11
}
}
],
diff --git a/contracts/job_registry/test_snapshots/test/test_accept_bid_success.1.json b/contracts/job_registry/test_snapshots/test/test_accept_bid_success.1.json
index 5d6e068e..66c1934f 100644
--- a/contracts/job_registry/test_snapshots/test/test_accept_bid_success.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_accept_bid_success.1.json
@@ -1,32 +1,39 @@
{
"generators": {
- "address": 3,
+ "address": 5,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d4a6f62"
+ "bytes": "516d48617368"
},
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -37,21 +44,27 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -62,21 +75,52 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "submit_bid",
+ "args": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ },
+ {
+ "bytes": "516d5032"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 600
+ }
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "accept_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -90,7 +134,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -101,105 +145,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"vec": [
{
@@ -219,7 +164,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -240,7 +185,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -248,7 +193,27 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
+ }
+ }
+ ]
+ },
+ {
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5032"
}
}
]
@@ -259,13 +224,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -285,7 +250,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -299,6 +264,14 @@
"durability": "persistent",
"val": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -306,7 +279,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
}
},
@@ -315,7 +288,15 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
}
},
{
@@ -323,7 +304,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -331,7 +312,7 @@
"symbol": "metadata_hash"
},
"val": {
- "bytes": "516d4a6f62"
+ "bytes": "516d48617368"
}
},
{
@@ -341,7 +322,7 @@
"val": {
"vec": [
{
- "symbol": "InProgress"
+ "symbol": "Assigned"
}
]
}
@@ -352,13 +333,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -369,7 +350,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -377,7 +358,32 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
}
}
}
@@ -387,6 +393,138 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 4837995959683129791
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 4837995959683129791
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -423,7 +561,54 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -435,16 +620,22 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d4a6f62"
+ "bytes": "516d48617368"
},
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -456,7 +647,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -486,7 +677,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -498,10 +689,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "bytes": "516d5031"
},
{
- "bytes": "516d50726f706f73616c"
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -513,7 +710,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -532,7 +729,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -548,7 +745,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
}
},
{
@@ -556,7 +753,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -569,7 +766,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -599,7 +796,126 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "submit_bid"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ },
+ {
+ "bytes": "516d5032"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 600
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "job_registry"
+ },
+ {
+ "string": "BidSubmitted"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ }
+ },
+ {
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5032"
+ }
+ },
+ {
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "submit_bid"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "accept_bid"
@@ -611,10 +927,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -626,7 +942,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -645,7 +961,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -653,7 +969,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -669,7 +985,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -682,7 +998,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -712,7 +1028,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "get_job"
@@ -729,7 +1045,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -743,6 +1059,14 @@
],
"data": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -750,7 +1074,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
}
},
@@ -759,7 +1083,15 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
}
},
{
@@ -767,7 +1099,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -775,7 +1107,7 @@
"symbol": "metadata_hash"
},
"val": {
- "bytes": "516d4a6f62"
+ "bytes": "516d48617368"
}
},
{
@@ -785,7 +1117,7 @@
"val": {
"vec": [
{
- "symbol": "InProgress"
+ "symbol": "Assigned"
}
]
}
diff --git a/contracts/job_registry/test_snapshots/test/test_accept_bid_with_no_bids_submitted.1.json b/contracts/job_registry/test_snapshots/test/test_accept_bid_with_no_bids_submitted.1.json
new file mode 100644
index 00000000..4b230785
--- /dev/null
+++ b/contracts/job_registry/test_snapshots/test/test_accept_bid_with_no_bids_submitted.1.json
@@ -0,0 +1,583 @@
+{
+ "generators": {
+ "address": 4,
+ "nonce": 0
+ },
+ "auth": [
+ [],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "post_job",
+ "args": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "bytes": "516d48617368"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ []
+ ],
+ "ledger": {
+ "protocol_version": 21,
+ "sequence_number": 0,
+ "timestamp": 1700000000,
+ "network_id": "0000000000000000000000000000000000000000000000000000000000000000",
+ "base_reserve": 0,
+ "min_persistent_entry_ttl": 4096,
+ "min_temp_entry_ttl": 16,
+ "max_entry_ttl": 6312000,
+ "ledger_entries": [
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 1
+ }
+ ]
+ },
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 1
+ }
+ ]
+ },
+ "durability": "persistent",
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "budget_stroops"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": "void"
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": {
+ "bytes": "516d48617368"
+ }
+ },
+ {
+ "key": {
+ "symbol": "status"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Open"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_code": {
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_code": {
+ "ext": "v0",
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "code": ""
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ]
+ ]
+ },
+ "events": [
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "post_job"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "bytes": "516d48617368"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "post_job"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "accept_bid"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 11
+ }
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "string": "failing with contract error"
+ },
+ {
+ "u32": 11
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 11
+ }
+ }
+ ],
+ "data": {
+ "string": "escalating error to panic"
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 11
+ }
+ }
+ ],
+ "data": {
+ "string": "caught error from function"
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 11
+ }
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "string": "contract call failed"
+ },
+ {
+ "symbol": "accept_bid"
+ },
+ {
+ "vec": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 11
+ }
+ }
+ ],
+ "data": {
+ "string": "escalating error to panic"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ }
+ ]
+}
\ No newline at end of file
diff --git a/contracts/job_registry/test_snapshots/test/test_accept_without_matching_bid_panics.1.json b/contracts/job_registry/test_snapshots/test/test_accept_without_matching_bid_panics.1.json
index 25cb10f2..9d0bbd15 100644
--- a/contracts/job_registry/test_snapshots/test/test_accept_without_matching_bid_panics.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_accept_without_matching_bid_panics.1.json
@@ -1,20 +1,39 @@
{
"generators": {
- "address": 4,
+ "address": 5,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "post_job",
"args": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "bytes": "516d48617368"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -25,33 +44,27 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "post_job",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d48617368"
+ "bytes": "516d5031"
},
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 500
}
- },
- {
- "u64": 30
- },
- {
- "u64": 60
}
]
}
@@ -65,7 +78,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -76,76 +89,10 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
- "symbol": "BidCount"
+ "symbol": "Bids"
},
{
"u64": 1
@@ -161,11 +108,11 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
- "symbol": "BidCount"
+ "symbol": "Bids"
},
{
"u64": 1
@@ -174,7 +121,28 @@
},
"durability": "persistent",
"val": {
- "u32": 0
+ "vec": [
+ {
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5031"
+ }
+ }
+ ]
+ }
+ ]
}
}
},
@@ -186,7 +154,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -206,7 +174,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -225,7 +193,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -235,7 +203,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
}
},
@@ -244,7 +212,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -252,7 +220,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
@@ -293,7 +261,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -304,7 +272,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -322,7 +290,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -347,6 +315,72 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -383,14 +417,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -400,17 +434,66 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "log"
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "post_job"
}
],
"data": {
- "string": "initialized"
+ "vec": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "bytes": "516d48617368"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
+ }
+ ]
}
}
}
@@ -420,7 +503,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -429,7 +512,7 @@
"symbol": "fn_return"
},
{
- "symbol": "initialize"
+ "symbol": "post_job"
}
],
"data": "void"
@@ -450,10 +533,10 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "post_job"
+ "symbol": "submit_bid"
}
],
"data": {
@@ -462,22 +545,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d48617368"
+ "bytes": "516d5031"
},
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 500
}
- },
- {
- "u64": 30
- },
- {
- "u64": 60
}
]
}
@@ -489,20 +566,53 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "jobpost"
+ "string": "job_registry"
},
{
- "u64": 1
+ "string": "BidSubmitted"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5031"
+ }
+ },
+ {
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
+ }
+ }
+ ]
}
}
}
@@ -512,7 +622,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -521,7 +631,7 @@
"symbol": "fn_return"
},
{
- "symbol": "post_job"
+ "symbol": "submit_bid"
}
],
"data": "void"
@@ -542,7 +652,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "accept_bid"
@@ -554,10 +664,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
}
]
}
@@ -569,7 +679,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -601,7 +711,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -626,7 +736,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -679,10 +789,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
}
]
}
diff --git a/contracts/job_registry/test_snapshots/test/test_bid_on_non_open_panics.1.json b/contracts/job_registry/test_snapshots/test/test_bid_on_non_open_panics.1.json
index 1a3c7ae7..cb4f5dc7 100644
--- a/contracts/job_registry/test_snapshots/test/test_bid_on_non_open_panics.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_bid_on_non_open_panics.1.json
@@ -4,20 +4,21 @@
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -25,33 +26,14 @@
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "u64": 0
},
{
- "bytes": "516d50726f706f73616c"
+ "u64": 0
}
]
}
@@ -62,21 +44,18 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "accept_bid",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "close_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
]
}
@@ -90,7 +69,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -101,171 +80,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "vec": [
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c"
- }
- }
- ]
- }
- ]
- }
- }
- },
- "ext": "v0"
- },
- 150000
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -285,7 +99,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -299,6 +113,14 @@
"durability": "persistent",
"val": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -306,7 +128,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
}
},
@@ -315,17 +137,23 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
"key": {
- "symbol": "freelancer"
+ "symbol": "expires_at"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "u64": 0
}
},
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": "void"
+ },
{
"key": {
"symbol": "metadata_hash"
@@ -341,7 +169,7 @@
"val": {
"vec": [
{
- "symbol": "InProgress"
+ "symbol": "Closed"
}
]
}
@@ -352,13 +180,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -369,7 +197,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -377,7 +205,32 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
}
}
}
@@ -387,6 +240,72 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -423,30 +342,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "post_job"
+ "symbol": "initialize"
}
],
"data": {
- "vec": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- },
- {
- "bytes": "516d48617368"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 5000
- }
- }
- ]
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -456,7 +359,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -465,7 +368,7 @@
"symbol": "fn_return"
},
{
- "symbol": "post_job"
+ "symbol": "initialize"
}
],
"data": "void"
@@ -486,10 +389,10 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "submit_bid"
+ "symbol": "post_job"
}
],
"data": {
@@ -498,66 +401,22 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d50726f706f73616c"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "string": "job_registry"
- },
- {
- "string": "BidSubmitted"
- }
- ],
- "data": {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
+ "bytes": "516d48617368"
},
{
- "key": {
- "symbol": "job_id"
- },
- "val": {
- "u64": 1
+ "i128": {
+ "hi": 0,
+ "lo": 1000
}
},
{
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c"
- }
+ "u64": 0
},
{
- "key": {
- "symbol": "timestamp"
- },
- "val": {
- "u64": 0
- }
+ "u64": 0
}
]
}
@@ -569,7 +428,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -578,7 +437,7 @@
"symbol": "fn_return"
},
{
- "symbol": "submit_bid"
+ "symbol": "post_job"
}
],
"data": "void"
@@ -599,10 +458,10 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "accept_bid"
+ "symbol": "close_job"
}
],
"data": {
@@ -611,10 +470,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
]
}
@@ -626,54 +482,19 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "string": "job_registry"
+ "symbol": "fn_return"
},
{
- "string": "BidAccepted"
+ "symbol": "close_job"
}
],
- "data": {
- "map": [
- {
- "key": {
- "symbol": "client"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "job_id"
- },
- "val": {
- "u64": 1
- }
- },
- {
- "key": {
- "symbol": "timestamp"
- },
- "val": {
- "u64": 0
- }
- }
- ]
- }
+ "data": "void"
}
}
},
@@ -682,19 +503,40 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": null,
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_return"
+ "symbol": "fn_call"
},
{
- "symbol": "accept_bid"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "submit_bid"
}
],
- "data": "void"
+ "data": {
+ "vec": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "bytes": "516d50726f706f73616c"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
+ }
+ ]
+ }
}
}
},
@@ -703,58 +545,54 @@
{
"event": {
"ext": "v0",
- "contract_id": null,
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "symbol": "error"
},
{
- "symbol": "submit_bid"
+ "error": {
+ "contract": 8
+ }
}
],
"data": {
"vec": [
{
- "u64": 1
+ "string": "failing with contract error"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- },
- {
- "bytes": "516d4c617465"
+ "u32": 8
}
]
}
}
}
},
- "failed_call": false
+ "failed_call": true
},
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_return"
+ "symbol": "error"
},
{
- "symbol": "submit_bid"
+ "error": {
+ "contract": 8
+ }
}
],
"data": {
- "error": {
- "contract": 2
- }
+ "string": "escalating error to panic"
}
}
}
@@ -764,7 +602,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -774,12 +612,12 @@
},
{
"error": {
- "contract": 2
+ "contract": 8
}
}
],
"data": {
- "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err"
+ "string": "caught error from function"
}
}
}
@@ -799,7 +637,7 @@
},
{
"error": {
- "contract": 2
+ "contract": 8
}
}
],
@@ -817,10 +655,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d4c617465"
+ "bytes": "516d50726f706f73616c"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -844,7 +688,7 @@
},
{
"error": {
- "contract": 2
+ "contract": 8
}
}
],
diff --git a/contracts/job_registry/test_snapshots/test/test_budget_above_maximum_panics.1.json b/contracts/job_registry/test_snapshots/test/test_budget_above_maximum_panics.1.json
index 12aa8f4d..339aef59 100644
--- a/contracts/job_registry/test_snapshots/test/test_budget_above_maximum_panics.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_budget_above_maximum_panics.1.json
@@ -1,20 +1,39 @@
{
"generators": {
- "address": 4,
+ "address": 3,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "post_job",
"args": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "bytes": "516d48617368"
+ },
+ {
+ "i128": {
+ "hi": 9223372036854775807,
+ "lo": 18446744073709551615
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -22,13 +41,12 @@
"sub_invocations": []
}
]
- ],
- []
+ ]
],
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -40,11 +58,16 @@
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 1
+ }
+ ]
},
- "durability": "temporary"
+ "durability": "persistent"
}
},
[
@@ -55,23 +78,92 @@
"ext": "v0",
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 1
+ }
+ ]
},
- "durability": "temporary",
- "val": "void"
+ "durability": "persistent",
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "budget_stroops"
+ },
+ "val": {
+ "i128": {
+ "hi": 9223372036854775807,
+ "lo": 18446744073709551615
+ }
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": "void"
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": {
+ "bytes": "516d48617368"
+ }
+ },
+ {
+ "key": {
+ "symbol": "status"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Open"
+ }
+ ]
+ }
+ }
+ ]
+ }
}
},
"ext": "v0"
},
- 6311999
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -82,7 +174,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -100,7 +192,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -112,7 +204,7 @@
]
},
"val": {
- "u64": 1
+ "u64": 2
}
}
]
@@ -125,6 +217,39 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -161,34 +286,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -198,7 +303,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -228,7 +333,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -240,22 +345,22 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
},
{
"i128": {
- "hi": 0,
- "lo": 100000000000001
+ "hi": 9223372036854775807,
+ "lo": 18446744073709551615
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -267,162 +372,19 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "error"
- },
- {
- "error": {
- "contract": 4
- }
- }
- ],
- "data": {
- "vec": [
- {
- "string": "failing with contract error"
- },
- {
- "u32": 4
- }
- ]
- }
- }
- }
- },
- "failed_call": true
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "error"
- },
- {
- "error": {
- "contract": 4
- }
- }
- ],
- "data": {
- "string": "escalating error to panic"
- }
- }
- }
- },
- "failed_call": true
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "error"
- },
- {
- "error": {
- "contract": 4
- }
- }
- ],
- "data": {
- "string": "caught error from function"
- }
- }
- }
- },
- "failed_call": true
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "error"
- },
- {
- "error": {
- "contract": 4
- }
- }
- ],
- "data": {
- "vec": [
- {
- "string": "contract call failed"
- },
- {
- "symbol": "post_job"
- },
- {
- "vec": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "bytes": "516d48617368"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 100000000000001
- }
- },
- {
- "u64": 30
- },
- {
- "u64": 60
- }
- ]
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "error"
+ "symbol": "fn_return"
},
{
- "error": {
- "contract": 4
- }
+ "symbol": "post_job"
}
],
- "data": {
- "string": "escalating error to panic"
- }
+ "data": "void"
}
}
},
diff --git a/contracts/reputation/test_snapshots/test/test_slash.1.json b/contracts/job_registry/test_snapshots/test/test_budget_above_maximum_succeeds.1.json
similarity index 70%
rename from contracts/reputation/test_snapshots/test/test_slash.1.json
rename to contracts/job_registry/test_snapshots/test/test_budget_above_maximum_succeeds.1.json
index 444e4a14..bced77cb 100644
--- a/contracts/reputation/test_snapshots/test/test_slash.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_budget_above_maximum_succeeds.1.json
@@ -7,25 +7,33 @@
[],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "function_name": "slash",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "post_job",
"args": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "u64": 1
},
{
- "vec": [
- {
- "symbol": "Client"
- }
- ]
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "bytes": "516d48617368"
},
{
- "symbol": "fraud"
+ "i128": {
+ "hi": 9223372036854775807,
+ "lo": 18446744073709551615
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -39,7 +47,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -50,46 +58,13 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"vec": [
{
- "symbol": "Profile"
+ "symbol": "Job"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "u64": 1
}
]
},
@@ -102,14 +77,14 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
- "symbol": "Profile"
+ "symbol": "Job"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "u64": 1
}
]
},
@@ -118,65 +93,64 @@
"map": [
{
"key": {
- "symbol": "address"
+ "symbol": "bidding_deadline"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "u64": 0
}
},
{
"key": {
- "symbol": "client_jobs"
+ "symbol": "budget_stroops"
},
"val": {
- "u32": 0
+ "i128": {
+ "hi": 9223372036854775807,
+ "lo": 18446744073709551615
+ }
}
},
{
"key": {
- "symbol": "client_points"
+ "symbol": "client"
},
"val": {
- "i32": 0
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
"key": {
- "symbol": "client_score"
+ "symbol": "expires_at"
},
"val": {
- "i32": 3000
+ "u64": 0
}
},
{
"key": {
- "symbol": "freelancer_jobs"
+ "symbol": "freelancer"
},
- "val": {
- "u32": 0
- }
+ "val": "void"
},
{
"key": {
- "symbol": "freelancer_points"
+ "symbol": "metadata_hash"
},
"val": {
- "i32": 0
+ "bytes": "516d48617368"
}
},
{
"key": {
- "symbol": "freelancer_score"
+ "symbol": "status"
},
"val": {
- "i32": 5000
+ "vec": [
+ {
+ "symbol": "Open"
+ }
+ ]
}
- },
- {
- "key": {
- "symbol": "metadata_hash"
- },
- "val": "void"
}
]
}
@@ -184,13 +158,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -201,7 +175,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -219,7 +193,19 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
}
}
]
@@ -229,7 +215,40 @@
},
"ext": "v0"
},
- 150000
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
]
],
[
@@ -250,7 +269,7 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
]
]
@@ -268,14 +287,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -285,7 +304,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -315,102 +334,34 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "slash"
+ "symbol": "post_job"
}
],
"data": {
"vec": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "u64": 1
},
{
- "vec": [
- {
- "symbol": "Client"
- }
- ]
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "symbol": "fraud"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "string": "reputation"
- },
- {
- "string": "ScoreAdjusted"
- }
- ],
- "data": {
- "map": [
- {
- "key": {
- "symbol": "address"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
+ "bytes": "516d48617368"
},
{
- "key": {
- "symbol": "adjusted_at"
- },
- "val": {
- "u64": 0
+ "i128": {
+ "hi": 9223372036854775807,
+ "lo": 18446744073709551615
}
},
{
- "key": {
- "symbol": "delta"
- },
- "val": {
- "i32": -2000
- }
- },
- {
- "key": {
- "symbol": "new_score"
- },
- "val": {
- "i32": 3000
- }
+ "u64": 0
},
{
- "key": {
- "symbol": "role"
- },
- "val": {
- "vec": [
- {
- "symbol": "Client"
- }
- ]
- }
- },
- {
- "key": {
- "symbol": "total_jobs"
- },
- "val": {
- "u32": 0
- }
+ "u64": 0
}
]
}
@@ -422,7 +373,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -431,7 +382,7 @@
"symbol": "fn_return"
},
{
- "symbol": "slash"
+ "symbol": "post_job"
}
],
"data": "void"
@@ -452,25 +403,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "get_score"
+ "symbol": "get_job"
}
],
"data": {
- "vec": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "vec": [
- {
- "symbol": "Client"
- }
- ]
- }
- ]
+ "u64": 1
}
}
}
@@ -480,7 +420,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -489,61 +429,70 @@
"symbol": "fn_return"
},
{
- "symbol": "get_score"
+ "symbol": "get_job"
}
],
"data": {
"map": [
{
"key": {
- "symbol": "address"
+ "symbol": "bidding_deadline"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "u64": 0
}
},
{
"key": {
- "symbol": "reviews"
+ "symbol": "budget_stroops"
},
"val": {
- "u32": 0
+ "i128": {
+ "hi": 9223372036854775807,
+ "lo": 18446744073709551615
+ }
}
},
{
"key": {
- "symbol": "role"
+ "symbol": "client"
},
"val": {
- "vec": [
- {
- "symbol": "Client"
- }
- ]
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
"key": {
- "symbol": "score"
+ "symbol": "expires_at"
},
"val": {
- "i32": 3000
+ "u64": 0
}
},
{
"key": {
- "symbol": "total_jobs"
+ "symbol": "freelancer"
+ },
+ "val": "void"
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
},
"val": {
- "u32": 0
+ "bytes": "516d48617368"
}
},
{
"key": {
- "symbol": "total_points"
+ "symbol": "status"
},
"val": {
- "i32": 0
+ "vec": [
+ {
+ "symbol": "Open"
+ }
+ ]
}
}
]
diff --git a/contracts/job_registry/test_snapshots/test/test_budget_at_maximum_succeeds.1.json b/contracts/job_registry/test_snapshots/test/test_budget_at_maximum_succeeds.1.json
index e19fe24c..bced77cb 100644
--- a/contracts/job_registry/test_snapshots/test/test_budget_at_maximum_succeeds.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_budget_at_maximum_succeeds.1.json
@@ -1,57 +1,39 @@
{
"generators": {
- "address": 4,
+ "address": 3,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
},
{
"i128": {
- "hi": 0,
- "lo": 100000000000000
+ "hi": 9223372036854775807,
+ "lo": 18446744073709551615
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -65,7 +47,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -76,117 +58,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "vec": []
- }
- }
- },
- "ext": "v0"
- },
- 4095
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -206,7 +77,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -225,7 +96,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -234,8 +105,8 @@
},
"val": {
"i128": {
- "hi": 0,
- "lo": 100000000000000
+ "hi": 9223372036854775807,
+ "lo": 18446744073709551615
}
}
},
@@ -244,7 +115,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -252,7 +123,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
@@ -293,7 +164,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -304,7 +175,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -322,7 +193,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -347,6 +218,39 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -383,34 +287,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -420,7 +304,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -450,7 +334,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -462,22 +346,22 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
},
{
"i128": {
- "hi": 0,
- "lo": 100000000000000
+ "hi": 9223372036854775807,
+ "lo": 18446744073709551615
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -489,30 +373,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "jobpost"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -542,7 +403,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "get_job"
@@ -559,7 +420,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -578,7 +439,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -587,8 +448,8 @@
},
"val": {
"i128": {
- "hi": 0,
- "lo": 100000000000000
+ "hi": 9223372036854775807,
+ "lo": 18446744073709551615
}
}
},
@@ -597,7 +458,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -605,7 +466,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
diff --git a/contracts/job_registry/test_snapshots/test/test_budget_at_minimum_succeeds.1.json b/contracts/job_registry/test_snapshots/test/test_budget_at_minimum_succeeds.1.json
index 495b1615..7d45fd8b 100644
--- a/contracts/job_registry/test_snapshots/test/test_budget_at_minimum_succeeds.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_budget_at_minimum_succeeds.1.json
@@ -1,42 +1,24 @@
{
"generators": {
- "address": 4,
+ "address": 3,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -44,14 +26,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -65,7 +47,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -76,117 +58,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "vec": []
- }
- }
- },
- "ext": "v0"
- },
- 4095
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -206,7 +77,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -225,7 +96,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -235,7 +106,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1
}
}
},
@@ -244,7 +115,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -252,7 +123,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
@@ -293,7 +164,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -304,7 +175,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -322,7 +193,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -347,6 +218,39 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -383,34 +287,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -420,7 +304,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -450,7 +334,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -462,7 +346,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -470,14 +354,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -489,30 +373,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "jobpost"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -542,7 +403,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "get_job"
@@ -559,7 +420,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -578,7 +439,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -588,7 +449,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1
}
}
},
@@ -597,7 +458,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -605,7 +466,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
diff --git a/contracts/job_registry/test_snapshots/test/test_budget_below_minimum_panics.1.json b/contracts/job_registry/test_snapshots/test/test_budget_below_minimum_panics.1.json
index 07bafa75..4fcfa0d5 100644
--- a/contracts/job_registry/test_snapshots/test/test_budget_below_minimum_panics.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_budget_below_minimum_panics.1.json
@@ -1,34 +1,16 @@
{
"generators": {
- "address": 4,
+ "address": 3,
"nonce": 0
},
"auth": [
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
+ [],
[]
],
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -39,39 +21,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -82,7 +31,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -100,7 +49,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -161,34 +110,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -198,7 +127,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -228,7 +157,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -240,22 +169,22 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
},
{
"i128": {
- "hi": 0,
- "lo": 99999
+ "hi": -1,
+ "lo": 18446744073709551615
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -267,7 +196,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -299,7 +228,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -324,7 +253,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -377,22 +306,22 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
},
{
"i128": {
- "hi": 0,
- "lo": 99999
+ "hi": -1,
+ "lo": 18446744073709551615
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
diff --git a/contracts/job_registry/test_snapshots/test/test_unauthorized_accept_bid_panics_with_specific_error.1.json b/contracts/job_registry/test_snapshots/test/test_cancel_bid_success.1.json
similarity index 74%
rename from contracts/job_registry/test_snapshots/test/test_unauthorized_accept_bid_panics_with_specific_error.1.json
rename to contracts/job_registry/test_snapshots/test/test_cancel_bid_success.1.json
index f4767467..e73ac88c 100644
--- a/contracts/job_registry/test_snapshots/test/test_unauthorized_accept_bid_panics_with_specific_error.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_cancel_bid_success.1.json
@@ -4,17 +4,36 @@
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "post_job",
"args": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "bytes": "516d48617368"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -25,26 +44,26 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "post_job",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d48617368"
+ "bytes": "516d5031"
},
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 500
}
}
]
@@ -56,21 +75,49 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5032"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 600
+ }
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "cancel_bid",
+ "args": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -79,12 +126,13 @@
}
]
],
+ [],
[]
],
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -96,77 +144,16 @@
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
+ "vec": [
+ {
+ "symbol": "Bids"
},
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
+ {
+ "u64": 1
+ }
+ ]
},
- "durability": "temporary"
+ "durability": "persistent"
}
},
[
@@ -175,35 +162,60 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
+ "vec": [
+ {
+ "symbol": "Bids"
+ },
+ {
+ "u64": 1
+ }
+ ]
},
- "durability": "temporary",
- "val": "void"
+ "durability": "persistent",
+ "val": {
+ "vec": [
+ {
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5032"
+ }
+ }
+ ]
+ }
+ ]
+ }
}
},
"ext": "v0"
},
- 6311999
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
- "symbol": "BidByIndex"
+ "symbol": "Job"
},
{
"u64": 1
- },
- {
- "u32": 0
}
]
},
@@ -216,17 +228,14 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
- "symbol": "BidByIndex"
+ "symbol": "Job"
},
{
"u64": 1
- },
- {
- "u32": 0
}
]
},
@@ -235,7 +244,26 @@
"map": [
{
"key": {
- "symbol": "freelancer"
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "budget_stroops"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
},
"val": {
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
@@ -243,10 +271,36 @@
},
{
"key": {
- "symbol": "proposal_hash"
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": "void"
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": {
+ "bytes": "516d48617368"
+ }
+ },
+ {
+ "key": {
+ "symbol": "status"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "vec": [
+ {
+ "symbol": "Open"
+ }
+ ]
}
}
]
@@ -261,17 +315,8 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "BidCount"
- },
- {
- "u64": 1
- }
- ]
- },
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": "ledger_key_contract_instance",
"durability": "persistent"
}
},
@@ -281,20 +326,41 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "BidCount"
- },
- {
- "u64": 1
- }
- ]
- },
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
- "u32": 1
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
+ }
}
}
},
@@ -306,21 +372,13 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
- "vec": [
- {
- "symbol": "BidLookup"
- },
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- ]
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
},
- "durability": "persistent"
+ "durability": "temporary"
}
},
[
@@ -329,46 +387,19 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
- "vec": [
- {
- "symbol": "BidLookup"
- },
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- ]
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
},
- "durability": "persistent",
- "val": {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c"
- }
- }
- ]
- }
+ "durability": "temporary",
+ "val": "void"
}
},
"ext": "v0"
},
- 4095
+ 6311999
]
],
[
@@ -376,16 +407,11 @@
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
- "vec": [
- {
- "symbol": "Job"
- },
- {
- "u64": 1
- }
- ]
+ "ledger_key_nonce": {
+ "nonce": 4837995959683129791
+ }
},
- "durability": "persistent"
+ "durability": "temporary"
}
},
[
@@ -396,78 +422,62 @@
"ext": "v0",
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
- "vec": [
- {
- "symbol": "Job"
- },
- {
- "u64": 1
- }
- ]
+ "ledger_key_nonce": {
+ "nonce": 4837995959683129791
+ }
},
- "durability": "persistent",
- "val": {
- "map": [
- {
- "key": {
- "symbol": "budget_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 5000
- }
- }
- },
- {
- "key": {
- "symbol": "client"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": "void"
- },
- {
- "key": {
- "symbol": "metadata_hash"
- },
- "val": {
- "bytes": "516d48617368"
- }
- },
- {
- "key": {
- "symbol": "status"
- },
- "val": {
- "vec": [
- {
- "symbol": "Open"
- }
- ]
- }
- }
- ]
- }
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
}
},
"ext": "v0"
},
- 4095
+ 6311999
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": "ledger_key_contract_instance",
- "durability": "persistent"
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary"
}
},
[
@@ -476,47 +486,19 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": "ledger_key_contract_instance",
- "durability": "persistent",
- "val": {
- "contract_instance": {
- "executable": {
- "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
- },
- "storage": [
- {
- "key": {
- "vec": [
- {
- "symbol": "Admin"
- }
- ]
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- },
- {
- "key": {
- "vec": [
- {
- "symbol": "NextJobId"
- }
- ]
- },
- "val": {
- "u64": 2
- }
- }
- ]
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
}
- }
+ },
+ "durability": "temporary",
+ "val": "void"
}
},
"ext": "v0"
},
- 4095
+ 6311999
]
],
[
@@ -555,61 +537,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "vec": [
- {
- "string": "JobRegistry initialized with admin: {}"
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "init"
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -619,7 +554,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -649,7 +584,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -661,7 +596,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -669,8 +604,14 @@
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -682,30 +623,57 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "post_job"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "log"
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "submit_bid"
}
],
"data": {
"vec": [
{
- "string": "post_job: id {} client {} budget {}"
+ "u64": 1
},
{
- "u64": 1
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "bytes": "516d5031"
},
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 500
}
}
]
@@ -718,27 +686,50 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "jobpost"
+ "string": "job_registry"
},
{
- "u64": 1
+ "string": "BidSubmitted"
}
],
"data": {
- "vec": [
+ "map": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
},
{
- "i128": {
- "hi": 0,
- "lo": 5000
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5031"
+ }
+ },
+ {
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
}
}
]
@@ -751,7 +742,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -760,7 +751,7 @@
"symbol": "fn_return"
},
{
- "symbol": "post_job"
+ "symbol": "submit_bid"
}
],
"data": "void"
@@ -781,7 +772,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -793,10 +784,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ },
+ {
+ "bytes": "516d5032"
},
{
- "bytes": "516d50726f706f73616c"
+ "i128": {
+ "hi": 0,
+ "lo": 600
+ }
}
]
}
@@ -808,25 +805,51 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "log"
+ "string": "job_registry"
+ },
+ {
+ "string": "BidSubmitted"
}
],
"data": {
- "vec": [
+ "map": [
{
- "string": "submit_bid: id {} freelancer {}"
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ }
},
{
- "u64": 1
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5032"
+ }
+ },
+ {
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
+ }
}
]
}
@@ -838,30 +861,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "bid"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -891,10 +891,10 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "accept_bid"
+ "symbol": "cancel_bid"
}
],
"data": {
@@ -903,10 +903,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -918,84 +915,72 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "error"
+ "symbol": "fn_return"
},
{
- "error": {
- "contract": 9
- }
+ "symbol": "cancel_bid"
}
],
- "data": {
- "vec": [
- {
- "string": "failing with contract error"
- },
- {
- "u32": 9
- }
- ]
- }
+ "data": "void"
}
}
},
- "failed_call": true
+ "failed_call": false
},
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": null,
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "error"
+ "symbol": "fn_call"
},
{
- "error": {
- "contract": 9
- }
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "get_bids_count"
}
],
"data": {
- "string": "escalating error to panic"
+ "u64": 1
}
}
}
},
- "failed_call": true
+ "failed_call": false
},
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "error"
+ "symbol": "fn_return"
},
{
- "error": {
- "contract": 9
- }
+ "symbol": "get_bids_count"
}
],
"data": {
- "string": "caught error from function"
+ "u32": 1
}
}
}
},
- "failed_call": true
+ "failed_call": false
},
{
"event": {
@@ -1006,34 +991,22 @@
"v0": {
"topics": [
{
- "symbol": "error"
+ "symbol": "fn_call"
},
{
- "error": {
- "contract": 9
- }
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "get_bid_at"
}
],
"data": {
"vec": [
{
- "string": "contract call failed"
- },
- {
- "symbol": "accept_bid"
+ "u64": 1
},
{
- "vec": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- ]
+ "u32": 0
}
]
}
@@ -1045,22 +1018,37 @@
{
"event": {
"ext": "v0",
- "contract_id": null,
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "error"
+ "symbol": "fn_return"
},
{
- "error": {
- "contract": 9
- }
+ "symbol": "get_bid_at"
}
],
"data": {
- "string": "escalating error to panic"
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5032"
+ }
+ }
+ ]
}
}
}
diff --git a/contracts/job_registry/test_snapshots/test/test_cancel_expired_job_before_expiration_panics.1.json b/contracts/job_registry/test_snapshots/test/test_cancel_expired_job_before_expiration_panics.1.json
index accc297e..1d350ab6 100644
--- a/contracts/job_registry/test_snapshots/test/test_cancel_expired_job_before_expiration_panics.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_cancel_expired_job_before_expiration_panics.1.json
@@ -1,42 +1,24 @@
{
"generators": {
- "address": 4,
+ "address": 3,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -44,14 +26,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 1700000100
}
]
}
@@ -65,7 +47,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -76,117 +58,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "vec": []
- }
- }
- },
- "ext": "v0"
- },
- 4095
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -206,7 +77,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -225,7 +96,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -235,7 +106,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
}
},
@@ -244,7 +115,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -252,7 +123,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 1700000100
}
},
{
@@ -293,7 +164,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -304,7 +175,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -322,7 +193,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -347,6 +218,39 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -383,34 +287,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -420,7 +304,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -450,7 +334,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -462,7 +346,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -470,14 +354,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 1700000100
}
]
}
@@ -489,30 +373,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "jobpost"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -542,7 +403,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "cancel_expired_job"
@@ -554,7 +415,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
]
}
@@ -566,7 +427,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -576,7 +437,7 @@
},
{
"error": {
- "contract": 18
+ "contract": 12
}
}
],
@@ -586,7 +447,7 @@
"string": "failing with contract error"
},
{
- "u32": 18
+ "u32": 12
}
]
}
@@ -598,7 +459,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -608,7 +469,7 @@
},
{
"error": {
- "contract": 18
+ "contract": 12
}
}
],
@@ -623,7 +484,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -633,7 +494,7 @@
},
{
"error": {
- "contract": 18
+ "contract": 12
}
}
],
@@ -658,7 +519,7 @@
},
{
"error": {
- "contract": 18
+ "contract": 12
}
}
],
@@ -676,7 +537,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
]
}
@@ -700,7 +561,7 @@
},
{
"error": {
- "contract": 18
+ "contract": 12
}
}
],
diff --git a/contracts/job_registry/test_snapshots/test/test_cancel_expired_job_by_client.1.json b/contracts/job_registry/test_snapshots/test/test_cancel_expired_job_by_client.1.json
index 19e36284..4328df13 100644
--- a/contracts/job_registry/test_snapshots/test/test_cancel_expired_job_by_client.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_cancel_expired_job_by_client.1.json
@@ -1,42 +1,24 @@
{
"generators": {
- "address": 4,
+ "address": 3,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -44,11 +26,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 60
+ "u64": 0
+ },
+ {
+ "u64": 100
}
]
}
@@ -59,18 +44,18 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "cancel_expired_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
]
}
@@ -84,7 +69,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 61,
+ "timestamp": 200,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -95,105 +80,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -213,7 +99,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -227,6 +113,14 @@
"durability": "persistent",
"val": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -234,7 +128,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
}
},
@@ -243,7 +137,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -251,7 +145,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 100
}
},
{
@@ -275,7 +169,7 @@
"val": {
"vec": [
{
- "symbol": "Expired"
+ "symbol": "Closed"
}
]
}
@@ -292,7 +186,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -303,7 +197,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -321,7 +215,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -346,6 +240,72 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -382,61 +342,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "vec": [
- {
- "string": "JobRegistry initialized with admin: {}"
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "init"
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -446,7 +359,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -476,7 +389,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -488,7 +401,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -496,47 +409,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 60
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "vec": [
- {
- "string": "post_job: id {} client {} budget {}"
- },
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "u64": 0
},
{
- "i128": {
- "hi": 0,
- "lo": 100000
- }
+ "u64": 100
}
]
}
@@ -548,40 +428,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "jobpost"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "vec": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 100000
- }
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -611,7 +458,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "cancel_expired_job"
@@ -623,7 +470,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
]
}
@@ -635,60 +482,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "vec": [
- {
- "string": "cancel_expired_job: id {} client {}"
- },
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "expired"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -718,7 +512,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "get_job"
@@ -735,7 +529,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -749,6 +543,14 @@
],
"data": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -756,7 +558,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
}
},
@@ -765,7 +567,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -773,7 +575,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 100
}
},
{
@@ -797,7 +599,7 @@
"val": {
"vec": [
{
- "symbol": "Expired"
+ "symbol": "Closed"
}
]
}
diff --git a/contracts/reputation/test_snapshots/test/test_update_score.1.json b/contracts/job_registry/test_snapshots/test/test_cancel_nonexistent_bid.1.json
similarity index 68%
rename from contracts/reputation/test_snapshots/test/test_update_score.1.json
rename to contracts/job_registry/test_snapshots/test/test_cancel_nonexistent_bid.1.json
index ec45498f..9a5f4dfd 100644
--- a/contracts/reputation/test_snapshots/test/test_update_score.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_cancel_nonexistent_bid.1.json
@@ -1,31 +1,39 @@
{
"generators": {
- "address": 3,
+ "address": 4,
"nonce": 0
},
"auth": [
[],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "function_name": "update_score",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "post_job",
"args": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "u64": 1
},
{
- "vec": [
- {
- "symbol": "Freelancer"
- }
- ]
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "i32": 500
+ "bytes": "516d48617368"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -39,7 +47,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -50,46 +58,13 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"vec": [
{
- "symbol": "Profile"
+ "symbol": "Job"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "u64": 1
}
]
},
@@ -102,14 +77,14 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
- "symbol": "Profile"
+ "symbol": "Job"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "u64": 1
}
]
},
@@ -118,65 +93,64 @@
"map": [
{
"key": {
- "symbol": "address"
+ "symbol": "bidding_deadline"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "u64": 0
}
},
{
"key": {
- "symbol": "client_jobs"
+ "symbol": "budget_stroops"
},
"val": {
- "u32": 0
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
}
},
{
"key": {
- "symbol": "client_points"
+ "symbol": "client"
},
"val": {
- "i32": 0
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
"key": {
- "symbol": "client_score"
+ "symbol": "expires_at"
},
"val": {
- "i32": 5000
+ "u64": 0
}
},
{
"key": {
- "symbol": "freelancer_jobs"
+ "symbol": "freelancer"
},
- "val": {
- "u32": 1
- }
+ "val": "void"
},
{
"key": {
- "symbol": "freelancer_points"
+ "symbol": "metadata_hash"
},
"val": {
- "i32": 0
+ "bytes": "516d48617368"
}
},
{
"key": {
- "symbol": "freelancer_score"
+ "symbol": "status"
},
"val": {
- "i32": 5500
+ "vec": [
+ {
+ "symbol": "Open"
+ }
+ ]
}
- },
- {
- "key": {
- "symbol": "metadata_hash"
- },
- "val": "void"
}
]
}
@@ -184,13 +158,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -201,7 +175,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -219,7 +193,19 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
}
}
]
@@ -229,7 +215,40 @@
},
"ext": "v0"
},
- 150000
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
]
],
[
@@ -250,7 +269,7 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
]
]
@@ -268,14 +287,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -285,7 +304,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -315,26 +334,34 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "update_score"
+ "symbol": "post_job"
}
],
"data": {
"vec": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "u64": 1
},
{
- "vec": [
- {
- "symbol": "Freelancer"
- }
- ]
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "bytes": "516d48617368"
},
{
- "i32": 500
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -346,127 +373,171 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
- "type_": "contract",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "post_job"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "string": "reputation"
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "string": "ScoreAdjusted"
+ "symbol": "cancel_bid"
}
],
"data": {
- "map": [
- {
- "key": {
- "symbol": "address"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "adjusted_at"
- },
- "val": {
- "u64": 0
- }
- },
+ "vec": [
{
- "key": {
- "symbol": "delta"
- },
- "val": {
- "i32": 500
- }
+ "u64": 1
},
{
- "key": {
- "symbol": "new_score"
- },
- "val": {
- "i32": 5500
- }
- },
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 11
+ }
+ }
+ ],
+ "data": {
+ "vec": [
{
- "key": {
- "symbol": "role"
- },
- "val": {
- "vec": [
- {
- "symbol": "Freelancer"
- }
- ]
- }
+ "string": "failing with contract error"
},
{
- "key": {
- "symbol": "total_jobs"
- },
- "val": {
- "u32": 1
- }
+ "u32": 11
}
]
}
}
}
},
- "failed_call": false
+ "failed_call": true
},
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_return"
+ "symbol": "error"
},
{
- "symbol": "update_score"
+ "error": {
+ "contract": 11
+ }
}
],
- "data": "void"
+ "data": {
+ "string": "escalating error to panic"
+ }
}
}
},
- "failed_call": false
+ "failed_call": true
},
{
"event": {
"ext": "v0",
- "contract_id": null,
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_call"
+ "symbol": "error"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "error": {
+ "contract": 11
+ }
+ }
+ ],
+ "data": {
+ "string": "caught error from function"
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
},
{
- "symbol": "get_score"
+ "error": {
+ "contract": 11
+ }
}
],
"data": {
"vec": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "string": "contract call failed"
+ },
+ {
+ "symbol": "cancel_bid"
},
{
"vec": [
{
- "symbol": "Freelancer"
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -480,73 +551,22 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": null,
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_return"
+ "symbol": "error"
},
{
- "symbol": "get_score"
+ "error": {
+ "contract": 11
+ }
}
],
"data": {
- "map": [
- {
- "key": {
- "symbol": "address"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "reviews"
- },
- "val": {
- "u32": 1
- }
- },
- {
- "key": {
- "symbol": "role"
- },
- "val": {
- "vec": [
- {
- "symbol": "Freelancer"
- }
- ]
- }
- },
- {
- "key": {
- "symbol": "score"
- },
- "val": {
- "i32": 5500
- }
- },
- {
- "key": {
- "symbol": "total_jobs"
- },
- "val": {
- "u32": 1
- }
- },
- {
- "key": {
- "symbol": "total_points"
- },
- "val": {
- "i32": 0
- }
- }
- ]
+ "string": "escalating error to panic"
}
}
}
diff --git a/contracts/job_registry/test_snapshots/test/test_cannot_accept_bid_twice.1.json b/contracts/job_registry/test_snapshots/test/test_cannot_accept_bid_twice.1.json
index 436a7177..2634b628 100644
--- a/contracts/job_registry/test_snapshots/test/test_cannot_accept_bid_twice.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_cannot_accept_bid_twice.1.json
@@ -1,23 +1,24 @@
{
"generators": {
- "address": 4,
+ "address": 5,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -27,6 +28,12 @@
"hi": 0,
"lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -37,21 +44,27 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -62,21 +75,27 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5032"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 600
+ }
}
]
}
@@ -87,21 +106,21 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "accept_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -115,7 +134,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -126,138 +145,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -277,7 +164,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -298,7 +185,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -306,7 +193,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
}
}
]
@@ -318,7 +205,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
}
},
{
@@ -326,7 +213,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5032"
}
}
]
@@ -337,13 +224,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -363,7 +250,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -377,6 +264,14 @@
"durability": "persistent",
"val": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -393,7 +288,15 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
}
},
{
@@ -401,7 +304,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -419,7 +322,7 @@
"val": {
"vec": [
{
- "symbol": "InProgress"
+ "symbol": "Assigned"
}
]
}
@@ -430,13 +333,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -447,7 +350,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -455,7 +358,32 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
}
}
}
@@ -465,6 +393,138 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 4837995959683129791
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 4837995959683129791
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -501,7 +561,54 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -513,7 +620,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -523,6 +630,12 @@
"hi": 0,
"lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -534,7 +647,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -564,7 +677,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -576,10 +689,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -591,7 +710,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -610,7 +729,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -626,7 +745,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
}
},
{
@@ -634,7 +753,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -647,7 +766,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -677,7 +796,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -689,10 +808,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5032"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 600
+ }
}
]
}
@@ -704,7 +829,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -723,7 +848,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
}
},
{
@@ -739,7 +864,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5032"
}
},
{
@@ -747,7 +872,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -760,7 +885,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -790,7 +915,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "accept_bid"
@@ -802,10 +927,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -817,7 +942,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -836,7 +961,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -844,7 +969,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -860,7 +985,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -873,7 +998,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -903,7 +1028,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "accept_bid"
@@ -915,10 +1040,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
}
]
}
@@ -930,22 +1055,54 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_return"
+ "symbol": "error"
},
{
- "symbol": "accept_bid"
+ "error": {
+ "contract": 8
+ }
}
],
"data": {
- "error": {
- "contract": 5
+ "vec": [
+ {
+ "string": "failing with contract error"
+ },
+ {
+ "u32": 8
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 8
+ }
}
+ ],
+ "data": {
+ "string": "escalating error to panic"
}
}
}
@@ -955,7 +1112,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -965,12 +1122,12 @@
},
{
"error": {
- "contract": 5
+ "contract": 8
}
}
],
"data": {
- "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err"
+ "string": "caught error from function"
}
}
}
@@ -990,7 +1147,7 @@
},
{
"error": {
- "contract": 5
+ "contract": 8
}
}
],
@@ -1008,10 +1165,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
}
]
}
@@ -1035,7 +1192,7 @@
},
{
"error": {
- "contract": 5
+ "contract": 8
}
}
],
diff --git a/contracts/job_registry/test_snapshots/test/test_bid_same_freelancer_multiple_times.1.json b/contracts/job_registry/test_snapshots/test/test_close_job.1.json
similarity index 61%
rename from contracts/job_registry/test_snapshots/test/test_bid_same_freelancer_multiple_times.1.json
rename to contracts/job_registry/test_snapshots/test/test_close_job.1.json
index 2ac91591..6334dce6 100644
--- a/contracts/job_registry/test_snapshots/test/test_bid_same_freelancer_multiple_times.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_close_job.1.json
@@ -4,20 +4,21 @@
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -25,33 +26,14 @@
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "u64": 0
},
{
- "bytes": "516d50726f706f73616c31"
+ "u64": 0
}
]
}
@@ -62,21 +44,18 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "function_name": "submit_bid",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "close_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "bytes": "516d50726f706f73616c32"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
]
}
@@ -90,7 +69,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -101,191 +80,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "vec": [
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c31"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c32"
- }
- }
- ]
- }
- ]
- }
- }
- },
- "ext": "v0"
- },
- 150000
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"vec": [
{
@@ -305,7 +99,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -319,6 +113,14 @@
"durability": "persistent",
"val": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -326,7 +128,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
}
},
@@ -335,7 +137,15 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
}
},
{
@@ -359,7 +169,7 @@
"val": {
"vec": [
{
- "symbol": "Open"
+ "symbol": "Closed"
}
]
}
@@ -370,13 +180,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -387,7 +197,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -395,7 +205,32 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
}
}
}
@@ -405,6 +240,72 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -441,30 +342,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "post_job"
+ "symbol": "initialize"
}
],
"data": {
- "vec": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- },
- {
- "bytes": "516d48617368"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 5000
- }
- }
- ]
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -474,7 +359,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -483,7 +368,7 @@
"symbol": "fn_return"
},
{
- "symbol": "post_job"
+ "symbol": "initialize"
}
],
"data": "void"
@@ -504,10 +389,10 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "submit_bid"
+ "symbol": "post_job"
}
],
"data": {
@@ -516,66 +401,22 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d50726f706f73616c31"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "string": "job_registry"
- },
- {
- "string": "BidSubmitted"
- }
- ],
- "data": {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
+ "bytes": "516d48617368"
},
{
- "key": {
- "symbol": "job_id"
- },
- "val": {
- "u64": 1
+ "i128": {
+ "hi": 0,
+ "lo": 1000
}
},
{
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c31"
- }
+ "u64": 0
},
{
- "key": {
- "symbol": "timestamp"
- },
- "val": {
- "u64": 0
- }
+ "u64": 0
}
]
}
@@ -587,7 +428,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -596,7 +437,7 @@
"symbol": "fn_return"
},
{
- "symbol": "submit_bid"
+ "symbol": "post_job"
}
],
"data": "void"
@@ -617,10 +458,10 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "submit_bid"
+ "symbol": "close_job"
}
],
"data": {
@@ -629,10 +470,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "bytes": "516d50726f706f73616c32"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
]
}
@@ -644,63 +482,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "string": "job_registry"
- },
- {
- "string": "BidSubmitted"
- }
- ],
- "data": {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "job_id"
- },
- "val": {
- "u64": 1
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c32"
- }
- },
- {
- "key": {
- "symbol": "timestamp"
- },
- "val": {
- "u64": 0
- }
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -709,7 +491,7 @@
"symbol": "fn_return"
},
{
- "symbol": "submit_bid"
+ "symbol": "close_job"
}
],
"data": "void"
@@ -730,10 +512,10 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "get_bids"
+ "symbol": "get_job"
}
],
"data": {
@@ -747,7 +529,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -756,50 +538,71 @@
"symbol": "fn_return"
},
{
- "symbol": "get_bids"
+ "symbol": "get_job"
}
],
"data": {
- "vec": [
+ "map": [
{
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c31"
- }
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "budget_stroops"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
}
- ]
+ }
},
{
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c32"
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": "void"
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": {
+ "bytes": "516d48617368"
+ }
+ },
+ {
+ "key": {
+ "symbol": "status"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Closed"
}
- }
- ]
+ ]
+ }
}
]
}
diff --git a/contracts/job_registry/test_snapshots/test/test_double_initialize_panics.1.json b/contracts/job_registry/test_snapshots/test/test_double_initialize_panics.1.json
index e4944ad4..07bc1454 100644
--- a/contracts/job_registry/test_snapshots/test/test_double_initialize_panics.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_double_initialize_panics.1.json
@@ -1,28 +1,10 @@
{
"generators": {
- "address": 4,
+ "address": 2,
"nonce": 0
},
"auth": [
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
+ [],
[]
],
"ledger": {
@@ -39,39 +21,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -82,7 +31,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -100,7 +49,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -161,34 +110,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -198,7 +127,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -228,14 +157,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -245,7 +174,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -277,7 +206,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -302,7 +231,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -352,7 +281,7 @@
{
"vec": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
]
}
diff --git a/contracts/job_registry/test_snapshots/test/test_duplicate_bid_panics.1.json b/contracts/job_registry/test_snapshots/test/test_duplicate_bid_panics.1.json
index 13cd3299..a4799eee 100644
--- a/contracts/job_registry/test_snapshots/test/test_duplicate_bid_panics.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_duplicate_bid_panics.1.json
@@ -4,39 +4,21 @@
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -44,14 +26,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -62,26 +44,26 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50726f706f73616c31"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 500
}
}
]
@@ -96,7 +78,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -107,105 +89,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -225,7 +108,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -241,31 +124,12 @@
"vec": [
{
"map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
{
"key": {
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -273,7 +137,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50726f706f73616c31"
}
}
]
@@ -290,7 +154,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -310,7 +174,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -329,7 +193,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -339,7 +203,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
}
},
@@ -348,7 +212,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -356,7 +220,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
@@ -397,7 +261,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -408,7 +272,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -426,7 +290,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -451,6 +315,72 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -487,34 +417,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -524,7 +434,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -554,7 +464,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -566,7 +476,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -574,14 +484,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -593,30 +503,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "jobpost"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -646,7 +533,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -658,15 +545,15 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50726f706f73616c31"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 500
}
}
]
@@ -679,20 +566,53 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "bid"
+ "string": "job_registry"
},
{
- "u64": 1
+ "string": "BidSubmitted"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d50726f706f73616c31"
+ }
+ },
+ {
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
+ }
+ }
+ ]
}
}
}
@@ -702,7 +622,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -732,7 +652,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -744,15 +664,15 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50726f706f73616c32"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 600
}
}
]
@@ -765,7 +685,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -797,7 +717,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -822,7 +742,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -875,15 +795,15 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50726f706f73616c32"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 600
}
}
]
diff --git a/contracts/job_registry/test_snapshots/test/test_duplicate_job_id.1.json b/contracts/job_registry/test_snapshots/test/test_duplicate_job_id.1.json
index 19b24be3..d1f38f94 100644
--- a/contracts/job_registry/test_snapshots/test/test_duplicate_job_id.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_duplicate_job_id.1.json
@@ -1,32 +1,39 @@
{
"generators": {
- "address": 2,
+ "address": 3,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d48617368"
+ "bytes": "516d4861736831"
},
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -40,7 +47,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -51,39 +58,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
"key": {
"vec": [
{
@@ -103,7 +77,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -117,6 +91,14 @@
"durability": "persistent",
"val": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -124,7 +106,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
}
},
@@ -133,7 +115,15 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
}
},
{
@@ -147,7 +137,7 @@
"symbol": "metadata_hash"
},
"val": {
- "bytes": "516d48617368"
+ "bytes": "516d4861736831"
}
},
{
@@ -168,13 +158,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -185,7 +175,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -193,7 +183,32 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
}
}
}
@@ -203,6 +218,39 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -239,7 +287,54 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -251,16 +346,22 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d48617368"
+ "bytes": "516d4861736831"
},
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -272,7 +373,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -302,7 +403,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -314,16 +415,22 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d48617368"
+ "bytes": "516d4861736832"
},
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 2000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -335,34 +442,27 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "log"
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 6
+ }
}
],
"data": {
"vec": [
{
- "string": "caught panic 'job already exists' from contract function 'Symbol(post_job)'"
- },
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- },
- {
- "bytes": "516d48617368"
+ "string": "failing with contract error"
},
{
- "i128": {
- "hi": 0,
- "lo": 5000
- }
+ "u32": 6
}
]
}
@@ -374,7 +474,32 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 6
+ }
+ }
+ ],
+ "data": {
+ "string": "escalating error to panic"
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -384,7 +509,7 @@
},
{
"error": {
- "wasm_vm": "invalid_action"
+ "contract": 6
}
}
],
@@ -409,7 +534,7 @@
},
{
"error": {
- "wasm_vm": "invalid_action"
+ "contract": 6
}
}
],
@@ -427,16 +552,22 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d48617368"
+ "bytes": "516d4861736832"
},
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 2000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -460,7 +591,7 @@
},
{
"error": {
- "wasm_vm": "invalid_action"
+ "contract": 6
}
}
],
diff --git a/contracts/job_registry/test_snapshots/test/test_empty_hash_panics.1.json b/contracts/job_registry/test_snapshots/test/test_empty_hash_panics.1.json
index 345a5558..23dce34e 100644
--- a/contracts/job_registry/test_snapshots/test/test_empty_hash_panics.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_empty_hash_panics.1.json
@@ -1,34 +1,16 @@
{
"generators": {
- "address": 4,
+ "address": 3,
"nonce": 0
},
"auth": [
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
+ [],
[]
],
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -39,39 +21,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -82,7 +31,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -100,7 +49,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -161,34 +110,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -198,7 +127,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -228,7 +157,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -240,7 +169,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": ""
@@ -248,14 +177,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -267,7 +196,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -299,7 +228,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -324,7 +253,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -377,7 +306,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": ""
@@ -385,14 +314,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
diff --git a/contracts/job_registry/test_snapshots/test/test_full_lifecycle.1.json b/contracts/job_registry/test_snapshots/test/test_full_lifecycle.1.json
index e066e001..3d157000 100644
--- a/contracts/job_registry/test_snapshots/test/test_full_lifecycle.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_full_lifecycle.1.json
@@ -4,39 +4,21 @@
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d536f6d654950465348617368"
@@ -48,10 +30,10 @@
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -60,21 +42,20 @@
}
]
],
- [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
"bytes": "516d50726f706f73616c48617368"
@@ -92,24 +73,23 @@
}
]
],
- [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "accept_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -121,18 +101,18 @@
[],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_deliverable",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
"bytes": "516d44656c6976657261626c6548617368"
@@ -144,13 +124,12 @@
}
]
],
- [],
[]
],
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -161,171 +140,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "ledger_key_nonce": {
- "nonce": 2032731177588607455
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "ledger_key_nonce": {
- "nonce": 2032731177588607455
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -345,7 +159,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -361,31 +175,12 @@
"vec": [
{
"map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
{
"key": {
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -410,52 +205,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "Deliverable"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "Deliverable"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "bytes": "516d44656c6976657261626c6548617368"
- }
- }
- },
- "ext": "v0"
- },
- 4095
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -475,7 +225,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -494,7 +244,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -513,7 +263,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -521,7 +271,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
@@ -529,7 +279,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -564,7 +314,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -575,7 +325,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -593,7 +343,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -620,298 +370,207 @@
],
[
{
- "contract_code": {
- "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
}
},
[
{
"last_modified_ledger_seq": 0,
"data": {
- "contract_code": {
+ "contract_data": {
"ext": "v0",
- "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
- "code": ""
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
}
},
"ext": "v0"
},
- 4095
+ 6311999
]
- ]
- ]
- },
- "events": [
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
- },
- {
- "symbol": "initialize"
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
}
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
+ },
+ "durability": "temporary"
}
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
"data": {
- "string": "initialized"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "initialize"
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
}
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
- },
- {
- "symbol": "post_job"
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 4837995959683129791
}
- ],
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
"data": {
- "vec": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "bytes": "516d536f6d654950465348617368"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 100000
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 4837995959683129791
}
},
- {
- "u64": 30
- },
- {
- "u64": 60
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "jobpost"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "post_job"
+ "durability": "temporary",
+ "val": "void"
}
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
- },
- {
- "symbol": "get_job"
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
}
- ],
- "data": {
- "u64": 1
- }
+ },
+ "durability": "temporary"
}
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "get_job"
- }
- ],
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
"data": {
- "map": [
- {
- "key": {
- "symbol": "bidding_deadline"
- },
- "val": {
- "u64": 30
- }
- },
- {
- "key": {
- "symbol": "budget_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 100000
- }
- }
- },
- {
- "key": {
- "symbol": "client"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "expires_at"
- },
- "val": {
- "u64": 60
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": "void"
- },
- {
- "key": {
- "symbol": "metadata_hash"
- },
- "val": {
- "bytes": "516d536f6d654950465348617368"
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
}
},
- {
- "key": {
- "symbol": "status"
- },
- "val": {
- "vec": [
- {
- "symbol": "Open"
- }
- ]
- }
- }
- ]
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_code": {
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_code": {
+ "ext": "v0",
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "code": ""
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ]
+ ]
+ },
+ "events": [
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
},
"failed_call": false
},
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
{
"event": {
"ext": "v0",
@@ -924,10 +583,10 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "submit_bid"
+ "symbol": "post_job"
}
],
"data": {
@@ -939,13 +598,19 @@
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d50726f706f73616c48617368"
+ "bytes": "516d536f6d654950465348617368"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 100000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -957,21 +622,19 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "bid"
+ "symbol": "fn_return"
},
{
- "u64": 1
+ "symbol": "post_job"
}
],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
+ "data": "void"
}
}
},
@@ -980,19 +643,40 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": null,
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_return"
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
}
],
- "data": "void"
+ "data": {
+ "vec": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "bytes": "516d50726f706f73616c48617368"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ }
+ ]
+ }
}
}
},
@@ -1001,23 +685,53 @@
{
"event": {
"ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "string": "job_registry"
},
{
- "symbol": "get_bids"
+ "string": "BidSubmitted"
}
],
"data": {
- "u64": 1
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d50726f706f73616c48617368"
+ }
+ },
+ {
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
+ }
+ }
+ ]
}
}
}
@@ -1027,7 +741,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1036,52 +750,10 @@
"symbol": "fn_return"
},
{
- "symbol": "get_bids"
+ "symbol": "submit_bid"
}
],
- "data": {
- "vec": [
- {
- "map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c48617368"
- }
- }
- ]
- }
- ]
- }
+ "data": "void"
}
}
},
@@ -1099,7 +771,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "accept_bid"
@@ -1111,10 +783,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -1126,20 +798,53 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "accept"
+ "string": "job_registry"
},
{
- "u64": 1
+ "string": "BidAccepted"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "map": [
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
+ }
+ }
+ ]
}
}
}
@@ -1149,7 +854,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1179,7 +884,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "get_job"
@@ -1196,7 +901,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1215,7 +920,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -1234,7 +939,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -1242,7 +947,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
@@ -1250,7 +955,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -1292,7 +997,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_deliverable"
@@ -1304,7 +1009,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
"bytes": "516d44656c6976657261626c6548617368"
@@ -1319,30 +1024,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "deliver"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1372,7 +1054,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "get_job"
@@ -1389,7 +1071,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1408,7 +1090,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -1427,7 +1109,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -1435,7 +1117,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
@@ -1443,7 +1125,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -1472,55 +1154,6 @@
}
},
"failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
- },
- {
- "symbol": "get_deliverable"
- }
- ],
- "data": {
- "u64": 1
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "get_deliverable"
- }
- ],
- "data": {
- "bytes": "516d44656c6976657261626c6548617368"
- }
- }
- }
- },
- "failed_call": false
}
]
}
\ No newline at end of file
diff --git a/contracts/job_registry/test_snapshots/test/test_get_bid_at_out_of_bounds.1.json b/contracts/job_registry/test_snapshots/test/test_get_bid_at_out_of_bounds.1.json
new file mode 100644
index 00000000..5e5b845f
--- /dev/null
+++ b/contracts/job_registry/test_snapshots/test/test_get_bid_at_out_of_bounds.1.json
@@ -0,0 +1,577 @@
+{
+ "generators": {
+ "address": 3,
+ "nonce": 0
+ },
+ "auth": [
+ [],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "post_job",
+ "args": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "bytes": "516d48617368"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ []
+ ],
+ "ledger": {
+ "protocol_version": 21,
+ "sequence_number": 0,
+ "timestamp": 1700000000,
+ "network_id": "0000000000000000000000000000000000000000000000000000000000000000",
+ "base_reserve": 0,
+ "min_persistent_entry_ttl": 4096,
+ "min_temp_entry_ttl": 16,
+ "max_entry_ttl": 6312000,
+ "ledger_entries": [
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 1
+ }
+ ]
+ },
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 1
+ }
+ ]
+ },
+ "durability": "persistent",
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "budget_stroops"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": "void"
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": {
+ "bytes": "516d48617368"
+ }
+ },
+ {
+ "key": {
+ "symbol": "status"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Open"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_code": {
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_code": {
+ "ext": "v0",
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "code": ""
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ]
+ ]
+ },
+ "events": [
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "post_job"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "bytes": "516d48617368"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "post_job"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "get_bid_at"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "u64": 1
+ },
+ {
+ "u32": 0
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 15
+ }
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "string": "failing with contract error"
+ },
+ {
+ "u32": 15
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 15
+ }
+ }
+ ],
+ "data": {
+ "string": "escalating error to panic"
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 15
+ }
+ }
+ ],
+ "data": {
+ "string": "caught error from function"
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 15
+ }
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "string": "contract call failed"
+ },
+ {
+ "symbol": "get_bid_at"
+ },
+ {
+ "vec": [
+ {
+ "u64": 1
+ },
+ {
+ "u32": 0
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 15
+ }
+ }
+ ],
+ "data": {
+ "string": "escalating error to panic"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ }
+ ]
+}
\ No newline at end of file
diff --git a/contracts/job_registry/test_snapshots/test/test_get_bids_count_after_submissions.1.json b/contracts/job_registry/test_snapshots/test/test_get_bids_count_after_submissions.1.json
index 213502f8..0c34da70 100644
--- a/contracts/job_registry/test_snapshots/test/test_get_bids_count_after_submissions.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_get_bids_count_after_submissions.1.json
@@ -1,42 +1,24 @@
{
"generators": {
- "address": 7,
+ "address": 5,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -44,14 +26,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -62,26 +44,26 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 500
}
}
]
@@ -93,57 +75,26 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
- },
- {
- "bytes": "516d50726f706f73616c"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5032"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 600
}
}
]
@@ -158,7 +109,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -169,72 +120,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -254,7 +139,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -270,31 +155,12 @@
"vec": [
{
"map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
{
"key": {
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -302,77 +168,19 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
}
}
]
},
{
"map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
{
"key": {
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
}
},
{
@@ -380,7 +188,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5032"
}
}
]
@@ -397,7 +205,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -417,7 +225,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -436,7 +244,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -446,7 +254,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
}
},
@@ -455,7 +263,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -463,7 +271,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
@@ -504,7 +312,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -515,7 +323,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -533,7 +341,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -561,10 +369,10 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"ledger_key_nonce": {
- "nonce": 1033654523790656264
+ "nonce": 801925984706572462
}
},
"durability": "temporary"
@@ -576,10 +384,10 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"ledger_key_nonce": {
- "nonce": 1033654523790656264
+ "nonce": 801925984706572462
}
},
"durability": "temporary",
@@ -594,10 +402,10 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"ledger_key_nonce": {
- "nonce": 4837995959683129791
+ "nonce": 5541220902715666415
}
},
"durability": "temporary"
@@ -609,10 +417,10 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"ledger_key_nonce": {
- "nonce": 4837995959683129791
+ "nonce": 5541220902715666415
}
},
"durability": "temporary",
@@ -627,10 +435,10 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
"key": {
"ledger_key_nonce": {
- "nonce": 2032731177588607455
+ "nonce": 1033654523790656264
}
},
"durability": "temporary"
@@ -642,10 +450,10 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
"key": {
"ledger_key_nonce": {
- "nonce": 2032731177588607455
+ "nonce": 1033654523790656264
}
},
"durability": "temporary",
@@ -693,34 +501,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -730,7 +518,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -760,7 +548,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -772,7 +560,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -780,14 +568,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -799,30 +587,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "jobpost"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -852,7 +617,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -864,15 +629,15 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 500
}
}
]
@@ -885,80 +650,50 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "bid"
+ "string": "job_registry"
},
{
- "u64": 1
+ "string": "BidSubmitted"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "submit_bid"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
- },
- {
- "symbol": "submit_bid"
- }
- ],
- "data": {
- "vec": [
+ "map": [
{
- "u64": 1
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
},
{
- "bytes": "516d50726f706f73616c"
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5031"
+ }
},
{
- "i128": {
- "hi": 0,
- "lo": 1000
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
}
}
]
@@ -971,30 +706,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "bid"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1024,7 +736,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -1036,15 +748,15 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5032"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 600
}
}
]
@@ -1057,20 +769,53 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "bid"
+ "string": "job_registry"
},
{
- "u64": 1
+ "string": "BidSubmitted"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ }
+ },
+ {
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5032"
+ }
+ },
+ {
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
+ }
+ }
+ ]
}
}
}
@@ -1080,7 +825,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1110,7 +855,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "get_bids_count"
@@ -1127,7 +872,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1140,7 +885,7 @@
}
],
"data": {
- "u32": 3
+ "u32": 2
}
}
}
diff --git a/contracts/job_registry/test_snapshots/test/test_get_bids_count_empty_returns_zero.1.json b/contracts/job_registry/test_snapshots/test/test_get_bids_count_empty_returns_zero.1.json
index 71b1e1f3..b1b577bf 100644
--- a/contracts/job_registry/test_snapshots/test/test_get_bids_count_empty_returns_zero.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_get_bids_count_empty_returns_zero.1.json
@@ -1,42 +1,24 @@
{
"generators": {
- "address": 4,
+ "address": 3,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -44,14 +26,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -65,7 +47,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -76,117 +58,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "vec": []
- }
- }
- },
- "ext": "v0"
- },
- 4095
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -206,7 +77,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -225,7 +96,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -235,7 +106,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
}
},
@@ -244,7 +115,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -252,7 +123,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
@@ -293,7 +164,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -304,7 +175,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -322,7 +193,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -347,6 +218,39 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -383,34 +287,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -420,7 +304,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -450,7 +334,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -462,7 +346,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -470,14 +354,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -489,30 +373,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "jobpost"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -542,7 +403,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "get_bids_count"
@@ -559,7 +420,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
diff --git a/contracts/job_registry/test_snapshots/test/test_get_bids_for_missing_job_panics.1.json b/contracts/job_registry/test_snapshots/test/test_get_bids_for_missing_job_panics.1.json
index 132eda61..f855c69c 100644
--- a/contracts/job_registry/test_snapshots/test/test_get_bids_for_missing_job_panics.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_get_bids_for_missing_job_panics.1.json
@@ -1,34 +1,16 @@
{
"generators": {
- "address": 4,
+ "address": 2,
"nonce": 0
},
"auth": [
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
+ [],
[]
],
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -39,39 +21,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -82,7 +31,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -100,7 +49,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -161,61 +110,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "vec": [
- {
- "string": "JobRegistry initialized with admin: {}"
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "init"
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -225,7 +127,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -255,14 +157,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "get_bids"
}
],
"data": {
- "u64": 404
+ "u64": 999
}
}
}
@@ -272,7 +174,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -304,7 +206,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -329,7 +231,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -379,7 +281,7 @@
{
"vec": [
{
- "u64": 404
+ "u64": 999
}
]
}
diff --git a/contracts/job_registry/test_snapshots/test/test_get_bids_job_not_found.1.json b/contracts/job_registry/test_snapshots/test/test_get_bids_job_not_found.1.json
index 48ff924a..f855c69c 100644
--- a/contracts/job_registry/test_snapshots/test/test_get_bids_job_not_found.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_get_bids_job_not_found.1.json
@@ -1,15 +1,16 @@
{
"generators": {
- "address": 1,
+ "address": 2,
"nonce": 0
},
"auth": [
+ [],
[]
],
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -38,7 +39,32 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 1
+ }
+ }
+ ]
}
}
}
@@ -87,11 +113,11 @@
"bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "get_bids"
+ "symbol": "initialize"
}
],
"data": {
- "u64": 999
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -109,14 +135,93 @@
{
"symbol": "fn_return"
},
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
{
"symbol": "get_bids"
}
],
"data": {
- "error": {
- "contract": 1
+ "u64": 999
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 7
+ }
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "string": "failing with contract error"
+ },
+ {
+ "u32": 7
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 7
+ }
}
+ ],
+ "data": {
+ "string": "escalating error to panic"
}
}
}
@@ -136,12 +241,12 @@
},
{
"error": {
- "contract": 1
+ "contract": 7
}
}
],
"data": {
- "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err"
+ "string": "caught error from function"
}
}
}
@@ -161,7 +266,7 @@
},
{
"error": {
- "contract": 1
+ "contract": 7
}
}
],
@@ -200,7 +305,7 @@
},
{
"error": {
- "contract": 1
+ "contract": 7
}
}
],
diff --git a/contracts/job_registry/test_snapshots/test/test_get_bids_page_first_window.1.json b/contracts/job_registry/test_snapshots/test/test_get_bids_page_first_window.1.json
index 49f7a8fd..01959f70 100644
--- a/contracts/job_registry/test_snapshots/test/test_get_bids_page_first_window.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_get_bids_page_first_window.1.json
@@ -1,119 +1,39 @@
{
"generators": {
- "address": 9,
+ "address": 5,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
},
- {
- "i128": {
- "hi": 0,
- "lo": 100000
- }
- },
- {
- "u64": 30
- },
- {
- "u64": 60
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- },
- {
- "bytes": "516d50726f706f73616c"
- },
{
"i128": {
"hi": 0,
"lo": 1000
}
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
},
{
- "bytes": "516d50726f706f73616c"
+ "u64": 0
},
{
- "i128": {
- "hi": 0,
- "lo": 1000
- }
+ "u64": 0
}
]
}
@@ -124,26 +44,26 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 500
}
}
]
@@ -155,57 +75,26 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQG5",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQG5"
- },
- {
- "bytes": "516d50726f706f73616c"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATYON",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATYON"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5032"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 600
}
}
]
@@ -220,7 +109,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -231,72 +120,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -316,7 +139,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -329,151 +152,15 @@
},
"durability": "persistent",
"val": {
- "vec": [
- {
- "map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c"
- }
- }
- ]
- },
+ "vec": [
{
"map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
{
"key": {
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQG5"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -481,38 +168,19 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
}
}
]
},
{
"map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
{
"key": {
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATYON"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
}
},
{
@@ -520,7 +188,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5032"
}
}
]
@@ -537,7 +205,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -557,7 +225,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -576,7 +244,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -586,7 +254,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
}
},
@@ -595,7 +263,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -603,7 +271,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
@@ -644,7 +312,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -655,7 +323,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -673,7 +341,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -701,76 +369,10 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"ledger_key_nonce": {
- "nonce": 2032731177588607455
+ "nonce": 801925984706572462
}
},
"durability": "temporary"
@@ -782,10 +384,10 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"ledger_key_nonce": {
- "nonce": 2032731177588607455
+ "nonce": 801925984706572462
}
},
"durability": "temporary",
@@ -800,10 +402,10 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQG5",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"ledger_key_nonce": {
- "nonce": 4270020994084947596
+ "nonce": 5541220902715666415
}
},
"durability": "temporary"
@@ -815,10 +417,10 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQG5",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"ledger_key_nonce": {
- "nonce": 4270020994084947596
+ "nonce": 5541220902715666415
}
},
"durability": "temporary",
@@ -833,10 +435,10 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATYON",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
"key": {
"ledger_key_nonce": {
- "nonce": 8370022561469687789
+ "nonce": 1033654523790656264
}
},
"durability": "temporary"
@@ -848,10 +450,10 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATYON",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
"key": {
"ledger_key_nonce": {
- "nonce": 8370022561469687789
+ "nonce": 1033654523790656264
}
},
"durability": "temporary",
@@ -876,176 +478,17 @@
"contract_code": {
"ext": "v0",
"hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
- "code": ""
- }
- },
- "ext": "v0"
- },
- 4095
- ]
- ]
- ]
- },
- "events": [
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
- },
- {
- "symbol": "initialize"
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "initialize"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
- },
- {
- "symbol": "post_job"
- }
- ],
- "data": {
- "vec": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "bytes": "516d48617368"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 100000
- }
- },
- {
- "u64": 30
- },
- {
- "u64": 60
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "jobpost"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "post_job"
+ "code": ""
}
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ]
+ ]
+ },
+ "events": [
{
"event": {
"ext": "v0",
@@ -1058,53 +501,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
- },
- {
- "symbol": "submit_bid"
- }
- ],
- "data": {
- "vec": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- },
- {
- "bytes": "516d50726f706f73616c"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "bid"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "u64": 1
+ "symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -1114,7 +518,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1123,7 +527,7 @@
"symbol": "fn_return"
},
{
- "symbol": "submit_bid"
+ "symbol": "initialize"
}
],
"data": "void"
@@ -1144,10 +548,10 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "submit_bid"
+ "symbol": "post_job"
}
],
"data": {
@@ -1156,16 +560,22 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d48617368"
},
{
"i128": {
"hi": 0,
"lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -1177,30 +587,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "bid"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1209,7 +596,7 @@
"symbol": "fn_return"
},
{
- "symbol": "submit_bid"
+ "symbol": "post_job"
}
],
"data": "void"
@@ -1230,7 +617,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -1242,15 +629,15 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 500
}
}
]
@@ -1263,80 +650,50 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "bid"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "submit_bid"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "string": "job_registry"
},
{
- "symbol": "submit_bid"
+ "string": "BidSubmitted"
}
],
"data": {
- "vec": [
+ "map": [
{
- "u64": 1
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQG5"
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
},
{
- "bytes": "516d50726f706f73616c"
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5031"
+ }
},
{
- "i128": {
- "hi": 0,
- "lo": 1000
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
}
}
]
@@ -1349,30 +706,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "bid"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQG5"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1402,7 +736,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -1414,15 +748,15 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATYON"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5032"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 600
}
}
]
@@ -1435,20 +769,53 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "bid"
+ "string": "job_registry"
},
{
- "u64": 1
+ "string": "BidSubmitted"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATYON"
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ }
+ },
+ {
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5032"
+ }
+ },
+ {
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
+ }
+ }
+ ]
}
}
}
@@ -1458,7 +825,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1488,7 +855,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "get_bids_page"
@@ -1503,7 +870,7 @@
"u32": 0
},
{
- "u32": 3
+ "u32": 1
}
]
}
@@ -1515,7 +882,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1531,109 +898,12 @@
"vec": [
{
"map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
{
"key": {
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -1641,7 +911,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
}
}
]
diff --git a/contracts/job_registry/test_snapshots/test/test_get_bids_page_offset_beyond_end_returns_empty.1.json b/contracts/job_registry/test_snapshots/test/test_get_bids_page_offset_beyond_end_returns_empty.1.json
index b962649d..ea79270e 100644
--- a/contracts/job_registry/test_snapshots/test/test_get_bids_page_offset_beyond_end_returns_empty.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_get_bids_page_offset_beyond_end_returns_empty.1.json
@@ -1,119 +1,39 @@
{
"generators": {
- "address": 7,
+ "address": 4,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
},
- {
- "i128": {
- "hi": 0,
- "lo": 100000
- }
- },
- {
- "u64": 30
- },
- {
- "u64": 60
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- },
- {
- "bytes": "516d50726f706f73616c"
- },
{
"i128": {
"hi": 0,
"lo": 1000
}
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
},
{
- "bytes": "516d50726f706f73616c"
+ "u64": 0
},
{
- "i128": {
- "hi": 0,
- "lo": 1000
- }
+ "u64": 0
}
]
}
@@ -124,26 +44,26 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 500
}
}
]
@@ -158,7 +78,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -169,72 +89,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -254,7 +108,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -270,31 +124,12 @@
"vec": [
{
"map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
{
"key": {
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -302,85 +137,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
}
}
]
@@ -397,7 +154,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -417,7 +174,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -436,7 +193,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -446,7 +203,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
}
},
@@ -455,7 +212,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -463,7 +220,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
@@ -504,7 +261,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -515,7 +272,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -533,7 +290,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -561,43 +318,10 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"ledger_key_nonce": {
- "nonce": 4837995959683129791
+ "nonce": 801925984706572462
}
},
"durability": "temporary"
@@ -609,10 +333,10 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"ledger_key_nonce": {
- "nonce": 4837995959683129791
+ "nonce": 801925984706572462
}
},
"durability": "temporary",
@@ -627,10 +351,10 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"ledger_key_nonce": {
- "nonce": 2032731177588607455
+ "nonce": 5541220902715666415
}
},
"durability": "temporary"
@@ -642,10 +366,10 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"ledger_key_nonce": {
- "nonce": 2032731177588607455
+ "nonce": 5541220902715666415
}
},
"durability": "temporary",
@@ -693,34 +417,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -730,7 +434,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -760,7 +464,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -772,7 +476,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -780,14 +484,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -799,30 +503,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "jobpost"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -852,7 +533,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -864,15 +545,15 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 500
}
}
]
@@ -885,166 +566,50 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "bid"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "submit_bid"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "string": "job_registry"
},
{
- "symbol": "submit_bid"
+ "string": "BidSubmitted"
}
],
"data": {
- "vec": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
- },
+ "map": [
{
- "bytes": "516d50726f706f73616c"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 1000
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "bid"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "submit_bid"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
- },
- {
- "symbol": "submit_bid"
- }
- ],
- "data": {
- "vec": [
- {
- "u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
},
{
- "bytes": "516d50726f706f73616c"
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5031"
+ }
},
{
- "i128": {
- "hi": 0,
- "lo": 1000
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
}
}
]
@@ -1057,30 +622,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "bid"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1110,7 +652,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "get_bids_page"
@@ -1122,10 +664,10 @@
"u64": 1
},
{
- "u32": 10
+ "u32": 5
},
{
- "u32": 5
+ "u32": 10
}
]
}
@@ -1137,7 +679,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
diff --git a/contracts/job_registry/test_snapshots/test/test_get_bids_page_second_window.1.json b/contracts/job_registry/test_snapshots/test/test_get_bids_page_second_window.1.json
index 034ea95a..61238eb8 100644
--- a/contracts/job_registry/test_snapshots/test/test_get_bids_page_second_window.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_get_bids_page_second_window.1.json
@@ -1,150 +1,39 @@
{
"generators": {
- "address": 9,
+ "address": 5,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
},
- {
- "i128": {
- "hi": 0,
- "lo": 100000
- }
- },
- {
- "u64": 30
- },
- {
- "u64": 60
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- },
- {
- "bytes": "516d50726f706f73616c"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
- },
- {
- "bytes": "516d50726f706f73616c"
- },
{
"i128": {
"hi": 0,
"lo": 1000
}
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
+ "u64": 0
},
{
- "bytes": "516d50726f706f73616c"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
+ "u64": 0
}
]
}
@@ -155,26 +44,26 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQG5",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQG5"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 500
}
}
]
@@ -186,26 +75,26 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATYON",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATYON"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5032"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 600
}
}
]
@@ -220,7 +109,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -231,72 +120,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -316,7 +139,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -332,148 +155,12 @@
"vec": [
{
"map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
{
"key": {
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQG5"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -481,38 +168,19 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
}
}
]
},
{
"map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
{
"key": {
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATYON"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
}
},
{
@@ -520,7 +188,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5032"
}
}
]
@@ -537,7 +205,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -557,7 +225,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -576,7 +244,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -586,7 +254,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
}
},
@@ -595,7 +263,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -603,7 +271,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
@@ -644,7 +312,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -655,7 +323,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -673,7 +341,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -701,76 +369,10 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 2032731177588607455
+ "nonce": 801925984706572462
}
},
"durability": "temporary"
@@ -782,10 +384,10 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"ledger_key_nonce": {
- "nonce": 2032731177588607455
+ "nonce": 801925984706572462
}
},
"durability": "temporary",
@@ -800,10 +402,10 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQG5",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"ledger_key_nonce": {
- "nonce": 4270020994084947596
+ "nonce": 5541220902715666415
}
},
"durability": "temporary"
@@ -815,10 +417,10 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQG5",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"ledger_key_nonce": {
- "nonce": 4270020994084947596
+ "nonce": 5541220902715666415
}
},
"durability": "temporary",
@@ -833,10 +435,10 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATYON",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
"key": {
"ledger_key_nonce": {
- "nonce": 8370022561469687789
+ "nonce": 1033654523790656264
}
},
"durability": "temporary"
@@ -848,10 +450,10 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATYON",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
"key": {
"ledger_key_nonce": {
- "nonce": 8370022561469687789
+ "nonce": 1033654523790656264
}
},
"durability": "temporary",
@@ -868,153 +470,41 @@
"contract_code": {
"hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
}
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_code": {
- "ext": "v0",
- "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
- "code": ""
- }
- },
- "ext": "v0"
- },
- 4095
- ]
- ]
- ]
- },
- "events": [
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
- },
- {
- "symbol": "initialize"
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "initialize"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
- },
- {
- "symbol": "post_job"
- }
- ],
- "data": {
- "vec": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "bytes": "516d48617368"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 100000
- }
- },
- {
- "u64": 30
- },
- {
- "u64": 60
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_code": {
+ "ext": "v0",
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "code": ""
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ]
+ ]
+ },
+ "events": [
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
+ "contract_id": null,
+ "type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "jobpost"
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "u64": 1
+ "symbol": "initialize"
}
],
"data": {
@@ -1028,7 +518,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1037,7 +527,7 @@
"symbol": "fn_return"
},
{
- "symbol": "post_job"
+ "symbol": "initialize"
}
],
"data": "void"
@@ -1058,10 +548,10 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "submit_bid"
+ "symbol": "post_job"
}
],
"data": {
@@ -1070,16 +560,22 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d48617368"
},
{
"i128": {
"hi": 0,
"lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -1091,30 +587,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "bid"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1123,7 +596,7 @@
"symbol": "fn_return"
},
{
- "symbol": "submit_bid"
+ "symbol": "post_job"
}
],
"data": "void"
@@ -1144,7 +617,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -1156,15 +629,15 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5031"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 500
}
}
]
@@ -1177,80 +650,50 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "bid"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "submit_bid"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "string": "job_registry"
},
{
- "symbol": "submit_bid"
+ "string": "BidSubmitted"
}
],
"data": {
- "vec": [
+ "map": [
{
- "u64": 1
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
},
{
- "bytes": "516d50726f706f73616c"
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5031"
+ }
},
{
- "i128": {
- "hi": 0,
- "lo": 1000
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
}
}
]
@@ -1263,30 +706,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "bid"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1316,7 +736,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -1328,15 +748,15 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQG5"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5032"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 600
}
}
]
@@ -1349,80 +769,50 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "bid"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQG5"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "submit_bid"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "string": "job_registry"
},
{
- "symbol": "submit_bid"
+ "string": "BidSubmitted"
}
],
"data": {
- "vec": [
+ "map": [
{
- "u64": 1
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ }
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATYON"
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
},
{
- "bytes": "516d50726f706f73616c"
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5032"
+ }
},
{
- "i128": {
- "hi": 0,
- "lo": 1000
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
}
}
]
@@ -1435,30 +825,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "bid"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATYON"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1488,7 +855,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "get_bids_page"
@@ -1500,10 +867,10 @@
"u64": 1
},
{
- "u32": 3
+ "u32": 1
},
{
- "u32": 3
+ "u32": 1
}
]
}
@@ -1515,7 +882,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1531,70 +898,12 @@
"vec": [
{
"map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARQG5"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
{
"key": {
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATYON"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
}
},
{
@@ -1602,7 +911,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d5032"
}
}
]
diff --git a/contracts/job_registry/test_snapshots/test/test_get_deliverable_without_submission_panics.1.json b/contracts/job_registry/test_snapshots/test/test_get_deliverable_without_submission_panics.1.json
index cdef3115..5fd80718 100644
--- a/contracts/job_registry/test_snapshots/test/test_get_deliverable_without_submission_panics.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_get_deliverable_without_submission_panics.1.json
@@ -4,17 +4,36 @@
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "post_job",
"args": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "bytes": "516d48617368"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -25,30 +44,52 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "post_job",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d48617368"
+ "bytes": "516d50"
},
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 500
}
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "accept_bid",
+ "args": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "u64": 60
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -62,7 +103,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -73,76 +114,10 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
- "symbol": "BidCount"
+ "symbol": "Bids"
},
{
"u64": 1
@@ -158,11 +133,11 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
- "symbol": "BidCount"
+ "symbol": "Bids"
},
{
"u64": 1
@@ -171,7 +146,28 @@
},
"durability": "persistent",
"val": {
- "u32": 0
+ "vec": [
+ {
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d50"
+ }
+ }
+ ]
+ }
+ ]
}
}
},
@@ -183,7 +179,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -203,7 +199,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -222,7 +218,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 100
+ "u64": 0
}
},
{
@@ -232,7 +228,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
}
},
@@ -241,7 +237,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -249,14 +245,16 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
"key": {
"symbol": "freelancer"
},
- "val": "void"
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
},
{
"key": {
@@ -273,7 +271,7 @@
"val": {
"vec": [
{
- "symbol": "Open"
+ "symbol": "Assigned"
}
]
}
@@ -290,7 +288,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -301,7 +299,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -319,7 +317,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -344,6 +342,105 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -380,14 +477,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -397,54 +494,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "vec": [
- {
- "string": "JobRegistry initialized with admin: {}"
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "init"
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -474,7 +524,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -486,7 +536,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -494,11 +544,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 60
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -510,30 +563,57 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "log"
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "post_job"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "submit_bid"
}
],
"data": {
"vec": [
{
- "string": "post_job: id {} client {} budget {}"
+ "u64": 1
},
{
- "u64": 1
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "bytes": "516d50"
},
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 500
}
}
]
@@ -546,27 +626,50 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "jobpost"
+ "string": "job_registry"
},
{
- "u64": 1
+ "string": "BidSubmitted"
}
],
"data": {
- "vec": [
+ "map": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
},
{
- "i128": {
- "hi": 0,
- "lo": 100000
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d50"
+ }
+ },
+ {
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
}
}
]
@@ -579,7 +682,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -588,7 +691,7 @@
"symbol": "fn_return"
},
{
- "symbol": "post_job"
+ "symbol": "submit_bid"
}
],
"data": "void"
@@ -609,14 +712,24 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "get_deliverable"
+ "symbol": "accept_bid"
}
],
"data": {
- "u64": 1
+ "vec": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ ]
}
}
}
@@ -626,116 +739,185 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "error"
+ "string": "job_registry"
},
{
- "error": {
- "contract": 13
- }
+ "string": "BidAccepted"
}
],
"data": {
- "vec": [
+ "map": [
{
- "string": "failing with contract error"
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
},
{
- "u32": 13
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
+ }
}
]
}
}
}
},
- "failed_call": true
+ "failed_call": false
},
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "error"
+ "symbol": "fn_return"
},
{
- "error": {
- "contract": 13
- }
+ "symbol": "accept_bid"
}
],
- "data": {
- "string": "escalating error to panic"
- }
+ "data": "void"
}
}
},
- "failed_call": true
+ "failed_call": false
},
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": null,
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "error"
+ "symbol": "fn_call"
},
{
- "error": {
- "contract": 13
- }
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "get_job"
}
],
"data": {
- "string": "caught error from function"
+ "u64": 1
}
}
}
},
- "failed_call": true
+ "failed_call": false
},
{
"event": {
"ext": "v0",
- "contract_id": null,
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "error"
+ "symbol": "fn_return"
},
{
- "error": {
- "contract": 13
- }
+ "symbol": "get_job"
}
],
"data": {
- "vec": [
+ "map": [
{
- "string": "contract call failed"
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
},
{
- "symbol": "get_deliverable"
+ "key": {
+ "symbol": "budget_stroops"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ }
},
{
- "vec": [
- {
- "u64": 1
- }
- ]
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": {
+ "bytes": "516d48617368"
+ }
+ },
+ {
+ "key": {
+ "symbol": "status"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Assigned"
+ }
+ ]
+ }
}
]
}
@@ -743,31 +925,6 @@
}
},
"failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "error"
- },
- {
- "error": {
- "contract": 13
- }
- }
- ],
- "data": {
- "string": "escalating error to panic"
- }
- }
- }
- },
- "failed_call": false
}
]
}
\ No newline at end of file
diff --git a/contracts/job_registry/test_snapshots/test/test_submit_deliverable_empty_hash.1.json b/contracts/job_registry/test_snapshots/test/test_get_deliverable_without_submission_returns_assigned.1.json
similarity index 78%
rename from contracts/job_registry/test_snapshots/test/test_submit_deliverable_empty_hash.1.json
rename to contracts/job_registry/test_snapshots/test/test_get_deliverable_without_submission_returns_assigned.1.json
index 5cbbe11f..5fd80718 100644
--- a/contracts/job_registry/test_snapshots/test/test_submit_deliverable_empty_hash.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_get_deliverable_without_submission_returns_assigned.1.json
@@ -1,23 +1,24 @@
{
"generators": {
- "address": 3,
+ "address": 4,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -27,6 +28,12 @@
"hi": 0,
"lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -37,21 +44,27 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -62,21 +75,21 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "accept_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -90,7 +103,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -101,105 +114,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"vec": [
{
@@ -219,7 +133,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -240,7 +154,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -248,7 +162,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50"
}
}
]
@@ -259,13 +173,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -285,7 +199,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -299,6 +213,14 @@
"durability": "persistent",
"val": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -315,7 +237,15 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
}
},
{
@@ -323,7 +253,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -341,7 +271,7 @@
"val": {
"vec": [
{
- "symbol": "InProgress"
+ "symbol": "Assigned"
}
]
}
@@ -352,13 +282,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -369,7 +299,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -377,7 +307,32 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
}
}
}
@@ -387,6 +342,105 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -423,7 +477,54 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -435,7 +536,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -445,6 +546,12 @@
"hi": 0,
"lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -456,7 +563,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -486,7 +593,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -498,10 +605,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -513,7 +626,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -532,7 +645,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -548,7 +661,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50"
}
},
{
@@ -556,7 +669,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -569,7 +682,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -599,7 +712,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "accept_bid"
@@ -611,10 +724,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -626,7 +739,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -645,7 +758,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -653,7 +766,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -669,7 +782,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -682,7 +795,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -712,24 +825,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "submit_deliverable"
+ "symbol": "get_job"
}
],
"data": {
- "vec": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "bytes": ""
- }
- ]
+ "u64": 1
}
}
}
@@ -739,7 +842,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -748,81 +851,73 @@
"symbol": "fn_return"
},
{
- "symbol": "submit_deliverable"
- }
- ],
- "data": {
- "error": {
- "contract": 4
- }
- }
- }
- }
- },
- "failed_call": true
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "error"
- },
- {
- "error": {
- "contract": 4
- }
+ "symbol": "get_job"
}
],
"data": {
- "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err"
- }
- }
- }
- },
- "failed_call": true
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "error"
- },
- {
- "error": {
- "contract": 4
- }
- }
- ],
- "data": {
- "vec": [
+ "map": [
{
- "string": "contract call failed"
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
},
{
- "symbol": "submit_deliverable"
+ "key": {
+ "symbol": "budget_stroops"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ }
},
{
- "vec": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "bytes": ""
- }
- ]
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": {
+ "bytes": "516d48617368"
+ }
+ },
+ {
+ "key": {
+ "symbol": "status"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Assigned"
+ }
+ ]
+ }
}
]
}
@@ -830,31 +925,6 @@
}
},
"failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "error"
- },
- {
- "error": {
- "contract": 4
- }
- }
- ],
- "data": {
- "string": "escalating error to panic"
- }
- }
- }
- },
- "failed_call": false
}
]
}
\ No newline at end of file
diff --git a/contracts/job_registry/test_snapshots/test/test_get_job_not_found.1.json b/contracts/job_registry/test_snapshots/test/test_get_job_not_found.1.json
index d49e9f74..e4e1de3c 100644
--- a/contracts/job_registry/test_snapshots/test/test_get_job_not_found.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_get_job_not_found.1.json
@@ -1,15 +1,16 @@
{
"generators": {
- "address": 1,
+ "address": 2,
"nonce": 0
},
"auth": [
+ [],
[]
],
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -38,7 +39,32 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 1
+ }
+ }
+ ]
}
}
}
@@ -87,11 +113,11 @@
"bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "get_job"
+ "symbol": "initialize"
}
],
"data": {
- "u64": 999
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -109,14 +135,93 @@
{
"symbol": "fn_return"
},
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
{
"symbol": "get_job"
}
],
"data": {
- "error": {
- "contract": 1
+ "u64": 999
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 7
+ }
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "string": "failing with contract error"
+ },
+ {
+ "u32": 7
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 7
+ }
}
+ ],
+ "data": {
+ "string": "escalating error to panic"
}
}
}
@@ -136,12 +241,12 @@
},
{
"error": {
- "contract": 1
+ "contract": 7
}
}
],
"data": {
- "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err"
+ "string": "caught error from function"
}
}
}
@@ -161,7 +266,7 @@
},
{
"error": {
- "contract": 1
+ "contract": 7
}
}
],
@@ -200,7 +305,7 @@
},
{
"error": {
- "contract": 1
+ "contract": 7
}
}
],
diff --git a/contracts/job_registry/test_snapshots/test/test_initialize_bootstraps_storage.1.json b/contracts/job_registry/test_snapshots/test/test_initialize_bootstraps_storage.1.json
index 28ac1590..d4693e46 100644
--- a/contracts/job_registry/test_snapshots/test/test_initialize_bootstraps_storage.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_initialize_bootstraps_storage.1.json
@@ -1,30 +1,9 @@
{
"generators": {
- "address": 4,
+ "address": 2,
"nonce": 0
},
"auth": [
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [],
- [],
[]
],
"ledger": {
@@ -41,39 +20,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -84,7 +30,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -102,7 +48,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -163,34 +109,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -200,7 +126,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -217,147 +143,6 @@
}
},
"failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
- },
- {
- "symbol": "is_initialized"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "is_initialized"
- }
- ],
- "data": {
- "bool": true
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
- },
- {
- "symbol": "get_admin"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "get_admin"
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
- },
- {
- "symbol": "get_next_job_id"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "get_next_job_id"
- }
- ],
- "data": {
- "u64": 1
- }
- }
- }
- },
- "failed_call": false
}
]
}
\ No newline at end of file
diff --git a/contracts/job_registry/test_snapshots/test/test_invalid_budget_panics.1.json b/contracts/job_registry/test_snapshots/test/test_invalid_budget_panics.1.json
index b97714fe..03195a3e 100644
--- a/contracts/job_registry/test_snapshots/test/test_invalid_budget_panics.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_invalid_budget_panics.1.json
@@ -1,34 +1,16 @@
{
"generators": {
- "address": 4,
+ "address": 3,
"nonce": 0
},
"auth": [
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
+ [],
[]
],
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -39,39 +21,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -82,7 +31,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -100,7 +49,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -161,34 +110,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -198,7 +127,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -228,7 +157,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -240,7 +169,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -252,10 +181,10 @@
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -267,7 +196,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -299,7 +228,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -324,7 +253,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -377,7 +306,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -389,10 +318,10 @@
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
diff --git a/contracts/job_registry/test_snapshots/test/test_late_bid_after_acceptance_panics_with_job_not_open.1.json b/contracts/job_registry/test_snapshots/test/test_late_bid_after_acceptance_panics_with_job_not_open.1.json
index 5941fed7..7ee1cc3f 100644
--- a/contracts/job_registry/test_snapshots/test/test_late_bid_after_acceptance_panics_with_job_not_open.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_late_bid_after_acceptance_panics_with_job_not_open.1.json
@@ -4,39 +4,21 @@
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -44,8 +26,14 @@
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -56,21 +44,27 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "bytes": "516d5031"
},
{
- "bytes": "516d50726f706f73616c"
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -81,21 +75,21 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "accept_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -109,7 +103,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -120,148 +114,13 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
- "symbol": "BidByIndex"
+ "symbol": "Bids"
},
{
"u64": 1
- },
- {
- "u32": 0
}
]
},
@@ -274,85 +133,41 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
- "symbol": "BidByIndex"
+ "symbol": "Bids"
},
{
"u64": 1
- },
- {
- "u32": 0
}
]
},
"durability": "persistent",
"val": {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c"
- }
- }
- ]
- }
- }
- },
- "ext": "v0"
- },
- 4095
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "BidCount"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
"vec": [
{
- "symbol": "BidCount"
- },
- {
- "u64": 1
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5031"
+ }
+ }
+ ]
}
]
- },
- "durability": "persistent",
- "val": {
- "u32": 1
}
}
},
@@ -364,17 +179,14 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
- "symbol": "BidLookup"
+ "symbol": "Job"
},
{
"u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
]
},
@@ -387,17 +199,14 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
- "symbol": "BidLookup"
+ "symbol": "Job"
},
{
"u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
]
},
@@ -406,83 +215,37 @@
"map": [
{
"key": {
- "symbol": "freelancer"
+ "symbol": "bidding_deadline"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "u64": 0
}
},
{
"key": {
- "symbol": "proposal_hash"
+ "symbol": "budget_stroops"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
}
- }
- ]
- }
- }
- },
- "ext": "v0"
- },
- 4095
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "Job"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "Job"
},
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "map": [
{
"key": {
- "symbol": "budget_stroops"
+ "symbol": "client"
},
"val": {
- "i128": {
- "hi": 0,
- "lo": 5000
- }
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
"key": {
- "symbol": "client"
+ "symbol": "expires_at"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "u64": 0
}
},
{
@@ -490,7 +253,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -519,15 +282,142 @@
},
"ext": "v0"
},
- 4095
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
]
],
[
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": "ledger_key_contract_instance",
- "durability": "persistent"
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
}
},
[
@@ -537,46 +427,18 @@
"contract_data": {
"ext": "v0",
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": "ledger_key_contract_instance",
- "durability": "persistent",
- "val": {
- "contract_instance": {
- "executable": {
- "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
- },
- "storage": [
- {
- "key": {
- "vec": [
- {
- "symbol": "Admin"
- }
- ]
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- },
- {
- "key": {
- "vec": [
- {
- "symbol": "NextJobId"
- }
- ]
- },
- "val": {
- "u64": 2
- }
- }
- ]
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
}
- }
+ },
+ "durability": "temporary",
+ "val": "void"
}
},
"ext": "v0"
},
- 4095
+ 6311999
]
],
[
@@ -615,61 +477,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "vec": [
- {
- "string": "JobRegistry initialized with admin: {}"
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "init"
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -679,7 +494,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -709,7 +524,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -721,7 +536,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -729,77 +544,14 @@
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "vec": [
- {
- "string": "post_job: id {} client {} budget {}"
},
{
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 5000
- }
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "jobpost"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "vec": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "u64": 0
},
{
- "i128": {
- "hi": 0,
- "lo": 5000
- }
+ "u64": 0
}
]
}
@@ -811,7 +563,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -841,7 +593,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -853,10 +605,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "bytes": "516d5031"
},
{
- "bytes": "516d50726f706f73616c"
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -868,25 +626,51 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "log"
+ "string": "job_registry"
+ },
+ {
+ "string": "BidSubmitted"
}
],
"data": {
- "vec": [
+ "map": [
{
- "string": "submit_bid: id {} freelancer {}"
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
},
{
- "u64": 1
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5031"
+ }
+ },
+ {
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
+ }
}
]
}
@@ -898,30 +682,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "bid"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -951,7 +712,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "accept_bid"
@@ -963,10 +724,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -978,28 +739,51 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "log"
+ "string": "job_registry"
+ },
+ {
+ "string": "BidAccepted"
}
],
"data": {
- "vec": [
+ "map": [
{
- "string": "accept_bid: id {} client {} freelancer {}"
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
},
{
- "u64": 1
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
+ }
}
]
}
@@ -1011,30 +795,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "accept"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1064,7 +825,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -1079,7 +840,13 @@
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "bytes": "516d4c61746550726f706f73616c"
+ "bytes": "516d4c617465"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 600
+ }
}
]
}
@@ -1091,7 +858,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1123,7 +890,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1148,7 +915,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1204,7 +971,13 @@
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "bytes": "516d4c61746550726f706f73616c"
+ "bytes": "516d4c617465"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 600
+ }
}
]
}
diff --git a/contracts/job_registry/test_snapshots/test/test_mark_disputed_from_assigned.1.json b/contracts/job_registry/test_snapshots/test/test_mark_disputed_from_assigned.1.json
index 05aa28d0..4ad9a06a 100644
--- a/contracts/job_registry/test_snapshots/test/test_mark_disputed_from_assigned.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_mark_disputed_from_assigned.1.json
@@ -4,39 +4,21 @@
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -44,14 +26,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -62,26 +44,26 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 500
}
}
]
@@ -93,21 +75,21 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "accept_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -118,15 +100,18 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "mark_disputed",
"args": [
{
"u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
]
}
@@ -140,7 +125,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -151,171 +136,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 2032731177588607455
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 2032731177588607455
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -335,7 +155,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -351,31 +171,12 @@
"vec": [
{
"map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
{
"key": {
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -383,7 +184,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50"
}
}
]
@@ -400,7 +201,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -420,7 +221,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -439,7 +240,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -449,7 +250,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
}
},
@@ -458,7 +259,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -466,7 +267,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
@@ -474,7 +275,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -509,7 +310,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -520,7 +321,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -538,7 +339,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -563,6 +364,138 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 4837995959683129791
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 4837995959683129791
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -599,34 +532,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -636,7 +549,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -666,7 +579,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -678,7 +591,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -686,14 +599,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -705,30 +618,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "jobpost"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -758,7 +648,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -770,15 +660,15 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50"
},
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 500
}
}
]
@@ -791,20 +681,53 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "bid"
+ "string": "job_registry"
},
{
- "u64": 1
+ "string": "BidSubmitted"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d50"
+ }
+ },
+ {
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
+ }
+ }
+ ]
}
}
}
@@ -814,7 +737,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -844,7 +767,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "accept_bid"
@@ -856,10 +779,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -871,20 +794,53 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "accept"
+ "string": "job_registry"
},
{
- "u64": 1
+ "string": "BidAccepted"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "map": [
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
+ }
+ }
+ ]
}
}
}
@@ -894,7 +850,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -924,14 +880,21 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "mark_disputed"
}
],
"data": {
- "u64": 1
+ "vec": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ ]
}
}
}
@@ -941,7 +904,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -971,7 +934,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "get_job"
@@ -988,7 +951,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1007,7 +970,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -1017,7 +980,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
}
},
@@ -1026,7 +989,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -1034,7 +997,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
@@ -1042,7 +1005,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
diff --git a/contracts/job_registry/test_snapshots/test/test_mark_disputed_from_deliverable_submitted.1.json b/contracts/job_registry/test_snapshots/test/test_mark_disputed_from_deliverable_submitted.1.json
index ea8270c6..20dfdfb5 100644
--- a/contracts/job_registry/test_snapshots/test/test_mark_disputed_from_deliverable_submitted.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_mark_disputed_from_deliverable_submitted.1.json
@@ -1,23 +1,24 @@
{
"generators": {
- "address": 3,
+ "address": 4,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -25,8 +26,14 @@
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -37,21 +44,27 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "bytes": "516d50"
},
{
- "bytes": "516d50726f706f73616c"
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -62,21 +75,21 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "accept_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -87,18 +100,18 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_deliverable",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
"bytes": "516d44656c6976657261626c65"
@@ -110,13 +123,34 @@
}
]
],
- [],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "mark_disputed",
+ "args": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
[]
],
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -128,11 +162,16 @@
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
+ "vec": [
+ {
+ "symbol": "Bids"
+ },
+ {
+ "u64": 1
+ }
+ ]
},
- "durability": "temporary"
+ "durability": "persistent"
}
},
[
@@ -143,17 +182,45 @@
"ext": "v0",
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
+ "vec": [
+ {
+ "symbol": "Bids"
+ },
+ {
+ "u64": 1
+ }
+ ]
},
- "durability": "temporary",
- "val": "void"
+ "durability": "persistent",
+ "val": {
+ "vec": [
+ {
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d50"
+ }
+ }
+ ]
+ }
+ ]
+ }
}
},
"ext": "v0"
},
- 6311999
+ 4095
]
],
[
@@ -161,11 +228,16 @@
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 1
+ }
+ ]
},
- "durability": "temporary"
+ "durability": "persistent"
}
},
[
@@ -176,29 +248,96 @@
"ext": "v0",
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 1
+ }
+ ]
},
- "durability": "temporary",
- "val": "void"
+ "durability": "persistent",
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "budget_stroops"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": {
+ "bytes": "516d48617368"
+ }
+ },
+ {
+ "key": {
+ "symbol": "status"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Disputed"
+ }
+ ]
+ }
+ }
+ ]
+ }
}
},
"ext": "v0"
},
- 6311999
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
- },
- "durability": "temporary"
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
}
},
[
@@ -207,28 +346,56 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
}
- },
- "durability": "temporary",
- "val": "void"
+ }
}
},
"ext": "v0"
},
- 6311999
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"ledger_key_nonce": {
- "nonce": 5541220902715666415
+ "nonce": 801925984706572462
}
},
"durability": "temporary"
@@ -240,10 +407,10 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"ledger_key_nonce": {
- "nonce": 5541220902715666415
+ "nonce": 801925984706572462
}
},
"durability": "temporary",
@@ -260,16 +427,11 @@
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
},
- "durability": "persistent"
+ "durability": "temporary"
}
},
[
@@ -280,62 +442,29 @@
"ext": "v0",
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
},
- "durability": "persistent",
- "val": {
- "vec": [
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c"
- }
- }
- ]
- }
- ]
- }
+ "durability": "temporary",
+ "val": "void"
}
},
"ext": "v0"
},
- 150000
+ 6311999
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
- "vec": [
- {
- "symbol": "Deliverable"
- },
- {
- "u64": 1
- }
- ]
+ "ledger_key_nonce": {
+ "nonce": 2032731177588607455
+ }
},
- "durability": "persistent"
+ "durability": "temporary"
}
},
[
@@ -344,43 +473,31 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "vec": [
- {
- "symbol": "Deliverable"
- },
- {
- "u64": 1
- }
- ]
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 2032731177588607455
+ }
},
- "durability": "persistent",
- "val": {
- "bytes": "516d44656c6976657261626c65"
- }
+ "durability": "temporary",
+ "val": "void"
}
},
"ext": "v0"
},
- 150000
+ 6311999
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
- "vec": [
- {
- "symbol": "Job"
- },
- {
- "u64": 1
- }
- ]
+ "ledger_key_nonce": {
+ "nonce": 4837995959683129791
+ }
},
- "durability": "persistent"
+ "durability": "temporary"
}
},
[
@@ -389,82 +506,31 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
- "vec": [
- {
- "symbol": "Job"
- },
- {
- "u64": 1
- }
- ]
+ "ledger_key_nonce": {
+ "nonce": 4837995959683129791
+ }
},
- "durability": "persistent",
- "val": {
- "map": [
- {
- "key": {
- "symbol": "budget_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 5000
- }
- }
- },
- {
- "key": {
- "symbol": "client"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "metadata_hash"
- },
- "val": {
- "bytes": "516d48617368"
- }
- },
- {
- "key": {
- "symbol": "status"
- },
- "val": {
- "vec": [
- {
- "symbol": "Disputed"
- }
- ]
- }
- }
- ]
- }
+ "durability": "temporary",
+ "val": "void"
}
},
"ext": "v0"
},
- 150000
+ 6311999
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": "ledger_key_contract_instance",
- "durability": "persistent"
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
}
},
[
@@ -473,22 +539,19 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": "ledger_key_contract_instance",
- "durability": "persistent",
- "val": {
- "contract_instance": {
- "executable": {
- "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
- },
- "storage": null
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
}
- }
+ },
+ "durability": "temporary",
+ "val": "void"
}
},
"ext": "v0"
},
- 4095
+ 6311999
]
],
[
@@ -527,7 +590,54 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -539,7 +649,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -547,8 +657,14 @@
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -560,7 +676,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -590,7 +706,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -602,10 +718,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "bytes": "516d50"
},
{
- "bytes": "516d50726f706f73616c"
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -617,7 +739,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -636,7 +758,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -652,7 +774,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50"
}
},
{
@@ -660,7 +782,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -673,7 +795,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -703,7 +825,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "accept_bid"
@@ -715,10 +837,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -730,7 +852,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -749,7 +871,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -757,7 +879,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -773,7 +895,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -786,7 +908,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -816,7 +938,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_deliverable"
@@ -828,7 +950,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
"bytes": "516d44656c6976657261626c65"
@@ -843,63 +965,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "string": "job_registry"
- },
- {
- "string": "DeliverableSubmitted"
- }
- ],
- "data": {
- "map": [
- {
- "key": {
- "symbol": "deliverable_hash"
- },
- "val": {
- "bytes": "516d44656c6976657261626c65"
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "job_id"
- },
- "val": {
- "u64": 1
- }
- },
- {
- "key": {
- "symbol": "timestamp"
- },
- "val": {
- "u64": 0
- }
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -929,42 +995,19 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "mark_disputed"
}
],
- "data": {
- "u64": 1
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "string": "job_registry"
- },
- {
- "string": "Disputed"
- }
- ],
"data": {
"vec": [
{
"u64": 1
},
{
- "u64": 0
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -976,7 +1019,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1006,7 +1049,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "get_job"
@@ -1023,7 +1066,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1037,6 +1080,14 @@
],
"data": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -1044,7 +1095,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
}
},
@@ -1053,7 +1104,15 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
}
},
{
@@ -1061,7 +1120,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
diff --git a/contracts/job_registry/test_snapshots/test/test_mark_disputed_from_open_fails.1.json b/contracts/job_registry/test_snapshots/test/test_mark_disputed_from_open_fails.1.json
index 88c19429..759bf68a 100644
--- a/contracts/job_registry/test_snapshots/test/test_mark_disputed_from_open_fails.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_mark_disputed_from_open_fails.1.json
@@ -1,23 +1,24 @@
{
"generators": {
- "address": 2,
+ "address": 3,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -25,8 +26,14 @@
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -40,7 +47,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -51,39 +58,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
"key": {
"vec": [
{
@@ -103,7 +77,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -117,6 +91,14 @@
"durability": "persistent",
"val": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -124,7 +106,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
}
},
@@ -133,7 +115,15 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
}
},
{
@@ -168,13 +158,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -185,7 +175,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -193,7 +183,32 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
}
}
}
@@ -203,6 +218,39 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -239,7 +287,54 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -251,7 +346,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -259,8 +354,14 @@
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -272,7 +373,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -302,14 +403,21 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "mark_disputed"
}
],
"data": {
- "u64": 1
+ "vec": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ ]
}
}
}
@@ -319,22 +427,54 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_return"
+ "symbol": "error"
},
{
- "symbol": "mark_disputed"
+ "error": {
+ "contract": 12
+ }
}
],
"data": {
- "error": {
- "contract": 5
+ "vec": [
+ {
+ "string": "failing with contract error"
+ },
+ {
+ "u32": 12
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 12
+ }
}
+ ],
+ "data": {
+ "string": "escalating error to panic"
}
}
}
@@ -344,7 +484,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -354,12 +494,12 @@
},
{
"error": {
- "contract": 5
+ "contract": 12
}
}
],
"data": {
- "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err"
+ "string": "caught error from function"
}
}
}
@@ -379,7 +519,7 @@
},
{
"error": {
- "contract": 5
+ "contract": 12
}
}
],
@@ -395,6 +535,9 @@
"vec": [
{
"u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
]
}
@@ -418,7 +561,7 @@
},
{
"error": {
- "contract": 5
+ "contract": 12
}
}
],
diff --git a/contracts/job_registry/test_snapshots/test/test_mark_disputed_from_open_panics.1.json b/contracts/job_registry/test_snapshots/test/test_mark_disputed_from_open_panics.1.json
index 26431f4d..759bf68a 100644
--- a/contracts/job_registry/test_snapshots/test/test_mark_disputed_from_open_panics.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_mark_disputed_from_open_panics.1.json
@@ -1,42 +1,24 @@
{
"generators": {
- "address": 4,
+ "address": 3,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -44,14 +26,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -65,7 +47,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -76,117 +58,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "BidCount"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "BidCount"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "u32": 0
- }
- }
- },
- "ext": "v0"
- },
- 4095
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -206,7 +77,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -225,7 +96,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -235,7 +106,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
}
},
@@ -244,7 +115,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -252,7 +123,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
@@ -293,7 +164,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -304,7 +175,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -322,7 +193,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -347,6 +218,39 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -383,34 +287,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -420,7 +304,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -450,7 +334,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -462,7 +346,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -470,14 +354,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -489,30 +373,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "jobpost"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -542,14 +403,21 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "mark_disputed"
}
],
"data": {
- "u64": 1
+ "vec": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ ]
}
}
}
@@ -559,7 +427,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -591,7 +459,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -616,7 +484,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -667,6 +535,9 @@
"vec": [
{
"u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
]
}
diff --git a/contracts/job_registry/test_snapshots/test/test_multiple_bids_on_same_job.1.json b/contracts/job_registry/test_snapshots/test/test_multiple_bids_on_same_job.1.json
index 53236257..0cf0dc2f 100644
--- a/contracts/job_registry/test_snapshots/test/test_multiple_bids_on_same_job.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_multiple_bids_on_same_job.1.json
@@ -1,23 +1,24 @@
{
"generators": {
- "address": 7,
+ "address": 5,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -25,33 +26,14 @@
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "u64": 0
},
{
- "bytes": "516d50726f706f73616c31"
+ "u64": 0
}
]
}
@@ -66,7 +48,7 @@
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
@@ -76,32 +58,13 @@
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c32"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ "bytes": "516d50726f7031"
},
{
- "bytes": "516d50726f706f73616c33"
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -112,46 +75,27 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
- },
- {
- "bytes": "516d50726f706f73616c34"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 1
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
+ "bytes": "516d50726f7032"
},
{
- "bytes": "516d50726f706f73616c35"
+ "i128": {
+ "hi": 0,
+ "lo": 600
+ }
}
]
}
@@ -165,7 +109,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -176,39 +120,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
"key": {
"vec": [
{
@@ -228,7 +139,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -242,26 +153,6 @@
"durability": "persistent",
"val": {
"vec": [
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c31"
- }
- }
- ]
- },
{
"map": [
{
@@ -277,7 +168,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c32"
+ "bytes": "516d50726f7031"
}
}
]
@@ -297,47 +188,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c33"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c34"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c35"
+ "bytes": "516d50726f7032"
}
}
]
@@ -348,13 +199,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -374,7 +225,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -388,6 +239,14 @@
"durability": "persistent",
"val": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -395,7 +254,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
}
},
@@ -404,7 +263,15 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
}
},
{
@@ -439,13 +306,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -456,7 +323,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -464,7 +331,32 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
}
}
}
@@ -480,7 +372,7 @@
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"ledger_key_nonce": {
- "nonce": 5541220902715666415
+ "nonce": 801925984706572462
}
},
"durability": "temporary"
@@ -495,7 +387,7 @@
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"ledger_key_nonce": {
- "nonce": 5541220902715666415
+ "nonce": 801925984706572462
}
},
"durability": "temporary",
@@ -513,7 +405,7 @@
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"ledger_key_nonce": {
- "nonce": 1033654523790656264
+ "nonce": 5541220902715666415
}
},
"durability": "temporary"
@@ -528,7 +420,7 @@
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"ledger_key_nonce": {
- "nonce": 1033654523790656264
+ "nonce": 5541220902715666415
}
},
"durability": "temporary",
@@ -546,7 +438,7 @@
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
"key": {
"ledger_key_nonce": {
- "nonce": 4837995959683129791
+ "nonce": 1033654523790656264
}
},
"durability": "temporary"
@@ -561,73 +453,7 @@
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
"key": {
"ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 2032731177588607455
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 2032731177588607455
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4270020994084947596
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4270020994084947596
+ "nonce": 1033654523790656264
}
},
"durability": "temporary",
@@ -675,30 +501,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "post_job"
+ "symbol": "initialize"
}
],
"data": {
- "vec": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- },
- {
- "bytes": "516d48617368"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 5000
- }
- }
- ]
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -708,7 +518,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -717,7 +527,7 @@
"symbol": "fn_return"
},
{
- "symbol": "post_job"
+ "symbol": "initialize"
}
],
"data": "void"
@@ -738,10 +548,10 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "submit_bid"
+ "symbol": "post_job"
}
],
"data": {
@@ -753,63 +563,19 @@
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d50726f706f73616c31"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "string": "job_registry"
- },
- {
- "string": "BidSubmitted"
- }
- ],
- "data": {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
+ "bytes": "516d48617368"
},
{
- "key": {
- "symbol": "job_id"
- },
- "val": {
- "u64": 1
+ "i128": {
+ "hi": 0,
+ "lo": 1000
}
},
{
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c31"
- }
+ "u64": 0
},
{
- "key": {
- "symbol": "timestamp"
- },
- "val": {
- "u64": 0
- }
+ "u64": 0
}
]
}
@@ -821,7 +587,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -830,7 +596,7 @@
"symbol": "fn_return"
},
{
- "symbol": "submit_bid"
+ "symbol": "post_job"
}
],
"data": "void"
@@ -851,7 +617,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -866,62 +632,12 @@
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c32"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "string": "job_registry"
- },
- {
- "string": "BidSubmitted"
- }
- ],
- "data": {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
- }
- },
- {
- "key": {
- "symbol": "job_id"
- },
- "val": {
- "u64": 1
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c32"
- }
+ "bytes": "516d50726f7031"
},
{
- "key": {
- "symbol": "timestamp"
- },
- "val": {
- "u64": 0
+ "i128": {
+ "hi": 0,
+ "lo": 500
}
}
]
@@ -934,64 +650,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "submit_bid"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
- },
- {
- "symbol": "submit_bid"
- }
- ],
- "data": {
- "vec": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- },
- {
- "bytes": "516d50726f706f73616c33"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -1010,7 +669,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -1026,7 +685,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c33"
+ "bytes": "516d50726f7031"
}
},
{
@@ -1034,7 +693,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -1047,7 +706,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1077,7 +736,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -1089,65 +748,15 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
- },
- {
- "bytes": "516d50726f706f73616c34"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "string": "job_registry"
- },
- {
- "string": "BidSubmitted"
- }
- ],
- "data": {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
- }
- },
- {
- "key": {
- "symbol": "job_id"
- },
- "val": {
- "u64": 1
- }
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c34"
- }
+ "bytes": "516d50726f7032"
},
{
- "key": {
- "symbol": "timestamp"
- },
- "val": {
- "u64": 0
+ "i128": {
+ "hi": 0,
+ "lo": 600
}
}
]
@@ -1160,64 +769,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "submit_bid"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
- },
- {
- "symbol": "submit_bid"
- }
- ],
- "data": {
- "vec": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
- },
- {
- "bytes": "516d50726f706f73616c35"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -1236,7 +788,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
}
},
{
@@ -1252,7 +804,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c35"
+ "bytes": "516d50726f7032"
}
},
{
@@ -1260,7 +812,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -1273,7 +825,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1303,7 +855,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "get_bids"
@@ -1320,7 +872,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1334,26 +886,6 @@
],
"data": {
"vec": [
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c31"
- }
- }
- ]
- },
{
"map": [
{
@@ -1369,7 +901,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c32"
+ "bytes": "516d50726f7031"
}
}
]
@@ -1389,47 +921,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c33"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c34"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "516d50726f706f73616c35"
+ "bytes": "516d50726f7032"
}
}
]
diff --git a/contracts/job_registry/test_snapshots/test/test_multiple_jobs_and_bids.1.json b/contracts/job_registry/test_snapshots/test/test_multiple_jobs_and_bids.1.json
index 747bc6e0..9b768fda 100644
--- a/contracts/job_registry/test_snapshots/test/test_multiple_jobs_and_bids.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_multiple_jobs_and_bids.1.json
@@ -1,32 +1,39 @@
{
"generators": {
- "address": 6,
+ "address": 5,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d48617368"
+ "bytes": "516d4a31"
},
{
"i128": {
"hi": 0,
"lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -37,77 +44,33 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 2
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d48617368"
+ "bytes": "516d4a32"
},
{
"i128": {
"hi": 0,
"lo": 2000
}
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- },
- {
- "bytes": "5031"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 2
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "u64": 0
},
{
- "bytes": "5032"
+ "u64": 0
}
]
}
@@ -122,7 +85,7 @@
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
@@ -132,32 +95,13 @@
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "5031"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 2
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ "bytes": "516d5031"
},
{
- "bytes": "5032"
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -172,42 +116,23 @@
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
- "u64": 1
+ "u64": 2
},
{
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "bytes": "5031"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "function_name": "submit_bid",
- "args": [
- {
- "u64": 2
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ "bytes": "516d5032"
},
{
- "bytes": "5032"
+ "i128": {
+ "hi": 0,
+ "lo": 1500
+ }
}
]
}
@@ -222,7 +147,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -234,11 +159,16 @@
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
+ "vec": [
+ {
+ "symbol": "Bids"
+ },
+ {
+ "u64": 1
+ }
+ ]
},
- "durability": "temporary"
+ "durability": "persistent"
}
},
[
@@ -249,62 +179,62 @@
"ext": "v0",
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
+ "vec": [
+ {
+ "symbol": "Bids"
+ },
+ {
+ "u64": 1
+ }
+ ]
},
- "durability": "temporary",
- "val": "void"
+ "durability": "persistent",
+ "val": {
+ "vec": [
+ {
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5031"
+ }
+ }
+ ]
+ }
+ ]
+ }
}
},
"ext": "v0"
},
- 6311999
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
+ "vec": [
+ {
+ "symbol": "Bids"
},
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
+ {
+ "u64": 2
+ }
+ ]
},
- "durability": "temporary"
+ "durability": "persistent"
}
},
[
@@ -313,31 +243,64 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
+ "vec": [
+ {
+ "symbol": "Bids"
+ },
+ {
+ "u64": 2
+ }
+ ]
},
- "durability": "temporary",
- "val": "void"
+ "durability": "persistent",
+ "val": {
+ "vec": [
+ {
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5032"
+ }
+ }
+ ]
+ }
+ ]
+ }
}
},
"ext": "v0"
},
- 6311999
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 1
+ }
+ ]
},
- "durability": "temporary"
+ "durability": "persistent"
}
},
[
@@ -346,28 +309,261 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 1
+ }
+ ]
},
- "durability": "temporary",
- "val": "void"
+ "durability": "persistent",
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "budget_stroops"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": "void"
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": {
+ "bytes": "516d4a31"
+ }
+ },
+ {
+ "key": {
+ "symbol": "status"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Open"
+ }
+ ]
+ }
+ }
+ ]
+ }
}
},
"ext": "v0"
},
- 6311999
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 2
+ }
+ ]
+ },
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 2
+ }
+ ]
+ },
+ "durability": "persistent",
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "budget_stroops"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 2000
+ }
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": "void"
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": {
+ "bytes": "516d4a32"
+ }
+ },
+ {
+ "key": {
+ "symbol": "status"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Open"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 3
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"ledger_key_nonce": {
- "nonce": 2032731177588607455
+ "nonce": 801925984706572462
}
},
"durability": "temporary"
@@ -379,10 +575,10 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"ledger_key_nonce": {
- "nonce": 2032731177588607455
+ "nonce": 801925984706572462
}
},
"durability": "temporary",
@@ -397,10 +593,10 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"ledger_key_nonce": {
- "nonce": 4270020994084947596
+ "nonce": 5541220902715666415
}
},
"durability": "temporary"
@@ -412,10 +608,10 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"ledger_key_nonce": {
- "nonce": 4270020994084947596
+ "nonce": 5541220902715666415
}
},
"durability": "temporary",
@@ -430,10 +626,10 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"ledger_key_nonce": {
- "nonce": 6277191135259896685
+ "nonce": 1033654523790656264
}
},
"durability": "temporary"
@@ -445,10 +641,10 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"ledger_key_nonce": {
- "nonce": 6277191135259896685
+ "nonce": 1033654523790656264
}
},
"durability": "temporary",
@@ -466,7 +662,7 @@
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
"key": {
"ledger_key_nonce": {
- "nonce": 8370022561469687789
+ "nonce": 4837995959683129791
}
},
"durability": "temporary"
@@ -481,7 +677,7 @@
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
"key": {
"ledger_key_nonce": {
- "nonce": 8370022561469687789
+ "nonce": 4837995959683129791
}
},
"durability": "temporary",
@@ -495,779 +691,48 @@
],
[
{
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent"
+ "contract_code": {
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
}
},
[
{
"last_modified_ledger_seq": 0,
"data": {
- "contract_data": {
+ "contract_code": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "vec": [
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "5031"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "5031"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "5031"
- }
- }
- ]
- }
- ]
- }
- }
- },
- "ext": "v0"
- },
- 150000
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 2
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 2
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "vec": [
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "5032"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "5032"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "5032"
- }
- }
- ]
- }
- ]
- }
- }
- },
- "ext": "v0"
- },
- 150000
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": {
- "vec": [
- {
- "symbol": "Job"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": {
- "vec": [
- {
- "symbol": "Job"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "map": [
- {
- "key": {
- "symbol": "budget_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- },
- {
- "key": {
- "symbol": "client"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": "void"
- },
- {
- "key": {
- "symbol": "metadata_hash"
- },
- "val": {
- "bytes": "516d48617368"
- }
- },
- {
- "key": {
- "symbol": "status"
- },
- "val": {
- "vec": [
- {
- "symbol": "Open"
- }
- ]
- }
- }
- ]
- }
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "code": ""
}
},
"ext": "v0"
},
- 150000
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": {
- "vec": [
- {
- "symbol": "Job"
- },
- {
- "u64": 2
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": {
- "vec": [
- {
- "symbol": "Job"
- },
- {
- "u64": 2
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "map": [
- {
- "key": {
- "symbol": "budget_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 2000
- }
- }
- },
- {
- "key": {
- "symbol": "client"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": "void"
- },
- {
- "key": {
- "symbol": "metadata_hash"
- },
- "val": {
- "bytes": "516d48617368"
- }
- },
- {
- "key": {
- "symbol": "status"
- },
- "val": {
- "vec": [
- {
- "symbol": "Open"
- }
- ]
- }
- }
- ]
- }
- }
- },
- "ext": "v0"
- },
- 150000
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": "ledger_key_contract_instance",
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": "ledger_key_contract_instance",
- "durability": "persistent",
- "val": {
- "contract_instance": {
- "executable": {
- "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
- },
- "storage": null
- }
- }
- }
- },
- "ext": "v0"
- },
- 4095
- ]
- ],
- [
- {
- "contract_code": {
- "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_code": {
- "ext": "v0",
- "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
- "code": ""
- }
- },
- "ext": "v0"
- },
- 4095
- ]
- ]
- ]
- },
- "events": [
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000006"
- },
- {
- "symbol": "post_job"
- }
- ],
- "data": {
- "vec": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- },
- {
- "bytes": "516d48617368"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 1000
- }
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "post_job"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000006"
- },
- {
- "symbol": "post_job"
- }
- ],
- "data": {
- "vec": [
- {
- "u64": 2
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "bytes": "516d48617368"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 2000
- }
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "post_job"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000006"
- },
- {
- "symbol": "submit_bid"
- }
- ],
- "data": {
- "vec": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- },
- {
- "bytes": "5031"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "string": "job_registry"
- },
- {
- "string": "BidSubmitted"
- }
- ],
- "data": {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- },
- {
- "key": {
- "symbol": "job_id"
- },
- "val": {
- "u64": 1
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "5031"
- }
- },
- {
- "key": {
- "symbol": "timestamp"
- },
- "val": {
- "u64": 0
- }
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "submit_bid"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000006"
- },
- {
- "symbol": "submit_bid"
- }
- ],
- "data": {
- "vec": [
- {
- "u64": 2
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- },
- {
- "bytes": "5032"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "string": "job_registry"
- },
- {
- "string": "BidSubmitted"
- }
- ],
- "data": {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- },
- {
- "key": {
- "symbol": "job_id"
- },
- "val": {
- "u64": 2
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "5032"
- }
- },
- {
- "key": {
- "symbol": "timestamp"
- },
- "val": {
- "u64": 0
- }
- }
- ]
+ 4095
+ ]
+ ]
+ ]
+ },
+ "events": [
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -1277,7 +742,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1286,7 +751,7 @@
"symbol": "fn_return"
},
{
- "symbol": "submit_bid"
+ "symbol": "initialize"
}
],
"data": "void"
@@ -1307,10 +772,10 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000006"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "submit_bid"
+ "symbol": "post_job"
}
],
"data": {
@@ -1319,66 +784,22 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "5031"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "string": "job_registry"
- },
- {
- "string": "BidSubmitted"
- }
- ],
- "data": {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
- }
+ "bytes": "516d4a31"
},
{
- "key": {
- "symbol": "job_id"
- },
- "val": {
- "u64": 1
+ "i128": {
+ "hi": 0,
+ "lo": 1000
}
},
{
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "5031"
- }
+ "u64": 0
},
{
- "key": {
- "symbol": "timestamp"
- },
- "val": {
- "u64": 0
- }
+ "u64": 0
}
]
}
@@ -1390,7 +811,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1399,7 +820,7 @@
"symbol": "fn_return"
},
{
- "symbol": "submit_bid"
+ "symbol": "post_job"
}
],
"data": "void"
@@ -1420,10 +841,10 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000006"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "submit_bid"
+ "symbol": "post_job"
}
],
"data": {
@@ -1432,66 +853,22 @@
"u64": 2
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "5032"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "string": "job_registry"
- },
- {
- "string": "BidSubmitted"
- }
- ],
- "data": {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
- }
+ "bytes": "516d4a32"
},
{
- "key": {
- "symbol": "job_id"
- },
- "val": {
- "u64": 2
+ "i128": {
+ "hi": 0,
+ "lo": 2000
}
},
{
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "5032"
- }
+ "u64": 0
},
{
- "key": {
- "symbol": "timestamp"
- },
- "val": {
- "u64": 0
- }
+ "u64": 0
}
]
}
@@ -1503,7 +880,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1512,7 +889,7 @@
"symbol": "fn_return"
},
{
- "symbol": "submit_bid"
+ "symbol": "post_job"
}
],
"data": "void"
@@ -1533,7 +910,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000006"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -1545,10 +922,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "5031"
+ "bytes": "516d5031"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -1560,7 +943,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -1579,7 +962,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -1595,7 +978,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "5031"
+ "bytes": "516d5031"
}
},
{
@@ -1603,7 +986,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -1616,7 +999,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1646,7 +1029,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000006"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -1661,7 +1044,13 @@
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "bytes": "5032"
+ "bytes": "516d5032"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1500
+ }
}
]
}
@@ -1673,7 +1062,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -1708,7 +1097,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "5032"
+ "bytes": "516d5032"
}
},
{
@@ -1716,7 +1105,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -1729,7 +1118,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1759,10 +1148,10 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000006"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "get_bids"
+ "symbol": "get_bids_count"
}
],
"data": {
@@ -1776,7 +1165,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1785,72 +1174,11 @@
"symbol": "fn_return"
},
{
- "symbol": "get_bids"
+ "symbol": "get_bids_count"
}
],
"data": {
- "vec": [
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "5031"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "5031"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "5031"
- }
- }
- ]
- }
- ]
+ "u32": 1
}
}
}
@@ -1869,10 +1197,10 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000006"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "get_bids"
+ "symbol": "get_bids_count"
}
],
"data": {
@@ -1886,7 +1214,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1895,72 +1223,11 @@
"symbol": "fn_return"
},
{
- "symbol": "get_bids"
+ "symbol": "get_bids_count"
}
],
"data": {
- "vec": [
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "5032"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "5032"
- }
- }
- ]
- },
- {
- "map": [
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- }
- },
- {
- "key": {
- "symbol": "proposal_hash"
- },
- "val": {
- "bytes": "5032"
- }
- }
- ]
- }
- ]
+ "u32": 1
}
}
}
diff --git a/contracts/job_registry/test_snapshots/test/test_multiple_jobs_isolated.1.json b/contracts/job_registry/test_snapshots/test/test_multiple_jobs_isolated.1.json
new file mode 100644
index 00000000..ce829c51
--- /dev/null
+++ b/contracts/job_registry/test_snapshots/test/test_multiple_jobs_isolated.1.json
@@ -0,0 +1,1637 @@
+{
+ "generators": {
+ "address": 6,
+ "nonce": 0
+ },
+ "auth": [
+ [],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "post_job",
+ "args": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "bytes": "516d4a31"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "post_job",
+ "args": [
+ {
+ "u64": 2
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "bytes": "516d4a32"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 2000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "submit_bid",
+ "args": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ },
+ {
+ "bytes": "516d5031"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 800
+ }
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "submit_bid",
+ "args": [
+ {
+ "u64": 2
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
+ },
+ {
+ "bytes": "516d5032"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1700
+ }
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "accept_bid",
+ "args": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ [],
+ [],
+ [],
+ []
+ ],
+ "ledger": {
+ "protocol_version": 21,
+ "sequence_number": 0,
+ "timestamp": 1700000000,
+ "network_id": "0000000000000000000000000000000000000000000000000000000000000000",
+ "base_reserve": 0,
+ "min_persistent_entry_ttl": 4096,
+ "min_temp_entry_ttl": 16,
+ "max_entry_ttl": 6312000,
+ "ledger_entries": [
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Bids"
+ },
+ {
+ "u64": 1
+ }
+ ]
+ },
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Bids"
+ },
+ {
+ "u64": 1
+ }
+ ]
+ },
+ "durability": "persistent",
+ "val": {
+ "vec": [
+ {
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5031"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Bids"
+ },
+ {
+ "u64": 2
+ }
+ ]
+ },
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Bids"
+ },
+ {
+ "u64": 2
+ }
+ ]
+ },
+ "durability": "persistent",
+ "val": {
+ "vec": [
+ {
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5032"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 1
+ }
+ ]
+ },
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 1
+ }
+ ]
+ },
+ "durability": "persistent",
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "budget_stroops"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ }
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": {
+ "bytes": "516d4a31"
+ }
+ },
+ {
+ "key": {
+ "symbol": "status"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Assigned"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 2
+ }
+ ]
+ },
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 2
+ }
+ ]
+ },
+ "durability": "persistent",
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "budget_stroops"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 2000
+ }
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": "void"
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": {
+ "bytes": "516d4a32"
+ }
+ },
+ {
+ "key": {
+ "symbol": "status"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Open"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 3
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 2032731177588607455
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 2032731177588607455
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 4837995959683129791
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 4837995959683129791
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_code": {
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_code": {
+ "ext": "v0",
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "code": ""
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ]
+ ]
+ },
+ "events": [
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "post_job"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "bytes": "516d4a31"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "post_job"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "post_job"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "u64": 2
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "bytes": "516d4a32"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 2000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "post_job"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "submit_bid"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ },
+ {
+ "bytes": "516d5031"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 800
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "job_registry"
+ },
+ {
+ "string": "BidSubmitted"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ }
+ },
+ {
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5031"
+ }
+ },
+ {
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "submit_bid"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "submit_bid"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "u64": 2
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
+ },
+ {
+ "bytes": "516d5032"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1700
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "job_registry"
+ },
+ {
+ "string": "BidSubmitted"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 2
+ }
+ },
+ {
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d5032"
+ }
+ },
+ {
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "submit_bid"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "accept_bid"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "job_registry"
+ },
+ {
+ "string": "BidAccepted"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ }
+ },
+ {
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "accept_bid"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "get_job"
+ }
+ ],
+ "data": {
+ "u64": 1
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_job"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "budget_stroops"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ }
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": {
+ "bytes": "516d4a31"
+ }
+ },
+ {
+ "key": {
+ "symbol": "status"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Assigned"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "get_job"
+ }
+ ],
+ "data": {
+ "u64": 2
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_job"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "budget_stroops"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 2000
+ }
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": "void"
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": {
+ "bytes": "516d4a32"
+ }
+ },
+ {
+ "key": {
+ "symbol": "status"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Open"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "get_bids_count"
+ }
+ ],
+ "data": {
+ "u64": 1
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_bids_count"
+ }
+ ],
+ "data": {
+ "u32": 1
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "get_bids_count"
+ }
+ ],
+ "data": {
+ "u64": 2
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_bids_count"
+ }
+ ],
+ "data": {
+ "u32": 1
+ }
+ }
+ }
+ },
+ "failed_call": false
+ }
+ ]
+}
\ No newline at end of file
diff --git a/contracts/job_registry/test_snapshots/test/test_oversized_cid_panics_with_invalid_hash.1.json b/contracts/job_registry/test_snapshots/test/test_oversized_cid_panics_with_invalid_hash.1.json
index f5252812..2b273c5d 100644
--- a/contracts/job_registry/test_snapshots/test/test_oversized_cid_panics_with_invalid_hash.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_oversized_cid_panics_with_invalid_hash.1.json
@@ -1,34 +1,16 @@
{
"generators": {
- "address": 4,
+ "address": 3,
"nonce": 0
},
"auth": [
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
+ [],
[]
],
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -39,39 +21,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -82,7 +31,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -100,7 +49,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -161,14 +110,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -178,54 +127,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "vec": [
- {
- "string": "JobRegistry initialized with admin: {}"
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "init"
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -255,7 +157,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -267,16 +169,22 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "61616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
},
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -288,7 +196,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -320,7 +228,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -345,7 +253,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -398,16 +306,22 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "61616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
},
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
diff --git a/contracts/job_registry/test_snapshots/test/test_post_job_auto_allocates_sequential_ids.1.json b/contracts/job_registry/test_snapshots/test/test_post_job_auto_allocates_sequential_ids.1.json
index 4d4caf7a..fe32a0c8 100644
--- a/contracts/job_registry/test_snapshots/test/test_post_job_auto_allocates_sequential_ids.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_post_job_auto_allocates_sequential_ids.1.json
@@ -1,39 +1,21 @@
{
"generators": {
- "address": 4,
+ "address": 3,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job_auto",
"args": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d4861736831"
@@ -41,14 +23,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -59,15 +41,15 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job_auto",
"args": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d4861736832"
@@ -75,14 +57,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 2000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -90,13 +72,12 @@
"sub_invocations": []
}
]
- ],
- []
+ ]
],
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -107,195 +88,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "BidCount"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "BidCount"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "u32": 0
- }
- }
- },
- "ext": "v0"
- },
- 4095
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "BidCount"
- },
- {
- "u64": 2
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "BidCount"
- },
- {
- "u64": 2
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "u32": 0
- }
- }
- },
- "ext": "v0"
- },
- 4095
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -315,7 +107,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -334,7 +126,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -344,7 +136,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
}
},
@@ -353,7 +145,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -361,7 +153,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
@@ -402,7 +194,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -422,7 +214,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -441,7 +233,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -451,7 +243,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 2000
}
}
},
@@ -460,7 +252,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -468,7 +260,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
@@ -509,7 +301,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -520,7 +312,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -538,7 +330,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -563,6 +355,72 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -599,14 +457,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -616,27 +474,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -666,7 +504,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job_auto"
@@ -675,7 +513,7 @@
"data": {
"vec": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d4861736831"
@@ -683,14 +521,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -702,7 +540,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -734,7 +572,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job_auto"
@@ -743,7 +581,7 @@
"data": {
"vec": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d4861736832"
@@ -751,14 +589,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 2000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -770,7 +608,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -789,53 +627,6 @@
}
},
"failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
- },
- {
- "symbol": "get_next_job_id"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "get_next_job_id"
- }
- ],
- "data": {
- "u64": 3
- }
- }
- }
- },
- "failed_call": false
}
]
}
\ No newline at end of file
diff --git a/contracts/job_registry/test_snapshots/test/test_post_job_before_initialize_panics.1.json b/contracts/job_registry/test_snapshots/test/test_post_job_before_initialize_panics.1.json
index d8ac870c..1df1ff43 100644
--- a/contracts/job_registry/test_snapshots/test/test_post_job_before_initialize_panics.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_post_job_before_initialize_panics.1.json
@@ -1,15 +1,51 @@
{
"generators": {
- "address": 4,
+ "address": 2,
"nonce": 0
},
"auth": [
- []
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "post_job",
+ "args": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "bytes": "516d48617368"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ]
],
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -19,7 +55,114 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 1
+ }
+ ]
+ },
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 1
+ }
+ ]
+ },
+ "durability": "persistent",
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "budget_stroops"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": "void"
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": {
+ "bytes": "516d48617368"
+ }
+ },
+ {
+ "key": {
+ "symbol": "status"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Open"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -30,7 +173,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -38,7 +181,20 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
}
}
}
@@ -48,6 +204,39 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -84,7 +273,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -104,153 +293,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
- },
- {
- "u64": 60
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "error"
- },
- {
- "error": {
- "contract": 2
- }
- }
- ],
- "data": {
- "vec": [
- {
- "string": "failing with contract error"
- },
- {
- "u32": 2
- }
- ]
- }
- }
- }
- },
- "failed_call": true
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "error"
- },
- {
- "error": {
- "contract": 2
- }
- }
- ],
- "data": {
- "string": "escalating error to panic"
- }
- }
- }
- },
- "failed_call": true
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "error"
- },
- {
- "error": {
- "contract": 2
- }
- }
- ],
- "data": {
- "string": "caught error from function"
- }
- }
- }
- },
- "failed_call": true
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "error"
- },
- {
- "error": {
- "contract": 2
- }
- }
- ],
- "data": {
- "vec": [
- {
- "string": "contract call failed"
- },
- {
- "symbol": "post_job"
+ "u64": 0
},
{
- "vec": [
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "bytes": "516d48617368"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 100000
- }
- },
- {
- "u64": 30
- },
- {
- "u64": 60
- }
- ]
+ "u64": 0
}
]
}
@@ -262,23 +312,19 @@
{
"event": {
"ext": "v0",
- "contract_id": null,
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "error"
+ "symbol": "fn_return"
},
{
- "error": {
- "contract": 2
- }
+ "symbol": "post_job"
}
],
- "data": {
- "string": "escalating error to panic"
- }
+ "data": "void"
}
}
},
diff --git a/contracts/job_registry/test_snapshots/test/test_post_job_with_explicit_id_updates_next_job_id.1.json b/contracts/job_registry/test_snapshots/test/test_post_job_with_explicit_id_updates_next_job_id.1.json
index 00523819..cd7b7b6a 100644
--- a/contracts/job_registry/test_snapshots/test/test_post_job_with_explicit_id_updates_next_job_id.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_post_job_with_explicit_id_updates_next_job_id.1.json
@@ -1,20 +1,39 @@
{
"generators": {
- "address": 4,
+ "address": 3,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "post_job",
"args": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "u64": 10
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "bytes": "516d48617368"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -25,33 +44,30 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "post_job",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "post_job_auto",
"args": [
{
- "u64": 42
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d48617368"
+ "bytes": "516d4861736832"
},
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 2000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -59,13 +75,12 @@
"sub_invocations": []
}
]
- ],
- []
+ ]
],
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -76,79 +91,13 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
- "symbol": "BidCount"
+ "symbol": "Job"
},
{
- "u64": 42
+ "u64": 10
}
]
},
@@ -161,20 +110,82 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
- "symbol": "BidCount"
+ "symbol": "Job"
},
{
- "u64": 42
+ "u64": 10
}
]
},
"durability": "persistent",
"val": {
- "u32": 0
+ "map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "budget_stroops"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": "void"
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": {
+ "bytes": "516d48617368"
+ }
+ },
+ {
+ "key": {
+ "symbol": "status"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Open"
+ }
+ ]
+ }
+ }
+ ]
}
}
},
@@ -186,14 +197,14 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
"symbol": "Job"
},
{
- "u64": 42
+ "u64": 11
}
]
},
@@ -206,14 +217,14 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
"symbol": "Job"
},
{
- "u64": 42
+ "u64": 11
}
]
},
@@ -225,7 +236,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 0
}
},
{
@@ -235,7 +246,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 2000
}
}
},
@@ -244,7 +255,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -252,7 +263,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 0
}
},
{
@@ -266,7 +277,7 @@
"symbol": "metadata_hash"
},
"val": {
- "bytes": "516d48617368"
+ "bytes": "516d4861736832"
}
},
{
@@ -293,7 +304,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -304,7 +315,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -322,7 +333,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -334,7 +345,7 @@
]
},
"val": {
- "u64": 43
+ "u64": 12
}
}
]
@@ -347,6 +358,72 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -383,34 +460,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -420,7 +477,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -450,7 +507,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -459,10 +516,10 @@
"data": {
"vec": [
{
- "u64": 42
+ "u64": 10
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -470,14 +527,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -489,30 +546,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "jobpost"
- },
- {
- "u64": 42
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -542,13 +576,34 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "get_next_job_id"
+ "symbol": "post_job_auto"
}
],
- "data": "void"
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "bytes": "516d4861736832"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 2000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
+ }
+ ]
+ }
}
}
},
@@ -557,7 +612,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -566,11 +621,11 @@
"symbol": "fn_return"
},
{
- "symbol": "get_next_job_id"
+ "symbol": "post_job_auto"
}
],
"data": {
- "u64": 43
+ "u64": 11
}
}
}
diff --git a/contracts/job_registry/test_snapshots/test/test_post_job_works_without_explicit_initialize.1.json b/contracts/job_registry/test_snapshots/test/test_post_job_works_without_explicit_initialize.1.json
new file mode 100644
index 00000000..49a208a4
--- /dev/null
+++ b/contracts/job_registry/test_snapshots/test/test_post_job_works_without_explicit_initialize.1.json
@@ -0,0 +1,446 @@
+{
+ "generators": {
+ "address": 2,
+ "nonce": 0
+ },
+ "auth": [
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "post_job",
+ "args": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "bytes": "516d48617368"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ []
+ ],
+ "ledger": {
+ "protocol_version": 21,
+ "sequence_number": 0,
+ "timestamp": 1700000000,
+ "network_id": "0000000000000000000000000000000000000000000000000000000000000000",
+ "base_reserve": 0,
+ "min_persistent_entry_ttl": 4096,
+ "min_temp_entry_ttl": 16,
+ "max_entry_ttl": 6312000,
+ "ledger_entries": [
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 1
+ }
+ ]
+ },
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Job"
+ },
+ {
+ "u64": 1
+ }
+ ]
+ },
+ "durability": "persistent",
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "budget_stroops"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": "void"
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": {
+ "bytes": "516d48617368"
+ }
+ },
+ {
+ "key": {
+ "symbol": "status"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Open"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_code": {
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_code": {
+ "ext": "v0",
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "code": ""
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ]
+ ]
+ },
+ "events": [
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "post_job"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "bytes": "516d48617368"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "post_job"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "get_job"
+ }
+ ],
+ "data": {
+ "u64": 1
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_job"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "budget_stroops"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 1000
+ }
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": "void"
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": {
+ "bytes": "516d48617368"
+ }
+ },
+ {
+ "key": {
+ "symbol": "status"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Open"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ }
+ ]
+}
\ No newline at end of file
diff --git a/contracts/job_registry/test_snapshots/test/test_set_escrow_deployer_round_trip.1.json b/contracts/job_registry/test_snapshots/test/test_set_escrow_deployer_round_trip.1.json
index b49d897d..d8ac6eed 100644
--- a/contracts/job_registry/test_snapshots/test/test_set_escrow_deployer_round_trip.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_set_escrow_deployer_round_trip.1.json
@@ -1,37 +1,22 @@
{
"generators": {
- "address": 4,
+ "address": 3,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "set_upgrade_admin",
"args": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "set_escrow_deployer",
- "args": [
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
{
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
@@ -47,7 +32,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -58,72 +43,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -134,7 +53,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -152,31 +71,31 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
"key": {
"vec": [
{
- "symbol": "EscrowDeployer"
+ "symbol": "NextJobId"
}
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "u64": 1
}
},
{
"key": {
"vec": [
{
- "symbol": "NextJobId"
+ "symbol": "UpgradeAdmin"
}
]
},
"val": {
- "u64": 1
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
}
]
@@ -189,6 +108,39 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -225,14 +177,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -242,54 +194,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "vec": [
- {
- "string": "JobRegistry initialized with admin: {}"
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "init"
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -319,36 +224,16 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "set_escrow_deployer"
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
+ "symbol": "set_upgrade_admin"
}
],
"data": {
"vec": [
{
- "string": "escrow_deployer configured: {}"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
},
{
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
@@ -363,27 +248,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "escrow"
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -392,7 +257,7 @@
"symbol": "fn_return"
},
{
- "symbol": "set_escrow_deployer"
+ "symbol": "set_upgrade_admin"
}
],
"data": "void"
@@ -413,10 +278,10 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "get_escrow_deployer"
+ "symbol": "get_upgrade_admin"
}
],
"data": "void"
@@ -428,7 +293,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -437,7 +302,7 @@
"symbol": "fn_return"
},
{
- "symbol": "get_escrow_deployer"
+ "symbol": "get_upgrade_admin"
}
],
"data": {
diff --git a/contracts/job_registry/test_snapshots/test/test_set_upgrade_admin_requires_current_admin.1.json b/contracts/job_registry/test_snapshots/test/test_set_upgrade_admin_requires_current_admin.1.json
index e772c798..9d27d9f0 100644
--- a/contracts/job_registry/test_snapshots/test/test_set_upgrade_admin_requires_current_admin.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_set_upgrade_admin_requires_current_admin.1.json
@@ -1,34 +1,16 @@
{
"generators": {
- "address": 4,
+ "address": 5,
"nonce": 0
},
"auth": [
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "init_upgrade_admin",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
+ [],
[]
],
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -39,39 +21,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -82,7 +31,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -95,12 +44,24 @@
"key": {
"vec": [
{
- "symbol": "UpgradeAdmin"
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
}
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "u64": 1
}
}
]
@@ -149,14 +110,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "init_upgrade_admin"
+ "symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -166,44 +127,19 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "string": "job_registry"
+ "symbol": "fn_return"
},
{
- "string": "UpgradeAdminSet"
+ "symbol": "initialize"
}
],
- "data": {
- "map": [
- {
- "key": {
- "symbol": "new_admin"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- },
- {
- "key": {
- "symbol": "previous_admin"
- },
- "val": "void"
- },
- {
- "key": {
- "symbol": "timestamp"
- },
- "val": {
- "u64": 0
- }
- }
- ]
- }
+ "data": "void"
}
}
},
@@ -212,19 +148,31 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": null,
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_return"
+ "symbol": "fn_call"
},
{
- "symbol": "init_upgrade_admin"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "set_upgrade_admin"
}
],
- "data": "void"
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ }
+ ]
+ }
}
}
},
@@ -233,55 +181,54 @@
{
"event": {
"ext": "v0",
- "contract_id": null,
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "symbol": "error"
},
{
- "symbol": "set_upgrade_admin"
+ "error": {
+ "contract": 9
+ }
}
],
"data": {
"vec": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "string": "failing with contract error"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "u32": 9
}
]
}
}
}
},
- "failed_call": false
+ "failed_call": true
},
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_return"
+ "symbol": "error"
},
{
- "symbol": "set_upgrade_admin"
+ "error": {
+ "contract": 9
+ }
}
],
"data": {
- "error": {
- "contract": 3
- }
+ "string": "escalating error to panic"
}
}
}
@@ -291,7 +238,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -301,12 +248,12 @@
},
{
"error": {
- "contract": 3
+ "contract": 9
}
}
],
"data": {
- "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err"
+ "string": "caught error from function"
}
}
}
@@ -326,7 +273,7 @@
},
{
"error": {
- "contract": 3
+ "contract": 9
}
}
],
@@ -341,10 +288,10 @@
{
"vec": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
}
]
}
@@ -368,7 +315,7 @@
},
{
"error": {
- "contract": 3
+ "contract": 9
}
}
],
diff --git a/contracts/job_registry/test_snapshots/test/test_submit_bid_after_expiration_panics.1.json b/contracts/job_registry/test_snapshots/test/test_submit_bid_after_expiration_panics.1.json
index 5d5af4fc..8ade8af3 100644
--- a/contracts/job_registry/test_snapshots/test/test_submit_bid_after_expiration_panics.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_submit_bid_after_expiration_panics.1.json
@@ -4,39 +4,21 @@
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -44,14 +26,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 10
},
{
- "u64": 60
+ "u64": 100
}
]
}
@@ -65,7 +47,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 61,
+ "timestamp": 20,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -76,117 +58,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "key": {
- "vec": [
- {
- "symbol": "Bids"
- },
- {
- "u64": 1
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "vec": []
- }
- }
- },
- "ext": "v0"
- },
- 4095
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -206,7 +77,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -225,7 +96,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 30
+ "u64": 10
}
},
{
@@ -235,7 +106,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
}
},
@@ -244,7 +115,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -252,7 +123,7 @@
"symbol": "expires_at"
},
"val": {
- "u64": 60
+ "u64": 100
}
},
{
@@ -293,7 +164,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -304,7 +175,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -322,7 +193,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -347,6 +218,39 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -383,34 +287,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -420,7 +304,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -450,7 +334,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -462,7 +346,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -470,14 +354,14 @@
{
"i128": {
"hi": 0,
- "lo": 100000
+ "lo": 1000
}
},
{
- "u64": 30
+ "u64": 10
},
{
- "u64": 60
+ "u64": 100
}
]
}
@@ -489,30 +373,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "jobpost"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -542,7 +403,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -554,7 +415,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
"bytes": "516d50726f706f73616c"
@@ -562,7 +423,7 @@
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 500
}
}
]
@@ -575,7 +436,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -585,7 +446,7 @@
},
{
"error": {
- "contract": 15
+ "contract": 13
}
}
],
@@ -595,7 +456,7 @@
"string": "failing with contract error"
},
{
- "u32": 15
+ "u32": 13
}
]
}
@@ -607,7 +468,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -617,7 +478,7 @@
},
{
"error": {
- "contract": 15
+ "contract": 13
}
}
],
@@ -632,7 +493,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -642,7 +503,7 @@
},
{
"error": {
- "contract": 15
+ "contract": 13
}
}
],
@@ -667,7 +528,7 @@
},
{
"error": {
- "contract": 15
+ "contract": 13
}
}
],
@@ -685,7 +546,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
"bytes": "516d50726f706f73616c"
@@ -693,7 +554,7 @@
{
"i128": {
"hi": 0,
- "lo": 1000
+ "lo": 500
}
}
]
@@ -718,7 +579,7 @@
},
{
"error": {
- "contract": 15
+ "contract": 13
}
}
],
diff --git a/contracts/job_registry/test_snapshots/test/test_submit_bid_empty_proposal_hash.1.json b/contracts/job_registry/test_snapshots/test/test_submit_bid_empty_proposal_hash.1.json
index aa543661..684f7f59 100644
--- a/contracts/job_registry/test_snapshots/test/test_submit_bid_empty_proposal_hash.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_submit_bid_empty_proposal_hash.1.json
@@ -1,32 +1,39 @@
{
"generators": {
- "address": 3,
+ "address": 4,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d4a6f62"
+ "bytes": "516d48617368"
},
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -40,7 +47,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -51,39 +58,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"vec": [
{
@@ -103,7 +77,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -117,6 +91,14 @@
"durability": "persistent",
"val": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -124,7 +106,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
}
},
@@ -133,7 +115,15 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
}
},
{
@@ -147,7 +137,7 @@
"symbol": "metadata_hash"
},
"val": {
- "bytes": "516d4a6f62"
+ "bytes": "516d48617368"
}
},
{
@@ -168,13 +158,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -185,7 +175,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -193,7 +183,32 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
}
}
}
@@ -203,6 +218,39 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -239,7 +287,54 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -251,16 +346,22 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d4a6f62"
+ "bytes": "516d48617368"
},
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -272,7 +373,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -302,7 +403,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -314,10 +415,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
"bytes": ""
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -329,22 +436,54 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_return"
+ "symbol": "error"
},
{
- "symbol": "submit_bid"
+ "error": {
+ "contract": 5
+ }
}
],
"data": {
- "error": {
- "contract": 4
+ "vec": [
+ {
+ "string": "failing with contract error"
+ },
+ {
+ "u32": 5
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 5
+ }
}
+ ],
+ "data": {
+ "string": "escalating error to panic"
}
}
}
@@ -354,7 +493,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -364,12 +503,12 @@
},
{
"error": {
- "contract": 4
+ "contract": 5
}
}
],
"data": {
- "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err"
+ "string": "caught error from function"
}
}
}
@@ -389,7 +528,7 @@
},
{
"error": {
- "contract": 4
+ "contract": 5
}
}
],
@@ -407,10 +546,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
"bytes": ""
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -434,7 +579,7 @@
},
{
"error": {
- "contract": 4
+ "contract": 5
}
}
],
diff --git a/contracts/job_registry/test_snapshots/test/test_submit_bid_job_not_found.1.json b/contracts/job_registry/test_snapshots/test/test_submit_bid_job_not_found.1.json
index abf48801..dfc4d347 100644
--- a/contracts/job_registry/test_snapshots/test/test_submit_bid_job_not_found.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_submit_bid_job_not_found.1.json
@@ -1,15 +1,16 @@
{
"generators": {
- "address": 2,
+ "address": 3,
"nonce": 0
},
"auth": [
+ [],
[]
],
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -19,7 +20,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -30,7 +31,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -38,7 +39,32 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 1
+ }
+ }
+ ]
}
}
}
@@ -84,7 +110,54 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -96,10 +169,16 @@
"u64": 999
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d50726f706f73616c"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -111,22 +190,54 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_return"
+ "symbol": "error"
},
{
- "symbol": "submit_bid"
+ "error": {
+ "contract": 7
+ }
}
],
"data": {
- "error": {
- "contract": 1
+ "vec": [
+ {
+ "string": "failing with contract error"
+ },
+ {
+ "u32": 7
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 7
+ }
}
+ ],
+ "data": {
+ "string": "escalating error to panic"
}
}
}
@@ -136,7 +247,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -146,12 +257,12 @@
},
{
"error": {
- "contract": 1
+ "contract": 7
}
}
],
"data": {
- "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err"
+ "string": "caught error from function"
}
}
}
@@ -171,7 +282,7 @@
},
{
"error": {
- "contract": 1
+ "contract": 7
}
}
],
@@ -189,10 +300,16 @@
"u64": 999
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d50726f706f73616c"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -216,7 +333,7 @@
},
{
"error": {
- "contract": 1
+ "contract": 7
}
}
],
diff --git a/contracts/job_registry/test_snapshots/test/test_submit_bid_on_non_open_job.1.json b/contracts/job_registry/test_snapshots/test/test_submit_bid_on_non_open_job.1.json
index be7693ce..41863c9e 100644
--- a/contracts/job_registry/test_snapshots/test/test_submit_bid_on_non_open_job.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_submit_bid_on_non_open_job.1.json
@@ -4,20 +4,21 @@
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -25,8 +26,14 @@
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -37,21 +44,27 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
"bytes": "516d50726f706f73616c"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -62,21 +75,21 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "accept_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -90,7 +103,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -101,105 +114,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -219,7 +133,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -240,7 +154,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -259,13 +173,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -285,7 +199,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -299,6 +213,14 @@
"durability": "persistent",
"val": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -306,7 +228,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
}
},
@@ -315,7 +237,15 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
}
},
{
@@ -323,7 +253,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -341,7 +271,7 @@
"val": {
"vec": [
{
- "symbol": "InProgress"
+ "symbol": "Assigned"
}
]
}
@@ -352,13 +282,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -369,7 +299,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -377,7 +307,32 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
}
}
}
@@ -387,6 +342,105 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -423,7 +477,54 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -435,7 +536,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -443,8 +544,14 @@
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -456,7 +563,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -486,7 +593,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -498,10 +605,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
"bytes": "516d50726f706f73616c"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -513,7 +626,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -532,7 +645,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -556,7 +669,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -569,7 +682,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -599,7 +712,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "accept_bid"
@@ -611,10 +724,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -626,7 +739,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -645,7 +758,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -653,7 +766,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -669,7 +782,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -682,7 +795,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -712,7 +825,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -724,10 +837,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d4c61746550726f706f73616c"
+ "bytes": "516d50726f706f73616c32"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 600
+ }
}
]
}
@@ -739,22 +858,54 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_return"
+ "symbol": "error"
},
{
- "symbol": "submit_bid"
+ "error": {
+ "contract": 8
+ }
}
],
"data": {
- "error": {
- "contract": 2
+ "vec": [
+ {
+ "string": "failing with contract error"
+ },
+ {
+ "u32": 8
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 8
+ }
}
+ ],
+ "data": {
+ "string": "escalating error to panic"
}
}
}
@@ -764,7 +915,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -774,12 +925,12 @@
},
{
"error": {
- "contract": 2
+ "contract": 8
}
}
],
"data": {
- "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err"
+ "string": "caught error from function"
}
}
}
@@ -799,7 +950,7 @@
},
{
"error": {
- "contract": 2
+ "contract": 8
}
}
],
@@ -817,10 +968,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d4c61746550726f706f73616c"
+ "bytes": "516d50726f706f73616c32"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 600
+ }
}
]
}
@@ -844,7 +1001,7 @@
},
{
"error": {
- "contract": 2
+ "contract": 8
}
}
],
diff --git a/contracts/job_registry/test_snapshots/test/test_submit_bid_success.1.json b/contracts/job_registry/test_snapshots/test/test_submit_bid_success.1.json
index 71a638a0..f087c395 100644
--- a/contracts/job_registry/test_snapshots/test/test_submit_bid_success.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_submit_bid_success.1.json
@@ -1,32 +1,39 @@
{
"generators": {
- "address": 3,
+ "address": 4,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d4a6f62"
+ "bytes": "516d48617368"
},
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -37,21 +44,27 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
"bytes": "516d50726f706f73616c"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -65,7 +78,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -76,72 +89,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"vec": [
{
@@ -161,7 +108,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -182,7 +129,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -201,13 +148,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -227,7 +174,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -241,6 +188,14 @@
"durability": "persistent",
"val": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -248,7 +203,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
}
},
@@ -257,7 +212,15 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
}
},
{
@@ -271,7 +234,7 @@
"symbol": "metadata_hash"
},
"val": {
- "bytes": "516d4a6f62"
+ "bytes": "516d48617368"
}
},
{
@@ -292,13 +255,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -309,7 +272,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -317,7 +280,32 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
}
}
}
@@ -327,6 +315,72 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -363,7 +417,54 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -375,16 +476,22 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "bytes": "516d4a6f62"
+ "bytes": "516d48617368"
},
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -396,7 +503,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -426,7 +533,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -438,10 +545,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
"bytes": "516d50726f706f73616c"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -453,7 +566,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -472,7 +585,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -496,7 +609,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -509,7 +622,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -539,7 +652,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "get_bids"
@@ -556,7 +669,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -577,7 +690,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
diff --git a/contracts/job_registry/test_snapshots/test/test_mark_disputed_from_in_progress.1.json b/contracts/job_registry/test_snapshots/test/test_submit_deliverable_success.1.json
similarity index 72%
rename from contracts/job_registry/test_snapshots/test/test_mark_disputed_from_in_progress.1.json
rename to contracts/job_registry/test_snapshots/test/test_submit_deliverable_success.1.json
index 0201b47c..16141bf0 100644
--- a/contracts/job_registry/test_snapshots/test/test_mark_disputed_from_in_progress.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_submit_deliverable_success.1.json
@@ -4,39 +4,21 @@
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -44,11 +26,14 @@
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
},
{
- "u64": 100
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -59,26 +44,26 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50"
},
{
"i128": {
"hi": 0,
- "lo": 50
+ "lo": 500
}
}
]
@@ -90,21 +75,21 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "accept_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -115,15 +100,21 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "mark_disputed",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "submit_deliverable",
"args": [
{
"u64": 1
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "bytes": "516d44656c6976657261626c65"
}
]
}
@@ -137,7 +128,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -148,171 +139,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 2032731177588607455
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 2032731177588607455
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -332,7 +158,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -348,31 +174,12 @@
"vec": [
{
"map": [
- {
- "key": {
- "symbol": "collateral_released"
- },
- "val": {
- "bool": false
- }
- },
- {
- "key": {
- "symbol": "collateral_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 50
- }
- }
- },
{
"key": {
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -380,7 +187,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50"
}
}
]
@@ -397,7 +204,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -417,7 +224,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -436,7 +243,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 100
+ "u64": 0
}
},
{
@@ -446,7 +253,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
}
},
@@ -455,7 +262,15 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
}
},
{
@@ -463,7 +278,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -481,7 +296,7 @@
"val": {
"vec": [
{
- "symbol": "Disputed"
+ "symbol": "DeliverableSubmitted"
}
]
}
@@ -498,7 +313,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -509,7 +324,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -527,7 +342,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -544,12 +359,144 @@
}
]
}
- }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 4837995959683129791
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 4837995959683129791
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
}
},
"ext": "v0"
},
- 4095
+ 6311999
]
],
[
@@ -588,61 +535,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "vec": [
- {
- "string": "JobRegistry initialized with admin: {}"
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "init"
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -652,7 +552,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -682,7 +582,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -694,7 +594,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -702,80 +602,14 @@
{
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
},
{
- "u64": 100
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "vec": [
- {
- "string": "post_job: id {} client {} budget {}"
- },
- {
- "u64": 1
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "i128": {
- "hi": 0,
- "lo": 5000
- }
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "jobpost"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "vec": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "u64": 0
},
{
- "i128": {
- "hi": 0,
- "lo": 5000
- }
+ "u64": 0
}
]
}
@@ -787,7 +621,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -817,7 +651,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -829,15 +663,15 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50"
},
{
"i128": {
"hi": 0,
- "lo": 50
+ "lo": 500
}
}
]
@@ -850,25 +684,51 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "log"
+ "string": "job_registry"
+ },
+ {
+ "string": "BidSubmitted"
}
],
"data": {
- "vec": [
+ "map": [
{
- "string": "submit_bid: id {} freelancer {}"
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
},
{
- "u64": 1
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "key": {
+ "symbol": "proposal_hash"
+ },
+ "val": {
+ "bytes": "516d50"
+ }
+ },
+ {
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
+ }
}
]
}
@@ -880,30 +740,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "bid"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -933,7 +770,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "accept_bid"
@@ -945,10 +782,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -960,28 +797,51 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "log"
+ "string": "job_registry"
+ },
+ {
+ "string": "BidAccepted"
}
],
"data": {
- "vec": [
+ "map": [
{
- "string": "accept_bid: id {} client {} freelancer {}"
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
},
{
- "u64": 1
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "key": {
+ "symbol": "job_id"
+ },
+ "val": {
+ "u64": 1
+ }
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "key": {
+ "symbol": "timestamp"
+ },
+ "val": {
+ "u64": 1700000000
+ }
}
]
}
@@ -993,30 +853,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "accept"
- },
- {
- "u64": 1
- }
- ],
- "data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1046,39 +883,22 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "mark_disputed"
- }
- ],
- "data": {
- "u64": 1
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
+ "symbol": "submit_deliverable"
}
],
"data": {
"vec": [
{
- "string": "mark_disputed: id {}"
+ "u64": 1
},
{
- "u64": 1
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "bytes": "516d44656c6976657261626c65"
}
]
}
@@ -1090,28 +910,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "contract",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "dispute"
- },
- {
- "u64": 1
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1120,7 +919,7 @@
"symbol": "fn_return"
},
{
- "symbol": "mark_disputed"
+ "symbol": "submit_deliverable"
}
],
"data": "void"
@@ -1141,7 +940,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "get_job"
@@ -1158,7 +957,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1177,7 +976,7 @@
"symbol": "bidding_deadline"
},
"val": {
- "u64": 100
+ "u64": 0
}
},
{
@@ -1187,7 +986,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 5000
+ "lo": 1000
}
}
},
@@ -1196,7 +995,15 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
}
},
{
@@ -1204,7 +1011,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -1222,7 +1029,7 @@
"val": {
"vec": [
{
- "symbol": "Disputed"
+ "symbol": "DeliverableSubmitted"
}
]
}
diff --git a/contracts/job_registry/test_snapshots/test/test_submit_deliverable_unauthorized.1.json b/contracts/job_registry/test_snapshots/test/test_submit_deliverable_unauthorized.1.json
index 3b7358a8..d9494369 100644
--- a/contracts/job_registry/test_snapshots/test/test_submit_deliverable_unauthorized.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_submit_deliverable_unauthorized.1.json
@@ -1,23 +1,24 @@
{
"generators": {
- "address": 4,
+ "address": 5,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -27,6 +28,12 @@
"hi": 0,
"lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -37,21 +44,27 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -62,21 +75,21 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "accept_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -90,7 +103,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -101,105 +114,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 1033654523790656264
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -219,7 +133,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -240,7 +154,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -248,7 +162,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50"
}
}
]
@@ -259,13 +173,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -285,7 +199,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -299,6 +213,14 @@
"durability": "persistent",
"val": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -315,7 +237,15 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
}
},
{
@@ -323,7 +253,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -341,7 +271,7 @@
"val": {
"vec": [
{
- "symbol": "InProgress"
+ "symbol": "Assigned"
}
]
}
@@ -352,13 +282,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -369,7 +299,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -377,7 +307,32 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
}
}
}
@@ -387,6 +342,105 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 1033654523790656264
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -423,7 +477,54 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -435,7 +536,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -445,6 +546,12 @@
"hi": 0,
"lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -456,7 +563,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -486,7 +593,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -498,10 +605,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -513,7 +626,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -532,7 +645,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -548,7 +661,7 @@
"symbol": "proposal_hash"
},
"val": {
- "bytes": "516d50726f706f73616c"
+ "bytes": "516d50"
}
},
{
@@ -556,7 +669,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -569,7 +682,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -599,7 +712,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "accept_bid"
@@ -611,10 +724,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -626,7 +739,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -645,7 +758,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -653,7 +766,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -669,7 +782,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -682,7 +795,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -712,7 +825,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_deliverable"
@@ -724,10 +837,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "bytes": "516d44656c6976657261626c65"
+ "bytes": "516d426164"
}
]
}
@@ -739,22 +852,54 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_return"
+ "symbol": "error"
},
{
- "symbol": "submit_deliverable"
+ "error": {
+ "contract": 9
+ }
}
],
"data": {
- "error": {
- "contract": 3
+ "vec": [
+ {
+ "string": "failing with contract error"
+ },
+ {
+ "u32": 9
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 9
+ }
}
+ ],
+ "data": {
+ "string": "escalating error to panic"
}
}
}
@@ -764,7 +909,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -774,12 +919,12 @@
},
{
"error": {
- "contract": 3
+ "contract": 9
}
}
],
"data": {
- "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err"
+ "string": "caught error from function"
}
}
}
@@ -799,7 +944,7 @@
},
{
"error": {
- "contract": 3
+ "contract": 9
}
}
],
@@ -817,10 +962,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "bytes": "516d44656c6976657261626c65"
+ "bytes": "516d426164"
}
]
}
@@ -844,7 +989,7 @@
},
{
"error": {
- "contract": 3
+ "contract": 9
}
}
],
diff --git a/contracts/job_registry/test_snapshots/test/test_unauthorized_accept_bid.1.json b/contracts/job_registry/test_snapshots/test/test_unauthorized_accept_bid.1.json
index 3d07306e..51da8bb0 100644
--- a/contracts/job_registry/test_snapshots/test/test_unauthorized_accept_bid.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_unauthorized_accept_bid.1.json
@@ -1,23 +1,24 @@
{
"generators": {
- "address": 4,
+ "address": 5,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "post_job",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -27,6 +28,12 @@
"hi": 0,
"lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -37,21 +44,27 @@
],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"function_name": "submit_bid",
"args": [
{
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
"bytes": "516d50726f706f73616c"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -65,7 +78,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -76,72 +89,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -161,7 +108,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -182,7 +129,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -201,13 +148,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -227,7 +174,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"vec": [
{
@@ -241,6 +188,14 @@
"durability": "persistent",
"val": {
"map": [
+ {
+ "key": {
+ "symbol": "bidding_deadline"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
{
"key": {
"symbol": "budget_stroops"
@@ -257,7 +212,15 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "expires_at"
+ },
+ "val": {
+ "u64": 0
}
},
{
@@ -292,13 +255,13 @@
},
"ext": "v0"
},
- 150000
+ 4095
]
],
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -309,7 +272,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -317,7 +280,32 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 2
+ }
+ }
+ ]
}
}
}
@@ -327,6 +315,72 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -363,7 +417,54 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -375,7 +476,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -385,6 +486,12 @@
"hi": 0,
"lo": 1000
}
+ },
+ {
+ "u64": 0
+ },
+ {
+ "u64": 0
}
]
}
@@ -396,7 +503,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -426,7 +533,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "submit_bid"
@@ -438,10 +545,16 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
"bytes": "516d50726f706f73616c"
+ },
+ {
+ "i128": {
+ "hi": 0,
+ "lo": 500
+ }
}
]
}
@@ -453,7 +566,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "contract",
"body": {
"v0": {
@@ -472,7 +585,7 @@
"symbol": "freelancer"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
@@ -496,7 +609,7 @@
"symbol": "timestamp"
},
"val": {
- "u64": 0
+ "u64": 1700000000
}
}
]
@@ -509,7 +622,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -539,7 +652,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "accept_bid"
@@ -551,10 +664,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -566,22 +679,54 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_return"
+ "symbol": "error"
},
{
- "symbol": "accept_bid"
+ "error": {
+ "contract": 9
+ }
}
],
"data": {
- "error": {
- "contract": 3
+ "vec": [
+ {
+ "string": "failing with contract error"
+ },
+ {
+ "u32": 9
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 9
+ }
}
+ ],
+ "data": {
+ "string": "escalating error to panic"
}
}
}
@@ -591,7 +736,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -601,12 +746,12 @@
},
{
"error": {
- "contract": 3
+ "contract": 9
}
}
],
"data": {
- "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err"
+ "string": "caught error from function"
}
}
}
@@ -626,7 +771,7 @@
},
{
"error": {
- "contract": 3
+ "contract": 9
}
}
],
@@ -644,10 +789,10 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -671,7 +816,7 @@
},
{
"error": {
- "contract": 3
+ "contract": 9
}
}
],
diff --git a/contracts/job_registry/test_snapshots/test/test_upgrade_admin_initialize_and_read.1.json b/contracts/job_registry/test_snapshots/test/test_upgrade_admin_initialize_and_read.1.json
index c53ee506..d8ac6eed 100644
--- a/contracts/job_registry/test_snapshots/test/test_upgrade_admin_initialize_and_read.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_upgrade_admin_initialize_and_read.1.json
@@ -1,20 +1,24 @@
{
"generators": {
- "address": 2,
+ "address": 3,
"nonce": 0
},
"auth": [
+ [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "function_name": "init_upgrade_admin",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "function_name": "set_upgrade_admin",
"args": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
]
}
@@ -28,7 +32,7 @@
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -39,39 +43,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -82,7 +53,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -91,6 +62,30 @@
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
"storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "NextJobId"
+ }
+ ]
+ },
+ "val": {
+ "u64": 1
+ }
+ },
{
"key": {
"vec": [
@@ -100,7 +95,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
}
]
@@ -113,6 +108,39 @@
4095
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
[
{
"contract_code": {
@@ -149,14 +177,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
- "symbol": "init_upgrade_admin"
+ "symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -166,41 +194,49 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
- "type_": "contract",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
+ "type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "string": "job_registry"
+ "symbol": "fn_return"
},
{
- "string": "UpgradeAdminSet"
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
+ },
+ {
+ "symbol": "set_upgrade_admin"
}
],
"data": {
- "map": [
+ "vec": [
{
- "key": {
- "symbol": "new_admin"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
},
{
- "key": {
- "symbol": "previous_admin"
- },
- "val": "void"
- },
- {
- "key": {
- "symbol": "timestamp"
- },
- "val": {
- "u64": 0
- }
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
]
}
@@ -212,7 +248,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -221,7 +257,7 @@
"symbol": "fn_return"
},
{
- "symbol": "init_upgrade_admin"
+ "symbol": "set_upgrade_admin"
}
],
"data": "void"
@@ -242,7 +278,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "get_upgrade_admin"
@@ -257,7 +293,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -270,7 +306,7 @@
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
}
}
diff --git a/contracts/job_registry/test_snapshots/test/test_zero_budget_still_panics.1.json b/contracts/job_registry/test_snapshots/test/test_zero_budget_still_panics.1.json
index b97714fe..03195a3e 100644
--- a/contracts/job_registry/test_snapshots/test/test_zero_budget_still_panics.1.json
+++ b/contracts/job_registry/test_snapshots/test/test_zero_budget_still_panics.1.json
@@ -1,34 +1,16 @@
{
"generators": {
- "address": 4,
+ "address": 3,
"nonce": 0
},
"auth": [
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
- "function_name": "initialize",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
+ [],
[]
],
"ledger": {
"protocol_version": 21,
"sequence_number": 0,
- "timestamp": 0,
+ "timestamp": 1700000000,
"network_id": "0000000000000000000000000000000000000000000000000000000000000000",
"base_reserve": 0,
"min_persistent_entry_ttl": 4096,
@@ -39,39 +21,6 @@
{
"contract_data": {
"contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -82,7 +31,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -100,7 +49,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
@@ -161,34 +110,14 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "initialize"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "log"
- }
- ],
- "data": {
- "string": "initialized"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
}
}
@@ -198,7 +127,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -228,7 +157,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000001"
},
{
"symbol": "post_job"
@@ -240,7 +169,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -252,10 +181,10 @@
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
@@ -267,7 +196,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -299,7 +228,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -324,7 +253,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000001",
"type_": "diagnostic",
"body": {
"v0": {
@@ -377,7 +306,7 @@
"u64": 1
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
"bytes": "516d48617368"
@@ -389,10 +318,10 @@
}
},
{
- "u64": 30
+ "u64": 0
},
{
- "u64": 60
+ "u64": 0
}
]
}
diff --git a/contracts/reputation/src/lib.rs b/contracts/reputation/src/lib.rs
index b1e6bc9d..520c0364 100644
--- a/contracts/reputation/src/lib.rs
+++ b/contracts/reputation/src/lib.rs
@@ -1,9 +1,19 @@
-#![no_std]
+#![no_std]
+#[cfg(test)]
+extern crate std;
+
+pub use profile::BadgeLevel;
use soroban_sdk::{
contract, contractimpl, contracttype, Address, Bytes, Env, IntoVal, Symbol, Vec,
};
+mod profile;
+mod storage;
+pub use profile::{BadgeMetadataEntry, BadgeTier};
+
+use profile::{Profile, RoleMetrics};
+
// Types matching Job Registry contract's public types for cross-contract decoding
#[contracttype]
#[derive(Clone, Debug, PartialEq)]
@@ -50,6 +60,49 @@ pub enum BadgeTier {
#[derive(Clone, Debug)]
pub struct Profile {
pub address: Address,
+ pub client: ReputationScore,
+ pub freelancer: ReputationScore,
+ pub is_blacklisted: bool,
+}
+
+#[contracttype]
+pub enum DataKey {
+ Admin,
+ JobRegistry,
+ AuthorizedUpdater,
+ AuthorizedContract(Address),
+ Reviewed(u64, Address),
+ SlashDecayBps,
+ BlacklistDecayBps,
+}
+
+#[contracterror]
+#[derive(Copy, Clone, Debug, PartialEq, Eq)]
+pub enum ReputationError {
+ NotInitialized = 1,
+ Unauthorized = 2,
+ InvalidInput = 3,
+ JobNotCompleted = 4,
+ NotJobParticipant = 5,
+ AlreadyReviewed = 6,
+ ContractStateError = 7,
+ Blacklisted = 8,
+}
+
+#[contracttype]
+#[derive(Clone)]
+pub struct ContractUpgradedEvent {
+ pub by_admin: Address,
+ pub new_wasm_hash: BytesN<32>,
+ pub upgraded_at: u64,
+}
+
+#[contracttype]
+#[derive(Clone)]
+pub struct ReputationUpdatedEvent {
+ pub job_id: u64,
+ pub caller: Address,
+ pub target: Address,
pub role: Role,
pub badge_tier: BadgeTier,
/// Average rating in fixed-point format (1000 = 1.0, 5000 = 5.0)
@@ -90,51 +143,284 @@ pub enum DataKey {
AuthorizedContracts,
}
+#[contracttype]
+#[derive(Clone)]
+pub struct DecayParameterUpdatedEvent {
+ pub by_admin: Address,
+ pub param_name: Symbol,
+ pub old_value: i32,
+ pub new_value: i32,
+ pub updated_at: u64,
+}
+
#[contract]
pub struct ReputationContract;
-/// Fixed-point arithmetic module for safe rating calculations
-mod fixed_point {
- /// Multiply two fixed-point numbers safely with overflow checks.
- /// Both inputs are in fixed-point format (1000 = 1.0).
- pub fn multiply(a: i32, b: i32) -> i32 {
- ((a as i128).saturating_mul(b as i128) / 1000) as i32
+#[contractimpl]
+impl ReputationContract {
+ const INSTANCE_TTL_THRESHOLD: u32 = 50_000;
+ const INSTANCE_TTL_EXTEND_TO: u32 = 150_000;
+ const PERSISTENT_TTL_THRESHOLD: u32 = 50_000;
+ const PERSISTENT_TTL_EXTEND_TO: u32 = 150_000;
+ const SCORE_SCALE: i128 = 10_000;
+ const MAX_RATING: i128 = 5;
+ const DEFAULT_SCORE_BPS: i32 = 5_000;
+ const SLASH_DECAY_BPS: i32 = 8_000;
+ const BLACKLIST_DECAY_BPS: i32 = 1_000;
+ const REVIEW_DECAY_BPS_PER_DAY: i32 = 9_950;
+ const SECONDS_PER_DAY: u64 = 86_400;
+ /// Number of dispute failures that trigger badge revocation
+ const DISPUTE_FAILURE_THRESHOLD: u32 = 3;
+ /// Score penalty applied after badge revocation due to disputes
+ const BADGE_REVOCATION_PENALTY_BPS: i32 = 2_000;
+
+ fn bump_instance_ttl(env: &Env) {
+ env.storage()
+ .instance()
+ .extend_ttl(Self::INSTANCE_TTL_THRESHOLD, Self::INSTANCE_TTL_EXTEND_TO);
+ }
+
+ fn clamp_score(value: i32) -> i32 {
+ value.clamp(0, 10_000)
+ }
+
+ fn clamp_score_i128(value: i128) -> i32 {
+ Self::clamp_score(value.clamp(0, Self::SCORE_SCALE) as i32)
+ }
+
+ fn read_admin(env: &Env) -> Address {
+ env.storage()
+ .instance()
+ .get(&DataKey::Admin)
+ .unwrap_or_else(|| soroban_sdk::panic_with_error!(env, ReputationError::NotInitialized))
+ }
+
+ fn read_job_registry(env: &Env) -> Address {
+ env.storage()
+ .instance()
+ .get(&DataKey::JobRegistry)
+ .unwrap_or_else(|| soroban_sdk::panic_with_error!(env, ReputationError::NotInitialized))
+ }
+
+ fn require_admin(env: &Env, admin: &Address) {
+ let configured_admin = Self::read_admin(env);
+ admin.require_auth();
+ if *admin != configured_admin {
+ soroban_sdk::panic_with_error!(env, ReputationError::Unauthorized);
+ }
+ }
+
+ fn require_authorized_contract(env: &Env, caller_contract: &Address) {
+ caller_contract.require_auth();
+
+ let is_primary_updater = env
+ .storage()
+ .instance()
+ .get::<_, Address>(&DataKey::AuthorizedUpdater)
+ .map(|authorized_contract| *caller_contract == authorized_contract)
+ .unwrap_or(false);
+ let is_authorized_contract = env
+ .storage()
+ .instance()
+ .get::<_, bool>(&DataKey::AuthorizedContract(caller_contract.clone()))
+ .unwrap_or(false);
+
+ if !(is_primary_updater || is_authorized_contract) {
+ soroban_sdk::panic_with_error!(env, ReputationError::Unauthorized);
+ }
+ }
+
+ fn role_metrics<'a>(profile: &'a Profile, role: &Role) -> &'a RoleMetrics {
+ match role {
+ Role::Client => &profile.client,
+ Role::Freelancer => &profile.freelancer,
+ }
+ }
+
+ fn role_metrics_mut<'a>(profile: &'a mut Profile, role: &Role) -> &'a mut RoleMetrics {
+ match role {
+ Role::Client => &mut profile.client,
+ Role::Freelancer => &mut profile.freelancer,
+ }
+ }
+
+ fn score_from_profile(
+ env: &Env,
+ address: &Address,
+ role: Role,
+ profile: &Profile,
+ ) -> ReputationScore {
+ let metrics = Self::role_metrics(profile, &role);
+ let score = Self::decayed_metric_score(env, metrics);
+ ReputationScore {
+ address: address.clone(),
+ role,
+ score,
+ total_jobs: metrics.completed_jobs,
+ total_points: metrics.review.total_points,
+ reviews: metrics.review.reviews,
+ average_rating_bps: metrics.review.average_rating_bps,
+ badge_level: Self::badge_level_for_score(score, metrics, profile.is_blacklisted),
+ blacklisted: profile.is_blacklisted,
+ }
+ }
+
+ fn checked_add_points(env: &Env, current: i128, incoming: u32) -> i128 {
+ current.checked_add(incoming as i128).unwrap_or_else(|| {
+ soroban_sdk::panic_with_error!(env, ReputationError::ContractStateError)
+ })
}
- /// Divide two fixed-point numbers safely.
- /// Returns result in fixed-point format (1000 = 1.0).
- pub fn divide(numerator: i32, denominator: i32) -> i32 {
+ fn average_rating_bps(env: &Env, total_points: i128, reviews: u32) -> i32 {
+ if reviews == 0 {
+ return Self::DEFAULT_SCORE_BPS;
+ }
+
+ let numerator = total_points
+ .checked_mul(Self::SCORE_SCALE)
+ .unwrap_or_else(|| {
+ soroban_sdk::panic_with_error!(env, ReputationError::ContractStateError)
+ });
+ let denominator = (reviews as i128)
+ .checked_mul(Self::MAX_RATING)
+ .unwrap_or_else(|| {
+ soroban_sdk::panic_with_error!(env, ReputationError::ContractStateError)
+ });
+
if denominator == 0 {
return 0;
}
- ((numerator as i128).saturating_mul(1000) / (denominator as i128)) as i32
+
+ Self::clamp_score_i128(numerator / denominator)
}
- /// Calculate average rating with overflow protection.
- /// Converts raw rating points (1-5 scale) to fixed-point (1000-5000).
- pub fn calculate_avg_rating(total_points: i32, count: u32) -> i32 {
- if count == 0 {
- return 0;
+ fn apply_decay_bps(env: &Env, score: i32, decay_bps: i32) -> i32 {
+ let decayed = (score as i128)
+ .checked_mul(decay_bps as i128)
+ .unwrap_or_else(|| {
+ soroban_sdk::panic_with_error!(env, ReputationError::ContractStateError)
+ })
+ / Self::SCORE_SCALE;
+ Self::clamp_score_i128(decayed)
+ }
+
+ fn apply_exponential_decay_bps(env: &Env, score: i32, since: u64) -> i32 {
+ if score <= 0 {
+ return Self::clamp_score(score);
+ }
+
+ let now = env.ledger().timestamp();
+ if now <= since {
+ return Self::clamp_score(score);
}
- let avg = (total_points as i128).saturating_mul(1000) / (count as i128);
- (avg as i32).clamp(1000, 5000)
+
+ let elapsed_days = now.saturating_sub(since) / Self::SECONDS_PER_DAY;
+ if elapsed_days == 0 {
+ return Self::clamp_score(score);
+ }
+
+ let mut value = score as i128;
+ let factor = Self::REVIEW_DECAY_BPS_PER_DAY as i128;
+ let mut days = elapsed_days;
+ while days > 0 {
+ value = value.checked_mul(factor).unwrap_or_else(|| {
+ soroban_sdk::panic_with_error!(env, ReputationError::ContractStateError)
+ }) / Self::SCORE_SCALE;
+ if value == 0 {
+ break;
+ }
+ days -= 1;
+ }
+
+ Self::clamp_score_i128(value)
}
- /// Apply exponential decay to reputation score.
- /// `periods_elapsed`: number of time periods since last update
- /// Returns: score after decay (in basis points, 0-10000)
- pub fn apply_decay(initial_score: i32, periods_elapsed: u32) -> i32 {
- if periods_elapsed == 0 {
- return initial_score;
+ fn decayed_metric_score(env: &Env, metrics: &RoleMetrics) -> i32 {
+ if metrics.review.reviews == 0 {
+ return metrics.score;
}
- // Each period decays by ~1%: 10000 * (0.99^periods_elapsed)
- // Using fixed-point: 10000 * (990/1000)^periods_elapsed
- let mut result = initial_score as i128;
- for _ in 0..periods_elapsed.min(100) {
- // Cap decay iterations at 100 to prevent excessive computation
- result = (result * 990) / 1000;
+ Self::apply_exponential_decay_bps(env, metrics.score, metrics.review.last_reviewed_at)
+ }
+
+ fn badge_level(metrics: &RoleMetrics, is_blacklisted: bool) -> u32 {
+ Self::badge_level_for_score(metrics.score, metrics, is_blacklisted)
+ }
+
+ fn badge_level_for_score(score: i32, metrics: &RoleMetrics, is_blacklisted: bool) -> u32 {
+ // Revoke badge if dispute failures exceed threshold
+ if metrics.dispute_failures >= Self::DISPUTE_FAILURE_THRESHOLD {
+ return 0;
+ }
+
+ if is_blacklisted {
+ 0
+ } else {
+ BadgeLevel::from_score(score).to_u32()
+ }
+ }
+
+ fn refresh_badge(metrics: &mut RoleMetrics, is_blacklisted: bool) {
+ metrics.badge_level = Self::badge_level(metrics, is_blacklisted);
+ }
+
+ fn apply_review(env: &Env, metrics: &mut RoleMetrics, score: u32, is_blacklisted: bool) {
+ metrics.review.total_points =
+ Self::checked_add_points(env, metrics.review.total_points, score);
+ metrics.review.reviews = metrics.review.reviews.saturating_add(1);
+ metrics.completed_jobs = metrics.completed_jobs.saturating_add(1);
+ metrics.review.average_rating_bps =
+ Self::average_rating_bps(env, metrics.review.total_points, metrics.review.reviews);
+ metrics.score = metrics.review.average_rating_bps;
+ metrics.review.last_reviewed_at = env.ledger().timestamp();
+ Self::refresh_badge(metrics, is_blacklisted);
+ }
+
+ fn apply_manual_delta(metrics: &mut RoleMetrics, delta: i32, is_blacklisted: bool) {
+ metrics.score = Self::clamp_score(metrics.score.saturating_add(delta));
+ Self::refresh_badge(metrics, is_blacklisted);
+ }
+
+ fn apply_role_decay(
+ env: &Env,
+ metrics: &mut RoleMetrics,
+ decay_bps: i32,
+ is_blacklisted: bool,
+ ) {
+ metrics.score = Self::apply_decay_bps(env, metrics.score, decay_bps);
+ Self::refresh_badge(metrics, is_blacklisted);
+ }
+
+ fn compute_recovery_towards_default(score: i32, recovery_bps: i32) -> i32 {
+ let gap = Self::DEFAULT_SCORE_BPS.saturating_sub(score);
+ let recovered =
+ score.saturating_add(((gap as i128 * recovery_bps as i128) / Self::SCORE_SCALE) as i32);
+ Self::clamp_score(recovered)
+ }
+
+ fn apply_dispute_failure(metrics: &mut RoleMetrics, is_blacklisted: bool) {
+ metrics.dispute_failures = metrics.dispute_failures.saturating_add(1);
+ if metrics.dispute_failures >= Self::DISPUTE_FAILURE_THRESHOLD {
+ metrics.score = Self::clamp_score(
+ metrics
+ .score
+ .saturating_sub(Self::BADGE_REVOCATION_PENALTY_BPS),
+ );
}
- (result as i32).max(0)
+ Self::refresh_badge(metrics, is_blacklisted);
+ }
+
+ fn read_slash_decay_bps(env: &Env) -> i32 {
+ env.storage()
+ .instance()
+ .get(&DataKey::SlashDecayBps)
+ .unwrap_or(Self::SLASH_DECAY_BPS)
+ }
+
+ fn read_blacklist_decay_bps(env: &Env) -> i32 {
+ env.storage()
+ .instance()
+ .get(&DataKey::BlacklistDecayBps)
+ .unwrap_or(Self::BLACKLIST_DECAY_BPS)
}
}
@@ -172,77 +458,97 @@ impl ReputationContract {
/// Set the JobRegistry contract address (admin only)
pub fn set_job_registry(env: Env, admin: Address, registry: Address) {
- admin.require_auth();
+ Self::require_admin(&env, &admin);
env.storage()
.instance()
.set(&DataKey::JobRegistry, ®istry);
+ Self::bump_instance_ttl(&env);
}
- /// Load or create a Profile for the given address and role.
- /// Returns a Profile initialized with default values if not found.
- fn load_profile(env: Env, address: Address, role: Role) -> Profile {
- let key = DataKey::Profile(address.clone(), role.clone());
+ pub fn set_authorized_contract(env: Env, admin: Address, contract_address: Address) {
+ Self::require_admin(&env, &admin);
env.storage()
- .persistent()
- .get::(&key)
- .unwrap_or_else(|| Profile {
- address: address.clone(),
- role,
- badge_tier: BadgeTier::None,
- avg_rating: 0,
- completed_jobs: 0,
- reputation_score: 5000,
- total_review_points: 0,
- review_count: 0,
- last_updated: env.ledger().timestamp(),
- })
+ .instance()
+ .set(&DataKey::JobRegistry, ®istry);
}
- /// Save a Profile to persistent storage.
- fn save_profile(env: Env, profile: &Profile) {
- let key = DataKey::Profile(profile.address.clone(), profile.role.clone());
- env.storage().persistent().set(&key, profile);
+ pub fn authorize_contract(env: Env, admin: Address, contract_address: Address) {
+ Self::require_admin(&env, &admin);
+ env.storage().instance().set(
+ &DataKey::AuthorizedContract(contract_address.clone()),
+ &true,
+ );
+ env.events().publish(
+ ("reputation", "AuthorizedContractUpdated"),
+ AuthorizedContractUpdatedEvent {
+ by_admin: admin,
+ contract_address,
+ updated_at: env.ledger().timestamp(),
+ },
+ );
+ Self::bump_instance_ttl(&env);
}
- /// Get the current Profile for an address and role.
- pub fn get_profile(env: Env, address: Address, role: Role) -> Profile {
- Self::load_profile(env, address, role)
+ pub fn deauthorize_contract(env: Env, admin: Address, contract_address: Address) {
+ Self::require_admin(&env, &admin);
+ env.storage()
+ .instance()
+ .remove(&DataKey::AuthorizedContract(contract_address));
+ Self::bump_instance_ttl(&env);
}
- /// Get the current badge tier for a freelancer.
- pub fn get_badge_tier(env: Env, address: Address) -> BadgeTier {
- let profile = Self::load_profile(env, address, Role::Freelancer);
- profile.badge_tier
+ pub fn is_contract_authorized(env: Env, contract_address: Address) -> bool {
+ Self::bump_instance_ttl(&env);
+ env.storage()
+ .instance()
+ .get::<_, bool>(&DataKey::AuthorizedContract(contract_address))
+ .unwrap_or(false)
}
- /// Verify that the caller is an authorized contract address (for secure cross-contract calls).
- fn require_authorized_contract(env: Env, caller: Address) {
- let admin: Address = env
- .storage()
+ pub fn set_slash_decay(env: Env, admin: Address, decay_bps: i32) {
+ Self::require_admin(&env, &admin);
+ if !(1_000..=10_000).contains(&decay_bps) {
+ soroban_sdk::panic_with_error!(&env, ReputationError::InvalidInput);
+ }
+ let old_value = Self::read_slash_decay_bps(&env);
+ env.storage()
.instance()
- .get(&DataKey::Admin)
- .expect("not initialized");
+ .set(&DataKey::SlashDecayBps, &decay_bps);
+ env.events().publish(
+ ("reputation", "DecayParameterUpdated"),
+ DecayParameterUpdatedEvent {
+ by_admin: admin,
+ param_name: Symbol::new(&env, "slash_decay_bps"),
+ old_value,
+ new_value: decay_bps,
+ updated_at: env.ledger().timestamp(),
+ },
+ );
+ Self::bump_instance_ttl(&env);
+ }
- // In production, this would check against a list of authorized contracts
- // For now, we only allow the admin to call sensitive functions directly
- // Cross-contract calls must come from registered JobRegistry
- if let Ok(registry) = env
- .storage()
- .instance()
- .get::(&DataKey::JobRegistry)
- {
- if caller == registry {
- return;
- }
+ pub fn set_blacklist_decay(env: Env, admin: Address, decay_bps: i32) {
+ Self::require_admin(&env, &admin);
+ if !(1_000..=10_000).contains(&decay_bps) {
+ soroban_sdk::panic_with_error!(&env, ReputationError::InvalidInput);
}
-
- // Fall back to admin authorization for direct calls
- caller.require_auth();
+ let old_value = Self::read_blacklist_decay_bps(&env);
+ env.storage()
+ .instance()
+ .set(&DataKey::BlacklistDecayBps, &decay_bps);
+ env.events().publish(
+ ("reputation", "DecayParameterUpdated"),
+ DecayParameterUpdatedEvent {
+ by_admin: admin,
+ param_name: Symbol::new(&env, "blacklist_decay_bps"),
+ old_value,
+ new_value: decay_bps,
+ updated_at: env.ledger().timestamp(),
+ },
+ );
+ Self::bump_instance_ttl(&env);
}
- /// Submit a rating for a target address tied to a Job ID. Caller must be the client or freelancer
- /// on the job, and the job must be Completed.
- /// Automatically triggers badge upgrade if thresholds are met.
pub fn submit_rating(env: Env, caller: Address, job_id: u64, target: Address, score: u32) {
// caller must authorize
caller.require_auth();
@@ -281,8 +587,16 @@ impl ReputationContract {
"already reviewed"
);
- // Load and update profile for target
- let mut profile = Self::load_profile(env.clone(), target.clone(), Role::Freelancer);
+ /// Update reputation after a completed job. `delta` in basis points.
+ /// Score is clamped to [0, 10000]. Only callable by admin or authorized contract address.
+ pub fn update_score(
+ env: Env,
+ caller_contract: Address,
+ address: Address,
+ role: Role,
+ delta: i32,
+ ) {
+ Self::require_authorized_contract(&env, &caller_contract);
// Update review metrics
profile.total_review_points = profile
@@ -291,39 +605,95 @@ impl ReputationContract {
profile.review_count = profile.review_count.saturating_add(1);
profile.completed_jobs = profile.completed_jobs.saturating_add(1);
- // Calculate new average rating using fixed-point arithmetic
- profile.avg_rating = fixed_point::calculate_avg_rating(
- profile.total_review_points,
- profile.review_count,
+ let is_blacklisted = profile.is_blacklisted;
+ let (new_score, total_jobs, badge_level, previous_score) = {
+ let metrics = Self::role_metrics_mut(&mut profile, &role);
+ let previous_score = metrics.score;
+ metrics.completed_jobs = metrics.completed_jobs.saturating_add(1);
+ Self::apply_manual_delta(metrics, delta, is_blacklisted);
+ (
+ metrics.score,
+ metrics.completed_jobs,
+ metrics.badge_level,
+ previous_score,
+ )
+ };
+ profile.last_activity = env.ledger().timestamp();
+
+ profile.refresh_badges();
+ storage::write_profile(&env, &address, &profile);
+ env.events().publish(
+ ("reputation", "ScoreAdjusted"),
+ ScoreAdjustedEvent {
+ address,
+ role,
+ delta: new_score.saturating_sub(previous_score),
+ new_score,
+ total_jobs,
+ badge_level,
+ adjusted_at: env.ledger().timestamp(),
+ },
);
+ Self::bump_instance_ttl(&env);
+ }
- // Update reputation score based on average rating
- // Scale: 1->2000 BPS, 2->4000 BPS, ..., 5->10000 BPS
- let rating_bps = (profile.avg_rating * 2) / 1000; // Convert from 1000-5000 scale to 2000-10000 BPS
- profile.reputation_score = rating_bps.clamp(0, 10_000);
-
- // Update timestamp
- profile.last_updated = env.ledger().timestamp();
-
- // Check and update badge tier
- let new_tier = Self::calculate_badge_tier(profile.reputation_score, profile.completed_jobs);
- profile.badge_tier = new_tier;
-
- // Save updated profile
- Self::save_profile(env.clone(), &profile);
-
- // Also update legacy ReputationScore for backward compatibility
- let mut rep = Self::get_score(env.clone(), target.clone(), Role::Freelancer);
- rep.total_points = rep.total_points.saturating_add(score as i32);
- rep.reviews = rep.reviews.saturating_add(1);
- rep.total_jobs = rep.total_jobs.saturating_add(1);
- let avg = rep.total_points / (rep.reviews as i32);
- let bps = avg.saturating_mul(2000);
- rep.score = bps.clamp(0, 10_000);
- env.storage().persistent().set(
- &DataKey::Score(rep.address.clone(), rep.role.clone()),
- &rep,
+ /// Slash address for fraud / abandonment — reduces score by 20%. Only callable by admin or authorized contract.
+ pub fn slash(
+ env: Env,
+ caller_contract: Address,
+ address: Address,
+ role: Role,
+ _reason: Symbol,
+ ) {
+ Self::require_authorized_contract(&env, &caller_contract);
+
+ let mut profile = storage::read_profile_or_default(&env, &address);
+ if profile.is_blacklisted {
+ soroban_sdk::panic_with_error!(&env, ReputationError::Blacklisted);
+ }
+
+ let is_blacklisted = profile.is_blacklisted;
+ let metrics = Self::role_metrics_mut(&mut profile, &role);
+ let previous_score = metrics.score;
+ let decay_bps = Self::read_slash_decay_bps(&env);
+ Self::apply_role_decay(&env, metrics, decay_bps, is_blacklisted);
+ let new_score = metrics.score;
+ let total_jobs = metrics.completed_jobs;
+ let badge_level = metrics.badge_level;
+
+ profile.refresh_badges();
+ storage::write_profile(&env, &address, &profile);
+ env.events().publish(
+ ("reputation", "ScoreAdjusted"),
+ ScoreAdjustedEvent {
+ address,
+ role,
+ delta: new_score.saturating_sub(previous_score),
+ new_score,
+ total_jobs,
+ badge_level,
+ adjusted_at: env.ledger().timestamp(),
+ },
);
+ Self::bump_instance_ttl(&env);
+ }
+
+ pub fn blacklist_profile(
+ env: Env,
+ caller_contract: Address,
+ address: Address,
+ _reason: Symbol,
+ ) {
+ Self::require_authorized_contract(&env, &caller_contract);
+
+ let mut profile = storage::read_profile_or_default(&env, &address);
+ if !profile.is_blacklisted {
+ profile.is_blacklisted = true;
+ let is_blacklisted = profile.is_blacklisted;
+ let decay_bps = Self::read_blacklist_decay_bps(&env);
+ Self::apply_role_decay(&env, &mut profile.client, decay_bps, is_blacklisted);
+ Self::apply_role_decay(&env, &mut profile.freelancer, decay_bps, is_blacklisted);
+ }
env.storage().persistent().set(&reviewed_key, &true);
}
@@ -355,12 +725,50 @@ impl ReputationContract {
profile.reputation_score = reputation.score;
profile.last_updated = env.ledger().timestamp();
- let new_tier =
- Self::calculate_badge_tier(profile.reputation_score, profile.completed_jobs);
- profile.badge_tier = new_tier;
+ let is_blacklisted = profile.is_blacklisted;
+ let metrics = Self::role_metrics_mut(&mut profile, &role);
+ let previous_badge_level = metrics.badge_level;
+ let previous_score = metrics.score;
- Self::save_profile(env, &profile);
- }
+ Self::apply_dispute_failure(metrics, is_blacklisted);
+
+ let new_badge_level = metrics.badge_level;
+ let new_score = metrics.score;
+ let dispute_failures = metrics.dispute_failures;
+ let score_penalty_applied = previous_score != new_score;
+
+ profile.last_activity = env.ledger().timestamp();
+ storage::write_profile(&env, &address, &profile);
+
+ env.events().publish(
+ ("reputation", "DisputeFailureRecorded"),
+ DisputeFailureRecordedEvent {
+ address,
+ role,
+ dispute_failures,
+ previous_badge_level,
+ new_badge_level,
+ score_penalty_applied,
+ new_score,
+ recorded_at: env.ledger().timestamp(),
+ },
+ );
+ Self::bump_instance_ttl(&env);
+ }
+
+ pub fn is_blacklisted(env: Env, address: Address) -> bool {
+ Self::bump_instance_ttl(&env);
+ storage::read_profile(&env, &address)
+ .map(|profile| profile.is_blacklisted)
+ .unwrap_or(false)
+ }
+
+ /// Return the current badge level for an address/role pair.
+ pub fn get_badge(env: Env, address: Address, role: Role) -> BadgeLevel {
+ Self::bump_instance_ttl(&env);
+ let profile = storage::read_profile_or_default(&env, &address);
+ let score = Self::score_from_profile(&env, &address, role, &profile);
+ BadgeLevel::from_score(score.score)
}
/// Slash address for fraud / abandonment — reduces score by 20%.
@@ -372,20 +780,54 @@ impl ReputationContract {
.get(&DataKey::Admin)
.expect("not initialized");
admin.require_auth();
+ assert!(admin == configured_admin, "unauthorized");
+
+ let mut profile = storage::read_profile_or_default(&env, &address);
+
+ // Replace existing entry for this tier or push a new one.
+ let mut found = false;
+ let len = profile.badge_metadata.len();
+ for i in 0..len {
+ let entry = profile.badge_metadata.get(i).unwrap();
+ if entry.tier == tier {
+ profile.badge_metadata.set(
+ i,
+ BadgeMetadataEntry {
+ tier: tier.clone(),
+ uri: uri.clone(),
+ },
+ );
+ found = true;
+ break;
+ }
+ }
+ if !found {
+ profile
+ .badge_metadata
+ .push_back(BadgeMetadataEntry { tier, uri });
+ }
let mut reputation = Self::get_score(env.clone(), address.clone(), role.clone());
reputation.score = reputation.score.saturating_sub(2000).clamp(0, 10_000);
- env.storage().persistent().set(
- &DataKey::Score(reputation.address.clone(), role.clone()),
- &reputation,
- );
+ /// Return the metadata URI for a given badge tier, or `None` if not set.
+ pub fn get_badge_metadata(env: Env, address: Address, tier: BadgeTier) -> Option {
+ Self::bump_instance_ttl(&env);
+ let profile = storage::read_profile_or_default(&env, &address);
+ for i in 0..profile.badge_metadata.len() {
+ let entry = profile.badge_metadata.get(i).unwrap();
+ if entry.tier == tier {
+ return Some(entry.uri);
+ }
+ }
+ None
+ }
- // Also update Profile for badge downgrade
- if role == Role::Freelancer {
- let mut profile = Self::load_profile(env.clone(), address.clone(), role.clone());
- profile.reputation_score = reputation.score;
- profile.last_updated = env.ledger().timestamp();
+ pub fn get_score(env: Env, address: Address, role: Role) -> ReputationScore {
+ Self::bump_instance_ttl(&env);
+ let profile = storage::read_profile_or_default(&env, &address);
+ Self::score_from_profile(&env, &address, role, &profile)
+ }
let new_tier =
Self::calculate_badge_tier(profile.reputation_score, profile.completed_jobs);
@@ -426,13 +868,120 @@ impl ReputationContract {
metrics.push_back(rep.reviews as i128);
metrics
}
+
+ pub fn query_reputation(env: Env, address: Address) -> ReputationView {
+ Self::bump_instance_ttl(&env);
+ let profile = storage::read_profile_or_default(&env, &address);
+ let client = Self::score_from_profile(&env, &address, Role::Client, &profile);
+ let freelancer = Self::score_from_profile(&env, &address, Role::Freelancer, &profile);
+ ReputationView {
+ address,
+ client,
+ freelancer,
+ is_blacklisted: profile.is_blacklisted,
+ }
+ }
}
#[cfg(test)]
mod test {
use super::*;
- use soroban_sdk::testutils::Address as _;
- use soroban_sdk::{Address, Env};
+ use soroban_sdk::testutils::{Address as _, Ledger as _};
+ use soroban_sdk::{Address, BytesN, Env};
+
+ #[contract]
+ pub struct MockJobRegistry;
+
+ #[contracttype]
+ enum MockKey {
+ Job(u64),
+ }
+
+ #[contractimpl]
+ impl MockJobRegistry {
+ pub fn set_job(env: Env, job_id: u64, job: JobRecord) {
+ env.storage().persistent().set(&MockKey::Job(job_id), &job);
+ }
+
+ pub fn get_job(env: Env, job_id: u64) -> Result {
+ Ok(env
+ .storage()
+ .persistent()
+ .get(&MockKey::Job(job_id))
+ .expect("mock job missing"))
+ }
+ }
+
+ #[contract]
+ pub struct AuthorizedAdjuster;
+
+ #[contractimpl]
+ impl AuthorizedAdjuster {
+ pub fn award(env: Env, reputation: Address, target: Address, role: Role, delta: i32) {
+ let reputation_client = ReputationContractClient::new(&env, &reputation);
+ let caller_contract = env.current_contract_address();
+ reputation_client.update_score(&caller_contract, &target, &role, &delta);
+ }
+
+ pub fn slash(env: Env, reputation: Address, target: Address, role: Role, reason: Symbol) {
+ let reputation_client = ReputationContractClient::new(&env, &reputation);
+ let caller_contract = env.current_contract_address();
+ reputation_client.slash(&caller_contract, &target, &role, &reason);
+ }
+
+ pub fn blacklist(env: Env, reputation: Address, target: Address, reason: Symbol) {
+ let reputation_client = ReputationContractClient::new(&env, &reputation);
+ let caller_contract = env.current_contract_address();
+ reputation_client.blacklist_profile(&caller_contract, &target, &reason);
+ }
+
+ pub fn record_dispute_failure(env: Env, reputation: Address, target: Address, role: Role) {
+ let reputation_client = ReputationContractClient::new(&env, &reputation);
+ let caller_contract = env.current_contract_address();
+ reputation_client.record_dispute_failure(&caller_contract, &target, &role);
+ }
+ }
+
+ fn setup_job(
+ env: &Env,
+ registry: &Address,
+ job_id: u64,
+ client_address: &Address,
+ freelancer: &Address,
+ ) {
+ setup_job_with_status(
+ env,
+ registry,
+ job_id,
+ client_address,
+ freelancer,
+ JobStatus::Completed,
+ );
+ }
+
+ fn setup_job_with_status(
+ env: &Env,
+ registry: &Address,
+ job_id: u64,
+ client_address: &Address,
+ freelancer: &Address,
+ status: JobStatus,
+ ) {
+ let job = JobRecord {
+ client: client_address.clone(),
+ freelancer: Some(freelancer.clone()),
+ metadata_hash: Bytes::from_slice(env, b"QmJob"),
+ budget_stroops: 10,
+ status,
+ expires_at: 0,
+ bid_deadline: 0,
+ collateral_token: Address::generate(env),
+ collateral_amount: 0,
+ collateral_locked: false,
+ };
+ let registry_client = MockJobRegistryClient::new(env, registry);
+ registry_client.set_job(&job_id, &job);
+ }
#[test]
fn test_initial_score() {
@@ -442,8 +991,46 @@ mod test {
let client = ReputationContractClient::new(&env, &contract_id);
let score = client.get_score(&address, &Role::Freelancer);
- assert_eq!(score.score, 5000);
+ assert_eq!(score.score, 5_000);
assert_eq!(score.total_jobs, 0);
+ assert_eq!(score.total_points, 0);
+ assert_eq!(score.reviews, 0);
+ assert_eq!(score.average_rating_bps, 5_000);
+ assert_eq!(score.badge_level, 1);
+ assert!(!score.blacklisted);
+
+ let view = client.query_reputation(&address);
+ assert_eq!(view.client.score, 5_000);
+ assert_eq!(view.client.badge_level, 1);
+ assert_eq!(view.freelancer.score, 5_000);
+ assert_eq!(view.freelancer.badge_level, 1);
+ assert!(!view.is_blacklisted);
+
+ let metadata = client.get_profile_metadata(&address);
+ assert_eq!(metadata, None);
+ }
+
+ #[test]
+ fn test_authorized_contract_updates_score() {
+ let env = Env::default();
+ env.mock_all_auths();
+
+ let admin = Address::generate(&env);
+ let target = Address::generate(&env);
+ let reputation_id = env.register_contract(None, ReputationContract);
+ let adjuster_id = env.register_contract(None, AuthorizedAdjuster);
+ let client = ReputationContractClient::new(&env, &reputation_id);
+ let adjuster = AuthorizedAdjusterClient::new(&env, &adjuster_id);
+
+ client.initialize(&admin);
+ client.set_authorized_contract(&admin, &adjuster_id);
+
+ adjuster.award(&reputation_id, &target, &Role::Freelancer, &1_500);
+
+ let score = client.get_score(&target, &Role::Freelancer);
+ assert_eq!(score.score, 6_500);
+ assert_eq!(score.total_jobs, 1);
+ assert_eq!(score.badge_level, 2);
}
#[test]
@@ -462,12 +1049,9 @@ mod test {
// Load profile from empty account - should not panic
let profile = client.get_profile(&address, &Role::Freelancer);
- assert_eq!(profile.address, address);
- assert_eq!(profile.role, Role::Freelancer);
- assert_eq!(profile.badge_tier, BadgeTier::None);
- assert_eq!(profile.completed_jobs, 0);
- assert_eq!(profile.reputation_score, 5000);
- assert_eq!(profile.review_count, 0);
+ let score = client.get_score(&freelancer, &Role::Freelancer);
+ assert_eq!(score.score, 8_000);
+ assert_eq!(score.badge_level, 3);
}
#[test]
@@ -477,14 +1061,41 @@ mod test {
env.mock_all_auths();
let admin = Address::generate(&env);
- let address = Address::generate(&env);
- let contract_id = env.register_contract(None, ReputationContract);
- let client = ReputationContractClient::new(&env, &contract_id);
+ let freelancer = Address::generate(&env);
+ let client_one = Address::generate(&env);
+ let reputation_id = env.register_contract(None, ReputationContract);
+ let registry_id = env.register_contract(None, MockJobRegistry);
+ let adjuster_id = env.register_contract(None, AuthorizedAdjuster);
+ let client = ReputationContractClient::new(&env, &reputation_id);
+ let adjuster = AuthorizedAdjusterClient::new(&env, &adjuster_id);
client.initialize(&admin);
+ client.set_job_registry(&admin, ®istry_id);
+ client.set_authorized_contract(&admin, &adjuster_id);
+
+ setup_job(&env, ®istry_id, 11, &client_one, &freelancer);
+ client.submit_rating(&client_one, &11, &freelancer, &5);
+
+ // 10,000 score → Platinum (4)
+ let after_first = client.get_public_metrics(&freelancer, &Symbol::new(&env, "freelancer"));
+ assert_eq!(after_first.get(4), Some(4));
- let tier = client.get_badge_tier(&address);
- assert_eq!(tier, BadgeTier::None);
+ // Slash down to 8,000 → Gold (3), verified immediately
+ adjuster.slash(
+ &reputation_id,
+ &freelancer,
+ &Role::Freelancer,
+ &Symbol::new(&env, "penalty"),
+ );
+ let after_slash = client.get_public_metrics(&freelancer, &Symbol::new(&env, "freelancer"));
+ assert_eq!(after_slash.get(4), Some(3));
+ assert_eq!(after_slash.get(0), Some(8_000));
+
+ // Award back up to 9,500 → Platinum (4)
+ adjuster.award(&reputation_id, &freelancer, &Role::Freelancer, &1_500);
+ let after_award = client.get_score(&freelancer, &Role::Freelancer);
+ assert_eq!(after_award.badge_level, 4);
+ assert_eq!(after_award.score, 9_500);
}
#[test]
@@ -493,6 +1104,43 @@ mod test {
env.mock_all_auths();
let admin = Address::generate(&env);
+ let freelancer = Address::generate(&env);
+ let client_one = Address::generate(&env);
+ let client_two = Address::generate(&env);
+ let client_three = Address::generate(&env);
+ let reputation_id = env.register_contract(None, ReputationContract);
+ let registry_id = env.register_contract(None, MockJobRegistry);
+ let adjuster_id = env.register_contract(None, AuthorizedAdjuster);
+ let client = ReputationContractClient::new(&env, &reputation_id);
+ let adjuster = AuthorizedAdjusterClient::new(&env, &adjuster_id);
+
+ client.initialize(&admin);
+ client.set_job_registry(&admin, ®istry_id);
+ client.set_authorized_contract(&admin, &adjuster_id);
+
+ setup_job(&env, ®istry_id, 21, &client_one, &freelancer);
+ setup_job(&env, ®istry_id, 22, &client_two, &freelancer);
+ setup_job(&env, ®istry_id, 23, &client_three, &freelancer);
+
+ client.submit_rating(&client_one, &21, &freelancer, &5);
+ client.submit_rating(&client_two, &22, &freelancer, &5);
+ client.submit_rating(&client_three, &23, &freelancer, &5);
+ adjuster.blacklist(&reputation_id, &freelancer, &Symbol::new(&env, "fraud"));
+
+ let score = client.get_score(&freelancer, &Role::Freelancer);
+ assert!(score.blacklisted);
+ assert_eq!(score.score, 1_000);
+ assert_eq!(score.badge_level, 0);
+
+ let view = client.query_reputation(&freelancer);
+ assert!(view.is_blacklisted);
+ assert!(client.is_blacklisted(&freelancer));
+ }
+
+ #[test]
+ #[should_panic(expected = "Error(Contract, #3)")]
+ fn test_get_public_metrics_rejects_unknown_role() {
+ let env = Env::default();
let address = Address::generate(&env);
let contract_id = env.register_contract(None, ReputationContract);
let client = ReputationContractClient::new(&env, &contract_id);
@@ -500,9 +1148,28 @@ mod test {
client.initialize(&admin);
client.update_score(&address, &Role::Freelancer, &500);
- let score = client.get_score(&address, &Role::Freelancer);
- assert_eq!(score.score, 5500);
- assert_eq!(score.total_jobs, 1);
+ let registry_id = env.register_contract(None, MockJobRegistry);
+ client.set_job_registry(&admin, ®istry_id);
+
+ setup_job(&env, ®istry_id, 7, &caller, &freelancer);
+ setup_job(&env, ®istry_id, 8, &caller_two, &target);
+
+ client.submit_rating(&caller, &7, &freelancer, &5);
+ let freelancer_score = client.get_score(&freelancer, &Role::Freelancer);
+ assert_eq!(freelancer_score.score, 10_000);
+ assert_eq!(freelancer_score.total_jobs, 1);
+ assert_eq!(freelancer_score.total_points, 5);
+ assert_eq!(freelancer_score.reviews, 1);
+ assert_eq!(freelancer_score.average_rating_bps, 10_000);
+ assert_eq!(freelancer_score.badge_level, 4);
+
+ client.submit_rating(&caller_two, &8, &target, &4);
+ let second_freelancer_score = client.get_score(&target, &Role::Freelancer);
+ assert_eq!(second_freelancer_score.score, 8_000);
+ assert_eq!(second_freelancer_score.total_jobs, 1);
+ assert_eq!(second_freelancer_score.total_points, 4);
+ assert_eq!(second_freelancer_score.reviews, 1);
+ assert_eq!(second_freelancer_score.average_rating_bps, 8_000);
}
#[test]
@@ -543,17 +1210,81 @@ mod test {
let client = ReputationContractClient::new(&env, &contract_id);
client.initialize(&admin);
+ client.set_job_registry(&admin, ®istry_id);
+ setup_job_with_status(
+ &env,
+ ®istry_id,
+ 42,
+ &job_client,
+ &freelancer,
+ JobStatus::Assigned,
+ );
+
+ let rejected = client.try_submit_rating(&job_client, &42, &freelancer, &5);
+ assert!(rejected.is_err());
+
+ let score = client.get_score(&freelancer, &Role::Freelancer);
+ assert_eq!(score.score, 5_000);
+ assert_eq!(score.total_jobs, 0);
+ assert_eq!(score.total_points, 0);
+ assert_eq!(score.reviews, 0);
+ assert_eq!(score.badge_level, 1);
+ }
// Reach Silver tier
for _ in 0..15 {
client.update_score(&address, &Role::Freelancer, &200);
}
- // Score should be 5000 + (200*15) = 8000 BPS
- let profile = client.get_profile(&address, &Role::Freelancer);
- assert_eq!(profile.reputation_score, 8000);
- assert_eq!(profile.completed_jobs, 15);
- assert_eq!(profile.badge_tier, BadgeTier::Silver);
+ client.initialize(&admin);
+ client.set_job_registry(&admin, ®istry_id);
+ setup_job(&env, ®istry_id, 43, &client_one, &freelancer);
+ setup_job(&env, ®istry_id, 44, &client_two, &freelancer);
+ setup_job(&env, ®istry_id, 45, &client_three, &freelancer);
+
+ client.submit_rating(&client_one, &43, &freelancer, &5);
+ client.submit_rating(&client_two, &44, &freelancer, &4);
+ client.submit_rating(&client_three, &45, &freelancer, &3);
+
+ let score = client.get_score(&freelancer, &Role::Freelancer);
+ assert_eq!(score.total_points, 12);
+ assert_eq!(score.reviews, 3);
+ assert_eq!(score.total_jobs, 3);
+ assert_eq!(score.average_rating_bps, 8_000);
+ assert_eq!(score.score, 8_000);
+ assert_eq!(score.badge_level, 3);
+ }
+
+ #[test]
+ fn test_reputation_score_decays_from_review_timestamp() {
+ let env = Env::default();
+ env.mock_all_auths();
+
+ let admin = Address::generate(&env);
+ let freelancer = Address::generate(&env);
+ let client_addr = Address::generate(&env);
+ let reputation_id = env.register_contract(None, ReputationContract);
+ let registry_id = env.register_contract(None, MockJobRegistry);
+ let client = ReputationContractClient::new(&env, &reputation_id);
+
+ client.initialize(&admin);
+ client.set_job_registry(&admin, ®istry_id);
+ setup_job(&env, ®istry_id, 46, &client_addr, &freelancer);
+
+ client.submit_rating(&client_addr, &46, &freelancer, &5);
+ assert_eq!(
+ client.get_score(&freelancer, &Role::Freelancer).score,
+ 10_000
+ );
+
+ env.ledger().with_mut(|ledger| {
+ ledger.timestamp += ReputationContract::SECONDS_PER_DAY;
+ });
+
+ let decayed = client.get_score(&freelancer, &Role::Freelancer);
+ assert_eq!(decayed.score, 9_950);
+ assert_eq!(decayed.average_rating_bps, 10_000);
+ assert_eq!(decayed.reviews, 1);
}
#[test]
@@ -594,16 +1325,28 @@ mod test {
client.initialize(&admin);
- // Reach Platinum tier
- for _ in 0..50 {
- client.update_score(&address, &Role::Freelancer, &100);
- }
+ // Default score is 5000 → Bronze
+ let badge = client.get_badge(&addr, &Role::Freelancer);
+ assert_eq!(badge, BadgeLevel::Bronze);
+ }
- // Score should be 5000 + (100*50) = 10000 BPS (clamped)
- let profile = client.get_profile(&address, &Role::Freelancer);
- assert_eq!(profile.reputation_score, 10000);
- assert_eq!(profile.completed_jobs, 50);
- assert_eq!(profile.badge_tier, BadgeTier::Platinum);
+ #[test]
+ fn test_badge_upgrades_to_silver_at_6000() {
+ let env = Env::default();
+ env.mock_all_auths();
+ let admin = Address::generate(&env);
+ let addr = Address::generate(&env);
+ let cid = env.register_contract(None, ReputationContract);
+ let adjuster_id = env.register_contract(None, AuthorizedAdjuster);
+ let client = ReputationContractClient::new(&env, &cid);
+ let adjuster = AuthorizedAdjusterClient::new(&env, &adjuster_id);
+ client.initialize(&admin);
+ client.set_authorized_contract(&admin, &adjuster_id);
+
+ // Raise score by 1000 → 5000+1000=6000 → Silver
+ adjuster.award(&cid, &addr, &Role::Freelancer, &1_000);
+ let badge = client.get_badge(&addr, &Role::Freelancer);
+ assert_eq!(badge, BadgeLevel::Silver);
}
#[test]
@@ -611,11 +1354,69 @@ mod test {
// Test that badge level changes reflect immediately after score update
let env = Env::default();
env.mock_all_auths();
+ let admin = Address::generate(&env);
+ let addr = Address::generate(&env);
+ let cid = env.register_contract(None, ReputationContract);
+ let adjuster_id = env.register_contract(None, AuthorizedAdjuster);
+ let client = ReputationContractClient::new(&env, &cid);
+ let adjuster = AuthorizedAdjusterClient::new(&env, &adjuster_id);
+ client.initialize(&admin);
+ client.set_authorized_contract(&admin, &adjuster_id);
+
+ adjuster.award(&cid, &addr, &Role::Freelancer, &3_000); // 5000+3000=8000
+ assert_eq!(client.get_badge(&addr, &Role::Freelancer), BadgeLevel::Gold);
+ }
let admin = Address::generate(&env);
- let address = Address::generate(&env);
- let contract_id = env.register_contract(None, ReputationContract);
- let client = ReputationContractClient::new(&env, &contract_id);
+ let addr = Address::generate(&env);
+ let cid = env.register_contract(None, ReputationContract);
+ let adjuster_id = env.register_contract(None, AuthorizedAdjuster);
+ let client = ReputationContractClient::new(&env, &cid);
+ let adjuster = AuthorizedAdjusterClient::new(&env, &adjuster_id);
+ client.initialize(&admin);
+ client.set_authorized_contract(&admin, &adjuster_id);
+
+ // Bring to Gold first, then slash twice to drop back to Bronze
+ adjuster.award(&cid, &addr, &Role::Client, &3_000); // 8000 → Gold
+ assert_eq!(client.get_badge(&addr, &Role::Client), BadgeLevel::Gold);
+ adjuster.slash(&cid, &addr, &Role::Client, &Symbol::new(&env, "fraud")); // 6000 → Silver
+ assert_eq!(client.get_badge(&addr, &Role::Client), BadgeLevel::Silver);
+ adjuster.slash(&cid, &addr, &Role::Client, &Symbol::new(&env, "fraud")); // 4000 → Bronze
+ assert_eq!(client.get_badge(&addr, &Role::Client), BadgeLevel::Bronze);
+ }
+
+ // ΓöÇΓöÇ Issue #406: badge metadata mapping ΓöÇΓöÇ
+
+ #[test]
+ fn test_set_and_get_badge_metadata() {
+ let env = Env::default();
+ env.mock_all_auths();
+ let admin = Address::generate(&env);
+ let addr = Address::generate(&env);
+ let cid = env.register_contract(None, ReputationContract);
+ let client = ReputationContractClient::new(&env, &cid);
+ client.initialize(&admin);
+
+ let uri = Bytes::from_slice(&env, b"ipfs://QmBronzeBadge");
+ client.set_badge_metadata(&admin, &addr, &BadgeTier::Bronze, &uri);
+
+ let result = client.get_badge_metadata(&addr, &BadgeTier::Bronze);
+ assert_eq!(result, Some(uri));
+ }
+
+ #[test]
+ fn test_badge_metadata_returns_none_when_unset() {
+ let env = Env::default();
+ env.mock_all_auths();
+ let admin = Address::generate(&env);
+ let addr = Address::generate(&env);
+ let cid = env.register_contract(None, ReputationContract);
+ let client = ReputationContractClient::new(&env, &cid);
+ client.initialize(&admin);
+
+ let result = client.get_badge_metadata(&addr, &BadgeTier::Gold);
+ assert_eq!(result, None);
+ }
client.initialize(&admin);
@@ -623,19 +1424,159 @@ mod test {
let profile1 = client.get_profile(&address, &Role::Freelancer);
assert_eq!(profile1.badge_tier, BadgeTier::None);
- // Accumulate to Bronze
- for _ in 0..5 {
- client.update_score(&address, &Role::Freelancer, &300);
- }
- let profile2 = client.get_profile(&address, &Role::Freelancer);
- assert_eq!(profile2.badge_tier, BadgeTier::Bronze);
+ assert_eq!(
+ client.get_badge_metadata(&addr, &BadgeTier::Silver),
+ Some(uri_v2)
+ );
+ }
- // Continue to Silver
- for _ in 0..10 {
- client.update_score(&address, &Role::Freelancer, &200);
- }
- let profile3 = client.get_profile(&address, &Role::Freelancer);
- assert_eq!(profile3.badge_tier, BadgeTier::Silver);
+ #[test]
+ fn test_multiple_tiers_stored_independently() {
+ let env = Env::default();
+ env.mock_all_auths();
+ let admin = Address::generate(&env);
+ let addr = Address::generate(&env);
+ let cid = env.register_contract(None, ReputationContract);
+ let client = ReputationContractClient::new(&env, &cid);
+ client.initialize(&admin);
+
+ let bronze_uri = Bytes::from_slice(&env, b"ipfs://Bronze");
+ let gold_uri = Bytes::from_slice(&env, b"ipfs://Gold");
+ client.set_badge_metadata(&admin, &addr, &BadgeTier::Bronze, &bronze_uri);
+ client.set_badge_metadata(&admin, &addr, &BadgeTier::Gold, &gold_uri);
+
+ assert_eq!(
+ client.get_badge_metadata(&addr, &BadgeTier::Bronze),
+ Some(bronze_uri)
+ );
+ assert_eq!(
+ client.get_badge_metadata(&addr, &BadgeTier::Gold),
+ Some(gold_uri)
+ );
+ assert_eq!(client.get_badge_metadata(&addr, &BadgeTier::Silver), None);
+ }
+
+ // ── Dynamic decay parameter (lambda tuning) tests ──
+
+ #[test]
+ fn test_default_slash_decay_matches_constant() {
+ let env = Env::default();
+ env.mock_all_auths();
+ let admin = Address::generate(&env);
+ let addr = Address::generate(&env);
+ let reputation_id = env.register_contract(None, ReputationContract);
+ let adjuster_id = env.register_contract(None, AuthorizedAdjuster);
+ let client = ReputationContractClient::new(&env, &reputation_id);
+ let adjuster = AuthorizedAdjusterClient::new(&env, &adjuster_id);
+ client.initialize(&admin);
+ client.set_authorized_contract(&admin, &adjuster_id);
+
+ // Default score 5,000, award to 10,000
+ adjuster.award(&reputation_id, &addr, &Role::Freelancer, &5_000);
+ assert_eq!(client.get_score(&addr, &Role::Freelancer).score, 10_000);
+
+ // Default slash decay is 8,000 BPS (80%) → 8,000
+ adjuster.slash(
+ &reputation_id,
+ &addr,
+ &Role::Freelancer,
+ &Symbol::new(&env, "test"),
+ );
+ assert_eq!(client.get_score(&addr, &Role::Freelancer).score, 8_000);
+ }
+
+ #[test]
+ fn test_admin_can_update_slash_decay() {
+ let env = Env::default();
+ env.mock_all_auths();
+ let admin = Address::generate(&env);
+ let reputation_id = env.register_contract(None, ReputationContract);
+ let client = ReputationContractClient::new(&env, &reputation_id);
+ client.initialize(&admin);
+
+ client.set_slash_decay(&admin, &5_000);
+ // Read back via calling slash on a known score
+ let addr = Address::generate(&env);
+ let adjuster_id = env.register_contract(None, AuthorizedAdjuster);
+ let adjuster = AuthorizedAdjusterClient::new(&env, &adjuster_id);
+ client.set_authorized_contract(&admin, &adjuster_id);
+
+ adjuster.award(&reputation_id, &addr, &Role::Freelancer, &5_000);
+ assert_eq!(client.get_score(&addr, &Role::Freelancer).score, 10_000);
+
+ // Now slash at 50% → 5,000
+ adjuster.slash(
+ &reputation_id,
+ &addr,
+ &Role::Freelancer,
+ &Symbol::new(&env, "test"),
+ );
+ assert_eq!(client.get_score(&addr, &Role::Freelancer).score, 5_000);
+ }
+
+ #[test]
+ fn test_admin_can_update_blacklist_decay() {
+ let env = Env::default();
+ env.mock_all_auths();
+ let admin = Address::generate(&env);
+ let reputation_id = env.register_contract(None, ReputationContract);
+ let client = ReputationContractClient::new(&env, &reputation_id);
+ let adjuster_id = env.register_contract(None, AuthorizedAdjuster);
+ let adjuster = AuthorizedAdjusterClient::new(&env, &adjuster_id);
+ client.initialize(&admin);
+ client.set_authorized_contract(&admin, &adjuster_id);
+
+ // Set blacklist decay to 5,000 BPS (50%)
+ client.set_blacklist_decay(&admin, &5_000);
+
+ let addr = Address::generate(&env);
+ adjuster.award(&reputation_id, &addr, &Role::Freelancer, &5_000);
+ assert_eq!(client.get_score(&addr, &Role::Freelancer).score, 10_000);
+
+ adjuster.blacklist(&reputation_id, &addr, &Symbol::new(&env, "abuse"));
+ // 50% of 10,000 = 5,000
+ assert_eq!(client.get_score(&addr, &Role::Freelancer).score, 5_000);
+ assert_eq!(client.get_score(&addr, &Role::Client).score, 2_500);
+ }
+
+ #[test]
+ #[should_panic(expected = "Error(Contract, #2)")]
+ fn test_non_admin_cannot_set_slash_decay() {
+ let env = Env::default();
+ env.mock_all_auths();
+ let admin = Address::generate(&env);
+ let attacker = Address::generate(&env);
+ let reputation_id = env.register_contract(None, ReputationContract);
+ let client = ReputationContractClient::new(&env, &reputation_id);
+ client.initialize(&admin);
+
+ client.set_slash_decay(&attacker, &5_000);
+ }
+
+ #[test]
+ #[should_panic(expected = "Error(Contract, #3)")]
+ fn test_invalid_slash_decay_is_rejected() {
+ let env = Env::default();
+ env.mock_all_auths();
+ let admin = Address::generate(&env);
+ let reputation_id = env.register_contract(None, ReputationContract);
+ let client = ReputationContractClient::new(&env, &reputation_id);
+ client.initialize(&admin);
+
+ client.set_slash_decay(&admin, &999);
+ }
+
+ #[test]
+ #[should_panic(expected = "Error(Contract, #3)")]
+ fn test_invalid_blacklist_decay_is_rejected() {
+ let env = Env::default();
+ env.mock_all_auths();
+ let admin = Address::generate(&env);
+ let reputation_id = env.register_contract(None, ReputationContract);
+ let client = ReputationContractClient::new(&env, &reputation_id);
+ client.initialize(&admin);
+
+ client.set_blacklist_decay(&admin, &11_000);
}
#[test]
@@ -670,21 +1611,84 @@ mod test {
let contract_id = env.register_contract(None, ReputationContract);
let client = ReputationContractClient::new(&env, &contract_id);
- // Initialize without mocking all auths for this test
+ // Fetching score for empty account should not panic and return defaults
+ let score = client.get_score(&address, &Role::Freelancer);
+ assert_eq!(score.score, 5000);
+ assert_eq!(score.badge_level, 1);
+
+ let level = client.get_badge_level(&address, &Role::Freelancer);
+ assert_eq!(level, 1);
+ }
+
+ #[test]
+ fn test_badge_upgrades() {
+ let env = Env::default();
env.mock_all_auths();
client.initialize(&admin);
env.mock_all_auths_allow_last();
- // Try to submit rating without proper job context
- // This should fail because the caller is not authenticated
- let result = std::panic::catch_unwind(std::panic::AssertUnwindSafe(|| {
- let unauthorized_caller = Address::generate(&env);
- let target = Address::generate(&env);
- client.submit_rating(&unauthorized_caller, &123, &target, &5);
- }));
+ setup_job(&env, ®istry_id, 101, &client_one, &freelancer);
+ setup_job(&env, ®istry_id, 102, &client_two, &freelancer);
+ setup_job(&env, ®istry_id, 103, &client_three, &freelancer);
+
+ assert_eq!(client.get_badge_level(&freelancer, &Role::Freelancer), 1);
+
+ client.submit_rating(&client_one, &101, &freelancer, &5);
+ assert_eq!(client.get_badge_level(&freelancer, &Role::Freelancer), 4);
+
+ client.submit_rating(&client_two, &102, &freelancer, &5);
+ assert_eq!(client.get_badge_level(&freelancer, &Role::Freelancer), 4);
+
+ client.submit_rating(&client_three, &103, &freelancer, &5);
+ assert_eq!(client.get_badge_level(&freelancer, &Role::Freelancer), 4);
+
+ // Check public metrics
+ let metrics =
+ client.get_public_metrics(&freelancer, &soroban_sdk::Symbol::new(&env, "freelancer"));
+ assert_eq!(metrics.get(0).unwrap(), 10_000);
+ assert_eq!(metrics.get(1).unwrap(), 3);
+ assert_eq!(metrics.get(4).unwrap(), 4);
+ }
+
+ #[test]
+ fn test_badge_revocation_after_multiple_dispute_failures() {
+ let env = Env::default();
+ env.mock_all_auths();
- // The authorization check should cause a panic/failure
- assert!(result.is_err() || true); // May panic or fail due to authorization
+ let admin = Address::generate(&env);
+ let freelancer = Address::generate(&env);
+ let reputation_id = env.register_contract(None, ReputationContract);
+ let adjuster_id = env.register_contract(None, AuthorizedAdjuster);
+ let client = ReputationContractClient::new(&env, &reputation_id);
+ let adjuster = AuthorizedAdjusterClient::new(&env, &adjuster_id);
+
+ client.initialize(&admin);
+ client.set_authorized_contract(&admin, &adjuster_id);
+
+ // Build up a high score and badge level
+ adjuster.award(&reputation_id, &freelancer, &Role::Freelancer, &2_000);
+ adjuster.award(&reputation_id, &freelancer, &Role::Freelancer, &2_000);
+ adjuster.award(&reputation_id, &freelancer, &Role::Freelancer, &2_000);
+
+ let score = client.get_score(&freelancer, &Role::Freelancer);
+ assert_eq!(score.score, 10_000);
+ assert_eq!(score.badge_level, 4);
+
+ // First dispute failure - badge should remain
+ adjuster.record_dispute_failure(&reputation_id, &freelancer, &Role::Freelancer);
+ let score_after_1 = client.get_score(&freelancer, &Role::Freelancer);
+ assert_eq!(score_after_1.badge_level, 4);
+
+ // Second dispute failure - badge should remain
+ adjuster.record_dispute_failure(&reputation_id, &freelancer, &Role::Freelancer);
+ let score_after_2 = client.get_score(&freelancer, &Role::Freelancer);
+ assert_eq!(score_after_2.badge_level, 4);
+
+ // Third dispute failure - badge should be revoked (threshold = 3)
+ adjuster.record_dispute_failure(&reputation_id, &freelancer, &Role::Freelancer);
+ let score_after_3 = client.get_score(&freelancer, &Role::Freelancer);
+ assert_eq!(score_after_3.badge_level, 0); // Badge revoked
+ assert!(score_after_3.score < 10_000); // Score penalty applied
}
#[test]
@@ -711,21 +1715,37 @@ mod test {
// Test exponential decay function
let initial = 10000;
- // No decay with 0 periods
- let result = fixed_point::apply_decay(initial, 0);
- assert_eq!(result, 10000);
+ let admin = Address::generate(&env);
+ let authorized_contract = Address::generate(&env);
+ let unauthorized_contract = Address::generate(&env);
+ let address = Address::generate(&env);
+
+ let contract_id = env.register_contract(None, ReputationContract);
+ let client = ReputationContractClient::new(&env, &contract_id);
+
+ client.initialize(&admin);
- // 1 period: 10000 * 0.99 = 9900
- let result = fixed_point::apply_decay(initial, 1);
- assert_eq!(result, 9900);
+ // Authorize the contract
+ client.authorize_contract(&admin, &authorized_contract);
+ assert!(client.is_contract_authorized(&authorized_contract));
+ assert!(!client.is_contract_authorized(&unauthorized_contract));
// 2 periods: 10000 * 0.99 * 0.99 = 9801
let result = fixed_point::apply_decay(initial, 2);
assert_eq!(result, 9801);
- // Results should be >= 0
- let result = fixed_point::apply_decay(10, 100);
- assert!(result >= 0);
+ // Unauthorized contract attempt to adjust score should panic
+ let res =
+ client.try_update_score(&unauthorized_contract, &address, &Role::Freelancer, &100);
+ assert!(res.is_err());
+
+ // Deauthorize
+ client.deauthorize_contract(&admin, &authorized_contract);
+ assert!(!client.is_contract_authorized(&authorized_contract));
+
+ // Now it should fail
+ let res2 = client.try_update_score(&authorized_contract, &address, &Role::Freelancer, &100);
+ assert!(res2.is_err());
}
#[test]
@@ -740,20 +1760,32 @@ mod test {
let client = ReputationContractClient::new(&env, &contract_id);
client.initialize(&admin);
-
- // Build up to Bronze tier
- for _ in 0..5 {
- client.update_score(&address, &Role::Freelancer, &300);
- }
- let profile1 = client.get_profile(&address, &Role::Freelancer);
- assert_eq!(profile1.badge_tier, BadgeTier::Bronze);
- assert_eq!(profile1.reputation_score, 6500);
-
- // Slash and verify downgrade
- client.slash(
+ env.ledger().with_mut(|ledger| {
+ ledger.timestamp = 20_000;
+ });
+
+ // craft a stale profile with low score and old last_activity
+ use crate::profile::Profile;
+ let mut profile = Profile::new(&env, address.clone());
+ profile.freelancer.score = 2_000;
+ profile.freelancer.completed_jobs = 1;
+ profile.last_activity = 10_000;
+
+ // write directly into storage
+ env.as_contract(&contract_id, || {
+ storage::write_profile(&env, &address, &profile);
+ });
+
+ // authorize the contract that will call recover
+ client.set_authorized_contract(&admin, &authorized_contract);
+
+ // recover 50% of the gap towards default
+ client.recover_score(
+ &authorized_contract,
&address,
&Role::Freelancer,
- &soroban_sdk::Symbol::new(&env, "fraud"),
+ &100u64,
+ &5_000,
);
let profile2 = client.get_profile(&address, &Role::Freelancer);
@@ -774,8 +1806,45 @@ mod test {
client.initialize(&admin);
- let profile = client.get_profile(&address, &Role::Freelancer);
- assert!(profile.last_updated > 0);
+ // attacker (unauthorized) attempts recovery
+ client.recover_score(&attacker, &address, &Role::Freelancer, &1u64, &1_000);
+ }
+
+ #[test]
+ fn test_arbitrary_direct_review_rejected() {
+ let env = Env::default();
+ env.mock_all_auths();
+
+ let admin = Address::generate(&env);
+ let client_addr = Address::generate(&env);
+ let freelancer_addr = Address::generate(&env);
+ let attacker = Address::generate(&env);
+
+ let contract_id = env.register_contract(None, ReputationContract);
+ let client = ReputationContractClient::new(&env, &contract_id);
+ client.initialize(&admin);
+
+ let mock_id = env.register_contract(None, MockJobRegistry);
+ client.set_job_registry(&admin, &mock_id);
+
+ let job = JobRecord {
+ client: client_addr.clone(),
+ freelancer: Some(freelancer_addr.clone()),
+ metadata_hash: Bytes::from_slice(&env, b"QmJob"),
+ budget_stroops: 10,
+ expires_at: 0,
+ status: JobStatus::Completed,
+ bid_deadline: 0,
+ collateral_token: Address::generate(&env),
+ collateral_amount: 0,
+ collateral_locked: false,
+ };
+ let mock_client = MockJobRegistryClient::new(&env, &mock_id);
+ mock_client.set_job(&7u64, &job);
+
+ // Attacker who is not part of the job tries to rate the freelancer
+ let res = client.try_submit_rating(&attacker, &7u64, &freelancer_addr, &5u32);
+ assert!(res.is_err()); // should reject with unauthorized
}
}
diff --git a/contracts/reputation/src/profile.rs b/contracts/reputation/src/profile.rs
index 503bf866..8c2fd45b 100644
--- a/contracts/reputation/src/profile.rs
+++ b/contracts/reputation/src/profile.rs
@@ -1,4 +1,4 @@
-use soroban_sdk::{contracttype, Address, Bytes, Env};
+use soroban_sdk::{contracttype, Address, Bytes};
#[contracttype]
#[derive(Clone, Debug, PartialEq)]
@@ -6,6 +6,7 @@ pub struct ReviewAggregate {
pub total_points: i128,
pub reviews: u32,
pub average_rating_bps: i32,
+ pub last_reviewed_at: u64,
}
impl ReviewAggregate {
@@ -14,6 +15,7 @@ impl ReviewAggregate {
total_points: 0,
reviews: 0,
average_rating_bps: 5_000,
+ last_reviewed_at: 0,
}
}
}
@@ -35,7 +37,7 @@ impl RoleMetrics {
score: 5_000,
completed_jobs: 0,
review: ReviewAggregate::new(),
- badge_level: 0,
+ badge_level: BadgeLevel::from_score(5_000).to_u32(),
dispute_failures: 0,
}
}
@@ -69,6 +71,16 @@ impl BadgeLevel {
_ => BadgeLevel::None,
}
}
+
+ pub fn to_u32(&self) -> u32 {
+ match self {
+ BadgeLevel::None => 0,
+ BadgeLevel::Bronze => 1,
+ BadgeLevel::Silver => 2,
+ BadgeLevel::Gold => 3,
+ BadgeLevel::Platinum => 4,
+ }
+ }
}
/// Badge tiers keyed in the metadata map.
@@ -106,7 +118,7 @@ pub struct Profile {
}
impl Profile {
- pub fn new(env: &Env, address: Address) -> Self {
+ pub fn new(env: &soroban_sdk::Env, address: Address) -> Self {
Self {
address,
client: RoleMetrics::new(),
@@ -121,7 +133,22 @@ impl Profile {
}
pub fn refresh_badges(&mut self) {
+ let blacklisted = self.is_blacklisted;
+ self.client.badge_level = if blacklisted {
+ 0
+ } else {
+ BadgeLevel::from_score(self.client.score).to_u32()
+ };
+ self.freelancer.badge_level = if blacklisted {
+ 0
+ } else {
+ BadgeLevel::from_score(self.freelancer.score).to_u32()
+ };
self.client_badge = BadgeLevel::from_score(self.client.score);
self.freelancer_badge = BadgeLevel::from_score(self.freelancer.score);
+ if blacklisted {
+ self.client_badge = BadgeLevel::None;
+ self.freelancer_badge = BadgeLevel::None;
+ }
}
}
diff --git a/contracts/reputation/test_snapshots/test/test_admin_can_update_blacklist_decay.1.json b/contracts/reputation/test_snapshots/test/test_admin_can_update_blacklist_decay.1.json
new file mode 100644
index 00000000..35cecc4a
--- /dev/null
+++ b/contracts/reputation/test_snapshots/test/test_admin_can_update_blacklist_decay.1.json
@@ -0,0 +1,1551 @@
+{
+ "generators": {
+ "address": 4,
+ "nonce": 0
+ },
+ "auth": [
+ [],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "function_name": "set_authorized_contract",
+ "args": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "function_name": "set_blacklist_decay",
+ "args": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "i32": 5000
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ [],
+ [],
+ [],
+ [],
+ []
+ ],
+ "ledger": {
+ "protocol_version": 21,
+ "sequence_number": 0,
+ "timestamp": 0,
+ "network_id": "0000000000000000000000000000000000000000000000000000000000000000",
+ "base_reserve": 0,
+ "min_persistent_entry_ttl": 4096,
+ "min_temp_entry_ttl": 16,
+ "max_entry_ttl": 6312000,
+ "ledger_entries": [
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Profile"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ ]
+ },
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Profile"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ ]
+ },
+ "durability": "persistent",
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_metadata"
+ },
+ "val": {
+ "vec": []
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "completed_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "review"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 2500
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "completed_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "review"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 5000
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "is_blacklisted"
+ },
+ "val": {
+ "bool": true
+ }
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": "void"
+ }
+ ]
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "AuthorizedUpdater"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "BlacklistDecayBps"
+ }
+ ]
+ },
+ "val": {
+ "i32": 5000
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": null
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_code": {
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_code": {
+ "ext": "v0",
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "code": ""
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ]
+ ]
+ },
+ "events": [
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ },
+ {
+ "symbol": "set_authorized_contract"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "reputation"
+ },
+ {
+ "string": "AuthorizedContractUpdated"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "by_admin"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ },
+ {
+ "key": {
+ "symbol": "contract_address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "updated_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "set_authorized_contract"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ },
+ {
+ "symbol": "set_blacklist_decay"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "i32": 5000
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "reputation"
+ },
+ {
+ "string": "DecayParameterUpdated"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "by_admin"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ },
+ {
+ "key": {
+ "symbol": "new_value"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "old_value"
+ },
+ "val": {
+ "i32": 1000
+ }
+ },
+ {
+ "key": {
+ "symbol": "param_name"
+ },
+ "val": {
+ "symbol": "blacklist_decay_bps"
+ }
+ },
+ {
+ "key": {
+ "symbol": "updated_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "set_blacklist_decay"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "award"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ },
+ {
+ "i32": 5000
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ },
+ {
+ "symbol": "update_score"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ },
+ {
+ "i32": 5000
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "reputation"
+ },
+ {
+ "string": "ScoreAdjusted"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "adjusted_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 4
+ }
+ },
+ {
+ "key": {
+ "symbol": "delta"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "new_score"
+ },
+ "val": {
+ "i32": 10000
+ }
+ },
+ {
+ "key": {
+ "symbol": "role"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "update_score"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "award"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ },
+ {
+ "symbol": "get_score"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_score"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 4
+ }
+ },
+ {
+ "key": {
+ "symbol": "blacklisted"
+ },
+ "val": {
+ "bool": false
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "role"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 10000
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "blacklist"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "symbol": "abuse"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ },
+ {
+ "symbol": "blacklist_profile"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "symbol": "abuse"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "reputation"
+ },
+ {
+ "string": "BlacklistUpdated"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "client_score"
+ },
+ "val": {
+ "i32": 2500
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer_score"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "is_blacklisted"
+ },
+ "val": {
+ "bool": true
+ }
+ },
+ {
+ "key": {
+ "symbol": "updated_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "blacklist_profile"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "blacklist"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ },
+ {
+ "symbol": "get_score"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_score"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "blacklisted"
+ },
+ "val": {
+ "bool": true
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "role"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ },
+ {
+ "symbol": "get_score"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Client"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_score"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "blacklisted"
+ },
+ "val": {
+ "bool": true
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "role"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Client"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 2500
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ }
+ ]
+}
\ No newline at end of file
diff --git a/contracts/reputation/test_snapshots/test/test_admin_can_update_slash_decay.1.json b/contracts/reputation/test_snapshots/test/test_admin_can_update_slash_decay.1.json
new file mode 100644
index 00000000..4113d173
--- /dev/null
+++ b/contracts/reputation/test_snapshots/test/test_admin_can_update_slash_decay.1.json
@@ -0,0 +1,1444 @@
+{
+ "generators": {
+ "address": 4,
+ "nonce": 0
+ },
+ "auth": [
+ [],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "function_name": "set_slash_decay",
+ "args": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "i32": 5000
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "function_name": "set_authorized_contract",
+ "args": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ [],
+ [],
+ [],
+ []
+ ],
+ "ledger": {
+ "protocol_version": 21,
+ "sequence_number": 0,
+ "timestamp": 0,
+ "network_id": "0000000000000000000000000000000000000000000000000000000000000000",
+ "base_reserve": 0,
+ "min_persistent_entry_ttl": 4096,
+ "min_temp_entry_ttl": 16,
+ "max_entry_ttl": 6312000,
+ "ledger_entries": [
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Profile"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ ]
+ },
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Profile"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ ]
+ },
+ "durability": "persistent",
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_metadata"
+ },
+ "val": {
+ "vec": []
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "completed_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "review"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 5000
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "completed_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "review"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 5000
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "is_blacklisted"
+ },
+ "val": {
+ "bool": false
+ }
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": "void"
+ }
+ ]
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "AuthorizedUpdater"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "SlashDecayBps"
+ }
+ ]
+ },
+ "val": {
+ "i32": 5000
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": null
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_code": {
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_code": {
+ "ext": "v0",
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "code": ""
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ]
+ ]
+ },
+ "events": [
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ },
+ {
+ "symbol": "set_slash_decay"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "i32": 5000
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "reputation"
+ },
+ {
+ "string": "DecayParameterUpdated"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "by_admin"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ },
+ {
+ "key": {
+ "symbol": "new_value"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "old_value"
+ },
+ "val": {
+ "i32": 8000
+ }
+ },
+ {
+ "key": {
+ "symbol": "param_name"
+ },
+ "val": {
+ "symbol": "slash_decay_bps"
+ }
+ },
+ {
+ "key": {
+ "symbol": "updated_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "set_slash_decay"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ },
+ {
+ "symbol": "set_authorized_contract"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "reputation"
+ },
+ {
+ "string": "AuthorizedContractUpdated"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "by_admin"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ },
+ {
+ "key": {
+ "symbol": "contract_address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "updated_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "set_authorized_contract"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ },
+ {
+ "symbol": "award"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ },
+ {
+ "i32": 5000
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ },
+ {
+ "symbol": "update_score"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ },
+ {
+ "i32": 5000
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "reputation"
+ },
+ {
+ "string": "ScoreAdjusted"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "adjusted_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 4
+ }
+ },
+ {
+ "key": {
+ "symbol": "delta"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "new_score"
+ },
+ "val": {
+ "i32": 10000
+ }
+ },
+ {
+ "key": {
+ "symbol": "role"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "update_score"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "award"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ },
+ {
+ "symbol": "get_score"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_score"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 4
+ }
+ },
+ {
+ "key": {
+ "symbol": "blacklisted"
+ },
+ "val": {
+ "bool": false
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "role"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 10000
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ },
+ {
+ "symbol": "slash"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ },
+ {
+ "symbol": "test"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ },
+ {
+ "symbol": "slash"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ },
+ {
+ "symbol": "test"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "reputation"
+ },
+ {
+ "string": "ScoreAdjusted"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "adjusted_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "delta"
+ },
+ "val": {
+ "i32": -5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "new_score"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "role"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "slash"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "slash"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ },
+ {
+ "symbol": "get_score"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_score"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ }
+ },
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "blacklisted"
+ },
+ "val": {
+ "bool": false
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "role"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ }
+ ]
+}
\ No newline at end of file
diff --git a/contracts/reputation/test_snapshots/test/test_authorized_contract_updates_score.1.json b/contracts/reputation/test_snapshots/test/test_authorized_contract_updates_score.1.json
index c08eb669..fc2f7926 100644
--- a/contracts/reputation/test_snapshots/test/test_authorized_contract_updates_score.1.json
+++ b/contracts/reputation/test_snapshots/test/test_authorized_contract_updates_score.1.json
@@ -137,7 +137,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 0
+ "u32": 1
}
},
{
@@ -206,7 +206,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 0
+ "u32": 2
}
},
{
@@ -214,7 +214,7 @@
"symbol": "completed_jobs"
},
"val": {
- "u32": 1
+ "u32": 0
}
},
{
@@ -673,7 +673,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 0
+ "u32": 2
}
},
{
@@ -709,7 +709,7 @@
"symbol": "total_jobs"
},
"val": {
- "u32": 1
+ "u32": 0
}
}
]
@@ -836,7 +836,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 0
+ "u32": 2
}
},
{
@@ -880,7 +880,7 @@
"symbol": "total_jobs"
},
"val": {
- "u32": 1
+ "u32": 0
}
},
{
diff --git a/contracts/reputation/test_snapshots/test/test_badge_metadata_returns_none_when_unset.1.json b/contracts/reputation/test_snapshots/test/test_badge_metadata_returns_none_when_unset.1.json
new file mode 100644
index 00000000..f4f040b1
--- /dev/null
+++ b/contracts/reputation/test_snapshots/test/test_badge_metadata_returns_none_when_unset.1.json
@@ -0,0 +1,195 @@
+{
+ "generators": {
+ "address": 3,
+ "nonce": 0
+ },
+ "auth": [
+ [],
+ []
+ ],
+ "ledger": {
+ "protocol_version": 21,
+ "sequence_number": 0,
+ "timestamp": 0,
+ "network_id": "0000000000000000000000000000000000000000000000000000000000000000",
+ "base_reserve": 0,
+ "min_persistent_entry_ttl": 4096,
+ "min_temp_entry_ttl": 16,
+ "max_entry_ttl": 6312000,
+ "ledger_entries": [
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ],
+ [
+ {
+ "contract_code": {
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_code": {
+ "ext": "v0",
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "code": ""
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ]
+ ]
+ },
+ "events": [
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "get_badge_metadata"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Gold"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_badge_metadata"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ }
+ ]
+}
\ No newline at end of file
diff --git a/contracts/reputation/test_snapshots/test/test_badge_metadata_update_overwrites_existing.1.json b/contracts/reputation/test_snapshots/test/test_badge_metadata_update_overwrites_existing.1.json
new file mode 100644
index 00000000..5408308a
--- /dev/null
+++ b/contracts/reputation/test_snapshots/test/test_badge_metadata_update_overwrites_existing.1.json
@@ -0,0 +1,694 @@
+{
+ "generators": {
+ "address": 3,
+ "nonce": 0
+ },
+ "auth": [
+ [],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "function_name": "set_badge_metadata",
+ "args": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Silver"
+ }
+ ]
+ },
+ {
+ "bytes": "697066733a2f2f516d53696c7665725631"
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "function_name": "set_badge_metadata",
+ "args": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Silver"
+ }
+ ]
+ },
+ {
+ "bytes": "697066733a2f2f516d53696c7665725632"
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ []
+ ],
+ "ledger": {
+ "protocol_version": 21,
+ "sequence_number": 0,
+ "timestamp": 0,
+ "network_id": "0000000000000000000000000000000000000000000000000000000000000000",
+ "base_reserve": 0,
+ "min_persistent_entry_ttl": 4096,
+ "min_temp_entry_ttl": 16,
+ "max_entry_ttl": 6312000,
+ "ledger_entries": [
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Profile"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ ]
+ },
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Profile"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ ]
+ },
+ "durability": "persistent",
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_metadata"
+ },
+ "val": {
+ "vec": [
+ {
+ "map": [
+ {
+ "key": {
+ "symbol": "tier"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Silver"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "uri"
+ },
+ "val": {
+ "bytes": "697066733a2f2f516d53696c7665725632"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "completed_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "review"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 5000
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "completed_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "review"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 5000
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "is_blacklisted"
+ },
+ "val": {
+ "bool": false
+ }
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": "void"
+ }
+ ]
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ],
+ [
+ {
+ "contract_code": {
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_code": {
+ "ext": "v0",
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "code": ""
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ]
+ ]
+ },
+ "events": [
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "set_badge_metadata"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Silver"
+ }
+ ]
+ },
+ {
+ "bytes": "697066733a2f2f516d53696c7665725631"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "set_badge_metadata"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "set_badge_metadata"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Silver"
+ }
+ ]
+ },
+ {
+ "bytes": "697066733a2f2f516d53696c7665725632"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "set_badge_metadata"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "get_badge_metadata"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Silver"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_badge_metadata"
+ }
+ ],
+ "data": {
+ "bytes": "697066733a2f2f516d53696c7665725632"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ }
+ ]
+}
\ No newline at end of file
diff --git a/contracts/reputation/test_snapshots/test/test_initial_score.1.json b/contracts/reputation/test_snapshots/test/test_badge_starts_at_bronze_for_default_score.1.json
similarity index 63%
rename from contracts/reputation/test_snapshots/test/test_initial_score.1.json
rename to contracts/reputation/test_snapshots/test/test_badge_starts_at_bronze_for_default_score.1.json
index 472200bc..d1343979 100644
--- a/contracts/reputation/test_snapshots/test/test_initial_score.1.json
+++ b/contracts/reputation/test_snapshots/test/test_badge_starts_at_bronze_for_default_score.1.json
@@ -1,9 +1,10 @@
{
"generators": {
- "address": 2,
+ "address": 3,
"nonce": 0
},
"auth": [
+ [],
[]
],
"ledger": {
@@ -19,7 +20,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -30,7 +31,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -38,7 +39,20 @@
"executable": {
"wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- "storage": null
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ }
+ ]
}
}
}
@@ -84,16 +98,63 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
},
{
- "symbol": "get_score"
+ "symbol": "get_badge"
}
],
"data": {
"vec": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
},
{
"vec": [
@@ -112,7 +173,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
"type_": "diagnostic",
"body": {
"v0": {
@@ -121,62 +182,13 @@
"symbol": "fn_return"
},
{
- "symbol": "get_score"
+ "symbol": "get_badge"
}
],
"data": {
- "map": [
- {
- "key": {
- "symbol": "address"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- },
- {
- "key": {
- "symbol": "reviews"
- },
- "val": {
- "u32": 0
- }
- },
- {
- "key": {
- "symbol": "role"
- },
- "val": {
- "vec": [
- {
- "symbol": "Freelancer"
- }
- ]
- }
- },
- {
- "key": {
- "symbol": "score"
- },
- "val": {
- "i32": 5000
- }
- },
- {
- "key": {
- "symbol": "total_jobs"
- },
- "val": {
- "u32": 0
- }
- },
+ "vec": [
{
- "key": {
- "symbol": "total_points"
- },
- "val": {
- "i32": 0
- }
+ "symbol": "Bronze"
}
]
}
diff --git a/contracts/reputation/test_snapshots/test/test_badge_upgrades_reflect_immediately_in_public_getters.1.json b/contracts/reputation/test_snapshots/test/test_badge_upgrades_reflect_immediately_in_public_getters.1.json
index 47296897..bbd6099f 100644
--- a/contracts/reputation/test_snapshots/test/test_badge_upgrades_reflect_immediately_in_public_getters.1.json
+++ b/contracts/reputation/test_snapshots/test/test_badge_upgrades_reflect_immediately_in_public_getters.1.json
@@ -1,6 +1,6 @@
{
"generators": {
- "address": 7,
+ "address": 6,
"nonce": 0
},
"auth": [
@@ -11,14 +11,14 @@
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"function_name": "set_job_registry",
"args": [
{
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
}
]
}
@@ -27,29 +27,20 @@
}
]
],
- [],
- [],
- [],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "function_name": "submit_rating",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "function_name": "set_authorized_contract",
"args": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- },
- {
- "u64": 11
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
},
{
- "u32": 5
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
}
]
}
@@ -61,18 +52,18 @@
[],
[
[
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
{
"function": {
"contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"function_name": "submit_rating",
"args": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
},
{
- "u64": 12
+ "u64": 11
},
{
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
@@ -88,34 +79,8 @@
]
],
[],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "function_name": "submit_rating",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- },
- {
- "u64": 13
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "u32": 5
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
+ [],
+ [],
[],
[]
],
@@ -165,7 +130,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"ledger_key_nonce": {
"nonce": 5541220902715666415
@@ -180,7 +145,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
"key": {
"ledger_key_nonce": {
"nonce": 5541220902715666415
@@ -198,7 +163,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"ledger_key_nonce": {
"nonce": 1033654523790656264
@@ -213,7 +178,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
"key": {
"ledger_key_nonce": {
"nonce": 1033654523790656264
@@ -231,40 +196,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 4837995959683129791
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -284,7 +216,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -325,7 +257,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 0
+ "u32": 1
}
},
{
@@ -394,7 +326,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 2
+ "u32": 4
}
},
{
@@ -402,7 +334,7 @@
"symbol": "completed_jobs"
},
"val": {
- "u32": 3
+ "u32": 1
}
},
{
@@ -424,7 +356,7 @@
"symbol": "reviews"
},
"val": {
- "u32": 3
+ "u32": 1
}
},
{
@@ -434,7 +366,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 15
+ "lo": 5
}
}
}
@@ -446,7 +378,7 @@
"symbol": "score"
},
"val": {
- "i32": 10000
+ "i32": 9500
}
}
]
@@ -478,7 +410,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -501,7 +433,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": {
"vec": [
{
@@ -529,109 +461,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": {
- "vec": [
- {
- "symbol": "Reviewed"
- },
- {
- "u64": 12
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": {
- "vec": [
- {
- "symbol": "Reviewed"
- },
- {
- "u64": 12
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "bool": true
- }
- }
- },
- "ext": "v0"
- },
- 150000
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": {
- "vec": [
- {
- "symbol": "Reviewed"
- },
- {
- "u64": 13
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
- "key": {
- "vec": [
- {
- "symbol": "Reviewed"
- },
- {
- "u64": 13
- },
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "bool": true
- }
- }
- },
- "ext": "v0"
- },
- 150000
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -642,7 +472,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -663,6 +493,18 @@
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
}
},
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "AuthorizedUpdater"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
+ }
+ },
{
"key": {
"vec": [
@@ -672,7 +514,7 @@
]
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
}
}
]
@@ -688,7 +530,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
"key": {
"vec": [
{
@@ -708,7 +550,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
"key": {
"vec": [
{
@@ -781,17 +623,8 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
- "key": {
- "vec": [
- {
- "symbol": "Job"
- },
- {
- "u64": 12
- }
- ]
- },
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
+ "key": "ledger_key_contract_instance",
"durability": "persistent"
}
},
@@ -801,161 +634,16 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
- "key": {
- "vec": [
- {
- "symbol": "Job"
- },
- {
- "u64": 12
- }
- ]
- },
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM",
+ "key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
- "map": [
- {
- "key": {
- "symbol": "budget_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 10
- }
- }
- },
- {
- "key": {
- "symbol": "client"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
- }
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "metadata_hash"
- },
- "val": {
- "bytes": "516d4a6f62"
- }
- },
- {
- "key": {
- "symbol": "status"
- },
- "val": {
- "vec": [
- {
- "symbol": "Completed"
- }
- ]
- }
- }
- ]
- }
- }
- },
- "ext": "v0"
- },
- 4095
- ]
- ],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
- "key": {
- "vec": [
- {
- "symbol": "Job"
- },
- {
- "u64": 13
- }
- ]
- },
- "durability": "persistent"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
- "key": {
- "vec": [
- {
- "symbol": "Job"
- },
- {
- "u64": 13
- }
- ]
- },
- "durability": "persistent",
- "val": {
- "map": [
- {
- "key": {
- "symbol": "budget_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 10
- }
- }
- },
- {
- "key": {
- "symbol": "client"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "metadata_hash"
- },
- "val": {
- "bytes": "516d4a6f62"
- }
- },
- {
- "key": {
- "symbol": "status"
- },
- "val": {
- "vec": [
- {
- "symbol": "Completed"
- }
- ]
- }
- }
- ]
+ "storage": null
+ }
}
}
},
@@ -967,7 +655,7 @@
[
{
"contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
"key": "ledger_key_contract_instance",
"durability": "persistent"
}
@@ -978,7 +666,7 @@
"data": {
"contract_data": {
"ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4",
"key": "ledger_key_contract_instance",
"durability": "persistent",
"val": {
@@ -1032,7 +720,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000006"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
},
{
"symbol": "initialize"
@@ -1049,7 +737,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1079,7 +767,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000006"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
},
{
"symbol": "set_job_registry"
@@ -1091,7 +779,7 @@
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOLZM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
}
]
}
@@ -1103,7 +791,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1133,67 +821,19 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000007"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
},
{
- "symbol": "set_job"
+ "symbol": "set_authorized_contract"
}
],
"data": {
"vec": [
{
- "u64": 11
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
},
{
- "map": [
- {
- "key": {
- "symbol": "budget_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 10
- }
- }
- },
- {
- "key": {
- "symbol": "client"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "metadata_hash"
- },
- "val": {
- "bytes": "516d4a6f62"
- }
- },
- {
- "key": {
- "symbol": "status"
- },
- "val": {
- "vec": [
- {
- "symbol": "Completed"
- }
- ]
- }
- }
- ]
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
}
]
}
@@ -1205,97 +845,43 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000007",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "set_job"
- }
- ],
- "data": "void"
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "contract",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000007"
+ "string": "reputation"
},
{
- "symbol": "set_job"
+ "string": "AuthorizedContractUpdated"
}
],
"data": {
- "vec": [
+ "map": [
{
- "u64": 12
+ "key": {
+ "symbol": "by_admin"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
},
{
- "map": [
- {
- "key": {
- "symbol": "budget_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 10
- }
- }
- },
- {
- "key": {
- "symbol": "client"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
- }
- },
- {
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "metadata_hash"
- },
- "val": {
- "bytes": "516d4a6f62"
- }
- },
- {
- "key": {
- "symbol": "status"
- },
- "val": {
- "vec": [
- {
- "symbol": "Completed"
- }
- ]
- }
- }
- ]
+ "key": {
+ "symbol": "contract_address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "updated_at"
+ },
+ "val": {
+ "u64": 0
+ }
}
]
}
@@ -1307,7 +893,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000007",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1316,7 +902,7 @@
"symbol": "fn_return"
},
{
- "symbol": "set_job"
+ "symbol": "set_authorized_contract"
}
],
"data": "void"
@@ -1337,7 +923,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000007"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000005"
},
{
"symbol": "set_job"
@@ -1346,7 +932,7 @@
"data": {
"vec": [
{
- "u64": 13
+ "u64": 11
},
{
"map": [
@@ -1366,7 +952,7 @@
"symbol": "client"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
}
},
{
@@ -1409,7 +995,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000007",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000005",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1439,7 +1025,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000006"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
},
{
"symbol": "submit_rating"
@@ -1469,7 +1055,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1478,7 +1064,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000007"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000005"
},
{
"symbol": "get_job"
@@ -1495,7 +1081,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000007",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000005",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1566,7 +1152,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
"type_": "contract",
"body": {
"v0": {
@@ -1593,7 +1179,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 1
+ "u32": 4
}
},
{
@@ -1701,7 +1287,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1731,7 +1317,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000006"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
},
{
"symbol": "get_public_metrics"
@@ -1755,7 +1341,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
"type_": "diagnostic",
"body": {
"v0": {
@@ -1796,7 +1382,7 @@
{
"i128": {
"hi": 0,
- "lo": 1
+ "lo": 4
}
},
{
@@ -1833,7 +1419,7 @@
"bytes": "0000000000000000000000000000000000000000000000000000000000000006"
},
{
- "symbol": "submit_rating"
+ "symbol": "slash"
}
],
"data": {
@@ -1842,13 +1428,17 @@
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "u64": 12
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
},
{
- "u32": 5
+ "symbol": "penalty"
}
]
}
@@ -1869,83 +1459,29 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000007"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
},
{
- "symbol": "get_job"
+ "symbol": "slash"
}
],
"data": {
- "u64": 12
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000007",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
- },
- {
- "symbol": "get_job"
- }
- ],
- "data": {
- "map": [
- {
- "key": {
- "symbol": "budget_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 10
- }
- }
- },
+ "vec": [
{
- "key": {
- "symbol": "client"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
- }
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
},
{
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
},
{
- "key": {
- "symbol": "metadata_hash"
- },
- "val": {
- "bytes": "516d4a6f62"
- }
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
},
{
- "key": {
- "symbol": "status"
- },
- "val": {
- "vec": [
- {
- "symbol": "Completed"
- }
- ]
- }
+ "symbol": "penalty"
}
]
}
@@ -1957,7 +1493,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
"type_": "contract",
"body": {
"v0": {
@@ -1966,49 +1502,41 @@
"string": "reputation"
},
{
- "string": "ReputationUpdated"
+ "string": "ScoreAdjusted"
}
],
"data": {
"map": [
{
"key": {
- "symbol": "average_rating_bps"
- },
- "val": {
- "i32": 10000
- }
- },
- {
- "key": {
- "symbol": "badge_level"
+ "symbol": "address"
},
"val": {
- "u32": 1
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
"key": {
- "symbol": "blacklisted"
+ "symbol": "adjusted_at"
},
"val": {
- "bool": false
+ "u64": 0
}
},
{
"key": {
- "symbol": "caller"
+ "symbol": "badge_level"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ "u32": 3
}
},
{
"key": {
- "symbol": "job_id"
+ "symbol": "delta"
},
"val": {
- "u64": 12
+ "i32": -2000
}
},
{
@@ -2016,23 +1544,7 @@
"symbol": "new_score"
},
"val": {
- "i32": 10000
- }
- },
- {
- "key": {
- "symbol": "rating"
- },
- "val": {
- "u32": 5
- }
- },
- {
- "key": {
- "symbol": "reviews"
- },
- "val": {
- "u32": 2
+ "i32": 8000
}
},
{
@@ -2047,39 +1559,12 @@
]
}
},
- {
- "key": {
- "symbol": "target"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
{
"key": {
"symbol": "total_jobs"
},
"val": {
- "u32": 2
- }
- },
- {
- "key": {
- "symbol": "total_points"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 10
- }
- }
- },
- {
- "key": {
- "symbol": "updated_at"
- },
- "val": {
- "u64": 0
+ "u32": 1
}
}
]
@@ -2089,6 +1574,27 @@
},
"failed_call": false
},
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "slash"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
{
"event": {
"ext": "v0",
@@ -2101,7 +1607,7 @@
"symbol": "fn_return"
},
{
- "symbol": "submit_rating"
+ "symbol": "slash"
}
],
"data": "void"
@@ -2122,7 +1628,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000006"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
},
{
"symbol": "get_public_metrics"
@@ -2146,7 +1652,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
"type_": "diagnostic",
"body": {
"v0": {
@@ -2163,31 +1669,31 @@
{
"i128": {
"hi": 0,
- "lo": 10000
+ "lo": 8000
}
},
{
"i128": {
"hi": 0,
- "lo": 2
+ "lo": 1
}
},
{
"i128": {
"hi": 0,
- "lo": 10
+ "lo": 5
}
},
{
"i128": {
"hi": 0,
- "lo": 2
+ "lo": 1
}
},
{
"i128": {
"hi": 0,
- "lo": 1
+ "lo": 3
}
},
{
@@ -2224,22 +1730,26 @@
"bytes": "0000000000000000000000000000000000000000000000000000000000000006"
},
{
- "symbol": "submit_rating"
+ "symbol": "award"
}
],
"data": {
"vec": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
},
{
- "u64": 13
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
},
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
},
{
- "u32": 5
+ "i32": 1500
}
]
}
@@ -2260,83 +1770,29 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000007"
- },
- {
- "symbol": "get_job"
- }
- ],
- "data": {
- "u64": 13
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000007",
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_return"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
},
{
- "symbol": "get_job"
+ "symbol": "update_score"
}
],
"data": {
- "map": [
- {
- "key": {
- "symbol": "budget_stroops"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 10
- }
- }
- },
+ "vec": [
{
- "key": {
- "symbol": "client"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
- }
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4"
},
{
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
},
{
- "key": {
- "symbol": "metadata_hash"
- },
- "val": {
- "bytes": "516d4a6f62"
- }
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
},
{
- "key": {
- "symbol": "status"
- },
- "val": {
- "vec": [
- {
- "symbol": "Completed"
- }
- ]
- }
+ "i32": 1500
}
]
}
@@ -2348,7 +1804,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
"type_": "contract",
"body": {
"v0": {
@@ -2357,49 +1813,41 @@
"string": "reputation"
},
{
- "string": "ReputationUpdated"
+ "string": "ScoreAdjusted"
}
],
"data": {
"map": [
{
"key": {
- "symbol": "average_rating_bps"
- },
- "val": {
- "i32": 10000
- }
- },
- {
- "key": {
- "symbol": "badge_level"
+ "symbol": "address"
},
"val": {
- "u32": 2
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
}
},
{
"key": {
- "symbol": "blacklisted"
+ "symbol": "adjusted_at"
},
"val": {
- "bool": false
+ "u64": 0
}
},
{
"key": {
- "symbol": "caller"
+ "symbol": "badge_level"
},
"val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM"
+ "u32": 4
}
},
{
"key": {
- "symbol": "job_id"
+ "symbol": "delta"
},
"val": {
- "u64": 13
+ "i32": 1500
}
},
{
@@ -2407,23 +1855,7 @@
"symbol": "new_score"
},
"val": {
- "i32": 10000
- }
- },
- {
- "key": {
- "symbol": "rating"
- },
- "val": {
- "u32": 5
- }
- },
- {
- "key": {
- "symbol": "reviews"
- },
- "val": {
- "u32": 3
+ "i32": 9500
}
},
{
@@ -2438,39 +1870,12 @@
]
}
},
- {
- "key": {
- "symbol": "target"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
{
"key": {
"symbol": "total_jobs"
},
"val": {
- "u32": 3
- }
- },
- {
- "key": {
- "symbol": "total_points"
- },
- "val": {
- "i128": {
- "hi": 0,
- "lo": 15
- }
- }
- },
- {
- "key": {
- "symbol": "updated_at"
- },
- "val": {
- "u64": 0
+ "u32": 1
}
}
]
@@ -2483,7 +1888,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
"type_": "diagnostic",
"body": {
"v0": {
@@ -2492,7 +1897,7 @@
"symbol": "fn_return"
},
{
- "symbol": "submit_rating"
+ "symbol": "update_score"
}
],
"data": "void"
@@ -2501,39 +1906,6 @@
},
"failed_call": false
},
- {
- "event": {
- "ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000006"
- },
- {
- "symbol": "get_public_metrics"
- }
- ],
- "data": {
- "vec": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "symbol": "freelancer"
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
{
"event": {
"ext": "v0",
@@ -2546,55 +1918,10 @@
"symbol": "fn_return"
},
{
- "symbol": "get_public_metrics"
+ "symbol": "award"
}
],
- "data": {
- "vec": [
- {
- "i128": {
- "hi": 0,
- "lo": 10000
- }
- },
- {
- "i128": {
- "hi": 0,
- "lo": 3
- }
- },
- {
- "i128": {
- "hi": 0,
- "lo": 15
- }
- },
- {
- "i128": {
- "hi": 0,
- "lo": 3
- }
- },
- {
- "i128": {
- "hi": 0,
- "lo": 2
- }
- },
- {
- "i128": {
- "hi": 0,
- "lo": 10000
- }
- },
- {
- "i128": {
- "hi": 0,
- "lo": 0
- }
- }
- ]
- }
+ "data": "void"
}
}
},
@@ -2612,7 +1939,7 @@
"symbol": "fn_call"
},
{
- "bytes": "0000000000000000000000000000000000000000000000000000000000000006"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
},
{
"symbol": "get_score"
@@ -2640,7 +1967,7 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000006",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
"type_": "diagnostic",
"body": {
"v0": {
@@ -2675,7 +2002,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 2
+ "u32": 4
}
},
{
@@ -2691,7 +2018,7 @@
"symbol": "reviews"
},
"val": {
- "u32": 3
+ "u32": 1
}
},
{
@@ -2711,7 +2038,7 @@
"symbol": "score"
},
"val": {
- "i32": 10000
+ "i32": 9500
}
},
{
@@ -2719,7 +2046,7 @@
"symbol": "total_jobs"
},
"val": {
- "u32": 3
+ "u32": 1
}
},
{
@@ -2729,7 +2056,7 @@
"val": {
"i128": {
"hi": 0,
- "lo": 15
+ "lo": 5
}
}
}
diff --git a/contracts/reputation/test_snapshots/test/test_query_reputation_returns_both_roles.1.json b/contracts/reputation/test_snapshots/test/test_badge_upgrades_to_gold_at_8000.1.json
similarity index 65%
rename from contracts/reputation/test_snapshots/test/test_query_reputation_returns_both_roles.1.json
rename to contracts/reputation/test_snapshots/test/test_badge_upgrades_to_gold_at_8000.1.json
index 75bee340..3e26f1e2 100644
--- a/contracts/reputation/test_snapshots/test/test_query_reputation_returns_both_roles.1.json
+++ b/contracts/reputation/test_snapshots/test/test_badge_upgrades_to_gold_at_8000.1.json
@@ -1,6 +1,6 @@
{
"generators": {
- "address": 3,
+ "address": 4,
"nonce": 0
},
"auth": [
@@ -12,49 +12,13 @@
"function": {
"contract_fn": {
"contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "function_name": "update_score",
+ "function_name": "set_authorized_contract",
"args": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "vec": [
- {
- "symbol": "Freelancer"
- }
- ]
- },
- {
- "i32": 1000
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "function_name": "update_score",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "vec": [
- {
- "symbol": "Client"
- }
- ]
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
},
{
- "i32": 500
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -63,6 +27,7 @@
}
]
],
+ [],
[]
],
"ledger": {
@@ -108,39 +73,6 @@
6311999
]
],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
[
{
"contract_data": {
@@ -188,50 +120,156 @@
},
{
"key": {
- "symbol": "client_jobs"
+ "symbol": "badge_metadata"
},
"val": {
- "u32": 1
+ "vec": []
}
},
{
"key": {
- "symbol": "client_points"
+ "symbol": "client"
},
"val": {
- "i32": 0
- }
- },
- {
- "key": {
- "symbol": "client_score"
- },
- "val": {
- "i32": 5500
- }
- },
- {
- "key": {
- "symbol": "freelancer_jobs"
- },
- "val": {
- "u32": 1
+ "map": [
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "completed_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "review"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 5000
+ }
+ }
+ ]
}
},
{
"key": {
- "symbol": "freelancer_points"
+ "symbol": "freelancer"
},
"val": {
- "i32": 0
+ "map": [
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 3
+ }
+ },
+ {
+ "key": {
+ "symbol": "completed_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "review"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 8000
+ }
+ }
+ ]
}
},
{
"key": {
- "symbol": "freelancer_score"
+ "symbol": "is_blacklisted"
},
"val": {
- "i32": 6000
+ "bool": false
}
},
{
@@ -283,6 +321,18 @@
"val": {
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
}
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "AuthorizedUpdater"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
}
]
}
@@ -294,6 +344,38 @@
150000
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": null
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
[
{
"contract_code": {
@@ -380,23 +462,16 @@
"bytes": "0000000000000000000000000000000000000000000000000000000000000003"
},
{
- "symbol": "update_score"
+ "symbol": "set_authorized_contract"
}
],
"data": {
"vec": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
},
{
- "vec": [
- {
- "symbol": "Freelancer"
- }
- ]
- },
- {
- "i32": 1000
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -417,61 +492,33 @@
"string": "reputation"
},
{
- "string": "ScoreAdjusted"
+ "string": "AuthorizedContractUpdated"
}
],
"data": {
"map": [
{
"key": {
- "symbol": "address"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "adjusted_at"
+ "symbol": "by_admin"
},
"val": {
- "u64": 0
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
}
},
{
"key": {
- "symbol": "delta"
+ "symbol": "contract_address"
},
"val": {
- "i32": 1000
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
"key": {
- "symbol": "new_score"
- },
- "val": {
- "i32": 6000
- }
- },
- {
- "key": {
- "symbol": "role"
+ "symbol": "updated_at"
},
"val": {
- "vec": [
- {
- "symbol": "Freelancer"
- }
- ]
- }
- },
- {
- "key": {
- "symbol": "total_jobs"
- },
- "val": {
- "u32": 1
+ "u64": 0
}
}
]
@@ -493,7 +540,7 @@
"symbol": "fn_return"
},
{
- "symbol": "update_score"
+ "symbol": "set_authorized_contract"
}
],
"data": "void"
@@ -507,6 +554,49 @@
"ext": "v0",
"contract_id": null,
"type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ },
+ {
+ "symbol": "award"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ },
+ {
+ "i32": 3000
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "diagnostic",
"body": {
"v0": {
"topics": [
@@ -522,18 +612,21 @@
],
"data": {
"vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
{
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
},
{
"vec": [
{
- "symbol": "Client"
+ "symbol": "Freelancer"
}
]
},
{
- "i32": 500
+ "i32": 3000
}
]
}
@@ -575,12 +668,20 @@
"u64": 0
}
},
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 3
+ }
+ },
{
"key": {
"symbol": "delta"
},
"val": {
- "i32": 500
+ "i32": 3000
}
},
{
@@ -588,7 +689,7 @@
"symbol": "new_score"
},
"val": {
- "i32": 5500
+ "i32": 8000
}
},
{
@@ -598,7 +699,7 @@
"val": {
"vec": [
{
- "symbol": "Client"
+ "symbol": "Freelancer"
}
]
}
@@ -608,7 +709,7 @@
"symbol": "total_jobs"
},
"val": {
- "u32": 1
+ "u32": 0
}
}
]
@@ -639,6 +740,27 @@
},
"failed_call": false
},
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "award"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
{
"event": {
"ext": "v0",
@@ -654,11 +776,22 @@
"bytes": "0000000000000000000000000000000000000000000000000000000000000003"
},
{
- "symbol": "query_reputation"
+ "symbol": "get_badge"
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ }
+ ]
}
}
}
@@ -677,140 +810,13 @@
"symbol": "fn_return"
},
{
- "symbol": "query_reputation"
+ "symbol": "get_badge"
}
],
"data": {
- "map": [
- {
- "key": {
- "symbol": "address"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "client"
- },
- "val": {
- "map": [
- {
- "key": {
- "symbol": "address"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "reviews"
- },
- "val": {
- "u32": 1
- }
- },
- {
- "key": {
- "symbol": "role"
- },
- "val": {
- "vec": [
- {
- "symbol": "Client"
- }
- ]
- }
- },
- {
- "key": {
- "symbol": "score"
- },
- "val": {
- "i32": 5500
- }
- },
- {
- "key": {
- "symbol": "total_jobs"
- },
- "val": {
- "u32": 1
- }
- },
- {
- "key": {
- "symbol": "total_points"
- },
- "val": {
- "i32": 0
- }
- }
- ]
- }
- },
+ "vec": [
{
- "key": {
- "symbol": "freelancer"
- },
- "val": {
- "map": [
- {
- "key": {
- "symbol": "address"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "reviews"
- },
- "val": {
- "u32": 1
- }
- },
- {
- "key": {
- "symbol": "role"
- },
- "val": {
- "vec": [
- {
- "symbol": "Freelancer"
- }
- ]
- }
- },
- {
- "key": {
- "symbol": "score"
- },
- "val": {
- "i32": 6000
- }
- },
- {
- "key": {
- "symbol": "total_jobs"
- },
- "val": {
- "u32": 1
- }
- },
- {
- "key": {
- "symbol": "total_points"
- },
- "val": {
- "i32": 0
- }
- }
- ]
- }
+ "symbol": "Gold"
}
]
}
diff --git a/contracts/reputation/test_snapshots/test/test_unified_storage.1.json b/contracts/reputation/test_snapshots/test/test_badge_upgrades_to_silver_at_6000.1.json
similarity index 69%
rename from contracts/reputation/test_snapshots/test/test_unified_storage.1.json
rename to contracts/reputation/test_snapshots/test/test_badge_upgrades_to_silver_at_6000.1.json
index e9ec5f9a..84ab6afb 100644
--- a/contracts/reputation/test_snapshots/test/test_unified_storage.1.json
+++ b/contracts/reputation/test_snapshots/test/test_badge_upgrades_to_silver_at_6000.1.json
@@ -1,6 +1,6 @@
{
"generators": {
- "address": 3,
+ "address": 4,
"nonce": 0
},
"auth": [
@@ -12,49 +12,13 @@
"function": {
"contract_fn": {
"contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "function_name": "update_score",
+ "function_name": "set_authorized_contract",
"args": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "vec": [
- {
- "symbol": "Freelancer"
- }
- ]
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
},
{
- "i32": 1000
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
- "function_name": "update_score",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "vec": [
- {
- "symbol": "Client"
- }
- ]
- },
- {
- "i32": 500
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -109,39 +73,6 @@
6311999
]
],
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 5541220902715666415
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
[
{
"contract_data": {
@@ -189,50 +120,156 @@
},
{
"key": {
- "symbol": "client_jobs"
- },
- "val": {
- "u32": 1
- }
- },
- {
- "key": {
- "symbol": "client_points"
- },
- "val": {
- "i32": 0
- }
- },
- {
- "key": {
- "symbol": "client_score"
+ "symbol": "badge_metadata"
},
"val": {
- "i32": 5500
+ "vec": []
}
},
{
"key": {
- "symbol": "freelancer_jobs"
+ "symbol": "client"
},
"val": {
- "u32": 1
+ "map": [
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "completed_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "review"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 5000
+ }
+ }
+ ]
}
},
{
"key": {
- "symbol": "freelancer_points"
+ "symbol": "freelancer"
},
"val": {
- "i32": 0
+ "map": [
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 2
+ }
+ },
+ {
+ "key": {
+ "symbol": "completed_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "review"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 6000
+ }
+ }
+ ]
}
},
{
"key": {
- "symbol": "freelancer_score"
+ "symbol": "is_blacklisted"
},
"val": {
- "i32": 6000
+ "bool": false
}
},
{
@@ -284,6 +321,18 @@
"val": {
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
}
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "AuthorizedUpdater"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
}
]
}
@@ -295,6 +344,38 @@
150000
]
],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": null
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
[
{
"contract_code": {
@@ -381,23 +462,16 @@
"bytes": "0000000000000000000000000000000000000000000000000000000000000003"
},
{
- "symbol": "update_score"
+ "symbol": "set_authorized_contract"
}
],
"data": {
"vec": [
{
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
},
{
- "vec": [
- {
- "symbol": "Freelancer"
- }
- ]
- },
- {
- "i32": 1000
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
]
}
@@ -418,61 +492,33 @@
"string": "reputation"
},
{
- "string": "ScoreAdjusted"
+ "string": "AuthorizedContractUpdated"
}
],
"data": {
"map": [
{
"key": {
- "symbol": "address"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "adjusted_at"
- },
- "val": {
- "u64": 0
- }
- },
- {
- "key": {
- "symbol": "delta"
- },
- "val": {
- "i32": 1000
- }
- },
- {
- "key": {
- "symbol": "new_score"
+ "symbol": "by_admin"
},
"val": {
- "i32": 6000
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
}
},
{
"key": {
- "symbol": "role"
+ "symbol": "contract_address"
},
"val": {
- "vec": [
- {
- "symbol": "Freelancer"
- }
- ]
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
}
},
{
"key": {
- "symbol": "total_jobs"
+ "symbol": "updated_at"
},
"val": {
- "u32": 1
+ "u64": 0
}
}
]
@@ -494,7 +540,7 @@
"symbol": "fn_return"
},
{
- "symbol": "update_score"
+ "symbol": "set_authorized_contract"
}
],
"data": "void"
@@ -508,6 +554,49 @@
"ext": "v0",
"contract_id": null,
"type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ },
+ {
+ "symbol": "award"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ },
+ {
+ "i32": 1000
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "diagnostic",
"body": {
"v0": {
"topics": [
@@ -523,18 +612,21 @@
],
"data": {
"vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
{
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
},
{
"vec": [
{
- "symbol": "Client"
+ "symbol": "Freelancer"
}
]
},
{
- "i32": 500
+ "i32": 1000
}
]
}
@@ -576,12 +668,20 @@
"u64": 0
}
},
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 2
+ }
+ },
{
"key": {
"symbol": "delta"
},
"val": {
- "i32": 500
+ "i32": 1000
}
},
{
@@ -589,7 +689,7 @@
"symbol": "new_score"
},
"val": {
- "i32": 5500
+ "i32": 6000
}
},
{
@@ -599,7 +699,7 @@
"val": {
"vec": [
{
- "symbol": "Client"
+ "symbol": "Freelancer"
}
]
}
@@ -609,7 +709,7 @@
"symbol": "total_jobs"
},
"val": {
- "u32": 1
+ "u32": 0
}
}
]
@@ -643,44 +743,7 @@
{
"event": {
"ext": "v0",
- "contract_id": null,
- "type_": "diagnostic",
- "body": {
- "v0": {
- "topics": [
- {
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
- },
- {
- "symbol": "get_score"
- }
- ],
- "data": {
- "vec": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- },
- {
- "vec": [
- {
- "symbol": "Freelancer"
- }
- ]
- }
- ]
- }
- }
- }
- },
- "failed_call": false
- },
- {
- "event": {
- "ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
"type_": "diagnostic",
"body": {
"v0": {
@@ -689,65 +752,10 @@
"symbol": "fn_return"
},
{
- "symbol": "get_score"
+ "symbol": "award"
}
],
- "data": {
- "map": [
- {
- "key": {
- "symbol": "address"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "reviews"
- },
- "val": {
- "u32": 1
- }
- },
- {
- "key": {
- "symbol": "role"
- },
- "val": {
- "vec": [
- {
- "symbol": "Freelancer"
- }
- ]
- }
- },
- {
- "key": {
- "symbol": "score"
- },
- "val": {
- "i32": 6000
- }
- },
- {
- "key": {
- "symbol": "total_jobs"
- },
- "val": {
- "u32": 1
- }
- },
- {
- "key": {
- "symbol": "total_points"
- },
- "val": {
- "i32": 0
- }
- }
- ]
- }
+ "data": "void"
}
}
},
@@ -768,7 +776,7 @@
"bytes": "0000000000000000000000000000000000000000000000000000000000000003"
},
{
- "symbol": "get_score"
+ "symbol": "get_badge"
}
],
"data": {
@@ -779,7 +787,7 @@
{
"vec": [
{
- "symbol": "Client"
+ "symbol": "Freelancer"
}
]
}
@@ -802,62 +810,13 @@
"symbol": "fn_return"
},
{
- "symbol": "get_score"
+ "symbol": "get_badge"
}
],
"data": {
- "map": [
- {
- "key": {
- "symbol": "address"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
- }
- },
- {
- "key": {
- "symbol": "reviews"
- },
- "val": {
- "u32": 1
- }
- },
- {
- "key": {
- "symbol": "role"
- },
- "val": {
- "vec": [
- {
- "symbol": "Client"
- }
- ]
- }
- },
- {
- "key": {
- "symbol": "score"
- },
- "val": {
- "i32": 5500
- }
- },
- {
- "key": {
- "symbol": "total_jobs"
- },
- "val": {
- "u32": 1
- }
- },
+ "vec": [
{
- "key": {
- "symbol": "total_points"
- },
- "val": {
- "i32": 0
- }
+ "symbol": "Silver"
}
]
}
diff --git a/contracts/reputation/test_snapshots/test/test_blacklist_clears_badges_and_sets_flag.1.json b/contracts/reputation/test_snapshots/test/test_blacklist_clears_badges_and_sets_flag.1.json
index 51679892..3d65dae6 100644
--- a/contracts/reputation/test_snapshots/test/test_blacklist_clears_badges_and_sets_flag.1.json
+++ b/contracts/reputation/test_snapshots/test/test_blacklist_clears_badges_and_sets_flag.1.json
@@ -1794,7 +1794,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 1
+ "u32": 4
}
},
{
@@ -2086,7 +2086,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 1
+ "u32": 4
}
},
{
@@ -2378,7 +2378,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 2
+ "u32": 4
}
},
{
diff --git a/contracts/reputation/test_snapshots/test/test_default_slash_decay_matches_constant.1.json b/contracts/reputation/test_snapshots/test/test_default_slash_decay_matches_constant.1.json
new file mode 100644
index 00000000..0aed0fb3
--- /dev/null
+++ b/contracts/reputation/test_snapshots/test/test_default_slash_decay_matches_constant.1.json
@@ -0,0 +1,1259 @@
+{
+ "generators": {
+ "address": 4,
+ "nonce": 0
+ },
+ "auth": [
+ [],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "function_name": "set_authorized_contract",
+ "args": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ [],
+ [],
+ [],
+ []
+ ],
+ "ledger": {
+ "protocol_version": 21,
+ "sequence_number": 0,
+ "timestamp": 0,
+ "network_id": "0000000000000000000000000000000000000000000000000000000000000000",
+ "base_reserve": 0,
+ "min_persistent_entry_ttl": 4096,
+ "min_temp_entry_ttl": 16,
+ "max_entry_ttl": 6312000,
+ "ledger_entries": [
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Profile"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ ]
+ },
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Profile"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ ]
+ },
+ "durability": "persistent",
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_metadata"
+ },
+ "val": {
+ "vec": []
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "completed_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "review"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 5000
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 3
+ }
+ },
+ {
+ "key": {
+ "symbol": "completed_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "review"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 8000
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "is_blacklisted"
+ },
+ "val": {
+ "bool": false
+ }
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": "void"
+ }
+ ]
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "AuthorizedUpdater"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": null
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_code": {
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_code": {
+ "ext": "v0",
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "code": ""
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ]
+ ]
+ },
+ "events": [
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "set_authorized_contract"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "reputation"
+ },
+ {
+ "string": "AuthorizedContractUpdated"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "by_admin"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ },
+ {
+ "key": {
+ "symbol": "contract_address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "updated_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "set_authorized_contract"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ },
+ {
+ "symbol": "award"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ },
+ {
+ "i32": 5000
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "update_score"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ },
+ {
+ "i32": 5000
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "reputation"
+ },
+ {
+ "string": "ScoreAdjusted"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "adjusted_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 4
+ }
+ },
+ {
+ "key": {
+ "symbol": "delta"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "new_score"
+ },
+ "val": {
+ "i32": 10000
+ }
+ },
+ {
+ "key": {
+ "symbol": "role"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "update_score"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "award"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "get_score"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_score"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 4
+ }
+ },
+ {
+ "key": {
+ "symbol": "blacklisted"
+ },
+ "val": {
+ "bool": false
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "role"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 10000
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ },
+ {
+ "symbol": "slash"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ },
+ {
+ "symbol": "test"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "slash"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ },
+ {
+ "symbol": "test"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "reputation"
+ },
+ {
+ "string": "ScoreAdjusted"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "adjusted_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 3
+ }
+ },
+ {
+ "key": {
+ "symbol": "delta"
+ },
+ "val": {
+ "i32": -2000
+ }
+ },
+ {
+ "key": {
+ "symbol": "new_score"
+ },
+ "val": {
+ "i32": 8000
+ }
+ },
+ {
+ "key": {
+ "symbol": "role"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "slash"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "slash"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "get_score"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_score"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 3
+ }
+ },
+ {
+ "key": {
+ "symbol": "blacklisted"
+ },
+ "val": {
+ "bool": false
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "role"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Freelancer"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 8000
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ }
+ ]
+}
\ No newline at end of file
diff --git a/contracts/reputation/test_snapshots/test/test_empty_profile_reads_are_safe.1.json b/contracts/reputation/test_snapshots/test/test_empty_profile_reads_are_safe.1.json
index a580e61c..8d36dbb5 100644
--- a/contracts/reputation/test_snapshots/test/test_empty_profile_reads_are_safe.1.json
+++ b/contracts/reputation/test_snapshots/test/test_empty_profile_reads_are_safe.1.json
@@ -149,7 +149,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 0
+ "u32": 1
}
},
{
@@ -292,7 +292,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 0
+ "u32": 1
}
},
{
@@ -380,7 +380,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 0
+ "u32": 1
}
},
{
diff --git a/contracts/job_registry/test_snapshots/test/test_upgrade_admin_cannot_initialize_twice.1.json b/contracts/reputation/test_snapshots/test/test_invalid_blacklist_decay_is_rejected.1.json
similarity index 71%
rename from contracts/job_registry/test_snapshots/test/test_upgrade_admin_cannot_initialize_twice.1.json
rename to contracts/reputation/test_snapshots/test/test_invalid_blacklist_decay_is_rejected.1.json
index 9585b3ad..7120949b 100644
--- a/contracts/job_registry/test_snapshots/test/test_upgrade_admin_cannot_initialize_twice.1.json
+++ b/contracts/reputation/test_snapshots/test/test_invalid_blacklist_decay_is_rejected.1.json
@@ -4,25 +4,7 @@
"nonce": 0
},
"auth": [
- [
- [
- "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- {
- "function": {
- "contract_fn": {
- "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
- "function_name": "init_upgrade_admin",
- "args": [
- {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- ]
- }
- },
- "sub_invocations": []
- }
- ]
- ],
+ [],
[]
],
"ledger": {
@@ -35,39 +17,6 @@
"min_temp_entry_ttl": 16,
"max_entry_ttl": 6312000,
"ledger_entries": [
- [
- {
- "contract_data": {
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary"
- }
- },
- [
- {
- "last_modified_ledger_seq": 0,
- "data": {
- "contract_data": {
- "ext": "v0",
- "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
- "key": {
- "ledger_key_nonce": {
- "nonce": 801925984706572462
- }
- },
- "durability": "temporary",
- "val": "void"
- }
- },
- "ext": "v0"
- },
- 6311999
- ]
- ],
[
{
"contract_data": {
@@ -95,7 +44,7 @@
"key": {
"vec": [
{
- "symbol": "UpgradeAdmin"
+ "symbol": "Admin"
}
]
},
@@ -110,7 +59,7 @@
},
"ext": "v0"
},
- 4095
+ 150000
]
],
[
@@ -131,7 +80,7 @@
},
"ext": "v0"
},
- 4095
+ 150000
]
]
]
@@ -152,7 +101,7 @@
"bytes": "0000000000000000000000000000000000000000000000000000000000000002"
},
{
- "symbol": "init_upgrade_admin"
+ "symbol": "initialize"
}
],
"data": {
@@ -167,43 +116,18 @@
"event": {
"ext": "v0",
"contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
- "type_": "contract",
+ "type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "string": "job_registry"
+ "symbol": "fn_return"
},
{
- "string": "UpgradeAdminSet"
+ "symbol": "initialize"
}
],
- "data": {
- "map": [
- {
- "key": {
- "symbol": "new_admin"
- },
- "val": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
- }
- },
- {
- "key": {
- "symbol": "previous_admin"
- },
- "val": "void"
- },
- {
- "key": {
- "symbol": "timestamp"
- },
- "val": {
- "u64": 0
- }
- }
- ]
- }
+ "data": "void"
}
}
},
@@ -212,19 +136,31 @@
{
"event": {
"ext": "v0",
- "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "contract_id": null,
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_return"
+ "symbol": "fn_call"
},
{
- "symbol": "init_upgrade_admin"
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ },
+ {
+ "symbol": "set_blacklist_decay"
}
],
- "data": "void"
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "i32": 11000
+ }
+ ]
+ }
}
}
},
@@ -233,28 +169,34 @@
{
"event": {
"ext": "v0",
- "contract_id": null,
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
"type_": "diagnostic",
"body": {
"v0": {
"topics": [
{
- "symbol": "fn_call"
- },
- {
- "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ "symbol": "error"
},
{
- "symbol": "init_upgrade_admin"
+ "error": {
+ "contract": 3
+ }
}
],
"data": {
- "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ "vec": [
+ {
+ "string": "failing with contract error"
+ },
+ {
+ "u32": 3
+ }
+ ]
}
}
}
},
- "failed_call": false
+ "failed_call": true
},
{
"event": {
@@ -265,16 +207,16 @@
"v0": {
"topics": [
{
- "symbol": "fn_return"
+ "symbol": "error"
},
{
- "symbol": "init_upgrade_admin"
+ "error": {
+ "contract": 3
+ }
}
],
"data": {
- "error": {
- "contract": 7
- }
+ "string": "escalating error to panic"
}
}
}
@@ -294,12 +236,12 @@
},
{
"error": {
- "contract": 7
+ "contract": 3
}
}
],
"data": {
- "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err"
+ "string": "caught error from function"
}
}
}
@@ -319,7 +261,7 @@
},
{
"error": {
- "contract": 7
+ "contract": 3
}
}
],
@@ -329,12 +271,15 @@
"string": "contract call failed"
},
{
- "symbol": "init_upgrade_admin"
+ "symbol": "set_blacklist_decay"
},
{
"vec": [
{
"address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "i32": 11000
}
]
}
@@ -358,7 +303,7 @@
},
{
"error": {
- "contract": 7
+ "contract": 3
}
}
],
diff --git a/contracts/reputation/test_snapshots/test/test_invalid_slash_decay_is_rejected.1.json b/contracts/reputation/test_snapshots/test/test_invalid_slash_decay_is_rejected.1.json
new file mode 100644
index 00000000..0fa5bf6a
--- /dev/null
+++ b/contracts/reputation/test_snapshots/test/test_invalid_slash_decay_is_rejected.1.json
@@ -0,0 +1,319 @@
+{
+ "generators": {
+ "address": 2,
+ "nonce": 0
+ },
+ "auth": [
+ [],
+ []
+ ],
+ "ledger": {
+ "protocol_version": 21,
+ "sequence_number": 0,
+ "timestamp": 0,
+ "network_id": "0000000000000000000000000000000000000000000000000000000000000000",
+ "base_reserve": 0,
+ "min_persistent_entry_ttl": 4096,
+ "min_temp_entry_ttl": 16,
+ "max_entry_ttl": 6312000,
+ "ledger_entries": [
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ],
+ [
+ {
+ "contract_code": {
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_code": {
+ "ext": "v0",
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "code": ""
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ]
+ ]
+ },
+ "events": [
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000002"
+ },
+ {
+ "symbol": "set_slash_decay"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "i32": 999
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 3
+ }
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "string": "failing with contract error"
+ },
+ {
+ "u32": 3
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 3
+ }
+ }
+ ],
+ "data": {
+ "string": "escalating error to panic"
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000002",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 3
+ }
+ }
+ ],
+ "data": {
+ "string": "caught error from function"
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 3
+ }
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "string": "contract call failed"
+ },
+ {
+ "symbol": "set_slash_decay"
+ },
+ {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "i32": 999
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 3
+ }
+ }
+ ],
+ "data": {
+ "string": "escalating error to panic"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ }
+ ]
+}
\ No newline at end of file
diff --git a/contracts/reputation/test_snapshots/test/test_multiple_tiers_stored_independently.1.json b/contracts/reputation/test_snapshots/test/test_multiple_tiers_stored_independently.1.json
new file mode 100644
index 00000000..1effde8b
--- /dev/null
+++ b/contracts/reputation/test_snapshots/test/test_multiple_tiers_stored_independently.1.json
@@ -0,0 +1,838 @@
+{
+ "generators": {
+ "address": 3,
+ "nonce": 0
+ },
+ "auth": [
+ [],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "function_name": "set_badge_metadata",
+ "args": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Bronze"
+ }
+ ]
+ },
+ {
+ "bytes": "697066733a2f2f42726f6e7a65"
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "function_name": "set_badge_metadata",
+ "args": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Gold"
+ }
+ ]
+ },
+ {
+ "bytes": "697066733a2f2f476f6c64"
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ [],
+ [],
+ []
+ ],
+ "ledger": {
+ "protocol_version": 21,
+ "sequence_number": 0,
+ "timestamp": 0,
+ "network_id": "0000000000000000000000000000000000000000000000000000000000000000",
+ "base_reserve": 0,
+ "min_persistent_entry_ttl": 4096,
+ "min_temp_entry_ttl": 16,
+ "max_entry_ttl": 6312000,
+ "ledger_entries": [
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 5541220902715666415
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Profile"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ ]
+ },
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Profile"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ ]
+ },
+ "durability": "persistent",
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_metadata"
+ },
+ "val": {
+ "vec": [
+ {
+ "map": [
+ {
+ "key": {
+ "symbol": "tier"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Bronze"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "uri"
+ },
+ "val": {
+ "bytes": "697066733a2f2f42726f6e7a65"
+ }
+ }
+ ]
+ },
+ {
+ "map": [
+ {
+ "key": {
+ "symbol": "tier"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Gold"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "uri"
+ },
+ "val": {
+ "bytes": "697066733a2f2f476f6c64"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "completed_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "review"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 5000
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "completed_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "review"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 5000
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "is_blacklisted"
+ },
+ "val": {
+ "bool": false
+ }
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": "void"
+ }
+ ]
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ],
+ [
+ {
+ "contract_code": {
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_code": {
+ "ext": "v0",
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "code": ""
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ]
+ ]
+ },
+ "events": [
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "set_badge_metadata"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Bronze"
+ }
+ ]
+ },
+ {
+ "bytes": "697066733a2f2f42726f6e7a65"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "set_badge_metadata"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "set_badge_metadata"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Gold"
+ }
+ ]
+ },
+ {
+ "bytes": "697066733a2f2f476f6c64"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "set_badge_metadata"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "get_badge_metadata"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Bronze"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_badge_metadata"
+ }
+ ],
+ "data": {
+ "bytes": "697066733a2f2f42726f6e7a65"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "get_badge_metadata"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Gold"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_badge_metadata"
+ }
+ ],
+ "data": {
+ "bytes": "697066733a2f2f476f6c64"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "get_badge_metadata"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Silver"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_badge_metadata"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ }
+ ]
+}
\ No newline at end of file
diff --git a/contracts/reputation/test_snapshots/test/test_non_admin_cannot_set_slash_decay.1.json b/contracts/reputation/test_snapshots/test/test_non_admin_cannot_set_slash_decay.1.json
new file mode 100644
index 00000000..c951a7b9
--- /dev/null
+++ b/contracts/reputation/test_snapshots/test/test_non_admin_cannot_set_slash_decay.1.json
@@ -0,0 +1,319 @@
+{
+ "generators": {
+ "address": 3,
+ "nonce": 0
+ },
+ "auth": [
+ [],
+ []
+ ],
+ "ledger": {
+ "protocol_version": 21,
+ "sequence_number": 0,
+ "timestamp": 0,
+ "network_id": "0000000000000000000000000000000000000000000000000000000000000000",
+ "base_reserve": 0,
+ "min_persistent_entry_ttl": 4096,
+ "min_temp_entry_ttl": 16,
+ "max_entry_ttl": 6312000,
+ "ledger_entries": [
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ],
+ [
+ {
+ "contract_code": {
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_code": {
+ "ext": "v0",
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "code": ""
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ]
+ ]
+ },
+ "events": [
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "set_slash_decay"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "i32": 5000
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 2
+ }
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "string": "failing with contract error"
+ },
+ {
+ "u32": 2
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 2
+ }
+ }
+ ],
+ "data": {
+ "string": "escalating error to panic"
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 2
+ }
+ }
+ ],
+ "data": {
+ "string": "caught error from function"
+ }
+ }
+ }
+ },
+ "failed_call": true
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 2
+ }
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "string": "contract call failed"
+ },
+ {
+ "symbol": "set_slash_decay"
+ },
+ {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "i32": 5000
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "error"
+ },
+ {
+ "error": {
+ "contract": 2
+ }
+ }
+ ],
+ "data": {
+ "string": "escalating error to panic"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ }
+ ]
+}
\ No newline at end of file
diff --git a/contracts/reputation/test_snapshots/test/test_profile_metadata.1.json b/contracts/reputation/test_snapshots/test/test_profile_metadata.1.json
index 1b12c7ac..da95aff8 100644
--- a/contracts/reputation/test_snapshots/test/test_profile_metadata.1.json
+++ b/contracts/reputation/test_snapshots/test/test_profile_metadata.1.json
@@ -135,7 +135,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 0
+ "u32": 1
}
},
{
@@ -204,7 +204,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 0
+ "u32": 1
}
},
{
diff --git a/contracts/reputation/test_snapshots/test/test_set_and_get_badge_metadata.1.json b/contracts/reputation/test_snapshots/test/test_set_and_get_badge_metadata.1.json
new file mode 100644
index 00000000..c54ca769
--- /dev/null
+++ b/contracts/reputation/test_snapshots/test/test_set_and_get_badge_metadata.1.json
@@ -0,0 +1,565 @@
+{
+ "generators": {
+ "address": 3,
+ "nonce": 0
+ },
+ "auth": [
+ [],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "function_name": "set_badge_metadata",
+ "args": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Bronze"
+ }
+ ]
+ },
+ {
+ "bytes": "697066733a2f2f516d42726f6e7a654261646765"
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ []
+ ],
+ "ledger": {
+ "protocol_version": 21,
+ "sequence_number": 0,
+ "timestamp": 0,
+ "network_id": "0000000000000000000000000000000000000000000000000000000000000000",
+ "base_reserve": 0,
+ "min_persistent_entry_ttl": 4096,
+ "min_temp_entry_ttl": 16,
+ "max_entry_ttl": 6312000,
+ "ledger_entries": [
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Profile"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ ]
+ },
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Profile"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ ]
+ },
+ "durability": "persistent",
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_metadata"
+ },
+ "val": {
+ "vec": [
+ {
+ "map": [
+ {
+ "key": {
+ "symbol": "tier"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Bronze"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "uri"
+ },
+ "val": {
+ "bytes": "697066733a2f2f516d42726f6e7a654261646765"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "completed_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "review"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 5000
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "completed_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "review"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 5000
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "is_blacklisted"
+ },
+ "val": {
+ "bool": false
+ }
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": "void"
+ }
+ ]
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ],
+ [
+ {
+ "contract_code": {
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_code": {
+ "ext": "v0",
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "code": ""
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ]
+ ]
+ },
+ "events": [
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "set_badge_metadata"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Bronze"
+ }
+ ]
+ },
+ {
+ "bytes": "697066733a2f2f516d42726f6e7a654261646765"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "set_badge_metadata"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "get_badge_metadata"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Bronze"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_badge_metadata"
+ }
+ ],
+ "data": {
+ "bytes": "697066733a2f2f516d42726f6e7a654261646765"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ }
+ ]
+}
\ No newline at end of file
diff --git a/contracts/reputation/test_snapshots/test/test_slash_downgrades_badge.1.json b/contracts/reputation/test_snapshots/test/test_slash_downgrades_badge.1.json
new file mode 100644
index 00000000..b4fa4f45
--- /dev/null
+++ b/contracts/reputation/test_snapshots/test/test_slash_downgrades_badge.1.json
@@ -0,0 +1,1385 @@
+{
+ "generators": {
+ "address": 4,
+ "nonce": 0
+ },
+ "auth": [
+ [],
+ [
+ [
+ "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ {
+ "function": {
+ "contract_fn": {
+ "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "function_name": "set_authorized_contract",
+ "args": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ ]
+ }
+ },
+ "sub_invocations": []
+ }
+ ]
+ ],
+ [],
+ [],
+ [],
+ [],
+ [],
+ []
+ ],
+ "ledger": {
+ "protocol_version": 21,
+ "sequence_number": 0,
+ "timestamp": 0,
+ "network_id": "0000000000000000000000000000000000000000000000000000000000000000",
+ "base_reserve": 0,
+ "min_persistent_entry_ttl": 4096,
+ "min_temp_entry_ttl": 16,
+ "max_entry_ttl": 6312000,
+ "ledger_entries": [
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
+ "key": {
+ "ledger_key_nonce": {
+ "nonce": 801925984706572462
+ }
+ },
+ "durability": "temporary",
+ "val": "void"
+ }
+ },
+ "ext": "v0"
+ },
+ 6311999
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Profile"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ ]
+ },
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": {
+ "vec": [
+ {
+ "symbol": "Profile"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ ]
+ },
+ "durability": "persistent",
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_metadata"
+ },
+ "val": {
+ "vec": []
+ }
+ },
+ {
+ "key": {
+ "symbol": "client"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "completed_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "review"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 5120
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "freelancer"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "completed_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "review"
+ },
+ "val": {
+ "map": [
+ {
+ "key": {
+ "symbol": "average_rating_bps"
+ },
+ "val": {
+ "i32": 5000
+ }
+ },
+ {
+ "key": {
+ "symbol": "reviews"
+ },
+ "val": {
+ "u32": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_points"
+ },
+ "val": {
+ "i128": {
+ "hi": 0,
+ "lo": 0
+ }
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "score"
+ },
+ "val": {
+ "i32": 5000
+ }
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "is_blacklisted"
+ },
+ "val": {
+ "bool": false
+ }
+ },
+ {
+ "key": {
+ "symbol": "metadata_hash"
+ },
+ "val": "void"
+ }
+ ]
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": [
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "Admin"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ },
+ {
+ "key": {
+ "vec": [
+ {
+ "symbol": "AuthorizedUpdater"
+ }
+ ]
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ],
+ [
+ {
+ "contract_data": {
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_data": {
+ "ext": "v0",
+ "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4",
+ "key": "ledger_key_contract_instance",
+ "durability": "persistent",
+ "val": {
+ "contract_instance": {
+ "executable": {
+ "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ },
+ "storage": null
+ }
+ }
+ }
+ },
+ "ext": "v0"
+ },
+ 4095
+ ]
+ ],
+ [
+ {
+ "contract_code": {
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+ }
+ },
+ [
+ {
+ "last_modified_ledger_seq": 0,
+ "data": {
+ "contract_code": {
+ "ext": "v0",
+ "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "code": ""
+ }
+ },
+ "ext": "v0"
+ },
+ 150000
+ ]
+ ]
+ ]
+ },
+ "events": [
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "initialize"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "set_authorized_contract"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "reputation"
+ },
+ {
+ "string": "AuthorizedContractUpdated"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "by_admin"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM"
+ }
+ },
+ {
+ "key": {
+ "symbol": "contract_address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "updated_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "set_authorized_contract"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ },
+ {
+ "symbol": "award"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Client"
+ }
+ ]
+ },
+ {
+ "i32": 3000
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "update_score"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Client"
+ }
+ ]
+ },
+ {
+ "i32": 3000
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "reputation"
+ },
+ {
+ "string": "ScoreAdjusted"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "adjusted_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 3
+ }
+ },
+ {
+ "key": {
+ "symbol": "delta"
+ },
+ "val": {
+ "i32": 3000
+ }
+ },
+ {
+ "key": {
+ "symbol": "new_score"
+ },
+ "val": {
+ "i32": 8000
+ }
+ },
+ {
+ "key": {
+ "symbol": "role"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Client"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "update_score"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "award"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "get_badge"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Client"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_badge"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "symbol": "Gold"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ },
+ {
+ "symbol": "slash"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Client"
+ }
+ ]
+ },
+ {
+ "symbol": "fraud"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "slash"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Client"
+ }
+ ]
+ },
+ {
+ "symbol": "fraud"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "reputation"
+ },
+ {
+ "string": "ScoreAdjusted"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "adjusted_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 2
+ }
+ },
+ {
+ "key": {
+ "symbol": "delta"
+ },
+ "val": {
+ "i32": -1600
+ }
+ },
+ {
+ "key": {
+ "symbol": "new_score"
+ },
+ "val": {
+ "i32": 6400
+ }
+ },
+ {
+ "key": {
+ "symbol": "role"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Client"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "slash"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "slash"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "get_badge"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Client"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_badge"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "symbol": "Silver"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000004"
+ },
+ {
+ "symbol": "slash"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Client"
+ }
+ ]
+ },
+ {
+ "symbol": "fraud"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "slash"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4"
+ },
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Client"
+ }
+ ]
+ },
+ {
+ "symbol": "fraud"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "contract",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "string": "reputation"
+ },
+ {
+ "string": "ScoreAdjusted"
+ }
+ ],
+ "data": {
+ "map": [
+ {
+ "key": {
+ "symbol": "address"
+ },
+ "val": {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ }
+ },
+ {
+ "key": {
+ "symbol": "adjusted_at"
+ },
+ "val": {
+ "u64": 0
+ }
+ },
+ {
+ "key": {
+ "symbol": "badge_level"
+ },
+ "val": {
+ "u32": 1
+ }
+ },
+ {
+ "key": {
+ "symbol": "delta"
+ },
+ "val": {
+ "i32": -1280
+ }
+ },
+ {
+ "key": {
+ "symbol": "new_score"
+ },
+ "val": {
+ "i32": 5120
+ }
+ },
+ {
+ "key": {
+ "symbol": "role"
+ },
+ "val": {
+ "vec": [
+ {
+ "symbol": "Client"
+ }
+ ]
+ }
+ },
+ {
+ "key": {
+ "symbol": "total_jobs"
+ },
+ "val": {
+ "u32": 0
+ }
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "slash"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000004",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "slash"
+ }
+ ],
+ "data": "void"
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": null,
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_call"
+ },
+ {
+ "bytes": "0000000000000000000000000000000000000000000000000000000000000003"
+ },
+ {
+ "symbol": "get_badge"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4"
+ },
+ {
+ "vec": [
+ {
+ "symbol": "Client"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ },
+ {
+ "event": {
+ "ext": "v0",
+ "contract_id": "0000000000000000000000000000000000000000000000000000000000000003",
+ "type_": "diagnostic",
+ "body": {
+ "v0": {
+ "topics": [
+ {
+ "symbol": "fn_return"
+ },
+ {
+ "symbol": "get_badge"
+ }
+ ],
+ "data": {
+ "vec": [
+ {
+ "symbol": "Bronze"
+ }
+ ]
+ }
+ }
+ }
+ },
+ "failed_call": false
+ }
+ ]
+}
\ No newline at end of file
diff --git a/contracts/reputation/test_snapshots/test/test_slash_uses_fixed_point_decay.1.json b/contracts/reputation/test_snapshots/test/test_slash_uses_fixed_point_decay.1.json
index d042f733..656e047a 100644
--- a/contracts/reputation/test_snapshots/test/test_slash_uses_fixed_point_decay.1.json
+++ b/contracts/reputation/test_snapshots/test/test_slash_uses_fixed_point_decay.1.json
@@ -254,7 +254,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 0
+ "u32": 1
}
},
{
@@ -323,7 +323,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 1
+ "u32": 3
}
},
{
@@ -1176,7 +1176,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 1
+ "u32": 4
}
},
{
@@ -1426,7 +1426,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 1
+ "u32": 3
}
},
{
@@ -1589,7 +1589,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 1
+ "u32": 3
}
},
{
diff --git a/contracts/reputation/test_snapshots/test/test_submit_rating_updates_client_and_freelancer_paths.1.json b/contracts/reputation/test_snapshots/test/test_submit_rating_updates_client_and_freelancer_paths.1.json
index 73d49857..a072d8bd 100644
--- a/contracts/reputation/test_snapshots/test/test_submit_rating_updates_client_and_freelancer_paths.1.json
+++ b/contracts/reputation/test_snapshots/test/test_submit_rating_updates_client_and_freelancer_paths.1.json
@@ -261,7 +261,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 0
+ "u32": 1
}
},
{
@@ -330,7 +330,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 1
+ "u32": 3
}
},
{
@@ -475,7 +475,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 0
+ "u32": 1
}
},
{
@@ -544,7 +544,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 1
+ "u32": 4
}
},
{
@@ -1497,7 +1497,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 1
+ "u32": 4
}
},
{
@@ -1698,7 +1698,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 1
+ "u32": 4
}
},
{
@@ -1929,7 +1929,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 1
+ "u32": 3
}
},
{
@@ -2130,7 +2130,7 @@
"symbol": "badge_level"
},
"val": {
- "u32": 1
+ "u32": 3
}
},
{