@lifi/perps-sdk-provider-hyperliquid 0.0.0-preview-ef23ec2 → 0.0.0-preview-87dd8b3
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 +50 -54
- package/dist/cjs/HyperliquidProvider.d.ts.map +1 -1
- package/dist/cjs/HyperliquidProvider.js +2 -1
- package/dist/cjs/HyperliquidProvider.js.map +1 -1
- package/dist/cjs/index.d.ts +2 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +3 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/services/getActivity.d.ts.map +1 -1
- package/dist/cjs/services/getActivity.js +28 -5
- package/dist/cjs/services/getActivity.js.map +1 -1
- package/dist/cjs/services/getOrder.d.ts.map +1 -1
- package/dist/cjs/services/getOrder.js +3 -12
- package/dist/cjs/services/getOrder.js.map +1 -1
- package/dist/cjs/services/getOrders.d.ts +7 -2
- package/dist/cjs/services/getOrders.d.ts.map +1 -1
- package/dist/cjs/services/getOrders.js +31 -43
- package/dist/cjs/services/getOrders.js.map +1 -1
- package/dist/cjs/services/getRunningTwaps.d.ts +10 -0
- package/dist/cjs/services/getRunningTwaps.d.ts.map +1 -0
- package/dist/cjs/services/getRunningTwaps.js +46 -0
- package/dist/cjs/services/getRunningTwaps.js.map +1 -0
- package/dist/cjs/types/ledger.d.ts +24 -1
- package/dist/cjs/types/ledger.d.ts.map +1 -1
- package/dist/cjs/types/ledger.js +5 -1
- package/dist/cjs/types/ledger.js.map +1 -1
- package/dist/cjs/types/order.d.ts +0 -24
- package/dist/cjs/types/order.d.ts.map +1 -1
- package/dist/cjs/types/ws.d.ts +0 -14
- package/dist/cjs/types/ws.d.ts.map +1 -1
- package/dist/cjs/utils/index.d.ts +1 -1
- package/dist/cjs/utils/index.d.ts.map +1 -1
- package/dist/cjs/utils/index.js +6 -1
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/utils/mapActivity.d.ts +2 -1
- package/dist/cjs/utils/mapActivity.d.ts.map +1 -1
- package/dist/cjs/utils/mapActivity.js +64 -47
- package/dist/cjs/utils/mapActivity.js.map +1 -1
- package/dist/cjs/utils/mapFill.d.ts.map +1 -1
- package/dist/cjs/utils/mapFill.js +1 -0
- package/dist/cjs/utils/mapFill.js.map +1 -1
- package/dist/cjs/utils/mapOrder.d.ts +9 -4
- package/dist/cjs/utils/mapOrder.d.ts.map +1 -1
- package/dist/cjs/utils/mapOrder.js +135 -148
- package/dist/cjs/utils/mapOrder.js.map +1 -1
- package/dist/cjs/websocket/HyperliquidWsProvider.d.ts +0 -3
- package/dist/cjs/websocket/HyperliquidWsProvider.d.ts.map +1 -1
- package/dist/cjs/websocket/HyperliquidWsProvider.js +22 -63
- package/dist/cjs/websocket/HyperliquidWsProvider.js.map +1 -1
- package/dist/esm/HyperliquidProvider.d.ts.map +1 -1
- package/dist/esm/HyperliquidProvider.js +2 -1
- package/dist/esm/HyperliquidProvider.js.map +1 -1
- package/dist/esm/index.d.ts +2 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/services/getActivity.d.ts.map +1 -1
- package/dist/esm/services/getActivity.js +27 -4
- package/dist/esm/services/getActivity.js.map +1 -1
- package/dist/esm/services/getOrder.d.ts.map +1 -1
- package/dist/esm/services/getOrder.js +3 -12
- package/dist/esm/services/getOrder.js.map +1 -1
- package/dist/esm/services/getOrders.d.ts +24 -4
- package/dist/esm/services/getOrders.d.ts.map +1 -1
- package/dist/esm/services/getOrders.js +43 -47
- package/dist/esm/services/getOrders.js.map +1 -1
- package/dist/esm/services/getRunningTwaps.d.ts +12 -0
- package/dist/esm/services/getRunningTwaps.d.ts.map +1 -0
- package/dist/esm/services/getRunningTwaps.js +40 -0
- package/dist/esm/services/getRunningTwaps.js.map +1 -0
- package/dist/esm/types/ledger.d.ts +28 -1
- package/dist/esm/types/ledger.d.ts.map +1 -1
- package/dist/esm/types/ledger.js +4 -0
- package/dist/esm/types/ledger.js.map +1 -1
- package/dist/esm/types/order.d.ts +0 -26
- package/dist/esm/types/order.d.ts.map +1 -1
- package/dist/esm/types/ws.d.ts +0 -15
- package/dist/esm/types/ws.d.ts.map +1 -1
- package/dist/esm/utils/index.d.ts +1 -1
- package/dist/esm/utils/index.d.ts.map +1 -1
- package/dist/esm/utils/index.js +1 -1
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/mapActivity.d.ts +4 -11
- package/dist/esm/utils/mapActivity.d.ts.map +1 -1
- package/dist/esm/utils/mapActivity.js +69 -74
- package/dist/esm/utils/mapActivity.js.map +1 -1
- package/dist/esm/utils/mapFill.d.ts.map +1 -1
- package/dist/esm/utils/mapFill.js +2 -1
- package/dist/esm/utils/mapFill.js.map +1 -1
- package/dist/esm/utils/mapOrder.d.ts +73 -8
- package/dist/esm/utils/mapOrder.d.ts.map +1 -1
- package/dist/esm/utils/mapOrder.js +187 -147
- package/dist/esm/utils/mapOrder.js.map +1 -1
- package/dist/esm/websocket/HyperliquidWsProvider.d.ts +0 -3
- package/dist/esm/websocket/HyperliquidWsProvider.d.ts.map +1 -1
- package/dist/esm/websocket/HyperliquidWsProvider.js +26 -66
- package/dist/esm/websocket/HyperliquidWsProvider.js.map +1 -1
- package/dist/types/HyperliquidProvider.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/services/getActivity.d.ts.map +1 -1
- package/dist/types/services/getOrder.d.ts.map +1 -1
- package/dist/types/services/getOrders.d.ts +24 -4
- package/dist/types/services/getOrders.d.ts.map +1 -1
- package/dist/types/services/getRunningTwaps.d.ts +12 -0
- package/dist/types/services/getRunningTwaps.d.ts.map +1 -0
- package/dist/types/types/ledger.d.ts +28 -1
- package/dist/types/types/ledger.d.ts.map +1 -1
- package/dist/types/types/order.d.ts +0 -26
- package/dist/types/types/order.d.ts.map +1 -1
- package/dist/types/types/ws.d.ts +0 -15
- package/dist/types/types/ws.d.ts.map +1 -1
- package/dist/types/utils/index.d.ts +1 -1
- package/dist/types/utils/index.d.ts.map +1 -1
- package/dist/types/utils/mapActivity.d.ts +4 -11
- package/dist/types/utils/mapActivity.d.ts.map +1 -1
- package/dist/types/utils/mapFill.d.ts.map +1 -1
- package/dist/types/utils/mapOrder.d.ts +73 -8
- package/dist/types/utils/mapOrder.d.ts.map +1 -1
- package/dist/types/websocket/HyperliquidWsProvider.d.ts +0 -3
- package/dist/types/websocket/HyperliquidWsProvider.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/HyperliquidProvider.ts +13 -1
- package/src/index.ts +2 -0
- package/src/services/getActivity.ts +44 -1
- package/src/services/getOrder.ts +4 -22
- package/src/services/getOrders.ts +78 -81
- package/src/services/getRunningTwaps.ts +90 -0
- package/src/types/ledger.ts +37 -0
- package/src/types/order.ts +0 -25
- package/src/types/ws.ts +0 -16
- package/src/utils/index.ts +5 -0
- package/src/utils/mapActivity.ts +84 -76
- package/src/utils/mapFill.ts +2 -0
- package/src/utils/mapOrder.ts +212 -162
- package/src/websocket/HyperliquidWsProvider.ts +31 -83
package/README.md
CHANGED
|
@@ -35,61 +35,57 @@ Setup registers an agent keypair whose private key signs orders locally, so trad
|
|
|
35
35
|
|
|
36
36
|
The keypair is persisted through a `StorageAdapter`. The default adapter encrypts values with AES-GCM before writing to browser `localStorage`, holding the master key as a non-extractable `CryptoKey` handle in IndexedDB, so key material is never stored as plaintext. Pass your own `StorageAdapter` to the `HyperliquidAgentStore` constructor to use a different backend — a custom adapter bypasses this encryption and is responsible for protecting the key at rest.
|
|
37
37
|
|
|
38
|
-
##
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
`
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
`
|
|
49
|
-
|
|
50
|
-
|
|
38
|
+
## Ledger asset identity
|
|
39
|
+
|
|
40
|
+
Transfers carry the backend registry `Asset`, including its logo, numeric `id`,
|
|
41
|
+
and optional `wireId` and `l1Address`. Hyperliquid spot ledger tokens use
|
|
42
|
+
`NAME:tokenId`. The mapper joins only `tokenId` to `Asset.wireId`; it never
|
|
43
|
+
matches `NAME` to a display symbol. Bare protocol `USDC` resolves by reserved
|
|
44
|
+
spot token index `0`. Missing identities raise a stale or mis-keyed registry
|
|
45
|
+
error. The mapper never fabricates an asset or drops an unresolved transfer.
|
|
46
|
+
|
|
47
|
+
The fixed-USDC `deposit` and `withdraw` deltas resolve the registry `Asset`
|
|
48
|
+
by reserved spot token index `0`. Their `usdc` field identifies the venue's
|
|
49
|
+
collateral, not an arbitrary token. Consumers read `asset.displaySymbol` and
|
|
50
|
+
`asset.logoURI` on every ledger activity without a string exception.
|
|
51
|
+
`Fee.asset` remains a display string.
|
|
52
|
+
|
|
53
|
+
### Hyperliquid ledger coverage
|
|
54
|
+
|
|
55
|
+
The following table enumerates the ledger variants in the
|
|
56
|
+
[primary WebSocket definitions](https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/websocket/subscriptions#data-type-definitions).
|
|
57
|
+
The [exchange API](https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/exchange-endpoint)
|
|
58
|
+
also documents `sendAsset`. Its ledger wire type is `send`.
|
|
59
|
+
The [spot metadata API](https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/spot)
|
|
60
|
+
defines token indices and `tokenId`.
|
|
61
|
+
|
|
62
|
+
| Delta | Activity or explicit exclusion |
|
|
51
63
|
| --- | --- |
|
|
52
|
-
|
|
|
53
|
-
| `
|
|
54
|
-
| `
|
|
55
|
-
| `
|
|
56
|
-
| `
|
|
57
|
-
| `
|
|
58
|
-
| `
|
|
59
|
-
|
|
|
60
|
-
|
|
|
61
|
-
|
|
|
62
|
-
|
|
|
63
|
-
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
})
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
The default filter is `ACTIVE_ORDER_STATUSES`: PENDING, OPEN,
|
|
81
|
-
PARTIALLY_FILLED, and TRIGGERED. Active filters read `frontendOpenOrders`.
|
|
82
|
-
Terminal filters read `historicalOrders`. Mixed filters read both.
|
|
83
|
-
`twapHistory` supplies both running and finished TWAP parents.
|
|
84
|
-
`getOrder` reads `orderStatus` and uses the same mapper.
|
|
85
|
-
|
|
86
|
-
The venue returns at most 2,000 historical orders. The provider returns the
|
|
87
|
-
available matching rows in one response; it does not expose older pages.
|
|
88
|
-
|
|
89
|
-
The `orderUpdates` WebSocket feed omits execution metadata. The provider reads
|
|
90
|
-
`orderStatus` for each update, then retains the stream's status and quantities.
|
|
91
|
-
The provider emits frames in stream order after these HTTP reads finish.
|
|
92
|
-
Unavailable metadata reports a decode failure instead of inventing an order type.
|
|
64
|
+
| `spotTransfer` | Transfer between distinct accounts; resolve the token wire ID. |
|
|
65
|
+
| `send` | Transfer between distinct accounts; resolve the token wire ID or reserved USDC identity. |
|
|
66
|
+
| `internalTransfer` | USDC transfer between distinct accounts; resolve token index `0`. |
|
|
67
|
+
| `subAccountTransfer` | USDC transfer between master and subaccount addresses; resolve token index `0`. |
|
|
68
|
+
| `deposit` | Deposit with the USDC registry asset at token index `0`. |
|
|
69
|
+
| `withdraw` | Withdrawal with the USDC registry asset at token index `0`. |
|
|
70
|
+
| `liquidation` | Liquidation with resolved positions. |
|
|
71
|
+
| `accountClassTransfer` | Excluded: `toPerp` describes a spot/perp movement within one account, not a counterparty transfer. |
|
|
72
|
+
| `vaultCreate` | Excluded: vault creation and capital allocation require a vault activity model. |
|
|
73
|
+
| `vaultDeposit` | Outbound USDC transfer to the vault; resolve token index `0` and use `usdc`. |
|
|
74
|
+
| `vaultDistribution` | Excluded: a vault distribution requires vault identity and investment semantics. |
|
|
75
|
+
| `vaultWithdraw` | USDC transfer from the vault to the user; use `netWithdrawnUsd` and preserve accounting fields in `meta`. |
|
|
76
|
+
| `vaultLeaderCommission` | Excluded: commission income is not a transfer instruction and lacks a source counterparty. |
|
|
77
|
+
| `spotGenesis` | Excluded: token allocation has no source counterparty. |
|
|
78
|
+
| `rewardsClaim` | Excluded: reward income has no source counterparty. |
|
|
79
|
+
|
|
80
|
+
Vault withdrawal direction follows the queried account: inbound for the user,
|
|
81
|
+
outbound for the vault. The documented `vaultDeposit` payload has no depositor
|
|
82
|
+
field. A query for the vault account therefore raises `ValidationError` for that
|
|
83
|
+
row instead of inventing a counterparty. Depositor-account queries map normally.
|
|
84
|
+
|
|
85
|
+
The mapper excludes same-account movements in the transfer variants.
|
|
86
|
+
Unknown future delta types remain outside the supported activity model.
|
|
87
|
+
These exclusions do not apply to missing assets in supported transfer rows:
|
|
88
|
+
the mapper rejects those rows with an error instead of silently omitting them.
|
|
93
89
|
|
|
94
90
|
## Documentation
|
|
95
91
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperliquidProvider.d.ts","sourceRoot":"","sources":["../../src/HyperliquidProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,mBAAmB,
|
|
1
|
+
{"version":3,"file":"HyperliquidProvider.d.ts","sourceRoot":"","sources":["../../src/HyperliquidProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,mBAAmB,EAgBxB,KAAK,cAAc,EACpB,MAAM,iBAAiB,CAAA;AA0BxB,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,GAAG,EAAa,MAAM,MAAM,CAAA;AAoBxD,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,CA+S1B"}
|
|
@@ -17,6 +17,7 @@ const getOrder_js_1 = require("./services/getOrder.js");
|
|
|
17
17
|
const getOrders_js_1 = require("./services/getOrders.js");
|
|
18
18
|
const getPortfolioHistory_js_1 = require("./services/getPortfolioHistory.js");
|
|
19
19
|
const getPositions_js_1 = require("./services/getPositions.js");
|
|
20
|
+
const getRunningTwaps_js_1 = require("./services/getRunningTwaps.js");
|
|
20
21
|
const HyperliquidAgentStore_js_1 = require("./signers/HyperliquidAgentStore.js");
|
|
21
22
|
const signActions_js_1 = require("./signers/signActions.js");
|
|
22
23
|
const infoClient_js_1 = require("./utils/infoClient.js");
|
|
@@ -111,10 +112,10 @@ function hyperliquidProvider(options = {}) {
|
|
|
111
112
|
getMarketSettings: (params, opts) => (0, getMarketSettings_js_1.getMarketSettings)(contextRef.require(), { address: params.address, market: params.market }, opts),
|
|
112
113
|
getOrders: (params, opts) => (0, getOrders_js_1.getOrders)(contextRef.require(), {
|
|
113
114
|
address: params.address,
|
|
114
|
-
statuses: params.statuses,
|
|
115
115
|
marketId: params.marketId,
|
|
116
116
|
limit: params.limit,
|
|
117
117
|
}, opts),
|
|
118
|
+
getRunningTwaps: (params, opts) => (0, getRunningTwaps_js_1.getRunningTwaps)(contextRef.require(), { address: params.address, marketId: params.marketId }, opts),
|
|
118
119
|
getOrder: (params, opts) => (0, getOrder_js_1.getOrder)(contextRef.require(), { address: params.address, id: params.id }, opts),
|
|
119
120
|
getFills: (params, opts) => (0, getFills_js_1.getFills)(contextRef.require(), {
|
|
120
121
|
address: params.address,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperliquidProvider.js","sourceRoot":"","sources":["../../src/HyperliquidProvider.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"HyperliquidProvider.js","sourceRoot":"","sources":["../../src/HyperliquidProvider.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -18,6 +18,8 @@ export type { GetPortfolioHistoryParams } from './services/getPortfolioHistory.j
|
|
|
18
18
|
export { getPortfolioHistory } from './services/getPortfolioHistory.js';
|
|
19
19
|
export type { GetPositionsParams } from './services/getPositions.js';
|
|
20
20
|
export { getPositions } from './services/getPositions.js';
|
|
21
|
+
export type { GetRunningTwapsParams } from './services/getRunningTwaps.js';
|
|
22
|
+
export { getRunningTwaps } from './services/getRunningTwaps.js';
|
|
21
23
|
export type { HyperliquidAgent } from './signers/HyperliquidAgentStore.js';
|
|
22
24
|
export { HyperliquidAgentStore } from './signers/HyperliquidAgentStore.js';
|
|
23
25
|
export * from './types/index.js';
|
package/dist/cjs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAA;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EACL,2BAA2B,EAC3B,6BAA6B,EAC7B,YAAY,IAAI,wBAAwB,GACzC,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,0BAA0B,EAC/B,mBAAmB,GACpB,MAAM,0BAA0B,CAAA;AACjC,YAAY,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,YAAY,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,YAAY,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACvD,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,YAAY,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AACvE,YAAY,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACzD,YAAY,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAA;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC1E,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,OAAO,EACL,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,sCAAsC,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAA;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EACL,2BAA2B,EAC3B,6BAA6B,EAC7B,YAAY,IAAI,wBAAwB,GACzC,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,0BAA0B,EAC/B,mBAAmB,GACpB,MAAM,0BAA0B,CAAA;AACjC,YAAY,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,YAAY,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,YAAY,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACvD,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,YAAY,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AACvE,YAAY,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACzD,YAAY,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,YAAY,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAA;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC1E,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,OAAO,EACL,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,sCAAsC,CAAA"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.hyperliquidWsProvider = exports.HyperliquidWsProvider = exports.HyperliquidAgentStore = exports.getPositions = exports.getPortfolioHistory = exports.getOrders = exports.getOrder = exports.getFills = exports.getActivity = exports.getAccountExists = exports.getAccount = exports.hyperliquidProvider = exports.HYPERLIQUID_PROVIDER_KEY = exports.HYPERLIQUID_FEE_TIER_FALLBACK = exports.DEFAULT_HYPERLIQUID_API_URL = exports.getAccountSummary = exports.projectHyperliquidConfigSettings = void 0;
|
|
17
|
+
exports.hyperliquidWsProvider = exports.HyperliquidWsProvider = exports.HyperliquidAgentStore = exports.getRunningTwaps = exports.getPositions = exports.getPortfolioHistory = exports.getOrders = exports.getOrder = exports.getFills = exports.getActivity = exports.getAccountExists = exports.getAccount = exports.hyperliquidProvider = exports.HYPERLIQUID_PROVIDER_KEY = exports.HYPERLIQUID_FEE_TIER_FALLBACK = exports.DEFAULT_HYPERLIQUID_API_URL = exports.getAccountSummary = exports.projectHyperliquidConfigSettings = void 0;
|
|
18
18
|
var accountConfig_js_1 = require("./accountConfig.js");
|
|
19
19
|
Object.defineProperty(exports, "projectHyperliquidConfigSettings", { enumerable: true, get: function () { return accountConfig_js_1.projectHyperliquidConfigSettings; } });
|
|
20
20
|
var accountSummary_js_1 = require("./accountSummary.js");
|
|
@@ -41,6 +41,8 @@ var getPortfolioHistory_js_1 = require("./services/getPortfolioHistory.js");
|
|
|
41
41
|
Object.defineProperty(exports, "getPortfolioHistory", { enumerable: true, get: function () { return getPortfolioHistory_js_1.getPortfolioHistory; } });
|
|
42
42
|
var getPositions_js_1 = require("./services/getPositions.js");
|
|
43
43
|
Object.defineProperty(exports, "getPositions", { enumerable: true, get: function () { return getPositions_js_1.getPositions; } });
|
|
44
|
+
var getRunningTwaps_js_1 = require("./services/getRunningTwaps.js");
|
|
45
|
+
Object.defineProperty(exports, "getRunningTwaps", { enumerable: true, get: function () { return getRunningTwaps_js_1.getRunningTwaps; } });
|
|
44
46
|
var HyperliquidAgentStore_js_1 = require("./signers/HyperliquidAgentStore.js");
|
|
45
47
|
Object.defineProperty(exports, "HyperliquidAgentStore", { enumerable: true, get: function () { return HyperliquidAgentStore_js_1.HyperliquidAgentStore; } });
|
|
46
48
|
__exportStar(require("./types/index.js"), exports);
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAaA,uDAAqE;AAA5D,oIAAA,gCAAgC,OAAA;AACzC,yDAAuD;AAA9C,sHAAA,iBAAiB,OAAA;AAC1B,+CAIuB;AAHrB,2HAAA,2BAA2B,OAAA;AAC3B,6HAAA,6BAA6B,OAAA;AAC7B,wHAAA,YAAY,OAA4B;AAE1C,mEAIiC;AAD/B,6HAAA,mBAAmB,OAAA;AAGrB,0DAAqD;AAA5C,2GAAA,UAAU,OAAA;AAEnB,sEAAiE;AAAxD,uHAAA,gBAAgB,OAAA;AAEzB,4DAAuD;AAA9C,6GAAA,WAAW,OAAA;AAEpB,sDAAiD;AAAxC,uGAAA,QAAQ,OAAA;AAEjB,sDAAiD;AAAxC,uGAAA,QAAQ,OAAA;AAEjB,wDAAmD;AAA1C,yGAAA,SAAS,OAAA;AAElB,4EAAuE;AAA9D,6HAAA,mBAAmB,OAAA;AAE5B,8DAAyD;AAAhD,+GAAA,YAAY,OAAA;AAErB,+EAA0E;AAAjE,iIAAA,qBAAqB,OAAA;AAC9B,mDAAgC;AAChC,mDAAgC;AAChC,iFAG6C;AAF3C,iIAAA,qBAAqB,OAAA;AACrB,iIAAA,qBAAqB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAaA,uDAAqE;AAA5D,oIAAA,gCAAgC,OAAA;AACzC,yDAAuD;AAA9C,sHAAA,iBAAiB,OAAA;AAC1B,+CAIuB;AAHrB,2HAAA,2BAA2B,OAAA;AAC3B,6HAAA,6BAA6B,OAAA;AAC7B,wHAAA,YAAY,OAA4B;AAE1C,mEAIiC;AAD/B,6HAAA,mBAAmB,OAAA;AAGrB,0DAAqD;AAA5C,2GAAA,UAAU,OAAA;AAEnB,sEAAiE;AAAxD,uHAAA,gBAAgB,OAAA;AAEzB,4DAAuD;AAA9C,6GAAA,WAAW,OAAA;AAEpB,sDAAiD;AAAxC,uGAAA,QAAQ,OAAA;AAEjB,sDAAiD;AAAxC,uGAAA,QAAQ,OAAA;AAEjB,wDAAmD;AAA1C,yGAAA,SAAS,OAAA;AAElB,4EAAuE;AAA9D,6HAAA,mBAAmB,OAAA;AAE5B,8DAAyD;AAAhD,+GAAA,YAAY,OAAA;AAErB,oEAA+D;AAAtD,qHAAA,eAAe,OAAA;AAExB,+EAA0E;AAAjE,iIAAA,qBAAqB,OAAA;AAC9B,mDAAgC;AAChC,mDAAgC;AAChC,iFAG6C;AAF3C,iIAAA,qBAAqB,OAAA;AACrB,iIAAA,qBAAqB,OAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getActivity.d.ts","sourceRoot":"","sources":["../../../src/services/getActivity.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"getActivity.d.ts","sourceRoot":"","sources":["../../../src/services/getActivity.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EACV,kBAAkB,EAInB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAMnC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAyBvD,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAA;IAEhB,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB,IAAI,CAAC,EAAE,YAAY,EAAE,CAAA;CACtB;AAqGD,eAAO,MAAM,WAAW,GACtB,oBAAoB,kBAAkB,EACtC,QAAQ,iBAAiB,EACzB,UAAU,iBAAiB,KAC1B,OAAO,CAAC,kBAAkB,CAiE5B,CAAA"}
|
|
@@ -4,14 +4,20 @@ exports.getActivity = void 0;
|
|
|
4
4
|
const perps_sdk_1 = require("@lifi/perps-sdk");
|
|
5
5
|
const perps_types_1 = require("@lifi/perps-types");
|
|
6
6
|
const constants_js_1 = require("../constants.js");
|
|
7
|
-
const index_js_1 = require("../
|
|
7
|
+
const index_js_1 = require("../types/index.js");
|
|
8
|
+
const index_js_2 = require("../utils/index.js");
|
|
8
9
|
const infoClient_js_1 = require("../utils/infoClient.js");
|
|
9
10
|
const MARKET_BEARING_TYPES = new Set([
|
|
10
11
|
perps_types_1.ActivityType.FUNDING,
|
|
11
12
|
perps_types_1.ActivityType.LIQUIDATION,
|
|
12
13
|
]);
|
|
14
|
+
const ASSET_BEARING_TYPES = new Set([
|
|
15
|
+
perps_types_1.ActivityType.DEPOSIT,
|
|
16
|
+
perps_types_1.ActivityType.WITHDRAWAL,
|
|
17
|
+
perps_types_1.ActivityType.TRANSFER,
|
|
18
|
+
]);
|
|
13
19
|
const needsMarkets = (typeFilter) => !typeFilter || typeFilter.some((t) => MARKET_BEARING_TYPES.has(t));
|
|
14
|
-
const fetchActivityData = async (apiUrl, typeFilter, timeParams, resolveMarket, options) => {
|
|
20
|
+
const fetchActivityData = async (apiUrl, typeFilter, timeParams, assetRegistry, resolveMarket, options) => {
|
|
15
21
|
const needLedger = !typeFilter || typeFilter.some((t) => t !== perps_types_1.ActivityType.FUNDING);
|
|
16
22
|
const needFunding = !typeFilter || typeFilter.includes(perps_types_1.ActivityType.FUNDING);
|
|
17
23
|
const [ledgerUpdates, fundingUpdates] = await Promise.all([
|
|
@@ -23,11 +29,23 @@ const fetchActivityData = async (apiUrl, typeFilter, timeParams, resolveMarket,
|
|
|
23
29
|
: Promise.resolve([]),
|
|
24
30
|
]);
|
|
25
31
|
const ledgerItems = ledgerUpdates.flatMap((entry) => {
|
|
26
|
-
|
|
32
|
+
if (typeFilter !== undefined &&
|
|
33
|
+
(((0, index_js_1.isDepositDelta)(entry.delta) &&
|
|
34
|
+
!typeFilter.includes(perps_types_1.ActivityType.DEPOSIT)) ||
|
|
35
|
+
((0, index_js_1.isWithdrawDelta)(entry.delta) &&
|
|
36
|
+
!typeFilter.includes(perps_types_1.ActivityType.WITHDRAWAL)) ||
|
|
37
|
+
(!typeFilter.includes(perps_types_1.ActivityType.TRANSFER) &&
|
|
38
|
+
((0, index_js_1.isSpotTransferDelta)(entry.delta) ||
|
|
39
|
+
(0, index_js_1.isSendAssetDelta)(entry.delta) ||
|
|
40
|
+
(0, index_js_1.isCollateralTransferDelta)(entry.delta) ||
|
|
41
|
+
(0, index_js_1.isVaultTransferDelta)(entry.delta))))) {
|
|
42
|
+
return [];
|
|
43
|
+
}
|
|
44
|
+
const item = (0, index_js_2.mapLedgerEntry)(entry, constants_js_1.PROVIDER_KEY, timeParams.user, assetRegistry, resolveMarket);
|
|
27
45
|
return item === null ? [] : [item];
|
|
28
46
|
});
|
|
29
47
|
const fundingItems = fundingUpdates.flatMap((entry) => {
|
|
30
|
-
const item = (0,
|
|
48
|
+
const item = (0, index_js_2.mapFundingActivity)(entry, constants_js_1.PROVIDER_KEY, resolveMarket);
|
|
31
49
|
return item === null ? [] : [item];
|
|
32
50
|
});
|
|
33
51
|
const merged = [...ledgerItems, ...fundingItems].sort((a, b) => new Date(b.timestamp).getTime() - new Date(a.timestamp).getTime());
|
|
@@ -42,6 +60,11 @@ const getActivity = async ({ client, apiUrl }, params, options) => {
|
|
|
42
60
|
if (needsMarkets(params.type)) {
|
|
43
61
|
await registry.sync();
|
|
44
62
|
}
|
|
63
|
+
const assetRegistry = (0, perps_sdk_1.getAssetRegistry)(client, constants_js_1.PROVIDER_KEY);
|
|
64
|
+
if (params.type === undefined ||
|
|
65
|
+
params.type.some((type) => ASSET_BEARING_TYPES.has(type))) {
|
|
66
|
+
await assetRegistry.sync();
|
|
67
|
+
}
|
|
45
68
|
const infoOpts = (0, infoClient_js_1.hlInfoOptions)(client, options);
|
|
46
69
|
const limit = Math.min(params.limit ?? constants_js_1.DEFAULT_HISTORY_LIMIT, constants_js_1.MAX_HISTORY_LIMIT);
|
|
47
70
|
const timeParams = {
|
|
@@ -51,7 +74,7 @@ const getActivity = async ({ client, apiUrl }, params, options) => {
|
|
|
51
74
|
: {}),
|
|
52
75
|
...(params.endTime === undefined ? {} : { endTime: params.endTime }),
|
|
53
76
|
};
|
|
54
|
-
const merged = await fetchActivityData(apiUrl, params.type, timeParams, (coin) => registry.get(coin), infoOpts);
|
|
77
|
+
const merged = await fetchActivityData(apiUrl, params.type, timeParams, assetRegistry, (coin) => registry.get(coin), infoOpts);
|
|
55
78
|
const filtered = params.cursor === undefined
|
|
56
79
|
? merged
|
|
57
80
|
: merged.filter((item) => new Date(item.timestamp).getTime() <
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getActivity.js","sourceRoot":"","sources":["../../../src/services/getActivity.ts"],"names":[],"mappings":";;;AAAA,+
|
|
1
|
+
{"version":3,"file":"getActivity.js","sourceRoot":"","sources":["../../../src/services/getActivity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOrder.d.ts","sourceRoot":"","sources":["../../../src/services/getOrder.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACvB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAG9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"getOrder.d.ts","sourceRoot":"","sources":["../../../src/services/getOrder.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACvB,MAAM,iBAAiB,CAAA;AACxB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAG9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAUvD,MAAM,MAAM,cAAc,GAAG,sBAAsB,CAAA;AAQnD,eAAO,MAAM,QAAQ,GACnB,oBAAoB,kBAAkB,EACtC,QAAQ,cAAc,EACtB,UAAU,iBAAiB,KAC1B,OAAO,CAAC,KAAK,CA6Bf,CAAA"}
|
|
@@ -7,23 +7,14 @@ const constants_js_1 = require("../constants.js");
|
|
|
7
7
|
const index_js_1 = require("../utils/index.js");
|
|
8
8
|
const infoClient_js_1 = require("../utils/infoClient.js");
|
|
9
9
|
const getOrder = async ({ client, apiUrl }, params, options) => {
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
(!/^[0-9]+$/.test(params.id) || !Number.isSafeInteger(oid))) {
|
|
14
|
-
const err = new perps_sdk_1.PerpsError(perps_types_1.PerpsErrorCode.ValidationError, `Invalid order ID: ${params.id}. Expected a numeric oid or a 128-bit cloid.`);
|
|
10
|
+
const oid = Number.parseInt(params.id, 10);
|
|
11
|
+
if (Number.isNaN(oid)) {
|
|
12
|
+
const err = new perps_sdk_1.PerpsError(perps_types_1.PerpsErrorCode.ValidationError, `Invalid order ID: ${params.id}. Must be a numeric oid.`);
|
|
15
13
|
err.tool = constants_js_1.PROVIDER_KEY;
|
|
16
14
|
throw err;
|
|
17
15
|
}
|
|
18
16
|
const status = await (0, infoClient_js_1.infoRequest)(apiUrl, { type: 'orderStatus', user: params.address, oid }, (0, infoClient_js_1.hlInfoOptions)(client, options));
|
|
19
17
|
if (status.status !== 'order') {
|
|
20
|
-
const history = await (0, infoClient_js_1.infoRequest)(apiUrl, { type: 'twapHistory', user: params.address }, (0, infoClient_js_1.hlInfoOptions)(client, options));
|
|
21
|
-
const twap = history.find((entry) => String(entry.twapId) === params.id);
|
|
22
|
-
if (twap !== undefined) {
|
|
23
|
-
const registry = (0, perps_sdk_1.getMarketRegistry)(client, constants_js_1.PROVIDER_KEY);
|
|
24
|
-
await registry.sync();
|
|
25
|
-
return (0, index_js_1.mapOrder)(twap, registry.require(twap.state.coin));
|
|
26
|
-
}
|
|
27
18
|
const err = new perps_sdk_1.PerpsError(perps_types_1.PerpsErrorCode.OrderNotFound, `Order not found: ${params.id}`);
|
|
28
19
|
err.tool = constants_js_1.PROVIDER_KEY;
|
|
29
20
|
throw err;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOrder.js","sourceRoot":"","sources":["../../../src/services/getOrder.ts"],"names":[],"mappings":";;;AAAA,+CAKwB;AAExB,mDAAkD;AAClD,kDAA8C;
|
|
1
|
+
{"version":3,"file":"getOrder.js","sourceRoot":"","sources":["../../../src/services/getOrder.ts"],"names":[],"mappings":";;;AAAA,+CAKwB;AAExB,mDAAkD;AAClD,kDAA8C;AAG9C,gDAA4C;AAC5C,0DAAmE;AAe5D,MAAM,QAAQ,GAAG,KAAK,EAC3B,EAAE,MAAM,EAAE,MAAM,EAAsB,EACtC,MAAsB,EACtB,OAA2B,EACX,EAAE;IAClB,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;IAC1C,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,IAAI,sBAAU,CACxB,4BAAc,CAAC,eAAe,EAC9B,qBAAqB,MAAM,CAAC,EAAE,0BAA0B,CACzD,CAAA;QACD,GAAG,CAAC,IAAI,GAAG,2BAAY,CAAA;QACvB,MAAM,GAAG,CAAA;IACX,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,IAAA,2BAAW,EAC9B,MAAM,EACN,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,EAClD,IAAA,6BAAa,EAAC,MAAM,EAAE,OAAO,CAAC,CAC/B,CAAA;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,IAAI,sBAAU,CACxB,4BAAc,CAAC,aAAa,EAC5B,oBAAoB,MAAM,CAAC,EAAE,EAAE,CAChC,CAAA;QACD,GAAG,CAAC,IAAI,GAAG,2BAAY,CAAA;QACvB,MAAM,GAAG,CAAA;IACX,CAAC;IAED,MAAM,QAAQ,GAAG,IAAA,6BAAiB,EAAC,MAAM,EAAE,2BAAY,CAAC,CAAA;IACxD,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;IACrB,OAAO,IAAA,mBAAQ,EAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;AAC1E,CAAC,CAAA;AAjCY,QAAA,QAAQ,YAiCpB"}
|
|
@@ -1,6 +1,11 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type SDKRequestOptions } from '@lifi/perps-sdk';
|
|
2
2
|
import type { OrdersResponse } from '@lifi/perps-types';
|
|
3
|
+
import type { Address } from 'viem';
|
|
3
4
|
import type { HyperliquidContext } from '../context.js';
|
|
4
|
-
export
|
|
5
|
+
export interface GetOrdersParams {
|
|
6
|
+
address: Address;
|
|
7
|
+
marketId?: string;
|
|
8
|
+
limit?: number;
|
|
9
|
+
}
|
|
5
10
|
export declare const getOrders: ({ client, apiUrl }: HyperliquidContext, params: GetOrdersParams, options?: SDKRequestOptions) => Promise<OrdersResponse>;
|
|
6
11
|
//# sourceMappingURL=getOrders.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOrders.d.ts","sourceRoot":"","sources":["../../../src/services/getOrders.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"getOrders.d.ts","sourceRoot":"","sources":["../../../src/services/getOrders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAC3E,OAAO,KAAK,EAAa,cAAc,EAAgB,MAAM,mBAAmB,CAAA;AAChF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAkBvD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAA;IAEhB,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAYD,eAAO,MAAM,SAAS,GACpB,oBAAoB,kBAAkB,EACtC,QAAQ,eAAe,EACvB,UAAU,iBAAiB,KAC1B,OAAO,CAAC,cAAc,CAyDxB,CAAA"}
|
|
@@ -6,57 +6,45 @@ const constants_js_1 = require("../constants.js");
|
|
|
6
6
|
const index_js_1 = require("../utils/index.js");
|
|
7
7
|
const infoClient_js_1 = require("../utils/infoClient.js");
|
|
8
8
|
const getOrders = async ({ client, apiUrl }, params, options) => {
|
|
9
|
-
const statuses = params.statuses ?? [...perps_sdk_1.ACTIVE_ORDER_STATUSES];
|
|
10
|
-
if (statuses.length === 0) {
|
|
11
|
-
return {
|
|
12
|
-
provider: constants_js_1.PROVIDER_KEY,
|
|
13
|
-
orders: [],
|
|
14
|
-
pagination: { limit: params.limit ?? 0, hasMore: false },
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
9
|
const registry = (0, perps_sdk_1.getMarketRegistry)(client, constants_js_1.PROVIDER_KEY);
|
|
18
10
|
const markets = await registry.sync();
|
|
19
11
|
const infoOpts = (0, infoClient_js_1.hlInfoOptions)(client, options);
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
terminal
|
|
31
|
-
? (0, infoClient_js_1.infoRequest)(apiUrl, { type: 'historicalOrders', user: params.address }, infoOpts)
|
|
32
|
-
: [],
|
|
33
|
-
(0, infoClient_js_1.infoRequest)(apiUrl, { type: 'twapHistory', user: params.address }, infoOpts),
|
|
34
|
-
]);
|
|
35
|
-
const rows = new Map();
|
|
36
|
-
for (const detail of historical) {
|
|
37
|
-
const order = (0, index_js_1.mapOrder)(detail, registry.require(detail.order.coin));
|
|
38
|
-
rows.set(order.orderId, order);
|
|
39
|
-
}
|
|
40
|
-
const raw = open.flat();
|
|
41
|
-
const childIds = new Set(raw.flatMap((order) => (order.children ?? []).map((child) => child.oid)));
|
|
42
|
-
for (const order of raw) {
|
|
43
|
-
if (!childIds.has(order.oid)) {
|
|
44
|
-
rows.set(String(order.oid), (0, index_js_1.mapOrder)(order, registry.require(order.coin)));
|
|
45
|
-
}
|
|
46
|
-
for (const child of order.children ?? []) {
|
|
47
|
-
rows.set(String(child.oid), (0, index_js_1.mapOrder)(child, registry.require(child.coin), String(order.oid)));
|
|
12
|
+
const ordersResults = await Promise.all((0, index_js_1.perpsDexNames)(markets).map((name) => (0, infoClient_js_1.infoRequest)(apiUrl, {
|
|
13
|
+
type: 'frontendOpenOrders',
|
|
14
|
+
user: params.address,
|
|
15
|
+
...(name ? { dex: name } : {}),
|
|
16
|
+
}, infoOpts)));
|
|
17
|
+
const raw = ordersResults.flat();
|
|
18
|
+
const childOids = new Set();
|
|
19
|
+
for (const o of raw) {
|
|
20
|
+
for (const child of o.children ?? []) {
|
|
21
|
+
childOids.add(child.oid);
|
|
48
22
|
}
|
|
49
23
|
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
24
|
+
const nonChild = raw.filter((o) => !childOids.has(o.oid));
|
|
25
|
+
let openOrders = nonChild
|
|
26
|
+
.filter((o) => !(0, index_js_1.isTriggerOrder)(o))
|
|
27
|
+
.map((o) => (0, index_js_1.mapOpenOrder)(o, registry.require(o.coin)));
|
|
28
|
+
let triggerOrders = [
|
|
29
|
+
...nonChild
|
|
30
|
+
.filter((o) => (0, index_js_1.isTriggerOrder)(o))
|
|
31
|
+
.map((o) => (0, index_js_1.mapTriggerOrder)(o, registry.require(o.coin))),
|
|
32
|
+
...raw
|
|
33
|
+
.filter((o) => childOids.has(o.oid))
|
|
34
|
+
.map((o) => (0, index_js_1.mapTriggerOrder)(o, registry.require(o.coin))),
|
|
35
|
+
];
|
|
36
|
+
if (params.marketId !== undefined) {
|
|
37
|
+
openOrders = openOrders.filter((o) => o.market.id === params.marketId);
|
|
38
|
+
triggerOrders = triggerOrders.filter((o) => o.market.id === params.marketId);
|
|
53
39
|
}
|
|
54
|
-
const matching = [...rows.values()].filter((order) => statuses.includes(order.status) &&
|
|
55
|
-
(params.marketId === undefined || order.market.id === params.marketId));
|
|
56
40
|
return {
|
|
57
41
|
provider: constants_js_1.PROVIDER_KEY,
|
|
58
|
-
|
|
59
|
-
|
|
42
|
+
openOrders,
|
|
43
|
+
triggerOrders,
|
|
44
|
+
pagination: {
|
|
45
|
+
limit: params.limit ?? openOrders.length + triggerOrders.length,
|
|
46
|
+
hasMore: false,
|
|
47
|
+
},
|
|
60
48
|
};
|
|
61
49
|
};
|
|
62
50
|
exports.getOrders = getOrders;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOrders.js","sourceRoot":"","sources":["../../../src/services/getOrders.ts"],"names":[],"mappings":";;;AAAA,+
|
|
1
|
+
{"version":3,"file":"getOrders.js","sourceRoot":"","sources":["../../../src/services/getOrders.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type SDKRequestOptions } from '@lifi/perps-sdk';
|
|
2
|
+
import { type TwapOrder } from '@lifi/perps-types';
|
|
3
|
+
import type { Address } from 'viem';
|
|
4
|
+
import type { HyperliquidContext } from '../context.js';
|
|
5
|
+
export interface GetRunningTwapsParams {
|
|
6
|
+
address: Address;
|
|
7
|
+
marketId?: string;
|
|
8
|
+
}
|
|
9
|
+
export declare const getRunningTwaps: ({ client, apiUrl }: HyperliquidContext, params: GetRunningTwapsParams, options?: SDKRequestOptions) => Promise<TwapOrder[]>;
|
|
10
|
+
//# sourceMappingURL=getRunningTwaps.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getRunningTwaps.d.ts","sourceRoot":"","sources":["../../../src/services/getRunningTwaps.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,iBAAiB,EAEvB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAGL,KAAK,SAAS,EAEf,MAAM,mBAAmB,CAAA;AAE1B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAqBvD,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAGD,eAAO,MAAM,eAAe,GAC1B,oBAAoB,kBAAkB,EACtC,QAAQ,qBAAqB,EAC7B,UAAU,iBAAiB,KAC1B,OAAO,CAAC,SAAS,EAAE,CA2CrB,CAAA"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getRunningTwaps = void 0;
|
|
7
|
+
const perps_sdk_1 = require("@lifi/perps-sdk");
|
|
8
|
+
const perps_types_1 = require("@lifi/perps-types");
|
|
9
|
+
const big_js_1 = __importDefault(require("big.js"));
|
|
10
|
+
const constants_js_1 = require("../constants.js");
|
|
11
|
+
const infoClient_js_1 = require("../utils/infoClient.js");
|
|
12
|
+
const getRunningTwaps = async ({ client, apiUrl }, params, options) => {
|
|
13
|
+
const registry = (0, perps_sdk_1.getMarketRegistry)(client, constants_js_1.PROVIDER_KEY);
|
|
14
|
+
const [history] = await Promise.all([
|
|
15
|
+
(0, infoClient_js_1.infoRequest)(apiUrl, { type: 'twapHistory', user: params.address }, (0, infoClient_js_1.hlInfoOptions)(client, options)),
|
|
16
|
+
registry.sync(),
|
|
17
|
+
]);
|
|
18
|
+
return history
|
|
19
|
+
.filter((entry) => entry.status.status === 'activated' &&
|
|
20
|
+
(params.marketId === undefined || entry.state.coin === params.marketId))
|
|
21
|
+
.map((entry) => {
|
|
22
|
+
if (entry.twapId === undefined) {
|
|
23
|
+
throw new perps_sdk_1.PerpsError(perps_types_1.PerpsErrorCode.ThirdPartyError, 'Hyperliquid returned an active TWAP without a twapId.');
|
|
24
|
+
}
|
|
25
|
+
const filledSize = new big_js_1.default(entry.state.executedSz);
|
|
26
|
+
return {
|
|
27
|
+
twapId: String(entry.twapId),
|
|
28
|
+
market: (0, perps_sdk_1.toMarketDisplay)(registry.require(entry.state.coin)),
|
|
29
|
+
side: entry.state.side === 'B' ? perps_types_1.OrderSide.BUY : perps_types_1.OrderSide.SELL,
|
|
30
|
+
totalSize: entry.state.sz,
|
|
31
|
+
filledSize: entry.state.executedSz,
|
|
32
|
+
...(filledSize.eq(0)
|
|
33
|
+
? {}
|
|
34
|
+
: {
|
|
35
|
+
avgFillPrice: new big_js_1.default(entry.state.executedNtl)
|
|
36
|
+
.div(filledSize)
|
|
37
|
+
.toString(),
|
|
38
|
+
}),
|
|
39
|
+
startedAt: new Date(entry.state.timestamp).toISOString(),
|
|
40
|
+
durationSeconds: entry.state.minutes * 60,
|
|
41
|
+
status: perps_types_1.TwapOrderStatus.RUNNING,
|
|
42
|
+
};
|
|
43
|
+
});
|
|
44
|
+
};
|
|
45
|
+
exports.getRunningTwaps = getRunningTwaps;
|
|
46
|
+
//# sourceMappingURL=getRunningTwaps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getRunningTwaps.js","sourceRoot":"","sources":["../../../src/services/getRunningTwaps.ts"],"names":[],"mappings":";;;;;;AAAA,+CAKwB;AACxB,mDAK0B;AAC1B,oDAAwB;AAExB,kDAA8C;AAE9C,0DAAmE;AA0B5D,MAAM,eAAe,GAAG,KAAK,EAClC,EAAE,MAAM,EAAE,MAAM,EAAsB,EACtC,MAA6B,EAC7B,OAA2B,EACL,EAAE;IACxB,MAAM,QAAQ,GAAG,IAAA,6BAAiB,EAAC,MAAM,EAAE,2BAAY,CAAC,CAAA;IACxD,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAClC,IAAA,2BAAW,EACT,MAAM,EACN,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,EAC7C,IAAA,6BAAa,EAAC,MAAM,EAAE,OAAO,CAAC,CAC/B;QACD,QAAQ,CAAC,IAAI,EAAE;KAChB,CAAC,CAAA;IAEF,OAAO,OAAO;SACX,MAAM,CACL,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,WAAW;QACnC,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,QAAQ,CAAC,CAC1E;SACA,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACb,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,sBAAU,CAClB,4BAAc,CAAC,eAAe,EAC9B,uDAAuD,CACxD,CAAA;QACH,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,gBAAG,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;QAClD,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;YAC5B,MAAM,EAAE,IAAA,2BAAe,EAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC3D,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,uBAAS,CAAC,GAAG,CAAC,CAAC,CAAC,uBAAS,CAAC,IAAI;YAC/D,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE;YACzB,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU;YAClC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;gBAClB,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC;oBACE,YAAY,EAAE,IAAI,gBAAG,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC;yBAC3C,GAAG,CAAC,UAAU,CAAC;yBACf,QAAQ,EAAE;iBACd,CAAC;YACN,SAAS,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;YACxD,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE;YACzC,MAAM,EAAE,6BAAe,CAAC,OAAO;SAChC,CAAA;IACH,CAAC,CAAC,CAAA;AACN,CAAC,CAAA;AA/CY,QAAA,eAAe,mBA+C3B"}
|