@sly-rentals/core 0.1.0
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/LICENSE +21 -0
- package/README.md +235 -0
- package/dist/api.json +50992 -0
- package/dist/cjs/accounts/borrower.js +120 -0
- package/dist/cjs/accounts/borrower.js.map +1 -0
- package/dist/cjs/accounts/config.js +97 -0
- package/dist/cjs/accounts/config.js.map +1 -0
- package/dist/cjs/accounts/contract.js +107 -0
- package/dist/cjs/accounts/contract.js.map +1 -0
- package/dist/cjs/accounts/fleet.js +47 -0
- package/dist/cjs/accounts/fleet.js.map +1 -0
- package/dist/cjs/accounts/index.js +24 -0
- package/dist/cjs/accounts/index.js.map +1 -0
- package/dist/cjs/accounts/member.js +16 -0
- package/dist/cjs/accounts/member.js.map +1 -0
- package/dist/cjs/accounts/rental.js +108 -0
- package/dist/cjs/accounts/rental.js.map +1 -0
- package/dist/cjs/accounts/thread.js +222 -0
- package/dist/cjs/accounts/thread.js.map +1 -0
- package/dist/cjs/audit/audit.js +398 -0
- package/dist/cjs/audit/audit.js.map +1 -0
- package/dist/cjs/audit/events.js +273 -0
- package/dist/cjs/audit/events.js.map +1 -0
- package/dist/cjs/audit/index.js +8 -0
- package/dist/cjs/audit/index.js.map +1 -0
- package/dist/cjs/audit/types.js +3 -0
- package/dist/cjs/audit/types.js.map +1 -0
- package/dist/cjs/cost/constants.js +34 -0
- package/dist/cjs/cost/constants.js.map +1 -0
- package/dist/cjs/cost/estimate.js +123 -0
- package/dist/cjs/cost/estimate.js.map +1 -0
- package/dist/cjs/cost/estimate.test.js +145 -0
- package/dist/cjs/cost/estimate.test.js.map +1 -0
- package/dist/cjs/cost/index.js +20 -0
- package/dist/cjs/cost/index.js.map +1 -0
- package/dist/cjs/cost/sizes.js +21 -0
- package/dist/cjs/cost/sizes.js.map +1 -0
- package/dist/cjs/generated/codama/accounts/borrowerState.js +80 -0
- package/dist/cjs/generated/codama/accounts/borrowerState.js.map +1 -0
- package/dist/cjs/generated/codama/accounts/configState.js +114 -0
- package/dist/cjs/generated/codama/accounts/configState.js.map +1 -0
- package/dist/cjs/generated/codama/accounts/contractState.js +115 -0
- package/dist/cjs/generated/codama/accounts/contractState.js.map +1 -0
- package/dist/cjs/generated/codama/accounts/index.js +28 -0
- package/dist/cjs/generated/codama/accounts/index.js.map +1 -0
- package/dist/cjs/generated/codama/accounts/rentalState.js +105 -0
- package/dist/cjs/generated/codama/accounts/rentalState.js.map +1 -0
- package/dist/cjs/generated/codama/errors/index.js +25 -0
- package/dist/cjs/generated/codama/errors/index.js.map +1 -0
- package/dist/cjs/generated/codama/errors/srsly.js +312 -0
- package/dist/cjs/generated/codama/errors/srsly.js.map +1 -0
- package/dist/cjs/generated/codama/index.js +29 -0
- package/dist/cjs/generated/codama/index.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/acceptRental.js +375 -0
- package/dist/cjs/generated/codama/instructions/acceptRental.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/cancelRental.js +261 -0
- package/dist/cjs/generated/codama/instructions/cancelRental.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/claimBorrower.js +217 -0
- package/dist/cjs/generated/codama/instructions/claimBorrower.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/claimContract.js +195 -0
- package/dist/cjs/generated/codama/instructions/claimContract.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/closeBorrower.js +169 -0
- package/dist/cjs/generated/codama/instructions/closeBorrower.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/closeContract.js +286 -0
- package/dist/cjs/generated/codama/instructions/closeContract.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/closeContractThread.js +164 -0
- package/dist/cjs/generated/codama/instructions/closeContractThread.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/closeRental.js +332 -0
- package/dist/cjs/generated/codama/instructions/closeRental.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/createBorrower.js +188 -0
- package/dist/cjs/generated/codama/instructions/createBorrower.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/createConfig.js +236 -0
- package/dist/cjs/generated/codama/instructions/createConfig.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/createContract.js +281 -0
- package/dist/cjs/generated/codama/instructions/createContract.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/createContractThread.js +309 -0
- package/dist/cjs/generated/codama/instructions/createContractThread.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/deleteBorrower.js +109 -0
- package/dist/cjs/generated/codama/instructions/deleteBorrower.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/deleteConfig.js +187 -0
- package/dist/cjs/generated/codama/instructions/deleteConfig.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/deleteContract.js +109 -0
- package/dist/cjs/generated/codama/instructions/deleteContract.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/deleteContractThread.js +170 -0
- package/dist/cjs/generated/codama/instructions/deleteContractThread.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/deleteRental.js +109 -0
- package/dist/cjs/generated/codama/instructions/deleteRental.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/index.js +49 -0
- package/dist/cjs/generated/codama/instructions/index.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/invalidateRental.js +150 -0
- package/dist/cjs/generated/codama/instructions/invalidateRental.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/processContract.js +213 -0
- package/dist/cjs/generated/codama/instructions/processContract.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/releaseRental.js +148 -0
- package/dist/cjs/generated/codama/instructions/releaseRental.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/reserveRental.js +323 -0
- package/dist/cjs/generated/codama/instructions/reserveRental.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/setDelegate.js +74 -0
- package/dist/cjs/generated/codama/instructions/setDelegate.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/updateConfig.js +132 -0
- package/dist/cjs/generated/codama/instructions/updateConfig.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/updateContract.js +126 -0
- package/dist/cjs/generated/codama/instructions/updateContract.js.map +1 -0
- package/dist/cjs/generated/codama/instructions/updateContractThread.js +168 -0
- package/dist/cjs/generated/codama/instructions/updateContractThread.js.map +1 -0
- package/dist/cjs/generated/codama/programs/index.js +25 -0
- package/dist/cjs/generated/codama/programs/index.js.map +1 -0
- package/dist/cjs/generated/codama/programs/srsly.js +145 -0
- package/dist/cjs/generated/codama/programs/srsly.js.map +1 -0
- package/dist/cjs/generated/codama/shared/index.js +88 -0
- package/dist/cjs/generated/codama/shared/index.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/combatStats.js +49 -0
- package/dist/cjs/generated/codama/types/combatStats.js.map +1 -0
- package/dist/cjs/generated/codama/types/feesPaid.js +33 -0
- package/dist/cjs/generated/codama/types/feesPaid.js.map +1 -0
- package/dist/cjs/generated/codama/types/fleet.js +74 -0
- package/dist/cjs/generated/codama/types/fleet.js.map +1 -0
- package/dist/cjs/generated/codama/types/index.js +43 -0
- package/dist/cjs/generated/codama/types/index.js.map +1 -0
- 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/ownerPaid.js +31 -0
- package/dist/cjs/generated/codama/types/ownerPaid.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/rentalCancelled.js +39 -0
- package/dist/cjs/generated/codama/types/rentalCancelled.js.map +1 -0
- package/dist/cjs/generated/codama/types/rentalClosed.js +37 -0
- package/dist/cjs/generated/codama/types/rentalClosed.js.map +1 -0
- package/dist/cjs/generated/codama/types/rentalSettled.js +35 -0
- package/dist/cjs/generated/codama/types/rentalSettled.js.map +1 -0
- package/dist/cjs/generated/codama/types/rentalStatus.js +32 -0
- package/dist/cjs/generated/codama/types/rentalStatus.js.map +1 -0
- package/dist/cjs/generated/codama/types/schedule.js +63 -0
- package/dist/cjs/generated/codama/types/schedule.js.map +1 -0
- 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 +34 -0
- package/dist/cjs/generated/codama/types/shipStats.js.map +1 -0
- package/dist/cjs/generated/codama/types/signal.js +60 -0
- package/dist/cjs/generated/codama/types/signal.js.map +1 -0
- package/dist/cjs/generated/codama/types/thread.js +62 -0
- package/dist/cjs/generated/codama/types/thread.js.map +1 -0
- package/dist/cjs/generated/codama/types/trigger.js +101 -0
- package/dist/cjs/generated/codama/types/trigger.js.map +1 -0
- package/dist/cjs/idl/srsly.json +4747 -0
- package/dist/cjs/index.js +28 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/instructions/acceptRental.js +245 -0
- package/dist/cjs/instructions/acceptRental.js.map +1 -0
- package/dist/cjs/instructions/approveAffiliate.js +11 -0
- package/dist/cjs/instructions/approveAffiliate.js.map +1 -0
- package/dist/cjs/instructions/cancelRental.js +101 -0
- package/dist/cjs/instructions/cancelRental.js.map +1 -0
- package/dist/cjs/instructions/claimBorrower.js +88 -0
- package/dist/cjs/instructions/claimBorrower.js.map +1 -0
- package/dist/cjs/instructions/claimContract.js +54 -0
- package/dist/cjs/instructions/claimContract.js.map +1 -0
- package/dist/cjs/instructions/closeBorrower.js +51 -0
- package/dist/cjs/instructions/closeBorrower.js.map +1 -0
- package/dist/cjs/instructions/closeContract.js +235 -0
- package/dist/cjs/instructions/closeContract.js.map +1 -0
- package/dist/cjs/instructions/closeContractThread.js +61 -0
- package/dist/cjs/instructions/closeContractThread.js.map +1 -0
- package/dist/cjs/instructions/closeRental.js +136 -0
- package/dist/cjs/instructions/closeRental.js.map +1 -0
- package/dist/cjs/instructions/createAffiliate.js +68 -0
- package/dist/cjs/instructions/createAffiliate.js.map +1 -0
- package/dist/cjs/instructions/createBorrower.js +44 -0
- package/dist/cjs/instructions/createBorrower.js.map +1 -0
- package/dist/cjs/instructions/createConfig.js +81 -0
- package/dist/cjs/instructions/createConfig.js.map +1 -0
- package/dist/cjs/instructions/createContract.js +146 -0
- package/dist/cjs/instructions/createContract.js.map +1 -0
- package/dist/cjs/instructions/createContractThread.js +98 -0
- package/dist/cjs/instructions/createContractThread.js.map +1 -0
- package/dist/cjs/instructions/deleteBorrower.js +57 -0
- package/dist/cjs/instructions/deleteBorrower.js.map +1 -0
- package/dist/cjs/instructions/deleteConfig.js +77 -0
- package/dist/cjs/instructions/deleteConfig.js.map +1 -0
- package/dist/cjs/instructions/deleteContract.js +76 -0
- package/dist/cjs/instructions/deleteContract.js.map +1 -0
- package/dist/cjs/instructions/deleteContractThread.js +62 -0
- package/dist/cjs/instructions/deleteContractThread.js.map +1 -0
- package/dist/cjs/instructions/deleteRental.js +73 -0
- package/dist/cjs/instructions/deleteRental.js.map +1 -0
- package/dist/cjs/instructions/index.js +49 -0
- package/dist/cjs/instructions/index.js.map +1 -0
- package/dist/cjs/instructions/invalidateRental.js +87 -0
- package/dist/cjs/instructions/invalidateRental.js.map +1 -0
- package/dist/cjs/instructions/releaseRental.js +87 -0
- package/dist/cjs/instructions/releaseRental.js.map +1 -0
- package/dist/cjs/instructions/removeAffiliate.js +11 -0
- package/dist/cjs/instructions/removeAffiliate.js.map +1 -0
- package/dist/cjs/instructions/reserveRental.js +174 -0
- package/dist/cjs/instructions/reserveRental.js.map +1 -0
- package/dist/cjs/instructions/setDelegate.js +67 -0
- package/dist/cjs/instructions/setDelegate.js.map +1 -0
- package/dist/cjs/instructions/updateAffiliate.js +55 -0
- package/dist/cjs/instructions/updateAffiliate.js.map +1 -0
- package/dist/cjs/instructions/updateConfig.js +94 -0
- package/dist/cjs/instructions/updateConfig.js.map +1 -0
- package/dist/cjs/instructions/updateContract.js +98 -0
- package/dist/cjs/instructions/updateContract.js.map +1 -0
- package/dist/cjs/instructions/updateContractThread.js +56 -0
- package/dist/cjs/instructions/updateContractThread.js.map +1 -0
- package/dist/cjs/kit/index.js +69 -0
- package/dist/cjs/kit/index.js.map +1 -0
- package/dist/cjs/legacy/index.js +121 -0
- package/dist/cjs/legacy/index.js.map +1 -0
- package/dist/cjs/package.json +78 -0
- package/dist/cjs/params/amount.js +126 -0
- package/dist/cjs/params/amount.js.map +1 -0
- package/dist/cjs/params/duration.js +120 -0
- package/dist/cjs/params/duration.js.map +1 -0
- package/dist/cjs/params/index.js +21 -0
- package/dist/cjs/params/index.js.map +1 -0
- package/dist/cjs/params/schedule.js +164 -0
- package/dist/cjs/params/schedule.js.map +1 -0
- package/dist/cjs/params/sol.js +76 -0
- package/dist/cjs/params/sol.js.map +1 -0
- package/dist/cjs/pda/constants.js +78 -0
- package/dist/cjs/pda/constants.js.map +1 -0
- package/dist/cjs/pda/index.js +64 -0
- package/dist/cjs/pda/index.js.map +1 -0
- package/dist/cjs/pda/lookupTable.js +58 -0
- package/dist/cjs/pda/lookupTable.js.map +1 -0
- package/dist/cjs/pda/sage.js +160 -0
- package/dist/cjs/pda/sage.js.map +1 -0
- package/dist/cjs/pda/slyvault.js +12 -0
- package/dist/cjs/pda/slyvault.js.map +1 -0
- package/dist/cjs/pda/srsly.js +130 -0
- package/dist/cjs/pda/srsly.js.map +1 -0
- package/dist/cjs/pda/thread.js +74 -0
- package/dist/cjs/pda/thread.js.map +1 -0
- package/dist/cjs/pda/token.js +63 -0
- package/dist/cjs/pda/token.js.map +1 -0
- package/dist/cjs/utils/addresses.js +131 -0
- package/dist/cjs/utils/addresses.js.map +1 -0
- package/dist/cjs/utils/bidMath.js +150 -0
- package/dist/cjs/utils/bidMath.js.map +1 -0
- package/dist/cjs/utils/config.js +212 -0
- package/dist/cjs/utils/config.js.map +1 -0
- package/dist/cjs/utils/discountAuth.js +78 -0
- package/dist/cjs/utils/discountAuth.js.map +1 -0
- package/dist/cjs/utils/index.js +68 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/cjs/utils/instructionResult.js +76 -0
- package/dist/cjs/utils/instructionResult.js.map +1 -0
- package/dist/cjs/utils/instructions.js +74 -0
- package/dist/cjs/utils/instructions.js.map +1 -0
- package/dist/cjs/utils/lookupTable.js +141 -0
- package/dist/cjs/utils/lookupTable.js.map +1 -0
- package/dist/cjs/utils/rental.js +49 -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 +155 -0
- package/dist/cjs/utils/signer.js.map +1 -0
- package/dist/cjs/utils/web3js.js +76 -0
- package/dist/cjs/utils/web3js.js.map +1 -0
- package/dist/cjs/version.js +7 -0
- package/dist/cjs/version.js.map +1 -0
- package/dist/esm/accounts/borrower.js +116 -0
- package/dist/esm/accounts/borrower.js.map +1 -0
- package/dist/esm/accounts/config.js +93 -0
- package/dist/esm/accounts/config.js.map +1 -0
- package/dist/esm/accounts/contract.js +103 -0
- package/dist/esm/accounts/contract.js.map +1 -0
- package/dist/esm/accounts/fleet.js +44 -0
- package/dist/esm/accounts/fleet.js.map +1 -0
- package/dist/esm/accounts/index.js +8 -0
- package/dist/esm/accounts/index.js.map +1 -0
- package/dist/esm/accounts/member.js +9 -0
- package/dist/esm/accounts/member.js.map +1 -0
- package/dist/esm/accounts/rental.js +104 -0
- package/dist/esm/accounts/rental.js.map +1 -0
- package/dist/esm/accounts/thread.js +216 -0
- package/dist/esm/accounts/thread.js.map +1 -0
- package/dist/esm/audit/audit.js +395 -0
- package/dist/esm/audit/audit.js.map +1 -0
- package/dist/esm/audit/events.js +267 -0
- package/dist/esm/audit/events.js.map +1 -0
- package/dist/esm/audit/index.js +3 -0
- package/dist/esm/audit/index.js.map +1 -0
- package/dist/esm/audit/types.js +2 -0
- package/dist/esm/audit/types.js.map +1 -0
- package/dist/esm/cost/constants.js +31 -0
- package/dist/esm/cost/constants.js.map +1 -0
- package/dist/esm/cost/estimate.js +117 -0
- package/dist/esm/cost/estimate.js.map +1 -0
- package/dist/esm/cost/estimate.test.js +143 -0
- package/dist/esm/cost/estimate.test.js.map +1 -0
- package/dist/esm/cost/index.js +4 -0
- package/dist/esm/cost/index.js.map +1 -0
- package/dist/esm/cost/sizes.js +18 -0
- package/dist/esm/cost/sizes.js.map +1 -0
- package/dist/esm/generated/codama/accounts/borrowerState.js +68 -0
- package/dist/esm/generated/codama/accounts/borrowerState.js.map +1 -0
- package/dist/esm/generated/codama/accounts/configState.js +101 -0
- package/dist/esm/generated/codama/accounts/configState.js.map +1 -0
- package/dist/esm/generated/codama/accounts/contractState.js +103 -0
- package/dist/esm/generated/codama/accounts/contractState.js.map +1 -0
- package/dist/esm/generated/codama/accounts/index.js +12 -0
- package/dist/esm/generated/codama/accounts/index.js.map +1 -0
- package/dist/esm/generated/codama/accounts/rentalState.js +93 -0
- package/dist/esm/generated/codama/accounts/rentalState.js.map +1 -0
- package/dist/esm/generated/codama/errors/index.js +9 -0
- package/dist/esm/generated/codama/errors/index.js.map +1 -0
- package/dist/esm/generated/codama/errors/srsly.js +306 -0
- package/dist/esm/generated/codama/errors/srsly.js.map +1 -0
- package/dist/esm/generated/codama/index.js +13 -0
- package/dist/esm/generated/codama/index.js.map +1 -0
- package/dist/esm/generated/codama/instructions/acceptRental.js +365 -0
- package/dist/esm/generated/codama/instructions/acceptRental.js.map +1 -0
- package/dist/esm/generated/codama/instructions/cancelRental.js +251 -0
- package/dist/esm/generated/codama/instructions/cancelRental.js.map +1 -0
- package/dist/esm/generated/codama/instructions/claimBorrower.js +207 -0
- package/dist/esm/generated/codama/instructions/claimBorrower.js.map +1 -0
- package/dist/esm/generated/codama/instructions/claimContract.js +185 -0
- package/dist/esm/generated/codama/instructions/claimContract.js.map +1 -0
- package/dist/esm/generated/codama/instructions/closeBorrower.js +159 -0
- package/dist/esm/generated/codama/instructions/closeBorrower.js.map +1 -0
- package/dist/esm/generated/codama/instructions/closeContract.js +276 -0
- package/dist/esm/generated/codama/instructions/closeContract.js.map +1 -0
- package/dist/esm/generated/codama/instructions/closeContractThread.js +154 -0
- package/dist/esm/generated/codama/instructions/closeContractThread.js.map +1 -0
- package/dist/esm/generated/codama/instructions/closeRental.js +322 -0
- package/dist/esm/generated/codama/instructions/closeRental.js.map +1 -0
- package/dist/esm/generated/codama/instructions/createBorrower.js +178 -0
- package/dist/esm/generated/codama/instructions/createBorrower.js.map +1 -0
- package/dist/esm/generated/codama/instructions/createConfig.js +226 -0
- package/dist/esm/generated/codama/instructions/createConfig.js.map +1 -0
- package/dist/esm/generated/codama/instructions/createContract.js +271 -0
- package/dist/esm/generated/codama/instructions/createContract.js.map +1 -0
- package/dist/esm/generated/codama/instructions/createContractThread.js +299 -0
- package/dist/esm/generated/codama/instructions/createContractThread.js.map +1 -0
- package/dist/esm/generated/codama/instructions/deleteBorrower.js +99 -0
- package/dist/esm/generated/codama/instructions/deleteBorrower.js.map +1 -0
- package/dist/esm/generated/codama/instructions/deleteConfig.js +177 -0
- package/dist/esm/generated/codama/instructions/deleteConfig.js.map +1 -0
- package/dist/esm/generated/codama/instructions/deleteContract.js +99 -0
- package/dist/esm/generated/codama/instructions/deleteContract.js.map +1 -0
- package/dist/esm/generated/codama/instructions/deleteContractThread.js +160 -0
- package/dist/esm/generated/codama/instructions/deleteContractThread.js.map +1 -0
- package/dist/esm/generated/codama/instructions/deleteRental.js +99 -0
- package/dist/esm/generated/codama/instructions/deleteRental.js.map +1 -0
- package/dist/esm/generated/codama/instructions/index.js +33 -0
- package/dist/esm/generated/codama/instructions/index.js.map +1 -0
- package/dist/esm/generated/codama/instructions/invalidateRental.js +140 -0
- package/dist/esm/generated/codama/instructions/invalidateRental.js.map +1 -0
- package/dist/esm/generated/codama/instructions/processContract.js +203 -0
- package/dist/esm/generated/codama/instructions/processContract.js.map +1 -0
- package/dist/esm/generated/codama/instructions/releaseRental.js +138 -0
- package/dist/esm/generated/codama/instructions/releaseRental.js.map +1 -0
- package/dist/esm/generated/codama/instructions/reserveRental.js +313 -0
- package/dist/esm/generated/codama/instructions/reserveRental.js.map +1 -0
- package/dist/esm/generated/codama/instructions/setDelegate.js +65 -0
- package/dist/esm/generated/codama/instructions/setDelegate.js.map +1 -0
- package/dist/esm/generated/codama/instructions/updateConfig.js +122 -0
- package/dist/esm/generated/codama/instructions/updateConfig.js.map +1 -0
- package/dist/esm/generated/codama/instructions/updateContract.js +116 -0
- package/dist/esm/generated/codama/instructions/updateContract.js.map +1 -0
- package/dist/esm/generated/codama/instructions/updateContractThread.js +158 -0
- package/dist/esm/generated/codama/instructions/updateContractThread.js.map +1 -0
- package/dist/esm/generated/codama/programs/index.js +9 -0
- package/dist/esm/generated/codama/programs/index.js.map +1 -0
- package/dist/esm/generated/codama/programs/srsly.js +140 -0
- package/dist/esm/generated/codama/programs/srsly.js.map +1 -0
- package/dist/esm/generated/codama/shared/index.js +80 -0
- package/dist/esm/generated/codama/shared/index.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/combatStats.js +44 -0
- package/dist/esm/generated/codama/types/combatStats.js.map +1 -0
- package/dist/esm/generated/codama/types/feesPaid.js +28 -0
- package/dist/esm/generated/codama/types/feesPaid.js.map +1 -0
- package/dist/esm/generated/codama/types/fleet.js +69 -0
- package/dist/esm/generated/codama/types/fleet.js.map +1 -0
- package/dist/esm/generated/codama/types/index.js +27 -0
- package/dist/esm/generated/codama/types/index.js.map +1 -0
- 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/ownerPaid.js +26 -0
- package/dist/esm/generated/codama/types/ownerPaid.js.map +1 -0
- 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/rentalCancelled.js +34 -0
- package/dist/esm/generated/codama/types/rentalCancelled.js.map +1 -0
- package/dist/esm/generated/codama/types/rentalClosed.js +32 -0
- package/dist/esm/generated/codama/types/rentalClosed.js.map +1 -0
- package/dist/esm/generated/codama/types/rentalSettled.js +30 -0
- package/dist/esm/generated/codama/types/rentalSettled.js.map +1 -0
- package/dist/esm/generated/codama/types/rentalStatus.js +26 -0
- package/dist/esm/generated/codama/types/rentalStatus.js.map +1 -0
- package/dist/esm/generated/codama/types/schedule.js +56 -0
- package/dist/esm/generated/codama/types/schedule.js.map +1 -0
- 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 +29 -0
- package/dist/esm/generated/codama/types/shipStats.js.map +1 -0
- package/dist/esm/generated/codama/types/signal.js +53 -0
- package/dist/esm/generated/codama/types/signal.js.map +1 -0
- package/dist/esm/generated/codama/types/thread.js +57 -0
- package/dist/esm/generated/codama/types/thread.js.map +1 -0
- package/dist/esm/generated/codama/types/trigger.js +94 -0
- package/dist/esm/generated/codama/types/trigger.js.map +1 -0
- package/dist/esm/idl/srsly.json +4747 -0
- package/dist/esm/index.js +12 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/instructions/acceptRental.js +242 -0
- package/dist/esm/instructions/acceptRental.js.map +1 -0
- package/dist/esm/instructions/approveAffiliate.js +7 -0
- package/dist/esm/instructions/approveAffiliate.js.map +1 -0
- package/dist/esm/instructions/cancelRental.js +98 -0
- package/dist/esm/instructions/cancelRental.js.map +1 -0
- package/dist/esm/instructions/claimBorrower.js +85 -0
- package/dist/esm/instructions/claimBorrower.js.map +1 -0
- package/dist/esm/instructions/claimContract.js +51 -0
- package/dist/esm/instructions/claimContract.js.map +1 -0
- package/dist/esm/instructions/closeBorrower.js +48 -0
- package/dist/esm/instructions/closeBorrower.js.map +1 -0
- package/dist/esm/instructions/closeContract.js +199 -0
- package/dist/esm/instructions/closeContract.js.map +1 -0
- package/dist/esm/instructions/closeContractThread.js +58 -0
- package/dist/esm/instructions/closeContractThread.js.map +1 -0
- package/dist/esm/instructions/closeRental.js +133 -0
- package/dist/esm/instructions/closeRental.js.map +1 -0
- package/dist/esm/instructions/createAffiliate.js +65 -0
- package/dist/esm/instructions/createAffiliate.js.map +1 -0
- package/dist/esm/instructions/createBorrower.js +41 -0
- package/dist/esm/instructions/createBorrower.js.map +1 -0
- package/dist/esm/instructions/createConfig.js +78 -0
- package/dist/esm/instructions/createConfig.js.map +1 -0
- package/dist/esm/instructions/createContract.js +143 -0
- package/dist/esm/instructions/createContract.js.map +1 -0
- package/dist/esm/instructions/createContractThread.js +95 -0
- package/dist/esm/instructions/createContractThread.js.map +1 -0
- package/dist/esm/instructions/deleteBorrower.js +54 -0
- package/dist/esm/instructions/deleteBorrower.js.map +1 -0
- package/dist/esm/instructions/deleteConfig.js +74 -0
- package/dist/esm/instructions/deleteConfig.js.map +1 -0
- package/dist/esm/instructions/deleteContract.js +73 -0
- package/dist/esm/instructions/deleteContract.js.map +1 -0
- package/dist/esm/instructions/deleteContractThread.js +59 -0
- package/dist/esm/instructions/deleteContractThread.js.map +1 -0
- package/dist/esm/instructions/deleteRental.js +70 -0
- package/dist/esm/instructions/deleteRental.js.map +1 -0
- package/dist/esm/instructions/index.js +33 -0
- package/dist/esm/instructions/index.js.map +1 -0
- package/dist/esm/instructions/invalidateRental.js +84 -0
- package/dist/esm/instructions/invalidateRental.js.map +1 -0
- package/dist/esm/instructions/releaseRental.js +84 -0
- package/dist/esm/instructions/releaseRental.js.map +1 -0
- package/dist/esm/instructions/removeAffiliate.js +7 -0
- package/dist/esm/instructions/removeAffiliate.js.map +1 -0
- package/dist/esm/instructions/reserveRental.js +171 -0
- package/dist/esm/instructions/reserveRental.js.map +1 -0
- package/dist/esm/instructions/setDelegate.js +64 -0
- package/dist/esm/instructions/setDelegate.js.map +1 -0
- package/dist/esm/instructions/updateAffiliate.js +52 -0
- package/dist/esm/instructions/updateAffiliate.js.map +1 -0
- package/dist/esm/instructions/updateConfig.js +91 -0
- package/dist/esm/instructions/updateConfig.js.map +1 -0
- package/dist/esm/instructions/updateContract.js +95 -0
- package/dist/esm/instructions/updateContract.js.map +1 -0
- package/dist/esm/instructions/updateContractThread.js +53 -0
- package/dist/esm/instructions/updateContractThread.js.map +1 -0
- package/dist/esm/kit/index.js +28 -0
- package/dist/esm/kit/index.js.map +1 -0
- package/dist/esm/legacy/index.js +81 -0
- package/dist/esm/legacy/index.js.map +1 -0
- package/dist/esm/package.json +78 -0
- package/dist/esm/params/amount.js +120 -0
- package/dist/esm/params/amount.js.map +1 -0
- package/dist/esm/params/duration.js +115 -0
- package/dist/esm/params/duration.js.map +1 -0
- package/dist/esm/params/index.js +5 -0
- package/dist/esm/params/index.js.map +1 -0
- package/dist/esm/params/schedule.js +157 -0
- package/dist/esm/params/schedule.js.map +1 -0
- package/dist/esm/params/sol.js +73 -0
- package/dist/esm/params/sol.js.map +1 -0
- package/dist/esm/pda/constants.js +72 -0
- package/dist/esm/pda/constants.js.map +1 -0
- package/dist/esm/pda/index.js +26 -0
- package/dist/esm/pda/index.js.map +1 -0
- package/dist/esm/pda/lookupTable.js +55 -0
- package/dist/esm/pda/lookupTable.js.map +1 -0
- package/dist/esm/pda/sage.js +153 -0
- package/dist/esm/pda/sage.js.map +1 -0
- package/dist/esm/pda/slyvault.js +8 -0
- package/dist/esm/pda/slyvault.js.map +1 -0
- package/dist/esm/pda/srsly.js +122 -0
- package/dist/esm/pda/srsly.js.map +1 -0
- package/dist/esm/pda/thread.js +70 -0
- package/dist/esm/pda/thread.js.map +1 -0
- package/dist/esm/pda/token.js +60 -0
- package/dist/esm/pda/token.js.map +1 -0
- package/dist/esm/utils/addresses.js +125 -0
- package/dist/esm/utils/addresses.js.map +1 -0
- package/dist/esm/utils/bidMath.js +146 -0
- package/dist/esm/utils/bidMath.js.map +1 -0
- package/dist/esm/utils/config.js +200 -0
- package/dist/esm/utils/config.js.map +1 -0
- package/dist/esm/utils/discountAuth.js +73 -0
- package/dist/esm/utils/discountAuth.js.map +1 -0
- package/dist/esm/utils/index.js +27 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/utils/instructionResult.js +72 -0
- package/dist/esm/utils/instructionResult.js.map +1 -0
- package/dist/esm/utils/instructions.js +71 -0
- package/dist/esm/utils/instructions.js.map +1 -0
- package/dist/esm/utils/lookupTable.js +137 -0
- package/dist/esm/utils/lookupTable.js.map +1 -0
- package/dist/esm/utils/rental.js +45 -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 +147 -0
- package/dist/esm/utils/signer.js.map +1 -0
- package/dist/esm/utils/web3js.js +72 -0
- package/dist/esm/utils/web3js.js.map +1 -0
- package/dist/esm/version.js +4 -0
- package/dist/esm/version.js.map +1 -0
- package/dist/idl/srsly.json +4747 -0
- package/dist/types/accounts/borrower.d.ts +58 -0
- package/dist/types/accounts/borrower.d.ts.map +1 -0
- package/dist/types/accounts/config.d.ts +50 -0
- package/dist/types/accounts/config.d.ts.map +1 -0
- package/dist/types/accounts/contract.d.ts +53 -0
- package/dist/types/accounts/contract.d.ts.map +1 -0
- package/dist/types/accounts/fleet.d.ts +24 -0
- package/dist/types/accounts/fleet.d.ts.map +1 -0
- package/dist/types/accounts/index.d.ts +8 -0
- package/dist/types/accounts/index.d.ts.map +1 -0
- package/dist/types/accounts/member.d.ts +9 -0
- package/dist/types/accounts/member.d.ts.map +1 -0
- package/dist/types/accounts/rental.d.ts +53 -0
- package/dist/types/accounts/rental.d.ts.map +1 -0
- package/dist/types/accounts/thread.d.ts +78 -0
- package/dist/types/accounts/thread.d.ts.map +1 -0
- package/dist/types/audit/audit.d.ts +10 -0
- package/dist/types/audit/audit.d.ts.map +1 -0
- package/dist/types/audit/events.d.ts +17 -0
- package/dist/types/audit/events.d.ts.map +1 -0
- package/dist/types/audit/index.d.ts +4 -0
- package/dist/types/audit/index.d.ts.map +1 -0
- package/dist/types/audit/types.d.ts +132 -0
- package/dist/types/audit/types.d.ts.map +1 -0
- package/dist/types/cost/constants.d.ts +31 -0
- package/dist/types/cost/constants.d.ts.map +1 -0
- package/dist/types/cost/estimate.d.ts +93 -0
- package/dist/types/cost/estimate.d.ts.map +1 -0
- package/dist/types/cost/estimate.test.d.ts +2 -0
- package/dist/types/cost/estimate.test.d.ts.map +1 -0
- package/dist/types/cost/index.d.ts +4 -0
- package/dist/types/cost/index.d.ts.map +1 -0
- package/dist/types/cost/sizes.d.ts +18 -0
- package/dist/types/cost/sizes.d.ts.map +1 -0
- package/dist/types/generated/codama/accounts/borrowerState.d.ts +82 -0
- package/dist/types/generated/codama/accounts/borrowerState.d.ts.map +1 -0
- package/dist/types/generated/codama/accounts/configState.d.ts +159 -0
- package/dist/types/generated/codama/accounts/configState.d.ts.map +1 -0
- package/dist/types/generated/codama/accounts/contractState.d.ts +165 -0
- package/dist/types/generated/codama/accounts/contractState.d.ts.map +1 -0
- package/dist/types/generated/codama/accounts/index.d.ts +12 -0
- package/dist/types/generated/codama/accounts/index.d.ts.map +1 -0
- package/dist/types/generated/codama/accounts/rentalState.d.ts +125 -0
- package/dist/types/generated/codama/accounts/rentalState.d.ts.map +1 -0
- package/dist/types/generated/codama/errors/index.d.ts +9 -0
- package/dist/types/generated/codama/errors/index.d.ts.map +1 -0
- package/dist/types/generated/codama/errors/srsly.d.ts +208 -0
- package/dist/types/generated/codama/errors/srsly.d.ts.map +1 -0
- package/dist/types/generated/codama/index.d.ts +13 -0
- package/dist/types/generated/codama/index.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/acceptRental.d.ts +176 -0
- package/dist/types/generated/codama/instructions/acceptRental.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/cancelRental.d.ts +107 -0
- package/dist/types/generated/codama/instructions/cancelRental.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/claimBorrower.d.ts +82 -0
- package/dist/types/generated/codama/instructions/claimBorrower.d.ts.map +1 -0
- 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 +79 -0
- package/dist/types/generated/codama/instructions/closeBorrower.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/closeContract.d.ts +130 -0
- package/dist/types/generated/codama/instructions/closeContract.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/closeContractThread.d.ts +70 -0
- package/dist/types/generated/codama/instructions/closeContractThread.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/closeRental.d.ts +149 -0
- package/dist/types/generated/codama/instructions/closeRental.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/createBorrower.d.ts +71 -0
- package/dist/types/generated/codama/instructions/createBorrower.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/createConfig.d.ts +100 -0
- package/dist/types/generated/codama/instructions/createConfig.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/createContract.d.ts +131 -0
- package/dist/types/generated/codama/instructions/createContract.d.ts.map +1 -0
- 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 +58 -0
- package/dist/types/generated/codama/instructions/deleteBorrower.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/deleteConfig.d.ts +75 -0
- package/dist/types/generated/codama/instructions/deleteConfig.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/deleteContract.d.ts +58 -0
- package/dist/types/generated/codama/instructions/deleteContract.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/deleteContractThread.d.ts +70 -0
- package/dist/types/generated/codama/instructions/deleteContractThread.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/deleteRental.d.ts +61 -0
- package/dist/types/generated/codama/instructions/deleteRental.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/index.d.ts +33 -0
- package/dist/types/generated/codama/instructions/index.d.ts.map +1 -0
- 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/processContract.d.ts +100 -0
- package/dist/types/generated/codama/instructions/processContract.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/releaseRental.d.ts +98 -0
- package/dist/types/generated/codama/instructions/releaseRental.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/reserveRental.d.ts +159 -0
- package/dist/types/generated/codama/instructions/reserveRental.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/updateConfig.d.ts +158 -0
- package/dist/types/generated/codama/instructions/updateConfig.d.ts.map +1 -0
- package/dist/types/generated/codama/instructions/updateContract.d.ts +102 -0
- package/dist/types/generated/codama/instructions/updateContract.d.ts.map +1 -0
- 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/index.d.ts +9 -0
- package/dist/types/generated/codama/programs/index.d.ts.map +1 -0
- package/dist/types/generated/codama/programs/srsly.d.ts +101 -0
- package/dist/types/generated/codama/programs/srsly.d.ts.map +1 -0
- package/dist/types/generated/codama/shared/index.d.ts +50 -0
- package/dist/types/generated/codama/shared/index.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/combatStats.d.ts +28 -0
- package/dist/types/generated/codama/types/combatStats.d.ts.map +1 -0
- package/dist/types/generated/codama/types/feesPaid.d.ts +28 -0
- package/dist/types/generated/codama/types/feesPaid.d.ts.map +1 -0
- package/dist/types/generated/codama/types/fleet.d.ts +66 -0
- package/dist/types/generated/codama/types/fleet.d.ts.map +1 -0
- package/dist/types/generated/codama/types/index.d.ts +27 -0
- package/dist/types/generated/codama/types/index.d.ts.map +1 -0
- 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/ownerPaid.d.ts +26 -0
- package/dist/types/generated/codama/types/ownerPaid.d.ts.map +1 -0
- package/dist/types/generated/codama/types/rentalAccepted.d.ts +38 -0
- package/dist/types/generated/codama/types/rentalAccepted.d.ts.map +1 -0
- package/dist/types/generated/codama/types/rentalCancelled.d.ts +34 -0
- package/dist/types/generated/codama/types/rentalCancelled.d.ts.map +1 -0
- package/dist/types/generated/codama/types/rentalClosed.d.ts +32 -0
- package/dist/types/generated/codama/types/rentalClosed.d.ts.map +1 -0
- package/dist/types/generated/codama/types/rentalSettled.d.ts +30 -0
- package/dist/types/generated/codama/types/rentalSettled.d.ts.map +1 -0
- package/dist/types/generated/codama/types/rentalStatus.d.ts +20 -0
- package/dist/types/generated/codama/types/rentalStatus.d.ts.map +1 -0
- package/dist/types/generated/codama/types/schedule.d.ts +46 -0
- package/dist/types/generated/codama/types/schedule.d.ts.map +1 -0
- 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 +26 -0
- package/dist/types/generated/codama/types/shipStats.d.ts.map +1 -0
- package/dist/types/generated/codama/types/signal.d.ts +60 -0
- package/dist/types/generated/codama/types/signal.d.ts.map +1 -0
- package/dist/types/generated/codama/types/thread.d.ts +54 -0
- package/dist/types/generated/codama/types/thread.d.ts.map +1 -0
- package/dist/types/generated/codama/types/trigger.d.ts +109 -0
- package/dist/types/generated/codama/types/trigger.d.ts.map +1 -0
- package/dist/types/index.d.ts +12 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/instructions/acceptRental.d.ts +98 -0
- package/dist/types/instructions/acceptRental.d.ts.map +1 -0
- 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 +77 -0
- package/dist/types/instructions/cancelRental.d.ts.map +1 -0
- package/dist/types/instructions/claimBorrower.d.ts +74 -0
- package/dist/types/instructions/claimBorrower.d.ts.map +1 -0
- package/dist/types/instructions/claimContract.d.ts +38 -0
- package/dist/types/instructions/claimContract.d.ts.map +1 -0
- package/dist/types/instructions/closeBorrower.d.ts +43 -0
- package/dist/types/instructions/closeBorrower.d.ts.map +1 -0
- package/dist/types/instructions/closeContract.d.ts +79 -0
- package/dist/types/instructions/closeContract.d.ts.map +1 -0
- package/dist/types/instructions/closeContractThread.d.ts +37 -0
- package/dist/types/instructions/closeContractThread.d.ts.map +1 -0
- package/dist/types/instructions/closeRental.d.ts +52 -0
- package/dist/types/instructions/closeRental.d.ts.map +1 -0
- package/dist/types/instructions/createAffiliate.d.ts +61 -0
- package/dist/types/instructions/createAffiliate.d.ts.map +1 -0
- package/dist/types/instructions/createBorrower.d.ts +34 -0
- package/dist/types/instructions/createBorrower.d.ts.map +1 -0
- package/dist/types/instructions/createConfig.d.ts +70 -0
- package/dist/types/instructions/createConfig.d.ts.map +1 -0
- package/dist/types/instructions/createContract.d.ts +145 -0
- package/dist/types/instructions/createContract.d.ts.map +1 -0
- package/dist/types/instructions/createContractThread.d.ts +57 -0
- package/dist/types/instructions/createContractThread.d.ts.map +1 -0
- package/dist/types/instructions/deleteBorrower.d.ts +53 -0
- package/dist/types/instructions/deleteBorrower.d.ts.map +1 -0
- package/dist/types/instructions/deleteConfig.d.ts +55 -0
- package/dist/types/instructions/deleteConfig.d.ts.map +1 -0
- package/dist/types/instructions/deleteContract.d.ts +57 -0
- package/dist/types/instructions/deleteContract.d.ts.map +1 -0
- package/dist/types/instructions/deleteContractThread.d.ts +39 -0
- package/dist/types/instructions/deleteContractThread.d.ts.map +1 -0
- package/dist/types/instructions/deleteRental.d.ts +66 -0
- package/dist/types/instructions/deleteRental.d.ts.map +1 -0
- package/dist/types/instructions/index.d.ts +33 -0
- package/dist/types/instructions/index.d.ts.map +1 -0
- package/dist/types/instructions/invalidateRental.d.ts +70 -0
- package/dist/types/instructions/invalidateRental.d.ts.map +1 -0
- package/dist/types/instructions/releaseRental.d.ts +70 -0
- package/dist/types/instructions/releaseRental.d.ts.map +1 -0
- 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 +89 -0
- package/dist/types/instructions/reserveRental.d.ts.map +1 -0
- package/dist/types/instructions/setDelegate.d.ts +60 -0
- package/dist/types/instructions/setDelegate.d.ts.map +1 -0
- package/dist/types/instructions/updateAffiliate.d.ts +62 -0
- package/dist/types/instructions/updateAffiliate.d.ts.map +1 -0
- package/dist/types/instructions/updateConfig.d.ts +128 -0
- package/dist/types/instructions/updateConfig.d.ts.map +1 -0
- package/dist/types/instructions/updateContract.d.ts +114 -0
- package/dist/types/instructions/updateContract.d.ts.map +1 -0
- package/dist/types/instructions/updateContractThread.d.ts +53 -0
- package/dist/types/instructions/updateContractThread.d.ts.map +1 -0
- package/dist/types/kit/index.d.ts +27 -0
- package/dist/types/kit/index.d.ts.map +1 -0
- package/dist/types/legacy/index.d.ts +62 -0
- package/dist/types/legacy/index.d.ts.map +1 -0
- package/dist/types/params/amount.d.ts +75 -0
- package/dist/types/params/amount.d.ts.map +1 -0
- package/dist/types/params/duration.d.ts +65 -0
- package/dist/types/params/duration.d.ts.map +1 -0
- package/dist/types/params/index.d.ts +5 -0
- package/dist/types/params/index.d.ts.map +1 -0
- package/dist/types/params/schedule.d.ts +74 -0
- package/dist/types/params/schedule.d.ts.map +1 -0
- package/dist/types/params/sol.d.ts +39 -0
- package/dist/types/params/sol.d.ts.map +1 -0
- package/dist/types/pda/constants.d.ts +56 -0
- package/dist/types/pda/constants.d.ts.map +1 -0
- package/dist/types/pda/index.d.ts +20 -0
- package/dist/types/pda/index.d.ts.map +1 -0
- package/dist/types/pda/lookupTable.d.ts +30 -0
- package/dist/types/pda/lookupTable.d.ts.map +1 -0
- package/dist/types/pda/sage.d.ts +70 -0
- package/dist/types/pda/sage.d.ts.map +1 -0
- package/dist/types/pda/slyvault.d.ts +8 -0
- package/dist/types/pda/slyvault.d.ts.map +1 -0
- package/dist/types/pda/srsly.d.ts +53 -0
- package/dist/types/pda/srsly.d.ts.map +1 -0
- package/dist/types/pda/thread.d.ts +31 -0
- package/dist/types/pda/thread.d.ts.map +1 -0
- package/dist/types/pda/token.d.ts +30 -0
- package/dist/types/pda/token.d.ts.map +1 -0
- package/dist/types/utils/addresses.d.ts +97 -0
- package/dist/types/utils/addresses.d.ts.map +1 -0
- package/dist/types/utils/bidMath.d.ts +89 -0
- package/dist/types/utils/bidMath.d.ts.map +1 -0
- package/dist/types/utils/config.d.ts +213 -0
- package/dist/types/utils/config.d.ts.map +1 -0
- package/dist/types/utils/discountAuth.d.ts +57 -0
- package/dist/types/utils/discountAuth.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +16 -0
- package/dist/types/utils/index.d.ts.map +1 -0
- 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 +50 -0
- package/dist/types/utils/instructions.d.ts.map +1 -0
- 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 +22 -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 +103 -0
- package/dist/types/utils/signer.d.ts.map +1 -0
- package/dist/types/utils/web3js.d.ts +85 -0
- package/dist/types/utils/web3js.d.ts.map +1 -0
- package/dist/types/version.d.ts +2 -0
- package/dist/types/version.d.ts.map +1 -0
- package/package.json +111 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,gBAAgB;AAChB,mCAYkB;AAXhB,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;AACT,0GAAA,gBAAgB,OAAA;AAMlB,oBAAoB;AACpB,yCAeqB;AAdnB,gHAAA,mBAAmB,OAAA;AACnB,gHAAA,mBAAmB,OAAA;AACnB,8GAAA,iBAAiB,OAAA;AACjB,2GAAA,cAAc,OAAA;AACd,+GAAA,kBAAkB,OAAA;AAClB,4GAAA,eAAe,OAAA;AACf,2GAAA,cAAc,OAAA;AACd,6GAAA,gBAAgB,OAAA;AAChB,8GAAA,iBAAiB,OAAA;AACjB,+GAAA,kBAAkB,OAAA;AAOpB,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,+CAAsF;AAA7E,mHAAA,mBAAmB,OAAA;AAE5B,qBAAqB;AACrB,yDAAgF;AAAvE,sHAAA,iBAAiB,OAAA;AAE1B,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,mCAA4D;AAAnD,yGAAA,eAAe,OAAA;AAAE,yGAAA,eAAe,OAAA;AAEzC,WAAW;AACX,qCAA8E;AAArE,4GAAA,iBAAiB,OAAA;AAAE,wGAAA,aAAa,OAAA;AAEzC,yBAAyB;AACzB,+CAMwB;AALtB,8GAAA,cAAc,OAAA;AACd,uHAAA,uBAAuB,OAAA"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @purpose InstructionResult - Array-like wrapper for @solana/kit Instructions with legacy conversion
|
|
4
|
+
*
|
|
5
|
+
* Provides native @solana/kit Instruction[] compatibility with optional .toLegacy() conversion
|
|
6
|
+
* for web3.js users.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.InstructionResult = void 0;
|
|
10
|
+
const config_1 = require("./config");
|
|
11
|
+
/**
|
|
12
|
+
* Convert a single @solana/kit Instruction to legacy web3.js format
|
|
13
|
+
*/
|
|
14
|
+
function convertToLegacy(instruction, PublicKey) {
|
|
15
|
+
const accounts = instruction.accounts || [];
|
|
16
|
+
const data = instruction.data || new Uint8Array();
|
|
17
|
+
return {
|
|
18
|
+
keys: accounts.map(account => ({
|
|
19
|
+
pubkey: new PublicKey(String(account.address)),
|
|
20
|
+
isWritable: (account.role & 1) === 1, // Check writable bit
|
|
21
|
+
isSigner: (account.role & 2) === 2, // Check signer bit
|
|
22
|
+
})),
|
|
23
|
+
programId: new PublicKey(String(instruction.programAddress)),
|
|
24
|
+
data,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* InstructionResult - Wrapper for @solana/kit Instructions with legacy conversion
|
|
29
|
+
*
|
|
30
|
+
* Contains a plain Instruction[] array accessible via `.instructions`.
|
|
31
|
+
* Supports iteration (`for...of`, spread) and `.toLegacy()` conversion for web3.js.
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* ```typescript
|
|
35
|
+
* // Kit users - access instructions directly
|
|
36
|
+
* const result = await createContract(params);
|
|
37
|
+
* for (const ix of result) { ... }
|
|
38
|
+
* // Or unwrap: result.instructions
|
|
39
|
+
*
|
|
40
|
+
* // Web3.js users - convert to legacy format
|
|
41
|
+
* import { PublicKey } from '@solana/web3.js';
|
|
42
|
+
* const legacyIxs = result.toLegacy(PublicKey);
|
|
43
|
+
* // Or if PublicKey is configured in SDK:
|
|
44
|
+
* setSdkConfig({ PublicKey });
|
|
45
|
+
* const legacyIxs = result.toLegacy();
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
class InstructionResult {
|
|
49
|
+
instructions;
|
|
50
|
+
constructor(instructions) {
|
|
51
|
+
this.instructions = instructions;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Convert to legacy web3.js instruction format
|
|
55
|
+
*
|
|
56
|
+
* @param PublicKey - Optional PublicKey constructor. If not provided,
|
|
57
|
+
* uses the PublicKey from SDK config (set via setSdkConfig)
|
|
58
|
+
* @returns Array of instructions in web3.js format
|
|
59
|
+
* @throws Error if no PublicKey is available
|
|
60
|
+
*/
|
|
61
|
+
toLegacy(PublicKey) {
|
|
62
|
+
const pk = PublicKey || (0, config_1.getSdkConfig)().PublicKey;
|
|
63
|
+
if (!pk) {
|
|
64
|
+
throw new Error('PublicKey constructor required - pass it to toLegacy() or set in SDK config via setSdkConfig({ PublicKey })');
|
|
65
|
+
}
|
|
66
|
+
return this.instructions.map(ix => convertToLegacy(ix, pk));
|
|
67
|
+
}
|
|
68
|
+
get length() {
|
|
69
|
+
return this.instructions.length;
|
|
70
|
+
}
|
|
71
|
+
[Symbol.iterator]() {
|
|
72
|
+
return this.instructions[Symbol.iterator]();
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
exports.InstructionResult = InstructionResult;
|
|
76
|
+
//# sourceMappingURL=instructionResult.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instructionResult.js","sourceRoot":"","sources":["../../../src/utils/instructionResult.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,qCAAmE;AAenE;;GAEG;AACH,SAAS,eAAe,CACtB,WAAwB,EACxB,SAA2C;IAE3C,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,IAAI,EAAE,CAAC;IAC5C,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,IAAI,IAAI,UAAU,EAAE,CAAC;IAElD,OAAO;QACL,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC7B,MAAM,EAAE,IAAI,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC9C,UAAU,EAAE,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,qBAAqB;YAC3D,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,mBAAmB;SACxD,CAAC,CAAC;QACH,SAAS,EAAE,IAAI,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;QAC5D,IAAI;KACL,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAa,iBAAiB;IACnB,YAAY,CAAgB;IAErC,YAAY,YAA2B;QACrC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED;;;;;;;OAOG;IACH,QAAQ,CACN,SAA4C;QAE5C,MAAM,EAAE,GAAG,SAAS,IAAI,IAAA,qBAAY,GAAE,CAAC,SAAS,CAAC;QACjD,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,IAAI,KAAK,CACb,6GAA6G,CAC9G,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;IAClC,CAAC;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC;QACf,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC9C,CAAC;CACF;AAlCD,8CAkCC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Shared utilities for preparing instructions with compute budget
|
|
4
|
+
* @module utils/instructions
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.prepareInstructions = prepareInstructions;
|
|
8
|
+
const instructionResult_1 = require("./instructionResult");
|
|
9
|
+
/**
|
|
10
|
+
* Compute Budget Program ID
|
|
11
|
+
*/
|
|
12
|
+
const COMPUTE_BUDGET_PROGRAM = 'ComputeBudget111111111111111111111111111111';
|
|
13
|
+
/**
|
|
14
|
+
* SetComputeUnitLimit instruction discriminator
|
|
15
|
+
*/
|
|
16
|
+
const SET_COMPUTE_UNIT_LIMIT_DISCRIMINATOR = 0x02;
|
|
17
|
+
/**
|
|
18
|
+
* Create a SetComputeUnitLimit instruction manually
|
|
19
|
+
*
|
|
20
|
+
* @param units - Compute units to allocate
|
|
21
|
+
* @returns Instruction for setting compute unit limit
|
|
22
|
+
*/
|
|
23
|
+
function createComputeBudgetInstruction(units) {
|
|
24
|
+
// Encode u32 in little-endian format
|
|
25
|
+
const data = new Uint8Array(5);
|
|
26
|
+
data[0] = SET_COMPUTE_UNIT_LIMIT_DISCRIMINATOR;
|
|
27
|
+
data[1] = units & 0xff;
|
|
28
|
+
data[2] = (units >> 8) & 0xff;
|
|
29
|
+
data[3] = (units >> 16) & 0xff;
|
|
30
|
+
data[4] = (units >> 24) & 0xff;
|
|
31
|
+
return {
|
|
32
|
+
programAddress: COMPUTE_BUDGET_PROGRAM,
|
|
33
|
+
data,
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Prepare instructions for transaction submission
|
|
38
|
+
*
|
|
39
|
+
* This utility handles the common workflow of:
|
|
40
|
+
* 1. Normalizing single instruction to array
|
|
41
|
+
* 2. Optionally prepending compute budget instruction
|
|
42
|
+
* 3. Returning an InstructionResult that can be used directly with @solana/kit
|
|
43
|
+
* or converted to web3.js format via .toLegacy()
|
|
44
|
+
*
|
|
45
|
+
* @param instructions - Single instruction or array of instructions
|
|
46
|
+
* @param options - Optional configuration for compute budget
|
|
47
|
+
* @returns InstructionResult (extends Instruction[], has .toLegacy() method)
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* ```typescript
|
|
51
|
+
* // Kit users - use result directly as Instruction[]
|
|
52
|
+
* const ixs = prepareInstructions(acceptRentalIx);
|
|
53
|
+
* // ixs works with appendTransactionMessageInstruction()
|
|
54
|
+
*
|
|
55
|
+
* // Add compute budget
|
|
56
|
+
* const ixs = prepareInstructions(acceptRentalIx, { computeUnits: 400_000 });
|
|
57
|
+
*
|
|
58
|
+
* // Web3.js users - call .toLegacy()
|
|
59
|
+
* import { PublicKey } from '@solana/web3.js';
|
|
60
|
+
* const legacyIxs = prepareInstructions(acceptRentalIx).toLegacy(PublicKey);
|
|
61
|
+
* ```
|
|
62
|
+
*/
|
|
63
|
+
function prepareInstructions(instructions, options) {
|
|
64
|
+
// Normalize to array
|
|
65
|
+
const ixArray = Array.isArray(instructions) ? instructions : [instructions];
|
|
66
|
+
// Optionally prepend compute budget instruction
|
|
67
|
+
let finalIxs = ixArray;
|
|
68
|
+
if (options?.computeUnits) {
|
|
69
|
+
const computeBudgetIx = createComputeBudgetInstruction(options.computeUnits);
|
|
70
|
+
finalIxs = [computeBudgetIx, ...ixArray];
|
|
71
|
+
}
|
|
72
|
+
return new instructionResult_1.InstructionResult(finalIxs);
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=instructions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instructions.js","sourceRoot":"","sources":["../../../src/utils/instructions.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AAgFH,kDAeC;AA5FD,2DAAwD;AAExD;;GAEG;AACH,MAAM,sBAAsB,GAAG,6CAAwD,CAAC;AAExF;;GAEG;AACH,MAAM,oCAAoC,GAAG,IAAI,CAAC;AAElD;;;;;GAKG;AACH,SAAS,8BAA8B,CAAC,KAAa;IACnD,qCAAqC;IACrC,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;IAC/B,IAAI,CAAC,CAAC,CAAC,GAAG,oCAAoC,CAAC;IAC/C,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC;IACvB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;IAC9B,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;IAC/B,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;IAE/B,OAAO;QACL,cAAc,EAAE,sBAAsB;QACtC,IAAI;KACL,CAAC;AACJ,CAAC;AAmBD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,SAAgB,mBAAmB,CACjC,YAAyC,EACzC,OAAoC;IAEpC,qBAAqB;IACrB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;IAE5E,gDAAgD;IAChD,IAAI,QAAQ,GAAkB,OAAO,CAAC;IACtC,IAAI,OAAO,EAAE,YAAY,EAAE,CAAC;QAC1B,MAAM,eAAe,GAAG,8BAA8B,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAC7E,QAAQ,GAAG,CAAC,eAAe,EAAE,GAAG,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,IAAI,qCAAiB,CAAC,QAAQ,CAAC,CAAC;AACzC,CAAC"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @purpose Address Lookup Table utilities for SRSLY
|
|
4
|
+
*
|
|
5
|
+
* Provides helpers for fetching and using the SRSLY Address Lookup Table
|
|
6
|
+
* to reduce transaction size for rental operations.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.fetchLookupTable = fetchLookupTable;
|
|
10
|
+
exports.getLookupTableAddress = getLookupTableAddress;
|
|
11
|
+
const config_1 = require("../accounts/config");
|
|
12
|
+
const rpc_1 = require("./rpc");
|
|
13
|
+
const config_2 = require("./config");
|
|
14
|
+
/**
|
|
15
|
+
* System program address used as default when ALT not configured
|
|
16
|
+
*/
|
|
17
|
+
const SYSTEM_PROGRAM_ID = '11111111111111111111111111111111';
|
|
18
|
+
/**
|
|
19
|
+
* Fetch the SRSLY Address Lookup Table from chain
|
|
20
|
+
*
|
|
21
|
+
* The ALT contains static addresses used across all rental operations,
|
|
22
|
+
* reducing transaction size by ~310 bytes when used with versioned transactions.
|
|
23
|
+
*
|
|
24
|
+
* @param rpcUrl - Optional RPC endpoint URL. If not provided, uses RPC from global config
|
|
25
|
+
* @returns ALT data with addresses, or null if ALT not configured
|
|
26
|
+
* @throws Error if fetch fails
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```typescript
|
|
30
|
+
* // Fetch ALT using global config RPC
|
|
31
|
+
* const alt = await fetchLookupTable();
|
|
32
|
+
* if (alt) {
|
|
33
|
+
* console.log('ALT address:', alt.address);
|
|
34
|
+
* console.log('Contains', alt.addresses.length, 'addresses');
|
|
35
|
+
* }
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
async function fetchLookupTable(rpcUrl) {
|
|
39
|
+
try {
|
|
40
|
+
// Fetch config to get ALT address
|
|
41
|
+
const config = await (0, config_1.fetchConfig)(rpcUrl);
|
|
42
|
+
const altAddress = config.data.lookupTable;
|
|
43
|
+
// Return null if ALT not configured (default pubkey)
|
|
44
|
+
if (altAddress === SYSTEM_PROGRAM_ID) {
|
|
45
|
+
return null;
|
|
46
|
+
}
|
|
47
|
+
// Fetch ALT account data
|
|
48
|
+
const resolvedRpcUrl = rpcUrl || (0, config_2.getRpcUrl)();
|
|
49
|
+
const rpc = (0, rpc_1.createRpc)(resolvedRpcUrl);
|
|
50
|
+
const accountInfo = await rpc.getAccountInfo(altAddress, { encoding: 'base64' }).send();
|
|
51
|
+
if (!accountInfo.value) {
|
|
52
|
+
return null;
|
|
53
|
+
}
|
|
54
|
+
// Decode ALT data
|
|
55
|
+
// ALT format: https://docs.solanalabs.com/implemented-proposals/address-lookup-table
|
|
56
|
+
// Header: 56 bytes (discriminator, deactivation_slot, last_extended_slot, etc.)
|
|
57
|
+
// Addresses: remaining bytes, 32 bytes each
|
|
58
|
+
const data = base64ToUint8Array(accountInfo.value.data[0]);
|
|
59
|
+
// Skip 56-byte header to get to addresses
|
|
60
|
+
const HEADER_SIZE = 56;
|
|
61
|
+
const ADDRESS_SIZE = 32;
|
|
62
|
+
const addresses = [];
|
|
63
|
+
for (let i = HEADER_SIZE; i < data.length; i += ADDRESS_SIZE) {
|
|
64
|
+
const addressBytes = data.subarray(i, i + ADDRESS_SIZE);
|
|
65
|
+
// Convert to base58 address string
|
|
66
|
+
addresses.push(bs58Encode(addressBytes));
|
|
67
|
+
}
|
|
68
|
+
return {
|
|
69
|
+
address: altAddress,
|
|
70
|
+
addresses,
|
|
71
|
+
isActive: addresses.length > 0,
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
catch (error) {
|
|
75
|
+
throw new Error(`Failed to fetch lookup table: ${error.message}`);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Get the ALT address from config without fetching full ALT data
|
|
80
|
+
*
|
|
81
|
+
* @param rpcUrl - Optional RPC endpoint URL
|
|
82
|
+
* @returns ALT address, or null if not configured
|
|
83
|
+
*/
|
|
84
|
+
async function getLookupTableAddress(rpcUrl) {
|
|
85
|
+
const config = await (0, config_1.fetchConfig)(rpcUrl);
|
|
86
|
+
const altAddress = config.data.lookupTable;
|
|
87
|
+
if (altAddress === SYSTEM_PROGRAM_ID) {
|
|
88
|
+
return null;
|
|
89
|
+
}
|
|
90
|
+
return altAddress;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Browser-compatible base64 to Uint8Array decoder
|
|
94
|
+
* Uses atob which is available in browsers and Node.js 16+
|
|
95
|
+
*/
|
|
96
|
+
function base64ToUint8Array(base64) {
|
|
97
|
+
const binaryString = atob(base64);
|
|
98
|
+
const bytes = new Uint8Array(binaryString.length);
|
|
99
|
+
for (let i = 0; i < binaryString.length; i++) {
|
|
100
|
+
bytes[i] = binaryString.charCodeAt(i);
|
|
101
|
+
}
|
|
102
|
+
return bytes;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Simple base58 encoder for address bytes
|
|
106
|
+
* Using a minimal implementation to avoid additional dependencies
|
|
107
|
+
*/
|
|
108
|
+
function bs58Encode(bytes) {
|
|
109
|
+
const ALPHABET = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz';
|
|
110
|
+
const BASE = 58;
|
|
111
|
+
if (bytes.length === 0)
|
|
112
|
+
return '';
|
|
113
|
+
// Count leading zeros
|
|
114
|
+
let zeros = 0;
|
|
115
|
+
while (zeros < bytes.length && bytes[zeros] === 0) {
|
|
116
|
+
zeros++;
|
|
117
|
+
}
|
|
118
|
+
// Convert to base58
|
|
119
|
+
const input = Array.from(bytes);
|
|
120
|
+
const encoded = [];
|
|
121
|
+
for (const byte of input) {
|
|
122
|
+
let carry = byte;
|
|
123
|
+
for (let i = 0; i < encoded.length; i++) {
|
|
124
|
+
carry += encoded[i] << 8;
|
|
125
|
+
encoded[i] = carry % BASE;
|
|
126
|
+
carry = Math.floor(carry / BASE);
|
|
127
|
+
}
|
|
128
|
+
while (carry > 0) {
|
|
129
|
+
encoded.push(carry % BASE);
|
|
130
|
+
carry = Math.floor(carry / BASE);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
// Add leading zeros
|
|
134
|
+
let result = ALPHABET[0].repeat(zeros);
|
|
135
|
+
// Convert to string (encoded is in reverse order)
|
|
136
|
+
for (let i = encoded.length - 1; i >= 0; i--) {
|
|
137
|
+
result += ALPHABET[encoded[i]];
|
|
138
|
+
}
|
|
139
|
+
return result;
|
|
140
|
+
}
|
|
141
|
+
//# sourceMappingURL=lookupTable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lookupTable.js","sourceRoot":"","sources":["../../../src/utils/lookupTable.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Rental utility functions
|
|
4
|
+
* @module utils/rental
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.hasActiveRental = hasActiveRental;
|
|
8
|
+
exports.hasQueuedRental = hasQueuedRental;
|
|
9
|
+
const accounts_1 = require("../generated/codama/accounts");
|
|
10
|
+
const types_1 = require("../generated/codama/types");
|
|
11
|
+
const srsly_1 = require("../pda/srsly");
|
|
12
|
+
const rpc_1 = require("./rpc");
|
|
13
|
+
/**
|
|
14
|
+
* Check if a contract has an active rental.
|
|
15
|
+
*
|
|
16
|
+
* @param contract - The contract address
|
|
17
|
+
* @param rpcUrl - RPC URL to use for fetching rental state
|
|
18
|
+
* @returns true if active rental exists and has Active status
|
|
19
|
+
*/
|
|
20
|
+
async function hasActiveRental(contract, rpcUrl) {
|
|
21
|
+
const rpc = (0, rpc_1.createRpc)(rpcUrl);
|
|
22
|
+
try {
|
|
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;
|
|
26
|
+
}
|
|
27
|
+
catch {
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Check if a contract has a queued rental reservation.
|
|
33
|
+
*
|
|
34
|
+
* @param contract - The contract address
|
|
35
|
+
* @param rpcUrl - RPC URL to use for fetching rental state
|
|
36
|
+
* @returns true if queued rental exists and has Queued status
|
|
37
|
+
*/
|
|
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;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=rental.js.map
|
|
@@ -0,0 +1 @@
|
|
|
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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @purpose Centralized RPC client creation for SRSLY SDK
|
|
4
|
+
*
|
|
5
|
+
* Provides a single point for creating Solana RPC clients, making it easier
|
|
6
|
+
* to add environment-specific configurations or debugging in the future.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.setRpcDebug = setRpcDebug;
|
|
10
|
+
exports.isRpcDebugEnabled = isRpcDebugEnabled;
|
|
11
|
+
exports.createRpc = createRpc;
|
|
12
|
+
const kit_1 = require("@solana/kit");
|
|
13
|
+
// Debug flag - can be set via setSdkConfig or environment
|
|
14
|
+
let debugMode = false;
|
|
15
|
+
/**
|
|
16
|
+
* Enable or disable RPC debug mode
|
|
17
|
+
* When enabled, logs RPC requests to console
|
|
18
|
+
*/
|
|
19
|
+
function setRpcDebug(enabled) {
|
|
20
|
+
debugMode = enabled;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Check if RPC debug mode is enabled
|
|
24
|
+
*/
|
|
25
|
+
function isRpcDebugEnabled() {
|
|
26
|
+
return debugMode;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Create a Solana RPC client
|
|
30
|
+
*
|
|
31
|
+
* This utility centralizes RPC client creation for the SDK. While it currently
|
|
32
|
+
* uses the standard createSolanaRpc approach, having a single point of creation
|
|
33
|
+
* makes it easier to:
|
|
34
|
+
* - Add debugging/logging
|
|
35
|
+
* - Handle environment-specific configurations
|
|
36
|
+
* - Implement retry logic or custom transports
|
|
37
|
+
*
|
|
38
|
+
* @param rpcUrl - The RPC endpoint URL
|
|
39
|
+
* @returns A configured Solana RPC client
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```typescript
|
|
43
|
+
* const rpc = createRpc('https://api.devnet.solana.com');
|
|
44
|
+
* const account = await rpc.getAccountInfo(address).send();
|
|
45
|
+
* ```
|
|
46
|
+
*/
|
|
47
|
+
function createRpc(rpcUrl) {
|
|
48
|
+
if (debugMode) {
|
|
49
|
+
console.log('[SRSLY RPC Debug] Creating RPC client:', {
|
|
50
|
+
url: rpcUrl,
|
|
51
|
+
environment: typeof window !== 'undefined' ? 'browser' : 'node',
|
|
52
|
+
userAgent: typeof navigator !== 'undefined' ? navigator.userAgent : 'N/A',
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
return (0, kit_1.createSolanaRpc)(rpcUrl);
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=rpc.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../../src/utils/rpc.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAWH,kCAEC;AAKD,8CAEC;AAqBD,8BASC;AAhDD,qCAA2E;AAE3E,0DAA0D;AAC1D,IAAI,SAAS,GAAG,KAAK,CAAC;AAEtB;;;GAGG;AACH,SAAgB,WAAW,CAAC,OAAgB;IAC1C,SAAS,GAAG,OAAO,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,SAAgB,iBAAiB;IAC/B,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,SAAS,CAAC,MAAc;IACtC,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,wCAAwC,EAAE;YACpD,GAAG,EAAE,MAAM;YACX,WAAW,EAAE,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;YAC/D,SAAS,EAAE,OAAO,SAAS,KAAK,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK;SAC1E,CAAC,CAAC;IACL,CAAC;IACD,OAAO,IAAA,qBAAe,EAAC,MAAM,CAAC,CAAC;AACjC,CAAC"}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @purpose Universal signer handling for @solana/kit and @solana/web3.js compatibility
|
|
4
|
+
*
|
|
5
|
+
* Accepts signers from both libraries and extracts address strings for use with Codama.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.getSignerAddress = getSignerAddress;
|
|
9
|
+
exports.validateAddress = validateAddress;
|
|
10
|
+
exports.isWeb3jsSigner = isWeb3jsSigner;
|
|
11
|
+
exports.isKitSigner = isKitSigner;
|
|
12
|
+
exports.isAddressString = isAddressString;
|
|
13
|
+
exports.toTransactionSigner = toTransactionSigner;
|
|
14
|
+
const kit_1 = require("@solana/kit");
|
|
15
|
+
/**
|
|
16
|
+
* Extract address string from any supported signer format
|
|
17
|
+
*
|
|
18
|
+
* @param signer - Signer in any supported format
|
|
19
|
+
* @returns Base58-encoded address string
|
|
20
|
+
* @throws Error if signer format is invalid
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```typescript
|
|
24
|
+
* // String address
|
|
25
|
+
* const addr1 = getSignerAddress("9WzDXw...");
|
|
26
|
+
*
|
|
27
|
+
* // web3.js Keypair
|
|
28
|
+
* import { Keypair } from '@solana/web3.js';
|
|
29
|
+
* const keypair = Keypair.generate();
|
|
30
|
+
* const addr2 = getSignerAddress(keypair);
|
|
31
|
+
*
|
|
32
|
+
* // @solana/kit signer
|
|
33
|
+
* import { createNoopSigner, address } from '@solana/kit';
|
|
34
|
+
* const kitSigner = createNoopSigner(address("9WzDXw..."));
|
|
35
|
+
* const addr3 = getSignerAddress(kitSigner);
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
function getSignerAddress(signer) {
|
|
39
|
+
// Handle string address
|
|
40
|
+
if (typeof signer === 'string') {
|
|
41
|
+
validateAddress(signer);
|
|
42
|
+
return (0, kit_1.address)(signer);
|
|
43
|
+
}
|
|
44
|
+
// Handle object signers
|
|
45
|
+
if (signer && typeof signer === 'object') {
|
|
46
|
+
// web3.js Keypair/Wallet format (has publicKey.toBase58())
|
|
47
|
+
if ('publicKey' in signer &&
|
|
48
|
+
signer.publicKey &&
|
|
49
|
+
typeof signer.publicKey.toBase58 === 'function') {
|
|
50
|
+
const addr = signer.publicKey.toBase58();
|
|
51
|
+
validateAddress(addr);
|
|
52
|
+
return (0, kit_1.address)(addr);
|
|
53
|
+
}
|
|
54
|
+
// web3.js PublicKey format (has direct toBase58())
|
|
55
|
+
if ('toBase58' in signer && typeof signer.toBase58 === 'function') {
|
|
56
|
+
const addr = signer.toBase58();
|
|
57
|
+
validateAddress(addr);
|
|
58
|
+
return (0, kit_1.address)(addr);
|
|
59
|
+
}
|
|
60
|
+
// @solana/kit signer format
|
|
61
|
+
if ('address' in signer) {
|
|
62
|
+
const addr = String(signer.address);
|
|
63
|
+
validateAddress(addr);
|
|
64
|
+
return (0, kit_1.address)(addr);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
throw new Error('Invalid signer format. Expected:\n' +
|
|
68
|
+
' - string address\n' +
|
|
69
|
+
' - web3.js Keypair (with publicKey.toBase58())\n' +
|
|
70
|
+
' - web3.js PublicKey (with toBase58())\n' +
|
|
71
|
+
' - @solana/kit TransactionSigner (with address property)');
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Validate that a string is a valid Solana address
|
|
75
|
+
*
|
|
76
|
+
* Basic validation - checks length only. For full validation,
|
|
77
|
+
* use @solana/kit's address() function or web3.js PublicKey constructor.
|
|
78
|
+
*
|
|
79
|
+
* @param address - Address string to validate
|
|
80
|
+
* @throws Error if address format is invalid
|
|
81
|
+
*/
|
|
82
|
+
function validateAddress(address) {
|
|
83
|
+
if (typeof address !== 'string') {
|
|
84
|
+
throw new Error(`Address must be a string, got ${typeof address}`);
|
|
85
|
+
}
|
|
86
|
+
// Solana addresses are base58-encoded 32-byte values
|
|
87
|
+
// Base58 encoding of 32 bytes = 32-44 characters (typically 43-44)
|
|
88
|
+
if (address.length < 32 || address.length > 44) {
|
|
89
|
+
throw new Error(`Invalid Solana address length: ${address.length}. ` +
|
|
90
|
+
`Expected 32-44 characters (base58-encoded 32 bytes). ` +
|
|
91
|
+
`Got: "${address}"`);
|
|
92
|
+
}
|
|
93
|
+
// Check for invalid base58 characters
|
|
94
|
+
const base58Regex = /^[1-9A-HJ-NP-Za-km-z]+$/;
|
|
95
|
+
if (!base58Regex.test(address)) {
|
|
96
|
+
throw new Error(`Invalid Solana address characters. ` +
|
|
97
|
+
`Address must be base58-encoded (no 0, O, I, or l characters). ` +
|
|
98
|
+
`Got: "${address}"`);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Type guard to check if a value is a web3.js signer
|
|
103
|
+
*/
|
|
104
|
+
function isWeb3jsSigner(signer) {
|
|
105
|
+
return (typeof signer === 'object' &&
|
|
106
|
+
signer !== null &&
|
|
107
|
+
'publicKey' in signer &&
|
|
108
|
+
typeof signer.publicKey?.toBase58 === 'function');
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Type guard to check if a value is a @solana/kit signer
|
|
112
|
+
*/
|
|
113
|
+
function isKitSigner(signer) {
|
|
114
|
+
return typeof signer === 'object' && signer !== null && 'address' in signer;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Type guard to check if a value is a string address
|
|
118
|
+
*/
|
|
119
|
+
function isAddressString(signer) {
|
|
120
|
+
return typeof signer === 'string';
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Convert UniversalSigner to TransactionSigner
|
|
124
|
+
*
|
|
125
|
+
* Intelligently handles different signer types:
|
|
126
|
+
* - If already a TransactionSigner with signing capability → return as-is
|
|
127
|
+
* - Otherwise → create noop signer from address (for browser/wallet cases)
|
|
128
|
+
*
|
|
129
|
+
* This enables the SDK to work in both:
|
|
130
|
+
* - Browser/wallet contexts (where you only have addresses, not private keys)
|
|
131
|
+
* - CLI/backend contexts (where you have full keypair signers)
|
|
132
|
+
*
|
|
133
|
+
* @param signer - Signer in any supported format
|
|
134
|
+
* @returns TransactionSigner (either real or noop)
|
|
135
|
+
*
|
|
136
|
+
* @example
|
|
137
|
+
* ```typescript
|
|
138
|
+
* // CLI/backend - has private key
|
|
139
|
+
* const wallet = await createKeyPairSignerFromBytes(secretKey);
|
|
140
|
+
* const txSigner = toTransactionSigner(wallet); // Returns wallet as-is
|
|
141
|
+
*
|
|
142
|
+
* // Browser - only has address
|
|
143
|
+
* const walletAddress = "9WzDXw...";
|
|
144
|
+
* const txSigner = toTransactionSigner(walletAddress); // Creates noop signer
|
|
145
|
+
* ```
|
|
146
|
+
*/
|
|
147
|
+
function toTransactionSigner(signer) {
|
|
148
|
+
// If already a TransactionSigner with signing capability, use it directly
|
|
149
|
+
if (typeof signer === 'object' && signer !== null && 'signMessages' in signer) {
|
|
150
|
+
return signer;
|
|
151
|
+
}
|
|
152
|
+
// Otherwise, extract address and create noop signer (for browser/wallet cases)
|
|
153
|
+
return (0, kit_1.createNoopSigner)(getSignerAddress(signer));
|
|
154
|
+
}
|
|
155
|
+
//# sourceMappingURL=signer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"signer.js","sourceRoot":"","sources":["../../../src/utils/signer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @purpose Conversion helpers for @solana/web3.js compatibility
|
|
4
|
+
*
|
|
5
|
+
* Converts between @solana/kit and @solana/web3.js instruction formats.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.toWeb3Instruction = toWeb3Instruction;
|
|
9
|
+
exports.toAddress = toAddress;
|
|
10
|
+
/**
|
|
11
|
+
* Convert @solana/kit instruction to @solana/web3.js format
|
|
12
|
+
*
|
|
13
|
+
* @param kitInstruction - Instruction in @solana/kit format (from Codama)
|
|
14
|
+
* @param PublicKey - Optional PublicKey constructor for web3.js compatibility
|
|
15
|
+
* @returns Instruction in @solana/web3.js format
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```typescript
|
|
19
|
+
* // Without PublicKey - returns string addresses
|
|
20
|
+
* const web3Ix = toWeb3Instruction(kitIx);
|
|
21
|
+
* // web3Ix.keys[0].pubkey is a string
|
|
22
|
+
*
|
|
23
|
+
* // With PublicKey - returns PublicKey instances
|
|
24
|
+
* import { PublicKey } from '@solana/web3.js';
|
|
25
|
+
* const web3Ix = toWeb3Instruction(kitIx, PublicKey);
|
|
26
|
+
* // web3Ix.keys[0].pubkey is a PublicKey instance
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
function toWeb3Instruction(kitInstruction, PublicKey) {
|
|
30
|
+
const { accounts = [], programAddress, data } = kitInstruction;
|
|
31
|
+
if (PublicKey) {
|
|
32
|
+
// Return instruction with PublicKey instances
|
|
33
|
+
return {
|
|
34
|
+
keys: accounts.map(account => ({
|
|
35
|
+
pubkey: new PublicKey(account.address),
|
|
36
|
+
isWritable: (account.role & 1) === 1, // Check writable bit
|
|
37
|
+
isSigner: (account.role & 2) === 2, // Check signer bit
|
|
38
|
+
})),
|
|
39
|
+
programId: new PublicKey(programAddress),
|
|
40
|
+
data: data || new Uint8Array(),
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
// Return instruction with string addresses
|
|
44
|
+
return {
|
|
45
|
+
keys: accounts.map(account => ({
|
|
46
|
+
pubkey: account.address,
|
|
47
|
+
isWritable: (account.role & 1) === 1,
|
|
48
|
+
isSigner: (account.role & 2) === 2,
|
|
49
|
+
})),
|
|
50
|
+
programId: programAddress,
|
|
51
|
+
data: data || new Uint8Array(),
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Convert PublicKey or Address to string
|
|
56
|
+
*
|
|
57
|
+
* Helper function for normalizing addresses from different libraries.
|
|
58
|
+
*
|
|
59
|
+
* @param value - Address as string or PublicKey instance
|
|
60
|
+
* @returns Base58-encoded address string
|
|
61
|
+
*
|
|
62
|
+
* @example
|
|
63
|
+
* ```typescript
|
|
64
|
+
* // String address (passthrough)
|
|
65
|
+
* const addr1 = toAddress("9WzDXw...");
|
|
66
|
+
*
|
|
67
|
+
* // web3.js PublicKey
|
|
68
|
+
* import { PublicKey } from '@solana/web3.js';
|
|
69
|
+
* const pubkey = new PublicKey("9WzDXw...");
|
|
70
|
+
* const addr2 = toAddress(pubkey);
|
|
71
|
+
* ```
|
|
72
|
+
*/
|
|
73
|
+
function toAddress(value) {
|
|
74
|
+
return typeof value === 'string' ? value : value.toBase58();
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=web3js.js.map
|