@zcomb/programs-sdk 1.11.0 → 1.11.1
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/amm/client.js +1 -226
- package/dist/amm/constants.js +1 -24
- package/dist/amm/index.js +1 -22
- package/dist/amm/instructions.js +1 -79
- package/dist/amm/types.js +1 -14
- package/dist/amm/utils.js +1 -181
- package/dist/futarchy/client.js +1 -767
- package/dist/futarchy/constants.js +1 -23
- package/dist/futarchy/index.js +1 -22
- package/dist/futarchy/instructions.js +1 -162
- package/dist/futarchy/types.js +1 -15
- package/dist/futarchy/utils.js +1 -70
- package/dist/generated/idls/index.js +1 -15
- package/dist/generated/types/amm.js +1 -3
- package/dist/generated/types/futarchy.js +1 -3
- package/dist/generated/types/index.js +1 -3
- package/dist/generated/types/svault.js +1 -3
- package/dist/generated/types/vault.js +1 -3
- package/dist/index.js +1 -137
- package/dist/svault/client.js +1 -190
- package/dist/svault/constants.js +1 -20
- package/dist/svault/index.js +1 -22
- package/dist/svault/instructions.js +1 -172
- package/dist/svault/types.js +1 -7
- package/dist/svault/utils.js +1 -86
- package/dist/utils.js +1 -28
- package/dist/vault/client.js +1 -185
- package/dist/vault/constants.js +1 -20
- package/dist/vault/index.js +1 -22
- package/dist/vault/instructions.js +1 -109
- package/dist/vault/types.js +1 -20
- package/dist/vault/utils.js +1 -50
- package/package.json +4 -2
package/dist/vault/constants.js
CHANGED
|
@@ -1,20 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* Constants for the Vault program.
|
|
4
|
-
* Parsed from the generated IDL to stay in sync with the Rust program.
|
|
5
|
-
*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.VAULT_VERSION = exports.MIN_OPTIONS = exports.MAX_OPTIONS = exports.CONDITIONAL_MINT_SEED = exports.VAULT_SEED = exports.PROGRAM_ID = void 0;
|
|
8
|
-
const web3_js_1 = require("@solana/web3.js");
|
|
9
|
-
const idls_1 = require("../generated/idls");
|
|
10
|
-
const utils_1 = require("../utils");
|
|
11
|
-
/* Program ID */
|
|
12
|
-
exports.PROGRAM_ID = new web3_js_1.PublicKey(idls_1.VaultIDL.address);
|
|
13
|
-
/* PDA Seeds */
|
|
14
|
-
exports.VAULT_SEED = (0, utils_1.parseIdlBytes)((0, utils_1.getIdlConstant)(idls_1.VaultIDL, "VAULT_SEED"));
|
|
15
|
-
exports.CONDITIONAL_MINT_SEED = (0, utils_1.parseIdlBytes)((0, utils_1.getIdlConstant)(idls_1.VaultIDL, "CONDITIONAL_MINT_SEED"));
|
|
16
|
-
/* Numeric Constants */
|
|
17
|
-
exports.MAX_OPTIONS = Number((0, utils_1.getIdlConstant)(idls_1.VaultIDL, "MAX_OPTIONS"));
|
|
18
|
-
exports.MIN_OPTIONS = Number((0, utils_1.getIdlConstant)(idls_1.VaultIDL, "MIN_OPTIONS"));
|
|
19
|
-
exports.VAULT_VERSION = Number((0, utils_1.getIdlConstant)(idls_1.VaultIDL, "VAULT_VERSION"));
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3ZhdWx0L2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7OztHQUdHOzs7QUFFSCw2Q0FBNEM7QUFDNUMsNENBQTZDO0FBQzdDLG9DQUF5RDtBQUV6RCxnQkFBZ0I7QUFFSCxRQUFBLFVBQVUsR0FBRyxJQUFJLG1CQUFTLENBQUMsZUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBRTFELGVBQWU7QUFFRixRQUFBLFVBQVUsR0FBRyxJQUFBLHFCQUFhLEVBQUMsSUFBQSxzQkFBYyxFQUFDLGVBQVEsRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO0FBQ25FLFFBQUEscUJBQXFCLEdBQUcsSUFBQSxxQkFBYSxFQUFDLElBQUEsc0JBQWMsRUFBQyxlQUFRLEVBQUUsdUJBQXVCLENBQUMsQ0FBQyxDQUFDO0FBRXRHLHVCQUF1QjtBQUVWLFFBQUEsV0FBVyxHQUFHLE1BQU0sQ0FBQyxJQUFBLHNCQUFjLEVBQUMsZUFBUSxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUM7QUFDOUQsUUFBQSxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUEsc0JBQWMsRUFBQyxlQUFRLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQztBQUM5RCxRQUFBLGFBQWEsR0FBRyxNQUFNLENBQUMsSUFBQSxzQkFBYyxFQUFDLGVBQVEsRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvbnN0YW50cyBmb3IgdGhlIFZhdWx0IHByb2dyYW0uXG4gKiBQYXJzZWQgZnJvbSB0aGUgZ2VuZXJhdGVkIElETCB0byBzdGF5IGluIHN5bmMgd2l0aCB0aGUgUnVzdCBwcm9ncmFtLlxuICovXG5cbmltcG9ydCB7IFB1YmxpY0tleSB9IGZyb20gXCJAc29sYW5hL3dlYjMuanNcIjtcbmltcG9ydCB7IFZhdWx0SURMIH0gZnJvbSBcIi4uL2dlbmVyYXRlZC9pZGxzXCI7XG5pbXBvcnQgeyBwYXJzZUlkbEJ5dGVzLCBnZXRJZGxDb25zdGFudCB9IGZyb20gXCIuLi91dGlsc1wiO1xuXG4vKiBQcm9ncmFtIElEICovXG5cbmV4cG9ydCBjb25zdCBQUk9HUkFNX0lEID0gbmV3IFB1YmxpY0tleShWYXVsdElETC5hZGRyZXNzKTtcblxuLyogUERBIFNlZWRzICovXG5cbmV4cG9ydCBjb25zdCBWQVVMVF9TRUVEID0gcGFyc2VJZGxCeXRlcyhnZXRJZGxDb25zdGFudChWYXVsdElETCwgXCJWQVVMVF9TRUVEXCIpKTtcbmV4cG9ydCBjb25zdCBDT05ESVRJT05BTF9NSU5UX1NFRUQgPSBwYXJzZUlkbEJ5dGVzKGdldElkbENvbnN0YW50KFZhdWx0SURMLCBcIkNPTkRJVElPTkFMX01JTlRfU0VFRFwiKSk7XG5cbi8qIE51bWVyaWMgQ29uc3RhbnRzICovXG5cbmV4cG9ydCBjb25zdCBNQVhfT1BUSU9OUyA9IE51bWJlcihnZXRJZGxDb25zdGFudChWYXVsdElETCwgXCJNQVhfT1BUSU9OU1wiKSk7XG5leHBvcnQgY29uc3QgTUlOX09QVElPTlMgPSBOdW1iZXIoZ2V0SWRsQ29uc3RhbnQoVmF1bHRJREwsIFwiTUlOX09QVElPTlNcIikpO1xuZXhwb3J0IGNvbnN0IFZBVUxUX1ZFUlNJT04gPSBOdW1iZXIoZ2V0SWRsQ29uc3RhbnQoVmF1bHRJREwsIFwiVkFVTFRfVkVSU0lPTlwiKSk7XG4iXX0=
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.VAULT_VERSION=exports.MIN_OPTIONS=exports.MAX_OPTIONS=exports.CONDITIONAL_MINT_SEED=exports.VAULT_SEED=exports.PROGRAM_ID=void 0;const web3_js_1=require("@solana/web3.js"),idls_1=require("../generated/idls"),utils_1=require("../utils");exports.PROGRAM_ID=new web3_js_1.PublicKey(idls_1.VaultIDL.address),exports.VAULT_SEED=(0,utils_1.parseIdlBytes)((0,utils_1.getIdlConstant)(idls_1.VaultIDL,"VAULT_SEED")),exports.CONDITIONAL_MINT_SEED=(0,utils_1.parseIdlBytes)((0,utils_1.getIdlConstant)(idls_1.VaultIDL,"CONDITIONAL_MINT_SEED")),exports.MAX_OPTIONS=Number((0,utils_1.getIdlConstant)(idls_1.VaultIDL,"MAX_OPTIONS")),exports.MIN_OPTIONS=Number((0,utils_1.getIdlConstant)(idls_1.VaultIDL,"MIN_OPTIONS")),exports.VAULT_VERSION=Number((0,utils_1.getIdlConstant)(idls_1.VaultIDL,"VAULT_VERSION"));
|
package/dist/vault/index.js
CHANGED
|
@@ -1,22 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./constants"), exports);
|
|
18
|
-
__exportStar(require("./types"), exports);
|
|
19
|
-
__exportStar(require("./utils"), exports);
|
|
20
|
-
__exportStar(require("./instructions"), exports);
|
|
21
|
-
__exportStar(require("./client"), exports);
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdmF1bHQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDhDQUE0QjtBQUM1QiwwQ0FBd0I7QUFDeEIsMENBQXdCO0FBQ3hCLGlEQUErQjtBQUMvQiwyQ0FBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9jb25zdGFudHNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3R5cGVzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi91dGlsc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vaW5zdHJ1Y3Rpb25zXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jbGllbnRcIjtcbiJdfQ==
|
|
1
|
+
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,o)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),__exportStar=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||__createBinding(t,e,r)};Object.defineProperty(exports,"__esModule",{value:!0}),__exportStar(require("./constants"),exports),__exportStar(require("./types"),exports),__exportStar(require("./utils"),exports),__exportStar(require("./instructions"),exports),__exportStar(require("./client"),exports);
|
|
@@ -1,109 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* Low-level instruction builders for the Vault program.
|
|
4
|
-
* These are thin wrappers around the program methods - use VaultClient for higher-level operations.
|
|
5
|
-
*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.initialize = initialize;
|
|
8
|
-
exports.addOption = addOption;
|
|
9
|
-
exports.activate = activate;
|
|
10
|
-
exports.deposit = deposit;
|
|
11
|
-
exports.withdraw = withdraw;
|
|
12
|
-
exports.finalize = finalize;
|
|
13
|
-
exports.redeemWinnings = redeemWinnings;
|
|
14
|
-
const anchor_1 = require("@coral-xyz/anchor");
|
|
15
|
-
const spl_token_1 = require("@solana/spl-token");
|
|
16
|
-
const types_1 = require("./types");
|
|
17
|
-
function initialize(program, payer, owner, vaultPda, baseMint, quoteMint, condBaseMint0, condBaseMint1, condQuoteMint0, condQuoteMint1, nonce) {
|
|
18
|
-
return program.methods.initialize(nonce).accountsPartial({
|
|
19
|
-
payer,
|
|
20
|
-
owner,
|
|
21
|
-
vault: vaultPda,
|
|
22
|
-
baseMint,
|
|
23
|
-
quoteMint,
|
|
24
|
-
condBaseMint0,
|
|
25
|
-
condBaseMint1,
|
|
26
|
-
condQuoteMint0,
|
|
27
|
-
condQuoteMint1,
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
function addOption(program, payer, owner, vaultPda, condBaseMint, condQuoteMint) {
|
|
31
|
-
return program.methods.addOption().accountsPartial({
|
|
32
|
-
payer,
|
|
33
|
-
owner,
|
|
34
|
-
vault: vaultPda,
|
|
35
|
-
condBaseMint,
|
|
36
|
-
condQuoteMint,
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
function activate(program, payer, owner, vaultPda) {
|
|
40
|
-
return program.methods.activate().accountsPartial({
|
|
41
|
-
payer,
|
|
42
|
-
owner,
|
|
43
|
-
vault: vaultPda,
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
function deposit(program, signer, vaultPda, mint, condMints, vaultType, amount) {
|
|
47
|
-
const amountBN = typeof amount === "number" ? new anchor_1.BN(amount) : amount;
|
|
48
|
-
const vaultTypeArg = vaultType === types_1.VaultType.Base ? { base: {} } : { quote: {} };
|
|
49
|
-
return program.methods
|
|
50
|
-
.deposit(vaultTypeArg, amountBN)
|
|
51
|
-
.accountsPartial({
|
|
52
|
-
signer,
|
|
53
|
-
vault: vaultPda,
|
|
54
|
-
mint,
|
|
55
|
-
})
|
|
56
|
-
.remainingAccounts(condMints.flatMap((condMint) => [
|
|
57
|
-
{ pubkey: condMint, isSigner: false, isWritable: true },
|
|
58
|
-
{
|
|
59
|
-
pubkey: (0, spl_token_1.getAssociatedTokenAddressSync)(condMint, signer),
|
|
60
|
-
isSigner: false,
|
|
61
|
-
isWritable: true,
|
|
62
|
-
},
|
|
63
|
-
]));
|
|
64
|
-
}
|
|
65
|
-
function withdraw(program, signer, vaultPda, mint, condMints, vaultType, amount) {
|
|
66
|
-
const amountBN = typeof amount === "number" ? new anchor_1.BN(amount) : amount;
|
|
67
|
-
const vaultTypeArg = vaultType === types_1.VaultType.Base ? { base: {} } : { quote: {} };
|
|
68
|
-
return program.methods
|
|
69
|
-
.withdraw(vaultTypeArg, amountBN)
|
|
70
|
-
.accountsPartial({
|
|
71
|
-
signer,
|
|
72
|
-
vault: vaultPda,
|
|
73
|
-
mint,
|
|
74
|
-
})
|
|
75
|
-
.remainingAccounts(condMints.flatMap((condMint) => [
|
|
76
|
-
{ pubkey: condMint, isSigner: false, isWritable: true },
|
|
77
|
-
{
|
|
78
|
-
pubkey: (0, spl_token_1.getAssociatedTokenAddressSync)(condMint, signer),
|
|
79
|
-
isSigner: false,
|
|
80
|
-
isWritable: true,
|
|
81
|
-
},
|
|
82
|
-
]));
|
|
83
|
-
}
|
|
84
|
-
function finalize(program, payer, owner, vaultPda, winningIdx) {
|
|
85
|
-
return program.methods.finalize(winningIdx).accountsPartial({
|
|
86
|
-
payer,
|
|
87
|
-
owner,
|
|
88
|
-
vault: vaultPda,
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
|
-
function redeemWinnings(program, signer, vaultPda, mint, condMints, vaultType) {
|
|
92
|
-
const vaultTypeArg = vaultType === types_1.VaultType.Base ? { base: {} } : { quote: {} };
|
|
93
|
-
return program.methods
|
|
94
|
-
.redeemWinnings(vaultTypeArg)
|
|
95
|
-
.accountsPartial({
|
|
96
|
-
signer,
|
|
97
|
-
vault: vaultPda,
|
|
98
|
-
mint,
|
|
99
|
-
})
|
|
100
|
-
.remainingAccounts(condMints.flatMap((condMint) => [
|
|
101
|
-
{ pubkey: condMint, isSigner: false, isWritable: true },
|
|
102
|
-
{
|
|
103
|
-
pubkey: (0, spl_token_1.getAssociatedTokenAddressSync)(condMint, signer),
|
|
104
|
-
isSigner: false,
|
|
105
|
-
isWritable: true,
|
|
106
|
-
},
|
|
107
|
-
]));
|
|
108
|
-
}
|
|
109
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdHJ1Y3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3ZhdWx0L2luc3RydWN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7OztHQUdHOztBQU9ILGdDQXdCQztBQUVELDhCQWVDO0FBRUQsNEJBV0M7QUFFRCwwQkE2QkM7QUFFRCw0QkE2QkM7QUFFRCw0QkFZQztBQUVELHdDQTJCQztBQXBLRCw4Q0FBZ0Q7QUFFaEQsaURBQWtFO0FBQ2xFLG1DQUEyQztBQUUzQyxTQUFnQixVQUFVLENBQ3hCLE9BQXVCLEVBQ3ZCLEtBQWdCLEVBQ2hCLEtBQWdCLEVBQ2hCLFFBQW1CLEVBQ25CLFFBQW1CLEVBQ25CLFNBQW9CLEVBQ3BCLGFBQXdCLEVBQ3hCLGFBQXdCLEVBQ3hCLGNBQXlCLEVBQ3pCLGNBQXlCLEVBQ3pCLEtBQWE7SUFFYixPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLGVBQWUsQ0FBQztRQUN2RCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUssRUFBRSxRQUFRO1FBQ2YsUUFBUTtRQUNSLFNBQVM7UUFDVCxhQUFhO1FBQ2IsYUFBYTtRQUNiLGNBQWM7UUFDZCxjQUFjO0tBQ2YsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELFNBQWdCLFNBQVMsQ0FDdkIsT0FBdUIsRUFDdkIsS0FBZ0IsRUFDaEIsS0FBZ0IsRUFDaEIsUUFBbUIsRUFDbkIsWUFBdUIsRUFDdkIsYUFBd0I7SUFFeEIsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDLGVBQWUsQ0FBQztRQUNqRCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUssRUFBRSxRQUFRO1FBQ2YsWUFBWTtRQUNaLGFBQWE7S0FDZCxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQsU0FBZ0IsUUFBUSxDQUN0QixPQUF1QixFQUN2QixLQUFnQixFQUNoQixLQUFnQixFQUNoQixRQUFtQjtJQUVuQixPQUFP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QUFjLENBQzVCLE9BQXVCLEVBQ3ZCLE1BQWlCLEVBQ2pCLFFBQW1CLEVBQ25CLElBQWUsRUFDZixTQUFzQixFQUN0QixTQUFvQjtJQUVwQixNQUFNLFlBQVksR0FBRyxTQUFTLEtBQUssaUJBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUVqRixPQUFPLE9BQU8sQ0FBQyxPQUFPO1NBQ25CLGNBQWMsQ0FBQyxZQUFZLENBQUM7U0FDNUIsZUFBZSxDQUFDO1FBQ2YsTUFBTTtRQUNOLEtBQUssRUFBRSxRQUFRO1FBQ2YsSUFBSTtLQUNMLENBQUM7U0FDRCxpQkFBaUIsQ0FDaEIsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7UUFDOUIsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRTtRQUN2RDtZQUNFLE1BQU0sRUFBRSxJQUFBLHlDQUE2QixFQUFDLFFBQVEsRUFBRSxNQUFNLENBQUM7WUFDdkQsUUFBUSxFQUFFLEtBQUs7WUFDZixVQUFVLEVBQUUsSUFBSTtTQUNqQjtLQUNGLENBQUMsQ0FDSCxDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBMb3ctbGV2ZWwgaW5zdHJ1Y3Rpb24gYnVpbGRlcnMgZm9yIHRoZSBWYXVsdCBwcm9ncmFtLlxuICogVGhlc2UgYXJlIHRoaW4gd3JhcHBlcnMgYXJvdW5kIHRoZSBwcm9ncmFtIG1ldGhvZHMgLSB1c2UgVmF1bHRDbGllbnQgZm9yIGhpZ2hlci1sZXZlbCBvcGVyYXRpb25zLlxuICovXG5cbmltcG9ydCB7IFByb2dyYW0sIEJOIH0gZnJvbSBcIkBjb3JhbC14eXovYW5jaG9yXCI7XG5pbXBvcnQgeyBQdWJsaWNLZXkgfSBmcm9tIFwiQHNvbGFuYS93ZWIzLmpzXCI7XG5pbXBvcnQgeyBnZXRBc3NvY2lhdGVkVG9rZW5BZGRyZXNzU3luYyB9IGZyb20gXCJAc29sYW5hL3NwbC10b2tlblwiO1xuaW1wb3J0IHsgVmF1bHQsIFZhdWx0VHlwZSB9IGZyb20gXCIuL3R5cGVzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBpbml0aWFsaXplKFxuICBwcm9ncmFtOiBQcm9ncmFtPFZhdWx0PixcbiAgcGF5ZXI6IFB1YmxpY0tleSxcbiAgb3duZXI6IFB1YmxpY0tleSxcbiAgdmF1bHRQZGE6IFB1YmxpY0tleSxcbiAgYmFzZU1pbnQ6IFB1YmxpY0tleSxcbiAgcXVvdGVNaW50OiBQdWJsaWNLZXksXG4gIGNvbmRCYXNlTWludDA6IFB1YmxpY0tleSxcbiAgY29uZEJhc2VNaW50MTogUHVibGljS2V5LFxuICBjb25kUXVvdGVNaW50MDogUHVibGljS2V5LFxuICBjb25kUXVvdGVNaW50MTogUHVibGljS2V5LFxuICBub25jZTogbnVtYmVyXG4pIHtcbiAgcmV0dXJuIHByb2dyYW0ubWV0aG9kcy5pbml0aWFsaXplKG5vbmNlKS5hY2NvdW50c1BhcnRpYWwoe1xuICAgIHBheWVyLFxuICAgIG93bmVyLFxuICAgIHZhdWx0OiB2YXVsdFBkYSxcbiAgICBiYXNlTWludCxcbiAgICBxdW90ZU1pbnQsXG4gICAgY29uZEJhc2VNaW50MCxcbiAgICBjb25kQmFzZU1pbnQxLFxuICAgIGNvbmRRdW90ZU1pbnQwLFxuICAgIGNvbmRRdW90ZU1pbnQxLFxuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFkZE9wdGlvbihcbiAgcHJvZ3JhbTogUHJvZ3JhbTxWYXVsdD4sXG4gIHBheWVyOiBQdWJsaWNLZXksXG4gIG93bmVyOiBQdWJsaWNLZXksXG4gIHZhdWx0UGRhOiBQdWJsaWNLZXksXG4gIGNvbmRCYXNlTWludDogUHVibGljS2V5LFxuICBjb25kUXVvdGVNaW50OiBQdWJsaWNLZXlcbikge1xuICByZXR1cm4gcHJvZ3JhbS5tZXRob2RzLmFkZE9wdGlvbigpLmFjY291bnRzUGFydGlhbCh7XG4gICAgcGF5ZXIsXG4gICAgb3duZXIsXG4gICAgdmF1bHQ6IHZhdWx0UGRhLFxuICAgIGNvbmRCYXNlTWludCxcbiAgICBjb25kUXVvdGVNaW50LFxuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFjdGl2YXRlKFxuICBwcm9ncmFtOiBQcm9ncmFtPFZhdWx0PixcbiAgcGF5ZXI6IFB1YmxpY0tleSxcbiAgb3duZXI6IFB1YmxpY0tleSxcbiAgdmF1bHRQZGE6IFB1YmxpY0tleVxuKSB7XG4gIHJldHVybiBwcm9ncmFtLm1ldGhvZHMuYWN0aXZhdGUoKS5hY2NvdW50c1BhcnRpYWwoe1xuICAgIHBheWVyLFxuICAgIG93bmVyLFxuICAgIHZhdWx0OiB2YXVsdFBkYSxcbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZXBvc2l0KFxuICBwcm9ncmFtOiBQcm9ncmFtPFZhdWx0PixcbiAgc2lnbmVyOiBQdWJsaWNLZXksXG4gIHZhdWx0UGRhOiBQdWJsaWNLZXksXG4gIG1pbnQ6IFB1YmxpY0tleSxcbiAgY29uZE1pbnRzOiBQdWJsaWNLZXlbXSxcbiAgdmF1bHRUeXBlOiBWYXVsdFR5cGUsXG4gIGFtb3VudDogQk4gfCBudW1iZXJcbikge1xuICBjb25zdCBhbW91bnRCTiA9IHR5cGVvZiBhbW91bnQgPT09IFwibnVtYmVyXCIgPyBuZXcgQk4oYW1vdW50KSA6IGFtb3VudDtcbiAgY29uc3QgdmF1bHRUeXBlQXJnID0gdmF1bHRUeXBlID09PSBWYXVsdFR5cGUuQmFzZSA/IHsgYmFzZToge30gfSA6IHsgcXVvdGU6IHt9IH07XG5cbiAgcmV0dXJuIHByb2dyYW0ubWV0aG9kc1xuICAgIC5kZXBvc2l0KHZhdWx0VHlwZUFyZywgYW1vdW50Qk4pXG4gICAgLmFjY291bnRzUGFydGlhbCh7XG4gICAgICBzaWduZXIsXG4gICAgICB2YXVsdDogdmF1bHRQZGEsXG4gICAgICBtaW50LFxuICAgIH0pXG4gICAgLnJlbWFpbmluZ0FjY291bnRzKFxuICAgICAgY29uZE1pbnRzLmZsYXRNYXAoKGNvbmRNaW50KSA9PiBbXG4gICAgICAgIHsgcHVia2V5OiBjb25kTWludCwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiB0cnVlIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwdWJrZXk6IGdldEFzc29jaWF0ZWRUb2tlbkFkZHJlc3NTeW5jKGNvbmRNaW50LCBzaWduZXIpLFxuICAgICAgICAgIGlzU2lnbmVyOiBmYWxzZSxcbiAgICAgICAgICBpc1dyaXRhYmxlOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgXSlcbiAgICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gd2l0aGRyYXcoXG4gIHByb2dyYW06IFByb2dyYW08VmF1bHQ+LFxuICBzaWduZXI6IFB1YmxpY0tleSxcbiAgdmF1bHRQZGE6IFB1YmxpY0tleSxcbiAgbWludDogUHVibGljS2V5LFxuICBjb25kTWludHM6IFB1YmxpY0tleVtdLFxuICB2YXVsdFR5cGU6IFZhdWx0VHlwZSxcbiAgYW1vdW50OiBCTiB8IG51bWJlclxuKSB7XG4gIGNvbnN0IGFtb3VudEJOID0gdHlwZW9mIGFtb3VudCA9PT0gXCJudW1iZXJcIiA/IG5ldyBCTihhbW91bnQpIDogYW1vdW50O1xuICBjb25zdCB2YXVsdFR5cGVBcmcgPSB2YXVsdFR5cGUgPT09IFZhdWx0VHlwZS5CYXNlID8geyBiYXNlOiB7fSB9IDogeyBxdW90ZToge30gfTtcblxuICByZXR1cm4gcHJvZ3JhbS5tZXRob2RzXG4gICAgLndpdGhkcmF3KHZhdWx0VHlwZUFyZywgYW1vdW50Qk4pXG4gICAgLmFjY291bnRzUGFydGlhbCh7XG4gICAgICBzaWduZXIsXG4gICAgICB2YXVsdDogdmF1bHRQZGEsXG4gICAgICBtaW50LFxuICAgIH0pXG4gICAgLnJlbWFpbmluZ0FjY291bnRzKFxuICAgICAgY29uZE1pbnRzLmZsYXRNYXAoKGNvbmRNaW50KSA9PiBbXG4gICAgICAgIHsgcHVia2V5OiBjb25kTWludCwgaXNTaWduZXI6IGZhbHNlLCBpc1dyaXRhYmxlOiB0cnVlIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwdWJrZXk6IGdldEFzc29jaWF0ZWRUb2tlbkFkZHJlc3NTeW5jKGNvbmRNaW50LCBzaWduZXIpLFxuICAgICAgICAgIGlzU2lnbmVyOiBmYWxzZSxcbiAgICAgICAgICBpc1dyaXRhYmxlOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgXSlcbiAgICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZmluYWxpemUoXG4gIHByb2dyYW06IFByb2dyYW08VmF1bHQ+LFxuICBwYXllcjogUHVibGljS2V5LFxuICBvd25lcjogUHVibGljS2V5LFxuICB2YXVsdFBkYTogUHVibGljS2V5LFxuICB3aW5uaW5nSWR4OiBudW1iZXJcbikge1xuICByZXR1cm4gcHJvZ3JhbS5tZXRob2RzLmZpbmFsaXplKHdpbm5pbmdJZHgpLmFjY291bnRzUGFydGlhbCh7XG4gICAgcGF5ZXIsXG4gICAgb3duZXIsXG4gICAgdmF1bHQ6IHZhdWx0UGRhLFxuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlZGVlbVdpbm5pbmdzKFxuICBwcm9ncmFtOiBQcm9ncmFtPFZhdWx0PixcbiAgc2lnbmVyOiBQdWJsaWNLZXksXG4gIHZhdWx0UGRhOiBQdWJsaWNLZXksXG4gIG1pbnQ6IFB1YmxpY0tleSxcbiAgY29uZE1pbnRzOiBQdWJsaWNLZXlbXSxcbiAgdmF1bHRUeXBlOiBWYXVsdFR5cGVcbikge1xuICBjb25zdCB2YXVsdFR5cGVBcmcgPSB2YXVsdFR5cGUgPT09IFZhdWx0VHlwZS5CYXNlID8geyBiYXNlOiB7fSB9IDogeyBxdW90ZToge30gfTtcblxuICByZXR1cm4gcHJvZ3JhbS5tZXRob2RzXG4gICAgLnJlZGVlbVdpbm5pbmdzKHZhdWx0VHlwZUFyZylcbiAgICAuYWNjb3VudHNQYXJ0aWFsKHtcbiAgICAgIHNpZ25lcixcbiAgICAgIHZhdWx0OiB2YXVsdFBkYSxcbiAgICAgIG1pbnQsXG4gICAgfSlcbiAgICAucmVtYWluaW5nQWNjb3VudHMoXG4gICAgICBjb25kTWludHMuZmxhdE1hcCgoY29uZE1pbnQpID0+IFtcbiAgICAgICAgeyBwdWJrZXk6IGNvbmRNaW50LCBpc1NpZ25lcjogZmFsc2UsIGlzV3JpdGFibGU6IHRydWUgfSxcbiAgICAgICAge1xuICAgICAgICAgIHB1YmtleTogZ2V0QXNzb2NpYXRlZFRva2VuQWRkcmVzc1N5bmMoY29uZE1pbnQsIHNpZ25lciksXG4gICAgICAgICAgaXNTaWduZXI6IGZhbHNlLFxuICAgICAgICAgIGlzV3JpdGFibGU6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICBdKVxuICAgICk7XG59XG4iXX0=
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.initialize=initialize,exports.addOption=addOption,exports.activate=activate,exports.deposit=deposit,exports.withdraw=withdraw,exports.finalize=finalize,exports.redeemWinnings=redeemWinnings;const anchor_1=require("@coral-xyz/anchor"),spl_token_1=require("@solana/spl-token"),types_1=require("./types");function initialize(e,t,n,i,a,s,o,r,u,c,p){return e.methods.initialize(p).accountsPartial({payer:t,owner:n,vault:i,baseMint:a,quoteMint:s,condBaseMint0:o,condBaseMint1:r,condQuoteMint0:u,condQuoteMint1:c})}function addOption(e,t,n,i,a,s){return e.methods.addOption().accountsPartial({payer:t,owner:n,vault:i,condBaseMint:a,condQuoteMint:s})}function activate(e,t,n,i){return e.methods.activate().accountsPartial({payer:t,owner:n,vault:i})}function deposit(e,t,n,i,a,s,o){const r="number"==typeof o?new anchor_1.BN(o):o,u=s===types_1.VaultType.Base?{base:{}}:{quote:{}};return e.methods.deposit(u,r).accountsPartial({signer:t,vault:n,mint:i}).remainingAccounts(a.flatMap(e=>[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:(0,spl_token_1.getAssociatedTokenAddressSync)(e,t),isSigner:!1,isWritable:!0}]))}function withdraw(e,t,n,i,a,s,o){const r="number"==typeof o?new anchor_1.BN(o):o,u=s===types_1.VaultType.Base?{base:{}}:{quote:{}};return e.methods.withdraw(u,r).accountsPartial({signer:t,vault:n,mint:i}).remainingAccounts(a.flatMap(e=>[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:(0,spl_token_1.getAssociatedTokenAddressSync)(e,t),isSigner:!1,isWritable:!0}]))}function finalize(e,t,n,i,a){return e.methods.finalize(a).accountsPartial({payer:t,owner:n,vault:i})}function redeemWinnings(e,t,n,i,a,s){const o=s===types_1.VaultType.Base?{base:{}}:{quote:{}};return e.methods.redeemWinnings(o).accountsPartial({signer:t,vault:n,mint:i}).remainingAccounts(a.flatMap(e=>[{pubkey:e,isSigner:!1,isWritable:!0},{pubkey:(0,spl_token_1.getAssociatedTokenAddressSync)(e,t),isSigner:!1,isWritable:!0}]))}
|
package/dist/vault/types.js
CHANGED
|
@@ -1,20 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* Type definitions for the Vault program.
|
|
4
|
-
* Exports IDL-derived types and SDK-friendly enums.
|
|
5
|
-
*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.VaultState = exports.VaultType = void 0;
|
|
8
|
-
/* SDK Enums */
|
|
9
|
-
var VaultType;
|
|
10
|
-
(function (VaultType) {
|
|
11
|
-
VaultType[VaultType["Base"] = 0] = "Base";
|
|
12
|
-
VaultType[VaultType["Quote"] = 1] = "Quote";
|
|
13
|
-
})(VaultType || (exports.VaultType = VaultType = {}));
|
|
14
|
-
var VaultState;
|
|
15
|
-
(function (VaultState) {
|
|
16
|
-
VaultState["Setup"] = "setup";
|
|
17
|
-
VaultState["Active"] = "active";
|
|
18
|
-
VaultState["Finalized"] = "finalized";
|
|
19
|
-
})(VaultState || (exports.VaultState = VaultState = {}));
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdmF1bHQvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7R0FHRzs7O0FBc0JILGVBQWU7QUFFZixJQUFZLFNBR1g7QUFIRCxXQUFZLFNBQVM7SUFDbkIseUNBQVEsQ0FBQTtJQUNSLDJDQUFTLENBQUE7QUFDWCxDQUFDLEVBSFcsU0FBUyx5QkFBVCxTQUFTLFFBR3BCO0FBRUQsSUFBWSxVQUlYO0FBSkQsV0FBWSxVQUFVO0lBQ3BCLDZCQUFlLENBQUE7SUFDZiwrQkFBaUIsQ0FBQTtJQUNqQixxQ0FBdUIsQ0FBQTtBQUN6QixDQUFDLEVBSlcsVUFBVSwwQkFBVixVQUFVLFFBSXJCIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFR5cGUgZGVmaW5pdGlvbnMgZm9yIHRoZSBWYXVsdCBwcm9ncmFtLlxuICogRXhwb3J0cyBJREwtZGVyaXZlZCB0eXBlcyBhbmQgU0RLLWZyaWVuZGx5IGVudW1zLlxuICovXG5cbmltcG9ydCB7IElkbEFjY291bnRzLCBJZGxFdmVudHMsIElkbFR5cGVzIH0gZnJvbSBcIkBjb3JhbC14eXovYW5jaG9yXCI7XG5pbXBvcnQgeyBUeE9wdGlvbnMgfSBmcm9tIFwiLi4vdXRpbHNcIjtcblxuZXhwb3J0IHsgVmF1bHQgfSBmcm9tIFwiLi4vZ2VuZXJhdGVkL3R5cGVzXCI7XG5pbXBvcnQgdHlwZSB7IFZhdWx0IH0gZnJvbSBcIi4uL2dlbmVyYXRlZC90eXBlc1wiO1xuXG4vKiBJREwtZGVyaXZlZCBUeXBlcyAqL1xuXG5leHBvcnQgdHlwZSBWYXVsdEFjY291bnQgPSBJZGxBY2NvdW50czxWYXVsdD5bXCJ2YXVsdEFjY291bnRcIl07XG5leHBvcnQgdHlwZSBWYXVsdFN0YXRlUmF3ID0gSWRsVHlwZXM8VmF1bHQ+W1widmF1bHRTdGF0ZVwiXTtcbmV4cG9ydCB0eXBlIFZhdWx0VHlwZVJhdyA9IElkbFR5cGVzPFZhdWx0PltcInZhdWx0VHlwZVwiXTtcblxuZXhwb3J0IHR5cGUgVmF1bHRJbml0aWFsaXplZEV2ZW50ID0gSWRsRXZlbnRzPFZhdWx0PltcInZhdWx0SW5pdGlhbGl6ZWRcIl07XG5leHBvcnQgdHlwZSBWYXVsdEFjdGl2YXRlZEV2ZW50ID0gSWRsRXZlbnRzPFZhdWx0PltcInZhdWx0QWN0aXZhdGVkXCJdO1xuZXhwb3J0IHR5cGUgVmF1bHREZXBvc2l0RXZlbnQgPSBJZGxFdmVudHM8VmF1bHQ+W1widmF1bHREZXBvc2l0XCJdO1xuZXhwb3J0IHR5cGUgVmF1bHRXaXRoZHJhd2FsRXZlbnQgPSBJZGxFdmVudHM8VmF1bHQ+W1widmF1bHRXaXRoZHJhd2FsXCJdO1xuZXhwb3J0IHR5cGUgVmF1bHRGaW5hbGl6ZWRFdmVudCA9IElkbEV2ZW50czxWYXVsdD5bXCJ2YXVsdEZpbmFsaXplZFwiXTtcbmV4cG9ydCB0eXBlIE9wdGlvbkFkZGVkRXZlbnQgPSBJZGxFdmVudHM8VmF1bHQ+W1wib3B0aW9uQWRkZWRcIl07XG5leHBvcnQgdHlwZSBXaW5uaW5nc1JlZGVlbWVkRXZlbnQgPSBJZGxFdmVudHM8VmF1bHQ+W1wid2lubmluZ3NSZWRlZW1lZFwiXTtcblxuLyogU0RLIEVudW1zICovXG5cbmV4cG9ydCBlbnVtIFZhdWx0VHlwZSB7XG4gIEJhc2UgPSAwLFxuICBRdW90ZSA9IDEsXG59XG5cbmV4cG9ydCBlbnVtIFZhdWx0U3RhdGUge1xuICBTZXR1cCA9IFwic2V0dXBcIixcbiAgQWN0aXZlID0gXCJhY3RpdmVcIixcbiAgRmluYWxpemVkID0gXCJmaW5hbGl6ZWRcIixcbn1cblxuLyogRXZlbnQgVW5pb24gVHlwZSAqL1xuXG5leHBvcnQgdHlwZSBWYXVsdEV2ZW50ID1cbiAgfCB7IG5hbWU6IFwiVmF1bHRJbml0aWFsaXplZFwiOyBkYXRhOiBWYXVsdEluaXRpYWxpemVkRXZlbnQgfVxuICB8IHsgbmFtZTogXCJWYXVsdEFjdGl2YXRlZFwiOyBkYXRhOiBWYXVsdEFjdGl2YXRlZEV2ZW50IH1cbiAgfCB7IG5hbWU6IFwiVmF1bHREZXBvc2l0XCI7IGRhdGE6IFZhdWx0RGVwb3NpdEV2ZW50IH1cbiAgfCB7IG5hbWU6IFwiVmF1bHRXaXRoZHJhd2FsXCI7IGRhdGE6IFZhdWx0V2l0aGRyYXdhbEV2ZW50IH1cbiAgfCB7IG5hbWU6IFwiVmF1bHRGaW5hbGl6ZWRcIjsgZGF0YTogVmF1bHRGaW5hbGl6ZWRFdmVudCB9XG4gIHwgeyBuYW1lOiBcIk9wdGlvbkFkZGVkXCI7IGRhdGE6IE9wdGlvbkFkZGVkRXZlbnQgfVxuICB8IHsgbmFtZTogXCJXaW5uaW5nc1JlZGVlbWVkXCI7IGRhdGE6IFdpbm5pbmdzUmVkZWVtZWRFdmVudCB9O1xuXG4vKiBDbGllbnQgT3B0aW9ucyAqL1xuXG5leHBvcnQgaW50ZXJmYWNlIFZhdWx0QWN0aW9uT3B0aW9ucyBleHRlbmRzIFR4T3B0aW9ucyB7XG4gIGF1dG9XcmFwVW53cmFwPzogYm9vbGVhbjsgIC8vIEF1dG8gd3JhcC91bndyYXAgbmF0aXZlIFNPTCAoZGVmYXVsdDogdHJ1ZSlcbn1cbiJdfQ==
|
|
1
|
+
"use strict";var VaultType,VaultState;Object.defineProperty(exports,"__esModule",{value:!0}),exports.VaultState=exports.VaultType=void 0,function(t){t[t.Base=0]="Base",t[t.Quote=1]="Quote"}(VaultType||(exports.VaultType=VaultType={})),function(t){t.Setup="setup",t.Active="active",t.Finalized="finalized"}(VaultState||(exports.VaultState=VaultState={}));
|
package/dist/vault/utils.js
CHANGED
|
@@ -1,50 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* Utility functions for the Vault program.
|
|
4
|
-
* PDA derivation, state parsing, and account fetching.
|
|
5
|
-
*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.deriveVaultPDA = deriveVaultPDA;
|
|
8
|
-
exports.deriveConditionalMint = deriveConditionalMint;
|
|
9
|
-
exports.parseVaultState = parseVaultState;
|
|
10
|
-
exports.fetchVaultAccount = fetchVaultAccount;
|
|
11
|
-
const web3_js_1 = require("@solana/web3.js");
|
|
12
|
-
const constants_1 = require("./constants");
|
|
13
|
-
const types_1 = require("./types");
|
|
14
|
-
/* PDA Derivation */
|
|
15
|
-
function deriveVaultPDA(owner, nonce, programId = constants_1.PROGRAM_ID) {
|
|
16
|
-
const nonceBuffer = Buffer.alloc(2);
|
|
17
|
-
nonceBuffer.writeUInt16LE(nonce);
|
|
18
|
-
return web3_js_1.PublicKey.findProgramAddressSync([
|
|
19
|
-
constants_1.VAULT_SEED,
|
|
20
|
-
owner.toBuffer(),
|
|
21
|
-
nonceBuffer,
|
|
22
|
-
], programId);
|
|
23
|
-
}
|
|
24
|
-
function deriveConditionalMint(vaultPda, vaultType, index, programId = constants_1.PROGRAM_ID) {
|
|
25
|
-
return web3_js_1.PublicKey.findProgramAddressSync([
|
|
26
|
-
constants_1.CONDITIONAL_MINT_SEED,
|
|
27
|
-
vaultPda.toBuffer(),
|
|
28
|
-
Buffer.from([vaultType]),
|
|
29
|
-
Buffer.from([index]),
|
|
30
|
-
], programId);
|
|
31
|
-
}
|
|
32
|
-
/* Parsers */
|
|
33
|
-
function parseVaultState(state) {
|
|
34
|
-
if ("setup" in state) {
|
|
35
|
-
return { state: types_1.VaultState.Setup, winningIdx: null };
|
|
36
|
-
}
|
|
37
|
-
if ("active" in state) {
|
|
38
|
-
return { state: types_1.VaultState.Active, winningIdx: null };
|
|
39
|
-
}
|
|
40
|
-
if ("finalized" in state) {
|
|
41
|
-
const winningIdx = state.finalized[0] ?? state.finalized;
|
|
42
|
-
return { state: types_1.VaultState.Finalized, winningIdx };
|
|
43
|
-
}
|
|
44
|
-
throw new Error("Unknown vault state");
|
|
45
|
-
}
|
|
46
|
-
/* Fetch */
|
|
47
|
-
async function fetchVaultAccount(program, vaultPda) {
|
|
48
|
-
return program.account.vaultAccount.fetch(vaultPda);
|
|
49
|
-
}
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdmF1bHQvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7R0FHRzs7QUFTSCx3Q0FlQztBQUVELHNEQWVDO0FBSUQsMENBWUM7QUFJRCw4Q0FLQztBQS9ERCw2Q0FBNEM7QUFDNUMsMkNBQTRFO0FBQzVFLG1DQUFxRTtBQUVyRSxvQkFBb0I7QUFFcEIsU0FBZ0IsY0FBYyxDQUM1QixLQUFnQixFQUNoQixLQUFhLEVBQ2IsWUFBdUIsc0JBQVU7SUFFakMsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwQyxXQUFXLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLE9BQU8sbUJBQVMsQ0FBQyxzQkFBc0IsQ0FDckM7UUFDRSxzQkFBVTtRQUNWLEtBQUssQ0FBQyxRQUFRLEVBQUU7UUFDaEIsV0FBVztLQUNaLEVBQ0QsU0FBUyxDQUNWLENBQUM7QUFDSixDQUFDO0FBRUQsU0FBZ0IscUJBQXFCLENBQ25DLFFBQW1CLEVBQ25CLFNBQW9CLEVBQ3BCLEtBQWEsRUFDYixZQUF1QixzQkFBVTtJQUVqQyxPQUFPLG1CQUFTLENBQUMsc0JBQXNCLENBQ3JDO1FBQ0UsaUNBQXFCO1FBQ3JCLFFBQVEsQ0FBQyxRQUFRLEVBQUU7UUFDbkIsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3hCLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztLQUNyQixFQUNELFNBQVMsQ0FDVixDQUFDO0FBQ0osQ0FBQztBQUVELGFBQWE7QUFFYixTQUFnQixlQUFlLENBQUMsS0FBVTtJQUN4QyxJQUFJLE9BQU8sSUFBSSxLQUFLLEVBQUUsQ0FBQztRQUNyQixPQUFPLEVBQUUsS0FBSyxFQUFFLGtCQUFVLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUN2RCxDQUFDO0lBQ0QsSUFBSSxRQUFRLElBQUksS0FBSyxFQUFFLENBQUM7UUFDdEIsT0FBTyxFQUFFLEtBQUssRUFBRSxrQkFBVSxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDeEQsQ0FBQztJQUNELElBQUksV0FBVyxJQUFJLEtBQUssRUFBRSxDQUFDO1FBQ3pCLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLFNBQVMsQ0FBQztRQUN6RCxPQUFPLEVBQUUsS0FBSyxFQUFFLGtCQUFVLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxDQUFDO0lBQ3JELENBQUM7SUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUM7QUFDekMsQ0FBQztBQUVELFdBQVc7QUFFSixLQUFLLFVBQVUsaUJBQWlCLENBQ3JDLE9BQXVCLEVBQ3ZCLFFBQW1CO0lBRW5CLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQ3RELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogVXRpbGl0eSBmdW5jdGlvbnMgZm9yIHRoZSBWYXVsdCBwcm9ncmFtLlxuICogUERBIGRlcml2YXRpb24sIHN0YXRlIHBhcnNpbmcsIGFuZCBhY2NvdW50IGZldGNoaW5nLlxuICovXG5cbmltcG9ydCB7IFByb2dyYW0gfSBmcm9tIFwiQGNvcmFsLXh5ei9hbmNob3JcIjtcbmltcG9ydCB7IFB1YmxpY0tleSB9IGZyb20gXCJAc29sYW5hL3dlYjMuanNcIjtcbmltcG9ydCB7IFZBVUxUX1NFRUQsIENPTkRJVElPTkFMX01JTlRfU0VFRCwgUFJPR1JBTV9JRCB9IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgVmF1bHQsIFZhdWx0VHlwZSwgVmF1bHRTdGF0ZSwgVmF1bHRBY2NvdW50IH0gZnJvbSBcIi4vdHlwZXNcIjtcblxuLyogUERBIERlcml2YXRpb24gKi9cblxuZXhwb3J0IGZ1bmN0aW9uIGRlcml2ZVZhdWx0UERBKFxuICBvd25lcjogUHVibGljS2V5LFxuICBub25jZTogbnVtYmVyLFxuICBwcm9ncmFtSWQ6IFB1YmxpY0tleSA9IFBST0dSQU1fSURcbik6IFtQdWJsaWNLZXksIG51bWJlcl0ge1xuICBjb25zdCBub25jZUJ1ZmZlciA9IEJ1ZmZlci5hbGxvYygyKTtcbiAgbm9uY2VCdWZmZXIud3JpdGVVSW50MTZMRShub25jZSk7XG4gIHJldHVybiBQdWJsaWNLZXkuZmluZFByb2dyYW1BZGRyZXNzU3luYyhcbiAgICBbXG4gICAgICBWQVVMVF9TRUVELFxuICAgICAgb3duZXIudG9CdWZmZXIoKSxcbiAgICAgIG5vbmNlQnVmZmVyLFxuICAgIF0sXG4gICAgcHJvZ3JhbUlkXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZXJpdmVDb25kaXRpb25hbE1pbnQoXG4gIHZhdWx0UGRhOiBQdWJsaWNLZXksXG4gIHZhdWx0VHlwZTogVmF1bHRUeXBlLFxuICBpbmRleDogbnVtYmVyLFxuICBwcm9ncmFtSWQ6IFB1YmxpY0tleSA9IFBST0dSQU1fSURcbik6IFtQdWJsaWNLZXksIG51bWJlcl0ge1xuICByZXR1cm4gUHVibGljS2V5LmZpbmRQcm9ncmFtQWRkcmVzc1N5bmMoXG4gICAgW1xuICAgICAgQ09ORElUSU9OQUxfTUlOVF9TRUVELFxuICAgICAgdmF1bHRQZGEudG9CdWZmZXIoKSxcbiAgICAgIEJ1ZmZlci5mcm9tKFt2YXVsdFR5cGVdKSxcbiAgICAgIEJ1ZmZlci5mcm9tKFtpbmRleF0pLFxuICAgIF0sXG4gICAgcHJvZ3JhbUlkXG4gICk7XG59XG5cbi8qIFBhcnNlcnMgKi9cblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlVmF1bHRTdGF0ZShzdGF0ZTogYW55KTogeyBzdGF0ZTogVmF1bHRTdGF0ZTsgd2lubmluZ0lkeDogbnVtYmVyIHwgbnVsbCB9IHtcbiAgaWYgKFwic2V0dXBcIiBpbiBzdGF0ZSkge1xuICAgIHJldHVybiB7IHN0YXRlOiBWYXVsdFN0YXRlLlNldHVwLCB3aW5uaW5nSWR4OiBudWxsIH07XG4gIH1cbiAgaWYgKFwiYWN0aXZlXCIgaW4gc3RhdGUpIHtcbiAgICByZXR1cm4geyBzdGF0ZTogVmF1bHRTdGF0ZS5BY3RpdmUsIHdpbm5pbmdJZHg6IG51bGwgfTtcbiAgfVxuICBpZiAoXCJmaW5hbGl6ZWRcIiBpbiBzdGF0ZSkge1xuICAgIGNvbnN0IHdpbm5pbmdJZHggPSBzdGF0ZS5maW5hbGl6ZWRbMF0gPz8gc3RhdGUuZmluYWxpemVkO1xuICAgIHJldHVybiB7IHN0YXRlOiBWYXVsdFN0YXRlLkZpbmFsaXplZCwgd2lubmluZ0lkeCB9O1xuICB9XG4gIHRocm93IG5ldyBFcnJvcihcIlVua25vd24gdmF1bHQgc3RhdGVcIik7XG59XG5cbi8qIEZldGNoICovXG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBmZXRjaFZhdWx0QWNjb3VudChcbiAgcHJvZ3JhbTogUHJvZ3JhbTxWYXVsdD4sXG4gIHZhdWx0UGRhOiBQdWJsaWNLZXlcbik6IFByb21pc2U8VmF1bHRBY2NvdW50PiB7XG4gIHJldHVybiBwcm9ncmFtLmFjY291bnQudmF1bHRBY2NvdW50LmZldGNoKHZhdWx0UGRhKTtcbn1cbiJdfQ==
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.deriveVaultPDA=deriveVaultPDA,exports.deriveConditionalMint=deriveConditionalMint,exports.parseVaultState=parseVaultState,exports.fetchVaultAccount=fetchVaultAccount;const web3_js_1=require("@solana/web3.js"),constants_1=require("./constants"),types_1=require("./types");function deriveVaultPDA(t,e,n=constants_1.PROGRAM_ID){const r=Buffer.alloc(2);return r.writeUInt16LE(e),web3_js_1.PublicKey.findProgramAddressSync([constants_1.VAULT_SEED,t.toBuffer(),r],n)}function deriveConditionalMint(t,e,n,r=constants_1.PROGRAM_ID){return web3_js_1.PublicKey.findProgramAddressSync([constants_1.CONDITIONAL_MINT_SEED,t.toBuffer(),Buffer.from([e]),Buffer.from([n])],r)}function parseVaultState(t){if("setup"in t)return{state:types_1.VaultState.Setup,winningIdx:null};if("active"in t)return{state:types_1.VaultState.Active,winningIdx:null};if("finalized"in t){const e=t.finalized[0]??t.finalized;return{state:types_1.VaultState.Finalized,winningIdx:e}}throw new Error("Unknown vault state")}async function fetchVaultAccount(t,e){return t.account.vaultAccount.fetch(e)}
|
package/package.json
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zcomb/programs-sdk",
|
|
3
|
-
"version": "1.11.
|
|
3
|
+
"version": "1.11.1",
|
|
4
4
|
"description": "SDK for ZCombinator Programs",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"scripts": {
|
|
8
|
-
"build": "tsc",
|
|
8
|
+
"build": "tsc && npm run minify",
|
|
9
|
+
"minify": "find dist -name '*.js' -exec terser {} -c -m --output {} \\;",
|
|
9
10
|
"clean": "rm -rf dist",
|
|
10
11
|
"prepublishOnly": "npm run clean && npm run build"
|
|
11
12
|
},
|
|
@@ -34,6 +35,7 @@
|
|
|
34
35
|
"@sqds/multisig": "^2.1.4"
|
|
35
36
|
},
|
|
36
37
|
"devDependencies": {
|
|
38
|
+
"terser": "^5.46.0",
|
|
37
39
|
"typescript": "^5.0.0"
|
|
38
40
|
}
|
|
39
41
|
}
|