@lifi/perps-sdk-provider-lighter 38.1.0 → 40.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.
Files changed (37) hide show
  1. package/README.md +3 -1
  2. package/dist/cjs/LighterProvider.d.ts.map +1 -1
  3. package/dist/cjs/LighterProvider.js +1 -0
  4. package/dist/cjs/LighterProvider.js.map +1 -1
  5. package/dist/cjs/copy.d.ts +5 -0
  6. package/dist/cjs/copy.d.ts.map +1 -0
  7. package/dist/cjs/copy.js +11 -0
  8. package/dist/cjs/copy.js.map +1 -0
  9. package/dist/cjs/signers/signActions.d.ts +6 -5
  10. package/dist/cjs/signers/signActions.d.ts.map +1 -1
  11. package/dist/cjs/signers/signActions.js +180 -65
  12. package/dist/cjs/signers/signActions.js.map +1 -1
  13. package/dist/cjs/utils/transferMargin.js +2 -2
  14. package/dist/cjs/utils/transferMargin.js.map +1 -1
  15. package/dist/esm/LighterProvider.d.ts.map +1 -1
  16. package/dist/esm/LighterProvider.js +1 -0
  17. package/dist/esm/LighterProvider.js.map +1 -1
  18. package/dist/esm/copy.d.ts +5 -0
  19. package/dist/esm/copy.d.ts.map +1 -0
  20. package/dist/esm/copy.js +5 -0
  21. package/dist/esm/copy.js.map +1 -0
  22. package/dist/esm/signers/signActions.d.ts +18 -9
  23. package/dist/esm/signers/signActions.d.ts.map +1 -1
  24. package/dist/esm/signers/signActions.js +197 -89
  25. package/dist/esm/signers/signActions.js.map +1 -1
  26. package/dist/esm/utils/transferMargin.js +3 -3
  27. package/dist/esm/utils/transferMargin.js.map +1 -1
  28. package/dist/types/LighterProvider.d.ts.map +1 -1
  29. package/dist/types/copy.d.ts +5 -0
  30. package/dist/types/copy.d.ts.map +1 -0
  31. package/dist/types/signers/signActions.d.ts +18 -9
  32. package/dist/types/signers/signActions.d.ts.map +1 -1
  33. package/package.json +3 -3
  34. package/src/LighterProvider.ts +3 -2
  35. package/src/copy.ts +23 -0
  36. package/src/signers/signActions.ts +231 -107
  37. package/src/utils/transferMargin.ts +4 -4
package/README.md CHANGED
@@ -49,12 +49,14 @@ lighterProvider({ storage: myStorageAdapter })
49
49
 
50
50
  Lighter applies a referral code permanently at sign-up. Any code on the account therefore satisfies `SET_REFERRAL`, whichever integrator owns it.
51
51
 
52
- The `SET_REFERRAL` action uses a short-lived standard token. It first reads the referral code Lighter reports for the address. When Lighter reports a code, the action stores that code with the local API key and sends no `referral/use` request. When Lighter reports no code, the action sends the request and stores the code it sent. Lighter code `41003` answers that the account already carries a code, so the action stores the marker and reports success. Every other rejection code raises `ExchangeRejected` with the venue `code` and `message`. A failed read of the applied code sends the request and lets Lighter decide.
52
+ The `SET_REFERRAL` action uses a short-lived standard token. It first reads the referral code Lighter reports for the address. When Lighter reports a code, the action stores that code with the local API key and sends no `referral/use` request. When Lighter reports no code, the action sends the request and stores the code it sent. Lighter code `41003` on a non-5xx response answers that the account already carries a code, so the action stores the marker and reports no result. When Lighter accepts the request, the action reports an `Accepted` result. A parseable rejection code on a non-5xx response gives a `Failed` result with the venue `message`, and the mapped `errorCode` (`ExchangeRejected` when no mapping exists). A transport failure, HTTP 5xx, or response without a valid integer result code reports `Indeterminate`, because the SDK cannot tell if Lighter applied the code; it does not mark the referral applied or retry the request. A failed read of the applied code sends the request and lets Lighter decide.
53
53
 
