@velora-dex/widget 0.3.2 → 0.3.3

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 (100) hide show
  1. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js +5 -11
  2. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
  3. package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
  4. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.d.ts +3 -3
  5. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.d.ts.map +1 -1
  6. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js +96 -68
  7. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js.map +1 -1
  8. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.d.ts.map +1 -1
  9. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.js +94 -66
  10. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.js.map +1 -1
  11. package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
  12. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +8 -0
  13. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  14. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.d.ts +2 -2
  15. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.d.ts.map +1 -1
  16. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.js +115 -46
  17. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.js.map +1 -1
  18. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.d.ts.map +1 -1
  19. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js +41 -35
  20. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js.map +1 -1
  21. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts +2 -2
  22. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
  23. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +31 -25
  24. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  25. package/dist/components/widget/TradeOverview/TradeError/utils.d.ts.map +1 -1
  26. package/dist/components/widget/TradeOverview/TradeError/utils.js +5 -0
  27. package/dist/components/widget/TradeOverview/TradeError/utils.js.map +1 -1
  28. package/dist/components/widget/TradeOverview/TradeOverview.d.ts.map +1 -1
  29. package/dist/components/widget/TradeOverview/TradeOverview.js +12 -11
  30. package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
  31. package/dist/components/widget/TradeOverview/TradeOverviewFooter.d.ts +3 -2
  32. package/dist/components/widget/TradeOverview/TradeOverviewFooter.d.ts.map +1 -1
  33. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js +50 -42
  34. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js.map +1 -1
  35. package/dist/core/Updaters.d.ts.map +1 -1
  36. package/dist/core/Updaters.js +2 -0
  37. package/dist/core/Updaters.js.map +1 -1
  38. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
  39. package/dist/core/button/hooks/useWidgetButtonExtraProps.js +4 -5
  40. package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  41. package/dist/core/screen/hooks/useOnClickOutside.d.ts.map +1 -1
  42. package/dist/core/screen/hooks/useOnClickOutside.js +9 -4
  43. package/dist/core/screen/hooks/useOnClickOutside.js.map +1 -1
  44. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.d.ts.map +1 -1
  45. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js +19 -2
  46. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js.map +1 -1
  47. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.js.map +1 -1
  48. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.d.ts +28 -0
  49. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.d.ts.map +1 -0
  50. package/dist/hooks/swap/prices/delta/mutations/{useCancelLimitDeltaOrders.js → useCancelDeltaOrders.js} +5 -5
  51. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js.map +1 -0
  52. package/dist/hooks/swap/prices/delta/orders/types.d.ts +1 -1
  53. package/dist/hooks/swap/prices/delta/orders/types.d.ts.map +1 -1
  54. package/dist/hooks/swap/prices/delta/orders/utils.d.ts +3 -0
  55. package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
  56. package/dist/hooks/swap/prices/delta/orders/utils.js +6 -3
  57. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  58. package/dist/hooks/swap/prices/delta/queries/errors.d.ts +10 -0
  59. package/dist/hooks/swap/prices/delta/queries/errors.d.ts.map +1 -0
  60. package/dist/hooks/swap/prices/delta/queries/errors.js +21 -0
  61. package/dist/hooks/swap/prices/delta/queries/errors.js.map +1 -0
  62. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts.map +1 -1
  63. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js +7 -4
  64. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
  65. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +10 -0
  66. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  67. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +70 -10
  68. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  69. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts +2 -0
  70. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts.map +1 -1
  71. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js +42 -23
  72. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  73. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
  74. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +22 -5
  75. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  76. package/dist/hooks/txs/queries/useAwaitTx.d.ts.map +1 -1
  77. package/dist/hooks/txs/queries/useAwaitTx.js +9 -4
  78. package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
  79. package/dist/hooks/useChainMatches.d.ts +7 -0
  80. package/dist/hooks/useChainMatches.d.ts.map +1 -0
  81. package/dist/hooks/useChainMatches.js +31 -0
  82. package/dist/hooks/useChainMatches.js.map +1 -0
  83. package/dist/hooks/useMinViemClient.d.ts +16 -0
  84. package/dist/hooks/useMinViemClient.d.ts.map +1 -1
  85. package/dist/hooks/useMinViemClient.js +62 -7
  86. package/dist/hooks/useMinViemClient.js.map +1 -1
  87. package/dist/hooks/useSwitchChainWithGuard.d.ts +12 -0
  88. package/dist/hooks/useSwitchChainWithGuard.d.ts.map +1 -0
  89. package/dist/hooks/useSwitchChainWithGuard.js +70 -0
  90. package/dist/hooks/useSwitchChainWithGuard.js.map +1 -0
  91. package/dist/lib/web3/wagmi/transports.js +1 -1
  92. package/dist/lib/web3/wagmi/transports.js.map +1 -1
  93. package/dist/transactions/queries/ensureTxReceipt.d.ts +2 -1
  94. package/dist/transactions/queries/ensureTxReceipt.d.ts.map +1 -1
  95. package/dist/transactions/queries/ensureTxReceipt.js +22 -26
  96. package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
  97. package/package.json +1 -1
  98. package/dist/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.d.ts +0 -28
  99. package/dist/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.d.ts.map +0 -1
  100. package/dist/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.js.map +0 -1
@@ -1,7 +1,9 @@
1
1
  import { d as distExports } from '../_virtual/index.js';
2
2
  import 'react';
3
- import { useConnectorClient } from 'wagmi';
3
+ import { useQueryClient } from '@tanstack/react-query';
4
+ import { useAccount, useChainId, useConnectorClient, useConfig } from 'wagmi';
4
5
  import { signTypedData, writeContract, readContract } from 'viem/actions';
6
+ import { getConnectorClientQueryOptions } from 'wagmi/query';
5
7
 
