@wuwei-labs/srsly 2.0.0-beta.33 → 2.0.0-beta.35
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/codama/instructions/cancelRental.js +77 -12
- package/dist/cjs/codama/instructions/cancelRental.js.map +1 -1
- package/dist/cjs/codama/instructions/closeContract.js +1 -60
- package/dist/cjs/codama/instructions/closeContract.js.map +1 -1
- package/dist/cjs/codama/instructions/closeRental.js +95 -14
- package/dist/cjs/codama/instructions/closeRental.js.map +1 -1
- package/dist/cjs/contract/cancel.js +4 -4
- package/dist/cjs/contract/cancel.js.map +1 -1
- package/dist/cjs/contract/close.js +17 -17
- package/dist/cjs/contract/close.js.map +1 -1
- package/dist/cjs/contract/create.js +8 -10
- package/dist/cjs/contract/create.js.map +1 -1
- package/dist/cjs/index.js +7 -5
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/package.json +1 -1
- package/dist/cjs/rental/accept.js +6 -6
- package/dist/cjs/rental/accept.js.map +1 -1
- package/dist/cjs/rental/cancel.js +3 -2
- package/dist/cjs/rental/cancel.js.map +1 -1
- package/dist/cjs/rental/close.js +3 -2
- package/dist/cjs/rental/close.js.map +1 -1
- package/dist/cjs/rental/reset.js +6 -7
- package/dist/cjs/rental/reset.js.map +1 -1
- package/dist/cjs/utils/config.js +22 -8
- package/dist/cjs/utils/config.js.map +1 -1
- package/dist/cjs/utils/constants.js +10 -5
- package/dist/cjs/utils/constants.js.map +1 -1
- package/dist/cjs/utils/fetch-accounts.js +115 -0
- package/dist/cjs/utils/fetch-accounts.js.map +1 -0
- package/dist/cjs/utils/index.js +1 -0
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/esm/codama/instructions/cancelRental.js +77 -12
- package/dist/esm/codama/instructions/cancelRental.js.map +1 -1
- package/dist/esm/codama/instructions/closeContract.js +1 -60
- package/dist/esm/codama/instructions/closeContract.js.map +1 -1
- package/dist/esm/codama/instructions/closeRental.js +95 -14
- package/dist/esm/codama/instructions/closeRental.js.map +1 -1
- package/dist/esm/contract/cancel.js +6 -6
- package/dist/esm/contract/cancel.js.map +1 -1
- package/dist/esm/contract/close.js +19 -19
- package/dist/esm/contract/close.js.map +1 -1
- package/dist/esm/contract/create.js +10 -12
- package/dist/esm/contract/create.js.map +1 -1
- package/dist/esm/index.js +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/package.json +1 -1
- package/dist/esm/rental/accept.js +8 -8
- package/dist/esm/rental/accept.js.map +1 -1
- package/dist/esm/rental/cancel.js +4 -3
- package/dist/esm/rental/cancel.js.map +1 -1
- package/dist/esm/rental/close.js +4 -3
- package/dist/esm/rental/close.js.map +1 -1
- package/dist/esm/rental/reset.js +8 -9
- package/dist/esm/rental/reset.js.map +1 -1
- package/dist/esm/utils/config.js +22 -8
- package/dist/esm/utils/config.js.map +1 -1
- package/dist/esm/utils/constants.js +10 -5
- package/dist/esm/utils/constants.js.map +1 -1
- package/dist/esm/utils/fetch-accounts.js +109 -0
- package/dist/esm/utils/fetch-accounts.js.map +1 -0
- package/dist/esm/utils/index.js +1 -0
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/types/codama/instructions/cancelRental.d.ts +34 -22
- package/dist/types/codama/instructions/cancelRental.d.ts.map +1 -1
- package/dist/types/codama/instructions/closeContract.d.ts +15 -48
- package/dist/types/codama/instructions/closeContract.d.ts.map +1 -1
- package/dist/types/codama/instructions/closeRental.d.ts +46 -26
- package/dist/types/codama/instructions/closeRental.d.ts.map +1 -1
- package/dist/types/contract/cancel.d.ts +0 -5
- package/dist/types/contract/cancel.d.ts.map +1 -1
- package/dist/types/contract/close.d.ts +1 -6
- package/dist/types/contract/close.d.ts.map +1 -1
- package/dist/types/contract/create.d.ts +0 -3
- package/dist/types/contract/create.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/rental/accept.d.ts +1 -6
- package/dist/types/rental/accept.d.ts.map +1 -1
- package/dist/types/rental/cancel.d.ts +1 -2
- package/dist/types/rental/cancel.d.ts.map +1 -1
- package/dist/types/rental/close.d.ts +1 -2
- package/dist/types/rental/close.d.ts.map +1 -1
- package/dist/types/rental/reset.d.ts +1 -7
- package/dist/types/rental/reset.d.ts.map +1 -1
- package/dist/types/utils/config.d.ts +8 -8
- package/dist/types/utils/config.d.ts.map +1 -1
- package/dist/types/utils/constants.d.ts +0 -1
- package/dist/types/utils/constants.d.ts.map +1 -1
- package/dist/types/utils/fetch-accounts.d.ts +88 -0
- package/dist/types/utils/fetch-accounts.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +1 -0
- package/dist/types/utils/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/target/idl/srsly.json +101 -299
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.fetchContractState = fetchContractState;
|
|
4
|
+
exports.fetchRentalState = fetchRentalState;
|
|
5
|
+
exports.fetchMultipleContractStates = fetchMultipleContractStates;
|
|
6
|
+
exports.fetchMultipleRentalStates = fetchMultipleRentalStates;
|
|
7
|
+
const kit_1 = require("@solana/kit");
|
|
8
|
+
const accounts_1 = require("../codama/accounts");
|
|
9
|
+
/**
|
|
10
|
+
* Convenience wrapper functions for fetching account states with RPC URL strings.
|
|
11
|
+
* These functions handle creating the RPC connection for you.
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Fetches contract state data from the blockchain using a simple RPC URL
|
|
15
|
+
*
|
|
16
|
+
* @param rpcUrl - The RPC endpoint URL as a string
|
|
17
|
+
* @param contractAddress - The contract account address to fetch
|
|
18
|
+
* @returns The deserialized contract state data
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```typescript
|
|
22
|
+
* const contractState = await fetchContractState(
|
|
23
|
+
* 'https://api.devnet.solana.com',
|
|
24
|
+
* 'ContractAddress123...'
|
|
25
|
+
* );
|
|
26
|
+
*
|
|
27
|
+
* console.log('Contract owner:', contractState.data.owner);
|
|
28
|
+
* console.log('Contract rate:', contractState.data.rate);
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
async function fetchContractState(rpcUrl, contractAddress) {
|
|
32
|
+
// Create RPC connection
|
|
33
|
+
const rpc = (0, kit_1.createSolanaRpc)(rpcUrl);
|
|
34
|
+
// Fetch and return the contract state
|
|
35
|
+
return (0, accounts_1.fetchContractState)(rpc, contractAddress);
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Fetches rental state data from the blockchain using a simple RPC URL
|
|
39
|
+
*
|
|
40
|
+
* @param rpcUrl - The RPC endpoint URL as a string
|
|
41
|
+
* @param rentalAddress - The rental account address to fetch
|
|
42
|
+
* @returns The deserialized rental state data
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* ```typescript
|
|
46
|
+
* const rentalState = await fetchRentalState(
|
|
47
|
+
* 'https://api.devnet.solana.com',
|
|
48
|
+
* 'RentalAddress123...'
|
|
49
|
+
* );
|
|
50
|
+
*
|
|
51
|
+
* console.log('Rental borrower:', rentalState.data.borrower);
|
|
52
|
+
* console.log('Rental start:', rentalState.data.start);
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
async function fetchRentalState(rpcUrl, rentalAddress) {
|
|
56
|
+
// Create RPC connection
|
|
57
|
+
const rpc = (0, kit_1.createSolanaRpc)(rpcUrl);
|
|
58
|
+
// Fetch and return the rental state
|
|
59
|
+
return (0, accounts_1.fetchRentalState)(rpc, rentalAddress);
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Fetches multiple contract states in a single RPC call
|
|
63
|
+
*
|
|
64
|
+
* @param rpcUrl - The RPC endpoint URL as a string
|
|
65
|
+
* @param contractAddresses - Array of contract addresses to fetch
|
|
66
|
+
* @returns Array of contract states (some may be null if not found)
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* ```typescript
|
|
70
|
+
* const contracts = await fetchMultipleContractStates(
|
|
71
|
+
* 'https://api.devnet.solana.com',
|
|
72
|
+
* ['Contract1...', 'Contract2...', 'Contract3...']
|
|
73
|
+
* );
|
|
74
|
+
*
|
|
75
|
+
* contracts.forEach((contract, i) => {
|
|
76
|
+
* if (contract.exists) {
|
|
77
|
+
* console.log(`Contract ${i}: ${contract.data.owner}`);
|
|
78
|
+
* }
|
|
79
|
+
* });
|
|
80
|
+
* ```
|
|
81
|
+
*/
|
|
82
|
+
async function fetchMultipleContractStates(rpcUrl, contractAddresses) {
|
|
83
|
+
// Create RPC connection
|
|
84
|
+
const rpc = (0, kit_1.createSolanaRpc)(rpcUrl);
|
|
85
|
+
// Fetch and return all contract states
|
|
86
|
+
return (0, accounts_1.fetchAllContractState)(rpc, contractAddresses);
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Fetches multiple rental states in a single RPC call
|
|
90
|
+
*
|
|
91
|
+
* @param rpcUrl - The RPC endpoint URL as a string
|
|
92
|
+
* @param rentalAddresses - Array of rental addresses to fetch
|
|
93
|
+
* @returns Array of rental states (some may be null if not found)
|
|
94
|
+
*
|
|
95
|
+
* @example
|
|
96
|
+
* ```typescript
|
|
97
|
+
* const rentals = await fetchMultipleRentalStates(
|
|
98
|
+
* 'https://api.devnet.solana.com',
|
|
99
|
+
* ['Rental1...', 'Rental2...', 'Rental3...']
|
|
100
|
+
* );
|
|
101
|
+
*
|
|
102
|
+
* rentals.forEach((rental, i) => {
|
|
103
|
+
* if (rental.exists) {
|
|
104
|
+
* console.log(`Rental ${i}: ${rental.data.borrower}`);
|
|
105
|
+
* }
|
|
106
|
+
* });
|
|
107
|
+
* ```
|
|
108
|
+
*/
|
|
109
|
+
async function fetchMultipleRentalStates(rpcUrl, rentalAddresses) {
|
|
110
|
+
// Create RPC connection
|
|
111
|
+
const rpc = (0, kit_1.createSolanaRpc)(rpcUrl);
|
|
112
|
+
// Fetch and return all rental states
|
|
113
|
+
return (0, accounts_1.fetchAllRentalState)(rpc, rentalAddresses);
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=fetch-accounts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetch-accounts.js","sourceRoot":"","sources":["../../../src/utils/fetch-accounts.ts"],"names":[],"mappings":";;AA+BA,gDASC;AAoBD,4CASC;AAuBD,kEASC;AAuBD,8DASC;AArID,qCAA4D;AAC5D,iDAK4B;AAE5B;;;GAGG;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACI,KAAK,UAAU,kBAAkB,CACtC,MAAc,EACd,eAAkC;IAElC,wBAAwB;IACxB,MAAM,GAAG,GAAG,IAAA,qBAAe,EAAC,MAAM,CAAC,CAAC;IAEpC,sCAAsC;IACtC,OAAO,IAAA,6BAAwB,EAAC,GAAG,EAAE,eAAe,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACI,KAAK,UAAU,gBAAgB,CACpC,MAAc,EACd,aAAgC;IAEhC,wBAAwB;IACxB,MAAM,GAAG,GAAG,IAAA,qBAAe,EAAC,MAAM,CAAC,CAAC;IAEpC,oCAAoC;IACpC,OAAO,IAAA,2BAAsB,EAAC,GAAG,EAAE,aAAa,CAAC,CAAC;AACpD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACI,KAAK,UAAU,2BAA2B,CAC/C,MAAc,EACd,iBAAsC;IAEtC,wBAAwB;IACxB,MAAM,GAAG,GAAG,IAAA,qBAAe,EAAC,MAAM,CAAC,CAAC;IAEpC,uCAAuC;IACvC,OAAO,IAAA,gCAAqB,EAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACI,KAAK,UAAU,yBAAyB,CAC7C,MAAc,EACd,eAAoC;IAEpC,wBAAwB;IACxB,MAAM,GAAG,GAAG,IAAA,qBAAe,EAAC,MAAM,CAAC,CAAC;IAEpC,qCAAqC;IACrC,OAAO,IAAA,8BAAmB,EAAC,GAAG,EAAE,eAAe,CAAC,CAAC;AACnD,CAAC"}
|
package/dist/cjs/utils/index.js
CHANGED
|
@@ -20,4 +20,5 @@ __exportStar(require("./config"), exports);
|
|
|
20
20
|
__exportStar(require("./paymentFrequency"), exports);
|
|
21
21
|
__exportStar(require("./duration"), exports);
|
|
22
22
|
__exportStar(require("./instruction-converter"), exports);
|
|
23
|
+
__exportStar(require("./fetch-accounts"), exports);
|
|
23
24
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,6CAA2B;AAC3B,2CAAyB;AACzB,qDAAmC;AACnC,6CAA2B;AAC3B,0DAAwC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,6CAA2B;AAC3B,2CAAyB;AACzB,qDAAmC;AACnC,6CAA2B;AAC3B,0DAAwC;AACxC,mDAAiC"}
|
|
@@ -30,7 +30,9 @@ export async function getCancelRentalInstructionAsync(input, config) {
|
|
|
30
30
|
const programAddress = config?.programAddress ?? SRSLY_PROGRAM_ADDRESS;
|
|
31
31
|
// Original accounts.
|
|
32
32
|
const originalAccounts = {
|
|
33
|
-
borrower: { value: input.borrower ?? null, isWritable:
|
|
33
|
+
borrower: { value: input.borrower ?? null, isWritable: true },
|
|
34
|
+
config: { value: input.config ?? null, isWritable: false },
|
|
35
|
+
mint: { value: input.mint ?? null, isWritable: false },
|
|
34
36
|
borrowerTokenAccount: {
|
|
35
37
|
value: input.borrowerTokenAccount ?? null,
|
|
36
38
|
isWritable: true,
|
|
@@ -46,11 +48,37 @@ export async function getCancelRentalInstructionAsync(input, config) {
|
|
|
46
48
|
value: input.rentalAuthority ?? null,
|
|
47
49
|
isWritable: false,
|
|
48
50
|
},
|
|
49
|
-
config: { value: input.config ?? null, isWritable: false },
|
|
50
51
|
tokenProgram: { value: input.tokenProgram ?? null, isWritable: false },
|
|
52
|
+
associatedTokenProgram: {
|
|
53
|
+
value: input.associatedTokenProgram ?? null,
|
|
54
|
+
isWritable: false,
|
|
55
|
+
},
|
|
56
|
+
systemProgram: { value: input.systemProgram ?? null, isWritable: false },
|
|
51
57
|
};
|
|
52
58
|
const accounts = originalAccounts;
|
|
53
59
|
// Resolve default values.
|
|
60
|
+
if (!accounts.config.value) {
|
|
61
|
+
accounts.config.value = await getProgramDerivedAddress({
|
|
62
|
+
programAddress,
|
|
63
|
+
seeds: [
|
|
64
|
+
getBytesEncoder().encode(new Uint8Array([99, 111, 110, 102, 105, 103])),
|
|
65
|
+
],
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
if (!accounts.borrowerTokenAccount.value) {
|
|
69
|
+
accounts.borrowerTokenAccount.value = await getProgramDerivedAddress({
|
|
70
|
+
programAddress: 'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL',
|
|
71
|
+
seeds: [
|
|
72
|
+
getAddressEncoder().encode(expectAddress(accounts.borrower.value)),
|
|
73
|
+
getBytesEncoder().encode(new Uint8Array([
|
|
74
|
+
6, 221, 246, 225, 215, 101, 161, 147, 217, 203, 225, 70, 206, 235,
|
|
75
|
+
121, 172, 28, 180, 133, 237, 95, 91, 55, 145, 58, 140, 245, 133,
|
|
76
|
+
126, 255, 0, 169,
|
|
77
|
+
])),
|
|
78
|
+
getAddressEncoder().encode(expectAddress(accounts.mint.value)),
|
|
79
|
+
],
|
|
80
|
+
});
|
|
81
|
+
}
|
|
54
82
|
if (!accounts.rentalAuthority.value) {
|
|
55
83
|
accounts.rentalAuthority.value = await getProgramDerivedAddress({
|
|
56
84
|
programAddress,
|
|
@@ -84,11 +112,17 @@ export async function getCancelRentalInstructionAsync(input, config) {
|
|
|
84
112
|
],
|
|
85
113
|
});
|
|
86
114
|
}
|
|
87
|
-
if (!accounts.
|
|
88
|
-
accounts.
|
|
89
|
-
programAddress,
|
|
115
|
+
if (!accounts.rentalTokenAccount.value) {
|
|
116
|
+
accounts.rentalTokenAccount.value = await getProgramDerivedAddress({
|
|
117
|
+
programAddress: 'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL',
|
|
90
118
|
seeds: [
|
|
91
|
-
|
|
119
|
+
getAddressEncoder().encode(expectAddress(accounts.rentalState.value)),
|
|
120
|
+
getBytesEncoder().encode(new Uint8Array([
|
|
121
|
+
6, 221, 246, 225, 215, 101, 161, 147, 217, 203, 225, 70, 206, 235,
|
|
122
|
+
121, 172, 28, 180, 133, 237, 95, 91, 55, 145, 58, 140, 245, 133,
|
|
123
|
+
126, 255, 0, 169,
|
|
124
|
+
])),
|
|
125
|
+
getAddressEncoder().encode(expectAddress(accounts.mint.value)),
|
|
92
126
|
],
|
|
93
127
|
});
|
|
94
128
|
}
|
|
@@ -96,18 +130,29 @@ export async function getCancelRentalInstructionAsync(input, config) {
|
|
|
96
130
|
accounts.tokenProgram.value =
|
|
97
131
|
'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA';
|
|
98
132
|
}
|
|
133
|
+
if (!accounts.associatedTokenProgram.value) {
|
|
134
|
+
accounts.associatedTokenProgram.value =
|
|
135
|
+
'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL';
|
|
136
|
+
}
|
|
137
|
+
if (!accounts.systemProgram.value) {
|
|
138
|
+
accounts.systemProgram.value =
|
|
139
|
+
'11111111111111111111111111111111';
|
|
140
|
+
}
|
|
99
141
|
const getAccountMeta = getAccountMetaFactory(programAddress, 'programId');
|
|
100
142
|
const instruction = {
|
|
101
143
|
accounts: [
|
|
102
144
|
getAccountMeta(accounts.borrower),
|
|
145
|
+
getAccountMeta(accounts.config),
|
|
146
|
+
getAccountMeta(accounts.mint),
|
|
103
147
|
getAccountMeta(accounts.borrowerTokenAccount),
|
|
104
148
|
getAccountMeta(accounts.rentalThread),
|
|
105
149
|
getAccountMeta(accounts.contract),
|
|
106
150
|
getAccountMeta(accounts.rentalState),
|
|
107
151
|
getAccountMeta(accounts.rentalTokenAccount),
|
|
108
152
|
getAccountMeta(accounts.rentalAuthority),
|
|
109
|
-
getAccountMeta(accounts.config),
|
|
110
153
|
getAccountMeta(accounts.tokenProgram),
|
|
154
|
+
getAccountMeta(accounts.associatedTokenProgram),
|
|
155
|
+
getAccountMeta(accounts.systemProgram),
|
|
111
156
|
],
|
|
112
157
|
programAddress,
|
|
113
158
|
data: getCancelRentalInstructionDataEncoder().encode({}),
|
|
@@ -119,7 +164,9 @@ export function getCancelRentalInstruction(input, config) {
|
|
|
119
164
|
const programAddress = config?.programAddress ?? SRSLY_PROGRAM_ADDRESS;
|
|
120
165
|
// Original accounts.
|
|
121
166
|
const originalAccounts = {
|
|
122
|
-
borrower: { value: input.borrower ?? null, isWritable:
|
|
167
|
+
borrower: { value: input.borrower ?? null, isWritable: true },
|
|
168
|
+
config: { value: input.config ?? null, isWritable: false },
|
|
169
|
+
mint: { value: input.mint ?? null, isWritable: false },
|
|
123
170
|
borrowerTokenAccount: {
|
|
124
171
|
value: input.borrowerTokenAccount ?? null,
|
|
125
172
|
isWritable: true,
|
|
@@ -135,8 +182,12 @@ export function getCancelRentalInstruction(input, config) {
|
|
|
135
182
|
value: input.rentalAuthority ?? null,
|
|
136
183
|
isWritable: false,
|
|
137
184
|
},
|
|
138
|
-
config: { value: input.config ?? null, isWritable: false },
|
|
139
185
|
tokenProgram: { value: input.tokenProgram ?? null, isWritable: false },
|
|
186
|
+
associatedTokenProgram: {
|
|
187
|
+
value: input.associatedTokenProgram ?? null,
|
|
188
|
+
isWritable: false,
|
|
189
|
+
},
|
|
190
|
+
systemProgram: { value: input.systemProgram ?? null, isWritable: false },
|
|
140
191
|
};
|
|
141
192
|
const accounts = originalAccounts;
|
|
142
193
|
// Resolve default values.
|
|
@@ -144,18 +195,29 @@ export function getCancelRentalInstruction(input, config) {
|
|
|
144
195
|
accounts.tokenProgram.value =
|
|
145
196
|
'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA';
|
|
146
197
|
}
|
|
198
|
+
if (!accounts.associatedTokenProgram.value) {
|
|
199
|
+
accounts.associatedTokenProgram.value =
|
|
200
|
+
'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL';
|
|
201
|
+
}
|
|
202
|
+
if (!accounts.systemProgram.value) {
|
|
203
|
+
accounts.systemProgram.value =
|
|
204
|
+
'11111111111111111111111111111111';
|
|
205
|
+
}
|
|
147
206
|
const getAccountMeta = getAccountMetaFactory(programAddress, 'programId');
|
|
148
207
|
const instruction = {
|
|
149
208
|
accounts: [
|
|
150
209
|
getAccountMeta(accounts.borrower),
|
|
210
|
+
getAccountMeta(accounts.config),
|
|
211
|
+
getAccountMeta(accounts.mint),
|
|
151
212
|
getAccountMeta(accounts.borrowerTokenAccount),
|
|
152
213
|
getAccountMeta(accounts.rentalThread),
|
|
153
214
|
getAccountMeta(accounts.contract),
|
|
154
215
|
getAccountMeta(accounts.rentalState),
|
|
155
216
|
getAccountMeta(accounts.rentalTokenAccount),
|
|
156
217
|
getAccountMeta(accounts.rentalAuthority),
|
|
157
|
-
getAccountMeta(accounts.config),
|
|
158
218
|
getAccountMeta(accounts.tokenProgram),
|
|
219
|
+
getAccountMeta(accounts.associatedTokenProgram),
|
|
220
|
+
getAccountMeta(accounts.systemProgram),
|
|
159
221
|
],
|
|
160
222
|
programAddress,
|
|
161
223
|
data: getCancelRentalInstructionDataEncoder().encode({}),
|
|
@@ -163,7 +225,7 @@ export function getCancelRentalInstruction(input, config) {
|
|
|
163
225
|
return instruction;
|
|
164
226
|
}
|
|
165
227
|
export function parseCancelRentalInstruction(instruction) {
|
|
166
|
-
if (instruction.accounts.length <
|
|
228
|
+
if (instruction.accounts.length < 12) {
|
|
167
229
|
// TODO: Coded error.
|
|
168
230
|
throw new Error('Not enough accounts');
|
|
169
231
|
}
|
|
@@ -177,14 +239,17 @@ export function parseCancelRentalInstruction(instruction) {
|
|
|
177
239
|
programAddress: instruction.programAddress,
|
|
178
240
|
accounts: {
|
|
179
241
|
borrower: getNextAccount(),
|
|
242
|
+
config: getNextAccount(),
|
|
243
|
+
mint: getNextAccount(),
|
|
180
244
|
borrowerTokenAccount: getNextAccount(),
|
|
181
245
|
rentalThread: getNextAccount(),
|
|
182
246
|
contract: getNextAccount(),
|
|
183
247
|
rentalState: getNextAccount(),
|
|
184
248
|
rentalTokenAccount: getNextAccount(),
|
|
185
249
|
rentalAuthority: getNextAccount(),
|
|
186
|
-
config: getNextAccount(),
|
|
187
250
|
tokenProgram: getNextAccount(),
|
|
251
|
+
associatedTokenProgram: getNextAccount(),
|
|
252
|
+
systemProgram: getNextAccount(),
|
|
188
253
|
},
|
|
189
254
|
data: getCancelRentalInstructionDataDecoder().decode(instruction.data),
|
|
190
255
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cancelRental.js","sourceRoot":"","sources":["../../../../src/codama/instructions/cancelRental.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,YAAY,EACZ,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,wBAAwB,EACxB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,GAejB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EACL,aAAa,EACb,qBAAqB,GAEtB,MAAM,WAAW,CAAC;AAEnB,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,UAAU,CAAC;IACxD,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;CAC/B,CAAC,CAAC;AAEH,MAAM,UAAU,iCAAiC;IAC/C,OAAO,cAAc,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAChD,2BAA2B,CAC5B,CAAC;AACJ,CAAC;
|
|
1
|
+
{"version":3,"file":"cancelRental.js","sourceRoot":"","sources":["../../../../src/codama/instructions/cancelRental.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,17 +30,7 @@ export async function getCloseContractInstructionAsync(input, config) {
|
|
|
30
30
|
const programAddress = config?.programAddress ?? SRSLY_PROGRAM_ADDRESS;
|
|
31
31
|
// Original accounts.
|
|
32
32
|
const originalAccounts = {
|
|
33
|
-
config: { value: input.config ?? null, isWritable: false },
|
|
34
33
|
owner: { value: input.owner ?? null, isWritable: true },
|
|
35
|
-
ownerTokenAccount: {
|
|
36
|
-
value: input.ownerTokenAccount ?? null,
|
|
37
|
-
isWritable: true,
|
|
38
|
-
},
|
|
39
|
-
rentalTokenAccount: {
|
|
40
|
-
value: input.rentalTokenAccount ?? null,
|
|
41
|
-
isWritable: true,
|
|
42
|
-
},
|
|
43
|
-
rentalState: { value: input.rentalState ?? null, isWritable: true },
|
|
44
34
|
fleet: { value: input.fleet ?? null, isWritable: true },
|
|
45
35
|
gameId: { value: input.gameId ?? null, isWritable: false },
|
|
46
36
|
starbase: { value: input.starbase ?? null, isWritable: false },
|
|
@@ -51,19 +41,9 @@ export async function getCloseContractInstructionAsync(input, config) {
|
|
|
51
41
|
isWritable: false,
|
|
52
42
|
},
|
|
53
43
|
sageProgram: { value: input.sageProgram ?? null, isWritable: false },
|
|
54
|
-
feeTokenAccount: { value: input.feeTokenAccount ?? null, isWritable: true },
|
|
55
|
-
tokenProgram: { value: input.tokenProgram ?? null, isWritable: false },
|
|
56
44
|
};
|
|
57
45
|
const accounts = originalAccounts;
|
|
58
46
|
// Resolve default values.
|
|
59
|
-
if (!accounts.config.value) {
|
|
60
|
-
accounts.config.value = await getProgramDerivedAddress({
|
|
61
|
-
programAddress,
|
|
62
|
-
seeds: [
|
|
63
|
-
getBytesEncoder().encode(new Uint8Array([99, 111, 110, 102, 105, 103])),
|
|
64
|
-
],
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
47
|
if (!accounts.rentalAuthority.value) {
|
|
68
48
|
accounts.rentalAuthority.value = await getProgramDerivedAddress({
|
|
69
49
|
programAddress,
|
|
@@ -75,18 +55,10 @@ export async function getCloseContractInstructionAsync(input, config) {
|
|
|
75
55
|
],
|
|
76
56
|
});
|
|
77
57
|
}
|
|
78
|
-
if (!accounts.tokenProgram.value) {
|
|
79
|
-
accounts.tokenProgram.value =
|
|
80
|
-
'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA';
|
|
81
|
-
}
|
|
82
58
|
const getAccountMeta = getAccountMetaFactory(programAddress, 'programId');
|
|
83
59
|
const instruction = {
|
|
84
60
|
accounts: [
|
|
85
|
-
getAccountMeta(accounts.config),
|
|
86
61
|
getAccountMeta(accounts.owner),
|
|
87
|
-
getAccountMeta(accounts.ownerTokenAccount),
|
|
88
|
-
getAccountMeta(accounts.rentalTokenAccount),
|
|
89
|
-
getAccountMeta(accounts.rentalState),
|
|
90
62
|
getAccountMeta(accounts.fleet),
|
|
91
63
|
getAccountMeta(accounts.gameId),
|
|
92
64
|
getAccountMeta(accounts.starbase),
|
|
@@ -94,8 +66,6 @@ export async function getCloseContractInstructionAsync(input, config) {
|
|
|
94
66
|
getAccountMeta(accounts.contract),
|
|
95
67
|
getAccountMeta(accounts.rentalAuthority),
|
|
96
68
|
getAccountMeta(accounts.sageProgram),
|
|
97
|
-
getAccountMeta(accounts.feeTokenAccount),
|
|
98
|
-
getAccountMeta(accounts.tokenProgram),
|
|
99
69
|
],
|
|
100
70
|
programAddress,
|
|
101
71
|
data: getCloseContractInstructionDataEncoder().encode({}),
|
|
@@ -107,17 +77,7 @@ export function getCloseContractInstruction(input, config) {
|
|
|
107
77
|
const programAddress = config?.programAddress ?? SRSLY_PROGRAM_ADDRESS;
|
|
108
78
|
// Original accounts.
|
|
109
79
|
const originalAccounts = {
|
|
110
|
-
config: { value: input.config ?? null, isWritable: false },
|
|
111
80
|
owner: { value: input.owner ?? null, isWritable: true },
|
|
112
|
-
ownerTokenAccount: {
|
|
113
|
-
value: input.ownerTokenAccount ?? null,
|
|
114
|
-
isWritable: true,
|
|
115
|
-
},
|
|
116
|
-
rentalTokenAccount: {
|
|
117
|
-
value: input.rentalTokenAccount ?? null,
|
|
118
|
-
isWritable: true,
|
|
119
|
-
},
|
|
120
|
-
rentalState: { value: input.rentalState ?? null, isWritable: true },
|
|
121
81
|
fleet: { value: input.fleet ?? null, isWritable: true },
|
|
122
82
|
gameId: { value: input.gameId ?? null, isWritable: false },
|
|
123
83
|
starbase: { value: input.starbase ?? null, isWritable: false },
|
|
@@ -128,23 +88,12 @@ export function getCloseContractInstruction(input, config) {
|
|
|
128
88
|
isWritable: false,
|
|
129
89
|
},
|
|
130
90
|
sageProgram: { value: input.sageProgram ?? null, isWritable: false },
|
|
131
|
-
feeTokenAccount: { value: input.feeTokenAccount ?? null, isWritable: true },
|
|
132
|
-
tokenProgram: { value: input.tokenProgram ?? null, isWritable: false },
|
|
133
91
|
};
|
|
134
92
|
const accounts = originalAccounts;
|
|
135
|
-
// Resolve default values.
|
|
136
|
-
if (!accounts.tokenProgram.value) {
|
|
137
|
-
accounts.tokenProgram.value =
|
|
138
|
-
'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA';
|
|
139
|
-
}
|
|
140
93
|
const getAccountMeta = getAccountMetaFactory(programAddress, 'programId');
|
|
141
94
|
const instruction = {
|
|
142
95
|
accounts: [
|
|
143
|
-
getAccountMeta(accounts.config),
|
|
144
96
|
getAccountMeta(accounts.owner),
|
|
145
|
-
getAccountMeta(accounts.ownerTokenAccount),
|
|
146
|
-
getAccountMeta(accounts.rentalTokenAccount),
|
|
147
|
-
getAccountMeta(accounts.rentalState),
|
|
148
97
|
getAccountMeta(accounts.fleet),
|
|
149
98
|
getAccountMeta(accounts.gameId),
|
|
150
99
|
getAccountMeta(accounts.starbase),
|
|
@@ -152,8 +101,6 @@ export function getCloseContractInstruction(input, config) {
|
|
|
152
101
|
getAccountMeta(accounts.contract),
|
|
153
102
|
getAccountMeta(accounts.rentalAuthority),
|
|
154
103
|
getAccountMeta(accounts.sageProgram),
|
|
155
|
-
getAccountMeta(accounts.feeTokenAccount),
|
|
156
|
-
getAccountMeta(accounts.tokenProgram),
|
|
157
104
|
],
|
|
158
105
|
programAddress,
|
|
159
106
|
data: getCloseContractInstructionDataEncoder().encode({}),
|
|
@@ -161,7 +108,7 @@ export function getCloseContractInstruction(input, config) {
|
|
|
161
108
|
return instruction;
|
|
162
109
|
}
|
|
163
110
|
export function parseCloseContractInstruction(instruction) {
|
|
164
|
-
if (instruction.accounts.length <
|
|
111
|
+
if (instruction.accounts.length < 8) {
|
|
165
112
|
// TODO: Coded error.
|
|
166
113
|
throw new Error('Not enough accounts');
|
|
167
114
|
}
|
|
@@ -174,11 +121,7 @@ export function parseCloseContractInstruction(instruction) {
|
|
|
174
121
|
return {
|
|
175
122
|
programAddress: instruction.programAddress,
|
|
176
123
|
accounts: {
|
|
177
|
-
config: getNextAccount(),
|
|
178
124
|
owner: getNextAccount(),
|
|
179
|
-
ownerTokenAccount: getNextAccount(),
|
|
180
|
-
rentalTokenAccount: getNextAccount(),
|
|
181
|
-
rentalState: getNextAccount(),
|
|
182
125
|
fleet: getNextAccount(),
|
|
183
126
|
gameId: getNextAccount(),
|
|
184
127
|
starbase: getNextAccount(),
|
|
@@ -186,8 +129,6 @@ export function parseCloseContractInstruction(instruction) {
|
|
|
186
129
|
contract: getNextAccount(),
|
|
187
130
|
rentalAuthority: getNextAccount(),
|
|
188
131
|
sageProgram: getNextAccount(),
|
|
189
|
-
feeTokenAccount: getNextAccount(),
|
|
190
|
-
tokenProgram: getNextAccount(),
|
|
191
132
|
},
|
|
192
133
|
data: getCloseContractInstructionDataDecoder().decode(instruction.data),
|
|
193
134
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"closeContract.js","sourceRoot":"","sources":["../../../../src/codama/instructions/closeContract.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,YAAY,EACZ,cAAc,EACd,cAAc,EACd,eAAe,EACf,eAAe,EACf,wBAAwB,EACxB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,GAejB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAwB,MAAM,WAAW,CAAC;AAExE,MAAM,CAAC,MAAM,4BAA4B,GAAG,IAAI,UAAU,CAAC;IACzD,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG;CACnC,CAAC,CAAC;AAEH,MAAM,UAAU,kCAAkC;IAChD,OAAO,cAAc,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAChD,4BAA4B,CAC7B,CAAC;AACJ,CAAC;
|
|
1
|
+
{"version":3,"file":"closeContract.js","sourceRoot":"","sources":["../../../../src/codama/instructions/closeContract.ts"],"names":[],"mappings":"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"}
|