@haven-fi/solauto-sdk 1.0.740 → 1.0.742
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.
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"transactionsManager.d.ts","sourceRoot":"","sources":["../../../../src/services/transactions/manager/transactionsManager.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EACL,kBAAkB,EAElB,kBAAkB,EACnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAEL,aAAa,EAId,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAkB,MAAM,UAAU,CAAC;AAEzE,qBAAa,wBAAyB,SAAQ,KAAK;gBACrC,OAAO,EAAE,MAAM;CAK5B;AAED,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,MAAM,WAAW;CAClB;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,0BAA0B,GAAG,wBAAwB,EAAE,CAAC;AAEpE,UAAU,WAAW;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB,CAAC,CAAC,SAAS,SAAS;IAC1D,SAAS,EAAE,CAAC,CAAC;IACb,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,0BAA0B,KAAK,IAAI,CAAC;IAChE,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED,qBAAa,mBAAmB,CAAC,CAAC,SAAS,SAAS;IAClD,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;IACvB,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,0BAA0B,KAAK,IAAI,CAAC;IAC1E,SAAS,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC;IACzC,SAAS,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IACjD,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC;IAC9B,SAAS,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IACxC,SAAS,CAAC,QAAQ,EAAE,0BAA0B,CAAM;IACpD,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC;IACrC,SAAS,CAAC,eAAe,EAAE,MAAM,CAAC;IAClC,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC;IAC/B,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,eAAe,CAAC,EAAE,eAAe,CAAC;IAE5C,kBAAkB,SAAmB;gBAEzB,IAAI,EAAE,uBAAuB,CAAC,CAAC,CAAC;YAoB9B,uBAAuB;IA0CrC,OAAO,CAAC,YAAY;
|
1
|
+
{"version":3,"file":"transactionsManager.d.ts","sourceRoot":"","sources":["../../../../src/services/transactions/manager/transactionsManager.ts"],"names":[],"mappings":"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"}
|
@@ -76,7 +76,7 @@ class TransactionsManager {
|
|
76
76
|
}
|
77
77
|
return transactionSets;
|
78
78
|
}
|
79
|
-
updateStatus(args) {
|
79
|
+
updateStatus(args, reset) {
|
80
80
|
if (!this.statuses.filter((x) => x.name === args.name)) {
|
81
81
|
this.statuses.push(args);
|
82
82
|
}
|
@@ -88,18 +88,20 @@ class TransactionsManager {
|
|
88
88
|
if (args.simulationSuccessful) {
|
89
89
|
this.statuses[idx].simulationSuccessful = args.simulationSuccessful;
|
90
90
|
}
|
91
|
-
// else if (status === TransactionStatus.Queued || status === TransactionStatus.Processing) {
|
92
|
-
// this.statuses[idx].simulationSuccessful = undefined;
|
93
|
-
// }
|
94
91
|
if (args.moreInfo) {
|
95
92
|
this.statuses[idx].moreInfo = args.moreInfo;
|
96
93
|
}
|
94
|
+
if (reset) {
|
95
|
+
this.statuses[idx].txSig = undefined;
|
96
|
+
this.statuses[idx].simulationSuccessful = undefined;
|
97
|
+
this.statuses[idx].moreInfo = undefined;
|
98
|
+
}
|
97
99
|
}
|
98
100
|
else {
|
99
101
|
this.statuses.push(args);
|
100
102
|
}
|
101
103
|
}
|
102
|
-
this.txHandler.log(`${name} is ${status.toString().toLowerCase()}`);
|
104
|
+
this.txHandler.log(`${args.name} ${args.attemptNum} is ${args.status.toString().toLowerCase()}`);
|
103
105
|
this.statusCallback?.([...this.statuses]);
|
104
106
|
}
|
105
107
|
async debugAccounts(itemSet, tx) {
|
@@ -124,13 +126,13 @@ class TransactionsManager {
|
|
124
126
|
}
|
125
127
|
return this.priorityFeeSetting;
|
126
128
|
}
|
127
|
-
updateStatusForSets(itemSets, args, txSigs) {
|
129
|
+
updateStatusForSets(itemSets, args, txSigs, reset) {
|
128
130
|
itemSets.forEach((itemSet, i) => {
|
129
131
|
this.updateStatus({
|
130
132
|
name: itemSet.name(),
|
131
133
|
txSig: txSigs && txSigs.length > i ? txSigs[i] : undefined,
|
132
134
|
...args,
|
133
|
-
});
|
135
|
+
}, reset);
|
134
136
|
});
|
135
137
|
}
|
136
138
|
async send(items) {
|
@@ -179,7 +181,7 @@ class TransactionsManager {
|
|
179
181
|
return true;
|
180
182
|
}
|
181
183
|
getTrueAttemptNum(itemSetName) {
|
182
|
-
const prevAttempts = this.statuses.filter((x) => x.name === itemSetName);
|
184
|
+
const prevAttempts = this.statuses.filter((x) => x.name === itemSetName && x.status !== TransactionStatus.Queued);
|
183
185
|
const attemptNum = prevAttempts.length -
|
184
186
|
prevAttempts.filter((x) => x.status === TransactionStatus.Skipped)
|
185
187
|
?.length;
|
@@ -223,7 +225,7 @@ class TransactionsManager {
|
|
223
225
|
this.updateStatusForSets(itemSets, {
|
224
226
|
status: TransactionStatus.Processing,
|
225
227
|
attemptNum,
|
226
|
-
});
|
228
|
+
}, undefined, true);
|
227
229
|
for (const itemSet of itemSets) {
|
228
230
|
await this.debugAccounts(itemSet, await itemSet.getSingleTransaction());
|
229
231
|
}
|
@@ -336,7 +338,7 @@ class TransactionsManager {
|
|
336
338
|
name,
|
337
339
|
status: TransactionStatus.Processing,
|
338
340
|
attemptNum,
|
339
|
-
});
|
341
|
+
}, true);
|
340
342
|
try {
|
341
343
|
const txSig = await (0, utils_1.sendSingleOptimizedTransaction)(this.txHandler.umi, this.txHandler.connection, tx, txRunType ?? this.txRunType, priorityFeeSetting, () => this.updateStatus({
|
342
344
|
name,
|
package/local/txSandbox.ts
CHANGED
@@ -54,13 +54,13 @@ export async function main() {
|
|
54
54
|
// ),
|
55
55
|
});
|
56
56
|
|
57
|
-
const transactionItems = [rebalance(client, undefined,
|
57
|
+
const transactionItems = [rebalance(client, undefined, 350)];
|
58
58
|
|
59
59
|
const txManager = new ClientTransactionsManager({
|
60
60
|
txHandler: client,
|
61
61
|
txRunType: payForTransaction ? "normal" : "only-simulate",
|
62
62
|
priorityFeeSetting: PriorityFeeSetting.Default,
|
63
|
-
retryConfig: { totalRetries:
|
63
|
+
retryConfig: { totalRetries: 4 },
|
64
64
|
});
|
65
65
|
const statuses = await txManager.send(transactionItems);
|
66
66
|
consoleLog(statuses);
|
package/package.json
CHANGED
@@ -139,7 +139,7 @@ export class TransactionsManager<T extends TxHandler> {
|
|
139
139
|
return transactionSets;
|
140
140
|
}
|
141
141
|
|
142
|
-
private updateStatus(args: TransactionManagerStatus) {
|
142
|
+
private updateStatus(args: TransactionManagerStatus, reset?: boolean) {
|
143
143
|
if (!this.statuses.filter((x) => x.name === args.name)) {
|
144
144
|
this.statuses.push(args);
|
145
145
|
} else {
|
@@ -152,17 +152,21 @@ export class TransactionsManager<T extends TxHandler> {
|
|
152
152
|
if (args.simulationSuccessful) {
|
153
153
|
this.statuses[idx].simulationSuccessful = args.simulationSuccessful;
|
154
154
|
}
|
155
|
-
// else if (status === TransactionStatus.Queued || status === TransactionStatus.Processing) {
|
156
|
-
// this.statuses[idx].simulationSuccessful = undefined;
|
157
|
-
// }
|
158
155
|
if (args.moreInfo) {
|
159
156
|
this.statuses[idx].moreInfo = args.moreInfo;
|
160
157
|
}
|
158
|
+
if (reset) {
|
159
|
+
this.statuses[idx].txSig = undefined;
|
160
|
+
this.statuses[idx].simulationSuccessful = undefined;
|
161
|
+
this.statuses[idx].moreInfo = undefined;
|
162
|
+
}
|
161
163
|
} else {
|
162
164
|
this.statuses.push(args);
|
163
165
|
}
|
164
166
|
}
|
165
|
-
this.txHandler.log(
|
167
|
+
this.txHandler.log(
|
168
|
+
`${args.name} ${args.attemptNum} is ${args.status.toString().toLowerCase()}`
|
169
|
+
);
|
166
170
|
this.statusCallback?.([...this.statuses]);
|
167
171
|
}
|
168
172
|
|
@@ -205,14 +209,18 @@ export class TransactionsManager<T extends TxHandler> {
|
|
205
209
|
private updateStatusForSets(
|
206
210
|
itemSets: TransactionSet[],
|
207
211
|
args: Omit<TransactionManagerStatus, "name">,
|
208
|
-
txSigs?: string[]
|
212
|
+
txSigs?: string[],
|
213
|
+
reset?: boolean
|
209
214
|
) {
|
210
215
|
itemSets.forEach((itemSet, i) => {
|
211
|
-
this.updateStatus(
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
+
this.updateStatus(
|
217
|
+
{
|
218
|
+
name: itemSet.name(),
|
219
|
+
txSig: txSigs && txSigs.length > i ? txSigs[i] : undefined,
|
220
|
+
...args,
|
221
|
+
},
|
222
|
+
reset
|
223
|
+
);
|
216
224
|
});
|
217
225
|
}
|
218
226
|
|
@@ -275,7 +283,9 @@ export class TransactionsManager<T extends TxHandler> {
|
|
275
283
|
}
|
276
284
|
|
277
285
|
private getTrueAttemptNum(itemSetName: string) {
|
278
|
-
const prevAttempts = this.statuses.filter(
|
286
|
+
const prevAttempts = this.statuses.filter(
|
287
|
+
(x) => x.name === itemSetName && x.status !== TransactionStatus.Queued
|
288
|
+
);
|
279
289
|
const attemptNum =
|
280
290
|
prevAttempts.length -
|
281
291
|
prevAttempts.filter((x) => x.status === TransactionStatus.Skipped)
|
@@ -338,10 +348,15 @@ export class TransactionsManager<T extends TxHandler> {
|
|
338
348
|
return;
|
339
349
|
}
|
340
350
|
|
341
|
-
this.updateStatusForSets(
|
342
|
-
|
343
|
-
|
344
|
-
|
351
|
+
this.updateStatusForSets(
|
352
|
+
itemSets,
|
353
|
+
{
|
354
|
+
status: TransactionStatus.Processing,
|
355
|
+
attemptNum,
|
356
|
+
},
|
357
|
+
undefined,
|
358
|
+
true
|
359
|
+
);
|
345
360
|
for (const itemSet of itemSets) {
|
346
361
|
await this.debugAccounts(
|
347
362
|
itemSet,
|
@@ -547,11 +562,14 @@ export class TransactionsManager<T extends TxHandler> {
|
|
547
562
|
priorityFeeSetting?: PriorityFeeSetting,
|
548
563
|
txRunType?: TransactionRunType
|
549
564
|
) {
|
550
|
-
this.updateStatus(
|
551
|
-
|
552
|
-
|
553
|
-
|
554
|
-
|
565
|
+
this.updateStatus(
|
566
|
+
{
|
567
|
+
name,
|
568
|
+
status: TransactionStatus.Processing,
|
569
|
+
attemptNum,
|
570
|
+
},
|
571
|
+
true
|
572
|
+
);
|
555
573
|
try {
|
556
574
|
const txSig = await sendSingleOptimizedTransaction(
|
557
575
|
this.txHandler.umi,
|