@nadohq/client 0.1.0-alpha.13 → 0.1.0-alpha.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/apis/base.cjs.map +1 -1
- package/dist/apis/base.js.map +1 -1
- package/dist/apis/spot/BaseSpotAPI.cjs +1 -2
- package/dist/apis/spot/BaseSpotAPI.cjs.map +1 -1
- package/dist/apis/spot/BaseSpotAPI.js +4 -2
- package/dist/apis/spot/BaseSpotAPI.js.map +1 -1
- package/dist/apis/spot/SpotExecuteAPI.cjs +2 -3
- package/dist/apis/spot/SpotExecuteAPI.cjs.map +1 -1
- package/dist/apis/spot/SpotExecuteAPI.js +3 -2
- package/dist/apis/spot/SpotExecuteAPI.js.map +1 -1
- package/dist/apis/subaccount/index.cjs +1 -2
- package/dist/apis/subaccount/index.cjs.map +1 -1
- package/dist/apis/subaccount/index.js +4 -2
- package/dist/apis/subaccount/index.js.map +1 -1
- package/dist/apis/subaccount/types.cjs.map +1 -1
- package/dist/apis/subaccount/types.d.cts +1 -1
- package/dist/apis/subaccount/types.d.ts +1 -1
- package/dist/apis/ws/WebSocketExecuteAPI.cjs.map +1 -1
- package/dist/apis/ws/WebSocketExecuteAPI.js.map +1 -1
- package/dist/apis/ws/index.d.cts +1 -1
- package/dist/apis/ws/index.d.ts +1 -1
- package/dist/context.cjs +1 -1
- package/dist/context.cjs.map +1 -1
- package/dist/context.d.cts +1 -1
- package/dist/context.d.ts +1 -1
- package/dist/context.js +4 -4
- package/dist/context.js.map +1 -1
- package/dist/createNadoClient.d.cts +1 -1
- package/dist/createNadoClient.d.ts +1 -1
- package/dist/index.cjs +4 -4
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/package.json +6 -6
- package/src/apis/base.ts +1 -2
- package/src/apis/spot/BaseSpotAPI.ts +5 -3
- package/src/apis/spot/SpotExecuteAPI.ts +2 -1
- package/src/apis/subaccount/index.ts +4 -2
- package/src/apis/subaccount/types.ts +1 -1
- package/src/apis/ws/WebSocketExecuteAPI.ts +1 -1
- package/src/context.ts +5 -5
- package/src/index.ts +2 -2
package/dist/apis/base.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/apis/base.ts"],"sourcesContent":["import { WithContracts } from '@nadohq/shared';\
|
|
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":[]}
|
package/dist/apis/base.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/apis/base.ts"],"sourcesContent":["import { WithContracts } from '@nadohq/shared';\
|
|
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":[]}
|
|
@@ -24,7 +24,6 @@ __export(BaseSpotAPI_exports, {
|
|
|
24
24
|
});
|
|
25
25
|
module.exports = __toCommonJS(BaseSpotAPI_exports);
|
|
26
26
|
var import_shared = require("@nadohq/shared");
|
|
27
|
-
var import_shared2 = require("@nadohq/shared");
|
|
28
27
|
var import_viem = require("viem");
|
|
29
28
|
var import_base = require("../base.cjs");
|
|
30
29
|
var BaseSpotAPI = class extends import_base.BaseNadoAPI {
|
|
@@ -43,7 +42,7 @@ var BaseSpotAPI = class extends import_base.BaseNadoAPI {
|
|
|
43
42
|
}
|
|
44
43
|
return (0, import_viem.getContract)({
|
|
45
44
|
abi: import_shared.ERC20_ABI,
|
|
46
|
-
address: (0,
|
|
45
|
+
address: (0, import_shared.getValidatedAddress)(tokenAddress),
|
|
47
46
|
client: this.context.walletClient ?? this.context.publicClient
|
|
48
47
|
});
|
|
49
48
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/apis/spot/BaseSpotAPI.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../../../src/apis/spot/BaseSpotAPI.ts"],"sourcesContent":["import {\n ContractInstance,\n ERC20_ABI,\n getValidatedAddress,\n} from '@nadohq/shared';\nimport { getContract } from 'viem';\nimport { BaseNadoAPI } from '../base';\nimport { ProductIdOrTokenAddress } from './types';\n\nexport class BaseSpotAPI extends BaseNadoAPI {\n /**\n * Retrieves the ERC20 token contract for a spot product\n */\n async getTokenContractForProduct(\n params: ProductIdOrTokenAddress,\n ): Promise<ContractInstance<typeof ERC20_ABI>> {\n let tokenAddress: string;\n if ('productId' in params) {\n const config = await this.context.contracts.spotEngine.read.getConfig([\n params.productId,\n ]);\n tokenAddress = config.token;\n } else {\n tokenAddress = params.tokenAddress;\n }\n\n return getContract({\n abi: ERC20_ABI,\n address: getValidatedAddress(tokenAddress),\n client: this.context.walletClient ?? this.context.publicClient,\n });\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAIO;AACP,kBAA4B;AAC5B,kBAA4B;AAGrB,IAAM,cAAN,cAA0B,wBAAY;AAAA;AAAA;AAAA;AAAA,EAI3C,MAAM,2BACJ,QAC6C;AAC7C,QAAI;AACJ,QAAI,eAAe,QAAQ;AACzB,YAAM,SAAS,MAAM,KAAK,QAAQ,UAAU,WAAW,KAAK,UAAU;AAAA,QACpE,OAAO;AAAA,MACT,CAAC;AACD,qBAAe,OAAO;AAAA,IACxB,OAAO;AACL,qBAAe,OAAO;AAAA,IACxB;AAEA,eAAO,yBAAY;AAAA,MACjB,KAAK;AAAA,MACL,aAAS,mCAAoB,YAAY;AAAA,MACzC,QAAQ,KAAK,QAAQ,gBAAgB,KAAK,QAAQ;AAAA,IACpD,CAAC;AAAA,EACH;AACF;","names":[]}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
// src/apis/spot/BaseSpotAPI.ts
|
|
2
|
-
import {
|
|
3
|
-
|
|
2
|
+
import {
|
|
3
|
+
ERC20_ABI,
|
|
4
|
+
getValidatedAddress
|
|
5
|
+
} from "@nadohq/shared";
|
|
4
6
|
import { getContract } from "viem";
|
|
5
7
|
import { BaseNadoAPI } from "../base.js";
|
|
6
8
|
var BaseSpotAPI = class extends BaseNadoAPI {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/apis/spot/BaseSpotAPI.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../../../src/apis/spot/BaseSpotAPI.ts"],"sourcesContent":["import {\n ContractInstance,\n ERC20_ABI,\n getValidatedAddress,\n} from '@nadohq/shared';\nimport { getContract } from 'viem';\nimport { BaseNadoAPI } from '../base';\nimport { ProductIdOrTokenAddress } from './types';\n\nexport class BaseSpotAPI extends BaseNadoAPI {\n /**\n * Retrieves the ERC20 token contract for a spot product\n */\n async getTokenContractForProduct(\n params: ProductIdOrTokenAddress,\n ): Promise<ContractInstance<typeof ERC20_ABI>> {\n let tokenAddress: string;\n if ('productId' in params) {\n const config = await this.context.contracts.spotEngine.read.getConfig([\n params.productId,\n ]);\n tokenAddress = config.token;\n } else {\n tokenAddress = params.tokenAddress;\n }\n\n return getContract({\n abi: ERC20_ABI,\n address: getValidatedAddress(tokenAddress),\n client: this.context.walletClient ?? this.context.publicClient,\n });\n }\n}\n"],"mappings":";AAAA;AAAA,EAEE;AAAA,EACA;AAAA,OACK;AACP,SAAS,mBAAmB;AAC5B,SAAS,mBAAmB;AAGrB,IAAM,cAAN,cAA0B,YAAY;AAAA;AAAA;AAAA;AAAA,EAI3C,MAAM,2BACJ,QAC6C;AAC7C,QAAI;AACJ,QAAI,eAAe,QAAQ;AACzB,YAAM,SAAS,MAAM,KAAK,QAAQ,UAAU,WAAW,KAAK,UAAU;AAAA,QACpE,OAAO;AAAA,MACT,CAAC;AACD,qBAAe,OAAO;AAAA,IACxB,OAAO;AACL,qBAAe,OAAO;AAAA,IACxB;AAEA,WAAO,YAAY;AAAA,MACjB,KAAK;AAAA,MACL,SAAS,oBAAoB,YAAY;AAAA,MACzC,QAAQ,KAAK,QAAQ,gBAAgB,KAAK,QAAQ;AAAA,IACpD,CAAC;AAAA,EACH;AACF;","names":[]}
|
|
@@ -24,7 +24,6 @@ __export(SpotExecuteAPI_exports, {
|
|
|
24
24
|
});
|
|
25
25
|
module.exports = __toCommonJS(SpotExecuteAPI_exports);
|
|
26
26
|
var import_shared = require("@nadohq/shared");
|
|
27
|
-
var import_shared2 = require("@nadohq/shared");
|
|
28
27
|
var import_BaseSpotAPI = require("./BaseSpotAPI.cjs");
|
|
29
28
|
var SpotExecuteAPI = class extends import_BaseSpotAPI.BaseSpotAPI {
|
|
30
29
|
async deposit(params) {
|
|
@@ -88,7 +87,7 @@ var SpotExecuteAPI = class extends import_BaseSpotAPI.BaseSpotAPI {
|
|
|
88
87
|
}
|
|
89
88
|
async _mintMockERC20(params) {
|
|
90
89
|
if (!this.context.walletClient) {
|
|
91
|
-
throw new
|
|
90
|
+
throw new import_shared.WalletNotProvidedError();
|
|
92
91
|
}
|
|
93
92
|
const config = await this.context.contracts.spotEngine.read.getConfig([
|
|
94
93
|
params.productId
|
|
@@ -97,7 +96,7 @@ var SpotExecuteAPI = class extends import_BaseSpotAPI.BaseSpotAPI {
|
|
|
97
96
|
abi: import_shared.MOCK_ERC20_ABI,
|
|
98
97
|
address: config.token,
|
|
99
98
|
functionName: "mint",
|
|
100
|
-
args: [this.getWalletClientAddress(), (0,
|
|
99
|
+
args: [this.getWalletClientAddress(), (0, import_shared.toBigInt)(params.amount)]
|
|
101
100
|
});
|
|
102
101
|
}
|
|
103
102
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/apis/spot/SpotExecuteAPI.ts"],"sourcesContent":["import {\n approveDepositAllowance,\n depositCollateral,\n DepositCollateralParams,\n isWriteableContract,\n MOCK_ERC20_ABI,\n
|
|
1
|
+
{"version":3,"sources":["../../../src/apis/spot/SpotExecuteAPI.ts"],"sourcesContent":["import {\n approveDepositAllowance,\n depositCollateral,\n DepositCollateralParams,\n isWriteableContract,\n MOCK_ERC20_ABI,\n toBigInt,\n WalletNotProvidedError,\n} from '@nadohq/shared';\nimport { BaseSpotAPI } from './BaseSpotAPI';\nimport {\n ApproveAllowanceParams,\n BurnNlpParams,\n MintMockERC20Params,\n MintNlpParams,\n TransferQuoteParams,\n WithdrawCollateralParams,\n} from './types';\n\nexport class SpotExecuteAPI extends BaseSpotAPI {\n async deposit(params: DepositCollateralParams) {\n return depositCollateral({\n endpoint: this.context.contracts.endpoint,\n subaccountName: params.subaccountName,\n productId: params.productId,\n amount: params.amount,\n referralCode: params.referralCode,\n });\n }\n\n async withdraw(params: WithdrawCollateralParams) {\n return this.context.engineClient.withdrawCollateral({\n ...params,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n async approveAllowance(params: ApproveAllowanceParams) {\n const tokenContract = await this.getTokenContractForProduct(params);\n if (!isWriteableContract(tokenContract)) {\n throw new Error(\n 'Token contract does not permit writes. Is a wallet client provided?',\n );\n }\n\n return approveDepositAllowance({\n amount: params.amount,\n endpoint: this.context.contracts.endpoint,\n tokenContract,\n });\n }\n\n /**\n * Transfers quote between subaccounts under the same wallet.\n *\n * @param params\n */\n async transferQuote(params: TransferQuoteParams) {\n return this.context.engineClient.transferQuote({\n ...params,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n chainId: this.getWalletClientChainIdIfNeeded(params),\n });\n }\n\n async mintNlp(params: MintNlpParams) {\n return this.context.engineClient.mintNlp({\n ...params,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n async burnNlp(params: BurnNlpParams) {\n return this.context.engineClient.burnNlp({\n ...params,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n async _mintMockERC20(params: MintMockERC20Params) {\n if (!this.context.walletClient) {\n throw new WalletNotProvidedError();\n }\n\n const config = await this.context.contracts.spotEngine.read.getConfig([\n params.productId,\n ]);\n\n return this.context.walletClient.writeContract({\n abi: MOCK_ERC20_ABI,\n address: config.token,\n functionName: 'mint',\n args: [this.getWalletClientAddress(), toBigInt(params.amount)],\n });\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAQO;AACP,yBAA4B;AAUrB,IAAM,iBAAN,cAA6B,+BAAY;AAAA,EAC9C,MAAM,QAAQ,QAAiC;AAC7C,eAAO,iCAAkB;AAAA,MACvB,UAAU,KAAK,QAAQ,UAAU;AAAA,MACjC,gBAAgB,OAAO;AAAA,MACvB,WAAW,OAAO;AAAA,MAClB,QAAQ,OAAO;AAAA,MACf,cAAc,OAAO;AAAA,IACvB,CAAC;AAAA,EACH;AAAA,EAEA,MAAM,SAAS,QAAkC;AAC/C,WAAO,KAAK,QAAQ,aAAa,mBAAmB;AAAA,MAClD,GAAG;AAAA,MACH,iBAAiB,KAAK,2BAA2B,MAAM;AAAA,MACvD,SAAS,KAAK,+BAA+B,MAAM;AAAA,MACnD,eAAe,OAAO,iBAAiB,KAAK,mBAAmB;AAAA,IACjE,CAAC;AAAA,EACH;AAAA,EAEA,MAAM,iBAAiB,QAAgC;AACrD,UAAM,gBAAgB,MAAM,KAAK,2BAA2B,MAAM;AAClE,QAAI,KAAC,mCAAoB,aAAa,GAAG;AACvC,YAAM,IAAI;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAEA,eAAO,uCAAwB;AAAA,MAC7B,QAAQ,OAAO;AAAA,MACf,UAAU,KAAK,QAAQ,UAAU;AAAA,MACjC;AAAA,IACF,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,cAAc,QAA6B;AAC/C,WAAO,KAAK,QAAQ,aAAa,cAAc;AAAA,MAC7C,GAAG;AAAA,MACH,iBAAiB,KAAK,2BAA2B,MAAM;AAAA,MACvD,eAAe,OAAO,iBAAiB,KAAK,mBAAmB;AAAA,MAC/D,SAAS,KAAK,+BAA+B,MAAM;AAAA,IACrD,CAAC;AAAA,EACH;AAAA,EAEA,MAAM,QAAQ,QAAuB;AACnC,WAAO,KAAK,QAAQ,aAAa,QAAQ;AAAA,MACvC,GAAG;AAAA,MACH,iBAAiB,KAAK,2BAA2B,MAAM;AAAA,MACvD,SAAS,KAAK,+BAA+B,MAAM;AAAA,MACnD,eAAe,OAAO,iBAAiB,KAAK,mBAAmB;AAAA,IACjE,CAAC;AAAA,EACH;AAAA,EAEA,MAAM,QAAQ,QAAuB;AACnC,WAAO,KAAK,QAAQ,aAAa,QAAQ;AAAA,MACvC,GAAG;AAAA,MACH,iBAAiB,KAAK,2BAA2B,MAAM;AAAA,MACvD,SAAS,KAAK,+BAA+B,MAAM;AAAA,MACnD,eAAe,OAAO,iBAAiB,KAAK,mBAAmB;AAAA,IACjE,CAAC;AAAA,EACH;AAAA,EAEA,MAAM,eAAe,QAA6B;AAChD,QAAI,CAAC,KAAK,QAAQ,cAAc;AAC9B,YAAM,IAAI,qCAAuB;AAAA,IACnC;AAEA,UAAM,SAAS,MAAM,KAAK,QAAQ,UAAU,WAAW,KAAK,UAAU;AAAA,MACpE,OAAO;AAAA,IACT,CAAC;AAED,WAAO,KAAK,QAAQ,aAAa,cAAc;AAAA,MAC7C,KAAK;AAAA,MACL,SAAS,OAAO;AAAA,MAChB,cAAc;AAAA,MACd,MAAM,CAAC,KAAK,uBAAuB,OAAG,wBAAS,OAAO,MAAM,CAAC;AAAA,IAC/D,CAAC;AAAA,EACH;AACF;","names":[]}
|
|
@@ -3,9 +3,10 @@ import {
|
|
|
3
3
|
approveDepositAllowance,
|
|
4
4
|
depositCollateral,
|
|
5
5
|
isWriteableContract,
|
|
6
|
-
MOCK_ERC20_ABI
|
|
6
|
+
MOCK_ERC20_ABI,
|
|
7
|
+
toBigInt,
|
|
8
|
+
WalletNotProvidedError
|
|
7
9
|
} from "@nadohq/shared";
|
|
8
|
-
import { toBigInt, WalletNotProvidedError } from "@nadohq/shared";
|
|
9
10
|
import { BaseSpotAPI } from "./BaseSpotAPI.js";
|
|
10
11
|
var SpotExecuteAPI = class extends BaseSpotAPI {
|
|
11
12
|
async deposit(params) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/apis/spot/SpotExecuteAPI.ts"],"sourcesContent":["import {\n approveDepositAllowance,\n depositCollateral,\n DepositCollateralParams,\n isWriteableContract,\n MOCK_ERC20_ABI,\n
|
|
1
|
+
{"version":3,"sources":["../../../src/apis/spot/SpotExecuteAPI.ts"],"sourcesContent":["import {\n approveDepositAllowance,\n depositCollateral,\n DepositCollateralParams,\n isWriteableContract,\n MOCK_ERC20_ABI,\n toBigInt,\n WalletNotProvidedError,\n} from '@nadohq/shared';\nimport { BaseSpotAPI } from './BaseSpotAPI';\nimport {\n ApproveAllowanceParams,\n BurnNlpParams,\n MintMockERC20Params,\n MintNlpParams,\n TransferQuoteParams,\n WithdrawCollateralParams,\n} from './types';\n\nexport class SpotExecuteAPI extends BaseSpotAPI {\n async deposit(params: DepositCollateralParams) {\n return depositCollateral({\n endpoint: this.context.contracts.endpoint,\n subaccountName: params.subaccountName,\n productId: params.productId,\n amount: params.amount,\n referralCode: params.referralCode,\n });\n }\n\n async withdraw(params: WithdrawCollateralParams) {\n return this.context.engineClient.withdrawCollateral({\n ...params,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n async approveAllowance(params: ApproveAllowanceParams) {\n const tokenContract = await this.getTokenContractForProduct(params);\n if (!isWriteableContract(tokenContract)) {\n throw new Error(\n 'Token contract does not permit writes. Is a wallet client provided?',\n );\n }\n\n return approveDepositAllowance({\n amount: params.amount,\n endpoint: this.context.contracts.endpoint,\n tokenContract,\n });\n }\n\n /**\n * Transfers quote between subaccounts under the same wallet.\n *\n * @param params\n */\n async transferQuote(params: TransferQuoteParams) {\n return this.context.engineClient.transferQuote({\n ...params,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n chainId: this.getWalletClientChainIdIfNeeded(params),\n });\n }\n\n async mintNlp(params: MintNlpParams) {\n return this.context.engineClient.mintNlp({\n ...params,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n async burnNlp(params: BurnNlpParams) {\n return this.context.engineClient.burnNlp({\n ...params,\n subaccountOwner: this.getSubaccountOwnerIfNeeded(params),\n chainId: this.getWalletClientChainIdIfNeeded(params),\n verifyingAddr: params.verifyingAddr ?? this.getEndpointAddress(),\n });\n }\n\n async _mintMockERC20(params: MintMockERC20Params) {\n if (!this.context.walletClient) {\n throw new WalletNotProvidedError();\n }\n\n const config = await this.context.contracts.spotEngine.read.getConfig([\n params.productId,\n ]);\n\n return this.context.walletClient.writeContract({\n abi: MOCK_ERC20_ABI,\n address: config.token,\n functionName: 'mint',\n args: [this.getWalletClientAddress(), toBigInt(params.amount)],\n });\n }\n}\n"],"mappings":";AAAA;AAAA,EACE;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,mBAAmB;AAUrB,IAAM,iBAAN,cAA6B,YAAY;AAAA,EAC9C,MAAM,QAAQ,QAAiC;AAC7C,WAAO,kBAAkB;AAAA,MACvB,UAAU,KAAK,QAAQ,UAAU;AAAA,MACjC,gBAAgB,OAAO;AAAA,MACvB,WAAW,OAAO;AAAA,MAClB,QAAQ,OAAO;AAAA,MACf,cAAc,OAAO;AAAA,IACvB,CAAC;AAAA,EACH;AAAA,EAEA,MAAM,SAAS,QAAkC;AAC/C,WAAO,KAAK,QAAQ,aAAa,mBAAmB;AAAA,MAClD,GAAG;AAAA,MACH,iBAAiB,KAAK,2BAA2B,MAAM;AAAA,MACvD,SAAS,KAAK,+BAA+B,MAAM;AAAA,MACnD,eAAe,OAAO,iBAAiB,KAAK,mBAAmB;AAAA,IACjE,CAAC;AAAA,EACH;AAAA,EAEA,MAAM,iBAAiB,QAAgC;AACrD,UAAM,gBAAgB,MAAM,KAAK,2BAA2B,MAAM;AAClE,QAAI,CAAC,oBAAoB,aAAa,GAAG;AACvC,YAAM,IAAI;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAEA,WAAO,wBAAwB;AAAA,MAC7B,QAAQ,OAAO;AAAA,MACf,UAAU,KAAK,QAAQ,UAAU;AAAA,MACjC;AAAA,IACF,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,cAAc,QAA6B;AAC/C,WAAO,KAAK,QAAQ,aAAa,cAAc;AAAA,MAC7C,GAAG;AAAA,MACH,iBAAiB,KAAK,2BAA2B,MAAM;AAAA,MACvD,eAAe,OAAO,iBAAiB,KAAK,mBAAmB;AAAA,MAC/D,SAAS,KAAK,+BAA+B,MAAM;AAAA,IACrD,CAAC;AAAA,EACH;AAAA,EAEA,MAAM,QAAQ,QAAuB;AACnC,WAAO,KAAK,QAAQ,aAAa,QAAQ;AAAA,MACvC,GAAG;AAAA,MACH,iBAAiB,KAAK,2BAA2B,MAAM;AAAA,MACvD,SAAS,KAAK,+BAA+B,MAAM;AAAA,MACnD,eAAe,OAAO,iBAAiB,KAAK,mBAAmB;AAAA,IACjE,CAAC;AAAA,EACH;AAAA,EAEA,MAAM,QAAQ,QAAuB;AACnC,WAAO,KAAK,QAAQ,aAAa,QAAQ;AAAA,MACvC,GAAG;AAAA,MACH,iBAAiB,KAAK,2BAA2B,MAAM;AAAA,MACvD,SAAS,KAAK,+BAA+B,MAAM;AAAA,MACnD,eAAe,OAAO,iBAAiB,KAAK,mBAAmB;AAAA,IACjE,CAAC;AAAA,EACH;AAAA,EAEA,MAAM,eAAe,QAA6B;AAChD,QAAI,CAAC,KAAK,QAAQ,cAAc;AAC9B,YAAM,IAAI,uBAAuB;AAAA,IACnC;AAEA,UAAM,SAAS,MAAM,KAAK,QAAQ,UAAU,WAAW,KAAK,UAAU;AAAA,MACpE,OAAO;AAAA,IACT,CAAC;AAED,WAAO,KAAK,QAAQ,aAAa,cAAc;AAAA,MAC7C,KAAK;AAAA,MACL,SAAS,OAAO;AAAA,MAChB,cAAc;AAAA,MACd,MAAM,CAAC,KAAK,uBAAuB,GAAG,SAAS,OAAO,MAAM,CAAC;AAAA,IAC/D,CAAC;AAAA,EACH;AACF;","names":[]}
|
|
@@ -25,7 +25,6 @@ __export(subaccount_exports, {
|
|
|
25
25
|
});
|
|
26
26
|
module.exports = __toCommonJS(subaccount_exports);
|
|
27
27
|
var import_shared = require("@nadohq/shared");
|
|
28
|
-
var import_shared2 = require("@nadohq/shared");
|
|
29
28
|
var import_ts_mixer = require("ts-mixer");
|
|
30
29
|
var import_accounts = require("viem/accounts");
|
|
31
30
|
var import_SubaccountExecuteAPI = require("./SubaccountExecuteAPI.cjs");
|
|
@@ -45,7 +44,7 @@ var SubaccountAPI = class extends (0, import_ts_mixer.Mixin)(
|
|
|
45
44
|
async createStandardLinkedSigner(subaccountName) {
|
|
46
45
|
const walletClient = this.context.walletClient;
|
|
47
46
|
if (!walletClient) {
|
|
48
|
-
throw new
|
|
47
|
+
throw new import_shared.WalletNotProvidedError();
|
|
49
48
|
}
|
|
50
49
|
const privateKey = await (0, import_shared.createDeterministicLinkedSignerPrivateKey)({
|
|
51
50
|
chainId: walletClient.chain.id,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/apis/subaccount/index.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../../../src/apis/subaccount/index.ts"],"sourcesContent":["import {\n createDeterministicLinkedSignerPrivateKey,\n WalletNotProvidedError,\n} 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,oBAGO;AACP,sBAAsB;AACtB,sBAAoC;AACpC,kCAAqC;AACrC,gCAAmC;AAGnC,+BAAc,wBAVd;AAYO,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,qCAAuB;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":[]}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
// src/apis/subaccount/index.ts
|
|
2
|
-
import {
|
|
3
|
-
|
|
2
|
+
import {
|
|
3
|
+
createDeterministicLinkedSignerPrivateKey,
|
|
4
|
+
WalletNotProvidedError
|
|
5
|
+
} from "@nadohq/shared";
|
|
4
6
|
import { Mixin } from "ts-mixer";
|
|
5
7
|
import { privateKeyToAccount } from "viem/accounts";
|
|
6
8
|
import { SubaccountExecuteAPI } from "./SubaccountExecuteAPI.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/apis/subaccount/index.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../../../src/apis/subaccount/index.ts"],"sourcesContent":["import {\n createDeterministicLinkedSignerPrivateKey,\n WalletNotProvidedError,\n} 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,EACE;AAAA,EACA;AAAA,OACK;AACP,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 {
|
|
1
|
+
{"version":3,"sources":["../../../src/apis/subaccount/types.ts"],"sourcesContent":["import {\n EngineLinkSignerParams,\n EngineLiquidateSubaccountParams,\n} from '@nadohq/engine-client';\nimport { AccountWithPrivateKey } from '@nadohq/shared';\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,5 +1,5 @@
|
|
|
1
|
-
import { AccountWithPrivateKey } from '@nadohq/shared';
|
|
2
1
|
import { EngineLiquidateSubaccountParams, EngineLinkSignerParams } from '@nadohq/engine-client';
|
|
2
|
+
import { AccountWithPrivateKey } from '@nadohq/shared';
|
|
3
3
|
import { OptionalSignatureParams, OptionalSubaccountOwner } from '../types.cjs';
|
|
4
4
|
|
|
5
5
|
type LinkSignerParams = OptionalSignatureParams<OptionalSubaccountOwner<EngineLinkSignerParams>>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { AccountWithPrivateKey } from '@nadohq/shared';
|
|
2
1
|
import { EngineLiquidateSubaccountParams, EngineLinkSignerParams } from '@nadohq/engine-client';
|
|
2
|
+
import { AccountWithPrivateKey } from '@nadohq/shared';
|
|
3
3
|
import { OptionalSignatureParams, OptionalSubaccountOwner } from '../types.js';
|
|
4
4
|
|
|
5
5
|
type LinkSignerParams = OptionalSignatureParams<OptionalSubaccountOwner<EngineLinkSignerParams>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/apis/ws/WebSocketExecuteAPI.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../../../src/apis/ws/WebSocketExecuteAPI.ts"],"sourcesContent":["import {\n EngineExecuteRequestParamsByType,\n WithSignature,\n} from '@nadohq/engine-client';\nimport { EIP712OrderParams } from '@nadohq/shared';\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 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/apis/ws/WebSocketExecuteAPI.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../../../src/apis/ws/WebSocketExecuteAPI.ts"],"sourcesContent":["import {\n EngineExecuteRequestParamsByType,\n WithSignature,\n} from '@nadohq/engine-client';\nimport { EIP712OrderParams } from '@nadohq/shared';\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":[]}
|
package/dist/apis/ws/index.d.cts
CHANGED
|
@@ -3,9 +3,9 @@ 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/shared';
|
|
7
6
|
import '@nadohq/engine-client';
|
|
8
7
|
import '@nadohq/indexer-client';
|
|
8
|
+
import '@nadohq/shared';
|
|
9
9
|
import '@nadohq/trigger-client';
|
|
10
10
|
import 'viem';
|
|
11
11
|
|
package/dist/apis/ws/index.d.ts
CHANGED
|
@@ -3,9 +3,9 @@ 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/shared';
|
|
7
6
|
import '@nadohq/engine-client';
|
|
8
7
|
import '@nadohq/indexer-client';
|
|
8
|
+
import '@nadohq/shared';
|
|
9
9
|
import '@nadohq/trigger-client';
|
|
10
10
|
import 'viem';
|
|
11
11
|
|
package/dist/context.cjs
CHANGED
|
@@ -23,9 +23,9 @@ __export(context_exports, {
|
|
|
23
23
|
createClientContext: () => createClientContext
|
|
24
24
|
});
|
|
25
25
|
module.exports = __toCommonJS(context_exports);
|
|
26
|
-
var import_shared = require("@nadohq/shared");
|
|
27
26
|
var import_engine_client = require("@nadohq/engine-client");
|
|
28
27
|
var import_indexer_client = require("@nadohq/indexer-client");
|
|
28
|
+
var import_shared = require("@nadohq/shared");
|
|
29
29
|
var import_trigger_client = require("@nadohq/trigger-client");
|
|
30
30
|
var import_viem = require("viem");
|
|
31
31
|
function createClientContext(opts, accountOpts) {
|
package/dist/context.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/context.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../src/context.ts"],"sourcesContent":["import { ENGINE_CLIENT_ENDPOINTS, EngineClient } from '@nadohq/engine-client';\nimport {\n INDEXER_CLIENT_ENDPOINTS,\n IndexerClient,\n} from '@nadohq/indexer-client';\nimport {\n ChainEnv,\n NADO_ABIS,\n NADO_DEPLOYMENTS,\n NadoContractName,\n NadoContracts,\n NadoDeploymentAddresses,\n WalletClientWithAccount,\n} from '@nadohq/shared';\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,2BAAsD;AACtD,4BAGO;AACP,oBAQO;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":[]}
|
package/dist/context.d.cts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { WalletClientWithAccount, NadoContracts, NadoDeploymentAddresses, ChainEnv } from '@nadohq/shared';
|
|
2
1
|
import { EngineClient } from '@nadohq/engine-client';
|
|
3
2
|
import { IndexerClient } from '@nadohq/indexer-client';
|
|
3
|
+
import { WalletClientWithAccount, NadoContracts, NadoDeploymentAddresses, ChainEnv } from '@nadohq/shared';
|
|
4
4
|
import { TriggerClient } from '@nadohq/trigger-client';
|
|
5
5
|
import { PublicClient } from 'viem';
|
|
6
6
|
|
package/dist/context.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { WalletClientWithAccount, NadoContracts, NadoDeploymentAddresses, ChainEnv } from '@nadohq/shared';
|
|
2
1
|
import { EngineClient } from '@nadohq/engine-client';
|
|
3
2
|
import { IndexerClient } from '@nadohq/indexer-client';
|
|
3
|
+
import { WalletClientWithAccount, NadoContracts, NadoDeploymentAddresses, ChainEnv } from '@nadohq/shared';
|
|
4
4
|
import { TriggerClient } from '@nadohq/trigger-client';
|
|
5
5
|
import { PublicClient } from 'viem';
|
|
6
6
|
|
package/dist/context.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
// src/context.ts
|
|
2
|
-
import {
|
|
3
|
-
NADO_ABIS,
|
|
4
|
-
NADO_DEPLOYMENTS
|
|
5
|
-
} from "@nadohq/shared";
|
|
6
2
|
import { ENGINE_CLIENT_ENDPOINTS, EngineClient } from "@nadohq/engine-client";
|
|
7
3
|
import {
|
|
8
4
|
INDEXER_CLIENT_ENDPOINTS,
|
|
9
5
|
IndexerClient
|
|
10
6
|
} from "@nadohq/indexer-client";
|
|
7
|
+
import {
|
|
8
|
+
NADO_ABIS,
|
|
9
|
+
NADO_DEPLOYMENTS
|
|
10
|
+
} from "@nadohq/shared";
|
|
11
11
|
import {
|
|
12
12
|
TRIGGER_CLIENT_ENDPOINTS,
|
|
13
13
|
TriggerClient
|
package/dist/context.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/context.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../src/context.ts"],"sourcesContent":["import { ENGINE_CLIENT_ENDPOINTS, EngineClient } from '@nadohq/engine-client';\nimport {\n INDEXER_CLIENT_ENDPOINTS,\n IndexerClient,\n} from '@nadohq/indexer-client';\nimport {\n ChainEnv,\n NADO_ABIS,\n NADO_DEPLOYMENTS,\n NadoContractName,\n NadoContracts,\n NadoDeploymentAddresses,\n WalletClientWithAccount,\n} from '@nadohq/shared';\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,SAAS,yBAAyB,oBAAoB;AACtD;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP;AAAA,EAEE;AAAA,EACA;AAAA,OAKK;AACP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,mBAAiC;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,iBAAiB,QAAQ;AAAA,MAC5C,gBAAgB,wBAAwB,QAAQ;AAAA,MAChD,iBAAiB,yBAAyB,QAAQ;AAAA,MAClD,iBAAiB,yBAAyB,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,aAAa;AAAA,MAC7B,KAAK;AAAA,MACL;AAAA,MACA;AAAA,IACF,CAAC;AAAA,IACD,eAAe,IAAI,cAAc;AAAA,MAC/B,KAAK;AAAA,MACL;AAAA,IACF,CAAC;AAAA,IACD,eAAe,IAAI,cAAc;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,SAAO,YAAY;AAAA,IACjB,SAAS,kBAAkB,YAAY;AAAA,IACvC,KAAK,UAAU,YAAY;AAAA,IAC3B,QAAQ,gBAAgB;AAAA,EAC1B,CAAC;AACH;","names":[]}
|
|
@@ -4,9 +4,9 @@ import './apis/market/index.cjs';
|
|
|
4
4
|
import './apis/perp/index.cjs';
|
|
5
5
|
import './apis/spot/index.cjs';
|
|
6
6
|
import './apis/subaccount/index.cjs';
|
|
7
|
-
import '@nadohq/shared';
|
|
8
7
|
import '@nadohq/engine-client';
|
|
9
8
|
import '@nadohq/indexer-client';
|
|
9
|
+
import '@nadohq/shared';
|
|
10
10
|
import '@nadohq/trigger-client';
|
|
11
11
|
import './apis/market/types.cjs';
|
|
12
12
|
import './apis/spot/types.cjs';
|
|
@@ -4,9 +4,9 @@ import './apis/market/index.js';
|
|
|
4
4
|
import './apis/perp/index.js';
|
|
5
5
|
import './apis/spot/index.js';
|
|
6
6
|
import './apis/subaccount/index.js';
|
|
7
|
-
import '@nadohq/shared';
|
|
8
7
|
import '@nadohq/engine-client';
|
|
9
8
|
import '@nadohq/indexer-client';
|
|
9
|
+
import '@nadohq/shared';
|
|
10
10
|
import '@nadohq/trigger-client';
|
|
11
11
|
import './apis/market/types.js';
|
|
12
12
|
import './apis/spot/types.js';
|
package/dist/index.cjs
CHANGED
|
@@ -17,29 +17,29 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
17
17
|
// src/index.ts
|
|
18
18
|
var index_exports = {};
|
|
19
19
|
module.exports = __toCommonJS(index_exports);
|
|
20
|
-
__reExport(index_exports, require("./createNadoClient.cjs"), module.exports);
|
|
21
20
|
__reExport(index_exports, require("./client.cjs"), module.exports);
|
|
22
21
|
__reExport(index_exports, require("./context.cjs"), module.exports);
|
|
22
|
+
__reExport(index_exports, require("./createNadoClient.cjs"), module.exports);
|
|
23
23
|
__reExport(index_exports, require("./apis/market/index.cjs"), module.exports);
|
|
24
24
|
__reExport(index_exports, require("./apis/perp/index.cjs"), module.exports);
|
|
25
25
|
__reExport(index_exports, require("./apis/spot/index.cjs"), module.exports);
|
|
26
26
|
__reExport(index_exports, require("./apis/subaccount/index.cjs"), module.exports);
|
|
27
|
-
__reExport(index_exports, require("@nadohq/shared"), module.exports);
|
|
28
27
|
__reExport(index_exports, require("@nadohq/engine-client"), module.exports);
|
|
29
28
|
__reExport(index_exports, require("@nadohq/indexer-client"), module.exports);
|
|
29
|
+
__reExport(index_exports, require("@nadohq/shared"), module.exports);
|
|
30
30
|
__reExport(index_exports, require("@nadohq/trigger-client"), module.exports);
|
|
31
31
|
// Annotate the CommonJS export names for ESM import in node:
|
|
32
32
|
0 && (module.exports = {
|
|
33
|
-
...require("./createNadoClient.cjs"),
|
|
34
33
|
...require("./client.cjs"),
|
|
35
34
|
...require("./context.cjs"),
|
|
35
|
+
...require("./createNadoClient.cjs"),
|
|
36
36
|
...require("./apis/market/index.cjs"),
|
|
37
37
|
...require("./apis/perp/index.cjs"),
|
|
38
38
|
...require("./apis/spot/index.cjs"),
|
|
39
39
|
...require("./apis/subaccount/index.cjs"),
|
|
40
|
-
...require("@nadohq/shared"),
|
|
41
40
|
...require("@nadohq/engine-client"),
|
|
42
41
|
...require("@nadohq/indexer-client"),
|
|
42
|
+
...require("@nadohq/shared"),
|
|
43
43
|
...require("@nadohq/trigger-client")
|
|
44
44
|
});
|
|
45
45
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["export * from './
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["export * from './client';\nexport * from './context';\nexport * from './createNadoClient';\n\nexport * from './apis/market';\nexport * from './apis/perp';\nexport * from './apis/spot';\nexport * from './apis/subaccount';\n\n// Subpackage exports\nexport * from '@nadohq/engine-client';\nexport * from '@nadohq/indexer-client';\nexport * from '@nadohq/shared';\nexport * from '@nadohq/trigger-client';\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA,0BAAc,yBAAd;AACA,0BAAc,0BADd;AAEA,0BAAc,mCAFd;AAIA,0BAAc,oCAJd;AAKA,0BAAc,kCALd;AAMA,0BAAc,kCANd;AAOA,0BAAc,wCAPd;AAUA,0BAAc,kCAVd;AAWA,0BAAc,mCAXd;AAYA,0BAAc,2BAZd;AAaA,0BAAc,mCAbd;","names":[]}
|
package/dist/index.d.cts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
export { createNadoClient } from './createNadoClient.cjs';
|
|
2
1
|
export { NadoClient } from './client.cjs';
|
|
3
2
|
export { CreateNadoClientContextAccountOpts, CreateNadoClientContextOpts, NadoClientContext, createClientContext } from './context.cjs';
|
|
3
|
+
export { createNadoClient } from './createNadoClient.cjs';
|
|
4
4
|
export { MarketAPI } from './apis/market/index.cjs';
|
|
5
5
|
export { PerpAPI } from './apis/perp/index.cjs';
|
|
6
6
|
export { SpotAPI } from './apis/spot/index.cjs';
|
|
7
7
|
export { SubaccountAPI } from './apis/subaccount/index.cjs';
|
|
8
|
-
export * from '@nadohq/shared';
|
|
9
8
|
export * from '@nadohq/engine-client';
|
|
10
9
|
export * from '@nadohq/indexer-client';
|
|
10
|
+
export * from '@nadohq/shared';
|
|
11
11
|
export * from '@nadohq/trigger-client';
|
|
12
12
|
export { CancelAndPlaceOrderParams, CancelOrdersParams, CancelProductOrdersParams, CancelTriggerOrdersParams, CancelTriggerProductOrdersParams, GetTriggerOrdersParams, PlaceOrderParams, PlaceTriggerOrderParams } from './apis/market/types.cjs';
|
|
13
13
|
export { ApproveAllowanceParams, BurnNlpParams, GetTokenAllowanceParams, GetTokenWalletBalanceParams, MintMockERC20Params, MintNlpParams, ProductIdOrTokenAddress, TransferQuoteParams, WithdrawCollateralParams } from './apis/spot/types.cjs';
|
package/dist/index.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
export { createNadoClient } from './createNadoClient.js';
|
|
2
1
|
export { NadoClient } from './client.js';
|
|
3
2
|
export { CreateNadoClientContextAccountOpts, CreateNadoClientContextOpts, NadoClientContext, createClientContext } from './context.js';
|
|
3
|
+
export { createNadoClient } from './createNadoClient.js';
|
|
4
4
|
export { MarketAPI } from './apis/market/index.js';
|
|
5
5
|
export { PerpAPI } from './apis/perp/index.js';
|
|
6
6
|
export { SpotAPI } from './apis/spot/index.js';
|
|
7
7
|
export { SubaccountAPI } from './apis/subaccount/index.js';
|
|
8
|
-
export * from '@nadohq/shared';
|
|
9
8
|
export * from '@nadohq/engine-client';
|
|
10
9
|
export * from '@nadohq/indexer-client';
|
|
10
|
+
export * from '@nadohq/shared';
|
|
11
11
|
export * from '@nadohq/trigger-client';
|
|
12
12
|
export { CancelAndPlaceOrderParams, CancelOrdersParams, CancelProductOrdersParams, CancelTriggerOrdersParams, CancelTriggerProductOrdersParams, GetTriggerOrdersParams, PlaceOrderParams, PlaceTriggerOrderParams } from './apis/market/types.js';
|
|
13
13
|
export { ApproveAllowanceParams, BurnNlpParams, GetTokenAllowanceParams, GetTokenWalletBalanceParams, MintMockERC20Params, MintNlpParams, ProductIdOrTokenAddress, TransferQuoteParams, WithdrawCollateralParams } from './apis/spot/types.js';
|
package/dist/index.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
// src/index.ts
|
|
2
|
-
export * from "./createNadoClient.js";
|
|
3
2
|
export * from "./client.js";
|
|
4
3
|
export * from "./context.js";
|
|
4
|
+
export * from "./createNadoClient.js";
|
|
5
5
|
export * from "./apis/market/index.js";
|
|
6
6
|
export * from "./apis/perp/index.js";
|
|
7
7
|
export * from "./apis/spot/index.js";
|
|
8
8
|
export * from "./apis/subaccount/index.js";
|
|
9
|
-
export * from "@nadohq/shared";
|
|
10
9
|
export * from "@nadohq/engine-client";
|
|
11
10
|
export * from "@nadohq/indexer-client";
|
|
11
|
+
export * from "@nadohq/shared";
|
|
12
12
|
export * from "@nadohq/trigger-client";
|
|
13
13
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["export * from './
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["export * from './client';\nexport * from './context';\nexport * from './createNadoClient';\n\nexport * from './apis/market';\nexport * from './apis/perp';\nexport * from './apis/spot';\nexport * from './apis/subaccount';\n\n// Subpackage exports\nexport * from '@nadohq/engine-client';\nexport * from '@nadohq/indexer-client';\nexport * from '@nadohq/shared';\nexport * from '@nadohq/trigger-client';\n"],"mappings":";AAAA,cAAc;AACd,cAAc;AACd,cAAc;AAEd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AAGd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nadohq/client",
|
|
3
|
-
"version": "0.1.0-alpha.
|
|
3
|
+
"version": "0.1.0-alpha.15",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"description": "> TODO: description",
|
|
@@ -37,10 +37,10 @@
|
|
|
37
37
|
}
|
|
38
38
|
},
|
|
39
39
|
"dependencies": {
|
|
40
|
-
"@nadohq/engine-client": "^0.1.0-alpha.
|
|
41
|
-
"@nadohq/indexer-client": "^0.1.0-alpha.
|
|
42
|
-
"@nadohq/shared": "^0.1.0-alpha.
|
|
43
|
-
"@nadohq/trigger-client": "^0.1.0-alpha.
|
|
40
|
+
"@nadohq/engine-client": "^0.1.0-alpha.15",
|
|
41
|
+
"@nadohq/indexer-client": "^0.1.0-alpha.15",
|
|
42
|
+
"@nadohq/shared": "^0.1.0-alpha.15",
|
|
43
|
+
"@nadohq/trigger-client": "^0.1.0-alpha.15",
|
|
44
44
|
"ts-mixer": "*"
|
|
45
45
|
},
|
|
46
46
|
"peerDependencies": {
|
|
@@ -49,5 +49,5 @@
|
|
|
49
49
|
"devDependencies": {
|
|
50
50
|
"viem": "*"
|
|
51
51
|
},
|
|
52
|
-
"gitHead": "
|
|
52
|
+
"gitHead": "fd6395df23d38b751aad0cd9b56cf1849125fd12"
|
|
53
53
|
}
|
package/src/apis/base.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import {
|
|
2
|
+
ContractInstance,
|
|
3
|
+
ERC20_ABI,
|
|
4
|
+
getValidatedAddress,
|
|
5
|
+
} from '@nadohq/shared';
|
|
4
6
|
import { getContract } from 'viem';
|
|
5
7
|
import { BaseNadoAPI } from '../base';
|
|
6
8
|
import { ProductIdOrTokenAddress } from './types';
|
|
@@ -4,8 +4,9 @@ import {
|
|
|
4
4
|
DepositCollateralParams,
|
|
5
5
|
isWriteableContract,
|
|
6
6
|
MOCK_ERC20_ABI,
|
|
7
|
+
toBigInt,
|
|
8
|
+
WalletNotProvidedError,
|
|
7
9
|
} from '@nadohq/shared';
|
|
8
|
-
import { toBigInt, WalletNotProvidedError } from '@nadohq/shared';
|
|
9
10
|
import { BaseSpotAPI } from './BaseSpotAPI';
|
|
10
11
|
import {
|
|
11
12
|
ApproveAllowanceParams,
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import {
|
|
2
|
+
createDeterministicLinkedSignerPrivateKey,
|
|
3
|
+
WalletNotProvidedError,
|
|
4
|
+
} from '@nadohq/shared';
|
|
3
5
|
import { Mixin } from 'ts-mixer';
|
|
4
6
|
import { privateKeyToAccount } from 'viem/accounts';
|
|
5
7
|
import { SubaccountExecuteAPI } from './SubaccountExecuteAPI';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { AccountWithPrivateKey } from '@nadohq/shared';
|
|
2
1
|
import {
|
|
3
2
|
EngineLinkSignerParams,
|
|
4
3
|
EngineLiquidateSubaccountParams,
|
|
5
4
|
} from '@nadohq/engine-client';
|
|
5
|
+
import { AccountWithPrivateKey } from '@nadohq/shared';
|
|
6
6
|
import { OptionalSignatureParams, OptionalSubaccountOwner } from '../types';
|
|
7
7
|
|
|
8
8
|
export type LinkSignerParams = OptionalSignatureParams<
|
package/src/context.ts
CHANGED
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
import { ENGINE_CLIENT_ENDPOINTS, EngineClient } from '@nadohq/engine-client';
|
|
2
|
+
import {
|
|
3
|
+
INDEXER_CLIENT_ENDPOINTS,
|
|
4
|
+
IndexerClient,
|
|
5
|
+
} from '@nadohq/indexer-client';
|
|
1
6
|
import {
|
|
2
7
|
ChainEnv,
|
|
3
8
|
NADO_ABIS,
|
|
@@ -7,11 +12,6 @@ import {
|
|
|
7
12
|
NadoDeploymentAddresses,
|
|
8
13
|
WalletClientWithAccount,
|
|
9
14
|
} from '@nadohq/shared';
|
|
10
|
-
import { ENGINE_CLIENT_ENDPOINTS, EngineClient } from '@nadohq/engine-client';
|
|
11
|
-
import {
|
|
12
|
-
INDEXER_CLIENT_ENDPOINTS,
|
|
13
|
-
IndexerClient,
|
|
14
|
-
} from '@nadohq/indexer-client';
|
|
15
15
|
import {
|
|
16
16
|
TRIGGER_CLIENT_ENDPOINTS,
|
|
17
17
|
TriggerClient,
|
package/src/index.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export * from './createNadoClient';
|
|
2
1
|
export * from './client';
|
|
3
2
|
export * from './context';
|
|
3
|
+
export * from './createNadoClient';
|
|
4
4
|
|
|
5
5
|
export * from './apis/market';
|
|
6
6
|
export * from './apis/perp';
|
|
@@ -8,7 +8,7 @@ export * from './apis/spot';
|
|
|
8
8
|
export * from './apis/subaccount';
|
|
9
9
|
|
|
10
10
|
// Subpackage exports
|
|
11
|
-
export * from '@nadohq/shared';
|
|
12
11
|
export * from '@nadohq/engine-client';
|
|
13
12
|
export * from '@nadohq/indexer-client';
|
|
13
|
+
export * from '@nadohq/shared';
|
|
14
14
|
export * from '@nadohq/trigger-client';
|