@metadaoproject/futarchy 0.3.0-alpha.15 → 0.3.0-alpha.17
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/AutocratClient.d.ts +17 -9
- package/dist/AutocratClient.js +48 -141
- package/dist/AutocratClient.js.map +1 -1
- package/dist/ConditionalVaultClient.d.ts +131 -94
- package/dist/ConditionalVaultClient.js +111 -144
- package/dist/ConditionalVaultClient.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -3
- package/dist/index.js.map +1 -1
- package/dist/types/autocrat.d.ts +6 -10
- package/dist/types/autocrat.js +6 -10
- package/dist/types/autocrat.js.map +1 -1
- package/dist/types/conditional_vault.d.ts +177 -164
- package/dist/types/conditional_vault.js +175 -162
- package/dist/types/conditional_vault.js.map +1 -1
- package/dist/utils/cu.js +1 -1
- package/dist/utils/pda.d.ts +1 -3
- package/dist/utils/pda.js +3 -27
- package/dist/utils/pda.js.map +1 -1
- package/dist/utils/priceMath.js +10 -3
- package/dist/utils/priceMath.js.map +1 -1
- package/package.json +1 -2
|
@@ -2,95 +2,112 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.IDL = void 0;
|
|
4
4
|
exports.IDL = {
|
|
5
|
-
version: "0.
|
|
5
|
+
version: "0.3.0",
|
|
6
6
|
name: "conditional_vault",
|
|
7
7
|
instructions: [
|
|
8
8
|
{
|
|
9
|
-
name: "
|
|
9
|
+
name: "initializeConditionalVault",
|
|
10
10
|
accounts: [
|
|
11
11
|
{
|
|
12
|
-
name: "
|
|
12
|
+
name: "vault",
|
|
13
13
|
isMut: true,
|
|
14
14
|
isSigner: false,
|
|
15
15
|
},
|
|
16
16
|
{
|
|
17
|
-
name: "
|
|
17
|
+
name: "underlyingTokenMint",
|
|
18
|
+
isMut: false,
|
|
19
|
+
isSigner: false,
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
name: "conditionalOnFinalizeTokenMint",
|
|
18
23
|
isMut: true,
|
|
19
|
-
isSigner:
|
|
24
|
+
isSigner: false,
|
|
20
25
|
},
|
|
21
26
|
{
|
|
22
|
-
name: "
|
|
23
|
-
isMut:
|
|
27
|
+
name: "conditionalOnRevertTokenMint",
|
|
28
|
+
isMut: true,
|
|
24
29
|
isSigner: false,
|
|
25
30
|
},
|
|
26
|
-
],
|
|
27
|
-
args: [
|
|
28
31
|
{
|
|
29
|
-
name: "
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
},
|
|
32
|
+
name: "vaultUnderlyingTokenAccount",
|
|
33
|
+
isMut: false,
|
|
34
|
+
isSigner: false,
|
|
33
35
|
},
|
|
34
|
-
],
|
|
35
|
-
},
|
|
36
|
-
{
|
|
37
|
-
name: "resolveQuestion",
|
|
38
|
-
accounts: [
|
|
39
36
|
{
|
|
40
|
-
name: "
|
|
37
|
+
name: "payer",
|
|
41
38
|
isMut: true,
|
|
39
|
+
isSigner: true,
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
name: "tokenProgram",
|
|
43
|
+
isMut: false,
|
|
42
44
|
isSigner: false,
|
|
43
45
|
},
|
|
44
46
|
{
|
|
45
|
-
name: "
|
|
47
|
+
name: "associatedTokenProgram",
|
|
46
48
|
isMut: false,
|
|
47
|
-
isSigner:
|
|
49
|
+
isSigner: false,
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
name: "systemProgram",
|
|
53
|
+
isMut: false,
|
|
54
|
+
isSigner: false,
|
|
48
55
|
},
|
|
49
56
|
],
|
|
50
57
|
args: [
|
|
51
58
|
{
|
|
52
59
|
name: "args",
|
|
53
60
|
type: {
|
|
54
|
-
defined: "
|
|
61
|
+
defined: "InitializeConditionalVaultArgs",
|
|
55
62
|
},
|
|
56
63
|
},
|
|
57
64
|
],
|
|
58
65
|
},
|
|
59
66
|
{
|
|
60
|
-
name: "
|
|
67
|
+
name: "addMetadataToConditionalTokens",
|
|
61
68
|
accounts: [
|
|
69
|
+
{
|
|
70
|
+
name: "payer",
|
|
71
|
+
isMut: true,
|
|
72
|
+
isSigner: true,
|
|
73
|
+
},
|
|
62
74
|
{
|
|
63
75
|
name: "vault",
|
|
64
76
|
isMut: true,
|
|
65
77
|
isSigner: false,
|
|
66
78
|
},
|
|
67
79
|
{
|
|
68
|
-
name: "
|
|
69
|
-
isMut:
|
|
80
|
+
name: "underlyingTokenMint",
|
|
81
|
+
isMut: true,
|
|
70
82
|
isSigner: false,
|
|
71
83
|
},
|
|
72
84
|
{
|
|
73
|
-
name: "
|
|
85
|
+
name: "underlyingTokenMetadata",
|
|
74
86
|
isMut: false,
|
|
75
87
|
isSigner: false,
|
|
76
88
|
},
|
|
77
89
|
{
|
|
78
|
-
name: "
|
|
79
|
-
isMut:
|
|
90
|
+
name: "conditionalOnFinalizeTokenMint",
|
|
91
|
+
isMut: true,
|
|
80
92
|
isSigner: false,
|
|
81
93
|
},
|
|
82
94
|
{
|
|
83
|
-
name: "
|
|
95
|
+
name: "conditionalOnRevertTokenMint",
|
|
84
96
|
isMut: true,
|
|
85
|
-
isSigner:
|
|
97
|
+
isSigner: false,
|
|
86
98
|
},
|
|
87
99
|
{
|
|
88
|
-
name: "
|
|
89
|
-
isMut:
|
|
100
|
+
name: "conditionalOnFinalizeTokenMetadata",
|
|
101
|
+
isMut: true,
|
|
90
102
|
isSigner: false,
|
|
91
103
|
},
|
|
92
104
|
{
|
|
93
|
-
name: "
|
|
105
|
+
name: "conditionalOnRevertTokenMetadata",
|
|
106
|
+
isMut: true,
|
|
107
|
+
isSigner: false,
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
name: "tokenMetadataProgram",
|
|
94
111
|
isMut: false,
|
|
95
112
|
isSigner: false,
|
|
96
113
|
},
|
|
@@ -99,22 +116,62 @@ exports.IDL = {
|
|
|
99
116
|
isMut: false,
|
|
100
117
|
isSigner: false,
|
|
101
118
|
},
|
|
119
|
+
{
|
|
120
|
+
name: "rent",
|
|
121
|
+
isMut: false,
|
|
122
|
+
isSigner: false,
|
|
123
|
+
},
|
|
124
|
+
],
|
|
125
|
+
args: [
|
|
126
|
+
{
|
|
127
|
+
name: "args",
|
|
128
|
+
type: {
|
|
129
|
+
defined: "AddMetadataToConditionalTokensArgs",
|
|
130
|
+
},
|
|
131
|
+
},
|
|
102
132
|
],
|
|
103
|
-
args: [],
|
|
104
133
|
},
|
|
105
134
|
{
|
|
106
|
-
name: "
|
|
135
|
+
name: "settleConditionalVault",
|
|
107
136
|
accounts: [
|
|
108
137
|
{
|
|
109
|
-
name: "
|
|
138
|
+
name: "settlementAuthority",
|
|
110
139
|
isMut: false,
|
|
140
|
+
isSigner: true,
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
name: "vault",
|
|
144
|
+
isMut: true,
|
|
111
145
|
isSigner: false,
|
|
112
146
|
},
|
|
147
|
+
],
|
|
148
|
+
args: [
|
|
149
|
+
{
|
|
150
|
+
name: "newStatus",
|
|
151
|
+
type: {
|
|
152
|
+
defined: "VaultStatus",
|
|
153
|
+
},
|
|
154
|
+
},
|
|
155
|
+
],
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
name: "mergeConditionalTokensForUnderlyingTokens",
|
|
159
|
+
accounts: [
|
|
113
160
|
{
|
|
114
161
|
name: "vault",
|
|
115
162
|
isMut: false,
|
|
116
163
|
isSigner: false,
|
|
117
164
|
},
|
|
165
|
+
{
|
|
166
|
+
name: "conditionalOnFinalizeTokenMint",
|
|
167
|
+
isMut: true,
|
|
168
|
+
isSigner: false,
|
|
169
|
+
},
|
|
170
|
+
{
|
|
171
|
+
name: "conditionalOnRevertTokenMint",
|
|
172
|
+
isMut: true,
|
|
173
|
+
isSigner: false,
|
|
174
|
+
},
|
|
118
175
|
{
|
|
119
176
|
name: "vaultUnderlyingTokenAccount",
|
|
120
177
|
isMut: true,
|
|
@@ -125,6 +182,16 @@ exports.IDL = {
|
|
|
125
182
|
isMut: false,
|
|
126
183
|
isSigner: true,
|
|
127
184
|
},
|
|
185
|
+
{
|
|
186
|
+
name: "userConditionalOnFinalizeTokenAccount",
|
|
187
|
+
isMut: true,
|
|
188
|
+
isSigner: false,
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
name: "userConditionalOnRevertTokenAccount",
|
|
192
|
+
isMut: true,
|
|
193
|
+
isSigner: false,
|
|
194
|
+
},
|
|
128
195
|
{
|
|
129
196
|
name: "userUnderlyingTokenAccount",
|
|
130
197
|
isMut: true,
|
|
@@ -144,16 +211,21 @@ exports.IDL = {
|
|
|
144
211
|
],
|
|
145
212
|
},
|
|
146
213
|
{
|
|
147
|
-
name: "
|
|
214
|
+
name: "mintConditionalTokens",
|
|
148
215
|
accounts: [
|
|
149
216
|
{
|
|
150
|
-
name: "
|
|
217
|
+
name: "vault",
|
|
151
218
|
isMut: false,
|
|
152
219
|
isSigner: false,
|
|
153
220
|
},
|
|
154
221
|
{
|
|
155
|
-
name: "
|
|
156
|
-
isMut:
|
|
222
|
+
name: "conditionalOnFinalizeTokenMint",
|
|
223
|
+
isMut: true,
|
|
224
|
+
isSigner: false,
|
|
225
|
+
},
|
|
226
|
+
{
|
|
227
|
+
name: "conditionalOnRevertTokenMint",
|
|
228
|
+
isMut: true,
|
|
157
229
|
isSigner: false,
|
|
158
230
|
},
|
|
159
231
|
{
|
|
@@ -166,6 +238,16 @@ exports.IDL = {
|
|
|
166
238
|
isMut: false,
|
|
167
239
|
isSigner: true,
|
|
168
240
|
},
|
|
241
|
+
{
|
|
242
|
+
name: "userConditionalOnFinalizeTokenAccount",
|
|
243
|
+
isMut: true,
|
|
244
|
+
isSigner: false,
|
|
245
|
+
},
|
|
246
|
+
{
|
|
247
|
+
name: "userConditionalOnRevertTokenAccount",
|
|
248
|
+
isMut: true,
|
|
249
|
+
isSigner: false,
|
|
250
|
+
},
|
|
169
251
|
{
|
|
170
252
|
name: "userUnderlyingTokenAccount",
|
|
171
253
|
isMut: true,
|
|
@@ -185,16 +267,21 @@ exports.IDL = {
|
|
|
185
267
|
],
|
|
186
268
|
},
|
|
187
269
|
{
|
|
188
|
-
name: "
|
|
270
|
+
name: "redeemConditionalTokensForUnderlyingTokens",
|
|
189
271
|
accounts: [
|
|
190
272
|
{
|
|
191
|
-
name: "
|
|
273
|
+
name: "vault",
|
|
192
274
|
isMut: false,
|
|
193
275
|
isSigner: false,
|
|
194
276
|
},
|
|
195
277
|
{
|
|
196
|
-
name: "
|
|
197
|
-
isMut:
|
|
278
|
+
name: "conditionalOnFinalizeTokenMint",
|
|
279
|
+
isMut: true,
|
|
280
|
+
isSigner: false,
|
|
281
|
+
},
|
|
282
|
+
{
|
|
283
|
+
name: "conditionalOnRevertTokenMint",
|
|
284
|
+
isMut: true,
|
|
198
285
|
isSigner: false,
|
|
199
286
|
},
|
|
200
287
|
{
|
|
@@ -207,6 +294,16 @@ exports.IDL = {
|
|
|
207
294
|
isMut: false,
|
|
208
295
|
isSigner: true,
|
|
209
296
|
},
|
|
297
|
+
{
|
|
298
|
+
name: "userConditionalOnFinalizeTokenAccount",
|
|
299
|
+
isMut: true,
|
|
300
|
+
isSigner: false,
|
|
301
|
+
},
|
|
302
|
+
{
|
|
303
|
+
name: "userConditionalOnRevertTokenAccount",
|
|
304
|
+
isMut: true,
|
|
305
|
+
isSigner: false,
|
|
306
|
+
},
|
|
210
307
|
{
|
|
211
308
|
name: "userUnderlyingTokenAccount",
|
|
212
309
|
isMut: true,
|
|
@@ -228,22 +325,37 @@ exports.IDL = {
|
|
|
228
325
|
kind: "struct",
|
|
229
326
|
fields: [
|
|
230
327
|
{
|
|
231
|
-
name: "
|
|
328
|
+
name: "status",
|
|
329
|
+
type: {
|
|
330
|
+
defined: "VaultStatus",
|
|
331
|
+
},
|
|
332
|
+
},
|
|
333
|
+
{
|
|
334
|
+
name: "settlementAuthority",
|
|
335
|
+
docs: [
|
|
336
|
+
"The account that can either finalize the vault to make conditional tokens",
|
|
337
|
+
"redeemable for underlying tokens or revert the vault to make deposit",
|
|
338
|
+
"slips redeemable for underlying tokens.",
|
|
339
|
+
],
|
|
232
340
|
type: "publicKey",
|
|
233
341
|
},
|
|
234
342
|
{
|
|
235
343
|
name: "underlyingTokenMint",
|
|
344
|
+
docs: ["The mint of the tokens that are deposited into the vault."],
|
|
236
345
|
type: "publicKey",
|
|
237
346
|
},
|
|
238
347
|
{
|
|
239
348
|
name: "underlyingTokenAccount",
|
|
349
|
+
docs: ["The vault's storage account for deposited funds."],
|
|
240
350
|
type: "publicKey",
|
|
241
351
|
},
|
|
242
352
|
{
|
|
243
|
-
name: "
|
|
244
|
-
type:
|
|
245
|
-
|
|
246
|
-
|
|
353
|
+
name: "conditionalOnFinalizeTokenMint",
|
|
354
|
+
type: "publicKey",
|
|
355
|
+
},
|
|
356
|
+
{
|
|
357
|
+
name: "conditionalOnRevertTokenMint",
|
|
358
|
+
type: "publicKey",
|
|
247
359
|
},
|
|
248
360
|
{
|
|
249
361
|
name: "pdaBump",
|
|
@@ -256,90 +368,36 @@ exports.IDL = {
|
|
|
256
368
|
],
|
|
257
369
|
},
|
|
258
370
|
},
|
|
259
|
-
{
|
|
260
|
-
name: "question",
|
|
261
|
-
docs: [
|
|
262
|
-
"Questions represent statements about future events.",
|
|
263
|
-
"",
|
|
264
|
-
"These statements include:",
|
|
265
|
-
'- "Will this proposal pass?"',
|
|
266
|
-
'- "Who, if anyone, will be hired?"',
|
|
267
|
-
'- "How effective will the grant committee deem this grant?"',
|
|
268
|
-
"",
|
|
269
|
-
'Questions have 2 or more possible outcomes. For a question like "will this',
|
|
270
|
-
'proposal pass," the outcomes are "yes" and "no." For a question like "who',
|
|
271
|
-
'will be hired," the outcomes could be "Alice," "Bob," and "neither."',
|
|
272
|
-
"",
|
|
273
|
-
'Outcomes resolve to a number between 0 and 1. Binary questions like "will',
|
|
274
|
-
'this proposal pass" have outcomes that resolve to exactly 0 or 1. You can',
|
|
275
|
-
'also have questions with scalar outcomes. For example, the question "how',
|
|
276
|
-
'effective will the grant committee deem this grant" could have two outcomes:',
|
|
277
|
-
'"ineffective" and "effective." If the grant committee deems the grant 70%',
|
|
278
|
-
'effective, the "effective" outcome would resolve to 0.7 and the "ineffective"',
|
|
279
|
-
"outcome would resolve to 0.3.",
|
|
280
|
-
"",
|
|
281
|
-
"Once resolved, the sum of all outcome resolutions is exactly 1.",
|
|
282
|
-
],
|
|
283
|
-
type: {
|
|
284
|
-
kind: "struct",
|
|
285
|
-
fields: [
|
|
286
|
-
{
|
|
287
|
-
name: "questionId",
|
|
288
|
-
type: {
|
|
289
|
-
array: ["u8", 32],
|
|
290
|
-
},
|
|
291
|
-
},
|
|
292
|
-
{
|
|
293
|
-
name: "oracle",
|
|
294
|
-
type: "publicKey",
|
|
295
|
-
},
|
|
296
|
-
{
|
|
297
|
-
name: "payoutNumerators",
|
|
298
|
-
type: {
|
|
299
|
-
vec: "u32",
|
|
300
|
-
},
|
|
301
|
-
},
|
|
302
|
-
{
|
|
303
|
-
name: "payoutDenominator",
|
|
304
|
-
type: "u32",
|
|
305
|
-
},
|
|
306
|
-
],
|
|
307
|
-
},
|
|
308
|
-
},
|
|
309
371
|
],
|
|
310
372
|
types: [
|
|
311
373
|
{
|
|
312
|
-
name: "
|
|
374
|
+
name: "AddMetadataToConditionalTokensArgs",
|
|
313
375
|
type: {
|
|
314
376
|
kind: "struct",
|
|
315
377
|
fields: [
|
|
316
378
|
{
|
|
317
|
-
name: "
|
|
318
|
-
type:
|
|
319
|
-
array: ["u8", 32],
|
|
320
|
-
},
|
|
379
|
+
name: "proposalNumber",
|
|
380
|
+
type: "u64",
|
|
321
381
|
},
|
|
322
382
|
{
|
|
323
|
-
name: "
|
|
324
|
-
type: "
|
|
383
|
+
name: "onFinalizeUri",
|
|
384
|
+
type: "string",
|
|
325
385
|
},
|
|
326
386
|
{
|
|
327
|
-
name: "
|
|
328
|
-
type: "
|
|
387
|
+
name: "onRevertUri",
|
|
388
|
+
type: "string",
|
|
329
389
|
},
|
|
330
390
|
],
|
|
331
391
|
},
|
|
332
392
|
},
|
|
333
393
|
{
|
|
334
|
-
name: "
|
|
394
|
+
name: "InitializeConditionalVaultArgs",
|
|
335
395
|
type: {
|
|
336
396
|
kind: "struct",
|
|
337
397
|
fields: [
|
|
338
398
|
{
|
|
339
|
-
name: "
|
|
340
|
-
type:
|
|
341
|
-
vec: "u32",
|
|
342
|
-
},
|
|
399
|
+
name: "settlementAuthority",
|
|
400
|
+
type: "publicKey",
|
|
343
401
|
},
|
|
344
402
|
],
|
|
345
403
|
},
|
|
@@ -370,69 +428,24 @@ exports.IDL = {
|
|
|
370
428
|
},
|
|
371
429
|
{
|
|
372
430
|
code: 6001,
|
|
373
|
-
name: "InsufficientConditionalTokens",
|
|
374
|
-
msg: "Insufficient conditional token balance to merge this `amount`",
|
|
375
|
-
},
|
|
376
|
-
{
|
|
377
|
-
code: 6002,
|
|
378
431
|
name: "InvalidVaultUnderlyingTokenAccount",
|
|
379
432
|
msg: "This `vault_underlying_token_account` is not this vault's `underlying_token_account`",
|
|
380
433
|
},
|
|
381
434
|
{
|
|
382
|
-
code:
|
|
435
|
+
code: 6002,
|
|
383
436
|
name: "InvalidConditionalTokenMint",
|
|
384
437
|
msg: "This conditional token mint is not this vault's conditional token mint",
|
|
385
438
|
},
|
|
386
439
|
{
|
|
387
|
-
code:
|
|
440
|
+
code: 6003,
|
|
388
441
|
name: "CantRedeemConditionalTokens",
|
|
389
|
-
msg: "
|
|
442
|
+
msg: "Vault needs to be settled as finalized before users can redeem conditional tokens for underlying tokens",
|
|
390
443
|
},
|
|
391
444
|
{
|
|
392
|
-
code:
|
|
445
|
+
code: 6004,
|
|
393
446
|
name: "VaultAlreadySettled",
|
|
394
447
|
msg: "Once a vault has been settled, its status as either finalized or reverted cannot be changed",
|
|
395
448
|
},
|
|
396
|
-
{
|
|
397
|
-
code: 6006,
|
|
398
|
-
name: "InsufficientNumConditions",
|
|
399
|
-
msg: "Questions need 2 or more conditions",
|
|
400
|
-
},
|
|
401
|
-
{
|
|
402
|
-
code: 6007,
|
|
403
|
-
name: "InvalidNumPayoutNumerators",
|
|
404
|
-
msg: "Invalid number of payout numerators",
|
|
405
|
-
},
|
|
406
|
-
{
|
|
407
|
-
code: 6008,
|
|
408
|
-
name: "InvalidConditionals",
|
|
409
|
-
msg: "Client needs to pass in the list of conditional mints for a vault followed by the user's token accounts for those tokens",
|
|
410
|
-
},
|
|
411
|
-
{
|
|
412
|
-
code: 6009,
|
|
413
|
-
name: "ConditionalMintMismatch",
|
|
414
|
-
msg: "Conditional mint not in vault",
|
|
415
|
-
},
|
|
416
|
-
{
|
|
417
|
-
code: 6010,
|
|
418
|
-
name: "BadConditionalMint",
|
|
419
|
-
msg: "Unable to deserialize a conditional token mint",
|
|
420
|
-
},
|
|
421
|
-
{
|
|
422
|
-
code: 6011,
|
|
423
|
-
name: "BadConditionalTokenAccount",
|
|
424
|
-
msg: "Unable to deserialize a conditional token account",
|
|
425
|
-
},
|
|
426
|
-
{
|
|
427
|
-
code: 6012,
|
|
428
|
-
name: "ConditionalTokenMintMismatch",
|
|
429
|
-
msg: "User conditional token account mint does not match conditional mint",
|
|
430
|
-
},
|
|
431
|
-
{
|
|
432
|
-
code: 6013,
|
|
433
|
-
name: "PayoutZero",
|
|
434
|
-
msg: "Payouts must sum to 1 or more",
|
|
435
|
-
},
|
|
436
449
|
],
|
|
437
450
|
};
|
|
438
451
|
//# sourceMappingURL=conditional_vault.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conditional_vault.js","sourceRoot":"","sources":["../../src/types/conditional_vault.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"conditional_vault.js","sourceRoot":"","sources":["../../src/types/conditional_vault.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/cu.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DEFAULT_CU_PRICE = exports.MaxCUs = void 0;
|
|
4
4
|
exports.MaxCUs = {
|
|
5
|
-
initializeDao:
|
|
5
|
+
initializeDao: 20_000,
|
|
6
6
|
createIdempotent: 25_000,
|
|
7
7
|
initializeConditionalVault: 45_000,
|
|
8
8
|
mintConditionalTokens: 35_000,
|
package/dist/utils/pda.d.ts
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { PublicKey } from "@solana/web3.js";
|
|
2
2
|
import BN from "bn.js";
|
|
3
|
-
export declare const
|
|
4
|
-
export declare const getVaultAddr: (programId: PublicKey, question: PublicKey, underlyingTokenMint: PublicKey) => [PublicKey, number];
|
|
5
|
-
export declare const getConditionalTokenMintAddr: (programId: PublicKey, vault: PublicKey, index: number) => [PublicKey, number];
|
|
3
|
+
export declare const getVaultAddr: (programId: PublicKey, settlementAuthority: PublicKey, underlyingTokenMint: PublicKey) => [PublicKey, number];
|
|
6
4
|
export declare const getVaultFinalizeMintAddr: (programId: PublicKey, vault: PublicKey) => [PublicKey, number];
|
|
7
5
|
export declare const getMetadataAddr: (mint: PublicKey) => [PublicKey, number];
|
|
8
6
|
export declare const getVaultRevertMintAddr: (programId: PublicKey, vault: PublicKey) => [PublicKey, number];
|
package/dist/utils/pda.js
CHANGED
|
@@ -1,41 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.getAmmLpMintAddr = exports.getAmmAddr = exports.getProposalAddr = exports.getDaoTreasuryAddr = exports.getVaultRevertMintAddr = exports.getMetadataAddr = exports.getVaultFinalizeMintAddr = exports.
|
|
3
|
+
exports.getAmmLpMintAddr = exports.getAmmAddr = exports.getProposalAddr = exports.getDaoTreasuryAddr = exports.getVaultRevertMintAddr = exports.getMetadataAddr = exports.getVaultFinalizeMintAddr = exports.getVaultAddr = void 0;
|
|
7
4
|
const web3_js_1 = require("@solana/web3.js");
|
|
8
5
|
const anchor_1 = require("@coral-xyz/anchor");
|
|
9
|
-
const bn_js_1 = __importDefault(require("bn.js"));
|
|
10
6
|
const constants_1 = require("../constants");
|
|
11
|
-
const
|
|
12
|
-
if (questionId.length != 32) {
|
|
13
|
-
throw new Error("questionId must be 32 bytes");
|
|
14
|
-
}
|
|
15
|
-
return web3_js_1.PublicKey.findProgramAddressSync([
|
|
16
|
-
anchor_1.utils.bytes.utf8.encode("question"),
|
|
17
|
-
Buffer.from(questionId),
|
|
18
|
-
oracle.toBuffer(),
|
|
19
|
-
new bn_js_1.default(numConditions).toBuffer("le", 1),
|
|
20
|
-
], programId);
|
|
21
|
-
};
|
|
22
|
-
exports.getQuestionAddr = getQuestionAddr;
|
|
23
|
-
const getVaultAddr = (programId, question, underlyingTokenMint) => {
|
|
7
|
+
const getVaultAddr = (programId, settlementAuthority, underlyingTokenMint) => {
|
|
24
8
|
return web3_js_1.PublicKey.findProgramAddressSync([
|
|
25
9
|
anchor_1.utils.bytes.utf8.encode("conditional_vault"),
|
|
26
|
-
|
|
10
|
+
settlementAuthority.toBuffer(),
|
|
27
11
|
underlyingTokenMint.toBuffer(),
|
|
28
12
|
], programId);
|
|
29
13
|
};
|
|
30
14
|
exports.getVaultAddr = getVaultAddr;
|
|
31
|
-
const getConditionalTokenMintAddr = (programId, vault, index) => {
|
|
32
|
-
return web3_js_1.PublicKey.findProgramAddressSync([
|
|
33
|
-
anchor_1.utils.bytes.utf8.encode("conditional_token"),
|
|
34
|
-
vault.toBuffer(),
|
|
35
|
-
new bn_js_1.default(index).toBuffer("le", 1),
|
|
36
|
-
], programId);
|
|
37
|
-
};
|
|
38
|
-
exports.getConditionalTokenMintAddr = getConditionalTokenMintAddr;
|
|
39
15
|
const getVaultFinalizeMintAddr = (programId, vault) => {
|
|
40
16
|
return getVaultMintAddr(programId, vault, "conditional_on_finalize_mint");
|
|
41
17
|
};
|
package/dist/utils/pda.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pda.js","sourceRoot":"","sources":["../../src/utils/pda.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pda.js","sourceRoot":"","sources":["../../src/utils/pda.ts"],"names":[],"mappings":"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"}
|