@wuwei-labs/srsly 3.0.0-beta.2 → 3.0.0-beta.21
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 +38 -0
- package/dist/cjs/accounts/borrower.js +79 -15
- package/dist/cjs/accounts/borrower.js.map +1 -1
- package/dist/cjs/accounts/config.js +51 -3
- package/dist/cjs/accounts/config.js.map +1 -1
- package/dist/cjs/accounts/contract.js +52 -1
- package/dist/cjs/accounts/contract.js.map +1 -1
- package/dist/cjs/accounts/fleet.js +2 -1
- package/dist/cjs/accounts/fleet.js.map +1 -1
- package/dist/cjs/accounts/member.js +16 -0
- package/dist/cjs/accounts/member.js.map +1 -0
- package/dist/cjs/accounts/owner.js +105 -0
- package/dist/cjs/accounts/owner.js.map +1 -0
- package/dist/cjs/accounts/rental.js +49 -1
- package/dist/cjs/accounts/rental.js.map +1 -1
- package/dist/cjs/demos.js +337 -34
- package/dist/cjs/demos.js.map +1 -1
- package/dist/cjs/generated/codama/accounts/borrowerState.js +25 -25
- package/dist/cjs/generated/codama/accounts/borrowerState.js.map +1 -1
- package/dist/cjs/generated/codama/accounts/configState.js +55 -48
- package/dist/cjs/generated/codama/accounts/configState.js.map +1 -1
- package/dist/cjs/generated/codama/accounts/contractState.js +59 -42
- package/dist/cjs/generated/codama/accounts/contractState.js.map +1 -1
- package/dist/cjs/generated/codama/accounts/fleet.js +103 -0
- package/dist/cjs/generated/codama/accounts/fleet.js.map +1 -0
- package/dist/cjs/generated/codama/accounts/index.js +2 -2
- package/dist/cjs/generated/codama/accounts/index.js.map +1 -1
- package/dist/cjs/generated/codama/accounts/ownerState.js +86 -0
- package/dist/cjs/generated/codama/accounts/ownerState.js.map +1 -0
- package/dist/cjs/generated/codama/accounts/rentalState.js +42 -30
- package/dist/cjs/generated/codama/accounts/rentalState.js.map +1 -1
- package/dist/cjs/generated/codama/accounts/thread.js +47 -44
- package/dist/cjs/generated/codama/accounts/thread.js.map +1 -1
- package/dist/cjs/generated/codama/errors/srsly.js +61 -19
- package/dist/cjs/generated/codama/errors/srsly.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/acceptRental.js +39 -61
- package/dist/cjs/generated/codama/instructions/acceptRental.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/activateRental.js +193 -0
- package/dist/cjs/generated/codama/instructions/activateRental.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/cancelRental.js +50 -28
- package/dist/cjs/generated/codama/instructions/cancelRental.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/claimBorrower.js +36 -23
- package/dist/cjs/generated/codama/instructions/claimBorrower.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/{claimContractPayments.js → claimOwner.js} +70 -56
- package/dist/cjs/generated/codama/instructions/claimOwner.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/claimRental.js +336 -0
- package/dist/cjs/generated/codama/instructions/claimRental.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/closeContract.js +17 -85
- package/dist/cjs/generated/codama/instructions/closeContract.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/closeRental.js +46 -45
- package/dist/cjs/generated/codama/instructions/closeRental.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/createConfig.js +56 -20
- package/dist/cjs/generated/codama/instructions/createConfig.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/createContract.js +53 -37
- package/dist/cjs/generated/codama/instructions/createContract.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/deleteConfig.js +15 -15
- package/dist/cjs/generated/codama/instructions/deleteConfig.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/deleteContract.js +5 -5
- package/dist/cjs/generated/codama/instructions/deleteRental.js +5 -5
- package/dist/cjs/generated/codama/instructions/index.js +7 -4
- package/dist/cjs/generated/codama/instructions/index.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/invalidateRental.js +156 -0
- package/dist/cjs/generated/codama/instructions/invalidateRental.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/payRental.js +64 -24
- package/dist/cjs/generated/codama/instructions/payRental.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/releaseRental.js +8 -49
- package/dist/cjs/generated/codama/instructions/releaseRental.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/reserveRental.js +41 -22
- package/dist/cjs/generated/codama/instructions/reserveRental.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/scheduleRental.js +265 -0
- package/dist/cjs/generated/codama/instructions/scheduleRental.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/setDelegate.js +79 -0
- package/dist/cjs/generated/codama/instructions/setDelegate.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/updateBorrower.js +9 -9
- package/dist/cjs/generated/codama/instructions/updateBorrower.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/updateConfig.js +43 -45
- package/dist/cjs/generated/codama/instructions/updateConfig.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/updateContract.js +24 -22
- package/dist/cjs/generated/codama/instructions/updateContract.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/updateOwner.js +79 -0
- package/dist/cjs/generated/codama/instructions/updateOwner.js.map +1 -0
- package/dist/cjs/generated/codama/programs/srsly.js +48 -36
- package/dist/cjs/generated/codama/programs/srsly.js.map +1 -1
- package/dist/cjs/generated/codama/shared/index.js +8 -8
- package/dist/cjs/generated/codama/types/atlasClaimed.js +33 -0
- package/dist/cjs/generated/codama/types/atlasClaimed.js.map +1 -0
- package/dist/cjs/generated/codama/types/borrowerInitialized.js +29 -0
- package/dist/cjs/generated/codama/types/borrowerInitialized.js.map +1 -0
- package/dist/cjs/generated/codama/types/cargoStats.js +43 -0
- package/dist/cjs/generated/codama/types/cargoStats.js.map +1 -0
- package/dist/cjs/generated/codama/types/contractClosed.js +31 -0
- package/dist/cjs/generated/codama/types/contractClosed.js.map +1 -0
- package/dist/cjs/generated/codama/types/contractCreated.js +33 -0
- package/dist/cjs/generated/codama/types/contractCreated.js.map +1 -0
- package/dist/cjs/generated/codama/types/contractDelegateSet.js +31 -0
- package/dist/cjs/generated/codama/types/contractDelegateSet.js.map +1 -0
- package/dist/cjs/generated/codama/types/contractPendingClose.js +31 -0
- package/dist/cjs/generated/codama/types/contractPendingClose.js.map +1 -0
- package/dist/cjs/generated/codama/types/contractUpdated.js +34 -0
- package/dist/cjs/generated/codama/types/contractUpdated.js.map +1 -0
- package/dist/cjs/generated/codama/types/discountAuthorization.js +33 -0
- package/dist/cjs/generated/codama/types/discountAuthorization.js.map +1 -0
- package/dist/cjs/generated/codama/types/fieldUpdate.js +29 -0
- package/dist/cjs/generated/codama/types/fieldUpdate.js.map +1 -0
- package/dist/cjs/generated/codama/types/index.js +25 -3
- package/dist/cjs/generated/codama/types/index.js.map +1 -1
- package/dist/cjs/generated/codama/types/miscStats.js +47 -0
- package/dist/cjs/generated/codama/types/miscStats.js.map +1 -0
- package/dist/cjs/generated/codama/types/movementStats.js +39 -0
- package/dist/cjs/generated/codama/types/movementStats.js.map +1 -0
- package/dist/cjs/generated/codama/types/optionalNonSystemPubkey.js +23 -0
- package/dist/cjs/generated/codama/types/optionalNonSystemPubkey.js.map +1 -0
- package/dist/cjs/generated/codama/types/rentalAccepted.js +43 -0
- package/dist/cjs/generated/codama/types/rentalAccepted.js.map +1 -0
- package/dist/cjs/generated/codama/types/rentalActivated.js +31 -0
- package/dist/cjs/generated/codama/types/rentalActivated.js.map +1 -0
- package/dist/cjs/generated/codama/types/rentalCancelled.js +35 -0
- package/dist/cjs/generated/codama/types/rentalCancelled.js.map +1 -0
- package/dist/cjs/generated/codama/types/rentalClaimed.js +41 -0
- package/dist/cjs/generated/codama/types/rentalClaimed.js.map +1 -0
- package/dist/cjs/generated/codama/types/rentalClosed.js +33 -0
- package/dist/cjs/generated/codama/types/rentalClosed.js.map +1 -0
- package/dist/cjs/generated/codama/types/rentalPaymentProcessed.js +33 -0
- package/dist/cjs/generated/codama/types/rentalPaymentProcessed.js.map +1 -0
- package/dist/cjs/generated/codama/types/rentalScheduled.js +35 -0
- package/dist/cjs/generated/codama/types/rentalScheduled.js.map +1 -0
- package/dist/cjs/generated/codama/types/rentalStatus.js +31 -0
- package/dist/cjs/generated/codama/types/rentalStatus.js.map +1 -0
- package/dist/cjs/generated/codama/types/reservationCreated.js +35 -0
- package/dist/cjs/generated/codama/types/reservationCreated.js.map +1 -0
- package/dist/cjs/generated/codama/types/reservationKnockoff.js +35 -0
- package/dist/cjs/generated/codama/types/reservationKnockoff.js.map +1 -0
- package/dist/cjs/generated/codama/types/schedule.js +14 -14
- package/dist/cjs/generated/codama/types/shipCounts.js +45 -0
- package/dist/cjs/generated/codama/types/shipCounts.js.map +1 -0
- package/dist/cjs/generated/codama/types/shipStats.js +32 -0
- package/dist/cjs/generated/codama/types/shipStats.js.map +1 -0
- package/dist/cjs/generated/codama/types/signal.js +12 -12
- package/dist/cjs/generated/codama/types/trigger.js +36 -36
- package/dist/cjs/index.js +64 -11
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/instructions/acceptRental.js +82 -24
- package/dist/cjs/instructions/acceptRental.js.map +1 -1
- package/dist/cjs/instructions/approveAffiliate.js +11 -0
- package/dist/cjs/instructions/approveAffiliate.js.map +1 -0
- package/dist/cjs/instructions/cancelRental.js +12 -5
- package/dist/cjs/instructions/cancelRental.js.map +1 -1
- package/dist/cjs/instructions/claimBorrower.js +7 -3
- package/dist/cjs/instructions/claimBorrower.js.map +1 -1
- package/dist/cjs/instructions/claimRental.js +201 -0
- package/dist/cjs/instructions/claimRental.js.map +1 -0
- package/dist/cjs/instructions/closeContract.js +4 -3
- package/dist/cjs/instructions/closeContract.js.map +1 -1
- package/dist/cjs/instructions/closeRental.js +42 -12
- package/dist/cjs/instructions/closeRental.js.map +1 -1
- package/dist/cjs/instructions/createAffiliate.js +73 -0
- package/dist/cjs/instructions/createAffiliate.js.map +1 -0
- package/dist/cjs/instructions/createConfig.js +12 -0
- package/dist/cjs/instructions/createConfig.js.map +1 -1
- package/dist/cjs/instructions/createContract.js +12 -5
- package/dist/cjs/instructions/createContract.js.map +1 -1
- package/dist/cjs/instructions/deleteConfig.js +16 -5
- package/dist/cjs/instructions/deleteConfig.js.map +1 -1
- package/dist/cjs/instructions/deleteContract.js +79 -0
- package/dist/cjs/instructions/deleteContract.js.map +1 -0
- package/dist/cjs/instructions/index.js +56 -0
- package/dist/cjs/instructions/index.js.map +1 -0
- package/dist/cjs/instructions/invalidateRental.js +101 -0
- package/dist/cjs/instructions/invalidateRental.js.map +1 -0
- package/dist/cjs/instructions/ownerClaim.js +110 -0
- package/dist/cjs/instructions/ownerClaim.js.map +1 -0
- package/dist/cjs/instructions/ownerUpdate.js +68 -0
- package/dist/cjs/instructions/ownerUpdate.js.map +1 -0
- package/dist/cjs/instructions/releaseRental.js +20 -53
- package/dist/cjs/instructions/releaseRental.js.map +1 -1
- package/dist/cjs/instructions/removeAffiliate.js +11 -0
- package/dist/cjs/instructions/removeAffiliate.js.map +1 -0
- package/dist/cjs/instructions/reserveRental.js +8 -6
- package/dist/cjs/instructions/reserveRental.js.map +1 -1
- package/dist/cjs/instructions/setDelegate.js +72 -0
- package/dist/cjs/instructions/setDelegate.js.map +1 -0
- package/dist/cjs/instructions/updateAffiliate.js +57 -0
- package/dist/cjs/instructions/updateAffiliate.js.map +1 -0
- package/dist/cjs/instructions/updateBorrower.js +4 -2
- package/dist/cjs/instructions/updateBorrower.js.map +1 -1
- package/dist/cjs/instructions/updateConfig.js +0 -1
- package/dist/cjs/instructions/updateConfig.js.map +1 -1
- package/dist/cjs/instructions/updateContract.js +12 -5
- package/dist/cjs/instructions/updateContract.js.map +1 -1
- package/dist/cjs/kit/index.js +34 -0
- package/dist/cjs/kit/index.js.map +1 -0
- package/dist/cjs/legacy/index.js +127 -0
- package/dist/cjs/legacy/index.js.map +1 -0
- package/dist/cjs/package.json +9 -5
- package/dist/cjs/params/amount.js +4 -4
- package/dist/cjs/pda/constants.js +2 -1
- package/dist/cjs/pda/constants.js.map +1 -1
- package/dist/cjs/pda/index.js +7 -2
- package/dist/cjs/pda/index.js.map +1 -1
- package/dist/cjs/pda/lookupTable.js +59 -0
- package/dist/cjs/pda/lookupTable.js.map +1 -0
- package/dist/cjs/pda/slyvault.js +5 -49
- package/dist/cjs/pda/slyvault.js.map +1 -1
- package/dist/cjs/pda/srsly.js +32 -6
- package/dist/cjs/pda/srsly.js.map +1 -1
- package/dist/cjs/pda/thread.js +2 -2
- package/dist/cjs/utils/addresses.js +7 -1
- package/dist/cjs/utils/addresses.js.map +1 -1
- package/dist/cjs/utils/config.js +20 -2
- package/dist/cjs/utils/config.js.map +1 -1
- package/dist/cjs/utils/discountAuth.js +157 -0
- package/dist/cjs/utils/discountAuth.js.map +1 -0
- package/dist/cjs/utils/index.js +27 -1
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/utils/instructionResult.js +76 -0
- package/dist/cjs/utils/instructionResult.js.map +1 -0
- package/dist/cjs/utils/instructions.js +12 -17
- package/dist/cjs/utils/instructions.js.map +1 -1
- package/dist/cjs/utils/lookupTable.js +143 -0
- package/dist/cjs/utils/lookupTable.js.map +1 -0
- package/dist/cjs/utils/rental.js +135 -0
- package/dist/cjs/utils/rental.js.map +1 -0
- package/dist/cjs/utils/rpc.js +57 -0
- package/dist/cjs/utils/rpc.js.map +1 -0
- package/dist/cjs/utils/signer.js +8 -8
- package/dist/cjs/utils/signer.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/esm/accounts/borrower.js +80 -17
- package/dist/esm/accounts/borrower.js.map +1 -1
- package/dist/esm/accounts/config.js +50 -3
- package/dist/esm/accounts/config.js.map +1 -1
- package/dist/esm/accounts/contract.js +53 -3
- package/dist/esm/accounts/contract.js.map +1 -1
- package/dist/esm/accounts/fleet.js +3 -2
- package/dist/esm/accounts/fleet.js.map +1 -1
- package/dist/esm/accounts/member.js +9 -0
- package/dist/esm/accounts/member.js.map +1 -0
- package/dist/esm/accounts/owner.js +101 -0
- package/dist/esm/accounts/owner.js.map +1 -0
- package/dist/esm/accounts/rental.js +50 -3
- package/dist/esm/accounts/rental.js.map +1 -1
- package/dist/esm/demos.js +336 -33
- package/dist/esm/demos.js.map +1 -1
- package/dist/esm/generated/codama/accounts/borrowerState.js +26 -26
- package/dist/esm/generated/codama/accounts/borrowerState.js.map +1 -1
- package/dist/esm/generated/codama/accounts/configState.js +57 -50
- package/dist/esm/generated/codama/accounts/configState.js.map +1 -1
- package/dist/esm/generated/codama/accounts/contractState.js +60 -43
- package/dist/esm/generated/codama/accounts/contractState.js.map +1 -1
- package/dist/esm/generated/codama/accounts/fleet.js +90 -0
- package/dist/esm/generated/codama/accounts/fleet.js.map +1 -0
- package/dist/esm/generated/codama/accounts/index.js +7 -7
- package/dist/esm/generated/codama/accounts/index.js.map +1 -1
- package/dist/esm/generated/codama/accounts/ownerState.js +73 -0
- package/dist/esm/generated/codama/accounts/ownerState.js.map +1 -0
- package/dist/esm/generated/codama/accounts/rentalState.js +43 -30
- package/dist/esm/generated/codama/accounts/rentalState.js.map +1 -1
- package/dist/esm/generated/codama/accounts/thread.js +49 -46
- package/dist/esm/generated/codama/accounts/thread.js.map +1 -1
- package/dist/esm/generated/codama/errors/index.js +1 -1
- package/dist/esm/generated/codama/errors/srsly.js +62 -20
- package/dist/esm/generated/codama/errors/srsly.js.map +1 -1
- package/dist/esm/generated/codama/index.js +5 -5
- package/dist/esm/generated/codama/instructions/acceptRental.js +42 -64
- package/dist/esm/generated/codama/instructions/acceptRental.js.map +1 -1
- package/dist/esm/generated/codama/instructions/activateRental.js +183 -0
- package/dist/esm/generated/codama/instructions/activateRental.js.map +1 -0
- package/dist/esm/generated/codama/instructions/cancelRental.js +53 -31
- package/dist/esm/generated/codama/instructions/cancelRental.js.map +1 -1
- package/dist/esm/generated/codama/instructions/claimBorrower.js +39 -26
- package/dist/esm/generated/codama/instructions/claimBorrower.js.map +1 -1
- package/dist/esm/generated/codama/instructions/{claimContractPayments.js → claimOwner.js} +65 -51
- package/dist/esm/generated/codama/instructions/claimOwner.js.map +1 -0
- package/dist/esm/generated/codama/instructions/claimRental.js +326 -0
- package/dist/esm/generated/codama/instructions/claimRental.js.map +1 -0
- package/dist/esm/generated/codama/instructions/closeContract.js +20 -88
- package/dist/esm/generated/codama/instructions/closeContract.js.map +1 -1
- package/dist/esm/generated/codama/instructions/closeRental.js +49 -48
- package/dist/esm/generated/codama/instructions/closeRental.js.map +1 -1
- package/dist/esm/generated/codama/instructions/createConfig.js +59 -23
- package/dist/esm/generated/codama/instructions/createConfig.js.map +1 -1
- package/dist/esm/generated/codama/instructions/createContract.js +56 -40
- package/dist/esm/generated/codama/instructions/createContract.js.map +1 -1
- package/dist/esm/generated/codama/instructions/deleteConfig.js +18 -18
- package/dist/esm/generated/codama/instructions/deleteConfig.js.map +1 -1
- package/dist/esm/generated/codama/instructions/deleteContract.js +8 -8
- package/dist/esm/generated/codama/instructions/deleteRental.js +8 -8
- package/dist/esm/generated/codama/instructions/index.js +23 -20
- package/dist/esm/generated/codama/instructions/index.js.map +1 -1
- package/dist/esm/generated/codama/instructions/invalidateRental.js +146 -0
- package/dist/esm/generated/codama/instructions/invalidateRental.js.map +1 -0
- package/dist/esm/generated/codama/instructions/payRental.js +67 -27
- package/dist/esm/generated/codama/instructions/payRental.js.map +1 -1
- package/dist/esm/generated/codama/instructions/releaseRental.js +11 -52
- package/dist/esm/generated/codama/instructions/releaseRental.js.map +1 -1
- package/dist/esm/generated/codama/instructions/reserveRental.js +44 -25
- package/dist/esm/generated/codama/instructions/reserveRental.js.map +1 -1
- package/dist/esm/generated/codama/instructions/scheduleRental.js +255 -0
- package/dist/esm/generated/codama/instructions/scheduleRental.js.map +1 -0
- package/dist/esm/generated/codama/instructions/setDelegate.js +70 -0
- package/dist/esm/generated/codama/instructions/setDelegate.js.map +1 -0
- package/dist/esm/generated/codama/instructions/updateBorrower.js +12 -12
- package/dist/esm/generated/codama/instructions/updateBorrower.js.map +1 -1
- package/dist/esm/generated/codama/instructions/updateConfig.js +47 -49
- package/dist/esm/generated/codama/instructions/updateConfig.js.map +1 -1
- package/dist/esm/generated/codama/instructions/updateContract.js +27 -25
- package/dist/esm/generated/codama/instructions/updateContract.js.map +1 -1
- package/dist/esm/generated/codama/instructions/updateOwner.js +70 -0
- package/dist/esm/generated/codama/instructions/updateOwner.js.map +1 -0
- package/dist/esm/generated/codama/programs/index.js +1 -1
- package/dist/esm/generated/codama/programs/srsly.js +49 -37
- package/dist/esm/generated/codama/programs/srsly.js.map +1 -1
- package/dist/esm/generated/codama/shared/index.js +9 -9
- package/dist/esm/generated/codama/types/atlasClaimed.js +28 -0
- package/dist/esm/generated/codama/types/atlasClaimed.js.map +1 -0
- package/dist/esm/generated/codama/types/borrowerInitialized.js +24 -0
- package/dist/esm/generated/codama/types/borrowerInitialized.js.map +1 -0
- package/dist/esm/generated/codama/types/cargoStats.js +38 -0
- package/dist/esm/generated/codama/types/cargoStats.js.map +1 -0
- package/dist/esm/generated/codama/types/contractClosed.js +26 -0
- package/dist/esm/generated/codama/types/contractClosed.js.map +1 -0
- package/dist/esm/generated/codama/types/contractCreated.js +28 -0
- package/dist/esm/generated/codama/types/contractCreated.js.map +1 -0
- package/dist/esm/generated/codama/types/contractDelegateSet.js +26 -0
- package/dist/esm/generated/codama/types/contractDelegateSet.js.map +1 -0
- package/dist/esm/generated/codama/types/contractPendingClose.js +26 -0
- package/dist/esm/generated/codama/types/contractPendingClose.js.map +1 -0
- package/dist/esm/generated/codama/types/contractUpdated.js +29 -0
- package/dist/esm/generated/codama/types/contractUpdated.js.map +1 -0
- package/dist/esm/generated/codama/types/discountAuthorization.js +28 -0
- package/dist/esm/generated/codama/types/discountAuthorization.js.map +1 -0
- package/dist/esm/generated/codama/types/fieldUpdate.js +24 -0
- package/dist/esm/generated/codama/types/fieldUpdate.js.map +1 -0
- package/dist/esm/generated/codama/types/index.js +29 -7
- package/dist/esm/generated/codama/types/index.js.map +1 -1
- package/dist/esm/generated/codama/types/miscStats.js +42 -0
- package/dist/esm/generated/codama/types/miscStats.js.map +1 -0
- package/dist/esm/generated/codama/types/movementStats.js +34 -0
- package/dist/esm/generated/codama/types/movementStats.js.map +1 -0
- package/dist/esm/generated/codama/types/optionalNonSystemPubkey.js +18 -0
- package/dist/esm/generated/codama/types/optionalNonSystemPubkey.js.map +1 -0
- package/dist/esm/generated/codama/types/paymentFrequency.js +1 -1
- package/dist/esm/generated/codama/types/rentalAccepted.js +38 -0
- package/dist/esm/generated/codama/types/rentalAccepted.js.map +1 -0
- package/dist/esm/generated/codama/types/rentalActivated.js +26 -0
- package/dist/esm/generated/codama/types/rentalActivated.js.map +1 -0
- package/dist/esm/generated/codama/types/rentalCancelled.js +30 -0
- package/dist/esm/generated/codama/types/rentalCancelled.js.map +1 -0
- package/dist/esm/generated/codama/types/rentalClaimed.js +36 -0
- package/dist/esm/generated/codama/types/rentalClaimed.js.map +1 -0
- package/dist/esm/generated/codama/types/rentalClosed.js +28 -0
- package/dist/esm/generated/codama/types/rentalClosed.js.map +1 -0
- package/dist/esm/generated/codama/types/rentalPaymentProcessed.js +28 -0
- package/dist/esm/generated/codama/types/rentalPaymentProcessed.js.map +1 -0
- package/dist/esm/generated/codama/types/rentalScheduled.js +30 -0
- package/dist/esm/generated/codama/types/rentalScheduled.js.map +1 -0
- package/dist/esm/generated/codama/types/rentalStatus.js +25 -0
- package/dist/esm/generated/codama/types/rentalStatus.js.map +1 -0
- package/dist/esm/generated/codama/types/reservationCreated.js +30 -0
- package/dist/esm/generated/codama/types/reservationCreated.js.map +1 -0
- package/dist/esm/generated/codama/types/reservationKnockoff.js +30 -0
- package/dist/esm/generated/codama/types/reservationKnockoff.js.map +1 -0
- package/dist/esm/generated/codama/types/schedule.js +15 -15
- package/dist/esm/generated/codama/types/shipCounts.js +40 -0
- package/dist/esm/generated/codama/types/shipCounts.js.map +1 -0
- package/dist/esm/generated/codama/types/shipStats.js +27 -0
- package/dist/esm/generated/codama/types/shipStats.js.map +1 -0
- package/dist/esm/generated/codama/types/signal.js +14 -14
- package/dist/esm/generated/codama/types/trigger.js +37 -37
- package/dist/esm/index.js +38 -13
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/instructions/acceptRental.js +84 -26
- package/dist/esm/instructions/acceptRental.js.map +1 -1
- package/dist/esm/instructions/approveAffiliate.js +7 -0
- package/dist/esm/instructions/approveAffiliate.js.map +1 -0
- package/dist/esm/instructions/cancelRental.js +12 -5
- package/dist/esm/instructions/cancelRental.js.map +1 -1
- package/dist/esm/instructions/claimBorrower.js +8 -4
- package/dist/esm/instructions/claimBorrower.js.map +1 -1
- package/dist/esm/instructions/claimRental.js +198 -0
- package/dist/esm/instructions/claimRental.js.map +1 -0
- package/dist/esm/instructions/closeContract.js +4 -3
- package/dist/esm/instructions/closeContract.js.map +1 -1
- package/dist/esm/instructions/closeRental.js +43 -13
- package/dist/esm/instructions/closeRental.js.map +1 -1
- package/dist/esm/instructions/createAffiliate.js +70 -0
- package/dist/esm/instructions/createAffiliate.js.map +1 -0
- package/dist/esm/instructions/createConfig.js +12 -0
- package/dist/esm/instructions/createConfig.js.map +1 -1
- package/dist/esm/instructions/createContract.js +12 -5
- package/dist/esm/instructions/createContract.js.map +1 -1
- package/dist/esm/instructions/deleteConfig.js +17 -6
- package/dist/esm/instructions/deleteConfig.js.map +1 -1
- package/dist/esm/instructions/deleteContract.js +76 -0
- package/dist/esm/instructions/deleteContract.js.map +1 -0
- package/dist/esm/instructions/index.js +29 -0
- package/dist/esm/instructions/index.js.map +1 -0
- package/dist/esm/instructions/invalidateRental.js +98 -0
- package/dist/esm/instructions/invalidateRental.js.map +1 -0
- package/dist/esm/instructions/ownerClaim.js +107 -0
- package/dist/esm/instructions/ownerClaim.js.map +1 -0
- package/dist/esm/instructions/ownerUpdate.js +65 -0
- package/dist/esm/instructions/ownerUpdate.js.map +1 -0
- package/dist/esm/instructions/releaseRental.js +20 -53
- package/dist/esm/instructions/releaseRental.js.map +1 -1
- package/dist/esm/instructions/removeAffiliate.js +7 -0
- package/dist/esm/instructions/removeAffiliate.js.map +1 -0
- package/dist/esm/instructions/reserveRental.js +10 -8
- package/dist/esm/instructions/reserveRental.js.map +1 -1
- package/dist/esm/instructions/setDelegate.js +69 -0
- package/dist/esm/instructions/setDelegate.js.map +1 -0
- package/dist/esm/instructions/updateAffiliate.js +54 -0
- package/dist/esm/instructions/updateAffiliate.js.map +1 -0
- package/dist/esm/instructions/updateBorrower.js +4 -2
- package/dist/esm/instructions/updateBorrower.js.map +1 -1
- package/dist/esm/instructions/updateConfig.js +0 -1
- package/dist/esm/instructions/updateConfig.js.map +1 -1
- package/dist/esm/instructions/updateContract.js +12 -5
- package/dist/esm/instructions/updateContract.js.map +1 -1
- package/dist/esm/kit/index.js +18 -0
- package/dist/esm/kit/index.js.map +1 -0
- package/dist/esm/legacy/index.js +86 -0
- package/dist/esm/legacy/index.js.map +1 -0
- package/dist/esm/package.json +9 -5
- package/dist/esm/params/amount.js +4 -4
- package/dist/esm/pda/constants.js +1 -0
- package/dist/esm/pda/constants.js.map +1 -1
- package/dist/esm/pda/index.js +5 -3
- package/dist/esm/pda/index.js.map +1 -1
- package/dist/esm/pda/lookupTable.js +56 -0
- package/dist/esm/pda/lookupTable.js.map +1 -0
- package/dist/esm/pda/slyvault.js +2 -47
- package/dist/esm/pda/slyvault.js.map +1 -1
- package/dist/esm/pda/srsly.js +32 -7
- package/dist/esm/pda/srsly.js.map +1 -1
- package/dist/esm/pda/thread.js +2 -2
- package/dist/esm/utils/addresses.js +7 -1
- package/dist/esm/utils/addresses.js.map +1 -1
- package/dist/esm/utils/config.js +19 -2
- package/dist/esm/utils/config.js.map +1 -1
- package/dist/esm/utils/discountAuth.js +151 -0
- package/dist/esm/utils/discountAuth.js.map +1 -0
- package/dist/esm/utils/index.js +11 -1
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/instructionResult.js +72 -0
- package/dist/esm/utils/instructionResult.js.map +1 -0
- package/dist/esm/utils/instructions.js +12 -17
- package/dist/esm/utils/instructions.js.map +1 -1
- package/dist/esm/utils/lookupTable.js +139 -0
- package/dist/esm/utils/lookupTable.js.map +1 -0
- package/dist/esm/utils/rental.js +129 -0
- package/dist/esm/utils/rental.js.map +1 -0
- package/dist/esm/utils/rpc.js +52 -0
- package/dist/esm/utils/rpc.js.map +1 -0
- package/dist/esm/utils/signer.js +8 -8
- package/dist/esm/utils/signer.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/version.js.map +1 -1
- package/dist/idl/srsly.json +7364 -0
- package/dist/types/accounts/borrower.d.ts +33 -9
- package/dist/types/accounts/borrower.d.ts.map +1 -1
- package/dist/types/accounts/config.d.ts +19 -0
- package/dist/types/accounts/config.d.ts.map +1 -1
- package/dist/types/accounts/contract.d.ts +19 -0
- package/dist/types/accounts/contract.d.ts.map +1 -1
- package/dist/types/accounts/fleet.d.ts.map +1 -1
- package/dist/types/accounts/member.d.ts +9 -0
- package/dist/types/accounts/member.d.ts.map +1 -0
- package/dist/types/accounts/owner.d.ts +52 -0
- package/dist/types/accounts/owner.d.ts.map +1 -0
- package/dist/types/accounts/rental.d.ts +19 -0
- package/dist/types/accounts/rental.d.ts.map +1 -1
- package/dist/types/demos.d.ts +47 -2
- package/dist/types/demos.d.ts.map +1 -1
- package/dist/types/generated/codama/accounts/borrowerState.d.ts +12 -20
- package/dist/types/generated/codama/accounts/borrowerState.d.ts.map +1 -1
- package/dist/types/generated/codama/accounts/configState.d.ts +23 -6
- package/dist/types/generated/codama/accounts/configState.d.ts.map +1 -1
- package/dist/types/generated/codama/accounts/contractState.d.ts +64 -19
- package/dist/types/generated/codama/accounts/contractState.d.ts.map +1 -1
- package/dist/types/generated/codama/accounts/fleet.d.ts +64 -0
- package/dist/types/generated/codama/accounts/fleet.d.ts.map +1 -0
- package/dist/types/generated/codama/accounts/index.d.ts +7 -7
- package/dist/types/generated/codama/accounts/index.d.ts.map +1 -1
- package/dist/types/generated/codama/accounts/ownerState.d.ts +65 -0
- package/dist/types/generated/codama/accounts/ownerState.d.ts.map +1 -0
- package/dist/types/generated/codama/accounts/rentalState.d.ts +32 -5
- package/dist/types/generated/codama/accounts/rentalState.d.ts.map +1 -1
- package/dist/types/generated/codama/accounts/thread.d.ts +5 -2
- package/dist/types/generated/codama/accounts/thread.d.ts.map +1 -1
- package/dist/types/generated/codama/errors/index.d.ts +1 -1
- package/dist/types/generated/codama/errors/srsly.d.ts +43 -15
- package/dist/types/generated/codama/errors/srsly.d.ts.map +1 -1
- package/dist/types/generated/codama/index.d.ts +5 -5
- package/dist/types/generated/codama/instructions/acceptRental.d.ts +28 -27
- package/dist/types/generated/codama/instructions/acceptRental.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/activateRental.d.ts +90 -0
- package/dist/types/generated/codama/instructions/activateRental.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/cancelRental.d.ts +25 -13
- package/dist/types/generated/codama/instructions/cancelRental.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/claimBorrower.d.ts +33 -21
- package/dist/types/generated/codama/instructions/claimBorrower.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/claimOwner.d.ts +91 -0
- package/dist/types/generated/codama/instructions/claimOwner.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/claimRental.d.ts +133 -0
- package/dist/types/generated/codama/instructions/claimRental.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/closeContract.d.ts +20 -29
- package/dist/types/generated/codama/instructions/closeContract.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/closeRental.d.ts +45 -24
- package/dist/types/generated/codama/instructions/closeRental.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/createConfig.d.ts +36 -15
- package/dist/types/generated/codama/instructions/createConfig.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/createContract.d.ts +47 -36
- package/dist/types/generated/codama/instructions/createContract.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/deleteConfig.d.ts +3 -3
- package/dist/types/generated/codama/instructions/deleteConfig.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/deleteContract.d.ts +2 -2
- package/dist/types/generated/codama/instructions/deleteRental.d.ts +2 -2
- package/dist/types/generated/codama/instructions/index.d.ts +23 -20
- package/dist/types/generated/codama/instructions/index.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/invalidateRental.d.ts +89 -0
- package/dist/types/generated/codama/instructions/invalidateRental.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/payRental.d.ts +50 -28
- package/dist/types/generated/codama/instructions/payRental.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/releaseRental.d.ts +42 -49
- package/dist/types/generated/codama/instructions/releaseRental.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/reserveRental.d.ts +25 -21
- package/dist/types/generated/codama/instructions/reserveRental.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/scheduleRental.d.ts +114 -0
- package/dist/types/generated/codama/instructions/scheduleRental.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/setDelegate.d.ts +44 -0
- package/dist/types/generated/codama/instructions/setDelegate.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/updateBorrower.d.ts +5 -5
- package/dist/types/generated/codama/instructions/updateBorrower.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/updateConfig.d.ts +41 -47
- package/dist/types/generated/codama/instructions/updateConfig.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/updateContract.d.ts +37 -31
- package/dist/types/generated/codama/instructions/updateContract.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/updateOwner.d.ts +44 -0
- package/dist/types/generated/codama/instructions/updateOwner.d.ts.map +1 -0
- package/dist/types/generated/codama/programs/index.d.ts +1 -1
- package/dist/types/generated/codama/programs/srsly.d.ts +39 -30
- package/dist/types/generated/codama/programs/srsly.d.ts.map +1 -1
- package/dist/types/generated/codama/shared/index.d.ts +2 -2
- package/dist/types/generated/codama/types/atlasClaimed.d.ts +24 -0
- package/dist/types/generated/codama/types/atlasClaimed.d.ts.map +1 -0
- package/dist/types/generated/codama/types/borrowerInitialized.d.ts +17 -0
- package/dist/types/generated/codama/types/borrowerInitialized.d.ts.map +1 -0
- package/dist/types/generated/codama/types/cargoStats.d.ts +25 -0
- package/dist/types/generated/codama/types/cargoStats.d.ts.map +1 -0
- package/dist/types/generated/codama/types/contractClosed.d.ts +18 -0
- package/dist/types/generated/codama/types/contractClosed.d.ts.map +1 -0
- package/dist/types/generated/codama/types/contractCreated.d.ts +24 -0
- package/dist/types/generated/codama/types/contractCreated.d.ts.map +1 -0
- package/dist/types/generated/codama/types/contractDelegateSet.d.ts +22 -0
- package/dist/types/generated/codama/types/contractDelegateSet.d.ts.map +1 -0
- package/dist/types/generated/codama/types/contractPendingClose.d.ts +18 -0
- package/dist/types/generated/codama/types/contractPendingClose.d.ts.map +1 -0
- package/dist/types/generated/codama/types/contractUpdated.d.ts +27 -0
- package/dist/types/generated/codama/types/contractUpdated.d.ts.map +1 -0
- package/dist/types/generated/codama/types/discountAuthorization.d.ts +36 -0
- package/dist/types/generated/codama/types/discountAuthorization.d.ts.map +1 -0
- package/dist/types/generated/codama/types/fieldUpdate.d.ts +20 -0
- package/dist/types/generated/codama/types/fieldUpdate.d.ts.map +1 -0
- package/dist/types/generated/codama/types/index.d.ts +29 -7
- package/dist/types/generated/codama/types/index.d.ts.map +1 -1
- package/dist/types/generated/codama/types/miscStats.d.ts +27 -0
- package/dist/types/generated/codama/types/miscStats.d.ts.map +1 -0
- package/dist/types/generated/codama/types/movementStats.d.ts +23 -0
- package/dist/types/generated/codama/types/movementStats.d.ts.map +1 -0
- package/dist/types/generated/codama/types/optionalNonSystemPubkey.d.ts +17 -0
- package/dist/types/generated/codama/types/optionalNonSystemPubkey.d.ts.map +1 -0
- package/dist/types/generated/codama/types/paymentFrequency.d.ts +1 -1
- package/dist/types/generated/codama/types/rentalAccepted.d.ts +34 -0
- package/dist/types/generated/codama/types/rentalAccepted.d.ts.map +1 -0
- package/dist/types/generated/codama/types/rentalActivated.d.ts +18 -0
- package/dist/types/generated/codama/types/rentalActivated.d.ts.map +1 -0
- package/dist/types/generated/codama/types/rentalCancelled.d.ts +26 -0
- package/dist/types/generated/codama/types/rentalCancelled.d.ts.map +1 -0
- package/dist/types/generated/codama/types/rentalClaimed.d.ts +32 -0
- package/dist/types/generated/codama/types/rentalClaimed.d.ts.map +1 -0
- package/dist/types/generated/codama/types/rentalClosed.d.ts +19 -0
- package/dist/types/generated/codama/types/rentalClosed.d.ts.map +1 -0
- package/dist/types/generated/codama/types/rentalPaymentProcessed.d.ts +24 -0
- package/dist/types/generated/codama/types/rentalPaymentProcessed.d.ts.map +1 -0
- package/dist/types/generated/codama/types/rentalScheduled.d.ts +20 -0
- package/dist/types/generated/codama/types/rentalScheduled.d.ts.map +1 -0
- package/dist/types/generated/codama/types/rentalStatus.d.ts +19 -0
- package/dist/types/generated/codama/types/rentalStatus.d.ts.map +1 -0
- package/dist/types/generated/codama/types/reservationCreated.d.ts +26 -0
- package/dist/types/generated/codama/types/reservationCreated.d.ts.map +1 -0
- package/dist/types/generated/codama/types/reservationKnockoff.d.ts +26 -0
- package/dist/types/generated/codama/types/reservationKnockoff.d.ts.map +1 -0
- package/dist/types/generated/codama/types/schedule.d.ts +11 -11
- package/dist/types/generated/codama/types/shipCounts.d.ts +26 -0
- package/dist/types/generated/codama/types/shipCounts.d.ts.map +1 -0
- package/dist/types/generated/codama/types/shipStats.d.ts +24 -0
- package/dist/types/generated/codama/types/shipStats.d.ts.map +1 -0
- package/dist/types/generated/codama/types/signal.d.ts +21 -21
- package/dist/types/generated/codama/types/trigger.d.ts +23 -23
- package/dist/types/index.d.ts +20 -11
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/instructions/acceptRental.d.ts +31 -2
- package/dist/types/instructions/acceptRental.d.ts.map +1 -1
- package/dist/types/instructions/approveAffiliate.d.ts +7 -0
- package/dist/types/instructions/approveAffiliate.d.ts.map +1 -0
- package/dist/types/instructions/cancelRental.d.ts +5 -0
- package/dist/types/instructions/cancelRental.d.ts.map +1 -1
- package/dist/types/instructions/claimBorrower.d.ts +6 -0
- package/dist/types/instructions/claimBorrower.d.ts.map +1 -1
- package/dist/types/instructions/claimRental.d.ts +114 -0
- package/dist/types/instructions/claimRental.d.ts.map +1 -0
- package/dist/types/instructions/closeContract.d.ts.map +1 -1
- package/dist/types/instructions/closeRental.d.ts +12 -5
- package/dist/types/instructions/closeRental.d.ts.map +1 -1
- package/dist/types/instructions/createAffiliate.d.ts +66 -0
- package/dist/types/instructions/createAffiliate.d.ts.map +1 -0
- package/dist/types/instructions/createConfig.d.ts +10 -0
- package/dist/types/instructions/createConfig.d.ts.map +1 -1
- package/dist/types/instructions/createContract.d.ts +17 -9
- package/dist/types/instructions/createContract.d.ts.map +1 -1
- package/dist/types/instructions/deleteConfig.d.ts +4 -2
- package/dist/types/instructions/deleteConfig.d.ts.map +1 -1
- package/dist/types/instructions/deleteContract.d.ts +60 -0
- package/dist/types/instructions/deleteContract.d.ts.map +1 -0
- package/dist/types/instructions/index.d.ts +29 -0
- package/dist/types/instructions/index.d.ts.map +1 -0
- package/dist/types/instructions/invalidateRental.d.ts +86 -0
- package/dist/types/instructions/invalidateRental.d.ts.map +1 -0
- package/dist/types/instructions/ownerClaim.d.ts +72 -0
- package/dist/types/instructions/ownerClaim.d.ts.map +1 -0
- package/dist/types/instructions/ownerUpdate.d.ts +57 -0
- package/dist/types/instructions/ownerUpdate.d.ts.map +1 -0
- package/dist/types/instructions/releaseRental.d.ts +19 -39
- package/dist/types/instructions/releaseRental.d.ts.map +1 -1
- package/dist/types/instructions/removeAffiliate.d.ts +7 -0
- package/dist/types/instructions/removeAffiliate.d.ts.map +1 -0
- package/dist/types/instructions/reserveRental.d.ts.map +1 -1
- package/dist/types/instructions/setDelegate.d.ts +63 -0
- package/dist/types/instructions/setDelegate.d.ts.map +1 -0
- package/dist/types/instructions/updateAffiliate.d.ts +64 -0
- package/dist/types/instructions/updateAffiliate.d.ts.map +1 -0
- package/dist/types/instructions/updateBorrower.d.ts.map +1 -1
- package/dist/types/instructions/updateConfig.d.ts.map +1 -1
- package/dist/types/instructions/updateContract.d.ts +13 -4
- package/dist/types/instructions/updateContract.d.ts.map +1 -1
- package/dist/types/kit/index.d.ts +18 -0
- package/dist/types/kit/index.d.ts.map +1 -0
- package/dist/types/legacy/index.d.ts +90 -0
- package/dist/types/legacy/index.d.ts.map +1 -0
- package/dist/types/params/amount.d.ts +3 -3
- package/dist/types/pda/constants.d.ts +1 -0
- package/dist/types/pda/constants.d.ts.map +1 -1
- package/dist/types/pda/index.d.ts +4 -3
- package/dist/types/pda/index.d.ts.map +1 -1
- package/dist/types/pda/lookupTable.d.ts +29 -0
- package/dist/types/pda/lookupTable.d.ts.map +1 -0
- package/dist/types/pda/slyvault.d.ts +2 -23
- package/dist/types/pda/slyvault.d.ts.map +1 -1
- package/dist/types/pda/srsly.d.ts +17 -3
- package/dist/types/pda/srsly.d.ts.map +1 -1
- package/dist/types/pda/thread.d.ts +2 -2
- package/dist/types/utils/addresses.d.ts +7 -1
- package/dist/types/utils/addresses.d.ts.map +1 -1
- package/dist/types/utils/config.d.ts +48 -0
- package/dist/types/utils/config.d.ts.map +1 -1
- package/dist/types/utils/discountAuth.d.ts +90 -0
- package/dist/types/utils/discountAuth.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +6 -1
- package/dist/types/utils/index.d.ts.map +1 -1
- package/dist/types/utils/instructionResult.d.ts +57 -0
- package/dist/types/utils/instructionResult.d.ts.map +1 -0
- package/dist/types/utils/instructions.d.ts +16 -18
- package/dist/types/utils/instructions.d.ts.map +1 -1
- package/dist/types/utils/lookupTable.d.ts +48 -0
- package/dist/types/utils/lookupTable.d.ts.map +1 -0
- package/dist/types/utils/rental.d.ts +80 -0
- package/dist/types/utils/rental.d.ts.map +1 -0
- package/dist/types/utils/rpc.d.ts +37 -0
- package/dist/types/utils/rpc.d.ts.map +1 -0
- package/dist/types/utils/signer.d.ts +2 -2
- package/dist/types/utils/signer.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/version.d.ts.map +1 -1
- package/package.json +40 -21
- package/dist/cjs/generated/codama/accounts/memberState.js +0 -78
- package/dist/cjs/generated/codama/accounts/memberState.js.map +0 -1
- package/dist/cjs/generated/codama/accounts/vaultState.js +0 -82
- package/dist/cjs/generated/codama/accounts/vaultState.js.map +0 -1
- package/dist/cjs/generated/codama/instructions/captureRental.js +0 -129
- package/dist/cjs/generated/codama/instructions/captureRental.js.map +0 -1
- package/dist/cjs/generated/codama/instructions/claimBorrowerPayments.js +0 -225
- package/dist/cjs/generated/codama/instructions/claimBorrowerPayments.js.map +0 -1
- package/dist/cjs/generated/codama/instructions/claimContractPayments.js.map +0 -1
- package/dist/cjs/generated/codama/instructions/closeBorrower.js +0 -84
- package/dist/cjs/generated/codama/instructions/closeBorrower.js.map +0 -1
- package/dist/cjs/generated/codama/instructions/deleteBorrower.js +0 -126
- package/dist/cjs/generated/codama/instructions/deleteBorrower.js.map +0 -1
- package/dist/cjs/generated/codama/instructions/discountBorrower.js +0 -118
- package/dist/cjs/generated/codama/instructions/discountBorrower.js.map +0 -1
- package/dist/cjs/generated/codama/types/capturedFlagData.js +0 -31
- package/dist/cjs/generated/codama/types/capturedFlagData.js.map +0 -1
- package/dist/cjs/generated/codama/types/memberConfig.js +0 -33
- package/dist/cjs/generated/codama/types/memberConfig.js.map +0 -1
- package/dist/cjs/generated/codama/types/memberType.js +0 -55
- package/dist/cjs/generated/codama/types/memberType.js.map +0 -1
- package/dist/cjs/instructions/captureRental.js +0 -85
- package/dist/cjs/instructions/captureRental.js.map +0 -1
- package/dist/cjs/instructions/claimBorrowerPayments.js +0 -69
- package/dist/cjs/instructions/claimBorrowerPayments.js.map +0 -1
- package/dist/cjs/instructions/claimContractPayments.js +0 -79
- package/dist/cjs/instructions/claimContractPayments.js.map +0 -1
- package/dist/cjs/instructions/closeBorrower.js +0 -60
- package/dist/cjs/instructions/closeBorrower.js.map +0 -1
- package/dist/cjs/instructions/deleteBorrower.js +0 -60
- package/dist/cjs/instructions/deleteBorrower.js.map +0 -1
- package/dist/cjs/instructions/discountBorrower.js +0 -75
- package/dist/cjs/instructions/discountBorrower.js.map +0 -1
- package/dist/esm/generated/codama/accounts/memberState.js +0 -66
- package/dist/esm/generated/codama/accounts/memberState.js.map +0 -1
- package/dist/esm/generated/codama/accounts/vaultState.js +0 -70
- package/dist/esm/generated/codama/accounts/vaultState.js.map +0 -1
- package/dist/esm/generated/codama/instructions/captureRental.js +0 -119
- package/dist/esm/generated/codama/instructions/captureRental.js.map +0 -1
- package/dist/esm/generated/codama/instructions/claimContractPayments.js.map +0 -1
- package/dist/esm/generated/codama/instructions/closeBorrower.js +0 -75
- package/dist/esm/generated/codama/instructions/closeBorrower.js.map +0 -1
- package/dist/esm/generated/codama/instructions/deleteBorrower.js +0 -116
- package/dist/esm/generated/codama/instructions/deleteBorrower.js.map +0 -1
- package/dist/esm/generated/codama/instructions/discountBorrower.js +0 -108
- package/dist/esm/generated/codama/instructions/discountBorrower.js.map +0 -1
- package/dist/esm/generated/codama/types/capturedFlagData.js +0 -26
- package/dist/esm/generated/codama/types/capturedFlagData.js.map +0 -1
- package/dist/esm/generated/codama/types/memberConfig.js +0 -28
- package/dist/esm/generated/codama/types/memberConfig.js.map +0 -1
- package/dist/esm/generated/codama/types/memberType.js +0 -48
- package/dist/esm/generated/codama/types/memberType.js.map +0 -1
- package/dist/esm/instructions/captureRental.js +0 -82
- package/dist/esm/instructions/captureRental.js.map +0 -1
- package/dist/esm/instructions/claimContractPayments.js +0 -76
- package/dist/esm/instructions/claimContractPayments.js.map +0 -1
- package/dist/esm/instructions/closeBorrower.js +0 -57
- package/dist/esm/instructions/closeBorrower.js.map +0 -1
- package/dist/esm/instructions/deleteBorrower.js +0 -57
- package/dist/esm/instructions/deleteBorrower.js.map +0 -1
- package/dist/esm/instructions/discountBorrower.js +0 -72
- package/dist/esm/instructions/discountBorrower.js.map +0 -1
- package/dist/types/generated/codama/accounts/memberState.d.ts +0 -58
- package/dist/types/generated/codama/accounts/memberState.d.ts.map +0 -1
- package/dist/types/generated/codama/accounts/vaultState.d.ts +0 -66
- package/dist/types/generated/codama/accounts/vaultState.d.ts.map +0 -1
- package/dist/types/generated/codama/instructions/captureRental.d.ts +0 -59
- package/dist/types/generated/codama/instructions/captureRental.d.ts.map +0 -1
- package/dist/types/generated/codama/instructions/claimBorrowerPayments.d.ts +0 -75
- package/dist/types/generated/codama/instructions/claimBorrowerPayments.d.ts.map +0 -1
- package/dist/types/generated/codama/instructions/claimContractPayments.d.ts +0 -98
- package/dist/types/generated/codama/instructions/claimContractPayments.d.ts.map +0 -1
- package/dist/types/generated/codama/instructions/closeBorrower.d.ts +0 -43
- package/dist/types/generated/codama/instructions/closeBorrower.d.ts.map +0 -1
- package/dist/types/generated/codama/instructions/deleteBorrower.d.ts +0 -55
- package/dist/types/generated/codama/instructions/deleteBorrower.d.ts.map +0 -1
- package/dist/types/generated/codama/instructions/discountBorrower.d.ts +0 -56
- package/dist/types/generated/codama/instructions/discountBorrower.d.ts.map +0 -1
- package/dist/types/generated/codama/types/capturedFlagData.d.ts +0 -35
- package/dist/types/generated/codama/types/capturedFlagData.d.ts.map +0 -1
- package/dist/types/generated/codama/types/memberConfig.d.ts +0 -33
- package/dist/types/generated/codama/types/memberConfig.d.ts.map +0 -1
- package/dist/types/generated/codama/types/memberType.d.ts +0 -48
- package/dist/types/generated/codama/types/memberType.d.ts.map +0 -1
- package/dist/types/instructions/captureRental.d.ts +0 -58
- package/dist/types/instructions/captureRental.d.ts.map +0 -1
- package/dist/types/instructions/claimBorrowerPayments.d.ts +0 -59
- package/dist/types/instructions/claimBorrowerPayments.d.ts.map +0 -1
- package/dist/types/instructions/claimContractPayments.d.ts +0 -78
- package/dist/types/instructions/claimContractPayments.d.ts.map +0 -1
- package/dist/types/instructions/closeBorrower.d.ts +0 -45
- package/dist/types/instructions/closeBorrower.d.ts.map +0 -1
- package/dist/types/instructions/deleteBorrower.d.ts +0 -53
- package/dist/types/instructions/deleteBorrower.d.ts.map +0 -1
- package/dist/types/instructions/discountBorrower.d.ts +0 -64
- package/dist/types/instructions/discountBorrower.d.ts.map +0 -1
|
@@ -6,14 +6,18 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { address } from '@solana/kit';
|
|
8
8
|
import { getCloseRentalInstructionAsync } from '../generated/codama/instructions';
|
|
9
|
+
import { fetchRentalState } from '../generated/codama/accounts';
|
|
9
10
|
import { mergeConfig, getAddresses } from '../utils/config';
|
|
10
11
|
import { toTransactionSigner } from '../utils/signer';
|
|
11
12
|
import { fetchContract } from '../accounts/contract';
|
|
13
|
+
import { fetchConfig } from '../accounts/config';
|
|
12
14
|
import { fetchFleet } from '../accounts/fleet';
|
|
13
15
|
import { deriveGameAccounts } from '../pda/sage';
|
|
14
|
-
import { deriveRental, deriveRentalAuthority, deriveBorrowerState } from '../pda/srsly';
|
|
16
|
+
import { deriveRental, deriveRentalAuthority, deriveBorrowerState, deriveOwnerState } from '../pda/srsly';
|
|
15
17
|
import { deriveRentalThread } from '../pda/thread';
|
|
16
18
|
import { prepareInstructions } from '../utils/instructions';
|
|
19
|
+
import { createRpc } from '../utils/rpc';
|
|
20
|
+
import { requireExistingRentalSlot } from '../utils/rental';
|
|
17
21
|
/**
|
|
18
22
|
* Close a rental
|
|
19
23
|
*
|
|
@@ -27,7 +31,7 @@ import { prepareInstructions } from '../utils/instructions';
|
|
|
27
31
|
* - Derives rental thread for automated payments
|
|
28
32
|
* - Codama auto-derives contractTokenAccount as ATA
|
|
29
33
|
*
|
|
30
|
-
* @param params - Rental closure parameters (payer,
|
|
34
|
+
* @param params - Rental closure parameters (payer, rentalSlot, contract)
|
|
31
35
|
* @param config - Optional SDK configuration overrides
|
|
32
36
|
* @returns Kit instruction (or web3.js if PublicKey in config)
|
|
33
37
|
*
|
|
@@ -35,7 +39,7 @@ import { prepareInstructions } from '../utils/instructions';
|
|
|
35
39
|
* ```typescript
|
|
36
40
|
* const ix = await closeRental({
|
|
37
41
|
* payer: ownerWallet,
|
|
38
|
-
*
|
|
42
|
+
* rentalSlot: 0,
|
|
39
43
|
* contract: contractAddress
|
|
40
44
|
* });
|
|
41
45
|
* ```
|
|
@@ -47,9 +51,6 @@ export async function closeRental(params, config) {
|
|
|
47
51
|
if (!params.payer) {
|
|
48
52
|
throw new Error('payer is required');
|
|
49
53
|
}
|
|
50
|
-
if (!params.borrower) {
|
|
51
|
-
throw new Error('borrower is required');
|
|
52
|
-
}
|
|
53
54
|
if (!params.contract) {
|
|
54
55
|
throw new Error('contract is required');
|
|
55
56
|
}
|
|
@@ -60,6 +61,9 @@ export async function closeRental(params, config) {
|
|
|
60
61
|
const gameId = contractAccount.data.gameId;
|
|
61
62
|
// Convert payer to transaction signer
|
|
62
63
|
const payerSigner = toTransactionSigner(params.payer);
|
|
64
|
+
// Auto-detect rental slot if not provided
|
|
65
|
+
const rentalSlot = params.rentalSlot ?? requireExistingRentalSlot(contractAccount.data);
|
|
66
|
+
const otherSlot = rentalSlot === 0 ? 1 : 0;
|
|
63
67
|
// Fetch fleet data to get faction (for SAGE account derivation)
|
|
64
68
|
const fleetState = await fetchFleet(fleet, finalConfig.rpcUrl);
|
|
65
69
|
const faction = fleetState.faction;
|
|
@@ -67,32 +71,58 @@ export async function closeRental(params, config) {
|
|
|
67
71
|
// Derive SAGE game accounts (we need owner's profile for starbase player)
|
|
68
72
|
const gameAccounts = await deriveGameAccounts(ownerProfile, faction, gameId);
|
|
69
73
|
// Derive rental and rental authority PDAs
|
|
70
|
-
const rental = await deriveRental(params.contract,
|
|
74
|
+
const rental = await deriveRental(params.contract, rentalSlot);
|
|
71
75
|
const rentalAuthority = await deriveRentalAuthority();
|
|
76
|
+
// Get borrower - use provided value, or fetch from rental state, or fall back to payer
|
|
77
|
+
let borrower;
|
|
78
|
+
if (params.borrower) {
|
|
79
|
+
borrower = params.borrower;
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
// Try to fetch from rental state
|
|
83
|
+
try {
|
|
84
|
+
const rpc = createRpc(finalConfig.rpcUrl || 'https://api.devnet.solana.com');
|
|
85
|
+
const rentalState = await fetchRentalState(rpc, rental);
|
|
86
|
+
borrower = rentalState.data.borrower;
|
|
87
|
+
}
|
|
88
|
+
catch {
|
|
89
|
+
// Rental state doesn't exist, fall back to payer
|
|
90
|
+
borrower = payerSigner.address;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
72
93
|
// Derive borrower state PDA
|
|
73
|
-
const borrowerState = await deriveBorrowerState(
|
|
94
|
+
const borrowerState = await deriveBorrowerState(borrower);
|
|
74
95
|
// Derive rental thread for automated payments
|
|
75
96
|
const rentalThread = await deriveRentalThread(rental, rentalAuthority);
|
|
76
|
-
// Get
|
|
97
|
+
// Get atlasMint from on-chain config
|
|
98
|
+
const configAccount = await fetchConfig(finalConfig.rpcUrl);
|
|
99
|
+
const atlasMint = configAccount.data.atlasMint;
|
|
77
100
|
const addresses = getAddresses(config);
|
|
78
|
-
const atlasMint = address(addresses.atlasMint);
|
|
79
101
|
const sageProgram = address(addresses.sage);
|
|
80
102
|
const programAddress = address(addresses.srsly);
|
|
103
|
+
// Derive queuedThread from the other slot's rental
|
|
104
|
+
const otherSlotRental = await deriveRental(params.contract, otherSlot);
|
|
105
|
+
const queuedThread = await deriveRentalThread(otherSlotRental, rentalAuthority);
|
|
106
|
+
// Derive ownerState PDA from owner address
|
|
107
|
+
const ownerState = await deriveOwnerState(owner);
|
|
81
108
|
// Call Codama-generated instruction
|
|
82
|
-
// Note:
|
|
109
|
+
// Note: ownerTokenAccount is auto-derived by Codama as ATA for ownerState + mint
|
|
83
110
|
const kitInstruction = await getCloseRentalInstructionAsync({
|
|
84
111
|
payer: payerSigner,
|
|
85
112
|
mint: atlasMint,
|
|
86
|
-
borrower: address(
|
|
113
|
+
borrower: address(borrower),
|
|
87
114
|
borrowerState,
|
|
88
|
-
|
|
115
|
+
ownerState,
|
|
89
116
|
contract: address(params.contract),
|
|
117
|
+
rentalState: rental,
|
|
90
118
|
rentalThread,
|
|
91
119
|
fleet: address(fleet),
|
|
92
120
|
gameId: address(gameId),
|
|
93
121
|
starbase: gameAccounts.starbase,
|
|
94
122
|
starbasePlayer: gameAccounts.starbasePlayer,
|
|
123
|
+
queuedThread,
|
|
95
124
|
sageProgram,
|
|
125
|
+
rentalSlot,
|
|
96
126
|
}, { programAddress });
|
|
97
127
|
return prepareInstructions(kitInstruction, {
|
|
98
128
|
computeUnits: params.computeUnits,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"closeRental.js","sourceRoot":"","sources":["../../../src/instructions/closeRental.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"closeRental.js","sourceRoot":"","sources":["../../../src/instructions/closeRental.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @purpose Create a pending affiliate (Affiliate member) for SRSLY vault
|
|
3
|
+
*
|
|
4
|
+
* Wraps slyvault's initMember instruction with Affiliate type pre-configured.
|
|
5
|
+
* Auto-fetches vault and nonce from parent member state.
|
|
6
|
+
*/
|
|
7
|
+
import { address } from '@solana/kit';
|
|
8
|
+
import { initMember, fetchMember, } from '@wuwei-labs/slyvault';
|
|
9
|
+
import { mergeConfig } from '../utils/config';
|
|
10
|
+
/**
|
|
11
|
+
* Create a pending affiliate (Affiliate member)
|
|
12
|
+
*
|
|
13
|
+
* Creates a new Affiliate member state that references a parent Normal member.
|
|
14
|
+
* The affiliate must be approved by the parent member's authority using approveAffiliate.
|
|
15
|
+
*
|
|
16
|
+
* This function auto-fetches the vault address and parent member nonce from the
|
|
17
|
+
* parent member state, making it easier to use than the underlying initMember.
|
|
18
|
+
*
|
|
19
|
+
* @param params - Affiliate creation parameters
|
|
20
|
+
* @param config - Optional SDK configuration overrides
|
|
21
|
+
* @returns Prepared instruction(s)
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* ```typescript
|
|
25
|
+
* import { createAffiliate } from '@wuwei-labs/srsly';
|
|
26
|
+
*
|
|
27
|
+
* // Create affiliate linked to parent member
|
|
28
|
+
* const ix = await createAffiliate({
|
|
29
|
+
* affiliate: wallet,
|
|
30
|
+
* parentMemberState: "PARENT_MEMBER_STATE_PDA",
|
|
31
|
+
* discountAuthority: "OPTIONAL_DISCOUNT_SIGNER", // optional, defaults to main authority
|
|
32
|
+
* // vault and nonce are auto-fetched from parent state
|
|
33
|
+
* });
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
export async function createAffiliate(params, config) {
|
|
37
|
+
const finalConfig = mergeConfig(config);
|
|
38
|
+
if (!params.affiliate)
|
|
39
|
+
throw new Error('affiliate is required');
|
|
40
|
+
if (!params.parentMemberState)
|
|
41
|
+
throw new Error('parentMemberState is required');
|
|
42
|
+
// Fetch parent member state to get vault and nonce
|
|
43
|
+
const { data: parentState } = await fetchMember(address(params.parentMemberState), finalConfig.rpcUrl);
|
|
44
|
+
// Validate parent is Normal type with affiliateEnabled
|
|
45
|
+
if (parentState.memberType.__kind !== 'Normal') {
|
|
46
|
+
throw new Error('Parent member is not a Normal member type');
|
|
47
|
+
}
|
|
48
|
+
if (!parentState.memberType.affiliateEnabled) {
|
|
49
|
+
throw new Error('Parent member does not have affiliates enabled');
|
|
50
|
+
}
|
|
51
|
+
// Get vault and nonce from parent state
|
|
52
|
+
const vaultAddress = parentState.vault;
|
|
53
|
+
const parentNonce = parentState.nonce;
|
|
54
|
+
// Call slyvault initMember with Affiliate type pre-configured
|
|
55
|
+
return initMember({
|
|
56
|
+
member: params.affiliate,
|
|
57
|
+
vault: vaultAddress,
|
|
58
|
+
nonce: params.nonce,
|
|
59
|
+
memberType: {
|
|
60
|
+
__kind: 'Affiliate',
|
|
61
|
+
parentMemberNonce: parentNonce,
|
|
62
|
+
percentageBps: 0,
|
|
63
|
+
claimableBalance: 0n,
|
|
64
|
+
isActive: false,
|
|
65
|
+
},
|
|
66
|
+
discountAuthority: params.discountAuthority,
|
|
67
|
+
computeUnits: params.computeUnits,
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=createAffiliate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createAffiliate.js","sourceRoot":"","sources":["../../../src/instructions/createAffiliate.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EACL,UAAU,EACV,WAAW,GAEZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAkB,MAAM,iBAAiB,CAAC;AAoC9D;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAA6B,EAC7B,MAA2B;IAE3B,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,IAAI,CAAC,MAAM,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAChE,IAAI,CAAC,MAAM,CAAC,iBAAiB;QAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IAEhF,mDAAmD;IACnD,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,MAAM,WAAW,CAC7C,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,EACjC,WAAW,CAAC,MAAM,CACnB,CAAC;IAEF,uDAAuD;IACvD,IAAI,WAAW,CAAC,UAAU,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IAED,wCAAwC;IACxC,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC;IACvC,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC;IAEtC,8DAA8D;IAC9D,OAAO,UAAU,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC,SAAS;QACxB,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,UAAU,EAAE;YACV,MAAM,EAAE,WAAW;YACnB,iBAAiB,EAAE,WAAW;YAC9B,aAAa,EAAE,CAAC;YAChB,gBAAgB,EAAE,EAAE;YACpB,QAAQ,EAAE,KAAK;SAChB;QACD,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;QAC3C,YAAY,EAAE,MAAM,CAAC,YAAY;KAClC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -45,10 +45,18 @@ export async function createConfig(params, config) {
|
|
|
45
45
|
if (!params.vaultTokenAccount) {
|
|
46
46
|
throw new Error('vaultTokenAccount is required');
|
|
47
47
|
}
|
|
48
|
+
if (!params.lookupTable) {
|
|
49
|
+
throw new Error('lookupTable is required');
|
|
50
|
+
}
|
|
51
|
+
if (params.recentSlot === undefined || params.recentSlot === null) {
|
|
52
|
+
throw new Error('recentSlot is required');
|
|
53
|
+
}
|
|
48
54
|
// Get network-specific addresses
|
|
49
55
|
const addresses = getAddresses(config);
|
|
50
56
|
const atlasMint = address(addresses.atlasMint);
|
|
51
57
|
const programAddress = address(addresses.srsly);
|
|
58
|
+
const sageProgram = address(addresses.sage);
|
|
59
|
+
const antegenProgram = address(addresses.antegen);
|
|
52
60
|
// Convert authority to TransactionSigner
|
|
53
61
|
// Handles both real signers (CLI/backend) and addresses (browser/wallet)
|
|
54
62
|
const authoritySigner = params.authority
|
|
@@ -61,7 +69,11 @@ export async function createConfig(params, config) {
|
|
|
61
69
|
mint: atlasMint,
|
|
62
70
|
vault: address(params.vault),
|
|
63
71
|
vaultTokenAccount: address(params.vaultTokenAccount),
|
|
72
|
+
lookupTable: address(params.lookupTable),
|
|
73
|
+
sageProgram,
|
|
74
|
+
antegenProgram,
|
|
64
75
|
srslyProgram: programAddress,
|
|
76
|
+
recentSlot: BigInt(params.recentSlot),
|
|
65
77
|
}, { programAddress });
|
|
66
78
|
return prepareInstructions(kitInstruction, {
|
|
67
79
|
computeUnits: params.computeUnits,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createConfig.js","sourceRoot":"","sources":["../../../src/instructions/createConfig.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;AAE5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"createConfig.js","sourceRoot":"","sources":["../../../src/instructions/createConfig.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;AAE5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AA0C5D;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAA0B,EAC1B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,IAAI,MAAM,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;QAClE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IAED,iCAAiC;IACjC,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,SAAoB,CAAC,CAAC;IAC1D,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAC3D,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,IAAe,CAAC,CAAC;IACvD,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,OAAkB,CAAC,CAAC;IAE7D,yCAAyC;IACzC,yEAAyE;IACzE,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS;QACtC,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC;QACvC,CAAC,CAAC,SAAS,CAAC;IAEd,oCAAoC;IACpC,8EAA8E;IAC9E,MAAM,cAAc,GAAG,MAAM,+BAA+B,CAC1D;QACE,SAAS,EAAE,eAAe;QAC1B,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAgB,CAAC;QACvC,iBAAiB,EAAE,OAAO,CAAC,MAAM,CAAC,iBAA4B,CAAC;QAC/D,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,WAAsB,CAAC;QACnD,WAAW;QACX,cAAc;QACd,YAAY,EAAE,cAAc;QAC5B,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;KACtC,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,mBAAmB,CAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -12,6 +12,7 @@ import { convertAmount, stardustToAtlas } from '../params/amount';
|
|
|
12
12
|
import { convertDuration } from '../params/duration';
|
|
13
13
|
import { normalizeSchedule } from '../params/schedule';
|
|
14
14
|
import { fetchFleet } from '../accounts/fleet';
|
|
15
|
+
import { fetchConfig } from '../accounts/config';
|
|
15
16
|
import { prepareInstructions } from '../utils/instructions';
|
|
16
17
|
/**
|
|
17
18
|
* Create a rental contract for a Star Atlas fleet
|
|
@@ -99,11 +100,16 @@ export async function createContract(params, config) {
|
|
|
99
100
|
if (durationMaxSeconds < durationMinSeconds) {
|
|
100
101
|
throw new Error(`durationMax (${durationMaxSeconds}s) must be >= durationMin (${durationMinSeconds}s)`);
|
|
101
102
|
}
|
|
102
|
-
// Get
|
|
103
|
+
// Get atlasMint from on-chain config
|
|
104
|
+
const configAccount = await fetchConfig(finalConfig.rpcUrl);
|
|
105
|
+
const atlasMint = configAccount.data.atlasMint;
|
|
103
106
|
const addresses = getAddresses(config);
|
|
104
|
-
const atlasMint = address(addresses.atlasMint);
|
|
105
107
|
const sageProgram = address(addresses.sage);
|
|
106
108
|
const programAddress = address(addresses.srsly);
|
|
109
|
+
// Convert cancelDelayMin duration to seconds
|
|
110
|
+
const cancelDelayMinSeconds = params.cancelDelayMin
|
|
111
|
+
? BigInt(convertDuration(params.cancelDelayMin))
|
|
112
|
+
: 1n; // Default 1 second (no instant cancel)
|
|
107
113
|
// Call Codama-generated instruction
|
|
108
114
|
const kitInstruction = await getCreateContractInstructionAsync({
|
|
109
115
|
owner: ownerSigner,
|
|
@@ -115,10 +121,11 @@ export async function createContract(params, config) {
|
|
|
115
121
|
rate: rateStardust,
|
|
116
122
|
durationMin: BigInt(durationMinSeconds),
|
|
117
123
|
durationMax: BigInt(durationMaxSeconds),
|
|
118
|
-
|
|
124
|
+
paymentsFreq: normalizedSchedule,
|
|
119
125
|
ownerKeyIndex: params.ownerKeyIndex ?? 0,
|
|
120
|
-
|
|
121
|
-
reservationsDisabled: params.
|
|
126
|
+
cancelDelayMin: cancelDelayMinSeconds,
|
|
127
|
+
reservationsDisabled: params.reservationsDisabled ?? true,
|
|
128
|
+
automationRequired: params.automationRequired ?? true
|
|
122
129
|
}, { programAddress });
|
|
123
130
|
return prepareInstructions(kitInstruction, {
|
|
124
131
|
computeUnits: params.computeUnits,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createContract.js","sourceRoot":"","sources":["../../../src/instructions/createContract.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,iCAAiC,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;AAE5E,OAAO,EAAE,aAAa,EAAE,eAAe,EAAoB,MAAM,kBAAkB,CAAC;AACpF,OAAO,EAAE,eAAe,EAAsB,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAsB,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"createContract.js","sourceRoot":"","sources":["../../../src/instructions/createContract.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,7 +12,8 @@ import { getDeleteConfigInstructionAsync } from '../generated/codama/instruction
|
|
|
12
12
|
import { mergeConfig, getAddresses } from '../utils/config';
|
|
13
13
|
import { toTransactionSigner } from '../utils/signer';
|
|
14
14
|
import { prepareInstructions } from '../utils/instructions';
|
|
15
|
-
import {
|
|
15
|
+
import { fetchConfig } from '../accounts/config';
|
|
16
|
+
import { deriveVault } from '../pda/slyvault';
|
|
16
17
|
/**
|
|
17
18
|
* Delete program configuration
|
|
18
19
|
*
|
|
@@ -50,17 +51,27 @@ export async function deleteConfig(params, config) {
|
|
|
50
51
|
if (!addresses.srsly || addresses.srsly === 'undefined') {
|
|
51
52
|
throw new Error(`Invalid SRSLY program address: ${addresses.srsly}. SDK config may not be initialized properly.`);
|
|
52
53
|
}
|
|
53
|
-
if (!params.mint) {
|
|
54
|
-
throw new Error('mint is required for vault derivation');
|
|
55
|
-
}
|
|
56
54
|
const programAddress = address(addresses.srsly);
|
|
57
|
-
|
|
55
|
+
// Resolve mint: explicit param > on-chain config > hardcoded fallback
|
|
56
|
+
let mintAddress;
|
|
57
|
+
if (params.mint) {
|
|
58
|
+
mintAddress = address(params.mint);
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
try {
|
|
62
|
+
const configAccount = await fetchConfig(finalConfig.rpcUrl);
|
|
63
|
+
mintAddress = configAccount.data.atlasMint;
|
|
64
|
+
}
|
|
65
|
+
catch {
|
|
66
|
+
mintAddress = address(addresses.atlasMint);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
58
69
|
// Convert authority to TransactionSigner if provided
|
|
59
70
|
const authoritySigner = params.authority
|
|
60
71
|
? toTransactionSigner(params.authority)
|
|
61
72
|
: undefined;
|
|
62
73
|
// Derive vault PDA (creator = SRSLY program)
|
|
63
|
-
const { vault, vaultTokenAccount } = await
|
|
74
|
+
const { vault, vaultTokenAccount } = await deriveVault(programAddress, mintAddress);
|
|
64
75
|
// Call Codama-generated instruction
|
|
65
76
|
const kitInstruction = await getDeleteConfigInstructionAsync({
|
|
66
77
|
authority: authoritySigner,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deleteConfig.js","sourceRoot":"","sources":["../../../src/instructions/deleteConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"deleteConfig.js","sourceRoot":"","sources":["../../../src/instructions/deleteConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AA2B9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAA0B,EAC1B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,iCAAiC;IACjC,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAEvC,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,kCAAkC,SAAS,CAAC,KAAK,+CAA+C,CAAC,CAAC;IACpH,CAAC;IAED,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAE3D,sEAAsE;IACtE,IAAI,WAAoB,CAAC;IACzB,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;SAAM,CAAC;QACN,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,MAAM,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAC5D,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC;QAC7C,CAAC;QAAC,MAAM,CAAC;YACP,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,SAAoB,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,qDAAqD;IACrD,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS;QACtC,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC;QACvC,CAAC,CAAC,SAAS,CAAC;IAEd,6CAA6C;IAC7C,MAAM,EAAE,KAAK,EAAE,iBAAiB,EAAE,GAAG,MAAM,WAAW,CACpD,cAAc,EACd,WAAW,CACZ,CAAC;IAEF,oCAAoC;IACpC,MAAM,cAAc,GAAG,MAAM,+BAA+B,CAC1D;QACE,SAAS,EAAE,eAAe;QAC1B,KAAK;QACL,iBAAiB;QACjB,IAAI,EAAE,WAAW;KAClB,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,mBAAmB,CAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @purpose Simplified deleteContract instruction wrapper
|
|
3
|
+
*
|
|
4
|
+
* Thin convenience wrapper around Codama-generated deleteContract instruction.
|
|
5
|
+
* Admin-only instruction to delete contract state for schema migrations.
|
|
6
|
+
* Returns lamports to the contract owner.
|
|
7
|
+
*/
|
|
8
|
+
import { address } from '@solana/kit';
|
|
9
|
+
import { getDeleteContractInstructionAsync } from '../generated/codama/instructions';
|
|
10
|
+
import { mergeConfig, getAddresses, getRpcUrl } from '../utils/config';
|
|
11
|
+
import { toTransactionSigner } from '../utils/signer';
|
|
12
|
+
import { prepareInstructions } from '../utils/instructions';
|
|
13
|
+
import { fetchContract } from '../accounts/contract';
|
|
14
|
+
/**
|
|
15
|
+
* Delete contract state (admin-only for schema migrations)
|
|
16
|
+
*
|
|
17
|
+
* Used to delete contract state when the ContractState structure changes.
|
|
18
|
+
* Returns lamports to the contract owner. This is an escape hatch for
|
|
19
|
+
* fixing broken state and bypasses normal deserialization.
|
|
20
|
+
*
|
|
21
|
+
* @param params - Delete contract parameters
|
|
22
|
+
* @param config - Optional SDK configuration overrides
|
|
23
|
+
* @returns Kit instruction (or web3.js if PublicKey in config)
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* // Admin deletes corrupted contract state
|
|
28
|
+
* const ix = await deleteContract({
|
|
29
|
+
* admin: adminWallet,
|
|
30
|
+
* owner: "OWNER_WALLET_ADDRESS",
|
|
31
|
+
* contract: "CONTRACT_STATE_ADDRESS"
|
|
32
|
+
* });
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
export async function deleteContract(params, config) {
|
|
36
|
+
// Merge config
|
|
37
|
+
const finalConfig = mergeConfig(config);
|
|
38
|
+
// Validate required params
|
|
39
|
+
if (!params.admin) {
|
|
40
|
+
throw new Error('admin is required');
|
|
41
|
+
}
|
|
42
|
+
if (!params.contract) {
|
|
43
|
+
throw new Error('contract is required');
|
|
44
|
+
}
|
|
45
|
+
// Auto-fetch owner from contract if not provided
|
|
46
|
+
let ownerAddress;
|
|
47
|
+
if (params.owner) {
|
|
48
|
+
ownerAddress = address(params.owner);
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
try {
|
|
52
|
+
const rpcUrl = getRpcUrl();
|
|
53
|
+
const contractData = await fetchContract(params.contract, rpcUrl);
|
|
54
|
+
ownerAddress = contractData.data.owner;
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
throw new Error(`Could not fetch owner from contract. If contract state is corrupted, provide --owner manually. Error: ${error.message}`);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
// Convert admin to transaction signer
|
|
61
|
+
const adminSigner = toTransactionSigner(params.admin);
|
|
62
|
+
// Get network-specific addresses
|
|
63
|
+
const addresses = getAddresses(config);
|
|
64
|
+
const programAddress = address(addresses.srsly);
|
|
65
|
+
// Call Codama-generated instruction (config PDA auto-derived)
|
|
66
|
+
const kitInstruction = await getDeleteContractInstructionAsync({
|
|
67
|
+
admin: adminSigner,
|
|
68
|
+
owner: ownerAddress,
|
|
69
|
+
contract: address(params.contract)
|
|
70
|
+
}, { programAddress });
|
|
71
|
+
return prepareInstructions(kitInstruction, {
|
|
72
|
+
computeUnits: params.computeUnits,
|
|
73
|
+
PublicKey: finalConfig.PublicKey
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=deleteContract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deleteContract.js","sourceRoot":"","sources":["../../../src/instructions/deleteContract.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,iCAAiC,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAkB,MAAM,iBAAiB,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAgCrD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAA4B,EAC5B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IAED,iDAAiD;IACjD,IAAI,YAAqB,CAAC;IAC1B,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,KAAgB,CAAC,CAAC;IAClD,CAAC;SAAM,CAAC;QACN,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,MAAM,YAAY,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,QAAmB,EAAE,MAAM,CAAC,CAAC;YAC7E,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;QACzC,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CACb,yGAAyG,KAAK,CAAC,OAAO,EAAE,CACzH,CAAC;QACJ,CAAC;IACH,CAAC;IAED,sCAAsC;IACtC,MAAM,WAAW,GAAG,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEtD,iCAAiC;IACjC,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAE3D,8DAA8D;IAC9D,MAAM,cAAc,GAAG,MAAM,iCAAiC,CAC5D;QACE,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,YAAY;QACnB,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAmB,CAAC;KAC9C,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,mBAAmB,CAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Instruction wrappers for SRSLY
|
|
3
|
+
* @module instructions
|
|
4
|
+
*/
|
|
5
|
+
export { createContract } from './createContract';
|
|
6
|
+
export { updateContract } from './updateContract';
|
|
7
|
+
export { closeContract } from './closeContract';
|
|
8
|
+
export { deleteContract } from './deleteContract';
|
|
9
|
+
export { setDelegate } from './setDelegate';
|
|
10
|
+
export { acceptRental } from './acceptRental';
|
|
11
|
+
export { cancelRental } from './cancelRental';
|
|
12
|
+
export { closeRental } from './closeRental';
|
|
13
|
+
export { releaseRental } from './releaseRental';
|
|
14
|
+
export { invalidateRental } from './invalidateRental';
|
|
15
|
+
export { reserveRental } from './reserveRental';
|
|
16
|
+
export { deleteRental } from './deleteRental';
|
|
17
|
+
export { claimRental } from './claimRental';
|
|
18
|
+
export { claimBorrower } from './claimBorrower';
|
|
19
|
+
export { updateBorrower } from './updateBorrower';
|
|
20
|
+
export { ownerClaim } from './ownerClaim';
|
|
21
|
+
export { ownerUpdate } from './ownerUpdate';
|
|
22
|
+
export { createConfig } from './createConfig';
|
|
23
|
+
export { updateConfig } from './updateConfig';
|
|
24
|
+
export { deleteConfig } from './deleteConfig';
|
|
25
|
+
export { createAffiliate } from './createAffiliate';
|
|
26
|
+
export { approveAffiliate } from './approveAffiliate';
|
|
27
|
+
export { removeAffiliate } from './removeAffiliate';
|
|
28
|
+
export { updateAffiliate } from './updateAffiliate';
|
|
29
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/instructions/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,EAA6B,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,cAAc,EAA6B,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAA4B,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAA6B,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,WAAW,EAA0B,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,WAAW,EAA0B,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,aAAa,EAA4B,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAA+B,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,aAAa,EAA4B,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,WAAW,EAA0B,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,aAAa,EAA4B,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAA6B,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAyB,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,WAAW,EAA0B,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,eAAe,EAA8B,MAAM,mBAAmB,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAA+B,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,eAAe,EAA8B,MAAM,mBAAmB,CAAC;AAChF,OAAO,EAAE,eAAe,EAA8B,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @purpose Simplified invalidateRental instruction wrapper
|
|
3
|
+
*
|
|
4
|
+
* Thin convenience wrapper around Codama-generated invalidateRental instruction.
|
|
5
|
+
* Emergency function to invalidate a fleet's rental status when contract doesn't exist.
|
|
6
|
+
*/
|
|
7
|
+
import { address } from '@solana/kit';
|
|
8
|
+
import { getInvalidateRentalInstructionAsync } from '../generated/codama/instructions';
|
|
9
|
+
import { mergeConfig, getAddresses } from '../utils/config';
|
|
10
|
+
import { toTransactionSigner } from '../utils/signer';
|
|
11
|
+
import { prepareInstructions } from '../utils/instructions';
|
|
12
|
+
import { deriveGameAccounts } from '../pda/sage';
|
|
13
|
+
/**
|
|
14
|
+
* Invalidate a rental
|
|
15
|
+
*
|
|
16
|
+
* Emergency function to invalidate a fleet's rental status in SAGE when:
|
|
17
|
+
* - Contract does NOT exist (was never created or was deleted)
|
|
18
|
+
* - Borrower is unknown (can't use releaseRental)
|
|
19
|
+
* - Fleet is stuck in SAGE rental mode
|
|
20
|
+
*
|
|
21
|
+
* If the contract exists, use `releaseRental` instead.
|
|
22
|
+
*
|
|
23
|
+
* **Use Cases:**
|
|
24
|
+
* - Fleet stuck in SAGE rental mode without a contract
|
|
25
|
+
* - Recovery when borrower is unknown
|
|
26
|
+
* - Contract was never created but fleet shows as rented
|
|
27
|
+
*
|
|
28
|
+
* **This function:**
|
|
29
|
+
* - Derives contract PDA from fleet (but doesn't require it to exist)
|
|
30
|
+
* - Gets gameId from config (based on programSet)
|
|
31
|
+
* - Derives owner's SAGE accounts (starbase, starbase_player)
|
|
32
|
+
* - Calls SAGE invalidate_rental to unlock the fleet
|
|
33
|
+
*
|
|
34
|
+
* @param params - Invalidate rental parameters
|
|
35
|
+
* @param config - Optional SDK configuration overrides
|
|
36
|
+
* @returns Kit instruction (or web3.js if PublicKey in config)
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* ```typescript
|
|
40
|
+
* // Emergency invalidation of a stuck fleet (contract doesn't exist)
|
|
41
|
+
* const ix = await invalidateRental({
|
|
42
|
+
* fleet: "FLEET_ADDRESS",
|
|
43
|
+
* signer: wallet,
|
|
44
|
+
* ownerProfile: "OWNER_PROFILE_ADDRESS",
|
|
45
|
+
* faction: "mud"
|
|
46
|
+
* });
|
|
47
|
+
*
|
|
48
|
+
* // With compute budget
|
|
49
|
+
* const ix2 = await invalidateRental({
|
|
50
|
+
* fleet: fleetAddress,
|
|
51
|
+
* signer: adminWallet,
|
|
52
|
+
* ownerProfile: ownerProfileAddress,
|
|
53
|
+
* faction: 1,
|
|
54
|
+
* computeUnits: 200_000
|
|
55
|
+
* });
|
|
56
|
+
* ```
|
|
57
|
+
*/
|
|
58
|
+
export async function invalidateRental(params, config) {
|
|
59
|
+
// Merge config
|
|
60
|
+
const finalConfig = mergeConfig(config);
|
|
61
|
+
// Validate required params
|
|
62
|
+
if (!params.fleet) {
|
|
63
|
+
throw new Error('fleet is required');
|
|
64
|
+
}
|
|
65
|
+
if (!params.signer) {
|
|
66
|
+
throw new Error('signer is required');
|
|
67
|
+
}
|
|
68
|
+
if (!params.ownerProfile) {
|
|
69
|
+
throw new Error('ownerProfile is required');
|
|
70
|
+
}
|
|
71
|
+
if (!params.faction) {
|
|
72
|
+
throw new Error('faction is required');
|
|
73
|
+
}
|
|
74
|
+
// Convert signer to transaction signer
|
|
75
|
+
const signerAccount = toTransactionSigner(params.signer);
|
|
76
|
+
// Get network-specific addresses (including gameId)
|
|
77
|
+
const addresses = getAddresses(config);
|
|
78
|
+
const gameId = address(addresses.gameId);
|
|
79
|
+
const sageProgram = address(addresses.sage);
|
|
80
|
+
const programAddress = address(addresses.srsly);
|
|
81
|
+
// Derive owner's SAGE accounts (NOT borrower's)
|
|
82
|
+
const gameAccounts = await deriveGameAccounts(params.ownerProfile, params.faction, gameId);
|
|
83
|
+
// Call Codama-generated instruction
|
|
84
|
+
// Contract and rentalAuthority are auto-derived by Codama
|
|
85
|
+
const kitInstruction = await getInvalidateRentalInstructionAsync({
|
|
86
|
+
signer: signerAccount,
|
|
87
|
+
fleet: address(params.fleet),
|
|
88
|
+
gameId: gameId,
|
|
89
|
+
starbase: gameAccounts.starbase,
|
|
90
|
+
starbasePlayer: gameAccounts.starbasePlayer,
|
|
91
|
+
sageProgram,
|
|
92
|
+
}, { programAddress });
|
|
93
|
+
return prepareInstructions(kitInstruction, {
|
|
94
|
+
computeUnits: params.computeUnits,
|
|
95
|
+
PublicKey: finalConfig.PublicKey
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=invalidateRental.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invalidateRental.js","sourceRoot":"","sources":["../../../src/instructions/invalidateRental.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,mCAAmC,EAAE,MAAM,kCAAkC,CAAC;AACvF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAoCjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAA8B,EAC9B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACzC,CAAC;IAED,uCAAuC;IACvC,MAAM,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEzD,oDAAoD;IACpD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,MAAiB,CAAC,CAAC;IACpD,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,IAAe,CAAC,CAAC;IACvD,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAE3D,gDAAgD;IAChD,MAAM,YAAY,GAAG,MAAM,kBAAkB,CAC3C,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,OAAO,EACd,MAAM,CACP,CAAC;IAEF,oCAAoC;IACpC,0DAA0D;IAC1D,MAAM,cAAc,GAAG,MAAM,mCAAmC,CAC9D;QACE,MAAM,EAAE,aAAa;QACrB,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAgB,CAAC;QACvC,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,YAAY,CAAC,QAAQ;QAC/B,cAAc,EAAE,YAAY,CAAC,cAAc;QAC3C,WAAW;KACZ,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,mBAAmB,CAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
|