@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,122 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PDA derivation functions for the SRSLY program
|
|
3
|
+
* @module pda/srsly
|
|
4
|
+
*/
|
|
5
|
+
import { address, getProgramDerivedAddress, getAddressEncoder } from '@solana/kit';
|
|
6
|
+
import { getAddresses } from '../utils/config';
|
|
7
|
+
import { getSignerAddress } from '../utils/signer';
|
|
8
|
+
import { CONFIG_SEED, CONTRACT_SEED, RENTAL_SEED, RENTAL_AUTHORITY_SEED, BORROWER_STATE_SEED, ACTIVE_RENTAL_SEED, QUEUED_RENTAL_SEED, } from './constants';
|
|
9
|
+
/**
|
|
10
|
+
* Address encoder for PDA seeds
|
|
11
|
+
*/
|
|
12
|
+
const addressEncoder = getAddressEncoder();
|
|
13
|
+
/**
|
|
14
|
+
* Text encoder for string seeds
|
|
15
|
+
*/
|
|
16
|
+
const textEncoder = new TextEncoder();
|
|
17
|
+
/**
|
|
18
|
+
* Derive the contract PDA from a fleet address
|
|
19
|
+
* @param fleet - The fleet public key
|
|
20
|
+
* @param programAddress - Optional SRSLY program address (defaults to network-specific address)
|
|
21
|
+
* @returns The derived contract PDA
|
|
22
|
+
*/
|
|
23
|
+
export async function deriveContract(fleet, programAddress) {
|
|
24
|
+
const fleetAddress = getSignerAddress(fleet);
|
|
25
|
+
const program = programAddress ? getSignerAddress(programAddress) : address(getAddresses().srsly);
|
|
26
|
+
// Encode seeds to bytes
|
|
27
|
+
const contractSeedBytes = textEncoder.encode(CONTRACT_SEED);
|
|
28
|
+
const fleetBytes = addressEncoder.encode(fleetAddress);
|
|
29
|
+
const [pda] = await getProgramDerivedAddress({
|
|
30
|
+
programAddress: program,
|
|
31
|
+
seeds: [contractSeedBytes, fleetBytes],
|
|
32
|
+
});
|
|
33
|
+
return pda;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Internal helper to derive a rental PDA with a named seed suffix
|
|
37
|
+
*/
|
|
38
|
+
async function deriveRentalWithSeed(contract, seedSuffix, programAddress) {
|
|
39
|
+
const contractAddress = getSignerAddress(contract);
|
|
40
|
+
const program = programAddress ? getSignerAddress(programAddress) : address(getAddresses().srsly);
|
|
41
|
+
const rentalSeedBytes = textEncoder.encode(RENTAL_SEED);
|
|
42
|
+
const contractBytes = addressEncoder.encode(contractAddress);
|
|
43
|
+
const suffixBytes = textEncoder.encode(seedSuffix);
|
|
44
|
+
const [pda] = await getProgramDerivedAddress({
|
|
45
|
+
programAddress: program,
|
|
46
|
+
seeds: [rentalSeedBytes, contractBytes, suffixBytes],
|
|
47
|
+
});
|
|
48
|
+
return pda;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Derive the active rental PDA from contract address
|
|
52
|
+
*
|
|
53
|
+
* Seeds: ["rental_state", contract, "active"]
|
|
54
|
+
*
|
|
55
|
+
* @param contract - The contract public key
|
|
56
|
+
* @param programAddress - Optional SRSLY program address (defaults to network-specific address)
|
|
57
|
+
* @returns The derived active rental PDA
|
|
58
|
+
*/
|
|
59
|
+
export async function deriveActiveRental(contract, programAddress) {
|
|
60
|
+
return deriveRentalWithSeed(contract, ACTIVE_RENTAL_SEED, programAddress);
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Derive the queued rental PDA from contract address
|
|
64
|
+
*
|
|
65
|
+
* Seeds: ["rental_state", contract, "queued"]
|
|
66
|
+
*
|
|
67
|
+
* @param contract - The contract public key
|
|
68
|
+
* @param programAddress - Optional SRSLY program address (defaults to network-specific address)
|
|
69
|
+
* @returns The derived queued rental PDA
|
|
70
|
+
*/
|
|
71
|
+
export async function deriveQueuedRental(contract, programAddress) {
|
|
72
|
+
return deriveRentalWithSeed(contract, QUEUED_RENTAL_SEED, programAddress);
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Derive the rental authority PDA
|
|
76
|
+
* @param programAddress - Optional SRSLY program address (defaults to network-specific address)
|
|
77
|
+
* @returns The derived rental authority PDA
|
|
78
|
+
*/
|
|
79
|
+
export async function deriveRentalAuthority(programAddress) {
|
|
80
|
+
const program = programAddress ? getSignerAddress(programAddress) : address(getAddresses().srsly);
|
|
81
|
+
// Encode seeds to bytes
|
|
82
|
+
const rentalAuthoritySeedBytes = textEncoder.encode(RENTAL_AUTHORITY_SEED);
|
|
83
|
+
const [pda] = await getProgramDerivedAddress({
|
|
84
|
+
programAddress: program,
|
|
85
|
+
seeds: [rentalAuthoritySeedBytes],
|
|
86
|
+
});
|
|
87
|
+
return pda;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Derive the borrower state PDA from a borrower address
|
|
91
|
+
* @param borrower - The borrower public key
|
|
92
|
+
* @param programAddress - Optional SRSLY program address (defaults to network-specific address)
|
|
93
|
+
* @returns The derived borrower state PDA
|
|
94
|
+
*/
|
|
95
|
+
export async function deriveBorrowerState(borrower, programAddress) {
|
|
96
|
+
const borrowerAddress = getSignerAddress(borrower);
|
|
97
|
+
const program = programAddress ? getSignerAddress(programAddress) : address(getAddresses().srsly);
|
|
98
|
+
// Encode seeds to bytes
|
|
99
|
+
const borrowerStateSeedBytes = textEncoder.encode(BORROWER_STATE_SEED);
|
|
100
|
+
const borrowerBytes = addressEncoder.encode(borrowerAddress);
|
|
101
|
+
const [pda] = await getProgramDerivedAddress({
|
|
102
|
+
programAddress: program,
|
|
103
|
+
seeds: [borrowerStateSeedBytes, borrowerBytes],
|
|
104
|
+
});
|
|
105
|
+
return pda;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Derive the config PDA
|
|
109
|
+
* @param programAddress - Optional SRSLY program address (defaults to network-specific address)
|
|
110
|
+
* @returns The derived config PDA
|
|
111
|
+
*/
|
|
112
|
+
export async function deriveConfig(programAddress) {
|
|
113
|
+
const program = programAddress ? getSignerAddress(programAddress) : address(getAddresses().srsly);
|
|
114
|
+
// Encode seeds to bytes
|
|
115
|
+
const configSeedBytes = textEncoder.encode(CONFIG_SEED);
|
|
116
|
+
const [pda] = await getProgramDerivedAddress({
|
|
117
|
+
programAddress: program,
|
|
118
|
+
seeds: [configSeedBytes],
|
|
119
|
+
});
|
|
120
|
+
return pda;
|
|
121
|
+
}
|
|
122
|
+
//# sourceMappingURL=srsly.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"srsly.js","sourceRoot":"","sources":["../../../src/pda/srsly.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PDA derivation functions for the Antegen (Thread) program
|
|
3
|
+
* @module pda/thread
|
|
4
|
+
*/
|
|
5
|
+
import { address, getProgramDerivedAddress, getAddressEncoder } from '@solana/kit';
|
|
6
|
+
import { getSignerAddress } from '../utils/signer';
|
|
7
|
+
import { THREAD_SEED, THREAD_FIBER_SEED, ANTEGEN_THREAD_PROGRAM, ANTEGEN_FIBER_PROGRAM, } from './constants';
|
|
8
|
+
/**
|
|
9
|
+
* Address encoder for PDA seeds
|
|
10
|
+
*/
|
|
11
|
+
const addressEncoder = getAddressEncoder();
|
|
12
|
+
/**
|
|
13
|
+
* Text encoder for string seeds
|
|
14
|
+
*/
|
|
15
|
+
const textEncoder = new TextEncoder();
|
|
16
|
+
/**
|
|
17
|
+
* Derive the contract thread PDA
|
|
18
|
+
*
|
|
19
|
+
* Per-contract thread used by Antegen for automated payment scheduling.
|
|
20
|
+
* Thread PDAs use seeds: [SEED_THREAD, authority, id]
|
|
21
|
+
* where id = contract address.
|
|
22
|
+
*
|
|
23
|
+
* @param contract - The contract PDA (used as the thread ID)
|
|
24
|
+
* @param authority - The rental authority PDA (thread authority)
|
|
25
|
+
* @param programAddress - Optional Antegen program address (defaults to Antegen program)
|
|
26
|
+
* @returns The derived contract thread PDA
|
|
27
|
+
*/
|
|
28
|
+
export async function deriveContractThread(contract, authority, programAddress) {
|
|
29
|
+
const contractAddress = getSignerAddress(contract);
|
|
30
|
+
const authorityAddr = getSignerAddress(authority);
|
|
31
|
+
const program = programAddress
|
|
32
|
+
? getSignerAddress(programAddress)
|
|
33
|
+
: address(ANTEGEN_THREAD_PROGRAM);
|
|
34
|
+
// Encode seeds to bytes
|
|
35
|
+
// Antegen ALWAYS uses: [SEED_THREAD, authority, id]
|
|
36
|
+
const threadSeedBytes = textEncoder.encode(THREAD_SEED);
|
|
37
|
+
const authorityBytes = addressEncoder.encode(authorityAddr);
|
|
38
|
+
const contractBytes = addressEncoder.encode(contractAddress);
|
|
39
|
+
const seeds = [threadSeedBytes, authorityBytes, contractBytes];
|
|
40
|
+
const [pda] = await getProgramDerivedAddress({
|
|
41
|
+
programAddress: program,
|
|
42
|
+
seeds,
|
|
43
|
+
});
|
|
44
|
+
return pda;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Derive the fiber PDA for a thread
|
|
48
|
+
*
|
|
49
|
+
* Fiber PDAs use seeds: ["thread_fiber", thread, fiber_index (u8)]
|
|
50
|
+
*
|
|
51
|
+
* @param thread - The thread PDA
|
|
52
|
+
* @param fiberIndex - The fiber index (1 for close_rental, 2 for activate_rental)
|
|
53
|
+
* @param programAddress - Optional Antegen program address
|
|
54
|
+
* @returns The derived fiber PDA
|
|
55
|
+
*/
|
|
56
|
+
export async function deriveFiber(thread, fiberIndex, programAddress) {
|
|
57
|
+
const threadAddress = getSignerAddress(thread);
|
|
58
|
+
const program = programAddress
|
|
59
|
+
? getSignerAddress(programAddress)
|
|
60
|
+
: address(ANTEGEN_FIBER_PROGRAM);
|
|
61
|
+
const fiberSeedBytes = textEncoder.encode(THREAD_FIBER_SEED);
|
|
62
|
+
const threadBytes = addressEncoder.encode(threadAddress);
|
|
63
|
+
const indexBytes = new Uint8Array([fiberIndex]);
|
|
64
|
+
const [pda] = await getProgramDerivedAddress({
|
|
65
|
+
programAddress: program,
|
|
66
|
+
seeds: [fiberSeedBytes, threadBytes, indexBytes],
|
|
67
|
+
});
|
|
68
|
+
return pda;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=thread.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thread.js","sourceRoot":"","sources":["../../../src/pda/thread.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAW,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAwB,MAAM,iBAAiB,CAAC;AACzE,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAEtC;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,QAAyB,EACzB,SAA0B,EAC1B,cAAgC;IAEhC,MAAM,eAAe,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,aAAa,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,cAAc;QAC5B,CAAC,CAAC,gBAAgB,CAAC,cAAc,CAAC;QAClC,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAEpC,wBAAwB;IACxB,oDAAoD;IACpD,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,CAAC,WAAW,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,wBAAwB,CAAC;QAC3C,cAAc,EAAE,OAAO;QACvB,KAAK;KACN,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,MAAuB,EACvB,UAAkB,EAClB,cAAgC;IAEhC,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,cAAc;QAC5B,CAAC,CAAC,gBAAgB,CAAC,cAAc,CAAC;QAClC,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAEnC,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,iBAAiB,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,wBAAwB,CAAC;QAC3C,cAAc,EAAE,OAAO;QACvB,KAAK,EAAE,CAAC,cAAc,EAAE,WAAW,EAAE,UAAU,CAAC;KACjD,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Token account derivation utilities
|
|
3
|
+
* @module pda/token
|
|
4
|
+
*/
|
|
5
|
+
import { address, getProgramDerivedAddress, getAddressEncoder } from '@solana/kit';
|
|
6
|
+
import { getSignerAddress } from '../utils/signer';
|
|
7
|
+
/**
|
|
8
|
+
* SPL Token program address
|
|
9
|
+
*/
|
|
10
|
+
const TOKEN_PROGRAM = 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA';
|
|
11
|
+
/**
|
|
12
|
+
* SPL Associated Token Account program address
|
|
13
|
+
*/
|
|
14
|
+
const ASSOCIATED_TOKEN_PROGRAM = 'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL';
|
|
15
|
+
/**
|
|
16
|
+
* Address encoder for PDA seeds
|
|
17
|
+
*/
|
|
18
|
+
const addressEncoder = getAddressEncoder();
|
|
19
|
+
/**
|
|
20
|
+
* Derive an Associated Token Account (ATA) address
|
|
21
|
+
*
|
|
22
|
+
* ATAs are deterministic token accounts owned by a wallet for a specific token mint.
|
|
23
|
+
* This is the standard way to derive token account addresses in Solana.
|
|
24
|
+
*
|
|
25
|
+
* @param owner - The wallet public key that owns the ATA
|
|
26
|
+
* @param mint - The token mint public key
|
|
27
|
+
* @param tokenProgramAddress - Optional token program address (defaults to SPL Token)
|
|
28
|
+
* @param associatedTokenProgramAddress - Optional ATA program address (defaults to SPL ATA)
|
|
29
|
+
* @returns The derived ATA address
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* ```typescript
|
|
33
|
+
* import { deriveAssociatedTokenAccount } from './token';
|
|
34
|
+
*
|
|
35
|
+
* const ata = await deriveAssociatedTokenAccount(
|
|
36
|
+
* walletAddress,
|
|
37
|
+
* atlasMintAddress
|
|
38
|
+
* );
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
export async function deriveAssociatedTokenAccount(owner, mint, tokenProgramAddress, associatedTokenProgramAddress) {
|
|
42
|
+
const ownerAddress = getSignerAddress(owner);
|
|
43
|
+
const mintAddress = getSignerAddress(mint);
|
|
44
|
+
const tokenProgram = tokenProgramAddress
|
|
45
|
+
? getSignerAddress(tokenProgramAddress)
|
|
46
|
+
: address(TOKEN_PROGRAM);
|
|
47
|
+
const ataProgram = associatedTokenProgramAddress
|
|
48
|
+
? getSignerAddress(associatedTokenProgramAddress)
|
|
49
|
+
: address(ASSOCIATED_TOKEN_PROGRAM);
|
|
50
|
+
// Encode all address seeds to bytes for PDA derivation
|
|
51
|
+
const ownerBytes = addressEncoder.encode(ownerAddress);
|
|
52
|
+
const tokenProgramBytes = addressEncoder.encode(tokenProgram);
|
|
53
|
+
const mintBytes = addressEncoder.encode(mintAddress);
|
|
54
|
+
const [pda] = await getProgramDerivedAddress({
|
|
55
|
+
programAddress: ataProgram,
|
|
56
|
+
seeds: [ownerBytes, tokenProgramBytes, mintBytes],
|
|
57
|
+
});
|
|
58
|
+
return pda;
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=token.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token.js","sourceRoot":"","sources":["../../../src/pda/token.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAW,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAwB,MAAM,iBAAiB,CAAC;AAEzE;;GAEG;AACH,MAAM,aAAa,GAAG,6CAA6C,CAAC;AAEpE;;GAEG;AACH,MAAM,wBAAwB,GAAG,8CAA8C,CAAC;AAEhF;;GAEG;AACH,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,KAAsB,EACtB,IAAqB,EACrB,mBAAqC,EACrC,6BAA+C;IAE/C,MAAM,YAAY,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,mBAAmB;QACtC,CAAC,CAAC,gBAAgB,CAAC,mBAAmB,CAAC;QACvC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC3B,MAAM,UAAU,GAAG,6BAA6B;QAC9C,CAAC,CAAC,gBAAgB,CAAC,6BAA6B,CAAC;QACjD,CAAC,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAEtC,uDAAuD;IACvD,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACvD,MAAM,iBAAiB,GAAG,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAErD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,wBAAwB,CAAC;QAC3C,cAAc,EAAE,UAAU;QAC1B,KAAK,EAAE,CAAC,UAAU,EAAE,iBAAiB,EAAE,SAAS,CAAC;KAClD,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @purpose Centralized program and token addresses for different networks
|
|
3
|
+
*
|
|
4
|
+
* Single source of truth for all Solana program addresses used by SRSLY.
|
|
5
|
+
* Supports mainnet-beta, devnet, and localnet environments.
|
|
6
|
+
*/
|
|
7
|
+
import { SRSLY_PROGRAM_ADDRESS } from '../generated/codama';
|
|
8
|
+
import { ANTEGEN_THREAD_PROGRAM } from '../pda/constants';
|
|
9
|
+
/**
|
|
10
|
+
* Genesis hash constants — canonical chain identifiers
|
|
11
|
+
*/
|
|
12
|
+
export const MAINNET_GENESIS = '5eykt4UsFv8P8NJdTREpY1vzqKqZKvdpKuc147dw2N9d';
|
|
13
|
+
export const DEVNET_GENESIS = 'EtWTRABZaYq6iMfeYKouRu166VU2xqa1wcaWoxPkrZBG';
|
|
14
|
+
export const ATLASNET_GENESIS = 'Ccod9gttTtZWqCeMgyTW3iCSoPLjkptAGsBUeP2CpchR';
|
|
15
|
+
const ALIAS_TO_GENESIS = {
|
|
16
|
+
mainnet: MAINNET_GENESIS,
|
|
17
|
+
atlasnet: ATLASNET_GENESIS,
|
|
18
|
+
holosim: ATLASNET_GENESIS,
|
|
19
|
+
localnet: ATLASNET_GENESIS,
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Antegen program address (same across all networks)
|
|
23
|
+
*/
|
|
24
|
+
const ANTEGEN_PROGRAM = ANTEGEN_THREAD_PROGRAM;
|
|
25
|
+
/**
|
|
26
|
+
* Mainnet addresses (production Star Atlas)
|
|
27
|
+
*/
|
|
28
|
+
const MAINNET_ADDRESSES = {
|
|
29
|
+
srsly: SRSLY_PROGRAM_ADDRESS,
|
|
30
|
+
sage: 'SAGE2HAwep459SNq61LHvjxPk4pLPEJLoMETef7f7EE',
|
|
31
|
+
antegen: ANTEGEN_PROGRAM,
|
|
32
|
+
atlasMint: 'ATLASXmbPQxBUYbxPsV97usA3fPQYEqzQBUHgiFCUsXx',
|
|
33
|
+
profileFaction: 'pFACSRuobDmvfMKq1bAzwj27t6d2GJhSCHb1VcfnRmq',
|
|
34
|
+
gameId: 'GAMEC7U7cqmFFaRow33j1LwuV8u4YhAS1mJ5Dqjnar2k',
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* Atlasnet addresses (Star Atlas testnet/devnet)
|
|
38
|
+
*/
|
|
39
|
+
const ATLASNET_ADDRESSES = {
|
|
40
|
+
srsly: SRSLY_PROGRAM_ADDRESS,
|
|
41
|
+
sage: 'SAgEeT8u14TE69JXtanGSgNkEdoPUcLabeyZD2uw8x9',
|
|
42
|
+
antegen: ANTEGEN_PROGRAM,
|
|
43
|
+
atlasMint: '6PhneWhbN4R3nFutrRUVnE3sNgRsFS6yPrjRC29mMWnv',
|
|
44
|
+
profileFaction: 'pFACzkX2eSpAjDyEohD6i3VRJvREtH9ynbtM1DwVFsj',
|
|
45
|
+
gameId: 'GAmEqxNYaUqLmLkXGhzUvv4Ud8FotnWPLj6ChdBkUh9j',
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* Program address sets keyed by genesis hash (source of truth)
|
|
49
|
+
*/
|
|
50
|
+
const PROGRAM_ADDRESS_SETS = {
|
|
51
|
+
[MAINNET_GENESIS]: MAINNET_ADDRESSES,
|
|
52
|
+
[DEVNET_GENESIS]: ATLASNET_ADDRESSES,
|
|
53
|
+
[ATLASNET_GENESIS]: ATLASNET_ADDRESSES,
|
|
54
|
+
};
|
|
55
|
+
/**
|
|
56
|
+
* Resolve a program set input (alias or genesis hash) to a genesis hash
|
|
57
|
+
*
|
|
58
|
+
* @param programSet - Named alias or genesis hash string
|
|
59
|
+
* @returns Genesis hash string
|
|
60
|
+
*/
|
|
61
|
+
export function resolveGenesisHash(programSet) {
|
|
62
|
+
// Check if it's a named alias
|
|
63
|
+
if (programSet in ALIAS_TO_GENESIS) {
|
|
64
|
+
return ALIAS_TO_GENESIS[programSet];
|
|
65
|
+
}
|
|
66
|
+
// Otherwise treat as genesis hash directly
|
|
67
|
+
return programSet;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Get addresses for a specific program set
|
|
71
|
+
*
|
|
72
|
+
* @param programSet - Program set identifier ('mainnet', 'atlasnet', or 'localnet')
|
|
73
|
+
* @returns Program-specific addresses
|
|
74
|
+
* @throws Error if program set is unknown
|
|
75
|
+
*
|
|
76
|
+
* @example
|
|
77
|
+
* ```typescript
|
|
78
|
+
* const addresses = getProgramAddresses('mainnet');
|
|
79
|
+
* console.log(addresses.atlasMint); // 'ATLASXmbP...'
|
|
80
|
+
*
|
|
81
|
+
* const testnetAddresses = getProgramAddresses('atlasnet');
|
|
82
|
+
* console.log(testnetAddresses.sage); // 'SAGEqqFew...'
|
|
83
|
+
* ```
|
|
84
|
+
*/
|
|
85
|
+
export function getProgramAddresses(programSet) {
|
|
86
|
+
const genesisHash = resolveGenesisHash(programSet);
|
|
87
|
+
const addresses = PROGRAM_ADDRESS_SETS[genesisHash];
|
|
88
|
+
if (!addresses) {
|
|
89
|
+
// Unknown genesis hash — fall back to devnet addresses
|
|
90
|
+
return PROGRAM_ADDRESS_SETS[DEVNET_GENESIS];
|
|
91
|
+
}
|
|
92
|
+
return addresses;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* @deprecated Use getProgramAddresses instead
|
|
96
|
+
*/
|
|
97
|
+
export function getNetworkAddresses(network) {
|
|
98
|
+
return getProgramAddresses(network);
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Check if a program set is valid
|
|
102
|
+
*
|
|
103
|
+
* @param programSet - Program set to validate
|
|
104
|
+
* @returns True if program set is supported
|
|
105
|
+
*/
|
|
106
|
+
export function isValidProgramSet(programSet) {
|
|
107
|
+
// Accept named aliases
|
|
108
|
+
if (programSet in ALIAS_TO_GENESIS)
|
|
109
|
+
return true;
|
|
110
|
+
// Accept known genesis hashes
|
|
111
|
+
if (programSet in PROGRAM_ADDRESS_SETS)
|
|
112
|
+
return true;
|
|
113
|
+
return false;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* @deprecated Use isValidProgramSet instead
|
|
117
|
+
*/
|
|
118
|
+
export function isValidNetwork(network) {
|
|
119
|
+
return isValidProgramSet(network);
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Re-export individual network addresses for direct access
|
|
123
|
+
*/
|
|
124
|
+
export { MAINNET_ADDRESSES, ATLASNET_ADDRESSES };
|
|
125
|
+
//# sourceMappingURL=addresses.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addresses.js","sourceRoot":"","sources":["../../../src/utils/addresses.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE1D;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,8CAA8C,CAAC;AAC9E,MAAM,CAAC,MAAM,cAAc,GAAG,8CAA8C,CAAC;AAC7E,MAAM,CAAC,MAAM,gBAAgB,GAAG,8CAA8C,CAAC;AAO/E,MAAM,gBAAgB,GAAoC;IACxD,OAAO,EAAE,eAAe;IACxB,QAAQ,EAAE,gBAAgB;IAC1B,OAAO,EAAE,gBAAgB;IACzB,QAAQ,EAAE,gBAAgB;CAC3B,CAAC;AAkCF;;GAEG;AACH,MAAM,eAAe,GAAG,sBAAsB,CAAC;AAE/C;;GAEG;AACH,MAAM,iBAAiB,GAAqB;IAC1C,KAAK,EAAE,qBAAqB;IAC5B,IAAI,EAAE,6CAA6C;IACnD,OAAO,EAAE,eAAe;IACxB,SAAS,EAAE,8CAA8C;IACzD,cAAc,EAAE,6CAA6C;IAC7D,MAAM,EAAE,8CAA8C;CACvD,CAAC;AAEF;;GAEG;AACH,MAAM,kBAAkB,GAAqB;IAC3C,KAAK,EAAE,qBAAqB;IAC5B,IAAI,EAAE,6CAA6C;IACnD,OAAO,EAAE,eAAe;IACxB,SAAS,EAAE,8CAA8C;IACzD,cAAc,EAAE,6CAA6C;IAC7D,MAAM,EAAE,8CAA8C;CACvD,CAAC;AAEF;;GAEG;AACH,MAAM,oBAAoB,GAAqC;IAC7D,CAAC,eAAe,CAAC,EAAE,iBAAiB;IACpC,CAAC,cAAc,CAAC,EAAE,kBAAkB;IACpC,CAAC,gBAAgB,CAAC,EAAE,kBAAkB;CACvC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,UAAkB;IACnD,8BAA8B;IAC9B,IAAI,UAAU,IAAI,gBAAgB,EAAE,CAAC;QACnC,OAAO,gBAAgB,CAAC,UAA6B,CAAC,CAAC;IACzD,CAAC;IACD,2CAA2C;IAC3C,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,mBAAmB,CAAC,UAAsB;IACxD,MAAM,WAAW,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;IAEpD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,uDAAuD;QACvD,OAAO,oBAAoB,CAAC,cAAc,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAmB;IACrD,OAAO,mBAAmB,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAAkB;IAClD,uBAAuB;IACvB,IAAI,UAAU,IAAI,gBAAgB;QAAE,OAAO,IAAI,CAAC;IAChD,8BAA8B;IAC9B,IAAI,UAAU,IAAI,oBAAoB;QAAE,OAAO,IAAI,CAAC;IACpD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,CAAC"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @purpose Reservation bid math helpers
|
|
3
|
+
*
|
|
4
|
+
* Pure-math + on-chain-fetch helpers for computing the contest minimum-bid
|
|
5
|
+
* floor that a challenger must clear to take an existing reservation.
|
|
6
|
+
* Mirrors the on-chain `ConfigState::bid_min_stardust` formula so client UIs
|
|
7
|
+
* (and on-chain-aware tooling) can preview the floor without hitting an RPC
|
|
8
|
+
* for every keystroke.
|
|
9
|
+
*/
|
|
10
|
+
import { fetchConfig } from '../accounts/config';
|
|
11
|
+
import { fetchContract } from '../accounts/contract';
|
|
12
|
+
import { fetchRental } from '../accounts/rental';
|
|
13
|
+
import { deriveActiveRental, deriveQueuedRental } from '../pda/srsly';
|
|
14
|
+
import { getRpcUrl } from './config';
|
|
15
|
+
import { createRpc } from './rpc';
|
|
16
|
+
const SYSTEM_PROGRAM_ID = '11111111111111111111111111111111';
|
|
17
|
+
/**
|
|
18
|
+
* Pure math: contest minimum-bid floor in stardust.
|
|
19
|
+
*
|
|
20
|
+
* Mirror of `ConfigState::bid_min_stardust` on-chain.
|
|
21
|
+
*
|
|
22
|
+
* floor = max(rate, defenderBid) × ramp
|
|
23
|
+
* ramp = max(captureRate, 1 + (maxMult - 1) × closeness)
|
|
24
|
+
*
|
|
25
|
+
* `closenessFraction` is in `[0, 1]` — the fraction of the active rental's
|
|
26
|
+
* remaining window that has elapsed since the defender's reservation. 0 =
|
|
27
|
+
* defender just placed; 1 = active rental about to end (snipe).
|
|
28
|
+
*
|
|
29
|
+
* `contestedMultiplierMaxBps` is on the protocol's custom 100=1× scale:
|
|
30
|
+
* 100 disables the ramp, 10_000 = 100×.
|
|
31
|
+
*/
|
|
32
|
+
export function computeMinimumBid(args) {
|
|
33
|
+
const closeness = Math.max(0, Math.min(1, args.closenessFraction));
|
|
34
|
+
const closenessBps = BigInt(Math.round(closeness * 10_000));
|
|
35
|
+
const maxBps = BigInt(Math.max(100, args.contestedMultiplierMaxBps));
|
|
36
|
+
const extraBps = maxBps - 100n;
|
|
37
|
+
// ramped_bps in 4-decimal precision: 10_000 = 1×, 46_500 = 4.65×.
|
|
38
|
+
const rampedBps = 10000n + (extraBps * closenessBps) / 100n;
|
|
39
|
+
const capBps = args.captureRateBps > 10000n ? args.captureRateBps : 10000n;
|
|
40
|
+
const effBps = rampedBps > capBps ? rampedBps : capBps;
|
|
41
|
+
const defenderBid = args.defenderBidStardust ?? 0n;
|
|
42
|
+
const base = args.rateStardust > defenderBid ? args.rateStardust : defenderBid;
|
|
43
|
+
return (base * effBps) / 10000n;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* High-level helper: compute the contest minimum bid for a contract right
|
|
47
|
+
* now (or at `now + delaySeconds`).
|
|
48
|
+
*
|
|
49
|
+
* Fetches `ConfigState`, `ContractState`, and the active/queued `RentalState`
|
|
50
|
+
* accounts, derives `closeness` from the active rental window, and returns
|
|
51
|
+
* the floor a challenger must clear plus enough context to render a UI.
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* ```ts
|
|
55
|
+
* const floor = await getMinimumBid({ contractAddress: 'Abc...' });
|
|
56
|
+
* console.log('Bid at least', floor.minBidStardust, 'stardust');
|
|
57
|
+
*
|
|
58
|
+
* // Preview the floor 4 hours from now (snipe-window pricing):
|
|
59
|
+
* const later = await getMinimumBid({
|
|
60
|
+
* contractAddress: 'Abc...',
|
|
61
|
+
* delaySeconds: 4 * 60 * 60,
|
|
62
|
+
* });
|
|
63
|
+
* ```
|
|
64
|
+
*
|
|
65
|
+
* If the contract has no active rental yet, closeness = 0 and the floor
|
|
66
|
+
* collapses to the rate-bump floor (`rate × captureRate`).
|
|
67
|
+
*/
|
|
68
|
+
export async function getMinimumBid(args) {
|
|
69
|
+
const rpcUrl = args.rpcUrl ?? getRpcUrl();
|
|
70
|
+
const rpc = createRpc(rpcUrl);
|
|
71
|
+
const cfgPromise = fetchConfig(rpcUrl);
|
|
72
|
+
const contractPromise = fetchContract(args.contractAddress, rpcUrl);
|
|
73
|
+
const [cfg, contract] = await Promise.all([cfgPromise, contractPromise]);
|
|
74
|
+
const cfgData = cfg.data;
|
|
75
|
+
const contractData = contract.data;
|
|
76
|
+
const rateStardust = BigInt(contractData.rate);
|
|
77
|
+
const atlasPerPoint = args.atlasPerPoint ?? BigInt(cfgData.atlasPerPoint);
|
|
78
|
+
const stardustPerAtlas = BigInt(cfgData.stardustToAtlas);
|
|
79
|
+
const activeAddr = await deriveActiveRental(contract.address);
|
|
80
|
+
const queuedAddr = await deriveQueuedRental(contract.address);
|
|
81
|
+
// Active rental — only meaningful if the contract field points at it.
|
|
82
|
+
let activeStart = null;
|
|
83
|
+
let activeEnd = null;
|
|
84
|
+
if (contractData.activeRental && contractData.activeRental.toString() !== SYSTEM_PROGRAM_ID) {
|
|
85
|
+
try {
|
|
86
|
+
const active = await fetchRental(activeAddr, rpcUrl);
|
|
87
|
+
const a = active.data;
|
|
88
|
+
activeStart = Number(a.startTime);
|
|
89
|
+
activeEnd = Number(a.endTime);
|
|
90
|
+
}
|
|
91
|
+
catch {
|
|
92
|
+
// Account missing despite contract pointer — treat as no active rental.
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
// Queued rental — defender bid lives here if a reservation exists.
|
|
96
|
+
let defenderBidStardust = 0n;
|
|
97
|
+
if (contractData.queuedRental && contractData.queuedRental.toString() !== SYSTEM_PROGRAM_ID) {
|
|
98
|
+
try {
|
|
99
|
+
const queued = await fetchRental(queuedAddr, rpcUrl);
|
|
100
|
+
const q = queued.data;
|
|
101
|
+
const bidAtlas = BigInt(q.bidAtlas);
|
|
102
|
+
const bidPoints = BigInt(q.bidPoints);
|
|
103
|
+
// Points are 8-decimal dust; converting to stardust requires the same
|
|
104
|
+
// 8-decimal precision: stardust = points_dust * atlasPerPoint *
|
|
105
|
+
// stardustPerAtlas / 1e8. With both at 1e8 precision this collapses
|
|
106
|
+
// to points_dust * atlasPerPoint.
|
|
107
|
+
const pointsAsStardust = bidPoints > 0n ? (bidPoints * atlasPerPoint * stardustPerAtlas) / 100000000n : 0n;
|
|
108
|
+
defenderBidStardust = bidAtlas + pointsAsStardust;
|
|
109
|
+
}
|
|
110
|
+
catch {
|
|
111
|
+
// Missing queued account — leave defenderBidStardust = 0.
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
const evaluatedAtSeconds = args.nowSeconds !== undefined
|
|
115
|
+
? Math.floor(args.nowSeconds)
|
|
116
|
+
: Math.floor(Date.now() / 1000) + Math.max(0, args.delaySeconds ?? 0);
|
|
117
|
+
let closeness = 0;
|
|
118
|
+
if (activeStart !== null && activeEnd !== null && activeEnd > activeStart) {
|
|
119
|
+
const span = activeEnd - activeStart;
|
|
120
|
+
const elapsed = evaluatedAtSeconds - activeStart;
|
|
121
|
+
closeness = Math.max(0, Math.min(1, elapsed / span));
|
|
122
|
+
}
|
|
123
|
+
const minBidStardust = computeMinimumBid({
|
|
124
|
+
rateStardust,
|
|
125
|
+
defenderBidStardust,
|
|
126
|
+
contestedMultiplierMaxBps: cfgData.contestedMultiplierMaxBps,
|
|
127
|
+
captureRateBps: BigInt(cfgData.captureRateBps),
|
|
128
|
+
closenessFraction: closeness,
|
|
129
|
+
});
|
|
130
|
+
const baseStardust = rateStardust > defenderBidStardust ? rateStardust : defenderBidStardust;
|
|
131
|
+
const rampMultiplier = baseStardust > 0n ? Number(minBidStardust) / Number(baseStardust) : 1;
|
|
132
|
+
// RPC reference kept to match the codebase pattern even when unused;
|
|
133
|
+
// future refinements (e.g. fetching chain time) can plug in here.
|
|
134
|
+
void rpc;
|
|
135
|
+
return {
|
|
136
|
+
minBidStardust,
|
|
137
|
+
defenderBidStardust,
|
|
138
|
+
rateStardust,
|
|
139
|
+
closenessFraction: closeness,
|
|
140
|
+
rampMultiplier,
|
|
141
|
+
evaluatedAtSeconds,
|
|
142
|
+
activeEndSeconds: activeEnd,
|
|
143
|
+
activeStartSeconds: activeStart,
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=bidMath.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bidMath.js","sourceRoot":"","sources":["../../../src/utils/bidMath.ts"],"names":[],"mappings":"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"}
|