@nadohq/client 0.1.0-alpha.3 → 0.1.0-alpha.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/dist/apis/base.cjs +3 -6
  2. package/dist/apis/base.cjs.map +1 -1
  3. package/dist/apis/base.d.cts +1 -2
  4. package/dist/apis/base.d.ts +1 -2
  5. package/dist/apis/base.js +1 -4
  6. package/dist/apis/base.js.map +1 -1
  7. package/dist/apis/market/MarketExecuteAPI.cjs +4 -27
  8. package/dist/apis/market/MarketExecuteAPI.cjs.map +1 -1
  9. package/dist/apis/market/MarketExecuteAPI.d.cts +3 -11
  10. package/dist/apis/market/MarketExecuteAPI.d.ts +3 -11
  11. package/dist/apis/market/MarketExecuteAPI.js +4 -27
  12. package/dist/apis/market/MarketExecuteAPI.js.map +1 -1
  13. package/dist/apis/market/MarketQueryAPI.cjs +2 -9
  14. package/dist/apis/market/MarketQueryAPI.cjs.map +1 -1
  15. package/dist/apis/market/MarketQueryAPI.d.cts +4 -8
  16. package/dist/apis/market/MarketQueryAPI.d.ts +4 -8
  17. package/dist/apis/market/MarketQueryAPI.js +2 -9
  18. package/dist/apis/market/MarketQueryAPI.js.map +1 -1
  19. package/dist/apis/market/index.d.cts +2 -2
  20. package/dist/apis/market/index.d.ts +2 -2
  21. package/dist/apis/market/types.cjs.map +1 -1
  22. package/dist/apis/market/types.d.cts +5 -9
  23. package/dist/apis/market/types.d.ts +5 -9
  24. package/dist/apis/perp/PerpExecuteAPI.cjs +0 -3
  25. package/dist/apis/perp/PerpExecuteAPI.cjs.map +1 -1
  26. package/dist/apis/perp/PerpExecuteAPI.d.cts +1 -2
  27. package/dist/apis/perp/PerpExecuteAPI.d.ts +1 -2
  28. package/dist/apis/perp/PerpExecuteAPI.js +0 -3
  29. package/dist/apis/perp/PerpExecuteAPI.js.map +1 -1
  30. package/dist/apis/perp/PerpQueryAPI.d.cts +1 -1
  31. package/dist/apis/perp/PerpQueryAPI.d.ts +1 -1
  32. package/dist/apis/perp/index.d.cts +1 -1
  33. package/dist/apis/perp/index.d.ts +1 -1
  34. package/dist/apis/spot/BaseSpotAPI.cjs +4 -4
  35. package/dist/apis/spot/BaseSpotAPI.cjs.map +1 -1
  36. package/dist/apis/spot/BaseSpotAPI.d.cts +1 -2
  37. package/dist/apis/spot/BaseSpotAPI.d.ts +1 -2
  38. package/dist/apis/spot/BaseSpotAPI.js +2 -2
  39. package/dist/apis/spot/BaseSpotAPI.js.map +1 -1
  40. package/dist/apis/spot/SpotExecuteAPI.cjs +8 -8
  41. package/dist/apis/spot/SpotExecuteAPI.cjs.map +1 -1
  42. package/dist/apis/spot/SpotExecuteAPI.d.cts +2 -3
  43. package/dist/apis/spot/SpotExecuteAPI.d.ts +2 -3
  44. package/dist/apis/spot/SpotExecuteAPI.js +2 -2
  45. package/dist/apis/spot/SpotExecuteAPI.js.map +1 -1
  46. package/dist/apis/spot/SpotQueryAPI.cjs +4 -4
  47. package/dist/apis/spot/SpotQueryAPI.cjs.map +1 -1
  48. package/dist/apis/spot/SpotQueryAPI.d.cts +1 -2
  49. package/dist/apis/spot/SpotQueryAPI.d.ts +1 -2
  50. package/dist/apis/spot/SpotQueryAPI.js +1 -1
  51. package/dist/apis/spot/SpotQueryAPI.js.map +1 -1
  52. package/dist/apis/spot/index.d.cts +2 -3
  53. package/dist/apis/spot/index.d.ts +2 -3
  54. package/dist/apis/spot/types.cjs.map +1 -1
  55. package/dist/apis/spot/types.d.cts +6 -2
  56. package/dist/apis/spot/types.d.ts +6 -2
  57. package/dist/apis/subaccount/SubaccountExecuteAPI.d.cts +1 -1
  58. package/dist/apis/subaccount/SubaccountExecuteAPI.d.ts +1 -1
  59. package/dist/apis/subaccount/SubaccountQueryAPI.cjs +1 -10
  60. package/dist/apis/subaccount/SubaccountQueryAPI.cjs.map +1 -1
  61. package/dist/apis/subaccount/SubaccountQueryAPI.d.cts +3 -10
  62. package/dist/apis/subaccount/SubaccountQueryAPI.d.ts +3 -10
  63. package/dist/apis/subaccount/SubaccountQueryAPI.js +1 -12
  64. package/dist/apis/subaccount/SubaccountQueryAPI.js.map +1 -1
  65. package/dist/apis/subaccount/index.cjs +4 -4
  66. package/dist/apis/subaccount/index.cjs.map +1 -1
  67. package/dist/apis/subaccount/index.d.cts +1 -1
  68. package/dist/apis/subaccount/index.d.ts +1 -1
  69. package/dist/apis/subaccount/index.js +2 -2
  70. package/dist/apis/subaccount/index.js.map +1 -1
  71. package/dist/apis/subaccount/types.cjs.map +1 -1
  72. package/dist/apis/subaccount/types.d.cts +1 -1
  73. package/dist/apis/subaccount/types.d.ts +1 -1
  74. package/dist/apis/ws/WebSocketExecuteAPI.cjs.map +1 -1
  75. package/dist/apis/ws/WebSocketExecuteAPI.d.cts +4 -4
  76. package/dist/apis/ws/WebSocketExecuteAPI.d.ts +4 -4
  77. package/dist/apis/ws/WebSocketExecuteAPI.js.map +1 -1
  78. package/dist/apis/ws/WebSocketQueryAPI.d.cts +1 -1
  79. package/dist/apis/ws/WebSocketQueryAPI.d.ts +1 -1
  80. package/dist/apis/ws/WebSocketSubscriptionAPI.d.cts +1 -1
  81. package/dist/apis/ws/WebSocketSubscriptionAPI.d.ts +1 -1
  82. package/dist/apis/ws/index.d.cts +1 -1
  83. package/dist/apis/ws/index.d.ts +1 -1
  84. package/dist/client.cjs.map +1 -1
  85. package/dist/client.d.cts +2 -3
  86. package/dist/client.d.ts +2 -3
  87. package/dist/client.js.map +1 -1
  88. package/dist/context.cjs +3 -3
  89. package/dist/context.cjs.map +1 -1
  90. package/dist/context.d.cts +1 -1
  91. package/dist/context.d.ts +1 -1
  92. package/dist/context.js +1 -1
  93. package/dist/context.js.map +1 -1
  94. package/dist/createNadoClient.d.cts +1 -2
  95. package/dist/createNadoClient.d.ts +1 -2
  96. package/dist/index.cjs +2 -4
  97. package/dist/index.cjs.map +1 -1
  98. package/dist/index.d.cts +3 -4
  99. package/dist/index.d.ts +3 -4
  100. package/dist/index.js +1 -2
  101. package/dist/index.js.map +1 -1
  102. package/package.json +6 -7
  103. package/src/apis/base.ts +2 -6
  104. package/src/apis/market/MarketExecuteAPI.ts +4 -38
  105. package/src/apis/market/MarketQueryAPI.ts +4 -11
  106. package/src/apis/market/types.ts +7 -13
  107. package/src/apis/perp/PerpExecuteAPI.ts +1 -6
  108. package/src/apis/spot/BaseSpotAPI.ts +3 -2
  109. package/src/apis/spot/SpotExecuteAPI.ts +3 -3
  110. package/src/apis/spot/SpotQueryAPI.ts +1 -1
  111. package/src/apis/spot/types.ts +6 -1
  112. package/src/apis/subaccount/SubaccountQueryAPI.ts +1 -14
  113. package/src/apis/subaccount/index.ts +2 -2
  114. package/src/apis/subaccount/types.ts +1 -1
  115. package/src/apis/ws/WebSocketExecuteAPI.ts +1 -1
  116. package/src/client.ts +1 -1
  117. package/src/context.ts +1 -1
  118. package/src/index.ts +1 -2
@@ -1,5 +1,5 @@
1
1
  import { EngineWithdrawCollateralParams, EngineTransferQuoteParams, EngineMintNlpParams, EngineBurnNlpParams } from '@nadohq/engine-client';
2
- import { BigDecimalish } from '@nadohq/utils';
2
+ import { BigDecimalish } from '@nadohq/shared';
3
3
  import { OptionalSignatureParams, OptionalSubaccountOwner } from '../types.js';
4
4
 
