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

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 +44 -22
  8. package/dist/apis/market/MarketExecuteAPI.cjs.map +1 -1
  9. package/dist/apis/market/MarketExecuteAPI.d.cts +14 -11
  10. package/dist/apis/market/MarketExecuteAPI.d.ts +14 -11
  11. package/dist/apis/market/MarketExecuteAPI.js +44 -22
  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 +12 -8
  23. package/dist/apis/market/types.d.ts +12 -8
  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 +3 -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 +4 -2
  39. package/dist/apis/spot/BaseSpotAPI.js.map +1 -1
  40. package/dist/apis/spot/SpotExecuteAPI.cjs +7 -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 +4 -3
  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 +3 -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 +4 -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 +4 -4
  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 +4 -6
  97. package/dist/index.cjs.map +1 -1
  98. package/dist/index.d.cts +4 -5
  99. package/dist/index.d.ts +4 -5
  100. package/dist/index.js +2 -3
  101. package/dist/index.js.map +1 -1
  102. package/package.json +6 -7
  103. package/src/apis/base.ts +1 -6
  104. package/src/apis/market/MarketExecuteAPI.ts +50 -32
  105. package/src/apis/market/MarketQueryAPI.ts +4 -11
  106. package/src/apis/market/types.ts +15 -11
  107. package/src/apis/perp/PerpExecuteAPI.ts +1 -6
  108. package/src/apis/spot/BaseSpotAPI.ts +5 -2
  109. package/src/apis/spot/SpotExecuteAPI.ts +4 -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 +4 -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 +6 -6
  118. package/src/index.ts +2 -3
@@ -23,14 +23,14 @@ __export(base_exports, {
23
23
  BaseNadoAPI: () => BaseNadoAPI
24
24
  });
25
25
  module.exports = __toCommonJS(base_exports);
26
- var import_utils = require("@nadohq/utils");
26
+ var import_shared = require("@nadohq/shared");
27
27
  var BaseNadoAPI = class {
28
28
  constructor(context) {
29
29
  this.context = context;
30
30
  }
31
31
  getWalletClientAddress() {
32
32
  if (!this.context.walletClient) {
33
- throw new import_utils.WalletNotProvidedError();
33
+ throw new import_shared.WalletNotProvidedError();
34
34
  }
35
35
  return this.context.walletClient.account.address;
36
36
  }
@@ -39,16 +39,13 @@ var BaseNadoAPI = class {
39
39
  return params.chainId;
40
40
  }
41
41
  if (!this.context.walletClient) {
42
- throw new import_utils.WalletNotProvidedError();
42
+ throw new import_shared.WalletNotProvidedError();
43
43
  }
44
44
  return this.context.walletClient.chain.id;
45
45
  }
46
46
  getEndpointAddress() {
47
47
  return this.context.contractAddresses.endpoint;
48
48
  }
