@lifi/perps-sdk 18.0.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.
- package/README.md +12 -0
- package/dist/cjs/client/PerpsClient.d.ts +15 -8
- package/dist/cjs/client/PerpsClient.d.ts.map +1 -1
- package/dist/cjs/client/PerpsClient.js +145 -52
- package/dist/cjs/client/PerpsClient.js.map +1 -1
- package/dist/cjs/index.d.ts +4 -4
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +2 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/api.d.ts +8 -2
- package/dist/cjs/types/api.d.ts.map +1 -1
- package/dist/cjs/types/provider.d.ts +9 -6
- package/dist/cjs/types/provider.d.ts.map +1 -1
- package/dist/cjs/types/withdrawal.d.ts +11 -1
- package/dist/cjs/types/withdrawal.d.ts.map +1 -1
- package/dist/cjs/utils/setupActions.d.ts +4 -2
- package/dist/cjs/utils/setupActions.d.ts.map +1 -1
- package/dist/cjs/utils/setupActions.js +9 -1
- package/dist/cjs/utils/setupActions.js.map +1 -1
- package/dist/cjs/utils/switchChain.js +1 -1
- package/dist/cjs/utils/switchChain.js.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 +74 -55
- package/dist/esm/client/PerpsClient.d.ts.map +1 -1
- package/dist/esm/client/PerpsClient.js +218 -100
- package/dist/esm/client/PerpsClient.js.map +1 -1
- package/dist/esm/index.d.ts +4 -4
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/api.d.ts +40 -14
- package/dist/esm/types/api.d.ts.map +1 -1
- package/dist/esm/types/provider.d.ts +39 -28
- package/dist/esm/types/provider.d.ts.map +1 -1
- package/dist/esm/types/withdrawal.d.ts +30 -1
- package/dist/esm/types/withdrawal.d.ts.map +1 -1
- package/dist/esm/utils/setupActions.d.ts +17 -8
- package/dist/esm/utils/setupActions.d.ts.map +1 -1
- package/dist/esm/utils/setupActions.js +20 -7
- package/dist/esm/utils/setupActions.js.map +1 -1
- package/dist/esm/utils/switchChain.js +1 -1
- package/dist/esm/utils/switchChain.js.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 +74 -55
- package/dist/types/client/PerpsClient.d.ts.map +1 -1
- package/dist/types/index.d.ts +4 -4
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/types/api.d.ts +40 -14
- package/dist/types/types/api.d.ts.map +1 -1
- package/dist/types/types/provider.d.ts +39 -28
- package/dist/types/types/provider.d.ts.map +1 -1
- package/dist/types/types/withdrawal.d.ts +30 -1
- package/dist/types/types/withdrawal.d.ts.map +1 -1
- package/dist/types/utils/setupActions.d.ts +17 -8
- package/dist/types/utils/setupActions.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/package.json +2 -2
- package/src/client/PerpsClient.ts +303 -130
- package/src/index.ts +9 -1
- package/src/types/api.ts +42 -14
- package/src/types/provider.ts +44 -30
- package/src/types/withdrawal.ts +33 -1
- package/src/utils/setupActions.ts +27 -13
- package/src/utils/switchChain.ts +1 -1
- package/src/version.ts +1 -1
package/dist/cjs/index.js
CHANGED
|
@@ -16,7 +16,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
exports.LIFI_REQUEST_KEY = exports.DISABLED_RETRY = exports.isAbortError = exports.fetchWithRetry = exports.errorCodeFromStatus = exports.createMemoryStorage = exports.readValidatedRecord = exports.parseStoredRecord = exports.localStorageAdapter = exports.resolveSubscribeQuote = exports.QUOTE_THROTTLE_MS = exports.resolveQuoteMarket = exports.resolveQuote = exports.getTermsAcceptance = exports.getReferralStatus = exports.getReferralActivity = exports.getQuote = exports.getProviders = exports.getPositions = exports.getOrders = exports.getOrderbook = exports.getOrder = exports.getOhlcv = exports.getMeta = exports.getMarketsContext = exports.getMarkets = exports.getMarket = exports.LIFI_API_URL = exports.getGasRecommendation = exports.getFills = exports.getAssets = exports.getActivity = exports.getAccount = exports.executeAction = exports.createAction = exports.toPerpsMarketDisplay = exports.toMarketDisplay = exports.MarketRegistry = exports.isActiveMarket = exports.getMarketRegistry = exports.getDefaultMarketId = exports.DEFAULT_MARKET_ID = exports.toAssetDisplay = exports.getAssetRegistry = exports.AssetRegistry = exports.PerpsError = exports.PerpsErrorMessage = exports.PerpsClient = exports.DEFAULT_API_URL = exports.createPerpsClient = void 0;
|
|
18
18
|
exports.stringToFloat = exports.resolveCloseSize = exports.findMatchingPosition = exports.expectedRealizedPnlForTriggerOrder = exports.expectedRealizedPnlForOpenOrder = exports.triggerConditionFor = exports.isTwapOrder = exports.isTriggerOrder = exports.isTpSlOrder = exports.isTakeProfitOrder = exports.isStopLossOrder = exports.isRegularOrder = exports.isActiveOrderStatus = exports.FillClassification = exports.classifyFill = exports.ACTIVE_ORDER_STATUSES = exports.formatUsd = exports.formatSignedUsd = exports.formatSignedPercent = exports.formatPrice = exports.formatNumber = exports.formatCompactUsd = exports.classifyFillFromPosition = exports.explorerTxUrlFromBase = exports.explorerTxUrl = exports.ExplorerChainId = exports.ROBINHOOD_USDG = exports.ROBINHOOD_NATIVE_GAS = exports.LIGHTER_USDC = exports.HYPERLIQUID_USDC = exports.ETHEREUM_USDC = exports.ETHEREUM_NATIVE_GAS = exports.walkOrderbook = exports.priceFromPercent = exports.percentFromPrice = exports.liquidationDistancePercent = exports.estimateFees = exports.effectiveLeverage = exports.calculateUnrealizedPnl = exports.calculateRoe = exports.calculateRequiredMargin = exports.calculateRealizedPnlPercent = exports.calculatePositionSize = exports.calculateNotionalValue = exports.calculateExpectedPnl = exports.buildQuote = exports.applySlippage = exports.paginateActivity = exports.resolveRetryPolicy = exports.LIFI_RETRY_DEFAULTS = void 0;
|
|
19
|
-
exports.wsLog = exports.WsProviderBase = exports.WS_CHANNEL_TEARDOWN_LINGER_MS = exports.ReconnectingWebSocket = exports.PerpsWsClient = exports.DecodeChain = exports.cachePromise = exports.version = exports.name = exports.createWarnOnce = exports.validateMargin = exports.fromBaseUnitsNumber = exports.fromBaseUnits = exports.signTypedDataWithSigner = exports.signTypedData = exports.selectUserSetupActions = exports.scaleToInteger = exports.realizedPnlOnClose = exports.predictUnrealizedPnl = exports.predictNewLeverage = exports.predictAverageEntryPrice = exports.estimateIsolatedLiquidationPrice = exports.directionSign = void 0;
|
|
19
|
+
exports.wsLog = exports.WsProviderBase = exports.WS_CHANNEL_TEARDOWN_LINGER_MS = exports.ReconnectingWebSocket = exports.PerpsWsClient = exports.DecodeChain = exports.cachePromise = exports.version = exports.name = exports.createWarnOnce = exports.validateMargin = exports.fromBaseUnitsNumber = exports.fromBaseUnits = exports.signTypedDataWithSigner = exports.signTypedData = exports.selectUserSetupActions = exports.isSetupOptionFor = exports.scaleToInteger = exports.realizedPnlOnClose = exports.predictUnrealizedPnl = exports.predictNewLeverage = exports.predictAverageEntryPrice = exports.estimateIsolatedLiquidationPrice = exports.directionSign = void 0;
|
|
20
20
|
__exportStar(require("@lifi/perps-types"), exports);
|
|
21
21
|
var createPerpsClient_js_1 = require("./client/createPerpsClient.js");
|
|
22
22
|
Object.defineProperty(exports, "createPerpsClient", { enumerable: true, get: function () { return createPerpsClient_js_1.createPerpsClient; } });
|
|
@@ -172,6 +172,7 @@ Object.defineProperty(exports, "realizedPnlOnClose", { enumerable: true, get: fu
|
|
|
172
172
|
var scaleToInteger_js_1 = require("./utils/scaleToInteger.js");
|
|
173
173
|
Object.defineProperty(exports, "scaleToInteger", { enumerable: true, get: function () { return scaleToInteger_js_1.scaleToInteger; } });
|
|
174
174
|
var setupActions_js_1 = require("./utils/setupActions.js");
|
|
175
|
+
Object.defineProperty(exports, "isSetupOptionFor", { enumerable: true, get: function () { return setupActions_js_1.isSetupOptionFor; } });
|
|
175
176
|
Object.defineProperty(exports, "selectUserSetupActions", { enumerable: true, get: function () { return setupActions_js_1.selectUserSetupActions; } });
|
|
176
177
|
var signTypedData_js_1 = require("./utils/signTypedData.js");
|
|
177
178
|
Object.defineProperty(exports, "signTypedData", { enumerable: true, get: function () { return signTypedData_js_1.signTypedData; } });
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAYA,oDAAiC;AACjC,sEAGsC;AAFpC,yHAAA,iBAAiB,OAAA;AACjB,uHAAA,eAAe,OAAA;AAEjB,0DAAqD;AAA5C,6GAAA,WAAW,OAAA;AACpB,sDAAyD;AAAhD,iHAAA,iBAAiB,OAAA;AAC1B,wDAAmD;AAA1C,2GAAA,UAAU,OAAA;AAEnB,gEAIoC;AAHlC,iHAAA,aAAa,OAAA;AACb,oHAAA,gBAAgB,OAAA;AAChB,kHAAA,cAAc,OAAA;AAGhB,kEAQqC;AAPnC,sHAAA,iBAAiB,OAAA;AACjB,uHAAA,kBAAkB,OAAA;AAClB,sHAAA,iBAAiB,OAAA;AACjB,mHAAA,cAAc,OAAA;AACd,mHAAA,cAAc,OAAA;AACd,oHAAA,eAAe,OAAA;AACf,yHAAA,oBAAoB,OAAA;AAItB,8DAAyD;AAAhD,+GAAA,YAAY,OAAA;AAErB,gEAA2D;AAAlD,iHAAA,aAAa,OAAA;AAEtB,0DAAqD;AAA5C,2GAAA,UAAU,OAAA;AAEnB,4DAAuD;AAA9C,6GAAA,WAAW,OAAA;AAEpB,wDAAmD;AAA1C,yGAAA,SAAS,OAAA;AAElB,sDAAiD;AAAxC,uGAAA,QAAQ,OAAA;AAEjB,8EAG2C;AAFzC,+HAAA,oBAAoB,OAAA;AACpB,uHAAA,YAAY,OAAA;AAGd,wDAAmD;AAA1C,yGAAA,SAAS,OAAA;AAElB,0DAAqD;AAA5C,2GAAA,UAAU,OAAA;AAEnB,wEAAmE;AAA1D,yHAAA,iBAAiB,OAAA;AAC1B,oDAA+C;AAAtC,qGAAA,OAAO,OAAA;AAEhB,sDAAiD;AAAxC,uGAAA,QAAQ,OAAA;AAEjB,sDAAiD;AAAxC,uGAAA,QAAQ,OAAA;AAEjB,8DAAyD;AAAhD,+GAAA,YAAY,OAAA;AAErB,wDAAmD;AAA1C,yGAAA,SAAS,OAAA;AAElB,8DAAyD;AAAhD,+GAAA,YAAY,OAAA;AACrB,8DAAyD;AAAhD,+GAAA,YAAY,OAAA;AAErB,sDAAiD;AAAxC,uGAAA,QAAQ,OAAA;AAEjB,4EAAuE;AAA9D,6HAAA,mBAAmB,OAAA;AAE5B,wEAAmE;AAA1D,yHAAA,iBAAiB,OAAA;AAC1B,0EAAqE;AAA5D,2HAAA,kBAAkB,OAAA;AAC3B,8DAA6E;AAApE,+GAAA,YAAY,OAAA;AAAE,qHAAA,kBAAkB,OAAA;AACzC,gFAG4C;AAF1C,6HAAA,iBAAiB,OAAA;AACjB,iIAAA,qBAAqB,OAAA;AAEvB,qEAAmE;AAA1D,0HAAA,mBAAmB,OAAA;AAC5B,uEAGuC;AAFrC,yHAAA,iBAAiB,OAAA;AACjB,2HAAA,mBAAmB,OAAA;AAErB,mDAA0D;AAAjD,iHAAA,mBAAmB,OAAA;AAE5B,6EAAwE;AAA/D,6HAAA,mBAAmB,OAAA;AAE5B,mEAA4E;AAAnE,mHAAA,cAAc,OAAA;AAAE,iHAAA,YAAY,OAAA;AAUrC,6DAKmC;AAJjC,gHAAA,cAAc,OAAA;AACd,kHAAA,gBAAgB,OAAA;AAChB,qHAAA,mBAAmB,OAAA;AACnB,oHAAA,kBAAkB,OAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/types/api.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AccountConfigSetting, AccountResponse, CancelTwapOrderParams as ActionCancelTwapOrderParams, CreateReferralCodeParams as ActionCreateReferralCodeParams, ActionParamsMap, PlaceTwapOrderParams as ActionPlaceTwapOrderParams, ActionStep, ExecuteActionResponse, MarginMode, MarketRef, MetaActionType, ModifyOrderInput, OnboardParams, OrderSide, OrderType, PortfolioHistoryRange,
|
|
1
|
+
import type { AccountConfigSetting, AccountResponse, CancelTwapOrderParams as ActionCancelTwapOrderParams, CreateReferralCodeParams as ActionCreateReferralCodeParams, ActionParamsMap, PlaceTwapOrderParams as ActionPlaceTwapOrderParams, ActionStep, ExecuteActionResponse, MarginMode, MarketRef, MetaActionType, ModifyOrderInput, OnboardParams, OrderSide, OrderType, PortfolioHistoryRange, SetupAction, SetupOption, SignedActionStep, TimeInForce, TriggerOrderInput, WithdrawalParams } from '@lifi/perps-types';
|
|
2
2
|
import type { Account, Address, WalletClient } from 'viem';
|
|
3
3
|
import type { RetryConfig } from '../transport/retryPolicy.js';
|
|
4
4
|
import type { ProviderConfigs, RequestInterceptor, SwitchChainHook } from './config.js';
|
|
@@ -89,6 +89,10 @@ export interface GetDepositFlowParams {
|
|
|
89
89
|
provider: string;
|
|
90
90
|
address: Address;
|
|
91
91
|
}
|
|
92
|
+
export interface GetWithdrawFlowParams {
|
|
93
|
+
provider: string;
|
|
94
|
+
address: Address;
|
|
95
|
+
}
|
|
92
96
|
export interface GetWithdrawableBalancesParams {
|
|
93
97
|
provider: string;
|
|
94
98
|
address: Address;
|
|
@@ -99,8 +103,10 @@ export interface GetPortfolioHistoryParams {
|
|
|
99
103
|
range: PortfolioHistoryRange;
|
|
100
104
|
}
|
|
101
105
|
export interface SetupChecklistItem {
|
|
102
|
-
descriptor:
|
|
106
|
+
descriptor: SetupAction;
|
|
103
107
|
satisfied: boolean;
|
|
108
|
+
selected: SetupOption | null;
|
|
109
|
+
currentValue: string | null;
|
|
104
110
|
}
|
|
105
111
|
export interface ProviderSetup {
|
|
106
112
|
accountExists: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/types/api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,eAAe,EACf,qBAAqB,IAAI,2BAA2B,EACpD,wBAAwB,IAAI,8BAA8B,EAC1D,eAAe,EACf,oBAAoB,IAAI,0BAA0B,EAClD,UAAU,EACV,qBAAqB,EACrB,UAAU,EACV,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,SAAS,EACT,SAAS,EACT,qBAAqB,EACrB,
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/types/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type { AccountConfig, AccountConfigSetting, AccountResponse, AccountSummary, ActionResult, ActionStep, ActionType, ActivitiesResponse, ActivityType, AvailableToTrade, FillsResponse, Market, MarketRef, MarketSettings, Order, OrderStatus, OrdersResponse, PerpsMarket, PerpsSigner, PortfolioHistoryRange, PortfolioHistoryResponse, Position, PositionsResponse,
|
|
1
|
+
import type { AccountConfig, AccountConfigSetting, AccountResponse, AccountSummary, ActionResult, ActionStep, ActionType, ActivitiesResponse, ActivityType, AvailableToTrade, FillsResponse, Market, MarketRef, MarketSettings, Order, OrderStatus, OrdersResponse, PerpsMarket, PerpsSigner, PortfolioHistoryRange, PortfolioHistoryResponse, Position, PositionsResponse, Quote, QuoteSide, SetupAction, SignedActionStep, SigningMethod, TradeType } from '@lifi/perps-types';
|
|
2
2
|
import type { Address } from 'viem';
|
|
3
3
|
import type { PerpsBaseConfig, PerpsClientSigner, SDKRequestOptions } from './config.js';
|
|
4
4
|
import type { DepositFlow } from './deposit.js';
|
|
5
|
-
import type { ProviderWithdrawableBalance } from './withdrawal.js';
|
|
5
|
+
import type { ProviderWithdrawableBalance, WithdrawFlow } from './withdrawal.js';
|
|
6
6
|
export interface PerpsSDKClient {
|
|
7
7
|
readonly config: PerpsBaseConfig;
|
|
8
8
|
readonly userWallet?: PerpsClientSigner;
|
|
@@ -20,7 +20,7 @@ export interface SignActionProgress {
|
|
|
20
20
|
}
|
|
21
21
|
export interface SignActionsContext {
|
|
22
22
|
userWallet?: PerpsClientSigner;
|
|
23
|
-
|
|
23
|
+
signer?: PerpsSigner;
|
|
24
24
|
switchToChain?: (chainId: number) => Promise<PerpsClientSigner>;
|
|
25
25
|
onProgress?: (progress: SignActionProgress) => void;
|
|
26
26
|
}
|
|
@@ -42,6 +42,9 @@ export interface ProviderAccountExistsParams {
|
|
|
42
42
|
export interface ProviderGetDepositFlowParams {
|
|
43
43
|
address: Address;
|
|
44
44
|
}
|
|
45
|
+
export interface ProviderGetWithdrawFlowParams {
|
|
46
|
+
address: Address;
|
|
47
|
+
}
|
|
45
48
|
export interface ProviderGetWithdrawableBalancesParams {
|
|
46
49
|
address: Address;
|
|
47
50
|
}
|
|
@@ -98,12 +101,12 @@ export interface ProviderGetQuoteParams {
|
|
|
98
101
|
export type QuoteListener = (quote: Quote) => void;
|
|
99
102
|
export interface PerpsProviderPlugin {
|
|
100
103
|
readonly type: string;
|
|
101
|
-
readonly internalSetupActions?: readonly ActionType[];
|
|
102
104
|
readonly conditionalSetupActions?: readonly ActionType[];
|
|
103
105
|
bind(client: PerpsSDKClient): void;
|
|
104
106
|
getAccount(params: ProviderGetAccountParams, options?: SDKRequestOptions): Promise<AccountResponse>;
|
|
105
107
|
accountExists(params: ProviderAccountExistsParams, options?: SDKRequestOptions): Promise<boolean>;
|
|
106
108
|
getDepositFlow?(params: ProviderGetDepositFlowParams, options?: SDKRequestOptions): Promise<DepositFlow>;
|
|
109
|
+
getWithdrawFlow?(params: ProviderGetWithdrawFlowParams, options?: SDKRequestOptions): Promise<WithdrawFlow>;
|
|
107
110
|
getWithdrawableBalances?(params: ProviderGetWithdrawableBalancesParams, options?: SDKRequestOptions): Promise<ProviderWithdrawableBalance[]>;
|
|
108
111
|
getPositions(params: ProviderGetPositionsParams, options?: SDKRequestOptions): Promise<PositionsResponse>;
|
|
109
112
|
getMarketSettings?(params: ProviderGetMarketSettingsParams, options?: SDKRequestOptions): Promise<MarketSettings | undefined>;
|
|
@@ -119,9 +122,9 @@ export interface PerpsProviderPlugin {
|
|
|
119
122
|
formatOrderSize(market: Market, size: number): string;
|
|
120
123
|
estimateLiquidationPrice(market: PerpsMarket, params: LiquidationEstimateParams): number | undefined;
|
|
121
124
|
positionRemovableMargin(position: Position): string | undefined;
|
|
122
|
-
projectConfig(config: AccountConfig, setup:
|
|
125
|
+
projectConfig(config: AccountConfig, setup: SetupAction[]): AccountConfigSetting[];
|
|
123
126
|
resolveSetupParams?(action: ActionType, address: Address): Promise<Record<string, unknown>>;
|
|
124
|
-
resolveActionRequest?(action: ActionType, address: Address,
|
|
127
|
+
resolveActionRequest?(action: ActionType, address: Address, signer: PerpsSigner): Promise<ActionSignerContribution>;
|
|
125
128
|
signActions?(method: SigningMethod, steps: ActionStep[], address: Address, ctx?: SignActionsContext): Promise<SignedActionStep[]>;
|
|
126
129
|
onExecuteResults?(address: Address, results: ActionResult[]): Promise<void>;
|
|
127
130
|
resolveExplorerLink?(txHash: string): string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/types/provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,YAAY,EACZ,UAAU,EACV,UAAU,EACV,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,MAAM,EACN,SAAS,EACT,cAAc,EACd,KAAK,EACL,WAAW,EACX,cAAc,EACd,WAAW,EACX,WAAW,EACX,qBAAqB,EACrB,wBAAwB,EACxB,QAAQ,EACR,iBAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/types/provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type { Asset } from '@lifi/perps-types';
|
|
1
|
+
import type { ActionType, Asset } from '@lifi/perps-types';
|
|
2
|
+
import type { Address } from 'viem';
|
|
2
3
|
export type WithdrawalRoute = 'perps' | 'spot';
|
|
3
4
|
export interface ProviderWithdrawableBalance {
|
|
4
5
|
assetId: string;
|
|
@@ -12,4 +13,13 @@ export interface WithdrawableBalance {
|
|
|
12
13
|
available: string;
|
|
13
14
|
withdrawalFee?: string;
|
|
14
15
|
}
|
|
16
|
+
export interface WithdrawFlowReady {
|
|
17
|
+
kind: 'ready';
|
|
18
|
+
destination: Address;
|
|
19
|
+
}
|
|
20
|
+
export interface WithdrawFlowSetupRequired {
|
|
21
|
+
kind: 'setupRequired';
|
|
22
|
+
setup: ActionType[];
|
|
23
|
+
}
|
|
24
|
+
export type WithdrawFlow = WithdrawFlowReady | WithdrawFlowSetupRequired;
|
|
15
25
|
//# sourceMappingURL=withdrawal.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withdrawal.d.ts","sourceRoot":"","sources":["../../../src/types/withdrawal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"withdrawal.d.ts","sourceRoot":"","sources":["../../../src/types/withdrawal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAUnC,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,MAAM,CAAA;AAQ9C,MAAM,WAAW,2BAA2B;IAE1C,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,eAAe,CAAA;IAEtB,SAAS,EAAE,MAAM,CAAA;IAMjB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AASD,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,KAAK,CAAA;IACZ,KAAK,EAAE,eAAe,CAAA;IAEtB,SAAS,EAAE,MAAM,CAAA;IAMjB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAOD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,OAAO,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;CACrB;AASD,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,eAAe,CAAA;IAErB,KAAK,EAAE,UAAU,EAAE,CAAA;CACpB;AAQD,MAAM,MAAM,YAAY,GAAG,iBAAiB,GAAG,yBAAyB,CAAA"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export declare function selectUserSetupActions(setup:
|
|
1
|
+
import type { ActionType, SetupAction, SetupOption } from '@lifi/perps-types';
|
|
2
|
+
export declare function selectUserSetupActions(setup: SetupAction[]): SetupAction[];
|
|
3
|
+
export declare function isUserFacingSetupStep(descriptor: SetupAction): boolean;
|
|
4
|
+
export declare function isSetupOptionFor<T extends ActionType>(option: SetupOption, type: T): option is SetupOption<T>;
|
|
3
5
|
//# sourceMappingURL=setupActions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setupActions.d.ts","sourceRoot":"","sources":["../../../src/utils/setupActions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"setupActions.d.ts","sourceRoot":"","sources":["../../../src/utils/setupActions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAkB7E,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,WAAW,EAAE,CAE1E;AAGD,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,WAAW,GAAG,OAAO,CAEtE;AAQD,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,UAAU,EACnD,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,CAAC,GACN,MAAM,IAAI,WAAW,CAAC,CAAC,CAAC,CAE1B"}
|
|
@@ -1,8 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.selectUserSetupActions = selectUserSetupActions;
|
|
4
|
+
exports.isUserFacingSetupStep = isUserFacingSetupStep;
|
|
5
|
+
exports.isSetupOptionFor = isSetupOptionFor;
|
|
4
6
|
const perps_types_1 = require("@lifi/perps-types");
|
|
5
7
|
function selectUserSetupActions(setup) {
|
|
6
|
-
return setup.filter(
|
|
8
|
+
return setup.filter(isUserFacingSetupStep);
|
|
9
|
+
}
|
|
10
|
+
function isUserFacingSetupStep(descriptor) {
|
|
11
|
+
return descriptor.options !== null || descriptor.signer === perps_types_1.PerpsSigner.USER;
|
|
12
|
+
}
|
|
13
|
+
function isSetupOptionFor(option, type) {
|
|
14
|
+
return option.type === type;
|
|
7
15
|
}
|
|
8
16
|
//# sourceMappingURL=setupActions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setupActions.js","sourceRoot":"","sources":["../../../src/utils/setupActions.ts"],"names":[],"mappings":";;AAkBA,
|
|
1
|
+
{"version":3,"file":"setupActions.js","sourceRoot":"","sources":["../../../src/utils/setupActions.ts"],"names":[],"mappings":";;AAkBA,wDAEC;AAGD,sDAEC;AAQD,4CAKC;AArCD,mDAA+C;AAiB/C,SAAgB,sBAAsB,CAAC,KAAoB;IACzD,OAAO,KAAK,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAA;AAC5C,CAAC;AAGD,SAAgB,qBAAqB,CAAC,UAAuB;IAC3D,OAAO,UAAU,CAAC,OAAO,KAAK,IAAI,IAAI,UAAU,CAAC,MAAM,KAAK,yBAAW,CAAC,IAAI,CAAA;AAC9E,CAAC;AAQD,SAAgB,gBAAgB,CAC9B,MAAmB,EACnB,IAAO;IAEP,OAAO,MAAM,CAAC,IAAI,KAAK,IAAI,CAAA;AAC7B,CAAC"}
|
|
@@ -17,7 +17,7 @@ function eip712DomainChainId(actions) {
|
|
|
17
17
|
}
|
|
18
18
|
function userEip712TargetChainId(descriptor, actions) {
|
|
19
19
|
if (descriptor.signingMethod !== perps_types_1.SigningMethod.EIP712 ||
|
|
20
|
-
|
|
20
|
+
descriptor.signer !== perps_types_1.PerpsSigner.USER) {
|
|
21
21
|
return undefined;
|
|
22
22
|
}
|
|
23
23
|
return eip712DomainChainId(actions);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switchChain.js","sourceRoot":"","sources":["../../../src/utils/switchChain.ts"],"names":[],"mappings":";;AAeA,kDAQC;AAQD,0DAWC;AAWD,gDA2BC;AA3ED,mDAA8E;AAC9E,0CAAyC;AACzC,2DAAoD;AAQpD,SAAgB,mBAAmB,CAAC,OAAqB;IACvD,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAI,IAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAA;QACrE,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,OAAO,OAAO,CAAA;QAChB,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAQD,SAAgB,uBAAuB,CACrC,UAA0B,EAC1B,OAAqB;IAErB,IACE,UAAU,CAAC,aAAa,KAAK,2BAAa,CAAC,MAAM;QACjD,
|
|
1
|
+
{"version":3,"file":"switchChain.js","sourceRoot":"","sources":["../../../src/utils/switchChain.ts"],"names":[],"mappings":";;AAeA,kDAQC;AAQD,0DAWC;AAWD,gDA2BC;AA3ED,mDAA8E;AAC9E,0CAAyC;AACzC,2DAAoD;AAQpD,SAAgB,mBAAmB,CAAC,OAAqB;IACvD,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAI,IAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAA;QACrE,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,OAAO,OAAO,CAAA;QAChB,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAQD,SAAgB,uBAAuB,CACrC,UAA0B,EAC1B,OAAqB;IAErB,IACE,UAAU,CAAC,aAAa,KAAK,2BAAa,CAAC,MAAM;QACjD,UAAU,CAAC,MAAM,KAAK,yBAAW,CAAC,IAAI,EACtC,CAAC;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,OAAO,mBAAmB,CAAC,OAAO,CAAC,CAAA;AACrC,CAAC;AAWM,KAAK,UAAU,kBAAkB,CACtC,MAAyB,EACzB,aAAqB,EACrB,WAA6B;IAE7B,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,MAAM,CAAA;IACf,CAAC;IACD,MAAM,cAAc,GAAG,MAAM,IAAA,oBAAU,EAAC,MAAM,CAAC,CAAA;IAC/C,IAAI,cAAc,KAAK,aAAa,EAAE,CAAC;QACrC,OAAO,MAAM,CAAA;IACf,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,aAAa,CAAC,CAAA;IACjD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,0BAAU,CAClB,4BAAc,CAAC,QAAQ,EACvB,0BAA0B,aAAa,qBAAqB,CAC7D,CAAA;IACH,CAAC;IACD,MAAM,eAAe,GAAG,MAAM,IAAA,oBAAU,EAAC,QAAQ,CAAC,CAAA;IAClD,IAAI,eAAe,KAAK,aAAa,EAAE,CAAC;QACtC,MAAM,IAAI,0BAAU,CAClB,4BAAc,CAAC,QAAQ,EACvB,sBAAsB,eAAe,cAAc,aAAa,uBAAuB,CACxF,CAAA;IACH,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC"}
|
package/dist/cjs/version.d.ts
CHANGED
package/dist/cjs/version.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import type { AccountResponse, AccountSummary, ActionParamsMap, ActionStep, AvailableToTrade, CreateActionResponse, ExecuteActionResponse, MarketRef, MarketSettings, MetaActionType, Order, OrdersResponse, PortfolioHistoryResponse, Position } from '@lifi/perps-types';
|
|
1
|
+
import type { AccountResponse, AccountSummary, ActionParamsMap, ActionStep, AvailableToTrade, CreateActionResponse, ExecuteActionResponse, MarketRef, MarketSettings, MetaActionType, Order, OrdersResponse, PortfolioHistoryResponse, Position, SetupAction, SetupOption } from '@lifi/perps-types';
|
|
2
2
|
import { ActionType } from '@lifi/perps-types';
|
|
3
3
|
import type { Address } from 'viem';
|
|
4
4
|
import { type GetOrderParams } from '../services/getOrder.js';
|
|
5
5
|
import { type GetOrdersParams } from '../services/getOrders.js';
|
|
6
|
-
import type { BuildProviderSetupParams, CancelOrdersParams, CancelTwapOrderParams, CreateReferralCodeActionParams, ExecuteMetaActionParams, GetAccountResult, GetDepositFlowParams, GetPortfolioHistoryParams, GetSetupParams, GetWithdrawableBalancesParams, ModifyOrdersParams, PerpsClientOptions, PlaceOrderParams, PlaceTriggerOrderParams, PlaceTwapOrderParams, ProviderSetup, SendAssetActionParams, SubmitOnboardingParams, WithdrawParams } from '../types/api.js';
|
|
6
|
+
import type { BuildProviderSetupParams, CancelOrdersParams, CancelTwapOrderParams, CreateReferralCodeActionParams, ExecuteMetaActionParams, GetAccountResult, GetDepositFlowParams, GetPortfolioHistoryParams, GetSetupParams, GetWithdrawableBalancesParams, GetWithdrawFlowParams, ModifyOrdersParams, PerpsClientOptions, PlaceOrderParams, PlaceTriggerOrderParams, PlaceTwapOrderParams, ProviderSetup, SendAssetActionParams, SetupChecklistItem, SubmitOnboardingParams, WithdrawParams } from '../types/api.js';
|
|
7
7
|
import type { SDKRequestOptions, SwitchChainHook } from '../types/config.js';
|
|
8
8
|
import type { DepositFlow } from '../types/deposit.js';
|
|
9
9
|
import type { PerpsSDKClient, SignActionProgress } from '../types/provider.js';
|
|
10
|
-
import type { WithdrawableBalance } from '../types/withdrawal.js';
|
|
10
|
+
import type { WithdrawableBalance, WithdrawFlow } from '../types/withdrawal.js';
|
|
11
11
|
/**
|
|
12
12
|
* The primary high-level perps API: wraps a {@link PerpsSDKClient} and owns the
|
|
13
13
|
* end-to-end signing pipeline for provider setup, orders, and account-level
|
|
@@ -24,7 +24,7 @@ export declare class PerpsClient {
|
|
|
24
24
|
constructor(options: PerpsClientOptions);
|
|
25
25
|
/**
|
|
26
26
|
* Set or update the end-user's wallet. Used whenever an action's descriptor
|
|
27
|
-
* names
|
|
27
|
+
* names `PerpsSigner.USER` as its `signer`. Pass undefined to clear.
|
|
28
28
|
*
|
|
29
29
|
* @public
|
|
30
30
|
*/
|
|
@@ -59,7 +59,7 @@ export declare class PerpsClient {
|
|
|
59
59
|
* Ask the provider plugin for the signer-bearing wire fields of `action` —
|
|
60
60
|
* the on-wire `signerAddress` and any signer-derived params (e.g.
|
|
61
61
|
* Hyperliquid's `agentAddress` for `APPROVE_AGENT`). Forwards the descriptor's
|
|
62
|
-
* `
|
|
62
|
+
* `signer` so the plugin can branch on signer role. Returns empty when the
|
|
63
63
|
* plugin signs as the user or with a non-EVM credential. Core constructs no
|
|
64
64
|
* `signerAddress` itself; signer identity is plugin-owned.
|
|
65
65
|
*/
|
|
@@ -67,10 +67,10 @@ export declare class PerpsClient {
|
|
|
67
67
|
/**
|
|
68
68
|
* Delegate signing of `actions` to the provider plugin, one call per
|
|
69
69
|
* consecutive run of steps sharing a descriptor. Each call carries that
|
|
70
|
-
* descriptor's `signingMethod` and `
|
|
70
|
+
* descriptor's `signingMethod` and `signer`, so a mixed batch signs every
|
|
71
71
|
* step with the signer its own descriptor declares; the signed steps come
|
|
72
72
|
* back in the batch's original order. The plugin owns every signing arm and
|
|
73
|
-
* branches on `
|
|
73
|
+
* branches on `signer` internally, reading the end-user's wallet from the
|
|
74
74
|
* {@link SignActionsContext} when an arm signs as the user.
|
|
75
75
|
*
|
|
76
76
|
* @throws {PerpsError} When a step's action is not declared by the provider,
|
|
@@ -105,9 +105,9 @@ export declare class PerpsClient {
|
|
|
105
105
|
private resolveMetaSigningWallet;
|
|
106
106
|
/**
|
|
107
107
|
* Assemble the per-call context the provider plugin needs in order to sign:
|
|
108
|
-
* the end-user's wallet and the descriptor's declared `
|
|
109
|
-
* forwards `
|
|
110
|
-
* branch on
|
|
108
|
+
* the end-user's wallet and the descriptor's declared `signer`. Core
|
|
109
|
+
* forwards `signer` as data so the plugin can pick WHO signs; it does not
|
|
110
|
+
* branch on it. Provider-owned session credentials (the Hyperliquid agent
|
|
111
111
|
* keypair, Lighter's API key) are resolved inside the provider's
|
|
112
112
|
* `signActions`, not threaded through here.
|
|
113
113
|
*
|
|
@@ -148,7 +148,7 @@ export declare class PerpsClient {
|
|
|
148
148
|
/**
|
|
149
149
|
* Fetch the user's account state from the backend and attach the
|
|
150
150
|
* SDK-projected `settings` array — one `AccountConfigSetting` per
|
|
151
|
-
* descriptor on `Provider.setup
|
|
151
|
+
* descriptor on `Provider.setup`. Callers read
|
|
152
152
|
* `result.settings` directly without re-deriving values from the typed
|
|
153
153
|
* `AccountConfig`.
|
|
154
154
|
*
|
|
@@ -233,6 +233,17 @@ export declare class PerpsClient {
|
|
|
233
233
|
* @public
|
|
234
234
|
*/
|
|
235
235
|
getDepositFlow(params: GetDepositFlowParams): Promise<DepositFlow | undefined>;
|
|
236
|
+
/**
|
|
237
|
+
* The withdrawal flow for `params.address` at `params.provider`, delegated to
|
|
238
|
+
* the provider plugin — the withdrawal destination and any setup gate before
|
|
239
|
+
* it are venue-owned.
|
|
240
|
+
*
|
|
241
|
+
* @returns `undefined` when the registered plugin declares no withdrawal flow.
|
|
242
|
+
* @throws {PerpsError} When the provider plugin is not registered, or the
|
|
243
|
+
* plugin's flow resolution fails.
|
|
244
|
+
* @public
|
|
245
|
+
*/
|
|
246
|
+
getWithdrawFlow(params: GetWithdrawFlowParams): Promise<WithdrawFlow | undefined>;
|
|
236
247
|
/**
|
|
237
248
|
* The `(asset, route)` selections `params.address` can actually withdraw at
|
|
238
249
|
* `params.provider`. The venue owns how its balances split across routes;
|
|
@@ -259,28 +270,29 @@ export declare class PerpsClient {
|
|
|
259
270
|
*/
|
|
260
271
|
getPortfolioHistory(params: GetPortfolioHistoryParams, options?: SDKRequestOptions): Promise<PortfolioHistoryResponse>;
|
|
261
272
|
/**
|
|
262
|
-
* Return the
|
|
263
|
-
*
|
|
264
|
-
* `checklist` carries the renderable onboarding list: every
|
|
265
|
-
*
|
|
266
|
-
* omitted.
|
|
273
|
+
* Return the setup steps this account must still sign as a flat,
|
|
274
|
+
* self-describing list. Trading is gated on `isReady === true`.
|
|
275
|
+
* `checklist` carries the renderable onboarding list: every choice step and
|
|
276
|
+
* every `USER`-signed step with its satisfied state, with not-required
|
|
277
|
+
* conditional steps omitted.
|
|
267
278
|
*
|
|
268
|
-
* `
|
|
269
|
-
*
|
|
270
|
-
*
|
|
279
|
+
* A non-choice `SDK`-signed step is NEVER returned here — the SDK drains it
|
|
280
|
+
* with the provider's own credentials. A choice is listed but never staged
|
|
281
|
+
* or executed, whatever its `signer`: the user picks an option through
|
|
282
|
+
* {@link executeProviderOption}, and `isReady` stays `false` until every
|
|
283
|
+
* choice on `checklist` is satisfied.
|
|
271
284
|
*
|
|
272
285
|
* @public
|
|
273
286
|
*/
|
|
274
287
|
checkSetup(params: GetSetupParams): Promise<ProviderSetup>;
|
|
275
288
|
/**
|
|
276
|
-
*
|
|
277
|
-
*
|
|
278
|
-
*
|
|
289
|
+
* Project the provider's own typed account config onto its setup steps. This
|
|
290
|
+
* catches client-held auth state (e.g. Ondo SIWE/JWT) that the backend
|
|
291
|
+
* cannot observe, and carries the current value of each choice.
|
|
279
292
|
*/
|
|
280
|
-
private
|
|
293
|
+
private resolveSetupSettings;
|
|
281
294
|
/**
|
|
282
|
-
* Drain the pending
|
|
283
|
-
* `PerpsProviderPlugin.internalSetupActions`. Each step is built, signed,
|
|
295
|
+
* Drain the pending `SDK`-signed non-choice steps: each is built, signed,
|
|
284
296
|
* and executed in place with the provider's own credentials. A step is
|
|
285
297
|
* deferred while any staged user-facing step with a lower `sequence` is
|
|
286
298
|
* outstanding — it cannot succeed before its prerequisite (e.g. SET_REFERRAL
|
|
@@ -289,7 +301,7 @@ export declare class PerpsClient {
|
|
|
289
301
|
* blocks setup — the step stays unsatisfied and is retried on a later
|
|
290
302
|
* `checkSetup`.
|
|
291
303
|
*/
|
|
292
|
-
private
|
|
304
|
+
private drainSetup;
|
|
293
305
|
/**
|
|
294
306
|
* Build unsigned setup steps for the supplied descriptor subset, preserving
|
|
295
307
|
* provider sequence order with SIWE descriptors prioritized.
|
|
@@ -297,9 +309,11 @@ export declare class PerpsClient {
|
|
|
297
309
|
private buildProviderSetupActions;
|
|
298
310
|
/**
|
|
299
311
|
* Build the unsigned setup `ActionStep`s still outstanding for an account,
|
|
300
|
-
* ordered by descriptor `sequence`.
|
|
301
|
-
*
|
|
302
|
-
*
|
|
312
|
+
* ordered by descriptor `sequence`. Only a `USER`-signed non-choice step is
|
|
313
|
+
* staged: an `SDK`-signed non-choice step drains inside {@link checkSetup}
|
|
314
|
+
* and a choice executes the option the user picks. The backend filters
|
|
315
|
+
* already-satisfied setup; each plugin contributes its own signer-bearing
|
|
316
|
+
* request fields and any local-state params (e.g. Lighter's known pubkey).
|
|
303
317
|
*
|
|
304
318
|
* @public
|
|
305
319
|
*/
|
|
@@ -314,41 +328,30 @@ export declare class PerpsClient {
|
|
|
314
328
|
/**
|
|
315
329
|
* Sign and submit one pre-staged setup `ActionStep` end-to-end.
|
|
316
330
|
*
|
|
317
|
-
*
|
|
318
|
-
*
|
|
319
|
-
*
|
|
320
|
-
*
|
|
321
|
-
* through submit. If the cached step has gone stale (Lighter's `/nextNonce`
|
|
322
|
-
* advanced underneath us), `executeProviderSetup` will surface a nonce
|
|
323
|
-
* conflict that the caller invalidates on, refetches `checkSetup`, and
|
|
324
|
-
* retries with a fresh step.
|
|
331
|
+
* `step` and `checklist` must come from the same {@link checkSetup} result.
|
|
332
|
+
* This preserves the nonce allocated while staging and validates sequence
|
|
333
|
+
* prerequisites against that same snapshot, without another `createAction`
|
|
334
|
+
* round-trip.
|
|
325
335
|
*
|
|
326
336
|
* @throws {PerpsError} When the step's action is not in the provider's
|
|
327
|
-
* `setup` descriptors
|
|
337
|
+
* `setup` descriptors, or when a lower-`sequence` step on the same
|
|
338
|
+
* checklist, a choice included, is still unsatisfied.
|
|
328
339
|
* @public
|
|
329
340
|
*/
|
|
330
341
|
executeProviderSetupAction(params: {
|
|
331
342
|
provider: string;
|
|
332
343
|
address: Address;
|
|
333
344
|
step: ActionStep;
|
|
345
|
+
checklist: SetupChecklistItem[];
|
|
334
346
|
}): Promise<void>;
|
|
335
347
|
/**
|
|
336
|
-
*
|
|
337
|
-
*
|
|
338
|
-
*
|
|
348
|
+
* Execute one option of a choice setup step (Lighter `ACCOUNT_TYPE`,
|
|
349
|
+
* Hyperliquid `ACCOUNT_MODE`) end-to-end with its bound `{ type, params }`,
|
|
350
|
+
* throwing on a venue rejection.
|
|
339
351
|
*
|
|
340
|
-
*
|
|
341
|
-
* trades, but unlike a trade an option change is a single mandatory action:
|
|
352
|
+
* The option runs through the same {@link execute} pipeline as a trade, but
|
|
342
353
|
* a per-action `success: false` (returned as a 200 OK) means the user's
|
|
343
|
-
* selection was rejected and must surface, not be silently dropped.
|
|
344
|
-
* wrapper inspects the result and throws a {@link PerpsError} carrying the
|
|
345
|
-
* venue `error`, giving options the same throw contract that setup has via
|
|
346
|
-
* {@link executeProviderSetupAction}. The only structural difference is that
|
|
347
|
-
* an option carries `params` (the selected value) rather than a pre-staged
|
|
348
|
-
* step.
|
|
349
|
-
*
|
|
350
|
-
* `execute` itself is unchanged — it still returns results without throwing,
|
|
351
|
-
* which the trade hooks rely on for partial-fill handling.
|
|
354
|
+
* selection was rejected and must surface, not be silently dropped.
|
|
352
355
|
*
|
|
353
356
|
* @throws {PerpsError} Carrying the venue error when any returned result has
|
|
354
357
|
* `success: false`, under that result's `errorCode` when the backend
|
|
@@ -357,11 +360,25 @@ export declare class PerpsClient {
|
|
|
357
360
|
* signer, signing failure).
|
|
358
361
|
* @public
|
|
359
362
|
*/
|
|
360
|
-
executeProviderOption
|
|
363
|
+
executeProviderOption(params: {
|
|
361
364
|
provider: string;
|
|
362
365
|
address: Address;
|
|
363
|
-
|
|
364
|
-
|
|
366
|
+
option: SetupOption;
|
|
367
|
+
}): Promise<void>;
|
|
368
|
+
/**
|
|
369
|
+
* Undo a satisfied setup step by executing its `revoke` action through
|
|
370
|
+
* create, sign and execute, signed with that action's `Provider.actions`
|
|
371
|
+
* descriptor. The step stages again on the next {@link checkSetup}.
|
|
372
|
+
*
|
|
373
|
+
* @throws {PerpsError} `SDKError` when `step.revoke` is `null` or when
|
|
374
|
+
* `createAction` stages nothing to revoke; otherwise the errors
|
|
375
|
+
* {@link executeProviderOption} throws.
|
|
376
|
+
* @public
|
|
377
|
+
*/
|
|
378
|
+
executeProviderRevoke(params: {
|
|
379
|
+
provider: string;
|
|
380
|
+
address: Address;
|
|
381
|
+
step: SetupAction;
|
|
365
382
|
}): Promise<void>;
|
|
366
383
|
/**
|
|
367
384
|
* Place a market or limit order. Convenience wrapper over {@link execute}
|
|
@@ -475,6 +492,8 @@ export declare class PerpsClient {
|
|
|
475
492
|
* deposit); called as each leg is submitted and confirmed. */
|
|
476
493
|
onProgress?: (progress: SignActionProgress) => void;
|
|
477
494
|
}): Promise<ExecuteActionResponse>;
|
|
495
|
+
/** {@link execute}, also returning the steps `createAction` staged. */
|
|
496
|
+
private runAction;
|
|
478
497
|
/**
|
|
479
498
|
* Accept the current terms and, when a code is supplied and the backend
|
|
480
499
|
* accepts it, attach that internal referral code — in one signature.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PerpsClient.d.ts","sourceRoot":"","sources":["../../../src/client/PerpsClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"PerpsClient.d.ts","sourceRoot":"","sources":["../../../src/client/PerpsClient.ts"],"names":[],"mappings":"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"}
|