@1stdex/first-sdk 1.0.7 → 1.0.9
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/cjs/calls/batch/index.js +6 -0
- package/dist/cjs/calls/batch/index.js.map +1 -0
- package/dist/cjs/calls/batch/prepare-order-with-setup.js +118 -0
- package/dist/cjs/calls/batch/prepare-order-with-setup.js.map +1 -0
- package/dist/cjs/calls/index.js +3 -1
- package/dist/cjs/calls/index.js.map +1 -1
- package/dist/cjs/calls/market/limit.js +3 -6
- package/dist/cjs/calls/market/limit.js.map +1 -1
- package/dist/cjs/utils/build-transaction.js +11 -1
- package/dist/cjs/utils/build-transaction.js.map +1 -1
- package/dist/esm/calls/batch/index.js +2 -0
- package/dist/esm/calls/batch/index.js.map +1 -0
- package/dist/esm/calls/batch/prepare-order-with-setup.js +151 -0
- package/dist/esm/calls/batch/prepare-order-with-setup.js.map +1 -0
- package/dist/esm/calls/index.js +1 -0
- package/dist/esm/calls/index.js.map +1 -1
- package/dist/esm/calls/market/limit.js +3 -6
- package/dist/esm/calls/market/limit.js.map +1 -1
- package/dist/esm/utils/build-transaction.js +12 -1
- package/dist/esm/utils/build-transaction.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/calls/batch/index.d.ts +3 -0
- package/dist/types/calls/batch/index.d.ts.map +1 -0
- package/dist/types/calls/batch/prepare-order-with-setup.d.ts +53 -0
- package/dist/types/calls/batch/prepare-order-with-setup.d.ts.map +1 -0
- package/dist/types/calls/index.d.ts +2 -0
- package/dist/types/calls/index.d.ts.map +1 -1
- package/dist/types/calls/market/limit.d.ts +1 -0
- package/dist/types/calls/market/limit.d.ts.map +1 -1
- package/dist/types/utils/build-transaction.d.ts +1 -1
- package/dist/types/utils/build-transaction.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/calls/batch/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,YAAY,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { CHAIN_IDS } from '../../constants/chain-configs/chain';
|
|
2
|
+
import { DefaultWriteContractOptions } from '../../types';
|
|
3
|
+
export type BatchCall = {
|
|
4
|
+
to: `0x${string}`;
|
|
5
|
+
data: `0x${string}`;
|
|
6
|
+
value: bigint;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Prepares all necessary transactions for placing an order, including setup if needed.
|
|
10
|
+
* Checks current state and only includes transactions for missing setup steps.
|
|
11
|
+
* Returns array of calls that can be batched in a single smart wallet transaction.
|
|
12
|
+
*
|
|
13
|
+
* @param chainId The chain ID.
|
|
14
|
+
* @param userAddress The user address.
|
|
15
|
+
* @param inputToken The input token address.
|
|
16
|
+
* @param outputToken The output token address.
|
|
17
|
+
* @param amount The amount to trade (decimal-adjusted string).
|
|
18
|
+
* @param price The limit price.
|
|
19
|
+
* @param options Optional parameters.
|
|
20
|
+
* @returns Promise resolving to array of batch calls.
|
|
21
|
+
* @example
|
|
22
|
+
* import { prepareOrderWithSetup } from '@clober/v2-sdk'
|
|
23
|
+
* import { useSmartWallets } from '@privy-io/react-auth/smart-wallets'
|
|
24
|
+
*
|
|
25
|
+
* const calls = await prepareOrderWithSetup({
|
|
26
|
+
* chainId: 421614,
|
|
27
|
+
* userAddress: '0xF8c1869Ecd4df136693C45EcE1b67f85B6bDaE69',
|
|
28
|
+
* inputToken: '0x00bfd44e79fb7f6dd5887a9426c8ef85a0cd23e0',
|
|
29
|
+
* outputToken: '0x0000000000000000000000000000000000000000',
|
|
30
|
+
* amount: '100',
|
|
31
|
+
* price: '4000'
|
|
32
|
+
* })
|
|
33
|
+
*
|
|
34
|
+
* // Send all calls in one batched transaction
|
|
35
|
+
* const { client } = useSmartWallets()
|
|
36
|
+
* const txHash = await client.sendUserOperation({ calls })
|
|
37
|
+
*/
|
|
38
|
+
export declare const prepareOrderWithSetup: ({ chainId, userAddress, inputToken, outputToken, amount, price, options, }: {
|
|
39
|
+
chainId: CHAIN_IDS;
|
|
40
|
+
userAddress: `0x${string}`;
|
|
41
|
+
inputToken: `0x${string}`;
|
|
42
|
+
outputToken: `0x${string}`;
|
|
43
|
+
amount: string;
|
|
44
|
+
price: string;
|
|
45
|
+
options?: {
|
|
46
|
+
postOnly?: boolean;
|
|
47
|
+
makeProvider?: `0x${string}`;
|
|
48
|
+
makeReferrer?: `0x${string}`;
|
|
49
|
+
takeProvider?: `0x${string}`;
|
|
50
|
+
takeReferrer?: `0x${string}`;
|
|
51
|
+
} & DefaultWriteContractOptions;
|
|
52
|
+
}) => Promise<BatchCall[]>;
|
|
53
|
+
//# sourceMappingURL=prepare-order-with-setup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepare-order-with-setup.d.ts","sourceRoot":"","sources":["../../../../src/calls/batch/prepare-order-with-setup.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,SAAS,EAAa,MAAM,qCAAqC,CAAC;AAQ3E,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAE1D,MAAM,MAAM,SAAS,GAAG;IACtB,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,qBAAqB,+EAQ/B;IACD,OAAO,EAAE,SAAS,CAAC;IACnB,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;IAC3B,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;IAC1B,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,YAAY,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;QAC7B,YAAY,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;QAC7B,YAAY,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;QAC7B,YAAY,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;KAC9B,GAAG,2BAA2B,CAAC;CACjC,KAAG,QAAQ,SAAS,EAAE,CA4HtB,CAAC"}
|
|
@@ -9,4 +9,6 @@ export { setTokenAllowances } from './approval/token';
|
|
|
9
9
|
export { approveAllForMarket } from './approval/market';
|
|
10
10
|
export { setOrderOperatorApproval, approveControllerAsOrderOperator, } from './approval/order';
|
|
11
11
|
export { setVault, removeVault, depositToVault, withdrawFromVault, } from './vault';
|
|
12
|
+
export { prepareOrderWithSetup } from './batch';
|
|
13
|
+
export type { BatchCall } from './batch';
|
|
12
14
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/calls/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE5D,OAAO,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EACL,wBAAwB,EACxB,gCAAgC,GACjC,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,QAAQ,EACR,WAAW,EACX,cAAc,EACd,iBAAiB,GAClB,MAAM,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/calls/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE5D,OAAO,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EACL,wBAAwB,EACxB,gCAAgC,GACjC,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,QAAQ,EACR,WAAW,EACX,cAAc,EACd,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChD,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -66,6 +66,7 @@ export declare const limitOrder: ({ chainId, userAddress, inputToken, outputToke
|
|
|
66
66
|
makeReferrer?: `0x${string}`;
|
|
67
67
|
takeProvider?: `0x${string}`;
|
|
68
68
|
takeReferrer?: `0x${string}`;
|
|
69
|
+
skipGasEstimation?: boolean;
|
|
69
70
|
} & DefaultWriteContractOptions;
|
|
70
71
|
}) => Promise<{
|
|
71
72
|
transaction: Transaction;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"limit.d.ts","sourceRoot":"","sources":["../../../../src/calls/market/limit.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,SAAS,EAAa,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EACL,YAAY,EACZ,2BAA2B,EAC3B,gBAAgB,EAChB,WAAW,EACZ,MAAM,aAAa,CAAC;AAWrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,eAAO,MAAM,UAAU,+EAQpB;IACD,OAAO,EAAE,SAAS,CAAC;IACnB,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;IAC3B,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;IAC1B,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE;QACR,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;QACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAC9B,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAC/B,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,YAAY,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;QAC7B,YAAY,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;QAC7B,YAAY,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;QAC7B,YAAY,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"limit.d.ts","sourceRoot":"","sources":["../../../../src/calls/market/limit.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,SAAS,EAAa,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EACL,YAAY,EACZ,2BAA2B,EAC3B,gBAAgB,EAChB,WAAW,EACZ,MAAM,aAAa,CAAC;AAWrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,eAAO,MAAM,UAAU,+EAQpB;IACD,OAAO,EAAE,SAAS,CAAC;IACnB,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;IAC3B,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;IAC1B,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE;QACR,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;QACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAC9B,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAC/B,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,YAAY,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;QAC7B,YAAY,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;QAC7B,YAAY,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;QAC7B,YAAY,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;QAC7B,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC7B,GAAG,2BAA2B,CAAC;CACjC,KAAG,QAAQ;IACV,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE;QACN,IAAI,EAAE,YAAY,GAAG;YAAE,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC;QACvC,KAAK,EAAE,YAAY,GAAG;YAAE,MAAM,EAAE;gBAAE,KAAK,EAAE,MAAM,CAAC;gBAAC,MAAM,EAAE,MAAM,CAAA;aAAE,EAAE,CAAA;SAAE,CAAC;QACtE,KAAK,EAAE,YAAY,GAAG;YAAE,MAAM,EAAE;gBAAE,KAAK,EAAE,MAAM,CAAC;gBAAC,MAAM,EAAE,MAAM,CAAA;aAAE,EAAE,CAAA;SAAE,CAAC;KACvE,CAAC;CACH,CA2NA,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { PublicClient, type SimulateContractParameters, type WriteContractParameters } from 'viem';
|
|
2
2
|
import { type Transaction } from '../types';
|
|
3
|
-
export declare const buildTransaction: (publicClient: PublicClient, args: WriteContractParameters | SimulateContractParameters, gasLimit?: bigint, gasPriceLimit?: bigint) => Promise<Transaction>;
|
|
3
|
+
export declare const buildTransaction: (publicClient: PublicClient, args: WriteContractParameters | SimulateContractParameters, gasLimit?: bigint, gasPriceLimit?: bigint, skipGasEstimation?: boolean) => Promise<Transaction>;
|
|
4
4
|
//# sourceMappingURL=build-transaction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-transaction.d.ts","sourceRoot":"","sources":["../../../src/utils/build-transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,YAAY,EACZ,KAAK,0BAA0B,EAC/B,KAAK,uBAAuB,EAC7B,MAAM,MAAM,CAAC;AAEd,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,eAAO,MAAM,gBAAgB,iBACb,YAAY,QACpB,uBAAuB,GAAG,0BAA0B,aAC/C,MAAM,kBACD,MAAM,
|
|
1
|
+
{"version":3,"file":"build-transaction.d.ts","sourceRoot":"","sources":["../../../src/utils/build-transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,YAAY,EACZ,KAAK,0BAA0B,EAC/B,KAAK,uBAAuB,EAC7B,MAAM,MAAM,CAAC;AAEd,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,eAAO,MAAM,gBAAgB,iBACb,YAAY,QACpB,uBAAuB,GAAG,0BAA0B,aAC/C,MAAM,kBACD,MAAM,sBACF,OAAO,KAC1B,QAAQ,WAAW,CAiCrB,CAAC"}
|