timelock-sdk 0.0.152 → 0.0.153

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/client.d.cts CHANGED
@@ -1,3 +1,3 @@
1
- import "./uniswapMathLens-BvytoF0M.cjs";
2
- import { $ as ExerciseOptionEvent, At as TimelockProvider, Dt as OptionData, Et as useExerciseOption, G as useUserOperators, J as useClosedUserPerps, K as useOperatorPerms, Mt as useTimelockConfig, Ot as useActiveUserOptions, Q as useMintPerp, Tt as useMarketData, W as useSetOperatorPerms, X as usePerpsOperator, Y as useUserPerps, Z as useClosePerp, _ as useCurrentTick, a as useTokenData, at as useOptionPremium, b as UniswapPoolData, c as batchGetAmountsFromLiquidity, ct as useMaxPositionSize, d as useLiquidityBlocks, et as ExtendEvent, f as useBurnLiquidity, g as usePriceAtTick, h as usePriceAtSqrtPriceX96, i as TokenData, it as useExtendOption, jt as useCurrentMarket, kt as useClosedUserOptions, l as useMintLiquidity, m as usePriceHistory, n as useApproval, nt as OptionEvent, o as useVaultTVL, ot as useOptionPnl, p as useMarketPriceHistory, q as useActiveUserPerps, r as useTokenBalance, rt as useOptionTimeline, s as useVaultData, st as useMintOption, t as useLens, tt as MintOptionEvent, u as LiquidityBlockData, v as useCurrentPrice, wt as useMarketVolume, x as usePoolData, y as PoolKey } from "./client-D3bjMcG6.cjs";
1
+ import "./uniswapMathLens-td1h0_OB.cjs";
2
+ import { $ as ExerciseOptionEvent, At as TimelockProvider, Dt as OptionData, Et as useExerciseOption, G as useUserOperators, J as useClosedUserPerps, K as useOperatorPerms, Mt as useTimelockConfig, Ot as useActiveUserOptions, Q as useMintPerp, Tt as useMarketData, W as useSetOperatorPerms, X as usePerpsOperator, Y as useUserPerps, Z as useClosePerp, _ as useCurrentTick, a as useTokenData, at as useOptionPremium, b as UniswapPoolData, c as batchGetAmountsFromLiquidity, ct as useMaxPositionSize, d as useLiquidityBlocks, et as ExtendEvent, f as useBurnLiquidity, g as usePriceAtTick, h as usePriceAtSqrtPriceX96, i as TokenData, it as useExtendOption, jt as useCurrentMarket, kt as useClosedUserOptions, l as useMintLiquidity, m as usePriceHistory, n as useApproval, nt as OptionEvent, o as useVaultTVL, ot as useOptionPnl, p as useMarketPriceHistory, q as useActiveUserPerps, r as useTokenBalance, rt as useOptionTimeline, s as useVaultData, st as useMintOption, t as useLens, tt as MintOptionEvent, u as LiquidityBlockData, v as useCurrentPrice, wt as useMarketVolume, x as usePoolData, y as PoolKey } from "./client-BqydZjhA.cjs";
3
3
  export { ExerciseOptionEvent, ExtendEvent, LiquidityBlockData, MintOptionEvent, OptionData, OptionEvent, PoolKey, TimelockProvider, TokenData, UniswapPoolData, batchGetAmountsFromLiquidity, useActiveUserOptions, useActiveUserPerps, useApproval, useBurnLiquidity, useClosePerp, useClosedUserOptions, useClosedUserPerps, useCurrentMarket, useCurrentPrice, useCurrentTick, useExerciseOption, useExtendOption, useLens, useLiquidityBlocks, useMarketData, useMarketPriceHistory, useMarketVolume, useMaxPositionSize, useMintLiquidity, useMintOption, useMintPerp, useOperatorPerms, useOptionPnl, useOptionPremium, useOptionTimeline, usePerpsOperator, usePoolData, usePriceAtSqrtPriceX96, usePriceAtTick, usePriceHistory, useSetOperatorPerms, useTimelockConfig, useTokenBalance, useTokenData, useUserOperators, useUserPerps, useVaultData, useVaultTVL };
package/dist/client.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- import "./uniswapMathLens-D5k9_mba.js";
2
- import { $ as ExerciseOptionEvent, At as TimelockProvider, Dt as OptionData, Et as useExerciseOption, G as useUserOperators, J as useClosedUserPerps, K as useOperatorPerms, Mt as useTimelockConfig, Ot as useActiveUserOptions, Q as useMintPerp, Tt as useMarketData, W as useSetOperatorPerms, X as usePerpsOperator, Y as useUserPerps, Z as useClosePerp, _ as useCurrentTick, a as useTokenData, at as useOptionPremium, b as UniswapPoolData, c as batchGetAmountsFromLiquidity, ct as useMaxPositionSize, d as useLiquidityBlocks, et as ExtendEvent, f as useBurnLiquidity, g as usePriceAtTick, h as usePriceAtSqrtPriceX96, i as TokenData, it as useExtendOption, jt as useCurrentMarket, kt as useClosedUserOptions, l as useMintLiquidity, m as usePriceHistory, n as useApproval, nt as OptionEvent, o as useVaultTVL, ot as useOptionPnl, p as useMarketPriceHistory, q as useActiveUserPerps, r as useTokenBalance, rt as useOptionTimeline, s as useVaultData, st as useMintOption, t as useLens, tt as MintOptionEvent, u as LiquidityBlockData, v as useCurrentPrice, wt as useMarketVolume, x as usePoolData, y as PoolKey } from "./client-C_K2WYRG.js";
1
+ import "./uniswapMathLens-2KoUe3_5.js";
2
+ import { $ as ExerciseOptionEvent, At as TimelockProvider, Dt as OptionData, Et as useExerciseOption, G as useUserOperators, J as useClosedUserPerps, K as useOperatorPerms, Mt as useTimelockConfig, Ot as useActiveUserOptions, Q as useMintPerp, Tt as useMarketData, W as useSetOperatorPerms, X as usePerpsOperator, Y as useUserPerps, Z as useClosePerp, _ as useCurrentTick, a as useTokenData, at as useOptionPremium, b as UniswapPoolData, c as batchGetAmountsFromLiquidity, ct as useMaxPositionSize, d as useLiquidityBlocks, et as ExtendEvent, f as useBurnLiquidity, g as usePriceAtTick, h as usePriceAtSqrtPriceX96, i as TokenData, it as useExtendOption, jt as useCurrentMarket, kt as useClosedUserOptions, l as useMintLiquidity, m as usePriceHistory, n as useApproval, nt as OptionEvent, o as useVaultTVL, ot as useOptionPnl, p as useMarketPriceHistory, q as useActiveUserPerps, r as useTokenBalance, rt as useOptionTimeline, s as useVaultData, st as useMintOption, t as useLens, tt as MintOptionEvent, u as LiquidityBlockData, v as useCurrentPrice, wt as useMarketVolume, x as usePoolData, y as PoolKey } from "./client-CbVaB9SD.js";
3
3
  export { ExerciseOptionEvent, ExtendEvent, LiquidityBlockData, MintOptionEvent, OptionData, OptionEvent, PoolKey, TimelockProvider, TokenData, UniswapPoolData, batchGetAmountsFromLiquidity, useActiveUserOptions, useActiveUserPerps, useApproval, useBurnLiquidity, useClosePerp, useClosedUserOptions, useClosedUserPerps, useCurrentMarket, useCurrentPrice, useCurrentTick, useExerciseOption, useExtendOption, useLens, useLiquidityBlocks, useMarketData, useMarketPriceHistory, useMarketVolume, useMaxPositionSize, useMintLiquidity, useMintOption, useMintPerp, useOperatorPerms, useOptionPnl, useOptionPremium, useOptionTimeline, usePerpsOperator, usePoolData, usePriceAtSqrtPriceX96, usePriceAtTick, usePriceHistory, useSetOperatorPerms, useTimelockConfig, useTokenBalance, useTokenData, useUserOperators, useUserPerps, useVaultData, useVaultTVL };
package/dist/client.js CHANGED
@@ -1,8 +1,8 @@
1
1
  'use client';
2
2
 
3
3
 
4
- import { i as erc20Abi$1, r as lensAbi, t as optionsMarketAbi } from "./optionsMarket-C_RhiADr.js";
5
- import { A as token1ToToken0, B as swappers, D as roundTick, F as getStateView, H as statelessStateViewAbi, I as getTimelockLens, L as getTimelockMarket, N as getPriceHistory, O as token0ToToken1, P as getErc20, b as getPriceAtSqrtPriceX96, f as wrapAmount, j as token1ToToken0AtTick, k as token0ToToken1AtTick, m as wrapPrice, r as EMPTY_ARRAY, t as getPayoutAtPrice, v as getAmountsFromLiquidity, x as getPriceAtTick, y as getNearestValidStrikeTick } from "./optionUtils-y7UljRiD.js";
4
+ import { i as erc20Abi$1, r as lensAbi, t as optionsMarketAbi } from "./optionsMarket-C83iT_EM.js";
5
+ import { A as token1ToToken0, B as swappers, D as roundTick, F as getStateView, H as statelessStateViewAbi, I as getTimelockLens, L as getTimelockMarket, N as getPriceHistory, O as token0ToToken1, P as getErc20, b as getPriceAtSqrtPriceX96, f as wrapAmount, j as token1ToToken0AtTick, k as token0ToToken1AtTick, m as wrapPrice, r as EMPTY_ARRAY, t as getPayoutAtPrice, v as getAmountsFromLiquidity, x as getPriceAtTick, y as getNearestValidStrikeTick } from "./optionUtils-DJ8kTxc_.js";
6
6
  import { t as singleOwnerVaultAbi } from "./singleOwnerVault-BJyEs_D_.js";
7
7
  import { encodeAbiParameters, encodeFunctionData, erc20Abi, maxUint256, zeroAddress } from "viem";
8
8
  import React, { createContext, useContext, useEffect, useMemo } from "react";
@@ -449,42 +449,14 @@ const useLens = () => {
449
449
  //#endregion
450
450
  //#region src/hooks/options/useMarketData.ts
451
451
  const useMarketData = (marketAddr) => {
452
- const { graphqlClient } = useTimelockConfig();
453
452
  const { timelockLens } = useLens();
454
- const { data } = useQuery({
455
- queryKey: ["marketData", (marketAddr === null || marketAddr === void 0 ? void 0 : marketAddr.toLowerCase()) || "--"],
456
- queryFn: async () => {
457
- const result = await graphqlClient.GetMarketData({ marketAddr: marketAddr.toLowerCase() });
458
- return {
459
- ...result.TimelockMarket[0],
460
- address: result.TimelockMarket[0].address,
461
- poolManager: result.TimelockMarket[0].poolManager,
462
- poolKey: {
463
- currency0: result.TimelockMarket[0].currency0,
464
- currency1: result.TimelockMarket[0].currency1,
465
- fee: result.TimelockMarket[0].fee,
466
- tickSpacing: result.TimelockMarket[0].tickSpacing,
467
- hooks: result.TimelockMarket[0].hooks
468
- },
469
- vault: result.TimelockMarket[0].vault,
470
- optionAsset: result.TimelockMarket[0].optionAsset,
471
- payoutAsset: result.TimelockMarket[0].payoutAsset
472
- };
473
- },
474
- enabled: !!marketAddr && !!graphqlClient
475
- });
476
- const { data: fallback } = useQuery({
477
- queryKey: ["marketData", marketAddr || "--"],
478
- queryFn: async () => {
479
- if (!marketAddr || !timelockLens) return void 0;
480
- return {
481
- ...await timelockLens.read.getMarketData([marketAddr]),
482
- tradersCount: void 0
483
- };
484
- },
485
- enabled: !!marketAddr && !!timelockLens
453
+ const { data } = useReadContract({
454
+ address: timelockLens === null || timelockLens === void 0 ? void 0 : timelockLens.address,
455
+ abi: lensAbi,
456
+ functionName: "getMarketData",
457
+ args: marketAddr ? [marketAddr] : void 0
486
458
  });
487
- return data || fallback || {};
459
+ return data || {};
488
460
  };
489
461
 
490
462
  //#endregion
@@ -741,7 +713,7 @@ const useMintOption = (marketAddr) => {
741
713
  const { timelockLens } = useLens();
742
714
  const { askForApproval } = useApproval();
743
715
  const { writeContractAsync } = useWriteContract();
744
- const mintOption = async ({ optionType, amount, duration, strikeTick, maxSteps }) => {
716
+ const mintOption = async ({ optionType, amount, duration, strikeTick, maxSteps = 100 }) => {
745
717
  if (!client || !address) throw new Error("Wallet not connected");
746
718
  if (!marketAddr) throw new Error("Market address not available");
747
719
  if (!timelockLens) throw new Error("Timelock lens not available");
@@ -749,7 +721,6 @@ const useMintOption = (marketAddr) => {
749
721
  if (!vault || !payoutAsset || optionAssetIsToken0 === void 0) throw new Error("Market data not available");
750
722
  const { data: { exact: currentTick } = {} } = await refetchCurrentTick();
751
723
  if (currentTick === void 0) throw new Error("Could not fetch current tick");
752
- maxSteps = maxSteps || 100;
753
724
  strikeTick = getNearestValidStrikeTick(optionType, optionAssetIsToken0, tickSpacing, currentTick, strikeTick);
754
725
  const [premium, protocolFee] = await getTimelockMarket(marketAddr, client).read.calculatePremium([
755
726
  optionType === "CALL" ? 0 : 1,
@@ -788,7 +759,8 @@ const useMintOption = (marketAddr) => {
788
759
  //#region src/hooks/options/useOptionPnl.ts
789
760
  const useOptionPnl = (option) => {
790
761
  const { marketAddr, optionType, strikeTick, positionSizeCurrent } = option;
791
- const { poolManager, poolKey, optionAssetIsToken0, payoutAssetDecimals, tickSpacing } = useMarketData(marketAddr);
762
+ const { poolManager, poolKey, optionAssetIsToken0, payoutAssetDecimals } = useMarketData(marketAddr);
763
+ const { tickSpacing } = usePoolData(poolManager, poolKey);
792
764
  const { currentPrice } = useCurrentPrice(poolManager, poolKey);
793
765
  const displayPnl = useMemo(() => {
794
766
  if (optionAssetIsToken0 === void 0 || currentPrice === void 0 || !payoutAssetDecimals) return void 0;