@bitgo-beta/sdk-coin-sol 7.6.4-beta.62 → 7.6.4-beta.621
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/src/bigint-buffer-guard.d.ts.map +1 -0
- package/dist/cjs/src/bigint-buffer-guard.js +29 -0
- package/dist/cjs/src/index.d.ts.map +1 -0
- package/dist/{src → cjs/src}/index.js +1 -1
- package/dist/cjs/src/lib/ataInitializationBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/ataInitializationBuilder.js +201 -0
- package/dist/cjs/src/lib/closeAtaBuilder.d.ts +51 -0
- package/dist/cjs/src/lib/closeAtaBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/closeAtaBuilder.js +147 -0
- package/dist/{src → cjs/src}/lib/constants.d.ts +45 -2
- package/dist/cjs/src/lib/constants.d.ts.map +1 -0
- package/dist/cjs/src/lib/constants.js +216 -0
- package/dist/cjs/src/lib/customInstructionBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/customInstructionBuilder.js +289 -0
- package/dist/cjs/src/lib/explainTransactionWasm.d.ts +21 -0
- package/dist/cjs/src/lib/explainTransactionWasm.d.ts.map +1 -0
- package/dist/cjs/src/lib/explainTransactionWasm.js +264 -0
- package/dist/{src → cjs/src}/lib/iface.d.ts +79 -2
- package/dist/cjs/src/lib/iface.d.ts.map +1 -0
- package/dist/cjs/src/lib/iface.js +7 -0
- package/dist/{src → cjs/src}/lib/index.d.ts +3 -0
- package/dist/cjs/src/lib/index.d.ts.map +1 -0
- package/dist/cjs/src/lib/index.js +89 -0
- package/dist/{src → cjs/src}/lib/instructionParamsFactory.d.ts +3 -1
- package/dist/cjs/src/lib/instructionParamsFactory.d.ts.map +1 -0
- package/dist/cjs/src/lib/instructionParamsFactory.js +1122 -0
- package/dist/cjs/src/lib/jitoStakePoolOperations.d.ts.map +1 -0
- package/dist/cjs/src/lib/jitoStakePoolOperations.js +200 -0
- package/dist/cjs/src/lib/keyPair.d.ts.map +1 -0
- package/dist/cjs/src/lib/keyPair.js +63 -0
- package/dist/cjs/src/lib/messages/index.d.ts.map +1 -0
- package/dist/{src → cjs/src}/lib/messages/index.js +1 -1
- package/dist/cjs/src/lib/messages/messageBuilderFactory.d.ts.map +1 -0
- package/dist/cjs/src/lib/messages/messageBuilderFactory.js +19 -0
- package/dist/cjs/src/lib/recoverNestedAtaBuilder.d.ts +25 -0
- package/dist/cjs/src/lib/recoverNestedAtaBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/recoverNestedAtaBuilder.js +90 -0
- package/dist/cjs/src/lib/solInstructionFactory.d.ts.map +1 -0
- package/dist/cjs/src/lib/solInstructionFactory.js +649 -0
- package/dist/cjs/src/lib/stakingActivateBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/stakingActivateBuilder.js +120 -0
- package/dist/cjs/src/lib/stakingAuthorizeBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/stakingAuthorizeBuilder.js +89 -0
- package/dist/cjs/src/lib/stakingDeactivateBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/stakingDeactivateBuilder.js +208 -0
- package/dist/cjs/src/lib/stakingDelegateBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/stakingDelegateBuilder.js +120 -0
- package/dist/cjs/src/lib/stakingRawMsgAuthorizeBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/stakingRawMsgAuthorizeBuilder.js +110 -0
- package/dist/cjs/src/lib/stakingWithdrawBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/stakingWithdrawBuilder.js +78 -0
- package/dist/cjs/src/lib/token2022Resolve.d.ts +106 -0
- package/dist/cjs/src/lib/token2022Resolve.d.ts.map +1 -0
- package/dist/cjs/src/lib/token2022Resolve.js +199 -0
- package/dist/cjs/src/lib/tokenExtensions.d.ts +31 -0
- package/dist/cjs/src/lib/tokenExtensions.d.ts.map +1 -0
- package/dist/cjs/src/lib/tokenExtensions.js +112 -0
- package/dist/{src → cjs/src}/lib/tokenTransferBuilder.d.ts +27 -1
- package/dist/cjs/src/lib/tokenTransferBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/tokenTransferBuilder.js +237 -0
- package/dist/cjs/src/lib/transaction.d.ts.map +1 -0
- package/dist/cjs/src/lib/transaction.js +612 -0
- package/dist/cjs/src/lib/transactionBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/transactionBuilder.js +380 -0
- package/dist/{src → cjs/src}/lib/transactionBuilderFactory.d.ts +5 -0
- package/dist/cjs/src/lib/transactionBuilderFactory.d.ts.map +1 -0
- package/dist/cjs/src/lib/transactionBuilderFactory.js +209 -0
- package/dist/cjs/src/lib/transferBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/transferBuilder.js +70 -0
- package/dist/cjs/src/lib/transferBuilderV2.d.ts +69 -0
- package/dist/cjs/src/lib/transferBuilderV2.d.ts.map +1 -0
- package/dist/cjs/src/lib/transferBuilderV2.js +254 -0
- package/dist/{src → cjs/src}/lib/utils.d.ts +5 -0
- package/dist/cjs/src/lib/utils.d.ts.map +1 -0
- package/dist/cjs/src/lib/utils.js +635 -0
- package/dist/cjs/src/lib/walletInitializationBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/walletInitializationBuilder.js +71 -0
- package/dist/cjs/src/register.d.ts +5 -0
- package/dist/cjs/src/register.d.ts.map +1 -0
- package/dist/cjs/src/register.js +29 -0
- package/dist/{src → cjs/src}/sol.d.ts +112 -3
- package/dist/cjs/src/sol.d.ts.map +1 -0
- package/dist/cjs/src/sol.js +1617 -0
- package/dist/{src → cjs/src}/solToken.d.ts +7 -0
- package/dist/cjs/src/solToken.d.ts.map +1 -0
- package/dist/cjs/src/solToken.js +79 -0
- package/dist/cjs/src/tsol.d.ts.map +1 -0
- package/dist/cjs/src/tsol.js +24 -0
- package/dist/{test → cjs/test}/fixtures/sol.d.ts.map +1 -1
- package/dist/cjs/test/fixtures/sol.js +1433 -0
- package/dist/{test → cjs/test}/resources/sol.d.ts +29 -29
- package/dist/cjs/test/resources/sol.d.ts.map +1 -0
- package/dist/cjs/test/resources/sol.js +320 -0
- package/dist/cjs/test/unit/explainTransactionWasm.d.ts +5 -0
- package/dist/cjs/test/unit/explainTransactionWasm.d.ts.map +1 -0
- package/dist/cjs/test/unit/explainTransactionWasm.js +26 -0
- package/dist/cjs/test/unit/fixtures/solBackupKey.d.ts.map +1 -0
- package/dist/cjs/test/unit/fixtures/solBackupKey.js +8 -0
- package/dist/cjs/test/unit/getBuilderFactory.d.ts.map +1 -0
- package/dist/cjs/test/unit/getBuilderFactory.js +10 -0
- package/dist/cjs/test/unit/instructionParamsFactory.d.ts.map +1 -0
- package/dist/cjs/test/unit/instructionParamsFactory.js +425 -0
- package/dist/cjs/test/unit/instructionParamsFactory.staking.d.ts.map +1 -0
- package/dist/cjs/test/unit/instructionParamsFactory.staking.js +1059 -0
- package/dist/cjs/test/unit/jitoWasmVerification.d.ts +2 -0
- package/dist/cjs/test/unit/jitoWasmVerification.d.ts.map +1 -0
- package/dist/cjs/test/unit/jitoWasmVerification.js +78 -0
- package/dist/{test → cjs/test}/unit/keyPair.d.ts.map +1 -1
- package/dist/cjs/test/unit/keyPair.js +177 -0
- package/dist/cjs/test/unit/messages/messageBuilderFactory.d.ts.map +1 -0
- package/dist/cjs/test/unit/messages/messageBuilderFactory.js +118 -0
- package/dist/cjs/test/unit/messages/simpleMessageBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/messages/simpleMessageBuilder.js +194 -0
- package/dist/cjs/test/unit/register.d.ts +2 -0
- package/dist/cjs/test/unit/register.d.ts.map +1 -0
- package/dist/cjs/test/unit/register.js +65 -0
- package/dist/{test → cjs/test}/unit/sol.d.ts.map +1 -1
- package/dist/cjs/test/unit/sol.js +4790 -0
- package/dist/cjs/test/unit/solInstructionFactory.d.ts.map +1 -0
- package/dist/cjs/test/unit/solInstructionFactory.js +611 -0
- package/dist/cjs/test/unit/solToken.d.ts.map +1 -0
- package/dist/cjs/test/unit/solToken.js +37 -0
- package/dist/cjs/test/unit/token2022Resolve.d.ts +2 -0
- package/dist/cjs/test/unit/token2022Resolve.d.ts.map +1 -0
- package/dist/cjs/test/unit/token2022Resolve.js +252 -0
- package/dist/cjs/test/unit/tokenExtensions.d.ts +2 -0
- package/dist/cjs/test/unit/tokenExtensions.d.ts.map +1 -0
- package/dist/cjs/test/unit/tokenExtensions.js +32 -0
- package/dist/cjs/test/unit/transaction.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction.js +1108 -0
- package/dist/cjs/test/unit/transactionBuilder/StakingWithdrawBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/StakingWithdrawBuilder.js +202 -0
- package/dist/cjs/test/unit/transactionBuilder/ataInitBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/ataInitBuilder.js +471 -0
- package/dist/cjs/test/unit/transactionBuilder/closeAtaBuilder.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/closeAtaBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/closeAtaBuilder.js +333 -0
- package/dist/cjs/test/unit/transactionBuilder/customInstructionBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/customInstructionBuilder.js +413 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingActivateBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingActivateBuilder.js +430 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingAuthorizeBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingAuthorizeBuilder.js +157 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingDeactivateBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingDeactivateBuilder.js +384 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingDelegateBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingDelegateBuilder.js +224 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.js +259 -0
- package/dist/cjs/test/unit/transactionBuilder/tokenTransferBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/tokenTransferBuilder.js +926 -0
- package/dist/cjs/test/unit/transactionBuilder/transactionBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/transactionBuilder.js +495 -0
- package/dist/cjs/test/unit/transactionBuilder/transferBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/transferBuilder.js +286 -0
- package/dist/cjs/test/unit/transactionBuilder/transferBuilderV2.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/transferBuilderV2.js +910 -0
- package/dist/cjs/test/unit/transactionBuilder/walletInitBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/walletInitBuilder.js +259 -0
- package/dist/{test → cjs/test}/unit/utils.d.ts.map +1 -1
- package/dist/cjs/test/unit/utils.js +557 -0
- package/dist/cjs/test/unit/versionedTransaction.d.ts.map +1 -0
- package/dist/cjs/test/unit/versionedTransaction.js +207 -0
- package/dist/cjs/tsconfig.tsbuildinfo +1 -0
- package/dist/esm/bigint-buffer-guard.d.ts +1 -0
- package/dist/esm/index.d.ts +7 -0
- package/dist/esm/index.js +7 -0
- package/dist/esm/lib/ataInitializationBuilder.d.ts +47 -0
- package/dist/{src → esm}/lib/ataInitializationBuilder.d.ts.map +1 -1
- package/dist/esm/lib/ataInitializationBuilder.js +161 -0
- package/dist/esm/lib/closeAtaBuilder.d.ts +51 -0
- package/dist/esm/lib/closeAtaBuilder.d.ts.map +1 -0
- package/dist/esm/lib/closeAtaBuilder.js +140 -0
- package/dist/esm/lib/constants.d.ts +183 -0
- package/dist/esm/lib/constants.d.ts.map +1 -0
- package/dist/esm/lib/constants.js +213 -0
- package/dist/esm/lib/customInstructionBuilder.d.ts +72 -0
- package/dist/esm/lib/customInstructionBuilder.js +282 -0
- package/dist/esm/lib/explainTransactionWasm.d.ts +21 -0
- package/dist/esm/lib/explainTransactionWasm.d.ts.map +1 -0
- package/dist/esm/lib/explainTransactionWasm.js +261 -0
- package/dist/esm/lib/iface.d.ts +321 -0
- package/dist/esm/lib/iface.d.ts.map +1 -0
- package/dist/esm/lib/iface.js +3 -0
- package/dist/esm/lib/index.d.ts +25 -0
- package/dist/{src → esm}/lib/index.d.ts.map +1 -1
- package/dist/esm/lib/index.js +25 -0
- package/dist/esm/lib/instructionParamsFactory.d.ts +14 -0
- package/dist/esm/lib/instructionParamsFactory.d.ts.map +1 -0
- package/dist/esm/lib/instructionParamsFactory.js +1114 -0
- package/dist/esm/lib/jitoStakePoolOperations.d.ts +113 -0
- package/dist/esm/lib/jitoStakePoolOperations.js +189 -0
- package/dist/esm/lib/keyPair.d.ts +26 -0
- package/dist/esm/lib/keyPair.js +59 -0
- package/dist/esm/lib/messages/index.d.ts +2 -0
- package/dist/esm/lib/messages/index.js +2 -0
- package/dist/esm/lib/messages/messageBuilderFactory.d.ts +7 -0
- package/dist/{src → esm}/lib/messages/messageBuilderFactory.js +5 -9
- package/dist/esm/lib/recoverNestedAtaBuilder.d.ts +25 -0
- package/dist/esm/lib/recoverNestedAtaBuilder.d.ts.map +1 -0
- package/dist/esm/lib/recoverNestedAtaBuilder.js +83 -0
- package/dist/esm/lib/solInstructionFactory.d.ts +10 -0
- package/dist/esm/lib/solInstructionFactory.d.ts.map +1 -0
- package/dist/esm/lib/solInstructionFactory.js +643 -0
- package/dist/esm/lib/stakingActivateBuilder.d.ts +59 -0
- package/dist/esm/lib/stakingActivateBuilder.js +113 -0
- package/dist/esm/lib/stakingAuthorizeBuilder.d.ts +43 -0
- package/dist/esm/lib/stakingAuthorizeBuilder.js +82 -0
- package/dist/esm/lib/stakingDeactivateBuilder.d.ts +81 -0
- package/dist/{src → esm}/lib/stakingDeactivateBuilder.js +31 -38
- package/dist/esm/lib/stakingDelegateBuilder.d.ts +42 -0
- package/dist/esm/lib/stakingDelegateBuilder.js +113 -0
- package/dist/esm/lib/stakingRawMsgAuthorizeBuilder.d.ts +33 -0
- package/dist/esm/lib/stakingRawMsgAuthorizeBuilder.js +103 -0
- package/dist/esm/lib/stakingWithdrawBuilder.d.ts +31 -0
- package/dist/esm/lib/stakingWithdrawBuilder.js +71 -0
- package/dist/esm/lib/token2022Resolve.d.ts +106 -0
- package/dist/esm/lib/token2022Resolve.d.ts.map +1 -0
- package/dist/esm/lib/token2022Resolve.js +194 -0
- package/dist/esm/lib/tokenExtensions.d.ts +31 -0
- package/dist/esm/lib/tokenExtensions.d.ts.map +1 -0
- package/dist/esm/lib/tokenExtensions.js +105 -0
- package/dist/esm/lib/tokenTransferBuilder.d.ts +67 -0
- package/dist/esm/lib/tokenTransferBuilder.d.ts.map +1 -0
- package/dist/esm/lib/tokenTransferBuilder.js +230 -0
- package/dist/esm/lib/transaction.d.ts +103 -0
- package/dist/esm/lib/transaction.d.ts.map +1 -0
- package/dist/esm/lib/transaction.js +605 -0
- package/dist/esm/lib/transactionBuilder.d.ts +128 -0
- package/dist/esm/lib/transactionBuilder.js +373 -0
- package/dist/esm/lib/transactionBuilderFactory.d.ts +120 -0
- package/dist/esm/lib/transactionBuilderFactory.d.ts.map +1 -0
- package/dist/esm/lib/transactionBuilderFactory.js +205 -0
- package/dist/esm/lib/transferBuilder.d.ts +26 -0
- package/dist/esm/lib/transferBuilder.js +63 -0
- package/dist/esm/lib/transferBuilderV2.d.ts +69 -0
- package/dist/esm/lib/transferBuilderV2.d.ts.map +1 -0
- package/dist/esm/lib/transferBuilderV2.js +247 -0
- package/dist/esm/lib/utils.d.ts +205 -0
- package/dist/{src → esm}/lib/utils.d.ts.map +1 -1
- package/dist/esm/lib/utils.js +597 -0
- package/dist/esm/lib/walletInitializationBuilder.d.ts +26 -0
- package/dist/esm/lib/walletInitializationBuilder.js +64 -0
- package/dist/esm/register.d.ts +5 -0
- package/dist/esm/register.d.ts.map +1 -0
- package/dist/esm/register.js +24 -0
- package/dist/esm/sol.d.ts +349 -0
- package/dist/esm/sol.d.ts.map +1 -0
- package/dist/esm/sol.js +1576 -0
- package/dist/esm/solToken.d.ts +44 -0
- package/dist/esm/solToken.d.ts.map +1 -0
- package/dist/esm/solToken.js +75 -0
- package/dist/esm/tsol.d.ts +11 -0
- package/dist/esm/tsol.js +20 -0
- package/package.json +35 -16
- package/dist/src/config/token2022StaticConfig.d.ts +0 -3
- package/dist/src/config/token2022StaticConfig.d.ts.map +0 -1
- package/dist/src/config/token2022StaticConfig.js +0 -50
- package/dist/src/lib/ataInitializationBuilder.js +0 -196
- package/dist/src/lib/closeAtaBuilder.d.ts +0 -19
- package/dist/src/lib/closeAtaBuilder.d.ts.map +0 -1
- package/dist/src/lib/closeAtaBuilder.js +0 -69
- package/dist/src/lib/constants.d.ts.map +0 -1
- package/dist/src/lib/constants.js +0 -171
- package/dist/src/lib/customInstructionBuilder.js +0 -289
- package/dist/src/lib/iface.d.ts.map +0 -1
- package/dist/src/lib/iface.js +0 -7
- package/dist/src/lib/index.js +0 -77
- package/dist/src/lib/instructionParamsFactory.d.ts.map +0 -1
- package/dist/src/lib/instructionParamsFactory.js +0 -1036
- package/dist/src/lib/jitoStakePoolOperations.js +0 -200
- package/dist/src/lib/keyPair.js +0 -63
- package/dist/src/lib/solInstructionFactory.d.ts.map +0 -1
- package/dist/src/lib/solInstructionFactory.js +0 -572
- package/dist/src/lib/stakingActivateBuilder.js +0 -120
- package/dist/src/lib/stakingAuthorizeBuilder.js +0 -89
- package/dist/src/lib/stakingDelegateBuilder.js +0 -120
- package/dist/src/lib/stakingRawMsgAuthorizeBuilder.js +0 -110
- package/dist/src/lib/stakingWithdrawBuilder.js +0 -78
- package/dist/src/lib/token2022Config.d.ts +0 -44
- package/dist/src/lib/token2022Config.d.ts.map +0 -1
- package/dist/src/lib/token2022Config.js +0 -27
- package/dist/src/lib/tokenTransferBuilder.d.ts.map +0 -1
- package/dist/src/lib/tokenTransferBuilder.js +0 -188
- package/dist/src/lib/transaction.d.ts.map +0 -1
- package/dist/src/lib/transaction.js +0 -595
- package/dist/src/lib/transactionBuilder.js +0 -380
- package/dist/src/lib/transactionBuilderFactory.d.ts.map +0 -1
- package/dist/src/lib/transactionBuilderFactory.js +0 -202
- package/dist/src/lib/transferBuilder.js +0 -70
- package/dist/src/lib/transferBuilderV2.d.ts +0 -43
- package/dist/src/lib/transferBuilderV2.d.ts.map +0 -1
- package/dist/src/lib/transferBuilderV2.js +0 -210
- package/dist/src/lib/utils.js +0 -589
- package/dist/src/lib/walletInitializationBuilder.js +0 -71
- package/dist/src/register.d.ts +0 -3
- package/dist/src/register.d.ts.map +0 -1
- package/dist/src/register.js +0 -15
- package/dist/src/sol.d.ts.map +0 -1
- package/dist/src/sol.js +0 -1324
- package/dist/src/solToken.d.ts.map +0 -1
- package/dist/src/solToken.js +0 -69
- package/dist/src/tsol.js +0 -24
- package/dist/test/fixtures/sol.js +0 -1433
- package/dist/test/resources/sol.d.ts.map +0 -1
- package/dist/test/resources/sol.js +0 -320
- package/dist/test/unit/fixtures/solBackupKey.d.ts.map +0 -1
- package/dist/test/unit/fixtures/solBackupKey.js +0 -8
- package/dist/test/unit/getBuilderFactory.d.ts.map +0 -1
- package/dist/test/unit/getBuilderFactory.js +0 -10
- package/dist/test/unit/instructionParamsFactory.d.ts.map +0 -1
- package/dist/test/unit/instructionParamsFactory.js +0 -412
- package/dist/test/unit/instructionParamsFactory.staking.d.ts.map +0 -1
- package/dist/test/unit/instructionParamsFactory.staking.js +0 -1059
- package/dist/test/unit/keyPair.js +0 -177
- package/dist/test/unit/messages/messageBuilderFactory.d.ts.map +0 -1
- package/dist/test/unit/messages/messageBuilderFactory.js +0 -118
- package/dist/test/unit/messages/simpleMessageBuilder.d.ts.map +0 -1
- package/dist/test/unit/messages/simpleMessageBuilder.js +0 -194
- package/dist/test/unit/sol.js +0 -3180
- package/dist/test/unit/solInstructionFactory.d.ts.map +0 -1
- package/dist/test/unit/solInstructionFactory.js +0 -454
- package/dist/test/unit/solToken.d.ts.map +0 -1
- package/dist/test/unit/solToken.js +0 -31
- package/dist/test/unit/transaction.d.ts.map +0 -1
- package/dist/test/unit/transaction.js +0 -983
- package/dist/test/unit/transactionBuilder/StakingWithdrawBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/StakingWithdrawBuilder.js +0 -202
- package/dist/test/unit/transactionBuilder/ataInitBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/ataInitBuilder.js +0 -471
- package/dist/test/unit/transactionBuilder/customInstructionBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/customInstructionBuilder.js +0 -413
- package/dist/test/unit/transactionBuilder/stakingActivateBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/stakingActivateBuilder.js +0 -430
- package/dist/test/unit/transactionBuilder/stakingAuthorizeBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/stakingAuthorizeBuilder.js +0 -157
- package/dist/test/unit/transactionBuilder/stakingDeactivateBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/stakingDeactivateBuilder.js +0 -384
- package/dist/test/unit/transactionBuilder/stakingDelegateBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/stakingDelegateBuilder.js +0 -224
- package/dist/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.js +0 -259
- package/dist/test/unit/transactionBuilder/tokenTransferBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/tokenTransferBuilder.js +0 -787
- package/dist/test/unit/transactionBuilder/transactionBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/transactionBuilder.js +0 -495
- package/dist/test/unit/transactionBuilder/transferBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/transferBuilder.js +0 -286
- package/dist/test/unit/transactionBuilder/transferBuilderV2.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/transferBuilderV2.js +0 -862
- package/dist/test/unit/transactionBuilder/walletInitBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/walletInitBuilder.js +0 -259
- package/dist/test/unit/utils.js +0 -517
- package/dist/test/unit/versionedTransaction.d.ts.map +0 -1
- package/dist/test/unit/versionedTransaction.js +0 -207
- package/dist/tsconfig.tsbuildinfo +0 -1
- /package/dist/{src → cjs/src}/bigint-buffer-guard.d.ts +0 -0
- /package/dist/{src → cjs/src}/index.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/ataInitializationBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/customInstructionBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/jitoStakePoolOperations.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/keyPair.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/messages/index.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/messages/messageBuilderFactory.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/solInstructionFactory.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/stakingActivateBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/stakingAuthorizeBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/stakingDeactivateBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/stakingDelegateBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/stakingRawMsgAuthorizeBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/stakingWithdrawBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/transaction.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/transactionBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/transferBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/walletInitializationBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/tsol.d.ts +0 -0
- /package/dist/{test → cjs/test}/fixtures/sol.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/fixtures/solBackupKey.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/getBuilderFactory.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/instructionParamsFactory.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/instructionParamsFactory.staking.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/keyPair.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/messages/messageBuilderFactory.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/messages/simpleMessageBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/sol.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/solInstructionFactory.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/solToken.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transaction.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/StakingWithdrawBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/ataInitBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/customInstructionBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingActivateBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingAuthorizeBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingDeactivateBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingDelegateBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/tokenTransferBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/transactionBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/transferBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/transferBuilderV2.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/walletInitBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/utils.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/versionedTransaction.d.ts +0 -0
- /package/dist/{src → esm}/bigint-buffer-guard.d.ts.map +0 -0
- /package/dist/{src → esm}/bigint-buffer-guard.js +0 -0
- /package/dist/{src → esm}/index.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/customInstructionBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/jitoStakePoolOperations.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/keyPair.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/messages/index.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/messages/messageBuilderFactory.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/stakingActivateBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/stakingAuthorizeBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/stakingDeactivateBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/stakingDelegateBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/stakingRawMsgAuthorizeBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/stakingWithdrawBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/transactionBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/transferBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/walletInitializationBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/tsol.d.ts.map +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jitoStakePoolOperations.d.ts","sourceRoot":"","sources":["../../../../src/lib/jitoStakePoolOperations.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @file Implementation of the depositSol instruction. On upgrade of
|
|
4
|
+
* '@solana/spl-token', this module may no longer be necessary.
|
|
5
|
+
*/
|
|
6
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
8
|
+
};
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.WITHDRAW_STAKE_LAYOUT_CODE = exports.DEPOSIT_SOL_LAYOUT_CODE = void 0;
|
|
11
|
+
exports.findWithdrawAuthorityProgramAddressSync = findWithdrawAuthorityProgramAddressSync;
|
|
12
|
+
exports.depositSolInstructions = depositSolInstructions;
|
|
13
|
+
exports.decodeDepositSol = decodeDepositSol;
|
|
14
|
+
exports.withdrawStakeInstructions = withdrawStakeInstructions;
|
|
15
|
+
exports.decodeWithdrawStake = decodeWithdrawStake;
|
|
16
|
+
const spl_stake_pool_1 = require("@solana/spl-stake-pool");
|
|
17
|
+
const spl_token_1 = require("@solana/spl-token");
|
|
18
|
+
const web3_js_1 = require("@solana/web3.js");
|
|
19
|
+
const assert_1 = __importDefault(require("assert"));
|
|
20
|
+
const constants_1 = require("./constants");
|
|
21
|
+
exports.DEPOSIT_SOL_LAYOUT_CODE = 14;
|
|
22
|
+
exports.WITHDRAW_STAKE_LAYOUT_CODE = 10;
|
|
23
|
+
/**
|
|
24
|
+
* Generates the withdraw authority program address for the stake pool.
|
|
25
|
+
* Like findWithdrawAuthorityProgramAddress in @solana/spl-stake-pool,
|
|
26
|
+
* but synchronous.
|
|
27
|
+
*
|
|
28
|
+
* @see {findWithdrawAuthorityProgramAddress}
|
|
29
|
+
*/
|
|
30
|
+
function findWithdrawAuthorityProgramAddressSync(programId, stakePoolAddress) {
|
|
31
|
+
const [withdrawAuthority] = web3_js_1.PublicKey.findProgramAddressSync([stakePoolAddress.toBuffer(), Buffer.from('withdraw')], programId);
|
|
32
|
+
return withdrawAuthority;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Construct Solana depositSol stake pool instruction from parameters.
|
|
36
|
+
*
|
|
37
|
+
* @param {DepositSolInstructionsParams} params - parameters for staking to stake pool
|
|
38
|
+
* @param {DepositSolStakePoolData} stakePool - data from getStakePoolAccount needed for DepositSol
|
|
39
|
+
* @param createAssociatedTokenAccount
|
|
40
|
+
* @returns {TransactionInstruction}
|
|
41
|
+
*/
|
|
42
|
+
function depositSolInstructions(params, stakePool, createAssociatedTokenAccount) {
|
|
43
|
+
const { stakePoolAddress, from, lamports } = params;
|
|
44
|
+
const poolMint = new web3_js_1.PublicKey(stakePool.poolMint);
|
|
45
|
+
const reserveStake = new web3_js_1.PublicKey(stakePool.reserveStake);
|
|
46
|
+
const managerFeeAccount = new web3_js_1.PublicKey(stakePool.managerFeeAccount);
|
|
47
|
+
// findWithdrawAuthorityProgramAddress
|
|
48
|
+
const withdrawAuthority = findWithdrawAuthorityProgramAddressSync(spl_stake_pool_1.STAKE_POOL_PROGRAM_ID, stakePoolAddress);
|
|
49
|
+
const associatedAddress = (0, spl_token_1.getAssociatedTokenAddressSync)(poolMint, from);
|
|
50
|
+
const instructions = [];
|
|
51
|
+
if (createAssociatedTokenAccount) {
|
|
52
|
+
instructions.push((0, spl_token_1.createAssociatedTokenAccountIdempotentInstruction)(from, associatedAddress, from, poolMint));
|
|
53
|
+
}
|
|
54
|
+
instructions.push(spl_stake_pool_1.StakePoolInstruction.depositSol({
|
|
55
|
+
stakePool: stakePoolAddress,
|
|
56
|
+
reserveStake,
|
|
57
|
+
fundingAccount: from,
|
|
58
|
+
destinationPoolAccount: associatedAddress,
|
|
59
|
+
managerFeeAccount,
|
|
60
|
+
referralPoolAccount: associatedAddress,
|
|
61
|
+
poolMint,
|
|
62
|
+
lamports: Number(lamports),
|
|
63
|
+
withdrawAuthority,
|
|
64
|
+
}));
|
|
65
|
+
return instructions;
|
|
66
|
+
}
|
|
67
|
+
function parseKey(key, template) {
|
|
68
|
+
(0, assert_1.default)(key.isSigner === template.isSigner && key.isWritable === template.isWritable, `Unexpected key metadata in instruction: { isSigner: ${key.isSigner}, isWritable: ${key.isWritable} }`);
|
|
69
|
+
return key.pubkey;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Construct Solana depositSol stake pool parameters from instruction.
|
|
73
|
+
*
|
|
74
|
+
* @param {TransactionInstruction} instruction
|
|
75
|
+
* @returns {DepositSolParams}
|
|
76
|
+
*/
|
|
77
|
+
function decodeDepositSol(instruction) {
|
|
78
|
+
const { programId, keys, data } = instruction;
|
|
79
|
+
(0, assert_1.default)(programId.equals(spl_stake_pool_1.STAKE_POOL_PROGRAM_ID), 'Invalid DepositSol instruction, program ID must be the Stake Pool Program');
|
|
80
|
+
let i = 0;
|
|
81
|
+
const stakePool = parseKey(keys[i++], { isSigner: false, isWritable: true });
|
|
82
|
+
const withdrawAuthority = parseKey(keys[i++], { isSigner: false, isWritable: false });
|
|
83
|
+
const reserveStake = parseKey(keys[i++], { isSigner: false, isWritable: true });
|
|
84
|
+
const fundingAccount = parseKey(keys[i++], { isSigner: true, isWritable: true });
|
|
85
|
+
const destinationPoolAccount = parseKey(keys[i++], { isSigner: false, isWritable: true });
|
|
86
|
+
const managerFeeAccount = parseKey(keys[i++], { isSigner: false, isWritable: true });
|
|
87
|
+
const referralPoolAccount = parseKey(keys[i++], { isSigner: false, isWritable: true });
|
|
88
|
+
const poolMint = parseKey(keys[i++], { isSigner: false, isWritable: true });
|
|
89
|
+
const systemProgramProgramId = parseKey(keys[i++], { isSigner: false, isWritable: false });
|
|
90
|
+
(0, assert_1.default)(systemProgramProgramId.equals(web3_js_1.SystemProgram.programId), 'Unexpected pubkey in DepositSol instruction');
|
|
91
|
+
const tokenProgramId = parseKey(keys[i++], { isSigner: false, isWritable: false });
|
|
92
|
+
(0, assert_1.default)(tokenProgramId.equals(spl_token_1.TOKEN_PROGRAM_ID), 'Unexpected pubkey in DepositSol instruction');
|
|
93
|
+
const depositAuthority = keys.length > 10 ? parseKey(keys[i++], { isSigner: true, isWritable: false }) : undefined;
|
|
94
|
+
(0, assert_1.default)(keys.length <= 11, 'Too many keys in DepositSol instruction');
|
|
95
|
+
const layoutCode = data.readUint8(0);
|
|
96
|
+
(0, assert_1.default)(layoutCode === exports.DEPOSIT_SOL_LAYOUT_CODE, 'Incorrect layout code in DepositSol data');
|
|
97
|
+
(0, assert_1.default)(data.length === 9, 'Incorrect data size for DepositSol layout');
|
|
98
|
+
const lamports = data.readBigInt64LE(1);
|
|
99
|
+
return {
|
|
100
|
+
stakePool,
|
|
101
|
+
depositAuthority,
|
|
102
|
+
withdrawAuthority,
|
|
103
|
+
reserveStake,
|
|
104
|
+
fundingAccount,
|
|
105
|
+
destinationPoolAccount,
|
|
106
|
+
managerFeeAccount,
|
|
107
|
+
referralPoolAccount,
|
|
108
|
+
poolMint,
|
|
109
|
+
lamports: Number(lamports),
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Construct Solana withdrawStake stake pool instructions from parameters.
|
|
114
|
+
*
|
|
115
|
+
* @param {WithdrawStakeInstructionsParams} params - parameters for unstaking from stake pool
|
|
116
|
+
* @param {WithdrawStakeStakePoolData} stakePool - data from getStakePoolAccount needed for WithdrawStake
|
|
117
|
+
* @returns {TransactionInstruction[]}
|
|
118
|
+
*/
|
|
119
|
+
function withdrawStakeInstructions(params, stakePool) {
|
|
120
|
+
const { tokenOwner, stakePoolAddress, destinationStakeAccount, validatorAddress, transferAuthority, poolAmount: poolAmountString, } = params;
|
|
121
|
+
const poolMint = new web3_js_1.PublicKey(stakePool.poolMint);
|
|
122
|
+
const validatorList = new web3_js_1.PublicKey(stakePool.validatorListAccount);
|
|
123
|
+
const managerFeeAccount = new web3_js_1.PublicKey(stakePool.managerFeeAccount);
|
|
124
|
+
const poolTokenAccount = (0, spl_token_1.getAssociatedTokenAddressSync)(poolMint, tokenOwner);
|
|
125
|
+
const withdrawAuthority = findWithdrawAuthorityProgramAddressSync(spl_stake_pool_1.STAKE_POOL_PROGRAM_ID, stakePoolAddress);
|
|
126
|
+
const poolAmount = BigInt(poolAmountString);
|
|
127
|
+
return [
|
|
128
|
+
(0, spl_token_1.createApproveInstruction)(poolTokenAccount, transferAuthority, tokenOwner, poolAmount),
|
|
129
|
+
web3_js_1.SystemProgram.createAccount({
|
|
130
|
+
fromPubkey: tokenOwner,
|
|
131
|
+
newAccountPubkey: destinationStakeAccount,
|
|
132
|
+
lamports: constants_1.STAKE_ACCOUNT_RENT_EXEMPT_AMOUNT,
|
|
133
|
+
space: web3_js_1.StakeProgram.space,
|
|
134
|
+
programId: web3_js_1.StakeProgram.programId,
|
|
135
|
+
}),
|
|
136
|
+
spl_stake_pool_1.StakePoolInstruction.withdrawStake({
|
|
137
|
+
stakePool: stakePoolAddress,
|
|
138
|
+
validatorList: validatorList,
|
|
139
|
+
validatorStake: validatorAddress,
|
|
140
|
+
destinationStake: destinationStakeAccount,
|
|
141
|
+
destinationStakeAuthority: tokenOwner,
|
|
142
|
+
sourceTransferAuthority: transferAuthority,
|
|
143
|
+
sourcePoolAccount: poolTokenAccount,
|
|
144
|
+
managerFeeAccount: managerFeeAccount,
|
|
145
|
+
poolMint: poolMint,
|
|
146
|
+
poolTokens: Number(poolAmount),
|
|
147
|
+
withdrawAuthority,
|
|
148
|
+
}),
|
|
149
|
+
...web3_js_1.StakeProgram.deactivate({
|
|
150
|
+
stakePubkey: destinationStakeAccount,
|
|
151
|
+
authorizedPubkey: tokenOwner,
|
|
152
|
+
}).instructions,
|
|
153
|
+
];
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Construct Solana withdrawStake stake pool parameters from instruction.
|
|
157
|
+
*
|
|
158
|
+
* @param {TransactionInstruction} instruction
|
|
159
|
+
* @returns {DepositSolParams}
|
|
160
|
+
*/
|
|
161
|
+
function decodeWithdrawStake(instruction) {
|
|
162
|
+
const { programId, keys, data } = instruction;
|
|
163
|
+
(0, assert_1.default)(programId.equals(spl_stake_pool_1.STAKE_POOL_PROGRAM_ID), 'Invalid WithdrawStake instruction, program ID must be the Stake Pool Program');
|
|
164
|
+
const layoutCode = data.readUint8(0);
|
|
165
|
+
(0, assert_1.default)(layoutCode === exports.WITHDRAW_STAKE_LAYOUT_CODE, 'Incorrect layout code in WithdrawStake data');
|
|
166
|
+
(0, assert_1.default)(data.length === 9, 'Incorrect data size for WithdrawStake layout');
|
|
167
|
+
const poolTokens = data.readBigInt64LE(1);
|
|
168
|
+
let i = 0;
|
|
169
|
+
const stakePool = parseKey(keys[i++], { isSigner: false, isWritable: true });
|
|
170
|
+
const validatorList = parseKey(keys[i++], { isSigner: false, isWritable: true });
|
|
171
|
+
const withdrawAuthority = parseKey(keys[i++], { isSigner: false, isWritable: false });
|
|
172
|
+
const validatorStake = parseKey(keys[i++], { isSigner: false, isWritable: true });
|
|
173
|
+
const destinationStake = keys[i++].pubkey;
|
|
174
|
+
const destinationStakeAuthority = keys[i++].pubkey;
|
|
175
|
+
const sourceTransferAuthority = parseKey(keys[i++], { isSigner: true, isWritable: false });
|
|
176
|
+
const sourcePoolAccount = parseKey(keys[i++], { isSigner: false, isWritable: true });
|
|
177
|
+
const managerFeeAccount = parseKey(keys[i++], { isSigner: false, isWritable: true });
|
|
178
|
+
const poolMint = parseKey(keys[i++], { isSigner: false, isWritable: true });
|
|
179
|
+
const sysvarClockPubkey = parseKey(keys[i++], { isSigner: false, isWritable: false });
|
|
180
|
+
(0, assert_1.default)(sysvarClockPubkey.equals(web3_js_1.SYSVAR_CLOCK_PUBKEY), 'Unexpected pubkey in WithdrawStake instruction');
|
|
181
|
+
const tokenProgramId = parseKey(keys[i++], { isSigner: false, isWritable: false });
|
|
182
|
+
(0, assert_1.default)(tokenProgramId.equals(spl_token_1.TOKEN_PROGRAM_ID), 'Unexpected pubkey in WithdrawStake instruction');
|
|
183
|
+
const stakeProgramProgramId = parseKey(keys[i++], { isSigner: false, isWritable: false });
|
|
184
|
+
(0, assert_1.default)(stakeProgramProgramId.equals(web3_js_1.StakeProgram.programId), 'Unexpected pubkey in WithdrawStake instruction');
|
|
185
|
+
(0, assert_1.default)(i === keys.length, 'Too many keys in WithdrawStake instruction');
|
|
186
|
+
return {
|
|
187
|
+
stakePool,
|
|
188
|
+
validatorList,
|
|
189
|
+
withdrawAuthority,
|
|
190
|
+
validatorStake,
|
|
191
|
+
destinationStake,
|
|
192
|
+
destinationStakeAuthority,
|
|
193
|
+
sourceTransferAuthority,
|
|
194
|
+
sourcePoolAccount,
|
|
195
|
+
managerFeeAccount,
|
|
196
|
+
poolMint,
|
|
197
|
+
poolTokens: Number(poolTokens),
|
|
198
|
+
};
|
|
199
|
+
}
|
|
200
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaml0b1N0YWtlUG9vbE9wZXJhdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2ppdG9TdGFrZVBvb2xPcGVyYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7O0dBR0c7Ozs7OztBQXVGSCwwRkFNQztBQWtCRCx3REFtQ0M7QUFnQkQsNENBeUNDO0FBb0JELDhEQWlEQztBQVFELGtEQTZDQztBQW5VRCwyREFLZ0M7QUFDaEMsaURBSzJCO0FBQzNCLDZDQU95QjtBQUN6QixvREFBNEI7QUFDNUIsMkNBQStEO0FBc0RsRCxRQUFBLHVCQUF1QixHQUFHLEVBQUUsQ0FBQztBQUM3QixRQUFBLDBCQUEwQixHQUFHLEVBQUUsQ0FBQztBQUU3Qzs7Ozs7O0dBTUc7QUFDSCxTQUFnQix1Q0FBdUMsQ0FBQyxTQUFvQixFQUFFLGdCQUEyQjtJQUN2RyxNQUFNLENBQUMsaUJBQWlCLENBQUMsR0FBRyxtQkFBUyxDQUFDLHNCQUFzQixDQUMxRCxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsRUFDdEQsU0FBUyxDQUNWLENBQUM7SUFDRixPQUFPLGlCQUFpQixDQUFDO0FBQzNCLENBQUM7QUFVRDs7Ozs7OztHQU9HO0FBQ0gsU0FBZ0Isc0JBQXNCLENBQ3BDLE1BQW9DLEVBQ3BDLFNBQWtDLEVBQ2xDLDRCQUFxQztJQUVyQyxNQUFNLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxHQUFHLE1BQU0sQ0FBQztJQUNwRCxNQUFNLFFBQVEsR0FBRyxJQUFJLG1CQUFTLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ25ELE1BQU0sWUFBWSxHQUFHLElBQUksbUJBQVMsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDM0QsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLG1CQUFTLENBQUMsU0FBUyxD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QkFBcUIsQ0FBQyxNQUFNLENBQUMsc0JBQVksQ0FBQyxTQUFTLENBQUMsRUFBRSxnREFBZ0QsQ0FBQyxDQUFDO0lBQy9HLElBQUEsZ0JBQU0sRUFBQyxDQUFDLEtBQUssSUFBSSxDQUFDLE1BQU0sRUFBRSw0Q0FBNEMsQ0FBQyxDQUFDO0lBRXhFLE9BQU87UUFDTCxTQUFTO1FBQ1QsYUFBYTtRQUNiLGlCQUFpQjtRQUNqQixjQUFjO1FBQ2QsZ0JBQWdCO1FBQ2hCLHlCQUF5QjtRQUN6Qix1QkFBdUI7UUFDdkIsaUJBQWlCO1FBQ2pCLGlCQUFpQjtRQUNqQixRQUFRO1FBQ1IsVUFBVSxFQUFFLE1BQU0sQ0FBQyxVQUFVLENBQUM7S0FDL0IsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBmaWxlIEltcGxlbWVudGF0aW9uIG9mIHRoZSBkZXBvc2l0U29sIGluc3RydWN0aW9uLiBPbiB1cGdyYWRlIG9mXG4gKiAnQHNvbGFuYS9zcGwtdG9rZW4nLCB0aGlzIG1vZHVsZSBtYXkgbm8gbG9uZ2VyIGJlIG5lY2Vzc2FyeS5cbiAqL1xuXG5pbXBvcnQge1xuICBTdGFrZVBvb2xJbnN0cnVjdGlvbixcbiAgU1RBS0VfUE9PTF9QUk9HUkFNX0lELFxuICBEZXBvc2l0U29sUGFyYW1zLFxuICBXaXRoZHJhd1N0YWtlUGFyYW1zLFxufSBmcm9tICdAc29sYW5hL3NwbC1zdGFrZS1wb29sJztcbmltcG9ydCB7XG4gIGNyZWF0ZUFwcHJvdmVJbnN0cnVjdGlvbixcbiAgY3JlYXRlQXNzb2NpYXRlZFRva2VuQWNjb3VudElkZW1wb3RlbnRJbnN0cnVjdGlvbixcbiAgZ2V0QXNzb2NpYXRlZFRva2VuQWRkcmVzc1N5bmMsXG4gIFRPS0VOX1BST0dSQU1fSUQsXG59IGZyb20gJ0Bzb2xhbmEvc3BsLXRva2VuJztcbmltcG9ydCB7XG4gIEFjY291bnRNZXRhLFxuICBQdWJsaWNLZXksXG4gIFN0YWtlUHJvZ3JhbSxcbiAgU3lzdGVtUHJvZ3JhbSxcbiAgU1lTVkFSX0NMT0NLX1BVQktFWSxcbiAgVHJhbnNhY3Rpb25JbnN0cnVjdGlvbixcbn0gZnJvbSAnQHNvbGFuYS93ZWIzLmpzJztcbmltcG9ydCBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IFNUQUtFX0FDQ09VTlRfUkVOVF9FWEVNUFRfQU1PVU5UIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG4vKipcbiAqIFJlcGxpY2F0ZXMgdGhlIGZpZWxkcyBpbiBAc29sYW5hL3NwbC1zdGFrZS1wb29sIEZlZS5cbiAqXG4gKiBAc2VlIHtGZWV9XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmVlIHtcbiAgZGVub21pbmF0b3I6IHN0cmluZztcbiAgbnVtZXJhdG9yOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVwbGljYXRlcyB0aGUgZmllbGRzIGluIEBzb2xhbmEvc3BsLXN0YWtlLXBvb2wgU3Rha2VQb29sTGF5b3V0LlxuICpcbiAqIEBzZWUge1N0YWtlUG9vbExheW91dH1cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdGFrZVBvb2xEYXRhIHtcbiAgYWNjb3VudFR5cGU6IG51bWJlcjtcbiAgbWFuYWdlcjogc3RyaW5nO1xuICBzdGFrZXI6IHN0cmluZztcbiAgc3Rha2VEZXBvc2l0QXV0aG9yaXR5OiBzdHJpbmc7XG4gIHN0YWtlV2l0aGRyYXdCdW1wU2VlZDogbnVtYmVyO1xuICB2YWxpZGF0b3JMaXN0QWNjb3VudDogc3RyaW5nO1xuICByZXNlcnZlU3Rha2U6IHN0cmluZztcbiAgcG9vbE1pbnQ6IHN0cmluZztcbiAgbWFuYWdlckZlZUFjY291bnQ6IHN0cmluZztcbiAgdG9rZW5Qcm9ncmFtSWQ6IHN0cmluZztcbiAgdG90YWxMYW1wb3J0czogc3RyaW5nO1xuICBwb29sVG9rZW5TdXBwbHk6IHN0cmluZztcbiAgbGFzdFVwZGF0ZUVwb2NoOiBzdHJpbmc7XG4gIGxvY2t1cDoge1xuICAgIHVuaXhUaW1lc3RhbXA6IHN0cmluZztcbiAgICBlcG9jaDogc3RyaW5nO1xuICAgIGN1c3RvZGlhbjogc3RyaW5nO1xuICB9O1xuICBlcG9jaEZlZTogRmVlO1xuICBuZXh0RXBvY2hGZWU/OiBGZWUgfCB1bmRlZmluZWQ7XG4gIHByZWZlcnJlZERlcG9zaXRWYWxpZGF0b3JWb3RlQWRkcmVzcz86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgcHJlZmVycmVkV2l0aGRyYXdWYWxpZGF0b3JWb3RlQWRkcmVzcz86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgc3Rha2VEZXBvc2l0RmVlOiBGZWU7XG4gIHN0YWtlV2l0aGRyYXdhbEZlZTogRmVlO1xuICBuZXh0U3Rha2VXaXRoZHJhd2FsRmVlPzogRmVlIHwgdW5kZWZpbmVkO1xuICBzdGFrZVJlZmVycmFsRmVlOiBudW1iZXI7XG4gIHNvbERlcG9zaXRBdXRob3JpdHk/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIHNvbERlcG9zaXRGZWU6IEZlZTtcbiAgc29sUmVmZXJyYWxGZWU6IG51bWJlcjtcbiAgc29sV2l0aGRyYXdBdXRob3JpdHk/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIHNvbFdpdGhkcmF3YWxGZWU6IEZlZTtcbiAgbmV4dFNvbFdpdGhkcmF3YWxGZWU/OiBGZWUgfCB1bmRlZmluZWQ7XG4gIGxhc3RFcG9jaFBvb2xUb2tlblN1cHBseTogc3RyaW5nO1xuICBsYXN0RXBvY2hUb3RhbExhbXBvcnRzOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjb25zdCBERVBPU0lUX1NPTF9MQVlPVVRfQ09ERSA9IDE0O1xuZXhwb3J0IGNvbnN0IFdJVEhEUkFXX1NUQUtFX0xBWU9VVF9DT0RFID0gMTA7XG5cbi8qKlxuICogR2VuZXJhdGVzIHRoZSB3aXRoZHJhdyBhdXRob3JpdHkgcHJvZ3JhbSBhZGRyZXNzIGZvciB0aGUgc3Rha2UgcG9vbC5cbiAqIExpa2UgZmluZFdpdGhkcmF3QXV0aG9yaXR5UHJvZ3JhbUFkZHJlc3MgaW4gQHNvbGFuYS9zcGwtc3Rha2UtcG9vbCxcbiAqIGJ1dCBzeW5jaHJvbm91cy5cbiAqXG4gKiBAc2VlIHtmaW5kV2l0aGRyYXdBdXRob3JpdHlQcm9ncmFtQWRkcmVzc31cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZpbmRXaXRoZHJhd0F1dGhvcml0eVByb2dyYW1BZGRyZXNzU3luYyhwcm9ncmFtSWQ6IFB1YmxpY0tleSwgc3Rha2VQb29sQWRkcmVzczogUHVibGljS2V5KTogUHVibGljS2V5IHtcbiAgY29uc3QgW3dpdGhkcmF3QXV0aG9yaXR5XSA9IFB1YmxpY0tleS5maW5kUHJvZ3JhbUFkZHJlc3NTeW5jKFxuICAgIFtzdGFrZVBvb2xBZGRyZXNzLnRvQnVmZmVyKCksIEJ1ZmZlci5mcm9tKCd3aXRoZHJhdycpXSxcbiAgICBwcm9ncmFtSWRcbiAgKTtcbiAgcmV0dXJuIHdpdGhkcmF3QXV0aG9yaXR5O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERlcG9zaXRTb2xJbnN0cnVjdGlvbnNQYXJhbXMge1xuICBzdGFrZVBvb2xBZGRyZXNzOiBQdWJsaWNLZXk7XG4gIGZyb206IFB1YmxpY0tleTtcbiAgbGFtcG9ydHM6IGJpZ2ludDtcbn1cblxuZXhwb3J0IHR5cGUgRGVwb3NpdFNvbFN0YWtlUG9vbERhdGEgPSBQaWNrPFN0YWtlUG9vbERhdGEsICdwb29sTWludCcgfCAncmVzZXJ2ZVN0YWtlJyB8ICdtYW5hZ2VyRmVlQWNjb3VudCc+O1xuXG4vKipcbiAqIENvbnN0cnVjdCBTb2xhbmEgZGVwb3NpdFNvbCBzdGFrZSBwb29sIGluc3RydWN0aW9uIGZyb20gcGFyYW1ldGVycy5cbiAqXG4gKiBAcGFyYW0ge0RlcG9zaXRTb2xJbnN0cnVjdGlvbnNQYXJhbXN9IHBhcmFtcyAtIHBhcmFtZXRlcnMgZm9yIHN0YWtpbmcgdG8gc3Rha2UgcG9vbFxuICogQHBhcmFtIHtEZXBvc2l0U29sU3Rha2VQb29sRGF0YX0gc3Rha2VQb29sIC0gZGF0YSBmcm9tIGdldFN0YWtlUG9vbEFjY291bnQgbmVlZGVkIGZvciBEZXBvc2l0U29sXG4gKiBAcGFyYW0gY3JlYXRlQXNzb2NpYXRlZFRva2VuQWNjb3VudFxuICogQHJldHVybnMge1RyYW5zYWN0aW9uSW5zdHJ1Y3Rpb259XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkZXBvc2l0U29sSW5zdHJ1Y3Rpb25zKFxuICBwYXJhbXM6IERlcG9zaXRTb2xJbnN0cnVjdGlvbnNQYXJhbXMsXG4gIHN0YWtlUG9vbDogRGVwb3NpdFNvbFN0YWtlUG9vbERhdGEsXG4gIGNyZWF0ZUFzc29jaWF0ZWRUb2tlbkFjY291bnQ6IGJvb2xlYW5cbik6IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb25bXSB7XG4gIGNvbnN0IHsgc3Rha2VQb29sQWRkcmVzcywgZnJvbSwgbGFtcG9ydHMgfSA9IHBhcmFtcztcbiAgY29uc3QgcG9vbE1pbnQgPSBuZXcgUHVibGljS2V5KHN0YWtlUG9vbC5wb29sTWludCk7XG4gIGNvbnN0IHJlc2VydmVTdGFrZSA9IG5ldyBQdWJsaWNLZXkoc3Rha2VQb29sLnJlc2VydmVTdGFrZSk7XG4gIGNvbnN0IG1hbmFnZXJGZWVBY2NvdW50ID0gbmV3IFB1YmxpY0tleShzdGFrZVBvb2wubWFuYWdlckZlZUFjY291bnQpO1xuXG4gIC8vIGZpbmRXaXRoZHJhd0F1dGhvcml0eVByb2dyYW1BZGRyZXNzXG4gIGNvbnN0IHdpdGhkcmF3QXV0aG9yaXR5ID0gZmluZFdpdGhkcmF3QXV0aG9yaXR5UHJvZ3JhbUFkZHJlc3NTeW5jKFNUQUtFX1BPT0xfUFJPR1JBTV9JRCwgc3Rha2VQb29sQWRkcmVzcyk7XG4gIGNvbnN0IGFzc29jaWF0ZWRBZGRyZXNzID0gZ2V0QXNzb2NpYXRlZFRva2VuQWRkcmVzc1N5bmMocG9vbE1pbnQsIGZyb20pO1xuXG4gIGNvbnN0IGluc3RydWN0aW9uczogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbltdID0gW107XG5cbiAgaWYgKGNyZWF0ZUFzc29jaWF0ZWRUb2tlbkFjY291bnQpIHtcbiAgICBpbnN0cnVjdGlvbnMucHVzaChjcmVhdGVBc3NvY2lhdGVkVG9rZW5BY2NvdW50SWRlbXBvdGVudEluc3RydWN0aW9uKGZyb20sIGFzc29jaWF0ZWRBZGRyZXNzLCBmcm9tLCBwb29sTWludCkpO1xuICB9XG5cbiAgaW5zdHJ1Y3Rpb25zLnB1c2goXG4gICAgU3Rha2VQb29sSW5zdHJ1Y3Rpb24uZGVwb3NpdFNvbCh7XG4gICAgICBzdGFrZVBvb2w6IHN0YWtlUG9vbEFkZHJlc3MsXG4gICAgICByZXNlcnZlU3Rha2UsXG4gICAgICBmdW5kaW5nQWNjb3VudDogZnJvbSxcbiAgICAgIGRlc3RpbmF0aW9uUG9vbEFjY291bnQ6IGFzc29jaWF0ZWRBZGRyZXNzLFxuICAgICAgbWFuYWdlckZlZUFjY291bnQsXG4gICAgICByZWZlcnJhbFBvb2xBY2NvdW50OiBhc3NvY2lhdGVkQWRkcmVzcyxcbiAgICAgIHBvb2xNaW50LFxuICAgICAgbGFtcG9ydHM6IE51bWJlcihsYW1wb3J0cyksXG4gICAgICB3aXRoZHJhd0F1dGhvcml0eSxcbiAgICB9KVxuICApO1xuXG4gIHJldHVybiBpbnN0cnVjdGlvbnM7XG59XG5cbmZ1bmN0aW9uIHBhcnNlS2V5KGtleTogQWNjb3VudE1ldGEsIHRlbXBsYXRlOiB7IGlzU2lnbmVyOiBib29sZWFuOyBpc1dyaXRhYmxlOiBib29sZWFuIH0pOiBQdWJsaWNLZXkge1xuICBhc3NlcnQoXG4gICAga2V5LmlzU2lnbmVyID09PSB0ZW1wbGF0ZS5pc1NpZ25lciAmJiBrZXkuaXNXcml0YWJsZSA9PT0gdGVtcGxhdGUuaXNXcml0YWJsZSxcbiAgICBgVW5leHBlY3RlZCBrZXkgbWV0YWRhdGEgaW4gaW5zdHJ1Y3Rpb246IHsgaXNTaWduZXI6ICR7a2V5LmlzU2lnbmVyfSwgaXNXcml0YWJsZTogJHtrZXkuaXNXcml0YWJsZX0gfWBcbiAgKTtcbiAgcmV0dXJuIGtleS5wdWJrZXk7XG59XG5cbi8qKlxuICogQ29uc3RydWN0IFNvbGFuYSBkZXBvc2l0U29sIHN0YWtlIHBvb2wgcGFyYW1ldGVycyBmcm9tIGluc3RydWN0aW9uLlxuICpcbiAqIEBwYXJhbSB7VHJhbnNhY3Rpb25JbnN0cnVjdGlvbn0gaW5zdHJ1Y3Rpb25cbiAqIEByZXR1cm5zIHtEZXBvc2l0U29sUGFyYW1zfVxuICovXG5leHBvcnQgZnVuY3Rpb24gZGVjb2RlRGVwb3NpdFNvbChpbnN0cnVjdGlvbjogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbik6IERlcG9zaXRTb2xQYXJhbXMge1xuICBjb25zdCB7IHByb2dyYW1JZCwga2V5cywgZGF0YSB9ID0gaW5zdHJ1Y3Rpb247XG5cbiAgYXNzZXJ0KFxuICAgIHByb2dyYW1JZC5lcXVhbHMoU1RBS0VfUE9PTF9QUk9HUkFNX0lEKSxcbiAgICAnSW52YWxpZCBEZXBvc2l0U29sIGluc3RydWN0aW9uLCBwcm9ncmFtIElEIG11c3QgYmUgdGhlIFN0YWtlIFBvb2wgUHJvZ3JhbSdcbiAgKTtcblxuICBsZXQgaSA9IDA7XG4gIGNvbnN0IHN0YWtlUG9vbCA9IHBhcnNlS2V5KGtleXNbaSsrXSwgeyBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IHRydWUgfSk7XG4gIGNvbnN0IHdpdGhkcmF3QXV0aG9yaXR5ID0gcGFyc2VLZXkoa2V5c1tpKytdLCB7IGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogZmFsc2UgfSk7XG4gIGNvbnN0IHJlc2VydmVTdGFrZSA9IHBhcnNlS2V5KGtleXNbaSsrXSwgeyBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IHRydWUgfSk7XG4gIGNvbnN0IGZ1bmRpbmdBY2NvdW50ID0gcGFyc2VLZXkoa2V5c1tpKytdLCB7IGlzU2lnbmVyOiB0cnVlLCBpc1dyaXRhYmxlOiB0cnVlIH0pO1xuICBjb25zdCBkZXN0aW5hdGlvblBvb2xBY2NvdW50ID0gcGFyc2VLZXkoa2V5c1tpKytdLCB7IGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogdHJ1ZSB9KTtcbiAgY29uc3QgbWFuYWdlckZlZUFjY291bnQgPSBwYXJzZUtleShrZXlzW2krK10sIHsgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiB0cnVlIH0pO1xuICBjb25zdCByZWZlcnJhbFBvb2xBY2NvdW50ID0gcGFyc2VLZXkoa2V5c1tpKytdLCB7IGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogdHJ1ZSB9KTtcbiAgY29uc3QgcG9vbE1pbnQgPSBwYXJzZUtleShrZXlzW2krK10sIHsgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiB0cnVlIH0pO1xuICBjb25zdCBzeXN0ZW1Qcm9ncmFtUHJvZ3JhbUlkID0gcGFyc2VLZXkoa2V5c1tpKytdLCB7IGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogZmFsc2UgfSk7XG4gIGFzc2VydChzeXN0ZW1Qcm9ncmFtUHJvZ3JhbUlkLmVxdWFscyhTeXN0ZW1Qcm9ncmFtLnByb2dyYW1JZCksICdVbmV4cGVjdGVkIHB1YmtleSBpbiBEZXBvc2l0U29sIGluc3RydWN0aW9uJyk7XG4gIGNvbnN0IHRva2VuUHJvZ3JhbUlkID0gcGFyc2VLZXkoa2V5c1tpKytdLCB7IGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogZmFsc2UgfSk7XG4gIGFzc2VydCh0b2tlblByb2dyYW1JZC5lcXVhbHMoVE9LRU5fUFJPR1JBTV9JRCksICdVbmV4cGVjdGVkIHB1YmtleSBpbiBEZXBvc2l0U29sIGluc3RydWN0aW9uJyk7XG4gIGNvbnN0IGRlcG9zaXRBdXRob3JpdHkgPSBrZXlzLmxlbmd0aCA+IDEwID8gcGFyc2VLZXkoa2V5c1tpKytdLCB7IGlzU2lnbmVyOiB0cnVlLCBpc1dyaXRhYmxlOiBmYWxzZSB9KSA6IHVuZGVmaW5lZDtcbiAgYXNzZXJ0KGtleXMubGVuZ3RoIDw9IDExLCAnVG9vIG1hbnkga2V5cyBpbiBEZXBvc2l0U29sIGluc3RydWN0aW9uJyk7XG5cbiAgY29uc3QgbGF5b3V0Q29kZSA9IGRhdGEucmVhZFVpbnQ4KDApO1xuICBhc3NlcnQobGF5b3V0Q29kZSA9PT0gREVQT1NJVF9TT0xfTEFZT1VUX0NPREUsICdJbmNvcnJlY3QgbGF5b3V0IGNvZGUgaW4gRGVwb3NpdFNvbCBkYXRhJyk7XG4gIGFzc2VydChkYXRhLmxlbmd0aCA9PT0gOSwgJ0luY29ycmVjdCBkYXRhIHNpemUgZm9yIERlcG9zaXRTb2wgbGF5b3V0Jyk7XG4gIGNvbnN0IGxhbXBvcnRzID0gZGF0YS5yZWFkQmlnSW50NjRMRSgxKTtcblxuICByZXR1cm4ge1xuICAgIHN0YWtlUG9vbCxcbiAgICBkZXBvc2l0QXV0aG9yaXR5LFxuICAgIHdpdGhkcmF3QXV0aG9yaXR5LFxuICAgIHJlc2VydmVTdGFrZSxcbiAgICBmdW5kaW5nQWNjb3VudCxcbiAgICBkZXN0aW5hdGlvblBvb2xBY2NvdW50LFxuICAgIG1hbmFnZXJGZWVBY2NvdW50LFxuICAgIHJlZmVycmFsUG9vbEFjY291bnQsXG4gICAgcG9vbE1pbnQsXG4gICAgbGFtcG9ydHM6IE51bWJlcihsYW1wb3J0cyksXG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgV2l0aGRyYXdTdGFrZUluc3RydWN0aW9uc1BhcmFtcyB7XG4gIHN0YWtlUG9vbEFkZHJlc3M6IFB1YmxpY0tleTtcbiAgdG9rZW5Pd25lcjogUHVibGljS2V5O1xuICBkZXN0aW5hdGlvblN0YWtlQWNjb3VudDogUHVibGljS2V5O1xuICB2YWxpZGF0b3JBZGRyZXNzOiBQdWJsaWNLZXk7XG4gIHRyYW5zZmVyQXV0aG9yaXR5OiBQdWJsaWNLZXk7XG4gIHBvb2xBbW91bnQ6IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgV2l0aGRyYXdTdGFrZVN0YWtlUG9vbERhdGEgPSBQaWNrPFN0YWtlUG9vbERhdGEsICdwb29sTWludCcgfCAndmFsaWRhdG9yTGlzdEFjY291bnQnIHwgJ21hbmFnZXJGZWVBY2NvdW50Jz47XG5cbi8qKlxuICogQ29uc3RydWN0IFNvbGFuYSB3aXRoZHJhd1N0YWtlIHN0YWtlIHBvb2wgaW5zdHJ1Y3Rpb25zIGZyb20gcGFyYW1ldGVycy5cbiAqXG4gKiBAcGFyYW0ge1dpdGhkcmF3U3Rha2VJbnN0cnVjdGlvbnNQYXJhbXN9IHBhcmFtcyAtIHBhcmFtZXRlcnMgZm9yIHVuc3Rha2luZyBmcm9tIHN0YWtlIHBvb2xcbiAqIEBwYXJhbSB7V2l0aGRyYXdTdGFrZVN0YWtlUG9vbERhdGF9IHN0YWtlUG9vbCAtIGRhdGEgZnJvbSBnZXRTdGFrZVBvb2xBY2NvdW50IG5lZWRlZCBmb3IgV2l0aGRyYXdTdGFrZVxuICogQHJldHVybnMge1RyYW5zYWN0aW9uSW5zdHJ1Y3Rpb25bXX1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdpdGhkcmF3U3Rha2VJbnN0cnVjdGlvbnMoXG4gIHBhcmFtczogV2l0aGRyYXdTdGFrZUluc3RydWN0aW9uc1BhcmFtcyxcbiAgc3Rha2VQb29sOiBXaXRoZHJhd1N0YWtlU3Rha2VQb29sRGF0YVxuKTogVHJhbnNhY3Rpb25JbnN0cnVjdGlvbltdIHtcbiAgY29uc3Qge1xuICAgIHRva2VuT3duZXIsXG4gICAgc3Rha2VQb29sQWRkcmVzcyxcbiAgICBkZXN0aW5hdGlvblN0YWtlQWNjb3VudCxcbiAgICB2YWxpZGF0b3JBZGRyZXNzLFxuICAgIHRyYW5zZmVyQXV0aG9yaXR5LFxuICAgIHBvb2xBbW91bnQ6IHBvb2xBbW91bnRTdHJpbmcsXG4gIH0gPSBwYXJhbXM7XG5cbiAgY29uc3QgcG9vbE1pbnQgPSBuZXcgUHVibGljS2V5KHN0YWtlUG9vbC5wb29sTWludCk7XG4gIGNvbnN0IHZhbGlkYXRvckxpc3QgPSBuZXcgUHVibGljS2V5KHN0YWtlUG9vbC52YWxpZGF0b3JMaXN0QWNjb3VudCk7XG4gIGNvbnN0IG1hbmFnZXJGZWVBY2NvdW50ID0gbmV3IFB1YmxpY0tleShzdGFrZVBvb2wubWFuYWdlckZlZUFjY291bnQpO1xuXG4gIGNvbnN0IHBvb2xUb2tlbkFjY291bnQgPSBnZXRBc3NvY2lhdGVkVG9rZW5BZGRyZXNzU3luYyhwb29sTWludCwgdG9rZW5Pd25lcik7XG4gIGNvbnN0IHdpdGhkcmF3QXV0aG9yaXR5ID0gZmluZFdpdGhkcmF3QXV0aG9yaXR5UHJvZ3JhbUFkZHJlc3NTeW5jKFNUQUtFX1BPT0xfUFJPR1JBTV9JRCwgc3Rha2VQb29sQWRkcmVzcyk7XG5cbiAgY29uc3QgcG9vbEFtb3VudCA9IEJpZ0ludChwb29sQW1vdW50U3RyaW5nKTtcblxuICByZXR1cm4gW1xuICAgIGNyZWF0ZUFwcHJvdmVJbnN0cnVjdGlvbihwb29sVG9rZW5BY2NvdW50LCB0cmFuc2ZlckF1dGhvcml0eSwgdG9rZW5Pd25lciwgcG9vbEFtb3VudCksXG4gICAgU3lzdGVtUHJvZ3JhbS5jcmVhdGVBY2NvdW50KHtcbiAgICAgIGZyb21QdWJrZXk6IHRva2VuT3duZXIsXG4gICAgICBuZXdBY2NvdW50UHVia2V5OiBkZXN0aW5hdGlvblN0YWtlQWNjb3VudCxcbiAgICAgIGxhbXBvcnRzOiBTVEFLRV9BQ0NPVU5UX1JFTlRfRVhFTVBUX0FNT1VOVCxcbiAgICAgIHNwYWNlOiBTdGFrZVByb2dyYW0uc3BhY2UsXG4gICAgICBwcm9ncmFtSWQ6IFN0YWtlUHJvZ3JhbS5wcm9ncmFtSWQsXG4gICAgfSksXG4gICAgU3Rha2VQb29sSW5zdHJ1Y3Rpb24ud2l0aGRyYXdTdGFrZSh7XG4gICAgICBzdGFrZVBvb2w6IHN0YWtlUG9vbEFkZHJlc3MsXG4gICAgICB2YWxpZGF0b3JMaXN0OiB2YWxpZGF0b3JMaXN0LFxuICAgICAgdmFsaWRhdG9yU3Rha2U6IHZhbGlkYXRvckFkZHJlc3MsXG4gICAgICBkZXN0aW5hdGlvblN0YWtlOiBkZXN0aW5hdGlvblN0YWtlQWNjb3VudCxcbiAgICAgIGRlc3RpbmF0aW9uU3Rha2VBdXRob3JpdHk6IHRva2VuT3duZXIsXG4gICAgICBzb3VyY2VUcmFuc2ZlckF1dGhvcml0eTogdHJhbnNmZXJBdXRob3JpdHksXG4gICAgICBzb3VyY2VQb29sQWNjb3VudDogcG9vbFRva2VuQWNjb3VudCxcbiAgICAgIG1hbmFnZXJGZWVBY2NvdW50OiBtYW5hZ2VyRmVlQWNjb3VudCxcbiAgICAgIHBvb2xNaW50OiBwb29sTWludCxcbiAgICAgIHBvb2xUb2tlbnM6IE51bWJlcihwb29sQW1vdW50KSxcbiAgICAgIHdpdGhkcmF3QXV0aG9yaXR5LFxuICAgIH0pLFxuICAgIC4uLlN0YWtlUHJvZ3JhbS5kZWFjdGl2YXRlKHtcbiAgICAgIHN0YWtlUHVia2V5OiBkZXN0aW5hdGlvblN0YWtlQWNjb3VudCxcbiAgICAgIGF1dGhvcml6ZWRQdWJrZXk6IHRva2VuT3duZXIsXG4gICAgfSkuaW5zdHJ1Y3Rpb25zLFxuICBdO1xufVxuXG4vKipcbiAqIENvbnN0cnVjdCBTb2xhbmEgd2l0aGRyYXdTdGFrZSBzdGFrZSBwb29sIHBhcmFtZXRlcnMgZnJvbSBpbnN0cnVjdGlvbi5cbiAqXG4gKiBAcGFyYW0ge1RyYW5zYWN0aW9uSW5zdHJ1Y3Rpb259IGluc3RydWN0aW9uXG4gKiBAcmV0dXJucyB7RGVwb3NpdFNvbFBhcmFtc31cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlY29kZVdpdGhkcmF3U3Rha2UoaW5zdHJ1Y3Rpb246IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24pOiBXaXRoZHJhd1N0YWtlUGFyYW1zIHtcbiAgY29uc3QgeyBwcm9ncmFtSWQsIGtleXMsIGRhdGEgfSA9IGluc3RydWN0aW9uO1xuXG4gIGFzc2VydChcbiAgICBwcm9ncmFtSWQuZXF1YWxzKFNUQUtFX1BPT0xfUFJPR1JBTV9JRCksXG4gICAgJ0ludmFsaWQgV2l0aGRyYXdTdGFrZSBpbnN0cnVjdGlvbiwgcHJvZ3JhbSBJRCBtdXN0IGJlIHRoZSBTdGFrZSBQb29sIFByb2dyYW0nXG4gICk7XG5cbiAgY29uc3QgbGF5b3V0Q29kZSA9IGRhdGEucmVhZFVpbnQ4KDApO1xuICBhc3NlcnQobGF5b3V0Q29kZSA9PT0gV0lUSERSQVdfU1RBS0VfTEFZT1VUX0NPREUsICdJbmNvcnJlY3QgbGF5b3V0IGNvZGUgaW4gV2l0aGRyYXdTdGFrZSBkYXRhJyk7XG4gIGFzc2VydChkYXRhLmxlbmd0aCA9PT0gOSwgJ0luY29ycmVjdCBkYXRhIHNpemUgZm9yIFdpdGhkcmF3U3Rha2UgbGF5b3V0Jyk7XG4gIGNvbnN0IHBvb2xUb2tlbnMgPSBkYXRhLnJlYWRCaWdJbnQ2NExFKDEpO1xuXG4gIGxldCBpID0gMDtcbiAgY29uc3Qgc3Rha2VQb29sID0gcGFyc2VLZXkoa2V5c1tpKytdLCB7IGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogdHJ1ZSB9KTtcbiAgY29uc3QgdmFsaWRhdG9yTGlzdCA9IHBhcnNlS2V5KGtleXNbaSsrXSwgeyBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IHRydWUgfSk7XG4gIGNvbnN0IHdpdGhkcmF3QXV0aG9yaXR5ID0gcGFyc2VLZXkoa2V5c1tpKytdLCB7IGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogZmFsc2UgfSk7XG4gIGNvbnN0IHZhbGlkYXRvclN0YWtlID0gcGFyc2VLZXkoa2V5c1tpKytdLCB7IGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogdHJ1ZSB9KTtcbiAgY29uc3QgZGVzdGluYXRpb25TdGFrZSA9IGtleXNbaSsrXS5wdWJrZXk7XG4gIGNvbnN0IGRlc3RpbmF0aW9uU3Rha2VBdXRob3JpdHkgPSBrZXlzW2krK10ucHVia2V5O1xuICBjb25zdCBzb3VyY2VUcmFuc2ZlckF1dGhvcml0eSA9IHBhcnNlS2V5KGtleXNbaSsrXSwgeyBpc1NpZ25lcjogdHJ1ZSwgaXNXcml0YWJsZTogZmFsc2UgfSk7XG4gIGNvbnN0IHNvdXJjZVBvb2xBY2NvdW50ID0gcGFyc2VLZXkoa2V5c1tpKytdLCB7IGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogdHJ1ZSB9KTtcbiAgY29uc3QgbWFuYWdlckZlZUFjY291bnQgPSBwYXJzZUtleShrZXlzW2krK10sIHsgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiB0cnVlIH0pO1xuICBjb25zdCBwb29sTWludCA9IHBhcnNlS2V5KGtleXNbaSsrXSwgeyBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IHRydWUgfSk7XG4gIGNvbnN0IHN5c3ZhckNsb2NrUHVia2V5ID0gcGFyc2VLZXkoa2V5c1tpKytdLCB7IGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogZmFsc2UgfSk7XG4gIGFzc2VydChzeXN2YXJDbG9ja1B1YmtleS5lcXVhbHMoU1lTVkFSX0NMT0NLX1BVQktFWSksICdVbmV4cGVjdGVkIHB1YmtleSBpbiBXaXRoZHJhd1N0YWtlIGluc3RydWN0aW9uJyk7XG4gIGNvbnN0IHRva2VuUHJvZ3JhbUlkID0gcGFyc2VLZXkoa2V5c1tpKytdLCB7IGlzU2lnbmVyOiBmYWxzZSwgaXNXcml0YWJsZTogZmFsc2UgfSk7XG4gIGFzc2VydCh0b2tlblByb2dyYW1JZC5lcXVhbHMoVE9LRU5fUFJPR1JBTV9JRCksICdVbmV4cGVjdGVkIHB1YmtleSBpbiBXaXRoZHJhd1N0YWtlIGluc3RydWN0aW9uJyk7XG4gIGNvbnN0IHN0YWtlUHJvZ3JhbVByb2dyYW1JZCA9IHBhcnNlS2V5KGtleXNbaSsrXSwgeyBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IGZhbHNlIH0pO1xuICBhc3NlcnQoc3Rha2VQcm9ncmFtUHJvZ3JhbUlkLmVxdWFscyhTdGFrZVByb2dyYW0ucHJvZ3JhbUlkKSwgJ1VuZXhwZWN0ZWQgcHVia2V5IGluIFdpdGhkcmF3U3Rha2UgaW5zdHJ1Y3Rpb24nKTtcbiAgYXNzZXJ0KGkgPT09IGtleXMubGVuZ3RoLCAnVG9vIG1hbnkga2V5cyBpbiBXaXRoZHJhd1N0YWtlIGluc3RydWN0aW9uJyk7XG5cbiAgcmV0dXJuIHtcbiAgICBzdGFrZVBvb2wsXG4gICAgdmFsaWRhdG9yTGlzdCxcbiAgICB3aXRoZHJhd0F1dGhvcml0eSxcbiAgICB2YWxpZGF0b3JTdGFrZSxcbiAgICBkZXN0aW5hdGlvblN0YWtlLFxuICAgIGRlc3RpbmF0aW9uU3Rha2VBdXRob3JpdHksXG4gICAgc291cmNlVHJhbnNmZXJBdXRob3JpdHksXG4gICAgc291cmNlUG9vbEFjY291bnQsXG4gICAgbWFuYWdlckZlZUFjY291bnQsXG4gICAgcG9vbE1pbnQsXG4gICAgcG9vbFRva2VuczogTnVtYmVyKHBvb2xUb2tlbnMpLFxuICB9O1xufVxuIl19
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyPair.d.ts","sourceRoot":"","sources":["../../../../src/lib/keyPair.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrC,qBAAa,OAAQ,SAAQ,cAAc;IACzC,SAAS,CAAC,OAAO,EAAE,WAAW,CAAC;IAC/B,SAAS,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC;IAElC;;;;OAIG;gBACS,MAAM,CAAC,EAAE,cAAc;IAInC,kBAAkB;IAClB,wCAAwC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW;IAUlE,kBAAkB;IAClB,uCAAuC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW;IAMjE;;;;;OAKG;IACH,OAAO,CAAC,GAAG,UAAQ,GAAG,UAAU;IAqBhC,kBAAkB;IAClB,UAAU,IAAI,MAAM;CAIrB"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.KeyPair = void 0;
|
|
4
|
+
const web3_js_1 = require("@solana/web3.js");
|
|
5
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
6
|
+
const utils_1 = require("./utils");
|
|
7
|
+
class KeyPair extends sdk_core_1.Ed25519KeyPair {
|
|
8
|
+
/**
|
|
9
|
+
* Public constructor. By default, creates a key pair with a random master seed.
|
|
10
|
+
*
|
|
11
|
+
* @param { KeyPairOptions } source Either a master seed, a private key, or a public key
|
|
12
|
+
*/
|
|
13
|
+
constructor(source) {
|
|
14
|
+
super(source);
|
|
15
|
+
}
|
|
16
|
+
/** @inheritdoc */
|
|
17
|
+
recordKeysFromPrivateKeyInProtocolFormat(prv) {
|
|
18
|
+
const prvKey = (0, utils_1.base58ToUint8Array)(prv);
|
|
19
|
+
const keyPair = web3_js_1.Keypair.fromSecretKey(prvKey);
|
|
20
|
+
return {
|
|
21
|
+
pub: keyPair.publicKey.toBuffer().toString('hex'),
|
|
22
|
+
prv: Buffer.from(keyPair.secretKey.slice(0, 32)).toString('hex'),
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
/** @inheritdoc */
|
|
26
|
+
recordKeysFromPublicKeyInProtocolFormat(pub) {
|
|
27
|
+
return {
|
|
28
|
+
pub: Buffer.from((0, utils_1.base58ToUint8Array)(pub)).toString('hex'),
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Solana default keys format public key as a base58 string and secret key as Uint8Array
|
|
33
|
+
*
|
|
34
|
+
* @param {boolean} raw defines if the prv key is returned in Uint8Array, default is base58
|
|
35
|
+
* @returns {SolanaKeys} The keys in the defined format
|
|
36
|
+
*/
|
|
37
|
+
getKeys(raw = false) {
|
|
38
|
+
// keys are originally created in hex, but we need base58
|
|
39
|
+
const publicKeyBuffer = Buffer.from(this.keyPair.pub, 'hex');
|
|
40
|
+
const base58Pub = (0, utils_1.Uint8ArrayTobase58)(publicKeyBuffer);
|
|
41
|
+
const result = { pub: base58Pub };
|
|
42
|
+
if (!!this.keyPair.prv) {
|
|
43
|
+
const secretKeyBuffer = Buffer.from(this.keyPair.prv, 'hex');
|
|
44
|
+
const solanaSecretKey = new Uint8Array(64);
|
|
45
|
+
solanaSecretKey.set(secretKeyBuffer);
|
|
46
|
+
solanaSecretKey.set(publicKeyBuffer, 32);
|
|
47
|
+
if (raw) {
|
|
48
|
+
result.prv = solanaSecretKey;
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
result.prv = (0, utils_1.Uint8ArrayTobase58)(solanaSecretKey);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return result;
|
|
55
|
+
}
|
|
56
|
+
/** @inheritdoc */
|
|
57
|
+
getAddress() {
|
|
58
|
+
const keys = this.getKeys();
|
|
59
|
+
return keys.pub;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
exports.KeyPair = KeyPair;
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5UGFpci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIva2V5UGFpci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FBd0Q7QUFDeEQsbURBQW1GO0FBRW5GLG1DQUFpRTtBQUVqRSxNQUFhLE9BQVEsU0FBUSx5QkFBYztJQUl6Qzs7OztPQUlHO0lBQ0gsWUFBWSxNQUF1QjtRQUNqQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDaEIsQ0FBQztJQUVELGtCQUFrQjtJQUNsQix3Q0FBd0MsQ0FBQyxHQUFXO1FBQ2xELE1BQU0sTUFBTSxHQUFHLElBQUEsMEJBQWtCLEVBQUMsR0FBRyxDQUFDLENBQUM7UUFDdkMsTUFBTSxPQUFPLEdBQUcsaUJBQVUsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFakQsT0FBTztZQUNMLEdBQUcsRUFBRSxPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUM7WUFDakQsR0FBRyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztTQUNqRSxDQUFDO0lBQ0osQ0FBQztJQUVELGtCQUFrQjtJQUNsQix1Q0FBdUMsQ0FBQyxHQUFXO1FBQ2pELE9BQU87WUFDTCxHQUFHLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFBLDBCQUFrQixFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztTQUMxRCxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsT0FBTyxDQUFDLEdBQUcsR0FBRyxLQUFLO1FBQ2pCLHlEQUF5RDtRQUN6RCxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzdELE1BQU0sU0FBUyxHQUFHLElBQUEsMEJBQWtCLEVBQUMsZUFBZSxDQUFDLENBQUM7UUFFdEQsTUFBTSxNQUFNLEdBQWUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLENBQUM7UUFDOUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUN2QixNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzdELE1BQU0sZUFBZSxHQUFHLElBQUksVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzNDLGVBQWUsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDckMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFFekMsSUFBSSxHQUFHLEVBQUUsQ0FBQztnQkFDUixNQUFNLENBQUMsR0FBRyxHQUFHLGVBQWUsQ0FBQztZQUMvQixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sTUFBTSxDQUFDLEdBQUcsR0FBRyxJQUFBLDBCQUFrQixFQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQ25ELENBQUM7UUFDSCxDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixVQUFVO1FBQ1IsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzVCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQztJQUNsQixDQUFDO0NBQ0Y7QUEvREQsMEJBK0RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgS2V5cGFpciBhcyBTb2xLZXlwYWlyIH0gZnJvbSAnQHNvbGFuYS93ZWIzLmpzJztcbmltcG9ydCB7IERlZmF1bHRLZXlzLCBLZXlQYWlyT3B0aW9ucywgRWQyNTUxOUtleVBhaXIgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBTb2xhbmFLZXlzIH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBiYXNlNThUb1VpbnQ4QXJyYXksIFVpbnQ4QXJyYXlUb2Jhc2U1OCB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgS2V5UGFpciBleHRlbmRzIEVkMjU1MTlLZXlQYWlyIHtcbiAgcHJvdGVjdGVkIGtleVBhaXI6IERlZmF1bHRLZXlzO1xuICBwcm90ZWN0ZWQgc291cmNlPzogS2V5UGFpck9wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFB1YmxpYyBjb25zdHJ1Y3Rvci4gQnkgZGVmYXVsdCwgY3JlYXRlcyBhIGtleSBwYWlyIHdpdGggYSByYW5kb20gbWFzdGVyIHNlZWQuXG4gICAqXG4gICAqIEBwYXJhbSB7IEtleVBhaXJPcHRpb25zIH0gc291cmNlIEVpdGhlciBhIG1hc3RlciBzZWVkLCBhIHByaXZhdGUga2V5LCBvciBhIHB1YmxpYyBrZXlcbiAgICovXG4gIGNvbnN0cnVjdG9yKHNvdXJjZT86IEtleVBhaXJPcHRpb25zKSB7XG4gICAgc3VwZXIoc291cmNlKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICByZWNvcmRLZXlzRnJvbVByaXZhdGVLZXlJblByb3RvY29sRm9ybWF0KHBydjogc3RyaW5nKTogRGVmYXVsdEtleXMge1xuICAgIGNvbnN0IHBydktleSA9IGJhc2U1OFRvVWludDhBcnJheShwcnYpO1xuICAgIGNvbnN0IGtleVBhaXIgPSBTb2xLZXlwYWlyLmZyb21TZWNyZXRLZXkocHJ2S2V5KTtcblxuICAgIHJldHVybiB7XG4gICAgICBwdWI6IGtleVBhaXIucHVibGljS2V5LnRvQnVmZmVyKCkudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgcHJ2OiBCdWZmZXIuZnJvbShrZXlQYWlyLnNlY3JldEtleS5zbGljZSgwLCAzMikpLnRvU3RyaW5nKCdoZXgnKSxcbiAgICB9O1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHJlY29yZEtleXNGcm9tUHVibGljS2V5SW5Qcm90b2NvbEZvcm1hdChwdWI6IHN0cmluZyk6IERlZmF1bHRLZXlzIHtcbiAgICByZXR1cm4ge1xuICAgICAgcHViOiBCdWZmZXIuZnJvbShiYXNlNThUb1VpbnQ4QXJyYXkocHViKSkudG9TdHJpbmcoJ2hleCcpLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogU29sYW5hIGRlZmF1bHQga2V5cyBmb3JtYXQgcHVibGljIGtleSBhcyBhIGJhc2U1OCBzdHJpbmcgYW5kIHNlY3JldCBrZXkgYXMgVWludDhBcnJheVxuICAgKlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IHJhdyBkZWZpbmVzIGlmIHRoZSBwcnYga2V5IGlzIHJldHVybmVkIGluIFVpbnQ4QXJyYXksIGRlZmF1bHQgaXMgYmFzZTU4XG4gICAqIEByZXR1cm5zIHtTb2xhbmFLZXlzfSBUaGUga2V5cyBpbiB0aGUgZGVmaW5lZCBmb3JtYXRcbiAgICovXG4gIGdldEtleXMocmF3ID0gZmFsc2UpOiBTb2xhbmFLZXlzIHtcbiAgICAvLyBrZXlzIGFyZSBvcmlnaW5hbGx5IGNyZWF0ZWQgaW4gaGV4LCBidXQgd2UgbmVlZCBiYXNlNThcbiAgICBjb25zdCBwdWJsaWNLZXlCdWZmZXIgPSBCdWZmZXIuZnJvbSh0aGlzLmtleVBhaXIucHViLCAnaGV4Jyk7XG4gICAgY29uc3QgYmFzZTU4UHViID0gVWludDhBcnJheVRvYmFzZTU4KHB1YmxpY0tleUJ1ZmZlcik7XG5cbiAgICBjb25zdCByZXN1bHQ6IFNvbGFuYUtleXMgPSB7IHB1YjogYmFzZTU4UHViIH07XG4gICAgaWYgKCEhdGhpcy5rZXlQYWlyLnBydikge1xuICAgICAgY29uc3Qgc2VjcmV0S2V5QnVmZmVyID0gQnVmZmVyLmZyb20odGhpcy5rZXlQYWlyLnBydiwgJ2hleCcpO1xuICAgICAgY29uc3Qgc29sYW5hU2VjcmV0S2V5ID0gbmV3IFVpbnQ4QXJyYXkoNjQpO1xuICAgICAgc29sYW5hU2VjcmV0S2V5LnNldChzZWNyZXRLZXlCdWZmZXIpO1xuICAgICAgc29sYW5hU2VjcmV0S2V5LnNldChwdWJsaWNLZXlCdWZmZXIsIDMyKTtcblxuICAgICAgaWYgKHJhdykge1xuICAgICAgICByZXN1bHQucHJ2ID0gc29sYW5hU2VjcmV0S2V5O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzdWx0LnBydiA9IFVpbnQ4QXJyYXlUb2Jhc2U1OChzb2xhbmFTZWNyZXRLZXkpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldEFkZHJlc3MoKTogc3RyaW5nIHtcbiAgICBjb25zdCBrZXlzID0gdGhpcy5nZXRLZXlzKCk7XG4gICAgcmV0dXJuIGtleXMucHViO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/lib/messages/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC"}
|
|
@@ -15,4 +15,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./messageBuilderFactory"), exports);
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL21lc3NhZ2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwwREFBd0MiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21lc3NhZ2VCdWlsZGVyRmFjdG9yeSc7XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messageBuilderFactory.d.ts","sourceRoot":"","sources":["../../../../../src/lib/messages/messageBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,yBAAyB,EAAE,eAAe,EAAE,mBAAmB,EAAwB,MAAM,sBAAsB,CAAC;AAE7H,qBAAa,qBAAsB,SAAQ,yBAAyB;gBACtD,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;IAIrC,iBAAiB,CAAC,IAAI,EAAE,mBAAmB,GAAG,eAAe;CAQrE"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MessageBuilderFactory = void 0;
|
|
4
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
5
|
+
class MessageBuilderFactory extends sdk_core_1.BaseMessageBuilderFactory {
|
|
6
|
+
constructor(coinConfig) {
|
|
7
|
+
super(coinConfig);
|
|
8
|
+
}
|
|
9
|
+
getMessageBuilder(type) {
|
|
10
|
+
switch (type) {
|
|
11
|
+
case sdk_core_1.MessageStandardType.SIMPLE:
|
|
12
|
+
return new sdk_core_1.SimpleMessageBuilder(this.coinConfig);
|
|
13
|
+
default:
|
|
14
|
+
throw new Error(`Invalid message standard ${type}`);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.MessageBuilderFactory = MessageBuilderFactory;
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZUJ1aWxkZXJGYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tZXNzYWdlcy9tZXNzYWdlQnVpbGRlckZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsbURBQTZIO0FBRTdILE1BQWEscUJBQXNCLFNBQVEsb0NBQXlCO0lBQ2xFLFlBQVksVUFBZ0M7UUFDMUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxJQUF5QjtRQUNoRCxRQUFRLElBQUksRUFBRSxDQUFDO1lBQ2IsS0FBSyw4QkFBbUIsQ0FBQyxNQUFNO2dCQUM3QixPQUFPLElBQUksK0JBQW9CLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ25EO2dCQUNFLE1BQU0sSUFBSSxLQUFLLENBQUMsNEJBQTRCLElBQUksRUFBRSxDQUFDLENBQUM7UUFDeEQsQ0FBQztJQUNILENBQUM7Q0FDRjtBQWJELHNEQWFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgQmFzZU1lc3NhZ2VCdWlsZGVyRmFjdG9yeSwgSU1lc3NhZ2VCdWlsZGVyLCBNZXNzYWdlU3RhbmRhcmRUeXBlLCBTaW1wbGVNZXNzYWdlQnVpbGRlciB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcblxuZXhwb3J0IGNsYXNzIE1lc3NhZ2VCdWlsZGVyRmFjdG9yeSBleHRlbmRzIEJhc2VNZXNzYWdlQnVpbGRlckZhY3Rvcnkge1xuICBjb25zdHJ1Y3Rvcihjb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKGNvaW5Db25maWcpO1xuICB9XG5cbiAgcHVibGljIGdldE1lc3NhZ2VCdWlsZGVyKHR5cGU6IE1lc3NhZ2VTdGFuZGFyZFR5cGUpOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgY2FzZSBNZXNzYWdlU3RhbmRhcmRUeXBlLlNJTVBMRTpcbiAgICAgICAgcmV0dXJuIG5ldyBTaW1wbGVNZXNzYWdlQnVpbGRlcih0aGlzLmNvaW5Db25maWcpO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIG1lc3NhZ2Ugc3RhbmRhcmQgJHt0eXBlfWApO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { TransactionType } from '@bitgo-beta/sdk-core';
|
|
2
|
+
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
3
|
+
import { Transaction } from './transaction';
|
|
4
|
+
import { TransactionBuilder } from './transactionBuilder';
|
|
5
|
+
export declare class RecoverNestedAtaBuilder extends TransactionBuilder {
|
|
6
|
+
protected _nestedAccountAddress: string;
|
|
7
|
+
protected _nestedMintAddress: string;
|
|
8
|
+
protected _destinationAccountAddress: string;
|
|
9
|
+
protected _ownerAccountAddress: string;
|
|
10
|
+
protected _ownerMintAddress: string;
|
|
11
|
+
protected _walletAddress: string;
|
|
12
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
13
|
+
protected get transactionType(): TransactionType;
|
|
14
|
+
nestedAccountAddress(nestedAccountAddress: string): this;
|
|
15
|
+
nestedMintAddress(nestedMintAddress: string): this;
|
|
16
|
+
destinationAccountAddress(destinationAccountAddress: string): this;
|
|
17
|
+
ownerAccountAddress(ownerAccountAddress: string): this;
|
|
18
|
+
ownerMintAddress(ownerMintAddress: string): this;
|
|
19
|
+
walletAddress(walletAddress: string): this;
|
|
20
|
+
/** @inheritDoc */
|
|
21
|
+
initBuilder(tx: Transaction): void;
|
|
22
|
+
/** @inheritdoc */
|
|
23
|
+
protected buildImplementation(): Promise<Transaction>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=recoverNestedAtaBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recoverNestedAtaBuilder.d.ts","sourceRoot":"","sources":["../../../../src/lib/recoverNestedAtaBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAI7D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,qBAAa,uBAAwB,SAAQ,kBAAkB;IAC7D,SAAS,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACxC,SAAS,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACrC,SAAS,CAAC,0BAA0B,EAAE,MAAM,CAAC;IAC7C,SAAS,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACvC,SAAS,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACpC,SAAS,CAAC,cAAc,EAAE,MAAM,CAAC;gBAErB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,oBAAoB,CAAC,oBAAoB,EAAE,MAAM,GAAG,IAAI;IAMxD,iBAAiB,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI;IAMlD,yBAAyB,CAAC,yBAAyB,EAAE,MAAM,GAAG,IAAI;IAMlE,mBAAmB,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI;IAMtD,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI;IAMhD,aAAa,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;IAM1C,kBAAkB;IAClB,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAelC,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;CAwB5D"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.RecoverNestedAtaBuilder = void 0;
|
|
7
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
8
|
+
const assert_1 = __importDefault(require("assert"));
|
|
9
|
+
const constants_1 = require("./constants");
|
|
10
|
+
const transaction_1 = require("./transaction");
|
|
11
|
+
const transactionBuilder_1 = require("./transactionBuilder");
|
|
12
|
+
const utils_1 = require("./utils");
|
|
13
|
+
class RecoverNestedAtaBuilder extends transactionBuilder_1.TransactionBuilder {
|
|
14
|
+
constructor(_coinConfig) {
|
|
15
|
+
super(_coinConfig);
|
|
16
|
+
this._transaction = new transaction_1.Transaction(_coinConfig);
|
|
17
|
+
}
|
|
18
|
+
get transactionType() {
|
|
19
|
+
return sdk_core_1.TransactionType.CloseAssociatedTokenAccount;
|
|
20
|
+
}
|
|
21
|
+
nestedAccountAddress(nestedAccountAddress) {
|
|
22
|
+
(0, utils_1.validateAddress)(nestedAccountAddress, 'nestedAccountAddress');
|
|
23
|
+
this._nestedAccountAddress = nestedAccountAddress;
|
|
24
|
+
return this;
|
|
25
|
+
}
|
|
26
|
+
nestedMintAddress(nestedMintAddress) {
|
|
27
|
+
(0, utils_1.validateAddress)(nestedMintAddress, 'nestedMintAddress');
|
|
28
|
+
this._nestedMintAddress = nestedMintAddress;
|
|
29
|
+
return this;
|
|
30
|
+
}
|
|
31
|
+
destinationAccountAddress(destinationAccountAddress) {
|
|
32
|
+
(0, utils_1.validateAddress)(destinationAccountAddress, 'destinationAccountAddress');
|
|
33
|
+
this._destinationAccountAddress = destinationAccountAddress;
|
|
34
|
+
return this;
|
|
35
|
+
}
|
|
36
|
+
ownerAccountAddress(ownerAccountAddress) {
|
|
37
|
+
(0, utils_1.validateAddress)(ownerAccountAddress, 'ownerAccountAddress');
|
|
38
|
+
this._ownerAccountAddress = ownerAccountAddress;
|
|
39
|
+
return this;
|
|
40
|
+
}
|
|
41
|
+
ownerMintAddress(ownerMintAddress) {
|
|
42
|
+
(0, utils_1.validateAddress)(ownerMintAddress, 'ownerMintAddress');
|
|
43
|
+
this._ownerMintAddress = ownerMintAddress;
|
|
44
|
+
return this;
|
|
45
|
+
}
|
|
46
|
+
walletAddress(walletAddress) {
|
|
47
|
+
(0, utils_1.validateAddress)(walletAddress, 'walletAddress');
|
|
48
|
+
this._walletAddress = walletAddress;
|
|
49
|
+
return this;
|
|
50
|
+
}
|
|
51
|
+
/** @inheritDoc */
|
|
52
|
+
initBuilder(tx) {
|
|
53
|
+
super.initBuilder(tx);
|
|
54
|
+
for (const instruction of this._instructionsData) {
|
|
55
|
+
if (instruction.type === constants_1.InstructionBuilderTypes.RecoverNestedAssociatedTokenAccount) {
|
|
56
|
+
const recoverNestedInstruction = instruction;
|
|
57
|
+
this.nestedAccountAddress(recoverNestedInstruction.params.nestedAccountAddress);
|
|
58
|
+
this.nestedMintAddress(recoverNestedInstruction.params.nestedMintAddress);
|
|
59
|
+
this.destinationAccountAddress(recoverNestedInstruction.params.destinationAccountAddress);
|
|
60
|
+
this.ownerAccountAddress(recoverNestedInstruction.params.ownerAccountAddress);
|
|
61
|
+
this.ownerMintAddress(recoverNestedInstruction.params.ownerMintAddress);
|
|
62
|
+
this.walletAddress(recoverNestedInstruction.params.walletAddress);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
/** @inheritdoc */
|
|
67
|
+
async buildImplementation() {
|
|
68
|
+
(0, assert_1.default)(this._nestedAccountAddress, 'nestedAccountAddress must be set before building the transaction');
|
|
69
|
+
(0, assert_1.default)(this._nestedMintAddress, 'nestedMintAddress must be set before building the transaction');
|
|
70
|
+
(0, assert_1.default)(this._destinationAccountAddress, 'destinationAccountAddress must be set before building the transaction');
|
|
71
|
+
(0, assert_1.default)(this._ownerAccountAddress, 'ownerAccountAddress must be set before building the transaction');
|
|
72
|
+
(0, assert_1.default)(this._ownerMintAddress, 'ownerMintAddress must be set before building the transaction');
|
|
73
|
+
(0, assert_1.default)(this._walletAddress, 'walletAddress must be set before building the transaction');
|
|
74
|
+
const recoverNestedData = {
|
|
75
|
+
type: constants_1.InstructionBuilderTypes.RecoverNestedAssociatedTokenAccount,
|
|
76
|
+
params: {
|
|
77
|
+
nestedAccountAddress: this._nestedAccountAddress,
|
|
78
|
+
nestedMintAddress: this._nestedMintAddress,
|
|
79
|
+
destinationAccountAddress: this._destinationAccountAddress,
|
|
80
|
+
ownerAccountAddress: this._ownerAccountAddress,
|
|
81
|
+
ownerMintAddress: this._ownerMintAddress,
|
|
82
|
+
walletAddress: this._walletAddress,
|
|
83
|
+
},
|
|
84
|
+
};
|
|
85
|
+
this._instructionsData = [recoverNestedData];
|
|
86
|
+
return await super.buildImplementation();
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
exports.RecoverNestedAtaBuilder = RecoverNestedAtaBuilder;
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3Zlck5lc3RlZEF0YUJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3JlY292ZXJOZXN0ZWRBdGFCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG1EQUF1RDtBQUV2RCxvREFBNEI7QUFDNUIsMkNBQXNEO0FBRXRELCtDQUE0QztBQUM1Qyw2REFBMEQ7QUFDMUQsbUNBQTBDO0FBRTFDLE1BQWEsdUJBQXdCLFNBQVEsdUNBQWtCO0lBUTdELFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ25CLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSx5QkFBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBZSxDQUFDLDJCQUEyQixDQUFDO0lBQ3JELENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxvQkFBNEI7UUFDL0MsSUFBQSx1QkFBZSxFQUFDLG9CQUFvQixFQUFFLHNCQUFzQixDQUFDLENBQUM7UUFDOUQsSUFBSSxDQUFDLHFCQUFxQixHQUFHLG9CQUFvQixDQUFDO1FBQ2xELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELGlCQUFpQixDQUFDLGlCQUF5QjtRQUN6QyxJQUFBLHVCQUFlLEVBQUMsaUJBQWlCLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztRQUN4RCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsaUJBQWlCLENBQUM7UUFDNUMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQseUJBQXlCLENBQUMseUJBQWlDO1FBQ3pELElBQUEsdUJBQWUsRUFBQyx5QkFBeUIsRUFBRSwyQkFBMkIsQ0FBQyxDQUFDO1FBQ3hFLElBQUksQ0FBQywwQkFBMEIsR0FBRyx5QkFBeUIsQ0FBQztRQUM1RCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxtQkFBMkI7UUFDN0MsSUFBQSx1QkFBZSxFQUFDLG1CQUFtQixFQUFFLHFCQUFxQixDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLG9CQUFvQixHQUFHLG1CQUFtQixDQUFDO1FBQ2hELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELGdCQUFnQixDQUFDLGdCQUF3QjtRQUN2QyxJQUFBLHVCQUFlLEVBQUMsZ0JBQWdCLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsZ0JBQWdCLENBQUM7UUFDMUMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsYUFBYSxDQUFDLGFBQXFCO1FBQ2pDLElBQUEsdUJBQWUsRUFBQyxhQUFhLEVBQUUsZUFBZSxDQUFDLENBQUM7UUFDaEQsSUFBSSxDQUFDLGNBQWMsR0FBRyxhQUFhLENBQUM7UUFDcEMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLFdBQVcsQ0FBQyxFQUFlO1FBQ3pCLEtBQUssQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdEIsS0FBSyxNQUFNLFdBQVcsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUNqRCxJQUFJLFdBQVcsQ0FBQyxJQUFJLEtBQUssbUNBQXVCLENBQUMsbUNBQW1DLEVBQUUsQ0FBQztnQkFDckYsTUFBTSx3QkFBd0IsR0FBcUIsV0FBVyxDQUFDO2dCQUMvRCxJQUFJLENBQUMsb0JBQW9CLENBQUMsd0JBQXdCLENBQUMsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7Z0JBQ2hGLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztnQkFDMUUsSUFBSSxDQUFDLHlCQUF5QixDQUFDLHdCQUF3QixDQUFDLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO2dCQUMxRixJQUFJLENBQUMsbUJBQW1CLENBQUMsd0JBQXdCLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7Z0JBQzlFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztnQkFDeEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDcEUsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsa0JBQWtCO0lBQ1IsS0FBSyxDQUFDLG1CQUFtQjtRQUNqQyxJQUFBLGdCQUFNLEVBQUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLGtFQUFrRSxDQUFDLENBQUM7UUFDdkcsSUFBQSxnQkFBTSxFQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSwrREFBK0QsQ0FBQyxDQUFDO1FBQ2pHLElBQUEsZ0JBQU0sRUFBQyxJQUFJLENBQUMsMEJBQTBCLEVBQUUsdUVBQXVFLENBQUMsQ0FBQztRQUNqSCxJQUFBLGdCQUFNLEVBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLGlFQUFpRSxDQUFDLENBQUM7UUFDckcsSUFBQSxnQkFBTSxFQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSw4REFBOEQsQ0FBQyxDQUFDO1FBQy9GLElBQUEsZ0JBQU0sRUFBQyxJQUFJLENBQUMsY0FBYyxFQUFFLDJEQUEyRCxDQUFDLENBQUM7UUFFekYsTUFBTSxpQkFBaUIsR0FBcUI7WUFDMUMsSUFBSSxFQUFFLG1DQUF1QixDQUFDLG1DQUFtQztZQUNqRSxNQUFNLEVBQUU7Z0JBQ04sb0JBQW9CLEVBQUUsSUFBSSxDQUFDLHFCQUFxQjtnQkFDaEQsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGtCQUFrQjtnQkFDMUMseUJBQXlCLEVBQUUsSUFBSSxDQUFDLDBCQUEwQjtnQkFDMUQsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLG9CQUFvQjtnQkFDOUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtnQkFDeEMsYUFBYSxFQUFFLElBQUksQ0FBQyxjQUFjO2FBQ25DO1NBQ0YsQ0FBQztRQUVGLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFFN0MsT0FBTyxNQUFNLEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzNDLENBQUM7Q0FDRjtBQTlGRCwwREE4RkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcyB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IEF0YVJlY292ZXJOZXN0ZWQgfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyB2YWxpZGF0ZUFkZHJlc3MgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNsYXNzIFJlY292ZXJOZXN0ZWRBdGFCdWlsZGVyIGV4dGVuZHMgVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgcHJvdGVjdGVkIF9uZXN0ZWRBY2NvdW50QWRkcmVzczogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX25lc3RlZE1pbnRBZGRyZXNzOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfZGVzdGluYXRpb25BY2NvdW50QWRkcmVzczogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX293bmVyQWNjb3VudEFkZHJlc3M6IHN0cmluZztcbiAgcHJvdGVjdGVkIF9vd25lck1pbnRBZGRyZXNzOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfd2FsbGV0QWRkcmVzczogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbiA9IG5ldyBUcmFuc2FjdGlvbihfY29pbkNvbmZpZyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuQ2xvc2VBc3NvY2lhdGVkVG9rZW5BY2NvdW50O1xuICB9XG5cbiAgbmVzdGVkQWNjb3VudEFkZHJlc3MobmVzdGVkQWNjb3VudEFkZHJlc3M6IHN0cmluZyk6IHRoaXMge1xuICAgIHZhbGlkYXRlQWRkcmVzcyhuZXN0ZWRBY2NvdW50QWRkcmVzcywgJ25lc3RlZEFjY291bnRBZGRyZXNzJyk7XG4gICAgdGhpcy5fbmVzdGVkQWNjb3VudEFkZHJlc3MgPSBuZXN0ZWRBY2NvdW50QWRkcmVzcztcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIG5lc3RlZE1pbnRBZGRyZXNzKG5lc3RlZE1pbnRBZGRyZXNzOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB2YWxpZGF0ZUFkZHJlc3MobmVzdGVkTWludEFkZHJlc3MsICduZXN0ZWRNaW50QWRkcmVzcycpO1xuICAgIHRoaXMuX25lc3RlZE1pbnRBZGRyZXNzID0gbmVzdGVkTWludEFkZHJlc3M7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBkZXN0aW5hdGlvbkFjY291bnRBZGRyZXNzKGRlc3RpbmF0aW9uQWNjb3VudEFkZHJlc3M6IHN0cmluZyk6IHRoaXMge1xuICAgIHZhbGlkYXRlQWRkcmVzcyhkZXN0aW5hdGlvbkFjY291bnRBZGRyZXNzLCAnZGVzdGluYXRpb25BY2NvdW50QWRkcmVzcycpO1xuICAgIHRoaXMuX2Rlc3RpbmF0aW9uQWNjb3VudEFkZHJlc3MgPSBkZXN0aW5hdGlvbkFjY291bnRBZGRyZXNzO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgb3duZXJBY2NvdW50QWRkcmVzcyhvd25lckFjY291bnRBZGRyZXNzOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB2YWxpZGF0ZUFkZHJlc3Mob3duZXJBY2NvdW50QWRkcmVzcywgJ293bmVyQWNjb3VudEFkZHJlc3MnKTtcbiAgICB0aGlzLl9vd25lckFjY291bnRBZGRyZXNzID0gb3duZXJBY2NvdW50QWRkcmVzcztcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIG93bmVyTWludEFkZHJlc3Mob3duZXJNaW50QWRkcmVzczogc3RyaW5nKTogdGhpcyB7XG4gICAgdmFsaWRhdGVBZGRyZXNzKG93bmVyTWludEFkZHJlc3MsICdvd25lck1pbnRBZGRyZXNzJyk7XG4gICAgdGhpcy5fb3duZXJNaW50QWRkcmVzcyA9IG93bmVyTWludEFkZHJlc3M7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICB3YWxsZXRBZGRyZXNzKHdhbGxldEFkZHJlc3M6IHN0cmluZyk6IHRoaXMge1xuICAgIHZhbGlkYXRlQWRkcmVzcyh3YWxsZXRBZGRyZXNzLCAnd2FsbGV0QWRkcmVzcycpO1xuICAgIHRoaXMuX3dhbGxldEFkZHJlc3MgPSB3YWxsZXRBZGRyZXNzO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0RG9jICovXG4gIGluaXRCdWlsZGVyKHR4OiBUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHN1cGVyLmluaXRCdWlsZGVyKHR4KTtcbiAgICBmb3IgKGNvbnN0IGluc3RydWN0aW9uIG9mIHRoaXMuX2luc3RydWN0aW9uc0RhdGEpIHtcbiAgICAgIGlmIChpbnN0cnVjdGlvbi50eXBlID09PSBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5SZWNvdmVyTmVzdGVkQXNzb2NpYXRlZFRva2VuQWNjb3VudCkge1xuICAgICAgICBjb25zdCByZWNvdmVyTmVzdGVkSW5zdHJ1Y3Rpb246IEF0YVJlY292ZXJOZXN0ZWQgPSBpbnN0cnVjdGlvbjtcbiAgICAgICAgdGhpcy5uZXN0ZWRBY2NvdW50QWRkcmVzcyhyZWNvdmVyTmVzdGVkSW5zdHJ1Y3Rpb24ucGFyYW1zLm5lc3RlZEFjY291bnRBZGRyZXNzKTtcbiAgICAgICAgdGhpcy5uZXN0ZWRNaW50QWRkcmVzcyhyZWNvdmVyTmVzdGVkSW5zdHJ1Y3Rpb24ucGFyYW1zLm5lc3RlZE1pbnRBZGRyZXNzKTtcbiAgICAgICAgdGhpcy5kZXN0aW5hdGlvbkFjY291bnRBZGRyZXNzKHJlY292ZXJOZXN0ZWRJbnN0cnVjdGlvbi5wYXJhbXMuZGVzdGluYXRpb25BY2NvdW50QWRkcmVzcyk7XG4gICAgICAgIHRoaXMub3duZXJBY2NvdW50QWRkcmVzcyhyZWNvdmVyTmVzdGVkSW5zdHJ1Y3Rpb24ucGFyYW1zLm93bmVyQWNjb3VudEFkZHJlc3MpO1xuICAgICAgICB0aGlzLm93bmVyTWludEFkZHJlc3MocmVjb3Zlck5lc3RlZEluc3RydWN0aW9uLnBhcmFtcy5vd25lck1pbnRBZGRyZXNzKTtcbiAgICAgICAgdGhpcy53YWxsZXRBZGRyZXNzKHJlY292ZXJOZXN0ZWRJbnN0cnVjdGlvbi5wYXJhbXMud2FsbGV0QWRkcmVzcyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBhc3luYyBidWlsZEltcGxlbWVudGF0aW9uKCk6IFByb21pc2U8VHJhbnNhY3Rpb24+IHtcbiAgICBhc3NlcnQodGhpcy5fbmVzdGVkQWNjb3VudEFkZHJlc3MsICduZXN0ZWRBY2NvdW50QWRkcmVzcyBtdXN0IGJlIHNldCBiZWZvcmUgYnVpbGRpbmcgdGhlIHRyYW5zYWN0aW9uJyk7XG4gICAgYXNzZXJ0KHRoaXMuX25lc3RlZE1pbnRBZGRyZXNzLCAnbmVzdGVkTWludEFkZHJlc3MgbXVzdCBiZSBzZXQgYmVmb3JlIGJ1aWxkaW5nIHRoZSB0cmFuc2FjdGlvbicpO1xuICAgIGFzc2VydCh0aGlzLl9kZXN0aW5hdGlvbkFjY291bnRBZGRyZXNzLCAnZGVzdGluYXRpb25BY2NvdW50QWRkcmVzcyBtdXN0IGJlIHNldCBiZWZvcmUgYnVpbGRpbmcgdGhlIHRyYW5zYWN0aW9uJyk7XG4gICAgYXNzZXJ0KHRoaXMuX293bmVyQWNjb3VudEFkZHJlc3MsICdvd25lckFjY291bnRBZGRyZXNzIG11c3QgYmUgc2V0IGJlZm9yZSBidWlsZGluZyB0aGUgdHJhbnNhY3Rpb24nKTtcbiAgICBhc3NlcnQodGhpcy5fb3duZXJNaW50QWRkcmVzcywgJ293bmVyTWludEFkZHJlc3MgbXVzdCBiZSBzZXQgYmVmb3JlIGJ1aWxkaW5nIHRoZSB0cmFuc2FjdGlvbicpO1xuICAgIGFzc2VydCh0aGlzLl93YWxsZXRBZGRyZXNzLCAnd2FsbGV0QWRkcmVzcyBtdXN0IGJlIHNldCBiZWZvcmUgYnVpbGRpbmcgdGhlIHRyYW5zYWN0aW9uJyk7XG5cbiAgICBjb25zdCByZWNvdmVyTmVzdGVkRGF0YTogQXRhUmVjb3Zlck5lc3RlZCA9IHtcbiAgICAgIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlJlY292ZXJOZXN0ZWRBc3NvY2lhdGVkVG9rZW5BY2NvdW50LFxuICAgICAgcGFyYW1zOiB7XG4gICAgICAgIG5lc3RlZEFjY291bnRBZGRyZXNzOiB0aGlzLl9uZXN0ZWRBY2NvdW50QWRkcmVzcyxcbiAgICAgICAgbmVzdGVkTWludEFkZHJlc3M6IHRoaXMuX25lc3RlZE1pbnRBZGRyZXNzLFxuICAgICAgICBkZXN0aW5hdGlvbkFjY291bnRBZGRyZXNzOiB0aGlzLl9kZXN0aW5hdGlvbkFjY291bnRBZGRyZXNzLFxuICAgICAgICBvd25lckFjY291bnRBZGRyZXNzOiB0aGlzLl9vd25lckFjY291bnRBZGRyZXNzLFxuICAgICAgICBvd25lck1pbnRBZGRyZXNzOiB0aGlzLl9vd25lck1pbnRBZGRyZXNzLFxuICAgICAgICB3YWxsZXRBZGRyZXNzOiB0aGlzLl93YWxsZXRBZGRyZXNzLFxuICAgICAgfSxcbiAgICB9O1xuXG4gICAgdGhpcy5faW5zdHJ1Y3Rpb25zRGF0YSA9IFtyZWNvdmVyTmVzdGVkRGF0YV07XG5cbiAgICByZXR1cm4gYXdhaXQgc3VwZXIuYnVpbGRJbXBsZW1lbnRhdGlvbigpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"solInstructionFactory.d.ts","sourceRoot":"","sources":["../../../../src/lib/solInstructionFactory.ts"],"names":[],"mappings":"AAaA,OAAO,EASL,sBAAsB,EAEvB,MAAM,iBAAiB,CAAC;AASzB,OAAO,EAKL,iBAAiB,EAkBlB,MAAM,SAAS,CAAC;AAIjB;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,kBAAkB,EAAE,iBAAiB,GAAG,sBAAsB,EAAE,CA6CrG"}
|