@velora-dex/widget 0.0.1 → 0.0.2

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 (61) hide show
  1. package/dist/components/web3/AccountButton.js +1 -1
  2. package/dist/components/web3/AccountButton.js.map +1 -1
  3. package/dist/components/widget/AppHeader/AppHeader.d.ts.map +1 -1
  4. package/dist/components/widget/AppHeader/AppHeader.js +29 -35
  5. package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
  6. package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.d.ts.map +1 -1
  7. package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js +0 -1
  8. package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js.map +1 -1
  9. package/dist/components/widget/TokenInput/index.d.ts.map +1 -1
  10. package/dist/components/widget/TokenInput/index.js +99 -110
  11. package/dist/components/widget/TokenInput/index.js.map +1 -1
  12. package/dist/components/widget/TokenInput/types.d.ts +1 -2
  13. package/dist/components/widget/TokenInput/types.d.ts.map +1 -1
  14. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts +1 -1
  15. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts.map +1 -1
  16. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js +52 -39
  17. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
  18. package/dist/hooks/useSDK.d.ts.map +1 -1
  19. package/dist/hooks/useSDK.js +43 -86
  20. package/dist/hooks/useSDK.js.map +1 -1
  21. package/dist/index.d.ts +2 -0
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +2 -1
  24. package/dist/index.js.map +1 -1
  25. package/dist/lib/utils/explorer.d.ts +0 -2
  26. package/dist/lib/utils/explorer.d.ts.map +1 -1
  27. package/dist/lib/utils/explorer.js +1 -4
  28. package/dist/lib/utils/explorer.js.map +1 -1
  29. package/dist/styles.css +0 -4
  30. package/dist/tokens/defaultTokens.js.map +1 -1
  31. package/dist/widget/index.d.ts.map +1 -1
  32. package/dist/widget/index.js +72 -85
  33. package/dist/widget/index.js.map +1 -1
  34. package/dist/widget/inputs/hooks/useTokenFromInputProps.d.ts +1 -3
  35. package/dist/widget/inputs/hooks/useTokenFromInputProps.d.ts.map +1 -1
  36. package/dist/widget/inputs/hooks/useTokenFromInputProps.js +54 -102
  37. package/dist/widget/inputs/hooks/useTokenFromInputProps.js.map +1 -1
  38. package/dist/widget/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
  39. package/dist/widget/inputs/hooks/useTokenToInputProps.js +43 -28
  40. package/dist/widget/inputs/hooks/useTokenToInputProps.js.map +1 -1
  41. package/package.json +1 -1
  42. package/dist/components/widget/AppHeader/ActivityButton.d.ts +0 -2
  43. package/dist/components/widget/AppHeader/ActivityButton.d.ts.map +0 -1
  44. package/dist/components/widget/AppHeader/ActivityButton.js +0 -46
  45. package/dist/components/widget/AppHeader/ActivityButton.js.map +0 -1
  46. package/dist/hooks/gas/config.d.ts +0 -6
  47. package/dist/hooks/gas/config.d.ts.map +0 -1
  48. package/dist/hooks/gas/config.js +0 -53
  49. package/dist/hooks/gas/config.js.map +0 -1
  50. package/dist/hooks/gas/types.d.ts +0 -42
  51. package/dist/hooks/gas/types.d.ts.map +0 -1
  52. package/dist/hooks/gas/useGasPrices.d.ts +0 -4
  53. package/dist/hooks/gas/useGasPrices.d.ts.map +0 -1
  54. package/dist/hooks/gas/useGasPrices.js +0 -106
  55. package/dist/hooks/gas/useGasPrices.js.map +0 -1
  56. package/dist/hooks/gas/utils.d.ts +0 -8
  57. package/dist/hooks/gas/utils.d.ts.map +0 -1
  58. package/dist/hooks/gas/utils.js +0 -21
  59. package/dist/hooks/gas/utils.js.map +0 -1
  60. package/dist/widget/inputs/hooks/types.d.ts +0 -4
  61. package/dist/widget/inputs/hooks/types.d.ts.map +0 -1
@@ -1,6 +1,6 @@
1
1
  import { d as distExports } from '../../../../../_virtual/index.js';
2
2
  import { useQuery, useQueryClient, QueryObserver } from '@tanstack/react-query';
3
- import 'react';
3
+ import { useRef, useLayoutEffect, useMemo } from 'react';
4
4
  import { assert } from 'ts-essentials';
5
5
  import { useDeltaSDK } from '../../../../useSDK.js';
6
6
  import { isMetaWithTimeStart } from '../bridge/utils.js';
