@lifi/perps-sdk 25.0.1 → 26.0.0
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/README.md +57 -3
- package/dist/cjs/client/PerpsClient.d.ts +5 -5
- package/dist/cjs/client/PerpsClient.d.ts.map +1 -1
- package/dist/cjs/client/PerpsClient.js +107 -87
- package/dist/cjs/client/PerpsClient.js.map +1 -1
- package/dist/cjs/errors/PerpsExecutionError.d.ts +9 -0
- package/dist/cjs/errors/PerpsExecutionError.d.ts.map +1 -0
- package/dist/cjs/errors/PerpsExecutionError.js +29 -0
- package/dist/cjs/errors/PerpsExecutionError.js.map +1 -0
- package/dist/cjs/index.d.ts +5 -4
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +14 -12
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/math/fills.d.ts +0 -1
- package/dist/cjs/math/fills.d.ts.map +1 -1
- package/dist/cjs/math/fills.js +0 -18
- package/dist/cjs/math/fills.js.map +1 -1
- package/dist/cjs/math/order.d.ts +5 -5
- package/dist/cjs/math/order.d.ts.map +1 -1
- package/dist/cjs/math/order.js +10 -10
- package/dist/cjs/math/order.js.map +1 -1
- package/dist/cjs/math/position.d.ts +2 -2
- package/dist/cjs/math/position.d.ts.map +1 -1
- package/dist/cjs/math/position.js +5 -5
- package/dist/cjs/math/position.js.map +1 -1
- package/dist/cjs/types/api.d.ts +1 -10
- package/dist/cjs/types/api.d.ts.map +1 -1
- package/dist/cjs/types/provider.d.ts +5 -1
- package/dist/cjs/types/provider.d.ts.map +1 -1
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/client/PerpsClient.d.ts +70 -50
- package/dist/esm/client/PerpsClient.d.ts.map +1 -1
- package/dist/esm/client/PerpsClient.js +176 -144
- package/dist/esm/client/PerpsClient.js.map +1 -1
- package/dist/esm/errors/PerpsExecutionError.d.ts +24 -0
- package/dist/esm/errors/PerpsExecutionError.d.ts.map +1 -0
- package/dist/esm/errors/PerpsExecutionError.js +39 -0
- package/dist/esm/errors/PerpsExecutionError.js.map +1 -0
- package/dist/esm/index.d.ts +5 -4
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +4 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/math/fills.d.ts +0 -9
- package/dist/esm/math/fills.d.ts.map +1 -1
- package/dist/esm/math/fills.js +0 -25
- package/dist/esm/math/fills.js.map +1 -1
- package/dist/esm/math/order.d.ts +6 -6
- package/dist/esm/math/order.d.ts.map +1 -1
- package/dist/esm/math/order.js +6 -6
- package/dist/esm/math/order.js.map +1 -1
- package/dist/esm/math/position.d.ts +2 -2
- package/dist/esm/math/position.d.ts.map +1 -1
- package/dist/esm/math/position.js +3 -3
- package/dist/esm/math/position.js.map +1 -1
- package/dist/esm/types/api.d.ts +1 -18
- package/dist/esm/types/api.d.ts.map +1 -1
- package/dist/esm/types/provider.d.ts +21 -4
- package/dist/esm/types/provider.d.ts.map +1 -1
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/types/client/PerpsClient.d.ts +70 -50
- package/dist/types/client/PerpsClient.d.ts.map +1 -1
- package/dist/types/errors/PerpsExecutionError.d.ts +24 -0
- package/dist/types/errors/PerpsExecutionError.d.ts.map +1 -0
- package/dist/types/index.d.ts +5 -4
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/math/fills.d.ts +0 -9
- package/dist/types/math/fills.d.ts.map +1 -1
- package/dist/types/math/order.d.ts +6 -6
- package/dist/types/math/order.d.ts.map +1 -1
- package/dist/types/math/position.d.ts +2 -2
- package/dist/types/math/position.d.ts.map +1 -1
- package/dist/types/types/api.d.ts +1 -18
- package/dist/types/types/api.d.ts.map +1 -1
- package/dist/types/types/provider.d.ts +21 -4
- package/dist/types/types/provider.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/package.json +2 -2
- package/src/client/PerpsClient.ts +224 -186
- package/src/errors/PerpsExecutionError.ts +54 -0
- package/src/index.ts +12 -8
- package/src/math/fills.ts +0 -29
- package/src/math/order.ts +11 -11
- package/src/math/position.ts +3 -3
- package/src/types/api.ts +0 -21
- package/src/types/provider.ts +22 -4
- package/src/version.ts +1 -1
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { ActionRelay, ActionType, META_PROVIDER, PerpsErrorCode, PerpsSigner, SigningMethod, } from '@lifi/perps-types';
|
|
1
|
+
import { ActionRelay, ActionType, META_PROVIDER, PerpsErrorCode, PerpsSigner, SigningMethod, UserActionStatus, } from '@lifi/perps-types';
|
|
2
2
|
import { isDecimalStringGreaterThan } from '../decimal/compare.js';
|
|
3
3
|
import { unknownToDecimalString } from '../decimal/parse.js';
|
|
4
4
|
import { PerpsError } from '../errors/PerpsError.js';
|
|
5
|
+
import { rethrowWithKnownResults } from '../errors/PerpsExecutionError.js';
|
|
5
6
|
import { getAssetRegistry, toAssetDisplay } from '../registry/assetRegistry.js';
|
|
6
7
|
import { getMarketRegistry } from '../registry/marketRegistry.js';
|
|
7
8
|
import { createAction } from '../services/createAction.js';
|
|
@@ -92,12 +93,9 @@ function currentChoiceValue(descriptor, settings) {
|
|
|
92
93
|
?.values.find((v) => names.has(v.name))?.value ?? null;
|
|
93
94
|
return value === null ? null : String(value);
|
|
94
95
|
}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
if (failure) {
|
|
99
|
-
throw new PerpsError(failure.errorCode ?? PerpsErrorCode.ExchangeRejected, failure.error);
|
|
100
|
-
}
|
|
96
|
+
function isAcknowledged(result) {
|
|
97
|
+
return (result.status === UserActionStatus.Submitted ||
|
|
98
|
+
result.status === UserActionStatus.Accepted);
|
|
101
99
|
}
|
|
102
100
|
function isNonNegativeDecimal(value) {
|
|
103
101
|
try {
|
|
@@ -107,6 +105,18 @@ function isNonNegativeDecimal(value) {
|
|
|
107
105
|
return false;
|
|
108
106
|
}
|
|
109
107
|
}
|
|
108
|
+
/** @throws {PerpsError} When `asset.minWithdrawalAmount` is not a decimal. */
|
|
109
|
+
function minWithdrawalAmountOf(asset) {
|
|
110
|
+
if (asset.minWithdrawalAmount === undefined) {
|
|
111
|
+
return undefined;
|
|
112
|
+
}
|
|
113
|
+
try {
|
|
114
|
+
return unknownToDecimalString(asset.minWithdrawalAmount, 'minWithdrawalAmount', 'perps-sdk');
|
|
115
|
+
}
|
|
116
|
+
catch {
|
|
117
|
+
throw new PerpsError(PerpsErrorCode.SDKError, `Asset '${asset.id}' field \`minWithdrawalAmount\` is not a valid decimal.`);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
110
120
|
/**
|
|
111
121
|
* Look up an action's descriptor in the provider's metadata. Throws if the
|
|
112
122
|
* action isn't declared — defensive: better to fail loudly than to mis-sign.
|
|
@@ -263,27 +273,81 @@ export class PerpsClient {
|
|
|
263
273
|
* step with the signer its own descriptor declares; the signed steps come
|
|
264
274
|
* back in the batch's original order. The plugin owns every signing arm and
|
|
265
275
|
* branches on `signer` internally, reading the end-user's wallet from the
|
|
266
|
-
* {@link SignActionsContext} when an arm signs as the user.
|
|
276
|
+
* {@link SignActionsContext} when an arm signs as the user. Signing stops
|
|
277
|
+
* after the first group that executed a step without an acknowledgement.
|
|
267
278
|
*
|
|
268
279
|
* @throws {PerpsError} When a step's action is not declared by the provider,
|
|
269
280
|
* or the plugin implements no `signActions`.
|
|
281
|
+
* @throws {PerpsExecutionError} When a group throws after an earlier group
|
|
282
|
+
* executed steps.
|
|
270
283
|
*/
|
|
271
284
|
async delegateSignActions(provider, address, metadata, actions, onProgress) {
|
|
272
285
|
const plugin = this.requireProvider(provider);
|
|
273
|
-
|
|
286
|
+
const signActions = plugin.signActions?.bind(plugin);
|
|
287
|
+
if (signActions === undefined) {
|
|
274
288
|
throw new PerpsError(PerpsErrorCode.SDKError, `Provider '${provider}' does not implement signActions.`);
|
|
275
289
|
}
|
|
276
290
|
const signed = [];
|
|
291
|
+
const executed = [];
|
|
277
292
|
for (const group of groupStepsByDescriptor(metadata, actions)) {
|
|
278
|
-
|
|
279
|
-
|
|
293
|
+
try {
|
|
294
|
+
const userWallet = await this.resolveSigningWallet(group.descriptor, group.steps);
|
|
295
|
+
const result = await signActions(group.descriptor.signingMethod, group.steps, address, this.buildSignActionsContext(group.descriptor, userWallet, onProgress));
|
|
296
|
+
signed.push(...result.signed);
|
|
297
|
+
executed.push(...result.executed);
|
|
298
|
+
}
|
|
299
|
+
catch (error) {
|
|
300
|
+
rethrowWithKnownResults(executed, error);
|
|
301
|
+
}
|
|
302
|
+
if (!executed.every(isAcknowledged)) {
|
|
303
|
+
break;
|
|
304
|
+
}
|
|
280
305
|
}
|
|
281
|
-
return signed;
|
|
306
|
+
return { signed, executed };
|
|
282
307
|
}
|
|
283
308
|
/**
|
|
284
|
-
*
|
|
285
|
-
*
|
|
286
|
-
*
|
|
309
|
+
* Submit `signed` to `/executeAction` when every step the plugin executed
|
|
310
|
+
* while signing was acknowledged, then resolve explorer links and notify the
|
|
311
|
+
* plugin. Resolves to the full report: `executed`, then the `/executeAction`
|
|
312
|
+
* results. An empty report means nothing executed.
|
|
313
|
+
*
|
|
314
|
+
* @throws {PerpsExecutionError} When the submission or the plugin callback
|
|
315
|
+
* throws after a result is known.
|
|
316
|
+
*/
|
|
317
|
+
async submitSignedActions(provider, address, action, signerAddress, { signed, executed }) {
|
|
318
|
+
let results = executed;
|
|
319
|
+
if (signed.length > 0 && executed.every(isAcknowledged)) {
|
|
320
|
+
try {
|
|
321
|
+
const response = await executeAction(this.sdkClient, {
|
|
322
|
+
provider,
|
|
323
|
+
address,
|
|
324
|
+
// The submitting account: the plugin-resolved signer (Hyperliquid's
|
|
325
|
+
// agent) when present, else the end-user's address.
|
|
326
|
+
signerAddress: signerAddress ?? address,
|
|
327
|
+
action,
|
|
328
|
+
actions: signed,
|
|
329
|
+
});
|
|
330
|
+
results = [...executed, ...response.results];
|
|
331
|
+
}
|
|
332
|
+
catch (error) {
|
|
333
|
+
rethrowWithKnownResults(executed, error);
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
if (results.length === 0) {
|
|
337
|
+
return results;
|
|
338
|
+
}
|
|
339
|
+
try {
|
|
340
|
+
results = this.resolveExplorerLinks(provider, results);
|
|
341
|
+
await this.notifyExecuteResults(provider, address, results);
|
|
342
|
+
}
|
|
343
|
+
catch (error) {
|
|
344
|
+
rethrowWithKnownResults(results, error);
|
|
345
|
+
}
|
|
346
|
+
return results;
|
|
347
|
+
}
|
|
348
|
+
/**
|
|
349
|
+
* Let the plugin observe an execution report before the core returns it —
|
|
350
|
+
* e.g. to evict a locally stored credential the venue refused.
|
|
287
351
|
*/
|
|
288
352
|
async notifyExecuteResults(provider, address, results) {
|
|
289
353
|
const plugin = this.requireProvider(provider);
|
|
@@ -292,9 +356,10 @@ export class PerpsClient {
|
|
|
292
356
|
}
|
|
293
357
|
}
|
|
294
358
|
/**
|
|
295
|
-
* Attach a provider-built explorer URL to every result
|
|
296
|
-
*
|
|
297
|
-
*
|
|
359
|
+
* Attach a provider-built explorer URL to every result that carries a venue
|
|
360
|
+
* `txHash`, whatever its status: an unacknowledged hash is what the user
|
|
361
|
+
* inspects. The provider owns its explorer target, so core only asks — a
|
|
362
|
+
* plugin without the hook leaves results untouched.
|
|
298
363
|
*/
|
|
299
364
|
resolveExplorerLinks(provider, results) {
|
|
300
365
|
const plugin = this.requireProvider(provider);
|
|
@@ -303,7 +368,7 @@ export class PerpsClient {
|
|
|
303
368
|
return results;
|
|
304
369
|
}
|
|
305
370
|
return results.map((result) => {
|
|
306
|
-
if (
|
|
371
|
+
if (result.txHash === undefined) {
|
|
307
372
|
return result;
|
|
308
373
|
}
|
|
309
374
|
const explorerLink = resolveLink(result.txHash);
|
|
@@ -377,21 +442,29 @@ export class PerpsClient {
|
|
|
377
442
|
return ctx;
|
|
378
443
|
}
|
|
379
444
|
/**
|
|
380
|
-
* Sign
|
|
381
|
-
*
|
|
382
|
-
*
|
|
383
|
-
*
|
|
445
|
+
* Sign one provider setup step through the provider plugin and submit it.
|
|
446
|
+
* A step the plugin executed client-side (e.g. Lighter's token-authenticated
|
|
447
|
+
* venue mutations) reports the plugin's own result instead of an
|
|
448
|
+
* `/executeAction` result.
|
|
384
449
|
*
|
|
385
|
-
*
|
|
386
|
-
*
|
|
387
|
-
*
|
|
388
|
-
*
|
|
389
|
-
* @throws {PerpsError} When the step's action is not declared by the provider.
|
|
450
|
+
* @throws {PerpsError} When the step's action is not declared by the provider,
|
|
451
|
+
* or signing or submission fails before any result is known.
|
|
452
|
+
* @throws {PerpsExecutionError} When a later stage fails after a result is
|
|
453
|
+
* known.
|
|
390
454
|
*/
|
|
391
|
-
async
|
|
455
|
+
async runProviderSetupStep(provider, address, step) {
|
|
392
456
|
const metadata = await this.getProviderMetadata(provider);
|
|
393
|
-
const
|
|
394
|
-
|
|
457
|
+
const descriptor = findActionDescriptor(metadata, step.action);
|
|
458
|
+
const signResult = await this.delegateSignActions(provider, address, metadata, [step]);
|
|
459
|
+
let signerAddress;
|
|
460
|
+
try {
|
|
461
|
+
const request = await this.resolveActionRequest(provider, descriptor, address);
|
|
462
|
+
signerAddress = request.signerAddress;
|
|
463
|
+
}
|
|
464
|
+
catch (error) {
|
|
465
|
+
rethrowWithKnownResults(signResult.executed, error);
|
|
466
|
+
}
|
|
467
|
+
return this.submitSignedActions(provider, address, step.action, signerAddress, signResult);
|
|
395
468
|
}
|
|
396
469
|
/**
|
|
397
470
|
* Build (but do not sign or submit) the unsigned action steps for `action`,
|
|
@@ -587,18 +660,10 @@ export class PerpsClient {
|
|
|
587
660
|
if (asset === undefined) {
|
|
588
661
|
return [];
|
|
589
662
|
}
|
|
590
|
-
const minimum = asset
|
|
591
|
-
if (minimum !== undefined
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
floor = unknownToDecimalString(minimum, 'minWithdrawalAmount', 'perps-sdk');
|
|
595
|
-
}
|
|
596
|
-
catch {
|
|
597
|
-
throw new PerpsError(PerpsErrorCode.SDKError, `Asset '${asset.id}' field \`minWithdrawalAmount\` is not a valid decimal.`);
|
|
598
|
-
}
|
|
599
|
-
if (isDecimalStringGreaterThan(floor, row.available)) {
|
|
600
|
-
return [];
|
|
601
|
-
}
|
|
663
|
+
const minimum = minWithdrawalAmountOf(asset);
|
|
664
|
+
if (minimum !== undefined &&
|
|
665
|
+
isDecimalStringGreaterThan(minimum, row.available)) {
|
|
666
|
+
return [];
|
|
602
667
|
}
|
|
603
668
|
if (row.withdrawalFee === undefined) {
|
|
604
669
|
return [
|
|
@@ -630,17 +695,37 @@ export class PerpsClient {
|
|
|
630
695
|
/**
|
|
631
696
|
* The withdrawal types `params.address` can choose per holding at
|
|
632
697
|
* `params.provider`, each with its cap and the `withdrawalOptions` to pass
|
|
633
|
-
* unchanged in `WithdrawalParams`.
|
|
698
|
+
* unchanged in `WithdrawalParams`. Every option whose `max` is below the
|
|
699
|
+
* source asset's core `/assets` `minWithdrawalAmount` is removed, since no
|
|
700
|
+
* amount can satisfy both limits; a source asset the provider's registry
|
|
701
|
+
* does not carry keeps its options.
|
|
634
702
|
*
|
|
635
703
|
* @returns `undefined` when the registered plugin declares no withdrawal
|
|
636
704
|
* types read.
|
|
637
|
-
* @throws {PerpsError} When the provider plugin is not registered,
|
|
638
|
-
* the plugin read fails
|
|
705
|
+
* @throws {PerpsError} When the provider plugin is not registered, when
|
|
706
|
+
* either the plugin read or the asset sync fails, or when a source asset's
|
|
707
|
+
* `minWithdrawalAmount` is not a decimal.
|
|
639
708
|
* @public
|
|
640
709
|
*/
|
|
641
710
|
async getWithdrawalTypes(params, options) {
|
|
642
711
|
const plugin = this.requireProvider(params.provider);
|
|
643
|
-
|
|
712
|
+
const sources = await plugin.getWithdrawalTypes?.({ address: params.address }, options);
|
|
713
|
+
if (sources === undefined) {
|
|
714
|
+
return undefined;
|
|
715
|
+
}
|
|
716
|
+
const registry = getAssetRegistry(this.sdkClient, params.provider);
|
|
717
|
+
await registry.sync();
|
|
718
|
+
return sources.map((row) => {
|
|
719
|
+
const asset = registry.get(row.source.asset.id);
|
|
720
|
+
const minimum = asset === undefined ? undefined : minWithdrawalAmountOf(asset);
|
|
721
|
+
if (minimum === undefined) {
|
|
722
|
+
return row;
|
|
723
|
+
}
|
|
724
|
+
return {
|
|
725
|
+
...row,
|
|
726
|
+
options: row.options.filter((option) => !isDecimalStringGreaterThan(minimum, option.max)),
|
|
727
|
+
};
|
|
728
|
+
});
|
|
644
729
|
}
|
|
645
730
|
/**
|
|
646
731
|
* The account's portfolio value and cumulative PnL over `params.range` at
|
|
@@ -749,9 +834,9 @@ export class PerpsClient {
|
|
|
749
834
|
* deferred while any staged user-facing step with a lower `sequence` is
|
|
750
835
|
* outstanding — it cannot succeed before its prerequisite (e.g. SET_REFERRAL
|
|
751
836
|
* authenticates with the credential REGISTER_API_KEY installs) and each
|
|
752
|
-
* doomed attempt is venue traffic. A drain failure
|
|
753
|
-
* blocks setup — the step stays unsatisfied and is
|
|
754
|
-
* `checkSetup`.
|
|
837
|
+
* doomed attempt is venue traffic. A drain failure, thrown or reported, is
|
|
838
|
+
* swallowed so it never blocks setup — the step stays unsatisfied and is
|
|
839
|
+
* retried on a later `checkSetup`.
|
|
755
840
|
*/
|
|
756
841
|
async drainSetup(provider, address, drainable, stagedVisible) {
|
|
757
842
|
for (const descriptor of drainable) {
|
|
@@ -766,14 +851,11 @@ export class PerpsClient {
|
|
|
766
851
|
descriptor,
|
|
767
852
|
]);
|
|
768
853
|
for (const step of steps) {
|
|
769
|
-
const
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
setup: [step],
|
|
775
|
-
signedActions: [signed],
|
|
776
|
-
});
|
|
854
|
+
const results = await this.runProviderSetupStep(provider, address, step);
|
|
855
|
+
const failure = results.find((result) => !isAcknowledged(result));
|
|
856
|
+
if (failure !== undefined) {
|
|
857
|
+
console.debug(`[perps-sdk] setup step '${descriptor.type}' for '${provider}' reported '${failure.status}'; will retry on the next checkSetup.`, failure);
|
|
858
|
+
break;
|
|
777
859
|
}
|
|
778
860
|
}
|
|
779
861
|
}
|
|
@@ -829,35 +911,6 @@ export class PerpsClient {
|
|
|
829
911
|
const actions = await this.buildProviderSetupActions(provider, address, metadata.setup.filter(isStageable));
|
|
830
912
|
return { actions };
|
|
831
913
|
}
|
|
832
|
-
/**
|
|
833
|
-
* Submit the signed setup steps returned by `checkSetup` (and signed by the
|
|
834
|
-
* caller / `signProviderSetupAction`). Routes the batch on the first step's
|
|
835
|
-
* action and lets the plugin contribute that action's `signerAddress`.
|
|
836
|
-
* Throws on any per-step venue rejection.
|
|
837
|
-
*/
|
|
838
|
-
async executeProviderSetup(params) {
|
|
839
|
-
const { provider, address, setup, signedActions } = params;
|
|
840
|
-
if (signedActions.length === 0) {
|
|
841
|
-
return { results: { results: [] } };
|
|
842
|
-
}
|
|
843
|
-
const action = setup[0]?.action ?? signedActions[0].action;
|
|
844
|
-
const metadata = await this.getProviderMetadata(provider);
|
|
845
|
-
const descriptor = findActionDescriptor(metadata, action);
|
|
846
|
-
const { signerAddress } = await this.resolveActionRequest(provider, descriptor, address);
|
|
847
|
-
const response = await executeAction(this.sdkClient, {
|
|
848
|
-
provider,
|
|
849
|
-
address,
|
|
850
|
-
// The submitting account: the plugin-resolved signer (Hyperliquid's
|
|
851
|
-
// agent) when present, else the end-user's address.
|
|
852
|
-
signerAddress: signerAddress ?? address,
|
|
853
|
-
action,
|
|
854
|
-
actions: signedActions,
|
|
855
|
-
});
|
|
856
|
-
const results = this.resolveExplorerLinks(provider, response.results);
|
|
857
|
-
await this.notifyExecuteResults(provider, address, results);
|
|
858
|
-
assertAllSucceeded(results);
|
|
859
|
-
return { results: { results } };
|
|
860
|
-
}
|
|
861
914
|
/**
|
|
862
915
|
* Sign and submit one pre-staged setup `ActionStep` end-to-end.
|
|
863
916
|
*
|
|
@@ -866,9 +919,15 @@ export class PerpsClient {
|
|
|
866
919
|
* prerequisites against that same snapshot, without another `createAction`
|
|
867
920
|
* round-trip.
|
|
868
921
|
*
|
|
922
|
+
* Resolves to the step's execution report. A refused or indeterminate step
|
|
923
|
+
* is a result in the report, not an exception.
|
|
924
|
+
*
|
|
869
925
|
* @throws {PerpsError} When the step's action is not in the provider's
|
|
870
|
-
* `setup` descriptors,
|
|
871
|
-
* checklist, a choice included, is still unsatisfied
|
|
926
|
+
* `setup` descriptors, when a lower-`sequence` step on the same
|
|
927
|
+
* checklist, a choice included, is still unsatisfied, or when signing or
|
|
928
|
+
* submission fails before any result is known.
|
|
929
|
+
* @throws {PerpsExecutionError} When a later stage fails after a result is
|
|
930
|
+
* known; its `response` holds the known results.
|
|
872
931
|
* @public
|
|
873
932
|
*/
|
|
874
933
|
async executeProviderSetupAction(params) {
|
|
@@ -882,54 +941,40 @@ export class PerpsClient {
|
|
|
882
941
|
if (blockingStep) {
|
|
883
942
|
throw new PerpsError(PerpsErrorCode.SDKError, `Setup step '${step.action}' for '${provider}' is blocked: '${blockingStep.descriptor.type}' runs first and is not satisfied.`);
|
|
884
943
|
}
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
// to submit.
|
|
889
|
-
if (signed === undefined) {
|
|
890
|
-
return;
|
|
891
|
-
}
|
|
892
|
-
await this.executeProviderSetup({
|
|
893
|
-
provider,
|
|
894
|
-
address,
|
|
895
|
-
setup: [step],
|
|
896
|
-
signedActions: [signed],
|
|
897
|
-
});
|
|
944
|
+
return {
|
|
945
|
+
results: await this.runProviderSetupStep(provider, address, step),
|
|
946
|
+
};
|
|
898
947
|
}
|
|
899
948
|
/**
|
|
900
949
|
* Execute one option of a choice setup step (Lighter `ACCOUNT_TYPE`,
|
|
901
950
|
* Hyperliquid `ACCOUNT_MODE`) end-to-end with its bound `{ type, params }`,
|
|
902
|
-
*
|
|
951
|
+
* through the same {@link execute} pipeline as a trade.
|
|
903
952
|
*
|
|
904
|
-
*
|
|
905
|
-
*
|
|
906
|
-
* selection was rejected and must surface, not be silently dropped.
|
|
953
|
+
* Resolves to the execution report. Read each result's `status`: a refused
|
|
954
|
+
* selection is a `Failed` result, not an exception.
|
|
907
955
|
*
|
|
908
|
-
* @throws {PerpsError}
|
|
909
|
-
* `success: false`, under that result's `errorCode` when the backend
|
|
910
|
-
* classified the failure and `PerpsErrorCode.ExchangeRejected` otherwise;
|
|
911
|
-
* also the errors `execute` itself can throw (unregistered provider, no
|
|
912
|
-
* signer, signing failure).
|
|
956
|
+
* @throws {PerpsError} The errors {@link execute} throws.
|
|
913
957
|
* @public
|
|
914
958
|
*/
|
|
915
959
|
async executeProviderOption(params) {
|
|
916
960
|
const { provider, address, option } = params;
|
|
917
|
-
|
|
961
|
+
return this.execute({
|
|
918
962
|
provider,
|
|
919
963
|
address,
|
|
920
964
|
action: option.type,
|
|
921
965
|
params: option.params,
|
|
922
966
|
});
|
|
923
|
-
assertAllSucceeded(results);
|
|
924
967
|
}
|
|
925
968
|
/**
|
|
926
969
|
* Undo a satisfied setup step by executing its `revoke` action through
|
|
927
970
|
* create, sign and execute, signed with that action's `Provider.actions`
|
|
928
971
|
* descriptor. The step stages again on the next {@link checkSetup}.
|
|
929
972
|
*
|
|
973
|
+
* Resolves to the execution report.
|
|
974
|
+
*
|
|
930
975
|
* @throws {PerpsError} `SDKError` when `step.revoke` is `null` or when
|
|
931
976
|
* `createAction` stages nothing to revoke; otherwise the errors
|
|
932
|
-
* {@link
|
|
977
|
+
* {@link execute} throws.
|
|
933
978
|
* @public
|
|
934
979
|
*/
|
|
935
980
|
async executeProviderRevoke(params) {
|
|
@@ -946,7 +991,7 @@ export class PerpsClient {
|
|
|
946
991
|
if (staged.length === 0) {
|
|
947
992
|
throw new PerpsError(PerpsErrorCode.SDKError, `Nothing to revoke for setup step '${step.type}' on '${provider}'.`);
|
|
948
993
|
}
|
|
949
|
-
|
|
994
|
+
return { results };
|
|
950
995
|
}
|
|
951
996
|
/**
|
|
952
997
|
* Place a market or limit order. Convenience wrapper over {@link execute}
|
|
@@ -1086,8 +1131,15 @@ export class PerpsClient {
|
|
|
1086
1131
|
* descriptor's scheme and signer internally), and submit. Core stays
|
|
1087
1132
|
* signer-agnostic — the plugin owns WHO signs and HOW.
|
|
1088
1133
|
*
|
|
1134
|
+
* Resolves to the execution report: one result per executed step, in
|
|
1135
|
+
* execution order, each with its own `status`. An empty report means
|
|
1136
|
+
* nothing executed.
|
|
1137
|
+
*
|
|
1089
1138
|
* @throws {PerpsError} When the action is not declared by the provider,
|
|
1090
|
-
* the plugin cannot sign it, or submission fails
|
|
1139
|
+
* the plugin cannot sign it, or submission fails before any result is
|
|
1140
|
+
* known.
|
|
1141
|
+
* @throws {PerpsExecutionError} When a later stage fails after a result is
|
|
1142
|
+
* known; its `response` holds the known results.
|
|
1091
1143
|
* @public
|
|
1092
1144
|
*/
|
|
1093
1145
|
async execute(params) {
|
|
@@ -1110,24 +1162,8 @@ export class PerpsClient {
|
|
|
1110
1162
|
...signerParams,
|
|
1111
1163
|
},
|
|
1112
1164
|
});
|
|
1113
|
-
const
|
|
1114
|
-
|
|
1115
|
-
// token-authenticated venue mutations), leaving no backend-bound step. With
|
|
1116
|
-
// nothing to submit, skip the `/executeAction` hop.
|
|
1117
|
-
if (signedActions.length === 0) {
|
|
1118
|
-
return { staged: actions, results: [] };
|
|
1119
|
-
}
|
|
1120
|
-
const response = await executeAction(this.sdkClient, {
|
|
1121
|
-
provider,
|
|
1122
|
-
address,
|
|
1123
|
-
// The submitting account: the plugin-resolved signer (Hyperliquid's
|
|
1124
|
-
// agent) when present, else the end-user's address.
|
|
1125
|
-
signerAddress: signerAddress ?? address,
|
|
1126
|
-
action,
|
|
1127
|
-
actions: signedActions,
|
|
1128
|
-
});
|
|
1129
|
-
const results = this.resolveExplorerLinks(provider, response.results);
|
|
1130
|
-
await this.notifyExecuteResults(provider, address, results);
|
|
1165
|
+
const signResult = await this.delegateSignActions(provider, address, metadata, actions, onProgress);
|
|
1166
|
+
const results = await this.submitSignedActions(provider, address, action, signerAddress, signResult);
|
|
1131
1167
|
return { staged: actions, results };
|
|
1132
1168
|
}
|
|
1133
1169
|
/**
|
|
@@ -1176,12 +1212,13 @@ export class PerpsClient {
|
|
|
1176
1212
|
* typed data with the configured user wallet.
|
|
1177
1213
|
*
|
|
1178
1214
|
* The backend returns at most one step. Resolves to `{ results: [] }` when it
|
|
1179
|
-
* returns none, meaning no consent is outstanding for this address.
|
|
1215
|
+
* returns none, meaning no consent is outstanding for this address. Else it
|
|
1216
|
+
* resolves to the backend's execution report; read each result's `status`.
|
|
1180
1217
|
*
|
|
1181
1218
|
* @throws {PerpsError} When no user wallet is configured, the backend returns
|
|
1182
|
-
* more than one step or a non-EIP-712 step, or the
|
|
1183
|
-
*
|
|
1184
|
-
*
|
|
1219
|
+
* more than one step or a non-EIP-712 step, or the submission fails. A
|
|
1220
|
+
* signature refusal from the wallet client propagates as the wallet's own
|
|
1221
|
+
* error.
|
|
1185
1222
|
* @public
|
|
1186
1223
|
*/
|
|
1187
1224
|
async executeMetaAction(params) {
|
|
@@ -1204,17 +1241,12 @@ export class PerpsClient {
|
|
|
1204
1241
|
}
|
|
1205
1242
|
const wallet = await this.resolveMetaSigningWallet(actions);
|
|
1206
1243
|
const signature = await signTypedDataWithSigner(wallet, step.typedData);
|
|
1207
|
-
|
|
1244
|
+
return executeAction(this.sdkClient, {
|
|
1208
1245
|
provider: META_PROVIDER,
|
|
1209
1246
|
address,
|
|
1210
1247
|
action,
|
|
1211
1248
|
actions: [{ ...step, signature }],
|
|
1212
1249
|
});
|
|
1213
|
-
const failure = response.results.find((r) => !r.success);
|
|
1214
|
-
if (failure) {
|
|
1215
|
-
throw new PerpsError(failure.errorCode ?? PerpsErrorCode.ExchangeRejected, failure.error);
|
|
1216
|
-
}
|
|
1217
|
-
return response;
|
|
1218
1250
|
}
|
|
1219
1251
|
}
|
|
1220
1252
|
//# sourceMappingURL=PerpsClient.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PerpsClient.js","sourceRoot":"","sources":["../../../src/client/PerpsClient.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PerpsClient.js","sourceRoot":"","sources":["../../../src/client/PerpsClient.ts"],"names":[],"mappings":"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"}
|