@lifi/perps-sdk-provider-hyperliquid 18.1.0 → 19.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.
@@ -1 +1 @@
1
- {"version":3,"file":"HyperliquidProvider.d.ts","sourceRoot":"","sources":["../../src/HyperliquidProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,mBAAmB,EAkBxB,KAAK,cAAc,EACpB,MAAM,iBAAiB,CAAA;AA0BxB,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,GAAG,EAAa,MAAM,MAAM,CAAA;AAqBxD,OAAO,EACL,KAAK,gBAAgB,EAEtB,MAAM,oCAAoC,CAAA;AAa3C,MAAM,WAAW,0BAA0B;IAOzC,MAAM,CAAC,EAAE,MAAM,CAAA;IAMf,OAAO,CAAC,EAAE,cAAc,CAAA;CACzB;AAWD,MAAM,WAAW,wBAAyB,SAAQ,mBAAmB;IAKnE,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAEnD,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAK5C,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAK5C,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;CAC1E;AAuBD,wBAAgB,mBAAmB,CACjC,OAAO,GAAE,0BAA+B,GACvC,wBAAwB,CA0T1B"}
1
+ {"version":3,"file":"HyperliquidProvider.d.ts","sourceRoot":"","sources":["../../src/HyperliquidProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,mBAAmB,EAkBxB,KAAK,cAAc,EACpB,MAAM,iBAAiB,CAAA;AA2BxB,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,GAAG,EAAa,MAAM,MAAM,CAAA;AAqBxD,OAAO,EACL,KAAK,gBAAgB,EAEtB,MAAM,oCAAoC,CAAA;AAa3C,MAAM,WAAW,0BAA0B;IAOzC,MAAM,CAAC,EAAE,MAAM,CAAA;IAMf,OAAO,CAAC,EAAE,cAAc,CAAA;CACzB;AAWD,MAAM,WAAW,wBAAyB,SAAQ,mBAAmB;IAKnE,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAEnD,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAK5C,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAK5C,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;CAC1E;AAuBD,wBAAgB,mBAAmB,CACjC,OAAO,GAAE,0BAA+B,GACvC,wBAAwB,CA0V1B"}
@@ -80,25 +80,42 @@ function hyperliquidProvider(options = {}) {
80
80
  };
81
81
  return {
82
82
  type: constants_js_1.PROVIDER_KEY,
83
- internalSetupActions: [perps_types_1.ActionType.SET_REFERRAL],
84
83
  conditionalSetupActions: [perps_types_1.ActionType.REVOKE_AGENT],
85
84
  bind: (client) => contextRef.bind(client),
86
85
  getAgentAddress: async (address) => (await agentStore.get(address)).address,
87
86
  hasAgent: (address) => agentStore.has(address),
88
87
  removeAgent: (address) => agentStore.remove(address),
89
88
  importAgent: (address, privateKey) => agentStore.import(address, privateKey),
90
- resolveActionRequest: async (action, address, signers) => {
89
+ resolveActionRequest: async (action, address, signer) => {
91
90
  if (action === perps_types_1.ActionType.APPROVE_AGENT) {
92
91
  const agentAddress = await resolveApproveAgentAddress(address);
93
92
  return { params: { agentAddress } };
94
93
  }
95
- if (signers.includes(perps_types_1.PerpsSigner.SDK)) {
94
+ if (action === perps_types_1.ActionType.REVOKE_SESSION_AGENT) {
95
+ try {
96
+ const agent = await agentStore.get(address);
97
+ return { params: { agentAddress: agent.address } };
98
+ }
99
+ catch (error) {
100
+ if (error instanceof perps_sdk_1.PerpsError &&
101
+ error.message === perps_sdk_1.PerpsErrorMessage.AgentNotFound) {
102
+ throw new perps_sdk_1.PerpsError(perps_types_1.PerpsErrorCode.SDKError, `Nothing to revoke for '${action}' on '${constants_js_1.PROVIDER_KEY}': no session agent is stored for ${address}.`);
103
+ }
104
+ throw error;
105
+ }
106
+ }
107
+ if (signer === perps_types_1.PerpsSigner.SDK) {
96
108
  const agent = await agentStore.get(address);
97
109
  return { signerAddress: agent.address };
98
110
  }
99
111
  return {};
100
112
  },
101
113
  signActions: (method, steps, address, ctx) => (0, signActions_js_1.hyperliquidSignActions)(agentStore, method, steps, address, ctx),
114
+ onExecuteResults: async (address, results) => {
115
+ if (results.some((result) => result.success && result.action === perps_types_1.ActionType.REVOKE_SESSION_AGENT)) {
116
+ await agentStore.remove(address);
117
+ }
118
+ },
102
119
  getAccount: (params, opts) => (0, getAccount_js_1.getAccount)(contextRef.require(), { address: params.address }, opts),
103
120
  accountExists: (params, opts) => (0, getAccountExists_js_1.getAccountExists)(contextRef.require(), { address: params.address }, opts),
104
121
  getDepositFlow: async () => ({
@@ -142,12 +159,12 @@ function hyperliquidProvider(options = {}) {
142
159
  formatOrderSize: (market, size) => (0, orderFormatting_js_1.formatOrderSize)(size, market.szDecimals),
143
160
  estimateLiquidationPrice: (market, params) => (0, liquidation_js_1.calculateLiquidationPrice)(params.entryPrice, params.leverage, params.isLong, market.maxLeverage),
144
161
  positionRemovableMargin: transferMargin_js_1.positionRemovableMargin,
145
- projectConfig: (config, setup, options) => {
162
+ projectConfig: (config, setup) => {
146
163
  if (config.provider !== constants_js_1.PROVIDER_KEY) {
147
164
  throw new perps_sdk_1.PerpsError(perps_types_1.PerpsErrorCode.SDKError, `hyperliquidProvider.projectConfig received config for provider ` +
148
165
  `'${config.provider}'.`);
149
166
  }
150
- return (0, accountConfig_js_1.projectHyperliquidConfigSettings)(config, setup, options);
167
+ return (0, accountConfig_js_1.projectHyperliquidConfigSettings)(config, setup);
151
168
  },
152
169
  };
153
170
  }
@@ -1 +1 @@
1
- {"version":3,"file":"HyperliquidProvider.js","sourceRoot":"","sources":["../../src/HyperliquidProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HyperliquidProvider.js","sourceRoot":"","sources":["../../src/HyperliquidProvider.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import type { AccountConfigSetting, HyperliquidAccountConfig, ProviderAction } from '@lifi/perps-types';
2
- export declare function projectHyperliquidConfigSettings(config: HyperliquidAccountConfig, setup: ProviderAction[], options: ProviderAction[]): AccountConfigSetting[];
1
+ import type { AccountConfigSetting, HyperliquidAccountConfig, SetupAction } from '@lifi/perps-types';
2
+ export declare function projectHyperliquidConfigSettings(config: HyperliquidAccountConfig, setup: SetupAction[]): AccountConfigSetting[];
3
3
  //# sourceMappingURL=accountConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"accountConfig.d.ts","sourceRoot":"","sources":["../../src/accountConfig.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EACpB,wBAAwB,EACxB,cAAc,EACf,MAAM,mBAAmB,CAAA;AAwF1B,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,cAAc,EAAE,EACvB,OAAO,EAAE,cAAc,EAAE,GACxB,oBAAoB,EAAE,CAIxB"}
1
+ {"version":3,"file":"accountConfig.d.ts","sourceRoot":"","sources":["../../src/accountConfig.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EACpB,wBAAwB,EACxB,WAAW,EACZ,MAAM,mBAAmB,CAAA;AAkH1B,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,WAAW,EAAE,GACnB,oBAAoB,EAAE,CAIxB"}
@@ -3,6 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.projectHyperliquidConfigSettings = projectHyperliquidConfigSettings;
4
4
  const perps_sdk_1 = require("@lifi/perps-sdk");
5
5
  const perps_types_1 = require("@lifi/perps-types");
6
+ const account_js_1 = require("./types/account.js");
7
+ const ABSTRACTION_OFF_VALUES = new Set([
8
+ account_js_1.HlAbstractionMode.DEFAULT,
9
+ account_js_1.HlAbstractionMode.DISABLED,
10
+ ]);
6
11
  function assertNever(value) {
7
12
  throw new Error(`Unreachable: exhaustiveness check failed for value ${JSON.stringify(value)}`);
8
13
  }
@@ -13,11 +18,20 @@ function projectHyperliquidDescriptor(descriptor, config) {
13
18
  case perps_types_1.ActionType.APPROVE_BUILDER_FEE:
14
19
  case perps_types_1.ActionType.SET_REFERRAL:
15
20
  return { type: descriptor.type, values: [] };
16
- case perps_types_1.ActionType.ACCOUNT_MODE:
21
+ case perps_types_1.ActionType.ACCOUNT_MODE: {
22
+ const mode = config.abstractionMode;
23
+ const bound = (descriptor.options ?? []).flatMap((option) => (0, perps_sdk_1.isSetupOptionFor)(option, perps_types_1.ActionType.ACCOUNT_MODE)
24
+ ? [option.params.mode]
25
+ : []);
26
+ const matched = mode === null || ABSTRACTION_OFF_VALUES.has(mode)
27
+ ? bound.find((value) => ABSTRACTION_OFF_VALUES.has(value))
28
+ : bound.find((value) => value === mode);
17
29
  return {
18
30
  type: descriptor.type,
19
- values: [{ name: 'mode', value: config.abstractionMode }],
31
+ values: [{ name: 'mode', value: matched ?? mode }],
32
+ satisfied: matched !== undefined,
20
33
  };
34
+ }
21
35
  case perps_types_1.ActionType.APPROVE_INTEGRATOR:
22
36
  case perps_types_1.ActionType.ACCOUNT_TYPE:
23
37
  case perps_types_1.ActionType.SEND_ASSET:
@@ -37,20 +51,24 @@ function projectHyperliquidDescriptor(descriptor, config) {
37
51
  case perps_types_1.ActionType.APPROVE_READ_ONLY_TOKEN:
38
52
  case perps_types_1.ActionType.SIWE_LOGIN:
39
53
  case perps_types_1.ActionType.CREATE_DEPOSIT_ADDRESS:
54
+ case perps_types_1.ActionType.ADD_WITHDRAWAL_ADDRESS:
40
55
  case perps_types_1.ActionType.ACCEPT_PROVIDER_TERMS:
41
56
  case perps_types_1.ActionType.DEPOSIT:
42
57
  case perps_types_1.ActionType.META_ACCEPT_TERMS:
43
58
  case perps_types_1.ActionType.META_ONBOARD:
44
59
  case perps_types_1.ActionType.META_CREATE_REFERRAL_CODE:
45
60
  case perps_types_1.ActionType.SYNC_FEE_ATTRIBUTION:
61
+ case perps_types_1.ActionType.REVOKE_BUILDER_FEE:
62
+ case perps_types_1.ActionType.REVOKE_SESSION_AGENT:
63
+ case perps_types_1.ActionType.REVOKE_INTEGRATOR:
46
64
  throw new perps_sdk_1.PerpsError(perps_types_1.PerpsErrorCode.SDKError, `Hyperliquid account-config mapper has no projection for ` +
47
65
  `descriptor type '${descriptor.type}' — this ActionType is not ` +
48
- `valid on Provider.setup / Provider.options for Hyperliquid.`);
66
+ `valid on Provider.setup for Hyperliquid.`);
49
67
  default:
50
68
  return assertNever(descriptor.type);
51
69
  }
52
70
  }
53
- function projectHyperliquidConfigSettings(config, setup, options) {
54
- return [...setup, ...options].map((descriptor) => projectHyperliquidDescriptor(descriptor, config));
71
+ function projectHyperliquidConfigSettings(config, setup) {
72
+ return setup.map((descriptor) => projectHyperliquidDescriptor(descriptor, config));
55
73
  }
56
74
  //# sourceMappingURL=accountConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"accountConfig.js","sourceRoot":"","sources":["../../src/accountConfig.ts"],"names":[],"mappings":";;AA6FA,4EAQC;AArGD,+CAA4C;AAM5C,mDAA8D;AAE9D,SAAS,WAAW,CAAC,KAAY;IAC/B,MAAM,IAAI,KAAK,CACb,sDAAsD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAC9E,CAAA;AACH,CAAC;AAoBD,SAAS,4BAA4B,CACnC,UAA0B,EAC1B,MAAgC;IAEhC,QAAQ,UAAU,CAAC,IAAI,EAAE,CAAC;QACxB,KAAK,wBAAU,CAAC,aAAa,CAAC;QAC9B,KAAK,wBAAU,CAAC,YAAY,CAAC;QAC7B,KAAK,wBAAU,CAAC,mBAAmB,CAAC;QACpC,KAAK,wBAAU,CAAC,YAAY;YAC1B,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;QAE9C,KAAK,wBAAU,CAAC,YAAY;YAC1B,OAAO;gBACL,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC;aAC1D,CAAA;QAEH,KAAK,wBAAU,CAAC,kBAAkB,CAAC;QACnC,KAAK,wBAAU,CAAC,YAAY,CAAC;QAC7B,KAAK,wBAAU,CAAC,UAAU,CAAC;QAC3B,KAAK,wBAAU,CAAC,UAAU,CAAC;QAC3B,KAAK,wBAAU,CAAC,QAAQ,CAAC;QACzB,KAAK,wBAAU,CAAC,WAAW,CAAC;QAC5B,KAAK,wBAAU,CAAC,mBAAmB,CAAC;QACpC,KAAK,wBAAU,CAAC,gBAAgB,CAAC;QACjC,KAAK,wBAAU,CAAC,YAAY,CAAC;QAC7B,KAAK,wBAAU,CAAC,iBAAiB,CAAC;QAClC,KAAK,wBAAU,CAAC,iBAAiB,CAAC;QAClC,KAAK,wBAAU,CAAC,YAAY,CAAC;QAC7B,KAAK,wBAAU,CAAC,eAAe,CAAC;QAChC,KAAK,wBAAU,CAAC,sBAAsB,CAAC;QACvC,KAAK,wBAAU,CAAC,uBAAuB,CAAC;QACxC,KAAK,wBAAU,CAAC,gBAAgB,CAAC;QACjC,KAAK,wBAAU,CAAC,uBAAuB,CAAC;QACxC,KAAK,wBAAU,CAAC,UAAU,CAAC;QAC3B,KAAK,wBAAU,CAAC,sBAAsB,CAAC;QACvC,KAAK,wBAAU,CAAC,qBAAqB,CAAC;QACtC,KAAK,wBAAU,CAAC,OAAO,CAAC;QACxB,KAAK,wBAAU,CAAC,iBAAiB,CAAC;QAClC,KAAK,wBAAU,CAAC,YAAY,CAAC;QAC7B,KAAK,wBAAU,CAAC,yBAAyB,CAAC;QAC1C,KAAK,wBAAU,CAAC,oBAAoB;YAClC,MAAM,IAAI,sBAAU,CAClB,4BAAc,CAAC,QAAQ,EACvB,0DAA0D;gBACxD,oBAAoB,UAAU,CAAC,IAAI,6BAA6B;gBAChE,6DAA6D,CAChE,CAAA;QAEH;YACE,OAAO,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IACvC,CAAC;AACH,CAAC;AASD,SAAgB,gCAAgC,CAC9C,MAAgC,EAChC,KAAuB,EACvB,OAAyB;IAEzB,OAAO,CAAC,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAC/C,4BAA4B,CAAC,UAAU,EAAE,MAAM,CAAC,CACjD,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"accountConfig.js","sourceRoot":"","sources":["../../src/accountConfig.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"signActions.d.ts","sourceRoot":"","sources":["../../../src/signers/signActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EAGxB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EACV,UAAU,EAGV,gBAAgB,EACjB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAA+B,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAC9E,OAAO,KAAK,EAAE,OAAO,EAAO,MAAM,MAAM,CAAA;AACxC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAYvE,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,qBAAqB,EACjC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,UAAU,EAAE,EACnB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,kBAAkB,GAAG,SAAS,GAClC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAsB7B"}
1
+ {"version":3,"file":"signActions.d.ts","sourceRoot":"","sources":["../../../src/signers/signActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EAGxB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EACV,UAAU,EAGV,gBAAgB,EACjB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAA+B,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAC9E,OAAO,KAAK,EAAE,OAAO,EAAO,MAAM,MAAM,CAAA;AACxC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAYvE,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,qBAAqB,EACjC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,UAAU,EAAE,EACnB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,kBAAkB,GAAG,SAAS,GAClC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAuB7B"}
@@ -8,7 +8,7 @@ async function hyperliquidSignActions(agentStore, method, steps, address, ctx) {
8
8
  throw new perps_sdk_1.PerpsError(perps_types_1.PerpsErrorCode.SDKError, `hyperliquidProvider.signActions: unsupported SigningMethod '${method}'. ` +
9
9
  'Hyperliquid only signs EIP712 actions.');
10
10
  }
11
- const sign = ctx?.signers?.includes(perps_types_1.PerpsSigner.USER)
11
+ const sign = ctx?.signer === perps_types_1.PerpsSigner.USER
12
12
  ? await userWalletSigner(ctx)
13
13
  : await agentSigner(agentStore, address);
14
14
  return Promise.all(steps.map(async (step) => ({
@@ -1 +1 @@
1
- {"version":3,"file":"signActions.js","sourceRoot":"","sources":["../../../src/signers/signActions.ts"],"names":[],"mappings":";;AA0BA,wDA4BC;AAtDD,+CAKwB;AAOxB,mDAA8E;AAcvE,KAAK,UAAU,sBAAsB,CAC1C,UAAiC,EACjC,MAAqB,EACrB,KAAmB,EACnB,OAAgB,EAChB,GAAmC;IAEnC,IAAI,MAAM,KAAK,2BAAa,CAAC,MAAM,EAAE,CAAC;QACpC,MAAM,IAAI,sBAAU,CAClB,4BAAc,CAAC,QAAQ,EACvB,+DAA+D,MAAM,KAAK;YACxE,wCAAwC,CAC3C,CAAA;IACH,CAAC;IAED,MAAM,IAAI,GAAG,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,yBAAW,CAAC,IAAI,CAAC;QACnD,CAAC,CAAC,MAAM,gBAAgB,CAAC,GAAG,CAAC;QAC7B,CAAC,CAAC,MAAM,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IAE1C,OAAO,OAAO,CAAC,GAAG,CACf,KAA4B,CAAC,GAAG,CAC/B,KAAK,EAAE,IAAI,EAAmC,EAAE,CAAC,CAAC;QAChD,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,SAAS,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC;KAC5B,CAAC,CACH,CACF,CAAA;AACH,CAAC;AAID,KAAK,UAAU,WAAW,CACxB,UAAiC,EACjC,OAAgB;IAEhB,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IAC3C,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,yBAAa,EAAC,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;AAClE,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAuB;IAC/C,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,CAAA;IAC7B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,sBAAU,CAClB,4BAAc,CAAC,QAAQ,EACvB,qEAAqE;YACnE,kEAAkE;YAClE,8BAA8B,CACjC,CAAA;IACH,CAAC;IACD,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAC9B,IAAA,mCAAuB,EAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAChD,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"signActions.js","sourceRoot":"","sources":["../../../src/signers/signActions.ts"],"names":[],"mappings":";;AA0BA,wDA6BC;AAvDD,+CAKwB;AAOxB,mDAA8E;AAcvE,KAAK,UAAU,sBAAsB,CAC1C,UAAiC,EACjC,MAAqB,EACrB,KAAmB,EACnB,OAAgB,EAChB,GAAmC;IAEnC,IAAI,MAAM,KAAK,2BAAa,CAAC,MAAM,EAAE,CAAC;QACpC,MAAM,IAAI,sBAAU,CAClB,4BAAc,CAAC,QAAQ,EACvB,+DAA+D,MAAM,KAAK;YACxE,wCAAwC,CAC3C,CAAA;IACH,CAAC;IAED,MAAM,IAAI,GACR,GAAG,EAAE,MAAM,KAAK,yBAAW,CAAC,IAAI;QAC9B,CAAC,CAAC,MAAM,gBAAgB,CAAC,GAAG,CAAC;QAC7B,CAAC,CAAC,MAAM,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IAE5C,OAAO,OAAO,CAAC,GAAG,CACf,KAA4B,CAAC,GAAG,CAC/B,KAAK,EAAE,IAAI,EAAmC,EAAE,CAAC,CAAC;QAChD,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,SAAS,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC;KAC5B,CAAC,CACH,CACF,CAAA;AACH,CAAC;AAID,KAAK,UAAU,WAAW,CACxB,UAAiC,EACjC,OAAgB;IAEhB,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IAC3C,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,yBAAa,EAAC,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;AAClE,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAuB;IAC/C,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,CAAA;IAC7B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,sBAAU,CAClB,4BAAc,CAAC,QAAQ,EACvB,qEAAqE;YACnE,kEAAkE;YAClE,8BAA8B,CACjC,CAAA;IACH,CAAC;IACD,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAC9B,IAAA,mCAAuB,EAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAChD,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"HyperliquidProvider.d.ts","sourceRoot":"","sources":["../../src/HyperliquidProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,mBAAmB,EAkBxB,KAAK,cAAc,EACpB,MAAM,iBAAiB,CAAA;AA0BxB,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,GAAG,EAAa,MAAM,MAAM,CAAA;AAqBxD,OAAO,EACL,KAAK,gBAAgB,EAEtB,MAAM,oCAAoC,CAAA;AAQ3C;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;;;OAIG;IACH,OAAO,CAAC,EAAE,cAAc,CAAA;CACzB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,wBAAyB,SAAQ,mBAAmB;IACnE;;;OAGG;IACH,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACnD,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAC5C;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5C;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;CAC1E;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,GAAE,0BAA+B,GACvC,wBAAwB,CA0T1B"}
1
+ {"version":3,"file":"HyperliquidProvider.d.ts","sourceRoot":"","sources":["../../src/HyperliquidProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,mBAAmB,EAkBxB,KAAK,cAAc,EACpB,MAAM,iBAAiB,CAAA;AA2BxB,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,GAAG,EAAa,MAAM,MAAM,CAAA;AAqBxD,OAAO,EACL,KAAK,gBAAgB,EAEtB,MAAM,oCAAoC,CAAA;AAQ3C;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;;;OAIG;IACH,OAAO,CAAC,EAAE,cAAc,CAAA;CACzB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,wBAAyB,SAAQ,mBAAmB;IACnE;;;OAGG;IACH,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACnD,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAC5C;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5C;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;CAC1E;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,GAAE,0BAA+B,GACvC,wBAAwB,CA0V1B"}
@@ -100,7 +100,6 @@ export function hyperliquidProvider(options = {}) {
100
100
  };
101
101
  return {
102
102
  type: PROVIDER_KEY,
103
- internalSetupActions: [ActionType.SET_REFERRAL],
104
103
  // REVOKE_AGENT stages a step only when every named agent slot is taken,
105
104
  // so `checkSetup` omits it from `ProviderSetup.checklist` instead of
106
105
  // rendering it as a satisfied step.
@@ -110,7 +109,7 @@ export function hyperliquidProvider(options = {}) {
110
109
  hasAgent: (address) => agentStore.has(address),
111
110
  removeAgent: (address) => agentStore.remove(address),
112
111
  importAgent: (address, privateKey) => agentStore.import(address, privateKey),
113
- resolveActionRequest: async (action, address, signers) => {
112
+ resolveActionRequest: async (action, address, signer) => {
114
113
  // APPROVE_AGENT is user-signed: the user authorises the agent, so the
115
114
  // agent address rides as a param (not signerAddress). The agent is
116
115
  // provisioned on first use so its address is known before the backend
@@ -119,16 +118,38 @@ export function hyperliquidProvider(options = {}) {
119
118
  const agentAddress = await resolveApproveAgentAddress(address);
120
119
  return { params: { agentAddress } };
121
120
  }
122
- // SDK-signed actions (trades, account-mode) carry the agent as the
123
- // on-wire signerAddress. User-signed actions (builder-fee, withdrawal)
124
- // contribute nothing — core submits under the user's own address.
125
- if (signers.includes(PerpsSigner.SDK)) {
121
+ // REVOKE_SESSION_AGENT targets the stored agent by address and never
122
+ // provisions one: with no stored agent there is nothing to revoke.
123
+ if (action === ActionType.REVOKE_SESSION_AGENT) {
124
+ try {
125
+ const agent = await agentStore.get(address);
126
+ return { params: { agentAddress: agent.address } };
127
+ }
128
+ catch (error) {
129
+ if (error instanceof PerpsError &&
130
+ error.message === PerpsErrorMessage.AgentNotFound) {
131
+ throw new PerpsError(PerpsErrorCode.SDKError, `Nothing to revoke for '${action}' on '${PROVIDER_KEY}': no session agent is stored for ${address}.`);
132
+ }
133
+ throw error;
134
+ }
135
+ }
136
+ // SDK-signed actions (trades) carry the agent as the on-wire
137
+ // signerAddress. User-signed actions (builder-fee, account mode,
138
+ // withdrawal) contribute nothing — core submits under the user's own
139
+ // address.
140
+ if (signer === PerpsSigner.SDK) {
126
141
  const agent = await agentStore.get(address);
127
142
  return { signerAddress: agent.address };
128
143
  }
129
144
  return {};
130
145
  },
131
146
  signActions: (method, steps, address, ctx) => hyperliquidSignActions(agentStore, method, steps, address, ctx),
147
+ // A confirmed session-agent revoke leaves the stored key unusable.
148
+ onExecuteResults: async (address, results) => {
149
+ if (results.some((result) => result.success && result.action === ActionType.REVOKE_SESSION_AGENT)) {
150
+ await agentStore.remove(address);
151
+ }
152
+ },
132
153
  getAccount: (params, opts) => getAccount(contextRef.require(), { address: params.address }, opts),
133
154
  accountExists: (params, opts) => getAccountExists(contextRef.require(), { address: params.address }, opts),
134
155
  // Hyperliquid credits the venue account from a deposit of its venue-chain
@@ -175,12 +196,12 @@ export function hyperliquidProvider(options = {}) {
175
196
  formatOrderSize: (market, size) => formatOrderSize(size, market.szDecimals),
176
197
  estimateLiquidationPrice: (market, params) => calculateLiquidationPrice(params.entryPrice, params.leverage, params.isLong, market.maxLeverage),
177
198
  positionRemovableMargin,
178
- projectConfig: (config, setup, options) => {
199
+ projectConfig: (config, setup) => {
179
200
  if (config.provider !== PROVIDER_KEY) {
180
201
  throw new PerpsError(PerpsErrorCode.SDKError, `hyperliquidProvider.projectConfig received config for provider ` +
181
202
  `'${config.provider}'.`);
182
203
  }
183
- return projectHyperliquidConfigSettings(config, setup, options);
204
+ return projectHyperliquidConfigSettings(config, setup);
184
205
  },
185
206
  };
186
207
  }
@@ -1 +1 @@
1
- {"version":3,"file":"HyperliquidProvider.js","sourceRoot":"","sources":["../../src/HyperliquidProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HyperliquidProvider.js","sourceRoot":"","sources":["../../src/HyperliquidProvider.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
- import type { AccountConfigSetting, HyperliquidAccountConfig, ProviderAction } from '@lifi/perps-types';
1
+ import type { AccountConfigSetting, HyperliquidAccountConfig, SetupAction } from '@lifi/perps-types';
2
2
  /**
3
- * Project the union of Hyperliquid setup + options descriptors against the
4
- * typed `HyperliquidAccountConfig`. Produces exactly one
5
- * `AccountConfigSetting` per descriptor, in `setup`-then-`options` order.
3
+ * Project the Hyperliquid setup descriptors against the typed
4
+ * `HyperliquidAccountConfig`. Produces exactly one `AccountConfigSetting` per
5
+ * descriptor, in `Provider.setup` order.
6
6
  *
7
7
  * @public
8
8
  */
9
- export declare function projectHyperliquidConfigSettings(config: HyperliquidAccountConfig, setup: ProviderAction[], options: ProviderAction[]): AccountConfigSetting[];
9
+ export declare function projectHyperliquidConfigSettings(config: HyperliquidAccountConfig, setup: SetupAction[]): AccountConfigSetting[];
10
10
  //# sourceMappingURL=accountConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"accountConfig.d.ts","sourceRoot":"","sources":["../../src/accountConfig.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EACpB,wBAAwB,EACxB,cAAc,EACf,MAAM,mBAAmB,CAAA;AAiF1B;;;;;;GAMG;AACH,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,cAAc,EAAE,EACvB,OAAO,EAAE,cAAc,EAAE,GACxB,oBAAoB,EAAE,CAIxB"}
1
+ {"version":3,"file":"accountConfig.d.ts","sourceRoot":"","sources":["../../src/accountConfig.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EACpB,wBAAwB,EACxB,WAAW,EACZ,MAAM,mBAAmB,CAAA;AA2G1B;;;;;;GAMG;AACH,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,WAAW,EAAE,GACnB,oBAAoB,EAAE,CAIxB"}
@@ -1,5 +1,12 @@
1
- import { PerpsError } from '@lifi/perps-sdk';
1
+ import { isSetupOptionFor, PerpsError } from '@lifi/perps-sdk';
2
2
  import { ActionType, PerpsErrorCode } from '@lifi/perps-types';
3
+ import { HlAbstractionMode } from './types/account.js';
4
+ // `null`, `'default'` and `'disabled'` are the same off state; an option may
5
+ // bind either spelling of it.
6
+ const ABSTRACTION_OFF_VALUES = new Set([
7
+ HlAbstractionMode.DEFAULT,
8
+ HlAbstractionMode.DISABLED,
9
+ ]);
3
10
  function assertNever(value) {
4
11
  throw new Error(`Unreachable: exhaustiveness check failed for value ${JSON.stringify(value)}`);
5
12
  }
@@ -15,11 +22,11 @@ function assertNever(value) {
15
22
  * | REVOKE_AGENT | [] (no parameters)
16
23
  * | APPROVE_BUILDER_FEE | [] (no parameters)
17
24
  * | SET_REFERRAL | [] (no parameters)
18
- * | ACCOUNT_MODE | [{ name: 'mode', value: config.abstractionMode }]
25
+ * | ACCOUNT_MODE | [{ name: 'mode', value: config.abstractionMode }] (off → bound off spelling)
19
26
  *
20
27
  * The switch is exhaustive over `ActionType` so enum additions force a
21
28
  * compile error in the `default` arm. ActionTypes that are not valid on
22
- * `Provider.setup` / `Provider.options` for Hyperliquid throw at runtime.
29
+ * `Provider.setup` for Hyperliquid throw at runtime.
23
30
  */
24
31
  function projectHyperliquidDescriptor(descriptor, config) {
25
32
  switch (descriptor.type) {
@@ -28,11 +35,22 @@ function projectHyperliquidDescriptor(descriptor, config) {
28
35
  case ActionType.APPROVE_BUILDER_FEE:
29
36
  case ActionType.SET_REFERRAL:
30
37
  return { type: descriptor.type, values: [] };
31
- case ActionType.ACCOUNT_MODE:
38
+ case ActionType.ACCOUNT_MODE: {
39
+ const mode = config.abstractionMode;
40
+ const bound = (descriptor.options ?? []).flatMap((option) => isSetupOptionFor(option, ActionType.ACCOUNT_MODE)
41
+ ? [option.params.mode]
42
+ : []);
43
+ // The off state projects as whichever off spelling an option binds, so
44
+ // the value always matches the option it is satisfied by.
45
+ const matched = mode === null || ABSTRACTION_OFF_VALUES.has(mode)
46
+ ? bound.find((value) => ABSTRACTION_OFF_VALUES.has(value))
47
+ : bound.find((value) => value === mode);
32
48
  return {
33
49
  type: descriptor.type,
34
- values: [{ name: 'mode', value: config.abstractionMode }],
50
+ values: [{ name: 'mode', value: matched ?? mode }],
51
+ satisfied: matched !== undefined,
35
52
  };
53
+ }
36
54
  case ActionType.APPROVE_INTEGRATOR:
37
55
  case ActionType.ACCOUNT_TYPE:
38
56
  case ActionType.SEND_ASSET:
@@ -52,27 +70,31 @@ function projectHyperliquidDescriptor(descriptor, config) {
52
70
  case ActionType.APPROVE_READ_ONLY_TOKEN:
53
71
  case ActionType.SIWE_LOGIN:
54
72
  case ActionType.CREATE_DEPOSIT_ADDRESS:
73
+ case ActionType.ADD_WITHDRAWAL_ADDRESS:
55
74
  case ActionType.ACCEPT_PROVIDER_TERMS:
56
75
  case ActionType.DEPOSIT:
57
76
  case ActionType.META_ACCEPT_TERMS:
58
77
  case ActionType.META_ONBOARD:
59
78
  case ActionType.META_CREATE_REFERRAL_CODE:
60
79
  case ActionType.SYNC_FEE_ATTRIBUTION:
80
+ case ActionType.REVOKE_BUILDER_FEE:
81
+ case ActionType.REVOKE_SESSION_AGENT:
82
+ case ActionType.REVOKE_INTEGRATOR:
61
83
  throw new PerpsError(PerpsErrorCode.SDKError, `Hyperliquid account-config mapper has no projection for ` +
62
84
  `descriptor type '${descriptor.type}' — this ActionType is not ` +
63
- `valid on Provider.setup / Provider.options for Hyperliquid.`);
85
+ `valid on Provider.setup for Hyperliquid.`);
64
86
  default:
65
87
  return assertNever(descriptor.type);
66
88
  }
67
89
  }
68
90
  /**
69
- * Project the union of Hyperliquid setup + options descriptors against the
70
- * typed `HyperliquidAccountConfig`. Produces exactly one
71
- * `AccountConfigSetting` per descriptor, in `setup`-then-`options` order.
91
+ * Project the Hyperliquid setup descriptors against the typed
92
+ * `HyperliquidAccountConfig`. Produces exactly one `AccountConfigSetting` per
93
+ * descriptor, in `Provider.setup` order.
72
94
  *
73
95
  * @public
74
96
  */
75
- export function projectHyperliquidConfigSettings(config, setup, options) {
76
- return [...setup, ...options].map((descriptor) => projectHyperliquidDescriptor(descriptor, config));
97
+ export function projectHyperliquidConfigSettings(config, setup) {
98
+ return setup.map((descriptor) => projectHyperliquidDescriptor(descriptor, config));
77
99
  }
78
100
  //# sourceMappingURL=accountConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"accountConfig.js","sourceRoot":"","sources":["../../src/accountConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAM5C,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAE9D,SAAS,WAAW,CAAC,KAAY;IAC/B,MAAM,IAAI,KAAK,CACb,sDAAsD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAC9E,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAS,4BAA4B,CACnC,UAA0B,EAC1B,MAAgC;IAEhC,QAAQ,UAAU,CAAC,IAAI,EAAE,CAAC;QACxB,KAAK,UAAU,CAAC,aAAa,CAAC;QAC9B,KAAK,UAAU,CAAC,YAAY,CAAC;QAC7B,KAAK,UAAU,CAAC,mBAAmB,CAAC;QACpC,KAAK,UAAU,CAAC,YAAY;YAC1B,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;QAE9C,KAAK,UAAU,CAAC,YAAY;YAC1B,OAAO;gBACL,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC;aAC1D,CAAA;QAEH,KAAK,UAAU,CAAC,kBAAkB,CAAC;QACnC,KAAK,UAAU,CAAC,YAAY,CAAC;QAC7B,KAAK,UAAU,CAAC,UAAU,CAAC;QAC3B,KAAK,UAAU,CAAC,UAAU,CAAC;QAC3B,KAAK,UAAU,CAAC,QAAQ,CAAC;QACzB,KAAK,UAAU,CAAC,WAAW,CAAC;QAC5B,KAAK,UAAU,CAAC,mBAAmB,CAAC;QACpC,KAAK,UAAU,CAAC,gBAAgB,CAAC;QACjC,KAAK,UAAU,CAAC,YAAY,CAAC;QAC7B,KAAK,UAAU,CAAC,iBAAiB,CAAC;QAClC,KAAK,UAAU,CAAC,iBAAiB,CAAC;QAClC,KAAK,UAAU,CAAC,YAAY,CAAC;QAC7B,KAAK,UAAU,CAAC,eAAe,CAAC;QAChC,KAAK,UAAU,CAAC,sBAAsB,CAAC;QACvC,KAAK,UAAU,CAAC,uBAAuB,CAAC;QACxC,KAAK,UAAU,CAAC,gBAAgB,CAAC;QACjC,KAAK,UAAU,CAAC,uBAAuB,CAAC;QACxC,KAAK,UAAU,CAAC,UAAU,CAAC;QAC3B,KAAK,UAAU,CAAC,sBAAsB,CAAC;QACvC,KAAK,UAAU,CAAC,qBAAqB,CAAC;QACtC,KAAK,UAAU,CAAC,OAAO,CAAC;QACxB,KAAK,UAAU,CAAC,iBAAiB,CAAC;QAClC,KAAK,UAAU,CAAC,YAAY,CAAC;QAC7B,KAAK,UAAU,CAAC,yBAAyB,CAAC;QAC1C,KAAK,UAAU,CAAC,oBAAoB;YAClC,MAAM,IAAI,UAAU,CAClB,cAAc,CAAC,QAAQ,EACvB,0DAA0D;gBACxD,oBAAoB,UAAU,CAAC,IAAI,6BAA6B;gBAChE,6DAA6D,CAChE,CAAA;QAEH;YACE,OAAO,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IACvC,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gCAAgC,CAC9C,MAAgC,EAChC,KAAuB,EACvB,OAAyB;IAEzB,OAAO,CAAC,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAC/C,4BAA4B,CAAC,UAAU,EAAE,MAAM,CAAC,CACjD,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"accountConfig.js","sourceRoot":"","sources":["../../src/accountConfig.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"signActions.d.ts","sourceRoot":"","sources":["../../../src/signers/signActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EAGxB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EACV,UAAU,EAGV,gBAAgB,EACjB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAA+B,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAC9E,OAAO,KAAK,EAAE,OAAO,EAAO,MAAM,MAAM,CAAA;AACxC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAEvE;;;;;;;;;GASG;AACH,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,qBAAqB,EACjC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,UAAU,EAAE,EACnB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,kBAAkB,GAAG,SAAS,GAClC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAsB7B"}
1
+ {"version":3,"file":"signActions.d.ts","sourceRoot":"","sources":["../../../src/signers/signActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EAGxB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EACV,UAAU,EAGV,gBAAgB,EACjB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAA+B,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAC9E,OAAO,KAAK,EAAE,OAAO,EAAO,MAAM,MAAM,CAAA;AACxC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAEvE;;;;;;;;;GASG;AACH,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,qBAAqB,EACjC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,UAAU,EAAE,EACnB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,kBAAkB,GAAG,SAAS,GAClC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAuB7B"}
@@ -15,7 +15,7 @@ export async function hyperliquidSignActions(agentStore, method, steps, address,
15
15
  throw new PerpsError(PerpsErrorCode.SDKError, `hyperliquidProvider.signActions: unsupported SigningMethod '${method}'. ` +
16
16
  'Hyperliquid only signs EIP712 actions.');
17
17
  }
18
- const sign = ctx?.signers?.includes(PerpsSigner.USER)
18
+ const sign = ctx?.signer === PerpsSigner.USER
19
19
  ? await userWalletSigner(ctx)
20
20
  : await agentSigner(agentStore, address);
21
21
  return Promise.all(steps.map(async (step) => ({
@@ -1 +1 @@
1
- {"version":3,"file":"signActions.js","sourceRoot":"","sources":["../../../src/signers/signActions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAEV,aAAa,EACb,uBAAuB,GACxB,MAAM,iBAAiB,CAAA;AAOxB,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAI9E;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,UAAiC,EACjC,MAAqB,EACrB,KAAmB,EACnB,OAAgB,EAChB,GAAmC;IAEnC,IAAI,MAAM,KAAK,aAAa,CAAC,MAAM,EAAE,CAAC;QACpC,MAAM,IAAI,UAAU,CAClB,cAAc,CAAC,QAAQ,EACvB,+DAA+D,MAAM,KAAK;YACxE,wCAAwC,CAC3C,CAAA;IACH,CAAC;IAED,MAAM,IAAI,GAAG,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC;QACnD,CAAC,CAAC,MAAM,gBAAgB,CAAC,GAAG,CAAC;QAC7B,CAAC,CAAC,MAAM,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IAE1C,OAAO,OAAO,CAAC,GAAG,CACf,KAA4B,CAAC,GAAG,CAC/B,KAAK,EAAE,IAAI,EAAmC,EAAE,CAAC,CAAC;QAChD,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,SAAS,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC;KAC5B,CAAC,CACH,CACF,CAAA;AACH,CAAC;AAID,KAAK,UAAU,WAAW,CACxB,UAAiC,EACjC,OAAgB;IAEhB,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IAC3C,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;AAClE,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAuB;IAC/C,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,CAAA;IAC7B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,UAAU,CAClB,cAAc,CAAC,QAAQ,EACvB,qEAAqE;YACnE,kEAAkE;YAClE,8BAA8B,CACjC,CAAA;IACH,CAAC;IACD,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAC9B,uBAAuB,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAChD,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"signActions.js","sourceRoot":"","sources":["../../../src/signers/signActions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAEV,aAAa,EACb,uBAAuB,GACxB,MAAM,iBAAiB,CAAA;AAOxB,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAI9E;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,UAAiC,EACjC,MAAqB,EACrB,KAAmB,EACnB,OAAgB,EAChB,GAAmC;IAEnC,IAAI,MAAM,KAAK,aAAa,CAAC,MAAM,EAAE,CAAC;QACpC,MAAM,IAAI,UAAU,CAClB,cAAc,CAAC,QAAQ,EACvB,+DAA+D,MAAM,KAAK;YACxE,wCAAwC,CAC3C,CAAA;IACH,CAAC;IAED,MAAM,IAAI,GACR,GAAG,EAAE,MAAM,KAAK,WAAW,CAAC,IAAI;QAC9B,CAAC,CAAC,MAAM,gBAAgB,CAAC,GAAG,CAAC;QAC7B,CAAC,CAAC,MAAM,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IAE5C,OAAO,OAAO,CAAC,GAAG,CACf,KAA4B,CAAC,GAAG,CAC/B,KAAK,EAAE,IAAI,EAAmC,EAAE,CAAC,CAAC;QAChD,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,SAAS,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC;KAC5B,CAAC,CACH,CACF,CAAA;AACH,CAAC;AAID,KAAK,UAAU,WAAW,CACxB,UAAiC,EACjC,OAAgB;IAEhB,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IAC3C,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;AAClE,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAuB;IAC/C,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,CAAA;IAC7B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,UAAU,CAClB,cAAc,CAAC,QAAQ,EACvB,qEAAqE;YACnE,kEAAkE;YAClE,8BAA8B,CACjC,CAAA;IACH,CAAC;IACD,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAC9B,uBAAuB,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAChD,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"HyperliquidProvider.d.ts","sourceRoot":"","sources":["../../src/HyperliquidProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,mBAAmB,EAkBxB,KAAK,cAAc,EACpB,MAAM,iBAAiB,CAAA;AA0BxB,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,GAAG,EAAa,MAAM,MAAM,CAAA;AAqBxD,OAAO,EACL,KAAK,gBAAgB,EAEtB,MAAM,oCAAoC,CAAA;AAQ3C;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;;;OAIG;IACH,OAAO,CAAC,EAAE,cAAc,CAAA;CACzB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,wBAAyB,SAAQ,mBAAmB;IACnE;;;OAGG;IACH,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACnD,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAC5C;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5C;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;CAC1E;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,GAAE,0BAA+B,GACvC,wBAAwB,CA0T1B"}
1
+ {"version":3,"file":"HyperliquidProvider.d.ts","sourceRoot":"","sources":["../../src/HyperliquidProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,mBAAmB,EAkBxB,KAAK,cAAc,EACpB,MAAM,iBAAiB,CAAA;AA2BxB,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,GAAG,EAAa,MAAM,MAAM,CAAA;AAqBxD,OAAO,EACL,KAAK,gBAAgB,EAEtB,MAAM,oCAAoC,CAAA;AAQ3C;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;;;OAIG;IACH,OAAO,CAAC,EAAE,cAAc,CAAA;CACzB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,wBAAyB,SAAQ,mBAAmB;IACnE;;;OAGG;IACH,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACnD,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAC5C;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5C;;;OAGG;IACH,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;CAC1E;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,GAAE,0BAA+B,GACvC,wBAAwB,CA0V1B"}
@@ -1,10 +1,10 @@
1
- import type { AccountConfigSetting, HyperliquidAccountConfig, ProviderAction } from '@lifi/perps-types';
1
+ import type { AccountConfigSetting, HyperliquidAccountConfig, SetupAction } from '@lifi/perps-types';
2
2
  /**
3
- * Project the union of Hyperliquid setup + options descriptors against the
4
- * typed `HyperliquidAccountConfig`. Produces exactly one
5
- * `AccountConfigSetting` per descriptor, in `setup`-then-`options` order.
3
+ * Project the Hyperliquid setup descriptors against the typed
4
+ * `HyperliquidAccountConfig`. Produces exactly one `AccountConfigSetting` per
5
+ * descriptor, in `Provider.setup` order.
6
6
  *
7
7
  * @public
8
8
  */
9
- export declare function projectHyperliquidConfigSettings(config: HyperliquidAccountConfig, setup: ProviderAction[], options: ProviderAction[]): AccountConfigSetting[];
9
+ export declare function projectHyperliquidConfigSettings(config: HyperliquidAccountConfig, setup: SetupAction[]): AccountConfigSetting[];
10
10
  //# sourceMappingURL=accountConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"accountConfig.d.ts","sourceRoot":"","sources":["../../src/accountConfig.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EACpB,wBAAwB,EACxB,cAAc,EACf,MAAM,mBAAmB,CAAA;AAiF1B;;;;;;GAMG;AACH,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,cAAc,EAAE,EACvB,OAAO,EAAE,cAAc,EAAE,GACxB,oBAAoB,EAAE,CAIxB"}
1
+ {"version":3,"file":"accountConfig.d.ts","sourceRoot":"","sources":["../../src/accountConfig.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EACpB,wBAAwB,EACxB,WAAW,EACZ,MAAM,mBAAmB,CAAA;AA2G1B;;;;;;GAMG;AACH,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,WAAW,EAAE,GACnB,oBAAoB,EAAE,CAIxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"signActions.d.ts","sourceRoot":"","sources":["../../../src/signers/signActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EAGxB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EACV,UAAU,EAGV,gBAAgB,EACjB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAA+B,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAC9E,OAAO,KAAK,EAAE,OAAO,EAAO,MAAM,MAAM,CAAA;AACxC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAEvE;;;;;;;;;GASG;AACH,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,qBAAqB,EACjC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,UAAU,EAAE,EACnB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,kBAAkB,GAAG,SAAS,GAClC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAsB7B"}
1
+ {"version":3,"file":"signActions.d.ts","sourceRoot":"","sources":["../../../src/signers/signActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EAGxB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EACV,UAAU,EAGV,gBAAgB,EACjB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAA+B,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAC9E,OAAO,KAAK,EAAE,OAAO,EAAO,MAAM,MAAM,CAAA;AACxC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAEvE;;;;;;;;;GASG;AACH,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,qBAAqB,EACjC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,UAAU,EAAE,EACnB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,kBAAkB,GAAG,SAAS,GAClC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAuB7B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lifi/perps-sdk-provider-hyperliquid",
3
- "version": "18.1.0",
3
+ "version": "19.0.0",
4
4
  "description": "Hyperliquid provider plugin for @lifi/perps-sdk",
5
5
  "homepage": "https://github.com/lifinance/perps-sdk",
6
6
  "bugs": {
@@ -49,10 +49,10 @@
49
49
  "dependencies": {
50
50
  "big.js": "^7.0.1",
51
51
  "viem": "^2.55.18",
52
- "@lifi/perps-types": "^16.1.0"
52
+ "@lifi/perps-types": "^17.0.0"
53
53
  },
54
54
  "peerDependencies": {
55
- "@lifi/perps-sdk": "^18.0.0"
55
+ "@lifi/perps-sdk": "^19.0.0"
56
56
  },
57
57
  "publishConfig": {
58
58
  "access": "public"
@@ -30,6 +30,7 @@ import {
30
30
  type AccountConfigSetting,
31
31
  type AccountResponse,
32
32
  type AccountSummary,
33
+ type ActionResult,
33
34
  type ActionStep,
34
35
  ActionType,
35
36
  type ActivitiesResponse,
@@ -45,8 +46,8 @@ import {
45
46
  type PortfolioHistoryResponse,
46
47
  type Position,
47
48
  type PositionsResponse,
48
- type ProviderAction,
49
49
  type Quote,
50
+ type SetupAction,
50
51
  type SignedActionStep,
51
52
  type SigningMethod,
52
53
  } from '@lifi/perps-types'
@@ -229,8 +230,6 @@ export function hyperliquidProvider(
229
230
  return {
230
231
  type: PROVIDER_KEY,
231
232
 
232
- internalSetupActions: [ActionType.SET_REFERRAL],
233
-
234
233
  // REVOKE_AGENT stages a step only when every named agent slot is taken,
235
234
  // so `checkSetup` omits it from `ProviderSetup.checklist` instead of
236
235
  // rendering it as a satisfied step.
@@ -254,7 +253,7 @@ export function hyperliquidProvider(
254
253
  resolveActionRequest: async (
255
254
  action: ActionType,
256
255
  address: Address,
257
- signers: PerpsSigner[]
256
+ signer: PerpsSigner
258
257
  ): Promise<ActionSignerContribution> => {
259
258
  // APPROVE_AGENT is user-signed: the user authorises the agent, so the
260
259
  // agent address rides as a param (not signerAddress). The agent is
@@ -264,10 +263,30 @@ export function hyperliquidProvider(
264
263
  const agentAddress = await resolveApproveAgentAddress(address)
265
264
  return { params: { agentAddress } }
266
265
  }
267
- // SDK-signed actions (trades, account-mode) carry the agent as the
268
- // on-wire signerAddress. User-signed actions (builder-fee, withdrawal)
269
- // contribute nothing — core submits under the user's own address.
270
- if (signers.includes(PerpsSigner.SDK)) {
266
+ // REVOKE_SESSION_AGENT targets the stored agent by address and never
267
+ // provisions one: with no stored agent there is nothing to revoke.
268
+ if (action === ActionType.REVOKE_SESSION_AGENT) {
269
+ try {
270
+ const agent = await agentStore.get(address)
271
+ return { params: { agentAddress: agent.address } }
272
+ } catch (error) {
273
+ if (
274
+ error instanceof PerpsError &&
275
+ error.message === PerpsErrorMessage.AgentNotFound
276
+ ) {
277
+ throw new PerpsError(
278
+ PerpsErrorCode.SDKError,
279
+ `Nothing to revoke for '${action}' on '${PROVIDER_KEY}': no session agent is stored for ${address}.`
280
+ )
281
+ }
282
+ throw error
283
+ }
284
+ }
285
+ // SDK-signed actions (trades) carry the agent as the on-wire
286
+ // signerAddress. User-signed actions (builder-fee, account mode,
287
+ // withdrawal) contribute nothing — core submits under the user's own
288
+ // address.
289
+ if (signer === PerpsSigner.SDK) {
271
290
  const agent = await agentStore.get(address)
272
291
  return { signerAddress: agent.address }
273
292
  }
@@ -282,6 +301,21 @@ export function hyperliquidProvider(
282
301
  ): Promise<SignedActionStep[]> =>
283
302
  hyperliquidSignActions(agentStore, method, steps, address, ctx),
284
303
 
304
+ // A confirmed session-agent revoke leaves the stored key unusable.
305
+ onExecuteResults: async (
306
+ address: Address,
307
+ results: ActionResult[]
308
+ ): Promise<void> => {
309
+ if (
310
+ results.some(
311
+ (result) =>
312
+ result.success && result.action === ActionType.REVOKE_SESSION_AGENT
313
+ )
314
+ ) {
315
+ await agentStore.remove(address)
316
+ }
317
+ },
318
+
285
319
  getAccount: (
286
320
  params: ProviderGetAccountParams,
287
321
  opts?: SDKRequestOptions
@@ -456,8 +490,7 @@ export function hyperliquidProvider(
456
490
 
457
491
  projectConfig: (
458
492
  config: AccountConfig,
459
- setup: ProviderAction[],
460
- options: ProviderAction[]
493
+ setup: SetupAction[]
461
494
  ): AccountConfigSetting[] => {
462
495
  if (config.provider !== PROVIDER_KEY) {
463
496
  throw new PerpsError(
@@ -466,7 +499,7 @@ export function hyperliquidProvider(
466
499
  `'${config.provider}'.`
467
500
  )
468
501
  }
469
- return projectHyperliquidConfigSettings(config, setup, options)
502
+ return projectHyperliquidConfigSettings(config, setup)
470
503
  },
471
504
  }
472
505
  }
@@ -1,10 +1,18 @@
1
- import { PerpsError } from '@lifi/perps-sdk'
1
+ import { isSetupOptionFor, PerpsError } from '@lifi/perps-sdk'
2
2
  import type {
3
3
  AccountConfigSetting,
4
4
  HyperliquidAccountConfig,
5
- ProviderAction,
5
+ SetupAction,
6
6
  } from '@lifi/perps-types'
7
7
  import { ActionType, PerpsErrorCode } from '@lifi/perps-types'
8
+ import { HlAbstractionMode } from './types/account.js'
9
+
10
+ // `null`, `'default'` and `'disabled'` are the same off state; an option may
11
+ // bind either spelling of it.
12
+ const ABSTRACTION_OFF_VALUES: ReadonlySet<string> = new Set([
13
+ HlAbstractionMode.DEFAULT,
14
+ HlAbstractionMode.DISABLED,
15
+ ])
8
16
 
9
17
  function assertNever(value: never): never {
10
18
  throw new Error(
@@ -24,14 +32,14 @@ function assertNever(value: never): never {
24
32
  * | REVOKE_AGENT | [] (no parameters)
25
33
  * | APPROVE_BUILDER_FEE | [] (no parameters)
26
34
  * | SET_REFERRAL | [] (no parameters)
27
- * | ACCOUNT_MODE | [{ name: 'mode', value: config.abstractionMode }]
35
+ * | ACCOUNT_MODE | [{ name: 'mode', value: config.abstractionMode }] (off → bound off spelling)
28
36
  *
29
37
  * The switch is exhaustive over `ActionType` so enum additions force a
30
38
  * compile error in the `default` arm. ActionTypes that are not valid on
31
- * `Provider.setup` / `Provider.options` for Hyperliquid throw at runtime.
39
+ * `Provider.setup` for Hyperliquid throw at runtime.
32
40
  */
33
41
  function projectHyperliquidDescriptor(
34
- descriptor: ProviderAction,
42
+ descriptor: SetupAction,
35
43
  config: HyperliquidAccountConfig
36
44
  ): AccountConfigSetting {
37
45
  switch (descriptor.type) {
@@ -41,11 +49,25 @@ function projectHyperliquidDescriptor(
41
49
  case ActionType.SET_REFERRAL:
42
50
  return { type: descriptor.type, values: [] }
43
51
 
44
- case ActionType.ACCOUNT_MODE:
52
+ case ActionType.ACCOUNT_MODE: {
53
+ const mode = config.abstractionMode
54
+ const bound = (descriptor.options ?? []).flatMap((option) =>
55
+ isSetupOptionFor(option, ActionType.ACCOUNT_MODE)
56
+ ? [option.params.mode]
57
+ : []
58
+ )
59
+ // The off state projects as whichever off spelling an option binds, so
60
+ // the value always matches the option it is satisfied by.
61
+ const matched =
62
+ mode === null || ABSTRACTION_OFF_VALUES.has(mode)
63
+ ? bound.find((value) => ABSTRACTION_OFF_VALUES.has(value))
64
+ : bound.find((value) => value === mode)
45
65
  return {
46
66
  type: descriptor.type,
47
- values: [{ name: 'mode', value: config.abstractionMode }],
67
+ values: [{ name: 'mode', value: matched ?? mode }],
68
+ satisfied: matched !== undefined,
48
69
  }
70
+ }
49
71
 
50
72
  case ActionType.APPROVE_INTEGRATOR:
51
73
  case ActionType.ACCOUNT_TYPE:
@@ -66,17 +88,21 @@ function projectHyperliquidDescriptor(
66
88
  case ActionType.APPROVE_READ_ONLY_TOKEN:
67
89
  case ActionType.SIWE_LOGIN:
68
90
  case ActionType.CREATE_DEPOSIT_ADDRESS:
91
+ case ActionType.ADD_WITHDRAWAL_ADDRESS:
69
92
  case ActionType.ACCEPT_PROVIDER_TERMS:
70
93
  case ActionType.DEPOSIT:
71
94
  case ActionType.META_ACCEPT_TERMS:
72
95
  case ActionType.META_ONBOARD:
73
96
  case ActionType.META_CREATE_REFERRAL_CODE:
74
97
  case ActionType.SYNC_FEE_ATTRIBUTION:
98
+ case ActionType.REVOKE_BUILDER_FEE:
99
+ case ActionType.REVOKE_SESSION_AGENT:
100
+ case ActionType.REVOKE_INTEGRATOR:
75
101
  throw new PerpsError(
76
102
  PerpsErrorCode.SDKError,
77
103
  `Hyperliquid account-config mapper has no projection for ` +
78
104
  `descriptor type '${descriptor.type}' — this ActionType is not ` +
79
- `valid on Provider.setup / Provider.options for Hyperliquid.`
105
+ `valid on Provider.setup for Hyperliquid.`
80
106
  )
81
107
 
82
108
  default:
@@ -85,18 +111,17 @@ function projectHyperliquidDescriptor(
85
111
  }
86
112
 
87
113
  /**
88
- * Project the union of Hyperliquid setup + options descriptors against the
89
- * typed `HyperliquidAccountConfig`. Produces exactly one
90
- * `AccountConfigSetting` per descriptor, in `setup`-then-`options` order.
114
+ * Project the Hyperliquid setup descriptors against the typed
115
+ * `HyperliquidAccountConfig`. Produces exactly one `AccountConfigSetting` per
116
+ * descriptor, in `Provider.setup` order.
91
117
  *
92
118
  * @public
93
119
  */
94
120
  export function projectHyperliquidConfigSettings(
95
121
  config: HyperliquidAccountConfig,
96
- setup: ProviderAction[],
97
- options: ProviderAction[]
122
+ setup: SetupAction[]
98
123
  ): AccountConfigSetting[] {
99
- return [...setup, ...options].map((descriptor) =>
124
+ return setup.map((descriptor) =>
100
125
  projectHyperliquidDescriptor(descriptor, config)
101
126
  )
102
127
  }
@@ -39,9 +39,10 @@ export async function hyperliquidSignActions(
39
39
  )
40
40
  }
41
41
 
42
- const sign = ctx?.signers?.includes(PerpsSigner.USER)
43
- ? await userWalletSigner(ctx)
44
- : await agentSigner(agentStore, address)
42
+ const sign =
43
+ ctx?.signer === PerpsSigner.USER
44
+ ? await userWalletSigner(ctx)
45
+ : await agentSigner(agentStore, address)
45
46
 
46
47
  return Promise.all(
47
48
  (steps as Eip712ActionStep[]).map(