@wuwei-labs/srsly 3.0.0-beta.16 → 3.0.0-beta.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/accounts/borrower.js +48 -0
- package/dist/cjs/accounts/borrower.js.map +1 -1
- package/dist/cjs/accounts/config.js +50 -2
- package/dist/cjs/accounts/config.js.map +1 -1
- package/dist/cjs/accounts/contract.js +51 -0
- package/dist/cjs/accounts/contract.js.map +1 -1
- package/dist/cjs/accounts/rental.js +48 -0
- package/dist/cjs/accounts/rental.js.map +1 -1
- package/dist/cjs/demos.js +31 -1
- package/dist/cjs/demos.js.map +1 -1
- package/dist/cjs/index.js +6 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/package.json +1 -1
- package/dist/cjs/utils/instructionResult.js +19 -25
- package/dist/cjs/utils/instructionResult.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/accounts/borrower.js +48 -1
- package/dist/esm/accounts/borrower.js.map +1 -1
- package/dist/esm/accounts/config.js +48 -1
- package/dist/esm/accounts/config.js.map +1 -1
- package/dist/esm/accounts/contract.js +51 -1
- package/dist/esm/accounts/contract.js.map +1 -1
- package/dist/esm/accounts/rental.js +48 -1
- package/dist/esm/accounts/rental.js.map +1 -1
- package/dist/esm/demos.js +30 -0
- package/dist/esm/demos.js.map +1 -1
- package/dist/esm/index.js +4 -4
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/package.json +1 -1
- package/dist/esm/utils/instructionResult.js +19 -25
- package/dist/esm/utils/instructionResult.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/types/accounts/borrower.d.ts +19 -0
- package/dist/types/accounts/borrower.d.ts.map +1 -1
- package/dist/types/accounts/config.d.ts +19 -0
- package/dist/types/accounts/config.d.ts.map +1 -1
- package/dist/types/accounts/contract.d.ts +19 -0
- package/dist/types/accounts/contract.d.ts.map +1 -1
- package/dist/types/accounts/rental.d.ts +19 -0
- package/dist/types/accounts/rental.d.ts.map +1 -1
- package/dist/types/demos.d.ts +6 -0
- package/dist/types/demos.d.ts.map +1 -1
- package/dist/types/index.d.ts +4 -4
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/utils/instructionResult.d.ts +13 -21
- package/dist/types/utils/instructionResult.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/package.json +2 -2
|
@@ -6,7 +6,10 @@
|
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
8
|
exports.fetchBorrower = fetchBorrower;
|
|
9
|
+
exports.fetchAllBorrowers = fetchAllBorrowers;
|
|
10
|
+
const kit_1 = require("@solana/kit");
|
|
9
11
|
const accounts_1 = require("../generated/codama/accounts");
|
|
12
|
+
const srsly_1 = require("../generated/codama/programs/srsly");
|
|
10
13
|
const config_1 = require("../utils/config");
|
|
11
14
|
const rpc_1 = require("../utils/rpc");
|
|
12
15
|
const pda_1 = require("../pda");
|
|
@@ -60,4 +63,49 @@ async function fetchBorrower(address, rpcUrl) {
|
|
|
60
63
|
}
|
|
61
64
|
}
|
|
62
65
|
}
|
|
66
|
+
/**
|
|
67
|
+
* Fetch all borrower state accounts from the SRSLY program
|
|
68
|
+
*
|
|
69
|
+
* Uses getProgramAccounts with a discriminator filter to find all BorrowerState accounts.
|
|
70
|
+
*
|
|
71
|
+
* @param rpcUrl - Optional RPC endpoint URL. If not provided, uses RPC from global config
|
|
72
|
+
* @returns Array of borrower states with their addresses
|
|
73
|
+
*
|
|
74
|
+
* @example
|
|
75
|
+
* ```typescript
|
|
76
|
+
* const borrowers = await fetchAllBorrowers();
|
|
77
|
+
* console.log(`Found ${borrowers.length} borrowers`);
|
|
78
|
+
* borrowers.forEach(b => console.log(b.address, b.data.borrower));
|
|
79
|
+
* ```
|
|
80
|
+
*/
|
|
81
|
+
async function fetchAllBorrowers(rpcUrl) {
|
|
82
|
+
try {
|
|
83
|
+
const resolvedRpcUrl = rpcUrl || (0, config_1.getRpcUrl)();
|
|
84
|
+
const rpc = (0, rpc_1.createRpc)(resolvedRpcUrl);
|
|
85
|
+
const discriminatorBase64 = btoa(String.fromCharCode(...accounts_1.BORROWER_STATE_DISCRIMINATOR));
|
|
86
|
+
const response = await rpc.getProgramAccounts(srsly_1.SRSLY_PROGRAM_ADDRESS, {
|
|
87
|
+
encoding: 'base64',
|
|
88
|
+
filters: [
|
|
89
|
+
{
|
|
90
|
+
memcmp: {
|
|
91
|
+
offset: 0n,
|
|
92
|
+
bytes: discriminatorBase64,
|
|
93
|
+
encoding: 'base64',
|
|
94
|
+
},
|
|
95
|
+
},
|
|
96
|
+
],
|
|
97
|
+
}).send();
|
|
98
|
+
const base64Encoder = (0, kit_1.getBase64Encoder)();
|
|
99
|
+
const decoder = (0, accounts_1.getBorrowerStateDecoder)();
|
|
100
|
+
const accounts = Array.isArray(response) ? response : response.value;
|
|
101
|
+
return accounts.map((account) => {
|
|
102
|
+
const bytes = base64Encoder.encode(account.account.data[0]);
|
|
103
|
+
const decoded = decoder.decode(bytes);
|
|
104
|
+
return { data: decoded, address: account.pubkey };
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
catch (error) {
|
|
108
|
+
throw new Error(`Failed to fetch all borrower states: ${error.message}`);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
63
111
|
//# sourceMappingURL=borrower.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"borrower.js","sourceRoot":"","sources":["../../../src/accounts/borrower.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;
|
|
1
|
+
{"version":3,"file":"borrower.js","sourceRoot":"","sources":["../../../src/accounts/borrower.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AAoCH,sCA0BC;AAiBD,8CAuCC;AApHD,qCAA6D;AAC7D,2DAA6I;AAC7I,8DAA2E;AAC3E,4CAA4C;AAC5C,sCAAyC;AACzC,gCAA6C;AAE7C;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACI,KAAK,UAAU,aAAa,CACjC,OAAyB,EACzB,MAAe;IAEf,0CAA0C;IAC1C,MAAM,cAAc,GAAG,MAAM,IAAI,IAAA,kBAAS,GAAE,CAAC;IAC7C,MAAM,GAAG,GAAG,IAAA,eAAS,EAAC,cAAc,CAAC,CAAC;IAEtC,iEAAiE;IACjE,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,IAAA,6BAAkB,EAAC,GAAG,EAAE,OAAkB,CAAC,CAAC;QAClE,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,WAAgB,EAAE,CAAC;QAC1B,gEAAgE;QAChE,IAAI,CAAC;YACH,MAAM,cAAc,GAAG,MAAM,IAAA,yBAAmB,EAAC,OAAiB,CAAC,CAAC;YACpE,MAAM,OAAO,GAAG,MAAM,IAAA,6BAAkB,EAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YAC9D,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,YAAiB,EAAE,CAAC;YAC3B,oDAAoD;YACpD,MAAM,IAAI,KAAK,CACb,yDAAyD,OAAO,oBAAoB;gBACpF,UAAU,YAAY,CAAC,OAAO,EAAE,CACjC,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACI,KAAK,UAAU,iBAAiB,CACrC,MAAe;IAEf,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,MAAM,IAAI,IAAA,kBAAS,GAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,IAAA,eAAS,EAAC,cAAc,CAAC,CAAC;QAEtC,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,uCAA4B,CAAC,CAAC,CAAC;QAEvF,MAAM,QAAQ,GAAG,MAAO,GAAW,CAAC,kBAAkB,CACpD,6BAAqB,EACrB;YACE,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE;gBACP;oBACE,MAAM,EAAE;wBACN,MAAM,EAAE,EAAE;wBACV,KAAK,EAAE,mBAAmB;wBAC1B,QAAQ,EAAE,QAAQ;qBACnB;iBACF;aACF;SACF,CACF,CAAC,IAAI,EAAE,CAAC;QAET,MAAM,aAAa,GAAG,IAAA,sBAAgB,GAAE,CAAC;QACzC,MAAM,OAAO,GAAG,IAAA,kCAAuB,GAAE,CAAC;QAE1C,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QACrE,OAAQ,QAAkB,CAAC,GAAG,CAAC,CAAC,OAAY,EAAE,EAAE;YAC9C,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,MAAiB,EAAE,CAAC;QAC/D,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,wCAAwC,KAAK,CAAC,OAAO,EAAE,CACxD,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -6,9 +6,12 @@
|
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
8
|
exports.fetchConfig = fetchConfig;
|
|
9
|
+
exports.fetchAllConfigs = fetchAllConfigs;
|
|
10
|
+
const kit_1 = require("@solana/kit");
|
|
9
11
|
const accounts_1 = require("../generated/codama/accounts");
|
|
12
|
+
const srsly_1 = require("../generated/codama/programs/srsly");
|
|
10
13
|
const config_1 = require("../utils/config");
|
|
11
|
-
const
|
|
14
|
+
const srsly_2 = require("../pda/srsly");
|
|
12
15
|
const rpc_1 = require("../utils/rpc");
|
|
13
16
|
/**
|
|
14
17
|
* Fetch global config state from the SRSLY program
|
|
@@ -35,7 +38,7 @@ async function fetchConfig(rpcUrl) {
|
|
|
35
38
|
const resolvedRpcUrl = rpcUrl || (0, config_1.getRpcUrl)();
|
|
36
39
|
const rpc = (0, rpc_1.createRpc)(resolvedRpcUrl);
|
|
37
40
|
// Derive config PDA
|
|
38
|
-
const configAddress = await (0,
|
|
41
|
+
const configAddress = await (0, srsly_2.deriveConfig)();
|
|
39
42
|
// Use Codama-generated fetch function
|
|
40
43
|
const account = await (0, accounts_1.fetchConfigState)(rpc, configAddress);
|
|
41
44
|
return account;
|
|
@@ -44,4 +47,49 @@ async function fetchConfig(rpcUrl) {
|
|
|
44
47
|
throw new Error(`Failed to fetch config state: ${error.message}`);
|
|
45
48
|
}
|
|
46
49
|
}
|
|
50
|
+
/**
|
|
51
|
+
* Fetch all config state accounts from the SRSLY program
|
|
52
|
+
*
|
|
53
|
+
* Uses getProgramAccounts with a discriminator filter to find all ConfigState accounts.
|
|
54
|
+
*
|
|
55
|
+
* @param rpcUrl - Optional RPC endpoint URL. If not provided, uses RPC from global config
|
|
56
|
+
* @returns Array of config states with their addresses
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* ```typescript
|
|
60
|
+
* const configs = await fetchAllConfigs();
|
|
61
|
+
* console.log(`Found ${configs.length} configs`);
|
|
62
|
+
* configs.forEach(c => console.log(c.address, c.data.admin));
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
async function fetchAllConfigs(rpcUrl) {
|
|
66
|
+
try {
|
|
67
|
+
const resolvedRpcUrl = rpcUrl || (0, config_1.getRpcUrl)();
|
|
68
|
+
const rpc = (0, rpc_1.createRpc)(resolvedRpcUrl);
|
|
69
|
+
const discriminatorBase64 = btoa(String.fromCharCode(...accounts_1.CONFIG_STATE_DISCRIMINATOR));
|
|
70
|
+
const response = await rpc.getProgramAccounts(srsly_1.SRSLY_PROGRAM_ADDRESS, {
|
|
71
|
+
encoding: 'base64',
|
|
72
|
+
filters: [
|
|
73
|
+
{
|
|
74
|
+
memcmp: {
|
|
75
|
+
offset: 0n,
|
|
76
|
+
bytes: discriminatorBase64,
|
|
77
|
+
encoding: 'base64',
|
|
78
|
+
},
|
|
79
|
+
},
|
|
80
|
+
],
|
|
81
|
+
}).send();
|
|
82
|
+
const base64Encoder = (0, kit_1.getBase64Encoder)();
|
|
83
|
+
const decoder = (0, accounts_1.getConfigStateDecoder)();
|
|
84
|
+
const accounts = Array.isArray(response) ? response : response.value;
|
|
85
|
+
return accounts.map((account) => {
|
|
86
|
+
const bytes = base64Encoder.encode(account.account.data[0]);
|
|
87
|
+
const decoded = decoder.decode(bytes);
|
|
88
|
+
return { data: decoded, address: account.pubkey };
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
catch (error) {
|
|
92
|
+
throw new Error(`Failed to fetch all config states: ${error.message}`);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
47
95
|
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/accounts/config.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/accounts/config.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AA4BH,kCAoBC;AAiBD,0CAuCC;AAtGD,qCAA6D;AAC7D,2DAAqI;AACrI,8DAA2E;AAC3E,4CAA4C;AAC5C,wCAA4C;AAC5C,sCAAyC;AAEzC;;;;;;;;;;;;;;;;;;GAkBG;AACI,KAAK,UAAU,WAAW,CAC/B,MAAe;IAEf,IAAI,CAAC;QACH,0CAA0C;QAC1C,MAAM,cAAc,GAAG,MAAM,IAAI,IAAA,kBAAS,GAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,IAAA,eAAS,EAAC,cAAc,CAAC,CAAC;QAEtC,oBAAoB;QACpB,MAAM,aAAa,GAAG,MAAM,IAAA,oBAAY,GAAE,CAAC;QAE3C,sCAAsC;QACtC,MAAM,OAAO,GAAG,MAAM,IAAA,2BAAgB,EAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAE3D,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,iCAAiC,KAAK,CAAC,OAAO,EAAE,CACjD,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACI,KAAK,UAAU,eAAe,CACnC,MAAe;IAEf,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,MAAM,IAAI,IAAA,kBAAS,GAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,IAAA,eAAS,EAAC,cAAc,CAAC,CAAC;QAEtC,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,qCAA0B,CAAC,CAAC,CAAC;QAErF,MAAM,QAAQ,GAAG,MAAO,GAAW,CAAC,kBAAkB,CACpD,6BAAqB,EACrB;YACE,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE;gBACP;oBACE,MAAM,EAAE;wBACN,MAAM,EAAE,EAAE;wBACV,KAAK,EAAE,mBAAmB;wBAC1B,QAAQ,EAAE,QAAQ;qBACnB;iBACF;aACF;SACF,CACF,CAAC,IAAI,EAAE,CAAC;QAET,MAAM,aAAa,GAAG,IAAA,sBAAgB,GAAE,CAAC;QACzC,MAAM,OAAO,GAAG,IAAA,gCAAqB,GAAE,CAAC;QAExC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QACrE,OAAQ,QAAkB,CAAC,GAAG,CAAC,CAAC,OAAY,EAAE,EAAE;YAC9C,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,MAAiB,EAAE,CAAC;QAC/D,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,sCAAsC,KAAK,CAAC,OAAO,EAAE,CACtD,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -6,7 +6,10 @@
|
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
8
|
exports.fetchContract = fetchContract;
|
|
9
|
+
exports.fetchAllContracts = fetchAllContracts;
|
|
10
|
+
const kit_1 = require("@solana/kit");
|
|
9
11
|
const accounts_1 = require("../generated/codama/accounts");
|
|
12
|
+
const srsly_1 = require("../generated/codama/programs/srsly");
|
|
10
13
|
const config_1 = require("../utils/config");
|
|
11
14
|
const rpc_1 = require("../utils/rpc");
|
|
12
15
|
/**
|
|
@@ -44,4 +47,52 @@ async function fetchContract(contractAddress, rpcUrl) {
|
|
|
44
47
|
throw new Error(`Failed to fetch contract state at ${contractAddress}: ${error.message}`);
|
|
45
48
|
}
|
|
46
49
|
}
|
|
50
|
+
/**
|
|
51
|
+
* Fetch all contract state accounts from the SRSLY program
|
|
52
|
+
*
|
|
53
|
+
* Uses getProgramAccounts with a discriminator filter to find all ContractState accounts.
|
|
54
|
+
*
|
|
55
|
+
* @param rpcUrl - Optional RPC endpoint URL. If not provided, uses RPC from global config
|
|
56
|
+
* @returns Array of contract states with their addresses
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* ```typescript
|
|
60
|
+
* const contracts = await fetchAllContracts();
|
|
61
|
+
* console.log(`Found ${contracts.length} contracts`);
|
|
62
|
+
* contracts.forEach(c => console.log(c.address, c.data.fleet));
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
async function fetchAllContracts(rpcUrl) {
|
|
66
|
+
try {
|
|
67
|
+
const resolvedRpcUrl = rpcUrl || (0, config_1.getRpcUrl)();
|
|
68
|
+
const rpc = (0, rpc_1.createRpc)(resolvedRpcUrl);
|
|
69
|
+
// Convert discriminator to base64 string for memcmp filter (browser-compatible)
|
|
70
|
+
const discriminatorBase64 = btoa(String.fromCharCode(...accounts_1.CONTRACT_STATE_DISCRIMINATOR));
|
|
71
|
+
// getProgramAccounts uses branded string types — cast through any
|
|
72
|
+
const response = await rpc.getProgramAccounts(srsly_1.SRSLY_PROGRAM_ADDRESS, {
|
|
73
|
+
encoding: 'base64',
|
|
74
|
+
filters: [
|
|
75
|
+
{
|
|
76
|
+
memcmp: {
|
|
77
|
+
offset: 0n,
|
|
78
|
+
bytes: discriminatorBase64,
|
|
79
|
+
encoding: 'base64',
|
|
80
|
+
},
|
|
81
|
+
},
|
|
82
|
+
],
|
|
83
|
+
}).send();
|
|
84
|
+
const base64Encoder = (0, kit_1.getBase64Encoder)();
|
|
85
|
+
const decoder = (0, accounts_1.getContractStateDecoder)();
|
|
86
|
+
// @solana/kit returns the array directly, not wrapped in { value }
|
|
87
|
+
const accounts = Array.isArray(response) ? response : response.value;
|
|
88
|
+
return accounts.map((account) => {
|
|
89
|
+
const bytes = base64Encoder.encode(account.account.data[0]);
|
|
90
|
+
const decoded = decoder.decode(bytes);
|
|
91
|
+
return { data: decoded, address: account.pubkey };
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
catch (error) {
|
|
95
|
+
throw new Error(`Failed to fetch all contract states: ${error.message}`);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
47
98
|
//# sourceMappingURL=contract.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../../src/accounts/contract.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;
|
|
1
|
+
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../../src/accounts/contract.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AA8BH,sCAkBC;AAiBD,8CA0CC;AAzGD,qCAA6D;AAC7D,2DAA6I;AAC7I,8DAA2E;AAC3E,4CAA4C;AAC5C,sCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACI,KAAK,UAAU,aAAa,CACjC,eAAiC,EACjC,MAAe;IAEf,IAAI,CAAC;QACH,0CAA0C;QAC1C,MAAM,cAAc,GAAG,MAAM,IAAI,IAAA,kBAAS,GAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,IAAA,eAAS,EAAC,cAAc,CAAC,CAAC;QAEtC,sCAAsC;QACtC,MAAM,OAAO,GAAG,MAAM,IAAA,6BAAkB,EAAC,GAAG,EAAE,eAA0B,CAAC,CAAC;QAE1E,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,qCAAqC,eAAe,KAAK,KAAK,CAAC,OAAO,EAAE,CACzE,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACI,KAAK,UAAU,iBAAiB,CACrC,MAAe;IAEf,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,MAAM,IAAI,IAAA,kBAAS,GAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,IAAA,eAAS,EAAC,cAAc,CAAC,CAAC;QAEtC,gFAAgF;QAChF,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,uCAA4B,CAAC,CAAC,CAAC;QAEvF,kEAAkE;QAClE,MAAM,QAAQ,GAAG,MAAO,GAAW,CAAC,kBAAkB,CACpD,6BAAqB,EACrB;YACE,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE;gBACP;oBACE,MAAM,EAAE;wBACN,MAAM,EAAE,EAAE;wBACV,KAAK,EAAE,mBAAmB;wBAC1B,QAAQ,EAAE,QAAQ;qBACnB;iBACF;aACF;SACF,CACF,CAAC,IAAI,EAAE,CAAC;QAET,MAAM,aAAa,GAAG,IAAA,sBAAgB,GAAE,CAAC;QACzC,MAAM,OAAO,GAAG,IAAA,kCAAuB,GAAE,CAAC;QAE1C,mEAAmE;QACnE,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QACrE,OAAQ,QAAkB,CAAC,GAAG,CAAC,CAAC,OAAY,EAAE,EAAE;YAC9C,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,MAAiB,EAAE,CAAC;QAC/D,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,wCAAwC,KAAK,CAAC,OAAO,EAAE,CACxD,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -6,7 +6,10 @@
|
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
8
|
exports.fetchRental = fetchRental;
|
|
9
|
+
exports.fetchAllRentals = fetchAllRentals;
|
|
10
|
+
const kit_1 = require("@solana/kit");
|
|
9
11
|
const accounts_1 = require("../generated/codama/accounts");
|
|
12
|
+
const srsly_1 = require("../generated/codama/programs/srsly");
|
|
10
13
|
const config_1 = require("../utils/config");
|
|
11
14
|
const rpc_1 = require("../utils/rpc");
|
|
12
15
|
/**
|
|
@@ -44,4 +47,49 @@ async function fetchRental(rentalAddress, rpcUrl) {
|
|
|
44
47
|
throw new Error(`Failed to fetch rental state at ${rentalAddress}: ${error.message}`);
|
|
45
48
|
}
|
|
46
49
|
}
|
|
50
|
+
/**
|
|
51
|
+
* Fetch all rental state accounts from the SRSLY program
|
|
52
|
+
*
|
|
53
|
+
* Uses getProgramAccounts with a discriminator filter to find all RentalState accounts.
|
|
54
|
+
*
|
|
55
|
+
* @param rpcUrl - Optional RPC endpoint URL. If not provided, uses RPC from global config
|
|
56
|
+
* @returns Array of rental states with their addresses
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* ```typescript
|
|
60
|
+
* const rentals = await fetchAllRentals();
|
|
61
|
+
* console.log(`Found ${rentals.length} rentals`);
|
|
62
|
+
* rentals.forEach(r => console.log(r.address, r.data.borrower));
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
async function fetchAllRentals(rpcUrl) {
|
|
66
|
+
try {
|
|
67
|
+
const resolvedRpcUrl = rpcUrl || (0, config_1.getRpcUrl)();
|
|
68
|
+
const rpc = (0, rpc_1.createRpc)(resolvedRpcUrl);
|
|
69
|
+
const discriminatorBase64 = btoa(String.fromCharCode(...accounts_1.RENTAL_STATE_DISCRIMINATOR));
|
|
70
|
+
const response = await rpc.getProgramAccounts(srsly_1.SRSLY_PROGRAM_ADDRESS, {
|
|
71
|
+
encoding: 'base64',
|
|
72
|
+
filters: [
|
|
73
|
+
{
|
|
74
|
+
memcmp: {
|
|
75
|
+
offset: 0n,
|
|
76
|
+
bytes: discriminatorBase64,
|
|
77
|
+
encoding: 'base64',
|
|
78
|
+
},
|
|
79
|
+
},
|
|
80
|
+
],
|
|
81
|
+
}).send();
|
|
82
|
+
const base64Encoder = (0, kit_1.getBase64Encoder)();
|
|
83
|
+
const decoder = (0, accounts_1.getRentalStateDecoder)();
|
|
84
|
+
const accounts = Array.isArray(response) ? response : response.value;
|
|
85
|
+
return accounts.map((account) => {
|
|
86
|
+
const bytes = base64Encoder.encode(account.account.data[0]);
|
|
87
|
+
const decoded = decoder.decode(bytes);
|
|
88
|
+
return { data: decoded, address: account.pubkey };
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
catch (error) {
|
|
92
|
+
throw new Error(`Failed to fetch all rental states: ${error.message}`);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
47
95
|
//# sourceMappingURL=rental.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rental.js","sourceRoot":"","sources":["../../../src/accounts/rental.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;
|
|
1
|
+
{"version":3,"file":"rental.js","sourceRoot":"","sources":["../../../src/accounts/rental.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AA8BH,kCAkBC;AAiBD,0CAuCC;AAtGD,qCAA6D;AAC7D,2DAAqI;AACrI,8DAA2E;AAC3E,4CAA4C;AAC5C,sCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACI,KAAK,UAAU,WAAW,CAC/B,aAA+B,EAC/B,MAAe;IAEf,IAAI,CAAC;QACH,0CAA0C;QAC1C,MAAM,cAAc,GAAG,MAAM,IAAI,IAAA,kBAAS,GAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,IAAA,eAAS,EAAC,cAAc,CAAC,CAAC;QAEtC,sCAAsC;QACtC,MAAM,OAAO,GAAG,MAAM,IAAA,2BAAgB,EAAC,GAAG,EAAE,aAAwB,CAAC,CAAC;QAEtE,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,mCAAmC,aAAa,KAAK,KAAK,CAAC,OAAO,EAAE,CACrE,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACI,KAAK,UAAU,eAAe,CACnC,MAAe;IAEf,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,MAAM,IAAI,IAAA,kBAAS,GAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,IAAA,eAAS,EAAC,cAAc,CAAC,CAAC;QAEtC,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,qCAA0B,CAAC,CAAC,CAAC;QAErF,MAAM,QAAQ,GAAG,MAAO,GAAW,CAAC,kBAAkB,CACpD,6BAAqB,EACrB;YACE,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE;gBACP;oBACE,MAAM,EAAE;wBACN,MAAM,EAAE,EAAE;wBACV,KAAK,EAAE,mBAAmB;wBAC1B,QAAQ,EAAE,QAAQ;qBACnB;iBACF;aACF;SACF,CACF,CAAC,IAAI,EAAE,CAAC;QAET,MAAM,aAAa,GAAG,IAAA,sBAAgB,GAAE,CAAC;QACzC,MAAM,OAAO,GAAG,IAAA,gCAAqB,GAAE,CAAC;QAExC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QACrE,OAAQ,QAAkB,CAAC,GAAG,CAAC,CAAC,OAAY,EAAE,EAAE;YAC9C,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,MAAiB,EAAE,CAAC;QAC/D,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,sCAAsC,KAAK,CAAC,OAAO,EAAE,CACtD,CAAC;IACJ,CAAC;AACH,CAAC"}
|
package/dist/cjs/demos.js
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* These demos are used by the documentation app to provide interactive code examples.
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.ALL_DEMOS = exports.fetchMemberDemo = exports.updateAffiliateDemo = exports.removeAffiliateDemo = exports.approveAffiliateDemo = exports.createAffiliateDemo = exports.fetchRentalDemo = exports.fetchBorrowerDemo = exports.fetchContractDemo = exports.claimRentalDemo = exports.reserveRentalDemo = exports.releaseRentalDemo = exports.closeRentalDemo = exports.cancelRentalDemo = exports.acceptRentalDemo = exports.updateBorrowerDemo = exports.closeBorrowerDemo = exports.setDelegateDemo = exports.updateContractDemo = exports.closeContractDemo = exports.createContractDemo = void 0;
|
|
9
|
+
exports.ALL_DEMOS = exports.fetchMemberDemo = exports.updateAffiliateDemo = exports.removeAffiliateDemo = exports.approveAffiliateDemo = exports.createAffiliateDemo = exports.fetchAllRentalsDemo = exports.fetchRentalDemo = exports.fetchAllBorrowersDemo = exports.fetchBorrowerDemo = exports.fetchAllContractsDemo = exports.fetchContractDemo = exports.claimRentalDemo = exports.reserveRentalDemo = exports.releaseRentalDemo = exports.closeRentalDemo = exports.cancelRentalDemo = exports.acceptRentalDemo = exports.updateBorrowerDemo = exports.closeBorrowerDemo = exports.setDelegateDemo = exports.updateContractDemo = exports.closeContractDemo = exports.createContractDemo = void 0;
|
|
10
10
|
// ============================================================================
|
|
11
11
|
// Contract Demos
|
|
12
12
|
// ============================================================================
|
|
@@ -211,6 +211,15 @@ exports.fetchContractDemo = {
|
|
|
211
211
|
console.log(result);`,
|
|
212
212
|
isFetchOperation: true,
|
|
213
213
|
};
|
|
214
|
+
exports.fetchAllContractsDemo = {
|
|
215
|
+
tabName: 'fetch all',
|
|
216
|
+
description: 'Fetch all contract states from the program',
|
|
217
|
+
imports: `import { fetchAllContracts } from '@wuwei-labs/srsly/kit';`,
|
|
218
|
+
legacyImports: `import { fetchAllContracts } from '@wuwei-labs/srsly/legacy';`,
|
|
219
|
+
instruction: `const result = await fetchAllContracts();
|
|
220
|
+
console.log(result);`,
|
|
221
|
+
isFetchOperation: true,
|
|
222
|
+
};
|
|
214
223
|
exports.fetchBorrowerDemo = {
|
|
215
224
|
tabName: 'fetch',
|
|
216
225
|
description: 'Fetch borrower state by address',
|
|
@@ -220,6 +229,15 @@ exports.fetchBorrowerDemo = {
|
|
|
220
229
|
console.log(result);`,
|
|
221
230
|
isFetchOperation: true,
|
|
222
231
|
};
|
|
232
|
+
exports.fetchAllBorrowersDemo = {
|
|
233
|
+
tabName: 'fetch all',
|
|
234
|
+
description: 'Fetch all borrower states from the program',
|
|
235
|
+
imports: `import { fetchAllBorrowers } from '@wuwei-labs/srsly/kit';`,
|
|
236
|
+
legacyImports: `import { fetchAllBorrowers } from '@wuwei-labs/srsly/legacy';`,
|
|
237
|
+
instruction: `const result = await fetchAllBorrowers();
|
|
238
|
+
console.log(result);`,
|
|
239
|
+
isFetchOperation: true,
|
|
240
|
+
};
|
|
223
241
|
exports.fetchRentalDemo = {
|
|
224
242
|
tabName: 'fetch',
|
|
225
243
|
description: 'Fetch rental state by address',
|
|
@@ -229,6 +247,15 @@ exports.fetchRentalDemo = {
|
|
|
229
247
|
console.log(result);`,
|
|
230
248
|
isFetchOperation: true,
|
|
231
249
|
};
|
|
250
|
+
exports.fetchAllRentalsDemo = {
|
|
251
|
+
tabName: 'fetch all',
|
|
252
|
+
description: 'Fetch all rental states from the program',
|
|
253
|
+
imports: `import { fetchAllRentals } from '@wuwei-labs/srsly/kit';`,
|
|
254
|
+
legacyImports: `import { fetchAllRentals } from '@wuwei-labs/srsly/legacy';`,
|
|
255
|
+
instruction: `const result = await fetchAllRentals();
|
|
256
|
+
console.log(result);`,
|
|
257
|
+
isFetchOperation: true,
|
|
258
|
+
};
|
|
232
259
|
// ============================================================================
|
|
233
260
|
// Affiliate Demos
|
|
234
261
|
// ============================================================================
|
|
@@ -320,8 +347,11 @@ exports.ALL_DEMOS = {
|
|
|
320
347
|
reserveRental: exports.reserveRentalDemo,
|
|
321
348
|
claimRental: exports.claimRentalDemo,
|
|
322
349
|
fetchContract: exports.fetchContractDemo,
|
|
350
|
+
fetchAllContracts: exports.fetchAllContractsDemo,
|
|
323
351
|
fetchBorrower: exports.fetchBorrowerDemo,
|
|
352
|
+
fetchAllBorrowers: exports.fetchAllBorrowersDemo,
|
|
324
353
|
fetchRental: exports.fetchRentalDemo,
|
|
354
|
+
fetchAllRentals: exports.fetchAllRentalsDemo,
|
|
325
355
|
createAffiliate: exports.createAffiliateDemo,
|
|
326
356
|
approveAffiliate: exports.approveAffiliateDemo,
|
|
327
357
|
removeAffiliate: exports.removeAffiliateDemo,
|
package/dist/cjs/demos.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"demos.js","sourceRoot":"","sources":["../../src/demos.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"demos.js","sourceRoot":"","sources":["../../src/demos.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -44,8 +44,8 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
44
44
|
})();
|
|
45
45
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
46
46
|
exports.deleteConfig = exports.updateConfig = exports.createConfig = exports.discountBorrower = exports.updateBorrower = exports.closeBorrower = exports.claimBorrower = exports.claimContractPayments = exports.cancelRental = exports.closeRental = exports.claimRental = exports.acceptRental = exports.closeContract = exports.deleteContract = exports.deleteRental = exports.deleteBorrower = exports.setDelegate = exports.updateContract = exports.createContract = exports.isSerializedDiscountAuth = exports.deserializeDiscountAuth = exports.serializeDiscountAuth = exports.createDiscount = exports.getLookupTableAddress = exports.fetchLookupTable = exports.isRpcDebugEnabled = exports.setRpcDebug = exports.createRpc = exports.InstructionResult = exports.prepareInstructions = exports.toAddress = exports.toWeb3Instruction = exports.isAddressString = exports.isKitSigner = exports.isWeb3jsSigner = exports.validateAddress = exports.toTransactionSigner = exports.ATLASNET_ADDRESSES = exports.MAINNET_ADDRESSES = exports.isValidNetwork = exports.isValidProgramSet = exports.getNetworkAddresses = exports.getProgramAddresses = exports.getAffiliateConfig = exports.getAddresses = exports.mergeConfig = exports.clearSdkConfig = exports.getSdkConfig = exports.setSdkConfig = exports.VERSION = void 0;
|
|
47
|
-
exports.
|
|
48
|
-
exports.codama = exports.deriveLookupTable = exports.deriveVault = exports.deriveAssociatedTokenAccount = exports.deriveRentalThread = exports.deriveGameAccounts = exports.deriveStarbasePlayer = exports.deriveStarbase = void 0;
|
|
47
|
+
exports.deriveRentalAuthority = exports.deriveRental = exports.deriveContract = exports.getFactionCoordinates = exports.getFactionName = exports.isValidFactionName = exports.THREAD_SEED = exports.CONFIG_SEED = exports.BORROWER_STATE_SEED = exports.RENTAL_AUTHORITY_SEED = exports.RENTAL_SEED = exports.CONTRACT_SEED = exports.PROFILE_FACTION_SEED = exports.SAGE_PLAYER_PROFILE_SEED = exports.STARBASE_PLAYER_SEED = exports.STARBASE_SEED = exports.FACTION_MAPPING = exports.FACTION_COORDINATES = exports.deriveMember = exports.fetchVault = exports.fetchMember = exports.fetchAllConfigs = exports.fetchConfig = exports.fetchAllBorrowers = exports.fetchBorrower = exports.fetchAllRentals = exports.fetchRental = exports.fetchAllContracts = exports.fetchContract = exports.fetchFleet = exports.SCHEDULE_SHORTCUTS = exports.isScheduleShortcut = exports.formatSchedule = exports.validateScheduleFormat = exports.normalizeSchedule = exports.formatDuration = exports.validateDuration = exports.convertDuration = exports.validateAmount = exports.formatAmount = exports.stardustToAtlas = exports.convertAmount = exports.updateAffiliate = exports.removeAffiliate = exports.approveAffiliate = exports.createAffiliate = exports.createDiscountAuth = exports.reserveRental = exports.invalidateRental = exports.releaseRental = void 0;
|
|
48
|
+
exports.codama = exports.deriveLookupTable = exports.deriveVault = exports.deriveAssociatedTokenAccount = exports.deriveRentalThread = exports.deriveGameAccounts = exports.deriveStarbasePlayer = exports.deriveStarbase = exports.deriveSagePlayerProfile = exports.deriveProfileFaction = exports.deriveConfig = exports.deriveBorrowerState = void 0;
|
|
49
49
|
// SDK Version - auto-generated from package.json (single source of truth)
|
|
50
50
|
var version_1 = require("./version");
|
|
51
51
|
Object.defineProperty(exports, "VERSION", { enumerable: true, get: function () { return version_1.VERSION; } });
|
|
@@ -177,12 +177,16 @@ var fleet_1 = require("./accounts/fleet");
|
|
|
177
177
|
Object.defineProperty(exports, "fetchFleet", { enumerable: true, get: function () { return fleet_1.fetchFleet; } });
|
|
178
178
|
var contract_1 = require("./accounts/contract");
|
|
179
179
|
Object.defineProperty(exports, "fetchContract", { enumerable: true, get: function () { return contract_1.fetchContract; } });
|
|
180
|
+
Object.defineProperty(exports, "fetchAllContracts", { enumerable: true, get: function () { return contract_1.fetchAllContracts; } });
|
|
180
181
|
var rental_1 = require("./accounts/rental");
|
|
181
182
|
Object.defineProperty(exports, "fetchRental", { enumerable: true, get: function () { return rental_1.fetchRental; } });
|
|
183
|
+
Object.defineProperty(exports, "fetchAllRentals", { enumerable: true, get: function () { return rental_1.fetchAllRentals; } });
|
|
182
184
|
var borrower_1 = require("./accounts/borrower");
|
|
183
185
|
Object.defineProperty(exports, "fetchBorrower", { enumerable: true, get: function () { return borrower_1.fetchBorrower; } });
|
|
186
|
+
Object.defineProperty(exports, "fetchAllBorrowers", { enumerable: true, get: function () { return borrower_1.fetchAllBorrowers; } });
|
|
184
187
|
var config_1 = require("./accounts/config");
|
|
185
188
|
Object.defineProperty(exports, "fetchConfig", { enumerable: true, get: function () { return config_1.fetchConfig; } });
|
|
189
|
+
Object.defineProperty(exports, "fetchAllConfigs", { enumerable: true, get: function () { return config_1.fetchAllConfigs; } });
|
|
186
190
|
var member_1 = require("./accounts/member");
|
|
187
191
|
Object.defineProperty(exports, "fetchMember", { enumerable: true, get: function () { return member_1.fetchMember; } });
|
|
188
192
|
Object.defineProperty(exports, "fetchVault", { enumerable: true, get: function () { return member_1.fetchVault; } });
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/package.json
CHANGED
|
@@ -25,30 +25,30 @@ function convertToLegacy(instruction, PublicKey) {
|
|
|
25
25
|
};
|
|
26
26
|
}
|
|
27
27
|
/**
|
|
28
|
-
* InstructionResult -
|
|
28
|
+
* InstructionResult - Wrapper for @solana/kit Instructions with legacy conversion
|
|
29
29
|
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
30
|
+
* Contains a plain Instruction[] array accessible via `.instructions`.
|
|
31
|
+
* Supports iteration (`for...of`, spread) and `.toLegacy()` conversion for web3.js.
|
|
32
32
|
*
|
|
33
33
|
* @example
|
|
34
34
|
* ```typescript
|
|
35
|
-
* // Kit users -
|
|
36
|
-
* const
|
|
37
|
-
*
|
|
35
|
+
* // Kit users - access instructions directly
|
|
36
|
+
* const result = await createContract(params);
|
|
37
|
+
* for (const ix of result) { ... }
|
|
38
|
+
* // Or unwrap: result.instructions
|
|
38
39
|
*
|
|
39
40
|
* // Web3.js users - convert to legacy format
|
|
40
41
|
* import { PublicKey } from '@solana/web3.js';
|
|
41
|
-
* const legacyIxs =
|
|
42
|
+
* const legacyIxs = result.toLegacy(PublicKey);
|
|
42
43
|
* // Or if PublicKey is configured in SDK:
|
|
43
44
|
* setSdkConfig({ PublicKey });
|
|
44
|
-
* const legacyIxs =
|
|
45
|
+
* const legacyIxs = result.toLegacy();
|
|
45
46
|
* ```
|
|
46
47
|
*/
|
|
47
|
-
class InstructionResult
|
|
48
|
+
class InstructionResult {
|
|
49
|
+
instructions;
|
|
48
50
|
constructor(instructions) {
|
|
49
|
-
|
|
50
|
-
// Fix prototype chain for proper instanceof checks
|
|
51
|
-
Object.setPrototypeOf(this, InstructionResult.prototype);
|
|
51
|
+
this.instructions = instructions;
|
|
52
52
|
}
|
|
53
53
|
/**
|
|
54
54
|
* Convert to legacy web3.js instruction format
|
|
@@ -57,25 +57,19 @@ class InstructionResult extends Array {
|
|
|
57
57
|
* uses the PublicKey from SDK config (set via setSdkConfig)
|
|
58
58
|
* @returns Array of instructions in web3.js format
|
|
59
59
|
* @throws Error if no PublicKey is available
|
|
60
|
-
*
|
|
61
|
-
* @example
|
|
62
|
-
* ```typescript
|
|
63
|
-
* // Option 1: Pass PublicKey explicitly
|
|
64
|
-
* import { PublicKey } from '@solana/web3.js';
|
|
65
|
-
* const legacyIxs = ixs.toLegacy(PublicKey);
|
|
66
|
-
*
|
|
67
|
-
* // Option 2: Configure SDK once, then call without args
|
|
68
|
-
* import { PublicKey } from '@solana/web3.js';
|
|
69
|
-
* setSdkConfig({ PublicKey });
|
|
70
|
-
* const legacyIxs = ixs.toLegacy();
|
|
71
|
-
* ```
|
|
72
60
|
*/
|
|
73
61
|
toLegacy(PublicKey) {
|
|
74
62
|
const pk = PublicKey || (0, config_1.getSdkConfig)().PublicKey;
|
|
75
63
|
if (!pk) {
|
|
76
64
|
throw new Error('PublicKey constructor required - pass it to toLegacy() or set in SDK config via setSdkConfig({ PublicKey })');
|
|
77
65
|
}
|
|
78
|
-
return this.map(ix => convertToLegacy(ix, pk));
|
|
66
|
+
return this.instructions.map(ix => convertToLegacy(ix, pk));
|
|
67
|
+
}
|
|
68
|
+
get length() {
|
|
69
|
+
return this.instructions.length;
|
|
70
|
+
}
|
|
71
|
+
[Symbol.iterator]() {
|
|
72
|
+
return this.instructions[Symbol.iterator]();
|
|
79
73
|
}
|
|
80
74
|
}
|
|
81
75
|
exports.InstructionResult = InstructionResult;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instructionResult.js","sourceRoot":"","sources":["../../../src/utils/instructionResult.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,qCAAmE;AAenE;;GAEG;AACH,SAAS,eAAe,CACtB,WAAwB,EACxB,SAA2C;IAE3C,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,IAAI,EAAE,CAAC;IAC5C,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,IAAI,IAAI,UAAU,EAAE,CAAC;IAElD,OAAO;QACL,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC7B,MAAM,EAAE,IAAI,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC9C,UAAU,EAAE,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,qBAAqB;YAC3D,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB;SACvD,CAAC,CAAC;QACH,SAAS,EAAE,IAAI,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;QAC5D,IAAI;KACL,CAAC;AACJ,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"instructionResult.js","sourceRoot":"","sources":["../../../src/utils/instructionResult.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,qCAAmE;AAenE;;GAEG;AACH,SAAS,eAAe,CACtB,WAAwB,EACxB,SAA2C;IAE3C,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,IAAI,EAAE,CAAC;IAC5C,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,IAAI,IAAI,UAAU,EAAE,CAAC;IAElD,OAAO;QACL,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC7B,MAAM,EAAE,IAAI,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC9C,UAAU,EAAE,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,qBAAqB;YAC3D,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB;SACvD,CAAC,CAAC;QACH,SAAS,EAAE,IAAI,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;QAC5D,IAAI;KACL,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAa,iBAAiB;IACnB,YAAY,CAAgB;IAErC,YAAY,YAA2B;QACrC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED;;;;;;;OAOG;IACH,QAAQ,CACN,SAA4C;QAE5C,MAAM,EAAE,GAAG,SAAS,IAAI,IAAA,qBAAY,GAAE,CAAC,SAAS,CAAC;QACjD,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,IAAI,KAAK,CACb,6GAA6G,CAC9G,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;IAClC,CAAC;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC;QACf,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC9C,CAAC;CACF;AAlCD,8CAkCC"}
|
package/dist/cjs/version.js
CHANGED
|
@@ -3,5 +3,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.VERSION = void 0;
|
|
4
4
|
// Auto-generated from package.json - DO NOT EDIT
|
|
5
5
|
// Run "pnpm run generate:version" to update
|
|
6
|
-
exports.VERSION = '3.0.0-beta.
|
|
6
|
+
exports.VERSION = '3.0.0-beta.17';
|
|
7
7
|
//# sourceMappingURL=version.js.map
|
|
@@ -3,7 +3,9 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Fetches borrower state data from the SRSLY program.
|
|
5
5
|
*/
|
|
6
|
-
import {
|
|
6
|
+
import { getBase64Encoder } from '@solana/kit';
|
|
7
|
+
import { fetchBorrowerState, BORROWER_STATE_DISCRIMINATOR, getBorrowerStateDecoder } from '../generated/codama/accounts';
|
|
8
|
+
import { SRSLY_PROGRAM_ADDRESS } from '../generated/codama/programs/srsly';
|
|
7
9
|
import { getRpcUrl } from '../utils/config';
|
|
8
10
|
import { createRpc } from '../utils/rpc';
|
|
9
11
|
import { deriveBorrowerState } from '../pda';
|
|
@@ -57,4 +59,49 @@ export async function fetchBorrower(address, rpcUrl) {
|
|
|
57
59
|
}
|
|
58
60
|
}
|
|
59
61
|
}
|
|
62
|
+
/**
|
|
63
|
+
* Fetch all borrower state accounts from the SRSLY program
|
|
64
|
+
*
|
|
65
|
+
* Uses getProgramAccounts with a discriminator filter to find all BorrowerState accounts.
|
|
66
|
+
*
|
|
67
|
+
* @param rpcUrl - Optional RPC endpoint URL. If not provided, uses RPC from global config
|
|
68
|
+
* @returns Array of borrower states with their addresses
|
|
69
|
+
*
|
|
70
|
+
* @example
|
|
71
|
+
* ```typescript
|
|
72
|
+
* const borrowers = await fetchAllBorrowers();
|
|
73
|
+
* console.log(`Found ${borrowers.length} borrowers`);
|
|
74
|
+
* borrowers.forEach(b => console.log(b.address, b.data.borrower));
|
|
75
|
+
* ```
|
|
76
|
+
*/
|
|
77
|
+
export async function fetchAllBorrowers(rpcUrl) {
|
|
78
|
+
try {
|
|
79
|
+
const resolvedRpcUrl = rpcUrl || getRpcUrl();
|
|
80
|
+
const rpc = createRpc(resolvedRpcUrl);
|
|
81
|
+
const discriminatorBase64 = btoa(String.fromCharCode(...BORROWER_STATE_DISCRIMINATOR));
|
|
82
|
+
const response = await rpc.getProgramAccounts(SRSLY_PROGRAM_ADDRESS, {
|
|
83
|
+
encoding: 'base64',
|
|
84
|
+
filters: [
|
|
85
|
+
{
|
|
86
|
+
memcmp: {
|
|
87
|
+
offset: 0n,
|
|
88
|
+
bytes: discriminatorBase64,
|
|
89
|
+
encoding: 'base64',
|
|
90
|
+
},
|
|
91
|
+
},
|
|
92
|
+
],
|
|
93
|
+
}).send();
|
|
94
|
+
const base64Encoder = getBase64Encoder();
|
|
95
|
+
const decoder = getBorrowerStateDecoder();
|
|
96
|
+
const accounts = Array.isArray(response) ? response : response.value;
|
|
97
|
+
return accounts.map((account) => {
|
|
98
|
+
const bytes = base64Encoder.encode(account.account.data[0]);
|
|
99
|
+
const decoded = decoder.decode(bytes);
|
|
100
|
+
return { data: decoded, address: account.pubkey };
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
catch (error) {
|
|
104
|
+
throw new Error(`Failed to fetch all borrower states: ${error.message}`);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
60
107
|
//# sourceMappingURL=borrower.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"borrower.js","sourceRoot":"","sources":["../../../src/accounts/borrower.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"borrower.js","sourceRoot":"","sources":["../../../src/accounts/borrower.ts"],"names":[],"mappings":"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"}
|