@clober/v2-sdk 0.0.8 → 0.0.10

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 (40) hide show
  1. package/dist/cjs/abis/core/controller-abi.js +28 -18
  2. package/dist/cjs/abis/core/controller-abi.js.map +1 -1
  3. package/dist/cjs/approval.js.map +1 -1
  4. package/dist/cjs/call.js +159 -73
  5. package/dist/cjs/call.js.map +1 -1
  6. package/dist/cjs/signature.js.map +1 -1
  7. package/dist/cjs/type.js.map +1 -1
  8. package/dist/cjs/utils/build-transaction.js +8 -7
  9. package/dist/cjs/utils/build-transaction.js.map +1 -1
  10. package/dist/cjs/view.js +6 -1
  11. package/dist/cjs/view.js.map +1 -1
  12. package/dist/esm/abis/core/controller-abi.js +28 -18
  13. package/dist/esm/abis/core/controller-abi.js.map +1 -1
  14. package/dist/esm/approval.js +3 -12
  15. package/dist/esm/approval.js.map +1 -1
  16. package/dist/esm/call.js +173 -92
  17. package/dist/esm/call.js.map +1 -1
  18. package/dist/esm/signature.js +0 -12
  19. package/dist/esm/signature.js.map +1 -1
  20. package/dist/esm/type.js.map +1 -1
  21. package/dist/esm/utils/build-transaction.js +8 -7
  22. package/dist/esm/utils/build-transaction.js.map +1 -1
  23. package/dist/esm/view.js +22 -1
  24. package/dist/esm/view.js.map +1 -1
  25. package/dist/tsconfig.build.tsbuildinfo +1 -1
  26. package/dist/types/abis/core/controller-abi.d.ts +22 -14
  27. package/dist/types/abis/core/controller-abi.d.ts.map +1 -1
  28. package/dist/types/approval.d.ts +3 -12
  29. package/dist/types/approval.d.ts.map +1 -1
  30. package/dist/types/call.d.ts +21 -20
  31. package/dist/types/call.d.ts.map +1 -1
  32. package/dist/types/signature.d.ts +0 -12
  33. package/dist/types/signature.d.ts.map +1 -1
  34. package/dist/types/type.d.ts +1 -0
  35. package/dist/types/type.d.ts.map +1 -1
  36. package/dist/types/utils/build-transaction.d.ts +1 -1
  37. package/dist/types/utils/build-transaction.d.ts.map +1 -1
  38. package/dist/types/view.d.ts +22 -0
  39. package/dist/types/view.d.ts.map +1 -1
  40. package/package.json +1 -1
package/dist/esm/call.js CHANGED
@@ -9,7 +9,7 @@ import { MAKER_DEFAULT_POLICY, TAKER_DEFAULT_POLICY } from './constants/fee';
9
9
  import { fetchMarket } from './apis/market';
10
10
  import { parsePrice } from './utils/prices';
11
11
  import { fromPrice, invertPrice } from './utils/tick';
12
- import { getExpectedOutput } from './view';
12
+ import { getExpectedInput, getExpectedOutput } from './view';
13
13
  import { toBookId } from './utils/book-id';
14
14
  import { fetchIsApprovedForAll } from './utils/approval';
15
15
  import { decorator } from './utils/decorator';
@@ -34,7 +34,7 @@ import { applyPercent } from './utils/bigint';
34
34
  * outputToken: '0x0000000000000000000000000000000000000000'
35
35
  * })
36
36
  */
