diff --git a/clients/js/package.json b/clients/js/package.json index 4ea9614f..6e0f3d47 100644 --- a/clients/js/package.json +++ b/clients/js/package.json @@ -42,13 +42,16 @@ }, "homepage": "https://github.com/solana-program/token#readme", "peerDependencies": { - "@solana/kit": "^6.0.0" + "@solana/kit": "^6.1.0" + }, + "dependencies": { + "@solana-program/system": "^0.12.0" }, "devDependencies": { "@ava/typescript": "^4.1.0", - "@solana-program/system": "^0.11.0", "@solana/eslint-config-solana": "^3.0.3", - "@solana/kit": "^6.0.0", + "@solana/kit": "^6.1.0", + "@solana/kit-plugins": "^0.5.0", "@types/node": "^24", "@typescript-eslint/eslint-plugin": "^7.16.1", "@typescript-eslint/parser": "^7.16.1", diff --git a/clients/js/pnpm-lock.yaml b/clients/js/pnpm-lock.yaml index bdd6d307..1fcd53b1 100644 --- a/clients/js/pnpm-lock.yaml +++ b/clients/js/pnpm-lock.yaml @@ -7,19 +7,23 @@ settings: importers: .: + dependencies: + '@solana-program/system': + specifier: ^0.12.0 + version: 0.12.0(@solana/kit@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)) devDependencies: '@ava/typescript': specifier: ^4.1.0 version: 4.1.0 - '@solana-program/system': - specifier: ^0.11.0 - version: 0.11.0(@solana/kit@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)) '@solana/eslint-config-solana': specifier: ^3.0.3 version: 3.0.3(@typescript-eslint/eslint-plugin@7.16.1(@typescript-eslint/parser@7.16.1(eslint@8.57.0)(typescript@5.9.3))(eslint@8.57.0)(typescript@5.9.3))(@typescript-eslint/parser@7.16.1(eslint@8.57.0)(typescript@5.9.3))(eslint-plugin-jest@27.9.0(@typescript-eslint/eslint-plugin@7.16.1(@typescript-eslint/parser@7.16.1(eslint@8.57.0)(typescript@5.9.3))(eslint@8.57.0)(typescript@5.9.3))(eslint@8.57.0)(typescript@5.9.3))(eslint-plugin-react-hooks@4.6.2(eslint@8.57.0))(eslint-plugin-simple-import-sort@10.0.0(eslint@8.57.0))(eslint-plugin-sort-keys-fix@1.1.2)(eslint-plugin-typescript-sort-keys@3.2.0(@typescript-eslint/parser@7.16.1(eslint@8.57.0)(typescript@5.9.3))(eslint@8.57.0)(typescript@5.9.3))(eslint@8.57.0)(typescript@5.9.3) '@solana/kit': - specifier: ^6.0.0 - version: 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + specifier: ^6.1.0 + version: 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/kit-plugins': + specifier: ^0.5.0 + version: 0.5.0(@solana/kit@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) '@types/node': specifier: ^24 version: 24.3.0 @@ -254,6 +258,46 @@ packages: '@jridgewell/trace-mapping@0.3.25': resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + '@loris-sandbox/litesvm-kit-darwin-arm64@0.5.0': + resolution: {integrity: sha512-yWPgh8bQsHJtmVcHcwhJFFEjh5G6wigHYuiRBIbY+lybKPTQ1LKJ3CK/zlD74KwL/xfgUdiyBLz+fORQrCO19Q==} + engines: {node: '>= 20'} + cpu: [arm64] + os: [darwin] + + '@loris-sandbox/litesvm-kit-darwin-x64@0.5.0': + resolution: {integrity: sha512-fddPO15++i67Yemiopxj/qEw4X/Jup/jBcWBN/UeE1bPt2GDrj02alzO1CSOKfaRrfu7MeWbwPumG07xQpwF9Q==} + engines: {node: '>= 20'} + cpu: [x64] + os: [darwin] + + '@loris-sandbox/litesvm-kit-linux-arm64-gnu@0.5.0': + resolution: {integrity: sha512-otmfH7UBYseWzPMPOKVc4k6/G8QXCeZ8scd+eoINwcvNYtEtKoUe0CBItnwTSCiwLyzYDcWB4LXzcpQV0ZNZKg==} + engines: {node: '>= 20'} + cpu: [arm64] + os: [linux] + + '@loris-sandbox/litesvm-kit-linux-arm64-musl@0.5.0': + resolution: {integrity: sha512-mCGPqtl5PcJ3PTb20NnaCnFZ00E54c4r00e1IPB7O4DW+fLYoICfgNUy5S6mVNv0Yt45fT8QaUQbWcoGnmL6IQ==} + engines: {node: '>= 20'} + cpu: [arm64] + os: [linux] + + '@loris-sandbox/litesvm-kit-linux-x64-gnu@0.5.0': + resolution: {integrity: sha512-zbXvI71o9k715m1H/CtH2vEIwlf54O5oUmIZthVmnMRa33ct9vZj/sz0mcPW7NIIsYQEm1+rKysqXXNoThiFwg==} + engines: {node: '>= 20'} + cpu: [x64] + os: [linux] + + '@loris-sandbox/litesvm-kit-linux-x64-musl@0.5.0': + resolution: {integrity: sha512-bI30I12C7HczA9Q6c9d6DMKGHEqQBn0zRHDHAYX1T8YfGFFEKxTm0XtTFPH1BZrFfBzEHEUHfPB/pYaVjzb1cA==} + engines: {node: '>= 20'} + cpu: [x64] + os: [linux] + + '@loris-sandbox/litesvm-kit@0.5.0': + resolution: {integrity: sha512-zJcAFmEX82td18uzxhLX9yM6lqQ3as3FzLpJpARdJtTrIMNe0txVdAB+vZw1FqMQ9dL3h6IkUBahIWdCT4uHzw==} + engines: {node: '>= 20'} + '@mapbox/node-pre-gyp@1.0.11': resolution: {integrity: sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==} hasBin: true @@ -362,13 +406,46 @@ packages: resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==} engines: {node: '>=18'} - '@solana-program/system@0.11.0': - resolution: {integrity: sha512-SJeQVTkqGZzIXd7XHlCxnfpKpvPZghB1IFwddPPG04ydVXtDLRWp9wLoTR5Prkl9FIWRe/c5VgT4nxyzW1cAuQ==} + '@solana-program/compute-budget@0.13.0': + resolution: {integrity: sha512-jdiiWaxFG3kEf6bYPNo2mwz2jNxaj7sF+gZIb8wHw9zK3ZILmpkg4sUeChb1BnH2UGf+HgYb9L/lMdqOTqUoWA==} peerDependencies: '@solana/kit': ^6.0.0 - '@solana/accounts@6.0.1': - resolution: {integrity: sha512-wdW2KI31jeAIyryL2hLytu+bmIbfKBPkO2Qsu7DO80m2pqOVVOGQ0L0wIqFdNXZN7Eu/FVTY8sh6gqF9bnf5LQ==} + '@solana-program/system@0.10.0': + resolution: {integrity: sha512-Go+LOEZmqmNlfr+Gjy5ZWAdY5HbYzk2RBewD9QinEU/bBSzpFfzqDRT55JjFRBGJUvMgf3C2vfXEGT4i8DSI4g==} + peerDependencies: + '@solana/kit': ^5.0 + + '@solana-program/system@0.12.0': + resolution: {integrity: sha512-ZnAAWeGVMWNtJhw3GdifI2HnhZ0A0H0qs8tBkcFvxp/8wIavvO+GOM4Jd0N22u2+Lni2zcwvcrxrsxj6Mjphng==} + peerDependencies: + '@solana/kit': ^6.1.0 + + '@solana-program/token@0.9.0': + resolution: {integrity: sha512-vnZxndd4ED4Fc56sw93cWZ2djEeeOFxtaPS8SPf5+a+JZjKA/EnKqzbE1y04FuMhIVrLERQ8uR8H2h72eZzlsA==} + peerDependencies: + '@solana/kit': ^5.0 + + '@solana/accounts@5.5.1': + resolution: {integrity: sha512-TfOY9xixg5rizABuLVuZ9XI2x2tmWUC/OoN556xwfDlhBHBjKfszicYYOyD6nbFmwTGYarCmyGIdteXxTXIdhQ==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/accounts@6.1.0': + resolution: {integrity: sha512-0jhmhSSS71ClLtBQIDrLlhkiNER4M9RIXTl1eJ1yJoFlE608JaKHTjNWsdVKdke7uBD6exdjNZkIVmouQPHMcA==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/addresses@5.5.1': + resolution: {integrity: sha512-5xoah3Q9G30HQghu/9BiHLb5pzlPKRC3zydQDmE3O9H//WfayxTFppsUDCL6FjYUHqj/wzK6CWHySglc2RkpdA==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -376,8 +453,8 @@ packages: typescript: optional: true - '@solana/addresses@6.0.1': - resolution: {integrity: sha512-i/7JuTZF1MInCulP8/+aK9khKcDgjTrqqEl3wRmg6Kk/Dq+rOBrjXggLf3bEtGSWV53iH0NGDQt+psUNFd5Reg==} + '@solana/addresses@6.1.0': + resolution: {integrity: sha512-QT04Vie4iICaalQQRJFMGj/P56IxXiwFtVuZHu1qjZUNmuGTOvX6G98b27RaGtLzpJ3NIku/6OtKxLUBqAKAyQ==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -385,8 +462,8 @@ packages: typescript: optional: true - '@solana/assertions@6.0.1': - resolution: {integrity: sha512-Fnk0PCxjeNLDrsRQX+DRS3HnN5PRYQedosmtqx0/xK2CIB4lG/4coK/IdoL6i8/yS4EcKq8gNcMfH4fkmaMfLQ==} + '@solana/assertions@5.5.1': + resolution: {integrity: sha512-YTCSWAlGwSlVPnWtWLm3ukz81wH4j2YaCveK+TjpvUU88hTy6fmUqxi0+hvAMAe4zKXpJyj3Az7BrLJRxbIm4Q==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -394,8 +471,8 @@ packages: typescript: optional: true - '@solana/codecs-core@6.0.1': - resolution: {integrity: sha512-OnUQk94qfvfE0nVveZ638aNUL3tyRJoorUFiAG0ICTGUo3c6fkYb8vH23o/5O2qmuSmYND1sn+UCaldNMVkFpg==} + '@solana/assertions@6.1.0': + resolution: {integrity: sha512-pLgxB2xxTk2QfTaWpnRpSMYgaPkKYDQgptRvbwmuDQnOW1Zopg+42MT2UrDGd3UFMML1uOFPxIwKM6m51H0uXw==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -403,8 +480,8 @@ packages: typescript: optional: true - '@solana/codecs-data-structures@6.0.1': - resolution: {integrity: sha512-ImPGi5wtpca0gLaD9dJGj29z6GMU8tCYjqnmTc5Lyh5S80iCz9wNlwT1/VvPM6gqeIOFVx8bM9H1iljQ7MuCMw==} + '@solana/codecs-core@5.5.1': + resolution: {integrity: sha512-TgBt//bbKBct0t6/MpA8ElaOA3sa8eYVvR7LGslCZ84WiAwwjCY0lW/lOYsFHJQzwREMdUyuEyy5YWBKtdh8Rw==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -412,8 +489,8 @@ packages: typescript: optional: true - '@solana/codecs-numbers@6.0.1': - resolution: {integrity: sha512-ZrI1NjUsf4I+Klue/2rlQbZLcGRom/G2E4VB/8x4IEHGOeFLQhXcxmnib8kdgomQRYOzF1BjVDmCYxvZr+6AWA==} + '@solana/codecs-core@6.1.0': + resolution: {integrity: sha512-5rNnDOOm2GRFMJbd9imYCPNvGOrQ+TZ53NCkFFWbbB7f+L9KkLeuuAsDMFN1lCziJFlymvN785YtDnMeWj2W+g==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -421,8 +498,56 @@ packages: typescript: optional: true - '@solana/codecs-strings@6.0.1': - resolution: {integrity: sha512-OmMIfMFbbJVIxveBeATKCj9DsmZ8l4vJPnOLHUop0hLWRiYHTQ1qokMqfk/X8PCmUjXmbXnlp63BikGtdKN3/g==} + '@solana/codecs-data-structures@5.5.1': + resolution: {integrity: sha512-97bJWGyUY9WvBz3mX1UV3YPWGDTez6btCfD0ip3UVEXJbItVuUiOkzcO5iFDUtQT5riKT6xC+Mzl+0nO76gd0w==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/codecs-data-structures@6.1.0': + resolution: {integrity: sha512-1cb9g5hrrucTuGkGxqVVq7dCwSMnn4YqwTe365iKkK8HBpLBmUl8XATf1MUs5UtDun1g9eNWOL72Psr8mIUqTQ==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/codecs-numbers@5.5.1': + resolution: {integrity: sha512-rllMIZAHqmtvC0HO/dc/21wDuWaD0B8Ryv8o+YtsICQBuiL/0U4AGwH7Pi5GNFySYk0/crSuwfIqQFtmxNSPFw==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/codecs-numbers@6.1.0': + resolution: {integrity: sha512-YPQwwl6LE3igH23ah+d8kgpyE5xFcPbuwhxCDsLWqY/ESrvO/0YQSbsgIXahbhZxN59ZC4uq1LnHhBNbpCSVQg==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/codecs-strings@5.5.1': + resolution: {integrity: sha512-7klX4AhfHYA+uKKC/nxRGP2MntbYQCR3N6+v7bk1W/rSxYuhNmt+FN8aoThSZtWIKwN6BEyR1167ka8Co1+E7A==} + engines: {node: '>=20.18.0'} + peerDependencies: + fastestsmallesttextencoderdecoder: ^1.0.22 + typescript: ^5.0.0 + peerDependenciesMeta: + fastestsmallesttextencoderdecoder: + optional: true + typescript: + optional: true + + '@solana/codecs-strings@6.1.0': + resolution: {integrity: sha512-pRH5uAn4VCFUs2rYiDITyWsRnpvs3Uh/nhSc6OSP/kusghcCcCJcUzHBIjT4x08MVacXmGUlSLe/9qPQO+QK3Q==} engines: {node: '>=20.18.0'} peerDependencies: fastestsmallesttextencoderdecoder: ^1.0.22 @@ -433,17 +558,36 @@ packages: typescript: optional: true - '@solana/codecs@6.0.1': - resolution: {integrity: sha512-xNL69WA50fCMItk3zXA7UMDHVMDyW9paL32wwxzL++sv7txfgma3UIAxP90tn9GBMwjPTB74hI6ook1mA2DhTQ==} + '@solana/codecs@5.5.1': + resolution: {integrity: sha512-Vea29nJub/bXjfzEV7ZZQ/PWr1pYLZo3z0qW0LQL37uKKVzVFRQlwetd7INk3YtTD3xm9WUYr7bCvYUk3uKy2g==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/codecs@6.1.0': + resolution: {integrity: sha512-VHBS3t8fyVjE0Nqo6b4TUnzdwdRaVo+B5ufHhPLbbjkEXzz8HB4E/OBjgasn+zWGlfScfQAiBFOsfZjbVWu4XA==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/errors@5.5.1': + resolution: {integrity: sha512-vFO3p+S7HoyyrcAectnXbdsMfwUzY2zYFUc2DEe5BwpiE9J1IAxPBGjOWO6hL1bbYdBrlmjNx8DXCslqS+Kcmg==} engines: {node: '>=20.18.0'} + hasBin: true peerDependencies: typescript: ^5.0.0 peerDependenciesMeta: typescript: optional: true - '@solana/errors@6.0.1': - resolution: {integrity: sha512-sMe5GCsXto8F1KDeq9GbZR0+m841SqEYep3NAcYlC0lqF2RG4giaaPQHgrWI5DJR/L7yc8FzUIQfTxnaN7bwOQ==} + '@solana/errors@6.1.0': + resolution: {integrity: sha512-cqSwcw3Rmn85UR7PyF5nKPdlQsRYBkx7YGRvFaJ6Sal1PM+bfolhL5iT7STQoXxdhXGYwHMPg7kZYxmMdjwnJA==} engines: {node: '>=20.18.0'} hasBin: true peerDependencies: @@ -465,8 +609,326 @@ packages: eslint-plugin-typescript-sort-keys: ^3.2.0 typescript: ^5.1.6 - '@solana/fast-stable-stringify@6.0.1': - resolution: {integrity: sha512-60F0TaKm+mbIfsj94TaPgO2mbKtXVYyELC1Kf8YoRo9jIQSXVGXdljXR1UzqSxrN6V4Ueyx3RE5jW9fAIzQZ/A==} + '@solana/fast-stable-stringify@5.5.1': + resolution: {integrity: sha512-Ni7s2FN33zTzhTFgRjEbOVFO+UAmK8qi3Iu0/GRFYK4jN696OjKHnboSQH/EacQ+yGqS54bfxf409wU5dsLLCw==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/fast-stable-stringify@6.1.0': + resolution: {integrity: sha512-QXUfDFaJCFeARsxJgScWmJ153Tit7Cimk9y0UWWreNBr2Aphi67Nlcj/tr7UABTO0Qaw/0gwrK76zz3m1t3nIw==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/functional@5.5.1': + resolution: {integrity: sha512-tTHoJcEQq3gQx5qsdsDJ0LEJeFzwNpXD80xApW9o/PPoCNimI3SALkZl+zNW8VnxRrV3l3yYvfHWBKe/X3WG3w==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/functional@6.1.0': + resolution: {integrity: sha512-+Sm8ldVxSTHIKaZDvcBu81FPjknXx6OMPlakkKmXjKxPgVLl86ruqMo2yEwoDUHV7DysLrLLcRNn13rfulomRw==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/instruction-plans@5.5.1': + resolution: {integrity: sha512-7z3CB7YMcFKuVvgcnNY8bY6IsZ8LG61Iytbz7HpNVGX2u1RthOs1tRW8luTzSG1MPL0Ox7afyAVMYeFqSPHnaQ==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/instruction-plans@6.1.0': + resolution: {integrity: sha512-zcsHg544t1zn7LLOVUxOWYlsKn9gvT7R+pL3cTiP2wFNoUN0h9En87H6nVqkZ8LWw23asgW0uM5uJGwfBx2h1Q==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/instructions@5.5.1': + resolution: {integrity: sha512-h0G1CG6S+gUUSt0eo6rOtsaXRBwCq1+Js2a+Ps9Bzk9q7YHNFA75/X0NWugWLgC92waRp66hrjMTiYYnLBoWOQ==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/instructions@6.1.0': + resolution: {integrity: sha512-w1LdbJ3yanESckNTYC5KPckgN/25FyGCm07WWrs+dCnnpRNeLiVHIytXCPmArOVAXVkOYidXzhWmqCzqKUjYaA==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/keys@5.5.1': + resolution: {integrity: sha512-KRD61cL7CRL+b4r/eB9dEoVxIf/2EJ1Pm1DmRYhtSUAJD2dJ5Xw8QFuehobOGm9URqQ7gaQl+Fkc1qvDlsWqKg==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/keys@6.1.0': + resolution: {integrity: sha512-C/SGCl3VOgBQZ0mLrMxCcJYnMsGpgE8wbx29jqRY+R91m5YhS1f/GfXJPR1lN/h7QGrJ6YDm8eI0Y3AZ7goKHg==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/kit-plugin-airdrop@0.5.0': + resolution: {integrity: sha512-vPM+wpmtka4R0Uh3FQI5xbIui9qXWkk5nXsj5OPU6794ZV7O6QYwod7LSRE5i4cxVTxgBv660NCPA6tRc/Jo9w==} + peerDependencies: + '@solana/kit': ^6.1.0 + + '@solana/kit-plugin-instruction-plan@0.4.0': + resolution: {integrity: sha512-8YnzOAo42nrYVR9EmioeOM8lJwAdyDn8O1XTe1ddFrlaAsYsXYZV8SxVs4OgduEgWxTnr47xaHMJF2IW23SppA==} + peerDependencies: + '@solana/kit': ^6.1.0 + + '@solana/kit-plugin-litesvm@0.3.1': + resolution: {integrity: sha512-nPcog11FvCbxAhs78q37YsgbbuvRhGvlY8Z5xwgqKxcF+vCu8rNK6wBJDGqjgAS28NcgLRBAhTH0ZZYYN/d7XA==} + peerDependencies: + '@solana/kit': ^6.0.0 + + '@solana/kit-plugin-payer@0.5.0': + resolution: {integrity: sha512-PfY/l1ZevuJBh0QdYTR9MAPlrVLiVBVMWstR8TIbORkfx6K9oNLFYLcS2kT1P+sc8qU2Utfs9kPpwkbssPwKcQ==} + peerDependencies: + '@solana/kit': ^6.1.0 + + '@solana/kit-plugin-rpc@0.3.0': + resolution: {integrity: sha512-+HOc9HJw0wn6Yqe6cPnEzw9Cg57bl+grC1ptBmYBFfTIFM709nsbvXIC/Rxm7mCaHf/4joGrixEsAWWNBCWwaQ==} + peerDependencies: + '@solana/kit': ^6.0.0 + + '@solana/kit-plugins@0.5.0': + resolution: {integrity: sha512-smQzPRej3N99za2ebIc4hIhIBwxG5sbyVubP80ww73soFOjlfvdl8VJlGhIzXgn0jHJ7fFJckvAwfd8zymzTMw==} + peerDependencies: + '@solana/kit': ^6.1.0 + + '@solana/kit@5.5.1': + resolution: {integrity: sha512-irKUGiV2yRoyf+4eGQ/ZeCRxa43yjFEL1DUI5B0DkcfZw3cr0VJtVJnrG8OtVF01vT0OUfYOcUn6zJW5TROHvQ==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/kit@6.1.0': + resolution: {integrity: sha512-24exn11BPonquufyCkGgypVtmN4JOsdGMsbF3EZ4kFyk7ZNryCn/N8eELr1FCVrHWRXoc0xy/HFaESBULTMf6g==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/nominal-types@5.5.1': + resolution: {integrity: sha512-I1ImR+kfrLFxN5z22UDiTWLdRZeKtU0J/pkWkO8qm/8WxveiwdIv4hooi8pb6JnlR4mSrWhq0pCIOxDYrL9GIQ==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/nominal-types@6.1.0': + resolution: {integrity: sha512-+skHjN0arNNB9TLsGqA94VCx7euyGURI+qG6wck6E4D7hH6i6DxGiVrtKRghx+smJkkLtTm9BvdVKGoeNQYr7Q==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/offchain-messages@5.5.1': + resolution: {integrity: sha512-g+xHH95prTU+KujtbOzj8wn+C7ZNoiLhf3hj6nYq3MTyxOXtBEysguc97jJveUZG0K97aIKG6xVUlMutg5yxhw==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/offchain-messages@6.1.0': + resolution: {integrity: sha512-jrUb7HGUnRA+k44upcqKeevtEdqMxYRSlFdE0JTctZunGlP3GCcTl12tFOpbnFHvBLt8RwS62+nyeES8zzNwXA==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/options@5.5.1': + resolution: {integrity: sha512-eo971c9iLNLmk+yOFyo7yKIJzJ/zou6uKpy6mBuyb/thKtS/haiKIc3VLhyTXty3OH2PW8yOlORJnv4DexJB8A==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/options@6.1.0': + resolution: {integrity: sha512-/4FtVfR6nkHkMCumyh7/lJ6jMqyES6tKUbOJRa6gJxcIUWeRDu+XrHTHLf3gRNUqDAbFvW8FMIrQm7PdreZgRA==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/plugin-core@5.5.1': + resolution: {integrity: sha512-VUZl30lDQFJeiSyNfzU1EjYt2QZvoBFKEwjn1lilUJw7KgqD5z7mbV7diJhT+dLFs36i0OsjXvq5kSygn8YJ3A==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/plugin-core@6.1.0': + resolution: {integrity: sha512-2nmNCPa6B1QArqpAZHWUkK6K7UXLTrekfcfJm2V//ATEtLpKEBlv0c3mrhOYwNAKP2TpNuvEV33InXWKst9oXQ==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/plugin-interfaces@6.1.0': + resolution: {integrity: sha512-eWSzfOuwtHUp8vljf5V24Tkz3WxqxiV0vD/BJZBNRZMdYRw3Cw3oeWcvEqHHxGUOie6AjIK8GrKggi8F73ZXbg==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/program-client-core@6.1.0': + resolution: {integrity: sha512-5Apka+ulWNfLNLYNR63pLnr5XvkXTQWeaftWED93iTWTZrZv9SyFWcmIsaes6eqGXMQ3RhlebnrWODtKuAA62g==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/programs@5.5.1': + resolution: {integrity: sha512-7U9kn0Jsx1NuBLn5HRTFYh78MV4XN145Yc3WP/q5BlqAVNlMoU9coG5IUTJIG847TUqC1lRto3Dnpwm6T4YRpA==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/programs@6.1.0': + resolution: {integrity: sha512-i4L4gSlIHDsdYRt3/YKVKMIN3UuYSKHRqK9B+AejcIc0y6Y/AXnHqzmpBRXEhvTXz18nt59MLXpVU4wu7ASjJA==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/promises@5.5.1': + resolution: {integrity: sha512-T9lfuUYkGykJmppEcssNiCf6yiYQxJkhiLPP+pyAc2z84/7r3UVIb2tNJk4A9sucS66pzJnVHZKcZVGUUp6wzA==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/promises@6.1.0': + resolution: {integrity: sha512-/mUW6peXQiEOaylLpGv4vtkvPzQvSbfhX9j5PNIK/ry4S3SHRQ3j3W/oGy4y3LR5alwo7NcVbubrkh4e4xwcww==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/rpc-api@5.5.1': + resolution: {integrity: sha512-XWOQQPhKl06Vj0xi3RYHAc6oEQd8B82okYJ04K7N0Vvy3J4PN2cxeK7klwkjgavdcN9EVkYCChm2ADAtnztKnA==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/rpc-api@6.1.0': + resolution: {integrity: sha512-+hO5+kZjJHuUNATUQxlJ1+ztXFkgn1j46zRwt3X7kF+VHkW3wsQ7up0JTS+Xsacmkrj1WKfymQweq8JTrsAG8A==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/rpc-parsed-types@5.5.1': + resolution: {integrity: sha512-HEi3G2nZqGEsa3vX6U0FrXLaqnUCg4SKIUrOe8CezD+cSFbRTOn3rCLrUmJrhVyXlHoQVaRO9mmeovk31jWxJg==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/rpc-parsed-types@6.1.0': + resolution: {integrity: sha512-YKccynVgWt/gbs0tBYstNw6BSVuOeWdeAldTB2OgH95o2Q04DpO4v97X1MZDysA4SvSZM30Ek5Ni5ss3kskgdw==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/rpc-spec-types@5.5.1': + resolution: {integrity: sha512-6OFKtRpIEJQs8Jb2C4OO8KyP2h2Hy1MFhatMAoXA+0Ik8S3H+CicIuMZvGZ91mIu/tXicuOOsNNLu3HAkrakrw==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/rpc-spec-types@6.1.0': + resolution: {integrity: sha512-tldMv1b6VGcvcRrY5MDWKlsyEKH6K96zE7gAIpKDX2G4T47ZOV+OMA3nh6xQpRgtyCUBsej0t80qmvTBDX/5IQ==} + engines: {node: '>=20.18.0'} + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + '@solana/rpc-spec@5.5.1': + resolution: {integrity: sha512-m3LX2bChm3E3by4mQrH4YwCAFY57QBzuUSWqlUw7ChuZ+oLLOq7b2czi4i6L4Vna67j3eCmB3e+4tqy1j5wy7Q==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -474,8 +936,8 @@ packages: typescript: optional: true - '@solana/functional@6.0.1': - resolution: {integrity: sha512-qHPw87tCf4Kq4H9cpH6XV/C1wKJzSj0OQ8t+BqbFxvpX+c7svSRUY/It2gJOAcJd9f9hduQ3ZrqARXOU7aILvw==} + '@solana/rpc-spec@6.1.0': + resolution: {integrity: sha512-RxpkIGizCYhXGUcap7npV2S/rAXZ7P/liozY/ExjMmCxYTDwGIW33kp/uH/JRxuzrL8+f8FqY76VsqqIe+2VZw==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -483,8 +945,8 @@ packages: typescript: optional: true - '@solana/instruction-plans@6.0.1': - resolution: {integrity: sha512-aEwCfksUxVgcrOGnDJmmIp4phYn+DpOeS0fq7v3uteBu7T7lkwW+EJCu2iT1j1VLxcjDuPf243pNBp5GR13+yw==} + '@solana/rpc-subscriptions-api@5.5.1': + resolution: {integrity: sha512-5Oi7k+GdeS8xR2ly1iuSFkAv6CZqwG0Z6b1QZKbEgxadE1XGSDrhM2cn59l+bqCozUWCqh4c/A2znU/qQjROlw==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -492,8 +954,8 @@ packages: typescript: optional: true - '@solana/instructions@6.0.1': - resolution: {integrity: sha512-qNTc3GrmiesN2x27Ap8qhKKn9vIocz/1Dc/Am7hiYU4TFiKtuj34TARyDa5VVbLGKRY5vZCpNsX2jqVx2V0lSQ==} + '@solana/rpc-subscriptions-api@6.1.0': + resolution: {integrity: sha512-I6J+3VU0dda6EySKbDyd+1urC7RGIRPRp0DcWRVcy68NOLbq0I5C40Dn9O2Zf8iCdK4PbQ7JKdCvZ/bDd45hdg==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -501,8 +963,8 @@ packages: typescript: optional: true - '@solana/keys@6.0.1': - resolution: {integrity: sha512-naN3yRzN2VDJUgdcrxwsObr2ik8MV2brOI/MLrOWDUW8nlVfcs4OC7mB/HC1hYd60DT0rsP18P33Gjd8juknYw==} + '@solana/rpc-subscriptions-channel-websocket@5.5.1': + resolution: {integrity: sha512-7tGfBBrYY8TrngOyxSHoCU5shy86iA9SRMRrPSyBhEaZRAk6dnbdpmUTez7gtdVo0BCvh9nzQtUycKWSS7PnFQ==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -510,8 +972,8 @@ packages: typescript: optional: true - '@solana/kit@6.0.1': - resolution: {integrity: sha512-zCU5URMgkCgL5hZOxjIzhAD7SjqVAJN4sbpyC4MatxbXE/NGoabPc4I2y5STrXsZLokQD0t4KZ1zs9v5M8Ylag==} + '@solana/rpc-subscriptions-channel-websocket@6.1.0': + resolution: {integrity: sha512-vsx9b+uyCr9L3giao/BTiBFA8DxV5+gDNFq0t5uL21uQ17JXzBektwzHuHoth9IjkvXV/h+IhwXfuLE9Qm4GQg==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -519,8 +981,8 @@ packages: typescript: optional: true - '@solana/nominal-types@6.0.1': - resolution: {integrity: sha512-2/1loP3iHgLQIaeksrDPNL2be2zboKbsF2EKDAt7zqbiDCOsPY9Kgdq50WJGGileIXD0v7yincq6UTdOLcaR8Q==} + '@solana/rpc-subscriptions-spec@5.5.1': + resolution: {integrity: sha512-iq+rGq5fMKP3/mKHPNB6MC8IbVW41KGZg83Us/+LE3AWOTWV1WT20KT2iH1F1ik9roi42COv/TpoZZvhKj45XQ==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -528,8 +990,8 @@ packages: typescript: optional: true - '@solana/offchain-messages@6.0.1': - resolution: {integrity: sha512-lwpNl+kusH2v5nLgUfwxme66uDonCn8+TqzYqJeENolaAbV0nnF8rV4ZHjfFs1Bc/3UG+TxrI0WYvRI+B5nVBA==} + '@solana/rpc-subscriptions-spec@6.1.0': + resolution: {integrity: sha512-P06jhqzHpZGaLeJmIQkpDeMDD1xUp53ARpmXMsduMC+U5ZKQt29CLo+JrR18boNtls6WfttjVMEbzF25/4UPVA==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -537,8 +999,8 @@ packages: typescript: optional: true - '@solana/options@6.0.1': - resolution: {integrity: sha512-ld13WWyMgicU8FkN6dNOmMJgVaV0uqU8HDQRJCfClsPl0v2TQ1t3aOYHkxpYfX+OvBjja1x2v2wflqJgUHKS+Q==} + '@solana/rpc-subscriptions@5.5.1': + resolution: {integrity: sha512-CTMy5bt/6mDh4tc6vUJms9EcuZj3xvK0/xq8IQ90rhkpYvate91RjBP+egvjgSayUg9yucU9vNuUpEjz4spM7w==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -546,8 +1008,8 @@ packages: typescript: optional: true - '@solana/plugin-core@6.0.1': - resolution: {integrity: sha512-mrVb6cf/HurU93z2bgCOoRxWuZWF/fWzIK+v7YMl9t8aKHhGdB4/iElXvPwGoArapZJaAe7dRqHgCJvYRPFvCg==} + '@solana/rpc-subscriptions@6.1.0': + resolution: {integrity: sha512-sqwj+cQinWcZ7M/9+cudKxMPTkTQyGP73980vPCWM7vCpPkp2qzgrEie4DdgDGo+NMwIjeFgu2kdUuLHI3GD/g==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -555,8 +1017,8 @@ packages: typescript: optional: true - '@solana/programs@6.0.1': - resolution: {integrity: sha512-eKsSVuADG/bzTu66iwhJctbIEQQLZVnD/kx98gtPAuNG6Z1WjMXO8tn6EYLn3ndc5yS+oeNSQBV6z3ozL+gTkQ==} + '@solana/rpc-transformers@5.5.1': + resolution: {integrity: sha512-OsWqLCQdcrRJKvHiMmwFhp9noNZ4FARuMkHT5us3ustDLXaxOjF0gfqZLnMkulSLcKt7TGXqMhBV+HCo7z5M8Q==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -564,8 +1026,8 @@ packages: typescript: optional: true - '@solana/promises@6.0.1': - resolution: {integrity: sha512-6W8yFBtjhwy8Gn7aagXBUjiQejpa+ENgqot2uy3LACQPQMCnd+TwZk9Pggnm5+Q12rm+d9bMvAa4110eoXR0Bw==} + '@solana/rpc-transformers@6.1.0': + resolution: {integrity: sha512-OsSuuRPmsmS02eR9Zz+4iTsr+21hvEMEex5vwbwN6LAGPFlQ4ohqGkxgZCwmYd+Q5HWpnn9Uuf1MDTLLrKQkig==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -573,8 +1035,8 @@ packages: typescript: optional: true - '@solana/rpc-api@6.0.1': - resolution: {integrity: sha512-lCXPGHx2eF8wl0kdpuDLWX44vdDaTcPTAD9hCIsHQFLWeahJDarieoOacaAuse6TsRtGaPExBvbW6Da555Lnaw==} + '@solana/rpc-transport-http@5.5.1': + resolution: {integrity: sha512-yv8GoVSHqEV0kUJEIhkdOVkR2SvJ6yoWC51cJn2rSV7plr6huLGe0JgujCmB7uZhhaLbcbP3zxXxu9sOjsi7Fg==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -582,8 +1044,8 @@ packages: typescript: optional: true - '@solana/rpc-parsed-types@6.0.1': - resolution: {integrity: sha512-2CnWhtJuiOgefU3EerwM1bg/OvmLJTMBUuGiSVoVAr7WfGjUXcoRa3mNO0HUDDoRo2gZwM/8BaFzhiRSbamsmQ==} + '@solana/rpc-transport-http@6.1.0': + resolution: {integrity: sha512-3ebaTYuglLJagaXtjwDPVI7SQeeeFN2fpetpGKsuMAiti4fzYqEkNN8FIo+nXBzqqG/cVc2421xKjXl6sO1k/g==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -591,8 +1053,8 @@ packages: typescript: optional: true - '@solana/rpc-spec-types@6.0.1': - resolution: {integrity: sha512-dosqI9gWs5Cz5T9Uanu4FkMkBN7AD6bRVw0YDIkalRcpC50Ak2iP48fJKArw3lh/phjcxEBVQxY3XeKEVGZP7Q==} + '@solana/rpc-types@5.5.1': + resolution: {integrity: sha512-bibTFQ7PbHJJjGJPmfYC2I+/5CRFS4O2p9WwbFraX1Keeel+nRrt/NBXIy8veP5AEn2sVJIyJPpWBRpCx1oATA==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -600,8 +1062,8 @@ packages: typescript: optional: true - '@solana/rpc-spec@6.0.1': - resolution: {integrity: sha512-SfZZUCbpiKNHsIAYq9WKd6PhnpXkH8ASRIda9KMkpFtTVg1thm4sA/A/Jpk8vJDpUVvzYLBVblNHQWqwRiRxAA==} + '@solana/rpc-types@6.1.0': + resolution: {integrity: sha512-lR+Cb3v5Rpl49HsXWASy++TSE1AD86eRKabY+iuWnbBMYVGI4MamAvYwgBiygsCNc30nyO2TFNj9STMeSD/gAg==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -609,8 +1071,8 @@ packages: typescript: optional: true - '@solana/rpc-subscriptions-api@6.0.1': - resolution: {integrity: sha512-yj6niyZ6jqwg4u4oi55gDPzDNwXdgGBuu1zVfUnD6auCavDl4OxziUEtRIQ3NURJZa5kjTqQ48TuR0tD55vfiA==} + '@solana/rpc@5.5.1': + resolution: {integrity: sha512-ku8zTUMrkCWci66PRIBC+1mXepEnZH/q1f3ck0kJZ95a06bOTl5KU7HeXWtskkyefzARJ5zvCs54AD5nxjQJ+A==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -618,8 +1080,8 @@ packages: typescript: optional: true - '@solana/rpc-subscriptions-channel-websocket@6.0.1': - resolution: {integrity: sha512-lxjfG+krZF8np69SQyRbmQL8jYNV/G69Ak782GYYfkEdAYztFs9OOQMgZNuciIgUlQAcXWWkNjJ6GhIbisg9NA==} + '@solana/rpc@6.1.0': + resolution: {integrity: sha512-R3y5PklW9mPy5Y34hsXj40R28zN2N7AGLnHqYJVkXkllwVub/QCNpSdDxAnbbS5EGOYGoUOW8s5LFoXwMSr1LQ==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -627,8 +1089,8 @@ packages: typescript: optional: true - '@solana/rpc-subscriptions-spec@6.0.1': - resolution: {integrity: sha512-FhZOXpP71R5y7q0TEvAFNJ+WmxIJUfhQicgae71WQtaiw+vM/dFnT/AL3I9rRBVzF0UQ7wIeqkuVKltdJEdzqQ==} + '@solana/signers@5.5.1': + resolution: {integrity: sha512-FY0IVaBT2kCAze55vEieR6hag4coqcuJ31Aw3hqRH7mv6sV8oqwuJmUrx+uFwOp1gwd5OEAzlv6N4hOOple4sQ==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -636,8 +1098,8 @@ packages: typescript: optional: true - '@solana/rpc-subscriptions@6.0.1': - resolution: {integrity: sha512-h2LXD8PiXPZca3vtECmUSEzLjc5m6EswgnJcq+HtJqA0M+xINFRl8mL6yS5D2d1Cf7sl/CwU/7935GJ8uLFeJA==} + '@solana/signers@6.1.0': + resolution: {integrity: sha512-WDPGZJr6jIe2dEChv/2KQBnaga8dqOjd6ceBj/HcDHxnCudo66t7GlyZ9+9jMO40AgOOb7EDE5FDqPMrHMg5Yw==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -645,8 +1107,8 @@ packages: typescript: optional: true - '@solana/rpc-transformers@6.0.1': - resolution: {integrity: sha512-tkyTh5jwK/IZV+jI4plFttG1l43g47YB/laFtxYvu8OZx5RTCljryPh5RamjxGAhFk3w6xnLZJbc3MBk8VrPsQ==} + '@solana/subscribable@5.5.1': + resolution: {integrity: sha512-9K0PsynFq0CsmK1CDi5Y2vUIJpCqkgSS5yfDN0eKPgHqEptLEaia09Kaxc90cSZDZU5mKY/zv1NBmB6Aro9zQQ==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -654,8 +1116,8 @@ packages: typescript: optional: true - '@solana/rpc-transport-http@6.0.1': - resolution: {integrity: sha512-l9TOpQq4cSIhReyzLJb7j+03YaUDClDJOzJr7ZQSo1fqt7Ww6C5+dKOVIUUu6tg9AOO8mCA0QVT/rFmZ9ZjhiQ==} + '@solana/subscribable@6.1.0': + resolution: {integrity: sha512-HiUfkxN7638uxPmY4t0gI4+yqnFLZYJKFaT9EpWIuGrOB1d9n+uOHNs3NU7cVMwWXgfZUbztTCKyCVTbcwesNg==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -663,8 +1125,8 @@ packages: typescript: optional: true - '@solana/rpc-types@6.0.1': - resolution: {integrity: sha512-40nXhThKNzh0ih2Pd8ACsIKPgVaP/6OqbLfgcZxPjZ10XjhjMy9crwW1ZF0EPhK8uo+bs9gtztl9OVWWgYYrNQ==} + '@solana/sysvars@5.5.1': + resolution: {integrity: sha512-k3Quq87Mm+geGUu1GWv6knPk0ALsfY6EKSJGw9xUJDHzY/RkYSBnh0RiOrUhtFm2TDNjOailg8/m0VHmi3reFA==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -672,8 +1134,8 @@ packages: typescript: optional: true - '@solana/rpc@6.0.1': - resolution: {integrity: sha512-fuRnm1SNcRLWii6N3WeJL8LSJJDEVEdS+ZDXclUWAPXUccl6wGb99/1tHWeOOwczgk9nmWoTYY9XeOLJt88HSg==} + '@solana/sysvars@6.1.0': + resolution: {integrity: sha512-KwJyBBrAOx0BgkiZqOKAaySDb/0JrUFSBQL9/O1kSKGy9TCRX55Ytr1HxNTcTPppWNpbM6JZVK+yW3Ruey0HRw==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -681,8 +1143,8 @@ packages: typescript: optional: true - '@solana/signers@6.0.1': - resolution: {integrity: sha512-iby4CGjk4pBNqytpyyPK2IGZ8/BMcrdtubVCuSYze2DJE3RdrPkuhVv2A6A6Cfk/0DPfUkqZQtTNMxCOj6oCbw==} + '@solana/transaction-confirmation@5.5.1': + resolution: {integrity: sha512-j4mKlYPHEyu+OD7MBt3jRoX4ScFgkhZC6H65on4Fux6LMScgivPJlwnKoZMnsgxFgWds0pl+BYzSiALDsXlYtw==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -690,8 +1152,8 @@ packages: typescript: optional: true - '@solana/subscribable@6.0.1': - resolution: {integrity: sha512-GGXvRVzOAJlbGwwgOHbcxwT8lILkgrlHYO72ChkG8IbJWq7eTi1+Uz3TQTsXtC923dZ2XHLqp+aHl7Kx3L3ENg==} + '@solana/transaction-confirmation@6.1.0': + resolution: {integrity: sha512-akSjcqAMOGPFvKctFDSzhjcRc/45WbEVdVQ9mjgH6OYo7B11WZZZaeGPlzAw5KyuG34Px941xmICkBmNqEH47Q==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -699,8 +1161,8 @@ packages: typescript: optional: true - '@solana/sysvars@6.0.1': - resolution: {integrity: sha512-fSMasRQUfbzrhZ3t0XdVpwIezHRelPx3ZxkqyUy8Lx/90YzR1kxaJpmNS7c1pBV60scdiJVQ4vXQtetKxIgRVQ==} + '@solana/transaction-messages@5.5.1': + resolution: {integrity: sha512-aXyhMCEaAp3M/4fP0akwBBQkFPr4pfwoC5CLDq999r/FUwDax2RE/h4Ic7h2Xk+JdcUwsb+rLq85Y52hq84XvQ==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -708,8 +1170,8 @@ packages: typescript: optional: true - '@solana/transaction-confirmation@6.0.1': - resolution: {integrity: sha512-x0sXnS75xwchAtQU0UbQ7wBQoWqgUQkn0G4DKQMEGllWGRsJFvpQzuUqAgh5fNhe2sMt8+4QdQHrI01zUNDDtQ==} + '@solana/transaction-messages@6.1.0': + resolution: {integrity: sha512-Dpv54LRVcfFbFEa/uB53LaY/TRfKuPGMKR7Z4F290zBgkj9xkpZkI+WLiJBiSloI7Qo2KZqXj3514BIeZvJLcg==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -717,8 +1179,8 @@ packages: typescript: optional: true - '@solana/transaction-messages@6.0.1': - resolution: {integrity: sha512-lpSyXsFPMCDo5Vf0LLsdj5+WyYxUD+8WEMWuVDYiG/7e8fVjLEsZ6k/UpvyI7ZJnkMhfwEa3DRAubNDH1Biafg==} + '@solana/transactions@5.5.1': + resolution: {integrity: sha512-8hHtDxtqalZ157pnx6p8k10D7J/KY/biLzfgh9R09VNLLY3Fqi7kJvJCr7M2ik3oRll56pxhraAGCC9yIT6eOA==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -726,8 +1188,8 @@ packages: typescript: optional: true - '@solana/transactions@6.0.1': - resolution: {integrity: sha512-VLFug8oKCpEyZv/mMMnQIraupXwMUzO4KzA/kGBHbUnCX95K7UFpc07AFc1nXGbo1jBBO4e+O2cnVWg097Yz0A==} + '@solana/transactions@6.1.0': + resolution: {integrity: sha512-1dkiNJcTtlHm4Fvs5VohNVpv7RbvbUYYKV7lYXMPIskoLF1eZp0tVlEqD/cRl91RNz7HEysfHqBAwlcJcRmrRg==} engines: {node: '>=20.18.0'} peerDependencies: typescript: ^5.0.0 @@ -1043,6 +1505,10 @@ packages: resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==} hasBin: true + commander@14.0.2: + resolution: {integrity: sha512-TywoWNNRbhoD0BXs1P3ZEScW8W5iKrnbithIl0YH+uCmBd0QpPOA8yc82DS3BIE5Ma6FnBVUsJ7wVUDz4dvOWQ==} + engines: {node: '>=20'} + commander@14.0.3: resolution: {integrity: sha512-H+y0Jo/T1RZ9qPP4Eh1pkcQcLRglraJaSLoyOtHxu6AapkjWVCy2Sit1QQ4x3Dng8qDlSsZEet7g5Pq06MvTgw==} engines: {node: '>=20'} @@ -2063,8 +2529,8 @@ packages: undici-types@7.10.0: resolution: {integrity: sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==} - undici-types@7.20.0: - resolution: {integrity: sha512-PZDAAlMkNw5ZzN/ebfyrwzrMWfIf7Jbn9iM/I6SF456OKrb2wnfqVowaxEY/cMAM8MjFu1zhdpJyA0L+rTYwNw==} + undici-types@7.22.0: + resolution: {integrity: sha512-RKZvifiL60xdsIuC80UY0dq8Z7DbJUV8/l2hOVbyZAxBzEeQU4Z58+4ZzJ6WN2Lidi9KzT5EbiGX+PI/UGYuRw==} unicorn-magic@0.1.0: resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} @@ -2301,6 +2767,42 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.4.15 + '@loris-sandbox/litesvm-kit-darwin-arm64@0.5.0': + optional: true + + '@loris-sandbox/litesvm-kit-darwin-x64@0.5.0': + optional: true + + '@loris-sandbox/litesvm-kit-linux-arm64-gnu@0.5.0': + optional: true + + '@loris-sandbox/litesvm-kit-linux-arm64-musl@0.5.0': + optional: true + + '@loris-sandbox/litesvm-kit-linux-x64-gnu@0.5.0': + optional: true + + '@loris-sandbox/litesvm-kit-linux-x64-musl@0.5.0': + optional: true + + '@loris-sandbox/litesvm-kit@0.5.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana-program/system': 0.10.0(@solana/kit@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)) + '@solana-program/token': 0.9.0(@solana/kit@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)) + '@solana/kit': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + optionalDependencies: + '@loris-sandbox/litesvm-kit-darwin-arm64': 0.5.0 + '@loris-sandbox/litesvm-kit-darwin-x64': 0.5.0 + '@loris-sandbox/litesvm-kit-linux-arm64-gnu': 0.5.0 + '@loris-sandbox/litesvm-kit-linux-arm64-musl': 0.5.0 + '@loris-sandbox/litesvm-kit-linux-x64-gnu': 0.5.0 + '@loris-sandbox/litesvm-kit-linux-x64-musl': 0.5.0 + transitivePeerDependencies: + - bufferutil + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + '@mapbox/node-pre-gyp@1.0.11': dependencies: detect-libc: 2.0.3 @@ -2386,84 +2888,176 @@ snapshots: '@sindresorhus/merge-streams@2.3.0': {} - '@solana-program/system@0.11.0(@solana/kit@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3))': + '@solana-program/compute-budget@0.13.0(@solana/kit@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3))': + dependencies: + '@solana/kit': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + + '@solana-program/system@0.10.0(@solana/kit@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3))': + dependencies: + '@solana/kit': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + + '@solana-program/system@0.12.0(@solana/kit@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3))': + dependencies: + '@solana/kit': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + + '@solana-program/token@0.9.0(@solana/kit@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3))': + dependencies: + '@solana/kit': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + + '@solana/accounts@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/addresses': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs-core': 5.5.1(typescript@5.9.3) + '@solana/codecs-strings': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/rpc-spec': 5.5.1(typescript@5.9.3) + '@solana/rpc-types': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + + '@solana/accounts@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': dependencies: - '@solana/kit': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/addresses': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs-core': 6.1.0(typescript@5.9.3) + '@solana/codecs-strings': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/rpc-spec': 6.1.0(typescript@5.9.3) + '@solana/rpc-types': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder - '@solana/accounts@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + '@solana/addresses@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': dependencies: - '@solana/addresses': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/codecs-core': 6.0.1(typescript@5.9.3) - '@solana/codecs-strings': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/rpc-spec': 6.0.1(typescript@5.9.3) - '@solana/rpc-types': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/assertions': 5.5.1(typescript@5.9.3) + '@solana/codecs-core': 5.5.1(typescript@5.9.3) + '@solana/codecs-strings': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/nominal-types': 5.5.1(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - fastestsmallesttextencoderdecoder - '@solana/addresses@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + '@solana/addresses@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': dependencies: - '@solana/assertions': 6.0.1(typescript@5.9.3) - '@solana/codecs-core': 6.0.1(typescript@5.9.3) - '@solana/codecs-strings': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/nominal-types': 6.0.1(typescript@5.9.3) + '@solana/assertions': 6.1.0(typescript@5.9.3) + '@solana/codecs-core': 6.1.0(typescript@5.9.3) + '@solana/codecs-strings': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/nominal-types': 6.1.0(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - fastestsmallesttextencoderdecoder - '@solana/assertions@6.0.1(typescript@5.9.3)': + '@solana/assertions@5.5.1(typescript@5.9.3)': + dependencies: + '@solana/errors': 5.5.1(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + + '@solana/assertions@6.1.0(typescript@5.9.3)': + dependencies: + '@solana/errors': 6.1.0(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + + '@solana/codecs-core@5.5.1(typescript@5.9.3)': + dependencies: + '@solana/errors': 5.5.1(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + + '@solana/codecs-core@6.1.0(typescript@5.9.3)': + dependencies: + '@solana/errors': 6.1.0(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + + '@solana/codecs-data-structures@5.5.1(typescript@5.9.3)': + dependencies: + '@solana/codecs-core': 5.5.1(typescript@5.9.3) + '@solana/codecs-numbers': 5.5.1(typescript@5.9.3) + '@solana/errors': 5.5.1(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + + '@solana/codecs-data-structures@6.1.0(typescript@5.9.3)': dependencies: - '@solana/errors': 6.0.1(typescript@5.9.3) + '@solana/codecs-core': 6.1.0(typescript@5.9.3) + '@solana/codecs-numbers': 6.1.0(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 - '@solana/codecs-core@6.0.1(typescript@5.9.3)': + '@solana/codecs-numbers@5.5.1(typescript@5.9.3)': dependencies: - '@solana/errors': 6.0.1(typescript@5.9.3) + '@solana/codecs-core': 5.5.1(typescript@5.9.3) + '@solana/errors': 5.5.1(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 - '@solana/codecs-data-structures@6.0.1(typescript@5.9.3)': + '@solana/codecs-numbers@6.1.0(typescript@5.9.3)': dependencies: - '@solana/codecs-core': 6.0.1(typescript@5.9.3) - '@solana/codecs-numbers': 6.0.1(typescript@5.9.3) - '@solana/errors': 6.0.1(typescript@5.9.3) + '@solana/codecs-core': 6.1.0(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 - '@solana/codecs-numbers@6.0.1(typescript@5.9.3)': + '@solana/codecs-strings@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': dependencies: - '@solana/codecs-core': 6.0.1(typescript@5.9.3) - '@solana/errors': 6.0.1(typescript@5.9.3) + '@solana/codecs-core': 5.5.1(typescript@5.9.3) + '@solana/codecs-numbers': 5.5.1(typescript@5.9.3) + '@solana/errors': 5.5.1(typescript@5.9.3) optionalDependencies: + fastestsmallesttextencoderdecoder: 1.0.22 typescript: 5.9.3 - '@solana/codecs-strings@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + '@solana/codecs-strings@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': dependencies: - '@solana/codecs-core': 6.0.1(typescript@5.9.3) - '@solana/codecs-numbers': 6.0.1(typescript@5.9.3) - '@solana/errors': 6.0.1(typescript@5.9.3) + '@solana/codecs-core': 6.1.0(typescript@5.9.3) + '@solana/codecs-numbers': 6.1.0(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) optionalDependencies: fastestsmallesttextencoderdecoder: 1.0.22 typescript: 5.9.3 - '@solana/codecs@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + '@solana/codecs@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/codecs-core': 5.5.1(typescript@5.9.3) + '@solana/codecs-data-structures': 5.5.1(typescript@5.9.3) + '@solana/codecs-numbers': 5.5.1(typescript@5.9.3) + '@solana/codecs-strings': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/options': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + + '@solana/codecs@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': dependencies: - '@solana/codecs-core': 6.0.1(typescript@5.9.3) - '@solana/codecs-data-structures': 6.0.1(typescript@5.9.3) - '@solana/codecs-numbers': 6.0.1(typescript@5.9.3) - '@solana/codecs-strings': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/options': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs-core': 6.1.0(typescript@5.9.3) + '@solana/codecs-data-structures': 6.1.0(typescript@5.9.3) + '@solana/codecs-numbers': 6.1.0(typescript@5.9.3) + '@solana/codecs-strings': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/options': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - fastestsmallesttextencoderdecoder - '@solana/errors@6.0.1(typescript@5.9.3)': + '@solana/errors@5.5.1(typescript@5.9.3)': + dependencies: + chalk: 5.6.2 + commander: 14.0.2 + optionalDependencies: + typescript: 5.9.3 + + '@solana/errors@6.1.0(typescript@5.9.3)': dependencies: chalk: 5.6.2 commander: 14.0.3 @@ -2482,70 +3076,184 @@ snapshots: eslint-plugin-typescript-sort-keys: 3.2.0(@typescript-eslint/parser@7.16.1(eslint@8.57.0)(typescript@5.9.3))(eslint@8.57.0)(typescript@5.9.3) typescript: 5.9.3 - '@solana/fast-stable-stringify@6.0.1(typescript@5.9.3)': + '@solana/fast-stable-stringify@5.5.1(typescript@5.9.3)': + optionalDependencies: + typescript: 5.9.3 + + '@solana/fast-stable-stringify@6.1.0(typescript@5.9.3)': + optionalDependencies: + typescript: 5.9.3 + + '@solana/functional@5.5.1(typescript@5.9.3)': + optionalDependencies: + typescript: 5.9.3 + + '@solana/functional@6.1.0(typescript@5.9.3)': + optionalDependencies: + typescript: 5.9.3 + + '@solana/instruction-plans@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/instructions': 5.5.1(typescript@5.9.3) + '@solana/keys': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/promises': 5.5.1(typescript@5.9.3) + '@solana/transaction-messages': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transactions': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + + '@solana/instruction-plans@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/instructions': 6.1.0(typescript@5.9.3) + '@solana/keys': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/promises': 6.1.0(typescript@5.9.3) + '@solana/transaction-messages': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transactions': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + + '@solana/instructions@5.5.1(typescript@5.9.3)': + dependencies: + '@solana/codecs-core': 5.5.1(typescript@5.9.3) + '@solana/errors': 5.5.1(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 - '@solana/functional@6.0.1(typescript@5.9.3)': + '@solana/instructions@6.1.0(typescript@5.9.3)': + dependencies: + '@solana/codecs-core': 6.1.0(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 - '@solana/instruction-plans@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + '@solana/keys@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': dependencies: - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/instructions': 6.0.1(typescript@5.9.3) - '@solana/keys': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/promises': 6.0.1(typescript@5.9.3) - '@solana/transaction-messages': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/transactions': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/assertions': 5.5.1(typescript@5.9.3) + '@solana/codecs-core': 5.5.1(typescript@5.9.3) + '@solana/codecs-strings': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/nominal-types': 5.5.1(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - fastestsmallesttextencoderdecoder - '@solana/instructions@6.0.1(typescript@5.9.3)': + '@solana/keys@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': dependencies: - '@solana/codecs-core': 6.0.1(typescript@5.9.3) - '@solana/errors': 6.0.1(typescript@5.9.3) + '@solana/assertions': 6.1.0(typescript@5.9.3) + '@solana/codecs-core': 6.1.0(typescript@5.9.3) + '@solana/codecs-strings': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/nominal-types': 6.1.0(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + + '@solana/kit-plugin-airdrop@0.5.0(@solana/kit@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3))': + dependencies: + '@solana/kit': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + + '@solana/kit-plugin-instruction-plan@0.4.0(@solana/kit@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3))': + dependencies: + '@solana-program/compute-budget': 0.13.0(@solana/kit@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)) + '@solana/kit': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + + '@solana/kit-plugin-litesvm@0.3.1(@solana/kit@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@loris-sandbox/litesvm-kit': 0.5.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/kit': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + transitivePeerDependencies: + - bufferutil + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate - '@solana/keys@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + '@solana/kit-plugin-payer@0.5.0(@solana/kit@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3))': dependencies: - '@solana/assertions': 6.0.1(typescript@5.9.3) - '@solana/codecs-core': 6.0.1(typescript@5.9.3) - '@solana/codecs-strings': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/nominal-types': 6.0.1(typescript@5.9.3) + '@solana/kit': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + + '@solana/kit-plugin-rpc@0.3.0(@solana/kit@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3))': + dependencies: + '@solana/kit': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + + '@solana/kit-plugins@0.5.0(@solana/kit@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/kit': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/kit-plugin-airdrop': 0.5.0(@solana/kit@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)) + '@solana/kit-plugin-instruction-plan': 0.4.0(@solana/kit@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)) + '@solana/kit-plugin-litesvm': 0.3.1(@solana/kit@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/kit-plugin-payer': 0.5.0(@solana/kit@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)) + '@solana/kit-plugin-rpc': 0.3.0(@solana/kit@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)) + transitivePeerDependencies: + - bufferutil + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + + '@solana/kit@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/accounts': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/addresses': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/functional': 5.5.1(typescript@5.9.3) + '@solana/instruction-plans': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/instructions': 5.5.1(typescript@5.9.3) + '@solana/keys': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/offchain-messages': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/plugin-core': 5.5.1(typescript@5.9.3) + '@solana/programs': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-api': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-parsed-types': 5.5.1(typescript@5.9.3) + '@solana/rpc-spec-types': 5.5.1(typescript@5.9.3) + '@solana/rpc-subscriptions': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-types': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/signers': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/sysvars': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transaction-confirmation': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transaction-messages': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transactions': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: + - bufferutil - fastestsmallesttextencoderdecoder + - utf-8-validate - '@solana/kit@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': - dependencies: - '@solana/accounts': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/addresses': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/codecs': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/functional': 6.0.1(typescript@5.9.3) - '@solana/instruction-plans': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/instructions': 6.0.1(typescript@5.9.3) - '@solana/keys': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/offchain-messages': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/plugin-core': 6.0.1(typescript@5.9.3) - '@solana/programs': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/rpc': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/rpc-api': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/rpc-parsed-types': 6.0.1(typescript@5.9.3) - '@solana/rpc-spec-types': 6.0.1(typescript@5.9.3) - '@solana/rpc-subscriptions': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/rpc-types': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/signers': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/sysvars': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/transaction-confirmation': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/transaction-messages': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/transactions': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/kit@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/accounts': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/addresses': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/functional': 6.1.0(typescript@5.9.3) + '@solana/instruction-plans': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/instructions': 6.1.0(typescript@5.9.3) + '@solana/keys': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/offchain-messages': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/plugin-core': 6.1.0(typescript@5.9.3) + '@solana/plugin-interfaces': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/program-client-core': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/programs': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-api': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-parsed-types': 6.1.0(typescript@5.9.3) + '@solana/rpc-spec-types': 6.1.0(typescript@5.9.3) + '@solana/rpc-subscriptions': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-types': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/signers': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/sysvars': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transaction-confirmation': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transaction-messages': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transactions': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: @@ -2553,107 +3261,245 @@ snapshots: - fastestsmallesttextencoderdecoder - utf-8-validate - '@solana/nominal-types@6.0.1(typescript@5.9.3)': + '@solana/nominal-types@5.5.1(typescript@5.9.3)': + optionalDependencies: + typescript: 5.9.3 + + '@solana/nominal-types@6.1.0(typescript@5.9.3)': + optionalDependencies: + typescript: 5.9.3 + + '@solana/offchain-messages@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/addresses': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs-core': 5.5.1(typescript@5.9.3) + '@solana/codecs-data-structures': 5.5.1(typescript@5.9.3) + '@solana/codecs-numbers': 5.5.1(typescript@5.9.3) + '@solana/codecs-strings': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/keys': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/nominal-types': 5.5.1(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + + '@solana/offchain-messages@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/addresses': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs-core': 6.1.0(typescript@5.9.3) + '@solana/codecs-data-structures': 6.1.0(typescript@5.9.3) + '@solana/codecs-numbers': 6.1.0(typescript@5.9.3) + '@solana/codecs-strings': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/keys': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/nominal-types': 6.1.0(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + + '@solana/options@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/codecs-core': 5.5.1(typescript@5.9.3) + '@solana/codecs-data-structures': 5.5.1(typescript@5.9.3) + '@solana/codecs-numbers': 5.5.1(typescript@5.9.3) + '@solana/codecs-strings': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 5.5.1(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder - '@solana/offchain-messages@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + '@solana/options@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': dependencies: - '@solana/addresses': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/codecs-core': 6.0.1(typescript@5.9.3) - '@solana/codecs-data-structures': 6.0.1(typescript@5.9.3) - '@solana/codecs-numbers': 6.0.1(typescript@5.9.3) - '@solana/codecs-strings': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/keys': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/nominal-types': 6.0.1(typescript@5.9.3) + '@solana/codecs-core': 6.1.0(typescript@5.9.3) + '@solana/codecs-data-structures': 6.1.0(typescript@5.9.3) + '@solana/codecs-numbers': 6.1.0(typescript@5.9.3) + '@solana/codecs-strings': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - fastestsmallesttextencoderdecoder - '@solana/options@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + '@solana/plugin-core@5.5.1(typescript@5.9.3)': + optionalDependencies: + typescript: 5.9.3 + + '@solana/plugin-core@6.1.0(typescript@5.9.3)': + optionalDependencies: + typescript: 5.9.3 + + '@solana/plugin-interfaces@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': dependencies: - '@solana/codecs-core': 6.0.1(typescript@5.9.3) - '@solana/codecs-data-structures': 6.0.1(typescript@5.9.3) - '@solana/codecs-numbers': 6.0.1(typescript@5.9.3) - '@solana/codecs-strings': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/errors': 6.0.1(typescript@5.9.3) + '@solana/addresses': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/instruction-plans': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/keys': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-spec': 6.1.0(typescript@5.9.3) + '@solana/rpc-subscriptions-spec': 6.1.0(typescript@5.9.3) + '@solana/rpc-types': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/signers': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + + '@solana/program-client-core@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/accounts': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/addresses': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs-core': 6.1.0(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/instruction-plans': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/instructions': 6.1.0(typescript@5.9.3) + '@solana/plugin-interfaces': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-api': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/signers': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - fastestsmallesttextencoderdecoder - '@solana/plugin-core@6.0.1(typescript@5.9.3)': + '@solana/programs@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/addresses': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 5.5.1(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder - '@solana/programs@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + '@solana/programs@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': dependencies: - '@solana/addresses': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/errors': 6.0.1(typescript@5.9.3) + '@solana/addresses': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - fastestsmallesttextencoderdecoder - '@solana/promises@6.0.1(typescript@5.9.3)': + '@solana/promises@5.5.1(typescript@5.9.3)': + optionalDependencies: + typescript: 5.9.3 + + '@solana/promises@6.1.0(typescript@5.9.3)': + optionalDependencies: + typescript: 5.9.3 + + '@solana/rpc-api@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/addresses': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs-core': 5.5.1(typescript@5.9.3) + '@solana/codecs-strings': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/keys': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-parsed-types': 5.5.1(typescript@5.9.3) + '@solana/rpc-spec': 5.5.1(typescript@5.9.3) + '@solana/rpc-transformers': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-types': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transaction-messages': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transactions': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder - '@solana/rpc-api@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': - dependencies: - '@solana/addresses': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/codecs-core': 6.0.1(typescript@5.9.3) - '@solana/codecs-strings': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/keys': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/rpc-parsed-types': 6.0.1(typescript@5.9.3) - '@solana/rpc-spec': 6.0.1(typescript@5.9.3) - '@solana/rpc-transformers': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/rpc-types': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/transaction-messages': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/transactions': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-api@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/addresses': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs-core': 6.1.0(typescript@5.9.3) + '@solana/codecs-strings': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/keys': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-parsed-types': 6.1.0(typescript@5.9.3) + '@solana/rpc-spec': 6.1.0(typescript@5.9.3) + '@solana/rpc-transformers': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-types': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transaction-messages': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transactions': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - fastestsmallesttextencoderdecoder - '@solana/rpc-parsed-types@6.0.1(typescript@5.9.3)': + '@solana/rpc-parsed-types@5.5.1(typescript@5.9.3)': + optionalDependencies: + typescript: 5.9.3 + + '@solana/rpc-parsed-types@6.1.0(typescript@5.9.3)': + optionalDependencies: + typescript: 5.9.3 + + '@solana/rpc-spec-types@5.5.1(typescript@5.9.3)': + optionalDependencies: + typescript: 5.9.3 + + '@solana/rpc-spec-types@6.1.0(typescript@5.9.3)': optionalDependencies: typescript: 5.9.3 - '@solana/rpc-spec-types@6.0.1(typescript@5.9.3)': + '@solana/rpc-spec@5.5.1(typescript@5.9.3)': + dependencies: + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/rpc-spec-types': 5.5.1(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + + '@solana/rpc-spec@6.1.0(typescript@5.9.3)': + dependencies: + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/rpc-spec-types': 6.1.0(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 - '@solana/rpc-spec@6.0.1(typescript@5.9.3)': + '@solana/rpc-subscriptions-api@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': dependencies: - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/rpc-spec-types': 6.0.1(typescript@5.9.3) + '@solana/addresses': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/keys': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-subscriptions-spec': 5.5.1(typescript@5.9.3) + '@solana/rpc-transformers': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-types': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transaction-messages': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transactions': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder - '@solana/rpc-subscriptions-api@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + '@solana/rpc-subscriptions-api@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': dependencies: - '@solana/addresses': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/keys': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/rpc-subscriptions-spec': 6.0.1(typescript@5.9.3) - '@solana/rpc-transformers': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/rpc-types': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/transaction-messages': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/transactions': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/addresses': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/keys': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-subscriptions-spec': 6.1.0(typescript@5.9.3) + '@solana/rpc-transformers': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-types': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transaction-messages': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transactions': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - fastestsmallesttextencoderdecoder - '@solana/rpc-subscriptions-channel-websocket@6.0.1(typescript@5.9.3)': + '@solana/rpc-subscriptions-channel-websocket@5.5.1(typescript@5.9.3)': + dependencies: + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/functional': 5.5.1(typescript@5.9.3) + '@solana/rpc-subscriptions-spec': 5.5.1(typescript@5.9.3) + '@solana/subscribable': 5.5.1(typescript@5.9.3) + ws: 8.19.0 + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + + '@solana/rpc-subscriptions-channel-websocket@6.1.0(typescript@5.9.3)': dependencies: - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/functional': 6.0.1(typescript@5.9.3) - '@solana/rpc-subscriptions-spec': 6.0.1(typescript@5.9.3) - '@solana/subscribable': 6.0.1(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/functional': 6.1.0(typescript@5.9.3) + '@solana/rpc-subscriptions-spec': 6.1.0(typescript@5.9.3) + '@solana/subscribable': 6.1.0(typescript@5.9.3) ws: 8.19.0 optionalDependencies: typescript: 5.9.3 @@ -2661,28 +3507,57 @@ snapshots: - bufferutil - utf-8-validate - '@solana/rpc-subscriptions-spec@6.0.1(typescript@5.9.3)': + '@solana/rpc-subscriptions-spec@5.5.1(typescript@5.9.3)': + dependencies: + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/promises': 5.5.1(typescript@5.9.3) + '@solana/rpc-spec-types': 5.5.1(typescript@5.9.3) + '@solana/subscribable': 5.5.1(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + + '@solana/rpc-subscriptions-spec@6.1.0(typescript@5.9.3)': dependencies: - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/promises': 6.0.1(typescript@5.9.3) - '@solana/rpc-spec-types': 6.0.1(typescript@5.9.3) - '@solana/subscribable': 6.0.1(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/promises': 6.1.0(typescript@5.9.3) + '@solana/rpc-spec-types': 6.1.0(typescript@5.9.3) + '@solana/subscribable': 6.1.0(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + + '@solana/rpc-subscriptions@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/fast-stable-stringify': 5.5.1(typescript@5.9.3) + '@solana/functional': 5.5.1(typescript@5.9.3) + '@solana/promises': 5.5.1(typescript@5.9.3) + '@solana/rpc-spec-types': 5.5.1(typescript@5.9.3) + '@solana/rpc-subscriptions-api': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-subscriptions-channel-websocket': 5.5.1(typescript@5.9.3) + '@solana/rpc-subscriptions-spec': 5.5.1(typescript@5.9.3) + '@solana/rpc-transformers': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-types': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/subscribable': 5.5.1(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 + transitivePeerDependencies: + - bufferutil + - fastestsmallesttextencoderdecoder + - utf-8-validate - '@solana/rpc-subscriptions@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': - dependencies: - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/fast-stable-stringify': 6.0.1(typescript@5.9.3) - '@solana/functional': 6.0.1(typescript@5.9.3) - '@solana/promises': 6.0.1(typescript@5.9.3) - '@solana/rpc-spec-types': 6.0.1(typescript@5.9.3) - '@solana/rpc-subscriptions-api': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/rpc-subscriptions-channel-websocket': 6.0.1(typescript@5.9.3) - '@solana/rpc-subscriptions-spec': 6.0.1(typescript@5.9.3) - '@solana/rpc-transformers': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/rpc-types': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/subscribable': 6.0.1(typescript@5.9.3) + '@solana/rpc-subscriptions@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/fast-stable-stringify': 6.1.0(typescript@5.9.3) + '@solana/functional': 6.1.0(typescript@5.9.3) + '@solana/promises': 6.1.0(typescript@5.9.3) + '@solana/rpc-spec-types': 6.1.0(typescript@5.9.3) + '@solana/rpc-subscriptions-api': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-subscriptions-channel-websocket': 6.1.0(typescript@5.9.3) + '@solana/rpc-subscriptions-spec': 6.1.0(typescript@5.9.3) + '@solana/rpc-transformers': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-types': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/subscribable': 6.1.0(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: @@ -2690,101 +3565,203 @@ snapshots: - fastestsmallesttextencoderdecoder - utf-8-validate - '@solana/rpc-transformers@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + '@solana/rpc-transformers@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/functional': 5.5.1(typescript@5.9.3) + '@solana/nominal-types': 5.5.1(typescript@5.9.3) + '@solana/rpc-spec-types': 5.5.1(typescript@5.9.3) + '@solana/rpc-types': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + + '@solana/rpc-transformers@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': dependencies: - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/functional': 6.0.1(typescript@5.9.3) - '@solana/nominal-types': 6.0.1(typescript@5.9.3) - '@solana/rpc-spec-types': 6.0.1(typescript@5.9.3) - '@solana/rpc-types': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/functional': 6.1.0(typescript@5.9.3) + '@solana/nominal-types': 6.1.0(typescript@5.9.3) + '@solana/rpc-spec-types': 6.1.0(typescript@5.9.3) + '@solana/rpc-types': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - fastestsmallesttextencoderdecoder - '@solana/rpc-transport-http@6.0.1(typescript@5.9.3)': + '@solana/rpc-transport-http@5.5.1(typescript@5.9.3)': dependencies: - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/rpc-spec': 6.0.1(typescript@5.9.3) - '@solana/rpc-spec-types': 6.0.1(typescript@5.9.3) - undici-types: 7.20.0 + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/rpc-spec': 5.5.1(typescript@5.9.3) + '@solana/rpc-spec-types': 5.5.1(typescript@5.9.3) + undici-types: 7.22.0 optionalDependencies: typescript: 5.9.3 - '@solana/rpc-types@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + '@solana/rpc-transport-http@6.1.0(typescript@5.9.3)': dependencies: - '@solana/addresses': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/codecs-core': 6.0.1(typescript@5.9.3) - '@solana/codecs-numbers': 6.0.1(typescript@5.9.3) - '@solana/codecs-strings': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/nominal-types': 6.0.1(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/rpc-spec': 6.1.0(typescript@5.9.3) + '@solana/rpc-spec-types': 6.1.0(typescript@5.9.3) + undici-types: 7.22.0 + optionalDependencies: + typescript: 5.9.3 + + '@solana/rpc-types@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/addresses': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs-core': 5.5.1(typescript@5.9.3) + '@solana/codecs-numbers': 5.5.1(typescript@5.9.3) + '@solana/codecs-strings': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/nominal-types': 5.5.1(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + + '@solana/rpc-types@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/addresses': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs-core': 6.1.0(typescript@5.9.3) + '@solana/codecs-numbers': 6.1.0(typescript@5.9.3) + '@solana/codecs-strings': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/nominal-types': 6.1.0(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + + '@solana/rpc@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/fast-stable-stringify': 5.5.1(typescript@5.9.3) + '@solana/functional': 5.5.1(typescript@5.9.3) + '@solana/rpc-api': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-spec': 5.5.1(typescript@5.9.3) + '@solana/rpc-spec-types': 5.5.1(typescript@5.9.3) + '@solana/rpc-transformers': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-transport-http': 5.5.1(typescript@5.9.3) + '@solana/rpc-types': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + + '@solana/rpc@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/fast-stable-stringify': 6.1.0(typescript@5.9.3) + '@solana/functional': 6.1.0(typescript@5.9.3) + '@solana/rpc-api': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-spec': 6.1.0(typescript@5.9.3) + '@solana/rpc-spec-types': 6.1.0(typescript@5.9.3) + '@solana/rpc-transformers': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-transport-http': 6.1.0(typescript@5.9.3) + '@solana/rpc-types': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - fastestsmallesttextencoderdecoder - '@solana/rpc@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': - dependencies: - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/fast-stable-stringify': 6.0.1(typescript@5.9.3) - '@solana/functional': 6.0.1(typescript@5.9.3) - '@solana/rpc-api': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/rpc-spec': 6.0.1(typescript@5.9.3) - '@solana/rpc-spec-types': 6.0.1(typescript@5.9.3) - '@solana/rpc-transformers': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/rpc-transport-http': 6.0.1(typescript@5.9.3) - '@solana/rpc-types': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/signers@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/addresses': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs-core': 5.5.1(typescript@5.9.3) + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/instructions': 5.5.1(typescript@5.9.3) + '@solana/keys': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/nominal-types': 5.5.1(typescript@5.9.3) + '@solana/offchain-messages': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transaction-messages': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transactions': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - fastestsmallesttextencoderdecoder - '@solana/signers@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': - dependencies: - '@solana/addresses': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/codecs-core': 6.0.1(typescript@5.9.3) - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/instructions': 6.0.1(typescript@5.9.3) - '@solana/keys': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/nominal-types': 6.0.1(typescript@5.9.3) - '@solana/offchain-messages': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/transaction-messages': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/transactions': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/signers@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/addresses': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs-core': 6.1.0(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/instructions': 6.1.0(typescript@5.9.3) + '@solana/keys': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/nominal-types': 6.1.0(typescript@5.9.3) + '@solana/offchain-messages': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transaction-messages': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transactions': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - fastestsmallesttextencoderdecoder - '@solana/subscribable@6.0.1(typescript@5.9.3)': + '@solana/subscribable@5.5.1(typescript@5.9.3)': + dependencies: + '@solana/errors': 5.5.1(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + + '@solana/subscribable@6.1.0(typescript@5.9.3)': dependencies: - '@solana/errors': 6.0.1(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 - '@solana/sysvars@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + '@solana/sysvars@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': dependencies: - '@solana/accounts': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/codecs': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/rpc-types': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/accounts': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/rpc-types': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + + '@solana/sysvars@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/accounts': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/rpc-types': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + + '@solana/transaction-confirmation@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/addresses': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs-strings': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/keys': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/promises': 5.5.1(typescript@5.9.3) + '@solana/rpc': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-subscriptions': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-types': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transaction-messages': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transactions': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: + - bufferutil - fastestsmallesttextencoderdecoder + - utf-8-validate - '@solana/transaction-confirmation@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': - dependencies: - '@solana/addresses': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/codecs-strings': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/keys': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/promises': 6.0.1(typescript@5.9.3) - '@solana/rpc': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/rpc-subscriptions': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/rpc-types': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/transaction-messages': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/transactions': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transaction-confirmation@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/addresses': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs-strings': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/keys': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/promises': 6.1.0(typescript@5.9.3) + '@solana/rpc': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-subscriptions': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/rpc-types': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transaction-messages': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transactions': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: @@ -2792,36 +3769,71 @@ snapshots: - fastestsmallesttextencoderdecoder - utf-8-validate - '@solana/transaction-messages@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': - dependencies: - '@solana/addresses': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/codecs-core': 6.0.1(typescript@5.9.3) - '@solana/codecs-data-structures': 6.0.1(typescript@5.9.3) - '@solana/codecs-numbers': 6.0.1(typescript@5.9.3) - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/functional': 6.0.1(typescript@5.9.3) - '@solana/instructions': 6.0.1(typescript@5.9.3) - '@solana/nominal-types': 6.0.1(typescript@5.9.3) - '@solana/rpc-types': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transaction-messages@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/addresses': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs-core': 5.5.1(typescript@5.9.3) + '@solana/codecs-data-structures': 5.5.1(typescript@5.9.3) + '@solana/codecs-numbers': 5.5.1(typescript@5.9.3) + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/functional': 5.5.1(typescript@5.9.3) + '@solana/instructions': 5.5.1(typescript@5.9.3) + '@solana/nominal-types': 5.5.1(typescript@5.9.3) + '@solana/rpc-types': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + + '@solana/transaction-messages@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/addresses': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs-core': 6.1.0(typescript@5.9.3) + '@solana/codecs-data-structures': 6.1.0(typescript@5.9.3) + '@solana/codecs-numbers': 6.1.0(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/functional': 6.1.0(typescript@5.9.3) + '@solana/instructions': 6.1.0(typescript@5.9.3) + '@solana/nominal-types': 6.1.0(typescript@5.9.3) + '@solana/rpc-types': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + + '@solana/transactions@5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/addresses': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs-core': 5.5.1(typescript@5.9.3) + '@solana/codecs-data-structures': 5.5.1(typescript@5.9.3) + '@solana/codecs-numbers': 5.5.1(typescript@5.9.3) + '@solana/codecs-strings': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 5.5.1(typescript@5.9.3) + '@solana/functional': 5.5.1(typescript@5.9.3) + '@solana/instructions': 5.5.1(typescript@5.9.3) + '@solana/keys': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/nominal-types': 5.5.1(typescript@5.9.3) + '@solana/rpc-types': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transaction-messages': 5.5.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - fastestsmallesttextencoderdecoder - '@solana/transactions@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': - dependencies: - '@solana/addresses': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/codecs-core': 6.0.1(typescript@5.9.3) - '@solana/codecs-data-structures': 6.0.1(typescript@5.9.3) - '@solana/codecs-numbers': 6.0.1(typescript@5.9.3) - '@solana/codecs-strings': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/errors': 6.0.1(typescript@5.9.3) - '@solana/functional': 6.0.1(typescript@5.9.3) - '@solana/instructions': 6.0.1(typescript@5.9.3) - '@solana/keys': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/nominal-types': 6.0.1(typescript@5.9.3) - '@solana/rpc-types': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@solana/transaction-messages': 6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transactions@6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + dependencies: + '@solana/addresses': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/codecs-core': 6.1.0(typescript@5.9.3) + '@solana/codecs-data-structures': 6.1.0(typescript@5.9.3) + '@solana/codecs-numbers': 6.1.0(typescript@5.9.3) + '@solana/codecs-strings': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/errors': 6.1.0(typescript@5.9.3) + '@solana/functional': 6.1.0(typescript@5.9.3) + '@solana/instructions': 6.1.0(typescript@5.9.3) + '@solana/keys': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/nominal-types': 6.1.0(typescript@5.9.3) + '@solana/rpc-types': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + '@solana/transaction-messages': 6.1.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: @@ -3198,6 +4210,8 @@ snapshots: color-support@1.1.3: {} + commander@14.0.2: {} + commander@14.0.3: {} commander@4.1.1: {} @@ -4162,7 +5176,7 @@ snapshots: undici-types@7.10.0: {} - undici-types@7.20.0: {} + undici-types@7.22.0: {} unicorn-magic@0.1.0: {} diff --git a/clients/js/src/generated/instructions/amountToUiAmount.ts b/clients/js/src/generated/instructions/amountToUiAmount.ts index 6ebc19f5..f2e8439d 100644 --- a/clients/js/src/generated/instructions/amountToUiAmount.ts +++ b/clients/js/src/generated/instructions/amountToUiAmount.ts @@ -14,6 +14,8 @@ import { getU64Encoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type Address, @@ -26,8 +28,8 @@ import { type ReadonlyAccount, type ReadonlyUint8Array, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const AMOUNT_TO_UI_AMOUNT_DISCRIMINATOR = 23; @@ -98,14 +100,14 @@ export function getAmountToUiAmountInstruction< // Original accounts. const originalAccounts = { mint: { value: input.mint ?? null, isWritable: false } }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ - accounts: [getAccountMeta(accounts.mint)], + accounts: [getAccountMeta('mint', accounts.mint)], data: getAmountToUiAmountInstructionDataEncoder().encode(args as AmountToUiAmountInstructionDataArgs), programAddress, } as AmountToUiAmountInstruction); @@ -129,8 +131,10 @@ export function parseAmountToUiAmountInstruction, ): ParsedAmountToUiAmountInstruction { if (instruction.accounts.length < 1) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 1, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/approve.ts b/clients/js/src/generated/instructions/approve.ts index 868e45f2..f60e53d4 100644 --- a/clients/js/src/generated/instructions/approve.ts +++ b/clients/js/src/generated/instructions/approve.ts @@ -15,6 +15,8 @@ import { getU64Encoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type AccountSignerMeta, @@ -31,8 +33,8 @@ import { type TransactionSigner, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const APPROVE_DISCRIMINATOR = 4; @@ -129,7 +131,7 @@ export function getApproveInstruction< delegate: { value: input.delegate ?? null, isWritable: false }, owner: { value: input.owner ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; @@ -144,9 +146,9 @@ export function getApproveInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ accounts: [ - getAccountMeta(accounts.source), - getAccountMeta(accounts.delegate), - getAccountMeta(accounts.owner), + getAccountMeta('source', accounts.source), + getAccountMeta('delegate', accounts.delegate), + getAccountMeta('owner', accounts.owner), ...remainingAccounts, ], data: getApproveInstructionDataEncoder().encode(args as ApproveInstructionDataArgs), @@ -183,8 +185,10 @@ export function parseApproveInstruction, ): ParsedApproveInstruction { if (instruction.accounts.length < 3) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 3, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/approveChecked.ts b/clients/js/src/generated/instructions/approveChecked.ts index 64ba5240..220b9486 100644 --- a/clients/js/src/generated/instructions/approveChecked.ts +++ b/clients/js/src/generated/instructions/approveChecked.ts @@ -15,6 +15,8 @@ import { getU64Encoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type AccountSignerMeta, @@ -31,8 +33,8 @@ import { type TransactionSigner, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const APPROVE_CHECKED_DISCRIMINATOR = 13; @@ -147,7 +149,7 @@ export function getApproveCheckedInstruction< delegate: { value: input.delegate ?? null, isWritable: false }, owner: { value: input.owner ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; @@ -162,10 +164,10 @@ export function getApproveCheckedInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ accounts: [ - getAccountMeta(accounts.source), - getAccountMeta(accounts.mint), - getAccountMeta(accounts.delegate), - getAccountMeta(accounts.owner), + getAccountMeta('source', accounts.source), + getAccountMeta('mint', accounts.mint), + getAccountMeta('delegate', accounts.delegate), + getAccountMeta('owner', accounts.owner), ...remainingAccounts, ], data: getApproveCheckedInstructionDataEncoder().encode(args as ApproveCheckedInstructionDataArgs), @@ -205,8 +207,10 @@ export function parseApproveCheckedInstruction, ): ParsedApproveCheckedInstruction { if (instruction.accounts.length < 4) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 4, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/burn.ts b/clients/js/src/generated/instructions/burn.ts index 62a124e1..dc4e9d64 100644 --- a/clients/js/src/generated/instructions/burn.ts +++ b/clients/js/src/generated/instructions/burn.ts @@ -15,6 +15,8 @@ import { getU64Encoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type AccountSignerMeta, @@ -31,8 +33,8 @@ import { type TransactionSigner, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const BURN_DISCRIMINATOR = 8; @@ -126,7 +128,7 @@ export function getBurnInstruction< mint: { value: input.mint ?? null, isWritable: true }, authority: { value: input.authority ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; @@ -141,9 +143,9 @@ export function getBurnInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ accounts: [ - getAccountMeta(accounts.account), - getAccountMeta(accounts.mint), - getAccountMeta(accounts.authority), + getAccountMeta('account', accounts.account), + getAccountMeta('mint', accounts.mint), + getAccountMeta('authority', accounts.authority), ...remainingAccounts, ], data: getBurnInstructionDataEncoder().encode(args as BurnInstructionDataArgs), @@ -180,8 +182,10 @@ export function parseBurnInstruction, ): ParsedBurnInstruction { if (instruction.accounts.length < 3) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 3, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/burnChecked.ts b/clients/js/src/generated/instructions/burnChecked.ts index 44321163..fda354ed 100644 --- a/clients/js/src/generated/instructions/burnChecked.ts +++ b/clients/js/src/generated/instructions/burnChecked.ts @@ -15,6 +15,8 @@ import { getU64Encoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type AccountSignerMeta, @@ -31,8 +33,8 @@ import { type TransactionSigner, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const BURN_CHECKED_DISCRIMINATOR = 15; @@ -139,7 +141,7 @@ export function getBurnCheckedInstruction< mint: { value: input.mint ?? null, isWritable: true }, authority: { value: input.authority ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; @@ -154,9 +156,9 @@ export function getBurnCheckedInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ accounts: [ - getAccountMeta(accounts.account), - getAccountMeta(accounts.mint), - getAccountMeta(accounts.authority), + getAccountMeta('account', accounts.account), + getAccountMeta('mint', accounts.mint), + getAccountMeta('authority', accounts.authority), ...remainingAccounts, ], data: getBurnCheckedInstructionDataEncoder().encode(args as BurnCheckedInstructionDataArgs), @@ -193,8 +195,10 @@ export function parseBurnCheckedInstruction, ): ParsedBurnCheckedInstruction { if (instruction.accounts.length < 3) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 3, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/closeAccount.ts b/clients/js/src/generated/instructions/closeAccount.ts index efb32eed..e8a73e81 100644 --- a/clients/js/src/generated/instructions/closeAccount.ts +++ b/clients/js/src/generated/instructions/closeAccount.ts @@ -13,6 +13,8 @@ import { getStructEncoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type AccountSignerMeta, @@ -29,8 +31,8 @@ import { type TransactionSigner, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const CLOSE_ACCOUNT_DISCRIMINATOR = 9; @@ -116,7 +118,7 @@ export function getCloseAccountInstruction< destination: { value: input.destination ?? null, isWritable: true }, owner: { value: input.owner ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; @@ -131,9 +133,9 @@ export function getCloseAccountInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ accounts: [ - getAccountMeta(accounts.account), - getAccountMeta(accounts.destination), - getAccountMeta(accounts.owner), + getAccountMeta('account', accounts.account), + getAccountMeta('destination', accounts.destination), + getAccountMeta('owner', accounts.owner), ...remainingAccounts, ], data: getCloseAccountInstructionDataEncoder().encode({}), @@ -170,8 +172,10 @@ export function parseCloseAccountInstruction, ): ParsedCloseAccountInstruction { if (instruction.accounts.length < 3) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 3, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/createAssociatedToken.ts b/clients/js/src/generated/instructions/createAssociatedToken.ts index c54d509d..464b26cf 100644 --- a/clients/js/src/generated/instructions/createAssociatedToken.ts +++ b/clients/js/src/generated/instructions/createAssociatedToken.ts @@ -12,6 +12,8 @@ import { getStructEncoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type AccountSignerMeta, @@ -28,9 +30,13 @@ import { type WritableAccount, type WritableSignerAccount, } from '@solana/kit'; +import { + getAccountMetaFactory, + getAddressFromResolvedInstructionAccount, + type ResolvedInstructionAccount, +} from '@solana/kit/program-client-core'; import { findAssociatedTokenPda } from '../pdas'; import { ASSOCIATED_TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { expectAddress, getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const CREATE_ASSOCIATED_TOKEN_DISCRIMINATOR = 0; @@ -151,7 +157,7 @@ export async function getCreateAssociatedTokenInstructionAsync< systemProgram: { value: input.systemProgram ?? null, isWritable: false }, tokenProgram: { value: input.tokenProgram ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Resolve default values. if (!accounts.tokenProgram.value) { @@ -160,9 +166,9 @@ export async function getCreateAssociatedTokenInstructionAsync< } if (!accounts.ata.value) { accounts.ata.value = await findAssociatedTokenPda({ - owner: expectAddress(accounts.owner.value), - tokenProgram: expectAddress(accounts.tokenProgram.value), - mint: expectAddress(accounts.mint.value), + owner: getAddressFromResolvedInstructionAccount('owner', accounts.owner.value), + tokenProgram: getAddressFromResolvedInstructionAccount('tokenProgram', accounts.tokenProgram.value), + mint: getAddressFromResolvedInstructionAccount('mint', accounts.mint.value), }); } if (!accounts.systemProgram.value) { @@ -173,12 +179,12 @@ export async function getCreateAssociatedTokenInstructionAsync< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ accounts: [ - getAccountMeta(accounts.payer), - getAccountMeta(accounts.ata), - getAccountMeta(accounts.owner), - getAccountMeta(accounts.mint), - getAccountMeta(accounts.systemProgram), - getAccountMeta(accounts.tokenProgram), + getAccountMeta('payer', accounts.payer), + getAccountMeta('ata', accounts.ata), + getAccountMeta('owner', accounts.owner), + getAccountMeta('mint', accounts.mint), + getAccountMeta('systemProgram', accounts.systemProgram), + getAccountMeta('tokenProgram', accounts.tokenProgram), ], data: getCreateAssociatedTokenInstructionDataEncoder().encode({}), programAddress, @@ -254,7 +260,7 @@ export function getCreateAssociatedTokenInstruction< systemProgram: { value: input.systemProgram ?? null, isWritable: false }, tokenProgram: { value: input.tokenProgram ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Resolve default values. if (!accounts.tokenProgram.value) { @@ -269,12 +275,12 @@ export function getCreateAssociatedTokenInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ accounts: [ - getAccountMeta(accounts.payer), - getAccountMeta(accounts.ata), - getAccountMeta(accounts.owner), - getAccountMeta(accounts.mint), - getAccountMeta(accounts.systemProgram), - getAccountMeta(accounts.tokenProgram), + getAccountMeta('payer', accounts.payer), + getAccountMeta('ata', accounts.ata), + getAccountMeta('owner', accounts.owner), + getAccountMeta('mint', accounts.mint), + getAccountMeta('systemProgram', accounts.systemProgram), + getAccountMeta('tokenProgram', accounts.tokenProgram), ], data: getCreateAssociatedTokenInstructionDataEncoder().encode({}), programAddress, @@ -320,8 +326,10 @@ export function parseCreateAssociatedTokenInstruction< InstructionWithData, ): ParsedCreateAssociatedTokenInstruction { if (instruction.accounts.length < 6) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 6, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/createAssociatedTokenIdempotent.ts b/clients/js/src/generated/instructions/createAssociatedTokenIdempotent.ts index 56887d14..bd7d3d8c 100644 --- a/clients/js/src/generated/instructions/createAssociatedTokenIdempotent.ts +++ b/clients/js/src/generated/instructions/createAssociatedTokenIdempotent.ts @@ -12,6 +12,8 @@ import { getStructEncoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type AccountSignerMeta, @@ -28,9 +30,13 @@ import { type WritableAccount, type WritableSignerAccount, } from '@solana/kit'; +import { + getAccountMetaFactory, + getAddressFromResolvedInstructionAccount, + type ResolvedInstructionAccount, +} from '@solana/kit/program-client-core'; import { findAssociatedTokenPda } from '../pdas'; import { ASSOCIATED_TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { expectAddress, getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const CREATE_ASSOCIATED_TOKEN_IDEMPOTENT_DISCRIMINATOR = 1; @@ -151,7 +157,7 @@ export async function getCreateAssociatedTokenIdempotentInstructionAsync< systemProgram: { value: input.systemProgram ?? null, isWritable: false }, tokenProgram: { value: input.tokenProgram ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Resolve default values. if (!accounts.tokenProgram.value) { @@ -160,9 +166,9 @@ export async function getCreateAssociatedTokenIdempotentInstructionAsync< } if (!accounts.ata.value) { accounts.ata.value = await findAssociatedTokenPda({ - owner: expectAddress(accounts.owner.value), - tokenProgram: expectAddress(accounts.tokenProgram.value), - mint: expectAddress(accounts.mint.value), + owner: getAddressFromResolvedInstructionAccount('owner', accounts.owner.value), + tokenProgram: getAddressFromResolvedInstructionAccount('tokenProgram', accounts.tokenProgram.value), + mint: getAddressFromResolvedInstructionAccount('mint', accounts.mint.value), }); } if (!accounts.systemProgram.value) { @@ -173,12 +179,12 @@ export async function getCreateAssociatedTokenIdempotentInstructionAsync< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ accounts: [ - getAccountMeta(accounts.payer), - getAccountMeta(accounts.ata), - getAccountMeta(accounts.owner), - getAccountMeta(accounts.mint), - getAccountMeta(accounts.systemProgram), - getAccountMeta(accounts.tokenProgram), + getAccountMeta('payer', accounts.payer), + getAccountMeta('ata', accounts.ata), + getAccountMeta('owner', accounts.owner), + getAccountMeta('mint', accounts.mint), + getAccountMeta('systemProgram', accounts.systemProgram), + getAccountMeta('tokenProgram', accounts.tokenProgram), ], data: getCreateAssociatedTokenIdempotentInstructionDataEncoder().encode({}), programAddress, @@ -254,7 +260,7 @@ export function getCreateAssociatedTokenIdempotentInstruction< systemProgram: { value: input.systemProgram ?? null, isWritable: false }, tokenProgram: { value: input.tokenProgram ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Resolve default values. if (!accounts.tokenProgram.value) { @@ -269,12 +275,12 @@ export function getCreateAssociatedTokenIdempotentInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ accounts: [ - getAccountMeta(accounts.payer), - getAccountMeta(accounts.ata), - getAccountMeta(accounts.owner), - getAccountMeta(accounts.mint), - getAccountMeta(accounts.systemProgram), - getAccountMeta(accounts.tokenProgram), + getAccountMeta('payer', accounts.payer), + getAccountMeta('ata', accounts.ata), + getAccountMeta('owner', accounts.owner), + getAccountMeta('mint', accounts.mint), + getAccountMeta('systemProgram', accounts.systemProgram), + getAccountMeta('tokenProgram', accounts.tokenProgram), ], data: getCreateAssociatedTokenIdempotentInstructionDataEncoder().encode({}), programAddress, @@ -320,8 +326,10 @@ export function parseCreateAssociatedTokenIdempotentInstruction< InstructionWithData, ): ParsedCreateAssociatedTokenIdempotentInstruction { if (instruction.accounts.length < 6) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 6, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/freezeAccount.ts b/clients/js/src/generated/instructions/freezeAccount.ts index 102fc4ba..ed307a4c 100644 --- a/clients/js/src/generated/instructions/freezeAccount.ts +++ b/clients/js/src/generated/instructions/freezeAccount.ts @@ -13,6 +13,8 @@ import { getStructEncoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type AccountSignerMeta, @@ -29,8 +31,8 @@ import { type TransactionSigner, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const FREEZE_ACCOUNT_DISCRIMINATOR = 10; @@ -116,7 +118,7 @@ export function getFreezeAccountInstruction< mint: { value: input.mint ?? null, isWritable: false }, owner: { value: input.owner ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; @@ -131,9 +133,9 @@ export function getFreezeAccountInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ accounts: [ - getAccountMeta(accounts.account), - getAccountMeta(accounts.mint), - getAccountMeta(accounts.owner), + getAccountMeta('account', accounts.account), + getAccountMeta('mint', accounts.mint), + getAccountMeta('owner', accounts.owner), ...remainingAccounts, ], data: getFreezeAccountInstructionDataEncoder().encode({}), @@ -170,8 +172,10 @@ export function parseFreezeAccountInstruction, ): ParsedFreezeAccountInstruction { if (instruction.accounts.length < 3) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 3, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/getAccountDataSize.ts b/clients/js/src/generated/instructions/getAccountDataSize.ts index 020593f7..4c37700f 100644 --- a/clients/js/src/generated/instructions/getAccountDataSize.ts +++ b/clients/js/src/generated/instructions/getAccountDataSize.ts @@ -12,6 +12,8 @@ import { getStructEncoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type Address, @@ -24,8 +26,8 @@ import { type ReadonlyAccount, type ReadonlyUint8Array, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const GET_ACCOUNT_DATA_SIZE_DISCRIMINATOR = 21; @@ -82,11 +84,11 @@ export function getGetAccountDataSizeInstruction< // Original accounts. const originalAccounts = { mint: { value: input.mint ?? null, isWritable: false } }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ - accounts: [getAccountMeta(accounts.mint)], + accounts: [getAccountMeta('mint', accounts.mint)], data: getGetAccountDataSizeInstructionDataEncoder().encode({}), programAddress, } as GetAccountDataSizeInstruction); @@ -113,8 +115,10 @@ export function parseGetAccountDataSizeInstruction< InstructionWithData, ): ParsedGetAccountDataSizeInstruction { if (instruction.accounts.length < 1) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 1, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/initializeAccount.ts b/clients/js/src/generated/instructions/initializeAccount.ts index c5ceeaeb..59bc3075 100644 --- a/clients/js/src/generated/instructions/initializeAccount.ts +++ b/clients/js/src/generated/instructions/initializeAccount.ts @@ -12,6 +12,8 @@ import { getStructEncoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type Address, @@ -25,8 +27,8 @@ import { type ReadonlyUint8Array, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const INITIALIZE_ACCOUNT_DISCRIMINATOR = 1; @@ -111,7 +113,7 @@ export function getInitializeAccountInstruction< owner: { value: input.owner ?? null, isWritable: false }, rent: { value: input.rent ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Resolve default values. if (!accounts.rent.value) { @@ -122,10 +124,10 @@ export function getInitializeAccountInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ accounts: [ - getAccountMeta(accounts.account), - getAccountMeta(accounts.mint), - getAccountMeta(accounts.owner), - getAccountMeta(accounts.rent), + getAccountMeta('account', accounts.account), + getAccountMeta('mint', accounts.mint), + getAccountMeta('owner', accounts.owner), + getAccountMeta('rent', accounts.rent), ], data: getInitializeAccountInstructionDataEncoder().encode({}), programAddress, @@ -159,8 +161,10 @@ export function parseInitializeAccountInstruction< InstructionWithData, ): ParsedInitializeAccountInstruction { if (instruction.accounts.length < 4) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 4, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/initializeAccount2.ts b/clients/js/src/generated/instructions/initializeAccount2.ts index 6c358a9b..96b566dc 100644 --- a/clients/js/src/generated/instructions/initializeAccount2.ts +++ b/clients/js/src/generated/instructions/initializeAccount2.ts @@ -14,6 +14,8 @@ import { getStructEncoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type Address, @@ -27,8 +29,8 @@ import { type ReadonlyUint8Array, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const INITIALIZE_ACCOUNT2_DISCRIMINATOR = 16; @@ -120,7 +122,7 @@ export function getInitializeAccount2Instruction< mint: { value: input.mint ?? null, isWritable: false }, rent: { value: input.rent ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; @@ -133,7 +135,11 @@ export function getInitializeAccount2Instruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ - accounts: [getAccountMeta(accounts.account), getAccountMeta(accounts.mint), getAccountMeta(accounts.rent)], + accounts: [ + getAccountMeta('account', accounts.account), + getAccountMeta('mint', accounts.mint), + getAccountMeta('rent', accounts.rent), + ], data: getInitializeAccount2InstructionDataEncoder().encode(args as InitializeAccount2InstructionDataArgs), programAddress, } as InitializeAccount2Instruction); @@ -164,8 +170,10 @@ export function parseInitializeAccount2Instruction< InstructionWithData, ): ParsedInitializeAccount2Instruction { if (instruction.accounts.length < 3) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 3, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/initializeAccount3.ts b/clients/js/src/generated/instructions/initializeAccount3.ts index 76d65ee4..a93e485e 100644 --- a/clients/js/src/generated/instructions/initializeAccount3.ts +++ b/clients/js/src/generated/instructions/initializeAccount3.ts @@ -14,6 +14,8 @@ import { getStructEncoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type Address, @@ -27,8 +29,8 @@ import { type ReadonlyUint8Array, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const INITIALIZE_ACCOUNT3_DISCRIMINATOR = 18; @@ -110,14 +112,14 @@ export function getInitializeAccount3Instruction< account: { value: input.account ?? null, isWritable: true }, mint: { value: input.mint ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ - accounts: [getAccountMeta(accounts.account), getAccountMeta(accounts.mint)], + accounts: [getAccountMeta('account', accounts.account), getAccountMeta('mint', accounts.mint)], data: getInitializeAccount3InstructionDataEncoder().encode(args as InitializeAccount3InstructionDataArgs), programAddress, } as InitializeAccount3Instruction); @@ -146,8 +148,10 @@ export function parseInitializeAccount3Instruction< InstructionWithData, ): ParsedInitializeAccount3Instruction { if (instruction.accounts.length < 2) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 2, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/initializeImmutableOwner.ts b/clients/js/src/generated/instructions/initializeImmutableOwner.ts index b17efcb3..f591a10b 100644 --- a/clients/js/src/generated/instructions/initializeImmutableOwner.ts +++ b/clients/js/src/generated/instructions/initializeImmutableOwner.ts @@ -12,6 +12,8 @@ import { getStructEncoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type Address, @@ -24,8 +26,8 @@ import { type ReadonlyUint8Array, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const INITIALIZE_IMMUTABLE_OWNER_DISCRIMINATOR = 22; @@ -85,11 +87,11 @@ export function getInitializeImmutableOwnerInstruction< // Original accounts. const originalAccounts = { account: { value: input.account ?? null, isWritable: true } }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ - accounts: [getAccountMeta(accounts.account)], + accounts: [getAccountMeta('account', accounts.account)], data: getInitializeImmutableOwnerInstructionDataEncoder().encode({}), programAddress, } as InitializeImmutableOwnerInstruction); @@ -116,8 +118,10 @@ export function parseInitializeImmutableOwnerInstruction< InstructionWithData, ): ParsedInitializeImmutableOwnerInstruction { if (instruction.accounts.length < 1) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 1, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/initializeMint.ts b/clients/js/src/generated/instructions/initializeMint.ts index 7dffa20a..bcd6f04e 100644 --- a/clients/js/src/generated/instructions/initializeMint.ts +++ b/clients/js/src/generated/instructions/initializeMint.ts @@ -17,6 +17,8 @@ import { getU8Decoder, getU8Encoder, none, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type Address, @@ -32,8 +34,8 @@ import { type ReadonlyUint8Array, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const INITIALIZE_MINT_DISCRIMINATOR = 0; @@ -133,7 +135,7 @@ export function getInitializeMintInstruction< mint: { value: input.mint ?? null, isWritable: true }, rent: { value: input.rent ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; @@ -146,7 +148,7 @@ export function getInitializeMintInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ - accounts: [getAccountMeta(accounts.mint), getAccountMeta(accounts.rent)], + accounts: [getAccountMeta('mint', accounts.mint), getAccountMeta('rent', accounts.rent)], data: getInitializeMintInstructionDataEncoder().encode(args as InitializeMintInstructionDataArgs), programAddress, } as InitializeMintInstruction); @@ -172,8 +174,10 @@ export function parseInitializeMintInstruction, ): ParsedInitializeMintInstruction { if (instruction.accounts.length < 2) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 2, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/initializeMint2.ts b/clients/js/src/generated/instructions/initializeMint2.ts index 764b1ec3..08c080f7 100644 --- a/clients/js/src/generated/instructions/initializeMint2.ts +++ b/clients/js/src/generated/instructions/initializeMint2.ts @@ -17,6 +17,8 @@ import { getU8Decoder, getU8Encoder, none, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type Address, @@ -31,8 +33,8 @@ import { type ReadonlyUint8Array, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const INITIALIZE_MINT2_DISCRIMINATOR = 20; @@ -121,14 +123,14 @@ export function getInitializeMint2Instruction< // Original accounts. const originalAccounts = { mint: { value: input.mint ?? null, isWritable: true } }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ - accounts: [getAccountMeta(accounts.mint)], + accounts: [getAccountMeta('mint', accounts.mint)], data: getInitializeMint2InstructionDataEncoder().encode(args as InitializeMint2InstructionDataArgs), programAddress, } as InitializeMint2Instruction); @@ -152,8 +154,10 @@ export function parseInitializeMint2Instruction, ): ParsedInitializeMint2Instruction { if (instruction.accounts.length < 1) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 1, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/initializeMultisig.ts b/clients/js/src/generated/instructions/initializeMultisig.ts index b6cf30b6..4dd28908 100644 --- a/clients/js/src/generated/instructions/initializeMultisig.ts +++ b/clients/js/src/generated/instructions/initializeMultisig.ts @@ -13,6 +13,8 @@ import { getStructEncoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type Address, @@ -26,8 +28,8 @@ import { type ReadonlyUint8Array, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const INITIALIZE_MULTISIG_DISCRIMINATOR = 2; @@ -110,7 +112,7 @@ export function getInitializeMultisigInstruction< multisig: { value: input.multisig ?? null, isWritable: true }, rent: { value: input.rent ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; @@ -126,7 +128,11 @@ export function getInitializeMultisigInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ - accounts: [getAccountMeta(accounts.multisig), getAccountMeta(accounts.rent), ...remainingAccounts], + accounts: [ + getAccountMeta('multisig', accounts.multisig), + getAccountMeta('rent', accounts.rent), + ...remainingAccounts, + ], data: getInitializeMultisigInstructionDataEncoder().encode(args as InitializeMultisigInstructionDataArgs), programAddress, } as InitializeMultisigInstruction); @@ -155,8 +161,10 @@ export function parseInitializeMultisigInstruction< InstructionWithData, ): ParsedInitializeMultisigInstruction { if (instruction.accounts.length < 2) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 2, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/initializeMultisig2.ts b/clients/js/src/generated/instructions/initializeMultisig2.ts index 82347606..0180a9e7 100644 --- a/clients/js/src/generated/instructions/initializeMultisig2.ts +++ b/clients/js/src/generated/instructions/initializeMultisig2.ts @@ -13,6 +13,8 @@ import { getStructEncoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type Address, @@ -25,8 +27,8 @@ import { type ReadonlyUint8Array, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const INITIALIZE_MULTISIG2_DISCRIMINATOR = 19; @@ -98,7 +100,7 @@ export function getInitializeMultisig2Instruction< // Original accounts. const originalAccounts = { multisig: { value: input.multisig ?? null, isWritable: true } }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; @@ -108,7 +110,7 @@ export function getInitializeMultisig2Instruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ - accounts: [getAccountMeta(accounts.multisig), ...remainingAccounts], + accounts: [getAccountMeta('multisig', accounts.multisig), ...remainingAccounts], data: getInitializeMultisig2InstructionDataEncoder().encode(args as InitializeMultisig2InstructionDataArgs), programAddress, } as InitializeMultisig2Instruction); @@ -135,8 +137,10 @@ export function parseInitializeMultisig2Instruction< InstructionWithData, ): ParsedInitializeMultisig2Instruction { if (instruction.accounts.length < 1) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 1, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/mintTo.ts b/clients/js/src/generated/instructions/mintTo.ts index b12af04e..ced2e6e2 100644 --- a/clients/js/src/generated/instructions/mintTo.ts +++ b/clients/js/src/generated/instructions/mintTo.ts @@ -15,6 +15,8 @@ import { getU64Encoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type AccountSignerMeta, @@ -31,8 +33,8 @@ import { type TransactionSigner, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const MINT_TO_DISCRIMINATOR = 7; @@ -129,7 +131,7 @@ export function getMintToInstruction< token: { value: input.token ?? null, isWritable: true }, mintAuthority: { value: input.mintAuthority ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; @@ -144,9 +146,9 @@ export function getMintToInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ accounts: [ - getAccountMeta(accounts.mint), - getAccountMeta(accounts.token), - getAccountMeta(accounts.mintAuthority), + getAccountMeta('mint', accounts.mint), + getAccountMeta('token', accounts.token), + getAccountMeta('mintAuthority', accounts.mintAuthority), ...remainingAccounts, ], data: getMintToInstructionDataEncoder().encode(args as MintToInstructionDataArgs), @@ -183,8 +185,10 @@ export function parseMintToInstruction, ): ParsedMintToInstruction { if (instruction.accounts.length < 3) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 3, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/mintToChecked.ts b/clients/js/src/generated/instructions/mintToChecked.ts index ed942e05..2ce3edbb 100644 --- a/clients/js/src/generated/instructions/mintToChecked.ts +++ b/clients/js/src/generated/instructions/mintToChecked.ts @@ -15,6 +15,8 @@ import { getU64Encoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type AccountSignerMeta, @@ -31,8 +33,8 @@ import { type TransactionSigner, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const MINT_TO_CHECKED_DISCRIMINATOR = 14; @@ -139,7 +141,7 @@ export function getMintToCheckedInstruction< token: { value: input.token ?? null, isWritable: true }, mintAuthority: { value: input.mintAuthority ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; @@ -154,9 +156,9 @@ export function getMintToCheckedInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ accounts: [ - getAccountMeta(accounts.mint), - getAccountMeta(accounts.token), - getAccountMeta(accounts.mintAuthority), + getAccountMeta('mint', accounts.mint), + getAccountMeta('token', accounts.token), + getAccountMeta('mintAuthority', accounts.mintAuthority), ...remainingAccounts, ], data: getMintToCheckedInstructionDataEncoder().encode(args as MintToCheckedInstructionDataArgs), @@ -193,8 +195,10 @@ export function parseMintToCheckedInstruction, ): ParsedMintToCheckedInstruction { if (instruction.accounts.length < 3) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 3, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/recoverNestedAssociatedToken.ts b/clients/js/src/generated/instructions/recoverNestedAssociatedToken.ts index 2a6ea6c9..26ce7ee9 100644 --- a/clients/js/src/generated/instructions/recoverNestedAssociatedToken.ts +++ b/clients/js/src/generated/instructions/recoverNestedAssociatedToken.ts @@ -12,6 +12,8 @@ import { getStructEncoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type AccountSignerMeta, @@ -28,9 +30,13 @@ import { type WritableAccount, type WritableSignerAccount, } from '@solana/kit'; +import { + getAccountMetaFactory, + getAddressFromResolvedInstructionAccount, + type ResolvedInstructionAccount, +} from '@solana/kit/program-client-core'; import { findAssociatedTokenPda } from '../pdas'; import { ASSOCIATED_TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { expectAddress, getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const RECOVER_NESTED_ASSOCIATED_TOKEN_DISCRIMINATOR = 2; @@ -173,7 +179,7 @@ export async function getRecoverNestedAssociatedTokenInstructionAsync< walletAddress: { value: input.walletAddress ?? null, isWritable: true }, tokenProgram: { value: input.tokenProgram ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Resolve default values. if (!accounts.tokenProgram.value) { @@ -182,36 +188,48 @@ export async function getRecoverNestedAssociatedTokenInstructionAsync< } if (!accounts.ownerAssociatedAccountAddress.value) { accounts.ownerAssociatedAccountAddress.value = await findAssociatedTokenPda({ - owner: expectAddress(accounts.walletAddress.value), - tokenProgram: expectAddress(accounts.tokenProgram.value), - mint: expectAddress(accounts.ownerTokenMintAddress.value), + owner: getAddressFromResolvedInstructionAccount('walletAddress', accounts.walletAddress.value), + tokenProgram: getAddressFromResolvedInstructionAccount('tokenProgram', accounts.tokenProgram.value), + mint: getAddressFromResolvedInstructionAccount( + 'ownerTokenMintAddress', + accounts.ownerTokenMintAddress.value, + ), }); } if (!accounts.nestedAssociatedAccountAddress.value) { accounts.nestedAssociatedAccountAddress.value = await findAssociatedTokenPda({ - owner: expectAddress(accounts.ownerAssociatedAccountAddress.value), - tokenProgram: expectAddress(accounts.tokenProgram.value), - mint: expectAddress(accounts.nestedTokenMintAddress.value), + owner: getAddressFromResolvedInstructionAccount( + 'ownerAssociatedAccountAddress', + accounts.ownerAssociatedAccountAddress.value, + ), + tokenProgram: getAddressFromResolvedInstructionAccount('tokenProgram', accounts.tokenProgram.value), + mint: getAddressFromResolvedInstructionAccount( + 'nestedTokenMintAddress', + accounts.nestedTokenMintAddress.value, + ), }); } if (!accounts.destinationAssociatedAccountAddress.value) { accounts.destinationAssociatedAccountAddress.value = await findAssociatedTokenPda({ - owner: expectAddress(accounts.walletAddress.value), - tokenProgram: expectAddress(accounts.tokenProgram.value), - mint: expectAddress(accounts.nestedTokenMintAddress.value), + owner: getAddressFromResolvedInstructionAccount('walletAddress', accounts.walletAddress.value), + tokenProgram: getAddressFromResolvedInstructionAccount('tokenProgram', accounts.tokenProgram.value), + mint: getAddressFromResolvedInstructionAccount( + 'nestedTokenMintAddress', + accounts.nestedTokenMintAddress.value, + ), }); } const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ accounts: [ - getAccountMeta(accounts.nestedAssociatedAccountAddress), - getAccountMeta(accounts.nestedTokenMintAddress), - getAccountMeta(accounts.destinationAssociatedAccountAddress), - getAccountMeta(accounts.ownerAssociatedAccountAddress), - getAccountMeta(accounts.ownerTokenMintAddress), - getAccountMeta(accounts.walletAddress), - getAccountMeta(accounts.tokenProgram), + getAccountMeta('nestedAssociatedAccountAddress', accounts.nestedAssociatedAccountAddress), + getAccountMeta('nestedTokenMintAddress', accounts.nestedTokenMintAddress), + getAccountMeta('destinationAssociatedAccountAddress', accounts.destinationAssociatedAccountAddress), + getAccountMeta('ownerAssociatedAccountAddress', accounts.ownerAssociatedAccountAddress), + getAccountMeta('ownerTokenMintAddress', accounts.ownerTokenMintAddress), + getAccountMeta('walletAddress', accounts.walletAddress), + getAccountMeta('tokenProgram', accounts.tokenProgram), ], data: getRecoverNestedAssociatedTokenInstructionDataEncoder().encode({}), programAddress, @@ -298,7 +316,7 @@ export function getRecoverNestedAssociatedTokenInstruction< walletAddress: { value: input.walletAddress ?? null, isWritable: true }, tokenProgram: { value: input.tokenProgram ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Resolve default values. if (!accounts.tokenProgram.value) { @@ -309,13 +327,13 @@ export function getRecoverNestedAssociatedTokenInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ accounts: [ - getAccountMeta(accounts.nestedAssociatedAccountAddress), - getAccountMeta(accounts.nestedTokenMintAddress), - getAccountMeta(accounts.destinationAssociatedAccountAddress), - getAccountMeta(accounts.ownerAssociatedAccountAddress), - getAccountMeta(accounts.ownerTokenMintAddress), - getAccountMeta(accounts.walletAddress), - getAccountMeta(accounts.tokenProgram), + getAccountMeta('nestedAssociatedAccountAddress', accounts.nestedAssociatedAccountAddress), + getAccountMeta('nestedTokenMintAddress', accounts.nestedTokenMintAddress), + getAccountMeta('destinationAssociatedAccountAddress', accounts.destinationAssociatedAccountAddress), + getAccountMeta('ownerAssociatedAccountAddress', accounts.ownerAssociatedAccountAddress), + getAccountMeta('ownerTokenMintAddress', accounts.ownerTokenMintAddress), + getAccountMeta('walletAddress', accounts.walletAddress), + getAccountMeta('tokenProgram', accounts.tokenProgram), ], data: getRecoverNestedAssociatedTokenInstructionDataEncoder().encode({}), programAddress, @@ -364,8 +382,10 @@ export function parseRecoverNestedAssociatedTokenInstruction< InstructionWithData, ): ParsedRecoverNestedAssociatedTokenInstruction { if (instruction.accounts.length < 7) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 7, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/revoke.ts b/clients/js/src/generated/instructions/revoke.ts index 92073b07..a70bc631 100644 --- a/clients/js/src/generated/instructions/revoke.ts +++ b/clients/js/src/generated/instructions/revoke.ts @@ -13,6 +13,8 @@ import { getStructEncoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type AccountSignerMeta, @@ -29,8 +31,8 @@ import { type TransactionSigner, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const REVOKE_DISCRIMINATOR = 5; @@ -102,7 +104,7 @@ export function getRevokeInstruction< source: { value: input.source ?? null, isWritable: true }, owner: { value: input.owner ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; @@ -116,7 +118,11 @@ export function getRevokeInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ - accounts: [getAccountMeta(accounts.source), getAccountMeta(accounts.owner), ...remainingAccounts], + accounts: [ + getAccountMeta('source', accounts.source), + getAccountMeta('owner', accounts.owner), + ...remainingAccounts, + ], data: getRevokeInstructionDataEncoder().encode({}), programAddress, } as RevokeInstruction< @@ -148,8 +154,10 @@ export function parseRevokeInstruction, ): ParsedRevokeInstruction { if (instruction.accounts.length < 2) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 2, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/setAuthority.ts b/clients/js/src/generated/instructions/setAuthority.ts index bbcd5d5c..4f6f9ced 100644 --- a/clients/js/src/generated/instructions/setAuthority.ts +++ b/clients/js/src/generated/instructions/setAuthority.ts @@ -17,6 +17,8 @@ import { getStructEncoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type AccountSignerMeta, @@ -35,8 +37,8 @@ import { type TransactionSigner, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; import { getAuthorityTypeDecoder, getAuthorityTypeEncoder, type AuthorityType, type AuthorityTypeArgs } from '../types'; export const SET_AUTHORITY_DISCRIMINATOR = 6; @@ -133,7 +135,7 @@ export function getSetAuthorityInstruction< owned: { value: input.owned ?? null, isWritable: true }, owner: { value: input.owner ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; @@ -147,7 +149,11 @@ export function getSetAuthorityInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ - accounts: [getAccountMeta(accounts.owned), getAccountMeta(accounts.owner), ...remainingAccounts], + accounts: [ + getAccountMeta('owned', accounts.owned), + getAccountMeta('owner', accounts.owner), + ...remainingAccounts, + ], data: getSetAuthorityInstructionDataEncoder().encode(args as SetAuthorityInstructionDataArgs), programAddress, } as SetAuthorityInstruction< @@ -179,8 +185,10 @@ export function parseSetAuthorityInstruction, ): ParsedSetAuthorityInstruction { if (instruction.accounts.length < 2) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 2, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/syncNative.ts b/clients/js/src/generated/instructions/syncNative.ts index 35032aa7..118fc893 100644 --- a/clients/js/src/generated/instructions/syncNative.ts +++ b/clients/js/src/generated/instructions/syncNative.ts @@ -12,6 +12,8 @@ import { getStructEncoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type Address, @@ -24,8 +26,8 @@ import { type ReadonlyUint8Array, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const SYNC_NATIVE_DISCRIMINATOR = 17; @@ -82,11 +84,11 @@ export function getSyncNativeInstruction< // Original accounts. const originalAccounts = { account: { value: input.account ?? null, isWritable: true } }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ - accounts: [getAccountMeta(accounts.account)], + accounts: [getAccountMeta('account', accounts.account)], data: getSyncNativeInstructionDataEncoder().encode({}), programAddress, } as SyncNativeInstruction); @@ -110,8 +112,10 @@ export function parseSyncNativeInstruction, ): ParsedSyncNativeInstruction { if (instruction.accounts.length < 1) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 1, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/thawAccount.ts b/clients/js/src/generated/instructions/thawAccount.ts index 63b435a1..987e2f57 100644 --- a/clients/js/src/generated/instructions/thawAccount.ts +++ b/clients/js/src/generated/instructions/thawAccount.ts @@ -13,6 +13,8 @@ import { getStructEncoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type AccountSignerMeta, @@ -29,8 +31,8 @@ import { type TransactionSigner, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const THAW_ACCOUNT_DISCRIMINATOR = 11; @@ -116,7 +118,7 @@ export function getThawAccountInstruction< mint: { value: input.mint ?? null, isWritable: false }, owner: { value: input.owner ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; @@ -131,9 +133,9 @@ export function getThawAccountInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ accounts: [ - getAccountMeta(accounts.account), - getAccountMeta(accounts.mint), - getAccountMeta(accounts.owner), + getAccountMeta('account', accounts.account), + getAccountMeta('mint', accounts.mint), + getAccountMeta('owner', accounts.owner), ...remainingAccounts, ], data: getThawAccountInstructionDataEncoder().encode({}), @@ -170,8 +172,10 @@ export function parseThawAccountInstruction, ): ParsedThawAccountInstruction { if (instruction.accounts.length < 3) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 3, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/transfer.ts b/clients/js/src/generated/instructions/transfer.ts index 9f766104..8a3669d4 100644 --- a/clients/js/src/generated/instructions/transfer.ts +++ b/clients/js/src/generated/instructions/transfer.ts @@ -15,6 +15,8 @@ import { getU64Encoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type AccountSignerMeta, @@ -31,8 +33,8 @@ import { type TransactionSigner, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const TRANSFER_DISCRIMINATOR = 3; @@ -132,7 +134,7 @@ export function getTransferInstruction< destination: { value: input.destination ?? null, isWritable: true }, authority: { value: input.authority ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; @@ -147,9 +149,9 @@ export function getTransferInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ accounts: [ - getAccountMeta(accounts.source), - getAccountMeta(accounts.destination), - getAccountMeta(accounts.authority), + getAccountMeta('source', accounts.source), + getAccountMeta('destination', accounts.destination), + getAccountMeta('authority', accounts.authority), ...remainingAccounts, ], data: getTransferInstructionDataEncoder().encode(args as TransferInstructionDataArgs), @@ -186,8 +188,10 @@ export function parseTransferInstruction, ): ParsedTransferInstruction { if (instruction.accounts.length < 3) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 3, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/transferChecked.ts b/clients/js/src/generated/instructions/transferChecked.ts index b2898b0f..6c9968d2 100644 --- a/clients/js/src/generated/instructions/transferChecked.ts +++ b/clients/js/src/generated/instructions/transferChecked.ts @@ -15,6 +15,8 @@ import { getU64Encoder, getU8Decoder, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type AccountSignerMeta, @@ -31,8 +33,8 @@ import { type TransactionSigner, type WritableAccount, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const TRANSFER_CHECKED_DISCRIMINATOR = 12; @@ -147,7 +149,7 @@ export function getTransferCheckedInstruction< destination: { value: input.destination ?? null, isWritable: true }, authority: { value: input.authority ?? null, isWritable: false }, }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; @@ -162,10 +164,10 @@ export function getTransferCheckedInstruction< const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ accounts: [ - getAccountMeta(accounts.source), - getAccountMeta(accounts.mint), - getAccountMeta(accounts.destination), - getAccountMeta(accounts.authority), + getAccountMeta('source', accounts.source), + getAccountMeta('mint', accounts.mint), + getAccountMeta('destination', accounts.destination), + getAccountMeta('authority', accounts.authority), ...remainingAccounts, ], data: getTransferCheckedInstructionDataEncoder().encode(args as TransferCheckedInstructionDataArgs), @@ -205,8 +207,10 @@ export function parseTransferCheckedInstruction, ): ParsedTransferCheckedInstruction { if (instruction.accounts.length < 4) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 4, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/instructions/uiAmountToAmount.ts b/clients/js/src/generated/instructions/uiAmountToAmount.ts index a8944462..d02d5de9 100644 --- a/clients/js/src/generated/instructions/uiAmountToAmount.ts +++ b/clients/js/src/generated/instructions/uiAmountToAmount.ts @@ -14,6 +14,8 @@ import { getU8Encoder, getUtf8Decoder, getUtf8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, + SolanaError, transformEncoder, type AccountMeta, type Address, @@ -26,8 +28,8 @@ import { type ReadonlyAccount, type ReadonlyUint8Array, } from '@solana/kit'; +import { getAccountMetaFactory, type ResolvedInstructionAccount } from '@solana/kit/program-client-core'; import { TOKEN_PROGRAM_ADDRESS } from '../programs'; -import { getAccountMetaFactory, type ResolvedAccount } from '../shared'; export const UI_AMOUNT_TO_AMOUNT_DISCRIMINATOR = 24; @@ -98,14 +100,14 @@ export function getUiAmountToAmountInstruction< // Original accounts. const originalAccounts = { mint: { value: input.mint ?? null, isWritable: false } }; - const accounts = originalAccounts as Record; + const accounts = originalAccounts as Record; // Original args. const args = { ...input }; const getAccountMeta = getAccountMetaFactory(programAddress, 'programId'); return Object.freeze({ - accounts: [getAccountMeta(accounts.mint)], + accounts: [getAccountMeta('mint', accounts.mint)], data: getUiAmountToAmountInstructionDataEncoder().encode(args as UiAmountToAmountInstructionDataArgs), programAddress, } as UiAmountToAmountInstruction); @@ -129,8 +131,10 @@ export function parseUiAmountToAmountInstruction, ): ParsedUiAmountToAmountInstruction { if (instruction.accounts.length < 1) { - // TODO: Coded error. - throw new Error('Not enough accounts'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, { + actualAccountMetas: instruction.accounts.length, + expectedAccountMetas: 1, + }); } let accountIndex = 0; const getNextAccount = () => { diff --git a/clients/js/src/generated/programs/associatedToken.ts b/clients/js/src/generated/programs/associatedToken.ts index 8c2bb23e..481faf5b 100644 --- a/clients/js/src/generated/programs/associatedToken.ts +++ b/clients/js/src/generated/programs/associatedToken.ts @@ -10,18 +10,31 @@ import { assertIsInstructionWithAccounts, containsBytes, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__FAILED_TO_IDENTIFY_INSTRUCTION, + SOLANA_ERROR__PROGRAM_CLIENTS__UNRECOGNIZED_INSTRUCTION_TYPE, + SolanaError, type Address, + type ClientWithPayer, + type ClientWithTransactionPlanning, + type ClientWithTransactionSending, type Instruction, type InstructionWithData, type ReadonlyUint8Array, } from '@solana/kit'; +import { addSelfPlanAndSendFunctions, type SelfPlanAndSendFunctions } from '@solana/kit/program-client-core'; import { + getCreateAssociatedTokenIdempotentInstructionAsync, + getCreateAssociatedTokenInstructionAsync, + getRecoverNestedAssociatedTokenInstructionAsync, parseCreateAssociatedTokenIdempotentInstruction, parseCreateAssociatedTokenInstruction, parseRecoverNestedAssociatedTokenInstruction, + type CreateAssociatedTokenAsyncInput, + type CreateAssociatedTokenIdempotentAsyncInput, type ParsedCreateAssociatedTokenIdempotentInstruction, type ParsedCreateAssociatedTokenInstruction, type ParsedRecoverNestedAssociatedTokenInstruction, + type RecoverNestedAssociatedTokenAsyncInput, } from '../instructions'; export const ASSOCIATED_TOKEN_PROGRAM_ADDRESS = @@ -46,7 +59,10 @@ export function identifyAssociatedTokenInstruction( if (containsBytes(data, getU8Encoder().encode(2), 0)) { return AssociatedTokenInstruction.RecoverNestedAssociatedToken; } - throw new Error('The provided instruction could not be identified as a associatedToken instruction.'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__FAILED_TO_IDENTIFY_INSTRUCTION, { + instructionData: data, + programName: 'associatedToken', + }); } export type ParsedAssociatedTokenInstruction = @@ -87,6 +103,56 @@ export function parseAssociatedTokenInstruction( }; } default: - throw new Error(`Unrecognized instruction type: ${instructionType as string}`); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__UNRECOGNIZED_INSTRUCTION_TYPE, { + instructionType: instructionType as string, + programName: 'associatedToken', + }); } } + +export type AssociatedTokenPlugin = { instructions: AssociatedTokenPluginInstructions }; + +export type AssociatedTokenPluginInstructions = { + createAssociatedToken: ( + input: MakeOptional, + ) => ReturnType & SelfPlanAndSendFunctions; + createAssociatedTokenIdempotent: ( + input: MakeOptional, + ) => ReturnType & SelfPlanAndSendFunctions; + recoverNestedAssociatedToken: ( + input: RecoverNestedAssociatedTokenAsyncInput, + ) => ReturnType & SelfPlanAndSendFunctions; +}; + +export type AssociatedTokenPluginRequirements = ClientWithPayer & + ClientWithTransactionPlanning & + ClientWithTransactionSending; + +export function associatedTokenProgram() { + return (client: T) => { + return { + ...client, + associatedToken: { + instructions: { + createAssociatedToken: input => + addSelfPlanAndSendFunctions( + client, + getCreateAssociatedTokenInstructionAsync({ ...input, payer: input.payer ?? client.payer }), + ), + createAssociatedTokenIdempotent: input => + addSelfPlanAndSendFunctions( + client, + getCreateAssociatedTokenIdempotentInstructionAsync({ + ...input, + payer: input.payer ?? client.payer, + }), + ), + recoverNestedAssociatedToken: input => + addSelfPlanAndSendFunctions(client, getRecoverNestedAssociatedTokenInstructionAsync(input)), + }, + }, + }; + }; +} + +type MakeOptional = Omit & Partial>; diff --git a/clients/js/src/generated/programs/token.ts b/clients/js/src/generated/programs/token.ts index 1d3266eb..f2094234 100644 --- a/clients/js/src/generated/programs/token.ts +++ b/clients/js/src/generated/programs/token.ts @@ -10,12 +10,63 @@ import { assertIsInstructionWithAccounts, containsBytes, getU8Encoder, + SOLANA_ERROR__PROGRAM_CLIENTS__FAILED_TO_IDENTIFY_ACCOUNT, + SOLANA_ERROR__PROGRAM_CLIENTS__FAILED_TO_IDENTIFY_INSTRUCTION, + SOLANA_ERROR__PROGRAM_CLIENTS__UNRECOGNIZED_INSTRUCTION_TYPE, + SolanaError, type Address, + type ClientWithRpc, + type ClientWithTransactionPlanning, + type ClientWithTransactionSending, + type GetAccountInfoApi, + type GetMultipleAccountsApi, type Instruction, type InstructionWithData, type ReadonlyUint8Array, } from '@solana/kit'; import { + addSelfFetchFunctions, + addSelfPlanAndSendFunctions, + type SelfFetchFunctions, + type SelfPlanAndSendFunctions, +} from '@solana/kit/program-client-core'; +import { + getMintCodec, + getMultisigCodec, + getTokenCodec, + type Mint, + type MintArgs, + type Multisig, + type MultisigArgs, + type Token, + type TokenArgs, +} from '../accounts'; +import { + getAmountToUiAmountInstruction, + getApproveCheckedInstruction, + getApproveInstruction, + getBurnCheckedInstruction, + getBurnInstruction, + getCloseAccountInstruction, + getFreezeAccountInstruction, + getGetAccountDataSizeInstruction, + getInitializeAccount2Instruction, + getInitializeAccount3Instruction, + getInitializeAccountInstruction, + getInitializeImmutableOwnerInstruction, + getInitializeMint2Instruction, + getInitializeMintInstruction, + getInitializeMultisig2Instruction, + getInitializeMultisigInstruction, + getMintToCheckedInstruction, + getMintToInstruction, + getRevokeInstruction, + getSetAuthorityInstruction, + getSyncNativeInstruction, + getThawAccountInstruction, + getTransferCheckedInstruction, + getTransferInstruction, + getUiAmountToAmountInstruction, parseAmountToUiAmountInstruction, parseApproveCheckedInstruction, parseApproveInstruction, @@ -41,6 +92,24 @@ import { parseTransferCheckedInstruction, parseTransferInstruction, parseUiAmountToAmountInstruction, + type AmountToUiAmountInput, + type ApproveCheckedInput, + type ApproveInput, + type BurnCheckedInput, + type BurnInput, + type CloseAccountInput, + type FreezeAccountInput, + type GetAccountDataSizeInput, + type InitializeAccount2Input, + type InitializeAccount3Input, + type InitializeAccountInput, + type InitializeImmutableOwnerInput, + type InitializeMint2Input, + type InitializeMintInput, + type InitializeMultisig2Input, + type InitializeMultisigInput, + type MintToCheckedInput, + type MintToInput, type ParsedAmountToUiAmountInstruction, type ParsedApproveCheckedInstruction, type ParsedApproveInstruction, @@ -66,6 +135,13 @@ import { type ParsedTransferCheckedInstruction, type ParsedTransferInstruction, type ParsedUiAmountToAmountInstruction, + type RevokeInput, + type SetAuthorityInput, + type SyncNativeInput, + type ThawAccountInput, + type TransferCheckedInput, + type TransferInput, + type UiAmountToAmountInput, } from '../instructions'; export const TOKEN_PROGRAM_ADDRESS = @@ -88,7 +164,10 @@ export function identifyTokenAccount(account: { data: ReadonlyUint8Array } | Rea if (data.length === 355) { return TokenAccount.Multisig; } - throw new Error('The provided account could not be identified as a token account.'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__FAILED_TO_IDENTIFY_ACCOUNT, { + accountData: data, + programName: 'token', + }); } export enum TokenInstruction { @@ -198,7 +277,10 @@ export function identifyTokenInstruction( if (containsBytes(data, getU8Encoder().encode(24), 0)) { return TokenInstruction.UiAmountToAmount; } - throw new Error('The provided instruction could not be identified as a token instruction.'); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__FAILED_TO_IDENTIFY_INSTRUCTION, { + instructionData: data, + programName: 'token', + }); } export type ParsedTokenInstruction = @@ -369,6 +451,134 @@ export function parseTokenInstruction( }; } default: - throw new Error(`Unrecognized instruction type: ${instructionType as string}`); + throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__UNRECOGNIZED_INSTRUCTION_TYPE, { + instructionType: instructionType as string, + programName: 'token', + }); } } + +export type TokenPlugin = { accounts: TokenPluginAccounts; instructions: TokenPluginInstructions }; + +export type TokenPluginAccounts = { + mint: ReturnType & SelfFetchFunctions; + token: ReturnType & SelfFetchFunctions; + multisig: ReturnType & SelfFetchFunctions; +}; + +export type TokenPluginInstructions = { + initializeMint: ( + input: InitializeMintInput, + ) => ReturnType & SelfPlanAndSendFunctions; + initializeAccount: ( + input: InitializeAccountInput, + ) => ReturnType & SelfPlanAndSendFunctions; + initializeMultisig: ( + input: InitializeMultisigInput, + ) => ReturnType & SelfPlanAndSendFunctions; + transfer: (input: TransferInput) => ReturnType & SelfPlanAndSendFunctions; + approve: (input: ApproveInput) => ReturnType & SelfPlanAndSendFunctions; + revoke: (input: RevokeInput) => ReturnType & SelfPlanAndSendFunctions; + setAuthority: ( + input: SetAuthorityInput, + ) => ReturnType & SelfPlanAndSendFunctions; + mintTo: (input: MintToInput) => ReturnType & SelfPlanAndSendFunctions; + burn: (input: BurnInput) => ReturnType & SelfPlanAndSendFunctions; + closeAccount: ( + input: CloseAccountInput, + ) => ReturnType & SelfPlanAndSendFunctions; + freezeAccount: ( + input: FreezeAccountInput, + ) => ReturnType & SelfPlanAndSendFunctions; + thawAccount: (input: ThawAccountInput) => ReturnType & SelfPlanAndSendFunctions; + transferChecked: ( + input: TransferCheckedInput, + ) => ReturnType & SelfPlanAndSendFunctions; + approveChecked: ( + input: ApproveCheckedInput, + ) => ReturnType & SelfPlanAndSendFunctions; + mintToChecked: ( + input: MintToCheckedInput, + ) => ReturnType & SelfPlanAndSendFunctions; + burnChecked: (input: BurnCheckedInput) => ReturnType & SelfPlanAndSendFunctions; + initializeAccount2: ( + input: InitializeAccount2Input, + ) => ReturnType & SelfPlanAndSendFunctions; + syncNative: (input: SyncNativeInput) => ReturnType & SelfPlanAndSendFunctions; + initializeAccount3: ( + input: InitializeAccount3Input, + ) => ReturnType & SelfPlanAndSendFunctions; + initializeMultisig2: ( + input: InitializeMultisig2Input, + ) => ReturnType & SelfPlanAndSendFunctions; + initializeMint2: ( + input: InitializeMint2Input, + ) => ReturnType & SelfPlanAndSendFunctions; + getAccountDataSize: ( + input: GetAccountDataSizeInput, + ) => ReturnType & SelfPlanAndSendFunctions; + initializeImmutableOwner: ( + input: InitializeImmutableOwnerInput, + ) => ReturnType & SelfPlanAndSendFunctions; + amountToUiAmount: ( + input: AmountToUiAmountInput, + ) => ReturnType & SelfPlanAndSendFunctions; + uiAmountToAmount: ( + input: UiAmountToAmountInput, + ) => ReturnType & SelfPlanAndSendFunctions; +}; + +export type TokenPluginRequirements = ClientWithRpc & + ClientWithTransactionPlanning & + ClientWithTransactionSending; + +export function tokenProgram() { + return (client: T) => { + return { + ...client, + token: { + accounts: { + mint: addSelfFetchFunctions(client, getMintCodec()), + token: addSelfFetchFunctions(client, getTokenCodec()), + multisig: addSelfFetchFunctions(client, getMultisigCodec()), + }, + instructions: { + initializeMint: input => addSelfPlanAndSendFunctions(client, getInitializeMintInstruction(input)), + initializeAccount: input => + addSelfPlanAndSendFunctions(client, getInitializeAccountInstruction(input)), + initializeMultisig: input => + addSelfPlanAndSendFunctions(client, getInitializeMultisigInstruction(input)), + transfer: input => addSelfPlanAndSendFunctions(client, getTransferInstruction(input)), + approve: input => addSelfPlanAndSendFunctions(client, getApproveInstruction(input)), + revoke: input => addSelfPlanAndSendFunctions(client, getRevokeInstruction(input)), + setAuthority: input => addSelfPlanAndSendFunctions(client, getSetAuthorityInstruction(input)), + mintTo: input => addSelfPlanAndSendFunctions(client, getMintToInstruction(input)), + burn: input => addSelfPlanAndSendFunctions(client, getBurnInstruction(input)), + closeAccount: input => addSelfPlanAndSendFunctions(client, getCloseAccountInstruction(input)), + freezeAccount: input => addSelfPlanAndSendFunctions(client, getFreezeAccountInstruction(input)), + thawAccount: input => addSelfPlanAndSendFunctions(client, getThawAccountInstruction(input)), + transferChecked: input => addSelfPlanAndSendFunctions(client, getTransferCheckedInstruction(input)), + approveChecked: input => addSelfPlanAndSendFunctions(client, getApproveCheckedInstruction(input)), + mintToChecked: input => addSelfPlanAndSendFunctions(client, getMintToCheckedInstruction(input)), + burnChecked: input => addSelfPlanAndSendFunctions(client, getBurnCheckedInstruction(input)), + initializeAccount2: input => + addSelfPlanAndSendFunctions(client, getInitializeAccount2Instruction(input)), + syncNative: input => addSelfPlanAndSendFunctions(client, getSyncNativeInstruction(input)), + initializeAccount3: input => + addSelfPlanAndSendFunctions(client, getInitializeAccount3Instruction(input)), + initializeMultisig2: input => + addSelfPlanAndSendFunctions(client, getInitializeMultisig2Instruction(input)), + initializeMint2: input => addSelfPlanAndSendFunctions(client, getInitializeMint2Instruction(input)), + getAccountDataSize: input => + addSelfPlanAndSendFunctions(client, getGetAccountDataSizeInstruction(input)), + initializeImmutableOwner: input => + addSelfPlanAndSendFunctions(client, getInitializeImmutableOwnerInstruction(input)), + amountToUiAmount: input => + addSelfPlanAndSendFunctions(client, getAmountToUiAmountInstruction(input)), + uiAmountToAmount: input => + addSelfPlanAndSendFunctions(client, getUiAmountToAmountInstruction(input)), + }, + }, + }; + }; +} diff --git a/clients/js/src/generated/shared/index.ts b/clients/js/src/generated/shared/index.ts deleted file mode 100644 index 7380d8c7..00000000 --- a/clients/js/src/generated/shared/index.ts +++ /dev/null @@ -1,125 +0,0 @@ -/** - * This code was AUTOGENERATED using the Codama library. - * Please DO NOT EDIT THIS FILE, instead use visitors - * to add features, then rerun Codama to update it. - * - * @see https://github.com/codama-idl/codama - */ - -import { - AccountRole, - isProgramDerivedAddress, - isTransactionSigner as kitIsTransactionSigner, - type AccountMeta, - type AccountSignerMeta, - type Address, - type ProgramDerivedAddress, - type TransactionSigner, - upgradeRoleToSigner, -} from '@solana/kit'; - -/** - * Asserts that the given value is not null or undefined. - * @internal - */ -export function expectSome(value: T | null | undefined): T { - if (value === null || value === undefined) { - throw new Error('Expected a value but received null or undefined.'); - } - return value; -} - -/** - * Asserts that the given value is a PublicKey. - * @internal - */ -export function expectAddress( - value: Address | ProgramDerivedAddress | TransactionSigner | null | undefined, -): Address { - if (!value) { - throw new Error('Expected a Address.'); - } - if (typeof value === 'object' && 'address' in value) { - return value.address; - } - if (Array.isArray(value)) { - return value[0] as Address; - } - return value as Address; -} - -/** - * Asserts that the given value is a PDA. - * @internal - */ -export function expectProgramDerivedAddress( - value: Address | ProgramDerivedAddress | TransactionSigner | null | undefined, -): ProgramDerivedAddress { - if (!value || !Array.isArray(value) || !isProgramDerivedAddress(value)) { - throw new Error('Expected a ProgramDerivedAddress.'); - } - return value; -} - -/** - * Asserts that the given value is a TransactionSigner. - * @internal - */ -export function expectTransactionSigner( - value: Address | ProgramDerivedAddress | TransactionSigner | null | undefined, -): TransactionSigner { - if (!value || !isTransactionSigner(value)) { - throw new Error('Expected a TransactionSigner.'); - } - return value; -} - -/** - * Defines an instruction account to resolve. - * @internal - */ -export type ResolvedAccount< - T extends string = string, - U extends Address | ProgramDerivedAddress | TransactionSigner | null = - | Address - | ProgramDerivedAddress - | TransactionSigner - | null, -> = { - isWritable: boolean; - value: U; -}; - -/** - * Defines an instruction that stores additional bytes on-chain. - * @internal - */ -export type InstructionWithByteDelta = { - byteDelta: number; -}; - -/** - * Get account metas and signers from resolved accounts. - * @internal - */ -export function getAccountMetaFactory(programAddress: Address, optionalAccountStrategy: 'omitted' | 'programId') { - return (account: ResolvedAccount): AccountMeta | AccountSignerMeta | undefined => { - if (!account.value) { - if (optionalAccountStrategy === 'omitted') return; - return Object.freeze({ address: programAddress, role: AccountRole.READONLY }); - } - - const writableRole = account.isWritable ? AccountRole.WRITABLE : AccountRole.READONLY; - return Object.freeze({ - address: expectAddress(account.value), - role: isTransactionSigner(account.value) ? upgradeRoleToSigner(writableRole) : writableRole, - ...(isTransactionSigner(account.value) ? { signer: account.value } : {}), - }); - }; -} - -export function isTransactionSigner( - value: Address | ProgramDerivedAddress | TransactionSigner, -): value is TransactionSigner { - return !!value && typeof value === 'object' && 'address' in value && kitIsTransactionSigner(value); -} diff --git a/clients/js/src/index.ts b/clients/js/src/index.ts index a43829e2..1ea578b5 100644 --- a/clients/js/src/index.ts +++ b/clients/js/src/index.ts @@ -1,4 +1,6 @@ export * from './generated'; +export { tokenProgram, type TokenPlugin, type TokenPluginInstructions, type TokenPluginRequirements } from './plugin'; + export * from './createMint'; export * from './mintToATA'; export * from './transferToATA'; diff --git a/clients/js/src/mintToATA.ts b/clients/js/src/mintToATA.ts index 03adf65b..632b0012 100644 --- a/clients/js/src/mintToATA.ts +++ b/clients/js/src/mintToATA.ts @@ -6,7 +6,7 @@ import { TOKEN_PROGRAM_ADDRESS, } from './generated'; -type MintToATAInstructionPlanInput = { +export type MintToATAInstructionPlanInput = { /** Funding account (must be a system account). */ payer: TransactionSigner; /** Associated token account address to mint to. diff --git a/clients/js/src/plugin.ts b/clients/js/src/plugin.ts new file mode 100644 index 00000000..d01fd51e --- /dev/null +++ b/clients/js/src/plugin.ts @@ -0,0 +1,59 @@ +import { ClientWithPayer, pipe } from '@solana/kit'; +import { addSelfPlanAndSendFunctions, SelfPlanAndSendFunctions } from '@solana/kit/program-client-core'; + +import { CreateMintInstructionPlanInput, getCreateMintInstructionPlan } from './createMint'; +import { + TokenPlugin as GeneratedTokenPlugin, + TokenPluginInstructions as GeneratedTokenPluginInstructions, + TokenPluginRequirements as GeneratedTokenPluginRequirements, + tokenProgram as generatedTokenProgram, +} from './generated'; +import { getMintToATAInstructionPlan, MintToATAInstructionPlanInput } from './mintToATA'; +import { getTransferToATAInstructionPlan, TransferToATAInstructionPlanInput } from './transferToATA'; + +export type TokenPluginRequirements = GeneratedTokenPluginRequirements & ClientWithPayer; + +export type TokenPlugin = Omit & { instructions: TokenPluginInstructions }; + +export type TokenPluginInstructions = GeneratedTokenPluginInstructions & { + createMint: ( + input: MakeOptional, + ) => ReturnType & SelfPlanAndSendFunctions; + mintToATA: ( + input: MakeOptional, + ) => ReturnType & SelfPlanAndSendFunctions; + transferToATA: ( + input: MakeOptional, + ) => ReturnType & SelfPlanAndSendFunctions; +}; + +export function tokenProgram() { + return (client: T) => { + return pipe(client, generatedTokenProgram(), c => ({ + ...c, + token: { + ...c.token, + instructions: { + ...c.token.instructions, + createMint: input => + addSelfPlanAndSendFunctions( + client, + getCreateMintInstructionPlan({ ...input, payer: input.payer ?? client.payer }), + ), + mintToATA: input => + addSelfPlanAndSendFunctions( + client, + getMintToATAInstructionPlan({ ...input, payer: input.payer ?? client.payer }), + ), + transferToATA: input => + addSelfPlanAndSendFunctions( + client, + getTransferToATAInstructionPlan({ ...input, payer: input.payer ?? client.payer }), + ), + }, + }, + })); + }; +} + +type MakeOptional = Omit & Partial>; diff --git a/clients/js/src/transferToATA.ts b/clients/js/src/transferToATA.ts index b904c8cf..243db2bc 100644 --- a/clients/js/src/transferToATA.ts +++ b/clients/js/src/transferToATA.ts @@ -6,7 +6,7 @@ import { TOKEN_PROGRAM_ADDRESS, } from './generated'; -type TransferToATAInstructionPlanInput = { +export type TransferToATAInstructionPlanInput = { /** Funding account (must be a system account). */ payer: TransactionSigner; /** The token mint to transfer. */ diff --git a/clients/js/test/createMint.test.ts b/clients/js/test/createMint.test.ts index 0152044d..ed410219 100644 --- a/clients/js/test/createMint.test.ts +++ b/clients/js/test/createMint.test.ts @@ -1,7 +1,8 @@ -import { generateKeyPairSigner, Account, some, none } from '@solana/kit'; +import { Account, generateKeyPairSigner, none, some } from '@solana/kit'; +import { createDefaultLocalhostRpcClient } from '@solana/kit-plugins'; import test from 'ava'; -import { fetchMint, Mint, getCreateMintInstructionPlan } from '../src'; -import { createDefaultSolanaClient, generateKeyPairSignerWithSol, createDefaultTransactionPlanner } from './_setup'; +import { fetchMint, getCreateMintInstructionPlan, Mint, tokenProgram } from '../src'; +import { createDefaultSolanaClient, createDefaultTransactionPlanner, generateKeyPairSignerWithSol } from './_setup'; test('it creates and initializes a new mint account', async t => { // Given an authority and a mint account. @@ -68,3 +69,27 @@ test('it creates a new mint account with a freeze authority', async t => { }, }); }); + +test('it creates and initializes a new mint account using the token program plugin', async t => { + // Given a client with the token program plugin, and a mint account. + const client = await createDefaultLocalhostRpcClient().use(tokenProgram()); + const mint = await generateKeyPairSigner(); + + // When we send the "create mint" instruction plan. + await client.token.instructions + .createMint({ newMint: mint, decimals: 2, mintAuthority: client.payer.address }) + .sendTransaction(); + + // Then we expect the mint account to exist and have the following data. + const mintAccount = await client.token.accounts.mint.fetch(mint.address); + t.like(mintAccount, { + address: mint.address, + data: { + mintAuthority: some(client.payer.address), + supply: 0n, + decimals: 2, + isInitialized: true, + freezeAuthority: none(), + }, + }); +}); diff --git a/clients/js/tsconfig.json b/clients/js/tsconfig.json index 1bc202af..de75bed5 100644 --- a/clients/js/tsconfig.json +++ b/clients/js/tsconfig.json @@ -9,7 +9,7 @@ "inlineSources": false, "isolatedModules": true, "module": "ESNext", - "moduleResolution": "node", + "moduleResolution": "bundler", "noFallthroughCasesInSwitch": true, "noUnusedLocals": true, "noUnusedParameters": true, diff --git a/codama.json b/codama.json index 5aeea2cf..132160dd 100644 --- a/codama.json +++ b/codama.json @@ -4,13 +4,7 @@ "scripts": { "js": { "from": "@codama/renderers-js", - "args": [ - "clients/js/src/generated", - { - "packageFolder": "clients/js", - "syncPackageJson": true - } - ] + "args": ["clients/js", { "kitImportStrategy": "rootOnly" }] } } } diff --git a/package.json b/package.json index 0a7f4238..40005eff 100644 --- a/package.json +++ b/package.json @@ -38,11 +38,10 @@ "interface:test": "zx ./scripts/rust/test.mjs interface" }, "devDependencies": { - "@codama/renderers-js": "^1.7", - "@codama/renderers-rust": "~1.0", + "@codama/renderers-js": "^2.0.2", "@iarna/toml": "^2.2.5", "@solana/prettier-config-solana": "0.0.6", - "codama": "^1.5", + "codama": "^1.5.0", "typescript": "^5.9.3", "zx": "^7.2.3" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ea02b5cb..06940546 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,11 +9,8 @@ importers: .: devDependencies: '@codama/renderers-js': - specifier: ^1.7 - version: 1.7.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - '@codama/renderers-rust': - specifier: ~1.0 - version: 1.0.16(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) + specifier: ^2.0.2 + version: 2.0.2(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) '@iarna/toml': specifier: ^2.2.5 version: 2.2.5 @@ -21,7 +18,7 @@ importers: specifier: 0.0.6 version: 0.0.6(prettier@3.8.1) codama: - specifier: ^1.5 + specifier: ^1.5.0 version: 1.5.0 typescript: specifier: ^5.9.3 @@ -36,45 +33,26 @@ packages: resolution: {integrity: sha512-0uLecW/RZC2c1wx3j/eiRAYvilvNY+2DoyEYu/hV0OfM1/uIgIyuy5U+wolV+LY4wLFYdApjYdy+5D32lngCHg==} hasBin: true - '@codama/errors@1.2.8': - resolution: {integrity: sha512-TVPf7oJpbHtxdu52ruftJX+DlTNWi7D65tasysqs7mfRKoiZKzmkatr5hqidBz/M9WzCddUeFAHL9ZiW6g9Ccg==} - hasBin: true - '@codama/errors@1.5.0': resolution: {integrity: sha512-i4cS+S7JaZXhofQHFY3cwzt8rqxUVPNaeJND5VOyKUbtcOi933YXJXk52gDG4mc+CpGqHJijsJjfSpr1lJGxzg==} hasBin: true - '@codama/node-types@1.2.8': - resolution: {integrity: sha512-PEvPLMN3QGJvkwsQ7R9DmAtdazQXN0RD9WYlmHyeiR4nathV0qy9nZGFDoRh5nbNfPkbeLTgL5o3zAoeeRP6GQ==} - '@codama/node-types@1.5.0': resolution: {integrity: sha512-Ebz2vOUukmNaFXWdkni1ZihXkAIUnPYtqIMXYxKXOxjMP+TGz2q0lGtRo7sqw1pc2ksFBIkfBp5pZsl5p6gwXA==} - '@codama/nodes@1.2.8': - resolution: {integrity: sha512-tCi7KErG2ChQr5n3Nj3dwciFmUo3O8RQ+S4Qv23w1zvYLaGwhEvdg3KRtgCGEI0wr9uvm2QtTBM670kdLntZiQ==} - '@codama/nodes@1.5.0': resolution: {integrity: sha512-yg+xmorWiMNjS3n19CGIt/FZ/ZCuDIu+HEY45bq6gHu1MN3RtJZY+Q3v0ErnBPA60D8mNWkvkKoeSZXfzcAvfw==} - '@codama/renderers-core@1.0.10': - resolution: {integrity: sha512-7NwoyP2j1cZKgHCrd1RRn891gtxpZeiXNSP3aCFdVsRPW8dDNUL1sJ1SNOF9ILHfNP77clCBtL3eoZIFdeNQAg==} - '@codama/renderers-core@1.3.5': resolution: {integrity: sha512-MuZLU+3LZPQb1HuZffwZl+v5JHQDe5LYHGhA1wTMNlwRedYIysSxBjogHNciNIHsKP3JjmqyYmLO5LCEp3hjaQ==} - '@codama/renderers-js@1.7.0': - resolution: {integrity: sha512-WwKkSkNPdUBVWjGmkG+RNXyZ5K/4ji8UZQGzowDNTrqktUrqPsBThOkc7Zpmv+TpCapxrfjj0Txpo+0q5FjKGw==} + '@codama/renderers-js@2.0.2': + resolution: {integrity: sha512-5gEDCgfqqUnc/uTAphj06+tU6n2fVZH439ih7H1yAF8WM+ftHB7Ph0rMb63J7/d+HRRZhdEet0Cngs1CZI6GHA==} engines: {node: '>=20.18.0'} - '@codama/renderers-rust@1.0.16': - resolution: {integrity: sha512-pFHwHN6X4Yuk26Yfh+VT9Ps1i/QEjuK3EoT8BpsCTATOk6ntJNqyD5aQngG2lE4KWx3uQrCYYbQEAN4vG6v+EA==} - '@codama/validators@1.5.0': resolution: {integrity: sha512-p3ufDxnCH1jiuHGzcBv4/d+ctzUcKD2K3gX/W8169tC41o9DggjlEpNy1Z6YAAhVb3wHnmXVGA2qmp32rWSfWw==} - '@codama/visitors-core@1.2.8': - resolution: {integrity: sha512-sYmZT2Z6Goacgr/HrAhjLSGtu2Udcal10tEfYN8ZJBXs34PGPu0oWOC8kFx7CxvmAvt/6mw8NhKIPtg/UaIKHw==} - '@codama/visitors-core@1.5.0': resolution: {integrity: sha512-3PIAlBX0a06hIxzyPtQMfQcqWGFBgfbwysSwcXBbvHUYbemwhD6xwlBKJuqTwm9DyFj3faStp5fpvcp03Rjxtw==} @@ -96,12 +74,6 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} - '@solana/codecs-core@2.0.0-rc.4': - resolution: {integrity: sha512-JIrTSps032mSE3wBxW3bXOqWfoy4CMy1CX/XeVCijyh5kLVxZTSDIdRTYdePdL1yzaOZF1Xysvt1DhOUgBdM+A==} - engines: {node: '>=20.18.0'} - peerDependencies: - typescript: '>=5' - '@solana/codecs-core@6.0.1': resolution: {integrity: sha512-OnUQk94qfvfE0nVveZ638aNUL3tyRJoorUFiAG0ICTGUo3c6fkYb8vH23o/5O2qmuSmYND1sn+UCaldNMVkFpg==} engines: {node: '>=20.18.0'} @@ -111,12 +83,6 @@ packages: typescript: optional: true - '@solana/codecs-numbers@2.0.0-rc.4': - resolution: {integrity: sha512-ZJR7TaUO65+3Hzo3YOOUCS0wlzh17IW+j0MZC2LCk1R0woaypRpHKj4iSMYeQOZkMxsd9QT3WNvjFrPC2qA6Sw==} - engines: {node: '>=20.18.0'} - peerDependencies: - typescript: '>=5' - '@solana/codecs-numbers@6.0.1': resolution: {integrity: sha512-ZrI1NjUsf4I+Klue/2rlQbZLcGRom/G2E4VB/8x4IEHGOeFLQhXcxmnib8kdgomQRYOzF1BjVDmCYxvZr+6AWA==} engines: {node: '>=20.18.0'} @@ -126,13 +92,6 @@ packages: typescript: optional: true - '@solana/codecs-strings@2.0.0-rc.4': - resolution: {integrity: sha512-LGfK2RL0BKjYYUfzu2FG/gTgCsYOMz9FKVs2ntji6WneZygPxJTV5W98K3J8Rl0JewpCSCFQH3xjLSHBJUS0fA==} - engines: {node: '>=20.18.0'} - peerDependencies: - fastestsmallesttextencoderdecoder: ^1.0.22 - typescript: '>=5' - '@solana/codecs-strings@6.0.1': resolution: {integrity: sha512-OmMIfMFbbJVIxveBeATKCj9DsmZ8l4vJPnOLHUop0hLWRiYHTQ1qokMqfk/X8PCmUjXmbXnlp63BikGtdKN3/g==} engines: {node: '>=20.18.0'} @@ -145,13 +104,6 @@ packages: typescript: optional: true - '@solana/errors@2.0.0-rc.4': - resolution: {integrity: sha512-0PPaMyB81keEHG/1pnyEuiBVKctbXO641M2w3CIOrYT/wzjunfF0FTxsqq9wYJeYo0AyiefCKGgSPs6wiY2PpQ==} - engines: {node: '>=20.18.0'} - hasBin: true - peerDependencies: - typescript: '>=5' - '@solana/errors@6.0.1': resolution: {integrity: sha512-sMe5GCsXto8F1KDeq9GbZR0+m841SqEYep3NAcYlC0lqF2RG4giaaPQHgrWI5DJR/L7yc8FzUIQfTxnaN7bwOQ==} engines: {node: '>=20.18.0'} @@ -185,12 +137,6 @@ packages: '@types/which@3.0.3': resolution: {integrity: sha512-2C1+XoY0huExTbs8MQv1DuS5FS86+SEjdM9F/+GS61gg5Hqbtj8ZiDSx8MfWcyei907fIPbfPGCOrNUTnVHY1g==} - a-sync-waterfall@1.0.1: - resolution: {integrity: sha512-RYTOHHdWipFUliRFMCS4X2Yn2X8M87V/OpSqWzKKOGhzqyUxzyVmhHDH9sAvG+ZuQf/TAOFsLCpMw09I1ufUnA==} - - asap@2.0.6: - resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} - braces@3.0.2: resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} engines: {node: '>=8'} @@ -219,22 +165,10 @@ packages: resolution: {integrity: sha512-hhfSzrOiDX3bV7QmJneEBsBk3ln4gIcMJs6P8BlEJ3EFI+P0QZaTT5W61o8Tq0/79hTZeyj0gP65HZ/LYJil+w==} hasBin: true - commander@12.1.0: - resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} - engines: {node: '>=18'} - - commander@13.1.0: - resolution: {integrity: sha512-/rFeCpNJQbhSZjGVwO9RFV3xPqbnERS8MmIQzCtD/zl6gpJuV/bMLuN92oG3F7d8oDEHHRrujSXNUr8fpjntKw==} - engines: {node: '>=18'} - commander@14.0.3: resolution: {integrity: sha512-H+y0Jo/T1RZ9qPP4Eh1pkcQcLRglraJaSLoyOtHxu6AapkjWVCy2Sit1QQ4x3Dng8qDlSsZEet7g5Pq06MvTgw==} engines: {node: '>=20'} - commander@5.1.0: - resolution: {integrity: sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==} - engines: {node: '>= 6'} - data-uri-to-buffer@4.0.1: resolution: {integrity: sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==} engines: {node: '>= 12'} @@ -401,16 +335,6 @@ packages: resolution: {integrity: sha512-cRVc/kyto/7E5shrWca1Wsea4y6tL9iYJE5FBCius3JQfb/4P4I295PfhgbJQBLTx6lATE4z+wK0rPM4VS2uow==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - nunjucks@3.2.4: - resolution: {integrity: sha512-26XRV6BhkgK0VOxfbU5cQI+ICFUtMLixv1noZn1tGU38kQH5A5nmmbk/O45xdyBhD1esk47nKrY0mvQpZIhRjQ==} - engines: {node: '>= 6.9.0'} - hasBin: true - peerDependencies: - chokidar: ^3.3.0 - peerDependenciesMeta: - chokidar: - optional: true - object-keys@1.1.1: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} engines: {node: '>= 0.4'} @@ -528,45 +452,26 @@ snapshots: picocolors: 1.1.1 prompts: 2.4.2 - '@codama/errors@1.2.8': - dependencies: - '@codama/node-types': 1.2.8 - chalk: 5.6.2 - commander: 13.1.0 - '@codama/errors@1.5.0': dependencies: '@codama/node-types': 1.5.0 commander: 14.0.3 picocolors: 1.1.1 - '@codama/node-types@1.2.8': {} - '@codama/node-types@1.5.0': {} - '@codama/nodes@1.2.8': - dependencies: - '@codama/errors': 1.2.8 - '@codama/node-types': 1.2.8 - '@codama/nodes@1.5.0': dependencies: '@codama/errors': 1.5.0 '@codama/node-types': 1.5.0 - '@codama/renderers-core@1.0.10': - dependencies: - '@codama/errors': 1.2.8 - '@codama/nodes': 1.2.8 - '@codama/visitors-core': 1.2.8 - '@codama/renderers-core@1.3.5': dependencies: '@codama/errors': 1.5.0 '@codama/nodes': 1.5.0 '@codama/visitors-core': 1.5.0 - '@codama/renderers-js@1.7.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': + '@codama/renderers-js@2.0.2(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': dependencies: '@codama/errors': 1.5.0 '@codama/nodes': 1.5.0 @@ -579,31 +484,12 @@ snapshots: - fastestsmallesttextencoderdecoder - typescript - '@codama/renderers-rust@1.0.16(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': - dependencies: - '@codama/errors': 1.2.8 - '@codama/nodes': 1.2.8 - '@codama/renderers-core': 1.0.10 - '@codama/visitors-core': 1.2.8 - '@solana/codecs-strings': 2.0.0-rc.4(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3) - nunjucks: 3.2.4 - transitivePeerDependencies: - - chokidar - - fastestsmallesttextencoderdecoder - - typescript - '@codama/validators@1.5.0': dependencies: '@codama/errors': 1.5.0 '@codama/nodes': 1.5.0 '@codama/visitors-core': 1.5.0 - '@codama/visitors-core@1.2.8': - dependencies: - '@codama/errors': 1.2.8 - '@codama/nodes': 1.2.8 - json-stable-stringify: 1.3.0 - '@codama/visitors-core@1.5.0': dependencies: '@codama/errors': 1.5.0 @@ -630,23 +516,12 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.17.1 - '@solana/codecs-core@2.0.0-rc.4(typescript@5.9.3)': - dependencies: - '@solana/errors': 2.0.0-rc.4(typescript@5.9.3) - typescript: 5.9.3 - '@solana/codecs-core@6.0.1(typescript@5.9.3)': dependencies: '@solana/errors': 6.0.1(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 - '@solana/codecs-numbers@2.0.0-rc.4(typescript@5.9.3)': - dependencies: - '@solana/codecs-core': 2.0.0-rc.4(typescript@5.9.3) - '@solana/errors': 2.0.0-rc.4(typescript@5.9.3) - typescript: 5.9.3 - '@solana/codecs-numbers@6.0.1(typescript@5.9.3)': dependencies: '@solana/codecs-core': 6.0.1(typescript@5.9.3) @@ -654,14 +529,6 @@ snapshots: optionalDependencies: typescript: 5.9.3 - '@solana/codecs-strings@2.0.0-rc.4(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': - dependencies: - '@solana/codecs-core': 2.0.0-rc.4(typescript@5.9.3) - '@solana/codecs-numbers': 2.0.0-rc.4(typescript@5.9.3) - '@solana/errors': 2.0.0-rc.4(typescript@5.9.3) - fastestsmallesttextencoderdecoder: 1.0.22 - typescript: 5.9.3 - '@solana/codecs-strings@6.0.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)': dependencies: '@solana/codecs-core': 6.0.1(typescript@5.9.3) @@ -671,12 +538,6 @@ snapshots: fastestsmallesttextencoderdecoder: 1.0.22 typescript: 5.9.3 - '@solana/errors@2.0.0-rc.4(typescript@5.9.3)': - dependencies: - chalk: 5.6.2 - commander: 12.1.0 - typescript: 5.9.3 - '@solana/errors@6.0.1(typescript@5.9.3)': dependencies: chalk: 5.6.2 @@ -707,10 +568,6 @@ snapshots: '@types/which@3.0.3': {} - a-sync-waterfall@1.0.1: {} - - asap@2.0.6: {} - braces@3.0.2: dependencies: fill-range: 7.0.1 @@ -744,14 +601,8 @@ snapshots: '@codama/validators': 1.5.0 '@codama/visitors': 1.5.0 - commander@12.1.0: {} - - commander@13.1.0: {} - commander@14.0.3: {} - commander@5.1.0: {} - data-uri-to-buffer@4.0.1: {} define-data-property@1.1.4: @@ -798,7 +649,8 @@ snapshots: merge2: 1.4.1 micromatch: 4.0.5 - fastestsmallesttextencoderdecoder@1.0.22: {} + fastestsmallesttextencoderdecoder@1.0.22: + optional: true fastq@1.17.1: dependencies: @@ -926,12 +778,6 @@ snapshots: fetch-blob: 3.2.0 formdata-polyfill: 4.0.10 - nunjucks@3.2.4: - dependencies: - a-sync-waterfall: 1.0.1 - asap: 2.0.6 - commander: 5.1.0 - object-keys@1.1.1: {} path-type@4.0.0: {}