@wuwei-labs/srsly 3.0.0-beta.23 → 3.0.0-beta.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/demos.js +0 -1
- package/dist/cjs/demos.js.map +1 -1
- package/dist/cjs/generated/codama/accounts/configState.js +4 -5
- package/dist/cjs/generated/codama/accounts/configState.js.map +1 -1
- package/dist/cjs/generated/codama/accounts/rentalState.js +6 -6
- package/dist/cjs/generated/codama/accounts/rentalState.js.map +1 -1
- package/dist/cjs/generated/codama/accounts/thread.js +0 -2
- package/dist/cjs/generated/codama/accounts/thread.js.map +1 -1
- package/dist/cjs/generated/codama/errors/srsly.js +7 -1
- package/dist/cjs/generated/codama/errors/srsly.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/closeContractThread.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/reserveRental.js +4 -2
- package/dist/cjs/generated/codama/instructions/reserveRental.js.map +1 -1
- package/dist/cjs/generated/codama/instructions/updateConfig.js +0 -14
- package/dist/cjs/generated/codama/instructions/updateConfig.js.map +1 -1
- package/dist/cjs/generated/codama/types/contractProcessed.js +33 -0
- package/dist/cjs/generated/codama/types/contractProcessed.js.map +1 -0
- package/dist/cjs/generated/codama/types/index.js +2 -4
- package/dist/cjs/generated/codama/types/index.js.map +1 -1
- package/dist/cjs/generated/codama/types/rentalExpired.js +31 -0
- package/dist/cjs/generated/codama/types/rentalExpired.js.map +1 -0
- package/dist/cjs/generated/codama/types/reservationCreated.js +4 -5
- package/dist/cjs/generated/codama/types/reservationCreated.js.map +1 -1
- package/dist/cjs/instructions/acceptRental.js +27 -9
- package/dist/cjs/instructions/acceptRental.js.map +1 -1
- package/dist/cjs/instructions/createContract.js +36 -1
- package/dist/cjs/instructions/createContract.js.map +1 -1
- package/dist/cjs/instructions/reserveRental.js +10 -6
- package/dist/cjs/instructions/reserveRental.js.map +1 -1
- package/dist/cjs/instructions/updateConfig.js +0 -2
- package/dist/cjs/instructions/updateConfig.js.map +1 -1
- package/dist/cjs/package.json +1 -1
- package/dist/cjs/pda/lookupTable.js +3 -2
- package/dist/cjs/pda/lookupTable.js.map +1 -1
- package/dist/cjs/pda/sage.js +11 -10
- package/dist/cjs/pda/sage.js.map +1 -1
- package/dist/cjs/pda/srsly.js +9 -8
- package/dist/cjs/pda/srsly.js.map +1 -1
- package/dist/cjs/pda/thread.js +6 -5
- package/dist/cjs/pda/thread.js.map +1 -1
- package/dist/cjs/pda/token.js +5 -4
- package/dist/cjs/pda/token.js.map +1 -1
- package/dist/cjs/utils/signer.js +8 -1
- package/dist/cjs/utils/signer.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/demos.js +0 -1
- package/dist/esm/demos.js.map +1 -1
- package/dist/esm/generated/codama/accounts/configState.js +4 -6
- package/dist/esm/generated/codama/accounts/configState.js.map +1 -1
- package/dist/esm/generated/codama/accounts/rentalState.js +7 -7
- package/dist/esm/generated/codama/accounts/rentalState.js.map +1 -1
- package/dist/esm/generated/codama/accounts/thread.js +1 -3
- package/dist/esm/generated/codama/accounts/thread.js.map +1 -1
- package/dist/esm/generated/codama/errors/srsly.js +6 -0
- package/dist/esm/generated/codama/errors/srsly.js.map +1 -1
- package/dist/esm/generated/codama/instructions/closeContractThread.js.map +1 -1
- package/dist/esm/generated/codama/instructions/reserveRental.js +5 -3
- package/dist/esm/generated/codama/instructions/reserveRental.js.map +1 -1
- package/dist/esm/generated/codama/instructions/updateConfig.js +1 -15
- package/dist/esm/generated/codama/instructions/updateConfig.js.map +1 -1
- package/dist/esm/generated/codama/types/contractProcessed.js +28 -0
- package/dist/esm/generated/codama/types/contractProcessed.js.map +1 -0
- package/dist/esm/generated/codama/types/index.js +2 -4
- package/dist/esm/generated/codama/types/index.js.map +1 -1
- package/dist/esm/generated/codama/types/rentalExpired.js +26 -0
- package/dist/esm/generated/codama/types/rentalExpired.js.map +1 -0
- package/dist/esm/generated/codama/types/reservationCreated.js +5 -6
- package/dist/esm/generated/codama/types/reservationCreated.js.map +1 -1
- package/dist/esm/instructions/acceptRental.js +27 -9
- package/dist/esm/instructions/acceptRental.js.map +1 -1
- package/dist/esm/instructions/createContract.js +38 -3
- package/dist/esm/instructions/createContract.js.map +1 -1
- package/dist/esm/instructions/reserveRental.js +10 -6
- package/dist/esm/instructions/reserveRental.js.map +1 -1
- package/dist/esm/instructions/updateConfig.js +0 -2
- package/dist/esm/instructions/updateConfig.js.map +1 -1
- package/dist/esm/package.json +1 -1
- package/dist/esm/pda/lookupTable.js +3 -2
- package/dist/esm/pda/lookupTable.js.map +1 -1
- package/dist/esm/pda/sage.js +11 -10
- package/dist/esm/pda/sage.js.map +1 -1
- package/dist/esm/pda/srsly.js +9 -8
- package/dist/esm/pda/srsly.js.map +1 -1
- package/dist/esm/pda/thread.js +6 -5
- package/dist/esm/pda/thread.js.map +1 -1
- package/dist/esm/pda/token.js +5 -4
- package/dist/esm/pda/token.js.map +1 -1
- package/dist/esm/utils/signer.js +8 -1
- package/dist/esm/utils/signer.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/idl/srsly.json +84 -184
- package/dist/types/demos.d.ts.map +1 -1
- package/dist/types/generated/codama/accounts/configState.d.ts +5 -13
- package/dist/types/generated/codama/accounts/configState.d.ts.map +1 -1
- package/dist/types/generated/codama/accounts/rentalState.d.ts +13 -13
- package/dist/types/generated/codama/accounts/rentalState.d.ts.map +1 -1
- package/dist/types/generated/codama/accounts/thread.d.ts +1 -3
- package/dist/types/generated/codama/accounts/thread.d.ts.map +1 -1
- package/dist/types/generated/codama/errors/srsly.d.ts +5 -1
- package/dist/types/generated/codama/errors/srsly.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/closeContractThread.d.ts +3 -0
- package/dist/types/generated/codama/instructions/closeContractThread.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/reserveRental.d.ts +8 -4
- package/dist/types/generated/codama/instructions/reserveRental.d.ts.map +1 -1
- package/dist/types/generated/codama/instructions/updateConfig.d.ts +0 -13
- package/dist/types/generated/codama/instructions/updateConfig.d.ts.map +1 -1
- package/dist/types/generated/codama/types/contractProcessed.d.ts +24 -0
- package/dist/types/generated/codama/types/contractProcessed.d.ts.map +1 -0
- package/dist/types/generated/codama/types/index.d.ts +2 -4
- package/dist/types/generated/codama/types/index.d.ts.map +1 -1
- package/dist/types/generated/codama/types/rentalExpired.d.ts +18 -0
- package/dist/types/generated/codama/types/rentalExpired.d.ts.map +1 -0
- package/dist/types/generated/codama/types/reservationCreated.d.ts +4 -5
- package/dist/types/generated/codama/types/reservationCreated.d.ts.map +1 -1
- package/dist/types/instructions/acceptRental.d.ts +8 -0
- package/dist/types/instructions/acceptRental.d.ts.map +1 -1
- package/dist/types/instructions/createContract.d.ts +23 -0
- package/dist/types/instructions/createContract.d.ts.map +1 -1
- package/dist/types/instructions/reserveRental.d.ts +10 -4
- package/dist/types/instructions/reserveRental.d.ts.map +1 -1
- package/dist/types/instructions/updateConfig.d.ts +0 -9
- package/dist/types/instructions/updateConfig.d.ts.map +1 -1
- package/dist/types/pda/index.d.ts +1 -0
- package/dist/types/pda/index.d.ts.map +1 -1
- package/dist/types/pda/lookupTable.d.ts +2 -1
- package/dist/types/pda/lookupTable.d.ts.map +1 -1
- package/dist/types/pda/sage.d.ts +6 -5
- package/dist/types/pda/sage.d.ts.map +1 -1
- package/dist/types/pda/srsly.d.ts +7 -6
- package/dist/types/pda/srsly.d.ts.map +1 -1
- package/dist/types/pda/thread.d.ts +3 -2
- package/dist/types/pda/thread.d.ts.map +1 -1
- package/dist/types/pda/token.d.ts +2 -1
- package/dist/types/pda/token.d.ts.map +1 -1
- package/dist/types/utils/signer.d.ts +3 -0
- package/dist/types/utils/signer.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/package.json +2 -2
|
@@ -11,13 +11,12 @@ exports.getReservationCreatedEncoder = getReservationCreatedEncoder;
|
|
|
11
11
|
exports.getReservationCreatedDecoder = getReservationCreatedDecoder;
|
|
12
12
|
exports.getReservationCreatedCodec = getReservationCreatedCodec;
|
|
13
13
|
const kit_1 = require("@solana/kit");
|
|
14
|
-
const _1 = require(".");
|
|
15
14
|
function getReservationCreatedEncoder() {
|
|
16
15
|
return (0, kit_1.getStructEncoder)([
|
|
17
16
|
["contract", (0, kit_1.getAddressEncoder)()],
|
|
18
17
|
["challenger", (0, kit_1.getAddressEncoder)()],
|
|
19
|
-
["
|
|
20
|
-
["
|
|
18
|
+
["bidPoints", (0, kit_1.getU32Encoder)()],
|
|
19
|
+
["bidAtlas", (0, kit_1.getU64Encoder)()],
|
|
21
20
|
["escrowAmount", (0, kit_1.getU64Encoder)()],
|
|
22
21
|
["serviceFee", (0, kit_1.getU64Encoder)()],
|
|
23
22
|
["durationSeconds", (0, kit_1.getI64Encoder)()],
|
|
@@ -27,8 +26,8 @@ function getReservationCreatedDecoder() {
|
|
|
27
26
|
return (0, kit_1.getStructDecoder)([
|
|
28
27
|
["contract", (0, kit_1.getAddressDecoder)()],
|
|
29
28
|
["challenger", (0, kit_1.getAddressDecoder)()],
|
|
30
|
-
["
|
|
31
|
-
["
|
|
29
|
+
["bidPoints", (0, kit_1.getU32Decoder)()],
|
|
30
|
+
["bidAtlas", (0, kit_1.getU64Decoder)()],
|
|
32
31
|
["escrowAmount", (0, kit_1.getU64Decoder)()],
|
|
33
32
|
["serviceFee", (0, kit_1.getU64Decoder)()],
|
|
34
33
|
["durationSeconds", (0, kit_1.getI64Decoder)()],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reservationCreated.js","sourceRoot":"","sources":["../../../../../src/generated/codama/types/reservationCreated.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;
|
|
1
|
+
{"version":3,"file":"reservationCreated.js","sourceRoot":"","sources":["../../../../../src/generated/codama/types/reservationCreated.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAwCH,oEAUC;AAED,oEAUC;AAED,gEAQC;AAtED,qCAgBqB;AAsBrB,SAAgB,4BAA4B;IAC1C,OAAO,IAAA,sBAAgB,EAAC;QACtB,CAAC,UAAU,EAAE,IAAA,uBAAiB,GAAE,CAAC;QACjC,CAAC,YAAY,EAAE,IAAA,uBAAiB,GAAE,CAAC;QACnC,CAAC,WAAW,EAAE,IAAA,mBAAa,GAAE,CAAC;QAC9B,CAAC,UAAU,EAAE,IAAA,mBAAa,GAAE,CAAC;QAC7B,CAAC,cAAc,EAAE,IAAA,mBAAa,GAAE,CAAC;QACjC,CAAC,YAAY,EAAE,IAAA,mBAAa,GAAE,CAAC;QAC/B,CAAC,iBAAiB,EAAE,IAAA,mBAAa,GAAE,CAAC;KACrC,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,4BAA4B;IAC1C,OAAO,IAAA,sBAAgB,EAAC;QACtB,CAAC,UAAU,EAAE,IAAA,uBAAiB,GAAE,CAAC;QACjC,CAAC,YAAY,EAAE,IAAA,uBAAiB,GAAE,CAAC;QACnC,CAAC,WAAW,EAAE,IAAA,mBAAa,GAAE,CAAC;QAC9B,CAAC,UAAU,EAAE,IAAA,mBAAa,GAAE,CAAC;QAC7B,CAAC,cAAc,EAAE,IAAA,mBAAa,GAAE,CAAC;QACjC,CAAC,YAAY,EAAE,IAAA,mBAAa,GAAE,CAAC;QAC/B,CAAC,iBAAiB,EAAE,IAAA,mBAAa,GAAE,CAAC;KACrC,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,0BAA0B;IAIxC,OAAO,IAAA,kBAAY,EACjB,4BAA4B,EAAE,EAC9B,4BAA4B,EAAE,CAC/B,CAAC;AACJ,CAAC"}
|
|
@@ -17,12 +17,14 @@ const fleet_1 = require("../accounts/fleet");
|
|
|
17
17
|
const contract_1 = require("../accounts/contract");
|
|
18
18
|
const config_2 = require("../accounts/config");
|
|
19
19
|
const borrower_1 = require("../accounts/borrower");
|
|
20
|
+
const rental_1 = require("../accounts/rental");
|
|
20
21
|
const sage_1 = require("../pda/sage");
|
|
21
22
|
const srsly_1 = require("../pda/srsly");
|
|
22
23
|
const token_1 = require("../pda/token");
|
|
23
24
|
const thread_1 = require("../pda/thread");
|
|
24
25
|
const instructions_2 = require("../utils/instructions");
|
|
25
26
|
const discountAuth_1 = require("../utils/discountAuth");
|
|
27
|
+
const types_1 = require("../generated/codama/types");
|
|
26
28
|
/**
|
|
27
29
|
* Accept a rental contract
|
|
28
30
|
*
|
|
@@ -64,18 +66,17 @@ async function acceptRental(params, config) {
|
|
|
64
66
|
}
|
|
65
67
|
// Convert borrower to transaction signer
|
|
66
68
|
const borrowerSigner = (0, signer_1.toTransactionSigner)(params.borrower);
|
|
67
|
-
//
|
|
69
|
+
// Use param if provided, auto-fetch only when omitted
|
|
68
70
|
let borrowerProfile;
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
borrowerProfile = borrowerAccount.data.borrowerProfile;
|
|
71
|
+
if (params.borrowerProfile) {
|
|
72
|
+
borrowerProfile = (0, kit_1.address)(params.borrowerProfile);
|
|
72
73
|
}
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
borrowerProfile =
|
|
74
|
+
else {
|
|
75
|
+
try {
|
|
76
|
+
const borrowerAccount = await (0, borrower_1.fetchBorrower)(borrowerSigner.address, finalConfig.rpcUrl);
|
|
77
|
+
borrowerProfile = borrowerAccount.data.borrowerProfile;
|
|
77
78
|
}
|
|
78
|
-
|
|
79
|
+
catch {
|
|
79
80
|
throw new Error('borrowerProfile is required for first-time borrowers');
|
|
80
81
|
}
|
|
81
82
|
}
|
|
@@ -101,6 +102,22 @@ async function acceptRental(params, config) {
|
|
|
101
102
|
const gameAccounts = await (0, sage_1.deriveGameAccounts)(borrowerProfile, faction, gameId);
|
|
102
103
|
// Derive active rental PDA (no more slot logic)
|
|
103
104
|
const rentalState = await (0, srsly_1.deriveActiveRental)(params.contract);
|
|
105
|
+
// Resolve expiredBorrowerState: use param if provided, otherwise auto-detect
|
|
106
|
+
let expiredBorrowerState;
|
|
107
|
+
if (params.expiredBorrowerState) {
|
|
108
|
+
expiredBorrowerState = (0, kit_1.address)(params.expiredBorrowerState);
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
try {
|
|
112
|
+
const activeRental = await (0, rental_1.fetchRental)(rentalState, finalConfig.rpcUrl);
|
|
113
|
+
if (activeRental.data.status !== types_1.RentalStatus.Available) {
|
|
114
|
+
expiredBorrowerState = activeRental.data.borrowerState;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
catch {
|
|
118
|
+
// Rental state doesn't exist or can't be fetched — no expired rental to replace
|
|
119
|
+
}
|
|
120
|
+
}
|
|
104
121
|
// Derive rental authority PDA
|
|
105
122
|
const rentalAuthority = await (0, srsly_1.deriveRentalAuthority)();
|
|
106
123
|
// Derive contract thread and close_rental fiber (fiber index 1) — only if thread configured
|
|
@@ -133,6 +150,7 @@ async function acceptRental(params, config) {
|
|
|
133
150
|
borrower: borrowerSigner,
|
|
134
151
|
borrowerTokenAccount,
|
|
135
152
|
fleet: (0, kit_1.address)(fleet),
|
|
153
|
+
expiredBorrowerState,
|
|
136
154
|
contract: contractAddress,
|
|
137
155
|
rentalState,
|
|
138
156
|
vault: (0, kit_1.address)(vault),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acceptRental.js","sourceRoot":"","sources":["../../../src/instructions/acceptRental.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;
|
|
1
|
+
{"version":3,"file":"acceptRental.js","sourceRoot":"","sources":["../../../src/instructions/acceptRental.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,9 +13,14 @@ const config_1 = require("../utils/config");
|
|
|
13
13
|
const signer_1 = require("../utils/signer");
|
|
14
14
|
const amount_1 = require("../params/amount");
|
|
15
15
|
const duration_1 = require("../params/duration");
|
|
16
|
+
const schedule_1 = require("../params/schedule");
|
|
17
|
+
const sol_1 = require("../params/sol");
|
|
16
18
|
const fleet_1 = require("../accounts/fleet");
|
|
17
19
|
const config_2 = require("../accounts/config");
|
|
18
20
|
const instructions_2 = require("../utils/instructions");
|
|
21
|
+
const srsly_1 = require("../pda/srsly");
|
|
22
|
+
const thread_1 = require("../pda/thread");
|
|
23
|
+
const token_1 = require("../pda/token");
|
|
19
24
|
/**
|
|
20
25
|
* Create a rental contract for a Star Atlas fleet
|
|
21
26
|
*
|
|
@@ -80,7 +85,7 @@ async function createContract(params, config) {
|
|
|
80
85
|
const sageProgram = (0, kit_1.address)(addresses.sage);
|
|
81
86
|
const programAddress = (0, kit_1.address)(addresses.srsly);
|
|
82
87
|
// Convert cancelDelayMin duration to seconds
|
|
83
|
-
const cancelDelayMinSeconds = params.cancelDelayMin
|
|
88
|
+
const cancelDelayMinSeconds = params.cancelDelayMin !== undefined
|
|
84
89
|
? BigInt((0, duration_1.convertDuration)(params.cancelDelayMin))
|
|
85
90
|
: 1n; // Default 1 second (no instant cancel)
|
|
86
91
|
// Call Codama-generated instruction
|
|
@@ -98,6 +103,36 @@ async function createContract(params, config) {
|
|
|
98
103
|
cancelDelayMin: cancelDelayMinSeconds,
|
|
99
104
|
reservationsDisabled: params.reservationsDisabled ?? true
|
|
100
105
|
}, { programAddress });
|
|
106
|
+
// Default: bundle thread creation for automation
|
|
107
|
+
if (params.automated !== false) {
|
|
108
|
+
const paymentsFreq = (0, schedule_1.normalizeSchedule)(params.paymentsFreq ?? '@daily');
|
|
109
|
+
// Derive PDAs locally (contract doesn't exist on-chain yet)
|
|
110
|
+
const contractAddress = await (0, srsly_1.deriveContract)(params.fleet);
|
|
111
|
+
const contractTokenAccount = await (0, token_1.deriveAssociatedTokenAccount)(contractAddress, atlasMint);
|
|
112
|
+
const rentalAuthority = await (0, srsly_1.deriveRentalAuthority)();
|
|
113
|
+
const contractThread = await (0, thread_1.deriveContractThread)(contractAddress, rentalAuthority);
|
|
114
|
+
const fiber0 = await (0, thread_1.deriveFiber)(contractThread, 0);
|
|
115
|
+
const closeRentalFiber = await (0, thread_1.deriveFiber)(contractThread, 1);
|
|
116
|
+
const ownerAddress = (0, signer_1.getSignerAddress)(params.owner);
|
|
117
|
+
const MINIMUM_THREAD_FUNDING = 40000000n;
|
|
118
|
+
const threadIx = await (0, instructions_1.getCreateContractThreadInstructionAsync)({
|
|
119
|
+
payer: ownerSigner,
|
|
120
|
+
mint: atlasMint,
|
|
121
|
+
contract: contractAddress,
|
|
122
|
+
contractThread,
|
|
123
|
+
fiber0,
|
|
124
|
+
closeRentalFiber,
|
|
125
|
+
owner: ownerAddress,
|
|
126
|
+
contractTokenAccount,
|
|
127
|
+
sageProgram,
|
|
128
|
+
lamports: MINIMUM_THREAD_FUNDING + (0, sol_1.convertSol)(params.threadLamports ?? 0),
|
|
129
|
+
paymentsFreq,
|
|
130
|
+
}, { programAddress });
|
|
131
|
+
return (0, instructions_2.prepareInstructions)([kitInstruction, threadIx], {
|
|
132
|
+
computeUnits: params.computeUnits,
|
|
133
|
+
PublicKey: finalConfig.PublicKey
|
|
134
|
+
});
|
|
135
|
+
}
|
|
101
136
|
return (0, instructions_2.prepareInstructions)(kitInstruction, {
|
|
102
137
|
computeUnits: params.computeUnits,
|
|
103
138
|
PublicKey: finalConfig.PublicKey
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createContract.js","sourceRoot":"","sources":["../../../src/instructions/createContract.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;
|
|
1
|
+
{"version":3,"file":"createContract.js","sourceRoot":"","sources":["../../../src/instructions/createContract.ts"],"names":[],"mappings":"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"}
|
|
@@ -59,12 +59,17 @@ async function reserveRental(params, config) {
|
|
|
59
59
|
if (!params.contract) {
|
|
60
60
|
throw new Error('contract is required');
|
|
61
61
|
}
|
|
62
|
-
if (params.amount === undefined || params.amount === null) {
|
|
63
|
-
throw new Error('amount is required');
|
|
64
|
-
}
|
|
65
62
|
if (!params.duration) {
|
|
66
63
|
throw new Error('duration is required');
|
|
67
64
|
}
|
|
65
|
+
const bidPoints = params.bidPoints ?? 0;
|
|
66
|
+
const bidAtlasValue = params.bidAtlas ? (0, amount_1.convertAmount)(params.bidAtlas) : 0n;
|
|
67
|
+
if (bidPoints === 0 && bidAtlasValue === 0n) {
|
|
68
|
+
throw new Error('Must provide either bidPoints or bidAtlas');
|
|
69
|
+
}
|
|
70
|
+
if (bidPoints > 0 && bidAtlasValue > 0n) {
|
|
71
|
+
throw new Error('bidPoints and bidAtlas are mutually exclusive');
|
|
72
|
+
}
|
|
68
73
|
// Convert challenger to transaction signer
|
|
69
74
|
const challengerSigner = (0, signer_1.toTransactionSigner)(params.challenger);
|
|
70
75
|
// Get network-specific addresses
|
|
@@ -88,8 +93,6 @@ async function reserveRental(params, config) {
|
|
|
88
93
|
const contractTokenAccount = await (0, token_1.deriveAssociatedTokenAccount)(contractAddress, atlasMint);
|
|
89
94
|
// Derive challenger's token account
|
|
90
95
|
const challengerTokenAccount = await (0, token_1.deriveAssociatedTokenAccount)(challengerSigner.address, atlasMint);
|
|
91
|
-
// Convert amount to stardust
|
|
92
|
-
const amountValue = (0, amount_1.convertAmount)(params.amount);
|
|
93
96
|
// Convert duration to seconds
|
|
94
97
|
const durationSeconds = (0, duration_1.convertDuration)(params.duration);
|
|
95
98
|
// Deserialize discount auth if provided
|
|
@@ -109,7 +112,8 @@ async function reserveRental(params, config) {
|
|
|
109
112
|
rentalState,
|
|
110
113
|
referrer,
|
|
111
114
|
sageProgram,
|
|
112
|
-
|
|
115
|
+
bidPoints,
|
|
116
|
+
bidAtlas: bidAtlasValue,
|
|
113
117
|
duration: BigInt(durationSeconds),
|
|
114
118
|
discountAuth,
|
|
115
119
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reserveRental.js","sourceRoot":"","sources":["../../../src/instructions/reserveRental.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;
|
|
1
|
+
{"version":3,"file":"reserveRental.js","sourceRoot":"","sources":["../../../src/instructions/reserveRental.ts"],"names":[],"mappings":"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"}
|
|
@@ -81,8 +81,6 @@ async function updateConfig(params, config) {
|
|
|
81
81
|
rentalDurationMinSeconds: toOption(params.rentalDurationMinSeconds),
|
|
82
82
|
rentalDurationMaxSeconds: toOption(params.rentalDurationMaxSeconds),
|
|
83
83
|
atlasMint: toOption(atlasMintAddress),
|
|
84
|
-
defaultPaymentFrequency: toOption(params.defaultPaymentFrequency),
|
|
85
|
-
allowedFrequencies: toOption(params.allowedFrequencies),
|
|
86
84
|
reservationsEnabled: toOption(params.reservationsEnabled),
|
|
87
85
|
pointsPerDay: toOption(params.pointsPerDay),
|
|
88
86
|
cancellationPenalty: toOption(params.cancellationPenalty),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateConfig.js","sourceRoot":"","sources":["../../../src/instructions/updateConfig.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;
|
|
1
|
+
{"version":3,"file":"updateConfig.js","sourceRoot":"","sources":["../../../src/instructions/updateConfig.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AA8JH,oCAyDC;AArND,qCAMqB;AACrB,mEAAmF;AACnF,4CAA4E;AAC5E,4CAA4E;AAE5E,wDAA4D;AAyG5D;;GAEG;AACH,SAAS,QAAQ,CAAI,KAA2B;IAC9C,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAA,UAAI,GAAK,CAAC,CAAC,CAAC,IAAA,UAAI,EAAI,KAAK,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACI,KAAK,UAAU,YAAY,CAChC,MAA0B,EAC1B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,IAAA,oBAAW,EAAC,MAAM,CAAC,CAAC;IAExC,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IAED,sCAAsC;IACtC,MAAM,WAAW,GAAG,IAAA,4BAAmB,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEtD,iCAAiC;IACjC,MAAM,SAAS,GAAG,IAAA,qBAAY,EAAC,MAAM,CAAC,CAAC;IACvC,MAAM,cAAc,GAAG,IAAA,aAAO,EAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAE3D,0CAA0C;IAC1C,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ;QACrC,CAAC,CAAC,IAAA,aAAO,EAAC,MAAM,CAAC,QAAmB,CAAC;QACrC,CAAC,CAAC,SAAS,CAAC;IAEd,2CAA2C;IAC3C,MAAM,gBAAgB,GAAG,MAAM,CAAC,SAAS;QACvC,CAAC,CAAC,IAAA,aAAO,EAAC,MAAM,CAAC,SAAoB,CAAC;QACtC,CAAC,CAAC,SAAS,CAAC;IAEd,oCAAoC;IACpC,MAAM,cAAc,GAAG,MAAM,IAAA,8CAA+B,EAC1D;QACE,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,QAAQ,CAAC,eAAe,CAAC;QACnC,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC;QACjD,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC;QAC7C,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;QACjC,wBAAwB,EAAE,QAAQ,CAAC,MAAM,CAAC,wBAAwB,CAAC;QACnE,wBAAwB,EAAE,QAAQ,CAAC,MAAM,CAAC,wBAAwB,CAAC;QACnE,SAAS,EAAE,QAAQ,CAAC,gBAAgB,CAAC;QACrC,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,mBAAmB,CAAC;QACzD,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC;QAC3C,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,mBAAmB,CAAC;QACzD,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,mBAAmB,CAAC;QACzD,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC;QACvC,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC;QACnD,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;QACrC,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC;QAC/C,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC;KAC9C,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,IAAA,kCAAmB,EAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
|
package/dist/cjs/package.json
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.deriveLookupTable = deriveLookupTable;
|
|
8
8
|
const kit_1 = require("@solana/kit");
|
|
9
|
+
const signer_1 = require("../utils/signer");
|
|
9
10
|
/**
|
|
10
11
|
* Address Lookup Table program address
|
|
11
12
|
*/
|
|
@@ -43,9 +44,9 @@ function slotToBytes(slot) {
|
|
|
43
44
|
* ```
|
|
44
45
|
*/
|
|
45
46
|
async function deriveLookupTable(authority, recentSlot, altProgramAddress) {
|
|
46
|
-
const authorityAddress = (0,
|
|
47
|
+
const authorityAddress = (0, signer_1.getSignerAddress)(authority);
|
|
47
48
|
const altProgram = altProgramAddress
|
|
48
|
-
? (0,
|
|
49
|
+
? (0, signer_1.getSignerAddress)(altProgramAddress)
|
|
49
50
|
: (0, kit_1.address)(ALT_PROGRAM);
|
|
50
51
|
// Encode authority and slot to bytes
|
|
51
52
|
const authorityBytes = addressEncoder.encode(authorityAddress);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lookupTable.js","sourceRoot":"","sources":["../../../src/pda/lookupTable.ts"],"names":[],"mappings":";AAAA;;;GAGG;;
|
|
1
|
+
{"version":3,"file":"lookupTable.js","sourceRoot":"","sources":["../../../src/pda/lookupTable.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AA4CH,8CAoBC;AA9DD,qCAA4F;AAC5F,4CAAyE;AAEzE;;GAEG;AACH,MAAM,WAAW,GAAG,6CAA6C,CAAC;AAElE,MAAM,cAAc,GAAG,IAAA,uBAAiB,GAAE,CAAC;AAE3C;;GAEG;AACH,SAAS,WAAW,CAAC,IAAqB;IACxC,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,gBAAgB;IAC1D,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACI,KAAK,UAAU,iBAAiB,CACrC,SAA0B,EAC1B,UAA2B,EAC3B,iBAAmC;IAEnC,MAAM,gBAAgB,GAAG,IAAA,yBAAgB,EAAC,SAAS,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,iBAAiB;QAClC,CAAC,CAAC,IAAA,yBAAgB,EAAC,iBAAiB,CAAC;QACrC,CAAC,CAAC,IAAA,aAAO,EAAC,WAAW,CAAC,CAAC;IAEzB,qCAAqC;IACrC,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;IAE1C,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAA,8BAAwB,EAAC;QAC3C,cAAc,EAAE,UAAU;QAC1B,KAAK,EAAE,CAAC,cAAc,EAAE,SAAS,CAAC;KACnC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
|
package/dist/cjs/pda/sage.js
CHANGED
|
@@ -11,6 +11,7 @@ exports.deriveStarbasePlayer = deriveStarbasePlayer;
|
|
|
11
11
|
exports.deriveGameAccounts = deriveGameAccounts;
|
|
12
12
|
const kit_1 = require("@solana/kit");
|
|
13
13
|
const config_1 = require("../utils/config");
|
|
14
|
+
const signer_1 = require("../utils/signer");
|
|
14
15
|
const constants_1 = require("./constants");
|
|
15
16
|
/**
|
|
16
17
|
* Address encoder for PDA seeds
|
|
@@ -27,9 +28,9 @@ const textEncoder = new TextEncoder();
|
|
|
27
28
|
* @returns The derived profile faction PDA
|
|
28
29
|
*/
|
|
29
30
|
async function deriveProfileFaction(profile, programAddress) {
|
|
30
|
-
const profileAddress = (0,
|
|
31
|
+
const profileAddress = (0, signer_1.getSignerAddress)(profile);
|
|
31
32
|
const program = programAddress
|
|
32
|
-
? (0,
|
|
33
|
+
? (0, signer_1.getSignerAddress)(programAddress)
|
|
33
34
|
: (0, kit_1.address)((0, config_1.getAddresses)().profileFaction);
|
|
34
35
|
// Encode seeds to bytes
|
|
35
36
|
const profileFactionSeedBytes = textEncoder.encode(constants_1.PROFILE_FACTION_SEED);
|
|
@@ -48,10 +49,10 @@ async function deriveProfileFaction(profile, programAddress) {
|
|
|
48
49
|
* @returns The derived SAGE player profile PDA
|
|
49
50
|
*/
|
|
50
51
|
async function deriveSagePlayerProfile(profile, gameId, programAddress) {
|
|
51
|
-
const profileAddress = (0,
|
|
52
|
-
const gameIdAddress = (0,
|
|
52
|
+
const profileAddress = (0, signer_1.getSignerAddress)(profile);
|
|
53
|
+
const gameIdAddress = (0, signer_1.getSignerAddress)(gameId);
|
|
53
54
|
const program = programAddress
|
|
54
|
-
? (0,
|
|
55
|
+
? (0, signer_1.getSignerAddress)(programAddress)
|
|
55
56
|
: (0, kit_1.address)((0, config_1.getAddresses)().sage);
|
|
56
57
|
// Encode seeds to bytes
|
|
57
58
|
const sagePlayerProfileSeedBytes = textEncoder.encode(constants_1.SAGE_PLAYER_PROFILE_SEED);
|
|
@@ -73,9 +74,9 @@ async function deriveSagePlayerProfile(profile, gameId, programAddress) {
|
|
|
73
74
|
async function deriveStarbase(faction, gameId, programAddress) {
|
|
74
75
|
const factionName = typeof faction === 'number' ? (0, constants_1.getFactionName)(faction) : faction;
|
|
75
76
|
const coords = (0, constants_1.getFactionCoordinates)(factionName);
|
|
76
|
-
const gameIdAddress = (0,
|
|
77
|
+
const gameIdAddress = (0, signer_1.getSignerAddress)(gameId);
|
|
77
78
|
const program = programAddress
|
|
78
|
-
? (0,
|
|
79
|
+
? (0, signer_1.getSignerAddress)(programAddress)
|
|
79
80
|
: (0, kit_1.address)((0, config_1.getAddresses)().sage);
|
|
80
81
|
// Encode string and address seeds to bytes
|
|
81
82
|
const starbaseSeedBytes = textEncoder.encode(constants_1.STARBASE_SEED);
|
|
@@ -107,10 +108,10 @@ async function deriveStarbase(faction, gameId, programAddress) {
|
|
|
107
108
|
* @returns The derived starbase player PDA
|
|
108
109
|
*/
|
|
109
110
|
async function deriveStarbasePlayer(sagePlayerProfile, starbase, starbaseSeqId = 0, programAddress) {
|
|
110
|
-
const profileAddress = (0,
|
|
111
|
-
const starbaseAddress = (0,
|
|
111
|
+
const profileAddress = (0, signer_1.getSignerAddress)(sagePlayerProfile);
|
|
112
|
+
const starbaseAddress = (0, signer_1.getSignerAddress)(starbase);
|
|
112
113
|
const program = programAddress
|
|
113
|
-
? (0,
|
|
114
|
+
? (0, signer_1.getSignerAddress)(programAddress)
|
|
114
115
|
: (0, kit_1.address)((0, config_1.getAddresses)().sage);
|
|
115
116
|
// Encode string and address seeds to bytes
|
|
116
117
|
const starbasePlayerSeedBytes = textEncoder.encode(constants_1.STARBASE_PLAYER_SEED);
|
package/dist/cjs/pda/sage.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sage.js","sourceRoot":"","sources":["../../../src/pda/sage.ts"],"names":[],"mappings":";AAAA;;;GAGG;;
|
|
1
|
+
{"version":3,"file":"sage.js","sourceRoot":"","sources":["../../../src/pda/sage.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/pda/srsly.js
CHANGED
|
@@ -12,6 +12,7 @@ exports.deriveBorrowerState = deriveBorrowerState;
|
|
|
12
12
|
exports.deriveConfig = deriveConfig;
|
|
13
13
|
const kit_1 = require("@solana/kit");
|
|
14
14
|
const config_1 = require("../utils/config");
|
|
15
|
+
const signer_1 = require("../utils/signer");
|
|
15
16
|
const constants_1 = require("./constants");
|
|
16
17
|
/**
|
|
17
18
|
* Address encoder for PDA seeds
|
|
@@ -28,9 +29,9 @@ const textEncoder = new TextEncoder();
|
|
|
28
29
|
* @returns The derived contract PDA
|
|
29
30
|
*/
|
|
30
31
|
async function deriveContract(fleet, programAddress) {
|
|
31
|
-
const fleetAddress = (0,
|
|
32
|
+
const fleetAddress = (0, signer_1.getSignerAddress)(fleet);
|
|
32
33
|
const program = programAddress
|
|
33
|
-
? (0,
|
|
34
|
+
? (0, signer_1.getSignerAddress)(programAddress)
|
|
34
35
|
: (0, kit_1.address)((0, config_1.getAddresses)().srsly);
|
|
35
36
|
// Encode seeds to bytes
|
|
36
37
|
const contractSeedBytes = textEncoder.encode(constants_1.CONTRACT_SEED);
|
|
@@ -45,9 +46,9 @@ async function deriveContract(fleet, programAddress) {
|
|
|
45
46
|
* Internal helper to derive a rental PDA with a named seed suffix
|
|
46
47
|
*/
|
|
47
48
|
async function deriveRentalWithSeed(contract, seedSuffix, programAddress) {
|
|
48
|
-
const contractAddress = (0,
|
|
49
|
+
const contractAddress = (0, signer_1.getSignerAddress)(contract);
|
|
49
50
|
const program = programAddress
|
|
50
|
-
? (0,
|
|
51
|
+
? (0, signer_1.getSignerAddress)(programAddress)
|
|
51
52
|
: (0, kit_1.address)((0, config_1.getAddresses)().srsly);
|
|
52
53
|
const rentalSeedBytes = textEncoder.encode(constants_1.RENTAL_SEED);
|
|
53
54
|
const contractBytes = addressEncoder.encode(contractAddress);
|
|
@@ -89,7 +90,7 @@ async function deriveQueuedRental(contract, programAddress) {
|
|
|
89
90
|
*/
|
|
90
91
|
async function deriveRentalAuthority(programAddress) {
|
|
91
92
|
const program = programAddress
|
|
92
|
-
? (0,
|
|
93
|
+
? (0, signer_1.getSignerAddress)(programAddress)
|
|
93
94
|
: (0, kit_1.address)((0, config_1.getAddresses)().srsly);
|
|
94
95
|
// Encode seeds to bytes
|
|
95
96
|
const rentalAuthoritySeedBytes = textEncoder.encode(constants_1.RENTAL_AUTHORITY_SEED);
|
|
@@ -106,9 +107,9 @@ async function deriveRentalAuthority(programAddress) {
|
|
|
106
107
|
* @returns The derived borrower state PDA
|
|
107
108
|
*/
|
|
108
109
|
async function deriveBorrowerState(borrower, programAddress) {
|
|
109
|
-
const borrowerAddress = (0,
|
|
110
|
+
const borrowerAddress = (0, signer_1.getSignerAddress)(borrower);
|
|
110
111
|
const program = programAddress
|
|
111
|
-
? (0,
|
|
112
|
+
? (0, signer_1.getSignerAddress)(programAddress)
|
|
112
113
|
: (0, kit_1.address)((0, config_1.getAddresses)().srsly);
|
|
113
114
|
// Encode seeds to bytes
|
|
114
115
|
const borrowerStateSeedBytes = textEncoder.encode(constants_1.BORROWER_STATE_SEED);
|
|
@@ -126,7 +127,7 @@ async function deriveBorrowerState(borrower, programAddress) {
|
|
|
126
127
|
*/
|
|
127
128
|
async function deriveConfig(programAddress) {
|
|
128
129
|
const program = programAddress
|
|
129
|
-
? (0,
|
|
130
|
+
? (0, signer_1.getSignerAddress)(programAddress)
|
|
130
131
|
: (0, kit_1.address)((0, config_1.getAddresses)().srsly);
|
|
131
132
|
// Encode seeds to bytes
|
|
132
133
|
const configSeedBytes = textEncoder.encode(constants_1.CONFIG_SEED);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"srsly.js","sourceRoot":"","sources":["../../../src/pda/srsly.ts"],"names":[],"mappings":";AAAA;;;GAGG;;
|
|
1
|
+
{"version":3,"file":"srsly.js","sourceRoot":"","sources":["../../../src/pda/srsly.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AA+BH,wCAmBC;AAoCD,gDAKC;AAWD,gDAKC;AAOD,sDAgBC;AAQD,kDAmBC;AAOD,oCAgBC;AAlLD,qCAA4F;AAC5F,4CAA+C;AAC/C,4CAAyE;AACzE,2CAQqB;AAErB;;GAEG;AACH,MAAM,cAAc,GAAG,IAAA,uBAAiB,GAAE,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAEtC;;;;;GAKG;AACI,KAAK,UAAU,cAAc,CAClC,KAAsB,EACtB,cAAgC;IAEhC,MAAM,YAAY,GAAG,IAAA,yBAAgB,EAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,cAAc;QAC5B,CAAC,CAAC,IAAA,yBAAgB,EAAC,cAAc,CAAC;QAClC,CAAC,CAAC,IAAA,aAAO,EAAC,IAAA,qBAAY,GAAE,CAAC,KAAK,CAAC,CAAC;IAElC,wBAAwB;IACxB,MAAM,iBAAiB,GAAG,WAAW,CAAC,MAAM,CAAC,yBAAa,CAAC,CAAC;IAC5D,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAEvD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAA,8BAAwB,EAAC;QAC3C,cAAc,EAAE,OAAO;QACvB,KAAK,EAAE,CAAC,iBAAiB,EAAE,UAAU,CAAC;KACvC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,oBAAoB,CACjC,QAAyB,EACzB,UAAkB,EAClB,cAAgC;IAEhC,MAAM,eAAe,GAAG,IAAA,yBAAgB,EAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,cAAc;QAC5B,CAAC,CAAC,IAAA,yBAAgB,EAAC,cAAc,CAAC;QAClC,CAAC,CAAC,IAAA,aAAO,EAAC,IAAA,qBAAY,GAAE,CAAC,KAAK,CAAC,CAAC;IAElC,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,CAAC,uBAAW,CAAC,CAAC;IACxD,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAC7D,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAEnD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAA,8BAAwB,EAAC;QAC3C,cAAc,EAAE,OAAO;QACvB,KAAK,EAAE,CAAC,eAAe,EAAE,aAAa,EAAE,WAAW,CAAC;KACrD,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;;GAQG;AACI,KAAK,UAAU,kBAAkB,CACtC,QAAyB,EACzB,cAAgC;IAEhC,OAAO,oBAAoB,CAAC,QAAQ,EAAE,8BAAkB,EAAE,cAAc,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;;GAQG;AACI,KAAK,UAAU,kBAAkB,CACtC,QAAyB,EACzB,cAAgC;IAEhC,OAAO,oBAAoB,CAAC,QAAQ,EAAE,8BAAkB,EAAE,cAAc,CAAC,CAAC;AAC5E,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,qBAAqB,CACzC,cAAgC;IAEhC,MAAM,OAAO,GAAG,cAAc;QAC5B,CAAC,CAAC,IAAA,yBAAgB,EAAC,cAAc,CAAC;QAClC,CAAC,CAAC,IAAA,aAAO,EAAC,IAAA,qBAAY,GAAE,CAAC,KAAK,CAAC,CAAC;IAElC,wBAAwB;IACxB,MAAM,wBAAwB,GAAG,WAAW,CAAC,MAAM,CAAC,iCAAqB,CAAC,CAAC;IAE3E,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAA,8BAAwB,EAAC;QAC3C,cAAc,EAAE,OAAO;QACvB,KAAK,EAAE,CAAC,wBAAwB,CAAC;KAClC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,mBAAmB,CACvC,QAAyB,EACzB,cAAgC;IAEhC,MAAM,eAAe,GAAG,IAAA,yBAAgB,EAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,cAAc;QAC5B,CAAC,CAAC,IAAA,yBAAgB,EAAC,cAAc,CAAC;QAClC,CAAC,CAAC,IAAA,aAAO,EAAC,IAAA,qBAAY,GAAE,CAAC,KAAK,CAAC,CAAC;IAElC,wBAAwB;IACxB,MAAM,sBAAsB,GAAG,WAAW,CAAC,MAAM,CAAC,+BAAmB,CAAC,CAAC;IACvE,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAE7D,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAA,8BAAwB,EAAC;QAC3C,cAAc,EAAE,OAAO;QACvB,KAAK,EAAE,CAAC,sBAAsB,EAAE,aAAa,CAAC;KAC/C,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,YAAY,CAChC,cAAgC;IAEhC,MAAM,OAAO,GAAG,cAAc;QAC5B,CAAC,CAAC,IAAA,yBAAgB,EAAC,cAAc,CAAC;QAClC,CAAC,CAAC,IAAA,aAAO,EAAC,IAAA,qBAAY,GAAE,CAAC,KAAK,CAAC,CAAC;IAElC,wBAAwB;IACxB,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,CAAC,uBAAW,CAAC,CAAC;IAExD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAA,8BAAwB,EAAC;QAC3C,cAAc,EAAE,OAAO;QACvB,KAAK,EAAE,CAAC,eAAe,CAAC;KACzB,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
|
package/dist/cjs/pda/thread.js
CHANGED
|
@@ -7,6 +7,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
7
7
|
exports.deriveContractThread = deriveContractThread;
|
|
8
8
|
exports.deriveFiber = deriveFiber;
|
|
9
9
|
const kit_1 = require("@solana/kit");
|
|
10
|
+
const signer_1 = require("../utils/signer");
|
|
10
11
|
const constants_1 = require("./constants");
|
|
11
12
|
/**
|
|
12
13
|
* Address encoder for PDA seeds
|
|
@@ -29,10 +30,10 @@ const textEncoder = new TextEncoder();
|
|
|
29
30
|
* @returns The derived contract thread PDA
|
|
30
31
|
*/
|
|
31
32
|
async function deriveContractThread(contract, authority, programAddress) {
|
|
32
|
-
const contractAddress = (0,
|
|
33
|
-
const authorityAddr = (0,
|
|
33
|
+
const contractAddress = (0, signer_1.getSignerAddress)(contract);
|
|
34
|
+
const authorityAddr = (0, signer_1.getSignerAddress)(authority);
|
|
34
35
|
const program = programAddress
|
|
35
|
-
? (0,
|
|
36
|
+
? (0, signer_1.getSignerAddress)(programAddress)
|
|
36
37
|
: (0, kit_1.address)(constants_1.ANTEGEN_THREAD_PROGRAM);
|
|
37
38
|
// Encode seeds to bytes
|
|
38
39
|
// Antegen ALWAYS uses: [SEED_THREAD, authority, id]
|
|
@@ -57,9 +58,9 @@ async function deriveContractThread(contract, authority, programAddress) {
|
|
|
57
58
|
* @returns The derived fiber PDA
|
|
58
59
|
*/
|
|
59
60
|
async function deriveFiber(thread, fiberIndex, programAddress) {
|
|
60
|
-
const threadAddress = (0,
|
|
61
|
+
const threadAddress = (0, signer_1.getSignerAddress)(thread);
|
|
61
62
|
const program = programAddress
|
|
62
|
-
? (0,
|
|
63
|
+
? (0, signer_1.getSignerAddress)(programAddress)
|
|
63
64
|
: (0, kit_1.address)(constants_1.ANTEGEN_FIBER_PROGRAM);
|
|
64
65
|
const fiberSeedBytes = textEncoder.encode(constants_1.THREAD_FIBER_SEED);
|
|
65
66
|
const threadBytes = addressEncoder.encode(threadAddress);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"thread.js","sourceRoot":"","sources":["../../../src/pda/thread.ts"],"names":[],"mappings":";AAAA;;;GAGG;;
|
|
1
|
+
{"version":3,"file":"thread.js","sourceRoot":"","sources":["../../../src/pda/thread.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AA4BH,oDAyBC;AAYD,kCAoBC;AAnFD,qCAA4F;AAC5F,4CAAyE;AACzE,2CAA4G;AAE5G;;GAEG;AACH,MAAM,cAAc,GAAG,IAAA,uBAAiB,GAAE,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAEtC;;;;;;;;;;;GAWG;AACI,KAAK,UAAU,oBAAoB,CACxC,QAAyB,EACzB,SAA0B,EAC1B,cAAgC;IAEhC,MAAM,eAAe,GAAG,IAAA,yBAAgB,EAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,aAAa,GAAG,IAAA,yBAAgB,EAAC,SAAS,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,cAAc;QAC5B,CAAC,CAAC,IAAA,yBAAgB,EAAC,cAAc,CAAC;QAClC,CAAC,CAAC,IAAA,aAAO,EAAC,kCAAsB,CAAC,CAAC;IAEpC,wBAAwB;IACxB,oDAAoD;IACpD,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,CAAC,uBAAW,CAAC,CAAC;IACxD,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC5D,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAE7D,MAAM,KAAK,GAAG,CAAC,eAAe,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;IAE/D,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAA,8BAAwB,EAAC;QAC3C,cAAc,EAAE,OAAO;QACvB,KAAK;KACN,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;;;GASG;AACI,KAAK,UAAU,WAAW,CAC/B,MAAuB,EACvB,UAAkB,EAClB,cAAgC;IAEhC,MAAM,aAAa,GAAG,IAAA,yBAAgB,EAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,cAAc;QAC5B,CAAC,CAAC,IAAA,yBAAgB,EAAC,cAAc,CAAC;QAClC,CAAC,CAAC,IAAA,aAAO,EAAC,iCAAqB,CAAC,CAAC;IAEnC,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,6BAAiB,CAAC,CAAC;IAC7D,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IACzD,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IAEhD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAA,8BAAwB,EAAC;QAC3C,cAAc,EAAE,OAAO;QACvB,KAAK,EAAE,CAAC,cAAc,EAAE,WAAW,EAAE,UAAU,CAAC;KACjD,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
|
package/dist/cjs/pda/token.js
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.deriveAssociatedTokenAccount = deriveAssociatedTokenAccount;
|
|
8
8
|
const kit_1 = require("@solana/kit");
|
|
9
|
+
const signer_1 = require("../utils/signer");
|
|
9
10
|
/**
|
|
10
11
|
* SPL Token program address
|
|
11
12
|
*/
|
|
@@ -41,13 +42,13 @@ const addressEncoder = (0, kit_1.getAddressEncoder)();
|
|
|
41
42
|
* ```
|
|
42
43
|
*/
|
|
43
44
|
async function deriveAssociatedTokenAccount(owner, mint, tokenProgramAddress, associatedTokenProgramAddress) {
|
|
44
|
-
const ownerAddress = (0,
|
|
45
|
-
const mintAddress = (0,
|
|
45
|
+
const ownerAddress = (0, signer_1.getSignerAddress)(owner);
|
|
46
|
+
const mintAddress = (0, signer_1.getSignerAddress)(mint);
|
|
46
47
|
const tokenProgram = tokenProgramAddress
|
|
47
|
-
? (0,
|
|
48
|
+
? (0, signer_1.getSignerAddress)(tokenProgramAddress)
|
|
48
49
|
: (0, kit_1.address)(TOKEN_PROGRAM);
|
|
49
50
|
const ataProgram = associatedTokenProgramAddress
|
|
50
|
-
? (0,
|
|
51
|
+
? (0, signer_1.getSignerAddress)(associatedTokenProgramAddress)
|
|
51
52
|
: (0, kit_1.address)(ASSOCIATED_TOKEN_PROGRAM);
|
|
52
53
|
// Encode all address seeds to bytes for PDA derivation
|
|
53
54
|
const ownerBytes = addressEncoder.encode(ownerAddress);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token.js","sourceRoot":"","sources":["../../../src/pda/token.ts"],"names":[],"mappings":";AAAA;;;GAGG;;
|
|
1
|
+
{"version":3,"file":"token.js","sourceRoot":"","sources":["../../../src/pda/token.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AA0CH,oEA0BC;AAlED,qCAA4F;AAC5F,4CAAyE;AAEzE;;GAEG;AACH,MAAM,aAAa,GAAG,6CAA6C,CAAC;AAEpE;;GAEG;AACH,MAAM,wBAAwB,GAAG,8CAA8C,CAAC;AAEhF;;GAEG;AACH,MAAM,cAAc,GAAG,IAAA,uBAAiB,GAAE,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACI,KAAK,UAAU,4BAA4B,CAChD,KAAsB,EACtB,IAAqB,EACrB,mBAAqC,EACrC,6BAA+C;IAE/C,MAAM,YAAY,GAAG,IAAA,yBAAgB,EAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,IAAA,yBAAgB,EAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,mBAAmB;QACtC,CAAC,CAAC,IAAA,yBAAgB,EAAC,mBAAmB,CAAC;QACvC,CAAC,CAAC,IAAA,aAAO,EAAC,aAAa,CAAC,CAAC;IAC3B,MAAM,UAAU,GAAG,6BAA6B;QAC9C,CAAC,CAAC,IAAA,yBAAgB,EAAC,6BAA6B,CAAC;QACjD,CAAC,CAAC,IAAA,aAAO,EAAC,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,IAAA,8BAAwB,EAAC;QAC3C,cAAc,EAAE,UAAU;QAC1B,KAAK,EAAE,CAAC,UAAU,EAAE,iBAAiB,EAAE,SAAS,CAAC;KAClD,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
|