@wuwei-labs/srsly 3.0.0-beta.21 → 3.0.0-beta.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/accounts/borrower.js +12 -5
- package/dist/cjs/accounts/borrower.js.map +1 -1
- package/dist/cjs/accounts/contract.js +12 -5
- package/dist/cjs/accounts/contract.js.map +1 -1
- package/dist/cjs/accounts/index.js +23 -0
- package/dist/cjs/accounts/index.js.map +1 -0
- package/dist/cjs/accounts/rental.js +12 -5
- package/dist/cjs/accounts/rental.js.map +1 -1
- package/dist/cjs/demos.js +190 -62
- package/dist/cjs/demos.js.map +1 -1
- package/dist/cjs/generated/codama/accounts/borrowerState.js +8 -2
- package/dist/cjs/generated/codama/accounts/borrowerState.js.map +1 -1
- package/dist/cjs/generated/codama/accounts/configState.js +4 -6
- package/dist/cjs/generated/codama/accounts/configState.js.map +1 -1
- package/dist/cjs/generated/codama/accounts/contractState.js +27 -34
- package/dist/cjs/generated/codama/accounts/contractState.js.map +1 -1
- package/dist/cjs/generated/codama/accounts/index.js +0 -1
- package/dist/cjs/generated/codama/accounts/index.js.map +1 -1
- package/dist/cjs/generated/codama/accounts/rentalState.js +20 -14
- package/dist/cjs/generated/codama/accounts/rentalState.js.map +1 -1
- package/dist/cjs/generated/codama/accounts/thread.js +0 -10
- package/dist/cjs/generated/codama/accounts/thread.js.map +1 -1
- package/dist/cjs/generated/codama/errors/srsly.js +39 -30
- package/dist/cjs/generated/codama/errors/srsly.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/acceptRental.js +69 -118
- package/dist/cjs/generated/codama/instructions/acceptRental.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/activateRental.js +159 -24
- package/dist/cjs/generated/codama/instructions/activateRental.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/cancelRental.js +28 -33
- package/dist/cjs/generated/codama/instructions/cancelRental.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/claimBorrower.js +3 -11
- package/dist/cjs/generated/codama/instructions/claimBorrower.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/claimContract.js +202 -0
- package/dist/cjs/generated/codama/instructions/claimContract.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/closeBorrower.js +183 -0
- package/dist/cjs/generated/codama/instructions/closeBorrower.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/closeContract.js +130 -14
- package/dist/cjs/generated/codama/instructions/closeContract.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/closeContractThread.js +167 -0
- package/dist/cjs/generated/codama/instructions/closeContractThread.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/closeRental.js +10 -121
- package/dist/cjs/generated/codama/instructions/closeRental.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/createBorrower.js +211 -0
- package/dist/cjs/generated/codama/instructions/createBorrower.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/createContract.js +46 -30
- package/dist/cjs/generated/codama/instructions/createContract.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/createContractThread.js +317 -0
- package/dist/cjs/generated/codama/instructions/createContractThread.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/deleteBorrower.js +115 -0
- package/dist/cjs/generated/codama/instructions/deleteBorrower.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/deleteRental.js +2 -2
- package/dist/cjs/generated/codama/instructions/deleteRental.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/index.js +8 -5
- package/dist/cjs/generated/codama/instructions/index.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/payContract.js +224 -0
- package/dist/cjs/generated/codama/instructions/payContract.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/processContract.js +224 -0
- package/dist/cjs/generated/codama/instructions/processContract.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/reserveRental.js +94 -60
- package/dist/cjs/generated/codama/instructions/reserveRental.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/updateBorrower.js +7 -43
- package/dist/cjs/generated/codama/instructions/updateBorrower.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/updateConfig.js +4 -6
- package/dist/cjs/generated/codama/instructions/updateConfig.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/updateContract.js +6 -16
- package/dist/cjs/generated/codama/instructions/updateContract.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/updateContractThread.js +177 -0
- package/dist/cjs/generated/codama/instructions/updateContractThread.js.map +1 -0
- package/dist/cjs/generated/codama/programs/srsly.js +43 -35
- package/dist/cjs/generated/codama/programs/srsly.js.map +1 -1
- package/dist/cjs/generated/codama/types/bidType.js +30 -0
- package/dist/cjs/generated/codama/types/bidType.js.map +1 -0
- package/dist/cjs/generated/codama/types/contractThreadClosed.js +29 -0
- package/dist/cjs/generated/codama/types/contractThreadClosed.js.map +1 -0
- package/dist/cjs/generated/codama/types/contractThreadCreated.js +29 -0
- package/dist/cjs/generated/codama/types/contractThreadCreated.js.map +1 -0
- package/dist/cjs/generated/codama/types/contractThreadUpdated.js +39 -0
- package/dist/cjs/generated/codama/types/contractThreadUpdated.js.map +1 -0
- package/dist/cjs/generated/codama/types/discountAuthorization.js +2 -0
- package/dist/cjs/generated/codama/types/discountAuthorization.js.map +1 -1
- package/dist/cjs/generated/codama/types/index.js +6 -2
- package/dist/cjs/generated/codama/types/index.js.map +1 -1
- package/dist/cjs/generated/codama/types/queuedRentalRefunded.js +33 -0
- package/dist/cjs/generated/codama/types/queuedRentalRefunded.js.map +1 -0
- package/dist/cjs/generated/codama/types/rentalAccepted.js +2 -10
- package/dist/cjs/generated/codama/types/rentalAccepted.js.map +1 -1
- package/dist/cjs/generated/codama/types/rentalActivated.js +2 -0
- package/dist/cjs/generated/codama/types/rentalActivated.js.map +1 -1
- package/dist/cjs/generated/codama/types/rentalExpiredInline.js +31 -0
- package/dist/cjs/generated/codama/types/rentalExpiredInline.js.map +1 -0
- package/dist/cjs/generated/codama/types/rentalStatus.js +4 -3
- package/dist/cjs/generated/codama/types/rentalStatus.js.map +1 -1
- package/dist/cjs/generated/codama/types/reservationCreated.js +9 -4
- package/dist/cjs/generated/codama/types/reservationCreated.js.map +1 -1
- package/dist/cjs/generated/codama/types/signal.js +14 -2
- package/dist/cjs/generated/codama/types/signal.js.map +1 -1
- package/dist/cjs/index.js +4 -221
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/instructions/acceptRental.js +37 -85
- package/dist/cjs/instructions/acceptRental.js.map +1 -1
- package/dist/cjs/instructions/activateRental.js +85 -0
- package/dist/cjs/instructions/activateRental.js.map +1 -0
- package/dist/cjs/instructions/cancelRental.js +25 -23
- package/dist/cjs/instructions/cancelRental.js.map +1 -1
- package/dist/cjs/instructions/claimBorrower.js +44 -22
- package/dist/cjs/instructions/claimBorrower.js.map +1 -1
- package/dist/cjs/instructions/claimContract.js +56 -0
- package/dist/cjs/instructions/claimContract.js.map +1 -0
- package/dist/cjs/instructions/closeBorrower.js +58 -0
- package/dist/cjs/instructions/closeBorrower.js.map +1 -0
- package/dist/cjs/instructions/closeContract.js +13 -12
- package/dist/cjs/instructions/closeContract.js.map +1 -1
- package/dist/cjs/instructions/closeContractThread.js +66 -0
- package/dist/cjs/instructions/closeContractThread.js.map +1 -0
- package/dist/cjs/instructions/closeRental.js +34 -45
- package/dist/cjs/instructions/closeRental.js.map +1 -1
- package/dist/cjs/instructions/createBorrower.js +64 -0
- package/dist/cjs/instructions/createBorrower.js.map +1 -0
- package/dist/cjs/instructions/createContract.js +2 -34
- package/dist/cjs/instructions/createContract.js.map +1 -1
- package/dist/cjs/instructions/createContractThread.js +78 -0
- package/dist/cjs/instructions/createContractThread.js.map +1 -0
- package/dist/cjs/instructions/deleteBorrower.js +60 -0
- package/dist/cjs/instructions/deleteBorrower.js.map +1 -0
- package/dist/cjs/instructions/deleteRental.js +1 -4
- package/dist/cjs/instructions/deleteRental.js.map +1 -1
- package/dist/cjs/instructions/index.js +43 -49
- package/dist/cjs/instructions/index.js.map +1 -1
- package/dist/cjs/instructions/reserveRental.js +70 -68
- package/dist/cjs/instructions/reserveRental.js.map +1 -1
- package/dist/cjs/instructions/updateBorrower.js +44 -40
- 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 +14 -30
- package/dist/cjs/instructions/updateContract.js.map +1 -1
- package/dist/cjs/instructions/updateContractThread.js +60 -0
- package/dist/cjs/instructions/updateContractThread.js.map +1 -0
- package/dist/cjs/kit/index.js +37 -3
- package/dist/cjs/kit/index.js.map +1 -1
- package/dist/cjs/legacy/index.js +15 -16
- package/dist/cjs/legacy/index.js.map +1 -1
- package/dist/cjs/package.json +1 -1
- package/dist/cjs/params/index.js +21 -0
- package/dist/cjs/params/index.js.map +1 -0
- package/dist/cjs/params/sol.js +71 -0
- package/dist/cjs/params/sol.js.map +1 -0
- package/dist/cjs/pda/constants.js +7 -3
- package/dist/cjs/pda/constants.js.map +1 -1
- package/dist/cjs/pda/index.js +9 -23
- package/dist/cjs/pda/index.js.map +1 -1
- package/dist/cjs/pda/srsly.js +30 -37
- package/dist/cjs/pda/srsly.js.map +1 -1
- package/dist/cjs/pda/thread.js +38 -29
- package/dist/cjs/pda/thread.js.map +1 -1
- package/dist/cjs/utils/addresses.js +2 -1
- package/dist/cjs/utils/addresses.js.map +1 -1
- package/dist/cjs/utils/discountAuth.js +5 -1
- package/dist/cjs/utils/discountAuth.js.map +1 -1
- package/dist/cjs/utils/index.js +3 -5
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/utils/rental.js +23 -109
- package/dist/cjs/utils/rental.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/accounts/borrower.js +12 -5
- package/dist/esm/accounts/borrower.js.map +1 -1
- package/dist/esm/accounts/contract.js +12 -5
- package/dist/esm/accounts/contract.js.map +1 -1
- package/dist/esm/accounts/index.js +7 -0
- package/dist/esm/accounts/index.js.map +1 -0
- package/dist/esm/accounts/rental.js +12 -5
- package/dist/esm/accounts/rental.js.map +1 -1
- package/dist/esm/demos.js +189 -61
- package/dist/esm/demos.js.map +1 -1
- package/dist/esm/generated/codama/accounts/borrowerState.js +9 -3
- package/dist/esm/generated/codama/accounts/borrowerState.js.map +1 -1
- package/dist/esm/generated/codama/accounts/configState.js +4 -6
- package/dist/esm/generated/codama/accounts/configState.js.map +1 -1
- package/dist/esm/generated/codama/accounts/contractState.js +28 -35
- package/dist/esm/generated/codama/accounts/contractState.js.map +1 -1
- package/dist/esm/generated/codama/accounts/index.js +0 -1
- package/dist/esm/generated/codama/accounts/index.js.map +1 -1
- package/dist/esm/generated/codama/accounts/rentalState.js +22 -16
- package/dist/esm/generated/codama/accounts/rentalState.js.map +1 -1
- package/dist/esm/generated/codama/accounts/thread.js +0 -10
- package/dist/esm/generated/codama/accounts/thread.js.map +1 -1
- package/dist/esm/generated/codama/errors/srsly.js +37 -28
- package/dist/esm/generated/codama/errors/srsly.js.map +1 -1
- package/dist/esm/generated/codama/instructions/acceptRental.js +70 -119
- package/dist/esm/generated/codama/instructions/acceptRental.js.map +1 -1
- package/dist/esm/generated/codama/instructions/activateRental.js +161 -26
- package/dist/esm/generated/codama/instructions/activateRental.js.map +1 -1
- package/dist/esm/generated/codama/instructions/cancelRental.js +29 -34
- package/dist/esm/generated/codama/instructions/cancelRental.js.map +1 -1
- package/dist/esm/generated/codama/instructions/claimBorrower.js +4 -12
- package/dist/esm/generated/codama/instructions/claimBorrower.js.map +1 -1
- package/dist/esm/generated/codama/instructions/claimContract.js +192 -0
- package/dist/esm/generated/codama/instructions/claimContract.js.map +1 -0
- package/dist/esm/generated/codama/instructions/closeBorrower.js +173 -0
- package/dist/esm/generated/codama/instructions/closeBorrower.js.map +1 -0
- package/dist/esm/generated/codama/instructions/closeContract.js +130 -14
- package/dist/esm/generated/codama/instructions/closeContract.js.map +1 -1
- package/dist/esm/generated/codama/instructions/closeContractThread.js +157 -0
- package/dist/esm/generated/codama/instructions/closeContractThread.js.map +1 -0
- package/dist/esm/generated/codama/instructions/closeRental.js +11 -122
- package/dist/esm/generated/codama/instructions/closeRental.js.map +1 -1
- package/dist/esm/generated/codama/instructions/createBorrower.js +201 -0
- package/dist/esm/generated/codama/instructions/createBorrower.js.map +1 -0
- package/dist/esm/generated/codama/instructions/createContract.js +47 -31
- package/dist/esm/generated/codama/instructions/createContract.js.map +1 -1
- package/dist/esm/generated/codama/instructions/createContractThread.js +307 -0
- package/dist/esm/generated/codama/instructions/createContractThread.js.map +1 -0
- package/dist/esm/generated/codama/instructions/deleteBorrower.js +105 -0
- package/dist/esm/generated/codama/instructions/deleteBorrower.js.map +1 -0
- package/dist/esm/generated/codama/instructions/deleteRental.js +2 -2
- package/dist/esm/generated/codama/instructions/deleteRental.js.map +1 -1
- package/dist/esm/generated/codama/instructions/index.js +8 -5
- package/dist/esm/generated/codama/instructions/index.js.map +1 -1
- package/dist/esm/generated/codama/instructions/payContract.js +214 -0
- package/dist/esm/generated/codama/instructions/payContract.js.map +1 -0
- package/dist/esm/generated/codama/instructions/processContract.js +214 -0
- package/dist/esm/generated/codama/instructions/processContract.js.map +1 -0
- package/dist/esm/generated/codama/instructions/reserveRental.js +95 -61
- package/dist/esm/generated/codama/instructions/reserveRental.js.map +1 -1
- package/dist/esm/generated/codama/instructions/updateBorrower.js +8 -43
- package/dist/esm/generated/codama/instructions/updateBorrower.js.map +1 -1
- package/dist/esm/generated/codama/instructions/updateConfig.js +5 -7
- package/dist/esm/generated/codama/instructions/updateConfig.js.map +1 -1
- package/dist/esm/generated/codama/instructions/updateContract.js +7 -17
- package/dist/esm/generated/codama/instructions/updateContract.js.map +1 -1
- package/dist/esm/generated/codama/instructions/updateContractThread.js +167 -0
- package/dist/esm/generated/codama/instructions/updateContractThread.js.map +1 -0
- package/dist/esm/generated/codama/programs/srsly.js +43 -35
- package/dist/esm/generated/codama/programs/srsly.js.map +1 -1
- package/dist/esm/generated/codama/types/bidType.js +24 -0
- package/dist/esm/generated/codama/types/bidType.js.map +1 -0
- package/dist/esm/generated/codama/types/contractThreadClosed.js +24 -0
- package/dist/esm/generated/codama/types/contractThreadClosed.js.map +1 -0
- package/dist/esm/generated/codama/types/contractThreadCreated.js +24 -0
- package/dist/esm/generated/codama/types/contractThreadCreated.js.map +1 -0
- package/dist/esm/generated/codama/types/contractThreadUpdated.js +34 -0
- package/dist/esm/generated/codama/types/contractThreadUpdated.js.map +1 -0
- package/dist/esm/generated/codama/types/discountAuthorization.js +3 -1
- package/dist/esm/generated/codama/types/discountAuthorization.js.map +1 -1
- package/dist/esm/generated/codama/types/index.js +6 -2
- package/dist/esm/generated/codama/types/index.js.map +1 -1
- package/dist/esm/generated/codama/types/queuedRentalRefunded.js +28 -0
- package/dist/esm/generated/codama/types/queuedRentalRefunded.js.map +1 -0
- package/dist/esm/generated/codama/types/rentalAccepted.js +2 -10
- package/dist/esm/generated/codama/types/rentalAccepted.js.map +1 -1
- package/dist/esm/generated/codama/types/rentalActivated.js +3 -1
- package/dist/esm/generated/codama/types/rentalActivated.js.map +1 -1
- package/dist/esm/generated/codama/types/rentalExpiredInline.js +26 -0
- package/dist/esm/generated/codama/types/rentalExpiredInline.js.map +1 -0
- package/dist/esm/generated/codama/types/rentalStatus.js +4 -3
- package/dist/esm/generated/codama/types/rentalStatus.js.map +1 -1
- package/dist/esm/generated/codama/types/reservationCreated.js +10 -5
- package/dist/esm/generated/codama/types/reservationCreated.js.map +1 -1
- package/dist/esm/generated/codama/types/signal.js +15 -3
- package/dist/esm/generated/codama/types/signal.js.map +1 -1
- package/dist/esm/index.js +1 -99
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/instructions/acceptRental.js +41 -89
- package/dist/esm/instructions/acceptRental.js.map +1 -1
- package/dist/esm/instructions/activateRental.js +82 -0
- package/dist/esm/instructions/activateRental.js.map +1 -0
- package/dist/esm/instructions/cancelRental.js +26 -24
- package/dist/esm/instructions/cancelRental.js.map +1 -1
- package/dist/esm/instructions/claimBorrower.js +45 -23
- package/dist/esm/instructions/claimBorrower.js.map +1 -1
- package/dist/esm/instructions/claimContract.js +53 -0
- package/dist/esm/instructions/claimContract.js.map +1 -0
- package/dist/esm/instructions/closeBorrower.js +55 -0
- package/dist/esm/instructions/closeBorrower.js.map +1 -0
- package/dist/esm/instructions/closeContract.js +13 -12
- package/dist/esm/instructions/closeContract.js.map +1 -1
- package/dist/esm/instructions/closeContractThread.js +63 -0
- package/dist/esm/instructions/closeContractThread.js.map +1 -0
- package/dist/esm/instructions/closeRental.js +35 -46
- package/dist/esm/instructions/closeRental.js.map +1 -1
- package/dist/esm/instructions/createBorrower.js +61 -0
- package/dist/esm/instructions/createBorrower.js.map +1 -0
- package/dist/esm/instructions/createContract.js +2 -34
- package/dist/esm/instructions/createContract.js.map +1 -1
- package/dist/esm/instructions/createContractThread.js +75 -0
- package/dist/esm/instructions/createContractThread.js.map +1 -0
- package/dist/esm/instructions/deleteBorrower.js +57 -0
- package/dist/esm/instructions/deleteBorrower.js.map +1 -0
- package/dist/esm/instructions/deleteRental.js +1 -4
- package/dist/esm/instructions/deleteRental.js.map +1 -1
- package/dist/esm/instructions/index.js +29 -24
- package/dist/esm/instructions/index.js.map +1 -1
- package/dist/esm/instructions/reserveRental.js +71 -69
- package/dist/esm/instructions/reserveRental.js.map +1 -1
- package/dist/esm/instructions/updateBorrower.js +45 -41
- 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 +14 -30
- package/dist/esm/instructions/updateContract.js.map +1 -1
- package/dist/esm/instructions/updateContractThread.js +57 -0
- package/dist/esm/instructions/updateContractThread.js.map +1 -0
- package/dist/esm/kit/index.js +11 -3
- package/dist/esm/kit/index.js.map +1 -1
- package/dist/esm/legacy/index.js +13 -14
- package/dist/esm/legacy/index.js.map +1 -1
- package/dist/esm/package.json +1 -1
- package/dist/esm/params/index.js +5 -0
- package/dist/esm/params/index.js.map +1 -0
- package/dist/esm/params/sol.js +68 -0
- package/dist/esm/params/sol.js.map +1 -0
- package/dist/esm/pda/constants.js +6 -2
- package/dist/esm/pda/constants.js.map +1 -1
- package/dist/esm/pda/index.js +3 -21
- package/dist/esm/pda/index.js.map +1 -1
- package/dist/esm/pda/srsly.js +29 -36
- package/dist/esm/pda/srsly.js.map +1 -1
- package/dist/esm/pda/thread.js +37 -29
- package/dist/esm/pda/thread.js.map +1 -1
- package/dist/esm/utils/addresses.js +2 -1
- package/dist/esm/utils/addresses.js.map +1 -1
- package/dist/esm/utils/discountAuth.js +5 -1
- package/dist/esm/utils/discountAuth.js.map +1 -1
- package/dist/esm/utils/index.js +1 -1
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/rental.js +22 -106
- package/dist/esm/utils/rental.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/idl/srsly.json +1904 -1945
- package/dist/types/accounts/borrower.d.ts.map +1 -1
- package/dist/types/accounts/contract.d.ts.map +1 -1
- package/dist/types/accounts/index.d.ts +7 -0
- package/dist/types/accounts/index.d.ts.map +1 -0
- package/dist/types/accounts/rental.d.ts.map +1 -1
- package/dist/types/demos.d.ts +28 -10
- package/dist/types/demos.d.ts.map +1 -1
- package/dist/types/generated/codama/accounts/borrowerState.d.ts +15 -3
- package/dist/types/generated/codama/accounts/borrowerState.d.ts.map +1 -1
- package/dist/types/generated/codama/accounts/configState.d.ts +0 -4
- package/dist/types/generated/codama/accounts/configState.d.ts.map +1 -1
- package/dist/types/generated/codama/accounts/contractState.d.ts +51 -74
- package/dist/types/generated/codama/accounts/contractState.d.ts.map +1 -1
- package/dist/types/generated/codama/accounts/index.d.ts +0 -1
- package/dist/types/generated/codama/accounts/index.d.ts.map +1 -1
- package/dist/types/generated/codama/accounts/rentalState.d.ts +46 -34
- package/dist/types/generated/codama/accounts/rentalState.d.ts.map +1 -1
- package/dist/types/generated/codama/accounts/thread.d.ts +0 -4
- package/dist/types/generated/codama/accounts/thread.d.ts.map +1 -1
- package/dist/types/generated/codama/errors/srsly.d.ts +32 -26
- package/dist/types/generated/codama/errors/srsly.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/acceptRental.d.ts +53 -62
- package/dist/types/generated/codama/instructions/acceptRental.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/activateRental.d.ts +76 -32
- package/dist/types/generated/codama/instructions/activateRental.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/cancelRental.d.ts +28 -25
- package/dist/types/generated/codama/instructions/cancelRental.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/claimBorrower.d.ts +4 -24
- package/dist/types/generated/codama/instructions/claimBorrower.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/claimContract.d.ts +79 -0
- package/dist/types/generated/codama/instructions/claimContract.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/closeBorrower.d.ts +83 -0
- package/dist/types/generated/codama/instructions/closeBorrower.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/closeContract.d.ts +70 -18
- package/dist/types/generated/codama/instructions/closeContract.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/closeContractThread.d.ts +67 -0
- package/dist/types/generated/codama/instructions/closeContractThread.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/closeRental.d.ts +20 -70
- package/dist/types/generated/codama/instructions/closeRental.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/createBorrower.d.ts +88 -0
- package/dist/types/generated/codama/instructions/createBorrower.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/createContract.d.ts +28 -32
- package/dist/types/generated/codama/instructions/createContract.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/createContractThread.d.ts +133 -0
- package/dist/types/generated/codama/instructions/createContractThread.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/deleteBorrower.d.ts +55 -0
- package/dist/types/generated/codama/instructions/deleteBorrower.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/deleteRental.d.ts +4 -1
- package/dist/types/generated/codama/instructions/deleteRental.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/index.d.ts +8 -5
- package/dist/types/generated/codama/instructions/index.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/payContract.d.ts +100 -0
- package/dist/types/generated/codama/instructions/payContract.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/processContract.d.ts +100 -0
- package/dist/types/generated/codama/instructions/processContract.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/reserveRental.d.ts +88 -68
- package/dist/types/generated/codama/instructions/reserveRental.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/updateBorrower.d.ts +21 -19
- package/dist/types/generated/codama/instructions/updateBorrower.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/updateConfig.d.ts +0 -6
- package/dist/types/generated/codama/instructions/updateConfig.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/updateContract.d.ts +2 -14
- package/dist/types/generated/codama/instructions/updateContract.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/updateContractThread.d.ts +76 -0
- package/dist/types/generated/codama/instructions/updateContractThread.d.ts.map +1 -0
- package/dist/types/generated/codama/programs/srsly.d.ts +40 -32
- package/dist/types/generated/codama/programs/srsly.d.ts.map +1 -1
- package/dist/types/generated/codama/types/bidType.d.ts +18 -0
- package/dist/types/generated/codama/types/bidType.d.ts.map +1 -0
- package/dist/types/generated/codama/types/contractThreadClosed.d.ts +17 -0
- package/dist/types/generated/codama/types/contractThreadClosed.d.ts.map +1 -0
- package/dist/types/generated/codama/types/contractThreadCreated.d.ts +17 -0
- package/dist/types/generated/codama/types/contractThreadCreated.d.ts.map +1 -0
- package/dist/types/generated/codama/types/contractThreadUpdated.d.ts +24 -0
- package/dist/types/generated/codama/types/contractThreadUpdated.d.ts.map +1 -0
- package/dist/types/generated/codama/types/discountAuthorization.d.ts +5 -1
- package/dist/types/generated/codama/types/discountAuthorization.d.ts.map +1 -1
- package/dist/types/generated/codama/types/index.d.ts +6 -2
- package/dist/types/generated/codama/types/index.d.ts.map +1 -1
- package/dist/types/generated/codama/types/queuedRentalRefunded.d.ts +24 -0
- package/dist/types/generated/codama/types/queuedRentalRefunded.d.ts.map +1 -0
- package/dist/types/generated/codama/types/rentalAccepted.d.ts +2 -10
- package/dist/types/generated/codama/types/rentalAccepted.d.ts.map +1 -1
- package/dist/types/generated/codama/types/rentalActivated.d.ts +7 -1
- package/dist/types/generated/codama/types/rentalActivated.d.ts.map +1 -1
- package/dist/types/generated/codama/types/rentalExpiredInline.d.ts +18 -0
- package/dist/types/generated/codama/types/rentalExpiredInline.d.ts.map +1 -0
- package/dist/types/generated/codama/types/rentalStatus.d.ts +4 -3
- package/dist/types/generated/codama/types/rentalStatus.d.ts.map +1 -1
- package/dist/types/generated/codama/types/reservationCreated.d.ts +9 -4
- package/dist/types/generated/codama/types/reservationCreated.d.ts.map +1 -1
- package/dist/types/generated/codama/types/signal.d.ts +8 -6
- package/dist/types/generated/codama/types/signal.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -42
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/instructions/acceptRental.d.ts +2 -31
- package/dist/types/instructions/acceptRental.d.ts.map +1 -1
- package/dist/types/instructions/activateRental.d.ts +41 -0
- package/dist/types/instructions/activateRental.d.ts.map +1 -0
- package/dist/types/instructions/cancelRental.d.ts +8 -18
- package/dist/types/instructions/cancelRental.d.ts.map +1 -1
- package/dist/types/instructions/claimBorrower.d.ts +33 -11
- package/dist/types/instructions/claimBorrower.d.ts.map +1 -1
- package/dist/types/instructions/claimContract.d.ts +40 -0
- package/dist/types/instructions/claimContract.d.ts.map +1 -0
- package/dist/types/instructions/closeBorrower.d.ts +51 -0
- package/dist/types/instructions/closeBorrower.d.ts.map +1 -0
- package/dist/types/instructions/closeContract.d.ts +1 -12
- package/dist/types/instructions/closeContract.d.ts.map +1 -1
- package/dist/types/instructions/closeContractThread.d.ts +40 -0
- package/dist/types/instructions/closeContractThread.d.ts.map +1 -0
- package/dist/types/instructions/closeRental.d.ts +6 -14
- package/dist/types/instructions/closeRental.d.ts.map +1 -1
- package/dist/types/instructions/createBorrower.d.ts +49 -0
- package/dist/types/instructions/createBorrower.d.ts.map +1 -0
- package/dist/types/instructions/createContract.d.ts +1 -41
- package/dist/types/instructions/createContract.d.ts.map +1 -1
- package/dist/types/instructions/createContractThread.d.ts +51 -0
- package/dist/types/instructions/createContractThread.d.ts.map +1 -0
- package/dist/types/instructions/deleteBorrower.d.ts +56 -0
- package/dist/types/instructions/deleteBorrower.d.ts.map +1 -0
- package/dist/types/instructions/deleteRental.d.ts +3 -2
- package/dist/types/instructions/deleteRental.d.ts.map +1 -1
- package/dist/types/instructions/index.d.ts +29 -24
- package/dist/types/instructions/index.d.ts.map +1 -1
- package/dist/types/instructions/reserveRental.d.ts +33 -29
- package/dist/types/instructions/reserveRental.d.ts.map +1 -1
- package/dist/types/instructions/updateBorrower.d.ts +23 -29
- package/dist/types/instructions/updateBorrower.d.ts.map +1 -1
- package/dist/types/instructions/updateConfig.d.ts +0 -4
- package/dist/types/instructions/updateConfig.d.ts.map +1 -1
- package/dist/types/instructions/updateContract.d.ts +11 -33
- package/dist/types/instructions/updateContract.d.ts.map +1 -1
- package/dist/types/instructions/updateContractThread.d.ts +48 -0
- package/dist/types/instructions/updateContractThread.d.ts.map +1 -0
- package/dist/types/kit/index.d.ts +10 -3
- package/dist/types/kit/index.d.ts.map +1 -1
- package/dist/types/legacy/index.d.ts +13 -39
- package/dist/types/legacy/index.d.ts.map +1 -1
- package/dist/types/params/index.d.ts +5 -0
- package/dist/types/params/index.d.ts.map +1 -0
- package/dist/types/params/sol.d.ts +34 -0
- package/dist/types/params/sol.d.ts.map +1 -0
- package/dist/types/pda/constants.d.ts +6 -2
- package/dist/types/pda/constants.d.ts.map +1 -1
- package/dist/types/pda/index.d.ts +3 -21
- package/dist/types/pda/index.d.ts.map +1 -1
- package/dist/types/pda/srsly.d.ts +13 -15
- package/dist/types/pda/srsly.d.ts.map +1 -1
- package/dist/types/pda/thread.d.ts +17 -18
- package/dist/types/pda/thread.d.ts.map +1 -1
- package/dist/types/utils/addresses.d.ts.map +1 -1
- package/dist/types/utils/discountAuth.d.ts +4 -0
- package/dist/types/utils/discountAuth.d.ts.map +1 -1
- package/dist/types/utils/index.d.ts +1 -1
- package/dist/types/utils/index.d.ts.map +1 -1
- package/dist/types/utils/rental.d.ts +8 -66
- package/dist/types/utils/rental.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/package.json +1 -1
package/dist/cjs/pda/srsly.js
CHANGED
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.deriveContract = deriveContract;
|
|
8
|
-
exports.
|
|
8
|
+
exports.deriveActiveRental = deriveActiveRental;
|
|
9
|
+
exports.deriveQueuedRental = deriveQueuedRental;
|
|
9
10
|
exports.deriveRentalAuthority = deriveRentalAuthority;
|
|
10
11
|
exports.deriveBorrowerState = deriveBorrowerState;
|
|
11
|
-
exports.deriveOwnerState = deriveOwnerState;
|
|
12
12
|
exports.deriveConfig = deriveConfig;
|
|
13
13
|
const kit_1 = require("@solana/kit");
|
|
14
14
|
const config_1 = require("../utils/config");
|
|
@@ -42,33 +42,46 @@ async function deriveContract(fleet, programAddress) {
|
|
|
42
42
|
return pda;
|
|
43
43
|
}
|
|
44
44
|
/**
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
* Rental PDAs are now slot-based instead of borrower-based:
|
|
48
|
-
* - Slot 0: Used for initial rentals (via accept_rental)
|
|
49
|
-
* - Slot 1: Used for queued rentals (via claim_rental)
|
|
50
|
-
*
|
|
51
|
-
* This makes thread PDAs deterministic since threads derive from rental_state.
|
|
52
|
-
*
|
|
53
|
-
* @param contract - The contract public key
|
|
54
|
-
* @param slot - The rental slot number (0 or 1)
|
|
55
|
-
* @param programAddress - Optional SRSLY program address (defaults to network-specific address)
|
|
56
|
-
* @returns The derived rental PDA
|
|
45
|
+
* Internal helper to derive a rental PDA with a named seed suffix
|
|
57
46
|
*/
|
|
58
|
-
async function
|
|
47
|
+
async function deriveRentalWithSeed(contract, seedSuffix, programAddress) {
|
|
59
48
|
const contractAddress = (0, kit_1.address)(typeof contract === 'string' ? contract : contract);
|
|
60
49
|
const program = programAddress
|
|
61
50
|
? (0, kit_1.address)(typeof programAddress === 'string' ? programAddress : programAddress)
|
|
62
51
|
: (0, kit_1.address)((0, config_1.getAddresses)().srsly);
|
|
63
|
-
// Encode seeds to bytes
|
|
64
52
|
const rentalSeedBytes = textEncoder.encode(constants_1.RENTAL_SEED);
|
|
65
53
|
const contractBytes = addressEncoder.encode(contractAddress);
|
|
54
|
+
const suffixBytes = textEncoder.encode(seedSuffix);
|
|
66
55
|
const [pda] = await (0, kit_1.getProgramDerivedAddress)({
|
|
67
56
|
programAddress: program,
|
|
68
|
-
seeds: [rentalSeedBytes, contractBytes,
|
|
57
|
+
seeds: [rentalSeedBytes, contractBytes, suffixBytes],
|
|
69
58
|
});
|
|
70
59
|
return pda;
|
|
71
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* Derive the active rental PDA from contract address
|
|
63
|
+
*
|
|
64
|
+
* Seeds: ["rental_state", contract, "active"]
|
|
65
|
+
*
|
|
66
|
+
* @param contract - The contract public key
|
|
67
|
+
* @param programAddress - Optional SRSLY program address (defaults to network-specific address)
|
|
68
|
+
* @returns The derived active rental PDA
|
|
69
|
+
*/
|
|
70
|
+
async function deriveActiveRental(contract, programAddress) {
|
|
71
|
+
return deriveRentalWithSeed(contract, constants_1.ACTIVE_RENTAL_SEED, programAddress);
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Derive the queued rental PDA from contract address
|
|
75
|
+
*
|
|
76
|
+
* Seeds: ["rental_state", contract, "queued"]
|
|
77
|
+
*
|
|
78
|
+
* @param contract - The contract public key
|
|
79
|
+
* @param programAddress - Optional SRSLY program address (defaults to network-specific address)
|
|
80
|
+
* @returns The derived queued rental PDA
|
|
81
|
+
*/
|
|
82
|
+
async function deriveQueuedRental(contract, programAddress) {
|
|
83
|
+
return deriveRentalWithSeed(contract, constants_1.QUEUED_RENTAL_SEED, programAddress);
|
|
84
|
+
}
|
|
72
85
|
/**
|
|
73
86
|
* Derive the rental authority PDA
|
|
74
87
|
* @param programAddress - Optional SRSLY program address (defaults to network-specific address)
|
|
@@ -106,26 +119,6 @@ async function deriveBorrowerState(borrower, programAddress) {
|
|
|
106
119
|
});
|
|
107
120
|
return pda;
|
|
108
121
|
}
|
|
109
|
-
/**
|
|
110
|
-
* Derive the owner state PDA from an owner address
|
|
111
|
-
* @param owner - The owner public key
|
|
112
|
-
* @param programAddress - Optional SRSLY program address (defaults to network-specific address)
|
|
113
|
-
* @returns The derived owner state PDA
|
|
114
|
-
*/
|
|
115
|
-
async function deriveOwnerState(owner, programAddress) {
|
|
116
|
-
const ownerAddress = (0, kit_1.address)(typeof owner === 'string' ? owner : owner);
|
|
117
|
-
const program = programAddress
|
|
118
|
-
? (0, kit_1.address)(typeof programAddress === 'string' ? programAddress : programAddress)
|
|
119
|
-
: (0, kit_1.address)((0, config_1.getAddresses)().srsly);
|
|
120
|
-
// Encode seeds to bytes
|
|
121
|
-
const ownerStateSeedBytes = textEncoder.encode(constants_1.OWNER_STATE_SEED);
|
|
122
|
-
const ownerBytes = addressEncoder.encode(ownerAddress);
|
|
123
|
-
const [pda] = await (0, kit_1.getProgramDerivedAddress)({
|
|
124
|
-
programAddress: program,
|
|
125
|
-
seeds: [ownerStateSeedBytes, ownerBytes],
|
|
126
|
-
});
|
|
127
|
-
return pda;
|
|
128
|
-
}
|
|
129
122
|
/**
|
|
130
123
|
* Derive the config PDA
|
|
131
124
|
* @param programAddress - Optional SRSLY program address (defaults to network-specific address)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"srsly.js","sourceRoot":"","sources":["../../../src/pda/srsly.ts"],"names":[],"mappings":";AAAA;;;GAGG;;
|
|
1
|
+
{"version":3,"file":"srsly.js","sourceRoot":"","sources":["../../../src/pda/srsly.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/pda/thread.js
CHANGED
|
@@ -4,13 +4,10 @@
|
|
|
4
4
|
* @module pda/thread
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.
|
|
7
|
+
exports.deriveContractThread = deriveContractThread;
|
|
8
|
+
exports.deriveFiber = deriveFiber;
|
|
8
9
|
const kit_1 = require("@solana/kit");
|
|
9
10
|
const constants_1 = require("./constants");
|
|
10
|
-
/**
|
|
11
|
-
* Default Antegen program address (same across all networks)
|
|
12
|
-
*/
|
|
13
|
-
const DEFAULT_ANTEGEN_PROGRAM = 'AgV3xRAdyTe1wW4gTW2oAnzHiAGofsxC7jBVGGkzUQbY';
|
|
14
11
|
/**
|
|
15
12
|
* Address encoder for PDA seeds
|
|
16
13
|
*/
|
|
@@ -20,45 +17,57 @@ const addressEncoder = (0, kit_1.getAddressEncoder)();
|
|
|
20
17
|
*/
|
|
21
18
|
const textEncoder = new TextEncoder();
|
|
22
19
|
/**
|
|
23
|
-
* Derive the
|
|
20
|
+
* Derive the contract thread PDA
|
|
24
21
|
*
|
|
25
|
-
*
|
|
26
|
-
* Thread PDAs
|
|
22
|
+
* Per-contract thread used by Antegen for automated payment scheduling.
|
|
23
|
+
* Thread PDAs use seeds: [SEED_THREAD, authority, id]
|
|
24
|
+
* where id = contract address.
|
|
27
25
|
*
|
|
28
|
-
* @param
|
|
29
|
-
* @param authority - The rental authority PDA (
|
|
26
|
+
* @param contract - The contract PDA (used as the thread ID)
|
|
27
|
+
* @param authority - The rental authority PDA (thread authority)
|
|
30
28
|
* @param programAddress - Optional Antegen program address (defaults to Antegen program)
|
|
31
|
-
* @returns The derived
|
|
32
|
-
*
|
|
33
|
-
* @example
|
|
34
|
-
* ```typescript
|
|
35
|
-
* import { deriveRental, deriveRentalAuthority } from './srsly';
|
|
36
|
-
* import { deriveRentalThread } from './thread';
|
|
37
|
-
*
|
|
38
|
-
* // Derive rental (slot-based) and authority first
|
|
39
|
-
* const rental = await deriveRental(contract, 0); // slot 0
|
|
40
|
-
* const authority = await deriveRentalAuthority();
|
|
41
|
-
*
|
|
42
|
-
* // Then derive the thread (authority is required!)
|
|
43
|
-
* const thread = await deriveRentalThread(rental, authority);
|
|
44
|
-
* ```
|
|
29
|
+
* @returns The derived contract thread PDA
|
|
45
30
|
*/
|
|
46
|
-
async function
|
|
47
|
-
const
|
|
31
|
+
async function deriveContractThread(contract, authority, programAddress) {
|
|
32
|
+
const contractAddress = (0, kit_1.address)(typeof contract === 'string' ? contract : contract);
|
|
48
33
|
const authorityAddr = (0, kit_1.address)(typeof authority === 'string' ? authority : authority);
|
|
49
34
|
const program = programAddress
|
|
50
35
|
? (0, kit_1.address)(typeof programAddress === 'string' ? programAddress : programAddress)
|
|
51
|
-
: (0, kit_1.address)(
|
|
36
|
+
: (0, kit_1.address)(constants_1.ANTEGEN_THREAD_PROGRAM);
|
|
52
37
|
// Encode seeds to bytes
|
|
53
38
|
// Antegen ALWAYS uses: [SEED_THREAD, authority, id]
|
|
54
39
|
const threadSeedBytes = textEncoder.encode(constants_1.THREAD_SEED);
|
|
55
40
|
const authorityBytes = addressEncoder.encode(authorityAddr);
|
|
56
|
-
const
|
|
57
|
-
const seeds = [threadSeedBytes, authorityBytes,
|
|
41
|
+
const contractBytes = addressEncoder.encode(contractAddress);
|
|
42
|
+
const seeds = [threadSeedBytes, authorityBytes, contractBytes];
|
|
58
43
|
const [pda] = await (0, kit_1.getProgramDerivedAddress)({
|
|
59
44
|
programAddress: program,
|
|
60
45
|
seeds,
|
|
61
46
|
});
|
|
62
47
|
return pda;
|
|
63
48
|
}
|
|
49
|
+
/**
|
|
50
|
+
* Derive the fiber PDA for a thread
|
|
51
|
+
*
|
|
52
|
+
* Fiber PDAs use seeds: ["thread_fiber", thread, fiber_index (u8)]
|
|
53
|
+
*
|
|
54
|
+
* @param thread - The thread PDA
|
|
55
|
+
* @param fiberIndex - The fiber index (1 for close_rental, 2 for activate_rental)
|
|
56
|
+
* @param programAddress - Optional Antegen program address
|
|
57
|
+
* @returns The derived fiber PDA
|
|
58
|
+
*/
|
|
59
|
+
async function deriveFiber(thread, fiberIndex, programAddress) {
|
|
60
|
+
const threadAddress = (0, kit_1.address)(typeof thread === 'string' ? thread : thread);
|
|
61
|
+
const program = programAddress
|
|
62
|
+
? (0, kit_1.address)(typeof programAddress === 'string' ? programAddress : programAddress)
|
|
63
|
+
: (0, kit_1.address)(constants_1.ANTEGEN_FIBER_PROGRAM);
|
|
64
|
+
const fiberSeedBytes = textEncoder.encode(constants_1.THREAD_FIBER_SEED);
|
|
65
|
+
const threadBytes = addressEncoder.encode(threadAddress);
|
|
66
|
+
const indexBytes = new Uint8Array([fiberIndex]);
|
|
67
|
+
const [pda] = await (0, kit_1.getProgramDerivedAddress)({
|
|
68
|
+
programAddress: program,
|
|
69
|
+
seeds: [fiberSeedBytes, threadBytes, indexBytes],
|
|
70
|
+
});
|
|
71
|
+
return pda;
|
|
72
|
+
}
|
|
64
73
|
//# sourceMappingURL=thread.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"thread.js","sourceRoot":"","sources":["../../../src/pda/thread.ts"],"names":[],"mappings":";AAAA;;;GAGG;;
|
|
1
|
+
{"version":3,"file":"thread.js","sourceRoot":"","sources":["../../../src/pda/thread.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AA2BH,oDAyBC;AAYD,kCAoBC;AAlFD,qCAA4F;AAC5F,2CAA4G;AAE5G;;GAEG;AACH,MAAM,cAAc,GAAG,IAAA,uBAAiB,GAAE,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAEtC;;;;;;;;;;;GAWG;AACI,KAAK,UAAU,oBAAoB,CACxC,QAA0B,EAC1B,SAA2B,EAC3B,cAAiC;IAEjC,MAAM,eAAe,GAAG,IAAA,aAAO,EAAC,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACpF,MAAM,aAAa,GAAG,IAAA,aAAO,EAAC,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACrF,MAAM,OAAO,GAAG,cAAc;QAC5B,CAAC,CAAC,IAAA,aAAO,EAAC,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC;QAC/E,CAAC,CAAC,IAAA,aAAO,EAAC,kCAAiC,CAAC,CAAC;IAE/C,wBAAwB;IACxB,oDAAoD;IACpD,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,CAAC,uBAAW,CAAC,CAAC;IACxD,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC5D,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAE7D,MAAM,KAAK,GAAG,CAAC,eAAe,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;IAE/D,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAA,8BAAwB,EAAC;QAC3C,cAAc,EAAE,OAAO;QACvB,KAAK;KACN,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,WAAW,CAC/B,MAAwB,EACxB,UAAkB,EAClB,cAAiC;IAEjC,MAAM,aAAa,GAAG,IAAA,aAAO,EAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC5E,MAAM,OAAO,GAAG,cAAc;QAC5B,CAAC,CAAC,IAAA,aAAO,EAAC,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC;QAC/E,CAAC,CAAC,IAAA,aAAO,EAAC,iCAAgC,CAAC,CAAC;IAE9C,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,6BAAiB,CAAC,CAAC;IAC7D,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IACzD,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IAEhD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAA,8BAAwB,EAAC;QAC3C,cAAc,EAAE,OAAO;QACvB,KAAK,EAAE,CAAC,cAAc,EAAE,WAAW,EAAE,UAAU,CAAC;KACjD,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -12,10 +12,11 @@ exports.getNetworkAddresses = getNetworkAddresses;
|
|
|
12
12
|
exports.isValidProgramSet = isValidProgramSet;
|
|
13
13
|
exports.isValidNetwork = isValidNetwork;
|
|
14
14
|
const codama_1 = require("../generated/codama");
|
|
15
|
+
const constants_1 = require("../pda/constants");
|
|
15
16
|
/**
|
|
16
17
|
* Antegen program address (same across all networks)
|
|
17
18
|
*/
|
|
18
|
-
const ANTEGEN_PROGRAM =
|
|
19
|
+
const ANTEGEN_PROGRAM = constants_1.ANTEGEN_THREAD_PROGRAM;
|
|
19
20
|
/**
|
|
20
21
|
* Mainnet addresses (production Star Atlas)
|
|
21
22
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addresses.js","sourceRoot":"","sources":["../../../src/utils/addresses.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;
|
|
1
|
+
{"version":3,"file":"addresses.js","sourceRoot":"","sources":["../../../src/utils/addresses.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AA8FH,kDAUC;AAKD,kDAEC;AAQD,8CAEC;AAKD,wCAEC;AA7HD,gDAA4D;AAC5D,gDAA0D;AAmC1D;;GAEG;AACH,MAAM,eAAe,GAAG,kCAAsB,CAAC;AAE/C;;GAEG;AACH,MAAM,iBAAiB,GAAqB;IAC1C,KAAK,EAAE,8BAAqB;IAC5B,IAAI,EAAE,6CAA6C;IACnD,OAAO,EAAE,eAAe;IACxB,SAAS,EAAE,8CAA8C;IACzD,cAAc,EAAE,6CAA6C;IAC7D,MAAM,EAAE,8CAA8C;CACvD,CAAC;AAgFA,8CAAiB;AA9EnB;;GAEG;AACH,MAAM,kBAAkB,GAAqB;IAC3C,KAAK,EAAE,8BAAqB;IAC5B,IAAI,EAAE,6CAA6C;IACnD,OAAO,EAAE,eAAe;IACxB,SAAS,EAAE,8CAA8C;IACzD,cAAc,EAAE,6CAA6C;IAC7D,MAAM,EAAE,8CAA8C;CACvD,CAAC;AAqEA,gDAAkB;AAnEpB;;GAEG;AACH,MAAM,oBAAoB,GAAyC;IACjE,SAAS,EAAE,iBAAiB;IAC5B,UAAU,EAAE,kBAAkB;IAC9B,SAAS,EAAE,kBAAkB;IAC7B,UAAU,EAAE,kBAAkB;CAC/B,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,SAAgB,mBAAmB,CAAC,UAAsB;IACxD,MAAM,SAAS,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;IAEnD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,wBAAwB,UAAU,oDAAoD,CACvF,CAAC;IACJ,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,SAAgB,mBAAmB,CAAC,OAAmB;IACrD,OAAO,mBAAmB,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,UAAkB;IAClD,OAAO,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,UAAU,IAAI,UAAU,KAAK,UAAU,CAAC;AAC5F,CAAC;AAED;;GAEG;AACH,SAAgB,cAAc,CAAC,OAAe;IAC5C,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC"}
|
|
@@ -103,14 +103,16 @@ async function createDiscount(params, config) {
|
|
|
103
103
|
discountAuthority = params.discountAuthority;
|
|
104
104
|
}
|
|
105
105
|
// Create the raw discount auth
|
|
106
|
+
const contextAddr = (0, kit_1.address)(params.contextKey);
|
|
106
107
|
const raw = await (0, slyvault_1.createDiscountAuth)({
|
|
108
|
+
contextKey: contextAddr,
|
|
107
109
|
memberNonce: member.data.nonce,
|
|
108
110
|
discount: params.discount,
|
|
109
111
|
expirySlot,
|
|
110
112
|
discountAuthority,
|
|
111
113
|
});
|
|
112
114
|
// Return serialized format for API transport
|
|
113
|
-
return serializeDiscountAuth(raw);
|
|
115
|
+
return serializeDiscountAuth({ ...raw, context: contextAddr });
|
|
114
116
|
}
|
|
115
117
|
/**
|
|
116
118
|
* Deserialize a discount authorization from API format
|
|
@@ -122,6 +124,7 @@ async function createDiscount(params, config) {
|
|
|
122
124
|
*/
|
|
123
125
|
function deserializeDiscountAuth(serialized) {
|
|
124
126
|
return {
|
|
127
|
+
context: (0, kit_1.address)(serialized.context),
|
|
125
128
|
memberNonce: serialized.memberNonce,
|
|
126
129
|
discountBps: serialized.discountBps,
|
|
127
130
|
expirySlot: BigInt(serialized.expirySlot),
|
|
@@ -139,6 +142,7 @@ function deserializeDiscountAuth(serialized) {
|
|
|
139
142
|
*/
|
|
140
143
|
function serializeDiscountAuth(raw) {
|
|
141
144
|
return {
|
|
145
|
+
context: raw.context,
|
|
142
146
|
memberNonce: raw.memberNonce,
|
|
143
147
|
discountBps: raw.discountBps,
|
|
144
148
|
expirySlot: raw.expirySlot.toString(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discountAuth.js","sourceRoot":"","sources":["../../../src/utils/discountAuth.ts"],"names":[],"mappings":";AAAA;;;GAGG;;
|
|
1
|
+
{"version":3,"file":"discountAuth.js","sourceRoot":"","sources":["../../../src/utils/discountAuth.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/utils/index.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* @module utils
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.isSerializedDiscountAuth = exports.deserializeDiscountAuth = exports.serializeDiscountAuth = exports.createDiscount = exports.
|
|
7
|
+
exports.isSerializedDiscountAuth = exports.deserializeDiscountAuth = exports.serializeDiscountAuth = exports.createDiscount = exports.hasQueuedRental = exports.hasActiveRental = exports.getLookupTableAddress = exports.fetchLookupTable = exports.isRpcDebugEnabled = exports.setRpcDebug = exports.createRpc = exports.InstructionResult = exports.prepareInstructions = exports.toAddress = exports.toWeb3Instruction = exports.isAddressString = exports.isKitSigner = exports.isWeb3jsSigner = exports.validateAddress = exports.toTransactionSigner = exports.ATLASNET_ADDRESSES = exports.MAINNET_ADDRESSES = exports.isValidNetwork = exports.isValidProgramSet = exports.getNetworkAddresses = exports.getProgramAddresses = exports.getRpcUrl = exports.getAffiliateConfig = exports.getAddresses = exports.mergeConfig = exports.clearSdkConfig = exports.getSdkConfig = exports.setSdkConfig = void 0;
|
|
8
8
|
// Configuration
|
|
9
9
|
var config_1 = require("./config");
|
|
10
10
|
Object.defineProperty(exports, "setSdkConfig", { enumerable: true, get: function () { return config_1.setSdkConfig; } });
|
|
@@ -50,10 +50,8 @@ Object.defineProperty(exports, "fetchLookupTable", { enumerable: true, get: func
|
|
|
50
50
|
Object.defineProperty(exports, "getLookupTableAddress", { enumerable: true, get: function () { return lookupTable_1.getLookupTableAddress; } });
|
|
51
51
|
// Rental Utilities
|
|
52
52
|
var rental_1 = require("./rental");
|
|
53
|
-
Object.defineProperty(exports, "
|
|
54
|
-
Object.defineProperty(exports, "
|
|
55
|
-
Object.defineProperty(exports, "findExistingRentalSlot", { enumerable: true, get: function () { return rental_1.findExistingRentalSlot; } });
|
|
56
|
-
Object.defineProperty(exports, "requireExistingRentalSlot", { enumerable: true, get: function () { return rental_1.requireExistingRentalSlot; } });
|
|
53
|
+
Object.defineProperty(exports, "hasActiveRental", { enumerable: true, get: function () { return rental_1.hasActiveRental; } });
|
|
54
|
+
Object.defineProperty(exports, "hasQueuedRental", { enumerable: true, get: function () { return rental_1.hasQueuedRental; } });
|
|
57
55
|
// Discount Authorization Utilities
|
|
58
56
|
var discountAuth_1 = require("./discountAuth");
|
|
59
57
|
Object.defineProperty(exports, "createDiscount", { enumerable: true, get: function () { return discountAuth_1.createDiscount; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,gBAAgB;AAChB,mCAWkB;AAVhB,sGAAA,YAAY,OAAA;AACZ,sGAAA,YAAY,OAAA;AACZ,wGAAA,cAAc,OAAA;AACd,qGAAA,WAAW,OAAA;AACX,sGAAA,YAAY,OAAA;AACZ,4GAAA,kBAAkB,OAAA;AAClB,mGAAA,SAAS,OAAA;AAMX,oBAAoB;AACpB,yCAUqB;AATnB,gHAAA,mBAAmB,OAAA;AACnB,gHAAA,mBAAmB,OAAA;AACnB,8GAAA,iBAAiB,OAAA;AACjB,2GAAA,cAAc,OAAA;AACd,8GAAA,iBAAiB,OAAA;AACjB,+GAAA,kBAAkB,OAAA;AAMpB,mBAAmB;AACnB,mCAOkB;AANhB,6GAAA,mBAAmB,OAAA;AACnB,yGAAA,eAAe,OAAA;AACf,wGAAA,cAAc,OAAA;AACd,qGAAA,WAAW,OAAA;AACX,yGAAA,eAAe,OAAA;AAIjB,wBAAwB;AACxB,mCAMkB;AALhB,2GAAA,iBAAiB,OAAA;AACjB,mGAAA,SAAS,OAAA;AAMX,wBAAwB;AACxB,+CAGwB;AAFtB,mHAAA,mBAAmB,OAAA;AAIrB,qBAAqB;AACrB,yDAG6B;AAF3B,sHAAA,iBAAiB,OAAA;AAInB,gBAAgB;AAChB,6BAAkE;AAAzD,gGAAA,SAAS,OAAA;AAAE,kGAAA,WAAW,OAAA;AAAE,wGAAA,iBAAiB,OAAA;AAElD,iCAAiC;AACjC,6CAIuB;AAHrB,+GAAA,gBAAgB,OAAA;AAChB,oHAAA,qBAAqB,OAAA;AAIvB,mBAAmB;AACnB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,gBAAgB;AAChB,mCAWkB;AAVhB,sGAAA,YAAY,OAAA;AACZ,sGAAA,YAAY,OAAA;AACZ,wGAAA,cAAc,OAAA;AACd,qGAAA,WAAW,OAAA;AACX,sGAAA,YAAY,OAAA;AACZ,4GAAA,kBAAkB,OAAA;AAClB,mGAAA,SAAS,OAAA;AAMX,oBAAoB;AACpB,yCAUqB;AATnB,gHAAA,mBAAmB,OAAA;AACnB,gHAAA,mBAAmB,OAAA;AACnB,8GAAA,iBAAiB,OAAA;AACjB,2GAAA,cAAc,OAAA;AACd,8GAAA,iBAAiB,OAAA;AACjB,+GAAA,kBAAkB,OAAA;AAMpB,mBAAmB;AACnB,mCAOkB;AANhB,6GAAA,mBAAmB,OAAA;AACnB,yGAAA,eAAe,OAAA;AACf,wGAAA,cAAc,OAAA;AACd,qGAAA,WAAW,OAAA;AACX,yGAAA,eAAe,OAAA;AAIjB,wBAAwB;AACxB,mCAMkB;AALhB,2GAAA,iBAAiB,OAAA;AACjB,mGAAA,SAAS,OAAA;AAMX,wBAAwB;AACxB,+CAGwB;AAFtB,mHAAA,mBAAmB,OAAA;AAIrB,qBAAqB;AACrB,yDAG6B;AAF3B,sHAAA,iBAAiB,OAAA;AAInB,gBAAgB;AAChB,6BAAkE;AAAzD,gGAAA,SAAS,OAAA;AAAE,kGAAA,WAAW,OAAA;AAAE,wGAAA,iBAAiB,OAAA;AAElD,iCAAiC;AACjC,6CAIuB;AAHrB,+GAAA,gBAAgB,OAAA;AAChB,oHAAA,qBAAqB,OAAA;AAIvB,mBAAmB;AACnB,mCAGkB;AAFhB,yGAAA,eAAe,OAAA;AACf,yGAAA,eAAe,OAAA;AAGjB,mCAAmC;AACnC,+CASwB;AARtB,8GAAA,cAAc,OAAA;AACd,qHAAA,qBAAqB,OAAA;AACrB,uHAAA,uBAAuB,OAAA;AACvB,wHAAA,wBAAwB,OAAA"}
|
package/dist/cjs/utils/rental.js
CHANGED
|
@@ -4,132 +4,46 @@
|
|
|
4
4
|
* @module utils/rental
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.
|
|
8
|
-
exports.
|
|
9
|
-
exports.findBorrowerRentalSlot = findBorrowerRentalSlot;
|
|
10
|
-
exports.requireBorrowerRentalSlot = requireBorrowerRentalSlot;
|
|
7
|
+
exports.hasActiveRental = hasActiveRental;
|
|
8
|
+
exports.hasQueuedRental = hasQueuedRental;
|
|
11
9
|
const accounts_1 = require("../generated/codama/accounts");
|
|
10
|
+
const types_1 = require("../generated/codama/types");
|
|
12
11
|
const srsly_1 = require("../pda/srsly");
|
|
13
12
|
const rpc_1 = require("./rpc");
|
|
14
|
-
// System program ID constant
|
|
15
|
-
const SYSTEM_PROGRAM_ID = '11111111111111111111111111111111';
|
|
16
13
|
/**
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
* Uses the contract's rentalSlot0/rentalSlot1 fields to determine which slot has a rental.
|
|
20
|
-
* If both slots have rentals, returns the active slot.
|
|
21
|
-
* If only one slot has a rental, returns that slot.
|
|
22
|
-
*
|
|
23
|
-
* @param contractData - Object with rentalSlot0, rentalSlot1, and activeSlot fields
|
|
24
|
-
* @returns The slot number (0 or 1) if found, undefined if no rentals exist
|
|
25
|
-
*
|
|
26
|
-
* @example
|
|
27
|
-
* ```typescript
|
|
28
|
-
* const contract = await fetchContract(contractAddress, rpcUrl);
|
|
29
|
-
* const slot = findExistingRentalSlot(contract.data);
|
|
30
|
-
* if (slot !== undefined) {
|
|
31
|
-
* console.log(`Found rental at slot ${slot}`);
|
|
32
|
-
* }
|
|
33
|
-
* ```
|
|
34
|
-
*/
|
|
35
|
-
function findExistingRentalSlot(contractData) {
|
|
36
|
-
const slot0HasRental = contractData.rentalSlot0 !== SYSTEM_PROGRAM_ID;
|
|
37
|
-
const slot1HasRental = contractData.rentalSlot1 !== SYSTEM_PROGRAM_ID;
|
|
38
|
-
if (slot0HasRental && slot1HasRental) {
|
|
39
|
-
// Both slots have rentals, return the active one
|
|
40
|
-
return contractData.activeSlot;
|
|
41
|
-
}
|
|
42
|
-
else if (slot0HasRental) {
|
|
43
|
-
return 0;
|
|
44
|
-
}
|
|
45
|
-
else if (slot1HasRental) {
|
|
46
|
-
return 1;
|
|
47
|
-
}
|
|
48
|
-
return undefined;
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Find which slot has an existing rental, throwing if none found.
|
|
52
|
-
*
|
|
53
|
-
* @param contractData - Object with rentalSlot0, rentalSlot1, and activeSlot fields
|
|
54
|
-
* @returns The slot number (0 or 1)
|
|
55
|
-
* @throws Error if no rental exists on this contract
|
|
56
|
-
*/
|
|
57
|
-
function requireExistingRentalSlot(contractData) {
|
|
58
|
-
const slot = findExistingRentalSlot(contractData);
|
|
59
|
-
if (slot === undefined) {
|
|
60
|
-
throw new Error('No rental exists on this contract');
|
|
61
|
-
}
|
|
62
|
-
return slot;
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* Find which rental slot belongs to a borrower on a contract.
|
|
66
|
-
*
|
|
67
|
-
* Checks both slot 0 and slot 1 to find the rental that belongs to the borrower.
|
|
68
|
-
* Useful for operations like cancel where the borrower can only act on their own rental.
|
|
14
|
+
* Check if a contract has an active rental.
|
|
69
15
|
*
|
|
70
16
|
* @param contract - The contract address
|
|
71
|
-
* @param
|
|
72
|
-
* @
|
|
73
|
-
* @returns The slot number (0 or 1) if found, undefined if no rental exists for this borrower
|
|
74
|
-
*
|
|
75
|
-
* @example
|
|
76
|
-
* ```typescript
|
|
77
|
-
* const slot = await findBorrowerRentalSlot(contractAddress, borrowerAddress, rpcUrl);
|
|
78
|
-
* if (slot !== undefined) {
|
|
79
|
-
* console.log(`Borrower has rental at slot ${slot}`);
|
|
80
|
-
* }
|
|
81
|
-
* ```
|
|
17
|
+
* @param rpcUrl - RPC URL to use for fetching rental state
|
|
18
|
+
* @returns true if active rental exists and has Active status
|
|
82
19
|
*/
|
|
83
|
-
async function
|
|
20
|
+
async function hasActiveRental(contract, rpcUrl) {
|
|
84
21
|
const rpc = (0, rpc_1.createRpc)(rpcUrl);
|
|
85
|
-
// Address type is a branded string, so we can compare directly
|
|
86
|
-
const borrowerStr = typeof borrower === 'string' ? borrower : borrower;
|
|
87
|
-
// Try slot 0 first
|
|
88
|
-
try {
|
|
89
|
-
const rental0 = await (0, srsly_1.deriveRental)(contract, 0);
|
|
90
|
-
const rentalState0 = await (0, accounts_1.fetchRentalState)(rpc, rental0);
|
|
91
|
-
if (rentalState0.data.borrower === borrowerStr) {
|
|
92
|
-
return 0;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
catch {
|
|
96
|
-
// slot 0 doesn't exist or fetch failed
|
|
97
|
-
}
|
|
98
|
-
// Try slot 1
|
|
99
22
|
try {
|
|
100
|
-
const
|
|
101
|
-
const
|
|
102
|
-
|
|
103
|
-
return 1;
|
|
104
|
-
}
|
|
23
|
+
const activeRentalPda = await (0, srsly_1.deriveActiveRental)(contract);
|
|
24
|
+
const rentalState = await (0, accounts_1.fetchRentalState)(rpc, activeRentalPda);
|
|
25
|
+
return rentalState.data.status === types_1.RentalStatus.Active;
|
|
105
26
|
}
|
|
106
27
|
catch {
|
|
107
|
-
|
|
28
|
+
return false;
|
|
108
29
|
}
|
|
109
|
-
return undefined;
|
|
110
30
|
}
|
|
111
31
|
/**
|
|
112
|
-
*
|
|
113
|
-
*
|
|
114
|
-
* Same as findBorrowerRentalSlot but throws an error if no rental is found.
|
|
32
|
+
* Check if a contract has a queued rental reservation.
|
|
115
33
|
*
|
|
116
34
|
* @param contract - The contract address
|
|
117
|
-
* @param
|
|
118
|
-
* @
|
|
119
|
-
* @returns The slot number (0 or 1)
|
|
120
|
-
* @throws Error if no rental is found for this borrower
|
|
121
|
-
*
|
|
122
|
-
* @example
|
|
123
|
-
* ```typescript
|
|
124
|
-
* const slot = await requireBorrowerRentalSlot(contractAddress, borrowerAddress, rpcUrl);
|
|
125
|
-
* // Will throw if borrower has no rental on this contract
|
|
126
|
-
* ```
|
|
35
|
+
* @param rpcUrl - RPC URL to use for fetching rental state
|
|
36
|
+
* @returns true if queued rental exists and has Queued status
|
|
127
37
|
*/
|
|
128
|
-
async function
|
|
129
|
-
const
|
|
130
|
-
|
|
131
|
-
|
|
38
|
+
async function hasQueuedRental(contract, rpcUrl) {
|
|
39
|
+
const rpc = (0, rpc_1.createRpc)(rpcUrl);
|
|
40
|
+
try {
|
|
41
|
+
const queuedRentalPda = await (0, srsly_1.deriveQueuedRental)(contract);
|
|
42
|
+
const rentalState = await (0, accounts_1.fetchRentalState)(rpc, queuedRentalPda);
|
|
43
|
+
return rentalState.data.status === types_1.RentalStatus.Queued;
|
|
44
|
+
}
|
|
45
|
+
catch {
|
|
46
|
+
return false;
|
|
132
47
|
}
|
|
133
|
-
return slot;
|
|
134
48
|
}
|
|
135
49
|
//# sourceMappingURL=rental.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rental.js","sourceRoot":"","sources":["../../../src/utils/rental.ts"],"names":[],"mappings":";AAAA;;;GAGG;;
|
|
1
|
+
{"version":3,"file":"rental.js","sourceRoot":"","sources":["../../../src/utils/rental.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AAeH,0CAYC;AASD,0CAYC;AA7CD,2DAAgE;AAChE,qDAAyD;AACzD,wCAAsE;AACtE,+BAAkC;AAElC;;;;;;GAMG;AACI,KAAK,UAAU,eAAe,CACnC,QAA0B,EAC1B,MAAc;IAEd,MAAM,GAAG,GAAG,IAAA,eAAS,EAAC,MAAM,CAAC,CAAC;IAC9B,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,MAAM,IAAA,0BAAkB,EAAC,QAAQ,CAAC,CAAC;QAC3D,MAAM,WAAW,GAAG,MAAM,IAAA,2BAAgB,EAAC,GAAG,EAAE,eAAe,CAAC,CAAC;QACjE,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,KAAK,oBAAY,CAAC,MAAM,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,eAAe,CACnC,QAA0B,EAC1B,MAAc;IAEd,MAAM,GAAG,GAAG,IAAA,eAAS,EAAC,MAAM,CAAC,CAAC;IAC9B,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,MAAM,IAAA,0BAAkB,EAAC,QAAQ,CAAC,CAAC;QAC3D,MAAM,WAAW,GAAG,MAAM,IAAA,2BAAgB,EAAC,GAAG,EAAE,eAAe,CAAC,CAAC;QACjE,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,KAAK,oBAAY,CAAC,MAAM,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
|
package/dist/cjs/version.js
CHANGED
|
@@ -3,5 +3,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.VERSION = void 0;
|
|
4
4
|
// Auto-generated from package.json - DO NOT EDIT
|
|
5
5
|
// Run "pnpm run generate:version" to update
|
|
6
|
-
exports.VERSION = '3.0.0-beta.
|
|
6
|
+
exports.VERSION = '3.0.0-beta.22';
|
|
7
7
|
//# sourceMappingURL=version.js.map
|
|
@@ -94,11 +94,18 @@ export async function fetchAllBorrowers(rpcUrl) {
|
|
|
94
94
|
const base64Encoder = getBase64Encoder();
|
|
95
95
|
const decoder = getBorrowerStateDecoder();
|
|
96
96
|
const accounts = Array.isArray(response) ? response : response.value;
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
97
|
+
const results = [];
|
|
98
|
+
for (const account of accounts) {
|
|
99
|
+
try {
|
|
100
|
+
const bytes = base64Encoder.encode(account.account.data[0]);
|
|
101
|
+
const decoded = decoder.decode(bytes);
|
|
102
|
+
results.push({ data: decoded, address: account.pubkey });
|
|
103
|
+
}
|
|
104
|
+
catch {
|
|
105
|
+
// Skip accounts that fail to decode
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
return results;
|
|
102
109
|
}
|
|
103
110
|
catch (error) {
|
|
104
111
|
throw new Error(`Failed to fetch all borrower states: ${error.message}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"borrower.js","sourceRoot":"","sources":["../../../src/accounts/borrower.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAgB,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAsB,4BAA4B,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAC7I,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAE7C;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,OAAyB,EACzB,MAAe;IAEf,0CAA0C;IAC1C,MAAM,cAAc,GAAG,MAAM,IAAI,SAAS,EAAE,CAAC;IAC7C,MAAM,GAAG,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC;IAEtC,iEAAiE;IACjE,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,GAAG,EAAE,OAAkB,CAAC,CAAC;QAClE,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,WAAgB,EAAE,CAAC;QAC1B,gEAAgE;QAChE,IAAI,CAAC;YACH,MAAM,cAAc,GAAG,MAAM,mBAAmB,CAAC,OAAiB,CAAC,CAAC;YACpE,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YAC9D,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,YAAiB,EAAE,CAAC;YAC3B,oDAAoD;YACpD,MAAM,IAAI,KAAK,CACb,yDAAyD,OAAO,oBAAoB;gBACpF,UAAU,YAAY,CAAC,OAAO,EAAE,CACjC,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAe;IAEf,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,MAAM,IAAI,SAAS,EAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC;QAEtC,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,4BAA4B,CAAC,CAAC,CAAC;QAEvF,MAAM,QAAQ,GAAG,MAAO,GAAW,CAAC,kBAAkB,CACpD,qBAAqB,EACrB;YACE,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE;gBACP;oBACE,MAAM,EAAE;wBACN,MAAM,EAAE,EAAE;wBACV,KAAK,EAAE,mBAAmB;wBAC1B,QAAQ,EAAE,QAAQ;qBACnB;iBACF;aACF;SACF,CACF,CAAC,IAAI,EAAE,CAAC;QAET,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,uBAAuB,EAAE,CAAC;QAE1C,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QACrE,
|
|
1
|
+
{"version":3,"file":"borrower.js","sourceRoot":"","sources":["../../../src/accounts/borrower.ts"],"names":[],"mappings":"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"}
|
|
@@ -81,11 +81,18 @@ export async function fetchAllContracts(rpcUrl) {
|
|
|
81
81
|
const decoder = getContractStateDecoder();
|
|
82
82
|
// @solana/kit returns the array directly, not wrapped in { value }
|
|
83
83
|
const accounts = Array.isArray(response) ? response : response.value;
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
84
|
+
const results = [];
|
|
85
|
+
for (const account of accounts) {
|
|
86
|
+
try {
|
|
87
|
+
const bytes = base64Encoder.encode(account.account.data[0]);
|
|
88
|
+
const decoded = decoder.decode(bytes);
|
|
89
|
+
results.push({ data: decoded, address: account.pubkey });
|
|
90
|
+
}
|
|
91
|
+
catch {
|
|
92
|
+
// Skip accounts that fail to decode
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
return results;
|
|
89
96
|
}
|
|
90
97
|
catch (error) {
|
|
91
98
|
throw new Error(`Failed to fetch all contract states: ${error.message}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../../src/accounts/contract.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAgB,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAsB,4BAA4B,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAC7I,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,eAAiC,EACjC,MAAe;IAEf,IAAI,CAAC;QACH,0CAA0C;QAC1C,MAAM,cAAc,GAAG,MAAM,IAAI,SAAS,EAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC;QAEtC,sCAAsC;QACtC,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,GAAG,EAAE,eAA0B,CAAC,CAAC;QAE1E,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,qCAAqC,eAAe,KAAK,KAAK,CAAC,OAAO,EAAE,CACzE,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAe;IAEf,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,MAAM,IAAI,SAAS,EAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC;QAEtC,gFAAgF;QAChF,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,4BAA4B,CAAC,CAAC,CAAC;QAEvF,kEAAkE;QAClE,MAAM,QAAQ,GAAG,MAAO,GAAW,CAAC,kBAAkB,CACpD,qBAAqB,EACrB;YACE,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE;gBACP;oBACE,MAAM,EAAE;wBACN,MAAM,EAAE,EAAE;wBACV,KAAK,EAAE,mBAAmB;wBAC1B,QAAQ,EAAE,QAAQ;qBACnB;iBACF;aACF;SACF,CACF,CAAC,IAAI,EAAE,CAAC;QAET,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,uBAAuB,EAAE,CAAC;QAE1C,mEAAmE;QACnE,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QACrE,
|
|
1
|
+
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../../src/accounts/contract.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAgB,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAsB,4BAA4B,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAC7I,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,eAAiC,EACjC,MAAe;IAEf,IAAI,CAAC;QACH,0CAA0C;QAC1C,MAAM,cAAc,GAAG,MAAM,IAAI,SAAS,EAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC;QAEtC,sCAAsC;QACtC,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,GAAG,EAAE,eAA0B,CAAC,CAAC;QAE1E,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,qCAAqC,eAAe,KAAK,KAAK,CAAC,OAAO,EAAE,CACzE,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAe;IAEf,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,MAAM,IAAI,SAAS,EAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC;QAEtC,gFAAgF;QAChF,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,4BAA4B,CAAC,CAAC,CAAC;QAEvF,kEAAkE;QAClE,MAAM,QAAQ,GAAG,MAAO,GAAW,CAAC,kBAAkB,CACpD,qBAAqB,EACrB;YACE,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE;gBACP;oBACE,MAAM,EAAE;wBACN,MAAM,EAAE,EAAE;wBACV,KAAK,EAAE,mBAAmB;wBAC1B,QAAQ,EAAE,QAAQ;qBACnB;iBACF;aACF;SACF,CACF,CAAC,IAAI,EAAE,CAAC;QAET,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,uBAAuB,EAAE,CAAC;QAE1C,mEAAmE;QACnE,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QACrE,MAAM,OAAO,GAAqD,EAAE,CAAC;QACrE,KAAK,MAAM,OAAO,IAAI,QAAiB,EAAE,CAAC;YACxC,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5D,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACtC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,MAAiB,EAAE,CAAC,CAAC;YACtE,CAAC;YAAC,MAAM,CAAC;gBACP,oCAAoC;YACtC,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,wCAAwC,KAAK,CAAC,OAAO,EAAE,CACxD,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/accounts/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC"}
|