49
- async getOrderbookAddress(productId) {
50
- return this.context.engineClient.getOrderbookAddress(productId);
51
- }
52
49
  getSubaccountOwnerIfNeeded(params) {
53
50
  return params.subaccountOwner ?? this.getWalletClientAddress();
54
51
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/apis/base.ts"],"sourcesContent":["import { WithContracts } from '@nadohq/contracts';\nimport { WalletNotProvidedError } from '@nadohq/utils';\n\nimport { NadoClientContext } from '../context';\n\nexport class BaseNadoAPI {\n readonly context: NadoClientContext;\n\n constructor(context: NadoClientContext) {\n this.context = context;\n }\n\n protected getWalletClientAddress() {\n if (!this.context.walletClient) {\n throw new WalletNotProvidedError();\n }\n return this.context.walletClient.account.address;\n }\n\n protected getWalletClientChainIdIfNeeded(params: {\n chainId?: number;\n }): number {\n if (params.chainId) {\n return params.chainId;\n }\n if (!this.context.walletClient) {\n throw new WalletNotProvidedError();\n }\n return this.context.walletClient.chain.id;\n }\n\n protected getEndpointAddress() {\n return this.context.contractAddresses.endpoint;\n }\n\n protected async getOrderbookAddress(productId: number) {\n return this.context.engineClient.getOrderbookAddress(productId);\n }\n\n protected getSubaccountOwnerIfNeeded(params: {\n subaccountOwner?: string;\n }): string {\n return params.subaccountOwner ?? this.getWalletClientAddress();\n }\n\n protected paramsWithContracts<T>(params: T): WithContracts<T> {\n return {\n ...params,\n ...this.context.contracts,\n };\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,mBAAuC;AAIhC,IAAM,cAAN,MAAkB;AAAA,EAGvB,YAAY,SAA4B;AACtC,SAAK,UAAU;AAAA,EACjB;AAAA,EAEU,yBAAyB;AACjC,QAAI,CAAC,KAAK,QAAQ,cAAc;AAC9B,YAAM,IAAI,oCAAuB;AAAA,IACnC;AACA,WAAO,KAAK,QAAQ,aAAa,QAAQ;AAAA,EAC3C;AAAA,EAEU,+BAA+B,QAE9B;AACT,QAAI,OAAO,SAAS;AAClB,aAAO,OAAO;AAAA,IAChB;AACA,QAAI,CAAC,KAAK,QAAQ,cAAc;AAC9B,YAAM,IAAI,oCAAuB;AAAA,IACnC;AACA,WAAO,KAAK,QAAQ,aAAa,MAAM;AAAA,EACzC;AAAA,EAEU,qBAAqB;AAC7B,WAAO,KAAK,QAAQ,kBAAkB;AAAA,EACxC;AAAA,EAEA,MAAgB,oBAAoB,WAAmB;AACrD,WAAO,KAAK,QAAQ,aAAa,oBAAoB,SAAS;AAAA,EAChE;AAAA,EAEU,2BAA2B,QAE1B;AACT,WAAO,OAAO,mBAAmB,KAAK,uBAAuB;AAAA,EAC/D;AAAA,EAEU,oBAAuB,QAA6B;AAC5D,WAAO;AAAA,MACL,GAAG;AAAA,MACH,GAAG,KAAK,QAAQ;AAAA,IAClB;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../src/apis/base.ts"],"sourcesContent":["import { WalletNotProvidedError, WithContracts } from '@nadohq/shared';\n\nimport { NadoClientContext } from '../context';\n\nexport class BaseNadoAPI {\n readonly context: NadoClientContext;\n\n constructor(context: NadoClientContext) {\n this.context = context;\n }\n\n protected getWalletClientAddress() {\n if (!this.context.walletClient) {\n throw new WalletNotProvidedError();\n }\n return this.context.walletClient.account.address;\n }\n\n protected getWalletClientChainIdIfNeeded(params: {\n chainId?: number;\n }): number {\n if (params.chainId) {\n return params.chainId;\n }\n if (!this.context.walletClient) {\n throw new WalletNotProvidedError();\n }\n return this.context.walletClient.chain.id;\n }\n\n protected getEndpointAddress() {\n return this.context.contractAddresses.endpoint;\n }\n\n protected getSubaccountOwnerIfNeeded(params: {\n subaccountOwner?: string;\n }): string {\n return params.subaccountOwner ?? this.getWalletClientAddress();\n }\n\n protected paramsWithContracts<T>(params: T): WithContracts<T> {\n return {\n ...params,\n ...this.context.contracts,\n };\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAsD;AAI/C,IAAM,cAAN,MAAkB;AAAA,EAGvB,YAAY,SAA4B;AACtC,SAAK,UAAU;AAAA,EACjB;AAAA,EAEU,yBAAyB;AACjC,QAAI,CAAC,KAAK,QAAQ,cAAc;AAC9B,YAAM,IAAI,qCAAuB;AAAA,IACnC;AACA,WAAO,KAAK,QAAQ,aAAa,QAAQ;AAAA,EAC3C;AAAA,EAEU,+BAA+B,QAE9B;AACT,QAAI,OAAO,SAAS;AAClB,aAAO,OAAO;AAAA,IAChB;AACA,QAAI,CAAC,KAAK,QAAQ,cAAc;AAC9B,YAAM,IAAI,qCAAuB;AAAA,IACnC;AACA,WAAO,KAAK,QAAQ,aAAa,MAAM;AAAA,EACzC;AAAA,EAEU,qBAAqB;AAC7B,WAAO,KAAK,QAAQ,kBAAkB;AAAA,EACxC;AAAA,EAEU,2BAA2B,QAE1B;AACT,WAAO,OAAO,mBAAmB,KAAK,uBAAuB;AAAA,EAC/D;AAAA,EAEU,oBAAuB,QAA6B;AAC5D,WAAO;AAAA,MACL,GAAG;AAAA,MACH,GAAG,KAAK,QAAQ;AAAA,IAClB;AAAA,EACF;AACF;","names":[]}
@@ -1,4 +1,4 @@
1
- import { WithContracts } from '@nadohq/contracts';
1
+ import { WithContracts } from '@nadohq/shared';
2
2
  import { NadoClientContext } from '../context.cjs';
3
3
  import '@nadohq/engine-client';
4
4
  import '@nadohq/indexer-client';
@@ -13,7 +13,6 @@ declare class BaseNadoAPI {
13
13
  chainId?: number;
14
14
  }): number;
15
15
  protected getEndpointAddress(): `0x${string}`;
16
- protected getOrderbookAddress(productId: number): Promise<string>;
17
16
  protected getSubaccountOwnerIfNeeded(params: {
18
17
  subaccountOwner?: string;
19
18
  }): string;
@@ -1,4 +1,4 @@
1
- import { WithContracts } from '@nadohq/contracts';
1
+ import { WithContracts } from '@nadohq/shared';
2
2
  import { NadoClientContext } from '../context.js';
3
3
  import '@nadohq/engine-client';
4
4
  import '@nadohq/indexer-client';
@@ -13,7 +13,6 @@ declare class BaseNadoAPI {
13
13
  chainId?: number;
14
14
  }): number;
15
15
  protected getEndpointAddress(): `0x${string}`;
16
- protected getOrderbookAddress(productId: number): Promise<string>;
17
16
  protected getSubaccountOwnerIfNeeded(params: {
18
17
  subaccountOwner?: string;
19
18
  }): string;
package/dist/apis/base.js CHANGED
@@ -1,5 +1,5 @@
1
1
  // src/apis/base.ts
2
- import { WalletNotProvidedError } from "@nadohq/utils";
2
+ import { WalletNotProvidedError } from "@nadohq/shared";
3
3
  var BaseNadoAPI = class {
4
4
  constructor(context) {
5
5
  this.context = context;
@@ -22,9 +22,6 @@ var BaseNadoAPI = class {
22
22
  getEndpointAddress() {
23
23
  return this.context.contractAddresses.endpoint;
24
24
  }
25
- async getOrderbookAddress(productId) {
26
- return this.context.engineClient.getOrderbookAddress(productId);
27
- }
28
25
  getSubaccountOwnerIfNeeded(params) {
29
26
  return params.subaccountOwner ?? this.getWalletClientAddress();
30
27
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/apis/base.ts"],"sourcesContent":["import { WithContracts } from '@nadohq/contracts';\nimport { WalletNotProvidedError } from '@nadohq/utils';\n\nimport { NadoClientContext } from '../context';\n\nexport class BaseNadoAPI {\n readonly context: NadoClientContext;\n\n constructor(context: NadoClientContext) {\n this.context = context;\n }\n\n protected getWalletClientAddress() {\n if (!this.context.walletClient) {\n throw new WalletNotProvidedError();\n }\n return this.context.walletClient.account.address;\n }\n\n protected getWalletClientChainIdIfNeeded(params: {\n chainId?: number;\n }): number {\n if (params.chainId) {\n return params.chainId;\n }\n if (!this.context.walletClient) {\n throw new WalletNotProvidedError();\n }\n return this.context.walletClient.chain.id;\n }\n\n protected getEndpointAddress() {\n return this.context.contractAddresses.endpoint;\n }\n\n protected async getOrderbookAddress(productId: number) {\n return this.context.engineClient.getOrderbookAddress(productId);\n }\n\n protected getSubaccountOwnerIfNeeded(params: {\n subaccountOwner?: string;\n }): string {\n return params.subaccountOwner ?? this.getWalletClientAddress();\n }\n\n protected paramsWithContracts<T>(params: T): WithContracts<T> {\n return {\n ...params,\n ...this.context.contracts,\n };\n }\n}\n"],"mappings":";AACA,SAAS,8BAA8B;AAIhC,IAAM,cAAN,MAAkB;AAAA,EAGvB,YAAY,SAA4B;AACtC,SAAK,UAAU;AAAA,EACjB;AAAA,EAEU,yBAAyB;AACjC,QAAI,CAAC,KAAK,QAAQ,cAAc;AAC9B,YAAM,IAAI,uBAAuB;AAAA,IACnC;AACA,WAAO,KAAK,QAAQ,aAAa,QAAQ;AAAA,EAC3C;AAAA,EAEU,+BAA+B,QAE9B;AACT,QAAI,OAAO,SAAS;AAClB,aAAO,OAAO;AAAA,IAChB;AACA,QAAI,CAAC,KAAK,QAAQ,cAAc;AAC9B,YAAM,IAAI,uBAAuB;AAAA,IACnC;AACA,WAAO,KAAK,QAAQ,aAAa,MAAM;AAAA,EACzC;AAAA,EAEU,qBAAqB;AAC7B,WAAO,KAAK,QAAQ,kBAAkB;AAAA,EACxC;AAAA,EAEA,MAAgB,oBAAoB,WAAmB;AACrD,WAAO,KAAK,QAAQ,aAAa,oBAAoB,SAAS;AAAA,EAChE;AAAA,EAEU,2BAA2B,QAE1B;AACT,WAAO,OAAO,mBAAmB,KAAK,uBAAuB;AAAA,EAC/D;AAAA,EAEU,oBAAuB,QAA6B;AAC5D,WAAO;AAAA,MACL,GAAG;AAAA,MACH,GAAG,KAAK,QAAQ;AAAA,IAClB;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../src/apis/base.ts"],"sourcesContent":["import { WalletNotProvidedError, WithContracts } from '@nadohq/shared';\n\nimport { NadoClientContext } from '../context';\n\nexport class BaseNadoAPI {\n readonly context: NadoClientContext;\n\n constructor(context: NadoClientContext) {\n this.context = context;\n }\n\n protected getWalletClientAddress() {\n if (!this.context.walletClient) {\n throw new WalletNotProvidedError();\n }\n return this.context.walletClient.account.address;\n }\n\n protected getWalletClientChainIdIfNeeded(params: {\n chainId?: number;\n }): number {\n if (params.chainId) {\n return params.chainId;\n }\n if (!this.context.walletClient) {\n throw new WalletNotProvidedError();\n }\n return this.context.walletClient.chain.id;\n }\n\n protected getEndpointAddress() {\n return this.context.contractAddresses.endpoint;\n }\n\n protected getSubaccountOwnerIfNeeded(params: {\n subaccountOwner?: string;\n }): string {\n return params.subaccountOwner ?? this.getWalletClientAddress();\n }\n\n protected paramsWithContracts<T>(params: T): WithContracts<T> {\n return {\n ...params,\n ...this.context.contracts,\n };\n }\n}\n"],"mappings":";AAAA,SAAS,8BAA6C;AAI/C,IAAM,cAAN,MAAkB;AAAA,EAGvB,YAAY,SAA4B;AACtC,SAAK,UAAU;AAAA,EACjB;AAAA,EAEU,yBAAyB;AACjC,QAAI,CAAC,KAAK,QAAQ,cAAc;AAC9B,YAAM,IAAI,uBAAuB;AAAA,IACnC;AACA,WAAO,KAAK,QAAQ,aAAa,QAAQ;AAAA,EAC3C;AAAA,EAEU,+BAA+B,QAE9B;AACT,QAAI,OAAO,SAAS;AAClB,aAAO,OAAO;AAAA,IAChB;AACA,QAAI,CAAC,KAAK,QAAQ,cAAc;AAC9B,YAAM,IAAI,uBAAuB;AAAA,IACnC;AACA,WAAO,KAAK,QAAQ,aAAa,MAAM;AAAA,EACzC;AAAA,EAEU,qBAAqB;AAC7B,WAAO,KAAK,QAAQ,kBAAkB;AAAA,EACxC;AAAA,EAEU,2BAA2B,QAE1B;AACT,WAAO,OAAO,mBAAmB,KAAK,uBAAuB;AAAA,EAC/D;AAAA,EAEU,oBAAuB,QAA6B;AAC5D,WAAO;AAAA,MACL,GAAG;AAAA,MACH,GAAG,KAAK,QAAQ;AAAA,IAClB;AAAA,EACF;AACF;","names":[]}
@@ -23,6 +23,7 @@ __export(MarketExecuteAPI_exports, {
23
23
  MarketExecuteAPI: () => MarketExecuteAPI
24
24
  });
25
25
  module.exports = __toCommonJS(MarketExecuteAPI_exports);
26
+ var import_shared = require("@nadohq/shared");
26
27
  var import_base = require("../base.cjs");
27
28
  var MarketExecuteAPI = class extends import_base.BaseNadoAPI {
28
29
  /**
@@ -38,29 +39,34 @@ var MarketExecuteAPI = class extends import_base.BaseNadoAPI {
38
39
  subaccountOwner: this.getSubaccountOwnerIfNeeded(params.order)
39
40
  },
40
41
  chainId: this.getWalletClientChainIdIfNeeded(params),
41
- verifyingAddr: await this.getOrderbookVerifyingAddressIfNeeded(params),
42
+ verifyingAddr: (0, import_shared.getOrderVerifyingAddress)(params.productId),
42
43
  productId,
43
44
  spotLeverage: params.spotLeverage,
44
45
  nonce
45
46
  });
46
47
  }
47
48
  /**
48
- * Places an isolated order through the engine
49
+ * Places multiple orders through the engine
49
50
  * @param params
50
51
  */
51
- async placeIsolatedOrder(params) {
52
- const { id: orderId, productId, order, nonce, borrowMargin } = params;
53
- return this.context.engineClient.placeIsolatedOrder({
54
- id: orderId,
55
- order: {
56
- ...order,
57
- subaccountOwner: this.getSubaccountOwnerIfNeeded(params.order)
58
- },
59
- chainId: this.getWalletClientChainIdIfNeeded(params),
60
- verifyingAddr: await this.getOrderbookVerifyingAddressIfNeeded(params),
61
- productId,
62
- borrowMargin,
63
- nonce
52
+ async placeOrders(params) {
53
+ return this.context.engineClient.placeOrders({
54
+ orders: params.orders.map((orderParams) => {
55
+ const { id, productId, order, nonce, spotLeverage } = orderParams;
56
+ return {
57
+ id,
58
+ order: {
59
+ ...order,
60
+ subaccountOwner: this.getSubaccountOwnerIfNeeded(order)
61
+ },
62
+ chainId: this.getWalletClientChainIdIfNeeded(orderParams),
63
+ verifyingAddr: (0, import_shared.getOrderVerifyingAddress)(productId),
64
+ productId,
65
+ spotLeverage,
66
+ nonce
67
+ };
68
+ }),
69
+ cancelOnFailure: params.cancelOnFailure
64
70
  });
65
71
  }
66
72
  /**
@@ -97,9 +103,7 @@ var MarketExecuteAPI = class extends import_base.BaseNadoAPI {
97
103
  ...order,
98
104
  subaccountOwner
99
105
  },
100
- verifyingAddr: await this.getOrderbookVerifyingAddressIfNeeded(
101
- params.placeOrder
102
- ),
106
+ verifyingAddr: (0, import_shared.getOrderVerifyingAddress)(productId),
103
107
  chainId,
104
108
  productId,
105
109
  spotLeverage,
@@ -127,13 +131,34 @@ var MarketExecuteAPI = class extends import_base.BaseNadoAPI {
127
131
  return this.context.triggerClient.placeTriggerOrder({
128
132
  ...params,
129
133
  chainId: this.getWalletClientChainIdIfNeeded(params),
130
- verifyingAddr: await this.getOrderbookVerifyingAddressIfNeeded(params),
134
+ verifyingAddr: (0, import_shared.getOrderVerifyingAddress)(params.productId),
131
135
  order: {
132
136
  subaccountOwner: this.getSubaccountOwnerIfNeeded(params.order),
133
137
  ...params.order
134
138
  }
135
139
  });
136
140
  }
141
+ /**
142
+ * Places multiple trigger orders through the trigger service
143
+ * @param params
144
+ */
145
+ async placeTriggerOrders(params) {
146
+ return this.context.triggerClient.placeTriggerOrders({
147
+ orders: params.orders.map((orderParams) => {
148
+ const { productId, order } = orderParams;
149
+ return {
150
+ ...orderParams,
151
+ chainId: this.getWalletClientChainIdIfNeeded(orderParams),
152
+ verifyingAddr: (0, import_shared.getOrderVerifyingAddress)(productId),
153
+ order: {
154
+ subaccountOwner: this.getSubaccountOwnerIfNeeded(order),
155
+ ...order
156
+ }
157
+ };
158
+ }),
159
+ cancelOnFailure: params.cancelOnFailure
160
+ });
161
+ }
137
162
  /**
138
163
  * Cancels all trigger orders for provided digests through the trigger service.
139
164
  * @param params
@@ -158,9 +183,6 @@ var MarketExecuteAPI = class extends import_base.BaseNadoAPI {
158
183
  verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress()
159
184
  });
160
185
  }
161
- async getOrderbookVerifyingAddressIfNeeded(params) {
162
- return params.verifyingAddr ?? await this.getOrderbookAddress(params.productId);
163
- }
164
186
  };
165
187
  // Annotate the CommonJS export names for ESM import in node:
166
188
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/apis/market/MarketExecuteAPI.ts"],"sourcesContent":["import { BaseNadoAPI } from '../base';\nimport { OptionalSignatureParams } from '../types';\nimport {\n CancelAndPlaceOrderParams,\n CancelOrdersParams,\n CancelProductOrdersParams,\n CancelTriggerOrdersParams,\n CancelTriggerProductOrdersParams,\n PlaceIsolatedOrderParams,\n PlaceOrderParams,\n PlaceTriggerOrderParams,\n} from './types';\n\nexport class MarketExecuteAPI extends BaseNadoAPI {\n /**\n * Places an order through the engine\n * @param params\n */\n async placeOrder(params: PlaceOrderParams) {\n const { id: orderId, productId, order, nonce } = params;\n\n return this.context.engineClient.placeOrder({\n id: orderId,\n order: {\n ...order,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params.order),\n },\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: await this.getOrderbookVerifyingAddressIfNeeded(params),\n productId,\n spotLeverage: params.spotLeverage,\n nonce,\n });\n }\n\n /**\n * Places an isolated order through the engine\n * @param params\n */\n async placeIsolatedOrder(params: PlaceIsolatedOrderParams) {\n const { id: orderId, productId, order, nonce, borrowMargin } = params;\n\n return this.context.engineClient.placeIsolatedOrder({\n id: orderId,\n order: {\n ...order,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params.order),\n },\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: await this.getOrderbookVerifyingAddressIfNeeded(params),\n productId,\n borrowMargin,\n nonce,\n });\n }\n\n /**\n * Cancels orders through the engine\n * @param params\n */\n async cancelOrders(params: CancelOrdersParams) {\n return this.context.engineClient.cancelOrders({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: this.getEndpointAddress(),\n });\n }\n\n /**\n * Cancels orders through the engine and places a new one\n * @param params\n */\n async cancelAndPlace(params: CancelAndPlaceOrderParams) {\n const { productId, order, nonce, spotLeverage } = params.placeOrder;\n const subaccountOwner = this.getSubaccountOwnerIfNeeded(\n params.cancelOrders,\n );\n const chainId = this.getWalletClientChainIdIfNeeded(params.cancelOrders);\n\n return this.context.engineClient.cancelAndPlace({\n cancelOrders: {\n ...params.cancelOrders,\n subaccountOwner,\n verifyingAddr:\n params.cancelOrders.verifyingAddr ?? this.getEndpointAddress(),\n chainId,\n },\n placeOrder: {\n order: {\n ...order,\n subaccountOwner,\n },\n verifyingAddr: await this.getOrderbookVerifyingAddressIfNeeded(\n params.placeOrder,\n ),\n chainId,\n productId,\n spotLeverage,\n nonce,\n },\n });\n }\n\n /**\n * Cancels all orders for provided products through the engine.\n * @param params\n */\n async cancelProductOrders(params: CancelProductOrdersParams) {\n return this.context.engineClient.cancelProductOrders({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: this.getEndpointAddress(),\n });\n }\n\n /**\n * Places a trigger order through the trigger service\n * @param params\n */\n async placeTriggerOrder(params: PlaceTriggerOrderParams) {\n return this.context.triggerClient.placeTriggerOrder({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: await this.getOrderbookVerifyingAddressIfNeeded(params),\n order: {\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params.order),\n ...params.order,\n },\n });\n }\n\n /**\n * Cancels all trigger orders for provided digests through the trigger service.\n * @param params\n */\n async cancelTriggerOrders(params: CancelTriggerOrdersParams) {\n return this.context.triggerClient.cancelTriggerOrders({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n /**\n * Cancels all trigger orders for provided products through the trigger service.\n * @param params\n */\n async cancelTriggerProductOrders(params: CancelTriggerProductOrdersParams) {\n return this.context.triggerClient.cancelProductOrders({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n protected async getOrderbookVerifyingAddressIfNeeded(\n params: OptionalSignatureParams<{\n productId: number;\n }>,\n ): Promise<string> {\n return (\n params.verifyingAddr ?? (await this.getOrderbookAddress(params.productId))\n );\n }\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../src/apis/market/MarketExecuteAPI.ts"],"sourcesContent":["import { EngineServerExecuteSuccessResult } from '@nadohq/engine-client';\nimport { getOrderVerifyingAddress } from '@nadohq/shared';\nimport { BaseNadoAPI } from '../base';\nimport {\n CancelAndPlaceOrderParams,\n CancelOrdersParams,\n CancelProductOrdersParams,\n CancelTriggerOrdersParams,\n CancelTriggerProductOrdersParams,\n PlaceOrderParams,\n PlaceOrdersParams,\n PlaceTriggerOrderParams,\n PlaceTriggerOrdersParams,\n} from './types';\n\nexport class MarketExecuteAPI extends BaseNadoAPI {\n /**\n * Places an order through the engine\n * @param params\n */\n async placeOrder(params: PlaceOrderParams) {\n const { id: orderId, productId, order, nonce } = params;\n\n return this.context.engineClient.placeOrder({\n id: orderId,\n order: {\n ...order,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params.order),\n },\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: getOrderVerifyingAddress(params.productId),\n productId,\n spotLeverage: params.spotLeverage,\n nonce,\n });\n }\n\n /**\n * Places multiple orders through the engine\n * @param params\n */\n async placeOrders(\n params: PlaceOrdersParams,\n ): Promise<EngineServerExecuteSuccessResult<'place_orders'>> {\n return this.context.engineClient.placeOrders({\n orders: params.orders.map((orderParams) => {\n const { id, productId, order, nonce, spotLeverage } = orderParams;\n return {\n id,\n order: {\n ...order,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(order),\n },\n chainId: this.getWalletClientChainIdIfNeeded(orderParams),\n verifyingAddr: getOrderVerifyingAddress(productId),\n productId,\n spotLeverage,\n nonce,\n };\n }),\n cancelOnFailure: params.cancelOnFailure,\n });\n }\n\n /**\n * Cancels orders through the engine\n * @param params\n */\n async cancelOrders(params: CancelOrdersParams) {\n return this.context.engineClient.cancelOrders({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: this.getEndpointAddress(),\n });\n }\n\n /**\n * Cancels orders through the engine and places a new one\n * @param params\n */\n async cancelAndPlace(params: CancelAndPlaceOrderParams) {\n const { productId, order, nonce, spotLeverage } = params.placeOrder;\n const subaccountOwner = this.getSubaccountOwnerIfNeeded(\n params.cancelOrders,\n );\n const chainId = this.getWalletClientChainIdIfNeeded(params.cancelOrders);\n\n return this.context.engineClient.cancelAndPlace({\n cancelOrders: {\n ...params.cancelOrders,\n subaccountOwner,\n verifyingAddr:\n params.cancelOrders.verifyingAddr ?? this.getEndpointAddress(),\n chainId,\n },\n placeOrder: {\n order: {\n ...order,\n subaccountOwner,\n },\n verifyingAddr: getOrderVerifyingAddress(productId),\n chainId,\n productId,\n spotLeverage,\n nonce,\n },\n });\n }\n\n /**\n * Cancels all orders for provided products through the engine.\n * @param params\n */\n async cancelProductOrders(params: CancelProductOrdersParams) {\n return this.context.engineClient.cancelProductOrders({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: this.getEndpointAddress(),\n });\n }\n\n /**\n * Places a trigger order through the trigger service\n * @param params\n */\n async placeTriggerOrder(params: PlaceTriggerOrderParams) {\n return this.context.triggerClient.placeTriggerOrder({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: getOrderVerifyingAddress(params.productId),\n order: {\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params.order),\n ...params.order,\n },\n });\n }\n\n /**\n * Places multiple trigger orders through the trigger service\n * @param params\n */\n async placeTriggerOrders(params: PlaceTriggerOrdersParams) {\n return this.context.triggerClient.placeTriggerOrders({\n orders: params.orders.map((orderParams) => {\n const { productId, order } = orderParams;\n return {\n ...orderParams,\n chainId: this.getWalletClientChainIdIfNeeded(orderParams),\n verifyingAddr: getOrderVerifyingAddress(productId),\n order: {\n subaccountOwner: this.getSubaccountOwnerIfNeeded(order),\n ...order,\n },\n };\n }),\n cancelOnFailure: params.cancelOnFailure,\n });\n }\n\n /**\n * Cancels all trigger orders for provided digests through the trigger service.\n * @param params\n */\n async cancelTriggerOrders(params: CancelTriggerOrdersParams) {\n return this.context.triggerClient.cancelTriggerOrders({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n /**\n * Cancels all trigger orders for provided products through the trigger service.\n * @param params\n */\n async cancelTriggerProductOrders(params: CancelTriggerProductOrdersParams) {\n return this.context.triggerClient.cancelProductOrders({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n}\n"],"mappings":"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","names":[]}
@@ -1,12 +1,13 @@
1
1
  import * as _nadohq_trigger_client from '@nadohq/trigger-client';
2
2
  import * as _nadohq_engine_client from '@nadohq/engine-client';
3
+ import { EngineServerExecuteSuccessResult } from '@nadohq/engine-client';
3
4
  import { BaseNadoAPI } from '../base.cjs';
4
- import { OptionalSignatureParams } from '../types.cjs';
5
- import { PlaceOrderParams, PlaceIsolatedOrderParams, CancelOrdersParams, CancelAndPlaceOrderParams, CancelProductOrdersParams, PlaceTriggerOrderParams, CancelTriggerOrdersParams, CancelTriggerProductOrdersParams } from './types.cjs';
6
- import '@nadohq/contracts';
5
+ import { PlaceOrderParams, PlaceOrdersParams, CancelOrdersParams, CancelAndPlaceOrderParams, CancelProductOrdersParams, PlaceTriggerOrderParams, PlaceTriggerOrdersParams, CancelTriggerOrdersParams, CancelTriggerProductOrdersParams } from './types.cjs';
6
+ import '@nadohq/shared';
7
7
  import '../../context.cjs';
8
8
  import '@nadohq/indexer-client';
9
9
  import 'viem';
10
+ import '../types.cjs';
10
11
 
11
12
  declare class MarketExecuteAPI extends BaseNadoAPI {
12
13
  /**
@@ -15,30 +16,35 @@ declare class MarketExecuteAPI extends BaseNadoAPI {
15
16
  */
16
17
  placeOrder(params: PlaceOrderParams): Promise<_nadohq_engine_client.EnginePlaceOrderResult>;
17
18
  /**
18
- * Places an isolated order through the engine
19
+ * Places multiple orders through the engine
19
20
  * @param params
20
21
  */
21
- placeIsolatedOrder(params: PlaceIsolatedOrderParams): Promise<_nadohq_engine_client.EnginePlaceIsolatedOrderResult>;
22
+ placeOrders(params: PlaceOrdersParams): Promise<EngineServerExecuteSuccessResult<'place_orders'>>;
22
23
  /**
23
24
  * Cancels orders through the engine
24
25
  * @param params
25
26
  */
26
- cancelOrders(params: CancelOrdersParams): Promise<_nadohq_engine_client.EngineServerExecuteSuccessResult<"cancel_orders">>;
27
+ cancelOrders(params: CancelOrdersParams): Promise<EngineServerExecuteSuccessResult<"cancel_orders">>;
27
28
  /**
28
29
  * Cancels orders through the engine and places a new one
29
30
  * @param params
30
31
  */
31
- cancelAndPlace(params: CancelAndPlaceOrderParams): Promise<_nadohq_engine_client.EngineServerExecuteSuccessResult<"cancel_and_place">>;
32
+ cancelAndPlace(params: CancelAndPlaceOrderParams): Promise<EngineServerExecuteSuccessResult<"cancel_and_place">>;
32
33
  /**
33
34
  * Cancels all orders for provided products through the engine.
34
35
  * @param params
35
36
  */
36
- cancelProductOrders(params: CancelProductOrdersParams): Promise<_nadohq_engine_client.EngineServerExecuteSuccessResult<"cancel_product_orders">>;
37
+ cancelProductOrders(params: CancelProductOrdersParams): Promise<EngineServerExecuteSuccessResult<"cancel_product_orders">>;
37
38
  /**
38
39
  * Places a trigger order through the trigger service
39
40
  * @param params
40
41
  */
41
42
  placeTriggerOrder(params: PlaceTriggerOrderParams): Promise<_nadohq_trigger_client.TriggerServerExecuteSuccessResult<"place_order">>;
43
+ /**
44
+ * Places multiple trigger orders through the trigger service
45
+ * @param params
46
+ */
47
+ placeTriggerOrders(params: PlaceTriggerOrdersParams): Promise<_nadohq_trigger_client.TriggerServerExecuteSuccessResult<"place_orders">>;
42
48
  /**
43
49
  * Cancels all trigger orders for provided digests through the trigger service.
44
50
  * @param params
@@ -49,9 +55,6 @@ declare class MarketExecuteAPI extends BaseNadoAPI {
49
55
  * @param params
50
56
  */
51
57
  cancelTriggerProductOrders(params: CancelTriggerProductOrdersParams): Promise<_nadohq_trigger_client.TriggerServerExecuteSuccessResult<"cancel_product_orders">>;
52
- protected getOrderbookVerifyingAddressIfNeeded(params: OptionalSignatureParams<{
53
- productId: number;
54
- }>): Promise<string>;
55
58
  }
56
59
 
57
60
  export { MarketExecuteAPI };
@@ -1,12 +1,13 @@
1
1
  import * as _nadohq_trigger_client from '@nadohq/trigger-client';
2
2
  import * as _nadohq_engine_client from '@nadohq/engine-client';
3
+ import { EngineServerExecuteSuccessResult } from '@nadohq/engine-client';
3
4
  import { BaseNadoAPI } from '../base.js';
4
- import { OptionalSignatureParams } from '../types.js';
5
- import { PlaceOrderParams, PlaceIsolatedOrderParams, CancelOrdersParams, CancelAndPlaceOrderParams, CancelProductOrdersParams, PlaceTriggerOrderParams, CancelTriggerOrdersParams, CancelTriggerProductOrdersParams } from './types.js';
6
- import '@nadohq/contracts';
5
+ import { PlaceOrderParams, PlaceOrdersParams, CancelOrdersParams, CancelAndPlaceOrderParams, CancelProductOrdersParams, PlaceTriggerOrderParams, PlaceTriggerOrdersParams, CancelTriggerOrdersParams, CancelTriggerProductOrdersParams } from './types.js';
6
+ import '@nadohq/shared';
7
7
  import '../../context.js';
8
8
  import '@nadohq/indexer-client';
9
9
  import 'viem';
10
+ import '../types.js';
10
11
 
11
12
  declare class MarketExecuteAPI extends BaseNadoAPI {
12
13
  /**
@@ -15,30 +16,35 @@ declare class MarketExecuteAPI extends BaseNadoAPI {
15
16
  */
16
17
  placeOrder(params: PlaceOrderParams): Promise<_nadohq_engine_client.EnginePlaceOrderResult>;
17
18
  /**
18
- * Places an isolated order through the engine
19
+ * Places multiple orders through the engine
19
20
  * @param params
20
21
  */
21
- placeIsolatedOrder(params: PlaceIsolatedOrderParams): Promise<_nadohq_engine_client.EnginePlaceIsolatedOrderResult>;
22
+ placeOrders(params: PlaceOrdersParams): Promise<EngineServerExecuteSuccessResult<'place_orders'>>;
22
23
  /**
23
24
  * Cancels orders through the engine
24
25
  * @param params
25
26
  */
26
- cancelOrders(params: CancelOrdersParams): Promise<_nadohq_engine_client.EngineServerExecuteSuccessResult<"cancel_orders">>;
27
+ cancelOrders(params: CancelOrdersParams): Promise<EngineServerExecuteSuccessResult<"cancel_orders">>;
27
28
  /**
28
29
  * Cancels orders through the engine and places a new one
29
30
  * @param params
30
31
  */
31
- cancelAndPlace(params: CancelAndPlaceOrderParams): Promise<_nadohq_engine_client.EngineServerExecuteSuccessResult<"cancel_and_place">>;
32
+ cancelAndPlace(params: CancelAndPlaceOrderParams): Promise<EngineServerExecuteSuccessResult<"cancel_and_place">>;
32
33
  /**
33
34
  * Cancels all orders for provided products through the engine.
34
35
  * @param params
35
36
  */
36
- cancelProductOrders(params: CancelProductOrdersParams): Promise<_nadohq_engine_client.EngineServerExecuteSuccessResult<"cancel_product_orders">>;
37
+ cancelProductOrders(params: CancelProductOrdersParams): Promise<EngineServerExecuteSuccessResult<"cancel_product_orders">>;
37
38
  /**
38
39
  * Places a trigger order through the trigger service
39
40
  * @param params
40
41
  */
41
42
  placeTriggerOrder(params: PlaceTriggerOrderParams): Promise<_nadohq_trigger_client.TriggerServerExecuteSuccessResult<"place_order">>;
43
+ /**
44
+ * Places multiple trigger orders through the trigger service
45
+ * @param params
46
+ */
47
+ placeTriggerOrders(params: PlaceTriggerOrdersParams): Promise<_nadohq_trigger_client.TriggerServerExecuteSuccessResult<"place_orders">>;
42
48
  /**
43
49
  * Cancels all trigger orders for provided digests through the trigger service.
44
50
  * @param params
@@ -49,9 +55,6 @@ declare class MarketExecuteAPI extends BaseNadoAPI {
49
55
  * @param params
50
56
  */
51
57
  cancelTriggerProductOrders(params: CancelTriggerProductOrdersParams): Promise<_nadohq_trigger_client.TriggerServerExecuteSuccessResult<"cancel_product_orders">>;
52
- protected getOrderbookVerifyingAddressIfNeeded(params: OptionalSignatureParams<{
53
- productId: number;
54
- }>): Promise<string>;
55
58
  }
56
59
 
57
60
  export { MarketExecuteAPI };
@@ -1,4 +1,5 @@
1
1
  // src/apis/market/MarketExecuteAPI.ts
2
+ import { getOrderVerifyingAddress } from "@nadohq/shared";
2
3
  import { BaseNadoAPI } from "../base.js";
3
4
  var MarketExecuteAPI = class extends BaseNadoAPI {
4
5
  /**
@@ -14,29 +15,34 @@ var MarketExecuteAPI = class extends BaseNadoAPI {
14
15
  subaccountOwner: this.getSubaccountOwnerIfNeeded(params.order)
15
16
  },
16
17
  chainId: this.getWalletClientChainIdIfNeeded(params),
17
- verifyingAddr: await this.getOrderbookVerifyingAddressIfNeeded(params),
18
+ verifyingAddr: getOrderVerifyingAddress(params.productId),
18
19
  productId,
19
20
  spotLeverage: params.spotLeverage,
20
21
  nonce
21
22
  });
22
23
  }
23
24
  /**
24
- * Places an isolated order through the engine
25
+ * Places multiple orders through the engine
25
26
  * @param params
26
27
  */
27
- async placeIsolatedOrder(params) {
28
- const { id: orderId, productId, order, nonce, borrowMargin } = params;
29
- return this.context.engineClient.placeIsolatedOrder({
30
- id: orderId,
31
- order: {
32
- ...order,
33
- subaccountOwner: this.getSubaccountOwnerIfNeeded(params.order)
34
- },
35
- chainId: this.getWalletClientChainIdIfNeeded(params),
36
- verifyingAddr: await this.getOrderbookVerifyingAddressIfNeeded(params),
37
- productId,
38
- borrowMargin,
39
- nonce
28
+ async placeOrders(params) {
29
+ return this.context.engineClient.placeOrders({
30
+ orders: params.orders.map((orderParams) => {
31
+ const { id, productId, order, nonce, spotLeverage } = orderParams;
32
+ return {
33
+ id,
34
+ order: {
35
+ ...order,
36
+ subaccountOwner: this.getSubaccountOwnerIfNeeded(order)
37
+ },
38
+ chainId: this.getWalletClientChainIdIfNeeded(orderParams),
39
+ verifyingAddr: getOrderVerifyingAddress(productId),
40
+ productId,
41
+ spotLeverage,
42
+ nonce
43
+ };
44
+ }),
45
+ cancelOnFailure: params.cancelOnFailure
40
46
  });
41
47
  }
42
48
  /**
@@ -73,9 +79,7 @@ var MarketExecuteAPI = class extends BaseNadoAPI {
73
79
  ...order,
74
80
  subaccountOwner
75
81
  },
76
- verifyingAddr: await this.getOrderbookVerifyingAddressIfNeeded(
77
- params.placeOrder
78
- ),
82
+ verifyingAddr: getOrderVerifyingAddress(productId),
79
83
  chainId,
80
84
  productId,
81
85
  spotLeverage,
@@ -103,13 +107,34 @@ var MarketExecuteAPI = class extends BaseNadoAPI {
103
107
  return this.context.triggerClient.placeTriggerOrder({
104
108
  ...params,
105
109
  chainId: this.getWalletClientChainIdIfNeeded(params),
106
- verifyingAddr: await this.getOrderbookVerifyingAddressIfNeeded(params),
110
+ verifyingAddr: getOrderVerifyingAddress(params.productId),
107
111
  order: {
108
112
  subaccountOwner: this.getSubaccountOwnerIfNeeded(params.order),
109
113
  ...params.order
110
114
  }
111
115
  });
112
116
  }
117
+ /**
118
+ * Places multiple trigger orders through the trigger service
119
+ * @param params
120
+ */
121
+ async placeTriggerOrders(params) {
122
+ return this.context.triggerClient.placeTriggerOrders({
123
+ orders: params.orders.map((orderParams) => {
124
+ const { productId, order } = orderParams;
125
+ return {
126
+ ...orderParams,
127
+ chainId: this.getWalletClientChainIdIfNeeded(orderParams),
128
+ verifyingAddr: getOrderVerifyingAddress(productId),
129
+ order: {
130
+ subaccountOwner: this.getSubaccountOwnerIfNeeded(order),
131
+ ...order
132
+ }
133
+ };
134
+ }),
135
+ cancelOnFailure: params.cancelOnFailure
136
+ });
137
+ }
113
138
  /**
114
139
  * Cancels all trigger orders for provided digests through the trigger service.
115
140
  * @param params
@@ -134,9 +159,6 @@ var MarketExecuteAPI = class extends BaseNadoAPI {
134
159
  verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress()
135
160
  });
136
161
  }
137
- async getOrderbookVerifyingAddressIfNeeded(params) {
138
- return params.verifyingAddr ?? await this.getOrderbookAddress(params.productId);
139
- }
140
162
  };
141
163
  export {
142
164
  MarketExecuteAPI
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/apis/market/MarketExecuteAPI.ts"],"sourcesContent":["import { BaseNadoAPI } from '../base';\nimport { OptionalSignatureParams } from '../types';\nimport {\n CancelAndPlaceOrderParams,\n CancelOrdersParams,\n CancelProductOrdersParams,\n CancelTriggerOrdersParams,\n CancelTriggerProductOrdersParams,\n PlaceIsolatedOrderParams,\n PlaceOrderParams,\n PlaceTriggerOrderParams,\n} from './types';\n\nexport class MarketExecuteAPI extends BaseNadoAPI {\n /**\n * Places an order through the engine\n * @param params\n */\n async placeOrder(params: PlaceOrderParams) {\n const { id: orderId, productId, order, nonce } = params;\n\n return this.context.engineClient.placeOrder({\n id: orderId,\n order: {\n ...order,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params.order),\n },\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: await this.getOrderbookVerifyingAddressIfNeeded(params),\n productId,\n spotLeverage: params.spotLeverage,\n nonce,\n });\n }\n\n /**\n * Places an isolated order through the engine\n * @param params\n */\n async placeIsolatedOrder(params: PlaceIsolatedOrderParams) {\n const { id: orderId, productId, order, nonce, borrowMargin } = params;\n\n return this.context.engineClient.placeIsolatedOrder({\n id: orderId,\n order: {\n ...order,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params.order),\n },\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: await this.getOrderbookVerifyingAddressIfNeeded(params),\n productId,\n borrowMargin,\n nonce,\n });\n }\n\n /**\n * Cancels orders through the engine\n * @param params\n */\n async cancelOrders(params: CancelOrdersParams) {\n return this.context.engineClient.cancelOrders({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: this.getEndpointAddress(),\n });\n }\n\n /**\n * Cancels orders through the engine and places a new one\n * @param params\n */\n async cancelAndPlace(params: CancelAndPlaceOrderParams) {\n const { productId, order, nonce, spotLeverage } = params.placeOrder;\n const subaccountOwner = this.getSubaccountOwnerIfNeeded(\n params.cancelOrders,\n );\n const chainId = this.getWalletClientChainIdIfNeeded(params.cancelOrders);\n\n return this.context.engineClient.cancelAndPlace({\n cancelOrders: {\n ...params.cancelOrders,\n subaccountOwner,\n verifyingAddr:\n params.cancelOrders.verifyingAddr ?? this.getEndpointAddress(),\n chainId,\n },\n placeOrder: {\n order: {\n ...order,\n subaccountOwner,\n },\n verifyingAddr: await this.getOrderbookVerifyingAddressIfNeeded(\n params.placeOrder,\n ),\n chainId,\n productId,\n spotLeverage,\n nonce,\n },\n });\n }\n\n /**\n * Cancels all orders for provided products through the engine.\n * @param params\n */\n async cancelProductOrders(params: CancelProductOrdersParams) {\n return this.context.engineClient.cancelProductOrders({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: this.getEndpointAddress(),\n });\n }\n\n /**\n * Places a trigger order through the trigger service\n * @param params\n */\n async placeTriggerOrder(params: PlaceTriggerOrderParams) {\n return this.context.triggerClient.placeTriggerOrder({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: await this.getOrderbookVerifyingAddressIfNeeded(params),\n order: {\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params.order),\n ...params.order,\n },\n });\n }\n\n /**\n * Cancels all trigger orders for provided digests through the trigger service.\n * @param params\n */\n async cancelTriggerOrders(params: CancelTriggerOrdersParams) {\n return this.context.triggerClient.cancelTriggerOrders({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n /**\n * Cancels all trigger orders for provided products through the trigger service.\n * @param params\n */\n async cancelTriggerProductOrders(params: CancelTriggerProductOrdersParams) {\n return this.context.triggerClient.cancelProductOrders({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n protected async getOrderbookVerifyingAddressIfNeeded(\n params: OptionalSignatureParams<{\n productId: number;\n }>,\n ): Promise<string> {\n return (\n params.verifyingAddr ?? (await this.getOrderbookAddress(params.productId))\n );\n }\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../src/apis/market/MarketExecuteAPI.ts"],"sourcesContent":["import { EngineServerExecuteSuccessResult } from '@nadohq/engine-client';\nimport { getOrderVerifyingAddress } from '@nadohq/shared';\nimport { BaseNadoAPI } from '../base';\nimport {\n CancelAndPlaceOrderParams,\n CancelOrdersParams,\n CancelProductOrdersParams,\n CancelTriggerOrdersParams,\n CancelTriggerProductOrdersParams,\n PlaceOrderParams,\n PlaceOrdersParams,\n PlaceTriggerOrderParams,\n PlaceTriggerOrdersParams,\n} from './types';\n\nexport class MarketExecuteAPI extends BaseNadoAPI {\n /**\n * Places an order through the engine\n * @param params\n */\n async placeOrder(params: PlaceOrderParams) {\n const { id: orderId, productId, order, nonce } = params;\n\n return this.context.engineClient.placeOrder({\n id: orderId,\n order: {\n ...order,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params.order),\n },\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: getOrderVerifyingAddress(params.productId),\n productId,\n spotLeverage: params.spotLeverage,\n nonce,\n });\n }\n\n /**\n * Places multiple orders through the engine\n * @param params\n */\n async placeOrders(\n params: PlaceOrdersParams,\n ): Promise<EngineServerExecuteSuccessResult<'place_orders'>> {\n return this.context.engineClient.placeOrders({\n orders: params.orders.map((orderParams) => {\n const { id, productId, order, nonce, spotLeverage } = orderParams;\n return {\n id,\n order: {\n ...order,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(order),\n },\n chainId: this.getWalletClientChainIdIfNeeded(orderParams),\n verifyingAddr: getOrderVerifyingAddress(productId),\n productId,\n spotLeverage,\n nonce,\n };\n }),\n cancelOnFailure: params.cancelOnFailure,\n });\n }\n\n /**\n * Cancels orders through the engine\n * @param params\n */\n async cancelOrders(params: CancelOrdersParams) {\n return this.context.engineClient.cancelOrders({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: this.getEndpointAddress(),\n });\n }\n\n /**\n * Cancels orders through the engine and places a new one\n * @param params\n */\n async cancelAndPlace(params: CancelAndPlaceOrderParams) {\n const { productId, order, nonce, spotLeverage } = params.placeOrder;\n const subaccountOwner = this.getSubaccountOwnerIfNeeded(\n params.cancelOrders,\n );\n const chainId = this.getWalletClientChainIdIfNeeded(params.cancelOrders);\n\n return this.context.engineClient.cancelAndPlace({\n cancelOrders: {\n ...params.cancelOrders,\n subaccountOwner,\n verifyingAddr:\n params.cancelOrders.verifyingAddr ?? this.getEndpointAddress(),\n chainId,\n },\n placeOrder: {\n order: {\n ...order,\n subaccountOwner,\n },\n verifyingAddr: getOrderVerifyingAddress(productId),\n chainId,\n productId,\n spotLeverage,\n nonce,\n },\n });\n }\n\n /**\n * Cancels all orders for provided products through the engine.\n * @param params\n */\n async cancelProductOrders(params: CancelProductOrdersParams) {\n return this.context.engineClient.cancelProductOrders({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: this.getEndpointAddress(),\n });\n }\n\n /**\n * Places a trigger order through the trigger service\n * @param params\n */\n async placeTriggerOrder(params: PlaceTriggerOrderParams) {\n return this.context.triggerClient.placeTriggerOrder({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: getOrderVerifyingAddress(params.productId),\n order: {\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params.order),\n ...params.order,\n },\n });\n }\n\n /**\n * Places multiple trigger orders through the trigger service\n * @param params\n */\n async placeTriggerOrders(params: PlaceTriggerOrdersParams) {\n return this.context.triggerClient.placeTriggerOrders({\n orders: params.orders.map((orderParams) => {\n const { productId, order } = orderParams;\n return {\n ...orderParams,\n chainId: this.getWalletClientChainIdIfNeeded(orderParams),\n verifyingAddr: getOrderVerifyingAddress(productId),\n order: {\n subaccountOwner: this.getSubaccountOwnerIfNeeded(order),\n ...order,\n },\n };\n }),\n cancelOnFailure: params.cancelOnFailure,\n });\n }\n\n /**\n * Cancels all trigger orders for provided digests through the trigger service.\n * @param params\n */\n async cancelTriggerOrders(params: CancelTriggerOrdersParams) {\n return this.context.triggerClient.cancelTriggerOrders({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n /**\n * Cancels all trigger orders for provided products through the trigger service.\n * @param params\n */\n async cancelTriggerProductOrders(params: CancelTriggerProductOrdersParams) {\n return this.context.triggerClient.cancelProductOrders({\n ...params,\n chainId: this.getWalletClientChainIdIfNeeded(params),\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n}\n"],"mappings":"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","names":[]}
@@ -23,25 +23,18 @@ __export(MarketQueryAPI_exports, {
23
23
  MarketQueryAPI: () => MarketQueryAPI
24
24
  });
25
25
  module.exports = __toCommonJS(MarketQueryAPI_exports);
26
- var import_contracts = require("@nadohq/contracts");
27
26
  var import_base = require("../base.cjs");
28
27
  var MarketQueryAPI = class extends import_base.BaseNadoAPI {
29
- /**
30
- * Retrieves all market states from the on-chain contracts
31
- */
32
- async getAllMarkets() {
33
- return (0, import_contracts.getAllMarkets)(this.context.contracts);
34
- }
35
28
  /**
36
29
  * Retrieves all market states from the offchain engine
37
30
  */
38
- async getAllEngineMarkets() {
31
+ async getAllMarkets() {
39
32
  return this.context.engineClient.getAllMarkets();
40
33
  }
41
34
  /**
42
35
  * Get all edge engine markets
43
36
  */
44
- async getEdgeAllEngineMarkets() {
37
+ async getEdgeAllMarkets() {
45
38
  return this.context.engineClient.getEdgeAllMarkets();
46
39
  }
47
40
  /**