6
8
  function useMinViemClient(options) {
7
9
  const $ = distExports.c(7);
@@ -19,11 +21,7 @@ function useMinViemClient(options) {
19
21
  }
20
22
  let t12;
21
23
  if ($[0] !== connectorClient) {
22
- t12 = {
23
- readContract: (params) => readContract(connectorClient, params),
24
- writeContract: (params_0) => writeContract(connectorClient, params_0),
25
- signTypedData: (params_1) => signTypedData(connectorClient, params_1)
26
- };
24
+ t12 = constructMinViemClient(connectorClient);
27
25
  $[0] = connectorClient;
28
26
  $[1] = t12;
29
27
  } else {
@@ -50,6 +48,63 @@ function useMinViemClient(options) {
50
48
  }
51
49
  return t1;
52
50
  }
51
+ function constructMinViemClient(connectorClient) {
52
+ return {
53
+ readContract: (params) => readContract(connectorClient, params),
54
+ writeContract: (params) => writeContract(connectorClient, params),
55
+ signTypedData: (params) => signTypedData(connectorClient, params)
56
+ };
57
+ }
58
+ function useCacheMinViemClient() {
59
+ const $ = distExports.c(3);
60
+ const {
61
+ address: account
62
+ } = useAccount();
63
+ const chainId = useChainId();
64
+ let t0;
65
+ if ($[0] !== account || $[1] !== chainId) {
66
+ t0 = {
67
+ chainId,
68
+ account
69
+ };
70
+ $[0] = account;
71
+ $[1] = chainId;
72
+ $[2] = t0;
73
+ } else {
74
+ t0 = $[2];
75
+ }
76
+ useConnectorClient(t0);
77
+ }
78
+ function useEnsureConnectorClient() {
79
+ const $ = distExports.c(5);
80
+ const queryClient = useQueryClient();
81
+ const config = useConfig();
82
+ let t0;
83
+ if ($[0] !== config || $[1] !== queryClient) {
84
+ t0 = async (options) => {
85
+ const queryOptions = getConnectorClientQueryOptions(config, options);
86
+ const connectorClient = await queryClient.ensureQueryData(queryOptions);
87
+ return constructMinViemClient(connectorClient);
88
+ };
89
+ $[0] = config;
90
+ $[1] = queryClient;
91
+ $[2] = t0;
92
+ } else {
93
+ t0 = $[2];
94
+ }
95
+ const ensureViemClient = t0;
96
+ let t1;
97
+ if ($[3] !== ensureViemClient) {
98
+ t1 = {
99
+ ensureViemClient
100
+ };
101
+ $[3] = ensureViemClient;
102
+ $[4] = t1;
103
+ } else {
104
+ t1 = $[4];
105
+ }
106
+ return t1;
107
+ }
53
108
 
54
- export { useMinViemClient };
109
+ export { useCacheMinViemClient, useEnsureConnectorClient, useMinViemClient };
55
110
  //# sourceMappingURL=useMinViemClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useMinViemClient.js","sources":["../../src/hooks/useMinViemClient.ts"],"sourcesContent":["import { useMemo } from \"react\";\nimport { useConnectorClient } from \"wagmi\";\nimport { readContract, signTypedData, writeContract } from \"viem/actions\";\nimport type { Address } from \"viem\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { MinViemClient } from \"@velora-dex/sdk\";\n\ntype UseMinViemClientInput = {\n chainId?: SupportedChainId;\n account?: Address;\n};\n\ntype UseMinViemClientResult = {\n minClient?: MinViemClient;\n isLoading: boolean;\n error: Error | null;\n isError: boolean;\n};\n\nexport function useMinViemClient(\n options?: UseMinViemClientInput\n): UseMinViemClientResult {\n const {\n data: connectorClient,\n isLoading,\n error,\n isError,\n } = useConnectorClient(options);\n\n const minClient = useMemo<MinViemClient | undefined>(() => {\n if (!connectorClient) return;\n\n // walletClient(useWalletClient) has writeContract and signTypedData,\n // publicClient(usePublicClient) has readContract\n // sdk requires all of them,\n // easier to compose connectorClient + viem actions (readContract, writeContract)\n return {\n readContract: (params) => readContract(connectorClient, params),\n writeContract: (params) => writeContract(connectorClient, params),\n signTypedData: (params) => signTypedData(connectorClient, params),\n };\n }, [connectorClient]);\n\n return {\n minClient,\n isLoading,\n error,\n isError,\n };\n}\n"],"names":["useMinViemClient","options","$","_c","data","connectorClient","isLoading","error","isError","useConnectorClient","t0","bb0","undefined","t1","readContract","params","writeContract","params_0","signTypedData","params_1","minClient"],"mappings":";;;;;AAmBO,SAAAA,iBAAAC,OAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAGL,EAAA,MAAA;AAAA,IAAAC,IAAAA,EAAAC,eAAAA;AAAAA,IAAAC,SAAAA;AAAAA,IAAAC,KAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAKIC,mBAAmBR,OAAO,CAAA;AAAE,EAAA,IAAAS,EAAAA;AAAAC,EAAAA,GAAAA,EAAA;AAG9B,IAAA,IAAI,CAACN,eAAAA,EAAe;AAAEK,MAAAA,EAAAA,GAAAE,MAAAA;AAAA,MAAA,MAAAD,GAAAA;AAAAA,IAAO;AAAA,IAAA,IAAAE,GAAAA;AAAA,IAAA,IAAAX,CAAAA,QAAAG,eAAAA,EAAA;AAMtBQ,MAAAA,GAAAA,GAAA;AAAA,QAAAC,YAAAA,EACSC,CAAAA,MAAAA,KAAYD,YAAAA,CAAaT,eAAAA,EAAiBU,MAAM,CAAA;AAAA,QAACC,aAAAA,EAChDC,CAAAA,QAAAA,KAAYD,aAAAA,CAAcX,eAAAA,EAAiBU,QAAM,CAAA;AAAA,QAACG,aAAAA,EAClDC,CAAAA,QAAAA,KAAYD,aAAAA,CAAcb,eAAAA,EAAiBU,QAAM;AAAA,OAClE;AAACb,MAAAA,CAAAA,MAAAG,eAAAA;AAAAH,MAAAA,CAAAA,MAAAW,GAAAA;AAAAA,IAAA,CAAA,MAAA;AAAAA,MAAAA,GAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA,IAAA;AAJDQ,IAAAA,EAAAA,GAAOG,GAAAA;AAAAA,EAIL;AAXJ,EAAA,MAAAO,SAAAA,GAAkBV,EAAAA;AAYI,EAAA,IAAAG,EAAAA;AAAA,EAAA,IAAAX,CAAAA,CAAA,CAAA,CAAA,KAAAK,KAAAA,IAAAL,EAAA,CAAA,CAAA,KAAAM,OAAAA,IAAAN,CAAAA,CAAA,CAAA,CAAA,KAAAI,SAAAA,IAAAJ,CAAAA,QAAAkB,SAAAA,EAAA;AAEfP,IAAAA,EAAAA,GAAA;AAAA,MAAAO,SAAAA;AAAAA,MAAAd,SAAAA;AAAAA,MAAAC,KAAAA;AAAAA,MAAAC;AAAAA,KAKP;AAACN,IAAAA,CAAAA,MAAAK,KAAAA;AAAAL,IAAAA,CAAAA,MAAAM,OAAAA;AAAAN,IAAAA,CAAAA,MAAAI,SAAAA;AAAAJ,IAAAA,CAAAA,MAAAkB,SAAAA;AAAAlB,IAAAA,CAAAA,MAAAW,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OALMW,EAAAA;AAKN;;;;"}
1
+ {"version":3,"file":"useMinViemClient.js","sources":["../../src/hooks/useMinViemClient.ts"],"sourcesContent":["import { useCallback, useMemo } from \"react\";\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { useAccount, useChainId, useConfig, useConnectorClient } from \"wagmi\";\nimport { readContract, signTypedData, writeContract } from \"viem/actions\";\nimport type { Address } from \"viem\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { MinViemClient } from \"@velora-dex/sdk\";\nimport { getConnectorClientQueryOptions } from \"wagmi/query\";\nimport type { GetConnectorClientReturnType } from \"@wagmi/core\";\nimport type { wagmiConfig } from \"@/lib/web3/wagmi/config\";\n\ntype UseMinViemClientInput = {\n chainId?: SupportedChainId;\n account?: Address;\n};\n\ntype UseMinViemClientResult = {\n minClient?: MinViemClient;\n isLoading: boolean;\n error: Error | null;\n isError: boolean;\n};\n\ntype ConnectorClient = GetConnectorClientReturnType<\n typeof wagmiConfig,\n SupportedChainId\n>;\n\nexport function useMinViemClient(\n options?: UseMinViemClientInput\n): UseMinViemClientResult {\n const {\n data: connectorClient,\n isLoading,\n error,\n isError,\n } = useConnectorClient(options);\n\n const minClient = useMemo<MinViemClient | undefined>(() => {\n if (!connectorClient) return;\n\n // walletClient(useWalletClient) has writeContract and signTypedData,\n // publicClient(usePublicClient) has readContract\n // sdk requires all of them,\n // easier to compose connectorClient + viem actions (readContract, writeContract)\n return constructMinViemClient(connectorClient);\n }, [connectorClient]);\n\n return {\n minClient,\n isLoading,\n error,\n isError,\n };\n}\n\nfunction constructMinViemClient(\n connectorClient: ConnectorClient\n): MinViemClient {\n return {\n readContract: (params) => readContract(connectorClient, params),\n writeContract: (params) => writeContract(connectorClient, params),\n signTypedData: (params) => signTypedData(connectorClient, params),\n };\n}\n\n/**\n * Keep one subscriber to useConnectorClient query at all times\n * to avoid async client creation on useMinViemClient mount\n * and first useConnectorClient().data being undefined for a short time,\n * which breaks Fill OTC flow which starts from Activities screen\n */\nexport function useCacheMinViemClient() {\n const { address: account } = useAccount();\n const chainId = useChainId();\n useConnectorClient({\n chainId,\n account,\n });\n}\n\ntype EnsureMinViemClientOptions = {\n chainId?: SupportedChainId;\n connector?: ReturnType<typeof useAccount>[\"connector\"];\n};\n\ntype UseEnsureConnectorClientResult = {\n ensureViemClient: (options: UseMinViemClientInput) => Promise<MinViemClient>;\n};\n\n/**\n * Returns a function that loads the connector client on demand via\n * queryClient.ensureQueryData and getConnectorClientQueryOptions.\n * Uses current account's chainId and connector when options are omitted.\n */\nexport function useEnsureConnectorClient(): UseEnsureConnectorClientResult {\n const queryClient = useQueryClient();\n const config = useConfig();\n\n const ensureViemClient = useCallback(\n async (options: EnsureMinViemClientOptions): Promise<MinViemClient> => {\n const queryOptions = getConnectorClientQueryOptions(config, options);\n\n const connectorClient = await queryClient.ensureQueryData(queryOptions);\n\n return constructMinViemClient(connectorClient);\n },\n [queryClient, config]\n );\n\n return { ensureViemClient };\n}\n"],"names":["useMinViemClient","options","$","_c","data","connectorClient","isLoading","error","isError","useConnectorClient","t0","bb0","undefined","t1","constructMinViemClient","minClient","readContract","params","writeContract","signTypedData","useCacheMinViemClient","address","account","useAccount","chainId","useChainId","useEnsureConnectorClient","queryClient","useQueryClient","config","useConfig","queryOptions","getConnectorClientQueryOptions","ensureQueryData","ensureViemClient"],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { SupportedChainId } from '../lib/web3/wagmi/types';
2
+ import { UseMutationOptions } from '@tanstack/react-query';
3
+ type SwitchChainWithGuardInput = {
4
+ chainId: SupportedChainId;
5
+ };
6
+ type UseSwitchChainWithGuardMutationOption = Omit<UseMutationOptions<void, Error, SwitchChainWithGuardInput, void>, "mutationFn" | "mutationKey">;
7
+ type UseSwitchChainWithGuardInput = {
8
+ mutationOptions?: UseSwitchChainWithGuardMutationOption;
9
+ };
10
+ export declare function useSwitchChainWithGuard({ mutationOptions, }?: UseSwitchChainWithGuardInput): import('@tanstack/react-query').UseMutationResult<void, Error, SwitchChainWithGuardInput, void>;
11
+ export {};
12
+ //# sourceMappingURL=useSwitchChainWithGuard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSwitchChainWithGuard.d.ts","sourceRoot":"","sources":["../../src/hooks/useSwitchChainWithGuard.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG/D,OAAO,EAAe,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE7E,KAAK,yBAAyB,GAAG;IAC/B,OAAO,EAAE,gBAAgB,CAAC;CAC3B,CAAC;AAEF,KAAK,qCAAqC,GAAG,IAAI,CAC/C,kBAAkB,CAAC,IAAI,EAAE,KAAK,EAAE,yBAAyB,EAAE,IAAI,CAAC,EAChE,YAAY,GAAG,aAAa,CAC7B,CAAC;AAEF,KAAK,4BAA4B,GAAG;IAClC,eAAe,CAAC,EAAE,qCAAqC,CAAC;CACzD,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,EACtC,eAAe,GAChB,GAAE,4BAAiC,mGAkBnC"}
@@ -0,0 +1,70 @@
1
+ import { d as distExports } from '../_virtual/index.js';
2
+ import { switchChain } from '../lib/web3/wagmi/switchChain.js';
3
+ import { useEnsureConnectorClient } from './useMinViemClient.js';
4
+ import { useAccount } from 'wagmi';
5
+ import { useMutation } from '@tanstack/react-query';
6
+
7
+ function useSwitchChainWithGuard(t0) {
8
+ const $ = distExports.c(9);
9
+ let t1;
10
+ if ($[0] !== t0) {
11
+ t1 = {} ;
12
+ $[0] = t0;
13
+ $[1] = t1;
14
+ } else {
15
+ t1 = $[1];
16
+ }
17
+ const {
18
+ mutationOptions
19
+ } = t1;
20
+ const {
21
+ address: account
22
+ } = useAccount();
23
+ const {
24
+ ensureViemClient
25
+ } = useEnsureConnectorClient();
26
+ let t2;
27
+ if ($[2] === Symbol.for("react.memo_cache_sentinel")) {
28
+ t2 = ["switchChainWithGuard"];
29
+ $[2] = t2;
30
+ } else {
31
+ t2 = $[2];
32
+ }
33
+ let t3;
34
+ if ($[3] !== account || $[4] !== ensureViemClient) {
35
+ t3 = async (t42) => {
36
+ const {
37
+ chainId
38
+ } = t42;
39
+ await switchChain({
40
+ chainId
41
+ });
42
+ await ensureViemClient({
43
+ chainId,
44
+ account
45
+ });
46
+ };
47
+ $[3] = account;
48
+ $[4] = ensureViemClient;
49
+ $[5] = t3;
50
+ } else {
51
+ t3 = $[5];
52
+ }
53
+ let t4;
54
+ if ($[6] !== mutationOptions || $[7] !== t3) {
55
+ t4 = {
56
+ mutationKey: t2,
57
+ mutationFn: t3,
58
+ ...mutationOptions
59
+ };
60
+ $[6] = mutationOptions;
61
+ $[7] = t3;
62
+ $[8] = t4;
63
+ } else {
64
+ t4 = $[8];
65
+ }
66
+ return useMutation(t4);
67
+ }
68
+
69
+ export { useSwitchChainWithGuard };
70
+ //# sourceMappingURL=useSwitchChainWithGuard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSwitchChainWithGuard.js","sources":["../../src/hooks/useSwitchChainWithGuard.ts"],"sourcesContent":["import { switchChain as switchChainUtil } from \"@/lib/web3/wagmi/switchChain\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useEnsureConnectorClient } from \"./useMinViemClient\";\nimport { useAccount } from \"wagmi\";\nimport { useMutation, type UseMutationOptions } from \"@tanstack/react-query\";\n\ntype SwitchChainWithGuardInput = {\n chainId: SupportedChainId;\n};\n\ntype UseSwitchChainWithGuardMutationOption = Omit<\n UseMutationOptions<void, Error, SwitchChainWithGuardInput, void>,\n \"mutationFn\" | \"mutationKey\"\n>;\n\ntype UseSwitchChainWithGuardInput = {\n mutationOptions?: UseSwitchChainWithGuardMutationOption;\n};\n\nexport function useSwitchChainWithGuard({\n mutationOptions,\n}: UseSwitchChainWithGuardInput = {}) {\n const { address: account } = useAccount();\n const { ensureViemClient } = useEnsureConnectorClient();\n\n return useMutation<void, Error, SwitchChainWithGuardInput, void>({\n mutationKey: [\"switchChainWithGuard\"],\n mutationFn: async ({ chainId }) => {\n await switchChainUtil({\n chainId,\n });\n // guard against using minClient with wrong chainId\n await ensureViemClient({\n chainId,\n account,\n });\n },\n ...mutationOptions,\n });\n}\n"],"names":["useSwitchChainWithGuard","t0","$","_c","t1","mutationOptions","address","account","useAccount","ensureViemClient","useEnsureConnectorClient","t2","Symbol","for","t3","t4","chainId","switchChainUtil","mutationKey","mutationFn","useMutation"],"mappings":";;;;;;AAmBO,SAAAA,wBAAAC,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAA,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAD,EAAAA,EAAA;AAAiCG,IAAAA,EAAAA,GAAA,EAEL,CAFKH;AAEJC,IAAAA,CAAAA,MAAAD,EAAAA;AAAAC,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAFI,EAAA,MAAA;AAAA,IAAAG;AAAAA,GAAA,GAAAD,EAAAA;AAGtC,EAAA,MAAA;AAAA,IAAAE,OAAAA,EAAAC;AAAAA,MAA6BC,UAAAA,EAAW;AACxC,EAAA,MAAA;AAAA,IAAAC;AAAAA,MAA6BC,wBAAAA,EAAyB;AAAE,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAT,EAAA,CAAA,CAAA,KAAAU,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAGzCF,IAAAA,EAAAA,GAAA,CAAC,sBAAsB,CAAA;AAACT,IAAAA,CAAAA,MAAAS,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAT,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAZ,EAAA,CAAA,CAAA,KAAAK,WAAAL,CAAAA,QAAAO,gBAAAA,EAAA;AACzBK,IAAAA,EAAAA,UAAAC,GAAAA,KAAA;AAAO,MAAA,MAAA;AAAA,QAAAC;AAAAA,OAAA,GAAAD,GAAAA;AACjB,MAAA,MAAME,WAAAA,CAAgB;AAAA,QAAAD;AAAAA,OAErB,CAAA;AAED,MAAA,MAAMP,gBAAAA,CAAiB;AAAA,QAAAO,OAAAA;AAAAA,QAAAT;AAAAA,OAGtB,CAAA;AAAA,IAAC,CAAA;AACHL,IAAAA,CAAAA,MAAAK,OAAAA;AAAAL,IAAAA,CAAAA,MAAAO,gBAAAA;AAAAP,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAa,EAAAA;AAAA,EAAA,IAAAb,EAAA,CAAA,CAAA,KAAAG,mBAAAH,CAAAA,QAAAY,EAAAA,EAAA;AAX8DC,IAAAA,EAAAA,GAAA;AAAA,MAAAG,WAAAA,EAClDP,EAAAA;AAAAA,MAAwBQ,UAAAA,EACzBL,EAAAA;AAAAA,MASX,GACET;AAAAA,KACL;AAACH,IAAAA,CAAAA,MAAAG,eAAAA;AAAAH,IAAAA,CAAAA,MAAAY,EAAAA;AAAAZ,IAAAA,CAAAA,MAAAa,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAb,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAbMkB,YAA0DL,EAahE,CAAA;AAAC;;;;"}
@@ -5,7 +5,7 @@ import { unichain, sonic, bsc, gnosis, avalanche, arbitrum, base, polygon, optim
5
5
  const rpcMap = {
6
6
  [mainnet.id]: "https://ethereum-rpc.publicnode.com",
7
7
  [optimism.id]: "https://optimism.drpc.org",
8
- [polygon.id]: "https://polygon-rpc.com",
8
+ [polygon.id]: "https://1rpc.io/matic",
9
9
  [base.id]: "https://base.publicnode.com",
10
10
  [arbitrum.id]: "https://arb1.arbitrum.io/rpc",
11
11
  [avalanche.id]: "https://api.avax.network/ext/bc/C/rpc",
@@ -1 +1 @@
1
- {"version":3,"file":"transports.js","sources":["../../../../src/lib/web3/wagmi/transports.ts"],"sourcesContent":["import { fallback, http } from \"wagmi\";\n\nimport {\n mainnet,\n optimism,\n polygon,\n base,\n arbitrum,\n avalanche,\n gnosis,\n bsc,\n sonic,\n unichain,\n} from \"./supportedChains\";\nimport { supportedChainIds } from \"./constants\";\nimport type { SupportedChainId } from \"./types\";\nimport type { FallbackTransport, Transport } from \"viem\";\n\nconst rpcMap: Record<SupportedChainId, string> = {\n [mainnet.id]: \"https://ethereum-rpc.publicnode.com\",\n [optimism.id]: \"https://optimism.drpc.org\",\n [polygon.id]: \"https://polygon-rpc.com\",\n [base.id]: \"https://base.publicnode.com\",\n [arbitrum.id]: \"https://arb1.arbitrum.io/rpc\",\n [avalanche.id]: \"https://api.avax.network/ext/bc/C/rpc\",\n [gnosis.id]: \"https://rpc.gnosischain.com\",\n [bsc.id]: \"https://binance.llamarpc.com\",\n [sonic.id]: \"https://rpc.soniclabs.com\",\n [unichain.id]: \"https://unichain.drpc.org\",\n};\n\nconst veloraRpcUrl = \"https://rpc.paraswap.io\";\n\nconst fallbackRpcMap = Object.fromEntries(\n supportedChainIds.map((chainId) => [chainId, `${veloraRpcUrl}/${chainId}`])\n) as Record<SupportedChainId, string>;\n\nexport const transports = Object.fromEntries(\n supportedChainIds.map((chainId) => [\n chainId,\n fallback([http(rpcMap[chainId]), http(fallbackRpcMap[chainId])]),\n ])\n) as Record<SupportedChainId, FallbackTransport<Transport[]>>;\n"],"names":["rpcMap","mainnet","id","optimism","polygon","base","arbitrum","avalanche","gnosis","bsc","sonic","unichain","veloraRpcUrl","fallbackRpcMap","Object","fromEntries","supportedChainIds","map","chainId","transports","fallback","http"],"mappings":";;;;AAkBA,MAAMA,MAAAA,GAA2C;AAAA,EAC/C,CAACC,OAAAA,CAAQC,EAAE,GAAG,qCAAA;AAAA,EACd,CAACC,QAAAA,CAASD,EAAE,GAAG,2BAAA;AAAA,EACf,CAACE,OAAAA,CAAQF,EAAE,GAAG,yBAAA;AAAA,EACd,CAACG,IAAAA,CAAKH,EAAE,GAAG,6BAAA;AAAA,EACX,CAACI,QAAAA,CAASJ,EAAE,GAAG,8BAAA;AAAA,EACf,CAACK,SAAAA,CAAUL,EAAE,GAAG,uCAAA;AAAA,EAChB,CAACM,MAAAA,CAAON,EAAE,GAAG,6BAAA;AAAA,EACb,CAACO,GAAAA,CAAIP,EAAE,GAAG,8BAAA;AAAA,EACV,CAACQ,KAAAA,CAAMR,EAAE,GAAG,2BAAA;AAAA,EACZ,CAACS,QAAAA,CAAST,EAAE,GAAG;AACjB,CAAA;AAEA,MAAMU,YAAAA,GAAe,yBAAA;AAErB,MAAMC,cAAAA,GAAiBC,MAAAA,CAAOC,WAAAA,CAC5BC,iBAAAA,CAAkBC,IAAKC,CAAAA,OAAAA,KAAY,CAACA,OAAAA,EAAS,CAAA,EAAGN,YAAY,CAAA,CAAA,EAAIM,OAAO,CAAA,CAAE,CAAC,CAC5E,CAAA;AAEO,MAAMC,UAAAA,GAAaL,OAAOC,WAAAA,CAC/BC,iBAAAA,CAAkBC,IAAKC,CAAAA,OAAAA,KAAY,CACjCA,OAAAA,EACAE,QAAAA,CAAS,CAACC,IAAAA,CAAKrB,OAAOkB,OAAO,CAAC,CAAA,EAAGG,IAAAA,CAAKR,cAAAA,CAAeK,OAAO,CAAC,CAAC,CAAC,CAAC,CACjE,CACH;;;;"}
1
+ {"version":3,"file":"transports.js","sources":["../../../../src/lib/web3/wagmi/transports.ts"],"sourcesContent":["import { fallback, http } from \"wagmi\";\n\nimport {\n mainnet,\n optimism,\n polygon,\n base,\n arbitrum,\n avalanche,\n gnosis,\n bsc,\n sonic,\n unichain,\n} from \"./supportedChains\";\nimport { supportedChainIds } from \"./constants\";\nimport type { SupportedChainId } from \"./types\";\nimport type { FallbackTransport, Transport } from \"viem\";\n\nconst rpcMap: Record<SupportedChainId, string> = {\n [mainnet.id]: \"https://ethereum-rpc.publicnode.com\",\n [optimism.id]: \"https://optimism.drpc.org\",\n [polygon.id]: \"https://1rpc.io/matic\",\n [base.id]: \"https://base.publicnode.com\",\n [arbitrum.id]: \"https://arb1.arbitrum.io/rpc\",\n [avalanche.id]: \"https://api.avax.network/ext/bc/C/rpc\",\n [gnosis.id]: \"https://rpc.gnosischain.com\",\n [bsc.id]: \"https://binance.llamarpc.com\",\n [sonic.id]: \"https://rpc.soniclabs.com\",\n [unichain.id]: \"https://unichain.drpc.org\",\n};\n\nconst veloraRpcUrl = \"https://rpc.paraswap.io\";\n\nconst fallbackRpcMap = Object.fromEntries(\n supportedChainIds.map((chainId) => [chainId, `${veloraRpcUrl}/${chainId}`])\n) as Record<SupportedChainId, string>;\n\nexport const transports = Object.fromEntries(\n supportedChainIds.map((chainId) => [\n chainId,\n fallback([http(rpcMap[chainId]), http(fallbackRpcMap[chainId])]),\n ])\n) as Record<SupportedChainId, FallbackTransport<Transport[]>>;\n"],"names":["rpcMap","mainnet","id","optimism","polygon","base","arbitrum","avalanche","gnosis","bsc","sonic","unichain","veloraRpcUrl","fallbackRpcMap","Object","fromEntries","supportedChainIds","map","chainId","transports","fallback","http"],"mappings":";;;;AAkBA,MAAMA,MAAAA,GAA2C;AAAA,EAC/C,CAACC,OAAAA,CAAQC,EAAE,GAAG,qCAAA;AAAA,EACd,CAACC,QAAAA,CAASD,EAAE,GAAG,2BAAA;AAAA,EACf,CAACE,OAAAA,CAAQF,EAAE,GAAG,uBAAA;AAAA,EACd,CAACG,IAAAA,CAAKH,EAAE,GAAG,6BAAA;AAAA,EACX,CAACI,QAAAA,CAASJ,EAAE,GAAG,8BAAA;AAAA,EACf,CAACK,SAAAA,CAAUL,EAAE,GAAG,uCAAA;AAAA,EAChB,CAACM,MAAAA,CAAON,EAAE,GAAG,6BAAA;AAAA,EACb,CAACO,GAAAA,CAAIP,EAAE,GAAG,8BAAA;AAAA,EACV,CAACQ,KAAAA,CAAMR,EAAE,GAAG,2BAAA;AAAA,EACZ,CAACS,QAAAA,CAAST,EAAE,GAAG;AACjB,CAAA;AAEA,MAAMU,YAAAA,GAAe,yBAAA;AAErB,MAAMC,cAAAA,GAAiBC,MAAAA,CAAOC,WAAAA,CAC5BC,iBAAAA,CAAkBC,IAAKC,CAAAA,OAAAA,KAAY,CAACA,OAAAA,EAAS,CAAA,EAAGN,YAAY,CAAA,CAAA,EAAIM,OAAO,CAAA,CAAE,CAAC,CAC5E,CAAA;AAEO,MAAMC,UAAAA,GAAaL,OAAOC,WAAAA,CAC/BC,iBAAAA,CAAkBC,IAAKC,CAAAA,OAAAA,KAAY,CACjCA,OAAAA,EACAE,QAAAA,CAAS,CAACC,IAAAA,CAAKrB,OAAOkB,OAAO,CAAC,CAAA,EAAGG,IAAAA,CAAKR,cAAAA,CAAeK,OAAO,CAAC,CAAC,CAAC,CAAC,CACjE,CACH;;;;"}
@@ -3,7 +3,8 @@ import { wagmiConfig as _wagmiConfig } from '../../lib/web3/wagmi/config';
3
3
  import { QueryClient } from '@tanstack/react-query';
4
4
  import { MarkRequired } from 'ts-essentials';
5
5
  import { ReplacementReturnType, TransactionReceipt } from 'viem';
6
- type OnReplacedCb = (data: ReplacementReturnType) => void;
6
+ import { Chain } from 'wagmi/chains';
7
+ type OnReplacedCb = (data: ReplacementReturnType<Chain>) => void;
7
8
  export type EnsureTxReceiptFn = (options: MarkRequired<Pick<UseAwaitTxParameters, "hash" | "chainId" | "confirmations">, "hash" | "chainId"> & {
8
9
  onReplaced?: OnReplacedCb;
9
10
  }) => Promise<TransactionReceipt>;
@@ -1 +1 @@
1
- {"version":3,"file":"ensureTxReceipt.d.ts","sourceRoot":"","sources":["../../../src/transactions/queries/ensureTxReceipt.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,OAAO,EAAE,WAAW,IAAI,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAU,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAK9E,KAAK,YAAY,GAAG,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,CAAC;AAE1D,MAAM,MAAM,iBAAiB,GAAG,CAC9B,OAAO,EAAE,YAAY,CACnB,IAAI,CAAC,oBAAoB,EAAE,MAAM,GAAG,SAAS,GAAG,eAAe,CAAC,EAChE,MAAM,GAAG,SAAS,CACnB,GAAG;IACF,UAAU,CAAC,EAAE,YAAY,CAAC;CAC3B,KACE,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAEjC,KAAK,sBAAsB,GAAG,CAAC,MAAM,CAAC,EAAE;IACtC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,YAAY,CAAC;IAClC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,KAAK,iBAAiB,CAAC;AAExB,eAAO,MAAM,sBAAsB,EAAE,sBAmClC,CAAC"}
1
+ {"version":3,"file":"ensureTxReceipt.d.ts","sourceRoot":"","sources":["../../../src/transactions/queries/ensureTxReceipt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,OAAO,EAAE,WAAW,IAAI,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAU,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,KAAK,qBAAqB,EAAE,KAAK,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAI3E,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,cAAc,CAAC;AAI1C,KAAK,YAAY,GAAG,CAAC,IAAI,EAAE,qBAAqB,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;AAEjE,MAAM,MAAM,iBAAiB,GAAG,CAC9B,OAAO,EAAE,YAAY,CACnB,IAAI,CAAC,oBAAoB,EAAE,MAAM,GAAG,SAAS,GAAG,eAAe,CAAC,EAChE,MAAM,GAAG,SAAS,CACnB,GAAG;IACF,UAAU,CAAC,EAAE,YAAY,CAAC;CAC3B,KACE,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAEjC,KAAK,sBAAsB,GAAG,CAAC,MAAM,CAAC,EAAE;IACtC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,YAAY,CAAC;IAClC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,KAAK,iBAAiB,CAAC;AAExB,eAAO,MAAM,sBAAsB,EAAE,sBAsClC,CAAC"}
@@ -1,10 +1,12 @@
1
- import { isSafeConnector } from '../../hooks/connectors/useIsGnosisSafeConnector.js';
2
1
  import { queryClient } from '../../lib/queryClient.js';
3
2
  import { wagmiConfig } from '../../lib/web3/wagmi/config.js';
4
- import { getAccount, getConnectorClient } from '@wagmi/core';
5
- import { waitForTransactionReceipt } from 'viem/actions';
6
- import { waitForTransactionReceiptQueryKey } from 'wagmi/query';
3
+ import { assert } from 'ts-essentials';
4
+ import 'viem';
5
+ import { waitForTransactionReceiptQueryOptions } from 'wagmi/query';
7
6
  import { SAFE_CALLS_WAIT_TIMEOUT } from '../../lib/constants/index.js';
7
+ import 'wagmi/chains';
8
+ import { getAccount, getConnectorClient } from '@wagmi/core';
9
+ import { isSafeConnector } from '../../hooks/connectors/useIsGnosisSafeConnector.js';
8
10
 
9
11
  const ensureTxReceiptFactory = ({
10
12
  queryClient: queryClient$1 = queryClient,
@@ -17,37 +19,31 @@ const ensureTxReceiptFactory = ({
17
19
  onReplaced
18
20
  }) => {
19
21
  const timeout = isSafe ? SAFE_CALLS_WAIT_TIMEOUT : void 0;
20
- const queryKey = waitForTransactionReceiptQueryKey({
21
- hash,
22
- chainId,
23
- confirmations,
24
- timeout
25
- });
26
- let client;
22
+ let config = wagmiConfig$1;
27
23
  const {
28
24
  connector
29
25
  } = getAccount(wagmiConfig$1);
30
26
  if (connector && isSafeConnector(connector)) {
31
- client = await getConnectorClient(wagmiConfig$1, {
27
+ const safeClient = await getConnectorClient(wagmiConfig$1, {
32
28
  chainId,
33
29
  connector
34
30
  });
35
- } else {
36
- client = wagmiConfig$1.getClient({
37
- chainId
38
- });
31
+ config = {
32
+ ...wagmiConfig$1,
33
+ getClient: (options) => {
34
+ assert(!options || options.chainId === chainId, "chainId mismatch");
35
+ return safeClient;
36
+ }
37
+ };
39
38
  }
40
- const receipt = await queryClient$1.ensureQueryData({
41
- queryKey,
42
- queryFn: () => {
43
- return waitForTransactionReceipt(client, {
44
- hash,
45
- confirmations,
46
- onReplaced,
47
- timeout
48
- });
49
- }
39
+ const queryOptions = waitForTransactionReceiptQueryOptions(config, {
40
+ hash,
41
+ chainId,
42
+ confirmations,
43
+ timeout,
44
+ onReplaced
50
45
  });
46
+ const receipt = await queryClient$1.ensureQueryData(queryOptions);
51
47
  return receipt;
52
48
  };
53
49
 
@@ -1 +1 @@
1
- {"version":3,"file":"ensureTxReceipt.js","sources":["../../../src/transactions/queries/ensureTxReceipt.ts"],"sourcesContent":["import { isSafeConnector } from \"@/hooks/connectors/useIsGnosisSafeConnector\";\nimport type { UseAwaitTxParameters } from \"@/hooks/txs/queries/useAwaitTx\";\nimport { queryClient as _queryClient } from \"@/lib/queryClient\";\nimport { wagmiConfig as _wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport type { QueryClient } from \"@tanstack/react-query\";\nimport { getAccount, getConnectorClient } from \"@wagmi/core\";\nimport { waitForTransactionReceipt } from \"viem/actions\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type { Client, ReplacementReturnType, TransactionReceipt } from \"viem\";\n\nimport { waitForTransactionReceiptQueryKey } from \"wagmi/query\";\nimport { SAFE_CALLS_WAIT_TIMEOUT } from \"@/lib/constants\";\n\ntype OnReplacedCb = (data: ReplacementReturnType) => void;\n\nexport type EnsureTxReceiptFn = (\n options: MarkRequired<\n Pick<UseAwaitTxParameters, \"hash\" | \"chainId\" | \"confirmations\">,\n \"hash\" | \"chainId\"\n > & {\n onReplaced?: OnReplacedCb;\n }\n) => Promise<TransactionReceipt>;\n\ntype EnsureTxReceiptFactory = (params?: {\n queryClient?: QueryClient;\n wagmiConfig?: typeof _wagmiConfig;\n isSafe?: boolean;\n}) => EnsureTxReceiptFn;\n\nexport const ensureTxReceiptFactory: EnsureTxReceiptFactory =\n ({ queryClient = _queryClient, wagmiConfig = _wagmiConfig, isSafe } = {}) =>\n async ({ hash, chainId, confirmations, onReplaced }) => {\n const timeout = isSafe ? SAFE_CALLS_WAIT_TIMEOUT : undefined;\n const queryKey = waitForTransactionReceiptQueryKey({\n hash,\n chainId,\n confirmations,\n timeout,\n });\n\n let client: Client;\n const { connector } = getAccount(wagmiConfig);\n // always use connector client if connected through native safe connector.\n // safe provider returns a safeTxHash that is different from a real tx hash.\n // if connected to safe through WalletConnect - publicClient returns a real tx hash.\n if (connector && isSafeConnector(connector)) {\n client = await getConnectorClient(wagmiConfig, { chainId, connector });\n } else {\n client = wagmiConfig.getClient({ chainId });\n }\n\n const receipt = await queryClient.ensureQueryData({\n queryKey,\n queryFn: () => {\n return waitForTransactionReceipt(client, {\n hash,\n confirmations,\n onReplaced,\n timeout,\n });\n },\n });\n\n return receipt;\n };\n"],"names":["ensureTxReceiptFactory","queryClient","_queryClient","wagmiConfig","_wagmiConfig","isSafe","hash","chainId","confirmations","onReplaced","timeout","SAFE_CALLS_WAIT_TIMEOUT","undefined","queryKey","waitForTransactionReceiptQueryKey","client","connector","getAccount","isSafeConnector","getConnectorClient","getClient","receipt","ensureQueryData","queryFn","waitForTransactionReceipt"],"mappings":";;;;;;;;AA8BO,MAAMA,yBACXA,CAAC;AAAA,eAAEC,aAAAA,GAAcC,WAAAA;AAAAA,eAAcC,aAAAA,GAAcC,WAAAA;AAAAA,EAAcC;AAAO,CAAA,GAAI,OACtE,OAAO;AAAA,EAAEC,IAAAA;AAAAA,EAAMC,OAAAA;AAAAA,EAASC,aAAAA;AAAAA,EAAeC;AAAW,CAAA,KAAM;AACtD,EAAA,MAAMC,OAAAA,GAAUL,SAASM,uBAAAA,GAA0BC,MAAAA;AACnD,EAAA,MAAMC,WAAWC,iCAAAA,CAAkC;AAAA,IACjDR,IAAAA;AAAAA,IACAC,OAAAA;AAAAA,IACAC,aAAAA;AAAAA,IACAE;AAAAA,GACD,CAAA;AAED,EAAA,IAAIK,MAAAA;AACJ,EAAA,MAAM;AAAA,IAAEC;AAAAA,GAAU,GAAIC,WAAWd,aAAW,CAAA;AAI5C,EAAA,IAAIa,SAAAA,IAAaE,eAAAA,CAAgBF,SAAS,CAAA,EAAG;AAC3CD,IAAAA,MAAAA,GAAS,MAAMI,mBAAmBhB,aAAAA,EAAa;AAAA,MAAEI,OAAAA;AAAAA,MAASS;AAAAA,KAAW,CAAA;AAAA,EACvE,CAAA,MAAO;AACLD,IAAAA,MAAAA,GAASZ,cAAYiB,SAAAA,CAAU;AAAA,MAAEb;AAAAA,KAAS,CAAA;AAAA,EAC5C;AAEA,EAAA,MAAMc,OAAAA,GAAU,MAAMpB,aAAAA,CAAYqB,eAAAA,CAAgB;AAAA,IAChDT,QAAAA;AAAAA,IACAU,SAASA,MAAM;AACb,MAAA,OAAOC,0BAA0BT,MAAAA,EAAQ;AAAA,QACvCT,IAAAA;AAAAA,QACAE,aAAAA;AAAAA,QACAC,UAAAA;AAAAA,QACAC;AAAAA,OACD,CAAA;AAAA,IACH;AAAA,GACD,CAAA;AAED,EAAA,OAAOW,OAAAA;AACT;;;;"}
1
+ {"version":3,"file":"ensureTxReceipt.js","sources":["../../../src/transactions/queries/ensureTxReceipt.ts"],"sourcesContent":["import type { UseAwaitTxParameters } from \"@/hooks/txs/queries/useAwaitTx\";\nimport { queryClient as _queryClient } from \"@/lib/queryClient\";\nimport { wagmiConfig as _wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport type { QueryClient } from \"@tanstack/react-query\";\n\nimport { assert, type MarkRequired } from \"ts-essentials\";\nimport { type ReplacementReturnType, type TransactionReceipt } from \"viem\";\n\nimport { waitForTransactionReceiptQueryOptions } from \"wagmi/query\";\nimport { SAFE_CALLS_WAIT_TIMEOUT } from \"@/lib/constants\";\nimport { type Chain } from \"wagmi/chains\";\nimport { getAccount, getConnectorClient } from \"@wagmi/core\";\nimport { isSafeConnector } from \"@/hooks/connectors/useIsGnosisSafeConnector\";\n\ntype OnReplacedCb = (data: ReplacementReturnType<Chain>) => void;\n\nexport type EnsureTxReceiptFn = (\n options: MarkRequired<\n Pick<UseAwaitTxParameters, \"hash\" | \"chainId\" | \"confirmations\">,\n \"hash\" | \"chainId\"\n > & {\n onReplaced?: OnReplacedCb;\n }\n) => Promise<TransactionReceipt>;\n\ntype EnsureTxReceiptFactory = (params?: {\n queryClient?: QueryClient;\n wagmiConfig?: typeof _wagmiConfig;\n isSafe?: boolean;\n}) => EnsureTxReceiptFn;\n\nexport const ensureTxReceiptFactory: EnsureTxReceiptFactory =\n ({ queryClient = _queryClient, wagmiConfig = _wagmiConfig, isSafe } = {}) =>\n async ({ hash, chainId, confirmations, onReplaced }) => {\n const timeout = isSafe ? SAFE_CALLS_WAIT_TIMEOUT : undefined;\n\n let config = wagmiConfig;\n const { connector } = getAccount(wagmiConfig);\n // always use connector client if connected through native safe connector.\n // safe provider returns a safeTxHash that is different from a real tx hash.\n // if connected to safe through WalletConnect - publicClient returns a real tx hash.\n if (connector && isSafeConnector(connector)) {\n const safeClient = await getConnectorClient(wagmiConfig, {\n chainId,\n connector,\n });\n // force waitForTransactionReceiptQueryOptions to use SafeClient internally\n config = {\n ...wagmiConfig,\n getClient: (options) => {\n assert(!options || options.chainId === chainId, \"chainId mismatch\");\n return safeClient;\n },\n } as typeof wagmiConfig;\n }\n\n // wagmi/core waitForTransactionReceipt throws on receipt.status==\"reverted\",\n // unlike viem waitForTransactionReceipt which returns the receipt as is\n const queryOptions = waitForTransactionReceiptQueryOptions(config, {\n hash,\n chainId,\n confirmations,\n timeout,\n onReplaced,\n });\n\n const receipt = await queryClient.ensureQueryData(queryOptions);\n\n return receipt;\n };\n"],"names":["ensureTxReceiptFactory","queryClient","_queryClient","wagmiConfig","_wagmiConfig","isSafe","hash","chainId","confirmations","onReplaced","timeout","SAFE_CALLS_WAIT_TIMEOUT","undefined","config","connector","getAccount","isSafeConnector","safeClient","getConnectorClient","getClient","options","assert","queryOptions","waitForTransactionReceiptQueryOptions","receipt","ensureQueryData"],"mappings":";;;;;;;;;;AA+BO,MAAMA,yBACXA,CAAC;AAAA,eAAEC,aAAAA,GAAcC,WAAAA;AAAAA,eAAcC,aAAAA,GAAcC,WAAAA;AAAAA,EAAcC;AAAO,CAAA,GAAI,OACtE,OAAO;AAAA,EAAEC,IAAAA;AAAAA,EAAMC,OAAAA;AAAAA,EAASC,aAAAA;AAAAA,EAAeC;AAAW,CAAA,KAAM;AACtD,EAAA,MAAMC,OAAAA,GAAUL,SAASM,uBAAAA,GAA0BC,MAAAA;AAEnD,EAAA,IAAIC,MAAAA,GAASV,aAAAA;AACb,EAAA,MAAM;AAAA,IAAEW;AAAAA,GAAU,GAAIC,WAAWZ,aAAW,CAAA;AAI5C,EAAA,IAAIW,SAAAA,IAAaE,eAAAA,CAAgBF,SAAS,CAAA,EAAG;AAC3C,IAAA,MAAMG,UAAAA,GAAa,MAAMC,kBAAAA,CAAmBf,aAAAA,EAAa;AAAA,MACvDI,OAAAA;AAAAA,MACAO;AAAAA,KACD,CAAA;AAEDD,IAAAA,MAAAA,GAAS;AAAA,MACP,GAAGV,aAAAA;AAAAA,MACHgB,WAAYC,CAAAA,OAAAA,KAAY;AACtBC,QAAAA,MAAAA,CAAO,CAACD,OAAAA,IAAWA,OAAAA,CAAQb,OAAAA,KAAYA,SAAS,kBAAkB,CAAA;AAClE,QAAA,OAAOU,UAAAA;AAAAA,MACT;AAAA,KACF;AAAA,EACF;AAIA,EAAA,MAAMK,YAAAA,GAAeC,sCAAsCV,MAAAA,EAAQ;AAAA,IACjEP,IAAAA;AAAAA,IACAC,OAAAA;AAAAA,IACAC,aAAAA;AAAAA,IACAE,OAAAA;AAAAA,IACAD;AAAAA,GACD,CAAA;AAED,EAAA,MAAMe,OAAAA,GAAU,MAAMvB,aAAAA,CAAYwB,eAAAA,CAAgBH,YAAY,CAAA;AAE9D,EAAA,OAAOE,OAAAA;AACT;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@velora-dex/widget",
3
- "version": "0.3.2",
3
+ "version": "0.3.3",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "files": [
@@ -1,28 +0,0 @@
1
- import { UseMutationOptions, UseMutationResult } from '@tanstack/react-query';
2
- import { DeltaAuction, MinViemClient } from '@velora-dex/sdk';
3
- import { Address } from 'viem';
4
- import { SupportedChainId } from '../../../../../lib/web3/wagmi/types';
5
- type CancelLimitDeltaOrdersParams = {
6
- orderIds: string[];
7
- };
8
- export type CancelLimitDeltaOrdersReturn = {
9
- success: boolean;
10
- };
11
- type CancelLimitDeltaOrdersInput = CancelLimitDeltaOrdersParams;
12
- export type CancelLimitDeltaOrdersMutationOptions = Omit<UseMutationOptions<CancelLimitDeltaOrdersReturn, Error, CancelLimitDeltaOrdersInput, void>, "mutationFn">;
13
- type CancelLimitDeltaOrdersMutInput = {
14
- mutationOptions?: CancelLimitDeltaOrdersMutationOptions;
15
- chainId: SupportedChainId;
16
- account?: Address;
17
- client?: MinViemClient;
18
- };
19
- export declare const CANCEL_LIMIT_DELTA_ORDERS_MUTATION_KEY = "cancelLimitDeltaOrders";
20
- export declare function useCancelLimitDeltaOrders({ mutationOptions, chainId, account, client, }: CancelLimitDeltaOrdersMutInput): UseMutationResult<CancelLimitDeltaOrdersReturn, Error, CancelLimitDeltaOrdersInput, void>;
21
- type CancelOrderEventCallbacks = {
22
- onMutate?: (variables: CancelLimitDeltaOrdersInput) => void;
23
- onSuccess?: (_data: unknown, variables: CancelLimitDeltaOrdersInput) => void;
24
- onError?: (error: Error, variables: CancelLimitDeltaOrdersInput) => void;
25
- };
26
- export declare function useCancelDeltaOrderEventCallbacks(order?: Pick<DeltaAuction, "id" | "type">): CancelOrderEventCallbacks;
27
- export {};
28
- //# sourceMappingURL=useCancelLimitDeltaOrders.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useCancelLimitDeltaOrders.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEnE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAIpC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,KAAK,4BAA4B,GAAG;IAClC,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AACF,MAAM,MAAM,4BAA4B,GAAG;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AAEhE,KAAK,2BAA2B,GAAG,4BAA4B,CAAC;AAEhE,MAAM,MAAM,qCAAqC,GAAG,IAAI,CACtD,kBAAkB,CAChB,4BAA4B,EAC5B,KAAK,EACL,2BAA2B,EAC3B,IAAI,CACL,EACD,YAAY,CACb,CAAC;AAEF,KAAK,8BAA8B,GAAG;IACpC,eAAe,CAAC,EAAE,qCAAqC,CAAC;IACxD,OAAO,EAAE,gBAAgB,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,sCAAsC,2BAA2B,CAAC;AAG/E,wBAAgB,yBAAyB,CAAC,EACxC,eAAe,EACf,OAAO,EACP,OAAO,EACP,MAAM,GACP,EAAE,8BAA8B,GAAG,iBAAiB,CACnD,4BAA4B,EAC5B,KAAK,EACL,2BAA2B,EAC3B,IAAI,CACL,CAsCA;AAED,KAAK,yBAAyB,GAAG;IAC/B,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,2BAA2B,KAAK,IAAI,CAAC;IAC5D,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,2BAA2B,KAAK,IAAI,CAAC;IAC7E,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,2BAA2B,KAAK,IAAI,CAAC;CAC1E,CAAC;AASF,wBAAgB,iCAAiC,CAC/C,KAAK,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,MAAM,CAAC,GACxC,yBAAyB,CA+C3B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useCancelLimitDeltaOrders.js","sources":["../../../../../../src/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.ts"],"sourcesContent":["import { useDeltaSDK } from \"@/hooks/useSDK\";\nimport {\n useMutation,\n useQueryClient,\n type UseMutationOptions,\n type UseMutationResult,\n} from \"@tanstack/react-query\";\nimport type { DeltaAuction, MinViemClient } from \"@velora-dex/sdk\";\nimport { assert } from \"ts-essentials\";\nimport type { Address } from \"viem\";\nimport { deltaOrdersQueryKey } from \"../queries/useDeltaOrders\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport { deltaLimitOrderRequiredBalanceQueryKey } from \"../queries/useDeltaLimitOrderRequiredBalance\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\n\ntype CancelLimitDeltaOrdersParams = {\n orderIds: string[];\n}; // @TODO import from SDK\nexport type CancelLimitDeltaOrdersReturn = { success: boolean };\n\ntype CancelLimitDeltaOrdersInput = CancelLimitDeltaOrdersParams;\n\nexport type CancelLimitDeltaOrdersMutationOptions = Omit<\n UseMutationOptions<\n CancelLimitDeltaOrdersReturn,\n Error,\n CancelLimitDeltaOrdersInput,\n void\n >,\n \"mutationFn\"\n>;\n\ntype CancelLimitDeltaOrdersMutInput = {\n mutationOptions?: CancelLimitDeltaOrdersMutationOptions;\n chainId: SupportedChainId;\n account?: Address;\n client?: MinViemClient;\n};\n\nexport const CANCEL_LIMIT_DELTA_ORDERS_MUTATION_KEY = \"cancelLimitDeltaOrders\";\n\n// @TODO rename to useCancelDeltaOrders when API is ready to cancel both \"market\" and \"limit\" types of delta orders\nexport function useCancelLimitDeltaOrders({\n mutationOptions,\n chainId,\n account,\n client,\n}: CancelLimitDeltaOrdersMutInput): UseMutationResult<\n CancelLimitDeltaOrdersReturn,\n Error,\n CancelLimitDeltaOrdersInput,\n void\n> {\n const { sdk } = useDeltaSDK({ chainId, account, client });\n const queryClient = useQueryClient();\n\n return useMutation<\n CancelLimitDeltaOrdersReturn,\n Error,\n CancelLimitDeltaOrdersInput,\n void\n >({\n mutationKey: [CANCEL_LIMIT_DELTA_ORDERS_MUTATION_KEY],\n mutationFn: async ({ orderIds }) => {\n assert(\n \"cancelLimitDeltaOrders\" in sdk,\n \"cancelLimitDeltaOrders is not available on this SDK\"\n );\n // Note: This mutation requires the SDK to be initialized with account and client\n // to access cancelLimitDeltaOrders functionality\n return sdk.cancelLimitDeltaOrders({ orderIds });\n },\n ...mutationOptions,\n onSuccess: (...args) => {\n queryClient.invalidateQueries({\n queryKey: deltaOrdersQueryKey({\n userAddress: account,\n }),\n exact: false,\n });\n queryClient.invalidateQueries({\n queryKey: deltaLimitOrderRequiredBalanceQueryKey({\n chainId,\n account,\n }),\n exact: false,\n });\n mutationOptions?.onSuccess?.(...args);\n },\n });\n}\n\ntype CancelOrderEventCallbacks = {\n onMutate?: (variables: CancelLimitDeltaOrdersInput) => void;\n onSuccess?: (_data: unknown, variables: CancelLimitDeltaOrdersInput) => void;\n onError?: (error: Error, variables: CancelLimitDeltaOrdersInput) => void;\n};\n/*\nCallbacks in useMutation options (onSuccess, onError, onSettled):\n - will run even if the component unmounts (tied to the mutation instance).\nCallbacks passed to mutate() or mutateAsync():\n - will not run if the component unmounts before the mutation finishes (tied to the component).\n\nSo always use useMutation callbacks if changing something outside of the immediate component\n*/\nexport function useCancelDeltaOrderEventCallbacks(\n order?: Pick<DeltaAuction, \"id\" | \"type\">\n): CancelOrderEventCallbacks {\n const { onCancelOrder } = useWidgetEvents();\n\n if (!order) return {};\n\n const params = {\n orderIds: [order.id],\n orderType: \"DELTA\",\n orderSubType: order.type,\n } as const;\n\n return {\n onMutate: (variables) => {\n onCancelOrder?.({\n event: {\n name: \"CancelOrder:request\",\n params: {\n ...params,\n orderIds: variables.orderIds,\n },\n },\n });\n },\n onSuccess: (_data, variables) => {\n onCancelOrder?.({\n event: {\n name: \"CancelOrder:confirmed\",\n params: {\n ...params,\n orderIds: variables.orderIds,\n },\n },\n });\n },\n onError: (error: Error, variables) => {\n onCancelOrder?.({\n event: {\n name: \"CancelOrder:failed\",\n params: {\n ...params,\n orderIds: variables.orderIds,\n error,\n },\n },\n });\n },\n };\n}\n"],"names":["CANCEL_LIMIT_DELTA_ORDERS_MUTATION_KEY","useCancelLimitDeltaOrders","t0","$","_c","mutationOptions","chainId","account","client","t1","sdk","useDeltaSDK","queryClient","useQueryClient","t2","Symbol","for","t3","t4","orderIds","assert","cancelLimitDeltaOrders","t5","args","invalidateQueries","queryKey","deltaOrdersQueryKey","userAddress","exact","deltaLimitOrderRequiredBalanceQueryKey","onSuccess","mutationKey","mutationFn","useMutation","useCancelDeltaOrderEventCallbacks","order","onCancelOrder","useWidgetEvents","id","type","orderType","orderSubType","params","onMutate","variables","event","name","_data","variables_0","onError","error","variables_1"],"mappings":"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"}