@shogun-sdk/intents-sdk 1.2.1 → 1.2.3
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/README.md +616 -55
- package/dist/esm/constants.js +21 -26
- package/dist/esm/constants.js.map +1 -1
- package/dist/esm/core/evm/abi/source-chain-guard.js +32 -628
- package/dist/esm/core/evm/abi/source-chain-guard.js.map +1 -1
- package/dist/esm/core/evm/cross-chain-limit-order.js +43 -0
- package/dist/esm/core/evm/cross-chain-limit-order.js.map +1 -0
- package/dist/esm/core/evm/intent-helpers.js +130 -0
- package/dist/esm/core/evm/intent-helpers.js.map +1 -0
- package/dist/esm/core/evm/single-chain-dca-order.js +49 -0
- package/dist/esm/core/evm/single-chain-dca-order.js.map +1 -0
- package/dist/esm/core/evm/single-chain-limit-order.js +45 -0
- package/dist/esm/core/evm/single-chain-limit-order.js.map +1 -0
- package/dist/esm/core/evm/types.js +8 -0
- package/dist/esm/core/evm/types.js.map +1 -0
- package/dist/esm/core/orders/common.js +3 -3
- package/dist/esm/core/orders/common.js.map +1 -1
- package/dist/esm/core/orders/cross-chain.js +2 -2
- package/dist/esm/core/orders/cross-chain.js.map +1 -1
- package/dist/esm/core/orders/dca-single-chain.js +4 -1
- package/dist/esm/core/orders/dca-single-chain.js.map +1 -1
- package/dist/esm/core/orders/single-chain.js +8 -1
- package/dist/esm/core/orders/single-chain.js.map +1 -1
- package/dist/esm/core/solana/cancel-order.js.map +1 -1
- package/dist/esm/core/solana/client.js +1 -1
- package/dist/esm/core/solana/client.js.map +1 -1
- package/dist/esm/core/solana/cross-chain-limit-order.js +18 -0
- package/dist/esm/core/solana/cross-chain-limit-order.js.map +1 -0
- package/dist/esm/core/solana/dca/cancel-order.js.map +1 -1
- package/dist/esm/core/solana/dca/create-order.js.map +1 -1
- package/dist/esm/core/solana/dca/single-chain-dca-order.js +23 -0
- package/dist/esm/core/solana/dca/single-chain-dca-order.js.map +1 -0
- package/dist/esm/core/solana/dca/single-chain-limit-order.js +29 -0
- package/dist/esm/core/solana/dca/single-chain-limit-order.js.map +1 -0
- package/dist/esm/core/solana/generated/cross-chain/accounts/adminSingleton.js +6 -4
- package/dist/esm/core/solana/generated/cross-chain/accounts/adminSingleton.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/accounts/dcaOrder.js +90 -0
- package/dist/esm/core/solana/generated/cross-chain/accounts/dcaOrder.js.map +1 -0
- package/dist/esm/core/solana/generated/cross-chain/accounts/guard.js +6 -4
- package/dist/esm/core/solana/generated/cross-chain/accounts/guard.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/accounts/index.js +1 -0
- package/dist/esm/core/solana/generated/cross-chain/accounts/index.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/accounts/order.js +3 -3
- package/dist/esm/core/solana/generated/cross-chain/accounts/order.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/errors/sourceChainGuard.js +111 -6
- package/dist/esm/core/solana/generated/cross-chain/errors/sourceChainGuard.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/instructions/acceptAdmin.js +5 -8
- package/dist/esm/core/solana/generated/cross-chain/instructions/acceptAdmin.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/instructions/cancelDcaOrder.js +118 -0
- package/dist/esm/core/solana/generated/cross-chain/instructions/cancelDcaOrder.js.map +1 -0
- package/dist/esm/core/solana/generated/cross-chain/instructions/cancelOrder.js +5 -8
- package/dist/esm/core/solana/generated/cross-chain/instructions/cancelOrder.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/instructions/claimTokens.js +5 -8
- package/dist/esm/core/solana/generated/cross-chain/instructions/claimTokens.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/instructions/collectProtocolFees.js +8 -9
- package/dist/esm/core/solana/generated/cross-chain/instructions/collectProtocolFees.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/instructions/createDcaOrder.js +170 -0
- package/dist/esm/core/solana/generated/cross-chain/instructions/createDcaOrder.js.map +1 -0
- package/dist/esm/core/solana/generated/cross-chain/instructions/createGuard.js +10 -16
- package/dist/esm/core/solana/generated/cross-chain/instructions/createGuard.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/instructions/createOrder.js +8 -6
- package/dist/esm/core/solana/generated/cross-chain/instructions/createOrder.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/instructions/index.js +2 -0
- package/dist/esm/core/solana/generated/cross-chain/instructions/index.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/instructions/initialize.js +11 -12
- package/dist/esm/core/solana/generated/cross-chain/instructions/initialize.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/instructions/preStartOrderExecution.js +8 -9
- package/dist/esm/core/solana/generated/cross-chain/instructions/preStartOrderExecution.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/instructions/setAdmin.js +4 -4
- package/dist/esm/core/solana/generated/cross-chain/instructions/setAdmin.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/instructions/setAuctioneerPubKey.js +17 -7
- package/dist/esm/core/solana/generated/cross-chain/instructions/setAuctioneerPubKey.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/instructions/startOrderExecution.js +8 -9
- package/dist/esm/core/solana/generated/cross-chain/instructions/startOrderExecution.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/instructions/startOrderExecutionAfterSwap.js +7 -5
- package/dist/esm/core/solana/generated/cross-chain/instructions/startOrderExecutionAfterSwap.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/programs/sourceChainGuard.js +28 -16
- package/dist/esm/core/solana/generated/cross-chain/programs/sourceChainGuard.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/shared/index.js +5 -5
- package/dist/esm/core/solana/generated/cross-chain/shared/index.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/types/adminUpdateStarted.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/types/auctioneerPubkeyUpdated.js.map +1 -1
- package/dist/esm/core/solana/generated/cross-chain/types/dcaExecutionStarted.js +32 -0
- package/dist/esm/core/solana/generated/cross-chain/types/dcaExecutionStarted.js.map +1 -0
- package/dist/esm/core/solana/generated/cross-chain/types/dcaOrderCreated.js +42 -0
- package/dist/esm/core/solana/generated/cross-chain/types/dcaOrderCreated.js.map +1 -0
- package/dist/esm/core/solana/generated/cross-chain/types/dcaOrderIntervalFulfilled.js +26 -0
- package/dist/esm/core/solana/generated/cross-chain/types/dcaOrderIntervalFulfilled.js.map +1 -0
- package/dist/esm/core/solana/generated/cross-chain/types/dcaTokenInSwapped.js +28 -0
- package/dist/esm/core/solana/generated/cross-chain/types/dcaTokenInSwapped.js.map +1 -0
- package/dist/esm/core/solana/generated/cross-chain/types/failedDcaIntervalExecution.js +26 -0
- package/dist/esm/core/solana/generated/cross-chain/types/failedDcaIntervalExecution.js.map +1 -0
- package/dist/esm/core/solana/generated/cross-chain/types/index.js +5 -0
- package/dist/esm/core/solana/generated/cross-chain/types/index.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/accounts/adminSingleton.js +6 -4
- package/dist/esm/core/solana/generated/single-chain/accounts/adminSingleton.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/accounts/dcaOrder.js +3 -3
- package/dist/esm/core/solana/generated/single-chain/accounts/dcaOrder.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/accounts/guard.js +3 -3
- package/dist/esm/core/solana/generated/single-chain/accounts/guard.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/accounts/limitOrder.js +3 -3
- package/dist/esm/core/solana/generated/single-chain/accounts/limitOrder.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/errors/singleChainGuard.js +3 -3
- package/dist/esm/core/solana/generated/single-chain/errors/singleChainGuard.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/instructions/acceptAdmin.js +5 -8
- package/dist/esm/core/solana/generated/single-chain/instructions/acceptAdmin.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/instructions/cancelDcaOrder.js +8 -9
- package/dist/esm/core/solana/generated/single-chain/instructions/cancelDcaOrder.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/instructions/cancelLimitOrder.js +8 -9
- package/dist/esm/core/solana/generated/single-chain/instructions/cancelLimitOrder.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/instructions/collectProtocolFees.js +8 -9
- package/dist/esm/core/solana/generated/single-chain/instructions/collectProtocolFees.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/instructions/createDcaOrder.js +8 -6
- package/dist/esm/core/solana/generated/single-chain/instructions/createDcaOrder.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/instructions/createGuard.js +8 -6
- package/dist/esm/core/solana/generated/single-chain/instructions/createGuard.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/instructions/createLimitOrder.js +8 -6
- package/dist/esm/core/solana/generated/single-chain/instructions/createLimitOrder.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/instructions/fulfillDcaOrderInterval.js +9 -6
- package/dist/esm/core/solana/generated/single-chain/instructions/fulfillDcaOrderInterval.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/instructions/fulfillLimitOrder.js +9 -6
- package/dist/esm/core/solana/generated/single-chain/instructions/fulfillLimitOrder.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/instructions/initialize.js +9 -10
- package/dist/esm/core/solana/generated/single-chain/instructions/initialize.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/instructions/setAdmin.js +4 -4
- package/dist/esm/core/solana/generated/single-chain/instructions/setAdmin.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/instructions/setAuctioneerPubKey.js +17 -7
- package/dist/esm/core/solana/generated/single-chain/instructions/setAuctioneerPubKey.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/programs/singleChainGuard.js +2 -2
- package/dist/esm/core/solana/generated/single-chain/programs/singleChainGuard.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/shared/index.js +5 -5
- package/dist/esm/core/solana/generated/single-chain/shared/index.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/types/adminUpdateStarted.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/types/auctioneerPubkeyUpdated.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/types/dcaOrderFulfilled.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/types/dcaOrderIntervalFulfilled.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/types/limitOrderCreated.js.map +1 -1
- package/dist/esm/core/solana/generated/single-chain/types/limitOrderFulfilled.js.map +1 -1
- package/dist/esm/core/solana/inspect.js +1 -1
- package/dist/esm/core/solana/intent-helpers.js +177 -0
- package/dist/esm/core/solana/intent-helpers.js.map +1 -0
- package/dist/esm/core/solana/order-instructions.js.map +1 -1
- package/dist/esm/core/solana/sdk.js +4 -1
- package/dist/esm/core/solana/sdk.js.map +1 -1
- package/dist/esm/core/sui/cancel.js +1 -1
- package/dist/esm/core/sui/cancel.js.map +1 -1
- package/dist/esm/core/sui/cross-chain-limit-order.js +26 -0
- package/dist/esm/core/sui/cross-chain-limit-order.js.map +1 -0
- package/dist/esm/core/sui/intent-helpers.js +136 -0
- package/dist/esm/core/sui/intent-helpers.js.map +1 -0
- package/dist/esm/core/sui/order-transaction.js +5 -4
- package/dist/esm/core/sui/order-transaction.js.map +1 -1
- package/dist/esm/core/sui/sdk.js +1 -1
- package/dist/esm/core/sui/sdk.js.map +1 -1
- package/dist/esm/core/sui/single-chain-dca-order.js +99 -0
- package/dist/esm/core/sui/single-chain-dca-order.js.map +1 -0
- package/dist/esm/core/sui/single-chain-limit-order.js +103 -0
- package/dist/esm/core/sui/single-chain-limit-order.js.map +1 -0
- package/dist/esm/core/sui/validator.js +1 -2
- package/dist/esm/core/sui/validator.js.map +1 -1
- package/dist/esm/index.js +15 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/types/constants.d.ts +3 -4
- package/dist/types/constants.d.ts.map +1 -1
- package/dist/types/core/evm/abi/source-chain-guard.d.ts +18 -484
- package/dist/types/core/evm/abi/source-chain-guard.d.ts.map +1 -1
- package/dist/types/core/evm/cross-chain-limit-order.d.ts +22 -0
- package/dist/types/core/evm/cross-chain-limit-order.d.ts.map +1 -0
- package/dist/types/core/evm/intent-helpers.d.ts +105 -0
- package/dist/types/core/evm/intent-helpers.d.ts.map +1 -0
- package/dist/types/core/evm/single-chain-dca-order.d.ts +26 -0
- package/dist/types/core/evm/single-chain-dca-order.d.ts.map +1 -0
- package/dist/types/core/evm/single-chain-limit-order.d.ts +23 -0
- package/dist/types/core/evm/single-chain-limit-order.d.ts.map +1 -0
- package/dist/types/core/evm/types.d.ts +8 -0
- package/dist/types/core/evm/types.d.ts.map +1 -0
- package/dist/types/core/orders/common.d.ts +2 -2
- package/dist/types/core/orders/common.d.ts.map +1 -1
- package/dist/types/core/orders/cross-chain.d.ts +1 -1
- package/dist/types/core/orders/cross-chain.d.ts.map +1 -1
- package/dist/types/core/orders/dca-single-chain.d.ts.map +1 -1
- package/dist/types/core/orders/single-chain.d.ts +1 -0
- package/dist/types/core/orders/single-chain.d.ts.map +1 -1
- package/dist/types/core/solana/cancel-order.d.ts +3 -3
- package/dist/types/core/solana/cancel-order.d.ts.map +1 -1
- package/dist/types/core/solana/cross-chain-limit-order.d.ts +9 -0
- package/dist/types/core/solana/cross-chain-limit-order.d.ts.map +1 -0
- package/dist/types/core/solana/dca/cancel-order.d.ts +2 -2
- package/dist/types/core/solana/dca/cancel-order.d.ts.map +1 -1
- package/dist/types/core/solana/dca/single-chain-dca-order.d.ts +14 -0
- package/dist/types/core/solana/dca/single-chain-dca-order.d.ts.map +1 -0
- package/dist/types/core/solana/dca/single-chain-limit-order.d.ts +19 -0
- package/dist/types/core/solana/dca/single-chain-limit-order.d.ts.map +1 -0
- package/dist/types/core/solana/generated/cross-chain/accounts/adminSingleton.d.ts +6 -6
- package/dist/types/core/solana/generated/cross-chain/accounts/adminSingleton.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/accounts/dcaOrder.d.ts +110 -0
- package/dist/types/core/solana/generated/cross-chain/accounts/dcaOrder.d.ts.map +1 -0
- package/dist/types/core/solana/generated/cross-chain/accounts/guard.d.ts +10 -6
- package/dist/types/core/solana/generated/cross-chain/accounts/guard.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/accounts/index.d.ts +1 -0
- package/dist/types/core/solana/generated/cross-chain/accounts/index.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/accounts/order.d.ts +6 -6
- package/dist/types/core/solana/generated/cross-chain/accounts/order.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/errors/sourceChainGuard.d.ts +76 -6
- package/dist/types/core/solana/generated/cross-chain/errors/sourceChainGuard.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/instructions/acceptAdmin.d.ts +12 -12
- package/dist/types/core/solana/generated/cross-chain/instructions/acceptAdmin.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/instructions/cancelDcaOrder.d.ts +124 -0
- package/dist/types/core/solana/generated/cross-chain/instructions/cancelDcaOrder.d.ts.map +1 -0
- package/dist/types/core/solana/generated/cross-chain/instructions/cancelOrder.d.ts +12 -12
- package/dist/types/core/solana/generated/cross-chain/instructions/cancelOrder.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/instructions/claimTokens.d.ts +12 -12
- package/dist/types/core/solana/generated/cross-chain/instructions/claimTokens.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/instructions/collectProtocolFees.d.ts +15 -15
- package/dist/types/core/solana/generated/cross-chain/instructions/collectProtocolFees.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/instructions/createDcaOrder.d.ts +130 -0
- package/dist/types/core/solana/generated/cross-chain/instructions/createDcaOrder.d.ts.map +1 -0
- package/dist/types/core/solana/generated/cross-chain/instructions/createGuard.d.ts +16 -12
- package/dist/types/core/solana/generated/cross-chain/instructions/createGuard.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/instructions/createOrder.d.ts +12 -12
- package/dist/types/core/solana/generated/cross-chain/instructions/createOrder.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/instructions/index.d.ts +2 -0
- package/dist/types/core/solana/generated/cross-chain/instructions/index.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/instructions/initialize.d.ts +12 -12
- package/dist/types/core/solana/generated/cross-chain/instructions/initialize.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/instructions/preStartOrderExecution.d.ts +12 -12
- package/dist/types/core/solana/generated/cross-chain/instructions/preStartOrderExecution.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/instructions/setAdmin.d.ts +11 -11
- package/dist/types/core/solana/generated/cross-chain/instructions/setAdmin.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/instructions/setAuctioneerPubKey.d.ts +11 -11
- package/dist/types/core/solana/generated/cross-chain/instructions/setAuctioneerPubKey.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/instructions/startOrderExecution.d.ts +12 -12
- package/dist/types/core/solana/generated/cross-chain/instructions/startOrderExecution.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/instructions/startOrderExecutionAfterSwap.d.ts +11 -11
- package/dist/types/core/solana/generated/cross-chain/instructions/startOrderExecutionAfterSwap.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/programs/sourceChainGuard.d.ts +25 -18
- package/dist/types/core/solana/generated/cross-chain/programs/sourceChainGuard.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/shared/index.d.ts +5 -5
- package/dist/types/core/solana/generated/cross-chain/shared/index.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/types/adminUpdateStarted.d.ts +4 -4
- package/dist/types/core/solana/generated/cross-chain/types/adminUpdateStarted.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/types/adminUpdated.d.ts +4 -4
- package/dist/types/core/solana/generated/cross-chain/types/adminUpdated.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/types/auctioneerPubkeyUpdated.d.ts +4 -4
- package/dist/types/core/solana/generated/cross-chain/types/auctioneerPubkeyUpdated.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/types/dcaExecutionStarted.d.ts +28 -0
- package/dist/types/core/solana/generated/cross-chain/types/dcaExecutionStarted.d.ts.map +1 -0
- package/dist/types/core/solana/generated/cross-chain/types/dcaOrderCreated.d.ts +38 -0
- package/dist/types/core/solana/generated/cross-chain/types/dcaOrderCreated.d.ts.map +1 -0
- package/dist/types/core/solana/generated/cross-chain/types/dcaOrderIntervalFulfilled.d.ts +18 -0
- package/dist/types/core/solana/generated/cross-chain/types/dcaOrderIntervalFulfilled.d.ts.map +1 -0
- package/dist/types/core/solana/generated/cross-chain/types/dcaTokenInSwapped.d.ts +24 -0
- package/dist/types/core/solana/generated/cross-chain/types/dcaTokenInSwapped.d.ts.map +1 -0
- package/dist/types/core/solana/generated/cross-chain/types/executionStarted.d.ts +4 -4
- package/dist/types/core/solana/generated/cross-chain/types/executionStarted.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/types/failedDcaIntervalExecution.d.ts +18 -0
- package/dist/types/core/solana/generated/cross-chain/types/failedDcaIntervalExecution.d.ts.map +1 -0
- package/dist/types/core/solana/generated/cross-chain/types/guardCreated.d.ts +4 -4
- package/dist/types/core/solana/generated/cross-chain/types/guardCreated.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/types/index.d.ts +5 -0
- package/dist/types/core/solana/generated/cross-chain/types/index.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/types/orderCancelled.d.ts +4 -4
- package/dist/types/core/solana/generated/cross-chain/types/orderCancelled.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/types/orderCreated.d.ts +4 -4
- package/dist/types/core/solana/generated/cross-chain/types/orderCreated.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/types/orderFulfilled.d.ts +4 -4
- package/dist/types/core/solana/generated/cross-chain/types/orderFulfilled.d.ts.map +1 -1
- package/dist/types/core/solana/generated/cross-chain/types/tokenInSwapped.d.ts +4 -4
- package/dist/types/core/solana/generated/cross-chain/types/tokenInSwapped.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/accounts/adminSingleton.d.ts +6 -6
- package/dist/types/core/solana/generated/single-chain/accounts/adminSingleton.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/accounts/dcaOrder.d.ts +3 -3
- package/dist/types/core/solana/generated/single-chain/accounts/dcaOrder.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/accounts/guard.d.ts +6 -6
- package/dist/types/core/solana/generated/single-chain/accounts/guard.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/accounts/limitOrder.d.ts +3 -3
- package/dist/types/core/solana/generated/single-chain/accounts/limitOrder.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/errors/singleChainGuard.d.ts +2 -2
- package/dist/types/core/solana/generated/single-chain/errors/singleChainGuard.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/instructions/acceptAdmin.d.ts +12 -12
- package/dist/types/core/solana/generated/single-chain/instructions/acceptAdmin.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/instructions/cancelDcaOrder.d.ts +12 -12
- package/dist/types/core/solana/generated/single-chain/instructions/cancelDcaOrder.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/instructions/cancelLimitOrder.d.ts +12 -12
- package/dist/types/core/solana/generated/single-chain/instructions/cancelLimitOrder.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/instructions/collectProtocolFees.d.ts +12 -12
- package/dist/types/core/solana/generated/single-chain/instructions/collectProtocolFees.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/instructions/createDcaOrder.d.ts +9 -9
- package/dist/types/core/solana/generated/single-chain/instructions/createDcaOrder.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/instructions/createGuard.d.ts +11 -11
- package/dist/types/core/solana/generated/single-chain/instructions/createGuard.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/instructions/createLimitOrder.d.ts +9 -9
- package/dist/types/core/solana/generated/single-chain/instructions/createLimitOrder.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/instructions/fulfillDcaOrderInterval.d.ts +11 -11
- package/dist/types/core/solana/generated/single-chain/instructions/fulfillDcaOrderInterval.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/instructions/fulfillLimitOrder.d.ts +11 -11
- package/dist/types/core/solana/generated/single-chain/instructions/fulfillLimitOrder.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/instructions/initialize.d.ts +12 -12
- package/dist/types/core/solana/generated/single-chain/instructions/initialize.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/instructions/setAdmin.d.ts +11 -11
- package/dist/types/core/solana/generated/single-chain/instructions/setAdmin.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/instructions/setAuctioneerPubKey.d.ts +11 -11
- package/dist/types/core/solana/generated/single-chain/instructions/setAuctioneerPubKey.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/programs/singleChainGuard.d.ts +2 -2
- package/dist/types/core/solana/generated/single-chain/programs/singleChainGuard.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/shared/index.d.ts +5 -5
- package/dist/types/core/solana/generated/single-chain/shared/index.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/types/adminUpdateStarted.d.ts +4 -4
- package/dist/types/core/solana/generated/single-chain/types/adminUpdateStarted.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/types/adminUpdated.d.ts +4 -4
- package/dist/types/core/solana/generated/single-chain/types/adminUpdated.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/types/auctioneerPubkeyUpdated.d.ts +4 -4
- package/dist/types/core/solana/generated/single-chain/types/auctioneerPubkeyUpdated.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/types/dcaOrderCreated.d.ts +4 -4
- package/dist/types/core/solana/generated/single-chain/types/dcaOrderCreated.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/types/dcaOrderFulfilled.d.ts +4 -4
- package/dist/types/core/solana/generated/single-chain/types/dcaOrderFulfilled.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/types/dcaOrderIntervalFulfilled.d.ts +4 -4
- package/dist/types/core/solana/generated/single-chain/types/dcaOrderIntervalFulfilled.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/types/guardCreated.d.ts +4 -4
- package/dist/types/core/solana/generated/single-chain/types/guardCreated.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/types/limitOrderCreated.d.ts +4 -4
- package/dist/types/core/solana/generated/single-chain/types/limitOrderCreated.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/types/limitOrderFulfilled.d.ts +4 -4
- package/dist/types/core/solana/generated/single-chain/types/limitOrderFulfilled.d.ts.map +1 -1
- package/dist/types/core/solana/generated/single-chain/types/orderCancelled.d.ts +4 -4
- package/dist/types/core/solana/generated/single-chain/types/orderCancelled.d.ts.map +1 -1
- package/dist/types/core/solana/intent-helpers.d.ts +120 -0
- package/dist/types/core/solana/intent-helpers.d.ts.map +1 -0
- package/dist/types/core/solana/sdk.d.ts.map +1 -1
- package/dist/types/core/sui/cross-chain-limit-order.d.ts +14 -0
- package/dist/types/core/sui/cross-chain-limit-order.d.ts.map +1 -0
- package/dist/types/core/sui/intent-helpers.d.ts +89 -0
- package/dist/types/core/sui/intent-helpers.d.ts.map +1 -0
- package/dist/types/core/sui/order-transaction.d.ts +3 -1
- package/dist/types/core/sui/order-transaction.d.ts.map +1 -1
- package/dist/types/core/sui/single-chain-dca-order.d.ts +22 -0
- package/dist/types/core/sui/single-chain-dca-order.d.ts.map +1 -0
- package/dist/types/core/sui/single-chain-limit-order.d.ts +26 -0
- package/dist/types/core/sui/single-chain-limit-order.d.ts.map +1 -0
- package/dist/types/core/sui/validator.d.ts.map +1 -1
- package/dist/types/index.d.ts +13 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/types/intent.d.ts +13 -4
- package/dist/types/types/intent.d.ts.map +1 -1
- package/package.json +19 -9
- package/src/constants.ts +17 -23
- package/src/core/evm/abi/source-chain-guard.ts +32 -628
- package/src/core/evm/cross-chain-limit-order.ts +76 -0
- package/src/core/evm/intent-helpers.ts +204 -0
- package/src/core/evm/single-chain-dca-order.ts +85 -0
- package/src/core/evm/single-chain-limit-order.ts +78 -0
- package/src/core/evm/types.ts +15 -0
- package/src/core/orders/common.ts +4 -4
- package/src/core/orders/cross-chain.ts +2 -2
- package/src/core/orders/dca-single-chain.ts +4 -1
- package/src/core/orders/single-chain.ts +10 -1
- package/src/core/solana/cancel-order.ts +5 -5
- package/src/core/solana/client.ts +1 -1
- package/src/core/solana/cross-chain-limit-order.ts +24 -0
- package/src/core/solana/dca/cancel-order.ts +3 -3
- package/src/core/solana/dca/create-order.ts +2 -2
- package/src/core/solana/dca/single-chain-dca-order.ts +32 -0
- package/src/core/solana/dca/single-chain-limit-order.ts +45 -0
- package/src/core/solana/generated/cross-chain/accounts/adminSingleton.ts +20 -18
- package/src/core/solana/generated/cross-chain/accounts/dcaOrder.ts +248 -0
- package/src/core/solana/generated/cross-chain/accounts/guard.ts +24 -18
- package/src/core/solana/generated/cross-chain/accounts/index.ts +1 -0
- package/src/core/solana/generated/cross-chain/accounts/order.ts +17 -17
- package/src/core/solana/generated/cross-chain/errors/sourceChainGuard.ts +154 -9
- package/src/core/solana/generated/cross-chain/instructions/acceptAdmin.ts +44 -34
- package/src/core/solana/generated/cross-chain/instructions/cancelDcaOrder.ts +409 -0
- package/src/core/solana/generated/cross-chain/instructions/cancelOrder.ts +49 -41
- package/src/core/solana/generated/cross-chain/instructions/claimTokens.ts +54 -44
- package/src/core/solana/generated/cross-chain/instructions/collectProtocolFees.ts +52 -43
- package/src/core/solana/generated/cross-chain/instructions/createDcaOrder.ts +496 -0
- package/src/core/solana/generated/cross-chain/instructions/createGuard.ts +72 -54
- package/src/core/solana/generated/cross-chain/instructions/createOrder.ts +60 -42
- package/src/core/solana/generated/cross-chain/instructions/index.ts +2 -0
- package/src/core/solana/generated/cross-chain/instructions/initialize.ts +60 -42
- package/src/core/solana/generated/cross-chain/instructions/preStartOrderExecution.ts +55 -45
- package/src/core/solana/generated/cross-chain/instructions/setAdmin.ts +48 -30
- package/src/core/solana/generated/cross-chain/instructions/setAuctioneerPubKey.ts +88 -40
- package/src/core/solana/generated/cross-chain/instructions/startOrderExecution.ts +48 -39
- package/src/core/solana/generated/cross-chain/instructions/startOrderExecutionAfterSwap.ts +45 -37
- package/src/core/solana/generated/cross-chain/programs/sourceChainGuard.ts +118 -37
- package/src/core/solana/generated/cross-chain/shared/index.ts +23 -14
- package/src/core/solana/generated/cross-chain/types/adminUpdateStarted.ts +9 -6
- package/src/core/solana/generated/cross-chain/types/adminUpdated.ts +6 -6
- package/src/core/solana/generated/cross-chain/types/auctioneerPubkeyUpdated.ts +9 -6
- package/src/core/solana/generated/cross-chain/types/dcaExecutionStarted.ts +70 -0
- package/src/core/solana/generated/cross-chain/types/dcaOrderCreated.ts +92 -0
- package/src/core/solana/generated/cross-chain/types/dcaOrderIntervalFulfilled.ts +52 -0
- package/src/core/solana/generated/cross-chain/types/dcaTokenInSwapped.ts +62 -0
- package/src/core/solana/generated/cross-chain/types/executionStarted.ts +6 -6
- package/src/core/solana/generated/cross-chain/types/failedDcaIntervalExecution.ts +55 -0
- package/src/core/solana/generated/cross-chain/types/guardCreated.ts +6 -6
- package/src/core/solana/generated/cross-chain/types/index.ts +5 -0
- package/src/core/solana/generated/cross-chain/types/orderCancelled.ts +6 -6
- package/src/core/solana/generated/cross-chain/types/orderCreated.ts +6 -6
- package/src/core/solana/generated/cross-chain/types/orderFulfilled.ts +6 -6
- package/src/core/solana/generated/cross-chain/types/tokenInSwapped.ts +6 -6
- package/src/core/solana/generated/single-chain/accounts/adminSingleton.ts +20 -18
- package/src/core/solana/generated/single-chain/accounts/dcaOrder.ts +11 -11
- package/src/core/solana/generated/single-chain/accounts/guard.ts +17 -17
- package/src/core/solana/generated/single-chain/accounts/limitOrder.ts +11 -11
- package/src/core/solana/generated/single-chain/errors/singleChainGuard.ts +10 -5
- package/src/core/solana/generated/single-chain/instructions/acceptAdmin.ts +44 -34
- package/src/core/solana/generated/single-chain/instructions/cancelDcaOrder.ts +54 -40
- package/src/core/solana/generated/single-chain/instructions/cancelLimitOrder.ts +51 -40
- package/src/core/solana/generated/single-chain/instructions/collectProtocolFees.ts +55 -42
- package/src/core/solana/generated/single-chain/instructions/createDcaOrder.ts +60 -38
- package/src/core/solana/generated/single-chain/instructions/createGuard.ts +69 -42
- package/src/core/solana/generated/single-chain/instructions/createLimitOrder.ts +57 -38
- package/src/core/solana/generated/single-chain/instructions/fulfillDcaOrderInterval.ts +78 -55
- package/src/core/solana/generated/single-chain/instructions/fulfillLimitOrder.ts +81 -55
- package/src/core/solana/generated/single-chain/instructions/initialize.ts +58 -40
- package/src/core/solana/generated/single-chain/instructions/setAdmin.ts +48 -30
- package/src/core/solana/generated/single-chain/instructions/setAuctioneerPubKey.ts +88 -40
- package/src/core/solana/generated/single-chain/programs/singleChainGuard.ts +76 -37
- package/src/core/solana/generated/single-chain/shared/index.ts +23 -14
- package/src/core/solana/generated/single-chain/types/adminUpdateStarted.ts +9 -6
- package/src/core/solana/generated/single-chain/types/adminUpdated.ts +6 -6
- package/src/core/solana/generated/single-chain/types/auctioneerPubkeyUpdated.ts +9 -6
- package/src/core/solana/generated/single-chain/types/dcaOrderCreated.ts +6 -6
- package/src/core/solana/generated/single-chain/types/dcaOrderFulfilled.ts +9 -6
- package/src/core/solana/generated/single-chain/types/dcaOrderIntervalFulfilled.ts +9 -6
- package/src/core/solana/generated/single-chain/types/guardCreated.ts +6 -6
- package/src/core/solana/generated/single-chain/types/limitOrderCreated.ts +9 -6
- package/src/core/solana/generated/single-chain/types/limitOrderFulfilled.ts +9 -6
- package/src/core/solana/generated/single-chain/types/orderCancelled.ts +6 -6
- package/src/core/solana/inspect.ts +1 -1
- package/src/core/solana/intent-helpers.ts +273 -0
- package/src/core/solana/order-instructions.ts +3 -3
- package/src/core/solana/sdk.ts +13 -4
- package/src/core/sui/cancel.ts +1 -1
- package/src/core/sui/cross-chain-limit-order.ts +34 -0
- package/src/core/sui/intent-helpers.ts +235 -0
- package/src/core/sui/order-transaction.ts +8 -4
- package/src/core/sui/sdk.ts +1 -1
- package/src/core/sui/single-chain-dca-order.ts +139 -0
- package/src/core/sui/single-chain-limit-order.ts +143 -0
- package/src/core/sui/validator.ts +1 -2
- package/src/index.ts +55 -0
- package/src/types/intent.ts +15 -4
|
@@ -6,13 +6,20 @@
|
|
|
6
6
|
* @see https://github.com/codama-idl/codama
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
import { type Address } from '@solana/
|
|
10
|
-
import {
|
|
9
|
+
import { type Address } from '@solana/addresses';
|
|
10
|
+
import {
|
|
11
|
+
containsBytes,
|
|
12
|
+
fixEncoderSize,
|
|
13
|
+
getBytesEncoder,
|
|
14
|
+
type ReadonlyUint8Array,
|
|
15
|
+
} from '@solana/codecs';
|
|
11
16
|
import {
|
|
12
17
|
type ParsedAcceptAdminInstruction,
|
|
18
|
+
type ParsedCancelDcaOrderInstruction,
|
|
13
19
|
type ParsedCancelOrderInstruction,
|
|
14
20
|
type ParsedClaimTokensInstruction,
|
|
15
21
|
type ParsedCollectProtocolFeesInstruction,
|
|
22
|
+
type ParsedCreateDcaOrderInstruction,
|
|
16
23
|
type ParsedCreateGuardInstruction,
|
|
17
24
|
type ParsedCreateOrderInstruction,
|
|
18
25
|
type ParsedInitializeInstruction,
|
|
@@ -24,23 +31,26 @@ import {
|
|
|
24
31
|
} from '../instructions/index.js';
|
|
25
32
|
|
|
26
33
|
export const SOURCE_CHAIN_GUARD_PROGRAM_ADDRESS =
|
|
27
|
-
'
|
|
34
|
+
'DQZQGiVa1PBXesdbCRzmJpZ7AyntLXfAwP5Qty1hgFqQ' as Address<'DQZQGiVa1PBXesdbCRzmJpZ7AyntLXfAwP5Qty1hgFqQ'>;
|
|
28
35
|
|
|
29
36
|
export enum SourceChainGuardAccount {
|
|
30
37
|
AdminSingleton,
|
|
38
|
+
DcaOrder,
|
|
31
39
|
Guard,
|
|
32
40
|
Order,
|
|
33
41
|
}
|
|
34
42
|
|
|
35
43
|
export function identifySourceChainGuardAccount(
|
|
36
|
-
account: { data: ReadonlyUint8Array } | ReadonlyUint8Array
|
|
44
|
+
account: { data: ReadonlyUint8Array } | ReadonlyUint8Array
|
|
37
45
|
): SourceChainGuardAccount {
|
|
38
46
|
const data = 'data' in account ? account.data : account;
|
|
39
47
|
if (
|
|
40
48
|
containsBytes(
|
|
41
49
|
data,
|
|
42
|
-
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
43
|
-
|
|
50
|
+
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
51
|
+
new Uint8Array([179, 22, 254, 245, 204, 230, 222, 194])
|
|
52
|
+
),
|
|
53
|
+
0
|
|
44
54
|
)
|
|
45
55
|
) {
|
|
46
56
|
return SourceChainGuardAccount.AdminSingleton;
|
|
@@ -48,8 +58,21 @@ export function identifySourceChainGuardAccount(
|
|
|
48
58
|
if (
|
|
49
59
|
containsBytes(
|
|
50
60
|
data,
|
|
51
|
-
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
52
|
-
|
|
61
|
+
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
62
|
+
new Uint8Array([55, 1, 103, 253, 215, 66, 27, 57])
|
|
63
|
+
),
|
|
64
|
+
0
|
|
65
|
+
)
|
|
66
|
+
) {
|
|
67
|
+
return SourceChainGuardAccount.DcaOrder;
|
|
68
|
+
}
|
|
69
|
+
if (
|
|
70
|
+
containsBytes(
|
|
71
|
+
data,
|
|
72
|
+
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
73
|
+
new Uint8Array([54, 187, 84, 137, 192, 15, 74, 248])
|
|
74
|
+
),
|
|
75
|
+
0
|
|
53
76
|
)
|
|
54
77
|
) {
|
|
55
78
|
return SourceChainGuardAccount.Guard;
|
|
@@ -57,8 +80,10 @@ export function identifySourceChainGuardAccount(
|
|
|
57
80
|
if (
|
|
58
81
|
containsBytes(
|
|
59
82
|
data,
|
|
60
|
-
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
61
|
-
|
|
83
|
+
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
84
|
+
new Uint8Array([134, 173, 223, 185, 77, 86, 28, 51])
|
|
85
|
+
),
|
|
86
|
+
0
|
|
62
87
|
)
|
|
63
88
|
) {
|
|
64
89
|
return SourceChainGuardAccount.Order;
|
|
@@ -68,9 +93,11 @@ export function identifySourceChainGuardAccount(
|
|
|
68
93
|
|
|
69
94
|
export enum SourceChainGuardInstruction {
|
|
70
95
|
AcceptAdmin,
|
|
96
|
+
CancelDcaOrder,
|
|
71
97
|
CancelOrder,
|
|
72
98
|
ClaimTokens,
|
|
73
99
|
CollectProtocolFees,
|
|
100
|
+
CreateDcaOrder,
|
|
74
101
|
CreateGuard,
|
|
75
102
|
CreateOrder,
|
|
76
103
|
Initialize,
|
|
@@ -82,14 +109,16 @@ export enum SourceChainGuardInstruction {
|
|
|
82
109
|
}
|
|
83
110
|
|
|
84
111
|
export function identifySourceChainGuardInstruction(
|
|
85
|
-
instruction: { data: ReadonlyUint8Array } | ReadonlyUint8Array
|
|
112
|
+
instruction: { data: ReadonlyUint8Array } | ReadonlyUint8Array
|
|
86
113
|
): SourceChainGuardInstruction {
|
|
87
114
|
const data = 'data' in instruction ? instruction.data : instruction;
|
|
88
115
|
if (
|
|
89
116
|
containsBytes(
|
|
90
117
|
data,
|
|
91
|
-
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
92
|
-
|
|
118
|
+
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
119
|
+
new Uint8Array([112, 42, 45, 90, 116, 181, 13, 170])
|
|
120
|
+
),
|
|
121
|
+
0
|
|
93
122
|
)
|
|
94
123
|
) {
|
|
95
124
|
return SourceChainGuardInstruction.AcceptAdmin;
|
|
@@ -97,8 +126,21 @@ export function identifySourceChainGuardInstruction(
|
|
|
97
126
|
if (
|
|
98
127
|
containsBytes(
|
|
99
128
|
data,
|
|
100
|
-
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
101
|
-
|
|
129
|
+
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
130
|
+
new Uint8Array([60, 161, 130, 157, 181, 55, 218, 163])
|
|
131
|
+
),
|
|
132
|
+
0
|
|
133
|
+
)
|
|
134
|
+
) {
|
|
135
|
+
return SourceChainGuardInstruction.CancelDcaOrder;
|
|
136
|
+
}
|
|
137
|
+
if (
|
|
138
|
+
containsBytes(
|
|
139
|
+
data,
|
|
140
|
+
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
141
|
+
new Uint8Array([95, 129, 237, 240, 8, 49, 223, 132])
|
|
142
|
+
),
|
|
143
|
+
0
|
|
102
144
|
)
|
|
103
145
|
) {
|
|
104
146
|
return SourceChainGuardInstruction.CancelOrder;
|
|
@@ -106,8 +148,10 @@ export function identifySourceChainGuardInstruction(
|
|
|
106
148
|
if (
|
|
107
149
|
containsBytes(
|
|
108
150
|
data,
|
|
109
|
-
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
110
|
-
|
|
151
|
+
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
152
|
+
new Uint8Array([108, 216, 210, 231, 0, 212, 42, 64])
|
|
153
|
+
),
|
|
154
|
+
0
|
|
111
155
|
)
|
|
112
156
|
) {
|
|
113
157
|
return SourceChainGuardInstruction.ClaimTokens;
|
|
@@ -115,8 +159,10 @@ export function identifySourceChainGuardInstruction(
|
|
|
115
159
|
if (
|
|
116
160
|
containsBytes(
|
|
117
161
|
data,
|
|
118
|
-
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
119
|
-
|
|
162
|
+
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
163
|
+
new Uint8Array([22, 67, 23, 98, 150, 178, 70, 220])
|
|
164
|
+
),
|
|
165
|
+
0
|
|
120
166
|
)
|
|
121
167
|
) {
|
|
122
168
|
return SourceChainGuardInstruction.CollectProtocolFees;
|
|
@@ -124,8 +170,21 @@ export function identifySourceChainGuardInstruction(
|
|
|
124
170
|
if (
|
|
125
171
|
containsBytes(
|
|
126
172
|
data,
|
|
127
|
-
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
128
|
-
|
|
173
|
+
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
174
|
+
new Uint8Array([95, 66, 166, 38, 170, 3, 150, 169])
|
|
175
|
+
),
|
|
176
|
+
0
|
|
177
|
+
)
|
|
178
|
+
) {
|
|
179
|
+
return SourceChainGuardInstruction.CreateDcaOrder;
|
|
180
|
+
}
|
|
181
|
+
if (
|
|
182
|
+
containsBytes(
|
|
183
|
+
data,
|
|
184
|
+
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
185
|
+
new Uint8Array([251, 254, 17, 198, 219, 218, 154, 99])
|
|
186
|
+
),
|
|
187
|
+
0
|
|
129
188
|
)
|
|
130
189
|
) {
|
|
131
190
|
return SourceChainGuardInstruction.CreateGuard;
|
|
@@ -133,8 +192,10 @@ export function identifySourceChainGuardInstruction(
|
|
|
133
192
|
if (
|
|
134
193
|
containsBytes(
|
|
135
194
|
data,
|
|
136
|
-
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
137
|
-
|
|
195
|
+
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
196
|
+
new Uint8Array([141, 54, 37, 207, 237, 210, 250, 215])
|
|
197
|
+
),
|
|
198
|
+
0
|
|
138
199
|
)
|
|
139
200
|
) {
|
|
140
201
|
return SourceChainGuardInstruction.CreateOrder;
|
|
@@ -142,8 +203,10 @@ export function identifySourceChainGuardInstruction(
|
|
|
142
203
|
if (
|
|
143
204
|
containsBytes(
|
|
144
205
|
data,
|
|
145
|
-
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
146
|
-
|
|
206
|
+
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
207
|
+
new Uint8Array([175, 175, 109, 31, 13, 152, 155, 237])
|
|
208
|
+
),
|
|
209
|
+
0
|
|
147
210
|
)
|
|
148
211
|
) {
|
|
149
212
|
return SourceChainGuardInstruction.Initialize;
|
|
@@ -151,8 +214,10 @@ export function identifySourceChainGuardInstruction(
|
|
|
151
214
|
if (
|
|
152
215
|
containsBytes(
|
|
153
216
|
data,
|
|
154
|
-
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
155
|
-
|
|
217
|
+
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
218
|
+
new Uint8Array([69, 230, 54, 217, 254, 93, 181, 32])
|
|
219
|
+
),
|
|
220
|
+
0
|
|
156
221
|
)
|
|
157
222
|
) {
|
|
158
223
|
return SourceChainGuardInstruction.PreStartOrderExecution;
|
|
@@ -160,8 +225,10 @@ export function identifySourceChainGuardInstruction(
|
|
|
160
225
|
if (
|
|
161
226
|
containsBytes(
|
|
162
227
|
data,
|
|
163
|
-
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
164
|
-
|
|
228
|
+
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
229
|
+
new Uint8Array([251, 163, 0, 52, 91, 194, 187, 92])
|
|
230
|
+
),
|
|
231
|
+
0
|
|
165
232
|
)
|
|
166
233
|
) {
|
|
167
234
|
return SourceChainGuardInstruction.SetAdmin;
|
|
@@ -169,8 +236,10 @@ export function identifySourceChainGuardInstruction(
|
|
|
169
236
|
if (
|
|
170
237
|
containsBytes(
|
|
171
238
|
data,
|
|
172
|
-
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
173
|
-
|
|
239
|
+
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
240
|
+
new Uint8Array([153, 39, 10, 108, 220, 0, 84, 47])
|
|
241
|
+
),
|
|
242
|
+
0
|
|
174
243
|
)
|
|
175
244
|
) {
|
|
176
245
|
return SourceChainGuardInstruction.SetAuctioneerPubKey;
|
|
@@ -178,8 +247,10 @@ export function identifySourceChainGuardInstruction(
|
|
|
178
247
|
if (
|
|
179
248
|
containsBytes(
|
|
180
249
|
data,
|
|
181
|
-
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
182
|
-
|
|
250
|
+
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
251
|
+
new Uint8Array([38, 237, 19, 225, 182, 31, 246, 143])
|
|
252
|
+
),
|
|
253
|
+
0
|
|
183
254
|
)
|
|
184
255
|
) {
|
|
185
256
|
return SourceChainGuardInstruction.StartOrderExecution;
|
|
@@ -187,21 +258,28 @@ export function identifySourceChainGuardInstruction(
|
|
|
187
258
|
if (
|
|
188
259
|
containsBytes(
|
|
189
260
|
data,
|
|
190
|
-
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
191
|
-
|
|
261
|
+
fixEncoderSize(getBytesEncoder(), 8).encode(
|
|
262
|
+
new Uint8Array([142, 117, 45, 141, 169, 107, 117, 209])
|
|
263
|
+
),
|
|
264
|
+
0
|
|
192
265
|
)
|
|
193
266
|
) {
|
|
194
267
|
return SourceChainGuardInstruction.StartOrderExecutionAfterSwap;
|
|
195
268
|
}
|
|
196
|
-
throw new Error(
|
|
269
|
+
throw new Error(
|
|
270
|
+
'The provided instruction could not be identified as a sourceChainGuard instruction.'
|
|
271
|
+
);
|
|
197
272
|
}
|
|
198
273
|
|
|
199
274
|
export type ParsedSourceChainGuardInstruction<
|
|
200
|
-
TProgram extends string = '
|
|
275
|
+
TProgram extends string = 'DQZQGiVa1PBXesdbCRzmJpZ7AyntLXfAwP5Qty1hgFqQ',
|
|
201
276
|
> =
|
|
202
277
|
| ({
|
|
203
278
|
instructionType: SourceChainGuardInstruction.AcceptAdmin;
|
|
204
279
|
} & ParsedAcceptAdminInstruction<TProgram>)
|
|
280
|
+
| ({
|
|
281
|
+
instructionType: SourceChainGuardInstruction.CancelDcaOrder;
|
|
282
|
+
} & ParsedCancelDcaOrderInstruction<TProgram>)
|
|
205
283
|
| ({
|
|
206
284
|
instructionType: SourceChainGuardInstruction.CancelOrder;
|
|
207
285
|
} & ParsedCancelOrderInstruction<TProgram>)
|
|
@@ -211,6 +289,9 @@ export type ParsedSourceChainGuardInstruction<
|
|
|
211
289
|
| ({
|
|
212
290
|
instructionType: SourceChainGuardInstruction.CollectProtocolFees;
|
|
213
291
|
} & ParsedCollectProtocolFeesInstruction<TProgram>)
|
|
292
|
+
| ({
|
|
293
|
+
instructionType: SourceChainGuardInstruction.CreateDcaOrder;
|
|
294
|
+
} & ParsedCreateDcaOrderInstruction<TProgram>)
|
|
214
295
|
| ({
|
|
215
296
|
instructionType: SourceChainGuardInstruction.CreateGuard;
|
|
216
297
|
} & ParsedCreateGuardInstruction<TProgram>)
|
|
@@ -6,20 +6,24 @@
|
|
|
6
6
|
* @see https://github.com/codama-idl/codama
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
import {
|
|
10
|
-
|
|
9
|
+
import {
|
|
10
|
+
isProgramDerivedAddress,
|
|
11
|
+
type Address,
|
|
12
|
+
type ProgramDerivedAddress,
|
|
13
|
+
} from '@solana/addresses';
|
|
14
|
+
import { AccountRole, type AccountMeta, upgradeRoleToSigner } from '@solana/instructions';
|
|
11
15
|
import {
|
|
12
16
|
isTransactionSigner as kitIsTransactionSigner,
|
|
13
|
-
type
|
|
17
|
+
type AccountSignerMeta,
|
|
14
18
|
type TransactionSigner,
|
|
15
|
-
} from '@solana/
|
|
19
|
+
} from '@solana/signers';
|
|
16
20
|
|
|
17
21
|
/**
|
|
18
22
|
* Asserts that the given value is not null or undefined.
|
|
19
23
|
* @internal
|
|
20
24
|
*/
|
|
21
25
|
export function expectSome<T>(value: T | null | undefined): T {
|
|
22
|
-
if (value
|
|
26
|
+
if (value === null || value === undefined) {
|
|
23
27
|
throw new Error('Expected a value but received null or undefined.');
|
|
24
28
|
}
|
|
25
29
|
return value;
|
|
@@ -30,7 +34,7 @@ export function expectSome<T>(value: T | null | undefined): T {
|
|
|
30
34
|
* @internal
|
|
31
35
|
*/
|
|
32
36
|
export function expectAddress<T extends string = string>(
|
|
33
|
-
value: Address<T> | ProgramDerivedAddress<T> | TransactionSigner<T> | null | undefined
|
|
37
|
+
value: Address<T> | ProgramDerivedAddress<T> | TransactionSigner<T> | null | undefined
|
|
34
38
|
): Address<T> {
|
|
35
39
|
if (!value) {
|
|
36
40
|
throw new Error('Expected a Address.');
|
|
@@ -39,7 +43,7 @@ export function expectAddress<T extends string = string>(
|
|
|
39
43
|
return value.address;
|
|
40
44
|
}
|
|
41
45
|
if (Array.isArray(value)) {
|
|
42
|
-
return value[0]
|
|
46
|
+
return value[0] as Address<T>;
|
|
43
47
|
}
|
|
44
48
|
return value as Address<T>;
|
|
45
49
|
}
|
|
@@ -49,7 +53,7 @@ export function expectAddress<T extends string = string>(
|
|
|
49
53
|
* @internal
|
|
50
54
|
*/
|
|
51
55
|
export function expectProgramDerivedAddress<T extends string = string>(
|
|
52
|
-
value: Address<T> | ProgramDerivedAddress<T> | TransactionSigner<T> | null | undefined
|
|
56
|
+
value: Address<T> | ProgramDerivedAddress<T> | TransactionSigner<T> | null | undefined
|
|
53
57
|
): ProgramDerivedAddress<T> {
|
|
54
58
|
if (!value || !Array.isArray(value) || !isProgramDerivedAddress(value)) {
|
|
55
59
|
throw new Error('Expected a ProgramDerivedAddress.');
|
|
@@ -62,7 +66,7 @@ export function expectProgramDerivedAddress<T extends string = string>(
|
|
|
62
66
|
* @internal
|
|
63
67
|
*/
|
|
64
68
|
export function expectTransactionSigner<T extends string = string>(
|
|
65
|
-
value: Address<T> | ProgramDerivedAddress<T> | TransactionSigner<T> | null | undefined
|
|
69
|
+
value: Address<T> | ProgramDerivedAddress<T> | TransactionSigner<T> | null | undefined
|
|
66
70
|
): TransactionSigner<T> {
|
|
67
71
|
if (!value || !isTransactionSigner(value)) {
|
|
68
72
|
throw new Error('Expected a TransactionSigner.');
|
|
@@ -90,7 +94,7 @@ export type ResolvedAccount<
|
|
|
90
94
|
* Defines an instruction that stores additional bytes on-chain.
|
|
91
95
|
* @internal
|
|
92
96
|
*/
|
|
93
|
-
export type
|
|
97
|
+
export type InstructionWithByteDelta = {
|
|
94
98
|
byteDelta: number;
|
|
95
99
|
};
|
|
96
100
|
|
|
@@ -98,8 +102,11 @@ export type IInstructionWithByteDelta = {
|
|
|
98
102
|
* Get account metas and signers from resolved accounts.
|
|
99
103
|
* @internal
|
|
100
104
|
*/
|
|
101
|
-
export function getAccountMetaFactory(
|
|
102
|
-
|
|
105
|
+
export function getAccountMetaFactory(
|
|
106
|
+
programAddress: Address,
|
|
107
|
+
optionalAccountStrategy: 'omitted' | 'programId'
|
|
108
|
+
) {
|
|
109
|
+
return (account: ResolvedAccount): AccountMeta | AccountSignerMeta | undefined => {
|
|
103
110
|
if (!account.value) {
|
|
104
111
|
if (optionalAccountStrategy === 'omitted') return;
|
|
105
112
|
return Object.freeze({ address: programAddress, role: AccountRole.READONLY });
|
|
@@ -115,7 +122,9 @@ export function getAccountMetaFactory(programAddress: Address, optionalAccountSt
|
|
|
115
122
|
}
|
|
116
123
|
|
|
117
124
|
export function isTransactionSigner<TAddress extends string = string>(
|
|
118
|
-
value: Address<TAddress> | ProgramDerivedAddress<TAddress> | TransactionSigner<TAddress
|
|
125
|
+
value: Address<TAddress> | ProgramDerivedAddress<TAddress> | TransactionSigner<TAddress>
|
|
119
126
|
): value is TransactionSigner<TAddress> {
|
|
120
|
-
return
|
|
127
|
+
return (
|
|
128
|
+
!!value && typeof value === 'object' && 'address' in value && kitIsTransactionSigner(value)
|
|
129
|
+
);
|
|
121
130
|
}
|
|
@@ -13,23 +13,26 @@ import {
|
|
|
13
13
|
getStructDecoder,
|
|
14
14
|
getStructEncoder,
|
|
15
15
|
type Address,
|
|
16
|
-
type
|
|
17
|
-
type
|
|
18
|
-
type
|
|
16
|
+
type FixedSizeCodec,
|
|
17
|
+
type FixedSizeDecoder,
|
|
18
|
+
type FixedSizeEncoder,
|
|
19
19
|
} from '@solana/kit';
|
|
20
20
|
|
|
21
21
|
export type AdminUpdateStarted = { newAdmin: Address };
|
|
22
22
|
|
|
23
23
|
export type AdminUpdateStartedArgs = AdminUpdateStarted;
|
|
24
24
|
|
|
25
|
-
export function getAdminUpdateStartedEncoder():
|
|
25
|
+
export function getAdminUpdateStartedEncoder(): FixedSizeEncoder<AdminUpdateStartedArgs> {
|
|
26
26
|
return getStructEncoder([['newAdmin', getAddressEncoder()]]);
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
export function getAdminUpdateStartedDecoder():
|
|
29
|
+
export function getAdminUpdateStartedDecoder(): FixedSizeDecoder<AdminUpdateStarted> {
|
|
30
30
|
return getStructDecoder([['newAdmin', getAddressDecoder()]]);
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
export function getAdminUpdateStartedCodec():
|
|
33
|
+
export function getAdminUpdateStartedCodec(): FixedSizeCodec<
|
|
34
|
+
AdminUpdateStartedArgs,
|
|
35
|
+
AdminUpdateStarted
|
|
36
|
+
> {
|
|
34
37
|
return combineCodec(getAdminUpdateStartedEncoder(), getAdminUpdateStartedDecoder());
|
|
35
38
|
}
|
|
@@ -13,23 +13,23 @@ import {
|
|
|
13
13
|
getStructDecoder,
|
|
14
14
|
getStructEncoder,
|
|
15
15
|
type Address,
|
|
16
|
-
type
|
|
17
|
-
type
|
|
18
|
-
type
|
|
16
|
+
type FixedSizeCodec,
|
|
17
|
+
type FixedSizeDecoder,
|
|
18
|
+
type FixedSizeEncoder,
|
|
19
19
|
} from '@solana/kit';
|
|
20
20
|
|
|
21
21
|
export type AdminUpdated = { newAdmin: Address };
|
|
22
22
|
|
|
23
23
|
export type AdminUpdatedArgs = AdminUpdated;
|
|
24
24
|
|
|
25
|
-
export function getAdminUpdatedEncoder():
|
|
25
|
+
export function getAdminUpdatedEncoder(): FixedSizeEncoder<AdminUpdatedArgs> {
|
|
26
26
|
return getStructEncoder([['newAdmin', getAddressEncoder()]]);
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
export function getAdminUpdatedDecoder():
|
|
29
|
+
export function getAdminUpdatedDecoder(): FixedSizeDecoder<AdminUpdated> {
|
|
30
30
|
return getStructDecoder([['newAdmin', getAddressDecoder()]]);
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
export function getAdminUpdatedCodec():
|
|
33
|
+
export function getAdminUpdatedCodec(): FixedSizeCodec<AdminUpdatedArgs, AdminUpdated> {
|
|
34
34
|
return combineCodec(getAdminUpdatedEncoder(), getAdminUpdatedDecoder());
|
|
35
35
|
}
|
|
@@ -13,29 +13,32 @@ import {
|
|
|
13
13
|
getStructDecoder,
|
|
14
14
|
getStructEncoder,
|
|
15
15
|
type Address,
|
|
16
|
-
type
|
|
17
|
-
type
|
|
18
|
-
type
|
|
16
|
+
type FixedSizeCodec,
|
|
17
|
+
type FixedSizeDecoder,
|
|
18
|
+
type FixedSizeEncoder,
|
|
19
19
|
} from '@solana/kit';
|
|
20
20
|
|
|
21
21
|
export type AuctioneerPubkeyUpdated = { guardId: Address; auctioneerPubKey: Address };
|
|
22
22
|
|
|
23
23
|
export type AuctioneerPubkeyUpdatedArgs = AuctioneerPubkeyUpdated;
|
|
24
24
|
|
|
25
|
-
export function getAuctioneerPubkeyUpdatedEncoder():
|
|
25
|
+
export function getAuctioneerPubkeyUpdatedEncoder(): FixedSizeEncoder<AuctioneerPubkeyUpdatedArgs> {
|
|
26
26
|
return getStructEncoder([
|
|
27
27
|
['guardId', getAddressEncoder()],
|
|
28
28
|
['auctioneerPubKey', getAddressEncoder()],
|
|
29
29
|
]);
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
-
export function getAuctioneerPubkeyUpdatedDecoder():
|
|
32
|
+
export function getAuctioneerPubkeyUpdatedDecoder(): FixedSizeDecoder<AuctioneerPubkeyUpdated> {
|
|
33
33
|
return getStructDecoder([
|
|
34
34
|
['guardId', getAddressDecoder()],
|
|
35
35
|
['auctioneerPubKey', getAddressDecoder()],
|
|
36
36
|
]);
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
-
export function getAuctioneerPubkeyUpdatedCodec():
|
|
39
|
+
export function getAuctioneerPubkeyUpdatedCodec(): FixedSizeCodec<
|
|
40
|
+
AuctioneerPubkeyUpdatedArgs,
|
|
41
|
+
AuctioneerPubkeyUpdated
|
|
42
|
+
> {
|
|
40
43
|
return combineCodec(getAuctioneerPubkeyUpdatedEncoder(), getAuctioneerPubkeyUpdatedDecoder());
|
|
41
44
|
}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This code was AUTOGENERATED using the codama library.
|
|
3
|
+
* Please DO NOT EDIT THIS FILE, instead use visitors
|
|
4
|
+
* to add features, then rerun codama to update it.
|
|
5
|
+
*
|
|
6
|
+
* @see https://github.com/codama-idl/codama
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import {
|
|
10
|
+
combineCodec,
|
|
11
|
+
getAddressDecoder,
|
|
12
|
+
getAddressEncoder,
|
|
13
|
+
getStructDecoder,
|
|
14
|
+
getStructEncoder,
|
|
15
|
+
getU32Decoder,
|
|
16
|
+
getU32Encoder,
|
|
17
|
+
getU64Decoder,
|
|
18
|
+
getU64Encoder,
|
|
19
|
+
type Address,
|
|
20
|
+
type FixedSizeCodec,
|
|
21
|
+
type FixedSizeDecoder,
|
|
22
|
+
type FixedSizeEncoder,
|
|
23
|
+
} from '@solana/kit';
|
|
24
|
+
|
|
25
|
+
export type DcaExecutionStarted = {
|
|
26
|
+
orderId: Address;
|
|
27
|
+
intervalNumber: number;
|
|
28
|
+
solver: Address;
|
|
29
|
+
collateralAmount: bigint;
|
|
30
|
+
protocolFeeAmount: bigint;
|
|
31
|
+
solverDeadline: number;
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
export type DcaExecutionStartedArgs = {
|
|
35
|
+
orderId: Address;
|
|
36
|
+
intervalNumber: number;
|
|
37
|
+
solver: Address;
|
|
38
|
+
collateralAmount: number | bigint;
|
|
39
|
+
protocolFeeAmount: number | bigint;
|
|
40
|
+
solverDeadline: number;
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
export function getDcaExecutionStartedEncoder(): FixedSizeEncoder<DcaExecutionStartedArgs> {
|
|
44
|
+
return getStructEncoder([
|
|
45
|
+
['orderId', getAddressEncoder()],
|
|
46
|
+
['intervalNumber', getU32Encoder()],
|
|
47
|
+
['solver', getAddressEncoder()],
|
|
48
|
+
['collateralAmount', getU64Encoder()],
|
|
49
|
+
['protocolFeeAmount', getU64Encoder()],
|
|
50
|
+
['solverDeadline', getU32Encoder()],
|
|
51
|
+
]);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export function getDcaExecutionStartedDecoder(): FixedSizeDecoder<DcaExecutionStarted> {
|
|
55
|
+
return getStructDecoder([
|
|
56
|
+
['orderId', getAddressDecoder()],
|
|
57
|
+
['intervalNumber', getU32Decoder()],
|
|
58
|
+
['solver', getAddressDecoder()],
|
|
59
|
+
['collateralAmount', getU64Decoder()],
|
|
60
|
+
['protocolFeeAmount', getU64Decoder()],
|
|
61
|
+
['solverDeadline', getU32Decoder()],
|
|
62
|
+
]);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export function getDcaExecutionStartedCodec(): FixedSizeCodec<
|
|
66
|
+
DcaExecutionStartedArgs,
|
|
67
|
+
DcaExecutionStarted
|
|
68
|
+
> {
|
|
69
|
+
return combineCodec(getDcaExecutionStartedEncoder(), getDcaExecutionStartedDecoder());
|
|
70
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This code was AUTOGENERATED using the codama library.
|
|
3
|
+
* Please DO NOT EDIT THIS FILE, instead use visitors
|
|
4
|
+
* to add features, then rerun codama to update it.
|
|
5
|
+
*
|
|
6
|
+
* @see https://github.com/codama-idl/codama
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import {
|
|
10
|
+
combineCodec,
|
|
11
|
+
fixDecoderSize,
|
|
12
|
+
fixEncoderSize,
|
|
13
|
+
getAddressDecoder,
|
|
14
|
+
getAddressEncoder,
|
|
15
|
+
getBytesDecoder,
|
|
16
|
+
getBytesEncoder,
|
|
17
|
+
getStructDecoder,
|
|
18
|
+
getStructEncoder,
|
|
19
|
+
getU32Decoder,
|
|
20
|
+
getU32Encoder,
|
|
21
|
+
getU64Decoder,
|
|
22
|
+
getU64Encoder,
|
|
23
|
+
type Address,
|
|
24
|
+
type FixedSizeCodec,
|
|
25
|
+
type FixedSizeDecoder,
|
|
26
|
+
type FixedSizeEncoder,
|
|
27
|
+
type ReadonlyUint8Array,
|
|
28
|
+
} from '@solana/kit';
|
|
29
|
+
|
|
30
|
+
export type DcaOrderCreated = {
|
|
31
|
+
orderId: Address;
|
|
32
|
+
user: Address;
|
|
33
|
+
guard: Address;
|
|
34
|
+
tokenInMint: Address;
|
|
35
|
+
amountInPerInterval: bigint;
|
|
36
|
+
minStablecoinsAmountPerInterval: bigint;
|
|
37
|
+
startTime: number;
|
|
38
|
+
deadline: number;
|
|
39
|
+
totalIntervals: number;
|
|
40
|
+
intervalDuration: number;
|
|
41
|
+
executionDetailsHash: ReadonlyUint8Array;
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
export type DcaOrderCreatedArgs = {
|
|
45
|
+
orderId: Address;
|
|
46
|
+
user: Address;
|
|
47
|
+
guard: Address;
|
|
48
|
+
tokenInMint: Address;
|
|
49
|
+
amountInPerInterval: number | bigint;
|
|
50
|
+
minStablecoinsAmountPerInterval: number | bigint;
|
|
51
|
+
startTime: number;
|
|
52
|
+
deadline: number;
|
|
53
|
+
totalIntervals: number;
|
|
54
|
+
intervalDuration: number;
|
|
55
|
+
executionDetailsHash: ReadonlyUint8Array;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
export function getDcaOrderCreatedEncoder(): FixedSizeEncoder<DcaOrderCreatedArgs> {
|
|
59
|
+
return getStructEncoder([
|
|
60
|
+
['orderId', getAddressEncoder()],
|
|
61
|
+
['user', getAddressEncoder()],
|
|
62
|
+
['guard', getAddressEncoder()],
|
|
63
|
+
['tokenInMint', getAddressEncoder()],
|
|
64
|
+
['amountInPerInterval', getU64Encoder()],
|
|
65
|
+
['minStablecoinsAmountPerInterval', getU64Encoder()],
|
|
66
|
+
['startTime', getU32Encoder()],
|
|
67
|
+
['deadline', getU32Encoder()],
|
|
68
|
+
['totalIntervals', getU32Encoder()],
|
|
69
|
+
['intervalDuration', getU32Encoder()],
|
|
70
|
+
['executionDetailsHash', fixEncoderSize(getBytesEncoder(), 32)],
|
|
71
|
+
]);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export function getDcaOrderCreatedDecoder(): FixedSizeDecoder<DcaOrderCreated> {
|
|
75
|
+
return getStructDecoder([
|
|
76
|
+
['orderId', getAddressDecoder()],
|
|
77
|
+
['user', getAddressDecoder()],
|
|
78
|
+
['guard', getAddressDecoder()],
|
|
79
|
+
['tokenInMint', getAddressDecoder()],
|
|
80
|
+
['amountInPerInterval', getU64Decoder()],
|
|
81
|
+
['minStablecoinsAmountPerInterval', getU64Decoder()],
|
|
82
|
+
['startTime', getU32Decoder()],
|
|
83
|
+
['deadline', getU32Decoder()],
|
|
84
|
+
['totalIntervals', getU32Decoder()],
|
|
85
|
+
['intervalDuration', getU32Decoder()],
|
|
86
|
+
['executionDetailsHash', fixDecoderSize(getBytesDecoder(), 32)],
|
|
87
|
+
]);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
export function getDcaOrderCreatedCodec(): FixedSizeCodec<DcaOrderCreatedArgs, DcaOrderCreated> {
|
|
91
|
+
return combineCodec(getDcaOrderCreatedEncoder(), getDcaOrderCreatedDecoder());
|
|
92
|
+
}
|