5
5
  type ProductIdOrTokenAddress = {
@@ -19,5 +19,9 @@ type WithdrawCollateralParams = OptionalSignatureParams<OptionalSubaccountOwner<
19
19
  type TransferQuoteParams = OptionalSignatureParams<OptionalSubaccountOwner<EngineTransferQuoteParams>>;
20
20
  type MintNlpParams = OptionalSignatureParams<OptionalSubaccountOwner<EngineMintNlpParams>>;
21
21
  type BurnNlpParams = OptionalSignatureParams<OptionalSubaccountOwner<EngineBurnNlpParams>>;
22
+ interface MintMockERC20Params {
23
+ productId: number;
24
+ amount: BigDecimalish;
25
+ }
22
26
 
23
- export type { ApproveAllowanceParams, BurnNlpParams, GetTokenAllowanceParams, GetTokenWalletBalanceParams, MintNlpParams, ProductIdOrTokenAddress, TransferQuoteParams, WithdrawCollateralParams };
27
+ export type { ApproveAllowanceParams, BurnNlpParams, GetTokenAllowanceParams, GetTokenWalletBalanceParams, MintMockERC20Params, MintNlpParams, ProductIdOrTokenAddress, TransferQuoteParams, WithdrawCollateralParams };
@@ -1,7 +1,7 @@
1
1
  import * as _nadohq_engine_client from '@nadohq/engine-client';
2
2
  import { BaseNadoAPI } from '../base.cjs';
3
3
  import { LiquidateSubaccountParams, LinkSignerParams } from './types.cjs';
4
- import '@nadohq/contracts';
4
+ import '@nadohq/shared';
5
5
  import '../../context.cjs';
6
6
  import '@nadohq/indexer-client';
7
7
  import '@nadohq/trigger-client';
@@ -1,7 +1,7 @@
1
1
  import * as _nadohq_engine_client from '@nadohq/engine-client';
2
2
  import { BaseNadoAPI } from '../base.js';
3
3
  import { LiquidateSubaccountParams, LinkSignerParams } from './types.js';
4
- import '@nadohq/contracts';
4
+ import '@nadohq/shared';
5
5
  import '../../context.js';
6
6
  import '@nadohq/indexer-client';
7
7
  import '@nadohq/trigger-client';
@@ -23,22 +23,13 @@ __export(SubaccountQueryAPI_exports, {
23
23
  SubaccountQueryAPI: () => SubaccountQueryAPI
24
24
  });
25
25
  module.exports = __toCommonJS(SubaccountQueryAPI_exports);
26
- var import_contracts = require("@nadohq/contracts");
27
26
  var import_base = require("../base.cjs");
28
27
  var SubaccountQueryAPI = class extends import_base.BaseNadoAPI {
29
- /**
30
- * Returns a comprehensive summary for a subaaccount, including its balances and health
31
- *
32
- * @see {@link getSubaccountSummary:CONTRACTS | getSubaccountSummary}
33
- */
34
- async getSubaccountSummary(params) {
35
- return (0, import_contracts.getSubaccountSummary)(this.paramsWithContracts(params));
36
- }
37
28
  /**
38
29
  * Gets the subaccount state according to the offchain engine
39
30
  * @param params
40
31
  */
41
- async getEngineSubaccountSummary(params) {
32
+ async getSubaccountSummary(params) {
42
33
  return this.context.engineClient.getSubaccountSummary(params);
43
34
  }
44
35
  /**
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/apis/subaccount/SubaccountQueryAPI.ts"],"sourcesContent":["import {\n getSubaccountSummary,\n GetSubaccountSummaryParams,\n} from '@nadohq/contracts';\nimport {\n GetEngineEstimatedSubaccountSummaryParams,\n GetEngineIsolatedPositionsParams,\n GetEngineSubaccountFeeRatesParams,\n GetEngineSubaccountSummaryParams,\n} from '@nadohq/engine-client';\nimport {\n GetIndexerLinkedSignerParams,\n GetIndexerReferralCodeParams,\n} from '@nadohq/indexer-client';\nimport { BaseNadoAPI } from '../base';\n\nexport class SubaccountQueryAPI extends BaseNadoAPI {\n /**\n * Returns a comprehensive summary for a subaaccount, including its balances and health\n *\n * @see {@link getSubaccountSummary:CONTRACTS | getSubaccountSummary}\n */\n async getSubaccountSummary(params: GetSubaccountSummaryParams) {\n return getSubaccountSummary(this.paramsWithContracts(params));\n }\n\n /**\n * Gets the subaccount state according to the offchain engine\n * @param params\n */\n async getEngineSubaccountSummary(params: GetEngineSubaccountSummaryParams) {\n return this.context.engineClient.getSubaccountSummary(params);\n }\n\n /**\n * Gets the estimated subaccount state from offchain engine after a series of proposed txs\n * @param params\n */\n async getEngineEstimatedSubaccountSummary(\n params: GetEngineEstimatedSubaccountSummaryParams,\n ) {\n return this.context.engineClient.getEstimatedSubaccountSummary(params);\n }\n\n /**\n * Gets the isolated positions for a subaccount\n * @param params\n */\n async getIsolatedPositions(params: GetEngineIsolatedPositionsParams) {\n return this.context.engineClient.getIsolatedPositions(params);\n }\n\n /**\n * Queries engine to get subaccount fee rates\n * @param params\n */\n async getSubaccountFeeRates(params: GetEngineSubaccountFeeRatesParams) {\n return this.context.engineClient.getSubaccountFeeRates(params);\n }\n\n /**\n * Retrieves the current signer and link signer rate limit from the indexer\n * @param params\n */\n async getSubaccountLinkedSignerWithRateLimit(\n params: GetIndexerLinkedSignerParams,\n ) {\n return this.context.indexerClient.getLinkedSignerWithRateLimit(params);\n }\n\n /**\n * Retrieves referral code for an address\n * @param params\n */\n async getReferralCode(params: GetIndexerReferralCodeParams) {\n return this.context.indexerClient.getReferralCode(params);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAGO;AAWP,kBAA4B;AAErB,IAAM,qBAAN,cAAiC,wBAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMlD,MAAM,qBAAqB,QAAoC;AAC7D,eAAO,uCAAqB,KAAK,oBAAoB,MAAM,CAAC;AAAA,EAC9D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,2BAA2B,QAA0C;AACzE,WAAO,KAAK,QAAQ,aAAa,qBAAqB,MAAM;AAAA,EAC9D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,oCACJ,QACA;AACA,WAAO,KAAK,QAAQ,aAAa,8BAA8B,MAAM;AAAA,EACvE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,qBAAqB,QAA0C;AACnE,WAAO,KAAK,QAAQ,aAAa,qBAAqB,MAAM;AAAA,EAC9D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,sBAAsB,QAA2C;AACrE,WAAO,KAAK,QAAQ,aAAa,sBAAsB,MAAM;AAAA,EAC/D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,uCACJ,QACA;AACA,WAAO,KAAK,QAAQ,cAAc,6BAA6B,MAAM;AAAA,EACvE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,gBAAgB,QAAsC;AAC1D,WAAO,KAAK,QAAQ,cAAc,gBAAgB,MAAM;AAAA,EAC1D;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/apis/subaccount/SubaccountQueryAPI.ts"],"sourcesContent":["import {\n GetEngineEstimatedSubaccountSummaryParams,\n GetEngineIsolatedPositionsParams,\n GetEngineSubaccountFeeRatesParams,\n GetEngineSubaccountSummaryParams,\n} from '@nadohq/engine-client';\nimport {\n GetIndexerLinkedSignerParams,\n GetIndexerReferralCodeParams,\n} from '@nadohq/indexer-client';\nimport { BaseNadoAPI } from '../base';\n\nexport class SubaccountQueryAPI extends BaseNadoAPI {\n /**\n * Gets the subaccount state according to the offchain engine\n * @param params\n */\n async getSubaccountSummary(params: GetEngineSubaccountSummaryParams) {\n return this.context.engineClient.getSubaccountSummary(params);\n }\n\n /**\n * Gets the estimated subaccount state from offchain engine after a series of proposed txs\n * @param params\n */\n async getEngineEstimatedSubaccountSummary(\n params: GetEngineEstimatedSubaccountSummaryParams,\n ) {\n return this.context.engineClient.getEstimatedSubaccountSummary(params);\n }\n\n /**\n * Gets the isolated positions for a subaccount\n * @param params\n */\n async getIsolatedPositions(params: GetEngineIsolatedPositionsParams) {\n return this.context.engineClient.getIsolatedPositions(params);\n }\n\n /**\n * Queries engine to get subaccount fee rates\n * @param params\n */\n async getSubaccountFeeRates(params: GetEngineSubaccountFeeRatesParams) {\n return this.context.engineClient.getSubaccountFeeRates(params);\n }\n\n /**\n * Retrieves the current signer and link signer rate limit from the indexer\n * @param params\n */\n async getSubaccountLinkedSignerWithRateLimit(\n params: GetIndexerLinkedSignerParams,\n ) {\n return this.context.indexerClient.getLinkedSignerWithRateLimit(params);\n }\n\n /**\n * Retrieves referral code for an address\n * @param params\n */\n async getReferralCode(params: GetIndexerReferralCodeParams) {\n return this.context.indexerClient.getReferralCode(params);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAUA,kBAA4B;AAErB,IAAM,qBAAN,cAAiC,wBAAY;AAAA;AAAA;AAAA;AAAA;AAAA,EAKlD,MAAM,qBAAqB,QAA0C;AACnE,WAAO,KAAK,QAAQ,aAAa,qBAAqB,MAAM;AAAA,EAC9D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,oCACJ,QACA;AACA,WAAO,KAAK,QAAQ,aAAa,8BAA8B,MAAM;AAAA,EACvE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,qBAAqB,QAA0C;AACnE,WAAO,KAAK,QAAQ,aAAa,qBAAqB,MAAM;AAAA,EAC9D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,sBAAsB,QAA2C;AACrE,WAAO,KAAK,QAAQ,aAAa,sBAAsB,MAAM;AAAA,EAC/D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,uCACJ,QACA;AACA,WAAO,KAAK,QAAQ,cAAc,6BAA6B,MAAM;AAAA,EACvE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,gBAAgB,QAAsC;AAC1D,WAAO,KAAK,QAAQ,cAAc,gBAAgB,MAAM;AAAA,EAC1D;AACF;","names":[]}
@@ -2,30 +2,23 @@ import * as _nadohq_indexer_client from '@nadohq/indexer-client';
2
2
  import { GetIndexerLinkedSignerParams, GetIndexerReferralCodeParams } from '@nadohq/indexer-client';
3
3
  import * as _nadohq_engine_client from '@nadohq/engine-client';
4
4
  import { GetEngineSubaccountSummaryParams, GetEngineEstimatedSubaccountSummaryParams, GetEngineIsolatedPositionsParams, GetEngineSubaccountFeeRatesParams } from '@nadohq/engine-client';
5
- import * as _nadohq_contracts from '@nadohq/contracts';
6
- import { GetSubaccountSummaryParams } from '@nadohq/contracts';
7
5
  import { BaseNadoAPI } from '../base.cjs';
6
+ import '@nadohq/shared';
8
7
  import '../../context.cjs';
9
8
  import '@nadohq/trigger-client';
10
9
  import 'viem';
11
10
 
12
11
  declare class SubaccountQueryAPI extends BaseNadoAPI {
13
- /**
14
- * Returns a comprehensive summary for a subaaccount, including its balances and health
15
- *
16
- * @see {@link getSubaccountSummary:CONTRACTS | getSubaccountSummary}
17
- */
18
- getSubaccountSummary(params: GetSubaccountSummaryParams): Promise<_nadohq_contracts.SubaccountSummaryResponse>;
19
12
  /**
20
13
  * Gets the subaccount state according to the offchain engine
21
14
  * @param params
22
15
  */
23
- getEngineSubaccountSummary(params: GetEngineSubaccountSummaryParams): Promise<_nadohq_contracts.SubaccountSummaryResponse>;
16
+ getSubaccountSummary(params: GetEngineSubaccountSummaryParams): Promise<_nadohq_engine_client.GetEngineSubaccountSummaryResponse>;
24
17
  /**
25
18
  * Gets the estimated subaccount state from offchain engine after a series of proposed txs
26
19
  * @param params
27
20
  */
28
- getEngineEstimatedSubaccountSummary(params: GetEngineEstimatedSubaccountSummaryParams): Promise<_nadohq_contracts.SubaccountSummaryResponse>;
21
+ getEngineEstimatedSubaccountSummary(params: GetEngineEstimatedSubaccountSummaryParams): Promise<_nadohq_engine_client.GetEngineSubaccountSummaryResponse>;
29
22
  /**
30
23
  * Gets the isolated positions for a subaccount
31
24
  * @param params
@@ -2,30 +2,23 @@ import * as _nadohq_indexer_client from '@nadohq/indexer-client';
2
2
  import { GetIndexerLinkedSignerParams, GetIndexerReferralCodeParams } from '@nadohq/indexer-client';
3
3
  import * as _nadohq_engine_client from '@nadohq/engine-client';
4
4
  import { GetEngineSubaccountSummaryParams, GetEngineEstimatedSubaccountSummaryParams, GetEngineIsolatedPositionsParams, GetEngineSubaccountFeeRatesParams } from '@nadohq/engine-client';
5
- import * as _nadohq_contracts from '@nadohq/contracts';
6
- import { GetSubaccountSummaryParams } from '@nadohq/contracts';
7
5
  import { BaseNadoAPI } from '../base.js';
6
+ import '@nadohq/shared';
8
7
  import '../../context.js';
9
8
  import '@nadohq/trigger-client';
10
9
  import 'viem';
11
10
 
12
11
  declare class SubaccountQueryAPI extends BaseNadoAPI {
13
- /**
14
- * Returns a comprehensive summary for a subaaccount, including its balances and health
15
- *
16
- * @see {@link getSubaccountSummary:CONTRACTS | getSubaccountSummary}
17
- */
18
- getSubaccountSummary(params: GetSubaccountSummaryParams): Promise<_nadohq_contracts.SubaccountSummaryResponse>;
19
12
  /**
20
13
  * Gets the subaccount state according to the offchain engine
21
14
  * @param params
22
15
  */
23
- getEngineSubaccountSummary(params: GetEngineSubaccountSummaryParams): Promise<_nadohq_contracts.SubaccountSummaryResponse>;
16
+ getSubaccountSummary(params: GetEngineSubaccountSummaryParams): Promise<_nadohq_engine_client.GetEngineSubaccountSummaryResponse>;
24
17
  /**
25
18
  * Gets the estimated subaccount state from offchain engine after a series of proposed txs
26
19
  * @param params
27
20
  */
28
- getEngineEstimatedSubaccountSummary(params: GetEngineEstimatedSubaccountSummaryParams): Promise<_nadohq_contracts.SubaccountSummaryResponse>;
21
+ getEngineEstimatedSubaccountSummary(params: GetEngineEstimatedSubaccountSummaryParams): Promise<_nadohq_engine_client.GetEngineSubaccountSummaryResponse>;
29
22
  /**
30
23
  * Gets the isolated positions for a subaccount
31
24
  * @param params
@@ -1,22 +1,11 @@
1
1
  // src/apis/subaccount/SubaccountQueryAPI.ts
2
- import {
3
- getSubaccountSummary
4
- } from "@nadohq/contracts";
5
2
  import { BaseNadoAPI } from "../base.js";
6
3
  var SubaccountQueryAPI = class extends BaseNadoAPI {
7
- /**
8
- * Returns a comprehensive summary for a subaaccount, including its balances and health
9
- *
10
- * @see {@link getSubaccountSummary:CONTRACTS | getSubaccountSummary}
11
- */
12
- async getSubaccountSummary(params) {
13
- return getSubaccountSummary(this.paramsWithContracts(params));
14
- }
15
4
  /**
16
5
  * Gets the subaccount state according to the offchain engine
17
6
  * @param params
18
7
  */
19
- async getEngineSubaccountSummary(params) {
8
+ async getSubaccountSummary(params) {
20
9
  return this.context.engineClient.getSubaccountSummary(params);
21
10
  }
22
11
  /**
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/apis/subaccount/SubaccountQueryAPI.ts"],"sourcesContent":["import {\n getSubaccountSummary,\n GetSubaccountSummaryParams,\n} from '@nadohq/contracts';\nimport {\n GetEngineEstimatedSubaccountSummaryParams,\n GetEngineIsolatedPositionsParams,\n GetEngineSubaccountFeeRatesParams,\n GetEngineSubaccountSummaryParams,\n} from '@nadohq/engine-client';\nimport {\n GetIndexerLinkedSignerParams,\n GetIndexerReferralCodeParams,\n} from '@nadohq/indexer-client';\nimport { BaseNadoAPI } from '../base';\n\nexport class SubaccountQueryAPI extends BaseNadoAPI {\n /**\n * Returns a comprehensive summary for a subaaccount, including its balances and health\n *\n * @see {@link getSubaccountSummary:CONTRACTS | getSubaccountSummary}\n */\n async getSubaccountSummary(params: GetSubaccountSummaryParams) {\n return getSubaccountSummary(this.paramsWithContracts(params));\n }\n\n /**\n * Gets the subaccount state according to the offchain engine\n * @param params\n */\n async getEngineSubaccountSummary(params: GetEngineSubaccountSummaryParams) {\n return this.context.engineClient.getSubaccountSummary(params);\n }\n\n /**\n * Gets the estimated subaccount state from offchain engine after a series of proposed txs\n * @param params\n */\n async getEngineEstimatedSubaccountSummary(\n params: GetEngineEstimatedSubaccountSummaryParams,\n ) {\n return this.context.engineClient.getEstimatedSubaccountSummary(params);\n }\n\n /**\n * Gets the isolated positions for a subaccount\n * @param params\n */\n async getIsolatedPositions(params: GetEngineIsolatedPositionsParams) {\n return this.context.engineClient.getIsolatedPositions(params);\n }\n\n /**\n * Queries engine to get subaccount fee rates\n * @param params\n */\n async getSubaccountFeeRates(params: GetEngineSubaccountFeeRatesParams) {\n return this.context.engineClient.getSubaccountFeeRates(params);\n }\n\n /**\n * Retrieves the current signer and link signer rate limit from the indexer\n * @param params\n */\n async getSubaccountLinkedSignerWithRateLimit(\n params: GetIndexerLinkedSignerParams,\n ) {\n return this.context.indexerClient.getLinkedSignerWithRateLimit(params);\n }\n\n /**\n * Retrieves referral code for an address\n * @param params\n */\n async getReferralCode(params: GetIndexerReferralCodeParams) {\n return this.context.indexerClient.getReferralCode(params);\n }\n}\n"],"mappings":";AAAA;AAAA,EACE;AAAA,OAEK;AAWP,SAAS,mBAAmB;AAErB,IAAM,qBAAN,cAAiC,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMlD,MAAM,qBAAqB,QAAoC;AAC7D,WAAO,qBAAqB,KAAK,oBAAoB,MAAM,CAAC;AAAA,EAC9D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,2BAA2B,QAA0C;AACzE,WAAO,KAAK,QAAQ,aAAa,qBAAqB,MAAM;AAAA,EAC9D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,oCACJ,QACA;AACA,WAAO,KAAK,QAAQ,aAAa,8BAA8B,MAAM;AAAA,EACvE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,qBAAqB,QAA0C;AACnE,WAAO,KAAK,QAAQ,aAAa,qBAAqB,MAAM;AAAA,EAC9D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,sBAAsB,QAA2C;AACrE,WAAO,KAAK,QAAQ,aAAa,sBAAsB,MAAM;AAAA,EAC/D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,uCACJ,QACA;AACA,WAAO,KAAK,QAAQ,cAAc,6BAA6B,MAAM;AAAA,EACvE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,gBAAgB,QAAsC;AAC1D,WAAO,KAAK,QAAQ,cAAc,gBAAgB,MAAM;AAAA,EAC1D;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/apis/subaccount/SubaccountQueryAPI.ts"],"sourcesContent":["import {\n GetEngineEstimatedSubaccountSummaryParams,\n GetEngineIsolatedPositionsParams,\n GetEngineSubaccountFeeRatesParams,\n GetEngineSubaccountSummaryParams,\n} from '@nadohq/engine-client';\nimport {\n GetIndexerLinkedSignerParams,\n GetIndexerReferralCodeParams,\n} from '@nadohq/indexer-client';\nimport { BaseNadoAPI } from '../base';\n\nexport class SubaccountQueryAPI extends BaseNadoAPI {\n /**\n * Gets the subaccount state according to the offchain engine\n * @param params\n */\n async getSubaccountSummary(params: GetEngineSubaccountSummaryParams) {\n return this.context.engineClient.getSubaccountSummary(params);\n }\n\n /**\n * Gets the estimated subaccount state from offchain engine after a series of proposed txs\n * @param params\n */\n async getEngineEstimatedSubaccountSummary(\n params: GetEngineEstimatedSubaccountSummaryParams,\n ) {\n return this.context.engineClient.getEstimatedSubaccountSummary(params);\n }\n\n /**\n * Gets the isolated positions for a subaccount\n * @param params\n */\n async getIsolatedPositions(params: GetEngineIsolatedPositionsParams) {\n return this.context.engineClient.getIsolatedPositions(params);\n }\n\n /**\n * Queries engine to get subaccount fee rates\n * @param params\n */\n async getSubaccountFeeRates(params: GetEngineSubaccountFeeRatesParams) {\n return this.context.engineClient.getSubaccountFeeRates(params);\n }\n\n /**\n * Retrieves the current signer and link signer rate limit from the indexer\n * @param params\n */\n async getSubaccountLinkedSignerWithRateLimit(\n params: GetIndexerLinkedSignerParams,\n ) {\n return this.context.indexerClient.getLinkedSignerWithRateLimit(params);\n }\n\n /**\n * Retrieves referral code for an address\n * @param params\n */\n async getReferralCode(params: GetIndexerReferralCodeParams) {\n return this.context.indexerClient.getReferralCode(params);\n }\n}\n"],"mappings":";AAUA,SAAS,mBAAmB;AAErB,IAAM,qBAAN,cAAiC,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA,EAKlD,MAAM,qBAAqB,QAA0C;AACnE,WAAO,KAAK,QAAQ,aAAa,qBAAqB,MAAM;AAAA,EAC9D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,oCACJ,QACA;AACA,WAAO,KAAK,QAAQ,aAAa,8BAA8B,MAAM;AAAA,EACvE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,qBAAqB,QAA0C;AACnE,WAAO,KAAK,QAAQ,aAAa,qBAAqB,MAAM;AAAA,EAC9D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,sBAAsB,QAA2C;AACrE,WAAO,KAAK,QAAQ,aAAa,sBAAsB,MAAM;AAAA,EAC/D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,uCACJ,QACA;AACA,WAAO,KAAK,QAAQ,cAAc,6BAA6B,MAAM;AAAA,EACvE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,gBAAgB,QAAsC;AAC1D,WAAO,KAAK,QAAQ,cAAc,gBAAgB,MAAM;AAAA,EAC1D;AACF;","names":[]}
@@ -24,8 +24,8 @@ __export(subaccount_exports, {
24
24
  SubaccountAPI: () => SubaccountAPI
25
25
  });
26
26
  module.exports = __toCommonJS(subaccount_exports);
27
- var import_contracts = require("@nadohq/contracts");
28
- var import_utils = require("@nadohq/utils");
27
+ var import_shared = require("@nadohq/shared");
28
+ var import_shared2 = require("@nadohq/shared");
29
29
  var import_ts_mixer = require("ts-mixer");
30
30
  var import_accounts = require("viem/accounts");
31
31
  var import_SubaccountExecuteAPI = require("./SubaccountExecuteAPI.cjs");
@@ -45,9 +45,9 @@ var SubaccountAPI = class extends (0, import_ts_mixer.Mixin)(
45
45
  async createStandardLinkedSigner(subaccountName) {
46
46
  const walletClient = this.context.walletClient;
47
47
  if (!walletClient) {
48
- throw new import_utils.WalletNotProvidedError();
48
+ throw new import_shared2.WalletNotProvidedError();
49
49
  }
50
- const privateKey = await (0, import_contracts.createDeterministicLinkedSignerPrivateKey)({
50
+ const privateKey = await (0, import_shared.createDeterministicLinkedSignerPrivateKey)({
51
51
  chainId: walletClient.chain.id,
52
52
  endpointAddress: this.getEndpointAddress(),
53
53
  walletClient,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/apis/subaccount/index.ts"],"sourcesContent":["import { createDeterministicLinkedSignerPrivateKey } from '@nadohq/contracts';\nimport { WalletNotProvidedError } from '@nadohq/utils';\nimport { Mixin } from 'ts-mixer';\nimport { privateKeyToAccount } from 'viem/accounts';\nimport { SubaccountExecuteAPI } from './SubaccountExecuteAPI';\nimport { SubaccountQueryAPI } from './SubaccountQueryAPI';\nimport { CreateStandardLinkedSignerResult } from './types';\n\nexport * from './types';\n\nexport class SubaccountAPI extends Mixin(\n SubaccountExecuteAPI,\n SubaccountQueryAPI,\n) {\n /**\n * Given the current context, create a \"standard\" link signer Account for the subaccount\n * The \"standard\" linked signer private key is deterministically generated so that the frontend running on\n * different clients can have a consistent private key for the subaccount linked signer.\n *\n * @param subaccountName\n */\n async createStandardLinkedSigner(\n subaccountName: string,\n ): Promise<CreateStandardLinkedSignerResult> {\n const walletClient = this.context.walletClient;\n\n if (!walletClient) {\n throw new WalletNotProvidedError();\n }\n\n const privateKey = await createDeterministicLinkedSignerPrivateKey({\n chainId: walletClient.chain.id,\n endpointAddress: this.getEndpointAddress(),\n walletClient,\n subaccountName,\n subaccountOwner: walletClient.account.address,\n });\n\n return {\n privateKey,\n account: privateKeyToAccount(privateKey),\n };\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAA0D;AAC1D,mBAAuC;AACvC,sBAAsB;AACtB,sBAAoC;AACpC,kCAAqC;AACrC,gCAAmC;AAGnC,+BAAc,wBARd;AAUO,IAAM,gBAAN,kBAA4B;AAAA,EACjC;AAAA,EACA;AACF,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,MAAM,2BACJ,gBAC2C;AAC3C,UAAM,eAAe,KAAK,QAAQ;AAElC,QAAI,CAAC,cAAc;AACjB,YAAM,IAAI,oCAAuB;AAAA,IACnC;AAEA,UAAM,aAAa,UAAM,4DAA0C;AAAA,MACjE,SAAS,aAAa,MAAM;AAAA,MAC5B,iBAAiB,KAAK,mBAAmB;AAAA,MACzC;AAAA,MACA;AAAA,MACA,iBAAiB,aAAa,QAAQ;AAAA,IACxC,CAAC;AAED,WAAO;AAAA,MACL;AAAA,MACA,aAAS,qCAAoB,UAAU;AAAA,IACzC;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/apis/subaccount/index.ts"],"sourcesContent":["import { createDeterministicLinkedSignerPrivateKey } from '@nadohq/shared';\nimport { WalletNotProvidedError } from '@nadohq/shared';\nimport { Mixin } from 'ts-mixer';\nimport { privateKeyToAccount } from 'viem/accounts';\nimport { SubaccountExecuteAPI } from './SubaccountExecuteAPI';\nimport { SubaccountQueryAPI } from './SubaccountQueryAPI';\nimport { CreateStandardLinkedSignerResult } from './types';\n\nexport * from './types';\n\nexport class SubaccountAPI extends Mixin(\n SubaccountExecuteAPI,\n SubaccountQueryAPI,\n) {\n /**\n * Given the current context, create a \"standard\" link signer Account for the subaccount\n * The \"standard\" linked signer private key is deterministically generated so that the frontend running on\n * different clients can have a consistent private key for the subaccount linked signer.\n *\n * @param subaccountName\n */\n async createStandardLinkedSigner(\n subaccountName: string,\n ): Promise<CreateStandardLinkedSignerResult> {\n const walletClient = this.context.walletClient;\n\n if (!walletClient) {\n throw new WalletNotProvidedError();\n }\n\n const privateKey = await createDeterministicLinkedSignerPrivateKey({\n chainId: walletClient.chain.id,\n endpointAddress: this.getEndpointAddress(),\n walletClient,\n subaccountName,\n subaccountOwner: walletClient.account.address,\n });\n\n return {\n privateKey,\n account: privateKeyToAccount(privateKey),\n };\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA0D;AAC1D,IAAAA,iBAAuC;AACvC,sBAAsB;AACtB,sBAAoC;AACpC,kCAAqC;AACrC,gCAAmC;AAGnC,+BAAc,wBARd;AAUO,IAAM,gBAAN,kBAA4B;AAAA,EACjC;AAAA,EACA;AACF,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,MAAM,2BACJ,gBAC2C;AAC3C,UAAM,eAAe,KAAK,QAAQ;AAElC,QAAI,CAAC,cAAc;AACjB,YAAM,IAAI,sCAAuB;AAAA,IACnC;AAEA,UAAM,aAAa,UAAM,yDAA0C;AAAA,MACjE,SAAS,aAAa,MAAM;AAAA,MAC5B,iBAAiB,KAAK,mBAAmB;AAAA,MACzC;AAAA,MACA;AAAA,MACA,iBAAiB,aAAa,QAAQ;AAAA,IACxC,CAAC;AAED,WAAO;AAAA,MACL;AAAA,MACA,aAAS,qCAAoB,UAAU;AAAA,IACzC;AAAA,EACF;AACF;","names":["import_shared"]}
@@ -5,7 +5,7 @@ import { CreateStandardLinkedSignerResult } from './types.cjs';
5
5
  export { LinkSignerParams, LiquidateSubaccountParams } from './types.cjs';
6
6
  import '@nadohq/engine-client';
7
7
  import '../base.cjs';
8
- import '@nadohq/contracts';
8
+ import '@nadohq/shared';
9
9
  import '../../context.cjs';
10
10
  import '@nadohq/indexer-client';
11
11
  import '@nadohq/trigger-client';
@@ -5,7 +5,7 @@ import { CreateStandardLinkedSignerResult } from './types.js';
5
5
  export { LinkSignerParams, LiquidateSubaccountParams } from './types.js';
6
6
  import '@nadohq/engine-client';
7
7
  import '../base.js';
8
- import '@nadohq/contracts';
8
+ import '@nadohq/shared';
9
9
  import '../../context.js';
10
10
  import '@nadohq/indexer-client';
11
11
  import '@nadohq/trigger-client';
@@ -1,6 +1,6 @@
1
1
  // src/apis/subaccount/index.ts
2
- import { createDeterministicLinkedSignerPrivateKey } from "@nadohq/contracts";
3
- import { WalletNotProvidedError } from "@nadohq/utils";
2
+ import { createDeterministicLinkedSignerPrivateKey } from "@nadohq/shared";
3
+ import { WalletNotProvidedError } from "@nadohq/shared";
4
4
  import { Mixin } from "ts-mixer";
5
5
  import { privateKeyToAccount } from "viem/accounts";
6
6
  import { SubaccountExecuteAPI } from "./SubaccountExecuteAPI.js";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/apis/subaccount/index.ts"],"sourcesContent":["import { createDeterministicLinkedSignerPrivateKey } from '@nadohq/contracts';\nimport { WalletNotProvidedError } from '@nadohq/utils';\nimport { Mixin } from 'ts-mixer';\nimport { privateKeyToAccount } from 'viem/accounts';\nimport { SubaccountExecuteAPI } from './SubaccountExecuteAPI';\nimport { SubaccountQueryAPI } from './SubaccountQueryAPI';\nimport { CreateStandardLinkedSignerResult } from './types';\n\nexport * from './types';\n\nexport class SubaccountAPI extends Mixin(\n SubaccountExecuteAPI,\n SubaccountQueryAPI,\n) {\n /**\n * Given the current context, create a \"standard\" link signer Account for the subaccount\n * The \"standard\" linked signer private key is deterministically generated so that the frontend running on\n * different clients can have a consistent private key for the subaccount linked signer.\n *\n * @param subaccountName\n */\n async createStandardLinkedSigner(\n subaccountName: string,\n ): Promise<CreateStandardLinkedSignerResult> {\n const walletClient = this.context.walletClient;\n\n if (!walletClient) {\n throw new WalletNotProvidedError();\n }\n\n const privateKey = await createDeterministicLinkedSignerPrivateKey({\n chainId: walletClient.chain.id,\n endpointAddress: this.getEndpointAddress(),\n walletClient,\n subaccountName,\n subaccountOwner: walletClient.account.address,\n });\n\n return {\n privateKey,\n account: privateKeyToAccount(privateKey),\n };\n }\n}\n"],"mappings":";AAAA,SAAS,iDAAiD;AAC1D,SAAS,8BAA8B;AACvC,SAAS,aAAa;AACtB,SAAS,2BAA2B;AACpC,SAAS,4BAA4B;AACrC,SAAS,0BAA0B;AAGnC,cAAc;AAEP,IAAM,gBAAN,cAA4B;AAAA,EACjC;AAAA,EACA;AACF,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,MAAM,2BACJ,gBAC2C;AAC3C,UAAM,eAAe,KAAK,QAAQ;AAElC,QAAI,CAAC,cAAc;AACjB,YAAM,IAAI,uBAAuB;AAAA,IACnC;AAEA,UAAM,aAAa,MAAM,0CAA0C;AAAA,MACjE,SAAS,aAAa,MAAM;AAAA,MAC5B,iBAAiB,KAAK,mBAAmB;AAAA,MACzC;AAAA,MACA;AAAA,MACA,iBAAiB,aAAa,QAAQ;AAAA,IACxC,CAAC;AAED,WAAO;AAAA,MACL;AAAA,MACA,SAAS,oBAAoB,UAAU;AAAA,IACzC;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/apis/subaccount/index.ts"],"sourcesContent":["import { createDeterministicLinkedSignerPrivateKey } from '@nadohq/shared';\nimport { WalletNotProvidedError } from '@nadohq/shared';\nimport { Mixin } from 'ts-mixer';\nimport { privateKeyToAccount } from 'viem/accounts';\nimport { SubaccountExecuteAPI } from './SubaccountExecuteAPI';\nimport { SubaccountQueryAPI } from './SubaccountQueryAPI';\nimport { CreateStandardLinkedSignerResult } from './types';\n\nexport * from './types';\n\nexport class SubaccountAPI extends Mixin(\n SubaccountExecuteAPI,\n SubaccountQueryAPI,\n) {\n /**\n * Given the current context, create a \"standard\" link signer Account for the subaccount\n * The \"standard\" linked signer private key is deterministically generated so that the frontend running on\n * different clients can have a consistent private key for the subaccount linked signer.\n *\n * @param subaccountName\n */\n async createStandardLinkedSigner(\n subaccountName: string,\n ): Promise<CreateStandardLinkedSignerResult> {\n const walletClient = this.context.walletClient;\n\n if (!walletClient) {\n throw new WalletNotProvidedError();\n }\n\n const privateKey = await createDeterministicLinkedSignerPrivateKey({\n chainId: walletClient.chain.id,\n endpointAddress: this.getEndpointAddress(),\n walletClient,\n subaccountName,\n subaccountOwner: walletClient.account.address,\n });\n\n return {\n privateKey,\n account: privateKeyToAccount(privateKey),\n };\n }\n}\n"],"mappings":";AAAA,SAAS,iDAAiD;AAC1D,SAAS,8BAA8B;AACvC,SAAS,aAAa;AACtB,SAAS,2BAA2B;AACpC,SAAS,4BAA4B;AACrC,SAAS,0BAA0B;AAGnC,cAAc;AAEP,IAAM,gBAAN,cAA4B;AAAA,EACjC;AAAA,EACA;AACF,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,MAAM,2BACJ,gBAC2C;AAC3C,UAAM,eAAe,KAAK,QAAQ;AAElC,QAAI,CAAC,cAAc;AACjB,YAAM,IAAI,uBAAuB;AAAA,IACnC;AAEA,UAAM,aAAa,MAAM,0CAA0C;AAAA,MACjE,SAAS,aAAa,MAAM;AAAA,MAC5B,iBAAiB,KAAK,mBAAmB;AAAA,MACzC;AAAA,MACA;AAAA,MACA,iBAAiB,aAAa,QAAQ;AAAA,IACxC,CAAC;AAED,WAAO;AAAA,MACL;AAAA,MACA,SAAS,oBAAoB,UAAU;AAAA,IACzC;AAAA,EACF;AACF;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/apis/subaccount/types.ts"],"sourcesContent":["import { AccountWithPrivateKey } from '@nadohq/contracts';\nimport {\n EngineLinkSignerParams,\n EngineLiquidateSubaccountParams,\n} from '@nadohq/engine-client';\nimport { OptionalSignatureParams, OptionalSubaccountOwner } from '../types';\n\nexport type LinkSignerParams = OptionalSignatureParams<\n OptionalSubaccountOwner<EngineLinkSignerParams>\n>;\n\nexport type LiquidateSubaccountParams = OptionalSignatureParams<\n OptionalSubaccountOwner<EngineLiquidateSubaccountParams>\n>;\n\nexport type CreateStandardLinkedSignerResult = AccountWithPrivateKey;\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
1
+ {"version":3,"sources":["../../../src/apis/subaccount/types.ts"],"sourcesContent":["import { AccountWithPrivateKey } from '@nadohq/shared';\nimport {\n EngineLinkSignerParams,\n EngineLiquidateSubaccountParams,\n} from '@nadohq/engine-client';\nimport { OptionalSignatureParams, OptionalSubaccountOwner } from '../types';\n\nexport type LinkSignerParams = OptionalSignatureParams<\n OptionalSubaccountOwner<EngineLinkSignerParams>\n>;\n\nexport type LiquidateSubaccountParams = OptionalSignatureParams<\n OptionalSubaccountOwner<EngineLiquidateSubaccountParams>\n>;\n\nexport type CreateStandardLinkedSignerResult = AccountWithPrivateKey;\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
@@ -1,4 +1,4 @@
1
- import { AccountWithPrivateKey } from '@nadohq/contracts';
1
+ import { AccountWithPrivateKey } from '@nadohq/shared';
2
2
  import { EngineLiquidateSubaccountParams, EngineLinkSignerParams } from '@nadohq/engine-client';
3
3
  import { OptionalSignatureParams, OptionalSubaccountOwner } from '../types.cjs';
4
4
 
@@ -1,4 +1,4 @@
1
- import { AccountWithPrivateKey } from '@nadohq/contracts';
1
+ import { AccountWithPrivateKey } from '@nadohq/shared';
2
2
  import { EngineLiquidateSubaccountParams, EngineLinkSignerParams } from '@nadohq/engine-client';
3
3
  import { OptionalSignatureParams, OptionalSubaccountOwner } from '../types.js';
4
4
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/apis/ws/WebSocketExecuteAPI.ts"],"sourcesContent":["import { EIP712OrderParams } from '@nadohq/contracts';\nimport {\n EngineExecuteRequestParamsByType,\n WithSignature,\n} from '@nadohq/engine-client';\nimport { BaseNadoAPI } from '../base';\n\n/**\n * Builds execute messages as expected by the server to send over Websocket.\n * @example nadoClient.ws.execute.buildPlaceOrderMessage(...)\n */\nexport class WebSocketExecuteAPI extends BaseNadoAPI {\n /**\n * Builds ws message for the `liquidate_subaccount` execute action.\n * @param params LiquidateSubaccount params.\n * @returns `liquidate_subaccount` execute message\n */\n async buildLiquidateSubaccountMessage(\n params: EngineExecuteRequestParamsByType['liquidate_subaccount'],\n ) {\n return this.context.engineClient.payloadBuilder.buildLiquidateSubaccountPayload(\n params,\n );\n }\n\n /**\n * Builds ws message for the `withdraw_collateral` execute action.\n * @param params WithdrawCollateral params.\n * @returns `liquidate_subaccount` execute message\n */\n async buildWithdrawCollateralMessage(\n params: EngineExecuteRequestParamsByType['withdraw_collateral'],\n ) {\n return this.context.engineClient.payloadBuilder.buildWithdrawCollateralPayload(\n params,\n );\n }\n\n /**\n * Builds ws message for the `place_order` execute action.\n * @param params PlaceOrder params.\n * @returns `place_order` execute message\n */\n buildPlaceOrderMessage(\n params: WithSignature<\n EngineExecuteRequestParamsByType['place_order'] & {\n order: EIP712OrderParams;\n }\n >,\n ) {\n return this.context.engineClient.payloadBuilder.buildPlaceOrderPayloadSync(\n params,\n );\n }\n\n /**\n * Builds ws message for the `cancel_orders` execute action.\n * @param params PlaceOrder params.\n * @returns `cancel_orders` execute message\n */\n buildCancelOrdersMessage(\n params: WithSignature<\n EngineExecuteRequestParamsByType['cancel_orders'] & { nonce: string }\n >,\n ) {\n return this.context.engineClient.payloadBuilder.buildCancelOrdersPayloadSync(\n params,\n );\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,kBAA4B;AAMrB,IAAM,sBAAN,cAAkC,wBAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMnD,MAAM,gCACJ,QACA;AACA,WAAO,KAAK,QAAQ,aAAa,eAAe;AAAA,MAC9C;AAAA,IACF;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,+BACJ,QACA;AACA,WAAO,KAAK,QAAQ,aAAa,eAAe;AAAA,MAC9C;AAAA,IACF;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,uBACE,QAKA;AACA,WAAO,KAAK,QAAQ,aAAa,eAAe;AAAA,MAC9C;AAAA,IACF;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,yBACE,QAGA;AACA,WAAO,KAAK,QAAQ,aAAa,eAAe;AAAA,MAC9C;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/apis/ws/WebSocketExecuteAPI.ts"],"sourcesContent":["import { EIP712OrderParams } from '@nadohq/shared';\nimport {\n EngineExecuteRequestParamsByType,\n WithSignature,\n} from '@nadohq/engine-client';\nimport { BaseNadoAPI } from '../base';\n\n/**\n * Builds execute messages as expected by the server to send over Websocket.\n * @example nadoClient.ws.execute.buildPlaceOrderMessage(...)\n */\nexport class WebSocketExecuteAPI extends BaseNadoAPI {\n /**\n * Builds ws message for the `liquidate_subaccount` execute action.\n * @param params LiquidateSubaccount params.\n * @returns `liquidate_subaccount` execute message\n */\n async buildLiquidateSubaccountMessage(\n params: EngineExecuteRequestParamsByType['liquidate_subaccount'],\n ) {\n return this.context.engineClient.payloadBuilder.buildLiquidateSubaccountPayload(\n params,\n );\n }\n\n /**\n * Builds ws message for the `withdraw_collateral` execute action.\n * @param params WithdrawCollateral params.\n * @returns `liquidate_subaccount` execute message\n */\n async buildWithdrawCollateralMessage(\n params: EngineExecuteRequestParamsByType['withdraw_collateral'],\n ) {\n return this.context.engineClient.payloadBuilder.buildWithdrawCollateralPayload(\n params,\n );\n }\n\n /**\n * Builds ws message for the `place_order` execute action.\n * @param params PlaceOrder params.\n * @returns `place_order` execute message\n */\n buildPlaceOrderMessage(\n params: WithSignature<\n EngineExecuteRequestParamsByType['place_order'] & {\n order: EIP712OrderParams;\n }\n >,\n ) {\n return this.context.engineClient.payloadBuilder.buildPlaceOrderPayloadSync(\n params,\n );\n }\n\n /**\n * Builds ws message for the `cancel_orders` execute action.\n * @param params PlaceOrder params.\n * @returns `cancel_orders` execute message\n */\n buildCancelOrdersMessage(\n params: WithSignature<\n EngineExecuteRequestParamsByType['cancel_orders'] & { nonce: string }\n >,\n ) {\n return this.context.engineClient.payloadBuilder.buildCancelOrdersPayloadSync(\n params,\n );\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,kBAA4B;AAMrB,IAAM,sBAAN,cAAkC,wBAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMnD,MAAM,gCACJ,QACA;AACA,WAAO,KAAK,QAAQ,aAAa,eAAe;AAAA,MAC9C;AAAA,IACF;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,+BACJ,QACA;AACA,WAAO,KAAK,QAAQ,aAAa,eAAe;AAAA,MAC9C;AAAA,IACF;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,uBACE,QAKA;AACA,WAAO,KAAK,QAAQ,aAAa,eAAe;AAAA,MAC9C;AAAA,IACF;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,yBACE,QAGA;AACA,WAAO,KAAK,QAAQ,aAAa,eAAe;AAAA,MAC9C;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
@@ -1,7 +1,7 @@
1
1
  import * as _nadohq_engine_client from '@nadohq/engine-client';
2
2
  import { EngineExecuteRequestParamsByType, WithSignature } from '@nadohq/engine-client';
3
- import * as _nadohq_contracts from '@nadohq/contracts';
4
- import { EIP712OrderParams } from '@nadohq/contracts';
3
+ import * as _nadohq_shared from '@nadohq/shared';
4
+ import { EIP712OrderParams } from '@nadohq/shared';
5
5
  import { BaseNadoAPI } from '../base.cjs';
6
6
  import '../../context.cjs';
7
7
  import '@nadohq/indexer-client';
@@ -18,13 +18,13 @@ declare class WebSocketExecuteAPI extends BaseNadoAPI {
18
18
  * @param params LiquidateSubaccount params.
19
19
  * @returns `liquidate_subaccount` execute message
20
20
  */
21
- buildLiquidateSubaccountMessage(params: EngineExecuteRequestParamsByType['liquidate_subaccount']): Promise<_nadohq_contracts.SignedTx<_nadohq_contracts.EIP712LiquidateSubaccountValues>>;
21
+ buildLiquidateSubaccountMessage(params: EngineExecuteRequestParamsByType['liquidate_subaccount']): Promise<_nadohq_shared.SignedTx<_nadohq_shared.EIP712LiquidateSubaccountValues>>;
22
22
  /**
23
23
  * Builds ws message for the `withdraw_collateral` execute action.
24
24
  * @param params WithdrawCollateral params.
25
25
  * @returns `liquidate_subaccount` execute message
26
26
  */
27
- buildWithdrawCollateralMessage(params: EngineExecuteRequestParamsByType['withdraw_collateral']): Promise<_nadohq_contracts.SignedTx<_nadohq_contracts.EIP712WithdrawCollateralValues> & {
27
+ buildWithdrawCollateralMessage(params: EngineExecuteRequestParamsByType['withdraw_collateral']): Promise<_nadohq_shared.SignedTx<_nadohq_shared.EIP712WithdrawCollateralValues> & {
28
28
  spot_leverage: boolean | null;
29
29
  }>;
30
30
  /**
@@ -1,7 +1,7 @@
1
1
  import * as _nadohq_engine_client from '@nadohq/engine-client';
2
2
  import { EngineExecuteRequestParamsByType, WithSignature } from '@nadohq/engine-client';
3
- import * as _nadohq_contracts from '@nadohq/contracts';
4
- import { EIP712OrderParams } from '@nadohq/contracts';
3
+ import * as _nadohq_shared from '@nadohq/shared';
4
+ import { EIP712OrderParams } from '@nadohq/shared';
5
5
  import { BaseNadoAPI } from '../base.js';
6
6
  import '../../context.js';
7
7
  import '@nadohq/indexer-client';
@@ -18,13 +18,13 @@ declare class WebSocketExecuteAPI extends BaseNadoAPI {
18
18
  * @param params LiquidateSubaccount params.
19
19
  * @returns `liquidate_subaccount` execute message
20
20
  */
21
- buildLiquidateSubaccountMessage(params: EngineExecuteRequestParamsByType['liquidate_subaccount']): Promise<_nadohq_contracts.SignedTx<_nadohq_contracts.EIP712LiquidateSubaccountValues>>;
21
+ buildLiquidateSubaccountMessage(params: EngineExecuteRequestParamsByType['liquidate_subaccount']): Promise<_nadohq_shared.SignedTx<_nadohq_shared.EIP712LiquidateSubaccountValues>>;
22
22
  /**
23
23
  * Builds ws message for the `withdraw_collateral` execute action.
24
24
  * @param params WithdrawCollateral params.
25
25
  * @returns `liquidate_subaccount` execute message
26
26
  */
27
- buildWithdrawCollateralMessage(params: EngineExecuteRequestParamsByType['withdraw_collateral']): Promise<_nadohq_contracts.SignedTx<_nadohq_contracts.EIP712WithdrawCollateralValues> & {
27
+ buildWithdrawCollateralMessage(params: EngineExecuteRequestParamsByType['withdraw_collateral']): Promise<_nadohq_shared.SignedTx<_nadohq_shared.EIP712WithdrawCollateralValues> & {
28
28
  spot_leverage: boolean | null;
29
29
  }>;
30
30
  /**
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/apis/ws/WebSocketExecuteAPI.ts"],"sourcesContent":["import { EIP712OrderParams } from '@nadohq/contracts';\nimport {\n EngineExecuteRequestParamsByType,\n WithSignature,\n} from '@nadohq/engine-client';\nimport { BaseNadoAPI } from '../base';\n\n/**\n * Builds execute messages as expected by the server to send over Websocket.\n * @example nadoClient.ws.execute.buildPlaceOrderMessage(...)\n */\nexport class WebSocketExecuteAPI extends BaseNadoAPI {\n /**\n * Builds ws message for the `liquidate_subaccount` execute action.\n * @param params LiquidateSubaccount params.\n * @returns `liquidate_subaccount` execute message\n */\n async buildLiquidateSubaccountMessage(\n params: EngineExecuteRequestParamsByType['liquidate_subaccount'],\n ) {\n return this.context.engineClient.payloadBuilder.buildLiquidateSubaccountPayload(\n params,\n );\n }\n\n /**\n * Builds ws message for the `withdraw_collateral` execute action.\n * @param params WithdrawCollateral params.\n * @returns `liquidate_subaccount` execute message\n */\n async buildWithdrawCollateralMessage(\n params: EngineExecuteRequestParamsByType['withdraw_collateral'],\n ) {\n return this.context.engineClient.payloadBuilder.buildWithdrawCollateralPayload(\n params,\n );\n }\n\n /**\n * Builds ws message for the `place_order` execute action.\n * @param params PlaceOrder params.\n * @returns `place_order` execute message\n */\n buildPlaceOrderMessage(\n params: WithSignature<\n EngineExecuteRequestParamsByType['place_order'] & {\n order: EIP712OrderParams;\n }\n >,\n ) {\n return this.context.engineClient.payloadBuilder.buildPlaceOrderPayloadSync(\n params,\n );\n }\n\n /**\n * Builds ws message for the `cancel_orders` execute action.\n * @param params PlaceOrder params.\n * @returns `cancel_orders` execute message\n */\n buildCancelOrdersMessage(\n params: WithSignature<\n EngineExecuteRequestParamsByType['cancel_orders'] & { nonce: string }\n >,\n ) {\n return this.context.engineClient.payloadBuilder.buildCancelOrdersPayloadSync(\n params,\n );\n }\n}\n"],"mappings":";AAKA,SAAS,mBAAmB;AAMrB,IAAM,sBAAN,cAAkC,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMnD,MAAM,gCACJ,QACA;AACA,WAAO,KAAK,QAAQ,aAAa,eAAe;AAAA,MAC9C;AAAA,IACF;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,+BACJ,QACA;AACA,WAAO,KAAK,QAAQ,aAAa,eAAe;AAAA,MAC9C;AAAA,IACF;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,uBACE,QAKA;AACA,WAAO,KAAK,QAAQ,aAAa,eAAe;AAAA,MAC9C;AAAA,IACF;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,yBACE,QAGA;AACA,WAAO,KAAK,QAAQ,aAAa,eAAe;AAAA,MAC9C;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/apis/ws/WebSocketExecuteAPI.ts"],"sourcesContent":["import { EIP712OrderParams } from '@nadohq/shared';\nimport {\n EngineExecuteRequestParamsByType,\n WithSignature,\n} from '@nadohq/engine-client';\nimport { BaseNadoAPI } from '../base';\n\n/**\n * Builds execute messages as expected by the server to send over Websocket.\n * @example nadoClient.ws.execute.buildPlaceOrderMessage(...)\n */\nexport class WebSocketExecuteAPI extends BaseNadoAPI {\n /**\n * Builds ws message for the `liquidate_subaccount` execute action.\n * @param params LiquidateSubaccount params.\n * @returns `liquidate_subaccount` execute message\n */\n async buildLiquidateSubaccountMessage(\n params: EngineExecuteRequestParamsByType['liquidate_subaccount'],\n ) {\n return this.context.engineClient.payloadBuilder.buildLiquidateSubaccountPayload(\n params,\n );\n }\n\n /**\n * Builds ws message for the `withdraw_collateral` execute action.\n * @param params WithdrawCollateral params.\n * @returns `liquidate_subaccount` execute message\n */\n async buildWithdrawCollateralMessage(\n params: EngineExecuteRequestParamsByType['withdraw_collateral'],\n ) {\n return this.context.engineClient.payloadBuilder.buildWithdrawCollateralPayload(\n params,\n );\n }\n\n /**\n * Builds ws message for the `place_order` execute action.\n * @param params PlaceOrder params.\n * @returns `place_order` execute message\n */\n buildPlaceOrderMessage(\n params: WithSignature<\n EngineExecuteRequestParamsByType['place_order'] & {\n order: EIP712OrderParams;\n }\n >,\n ) {\n return this.context.engineClient.payloadBuilder.buildPlaceOrderPayloadSync(\n params,\n );\n }\n\n /**\n * Builds ws message for the `cancel_orders` execute action.\n * @param params PlaceOrder params.\n * @returns `cancel_orders` execute message\n */\n buildCancelOrdersMessage(\n params: WithSignature<\n EngineExecuteRequestParamsByType['cancel_orders'] & { nonce: string }\n >,\n ) {\n return this.context.engineClient.payloadBuilder.buildCancelOrdersPayloadSync(\n params,\n );\n }\n}\n"],"mappings":";AAKA,SAAS,mBAAmB;AAMrB,IAAM,sBAAN,cAAkC,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMnD,MAAM,gCACJ,QACA;AACA,WAAO,KAAK,QAAQ,aAAa,eAAe;AAAA,MAC9C;AAAA,IACF;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,+BACJ,QACA;AACA,WAAO,KAAK,QAAQ,aAAa,eAAe;AAAA,MAC9C;AAAA,IACF;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,uBACE,QAKA;AACA,WAAO,KAAK,QAAQ,aAAa,eAAe;AAAA,MAC9C;AAAA,IACF;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,yBACE,QAGA;AACA,WAAO,KAAK,QAAQ,aAAa,eAAe;AAAA,MAC9C;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
@@ -1,6 +1,6 @@
1
1
  import { EngineServerQueryRequestType, EngineServerQueryRequestByType, EngineServerQueryRequest } from '@nadohq/engine-client';
2
2
  import { BaseNadoAPI } from '../base.cjs';
3
- import '@nadohq/contracts';
3
+ import '@nadohq/shared';
4
4
  import '../../context.cjs';
5
5
  import '@nadohq/indexer-client';
6
6
  import '@nadohq/trigger-client';
@@ -1,6 +1,6 @@
1
1
  import { EngineServerQueryRequestType, EngineServerQueryRequestByType, EngineServerQueryRequest } from '@nadohq/engine-client';
2
2
  import { BaseNadoAPI } from '../base.js';
3
- import '@nadohq/contracts';
3
+ import '@nadohq/shared';
4
4
  import '../../context.js';
5
5
  import '@nadohq/indexer-client';
6
6
  import '@nadohq/trigger-client';
@@ -1,6 +1,6 @@
1
1
  import { EngineServerSubscriptionRequestType, EngineServerSubscriptionRequestByType, EngineServerSubscriptionRequest, EngineServerSubscriptionStreamParamsType, EngineServerSubscriptionStreamParamsByType, EngineServerSubscriptionStream } from '@nadohq/engine-client';
2
2
  import { BaseNadoAPI } from '../base.cjs';
3
- import '@nadohq/contracts';
3
+ import '@nadohq/shared';
4
4
  import '../../context.cjs';
5
5
  import '@nadohq/indexer-client';
6
6
  import '@nadohq/trigger-client';
@@ -1,6 +1,6 @@
1
1
  import { EngineServerSubscriptionRequestType, EngineServerSubscriptionRequestByType, EngineServerSubscriptionRequest, EngineServerSubscriptionStreamParamsType, EngineServerSubscriptionStreamParamsByType, EngineServerSubscriptionStream } from '@nadohq/engine-client';
2
2
  import { BaseNadoAPI } from '../base.js';
3
- import '@nadohq/contracts';
3
+ import '@nadohq/shared';
4
4
  import '../../context.js';
5
5
  import '@nadohq/indexer-client';
6
6
  import '@nadohq/trigger-client';
@@ -3,7 +3,7 @@ import { BaseNadoAPI } from '../base.cjs';
3
3
  import { WebSocketExecuteAPI } from './WebSocketExecuteAPI.cjs';
4
4
  import { WebSocketQueryAPI } from './WebSocketQueryAPI.cjs';
5
5
  import { WebSocketSubscriptionAPI } from './WebSocketSubscriptionAPI.cjs';
6
- import '@nadohq/contracts';
6
+ import '@nadohq/shared';
7
7
  import '@nadohq/engine-client';
8
8
  import '@nadohq/indexer-client';
9
9
  import '@nadohq/trigger-client';
@@ -3,7 +3,7 @@ import { BaseNadoAPI } from '../base.js';
3
3
  import { WebSocketExecuteAPI } from './WebSocketExecuteAPI.js';
4
4
  import { WebSocketQueryAPI } from './WebSocketQueryAPI.js';
5
5
  import { WebSocketSubscriptionAPI } from './WebSocketSubscriptionAPI.js';
6
- import '@nadohq/contracts';
6
+ import '@nadohq/shared';
7
7
  import '@nadohq/engine-client';
8
8
  import '@nadohq/indexer-client';
9
9
  import '@nadohq/trigger-client';
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/client.ts"],"sourcesContent":["import { WalletClientWithAccount } from '@nadohq/contracts';\nimport { MarketAPI } from './apis/market';\nimport { PerpAPI } from './apis/perp';\nimport { SpotAPI } from './apis/spot';\nimport { SubaccountAPI } from './apis/subaccount';\nimport { WebsocketAPI } from './apis/ws';\nimport { createClientContext, NadoClientContext } from './context';\n\n/**\n * Client for querying and executing against Nado Clearinghouse.\n * Usually not instantiated directly. Instead, use {@link createNadoClient:CLIENT}.\n */\nexport class NadoClient {\n context!: NadoClientContext;\n market!: MarketAPI;\n subaccount!: SubaccountAPI;\n spot!: SpotAPI;\n perp!: PerpAPI;\n ws!: WebsocketAPI;\n\n constructor(context: NadoClientContext) {\n this.setupFromContext(context);\n }\n\n /**\n * Sets the linked signer for the client. Set to null to revert to the chain signer.\n * @param linkedSignerWalletClient\n */\n setLinkedSigner(linkedSignerWalletClient: WalletClientWithAccount | null) {\n // This is a bit ugly, but works for now\n this.context.linkedSignerWalletClient =\n linkedSignerWalletClient ?? undefined;\n this.context.engineClient.setLinkedSigner(linkedSignerWalletClient);\n this.context.triggerClient.setLinkedSigner(linkedSignerWalletClient);\n }\n\n /**\n * Sets the WalletClient for the client. Will cause a full reload of the current context.\n * @param walletClient\n */\n setWalletClient(walletClient: NadoClientContext['walletClient']) {\n const newContext = createClientContext(\n {\n contractAddresses: this.context.contractAddresses,\n engineEndpoint: this.context.engineClient.opts.url,\n indexerEndpoint: this.context.indexerClient.opts.url,\n triggerEndpoint: this.context.triggerClient.opts.url,\n },\n {\n walletClient,\n // No need to call setLinkedSigner as this property doesn't change\n linkedSignerWalletClient: this.context.linkedSignerWalletClient,\n publicClient: this.context.publicClient,\n },\n );\n this.setupFromContext(newContext);\n }\n\n private setupFromContext(context: NadoClientContext) {\n this.context = context;\n this.market = new MarketAPI(context);\n this.subaccount = new SubaccountAPI(context);\n this.spot = new SpotAPI(context);\n this.perp = new PerpAPI(context);\n this.ws = new WebsocketAPI(context);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA0B;AAC1B,kBAAwB;AACxB,kBAAwB;AACxB,wBAA8B;AAC9B,gBAA6B;AAC7B,qBAAuD;AAMhD,IAAM,aAAN,MAAiB;AAAA,EAQtB,YAAY,SAA4B;AACtC,SAAK,iBAAiB,OAAO;AAAA,EAC/B;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,gBAAgB,0BAA0D;AAExE,SAAK,QAAQ,2BACX,4BAA4B;AAC9B,SAAK,QAAQ,aAAa,gBAAgB,wBAAwB;AAClE,SAAK,QAAQ,cAAc,gBAAgB,wBAAwB;AAAA,EACrE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,gBAAgB,cAAiD;AAC/D,UAAM,iBAAa;AAAA,MACjB;AAAA,QACE,mBAAmB,KAAK,QAAQ;AAAA,QAChC,gBAAgB,KAAK,QAAQ,aAAa,KAAK;AAAA,QAC/C,iBAAiB,KAAK,QAAQ,cAAc,KAAK;AAAA,QACjD,iBAAiB,KAAK,QAAQ,cAAc,KAAK;AAAA,MACnD;AAAA,MACA;AAAA,QACE;AAAA;AAAA,QAEA,0BAA0B,KAAK,QAAQ;AAAA,QACvC,cAAc,KAAK,QAAQ;AAAA,MAC7B;AAAA,IACF;AACA,SAAK,iBAAiB,UAAU;AAAA,EAClC;AAAA,EAEQ,iBAAiB,SAA4B;AACnD,SAAK,UAAU;AACf,SAAK,SAAS,IAAI,wBAAU,OAAO;AACnC,SAAK,aAAa,IAAI,gCAAc,OAAO;AAC3C,SAAK,OAAO,IAAI,oBAAQ,OAAO;AAC/B,SAAK,OAAO,IAAI,oBAAQ,OAAO;AAC/B,SAAK,KAAK,IAAI,uBAAa,OAAO;AAAA,EACpC;AACF;","names":[]}
1
+ {"version":3,"sources":["../src/client.ts"],"sourcesContent":["import { WalletClientWithAccount } from '@nadohq/shared';\nimport { MarketAPI } from './apis/market';\nimport { PerpAPI } from './apis/perp';\nimport { SpotAPI } from './apis/spot';\nimport { SubaccountAPI } from './apis/subaccount';\nimport { WebsocketAPI } from './apis/ws';\nimport { createClientContext, NadoClientContext } from './context';\n\n/**\n * Client for querying and executing against Nado Clearinghouse.\n * Usually not instantiated directly. Instead, use {@link createNadoClient:CLIENT}.\n */\nexport class NadoClient {\n context!: NadoClientContext;\n market!: MarketAPI;\n subaccount!: SubaccountAPI;\n spot!: SpotAPI;\n perp!: PerpAPI;\n ws!: WebsocketAPI;\n\n constructor(context: NadoClientContext) {\n this.setupFromContext(context);\n }\n\n /**\n * Sets the linked signer for the client. Set to null to revert to the chain signer.\n * @param linkedSignerWalletClient\n */\n setLinkedSigner(linkedSignerWalletClient: WalletClientWithAccount | null) {\n // This is a bit ugly, but works for now\n this.context.linkedSignerWalletClient =\n linkedSignerWalletClient ?? undefined;\n this.context.engineClient.setLinkedSigner(linkedSignerWalletClient);\n this.context.triggerClient.setLinkedSigner(linkedSignerWalletClient);\n }\n\n /**\n * Sets the WalletClient for the client. Will cause a full reload of the current context.\n * @param walletClient\n */\n setWalletClient(walletClient: NadoClientContext['walletClient']) {\n const newContext = createClientContext(\n {\n contractAddresses: this.context.contractAddresses,\n engineEndpoint: this.context.engineClient.opts.url,\n indexerEndpoint: this.context.indexerClient.opts.url,\n triggerEndpoint: this.context.triggerClient.opts.url,\n },\n {\n walletClient,\n // No need to call setLinkedSigner as this property doesn't change\n linkedSignerWalletClient: this.context.linkedSignerWalletClient,\n publicClient: this.context.publicClient,\n },\n );\n this.setupFromContext(newContext);\n }\n\n private setupFromContext(context: NadoClientContext) {\n this.context = context;\n this.market = new MarketAPI(context);\n this.subaccount = new SubaccountAPI(context);\n this.spot = new SpotAPI(context);\n this.perp = new PerpAPI(context);\n this.ws = new WebsocketAPI(context);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA0B;AAC1B,kBAAwB;AACxB,kBAAwB;AACxB,wBAA8B;AAC9B,gBAA6B;AAC7B,qBAAuD;AAMhD,IAAM,aAAN,MAAiB;AAAA,EAQtB,YAAY,SAA4B;AACtC,SAAK,iBAAiB,OAAO;AAAA,EAC/B;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,gBAAgB,0BAA0D;AAExE,SAAK,QAAQ,2BACX,4BAA4B;AAC9B,SAAK,QAAQ,aAAa,gBAAgB,wBAAwB;AAClE,SAAK,QAAQ,cAAc,gBAAgB,wBAAwB;AAAA,EACrE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,gBAAgB,cAAiD;AAC/D,UAAM,iBAAa;AAAA,MACjB;AAAA,QACE,mBAAmB,KAAK,QAAQ;AAAA,QAChC,gBAAgB,KAAK,QAAQ,aAAa,KAAK;AAAA,QAC/C,iBAAiB,KAAK,QAAQ,cAAc,KAAK;AAAA,QACjD,iBAAiB,KAAK,QAAQ,cAAc,KAAK;AAAA,MACnD;AAAA,MACA;AAAA,QACE;AAAA;AAAA,QAEA,0BAA0B,KAAK,QAAQ;AAAA,QACvC,cAAc,KAAK,QAAQ;AAAA,MAC7B;AAAA,IACF;AACA,SAAK,iBAAiB,UAAU;AAAA,EAClC;AAAA,EAEQ,iBAAiB,SAA4B;AACnD,SAAK,UAAU;AACf,SAAK,SAAS,IAAI,wBAAU,OAAO;AACnC,SAAK,aAAa,IAAI,gCAAc,OAAO;AAC3C,SAAK,OAAO,IAAI,oBAAQ,OAAO;AAC/B,SAAK,OAAO,IAAI,oBAAQ,OAAO;AAC/B,SAAK,KAAK,IAAI,uBAAa,OAAO;AAAA,EACpC;AACF;","names":[]}
package/dist/client.d.cts CHANGED
@@ -1,4 +1,4 @@
1
- import { WalletClientWithAccount } from '@nadohq/contracts';
1
+ import { WalletClientWithAccount } from '@nadohq/shared';
2
2
  import { MarketAPI } from './apis/market/index.cjs';
3
3
  import { PerpAPI } from './apis/perp/index.cjs';
4
4
  import { SpotAPI } from './apis/spot/index.cjs';
@@ -10,8 +10,8 @@ import './apis/market/MarketExecuteAPI.cjs';
10
10
  import '@nadohq/trigger-client';
11
11
  import '@nadohq/engine-client';
12
12
  import './apis/base.cjs';
13
- import './apis/types.cjs';
14
13
  import './apis/market/types.cjs';
14
+ import './apis/types.cjs';
15
15
  import './apis/market/MarketQueryAPI.cjs';
16
16
  import '@nadohq/indexer-client';
17
17
  import './apis/perp/PerpExecuteAPI.cjs';
@@ -19,7 +19,6 @@ import './apis/perp/PerpQueryAPI.cjs';
19
19
  import './apis/spot/SpotExecuteAPI.cjs';
20
20
  import './apis/spot/BaseSpotAPI.cjs';
21
21
  import './apis/spot/types.cjs';
22
- import '@nadohq/utils';
23
22
  import './apis/spot/SpotQueryAPI.cjs';
24
23
  import './apis/subaccount/SubaccountExecuteAPI.cjs';
25
24
  import './apis/subaccount/types.cjs';
package/dist/client.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { WalletClientWithAccount } from '@nadohq/contracts';
1
+ import { WalletClientWithAccount } from '@nadohq/shared';
2
2
  import { MarketAPI } from './apis/market/index.js';
3
3
  import { PerpAPI } from './apis/perp/index.js';
4
4
  import { SpotAPI } from './apis/spot/index.js';
@@ -10,8 +10,8 @@ import './apis/market/MarketExecuteAPI.js';
10
10
  import '@nadohq/trigger-client';
11
11
  import '@nadohq/engine-client';
12
12
  import './apis/base.js';
13
- import './apis/types.js';
14
13
  import './apis/market/types.js';
14
+ import './apis/types.js';
15
15
  import './apis/market/MarketQueryAPI.js';
16
16
  import '@nadohq/indexer-client';
17
17
  import './apis/perp/PerpExecuteAPI.js';
@@ -19,7 +19,6 @@ import './apis/perp/PerpQueryAPI.js';
19
19
  import './apis/spot/SpotExecuteAPI.js';
20
20
  import './apis/spot/BaseSpotAPI.js';
21
21
  import './apis/spot/types.js';
22
- import '@nadohq/utils';
23
22
  import './apis/spot/SpotQueryAPI.js';
24
23
  import './apis/subaccount/SubaccountExecuteAPI.js';
25
24
  import './apis/subaccount/types.js';
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/client.ts"],"sourcesContent":["import { WalletClientWithAccount } from '@nadohq/contracts';\nimport { MarketAPI } from './apis/market';\nimport { PerpAPI } from './apis/perp';\nimport { SpotAPI } from './apis/spot';\nimport { SubaccountAPI } from './apis/subaccount';\nimport { WebsocketAPI } from './apis/ws';\nimport { createClientContext, NadoClientContext } from './context';\n\n/**\n * Client for querying and executing against Nado Clearinghouse.\n * Usually not instantiated directly. Instead, use {@link createNadoClient:CLIENT}.\n */\nexport class NadoClient {\n context!: NadoClientContext;\n market!: MarketAPI;\n subaccount!: SubaccountAPI;\n spot!: SpotAPI;\n perp!: PerpAPI;\n ws!: WebsocketAPI;\n\n constructor(context: NadoClientContext) {\n this.setupFromContext(context);\n }\n\n /**\n * Sets the linked signer for the client. Set to null to revert to the chain signer.\n * @param linkedSignerWalletClient\n */\n setLinkedSigner(linkedSignerWalletClient: WalletClientWithAccount | null) {\n // This is a bit ugly, but works for now\n this.context.linkedSignerWalletClient =\n linkedSignerWalletClient ?? undefined;\n this.context.engineClient.setLinkedSigner(linkedSignerWalletClient);\n this.context.triggerClient.setLinkedSigner(linkedSignerWalletClient);\n }\n\n /**\n * Sets the WalletClient for the client. Will cause a full reload of the current context.\n * @param walletClient\n */\n setWalletClient(walletClient: NadoClientContext['walletClient']) {\n const newContext = createClientContext(\n {\n contractAddresses: this.context.contractAddresses,\n engineEndpoint: this.context.engineClient.opts.url,\n indexerEndpoint: this.context.indexerClient.opts.url,\n triggerEndpoint: this.context.triggerClient.opts.url,\n },\n {\n walletClient,\n // No need to call setLinkedSigner as this property doesn't change\n linkedSignerWalletClient: this.context.linkedSignerWalletClient,\n publicClient: this.context.publicClient,\n },\n );\n this.setupFromContext(newContext);\n }\n\n private setupFromContext(context: NadoClientContext) {\n this.context = context;\n this.market = new MarketAPI(context);\n this.subaccount = new SubaccountAPI(context);\n this.spot = new SpotAPI(context);\n this.perp = new PerpAPI(context);\n this.ws = new WebsocketAPI(context);\n }\n}\n"],"mappings":";AACA,SAAS,iBAAiB;AAC1B,SAAS,eAAe;AACxB,SAAS,eAAe;AACxB,SAAS,qBAAqB;AAC9B,SAAS,oBAAoB;AAC7B,SAAS,2BAA8C;AAMhD,IAAM,aAAN,MAAiB;AAAA,EAQtB,YAAY,SAA4B;AACtC,SAAK,iBAAiB,OAAO;AAAA,EAC/B;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,gBAAgB,0BAA0D;AAExE,SAAK,QAAQ,2BACX,4BAA4B;AAC9B,SAAK,QAAQ,aAAa,gBAAgB,wBAAwB;AAClE,SAAK,QAAQ,cAAc,gBAAgB,wBAAwB;AAAA,EACrE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,gBAAgB,cAAiD;AAC/D,UAAM,aAAa;AAAA,MACjB;AAAA,QACE,mBAAmB,KAAK,QAAQ;AAAA,QAChC,gBAAgB,KAAK,QAAQ,aAAa,KAAK;AAAA,QAC/C,iBAAiB,KAAK,QAAQ,cAAc,KAAK;AAAA,QACjD,iBAAiB,KAAK,QAAQ,cAAc,KAAK;AAAA,MACnD;AAAA,MACA;AAAA,QACE;AAAA;AAAA,QAEA,0BAA0B,KAAK,QAAQ;AAAA,QACvC,cAAc,KAAK,QAAQ;AAAA,MAC7B;AAAA,IACF;AACA,SAAK,iBAAiB,UAAU;AAAA,EAClC;AAAA,EAEQ,iBAAiB,SAA4B;AACnD,SAAK,UAAU;AACf,SAAK,SAAS,IAAI,UAAU,OAAO;AACnC,SAAK,aAAa,IAAI,cAAc,OAAO;AAC3C,SAAK,OAAO,IAAI,QAAQ,OAAO;AAC/B,SAAK,OAAO,IAAI,QAAQ,OAAO;AAC/B,SAAK,KAAK,IAAI,aAAa,OAAO;AAAA,EACpC;AACF;","names":[]}
1
+ {"version":3,"sources":["../src/client.ts"],"sourcesContent":["import { WalletClientWithAccount } from '@nadohq/shared';\nimport { MarketAPI } from './apis/market';\nimport { PerpAPI } from './apis/perp';\nimport { SpotAPI } from './apis/spot';\nimport { SubaccountAPI } from './apis/subaccount';\nimport { WebsocketAPI } from './apis/ws';\nimport { createClientContext, NadoClientContext } from './context';\n\n/**\n * Client for querying and executing against Nado Clearinghouse.\n * Usually not instantiated directly. Instead, use {@link createNadoClient:CLIENT}.\n */\nexport class NadoClient {\n context!: NadoClientContext;\n market!: MarketAPI;\n subaccount!: SubaccountAPI;\n spot!: SpotAPI;\n perp!: PerpAPI;\n ws!: WebsocketAPI;\n\n constructor(context: NadoClientContext) {\n this.setupFromContext(context);\n }\n\n /**\n * Sets the linked signer for the client. Set to null to revert to the chain signer.\n * @param linkedSignerWalletClient\n */\n setLinkedSigner(linkedSignerWalletClient: WalletClientWithAccount | null) {\n // This is a bit ugly, but works for now\n this.context.linkedSignerWalletClient =\n linkedSignerWalletClient ?? undefined;\n this.context.engineClient.setLinkedSigner(linkedSignerWalletClient);\n this.context.triggerClient.setLinkedSigner(linkedSignerWalletClient);\n }\n\n /**\n * Sets the WalletClient for the client. Will cause a full reload of the current context.\n * @param walletClient\n */\n setWalletClient(walletClient: NadoClientContext['walletClient']) {\n const newContext = createClientContext(\n {\n contractAddresses: this.context.contractAddresses,\n engineEndpoint: this.context.engineClient.opts.url,\n indexerEndpoint: this.context.indexerClient.opts.url,\n triggerEndpoint: this.context.triggerClient.opts.url,\n },\n {\n walletClient,\n // No need to call setLinkedSigner as this property doesn't change\n linkedSignerWalletClient: this.context.linkedSignerWalletClient,\n publicClient: this.context.publicClient,\n },\n );\n this.setupFromContext(newContext);\n }\n\n private setupFromContext(context: NadoClientContext) {\n this.context = context;\n this.market = new MarketAPI(context);\n this.subaccount = new SubaccountAPI(context);\n this.spot = new SpotAPI(context);\n this.perp = new PerpAPI(context);\n this.ws = new WebsocketAPI(context);\n }\n}\n"],"mappings":";AACA,SAAS,iBAAiB;AAC1B,SAAS,eAAe;AACxB,SAAS,eAAe;AACxB,SAAS,qBAAqB;AAC9B,SAAS,oBAAoB;AAC7B,SAAS,2BAA8C;AAMhD,IAAM,aAAN,MAAiB;AAAA,EAQtB,YAAY,SAA4B;AACtC,SAAK,iBAAiB,OAAO;AAAA,EAC/B;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,gBAAgB,0BAA0D;AAExE,SAAK,QAAQ,2BACX,4BAA4B;AAC9B,SAAK,QAAQ,aAAa,gBAAgB,wBAAwB;AAClE,SAAK,QAAQ,cAAc,gBAAgB,wBAAwB;AAAA,EACrE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,gBAAgB,cAAiD;AAC/D,UAAM,aAAa;AAAA,MACjB;AAAA,QACE,mBAAmB,KAAK,QAAQ;AAAA,QAChC,gBAAgB,KAAK,QAAQ,aAAa,KAAK;AAAA,QAC/C,iBAAiB,KAAK,QAAQ,cAAc,KAAK;AAAA,QACjD,iBAAiB,KAAK,QAAQ,cAAc,KAAK;AAAA,MACnD;AAAA,MACA;AAAA,QACE;AAAA;AAAA,QAEA,0BAA0B,KAAK,QAAQ;AAAA,QACvC,cAAc,KAAK,QAAQ;AAAA,MAC7B;AAAA,IACF;AACA,SAAK,iBAAiB,UAAU;AAAA,EAClC;AAAA,EAEQ,iBAAiB,SAA4B;AACnD,SAAK,UAAU;AACf,SAAK,SAAS,IAAI,UAAU,OAAO;AACnC,SAAK,aAAa,IAAI,cAAc,OAAO;AAC3C,SAAK,OAAO,IAAI,QAAQ,OAAO;AAC/B,SAAK,OAAO,IAAI,QAAQ,OAAO;AAC/B,SAAK,KAAK,IAAI,aAAa,OAAO;AAAA,EACpC;AACF;","names":[]}
package/dist/context.cjs CHANGED
@@ -23,7 +23,7 @@ __export(context_exports, {
23
23
  createClientContext: () => createClientContext
24
24
  });
25
25
  module.exports = __toCommonJS(context_exports);
26
- var import_contracts = require("@nadohq/contracts");
26
+ var import_shared = require("@nadohq/shared");
27
27
  var import_engine_client = require("@nadohq/engine-client");
28
28
  var import_indexer_client = require("@nadohq/indexer-client");
29
29
  var import_trigger_client = require("@nadohq/trigger-client");
@@ -40,7 +40,7 @@ function createClientContext(opts, accountOpts) {
40
40
  }
41
41
  const chainEnv = opts;
42
42
  return {
43
- contractAddresses: import_contracts.NADO_DEPLOYMENTS[chainEnv],
43
+ contractAddresses: import_shared.NADO_DEPLOYMENTS[chainEnv],
44
44
  engineEndpoint: import_engine_client.ENGINE_CLIENT_ENDPOINTS[chainEnv],
45
45
  indexerEndpoint: import_indexer_client.INDEXER_CLIENT_ENDPOINTS[chainEnv],
46
46
  triggerEndpoint: import_trigger_client.TRIGGER_CLIENT_ENDPOINTS[chainEnv]
@@ -114,7 +114,7 @@ function getNadoContract({
114
114
  }) {
115
115
  return (0, import_viem.getContract)({
116
116
  address: contractAddresses[contractName],
117
- abi: import_contracts.NADO_ABIS[contractName],
117
+ abi: import_shared.NADO_ABIS[contractName],
118
118
  client: walletClient ?? publicClient
119
119
  });
120
120
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/context.ts"],"sourcesContent":["import {\n ChainEnv,\n NADO_ABIS,\n NADO_DEPLOYMENTS,\n NadoContractName,\n NadoContracts,\n NadoDeploymentAddresses,\n WalletClientWithAccount,\n} from '@nadohq/contracts';\nimport { ENGINE_CLIENT_ENDPOINTS, EngineClient } from '@nadohq/engine-client';\nimport {\n INDEXER_CLIENT_ENDPOINTS,\n IndexerClient,\n} from '@nadohq/indexer-client';\nimport {\n TRIGGER_CLIENT_ENDPOINTS,\n TriggerClient,\n} from '@nadohq/trigger-client';\nimport { getContract, PublicClient } from 'viem';\n\n/**\n * Context required to use the Nado client.\n */\nexport interface NadoClientContext {\n publicClient: PublicClient;\n walletClient?: WalletClientWithAccount;\n // If provided, this is used to sign engine transactions instead of the account associated with walletClient\n linkedSignerWalletClient?: WalletClientWithAccount;\n contracts: NadoContracts;\n contractAddresses: NadoDeploymentAddresses;\n engineClient: EngineClient;\n indexerClient: IndexerClient;\n triggerClient: TriggerClient;\n}\n\n/**\n * Args for creating a context\n */\ninterface NadoClientContextOpts {\n contractAddresses: NadoDeploymentAddresses;\n engineEndpoint: string;\n indexerEndpoint: string;\n triggerEndpoint: string;\n}\n\n/**\n * Args for signing configuration for creating a context\n */\nexport type CreateNadoClientContextAccountOpts = Pick<\n NadoClientContext,\n 'walletClient' | 'linkedSignerWalletClient' | 'publicClient'\n>;\n\nexport type CreateNadoClientContextOpts = NadoClientContextOpts | ChainEnv;\n\n/**\n * Utility function to create client context from options\n *\n * @param opts\n * @param accountOpts\n */\nexport function createClientContext(\n opts: CreateNadoClientContextOpts,\n accountOpts: CreateNadoClientContextAccountOpts,\n): NadoClientContext {\n const {\n contractAddresses,\n engineEndpoint,\n indexerEndpoint,\n triggerEndpoint,\n } = ((): NadoClientContextOpts => {\n // Custom options\n if (typeof opts === 'object') {\n return opts;\n }\n\n const chainEnv = opts;\n return {\n contractAddresses: NADO_DEPLOYMENTS[chainEnv],\n engineEndpoint: ENGINE_CLIENT_ENDPOINTS[chainEnv],\n indexerEndpoint: INDEXER_CLIENT_ENDPOINTS[chainEnv],\n triggerEndpoint: TRIGGER_CLIENT_ENDPOINTS[chainEnv],\n };\n })();\n const { publicClient, walletClient, linkedSignerWalletClient } = accountOpts;\n\n return {\n walletClient,\n linkedSignerWalletClient,\n publicClient,\n contracts: {\n querier: getNadoContract({\n contractAddresses,\n contractName: 'querier',\n walletClient,\n publicClient,\n }),\n clearinghouse: getNadoContract({\n contractAddresses,\n contractName: 'clearinghouse',\n walletClient,\n publicClient,\n }),\n endpoint: getNadoContract({\n contractAddresses,\n contractName: 'endpoint',\n walletClient,\n publicClient,\n }),\n spotEngine: getNadoContract({\n contractAddresses,\n contractName: 'spotEngine',\n walletClient,\n publicClient,\n }),\n perpEngine: getNadoContract({\n contractAddresses,\n contractName: 'perpEngine',\n walletClient,\n publicClient,\n }),\n withdrawPool: getNadoContract({\n contractAddresses,\n contractName: 'withdrawPool',\n walletClient,\n publicClient,\n }),\n },\n contractAddresses,\n engineClient: new EngineClient({\n url: engineEndpoint,\n walletClient,\n linkedSignerWalletClient,\n }),\n indexerClient: new IndexerClient({\n url: indexerEndpoint,\n walletClient,\n }),\n triggerClient: new TriggerClient({\n url: triggerEndpoint,\n walletClient,\n linkedSignerWalletClient,\n }),\n };\n}\n\ninterface GetNadoContractParams<T extends NadoContractName> {\n contractAddresses: NadoDeploymentAddresses;\n contractName: T;\n walletClient?: WalletClientWithAccount;\n publicClient: PublicClient;\n}\n\nfunction getNadoContract<T extends NadoContractName>({\n contractAddresses,\n contractName,\n walletClient,\n publicClient,\n}: GetNadoContractParams<T>): NadoContracts[T] {\n return getContract({\n address: contractAddresses[contractName],\n abi: NADO_ABIS[contractName],\n client: walletClient ?? publicClient,\n }) as NadoContracts[T];\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAQO;AACP,2BAAsD;AACtD,4BAGO;AACP,4BAGO;AACP,kBAA0C;AA2CnC,SAAS,oBACd,MACA,aACmB;AACnB,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,KAAK,MAA6B;AAEhC,QAAI,OAAO,SAAS,UAAU;AAC5B,aAAO;AAAA,IACT;AAEA,UAAM,WAAW;AACjB,WAAO;AAAA,MACL,mBAAmB,kCAAiB,QAAQ;AAAA,MAC5C,gBAAgB,6CAAwB,QAAQ;AAAA,MAChD,iBAAiB,+CAAyB,QAAQ;AAAA,MAClD,iBAAiB,+CAAyB,QAAQ;AAAA,IACpD;AAAA,EACF,GAAG;AACH,QAAM,EAAE,cAAc,cAAc,yBAAyB,IAAI;AAEjE,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW;AAAA,MACT,SAAS,gBAAgB;AAAA,QACvB;AAAA,QACA,cAAc;AAAA,QACd;AAAA,QACA;AAAA,MACF,CAAC;AAAA,MACD,eAAe,gBAAgB;AAAA,QAC7B;AAAA,QACA,cAAc;AAAA,QACd;AAAA,QACA;AAAA,MACF,CAAC;AAAA,MACD,UAAU,gBAAgB;AAAA,QACxB;AAAA,QACA,cAAc;AAAA,QACd;AAAA,QACA;AAAA,MACF,CAAC;AAAA,MACD,YAAY,gBAAgB;AAAA,QAC1B;AAAA,QACA,cAAc;AAAA,QACd;AAAA,QACA;AAAA,MACF,CAAC;AAAA,MACD,YAAY,gBAAgB;AAAA,QAC1B;AAAA,QACA,cAAc;AAAA,QACd;AAAA,QACA;AAAA,MACF,CAAC;AAAA,MACD,cAAc,gBAAgB;AAAA,QAC5B;AAAA,QACA,cAAc;AAAA,QACd;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH;AAAA,IACA;AAAA,IACA,cAAc,IAAI,kCAAa;AAAA,MAC7B,KAAK;AAAA,MACL;AAAA,MACA;AAAA,IACF,CAAC;AAAA,IACD,eAAe,IAAI,oCAAc;AAAA,MAC/B,KAAK;AAAA,MACL;AAAA,IACF,CAAC;AAAA,IACD,eAAe,IAAI,oCAAc;AAAA,MAC/B,KAAK;AAAA,MACL;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AACF;AASA,SAAS,gBAA4C;AAAA,EACnD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA+C;AAC7C,aAAO,yBAAY;AAAA,IACjB,SAAS,kBAAkB,YAAY;AAAA,IACvC,KAAK,2BAAU,YAAY;AAAA,IAC3B,QAAQ,gBAAgB;AAAA,EAC1B,CAAC;AACH;","names":[]}
1
+ {"version":3,"sources":["../src/context.ts"],"sourcesContent":["import {\n ChainEnv,\n NADO_ABIS,\n NADO_DEPLOYMENTS,\n NadoContractName,\n NadoContracts,\n NadoDeploymentAddresses,\n WalletClientWithAccount,\n} from '@nadohq/shared';\nimport { ENGINE_CLIENT_ENDPOINTS, EngineClient } from '@nadohq/engine-client';\nimport {\n INDEXER_CLIENT_ENDPOINTS,\n IndexerClient,\n} from '@nadohq/indexer-client';\nimport {\n TRIGGER_CLIENT_ENDPOINTS,\n TriggerClient,\n} from '@nadohq/trigger-client';\nimport { getContract, PublicClient } from 'viem';\n\n/**\n * Context required to use the Nado client.\n */\nexport interface NadoClientContext {\n publicClient: PublicClient;\n walletClient?: WalletClientWithAccount;\n // If provided, this is used to sign engine transactions instead of the account associated with walletClient\n linkedSignerWalletClient?: WalletClientWithAccount;\n contracts: NadoContracts;\n contractAddresses: NadoDeploymentAddresses;\n engineClient: EngineClient;\n indexerClient: IndexerClient;\n triggerClient: TriggerClient;\n}\n\n/**\n * Args for creating a context\n */\ninterface NadoClientContextOpts {\n contractAddresses: NadoDeploymentAddresses;\n engineEndpoint: string;\n indexerEndpoint: string;\n triggerEndpoint: string;\n}\n\n/**\n * Args for signing configuration for creating a context\n */\nexport type CreateNadoClientContextAccountOpts = Pick<\n NadoClientContext,\n 'walletClient' | 'linkedSignerWalletClient' | 'publicClient'\n>;\n\nexport type CreateNadoClientContextOpts = NadoClientContextOpts | ChainEnv;\n\n/**\n * Utility function to create client context from options\n *\n * @param opts\n * @param accountOpts\n */\nexport function createClientContext(\n opts: CreateNadoClientContextOpts,\n accountOpts: CreateNadoClientContextAccountOpts,\n): NadoClientContext {\n const {\n contractAddresses,\n engineEndpoint,\n indexerEndpoint,\n triggerEndpoint,\n } = ((): NadoClientContextOpts => {\n // Custom options\n if (typeof opts === 'object') {\n return opts;\n }\n\n const chainEnv = opts;\n return {\n contractAddresses: NADO_DEPLOYMENTS[chainEnv],\n engineEndpoint: ENGINE_CLIENT_ENDPOINTS[chainEnv],\n indexerEndpoint: INDEXER_CLIENT_ENDPOINTS[chainEnv],\n triggerEndpoint: TRIGGER_CLIENT_ENDPOINTS[chainEnv],\n };\n })();\n const { publicClient, walletClient, linkedSignerWalletClient } = accountOpts;\n\n return {\n walletClient,\n linkedSignerWalletClient,\n publicClient,\n contracts: {\n querier: getNadoContract({\n contractAddresses,\n contractName: 'querier',\n walletClient,\n publicClient,\n }),\n clearinghouse: getNadoContract({\n contractAddresses,\n contractName: 'clearinghouse',\n walletClient,\n publicClient,\n }),\n endpoint: getNadoContract({\n contractAddresses,\n contractName: 'endpoint',\n walletClient,\n publicClient,\n }),\n spotEngine: getNadoContract({\n contractAddresses,\n contractName: 'spotEngine',\n walletClient,\n publicClient,\n }),\n perpEngine: getNadoContract({\n contractAddresses,\n contractName: 'perpEngine',\n walletClient,\n publicClient,\n }),\n withdrawPool: getNadoContract({\n contractAddresses,\n contractName: 'withdrawPool',\n walletClient,\n publicClient,\n }),\n },\n contractAddresses,\n engineClient: new EngineClient({\n url: engineEndpoint,\n walletClient,\n linkedSignerWalletClient,\n }),\n indexerClient: new IndexerClient({\n url: indexerEndpoint,\n walletClient,\n }),\n triggerClient: new TriggerClient({\n url: triggerEndpoint,\n walletClient,\n linkedSignerWalletClient,\n }),\n };\n}\n\ninterface GetNadoContractParams<T extends NadoContractName> {\n contractAddresses: NadoDeploymentAddresses;\n contractName: T;\n walletClient?: WalletClientWithAccount;\n publicClient: PublicClient;\n}\n\nfunction getNadoContract<T extends NadoContractName>({\n contractAddresses,\n contractName,\n walletClient,\n publicClient,\n}: GetNadoContractParams<T>): NadoContracts[T] {\n return getContract({\n address: contractAddresses[contractName],\n abi: NADO_ABIS[contractName],\n client: walletClient ?? publicClient,\n }) as NadoContracts[T];\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAQO;AACP,2BAAsD;AACtD,4BAGO;AACP,4BAGO;AACP,kBAA0C;AA2CnC,SAAS,oBACd,MACA,aACmB;AACnB,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,KAAK,MAA6B;AAEhC,QAAI,OAAO,SAAS,UAAU;AAC5B,aAAO;AAAA,IACT;AAEA,UAAM,WAAW;AACjB,WAAO;AAAA,MACL,mBAAmB,+BAAiB,QAAQ;AAAA,MAC5C,gBAAgB,6CAAwB,QAAQ;AAAA,MAChD,iBAAiB,+CAAyB,QAAQ;AAAA,MAClD,iBAAiB,+CAAyB,QAAQ;AAAA,IACpD;AAAA,EACF,GAAG;AACH,QAAM,EAAE,cAAc,cAAc,yBAAyB,IAAI;AAEjE,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW;AAAA,MACT,SAAS,gBAAgB;AAAA,QACvB;AAAA,QACA,cAAc;AAAA,QACd;AAAA,QACA;AAAA,MACF,CAAC;AAAA,MACD,eAAe,gBAAgB;AAAA,QAC7B;AAAA,QACA,cAAc;AAAA,QACd;AAAA,QACA;AAAA,MACF,CAAC;AAAA,MACD,UAAU,gBAAgB;AAAA,QACxB;AAAA,QACA,cAAc;AAAA,QACd;AAAA,QACA;AAAA,MACF,CAAC;AAAA,MACD,YAAY,gBAAgB;AAAA,QAC1B;AAAA,QACA,cAAc;AAAA,QACd;AAAA,QACA;AAAA,MACF,CAAC;AAAA,MACD,YAAY,gBAAgB;AAAA,QAC1B;AAAA,QACA,cAAc;AAAA,QACd;AAAA,QACA;AAAA,MACF,CAAC;AAAA,MACD,cAAc,gBAAgB;AAAA,QAC5B;AAAA,QACA,cAAc;AAAA,QACd;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH;AAAA,IACA;AAAA,IACA,cAAc,IAAI,kCAAa;AAAA,MAC7B,KAAK;AAAA,MACL;AAAA,MACA;AAAA,IACF,CAAC;AAAA,IACD,eAAe,IAAI,oCAAc;AAAA,MAC/B,KAAK;AAAA,MACL;AAAA,IACF,CAAC;AAAA,IACD,eAAe,IAAI,oCAAc;AAAA,MAC/B,KAAK;AAAA,MACL;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AACF;AASA,SAAS,gBAA4C;AAAA,EACnD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA+C;AAC7C,aAAO,yBAAY;AAAA,IACjB,SAAS,kBAAkB,YAAY;AAAA,IACvC,KAAK,wBAAU,YAAY;AAAA,IAC3B,QAAQ,gBAAgB;AAAA,EAC1B,CAAC;AACH;","names":[]}
@@ -1,4 +1,4 @@
1
- import { WalletClientWithAccount, NadoContracts, NadoDeploymentAddresses, ChainEnv } from '@nadohq/contracts';
1
+ import { WalletClientWithAccount, NadoContracts, NadoDeploymentAddresses, ChainEnv } from '@nadohq/shared';
2
2
  import { EngineClient } from '@nadohq/engine-client';
3
3
  import { IndexerClient } from '@nadohq/indexer-client';
4
4
  import { TriggerClient } from '@nadohq/trigger-client';