54
54
  `getAccount` reports `referralPresent: true` when the local key record carries a marker. It does not send a read-only token to a referral endpoint. A key record from an earlier package version has no marker, so `getAccount` reports `referralPresent: false` until the `SET_REFERRAL` action runs again. A `REGISTER_API_KEY` action keeps the marker on the new key record.
55
55
 
56
56
  Before `getAccount` starts an authenticated read, it compares the local public key with the registered Lighter public key. A missing or different key prevents token creation and authenticated reads. If Lighter returns code `61006` for a read-only token, the provider creates one replacement and retries the read once. Responses with HTTP `401`, HTTP `403`, or code `20013` do not remove or replace the token.
57
57
 
58
+ Lighter does not evict API keys through `onExecuteResults`. A failed action alone does not establish that the stored key is invalid; the registered-public-key check determines whether authenticated operations may use it.
59
+
58
60
  Each provider instance shares one request hold across its Lighter API clients, polls, and token-management requests. An HTTP `429` or HTTP `405` response starts the hold and fails at once with `RateLimitExceeded`. The provider does not retry that request. The provider uses `Retry-After` when Lighter supplies it, up to a maximum of five minutes. Otherwise, the hold lasts 60 seconds. All Lighter requests from that provider fail before network dispatch until the hold expires. Separate provider instances do not share a hold.
59
61
 
60
62
  ## Activity asset identity