37
- export const openMarket = decorator(async ({ chainId, inputToken, outputToken, }) => {
37
+ export const openMarket = decorator(async ({ chainId, inputToken, outputToken, options, }) => {
38
38
  const market = await fetchMarket(chainId, [inputToken, outputToken]);
39
39
  const isBid = isAddressEqual(market.quote.address, inputToken);
40
40
  if ((isBid && !market.bidBookOpen) || (!isBid && !market.askBookOpen)) {
@@ -47,9 +47,9 @@ export const openMarket = decorator(async ({ chainId, inputToken, outputToken, }
47
47
  [
48
48
  {
49
49
  key: {
50
- base: inputToken,
50
+ base: outputToken,
51
51
  unit,
52
- quote: outputToken,
52
+ quote: inputToken,
53
53
  makerPolicy: MAKER_DEFAULT_POLICY.value,
54
54
  hooks: zeroAddress,
55
55
  takerPolicy: TAKER_DEFAULT_POLICY.value,
@@ -59,7 +59,7 @@ export const openMarket = decorator(async ({ chainId, inputToken, outputToken, }
59
59
  ],
60
60
  getDeadlineTimestampInSeconds(),
61
61
  ],
62
- });
62
+ }, options?.gasLimit);
63
63
  }
64
64
  return undefined;
65
65
  });
@@ -84,7 +84,7 @@ export const openMarket = decorator(async ({ chainId, inputToken, outputToken, }
84
84
  *
85
85
  * const signature = await signERC20Permit({
86
86
  * chainId: 421614,
87
- * account: privateKeyToAccount('0x...'),
87
+ * walletClient,
88
88
  * token: '0x00bfd44e79fb7f6dd5887a9426c8ef85a0cd23e0',
89
89
  * amount: '100.123'
90
90
  * })
@@ -114,24 +114,27 @@ export const openMarket = decorator(async ({ chainId, inputToken, outputToken, }
114
114
  export const limitOrder = decorator(async ({ chainId, userAddress, inputToken, outputToken, amount, price, options, }) => {
115
115
  const market = await fetchMarket(chainId, [inputToken, outputToken]);
116
116
  const isBid = isAddressEqual(market.quote.address, inputToken);
117
+ const [inputCurrency, outputCurrency] = isBid
118
+ ? [market.quote, market.base]
119
+ : [market.base, market.quote];
117
120
  if ((isBid && !market.bidBookOpen) || (!isBid && !market.askBookOpen)) {
118
121
  throw new Error(`
119
122
  Open the market before placing a limit order.
120
123
  import { openMarket } from '@clober/v2-sdk'
121
124
 
122
- const transaction = await openMarket(
123
- ${chainId},
124
- '${inputToken}',
125
- '${outputToken}',
126
- )
125
+ const transaction = await openMarket({
126
+ chainId: ${chainId},
127
+ inputToken: '${inputToken}',
128
+ outputToken: '${outputToken}',
129
+ })
127
130
  `);
128
131
  }
129
132
  const rawPrice = parsePrice(Number(price), market.quote.decimals, market.base.decimals);
130
133
  const tick = isBid ? fromPrice(rawPrice) : fromPrice(invertPrice(rawPrice));
131
134
  const tokensToSettle = [inputToken, outputToken].filter((address) => !isAddressEqual(address, zeroAddress));
132
- const quoteAmount = parseUnits(amount, isBid ? market.quote.decimals : market.base.decimals);
135
+ const quoteAmount = parseUnits(amount, inputCurrency.decimals);
133
136
  const [unit, { spendAmount, bookId }] = await Promise.all([
134
- calculateUnit(chainId, isBid ? market.quote : market.base),
137
+ calculateUnit(chainId, inputCurrency),
135
138
  getExpectedOutput({
136
139
  chainId,
137
140
  inputToken,
@@ -174,16 +177,16 @@ export const limitOrder = decorator(async ({ chainId, userAddress, inputToken, o
174
177
  getDeadlineTimestampInSeconds(),
175
178
  ],
176
179
  value: isETH ? quoteAmount : 0n,
177
- }),
180
+ }, options?.gasLimit),
178
181
  result: {
179
182
  make: {
180
- amount: formatUnits(quoteAmount, isBid ? market.quote.decimals : market.base.decimals),
181
- currency: isBid ? market.quote : market.base,
183
+ amount: formatUnits(quoteAmount, inputCurrency.decimals),
184
+ currency: inputCurrency,
182
185
  direction: 'in',
183
186
  },
184
187
  take: {
185
188
  amount: '0',
186
- currency: isBid ? market.base : market.quote,
189
+ currency: outputCurrency,
187
190
  direction: 'out',
188
191
  },
189
192
  },
@@ -215,16 +218,16 @@ export const limitOrder = decorator(async ({ chainId, userAddress, inputToken, o
215
218
  getDeadlineTimestampInSeconds(),
216
219
  ],
217
220
  value: isETH ? quoteAmount : 0n,
218
- }),
221
+ }, options?.gasLimit),
219
222
  result: {
220
223
  make: {
221
- amount: formatUnits(quoteAmount, isBid ? market.quote.decimals : market.base.decimals),
222
- currency: isBid ? market.quote : market.base,
224
+ amount: formatUnits(quoteAmount, inputCurrency.decimals),
225
+ currency: inputCurrency,
223
226
  direction: 'in',
224
227
  },
225
228
  take: {
226
229
  amount: spendAmount,
227
- currency: isBid ? market.base : market.quote,
230
+ currency: outputCurrency,
228
231
  direction: 'out',
229
232
  },
230
233
  },
@@ -233,25 +236,29 @@ export const limitOrder = decorator(async ({ chainId, userAddress, inputToken, o
233
236
  });
234
237
  /**
235
238
  * Executes a market order on the specified chain for trading tokens.
239
+ * If only `amountIn` is provided, spend the specified amount of input tokens.
240
+ * If `amountIn` and `amountOut` are provided, take the appropriate amount of output tokens with the specified input amount.
236
241
  *
237
242
  * @param {CHAIN_IDS} chainId The chain ID.
238
243
  * @param {`0x${string}`} userAddress The Ethereum address of the user placing the order.
239
244
  * @param {`0x${string}`} inputToken The address of the token to be used as input.
240
245
  * @param {`0x${string}`} outputToken The address of the token to be received as output.
241
- * @param {string} amount The amount of input tokens for the order.
242
- * @param {Object} [options] Optional parameters for the limit order.
246
+ * @param {string} amountIn The amount of input tokens for the order to spend.
247
+ * @param {string} amountOut The amount of output tokens for the order to take.
248
+ * @param {Object} [options] Optional parameters for the market order.
243
249
  * @param {PermitSignature} [options.signature] The permit signature for token approval.
244
250
  * @param {string} [options.rpcUrl] The RPC URL of the blockchain.
245
- * @param {string} [options.limitPrice] The upper bound price to tolerate for the market bid, or the lower bound price to tolerate for the market ask.
246
- * if the limit price is not provided, unlimited slippage is allowed.
247
- * @returns {Promise<Transaction>} Promise resolving to the transaction object representing the limit order.
251
+ * @param {number} [options.slippage] The maximum slippage percentage allowed for the order.
252
+ * if the slippage is not provided, unlimited slippage is allowed.
253
+ * @returns {Promise<{ transaction: Transaction, result: { spend: CurrencyFlow, take: CurrencyFlow } }>}
254
+ * Promise resolving to the transaction object representing the market order with the result of the order.
248
255
  * @example
249
256
  * import { signERC20Permit, marketOrder } from '@clober/v2-sdk'
250
257
  * import { privateKeyToAccount } from 'viem/accounts'
251
258
  *
252
259
  * const signature = await signERC20Permit({
253
260
  * chainId: 421614,
254
- * account: privateKeyToAccount('0x...'),
261
+ * walletClient,
255
262
  * token: '0x00bfd44e79fb7f6dd5887a9426c8ef85a0cd23e0',
256
263
  * amount: '100.123'
257
264
  * })
@@ -265,21 +272,15 @@ export const limitOrder = decorator(async ({ chainId, userAddress, inputToken, o
265
272
  * options: { signature }
266
273
  * })
267
274
  *
268
- * @example
269
- * import { marketOrder } from '@clober/v2-sdk'
270
- *
271
- * const transaction = await limitOrder(
272
- * chainId: 421614,
273
- * userAddress: '0xF8c1869Ecd4df136693C45EcE1b67f85B6bDaE69
274
- * inputToken: '0x0000000000000000000000000000000000000000',
275
- * outputToken: '0x00bfd44e79fb7f6dd5887a9426c8ef85a0cd23e0',
276
- * options: '0.13', // 0.13 ETH
277
- * )
278
275
  */
279
- export const marketOrder = decorator(async ({ chainId, userAddress, inputToken, outputToken, amount, options, }) => {
276
+ export const marketOrder = decorator(async ({ chainId, userAddress, inputToken, outputToken, amountIn, amountOut, options, }) => {
280
277
  const market = await fetchMarket(chainId, [inputToken, outputToken]);
281
- const isBid = isAddressEqual(market.quote.address, inputToken);
282
- if ((isBid && !market.bidBookOpen) || (!isBid && !market.askBookOpen)) {
278
+ const isTakingBid = isAddressEqual(market.base.address, inputToken);
279
+ const [inputCurrency, outputCurrency] = isTakingBid
280
+ ? [market.base, market.quote]
281
+ : [market.quote, market.base];
282
+ if ((isTakingBid && !market.bidBookOpen) ||
283
+ (!isTakingBid && !market.askBookOpen)) {
283
284
  throw new Error(`
284
285
  Open the market before placing a market order.
285
286
  import { openMarket } from '@clober/v2-sdk'
@@ -291,50 +292,130 @@ export const marketOrder = decorator(async ({ chainId, userAddress, inputToken,
291
292
  )
292
293
  `);
293
294
  }
294
- const rawLimitPrice = parsePrice(Number(options?.limitPrice ?? '0'), market.quote.decimals, market.base.decimals);
295
295
  const tokensToSettle = [inputToken, outputToken].filter((address) => !isAddressEqual(address, zeroAddress));
296
- const quoteAmount = parseUnits(amount, isBid ? market.quote.decimals : market.base.decimals);
297
- const { bookId, takenAmount } = await getExpectedOutput({
298
- chainId,
299
- inputToken,
300
- outputToken,
301
- amountIn: amount,
302
- options: {
303
- ...options,
304
- // todo: pass limit price
305
- },
306
- });
307
296
  const isETH = isAddressEqual(inputToken, zeroAddress);
308
- const permitParamsList = options?.signature && !isETH
309
- ? [
310
- {
311
- token: inputToken,
312
- permitAmount: quoteAmount,
313
- signature: options.signature,
297
+ if (amountIn && !amountOut) {
298
+ const { bookId, takenAmount, spendAmount } = await getExpectedOutput({
299
+ chainId,
300
+ inputToken,
301
+ outputToken,
302
+ amountIn,
303
+ options: {
304
+ ...options,
305
+ // don't need to check limit price for market order
314
306
  },
315
- ]
316
- : [];
317
- return buildTransaction(chainId, {
318
- chain: CHAIN_MAP[chainId],
319
- account: userAddress,
320
- address: CONTRACT_ADDRESSES[chainId].Controller,
321
- abi: CONTROLLER_ABI,
322
- functionName: 'take',
323
- args: [
324
- [
325
- {
326
- id: bookId,
327
- limitPrice: isBid ? invertPrice(rawLimitPrice) : rawLimitPrice,
328
- quoteAmount: takenAmount,
329
- hookData: zeroHash,
307
+ });
308
+ const baseAmount = parseUnits(amountIn, inputCurrency.decimals);
309
+ return {
310
+ transaction: await buildTransaction(chainId, {
311
+ chain: CHAIN_MAP[chainId],
312
+ account: userAddress,
313
+ address: CONTRACT_ADDRESSES[chainId].Controller,
314
+ abi: CONTROLLER_ABI,
315
+ functionName: 'spend',
316
+ args: [
317
+ [
318
+ {
319
+ id: bookId,
320
+ limitPrice: 0n,
321
+ baseAmount,
322
+ minQuoteAmount: options?.slippage
323
+ ? applyPercent(parseUnits(takenAmount, outputCurrency.decimals), 100 - options.slippage)
324
+ : 0n,
325
+ hookData: zeroHash,
326
+ },
327
+ ],
328
+ tokensToSettle,
329
+ options?.signature && !isETH
330
+ ? [
331
+ {
332
+ token: inputToken,
333
+ permitAmount: baseAmount,
334
+ signature: options.signature,
335
+ },
336
+ ]
337
+ : [],
338
+ getDeadlineTimestampInSeconds(),
339
+ ],
340
+ value: isETH ? baseAmount : 0n,
341
+ }, options?.gasLimit),
342
+ result: {
343
+ spend: {
344
+ amount: spendAmount,
345
+ currency: inputCurrency,
346
+ direction: 'in',
330
347
  },
331
- ],
332
- tokensToSettle,
333
- permitParamsList,
334
- getDeadlineTimestampInSeconds(),
335
- ],
336
- value: isETH ? quoteAmount : 0n,
337
- });
348
+ take: {
349
+ amount: takenAmount,
350
+ currency: outputCurrency,
351
+ direction: 'out',
352
+ },
353
+ },
354
+ };
355
+ }
356
+ else if (amountIn && amountOut) {
357
+ const { bookId, spendAmount, takenAmount } = await getExpectedInput({
358
+ chainId,
359
+ inputToken,
360
+ outputToken,
361
+ amountOut,
362
+ options: {
363
+ ...options,
364
+ // don't need to check limit price for market order
365
+ },
366
+ });
367
+ const quoteAmount = parseUnits(amountOut, outputCurrency.decimals);
368
+ const baseAmount = parseUnits(amountIn ?? spendAmount, inputCurrency.decimals);
369
+ return {
370
+ transaction: await buildTransaction(chainId, {
371
+ chain: CHAIN_MAP[chainId],
372
+ account: userAddress,
373
+ address: CONTRACT_ADDRESSES[chainId].Controller,
374
+ abi: CONTROLLER_ABI,
375
+ functionName: 'take',
376
+ args: [
377
+ [
378
+ {
379
+ id: bookId,
380
+ limitPrice: 0n,
381
+ quoteAmount,
382
+ maxBaseAmount: options?.slippage
383
+ ? applyPercent(baseAmount, 100 + options.slippage)
384
+ : 2n ** 256n - 1n,
385
+ hookData: zeroHash,
386
+ },
387
+ ],
388
+ tokensToSettle,
389
+ options?.signature && !isETH
390
+ ? [
391
+ {
392
+ token: inputToken,
393
+ permitAmount: baseAmount,
394
+ signature: options.signature,
395
+ },
396
+ ]
397
+ : [],
398
+ getDeadlineTimestampInSeconds(),
399
+ ],
400
+ value: isETH ? baseAmount : 0n,
401
+ }, options?.gasLimit),
402
+ result: {
403
+ spend: {
404
+ amount: spendAmount,
405
+ currency: inputCurrency,
406
+ direction: 'in',
407
+ },
408
+ take: {
409
+ amount: takenAmount,
410
+ currency: outputCurrency,
411
+ direction: 'out',
412
+ },
413
+ },
414
+ };
415
+ }
416
+ else {
417
+ throw new Error('Either amountIn or amountOut must be provided');
418
+ }
338
419
  });
339
420
  /**
340
421
  * Claims specified open order for settlement.
@@ -398,17 +479,17 @@ export const claimOrder = decorator(async ({ chainId, userAddress, id, options,
398
479
  * ids: openOrders.map((order) => order.id)
399
480
  * )
400
481
  */
401
- export const claimOrders = decorator(async ({ chainId, userAddress, ids, }) => {
482
+ export const claimOrders = decorator(async ({ chainId, userAddress, ids, options, }) => {
402
483
  const isApprovedForAll = await fetchIsApprovedForAll(chainId, userAddress);
403
484
  if (!isApprovedForAll) {
404
485
  throw new Error(`
405
486
  Set ApprovalForAll before calling this function.
406
487
  import { setApprovalOfOpenOrdersForAll } from '@clober/v2-sdk'
407
488
 
408
- const hash = await setApprovalOfOpenOrdersForAll(
409
- ${chainId},
410
- privateKeyToAccount('0x...')
411
- )
489
+ const hash = await setApprovalOfOpenOrdersForAll({
490
+ chainId: ${chainId},
491
+ walletClient, // use viem
492
+ })
412
493
  `);
413
494
  }
414
495
  const orders = (await fetchOrders(chainId, ids.map((id) => BigInt(id)))).filter((order) => isAddressEqual(order.owner, userAddress) && order.claimable > 0n);
@@ -433,7 +514,7 @@ export const claimOrders = decorator(async ({ chainId, userAddress, ids, }) => {
433
514
  [],
434
515
  getDeadlineTimestampInSeconds(),
435
516
  ],
436
- }),
517
+ }, options?.gasLimit),
437
518
  result: orders
438
519
  .map((order) => {
439
520
  const amount = quoteToBase(order.tick, order.unit * order.claimable, false);
@@ -514,17 +595,17 @@ export const cancelOrder = decorator(async ({ chainId, userAddress, id, options,
514
595
  * ids: openOrders.map((order) => order.id)
515
596
  * })
516
597
  */
517
- export const cancelOrders = decorator(async ({ chainId, userAddress, ids, }) => {
598
+ export const cancelOrders = decorator(async ({ chainId, userAddress, ids, options, }) => {
518
599
  const isApprovedForAll = await fetchIsApprovedForAll(chainId, userAddress);
519
600
  if (!isApprovedForAll) {
520
601
  throw new Error(`
521
602
  Set ApprovalForAll before calling this function.
522
603
  import { setApprovalOfOpenOrdersForAll } from '@clober/v2-sdk'
523
604
 
524
- const hash = await setApprovalOfOpenOrdersForAll(
525
- ${chainId},
526
- privateKeyToAccount('0x...')
527
- )
605
+ const hash = await setApprovalOfOpenOrdersForAll({
606
+ chainId: ${chainId},
607
+ walletClient, // use viem
608
+ })
528
609
  `);
529
610
  }
530
611
  const orders = (await fetchOrders(chainId, ids.map((id) => BigInt(id)))).filter((order) => isAddressEqual(order.owner, userAddress) && order.open > 0n);
@@ -550,7 +631,7 @@ export const cancelOrders = decorator(async ({ chainId, userAddress, ids, }) =>
550
631
  [],
551
632
  getDeadlineTimestampInSeconds(),
552
633
  ],
553
- }),
634
+ }, options?.gasLimit),
554
635
  result: orders
555
636
  .map((order) => {
556
637
  const amount = applyPercent(order.unit * order.open, 100 +
@@ -1 +1 @@
1
- {"version":3,"file":"call.js","sourceRoot":"","sources":["../../src/call.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"call.js","sourceRoot":"","sources":["../../src/call.ts"],"names":[],"mappings":"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"}
@@ -64,18 +64,6 @@ const _abi = [
64
64
  * @returns {Promise<PermitSignature>} Promise resolving to the permit signature.
65
65
  * @example
66
66
  * import { signERC20Permit } from '@clober/v2-sdk'
67
- * import { privateKeyToAccount } from 'viem/accounts'
68
- *
69
- * const { deadline, r, s, v } = await signERC20Permit({
70
- * chainId: 421614,
71
- * account: privateKeyToAccount('0x...')
72
- * token: '0x00bfd44e79fb7f6dd5887a9426c8ef85a0cd23e0',
73
- * amount: '1000.123', // spend 1000.123 USDC
74
- * })
75
- *
76
- * @example
77
- * import { signERC20Permit } from '@clober/v2-sdk'
78
- * import { mnemonicToAccount } from 'viem/accounts'
79
67
  *
80
68
  * const walletClient = createWalletClient({
81
69
  * chain: arbitrumSepolia,
@@ -1 +1 @@
1
- {"version":3,"file":"signature.js","sourceRoot":"","sources":["../../src/signature.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signature.js","sourceRoot":"","sources":["../../src/signature.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"type.js","sourceRoot":"","sources":["../../src/type.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAoD7C,MAAM,CAAN,IAAY,mBAaX;AAbD,WAAY,mBAAmB;IAC7B,uCAAgB,CAAA;IAChB,0CAAmB,CAAA;IACnB,yCAAkB,CAAA;IAClB,yCAAkB,CAAA;IAClB,6CAAsB,CAAA;IACtB,4CAAqB,CAAA;IACrB,qCAAc,CAAA;IACd,sCAAe,CAAA;IACf,uCAAgB,CAAA;IAChB,sCAAe,CAAA;IACf,oCAAa,CAAA;IACb,qCAAc,CAAA;AAChB,CAAC,EAbW,mBAAmB,KAAnB,mBAAmB,QAa9B"}
1
+ {"version":3,"file":"type.js","sourceRoot":"","sources":["../../src/type.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAqD7C,MAAM,CAAN,IAAY,mBAaX;AAbD,WAAY,mBAAmB;IAC7B,uCAAgB,CAAA;IAChB,0CAAmB,CAAA;IACnB,yCAAkB,CAAA;IAClB,yCAAkB,CAAA;IAClB,6CAAsB,CAAA;IACtB,4CAAqB,CAAA;IACrB,qCAAc,CAAA;IACd,sCAAe,CAAA;IACf,uCAAgB,CAAA;IAChB,sCAAe,CAAA;IACf,oCAAa,CAAA;IACb,qCAAc,CAAA;AAChB,CAAC,EAbW,mBAAmB,KAAnB,mBAAmB,QAa9B"}
@@ -1,14 +1,15 @@
1
1
  import { encodeFunctionData, } from 'viem';
2
2
  import { cachedPublicClients } from '../constants/client';
3
- export const buildTransaction = async (chainId, args) => {
3
+ export const buildTransaction = async (chainId, args, gasLimit) => {
4
4
  const data = encodeFunctionData(args);
5
5
  const [gas, gasPrice] = await Promise.all([
6
- cachedPublicClients[chainId].estimateGas({
7
- account: args.account,
8
- data,
9
- to: args.address,
10
- value: args.value || 0n,
11
- }),
6
+ gasLimit ??
7
+ cachedPublicClients[chainId].estimateGas({
8
+ account: args.account,
9
+ data,
10
+ to: args.address,
11
+ value: args.value || 0n,
12
+ }),
12
13
  cachedPublicClients[chainId].getGasPrice(),
13
14
  ]);
14
15
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"build-transaction.js","sourceRoot":"","sources":["../../../src/utils/build-transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,GAGnB,MAAM,MAAM,CAAA;AAGb,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAEzD,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,OAAkB,EAClB,IAA0D,EACpC,EAAE;IACxB,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACrC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACxC,mBAAmB,CAAC,OAAO,CAAE,CAAC,WAAW,CAAC;YACxC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI;YACJ,EAAE,EAAE,IAAI,CAAC,OAAO;YAChB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;SACxB,CAAC;QACF,mBAAmB,CAAC,OAAO,CAAE,CAAC,WAAW,EAAE;KAC5C,CAAC,CAAA;IACF,OAAO;QACL,GAAG;QACH,QAAQ;QACR,IAAI;QACJ,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;QACvB,EAAE,EAAE,IAAI,CAAC,OAAO;QAChB,IAAI,EAAE,IAAI,CAAC,OAAO;KACnB,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"build-transaction.js","sourceRoot":"","sources":["../../../src/utils/build-transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,GAGnB,MAAM,MAAM,CAAA;AAGb,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAEzD,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,OAAkB,EAClB,IAA0D,EAC1D,QAAiB,EACK,EAAE;IACxB,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACrC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACxC,QAAQ;YACN,mBAAmB,CAAC,OAAO,CAAE,CAAC,WAAW,CAAC;gBACxC,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,IAAI;gBACJ,EAAE,EAAE,IAAI,CAAC,OAAO;gBAChB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;aACxB,CAAC;QACJ,mBAAmB,CAAC,OAAO,CAAE,CAAC,WAAW,EAAE;KAC5C,CAAC,CAAA;IACF,OAAO;QACL,GAAG;QACH,QAAQ;QACR,IAAI;QACJ,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;QACvB,EAAE,EAAE,IAAI,CAAC,OAAO;QAChB,IAAI,EAAE,IAAI,CAAC,OAAO;KACnB,CAAA;AACH,CAAC,CAAA"}
package/dist/esm/view.js CHANGED
@@ -1,10 +1,11 @@
1
- import { formatUnits, isAddressEqual, parseUnits } from 'viem';
1
+ import { formatUnits, getAddress, isAddressEqual, parseUnits } from 'viem';
2
2
  import { fetchMarket } from './apis/market';
3
3
  import { parsePrice } from './utils/prices';
4
4
  import { MAX_PRICE } from './constants/price';
5
5
  import { fetchOpenOrder, fetchOpenOrders } from './apis/open-order';
6
6
  import { decorator } from './utils/decorator';
7
7
  import { fetchChartLogs, fetchLatestChartLog } from './apis/chart-logs';
8
+ import { getMarketId } from './utils/market';
8
9
  /**
9
10
  * Get market information by chain id and token addresses
10
11
  * @param chainId - chain id from {@link CHAIN_IDS}
@@ -207,4 +208,24 @@ export const getLatestChartLog = decorator(async ({ chainId, quote, base, }) =>
207
208
  export const getChartLogs = decorator(async ({ chainId, quote, base, intervalType, from, to, }) => {
208
209
  return fetchChartLogs(chainId, `${base}/${quote}`, intervalType, from, to);
209
210
  });
211
+ /**
212
+ * Retrieves the quote token address for a given chain and a pair of tokens.
213
+ *
214
+ * @param chainId - chain id from {@link CHAIN_IDS}
215
+ * @param token0 - token0 address
216
+ * @param token1 - token1 address
217
+ * @returns {string} The address of the quote token.
218
+ *
219
+ * @example
220
+ * import { getQuoteToken } from '@clober/v2-sdk'
221
+ *
222
+ * const quote = await getQuoteToken({
223
+ * chainId: 421614,
224
+ * token0: '0x00bfd44e79fb7f6dd5887a9426c8ef85a0cd23e0',
225
+ * token1: '0x0000000000000000000000000000000000000000',
226
+ * })
227
+ */
228
+ export const getQuoteToken = ({ chainId, token0, token1, }) => {
229
+ return getAddress(getMarketId(chainId, [token0, token1]).quoteTokenAddress);
230
+ };
210
231
  //# sourceMappingURL=view.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"view.js","sourceRoot":"","sources":["../../src/view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"view.js","sourceRoot":"","sources":["../../src/view.ts"],"names":[],"mappings":"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"}