@@ -28,8 +28,13 @@ function constructDeltaAuctionPollingQueryOptions({
28
28
  onAuctionFailure,
29
29
  onTimeoutGettingOrder
30
30
  }) {
31
+ const doneState = false;
32
+ const isMetaWithDoneState = (queryMeta) => {
33
+ return "doneState" in queryMeta && typeof queryMeta.doneState === "boolean";
34
+ };
31
35
  const meta = {
32
- startedQueryAt: Date.now()
36
+ startedQueryAt: Date.now(),
37
+ doneState
33
38
  };
34
39
  return {
35
40
  queryKey: [SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX, orderId],
@@ -44,18 +49,29 @@ function constructDeltaAuctionPollingQueryOptions({
44
49
  meta,
45
50
  refetchInterval: (query) => {
46
51
  const maybeOrder = query.state.data;
52
+ const queryMeta = query.options.meta;
53
+ const isWithDoneState = !!queryMeta && isMetaWithDoneState(queryMeta);
54
+ if (isWithDoneState && queryMeta.doneState) {
55
+ console.log("Shortcut return for refetchInterval");
56
+ return false;
57
+ }
47
58
  if (maybeOrder) onUpdatedAuction?.(maybeOrder);
48
59
  if (maybeOrder && DeltaOrderStatusChecker.completed.has(maybeOrder.status)) {
49
60
  if (isExecutedDeltaAuction(maybeOrder)) {
50
61
  onAuctionSuccess?.(maybeOrder);
62
+ if (isWithDoneState) {
63
+ queryMeta.doneState = true;
64
+ }
51
65
  return false;
52
66
  }
53
67
  if (isFailedDeltaAuction(maybeOrder) || isOrderExpired(maybeOrder)) {
54
68
  onAuctionFailure?.(maybeOrder);
69
+ if (isWithDoneState) {
70
+ queryMeta.doneState = true;
71
+ }
55
72
  return false;
56
73
  }
57
74
  }
58
- const queryMeta = query.options.meta;
59
75
  if (maybeOrder === null && queryMeta && isMetaWithTimeStart(queryMeta)) {
60
76
  const elapsed = Date.now() - queryMeta.startedQueryAt;
61
77
  if (elapsed > LOOK_FOR_ORDER_TIMEOUT) {
@@ -63,6 +79,9 @@ function constructDeltaAuctionPollingQueryOptions({
63
79
  onTimeoutGettingOrder?.({
64
80
  id: orderId
65
81
  });
82
+ if (isWithDoneState) {
83
+ queryMeta.doneState = true;
84
+ }
66
85
  return false;
67
86
  }
68
87
  }
@@ -71,52 +90,46 @@ function constructDeltaAuctionPollingQueryOptions({
71
90
  enabled: !!orderId && enabled
72
91
  };
73
92
  }
74
- function useWatchDeltaAuction(t0) {
75
- const $ = distExports.c(9);
93
+ function useWatchDeltaAuction({
94
+ orderId,
95
+ enabled = true,
96
+ onAuctionSuccess,
97
+ onAuctionFailure,
98
+ onUpdatedAuction,
99
+ onTimeoutGettingOrder
100
+ }) {
76
101
  const {
77
- orderId,
78
- enabled: t1,
102
+ sdk
103
+ } = useDeltaSDK({
104
+ chainId: 1
105
+ });
106
+ const callbacksRef = useRef({
79
107
  onAuctionSuccess,
80
108
  onAuctionFailure,
81
109
  onUpdatedAuction,
82
110
  onTimeoutGettingOrder
83
- } = t0;
84
- const enabled = t1 === void 0 ? true : t1;
85
- let t2;
86
- if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
87
- t2 = {
88
- chainId: 1
111
+ });
112
+ useLayoutEffect(() => {
113
+ console.log("Recalculating callbacksRef");
114
+ callbacksRef.current = {
115
+ onAuctionSuccess,
116
+ onAuctionFailure,
117
+ onUpdatedAuction,
118
+ onTimeoutGettingOrder
89
119
  };
90
- $[0] = t2;
91
- } else {
92
- t2 = $[0];
93
- }
94
- const {
95
- sdk
96
- } = useDeltaSDK(t2);
97
- let t3;
98
- if ($[1] !== enabled || $[2] !== onAuctionFailure || $[3] !== onAuctionSuccess || $[4] !== onTimeoutGettingOrder || $[5] !== onUpdatedAuction || $[6] !== orderId || $[7] !== sdk.getDeltaOrderById) {
99
- t3 = constructDeltaAuctionPollingQueryOptions({
120
+ }, [onAuctionSuccess, onAuctionFailure, onUpdatedAuction, onTimeoutGettingOrder]);
121
+ const queryOptions = useMemo(() => {
122
+ console.log("Recalculating queryOptions");
123
+ return constructDeltaAuctionPollingQueryOptions({
100
124
  orderId,
101
125
  enabled,
102
126
  getAuction: sdk.getDeltaOrderById,
103
- onUpdatedAuction,
104
- onAuctionSuccess,
105
- onAuctionFailure,
106
- onTimeoutGettingOrder
127
+ onUpdatedAuction: callbacksRef.current.onUpdatedAuction,
128
+ onAuctionSuccess: callbacksRef.current.onAuctionSuccess,
129
+ onAuctionFailure: callbacksRef.current.onAuctionFailure,
130
+ onTimeoutGettingOrder: callbacksRef.current.onTimeoutGettingOrder
107
131
  });
108
- $[1] = enabled;
109
- $[2] = onAuctionFailure;
110
- $[3] = onAuctionSuccess;
111
- $[4] = onTimeoutGettingOrder;
112
- $[5] = onUpdatedAuction;
113
- $[6] = orderId;
114
- $[7] = sdk.getDeltaOrderById;
115
- $[8] = t3;
116
- } else {
117
- t3 = $[8];
118
- }
119
- const queryOptions = t3;
132
+ }, [orderId, enabled, sdk.getDeltaOrderById]);
120
133
  return useQuery(queryOptions);
121
134
  }
122
135
  function useEnsureDeltaOrderExecuted() {
@@ -1 +1 @@
1
- {"version":3,"file":"useWatchDeltaOrder.js","sources":["../../../../../../src/hooks/swap/prices/delta/queries/useWatchDeltaOrder.ts"],"sourcesContent":["import {\n QueryObserver,\n useQueries,\n useQuery,\n useQueryClient,\n type UseQueryOptions,\n type UseQueryResult,\n} from \"@tanstack/react-query\";\nimport { useMemo } from \"react\";\nimport { assert, type MarkOptional } from \"ts-essentials\";\nimport { useDeltaSDK } from \"@/hooks/useSDK\";\nimport type { DeltaOrderFromAPI } from \"./useDeltaOrders\";\nimport {\n isMetaWithTimeStart,\n type BridgedDepositResponseFailure,\n type BridgedDepositResponseSuccess,\n type GetBridgedDepositStatusInput,\n type RefetchMetaWithTiming,\n} from \"../bridge/utils\";\nimport type { BridgedDepositResponse } from \"../bridge/types\";\nimport { useBridgedDepositStatus } from \"../bridge/useBridgedDeposit\";\nimport type { DeltaAuction } from \"@velora-dex/sdk\";\nimport {\n DeltaOrderStatusChecker,\n isExecutedDeltaAuction,\n isFailedDeltaAuction,\n isOrderExpired,\n} from \"../orders/utils\";\nimport type { ExecutedDeltaAuction, FailedDeltaAuction } from \"../orders/types\";\n\n// ------------------------------------ Single Delta Auction -----------------------------------\n\nconst SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX = \"single_delta_auction\";\ntype SingleDeltaAuctionQueryKey = [\n base: typeof SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX,\n orderId?: string,\n];\n\nexport type MaybeVeloraDeltaAuction = DeltaOrderFromAPI | null; // null is when no such Order for orderId\n\ntype UseDeltaAuctionQueryOptions<TData = MaybeVeloraDeltaAuction> =\n UseQueryOptions<\n MaybeVeloraDeltaAuction,\n Error,\n TData,\n SingleDeltaAuctionQueryKey\n >;\n\nconst DELTA_ORDER_POLLING_INTERVAL = 3_000;\n\ntype ConstructDeltaAuctionPollingQueryOptionsInput = {\n orderId?: string;\n enabled?: boolean;\n getAuction(\n orderId: string,\n requestParams: { signal?: AbortSignal }\n ): Promise<MaybeVeloraDeltaAuction>;\n} & Pick<\n UseWatchMultiDeltaAuctions,\n | \"onAuctionSuccess\"\n | \"onAuctionFailure\"\n | \"onUpdatedAuction\"\n | \"onTimeoutGettingOrder\"\n>;\n\nconst LOOK_FOR_ORDER_TIMEOUT = 60_000;\n\nfunction constructDeltaAuctionPollingQueryOptions({\n orderId,\n enabled,\n getAuction,\n onUpdatedAuction,\n onAuctionSuccess,\n onAuctionFailure,\n onTimeoutGettingOrder,\n}: ConstructDeltaAuctionPollingQueryOptionsInput): Pick<\n UseDeltaAuctionQueryOptions<MaybeVeloraDeltaAuction>,\n \"queryKey\" | \"queryFn\" | \"meta\" | \"refetchInterval\" | \"enabled\"\n> {\n const meta: RefetchMetaWithTiming = { startedQueryAt: Date.now() };\n\n return {\n queryKey: [SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX, orderId],\n queryFn: ({ signal }) => {\n assert(orderId, \"orderId is required\");\n return getAuction(orderId, { signal });\n },\n meta,\n refetchInterval: (query) => {\n const maybeOrder = query.state.data;\n\n // refetchInterval is called on each render, regardless of queryOptions memoizations.\n // @TODO rework Watch Order logic to avoid callbacks inside refetchInterval,\n // or do away with these callbacks, they are unused currently.\n\n // Order could have an updated status during its lifecycle\n if (maybeOrder) onUpdatedAuction?.(maybeOrder);\n\n // Order done with one way or the other\n if (\n maybeOrder &&\n DeltaOrderStatusChecker.completed.has(maybeOrder.status)\n ) {\n // Crosschain Orders are considered executed when both srcChain and destChain are executed\n if (isExecutedDeltaAuction(maybeOrder)) {\n onAuctionSuccess?.(maybeOrder);\n return false; // stop polling\n }\n if (isFailedDeltaAuction(maybeOrder) || isOrderExpired(maybeOrder)) {\n onAuctionFailure?.(maybeOrder);\n return false; // stop polling\n }\n }\n\n const queryMeta = query.options.meta;\n if (maybeOrder === null && queryMeta && isMetaWithTimeStart(queryMeta)) {\n // no Order for this orderId for a long time\n const elapsed = Date.now() - queryMeta.startedQueryAt;\n if (elapsed > LOOK_FOR_ORDER_TIMEOUT) {\n assert(orderId, \"orderId is required\");\n onTimeoutGettingOrder?.({ id: orderId });\n return false; // stop polling after 1 minute\n }\n }\n\n return DELTA_ORDER_POLLING_INTERVAL; // default interval for both crosschain and singlechain Orders\n },\n enabled: !!orderId && enabled,\n };\n}\n\n// ----------------- Single Delta Query -----------------------------------\n\ntype UseWatchDeltaAuctionQueryInput = {\n orderId?: string;\n enabled?: boolean;\n onAuctionSuccess?: (auction: ExecutedDeltaAuction) => void;\n onAuctionFailure?: (auction: FailedDeltaAuction) => void;\n onUpdatedAuction?: (auction: MarkOptional<DeltaAuction, \"signature\">) => void;\n onTimeoutGettingOrder?: (auction: Pick<DeltaAuction, \"id\">) => void;\n};\n\nexport function useWatchDeltaAuction({\n orderId,\n enabled = true,\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n onTimeoutGettingOrder,\n}: UseWatchDeltaAuctionQueryInput): UseQueryResult<MaybeVeloraDeltaAuction> {\n const { sdk } = useDeltaSDK({ chainId: 1 }); // chain doesn't matter\n\n const queryOptions = constructDeltaAuctionPollingQueryOptions({\n orderId,\n enabled,\n getAuction: sdk.getDeltaOrderById,\n onUpdatedAuction,\n onAuctionSuccess,\n onAuctionFailure,\n onTimeoutGettingOrder,\n });\n\n return useQuery<\n MaybeVeloraDeltaAuction,\n Error,\n MaybeVeloraDeltaAuction,\n SingleDeltaAuctionQueryKey\n >(queryOptions);\n}\n\ntype EnsureOrderExecutedFn = (options: {\n orderId: string;\n signal?: AbortSignal;\n}) => Promise<MaybeVeloraDeltaAuction>;\n\nexport function useEnsureDeltaOrderExecuted(): EnsureOrderExecutedFn {\n const queryClient = useQueryClient();\n\n const ensureOrderSent: EnsureOrderExecutedFn = async ({\n orderId,\n signal,\n }): Promise<MaybeVeloraDeltaAuction> => {\n const queryKey: SingleDeltaAuctionQueryKey = [\n SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX,\n orderId,\n ];\n\n const observer = new QueryObserver<\n MaybeVeloraDeltaAuction,\n Error,\n MaybeVeloraDeltaAuction,\n SingleDeltaAuctionQueryKey\n >(queryClient, {\n queryKey,\n enabled: false, // no queryFn, just subscription\n // @TODO consider if we want queryFn to have refetching separate from useDeltaFlow\n });\n\n const promise = new Promise<MaybeVeloraDeltaAuction>((resolve, reject) => {\n const startedQueryAt = Date.now();\n\n // don't leave the promise and therefore the observer hanging,\n // if useWatchDeltaAuction doesn't finish its job and stops triggering the subscription\n let timeout: NodeJS.Timeout | null = setTimeout(() => {\n console.log(\"QueryObserver\", queryKey, \"timeout\");\n unsubscribe();\n reject(new Error(`Order ${orderId} not found`));\n }, LOOK_FOR_ORDER_TIMEOUT + 1000); // a bit of jitter time\n\n signal?.addEventListener(\"abort\", () => {\n if (timeout) {\n clearTimeout(timeout);\n }\n unsubscribe();\n reject(new Error(`Order execution aborted: ${signal.reason}`));\n });\n\n const unsubscribe = observer.subscribe((result) => {\n const cleanup = () => {\n console.log(\"QueryObserver\", queryKey, \"cleanup\");\n unsubscribe();\n };\n\n console.log(\"QueryObserver\", queryKey, result);\n\n const maybeOrder = result.data;\n\n if (maybeOrder && timeout !== null) {\n // Order fetched at least once\n clearTimeout(timeout);\n timeout = null;\n }\n\n // Order done with one way or the other\n if (\n maybeOrder &&\n DeltaOrderStatusChecker.completed.has(maybeOrder.status)\n ) {\n // Crosschain Orders are considered executed when both srcChain and destChain are executed\n if (isExecutedDeltaAuction(maybeOrder)) {\n cleanup();\n resolve(maybeOrder);\n return;\n }\n if (isFailedDeltaAuction(maybeOrder)) {\n cleanup();\n reject(maybeOrder);\n return;\n }\n }\n\n if (maybeOrder === null) {\n // no Order for this orderId for a long time\n const elapsed = Date.now() - startedQueryAt;\n if (elapsed > LOOK_FOR_ORDER_TIMEOUT) {\n cleanup();\n reject(new Error(`Order ${orderId} not found`));\n return;\n }\n }\n if (result.error) {\n cleanup();\n reject(result.error);\n return;\n }\n });\n });\n\n return promise;\n };\n\n return ensureOrderSent;\n}\n\n// ----------------- Multi Delta Queries -----------------------------------\n\ntype UseWatchMultiDeltaAuctions = {\n orderIds: string[];\n enabled?: boolean;\n onAuctionSuccess?: (auction: ExecutedDeltaAuction) => void;\n onAuctionFailure?: (auction: FailedDeltaAuction) => void;\n onUpdatedAuction?: (auction: MarkOptional<DeltaAuction, \"signature\">) => void;\n onTimeoutGettingOrder?: (auction: Pick<DeltaAuction, \"id\">) => void;\n};\n\nexport function useWatchMultiDeltaAuctions({\n orderIds,\n enabled = true,\n ...callbacks\n}: UseWatchMultiDeltaAuctions): UseQueryResult<MaybeVeloraDeltaAuction>[] {\n const { sdk } = useDeltaSDK({ chainId: 1 }); // chain doesn't matter\n\n const queries = useMemo<\n UseDeltaAuctionQueryOptions<MaybeVeloraDeltaAuction>[]\n >(\n () =>\n orderIds.map((orderId) =>\n constructDeltaAuctionPollingQueryOptions({\n orderId,\n enabled,\n getAuction: sdk.getDeltaOrderById,\n onUpdatedAuction: callbacks.onUpdatedAuction,\n onAuctionSuccess: callbacks.onAuctionSuccess,\n onAuctionFailure: callbacks.onAuctionFailure,\n onTimeoutGettingOrder: callbacks.onTimeoutGettingOrder,\n })\n ),\n [\n enabled,\n orderIds,\n callbacks.onUpdatedAuction,\n callbacks.onAuctionSuccess,\n callbacks.onAuctionFailure,\n callbacks.onTimeoutGettingOrder,\n sdk.getDeltaOrderById,\n ]\n );\n\n const auctionsResults = useQueries({ queries });\n\n return auctionsResults;\n}\n\ntype MultiOrdersStatusCrossChainInput = {\n orders: DeltaOrderFromAPI[];\n onAuctionSuccess?: (order: DeltaOrderFromAPI) => void;\n onAuctionFailure?: (order: DeltaOrderFromAPI) => void;\n onUpdatedAuction?: (\n auction: MarkOptional<DeltaAuction, \"signature\">,\n bridgeResponse: BridgedDepositResponse\n ) => void;\n};\n\n// can be used for checking Crosschain Order status checking\n// if status check from API is slow to update\nexport function useWatchMultiOrdersStatusCrossChain({\n orders,\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n}: MultiOrdersStatusCrossChainInput): UseQueryResult<BridgedDepositResponse>[] {\n const { deposits, onNewResponse, onDepositSuccess, onDepositFailure } =\n useMemo(() => {\n const { deposits, depositId2Order } = orders.reduce<{\n deposits: GetBridgedDepositStatusInput[];\n depositId2Order: Record<string, DeltaOrderFromAPI>;\n }>(\n (acc, order) => {\n if (order.bridgeMetadata?.depositId) {\n acc.deposits.push({\n depositId: String(order.bridgeMetadata.depositId),\n originChainId: order.chainId,\n });\n acc.depositId2Order[order.bridgeMetadata.depositId] = order;\n }\n return acc;\n },\n { deposits: [], depositId2Order: {} }\n );\n const onNewResponse = (response: BridgedDepositResponse) => {\n const order = depositId2Order[response.depositId];\n if (order) {\n onUpdatedAuction?.(order, response);\n }\n };\n\n const onDepositSuccess = onAuctionSuccess\n ? (deposit: BridgedDepositResponseSuccess) => {\n const order = depositId2Order[deposit.depositId];\n if (order) {\n const successfulOrder = {\n ...order,\n bridgeStatus: deposit.status,\n bridgeMetadata: {\n ...order.bridgeMetadata,\n fillTx: deposit.fillTx,\n },\n } as DeltaOrderFromAPI; // order.bridgeMetadata should be filled but not according to types\n onAuctionSuccess(successfulOrder);\n }\n }\n : undefined;\n\n const onDepositFailure = onAuctionFailure\n ? (deposit: BridgedDepositResponseFailure) => {\n const order = depositId2Order[deposit.depositId];\n if (order) {\n const failedOrder = {\n ...order,\n bridgeStatus: deposit.status,\n bridgeMetadata: {\n ...order.bridgeMetadata,\n fillTx: deposit.fillTx || undefined,\n },\n } as DeltaOrderFromAPI; // order.bridgeMetadata should be filled but not according to types\n onAuctionFailure(failedOrder);\n }\n }\n : undefined;\n\n return { deposits, onNewResponse, onDepositSuccess, onDepositFailure };\n }, [orders, onAuctionSuccess, onAuctionFailure, onUpdatedAuction]);\n\n const depositStatuses = useBridgedDepositStatus({\n deposits,\n onNewResponse,\n onDepositSuccess,\n onDepositFailure,\n });\n\n return depositStatuses;\n}\n"],"names":["SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX","DELTA_ORDER_POLLING_INTERVAL","LOOK_FOR_ORDER_TIMEOUT","constructDeltaAuctionPollingQueryOptions","orderId","enabled","getAuction","onUpdatedAuction","onAuctionSuccess","onAuctionFailure","onTimeoutGettingOrder","meta","startedQueryAt","Date","now","queryKey","queryFn","signal","assert","refetchInterval","query","maybeOrder","state","data","DeltaOrderStatusChecker","completed","has","status","isExecutedDeltaAuction","isFailedDeltaAuction","isOrderExpired","queryMeta","options","isMetaWithTimeStart","elapsed","id","useWatchDeltaAuction","t0","$","_c","t1","undefined","t2","Symbol","for","chainId","sdk","useDeltaSDK","t3","getDeltaOrderById","queryOptions","useQuery","useEnsureDeltaOrderExecuted","queryClient","useQueryClient","observer","QueryObserver","promise","Promise","resolve","reject","timeout","setTimeout","console","log","unsubscribe","Error","addEventListener","clearTimeout","reason","subscribe","result","cleanup","error","ensureOrderSent"],"mappings":";;;;;;;;;;;;;;;;;;AAgCA,MAAMA,qCAAAA,GAAwC,sBAAA;AAgB9C,MAAMC,4BAAAA,GAA+B,GAAA;AAiBrC,MAAMC,sBAAAA,GAAyB,GAAA;AAE/B,SAASC,wCAAAA,CAAyC;AAAA,EAChDC,OAAAA;AAAAA,EACAC,OAAAA;AAAAA,EACAC,UAAAA;AAAAA,EACAC,gBAAAA;AAAAA,EACAC,gBAAAA;AAAAA,EACAC,gBAAAA;AAAAA,EACAC;AAC6C,CAAA,EAG7C;AACA,EAAA,MAAMC,IAAAA,GAA8B;AAAA,IAAEC,cAAAA,EAAgBC,KAAKC,GAAAA;AAAI,GAAE;AAEjE,EAAA,OAAO;AAAA,IACLC,QAAAA,EAAU,CAACf,qCAAAA,EAAuCI,OAAO,CAAA;AAAA,IACzDY,SAASA,CAAC;AAAA,MAAEC;AAAAA,KAAO,KAAM;AACvBC,MAAAA,MAAAA,CAAOd,SAAS,qBAAqB,CAAA;AACrC,MAAA,OAAOE,WAAWF,OAAAA,EAAS;AAAA,QAAEa;AAAAA,OAAQ,CAAA;AAAA,KACvC;AAAA,IACAN,IAAAA;AAAAA,IACAQ,iBAAkBC,CAAAA,KAAAA,KAAU;AAC1B,MAAA,MAAMC,UAAAA,GAAaD,MAAME,KAAAA,CAAMC,IAAAA;AAO/B,MAAA,IAAIF,UAAAA,qBAA+BA,UAAU,CAAA;AAG7C,MAAA,IACEA,cACAG,uBAAAA,CAAwBC,SAAAA,CAAUC,GAAAA,CAAIL,UAAAA,CAAWM,MAAM,CAAA,EACvD;AAEA,QAAA,IAAIC,sBAAAA,CAAuBP,UAAU,CAAA,EAAG;AACtCb,UAAAA,gBAAAA,GAAmBa,UAAU,CAAA;AAC7B,UAAA,OAAO,KAAA;AAAA;AAET,QAAA,IAAIQ,oBAAAA,CAAqBR,UAAU,CAAA,IAAKS,cAAAA,CAAeT,UAAU,CAAA,EAAG;AAClEZ,UAAAA,gBAAAA,GAAmBY,UAAU,CAAA;AAC7B,UAAA,OAAO,KAAA;AAAA;AACT;AAGF,MAAA,MAAMU,SAAAA,GAAYX,MAAMY,OAAAA,CAAQrB,IAAAA;AAChC,MAAA,IAAIU,UAAAA,KAAe,IAAA,IAAQU,SAAAA,IAAaE,mBAAAA,CAAoBF,SAAS,CAAA,EAAG;AAEtE,QAAA,MAAMG,OAAAA,GAAUrB,IAAAA,CAAKC,GAAAA,EAAI,GAAIiB,SAAAA,CAAUnB,cAAAA;AACvC,QAAA,IAAIsB,UAAUhC,sBAAAA,EAAwB;AACpCgB,UAAAA,MAAAA,CAAOd,SAAS,qBAAqB,CAAA;AACrCM,UAAAA,qBAAAA,GAAwB;AAAA,YAAEyB,EAAAA,EAAI/B;AAAAA,WAAS,CAAA;AACvC,UAAA,OAAO,KAAA;AAAA;AACT;AAGF,MAAA,OAAOH,4BAAAA;AAAAA,KACT;AAAA,IACAI,OAAAA,EAAS,CAAC,CAACD,OAAAA,IAAWC;AAAAA,GACxB;AACF;AAaO,SAAA+B,qBAAAC,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAA8B,EAAA,MAAA;AAAA,IAAAnC,OAAAA;AAAAA,IAAAC,OAAAA,EAAAmC,EAAAA;AAAAA,IAAAhC,gBAAAA;AAAAA,IAAAC,gBAAAA;AAAAA,IAAAF,gBAAAA;AAAAA,IAAAG;AAAAA,GAAA,GAAA2B,EAAAA;AAEnC,EAAA,MAAAhC,OAAAA,GAAAmC,EAAAA,KAAcC,MAAAA,UAAdD,EAAAA;AAAc,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAAJ,EAAA,CAAA,CAAA,KAAAK,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAMcF,IAAAA,EAAAA,GAAA;AAAA,MAAAG,OAAAA,EAAA;AAAA,KAAA;AAAcP,IAAAA,CAAAA,MAAAI,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAJ,EAAA,CAAA,CAAA;AAAA;AAA1C,EAAA,MAAA;AAAA,IAAAQ;AAAAA,GAAA,GAAgBC,YAAYL,EAAc,CAAA;AAAE,EAAA,IAAAM,EAAAA;AAAA,EAAA,IAAAV,CAAAA,CAAA,CAAA,CAAA,KAAAjC,OAAAA,IAAAiC,CAAAA,CAAA,CAAA,CAAA,KAAA7B,gBAAAA,IAAA6B,CAAAA,CAAA,CAAA,CAAA,KAAA9B,gBAAAA,IAAA8B,CAAAA,CAAA,CAAA,CAAA,KAAA5B,qBAAAA,IAAA4B,CAAAA,CAAA,CAAA,CAAA,KAAA/B,gBAAAA,IAAA+B,CAAAA,CAAA,CAAA,CAAA,KAAAlC,OAAAA,IAAAkC,CAAAA,CAAA,CAAA,CAAA,KAAAQ,GAAAA,CAAAG,iBAAAA,EAAA;AAEvBD,IAAAA,EAAAA,GAAA7C,wCAAAA,CAAA;AAAA,MAAAC,OAAAA;AAAAA,MAAAC,OAAAA;AAAAA,MAAAC,YAGPwC,GAAAA,CAAGG,iBAAAA;AAAAA,MAAA1C,gBAAAA;AAAAA,MAAAC,gBAAAA;AAAAA,MAAAC,gBAAAA;AAAAA,MAAAC;AAAAA,KAKhB,CAAA;AAAC4B,IAAAA,CAAAA,MAAAjC,OAAAA;AAAAiC,IAAAA,CAAAA,MAAA7B,gBAAAA;AAAA6B,IAAAA,CAAAA,MAAA9B,gBAAAA;AAAA8B,IAAAA,CAAAA,MAAA5B,qBAAAA;AAAA4B,IAAAA,CAAAA,MAAA/B,gBAAAA;AAAA+B,IAAAA,CAAAA,MAAAlC,OAAAA;AAAAkC,IAAAA,CAAAA,CAAA,CAAA,IAAAQ,GAAAA,CAAAG,iBAAAA;AAAAX,IAAAA,CAAAA,MAAAU,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAV,EAAA,CAAA,CAAA;AAAA;AARF,EAAA,MAAAY,YAAAA,GAAqBF,EAAAA;AAQlB,EAAA,OAEIG,SAKLD,YAAY,CAAA;AAAC;AAQV,SAAAE,2BAAAA,GAAA;AAAA,EAAA,MAAAd,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACL,EAAA,MAAAc,cAAoBC,cAAAA,EAAe;AAAE,EAAA,IAAAjB,EAAAA;AAAA,EAAA,IAAAC,CAAAA,QAAAe,WAAAA,EAAA;AAEUhB,IAAAA,EAAAA,UAAAG,EAAAA,KAAA;AAAO,MAAA,MAAA;AAAA,QAAApC,OAAAA;AAAAA,QAAAa;AAAAA,OAAA,GAAAuB,EAAAA;AAIpD,MAAA,MAAAzB,QAAAA,GAAA,CAAAf,qCAAAA,EAEEI,OAAO,CAAA;AAGT,MAAA,MAAAmD,QAAAA,GAAA,IAAAC,aAAAA,CAKEH,WAAAA,EAAW;AAAA,QAAAtC,QAAAA;AAAAA,QAAAV,OAAAA,EAAA;AAAA,OAAA,CAAA;AAMb,MAAA,MAAAoD,OAAAA,GAAA,IAAAC,OAAAA,CAAA,CAAAC,SAAAC,MAAAA,KAAA;AACE,QAAA,MAAAhD,cAAAA,GAAuBC,KAAAC,GAAAA,EAAS;AAIhC,QAAA,IAAA+C,OAAAA,GAAqCC,WAAA,MAAA;AACnCC,UAAAA,OAAAA,CAAAC,GAAAA,CAAY,eAAA,EAAiBjD,QAAAA,EAAU,SAAS,CAAA;AAChDkD,UAAAA,WAAAA,EAAY;AACZL,UAAAA,MAAAA,KAAMM,KAAAA,CAAW,CAAA,MAAA,EAAS9D,OAAO,YAAY,CAAC,CAAA;AAAA,SAAC,EAC9CF,4BAA6B,CAAA;AAEhCe,QAAAA,MAAAA,EAAMkD,gBAAAA,CAAmB,SAAO,MAAA;AAAA,UAAA,IAC1BN,OAAAA,EAAO;AACTO,YAAAA,YAAAA,CAAaP,OAAO,CAAA;AAAA;AAEtBI,UAAAA,WAAAA,EAAY;AACZL,UAAAA,MAAAA,CAAM,IAAAM,KAAAA,CAAW,CAAA,yBAAA,EAA4BjD,MAAAA,CAAMoD,MAAA,EAAS,CAAC,CAAA;AAAA,SAAC,CAAA;AAGhE,QAAA,MAAAJ,WAAAA,GAAoBV,QAAAA,CAAQe,SAAAA,CAAAC,CAAAA,MAAAA,KAAA;AAC1B,UAAA,MAAAC,UAAAA,MAAA;AACET,YAAAA,OAAAA,CAAAC,GAAAA,CAAY,eAAA,EAAiBjD,QAAAA,EAAU,SAAS,CAAA;AAChDkD,YAAAA,WAAAA,EAAY;AAAA,WAAC;AAGfF,UAAAA,OAAAA,CAAAC,GAAAA,CAAY,eAAA,EAAiBjD,QAAAA,EAAUwD,MAAM,CAAA;AAE7C,UAAA,MAAAlD,aAAmBkD,MAAAA,CAAMhD,IAAAA;AAAM,UAAA,IAE3BF,UAAAA,IAAcwC,YAAO,IAAA,EAAS;AAEhCO,YAAAA,YAAAA,CAAaP,OAAO,CAAA;AACpBA,YAAAA,OAAAA,GAAAA,IAAAA;AAAAA;AAAO,UAAA,IAKPxC,cACAG,uBAAAA,CAAAC,SAAAA,CAAAC,GAAAA,CAAsCL,UAAAA,CAAUM,MAAO,CAAA,EAAC;AAAA,YAAA,IAGpDC,sBAAAA,CAAuBP,UAAU,CAAA,EAAC;AACpCmD,cAAAA,OAAAA,EAAQ;AACRb,cAAAA,OAAAA,CAAQtC,UAAU,CAAA;AAAC,cAAA;AAAA;AAAA,YAAA,IAGjBQ,oBAAAA,CAAqBR,UAAU,CAAA,EAAC;AAClCmD,cAAAA,OAAAA,EAAQ;AACRZ,cAAAA,MAAAA,CAAOvC,UAAU,CAAA;AAAC,cAAA;AAAA;AAAA;AAAA,UAAA,IAKlBA,eAAU,IAAA,EAAS;AAErB,YAAA,MAAAa,OAAAA,GAAgBrB,IAAAA,CAAAC,GAAAA,EAAS,GAAIF,cAAAA;AAAe,YAAA,IACxCsB,UAAOhC,sBAAAA,EAAyB;AAClCsE,cAAAA,OAAAA,EAAQ;AACRZ,cAAAA,MAAAA,KAAMM,KAAAA,CAAW,CAAA,MAAA,EAAS9D,OAAO,YAAY,CAAC,CAAA;AAAC,cAAA;AAAA;AAAA;AAAA,UAAA,IAI/CmE,OAAME,KAAAA,EAAA;AACRD,YAAAA,OAAAA,EAAQ;AACRZ,YAAAA,MAAAA,CAAOW,OAAME,KAAM,CAAA;AAAC,YAAA;AAAA;AAAA,SAGvB,CAAA;AAAA,OAAE,CAAA;AACF,MAAA,OAEIhB,OAAAA;AAAAA,KAAO;AACfnB,IAAAA,CAAAA,MAAAe,WAAAA;AAAAf,IAAAA,CAAAA,MAAAD,EAAAA;AAAAA,GAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAC,EAAA,CAAA,CAAA;AAAA;AA3FD,EAAA,MAAAoC,eAAAA,GAA+CrC,EAAAA;AA2F7C,EAAA,OAEKqC,eAAAA;AAAe;;;;"}
1
+ {"version":3,"file":"useWatchDeltaOrder.js","sources":["../../../../../../src/hooks/swap/prices/delta/queries/useWatchDeltaOrder.ts"],"sourcesContent":["import {\n QueryObserver,\n useQueries,\n useQuery,\n useQueryClient,\n type QueryMeta,\n type UseQueryOptions,\n type UseQueryResult,\n} from \"@tanstack/react-query\";\nimport { useLayoutEffect, useMemo, useRef } from \"react\";\nimport { assert, type MarkOptional } from \"ts-essentials\";\nimport { useDeltaSDK } from \"@/hooks/useSDK\";\nimport type { DeltaOrderFromAPI } from \"./useDeltaOrders\";\nimport {\n isMetaWithTimeStart,\n type BridgedDepositResponseFailure,\n type BridgedDepositResponseSuccess,\n type GetBridgedDepositStatusInput,\n type RefetchMetaWithTiming,\n} from \"../bridge/utils\";\nimport type { BridgedDepositResponse } from \"../bridge/types\";\nimport { useBridgedDepositStatus } from \"../bridge/useBridgedDeposit\";\nimport type { DeltaAuction } from \"@velora-dex/sdk\";\nimport {\n DeltaOrderStatusChecker,\n isExecutedDeltaAuction,\n isFailedDeltaAuction,\n isOrderExpired,\n} from \"../orders/utils\";\nimport type { ExecutedDeltaAuction, FailedDeltaAuction } from \"../orders/types\";\n\n// ------------------------------------ Single Delta Auction -----------------------------------\n\nconst SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX = \"single_delta_auction\";\ntype SingleDeltaAuctionQueryKey = [\n base: typeof SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX,\n orderId?: string,\n];\n\nexport type MaybeVeloraDeltaAuction = DeltaOrderFromAPI | null; // null is when no such Order for orderId\n\ntype UseDeltaAuctionQueryOptions<TData = MaybeVeloraDeltaAuction> =\n UseQueryOptions<\n MaybeVeloraDeltaAuction,\n Error,\n TData,\n SingleDeltaAuctionQueryKey\n >;\n\nconst DELTA_ORDER_POLLING_INTERVAL = 3_000;\n\ntype ConstructDeltaAuctionPollingQueryOptionsInput = {\n orderId?: string;\n enabled?: boolean;\n getAuction(\n orderId: string,\n requestParams: { signal?: AbortSignal }\n ): Promise<MaybeVeloraDeltaAuction>;\n} & Pick<\n UseWatchMultiDeltaAuctions,\n | \"onAuctionSuccess\"\n | \"onAuctionFailure\"\n | \"onUpdatedAuction\"\n | \"onTimeoutGettingOrder\"\n>;\n\nconst LOOK_FOR_ORDER_TIMEOUT = 60_000;\n\nfunction constructDeltaAuctionPollingQueryOptions({\n orderId,\n enabled,\n getAuction,\n onUpdatedAuction,\n onAuctionSuccess,\n onAuctionFailure,\n onTimeoutGettingOrder,\n}: ConstructDeltaAuctionPollingQueryOptionsInput): Pick<\n UseDeltaAuctionQueryOptions<MaybeVeloraDeltaAuction>,\n \"queryKey\" | \"queryFn\" | \"meta\" | \"refetchInterval\" | \"enabled\"\n> {\n const doneState = false;\n\n const isMetaWithDoneState = (\n queryMeta: QueryMeta\n ): queryMeta is { doneState: boolean } => {\n return \"doneState\" in queryMeta && typeof queryMeta.doneState === \"boolean\";\n };\n\n // queryOptions has to be memoized, otherwise queryMeta is updated on each render,\n // including startedQueryAt\n const meta: RefetchMetaWithTiming & {\n doneState: boolean;\n } = {\n startedQueryAt: Date.now(),\n doneState,\n };\n\n return {\n queryKey: [SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX, orderId],\n queryFn: ({ signal }) => {\n assert(orderId, \"orderId is required\");\n return getAuction(orderId, { signal });\n },\n meta,\n refetchInterval: (query) => {\n const maybeOrder = query.state.data;\n\n const queryMeta = query.options.meta;\n // refetchInterval is called on each render, regardless of queryOptions memoizations.\n // @TODO rework Watch Order logic to avoid callbacks inside refetchInterval,\n // or do away with these callbacks, they are unused currently.\n const isWithDoneState = !!queryMeta && isMetaWithDoneState(queryMeta);\n if (isWithDoneState && queryMeta.doneState) {\n console.log(\"Shortcut return for refetchInterval\");\n return false;\n }\n\n // Order could have an updated status during its lifecycle\n if (maybeOrder) onUpdatedAuction?.(maybeOrder);\n\n // Order done with one way or the other\n if (\n maybeOrder &&\n DeltaOrderStatusChecker.completed.has(maybeOrder.status)\n ) {\n // Crosschain Orders are considered executed when both srcChain and destChain are executed\n if (isExecutedDeltaAuction(maybeOrder)) {\n onAuctionSuccess?.(maybeOrder);\n if (isWithDoneState) {\n queryMeta.doneState = true;\n }\n return false; // stop polling\n }\n if (isFailedDeltaAuction(maybeOrder) || isOrderExpired(maybeOrder)) {\n onAuctionFailure?.(maybeOrder);\n if (isWithDoneState) {\n queryMeta.doneState = true;\n }\n return false; // stop polling\n }\n }\n\n if (maybeOrder === null && queryMeta && isMetaWithTimeStart(queryMeta)) {\n // no Order for this orderId for a long time\n const elapsed = Date.now() - queryMeta.startedQueryAt;\n if (elapsed > LOOK_FOR_ORDER_TIMEOUT) {\n assert(orderId, \"orderId is required\");\n onTimeoutGettingOrder?.({ id: orderId });\n if (isWithDoneState) {\n queryMeta.doneState = true;\n }\n return false; // stop polling after 1 minute\n }\n }\n\n return DELTA_ORDER_POLLING_INTERVAL; // default interval for both crosschain and singlechain Orders\n },\n enabled: !!orderId && enabled,\n };\n}\n\n// ----------------- Single Delta Query -----------------------------------\n\ntype UseWatchDeltaAuctionQueryInput = {\n orderId?: string;\n enabled?: boolean;\n onAuctionSuccess?: (auction: ExecutedDeltaAuction) => void;\n onAuctionFailure?: (auction: FailedDeltaAuction) => void;\n onUpdatedAuction?: (auction: MarkOptional<DeltaAuction, \"signature\">) => void;\n onTimeoutGettingOrder?: (auction: Pick<DeltaAuction, \"id\">) => void;\n};\n\nexport function useWatchDeltaAuction({\n orderId,\n enabled = true,\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n onTimeoutGettingOrder,\n}: UseWatchDeltaAuctionQueryInput): UseQueryResult<MaybeVeloraDeltaAuction> {\n const { sdk } = useDeltaSDK({ chainId: 1 }); // chain doesn't matter\n\n const callbacksRef = useRef({\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n onTimeoutGettingOrder,\n });\n\n useLayoutEffect(() => {\n console.log(\"Recalculating callbacksRef\");\n callbacksRef.current = {\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n onTimeoutGettingOrder,\n };\n }, [\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n onTimeoutGettingOrder,\n ]);\n\n const queryOptions = useMemo(() => {\n console.log(\"Recalculating queryOptions\");\n return constructDeltaAuctionPollingQueryOptions({\n orderId,\n enabled,\n getAuction: sdk.getDeltaOrderById,\n onUpdatedAuction: callbacksRef.current.onUpdatedAuction,\n onAuctionSuccess: callbacksRef.current.onAuctionSuccess,\n onAuctionFailure: callbacksRef.current.onAuctionFailure,\n onTimeoutGettingOrder: callbacksRef.current.onTimeoutGettingOrder,\n });\n }, [orderId, enabled, sdk.getDeltaOrderById]);\n\n return useQuery<\n MaybeVeloraDeltaAuction,\n Error,\n MaybeVeloraDeltaAuction,\n SingleDeltaAuctionQueryKey\n >(queryOptions);\n}\n\ntype EnsureOrderExecutedFn = (options: {\n orderId: string;\n signal?: AbortSignal;\n}) => Promise<MaybeVeloraDeltaAuction>;\n\nexport function useEnsureDeltaOrderExecuted(): EnsureOrderExecutedFn {\n const queryClient = useQueryClient();\n\n const ensureOrderSent: EnsureOrderExecutedFn = async ({\n orderId,\n signal,\n }): Promise<MaybeVeloraDeltaAuction> => {\n const queryKey: SingleDeltaAuctionQueryKey = [\n SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX,\n orderId,\n ];\n\n const observer = new QueryObserver<\n MaybeVeloraDeltaAuction,\n Error,\n MaybeVeloraDeltaAuction,\n SingleDeltaAuctionQueryKey\n >(queryClient, {\n queryKey,\n enabled: false, // no queryFn, just subscription\n // @TODO consider if we want queryFn to have refetching separate from useDeltaFlow\n });\n\n const promise = new Promise<MaybeVeloraDeltaAuction>((resolve, reject) => {\n const startedQueryAt = Date.now();\n\n // don't leave the promise and therefore the observer hanging,\n // if useWatchDeltaAuction doesn't finish its job and stops triggering the subscription\n let timeout: NodeJS.Timeout | null = setTimeout(() => {\n console.log(\"QueryObserver\", queryKey, \"timeout\");\n unsubscribe();\n reject(new Error(`Order ${orderId} not found`));\n }, LOOK_FOR_ORDER_TIMEOUT + 1000); // a bit of jitter time\n\n signal?.addEventListener(\"abort\", () => {\n if (timeout) {\n clearTimeout(timeout);\n }\n unsubscribe();\n reject(new Error(`Order execution aborted: ${signal.reason}`));\n });\n\n const unsubscribe = observer.subscribe((result) => {\n const cleanup = () => {\n console.log(\"QueryObserver\", queryKey, \"cleanup\");\n unsubscribe();\n };\n\n console.log(\"QueryObserver\", queryKey, result);\n\n const maybeOrder = result.data;\n\n if (maybeOrder && timeout !== null) {\n // Order fetched at least once\n clearTimeout(timeout);\n timeout = null;\n }\n\n // Order done with one way or the other\n if (\n maybeOrder &&\n DeltaOrderStatusChecker.completed.has(maybeOrder.status)\n ) {\n // Crosschain Orders are considered executed when both srcChain and destChain are executed\n if (isExecutedDeltaAuction(maybeOrder)) {\n cleanup();\n resolve(maybeOrder);\n return;\n }\n if (isFailedDeltaAuction(maybeOrder)) {\n cleanup();\n reject(maybeOrder);\n return;\n }\n }\n\n if (maybeOrder === null) {\n // no Order for this orderId for a long time\n const elapsed = Date.now() - startedQueryAt;\n if (elapsed > LOOK_FOR_ORDER_TIMEOUT) {\n cleanup();\n reject(new Error(`Order ${orderId} not found`));\n return;\n }\n }\n if (result.error) {\n cleanup();\n reject(result.error);\n return;\n }\n });\n });\n\n return promise;\n };\n\n return ensureOrderSent;\n}\n\n// ----------------- Multi Delta Queries -----------------------------------\n\ntype UseWatchMultiDeltaAuctions = {\n orderIds: string[];\n enabled?: boolean;\n onAuctionSuccess?: (auction: ExecutedDeltaAuction) => void;\n onAuctionFailure?: (auction: FailedDeltaAuction) => void;\n onUpdatedAuction?: (auction: MarkOptional<DeltaAuction, \"signature\">) => void;\n onTimeoutGettingOrder?: (auction: Pick<DeltaAuction, \"id\">) => void;\n};\n\nexport function useWatchMultiDeltaAuctions({\n orderIds,\n enabled = true,\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n onTimeoutGettingOrder,\n}: UseWatchMultiDeltaAuctions): UseQueryResult<MaybeVeloraDeltaAuction>[] {\n const { sdk } = useDeltaSDK({ chainId: 1 }); // chain doesn't matter\n\n const callbacksRef = useRef({\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n onTimeoutGettingOrder,\n });\n\n useLayoutEffect(() => {\n console.log(\"Recalculating callbacksRef\");\n callbacksRef.current = {\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n onTimeoutGettingOrder,\n };\n }, [\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n onTimeoutGettingOrder,\n ]);\n\n const queries = useMemo<\n UseDeltaAuctionQueryOptions<MaybeVeloraDeltaAuction>[]\n >(\n () =>\n orderIds.map((orderId) =>\n constructDeltaAuctionPollingQueryOptions({\n orderId,\n enabled,\n getAuction: sdk.getDeltaOrderById,\n onUpdatedAuction: callbacksRef.current.onUpdatedAuction,\n onAuctionSuccess: callbacksRef.current.onAuctionSuccess,\n onAuctionFailure: callbacksRef.current.onAuctionFailure,\n onTimeoutGettingOrder: callbacksRef.current.onTimeoutGettingOrder,\n })\n ),\n [enabled, orderIds, sdk.getDeltaOrderById]\n );\n\n const auctionsResults = useQueries({ queries });\n\n return auctionsResults;\n}\n\ntype MultiOrdersStatusCrossChainInput = {\n orders: DeltaOrderFromAPI[];\n onAuctionSuccess?: (order: DeltaOrderFromAPI) => void;\n onAuctionFailure?: (order: DeltaOrderFromAPI) => void;\n onUpdatedAuction?: (\n auction: MarkOptional<DeltaAuction, \"signature\">,\n bridgeResponse: BridgedDepositResponse\n ) => void;\n};\n\n// can be used for checking Crosschain Order status checking\n// if status check from API is slow to update\nexport function useWatchMultiOrdersStatusCrossChain({\n orders,\n onAuctionSuccess,\n onAuctionFailure,\n onUpdatedAuction,\n}: MultiOrdersStatusCrossChainInput): UseQueryResult<BridgedDepositResponse>[] {\n const { deposits, onNewResponse, onDepositSuccess, onDepositFailure } =\n useMemo(() => {\n const { deposits, depositId2Order } = orders.reduce<{\n deposits: GetBridgedDepositStatusInput[];\n depositId2Order: Record<string, DeltaOrderFromAPI>;\n }>(\n (acc, order) => {\n if (order.bridgeMetadata?.depositId) {\n acc.deposits.push({\n depositId: String(order.bridgeMetadata.depositId),\n originChainId: order.chainId,\n });\n acc.depositId2Order[order.bridgeMetadata.depositId] = order;\n }\n return acc;\n },\n { deposits: [], depositId2Order: {} }\n );\n const onNewResponse = (response: BridgedDepositResponse) => {\n const order = depositId2Order[response.depositId];\n if (order) {\n onUpdatedAuction?.(order, response);\n }\n };\n\n const onDepositSuccess = onAuctionSuccess\n ? (deposit: BridgedDepositResponseSuccess) => {\n const order = depositId2Order[deposit.depositId];\n if (order) {\n const successfulOrder = {\n ...order,\n bridgeStatus: deposit.status,\n bridgeMetadata: {\n ...order.bridgeMetadata,\n fillTx: deposit.fillTx,\n },\n } as DeltaOrderFromAPI; // order.bridgeMetadata should be filled but not according to types\n onAuctionSuccess(successfulOrder);\n }\n }\n : undefined;\n\n const onDepositFailure = onAuctionFailure\n ? (deposit: BridgedDepositResponseFailure) => {\n const order = depositId2Order[deposit.depositId];\n if (order) {\n const failedOrder = {\n ...order,\n bridgeStatus: deposit.status,\n bridgeMetadata: {\n ...order.bridgeMetadata,\n fillTx: deposit.fillTx || undefined,\n },\n } as DeltaOrderFromAPI; // order.bridgeMetadata should be filled but not according to types\n onAuctionFailure(failedOrder);\n }\n }\n : undefined;\n\n return { deposits, onNewResponse, onDepositSuccess, onDepositFailure };\n }, [orders, onAuctionSuccess, onAuctionFailure, onUpdatedAuction]);\n\n const depositStatuses = useBridgedDepositStatus({\n deposits,\n onNewResponse,\n onDepositSuccess,\n onDepositFailure,\n });\n\n return depositStatuses;\n}\n"],"names":["SINGLE_DELTA_AUCTION_QUERY_KEY_PREFIX","DELTA_ORDER_POLLING_INTERVAL","LOOK_FOR_ORDER_TIMEOUT","constructDeltaAuctionPollingQueryOptions","orderId","enabled","getAuction","onUpdatedAuction","onAuctionSuccess","onAuctionFailure","onTimeoutGettingOrder","doneState","isMetaWithDoneState","queryMeta","meta","startedQueryAt","Date","now","queryKey","queryFn","signal","assert","refetchInterval","query","maybeOrder","state","data","options","isWithDoneState","console","log","DeltaOrderStatusChecker","completed","has","status","isExecutedDeltaAuction","isFailedDeltaAuction","isOrderExpired","isMetaWithTimeStart","elapsed","id","useWatchDeltaAuction","sdk","useDeltaSDK","chainId","callbacksRef","useRef","useLayoutEffect","current","queryOptions","useMemo","getDeltaOrderById","useQuery","useEnsureDeltaOrderExecuted","$","_c","queryClient","useQueryClient","t0","t1","observer","QueryObserver","promise","Promise","resolve","reject","timeout","setTimeout","unsubscribe","Error","addEventListener","clearTimeout","reason","subscribe","result","cleanup","error","ensureOrderSent"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSDK.d.ts","sourceRoot":"","sources":["../../src/hooks/useSDK.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSDK.d.ts","sourceRoot":"","sources":["../../src/hooks/useSDK.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
- import { d as distExports } from '../_virtual/index.js';
2
1
  import axios from 'axios';
3
- import 'react';
2
+ import { useMemo } from 'react';
4
3
  import { constructPartialSDK, constructAxiosFetcher, constructGetDeltaOrders, constructGetDeltaPrice, constructBuildDeltaOrder, constructBuildCrosschainOrderBridge, constructPostDeltaOrder, constructGetBridgeInfo, constructGetMulticallHandlers, constructIsTokenSupportedInDelta, constructViemContractCaller, constructSignDeltaOrder, constructGetRate, constructGetSpender, constructBuildTx } from '@velora-dex/sdk';
5
4
 
6
5
  globalThis.jotaiAtomCache = globalThis.jotaiAtomCache || {
@@ -14,97 +13,55 @@ globalThis.jotaiAtomCache = globalThis.jotaiAtomCache || {
14
13
  }
15
14
  };
16
15
  const fetcher = constructAxiosFetcher(axios);
17
- function useMarketSwapSDK(t0) {
18
- const $ = distExports.c(5);
19
- const {
20
- chainId,
21
- apiURL
22
- } = t0;
23
- let t1;
24
- let t2;
25
- if ($[0] !== apiURL || $[1] !== chainId) {
16
+ function useMarketSwapSDK({
17
+ chainId,
18
+ apiURL
19
+ }) {
20
+ "use no memo";
21
+ const sdk = useMemo(() => {
26
22
  const SDKconfig = {
27
23
  apiURL,
28
24
  chainId,
29
25
  fetcher
30
26
  };
31
- t2 = constructPartialSDK(SDKconfig, constructGetRate, constructGetSpender, constructBuildTx);
32
- $[0] = apiURL;
33
- $[1] = chainId;
34
- $[2] = t2;
35
- } else {
36
- t2 = $[2];
37
- }
38
- t1 = t2;
39
- const sdk = t1;
40
- let t3;
41
- if ($[3] !== sdk) {
42
- t3 = {
43
- appVersion: sdk.version,
44
- chainId: sdk.chainId,
45
- apiURL: sdk.apiURL,
46
- sdk
47
- };
48
- $[3] = sdk;
49
- $[4] = t3;
50
- } else {
51
- t3 = $[4];
52
- }
53
- return t3;
27
+ return constructPartialSDK(SDKconfig, constructGetRate, constructGetSpender, constructBuildTx);
28
+ }, [apiURL, chainId]);
29
+ return {
30
+ appVersion: sdk.version,
31
+ chainId: sdk.chainId,
32
+ apiURL: sdk.apiURL,
33
+ sdk
34
+ };
54
35
  }
55
- function useDeltaSDK(t0) {
56
- const $ = distExports.c(8);
57
- const {
58
- chainId,
59
- apiURL,
60
- account,
61
- client
62
- } = t0;
63
- let t1;
64
- bb0: {
65
- let t22;
66
- if ($[0] !== account || $[1] !== apiURL || $[2] !== chainId || $[3] !== client) {
67
- const SDKconfig = {
68
- apiURL,
69
- chainId,
70
- fetcher
71
- };
72
- if (!client || !account) {
73
- t1 = constructPartialSDK(SDKconfig, constructGetDeltaOrders, constructGetDeltaPrice, constructBuildDeltaOrder, constructBuildCrosschainOrderBridge, constructPostDeltaOrder, constructGetBridgeInfo, constructGetMulticallHandlers, constructIsTokenSupportedInDelta);
74
- break bb0;
75
- }
76
- const contractCaller = constructViemContractCaller(client, account);
77
- t22 = constructPartialSDK({
78
- ...SDKconfig,
79
- contractCaller
80
- }, constructGetDeltaOrders, constructGetDeltaPrice, constructBuildDeltaOrder, constructBuildCrosschainOrderBridge, constructPostDeltaOrder, constructGetBridgeInfo, constructGetMulticallHandlers, constructIsTokenSupportedInDelta, constructSignDeltaOrder);
81
- $[0] = account;
82
- $[1] = apiURL;
83
- $[2] = chainId;
84
- $[3] = client;
85
- $[4] = t22;
86
- $[5] = t1;
87
- } else {
88
- t22 = $[4];
89
- t1 = $[5];
90
- }
91
- t1 = t22;
92
- }
93
- const sdk = t1;
94
- let t2;
95
- if ($[6] !== sdk) {
96
- t2 = {
97
- appVersion: sdk.version,
98
- chainId: sdk.chainId,
99
- apiURL: sdk.apiURL,
100
- sdk
36
+ function useDeltaSDK({
37
+ chainId,
38
+ apiURL,
39
+ account,
40
+ client
41
+ }) {
42
+ "use no memo";
43
+ const sdk = useMemo(() => {
44
+ console.log("Recalculating sdk");
45
+ const SDKconfig = {
46
+ apiURL,
47
+ chainId,
48
+ fetcher
101
49
  };
102
- $[6] = sdk;
103
- $[7] = t2;
104
- } else {
105
- t2 = $[7];
106
- }
107
- return t2;
50
+ if (!client || !account) {
51
+ return constructPartialSDK(SDKconfig, constructGetDeltaOrders, constructGetDeltaPrice, constructBuildDeltaOrder, constructBuildCrosschainOrderBridge, constructPostDeltaOrder, constructGetBridgeInfo, constructGetMulticallHandlers, constructIsTokenSupportedInDelta);
52
+ }
53
+ const contractCaller = constructViemContractCaller(client, account);
54
+ return constructPartialSDK({
55
+ ...SDKconfig,
56
+ contractCaller
57
+ }, constructGetDeltaOrders, constructGetDeltaPrice, constructBuildDeltaOrder, constructBuildCrosschainOrderBridge, constructPostDeltaOrder, constructGetBridgeInfo, constructGetMulticallHandlers, constructIsTokenSupportedInDelta, constructSignDeltaOrder);
58
+ }, [account, apiURL, client, chainId]);
59
+ return {
60
+ appVersion: sdk.version,
61
+ chainId: sdk.chainId,
62
+ apiURL: sdk.apiURL,
63
+ sdk
64
+ };
108
65
  }
109
66
 
110
67
  export { useDeltaSDK, useMarketSwapSDK };
@@ -1 +1 @@
1
- {"version":3,"file":"useSDK.js","sources":["../../src/hooks/useSDK.ts"],"sourcesContent":["import axios from \"axios\";\nimport { useMemo } from \"react\";\n\nimport {\n constructAxiosFetcher,\n constructPartialSDK,\n constructGetSpender,\n constructBuildTx,\n constructAllLimitOrdersHandlers,\n constructGetRate,\n constructGetDeltaPrice,\n constructGetDeltaOrders,\n constructBuildDeltaOrder,\n constructSignDeltaOrder,\n constructPostDeltaOrder,\n constructGetBridgeInfo,\n constructGetMulticallHandlers,\n constructIsTokenSupportedInDelta,\n constructBuildCrosschainOrderBridge,\n constructViemContractCaller,\n type LimitOrderHandlers,\n type GetRateFunctions,\n type APIVersion,\n type GetDeltaOrdersFunctions,\n type GetDeltaPriceFunctions,\n type PostDeltaOrderFunctions,\n type BuildDeltaOrderFunctions,\n type SignDeltaOrderFunctions,\n type GetBridgeInfoFunctions,\n type GetMulticallHandlersFunctions,\n type IsTokenSupportedInDeltaFunctions,\n type BuildCrosschainOrderBridgeFunctions,\n type BuildTxFunctions,\n type GetSpenderFunctions,\n type MinViemClient,\n} from \"@velora-dex/sdk\";\nimport type { Address, Hash } from \"viem\";\nimport type { Prettify } from \"ts-essentials\";\n\nconst fetcher = constructAxiosFetcher(axios);\n\ntype SDKCreateParams = {\n chainId: number;\n apiURL?: string;\n account?: Address;\n};\n\nexport type MarketSwapSDK = Prettify<\n GetSpenderFunctions & BuildTxFunctions & GetRateFunctions\n>;\n\ntype ConstructedSDKOutput<T> = {\n sdk: T;\n appVersion: APIVersion;\n chainId: number;\n apiURL: string;\n};\n\nexport function useMarketSwapSDK({\n chainId,\n apiURL,\n}: SDKCreateParams): ConstructedSDKOutput<MarketSwapSDK> {\n const sdk = useMemo(() => {\n const SDKconfig = {\n apiURL,\n chainId,\n fetcher,\n };\n\n return constructPartialSDK(\n SDKconfig,\n constructGetRate,\n constructGetSpender,\n constructBuildTx\n );\n }, [apiURL, chainId]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\ntype LimitOrdersSDKCreateParams = SDKCreateParams & {\n account?: Address;\n client?: MinViemClient;\n};\n\nexport type LimitOrdersSDK = Prettify<LimitOrderHandlers<Hash>>;\n// can paraswap.fillOrder from a taker address to simulate happy path\n// @TODO check that we always use correct SDK version\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams & {\n account?: undefined;\n client?: undefined;\n}): Record<keyof ConstructedSDKOutput<unknown>, undefined>; // keyof allows for autocomplete in destructuring\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams & {\n account: Address;\n client: MinViemClient;\n}): ConstructedSDKOutput<LimitOrdersSDK>;\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams):\n | ConstructedSDKOutput<LimitOrdersSDK>\n | Record<keyof ConstructedSDKOutput<unknown>, undefined>;\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams):\n | ConstructedSDKOutput<LimitOrdersSDK>\n | Partial<Record<keyof ConstructedSDKOutput<unknown>, undefined>> {\n const sdk = useMemo(() => {\n if (!client || !account) return;\n\n const contractCaller = constructViemContractCaller(client, account);\n\n const SDKconfig = {\n apiURL,\n chainId,\n fetcher,\n contractCaller,\n };\n\n return constructPartialSDK(SDKconfig, constructAllLimitOrdersHandlers);\n }, [account, apiURL, client, chainId]);\n\n if (!sdk) return {};\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\n\ntype ReadOnlyDeltaSDK = Prettify<\n GetDeltaOrdersFunctions &\n GetDeltaPriceFunctions &\n BuildDeltaOrderFunctions &\n BuildCrosschainOrderBridgeFunctions &\n PostDeltaOrderFunctions &\n GetBridgeInfoFunctions &\n GetMulticallHandlersFunctions &\n IsTokenSupportedInDeltaFunctions & { chainId: number }\n>;\n\nexport type DeltaSDK = Prettify<ReadOnlyDeltaSDK & SignDeltaOrderFunctions>;\n\ntype DeltaSDKCreateParams = SDKCreateParams & {\n client?: MinViemClient;\n};\n\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams & {\n account?: undefined;\n client?: undefined;\n}): ConstructedSDKOutput<ReadOnlyDeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams & {\n account: Address;\n client: MinViemClient;\n}): ConstructedSDKOutput<DeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams): ConstructedSDKOutput<DeltaSDK | ReadOnlyDeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams): ConstructedSDKOutput<DeltaSDK | ReadOnlyDeltaSDK> {\n const sdk = useMemo(() => {\n const SDKconfig = {\n apiURL,\n chainId,\n fetcher,\n };\n\n if (!client || !account) {\n return constructPartialSDK(\n SDKconfig,\n constructGetDeltaOrders,\n constructGetDeltaPrice,\n constructBuildDeltaOrder,\n constructBuildCrosschainOrderBridge,\n constructPostDeltaOrder,\n constructGetBridgeInfo,\n constructGetMulticallHandlers,\n constructIsTokenSupportedInDelta\n );\n }\n\n const contractCaller = constructViemContractCaller(client, account);\n\n return constructPartialSDK(\n { ...SDKconfig, contractCaller },\n constructGetDeltaOrders,\n constructGetDeltaPrice,\n constructBuildDeltaOrder,\n constructBuildCrosschainOrderBridge,\n constructPostDeltaOrder,\n constructGetBridgeInfo,\n constructGetMulticallHandlers,\n constructIsTokenSupportedInDelta,\n constructSignDeltaOrder\n );\n }, [account, apiURL, client, chainId]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\n"],"names":["fetcher","constructAxiosFetcher","axios","useMarketSwapSDK","t0","$","_c","chainId","apiURL","t1","t2","SDKconfig","constructPartialSDK","constructGetRate","constructGetSpender","constructBuildTx","sdk","t3","appVersion","version","useDeltaSDK","account","client","bb0","constructGetDeltaOrders","constructGetDeltaPrice","constructBuildDeltaOrder","constructBuildCrosschainOrderBridge","constructPostDeltaOrder","constructGetBridgeInfo","constructGetMulticallHandlers","constructIsTokenSupportedInDelta","contractCaller","constructViemContractCaller","constructSignDeltaOrder"],"mappings":"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"}
1
+ {"version":3,"file":"useSDK.js","sources":["../../src/hooks/useSDK.ts"],"sourcesContent":["import axios from \"axios\";\nimport { useMemo } from \"react\";\n\nimport {\n constructAxiosFetcher,\n constructPartialSDK,\n constructGetSpender,\n constructBuildTx,\n constructAllLimitOrdersHandlers,\n constructGetRate,\n constructGetDeltaPrice,\n constructGetDeltaOrders,\n constructBuildDeltaOrder,\n constructSignDeltaOrder,\n constructPostDeltaOrder,\n constructGetBridgeInfo,\n constructGetMulticallHandlers,\n constructIsTokenSupportedInDelta,\n constructBuildCrosschainOrderBridge,\n constructViemContractCaller,\n type LimitOrderHandlers,\n type GetRateFunctions,\n type APIVersion,\n type GetDeltaOrdersFunctions,\n type GetDeltaPriceFunctions,\n type PostDeltaOrderFunctions,\n type BuildDeltaOrderFunctions,\n type SignDeltaOrderFunctions,\n type GetBridgeInfoFunctions,\n type GetMulticallHandlersFunctions,\n type IsTokenSupportedInDeltaFunctions,\n type BuildCrosschainOrderBridgeFunctions,\n type BuildTxFunctions,\n type GetSpenderFunctions,\n type MinViemClient,\n} from \"@velora-dex/sdk\";\nimport type { Address, Hash } from \"viem\";\nimport type { Prettify } from \"ts-essentials\";\n\nconst fetcher = constructAxiosFetcher(axios);\n\ntype SDKCreateParams = {\n chainId: number;\n apiURL?: string;\n account?: Address;\n};\n\nexport type MarketSwapSDK = Prettify<\n GetSpenderFunctions & BuildTxFunctions & GetRateFunctions\n>;\n\ntype ConstructedSDKOutput<T> = {\n sdk: T;\n appVersion: APIVersion;\n chainId: number;\n apiURL: string;\n};\n\nexport function useMarketSwapSDK({\n chainId,\n apiURL,\n}: SDKCreateParams): ConstructedSDKOutput<MarketSwapSDK> {\n \"use no memo\";\n\n const sdk = useMemo(() => {\n const SDKconfig = {\n apiURL,\n chainId,\n fetcher,\n };\n\n return constructPartialSDK(\n SDKconfig,\n constructGetRate,\n constructGetSpender,\n constructBuildTx\n );\n }, [apiURL, chainId]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\ntype LimitOrdersSDKCreateParams = SDKCreateParams & {\n account?: Address;\n client?: MinViemClient;\n};\n\nexport type LimitOrdersSDK = Prettify<LimitOrderHandlers<Hash>>;\n// can paraswap.fillOrder from a taker address to simulate happy path\n// @TODO check that we always use correct SDK version\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams & {\n account?: undefined;\n client?: undefined;\n}): Record<keyof ConstructedSDKOutput<unknown>, undefined>; // keyof allows for autocomplete in destructuring\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams & {\n account: Address;\n client: MinViemClient;\n}): ConstructedSDKOutput<LimitOrdersSDK>;\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams):\n | ConstructedSDKOutput<LimitOrdersSDK>\n | Record<keyof ConstructedSDKOutput<unknown>, undefined>;\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams):\n | ConstructedSDKOutput<LimitOrdersSDK>\n | Partial<Record<keyof ConstructedSDKOutput<unknown>, undefined>> {\n \"use no memo\";\n\n const sdk = useMemo(() => {\n if (!client || !account) return;\n\n const contractCaller = constructViemContractCaller(client, account);\n\n const SDKconfig = {\n apiURL,\n chainId,\n fetcher,\n contractCaller,\n };\n\n return constructPartialSDK(SDKconfig, constructAllLimitOrdersHandlers);\n }, [account, apiURL, client, chainId]);\n\n if (!sdk) return {};\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\n\ntype ReadOnlyDeltaSDK = Prettify<\n GetDeltaOrdersFunctions &\n GetDeltaPriceFunctions &\n BuildDeltaOrderFunctions &\n BuildCrosschainOrderBridgeFunctions &\n PostDeltaOrderFunctions &\n GetBridgeInfoFunctions &\n GetMulticallHandlersFunctions &\n IsTokenSupportedInDeltaFunctions & { chainId: number }\n>;\n\nexport type DeltaSDK = Prettify<ReadOnlyDeltaSDK & SignDeltaOrderFunctions>;\n\ntype DeltaSDKCreateParams = SDKCreateParams & {\n client?: MinViemClient;\n};\n\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams & {\n account?: undefined;\n client?: undefined;\n}): ConstructedSDKOutput<ReadOnlyDeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams & {\n account: Address;\n client: MinViemClient;\n}): ConstructedSDKOutput<DeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams): ConstructedSDKOutput<DeltaSDK | ReadOnlyDeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams): ConstructedSDKOutput<DeltaSDK | ReadOnlyDeltaSDK> {\n \"use no memo\";\n // react-compiler fails here and sdk is created anew\n\n const sdk = useMemo(() => {\n console.log(\"Recalculating sdk\");\n const SDKconfig = {\n apiURL,\n chainId,\n fetcher,\n };\n\n if (!client || !account) {\n return constructPartialSDK(\n SDKconfig,\n constructGetDeltaOrders,\n constructGetDeltaPrice,\n constructBuildDeltaOrder,\n constructBuildCrosschainOrderBridge,\n constructPostDeltaOrder,\n constructGetBridgeInfo,\n constructGetMulticallHandlers,\n constructIsTokenSupportedInDelta\n );\n }\n\n const contractCaller = constructViemContractCaller(client, account);\n\n return constructPartialSDK(\n { ...SDKconfig, contractCaller },\n constructGetDeltaOrders,\n constructGetDeltaPrice,\n constructBuildDeltaOrder,\n constructBuildCrosschainOrderBridge,\n constructPostDeltaOrder,\n constructGetBridgeInfo,\n constructGetMulticallHandlers,\n constructIsTokenSupportedInDelta,\n constructSignDeltaOrder\n );\n }, [account, apiURL, client, chainId]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\n"],"names":["fetcher","constructAxiosFetcher","axios","useMarketSwapSDK","chainId","apiURL","sdk","useMemo","SDKconfig","constructPartialSDK","constructGetRate","constructGetSpender","constructBuildTx","appVersion","version","useDeltaSDK","account","client","console","log","constructGetDeltaOrders","constructGetDeltaPrice","constructBuildDeltaOrder","constructBuildCrosschainOrderBridge","constructPostDeltaOrder","constructGetBridgeInfo","constructGetMulticallHandlers","constructIsTokenSupportedInDelta","contractCaller","constructViemContractCaller","constructSignDeltaOrder"],"mappings":";;;;;;;;;;;;;;AAuCA,MAAMA,OAAAA,GAAUC,sBAAsBC,KAAK,CAAA;AAmBpC,SAASC,gBAAAA,CAAiB;AAAA,EAC/BC,OAAAA;AAAAA,EACAC;AACe,CAAA,EAAwC;AACvD,EAAA,aAAA;AAEA,EAAA,MAAMC,GAAAA,GAAMC,QAAQ,MAAM;AACxB,IAAA,MAAMC,SAAAA,GAAY;AAAA,MAChBH,MAAAA;AAAAA,MACAD,OAAAA;AAAAA,MACAJ;AAAAA,KACF;AAEA,IAAA,OAAOS,mBAAAA,CACLD,SAAAA,EACAE,gBAAAA,EACAC,mBAAAA,EACAC,gBACF,CAAA;AAAA,GACF,EAAG,CAACP,MAAAA,EAAQD,OAAO,CAAC,CAAA;AAEpB,EAAA,OAAO;AAAA,IACLS,YAAYP,GAAAA,CAAIQ,OAAAA;AAAAA,IAChBV,SAASE,GAAAA,CAAIF,OAAAA;AAAAA,IACbC,QAAQC,GAAAA,CAAID,MAAAA;AAAAA,IACZC;AAAAA,GACF;AACF;AA+GO,SAASS,WAAAA,CAAY;AAAA,EAC1BX,OAAAA;AAAAA,EACAC,MAAAA;AAAAA,EACAW,OAAAA;AAAAA,EACAC;AACoB,CAAA,EAAsD;AAC1E,EAAA,aAAA;AAGA,EAAA,MAAMX,GAAAA,GAAMC,QAAQ,MAAM;AACxBW,IAAAA,OAAAA,CAAQC,IAAI,mBAAmB,CAAA;AAC/B,IAAA,MAAMX,SAAAA,GAAY;AAAA,MAChBH,MAAAA;AAAAA,MACAD,OAAAA;AAAAA,MACAJ;AAAAA,KACF;AAEA,IAAA,IAAI,CAACiB,MAAAA,IAAU,CAACD,OAAAA,EAAS;AACvB,MAAA,OAAOP,mBAAAA,CACLD,WACAY,uBAAAA,EACAC,sBAAAA,EACAC,0BACAC,mCAAAA,EACAC,uBAAAA,EACAC,sBAAAA,EACAC,6BAAAA,EACAC,gCACF,CAAA;AAAA;AAGF,IAAA,MAAMC,cAAAA,GAAiBC,2BAAAA,CAA4BZ,MAAAA,EAAQD,OAAO,CAAA;AAElE,IAAA,OAAOP,mBAAAA,CACL;AAAA,MAAE,GAAGD,SAAAA;AAAAA,MAAWoB;AAAAA,KAAe,EAC/BR,yBACAC,sBAAAA,EACAC,wBAAAA,EACAC,qCACAC,uBAAAA,EACAC,sBAAAA,EACAC,6BAAAA,EACAC,gCAAAA,EACAG,uBACF,CAAA;AAAA,KACC,CAACd,OAAAA,EAASX,MAAAA,EAAQY,MAAAA,EAAQb,OAAO,CAAC,CAAA;AAErC,EAAA,OAAO;AAAA,IACLS,YAAYP,GAAAA,CAAIQ,OAAAA;AAAAA,IAChBV,SAASE,GAAAA,CAAIF,OAAAA;AAAAA,IACbC,QAAQC,GAAAA,CAAID,MAAAA;AAAAA,IACZC;AAAAA,GACF;AACF;;;;"}
package/dist/index.d.ts CHANGED
@@ -15,5 +15,7 @@ export * from './components/widget/TradeOverview';
15
15
  export * from './components/widget/WrapEth';
16
16
  export * from './components/web3/providers';
17
17
  export * from './widget';
18
+ export * from './widget/types';
19
+ export * as widgetStyles from './styles/global.css';
18
20
  export * from './test/connect/App';
19
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAE1C,cAAc,2DAA2D,CAAC;AAC1E,cAAc,iEAAiE,CAAC;AAChF,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAE5C,cAAc,6BAA6B,CAAC;AAE5C,cAAc,UAAU,CAAC;AAEzB,OAAO,qBAAqB,CAAC;AAG7B,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAE1C,cAAc,2DAA2D,CAAC;AAC1E,cAAc,iEAAiE,CAAC;AAChF,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAE5C,cAAc,6BAA6B,CAAC;AAE5C,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAE/B,OAAO,KAAK,YAAY,MAAM,qBAAqB,CAAC;AAGpD,cAAc,oBAAoB,CAAC"}
package/dist/index.js CHANGED
@@ -13,7 +13,8 @@ export { SwapModeSwitcherExpandable } from './components/widget/SwapModeSwitcher
13
13
  export { TokenInput } from './components/widget/TokenInput/index.js';
14
14
  export { Web3Providers } from './components/web3/providers.js';
15
15
  export { Widget } from './widget/index.js';
16
- /* empty css */
16
+ import * as global from './styles/global.css.js';
17
+ export { global as widgetStyles };
17
18
  export { ConnectApp } from './test/connect/App.js';
18
19
  import * as AccordionPrimitive from '@radix-ui/react-accordion';
19
20
  export { AccordionPrimitive };
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,9 +1,7 @@
1
1
  import { SupportedChainId } from '../web3/wagmi/types';
2
- import { Address } from 'viem';
3
2
  export declare const constructAddressLink: (explorer: string, address: string) => string;
4
3
  export declare const constructTxLink: (explorer: string, address: string) => string;
5
4
  export declare function constructExplorerOrderDetailsLink(orderId: string): string;
6
- export declare function constructExplorerUserDetailsLink(userAddress: Address): string;
7
5
  type ConstructAddressLinkForChainInput = {
8
6
  chainId: SupportedChainId;
9
7
  address: string;
@@ -1 +1 @@
1
- {"version":3,"file":"explorer.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/explorer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,eAAO,MAAM,oBAAoB,GAC/B,UAAU,MAAM,EAChB,SAAS,MAAM,KACd,MAEF,CAAC;AACF,eAAO,MAAM,eAAe,GAAI,UAAU,MAAM,EAAE,SAAS,MAAM,KAAG,MAEnE,CAAC;AAIF,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEzE;AAED,wBAAgB,gCAAgC,CAAC,WAAW,EAAE,OAAO,GAAG,MAAM,CAE7E;AAED,KAAK,iCAAiC,GAAG;IACvC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,4BAA4B,GAAI,uBAG1C,iCAAiC,KAAG,MAAM,GAAG,SAK/C,CAAC;AAEF,KAAK,4BAA4B,GAAG;IAClC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAI,sBAGrC,4BAA4B,KAAG,MAAM,GAAG,SAK1C,CAAC"}
1
+ {"version":3,"file":"explorer.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/explorer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAG5D,eAAO,MAAM,oBAAoB,GAC/B,UAAU,MAAM,EAChB,SAAS,MAAM,KACd,MAEF,CAAC;AACF,eAAO,MAAM,eAAe,GAAI,UAAU,MAAM,EAAE,SAAS,MAAM,KAAG,MAEnE,CAAC;AAIF,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEzE;AAED,KAAK,iCAAiC,GAAG;IACvC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,4BAA4B,GAAI,uBAG1C,iCAAiC,KAAG,MAAM,GAAG,SAK/C,CAAC;AAEF,KAAK,4BAA4B,GAAG;IAClC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAI,sBAGrC,4BAA4B,KAAG,MAAM,GAAG,SAK1C,CAAC"}
@@ -17,9 +17,6 @@ const VELORA_EXPLORER_URL = "https://explorer.velora.xyz";
17
17
  function constructExplorerOrderDetailsLink(orderId) {
18
18
  return `${VELORA_EXPLORER_URL}/order/${orderId}`;
19
19
  }
20
- function constructExplorerUserDetailsLink(userAddress) {
21
- return `${VELORA_EXPLORER_URL}/address/${userAddress}`;
22
- }
23
20
  const constructTxLinkForChain = ({
24
21
  chainId,
25
22
  txHash
@@ -29,5 +26,5 @@ const constructTxLinkForChain = ({
29
26
  return constructTxLink(explorer, txHash);
30
27
  };
31
28
 
32
- export { constructExplorerOrderDetailsLink, constructExplorerUserDetailsLink, constructTxLink, constructTxLinkForChain };
29
+ export { constructExplorerOrderDetailsLink, constructTxLink, constructTxLinkForChain };
33
30
  //# sourceMappingURL=explorer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"explorer.js","sources":["../../../src/lib/utils/explorer.ts"],"sourcesContent":["import type { SupportedChainId } from \"../web3/wagmi/types\";\nimport { chainConfigMap } from \"../web3/wagmi/constants\";\nimport type { Address } from \"viem\";\n\nexport const constructAddressLink = (\n explorer: string,\n address: string\n): string => {\n return `${explorer}/address/${address}`;\n};\nexport const constructTxLink = (explorer: string, address: string): string => {\n return `${explorer}/tx/${address}`;\n};\n\nconst VELORA_EXPLORER_URL = \"https://explorer.velora.xyz\";\n\nexport function constructExplorerOrderDetailsLink(orderId: string): string {\n return `${VELORA_EXPLORER_URL}/order/${orderId}`;\n}\n\nexport function constructExplorerUserDetailsLink(userAddress: Address): string {\n return `${VELORA_EXPLORER_URL}/address/${userAddress}`;\n}\n\ntype ConstructAddressLinkForChainInput = {\n chainId: SupportedChainId;\n address: string;\n};\n\nexport const constructAddressLinkForChain = ({\n chainId,\n address,\n}: ConstructAddressLinkForChainInput): string | undefined => {\n const explorer = chainConfigMap[chainId].blockExplorers?.default.url;\n if (!explorer) return;\n\n return constructAddressLink(explorer, address);\n};\n\ntype ConstructTxLinkForChainInput = {\n chainId: SupportedChainId;\n txHash: string;\n};\n\nexport const constructTxLinkForChain = ({\n chainId,\n txHash,\n}: ConstructTxLinkForChainInput): string | undefined => {\n const explorer = chainConfigMap[chainId].blockExplorers?.default.url;\n if (!explorer) return;\n\n return constructTxLink(explorer, txHash);\n};\n"],"names":["constructTxLink","explorer","address","VELORA_EXPLORER_URL","constructExplorerOrderDetailsLink","orderId","constructExplorerUserDetailsLink","userAddress","constructTxLinkForChain","chainId","txHash","chainConfigMap","blockExplorers","default","url"],"mappings":";;;;;;;;;;;;AAUO,MAAMA,eAAAA,GAAkBA,CAACC,QAAAA,EAAkBC,OAAAA,KAA4B;AAC5E,EAAA,OAAO,CAAA,EAAGD,QAAQ,CAAA,IAAA,EAAOC,OAAO,CAAA,CAAA;AAClC;AAEA,MAAMC,mBAAAA,GAAsB,6BAAA;AAErB,SAASC,kCAAkCC,OAAAA,EAAyB;AACzE,EAAA,OAAO,CAAA,EAAGF,mBAAmB,CAAA,OAAA,EAAUE,OAAO,CAAA,CAAA;AAChD;AAEO,SAASC,iCAAiCC,WAAAA,EAA8B;AAC7E,EAAA,OAAO,CAAA,EAAGJ,mBAAmB,CAAA,SAAA,EAAYI,WAAW,CAAA,CAAA;AACtD;AAsBO,MAAMC,0BAA0BA,CAAC;AAAA,EACtCC,OAAAA;AAAAA,EACAC;AAC4B,CAAA,KAA0B;AACtD,EAAA,MAAMT,QAAAA,GAAWU,cAAAA,CAAeF,OAAO,CAAA,CAAEG,gBAAgBC,OAAAA,CAAQC,GAAAA;AACjE,EAAA,IAAI,CAACb,QAAAA,EAAU;AAEf,EAAA,OAAOD,eAAAA,CAAgBC,UAAUS,MAAM,CAAA;AACzC;;;;"}
1
+ {"version":3,"file":"explorer.js","sources":["../../../src/lib/utils/explorer.ts"],"sourcesContent":["import type { SupportedChainId } from \"../web3/wagmi/types\";\nimport { chainConfigMap } from \"../web3/wagmi/constants\";\n\nexport const constructAddressLink = (\n explorer: string,\n address: string\n): string => {\n return `${explorer}/address/${address}`;\n};\nexport const constructTxLink = (explorer: string, address: string): string => {\n return `${explorer}/tx/${address}`;\n};\n\nconst VELORA_EXPLORER_URL = \"https://explorer.velora.xyz\";\n\nexport function constructExplorerOrderDetailsLink(orderId: string): string {\n return `${VELORA_EXPLORER_URL}/order/${orderId}`;\n}\n\ntype ConstructAddressLinkForChainInput = {\n chainId: SupportedChainId;\n address: string;\n};\n\nexport const constructAddressLinkForChain = ({\n chainId,\n address,\n}: ConstructAddressLinkForChainInput): string | undefined => {\n const explorer = chainConfigMap[chainId].blockExplorers?.default.url;\n if (!explorer) return;\n\n return constructAddressLink(explorer, address);\n};\n\ntype ConstructTxLinkForChainInput = {\n chainId: SupportedChainId;\n txHash: string;\n};\n\nexport const constructTxLinkForChain = ({\n chainId,\n txHash,\n}: ConstructTxLinkForChainInput): string | undefined => {\n const explorer = chainConfigMap[chainId].blockExplorers?.default.url;\n if (!explorer) return;\n\n return constructTxLink(explorer, txHash);\n};\n"],"names":["constructTxLink","explorer","address","VELORA_EXPLORER_URL","constructExplorerOrderDetailsLink","orderId","constructTxLinkForChain","chainId","txHash","chainConfigMap","blockExplorers","default","url"],"mappings":";;;;;;;;;;;;AASO,MAAMA,eAAAA,GAAkBA,CAACC,QAAAA,EAAkBC,OAAAA,KAA4B;AAC5E,EAAA,OAAO,CAAA,EAAGD,QAAQ,CAAA,IAAA,EAAOC,OAAO,CAAA,CAAA;AAClC;AAEA,MAAMC,mBAAAA,GAAsB,6BAAA;AAErB,SAASC,kCAAkCC,OAAAA,EAAyB;AACzE,EAAA,OAAO,CAAA,EAAGF,mBAAmB,CAAA,OAAA,EAAUE,OAAO,CAAA,CAAA;AAChD;AAsBO,MAAMC,0BAA0BA,CAAC;AAAA,EACtCC,OAAAA;AAAAA,EACAC;AAC4B,CAAA,KAA0B;AACtD,EAAA,MAAMP,QAAAA,GAAWQ,cAAAA,CAAeF,OAAO,CAAA,CAAEG,gBAAgBC,OAAAA,CAAQC,GAAAA;AACjE,EAAA,IAAI,CAACX,QAAAA,EAAU;AAEf,EAAA,OAAOD,eAAAA,CAAgBC,UAAUO,MAAM,CAAA;AACzC;;;;"}
package/dist/styles.css CHANGED
@@ -838,10 +838,6 @@
838
838
  width: 34px;
839
839
  }
840
840
 
841
- .w-\[40px\] {
842
- width: 40px;
843
- }
844
-
845
841
  .w-\[42px\] {
846
842
  width: 42px;
847
843
  }