@@ -1 +1 @@
1
- {"version":3,"file":"LighterProvider.d.ts","sourceRoot":"","sources":["../../src/LighterProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAiBL,KAAK,mBAAmB,EAsBxB,KAAK,cAAc,EAQpB,MAAM,iBAAiB,CAAA;AAkCxB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAQnC,OAAO,EAUL,KAAK,iBAAiB,EACvB,MAAM,gBAAgB,CAAA;AA8NvB,MAAM,WAAW,sBAAsB;IAMrC,OAAO,CAAC,EAAE,cAAc,CAAA;IAMxB,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB,uBAAuB,CAAC,EAAE,MAAM,CAAA;CACjC;AAuBD,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAM/D,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;CAChE;AASD,eAAO,MAAM,qBAAqB,GAChC,YAAY,iBAAiB,EAC7B,UAAS,sBAA2B,KACnC,oBA+nDF,CAAA;AAuBD,eAAO,MAAM,eAAe,GAC1B,UAAS,sBAA2B,KACnC,oBACyD,CAAA;AAkB5D,eAAO,MAAM,iBAAiB,GAC5B,UAAS,sBAA2B,KACnC,oBAA6E,CAAA;AAOhF,eAAO,MAAM,OAAO,aA7BT,sBAAsB,KAC9B,oBA4BmC,CAAA"}
1
+ {"version":3,"file":"LighterProvider.d.ts","sourceRoot":"","sources":["../../src/LighterProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAiBL,KAAK,mBAAmB,EAuBxB,KAAK,cAAc,EAQpB,MAAM,iBAAiB,CAAA;AAiCxB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAQnC,OAAO,EAUL,KAAK,iBAAiB,EACvB,MAAM,gBAAgB,CAAA;AA8NvB,MAAM,WAAW,sBAAsB;IAMrC,OAAO,CAAC,EAAE,cAAc,CAAA;IAMxB,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB,uBAAuB,CAAC,EAAE,MAAM,CAAA;CACjC;AAuBD,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAM/D,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;CAChE;AASD,eAAO,MAAM,qBAAqB,GAChC,YAAY,iBAAiB,EAC7B,UAAS,sBAA2B,KACnC,oBAgoDF,CAAA;AAuBD,eAAO,MAAM,eAAe,GAC1B,UAAS,sBAA2B,KACnC,oBACyD,CAAA;AAkB5D,eAAO,MAAM,iBAAiB,GAC5B,UAAS,sBAA2B,KACnC,oBAA6E,CAAA;AAOhF,eAAO,MAAM,OAAO,aA7BT,sBAAsB,KAC9B,oBA4BmC,CAAA"}
@@ -1000,6 +1000,7 @@ const createLighterProvider = (deployment, options = {}) => {
1000
1000
  await assertSendAssetMode(address);
1001
1001
  }
1002
1002
  return (0, signActions_js_1.lighterSignActions)({
1003
+ providerKey,
1003
1004
  signer,
1004
1005
  keyStore,
1005
1006
  apiClient: apiClient(),
@@ -1 +1 @@
1
- {"version":3,"file":"LighterProvider.js","sourceRoot":"","sources":["../../src/LighterProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LighterProvider.js","sourceRoot":"","sources":["../../src/LighterProvider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { ActionType } from '@lifi/perps-types';
2
+ export declare const unconfirmedIndeterminateErrorText: (action: ActionType, providerKey: string) => string;
3
+ export declare const rejectedFailedErrorText: (action: ActionType, providerKey: string, code: number | undefined, httpStatus: number, venueMessage: string | undefined) => string;
4
+ export declare const revertedFailedErrorText: (action: ActionType, txHash: string) => string;
5
+ //# sourceMappingURL=copy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"copy.d.ts","sourceRoot":"","sources":["../../src/copy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAGnD,eAAO,MAAM,iCAAiC,GAC5C,QAAQ,UAAU,EAClB,aAAa,MAAM,KAClB,MACuH,CAAA;AAE1H,eAAO,MAAM,uBAAuB,GAClC,QAAQ,UAAU,EAClB,aAAa,MAAM,EACnB,MAAM,MAAM,GAAG,SAAS,EACxB,YAAY,MAAM,EAClB,cAAc,MAAM,GAAG,SAAS,KAC/B,MACyG,CAAA;AAE5G,eAAO,MAAM,uBAAuB,GAClC,QAAQ,UAAU,EAClB,QAAQ,MAAM,KACb,MAC4E,CAAA"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.revertedFailedErrorText = exports.rejectedFailedErrorText = exports.unconfirmedIndeterminateErrorText = void 0;
4
+ const perps_types_1 = require("@lifi/perps-types");
5
+ const unconfirmedIndeterminateErrorText = (action, providerKey) => `${action} was submitted to ${providerKey} but we could not confirm it was accepted. ${perps_types_1.CHECK_ACCOUNT_BEFORE_RETRY_TEXT}`;
6
+ exports.unconfirmedIndeterminateErrorText = unconfirmedIndeterminateErrorText;
7
+ const rejectedFailedErrorText = (action, providerKey, code, httpStatus, venueMessage) => `${providerKey} ${action} rejected (code ${code ?? httpStatus})${venueMessage ? `: ${venueMessage}` : ''}`;
8
+ exports.rejectedFailedErrorText = rejectedFailedErrorText;
9
+ const revertedFailedErrorText = (action, txHash) => `EVM_TX leg '${action}' reverted (tx ${txHash}); aborted the remaining legs.`;
10
+ exports.revertedFailedErrorText = revertedFailedErrorText;
11
+ //# sourceMappingURL=copy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"copy.js","sourceRoot":"","sources":["../../src/copy.ts"],"names":[],"mappings":";;;AACA,mDAAmE;AAE5D,MAAM,iCAAiC,GAAG,CAC/C,MAAkB,EAClB,WAAmB,EACX,EAAE,CACV,GAAG,MAAM,qBAAqB,WAAW,8CAA8C,6CAA+B,EAAE,CAAA;AAJ7G,QAAA,iCAAiC,qCAI4E;AAEnH,MAAM,uBAAuB,GAAG,CACrC,MAAkB,EAClB,WAAmB,EACnB,IAAwB,EACxB,UAAkB,EAClB,YAAgC,EACxB,EAAE,CACV,GAAG,WAAW,IAAI,MAAM,mBAAmB,IAAI,IAAI,UAAU,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;AAP/F,QAAA,uBAAuB,2BAOwE;AAErG,MAAM,uBAAuB,GAAG,CACrC,MAAkB,EAClB,MAAc,EACN,EAAE,CACV,eAAe,MAAM,kBAAkB,MAAM,gCAAgC,CAAA;AAJlE,QAAA,uBAAuB,2BAI2C"}
@@ -1,11 +1,12 @@
1
- import { type SignActionsContext } from '@lifi/perps-sdk';
2
- import type { ActionStep, EvmTxActionStep, EvmTxSignedActionStep, SignedActionStep, WasmBlobActionStep, WasmBlobSignedActionStep } from '@lifi/perps-types';
1
+ import { type SignActionsContext, type SignActionsResult } from '@lifi/perps-sdk';
2
+ import type { ActionStep, EvmTxActionStep, WasmBlobActionStep } from '@lifi/perps-types';
3
3
  import { SigningMethod } from '@lifi/perps-types';
4
4
  import type { Address } from 'viem';
5
5
  import type { LighterApiClient } from '../utils/apiClient.js';
6
6
  import type { LighterApiKey, LighterKeyStore } from './LighterKeyStore.js';
7
7
  import type { LighterSigner } from './LighterSigner.js';
8
8
  export interface LighterSignActionsDeps {
9
+ providerKey: string;
9
10
  signer: LighterSigner;
10
11
  keyStore: LighterKeyStore;
11
12
  apiClient: LighterApiClient;
@@ -16,7 +17,7 @@ export interface LighterApiKeyFreshness {
16
17
  assertStillRegistered(client: LighterApiClient, address: Address, apiKey: LighterApiKey): Promise<void>;
17
18
  }
18
19
  export declare const createLighterApiKeyFreshness: () => LighterApiKeyFreshness;
19
- export declare function signWasmBlobActions(deps: LighterSignActionsDeps, address: Address, steps: WasmBlobActionStep[], ctx: SignActionsContext | undefined): Promise<WasmBlobSignedActionStep[]>;
20
- export declare function signEvmTxActions(steps: EvmTxActionStep[], ctx: SignActionsContext | undefined): Promise<EvmTxSignedActionStep[]>;
21
- export declare function lighterSignActions(deps: LighterSignActionsDeps, method: SigningMethod, steps: ActionStep[], address: Address, ctx?: SignActionsContext): Promise<SignedActionStep[]>;
20
+ export declare function signWasmBlobActions(deps: LighterSignActionsDeps, address: Address, steps: WasmBlobActionStep[], ctx: SignActionsContext | undefined): Promise<SignActionsResult>;
21
+ export declare function signEvmTxActions(providerKey: string, steps: EvmTxActionStep[], ctx: SignActionsContext | undefined): Promise<SignActionsResult>;
22
+ export declare function lighterSignActions(deps: LighterSignActionsDeps, method: SigningMethod, steps: ActionStep[], address: Address, ctx?: SignActionsContext): Promise<SignActionsResult>;
22
23
  //# sourceMappingURL=signActions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"signActions.d.ts","sourceRoot":"","sources":["../../../src/signers/signActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACrE,OAAO,KAAK,EACV,UAAU,EACV,eAAe,EACf,qBAAqB,EACrB,gBAAgB,EAChB,kBAAkB,EAClB,wBAAwB,EACzB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAA8B,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAC7E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAOnC,OAAO,KAAK,EAAa,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAQxE,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC1E,OAAO,KAAK,EAEV,aAAa,EACd,MAAM,oBAAoB,CAAA;AAW3B,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,aAAa,CAAA;IACrB,QAAQ,EAAE,eAAe,CAAA;IAIzB,SAAS,EAAE,gBAAgB,CAAA;IAK3B,eAAe,EAAE,sBAAsB,CAAA;IAOvC,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;CACvD;AAyBD,MAAM,WAAW,sBAAsB;IACrC,qBAAqB,CACnB,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,IAAI,CAAC,CAAA;CACjB;AAOD,eAAO,MAAM,4BAA4B,QAAO,sBA6D/C,CAAA;AAeD,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,sBAAsB,EAC5B,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,kBAAkB,EAAE,EAC3B,GAAG,EAAE,kBAAkB,GAAG,SAAS,GAClC,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAkCrC;AAsZD,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,eAAe,EAAE,EACxB,GAAG,EAAE,kBAAkB,GAAG,SAAS,GAClC,OAAO,CAAC,qBAAqB,EAAE,CAAC,CA6ElC;AASD,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,sBAAsB,EAC5B,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,UAAU,EAAE,EACnB,OAAO,EAAE,OAAO,EAChB,GAAG,CAAC,EAAE,kBAAkB,GACvB,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAsB7B"}
1
+ {"version":3,"file":"signActions.d.ts","sourceRoot":"","sources":["../../../src/signers/signActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACvB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EAEV,UAAU,EACV,eAAe,EAEf,kBAAkB,EAEnB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAGL,aAAa,EAEd,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,OAAO,EAAO,MAAM,MAAM,CAAA;AAYxC,OAAO,KAAK,EAAa,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAQxE,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC1E,OAAO,KAAK,EAEV,aAAa,EACd,MAAM,oBAAoB,CAAA;AAW3B,MAAM,WAAW,sBAAsB;IAErC,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,aAAa,CAAA;IACrB,QAAQ,EAAE,eAAe,CAAA;IAIzB,SAAS,EAAE,gBAAgB,CAAA;IAK3B,eAAe,EAAE,sBAAsB,CAAA;IAOvC,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;CACvD;AAyBD,MAAM,WAAW,sBAAsB;IACrC,qBAAqB,CACnB,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,IAAI,CAAC,CAAA;CACjB;AAOD,eAAO,MAAM,4BAA4B,QAAO,sBA6D/C,CAAA;AAgBD,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,sBAAsB,EAC5B,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,kBAAkB,EAAE,EAC3B,GAAG,EAAE,kBAAkB,GAAG,SAAS,GAClC,OAAO,CAAC,iBAAiB,CAAC,CA6C5B;AA4bD,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,eAAe,EAAE,EACxB,GAAG,EAAE,kBAAkB,GAAG,SAAS,GAClC,OAAO,CAAC,iBAAiB,CAAC,CAqI5B;AASD,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,sBAAsB,EAC5B,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,UAAU,EAAE,EACnB,OAAO,EAAE,OAAO,EAChB,GAAG,CAAC,EAAE,kBAAkB,GACvB,OAAO,CAAC,iBAAiB,CAAC,CAsB5B"}
@@ -9,6 +9,7 @@ const perps_types_1 = require("@lifi/perps-types");
9
9
  const viem_1 = require("viem");
10
10
  const actions_1 = require("viem/actions");
11
11
  const constants_js_1 = require("../constants.js");
12
+ const copy_js_1 = require("../copy.js");
12
13
  const appliedReferralCode_js_1 = require("../utils/appliedReferralCode.js");
13
14
  const lighterErrorCode_js_1 = require("../utils/lighterErrorCode.js");
14
15
  const registeredApiKey_js_1 = require("../utils/registeredApiKey.js");
@@ -60,24 +61,36 @@ async function signWasmBlobActions(deps, address, steps, ctx) {
60
61
  }
61
62
  }
62
63
  const signed = [];
63
- for (const step of steps) {
64
- if (step.action === perps_types_1.ActionType.REGISTER_API_KEY) {
65
- signed.push(await signRegisterApiKey(deps, address, step, ctx));
66
- }
67
- else if (step.action === perps_types_1.ActionType.APPROVE_INTEGRATOR) {
68
- signed.push(await signApproveIntegrator(deps, address, step, ctx));
69
- }
70
- else if (step.action === perps_types_1.ActionType.TRANSFER) {
71
- signed.push(await signTransfer(deps, address, step, ctx));
72
- }
73
- else if (TOKEN_AUTH_MUTATION_KINDS.has(step.wasmSignParams.kind)) {
74
- await executeTokenAuthMutation(deps, address, step);
75
- }
76
- else {
77
- signed.push(await signStandardWasmAction(deps, address, step));
64
+ const executed = [];
65
+ try {
66
+ for (const step of steps) {
67
+ if (step.action === perps_types_1.ActionType.REGISTER_API_KEY) {
68
+ signed.push(await signRegisterApiKey(deps, address, step, ctx));
69
+ }
70
+ else if (step.action === perps_types_1.ActionType.APPROVE_INTEGRATOR) {
71
+ signed.push(await signApproveIntegrator(deps, address, step, ctx));
72
+ }
73
+ else if (step.action === perps_types_1.ActionType.TRANSFER) {
74
+ signed.push(await signTransfer(deps, address, step, ctx));
75
+ }
76
+ else if (TOKEN_AUTH_MUTATION_KINDS.has(step.wasmSignParams.kind)) {
77
+ const result = await executeTokenAuthMutation(deps, address, step);
78
+ if (result !== undefined) {
79
+ executed.push(result);
80
+ if (result.status !== perps_types_1.UserActionStatus.Accepted) {
81
+ break;
82
+ }
83
+ }
84
+ }
85
+ else {
86
+ signed.push(await signStandardWasmAction(deps, address, step));
87
+ }
78
88
  }
79
89
  }
80
- return signed;
90
+ catch (error) {
91
+ (0, perps_sdk_1.rethrowWithKnownResults)(executed, error);
92
+ }
93
+ return { signed, executed };
81
94
  }
82
95
  async function signStandardWasmAction(deps, address, step) {
83
96
  const apiKey = await requireApiKey(deps, address);
@@ -189,23 +202,66 @@ async function executeTokenAuthMutation(deps, address, step) {
189
202
  const venueCode = await readAppliedReferralCode(deps, address, authToken);
190
203
  if (venueCode.length > 0) {
191
204
  await deps.keyStore.markReferralApplied(address, venueCode);
192
- return;
205
+ return undefined;
193
206
  }
194
207
  }
195
208
  }
196
209
  const { path, params } = buildTokenAuthMutationRequest(step);
197
- const { status, data } = await deps.apiClient.postForm(path, authToken, params);
210
+ let answer;
211
+ try {
212
+ answer = await deps.apiClient.postForm(path, authToken, params);
213
+ }
214
+ catch (error) {
215
+ if (error instanceof perps_sdk_1.PerpsError &&
216
+ error.code === perps_types_1.PerpsErrorCode.RateLimitExceeded) {
217
+ throw error;
218
+ }
219
+ return {
220
+ action: step.action,
221
+ status: perps_types_1.UserActionStatus.Indeterminate,
222
+ error: (0, copy_js_1.unconfirmedIndeterminateErrorText)(step.action, deps.providerKey),
223
+ errorCode: error instanceof perps_sdk_1.PerpsError ? error.code : perps_types_1.PerpsErrorCode.ServerError,
224
+ };
225
+ }
226
+ const { status, data } = answer;
198
227
  const code = data?.code;
228
+ if (status >= 500 || typeof code !== 'number' || !Number.isInteger(code)) {
229
+ return {
230
+ action: step.action,
231
+ status: perps_types_1.UserActionStatus.Indeterminate,
232
+ error: (0, copy_js_1.unconfirmedIndeterminateErrorText)(step.action, deps.providerKey),
233
+ errorCode: perps_types_1.PerpsErrorCode.ServerError,
234
+ };
235
+ }
199
236
  const referralAlreadyApplied = step.wasmSignParams.kind === 'referralUse' &&
200
237
  code === constants_js_1.LIGHTER_REFERRAL_ALREADY_USED_CODE;
201
- if (!referralAlreadyApplied &&
202
- (status < 200 || status >= 300 || code !== constants_js_1.LIGHTER_MUTATION_SUCCESS_CODE)) {
203
- const suffix = data?.message ? `: ${data.message}` : '';
204
- throw new perps_sdk_1.PerpsError((0, lighterErrorCode_js_1.lighterErrorCodeFromBody)(code) ?? perps_types_1.PerpsErrorCode.ExchangeRejected, `Lighter ${step.action} rejected (code ${code ?? status})${suffix}`);
238
+ if (referralAlreadyApplied) {
239
+ if (appliedReferralCode !== undefined) {
240
+ await deps.keyStore.markReferralApplied(address, appliedReferralCode);
241
+ }
242
+ return undefined;
205
243
  }
244
+ if (status < 200 || status >= 300 || code !== constants_js_1.LIGHTER_MUTATION_SUCCESS_CODE) {
245
+ return {
246
+ action: step.action,
247
+ status: perps_types_1.UserActionStatus.Failed,
248
+ error: (0, copy_js_1.rejectedFailedErrorText)(step.action, deps.providerKey, code, status, data?.message),
249
+ errorCode: (0, lighterErrorCode_js_1.lighterErrorCodeFromBody)(code) ?? perps_types_1.PerpsErrorCode.ExchangeRejected,
250
+ };
251
+ }
252
+ const accepted = {
253
+ action: step.action,
254
+ status: perps_types_1.UserActionStatus.Accepted,
255
+ };
206
256
  if (appliedReferralCode !== undefined) {
207
- await deps.keyStore.markReferralApplied(address, appliedReferralCode);
257
+ try {
258
+ await deps.keyStore.markReferralApplied(address, appliedReferralCode);
259
+ }
260
+ catch (error) {
261
+ (0, perps_sdk_1.rethrowWithKnownResults)([accepted], error);
262
+ }
208
263
  }
264
+ return accepted;
209
265
  }
210
266
  async function readAppliedReferralCode(deps, address, authToken) {
211
267
  try {
@@ -249,7 +305,7 @@ async function requireApiKey(deps, address) {
249
305
  }
250
306
  return apiKey;
251
307
  }
252
- async function signEvmTxActions(steps, ctx) {
308
+ async function signEvmTxActions(providerKey, steps, ctx) {
253
309
  const walletSigner = ctx?.userWallet;
254
310
  if (!walletSigner) {
255
311
  throw new perps_sdk_1.PerpsError(perps_types_1.PerpsErrorCode.SDKError, 'EVM_TX signing requires the end-user wallet. Pass `userWallet` to ' +
@@ -258,66 +314,125 @@ async function signEvmTxActions(steps, ctx) {
258
314
  const switchToChain = ctx?.switchToChain;
259
315
  const onProgress = ctx?.onProgress;
260
316
  const signed = [];
317
+ const confirmed = () => signed.map((leg) => ({
318
+ action: leg.action,
319
+ status: perps_types_1.UserActionStatus.Accepted,
320
+ txHash: leg.txHash,
321
+ }));
261
322
  let legSigner = walletSigner;
262
323
  for (const [index, step] of steps.entries()) {
263
324
  const params = step.txParams;
264
- if (legSigner.chain?.id !== params.chainId && switchToChain) {
265
- legSigner = await switchToChain(params.chainId);
325
+ let txHash;
326
+ try {
327
+ if (legSigner.chain?.id !== params.chainId && switchToChain) {
328
+ legSigner = await switchToChain(params.chainId);
329
+ }
330
+ if (legSigner.chain?.id !== params.chainId) {
331
+ throw new perps_sdk_1.PerpsError(perps_types_1.PerpsErrorCode.SDKError, `EVM_TX leg '${step.action}' targets chain ${params.chainId}, but the ` +
332
+ `connected wallet is on chain ${legSigner.chain?.id ?? 'unknown'} and ` +
333
+ 'no chain switch was performed. Configure a switchChain hook via ' +
334
+ `setSwitchChain, or connect the wallet to chain ${params.chainId} ` +
335
+ 'before signing.');
336
+ }
337
+ txHash = await legSigner.writeContract({
338
+ address: params.to,
339
+ abi: (0, viem_1.parseAbi)(params.abi),
340
+ functionName: params.functionName,
341
+ args: params.args,
342
+ chain: legSigner.chain,
343
+ account: legSigner.account,
344
+ });
266
345
  }
267
- if (legSigner.chain?.id !== params.chainId) {
268
- throw new perps_sdk_1.PerpsError(perps_types_1.PerpsErrorCode.SDKError, `EVM_TX leg '${step.action}' targets chain ${params.chainId}, but the ` +
269
- `connected wallet is on chain ${legSigner.chain?.id ?? 'unknown'} and ` +
270
- 'no chain switch was performed. Configure a switchChain hook via ' +
271
- `setSwitchChain, or connect the wallet to chain ${params.chainId} ` +
272
- 'before signing.');
346
+ catch (error) {
347
+ (0, perps_sdk_1.rethrowWithKnownResults)(confirmed(), error);
348
+ }
349
+ try {
350
+ onProgress?.({
351
+ index,
352
+ total: steps.length,
353
+ action: step.action,
354
+ functionName: params.functionName,
355
+ chainId: params.chainId,
356
+ status: 'submitted',
357
+ txHash,
358
+ });
359
+ }
360
+ catch (error) {
361
+ (0, perps_sdk_1.rethrowWithKnownResults)([
362
+ ...confirmed(),
363
+ {
364
+ action: step.action,
365
+ status: perps_types_1.UserActionStatus.Submitted,
366
+ txHash,
367
+ },
368
+ ], error);
369
+ }
370
+ let receipt;
371
+ try {
372
+ receipt = await (0, actions_1.waitForTransactionReceipt)(legSigner, {
373
+ hash: txHash,
374
+ });
375
+ }
376
+ catch (error) {
377
+ return {
378
+ signed: [],
379
+ executed: [
380
+ ...confirmed(),
381
+ {
382
+ action: step.action,
383
+ status: perps_types_1.UserActionStatus.Indeterminate,
384
+ txHash,
385
+ error: (0, copy_js_1.unconfirmedIndeterminateErrorText)(step.action, providerKey),
386
+ errorCode: error instanceof viem_1.WaitForTransactionReceiptTimeoutError
387
+ ? perps_types_1.PerpsErrorCode.TimeoutError
388
+ : perps_types_1.PerpsErrorCode.ServerError,
389
+ },
390
+ ],
391
+ };
273
392
  }
274
- const txHash = await legSigner.writeContract({
275
- address: params.to,
276
- abi: (0, viem_1.parseAbi)(params.abi),
277
- functionName: params.functionName,
278
- args: params.args,
279
- chain: legSigner.chain,
280
- account: legSigner.account,
281
- });
282
- onProgress?.({
283
- index,
284
- total: steps.length,
285
- action: step.action,
286
- functionName: params.functionName,
287
- chainId: params.chainId,
288
- status: 'submitted',
289
- txHash,
290
- });
291
- const receipt = await (0, actions_1.waitForTransactionReceipt)(legSigner, {
292
- hash: txHash,
293
- });
294
393
  if (receipt.status === 'reverted') {
295
- throw new perps_sdk_1.PerpsError(perps_types_1.PerpsErrorCode.SDKError, `EVM_TX leg '${step.action}' reverted (tx ${txHash}); aborting the ` +
296
- 'remaining legs.');
394
+ return {
395
+ signed: [],
396
+ executed: [
397
+ ...confirmed(),
398
+ {
399
+ action: step.action,
400
+ status: perps_types_1.UserActionStatus.Failed,
401
+ txHash,
402
+ error: (0, copy_js_1.revertedFailedErrorText)(step.action, txHash),
403
+ errorCode: perps_types_1.PerpsErrorCode.SDKError,
404
+ },
405
+ ],
406
+ };
297
407
  }
298
- onProgress?.({
299
- index,
300
- total: steps.length,
301
- action: step.action,
302
- functionName: params.functionName,
303
- chainId: params.chainId,
304
- status: 'confirmed',
305
- txHash,
306
- });
307
408
  signed.push({
308
409
  action: step.action,
309
410
  txParams: step.txParams,
310
411
  txHash,
311
412
  });
413
+ try {
414
+ onProgress?.({
415
+ index,
416
+ total: steps.length,
417
+ action: step.action,
418
+ functionName: params.functionName,
419
+ chainId: params.chainId,
420
+ status: 'confirmed',
421
+ txHash,
422
+ });
423
+ }
424
+ catch (error) {
425
+ (0, perps_sdk_1.rethrowWithKnownResults)(confirmed(), error);
426
+ }
312
427
  }
313
- return signed;
428
+ return { signed, executed: [] };
314
429
  }
315
430
  async function lighterSignActions(deps, method, steps, address, ctx) {
316
431
  switch (method) {
317
432
  case perps_types_1.SigningMethod.WASM_BLOB:
318
433
  return signWasmBlobActions(deps, address, steps, ctx);
319
434
  case perps_types_1.SigningMethod.EVM_TX:
320
- return signEvmTxActions(steps, ctx);
435
+ return signEvmTxActions(deps.providerKey, steps, ctx);
321
436
  case perps_types_1.SigningMethod.EIP712:
322
437
  throw new perps_sdk_1.PerpsError(perps_types_1.PerpsErrorCode.SDKError, 'LighterProvider.signActions: Lighter declares no EIP712 actions.');
323
438
  default: