@velora-dex/widget 0.3.11-dev.3 → 0.3.11-dev.4

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 (274) hide show
  1. package/dist/components/ui/tooltip.js +1 -1
  2. package/dist/components/ui/tooltip.js.map +1 -1
  3. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.d.ts.map +1 -1
  4. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js +58 -63
  5. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
  6. package/dist/components/web3/ConnectExternalProvider/constants.d.ts +2 -0
  7. package/dist/components/web3/ConnectExternalProvider/constants.d.ts.map +1 -0
  8. package/dist/components/web3/ConnectExternalProvider/constants.js +4 -0
  9. package/dist/components/web3/ConnectExternalProvider/constants.js.map +1 -0
  10. package/dist/components/web3/ConnectExternalProvider/utils.d.ts +8 -0
  11. package/dist/components/web3/ConnectExternalProvider/utils.d.ts.map +1 -0
  12. package/dist/components/web3/ConnectExternalProvider/utils.js +9 -0
  13. package/dist/components/web3/ConnectExternalProvider/utils.js.map +1 -0
  14. package/dist/components/web3/ConnectWallets/walletIcons.d.ts +4 -1
  15. package/dist/components/web3/ConnectWallets/walletIcons.d.ts.map +1 -1
  16. package/dist/components/web3/ConnectWallets/walletIcons.js +18 -7
  17. package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
  18. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts +4 -6
  19. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts.map +1 -1
  20. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +139 -346
  21. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  22. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js +1 -1
  23. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js.map +1 -1
  24. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.js +19 -24
  25. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.js.map +1 -1
  26. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js +1 -1
  27. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js.map +1 -1
  28. package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.d.ts.map +1 -1
  29. package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js +36 -48
  30. package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js.map +1 -1
  31. package/dist/components/widget/Dialog/SelectTokenDialog/types.d.ts +2 -3
  32. package/dist/components/widget/Dialog/SelectTokenDialog/types.d.ts.map +1 -1
  33. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.d.ts.map +1 -1
  34. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js +108 -57
  35. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js.map +1 -1
  36. package/dist/components/widget/NetworkSwitcher/types.d.ts +2 -13
  37. package/dist/components/widget/NetworkSwitcher/types.d.ts.map +1 -1
  38. package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js +2 -2
  39. package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js.map +1 -1
  40. package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
  41. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +11 -5
  42. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  43. package/dist/components/widget/Screen/GenericScreen.d.ts +2 -6
  44. package/dist/components/widget/Screen/GenericScreen.d.ts.map +1 -1
  45. package/dist/components/widget/Screen/GenericScreen.js +33 -112
  46. package/dist/components/widget/Screen/GenericScreen.js.map +1 -1
  47. package/dist/components/widget/SelectToken/SelectTokenButton.d.ts +1 -1
  48. package/dist/components/widget/SelectToken/SelectTokenButton.d.ts.map +1 -1
  49. package/dist/components/widget/SelectToken/SelectTokenButton.js +73 -100
  50. package/dist/components/widget/SelectToken/SelectTokenButton.js.map +1 -1
  51. package/dist/components/widget/SelectToken/types.d.ts +0 -3
  52. package/dist/components/widget/SelectToken/types.d.ts.map +1 -1
  53. package/dist/components/widget/TokenInput/index.d.ts.map +1 -1
  54. package/dist/components/widget/TokenInput/index.js +153 -115
  55. package/dist/components/widget/TokenInput/index.js.map +1 -1
  56. package/dist/components/widget/TokenInput/types.d.ts +1 -7
  57. package/dist/components/widget/TokenInput/types.d.ts.map +1 -1
  58. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts +2 -2
  59. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts.map +1 -1
  60. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js +22 -23
  61. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js.map +1 -1
  62. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js +1 -1
  63. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js.map +1 -1
  64. package/dist/configurator/Configurator.d.ts.map +1 -1
  65. package/dist/configurator/Safe/SafeConnector.d.ts +23 -0
  66. package/dist/configurator/Safe/SafeConnector.d.ts.map +1 -0
  67. package/dist/configurator/Safe/useSafeConnector.d.ts +7 -0
  68. package/dist/configurator/Safe/useSafeConnector.d.ts.map +1 -0
  69. package/dist/configurator/components/EnabledChainsSelector.d.ts.map +1 -1
  70. package/dist/configurator/components/PartnerInput.d.ts +3 -5
  71. package/dist/configurator/components/PartnerInput.d.ts.map +1 -1
  72. package/dist/configurator/components/common/Input.d.ts +0 -9
  73. package/dist/configurator/components/common/Input.d.ts.map +1 -1
  74. package/dist/core/constants.d.ts +0 -3
  75. package/dist/core/constants.d.ts.map +1 -1
  76. package/dist/core/constants.js +1 -4
  77. package/dist/core/constants.js.map +1 -1
  78. package/dist/core/index.d.ts.map +1 -1
  79. package/dist/core/index.js +113 -121
  80. package/dist/core/index.js.map +1 -1
  81. package/dist/core/inputs/hooks/useMaxButtonProps.d.ts +7 -2
  82. package/dist/core/inputs/hooks/useMaxButtonProps.d.ts.map +1 -1
  83. package/dist/core/inputs/hooks/useMaxButtonProps.js +6 -39
  84. package/dist/core/inputs/hooks/useMaxButtonProps.js.map +1 -1
  85. package/dist/core/state/configActionsAtom.d.ts.map +1 -1
  86. package/dist/core/state/configActionsAtom.js +3 -3
  87. package/dist/core/state/configActionsAtom.js.map +1 -1
  88. package/dist/core/state/configAtom.d.ts +6 -5
  89. package/dist/core/state/configAtom.d.ts.map +1 -1
  90. package/dist/core/state/configAtom.js +9 -8
  91. package/dist/core/state/configAtom.js.map +1 -1
  92. package/dist/core/state/containerAtom.d.ts +0 -4
  93. package/dist/core/state/containerAtom.d.ts.map +1 -1
  94. package/dist/core/state/containerAtom.js +1 -8
  95. package/dist/core/state/containerAtom.js.map +1 -1
  96. package/dist/core/state/externalProviderAtom.d.ts +9 -0
  97. package/dist/core/state/externalProviderAtom.d.ts.map +1 -1
  98. package/dist/core/state/externalProviderAtom.js +28 -1
  99. package/dist/core/state/externalProviderAtom.js.map +1 -1
  100. package/dist/core/types.d.ts +2 -12
  101. package/dist/core/types.d.ts.map +1 -1
  102. package/dist/events/getters/swap.d.ts.map +1 -1
  103. package/dist/events/getters/swap.js +2 -1
  104. package/dist/events/getters/swap.js.map +1 -1
  105. package/dist/events/hooks/useOnWalletConnect.d.ts.map +1 -1
  106. package/dist/events/hooks/useOnWalletConnect.js +6 -1
  107. package/dist/events/hooks/useOnWalletConnect.js.map +1 -1
  108. package/dist/events/types/connectWallet.d.ts +3 -3
  109. package/dist/events/types/connectWallet.d.ts.map +1 -1
  110. package/dist/hooks/batch/useAwaitCalls.d.ts.map +1 -1
  111. package/dist/hooks/batch/useAwaitCalls.js.map +1 -1
  112. package/dist/hooks/connectors/useIsConnectedSafe.d.ts.map +1 -1
  113. package/dist/hooks/connectors/useIsConnectedSafe.js +3 -1
  114. package/dist/hooks/connectors/useIsConnectedSafe.js.map +1 -1
  115. package/dist/hooks/connectors/useIsGnosisSafeConnector.d.ts +4 -1
  116. package/dist/hooks/connectors/useIsGnosisSafeConnector.d.ts.map +1 -1
  117. package/dist/hooks/connectors/useIsGnosisSafeConnector.js +3 -4
  118. package/dist/hooks/connectors/useIsGnosisSafeConnector.js.map +1 -1
  119. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.d.ts +1 -1
  120. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.d.ts.map +1 -1
  121. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js +16 -2
  122. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js.map +1 -1
  123. package/dist/hooks/otc/mutations/useFillOrder.js +5 -4
  124. package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
  125. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js +3 -2
  126. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
  127. package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.d.ts.map +1 -1
  128. package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js +7 -4
  129. package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js.map +1 -1
  130. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +2 -5
  131. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
  132. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +1 -2
  133. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  134. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts +1 -4
  135. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts.map +1 -1
  136. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js +1 -2
  137. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
  138. package/dist/hooks/swap/prices/usePricesParams.d.ts +1 -3
  139. package/dist/hooks/swap/prices/usePricesParams.d.ts.map +1 -1
  140. package/dist/hooks/swap/prices/usePricesParams.js +27 -36
  141. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  142. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts.map +1 -1
  143. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js +2 -1
  144. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
  145. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  146. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +1 -9
  147. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  148. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +1 -3
  149. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  150. package/dist/hooks/swap/tradeFlow/useMarketFlow.js +6 -9
  151. package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
  152. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts.map +1 -1
  153. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js +7 -4
  154. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
  155. package/dist/hooks/txs/queries/useAwaitTx.d.ts.map +1 -1
  156. package/dist/hooks/txs/queries/useAwaitTx.js +71 -19
  157. package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
  158. package/dist/hooks/usePartner.d.ts +1 -1
  159. package/dist/hooks/usePartner.d.ts.map +1 -1
  160. package/dist/hooks/usePartner.js +5 -3
  161. package/dist/hooks/usePartner.js.map +1 -1
  162. package/dist/lib/utils/formatFiatPrice.d.ts +1 -1
  163. package/dist/lib/utils/formatFiatPrice.d.ts.map +1 -1
  164. package/dist/lib/utils/formatFiatPrice.js +2 -4
  165. package/dist/lib/utils/formatFiatPrice.js.map +1 -1
  166. package/dist/lib/utils/index.d.ts.map +1 -1
  167. package/dist/lib/utils/index.js.map +1 -1
  168. package/dist/lib/utils/toasts.d.ts +1 -1
  169. package/dist/lib/utils/toasts.d.ts.map +1 -1
  170. package/dist/lib/utils/toasts.js +5 -1
  171. package/dist/lib/utils/toasts.js.map +1 -1
  172. package/dist/lib/web3/privy/config.js +1 -1
  173. package/dist/lib/web3/wagmi/config.js +1 -1
  174. package/dist/lib/web3/wagmi/constants.d.ts +0 -1
  175. package/dist/lib/web3/wagmi/constants.d.ts.map +1 -1
  176. package/dist/lib/web3/wagmi/constants.js +1 -13
  177. package/dist/lib/web3/wagmi/constants.js.map +1 -1
  178. package/dist/lib/web3/wagmi/external.d.ts +10 -3
  179. package/dist/lib/web3/wagmi/external.d.ts.map +1 -1
  180. package/dist/lib/web3/wagmi/external.js +17 -2
  181. package/dist/lib/web3/wagmi/external.js.map +1 -1
  182. package/dist/lib/web3/wagmi/switchChain.d.ts.map +1 -1
  183. package/dist/lib/web3/wagmi/switchChain.js +5 -1
  184. package/dist/lib/web3/wagmi/switchChain.js.map +1 -1
  185. package/dist/styles.css +18 -57
  186. package/dist/transactions/hash.d.ts +7 -0
  187. package/dist/transactions/hash.d.ts.map +1 -0
  188. package/dist/transactions/hash.js +35 -0
  189. package/dist/transactions/hash.js.map +1 -0
  190. package/dist/transactions/queries/ensureCallsStatus.d.ts.map +1 -1
  191. package/dist/transactions/queries/ensureCallsStatus.js +11 -3
  192. package/dist/transactions/queries/ensureCallsStatus.js.map +1 -1
  193. package/dist/transactions/queries/ensureTxReceipt.d.ts.map +1 -1
  194. package/dist/transactions/queries/ensureTxReceipt.js +7 -4
  195. package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
  196. package/dist/transactions/state/effects/finalize.d.ts +7 -1
  197. package/dist/transactions/state/effects/finalize.d.ts.map +1 -1
  198. package/dist/transactions/state/effects/finalize.js +41 -7
  199. package/dist/transactions/state/effects/finalize.js.map +1 -1
  200. package/dist/transactions/state/hooks/useActivateEffects.d.ts.map +1 -1
  201. package/dist/transactions/state/hooks/useActivateEffects.js +4 -2
  202. package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -1
  203. package/dist/transactions/state/transactionsActionAtom.d.ts.map +1 -1
  204. package/dist/transactions/state/transactionsActionAtom.js +55 -15
  205. package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
  206. package/dist/transactions/state/transactionsAtom.js +2 -2
  207. package/dist/transactions/state/transactionsAtom.js.map +1 -1
  208. package/dist/transactions/types.d.ts +11 -1
  209. package/dist/transactions/types.d.ts.map +1 -1
  210. package/dist/transactions/utils.d.ts +2 -1
  211. package/dist/transactions/utils.d.ts.map +1 -1
  212. package/dist/transactions/utils.js +6 -1
  213. package/dist/transactions/utils.js.map +1 -1
  214. package/package.json +3 -2
  215. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherList.d.ts +0 -3
  216. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherList.d.ts.map +0 -1
  217. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherList.js +0 -72
  218. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherList.js.map +0 -1
  219. package/dist/components/widget/NetworkSwitcher/common/AllNetworksItem.d.ts +0 -5
  220. package/dist/components/widget/NetworkSwitcher/common/AllNetworksItem.d.ts.map +0 -1
  221. package/dist/components/widget/NetworkSwitcher/common/AllNetworksItem.js +0 -48
  222. package/dist/components/widget/NetworkSwitcher/common/AllNetworksItem.js.map +0 -1
  223. package/dist/components/widget/NetworkSwitcher/common/NetworkItem.d.ts +0 -7
  224. package/dist/components/widget/NetworkSwitcher/common/NetworkItem.d.ts.map +0 -1
  225. package/dist/components/widget/NetworkSwitcher/common/NetworkItem.js +0 -46
  226. package/dist/components/widget/NetworkSwitcher/common/NetworkItem.js.map +0 -1
  227. package/dist/components/widget/NetworkSwitcher/utils/items.d.ts +0 -3
  228. package/dist/components/widget/NetworkSwitcher/utils/items.d.ts.map +0 -1
  229. package/dist/components/widget/NetworkSwitcher/utils/items.js +0 -65
  230. package/dist/components/widget/NetworkSwitcher/utils/items.js.map +0 -1
  231. package/dist/components/widget/TokenInput/InputContainer.d.ts +0 -3
  232. package/dist/components/widget/TokenInput/InputContainer.d.ts.map +0 -1
  233. package/dist/components/widget/TokenInput/InputContainer.js +0 -54
  234. package/dist/components/widget/TokenInput/InputContainer.js.map +0 -1
  235. package/dist/components/widget/TokenInput/InputField.d.ts +0 -6
  236. package/dist/components/widget/TokenInput/InputField.d.ts.map +0 -1
  237. package/dist/components/widget/TokenInput/InputField.js +0 -84
  238. package/dist/components/widget/TokenInput/InputField.js.map +0 -1
  239. package/dist/components/widget/TokenInput/InputFooter.d.ts +0 -5
  240. package/dist/components/widget/TokenInput/InputFooter.d.ts.map +0 -1
  241. package/dist/components/widget/TokenInput/InputFooter.js +0 -206
  242. package/dist/components/widget/TokenInput/InputFooter.js.map +0 -1
  243. package/dist/components/widget/TokenInput/InputHeader.d.ts +0 -5
  244. package/dist/components/widget/TokenInput/InputHeader.d.ts.map +0 -1
  245. package/dist/components/widget/TokenInput/InputHeader.js +0 -58
  246. package/dist/components/widget/TokenInput/InputHeader.js.map +0 -1
  247. package/dist/components/widget/TokenInput/common/Balance.d.ts +0 -3
  248. package/dist/components/widget/TokenInput/common/Balance.d.ts.map +0 -1
  249. package/dist/components/widget/TokenInput/common/Balance.js +0 -23
  250. package/dist/components/widget/TokenInput/common/Balance.js.map +0 -1
  251. package/dist/components/widget/TokenInput/common/MaxButtons.d.ts +0 -4
  252. package/dist/components/widget/TokenInput/common/MaxButtons.d.ts.map +0 -1
  253. package/dist/components/widget/TokenInput/common/MaxButtons.js +0 -49
  254. package/dist/components/widget/TokenInput/common/MaxButtons.js.map +0 -1
  255. package/dist/core/screen/hooks/useResizeObserver.d.ts +0 -2
  256. package/dist/core/screen/hooks/useResizeObserver.d.ts.map +0 -1
  257. package/dist/core/screen/hooks/useResizeObserver.js +0 -36
  258. package/dist/core/screen/hooks/useResizeObserver.js.map +0 -1
  259. package/dist/core/state/validatedPartnerConfigAtom.d.ts +0 -3
  260. package/dist/core/state/validatedPartnerConfigAtom.d.ts.map +0 -1
  261. package/dist/core/state/validatedPartnerConfigAtom.js +0 -22
  262. package/dist/core/state/validatedPartnerConfigAtom.js.map +0 -1
  263. package/dist/hooks/useBreakpoints.d.ts +0 -4
  264. package/dist/hooks/useBreakpoints.d.ts.map +0 -1
  265. package/dist/hooks/useBreakpoints.js +0 -22
  266. package/dist/hooks/useBreakpoints.js.map +0 -1
  267. package/dist/lib/constants/mobile.d.ts +0 -2
  268. package/dist/lib/constants/mobile.d.ts.map +0 -1
  269. package/dist/lib/constants/mobile.js +0 -6
  270. package/dist/lib/constants/mobile.js.map +0 -1
  271. package/dist/lib/utils/mobile.d.ts +0 -6
  272. package/dist/lib/utils/mobile.d.ts.map +0 -1
  273. package/dist/lib/utils/mobile.js +0 -10
  274. package/dist/lib/utils/mobile.js.map +0 -1
@@ -1,8 +1,8 @@
1
1
  import { atom } from 'jotai';
2
2
  import { useAtomValue } from '../store.js';
3
- import { emptyObject, emptyArray } from '../../lib/constants/index.js';
3
+ import { emptyArray, emptyObject } from '../../lib/constants/index.js';
4
4
  import { atomWithCompare } from '../../lib/utils/atomWithCompare.js';
5
- import { constructPropertiesEqual, unorderedShallowEqual } from '../../lib/utils/index.js';
5
+ import { unorderedShallowEqual, constructPropertiesEqual } from '../../lib/utils/index.js';
6
6
  import { getDefaultTheme } from '../../lib/utils/theme.js';
7
7
 
8
8
  const defaultWidgetConfig = {
@@ -25,17 +25,18 @@ const defaultSubConfig = {
25
25
  destChains: emptyArray,
26
26
  tradeModes: emptyArray,
27
27
  excludeUI: emptyArray,
28
- devURLs: emptyObject,
29
- partnerConfig: emptyObject
28
+ devURLs: emptyObject
30
29
  };
31
30
  const tokenListsAtom = atomWithCompare(defaultSubConfig.tokenLists, unorderedShallowEqual);
32
31
  const srcChainsAtom = atomWithCompare(defaultSubConfig.srcChains, unorderedShallowEqual);
33
32
  const destChainsAtom = atomWithCompare(defaultSubConfig.destChains, unorderedShallowEqual);
34
33
  const tradeModesAtom = atomWithCompare(defaultSubConfig.tradeModes, unorderedShallowEqual);
35
34
  const excludeUIAtom = atomWithCompare(defaultSubConfig.excludeUI, unorderedShallowEqual);
36
- const devURLsAtom = atomWithCompare(defaultSubConfig.devURLs, constructPropertiesEqual(["apiProxyURL", "apiURL", "explorerURL"]));
37
- const partnerConfigAtom = atomWithCompare(defaultSubConfig.partnerConfig, constructPropertiesEqual(["partner", "partnerAddress", "partnerFeeBps", "partnerTakesSurplus"]));
38
- partnerConfigAtom.debugLabel = "partnerConfigAtom";
35
+ const devURLsAtom = atomWithCompare(
36
+ defaultSubConfig.devURLs,
37
+ // known properties only comparison
38
+ constructPropertiesEqual(["apiProxyURL", "apiURL", "explorerURL"])
39
+ );
39
40
 
40
- export { defaultSubConfig, defaultWidgetConfig, destChainsAtom, devURLsAtom, excludeUIAtom, partnerConfigAtom, srcChainsAtom, tokenListsAtom, tradeModesAtom, useWidgetConfig, widgetConfigAtom };
41
+ export { defaultSubConfig, defaultWidgetConfig, destChainsAtom, devURLsAtom, excludeUIAtom, srcChainsAtom, tokenListsAtom, tradeModesAtom, useWidgetConfig, widgetConfigAtom };
41
42
  //# sourceMappingURL=configAtom.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"configAtom.js","sources":["../../../src/core/state/configAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport type {\n WidgetElements,\n WidgetConfig,\n DevURLs,\n PartnerConfig,\n} from \"../types\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { emptyArray, emptyObject } from \"@/lib/constants\";\nimport { atomWithCompare } from \"@/lib/utils/atomWithCompare\";\nimport { constructPropertiesEqual, unorderedShallowEqual } from \"@/lib/utils\";\nimport { type TradeMode } from \"./tradeModeAtom\";\nimport { getDefaultTheme } from \"@/lib/utils/theme\";\n\nexport type PrimitiveConfig = Pick<\n WidgetConfig,\n | \"theme\"\n | \"enableDelta\"\n | \"enableCrossChain\"\n | \"privyAppId\"\n | \"privyClientId\"\n | \"debug\"\n | \"widgetMode\"\n | \"ignoreBadUsdPrice\"\n>;\n\nexport type IterableConfig = Pick<\n WidgetConfig,\n | \"srcChains\"\n | \"destChains\"\n | \"tokenLists\"\n | \"tradeModes\"\n | \"excludeUI\"\n | \"devURLs\"\n | \"partnerConfig\"\n>;\n\ntype PrimitiveConfigState = MarkRequired<\n PrimitiveConfig,\n | \"theme\"\n | \"enableDelta\"\n | \"enableCrossChain\"\n | \"privyAppId\"\n | \"privyClientId\"\n | \"debug\"\n | \"widgetMode\"\n | \"ignoreBadUsdPrice\"\n>;\n\nexport const defaultWidgetConfig = {\n theme: getDefaultTheme(),\n enableDelta: true,\n enableCrossChain: true,\n privyAppId: import.meta.env.VITE_PRIVY_APP_ID,\n privyClientId: import.meta.env.VITE_PRIVY_CLIENT_ID,\n debug: false,\n widgetMode: \"standalone\",\n ignoreBadUsdPrice: true,\n} as const satisfies PrimitiveConfig;\n\nexport const widgetConfigAtom = atom<PrimitiveConfigState>(defaultWidgetConfig);\n\nexport const useWidgetConfig = () => {\n return useAtomValue(widgetConfigAtom);\n};\n\nexport const defaultSubConfig = {\n tokenLists: emptyArray,\n srcChains: emptyArray,\n destChains: emptyArray,\n tradeModes: emptyArray,\n excludeUI: emptyArray,\n devURLs: emptyObject,\n partnerConfig: emptyObject,\n} as const satisfies IterableConfig;\n\n// independent atoms for each iterable config property\n// with comparison to avoid unnecessary re-renders\nexport const tokenListsAtom = atomWithCompare<string[]>(\n defaultSubConfig.tokenLists,\n unorderedShallowEqual\n);\nexport const srcChainsAtom = atomWithCompare<SupportedChainId[]>(\n defaultSubConfig.srcChains,\n unorderedShallowEqual\n);\nexport const destChainsAtom = atomWithCompare<SupportedChainId[]>(\n defaultSubConfig.destChains,\n unorderedShallowEqual\n);\n\nexport const tradeModesAtom = atomWithCompare<TradeMode[]>(\n defaultSubConfig.tradeModes,\n unorderedShallowEqual\n);\n\nexport const excludeUIAtom = atomWithCompare<WidgetElements[]>(\n defaultSubConfig.excludeUI,\n unorderedShallowEqual\n);\n\nexport const devURLsAtom = atomWithCompare<DevURLs>(\n defaultSubConfig.devURLs,\n constructPropertiesEqual([\"apiProxyURL\", \"apiURL\", \"explorerURL\"])\n);\n\nexport const partnerConfigAtom = atomWithCompare<PartnerConfig>(\n defaultSubConfig.partnerConfig,\n constructPropertiesEqual([\n \"partner\",\n \"partnerAddress\",\n \"partnerFeeBps\",\n \"partnerTakesSurplus\",\n ])\n);\n\npartnerConfigAtom.debugLabel = \"partnerConfigAtom\";\n"],"names":["defaultWidgetConfig","theme","getDefaultTheme","enableDelta","enableCrossChain","privyAppId","import","privyClientId","debug","widgetMode","ignoreBadUsdPrice","widgetConfigAtom","atom","useWidgetConfig","useAtomValue","defaultSubConfig","tokenLists","emptyArray","srcChains","destChains","tradeModes","excludeUI","devURLs","emptyObject","partnerConfig","tokenListsAtom","atomWithCompare","unorderedShallowEqual","srcChainsAtom","destChainsAtom","tradeModesAtom","excludeUIAtom","devURLsAtom","constructPropertiesEqual","partnerConfigAtom","debugLabel"],"mappings":";;;;;;;AAmDO,MAAMA,mBAAAA,GAAsB;AAAA,EACjCC,OAAOC,eAAAA,EAAgB;AAAA,EACvBC,WAAAA,EAAa,IAAA;AAAA,EACbC,gBAAAA,EAAkB,IAAA;AAAA,EAClBC,UAAAA,EAAYC,2BAAAA;AAAAA,EACZC,aAAAA,EAAeD,sDAAAA;AAAAA,EACfE,KAAAA,EAAO,KAAA;AAAA,EACPC,UAAAA,EAAY,YAAA;AAAA,EACZC,iBAAAA,EAAmB;AACrB;AAEO,MAAMC,gBAAAA,GAAmBC,KAA2BZ,mBAAmB;AAEvE,MAAMa,kBAAkBA,MAAA;AAAA,EAAA,OACtBC,aAAaH,gBAAgB,CAAA;AAAC;AAGhC,MAAMI,gBAAAA,GAAmB;AAAA,EAC9BC,UAAAA,EAAYC,UAAAA;AAAAA,EACZC,SAAAA,EAAWD,UAAAA;AAAAA,EACXE,UAAAA,EAAYF,UAAAA;AAAAA,EACZG,UAAAA,EAAYH,UAAAA;AAAAA,EACZI,SAAAA,EAAWJ,UAAAA;AAAAA,EACXK,OAAAA,EAASC,WAAAA;AAAAA,EACTC,aAAAA,EAAeD;AACjB;AAIO,MAAME,cAAAA,GAAiBC,eAAAA,CAC5BX,gBAAAA,CAAiBC,UAAAA,EACjBW,qBACF;AACO,MAAMC,aAAAA,GAAgBF,eAAAA,CAC3BX,gBAAAA,CAAiBG,SAAAA,EACjBS,qBACF;AACO,MAAME,cAAAA,GAAiBH,eAAAA,CAC5BX,gBAAAA,CAAiBI,UAAAA,EACjBQ,qBACF;AAEO,MAAMG,cAAAA,GAAiBJ,eAAAA,CAC5BX,gBAAAA,CAAiBK,UAAAA,EACjBO,qBACF;AAEO,MAAMI,aAAAA,GAAgBL,eAAAA,CAC3BX,gBAAAA,CAAiBM,SAAAA,EACjBM,qBACF;AAEO,MAAMK,WAAAA,GAAcN,eAAAA,CACzBX,gBAAAA,CAAiBO,OAAAA,EACjBW,wBAAAA,CAAyB,CAAC,aAAA,EAAe,QAAA,EAAU,aAAa,CAAC,CACnE;AAEO,MAAMC,iBAAAA,GAAoBR,eAAAA,CAC/BX,gBAAAA,CAAiBS,aAAAA,EACjBS,wBAAAA,CAAyB,CACvB,SAAA,EACA,gBAAA,EACA,eAAA,EACA,qBAAqB,CACtB,CACH;AAEAC,iBAAAA,CAAkBC,UAAAA,GAAa,mBAAA;;;;"}
1
+ {"version":3,"file":"configAtom.js","sources":["../../../src/core/state/configAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport type { WidgetElements, WidgetConfig, DevURLs } from \"../types\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { emptyArray, emptyObject } from \"@/lib/constants\";\nimport { atomWithCompare } from \"@/lib/utils/atomWithCompare\";\nimport { constructPropertiesEqual, unorderedShallowEqual } from \"@/lib/utils\";\nimport { type TradeMode } from \"./tradeModeAtom\";\nimport { getDefaultTheme } from \"@/lib/utils/theme\";\n\nexport type PrimitiveConfig = Pick<\n WidgetConfig,\n | \"theme\"\n | \"enableDelta\"\n | \"enableCrossChain\"\n | \"partner\"\n | \"privyAppId\"\n | \"privyClientId\"\n | \"debug\"\n | \"widgetMode\"\n | \"ignoreBadUsdPrice\"\n>;\n\nexport type IterableConfig = Pick<\n WidgetConfig,\n | \"srcChains\"\n | \"destChains\"\n | \"tokenLists\"\n | \"tradeModes\"\n | \"excludeUI\"\n | \"devURLs\"\n>;\n\ntype PrimitiveConfigState = MarkRequired<\n PrimitiveConfig,\n | \"theme\"\n | \"enableDelta\"\n | \"enableCrossChain\"\n | \"privyAppId\"\n | \"privyClientId\"\n | \"debug\"\n | \"widgetMode\"\n | \"ignoreBadUsdPrice\"\n>;\n\nexport const defaultWidgetConfig = {\n theme: getDefaultTheme(),\n enableDelta: true,\n enableCrossChain: true,\n privyAppId: import.meta.env.VITE_PRIVY_APP_ID,\n privyClientId: import.meta.env.VITE_PRIVY_CLIENT_ID,\n debug: false,\n widgetMode: \"standalone\",\n ignoreBadUsdPrice: true,\n} as const satisfies PrimitiveConfig;\n\nexport const widgetConfigAtom = atom<PrimitiveConfigState>(defaultWidgetConfig);\n\nexport const useWidgetConfig = () => {\n return useAtomValue(widgetConfigAtom);\n};\n\nexport const defaultSubConfig = {\n tokenLists: emptyArray,\n srcChains: emptyArray,\n destChains: emptyArray,\n tradeModes: emptyArray,\n excludeUI: emptyArray,\n devURLs: emptyObject,\n} as const satisfies IterableConfig;\n\n// independent atoms for each iterable config property\n// with comparison to avoid unnecessary re-renders\nexport const tokenListsAtom = atomWithCompare<string[]>(\n defaultSubConfig.tokenLists,\n unorderedShallowEqual\n);\nexport const srcChainsAtom = atomWithCompare<SupportedChainId[]>(\n defaultSubConfig.srcChains,\n unorderedShallowEqual\n);\nexport const destChainsAtom = atomWithCompare<SupportedChainId[]>(\n defaultSubConfig.destChains,\n unorderedShallowEqual\n);\n\nexport const tradeModesAtom = atomWithCompare<TradeMode[]>(\n defaultSubConfig.tradeModes,\n unorderedShallowEqual\n);\n\nexport const excludeUIAtom = atomWithCompare<WidgetElements[]>(\n defaultSubConfig.excludeUI,\n unorderedShallowEqual\n);\n\nexport const devURLsAtom = atomWithCompare<DevURLs>(\n defaultSubConfig.devURLs,\n // known properties only comparison\n constructPropertiesEqual([\"apiProxyURL\", \"apiURL\", \"explorerURL\"])\n);\n"],"names":["defaultWidgetConfig","theme","getDefaultTheme","enableDelta","enableCrossChain","privyAppId","import","privyClientId","debug","widgetMode","ignoreBadUsdPrice","widgetConfigAtom","atom","useWidgetConfig","useAtomValue","defaultSubConfig","tokenLists","emptyArray","srcChains","destChains","tradeModes","excludeUI","devURLs","emptyObject","tokenListsAtom","atomWithCompare","unorderedShallowEqual","srcChainsAtom","destChainsAtom","tradeModesAtom","excludeUIAtom","devURLsAtom","constructPropertiesEqual"],"mappings":";;;;;;;AA8CO,MAAMA,mBAAAA,GAAsB;AAAA,EACjCC,OAAOC,eAAAA,EAAgB;AAAA,EACvBC,WAAAA,EAAa,IAAA;AAAA,EACbC,gBAAAA,EAAkB,IAAA;AAAA,EAClBC,UAAAA,EAAYC,2BAAAA;AAAAA,EACZC,aAAAA,EAAeD,sDAAAA;AAAAA,EACfE,KAAAA,EAAO,KAAA;AAAA,EACPC,UAAAA,EAAY,YAAA;AAAA,EACZC,iBAAAA,EAAmB;AACrB;AAEO,MAAMC,gBAAAA,GAAmBC,KAA2BZ,mBAAmB;AAEvE,MAAMa,kBAAkBA,MAAA;AAAA,EAAA,OACtBC,aAAaH,gBAAgB,CAAA;AAAC;AAGhC,MAAMI,gBAAAA,GAAmB;AAAA,EAC9BC,UAAAA,EAAYC,UAAAA;AAAAA,EACZC,SAAAA,EAAWD,UAAAA;AAAAA,EACXE,UAAAA,EAAYF,UAAAA;AAAAA,EACZG,UAAAA,EAAYH,UAAAA;AAAAA,EACZI,SAAAA,EAAWJ,UAAAA;AAAAA,EACXK,OAAAA,EAASC;AACX;AAIO,MAAMC,cAAAA,GAAiBC,eAAAA,CAC5BV,gBAAAA,CAAiBC,UAAAA,EACjBU,qBACF;AACO,MAAMC,aAAAA,GAAgBF,eAAAA,CAC3BV,gBAAAA,CAAiBG,SAAAA,EACjBQ,qBACF;AACO,MAAME,cAAAA,GAAiBH,eAAAA,CAC5BV,gBAAAA,CAAiBI,UAAAA,EACjBO,qBACF;AAEO,MAAMG,cAAAA,GAAiBJ,eAAAA,CAC5BV,gBAAAA,CAAiBK,UAAAA,EACjBM,qBACF;AAEO,MAAMI,aAAAA,GAAgBL,eAAAA,CAC3BV,gBAAAA,CAAiBM,SAAAA,EACjBK,qBACF;AAEO,MAAMK,WAAAA,GAAcN,eAAAA;AAAAA,EACzBV,gBAAAA,CAAiBO,OAAAA;AAAAA;AAAAA,EAEjBU,wBAAAA,CAAyB,CAAC,aAAA,EAAe,QAAA,EAAU,aAAa,CAAC;AACnE;;;;"}
@@ -1,9 +1,5 @@
1
1
  export declare const containerAtom: import('jotai').PrimitiveAtom<HTMLDivElement | null> & {
2
2
  init: HTMLDivElement | null;
3
3
  };
4
- export declare const offsetWidthAtom: import('jotai').PrimitiveAtom<number | null> & {
5
- init: number | null;
6
- };
7
- export declare const isOverMdAtom: import('jotai').Atom<boolean>;
8
4
  export declare const useContainerAtom: () => HTMLDivElement | null;
9
5
  //# sourceMappingURL=containerAtom.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"containerAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/containerAtom.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,aAAa;;CAAoC,CAAC;AAC/D,eAAO,MAAM,eAAe;;CAA4B,CAAC;AACzD,eAAO,MAAM,YAAY,+BAIvB,CAAC;AAEH,eAAO,MAAM,gBAAgB,6BAE5B,CAAC"}
1
+ {"version":3,"file":"containerAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/containerAtom.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,aAAa;;CAAoC,CAAC;AAE/D,eAAO,MAAM,gBAAgB,6BAE5B,CAAC"}
@@ -1,17 +1,10 @@
1
1
  import { atom } from 'jotai';
2
2
  import { useAtomValue } from '../store.js';
3
- import { BREAKPOINTS } from '../constants.js';
4
3
 
5
4
  const containerAtom = atom(null);
6
- const offsetWidthAtom = atom(null);
7
- const isOverMdAtom = atom((get) => {
8
- const offsetWidth = get(offsetWidthAtom);
9
- const isOverMd = offsetWidth !== null ? offsetWidth >= BREAKPOINTS.md : true;
10
- return isOverMd;
11
- });
12
5
  const useContainerAtom = () => {
13
6
  return useAtomValue(containerAtom);
14
7
  };
15
8
 
16
- export { containerAtom, isOverMdAtom, offsetWidthAtom, useContainerAtom };
9
+ export { containerAtom, useContainerAtom };
17
10
  //# sourceMappingURL=containerAtom.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"containerAtom.js","sources":["../../../src/core/state/containerAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport { BREAKPOINTS } from \"../constants\";\n\nexport const containerAtom = atom<HTMLDivElement | null>(null);\nexport const offsetWidthAtom = atom<number | null>(null);\nexport const isOverMdAtom = atom((get) => {\n const offsetWidth = get(offsetWidthAtom);\n const isOverMd = offsetWidth !== null ? offsetWidth >= BREAKPOINTS.md : true;\n return isOverMd;\n});\n\nexport const useContainerAtom = () => {\n return useAtomValue(containerAtom);\n};\n"],"names":["containerAtom","atom","offsetWidthAtom","isOverMdAtom","get","offsetWidth","isOverMd","BREAKPOINTS","md","useContainerAtom","useAtomValue"],"mappings":";;;;AAIO,MAAMA,aAAAA,GAAgBC,KAA4B,IAAI;AACtD,MAAMC,eAAAA,GAAkBD,KAAoB,IAAI;AAChD,MAAME,YAAAA,GAAeF,KAAMG,CAAAA,GAAAA,KAAQ;AACxC,EAAA,MAAMC,WAAAA,GAAcD,IAAIF,eAAe,CAAA;AACvC,EAAA,MAAMI,QAAAA,GAAWD,WAAAA,KAAgB,IAAA,GAAOA,WAAAA,IAAeE,YAAYC,EAAAA,GAAK,IAAA;AACxE,EAAA,OAAOF,QAAAA;AACT,CAAC;AAEM,MAAMG,mBAAmBA,MAAA;AAAA,EAAA,OACvBC,aAAaV,aAAa,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"containerAtom.js","sources":["../../../src/core/state/containerAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\n\nexport const containerAtom = atom<HTMLDivElement | null>(null);\n\nexport const useContainerAtom = () => {\n return useAtomValue(containerAtom);\n};\n"],"names":["containerAtom","atom","useContainerAtom","useAtomValue"],"mappings":";;;AAGO,MAAMA,aAAAA,GAAgBC,KAA4B,IAAI;AAEtD,MAAMC,mBAAmBA,MAAA;AAAA,EAAA,OACvBC,aAAaH,aAAa,CAAA;AAAC;;;;"}
@@ -1,3 +1,5 @@
1
+ import { EIP1193Provider } from 'viem';
2
+ import { Connector } from 'wagmi';
1
3
  export declare const externalProviderAtom: import('jotai').PrimitiveAtom<{
2
4
  on: <event extends keyof import('viem').EIP1193EventMap>(event: event, listener: import('viem').EIP1193EventMap[event]) => void;
3
5
  removeListener: <event extends keyof import('viem').EIP1193EventMap>(event: event, listener: import('viem').EIP1193EventMap[event]) => void;
@@ -19,5 +21,12 @@ export declare const useExternalProvider: () => {
19
21
  removeListener: <event extends keyof import('viem').EIP1193EventMap>(event: event, listener: import('viem').EIP1193EventMap[event]) => void;
20
22
  request: import('viem').EIP1193RequestFn<import('viem').EIP1474Methods>;
21
23
  } | null;
24
+ export declare const useIsExternalProviderSafeIframe: () => boolean;
22
25
  export declare const useIsDappMode: () => boolean;
26
+ export declare function isSafeIframeProvider(provider: EIP1193Provider & {
27
+ safe?: {
28
+ safeAddress: string;
29
+ };
30
+ }): boolean;
31
+ export declare function isExternalConnectorWithSafeIframe(connector: Connector): Promise<boolean>;
23
32
  //# sourceMappingURL=externalProviderAtom.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"externalProviderAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/externalProviderAtom.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,oBAAoB;;;;;;;;;;CAAqC,CAAC;AAEvE,eAAO,MAAM,yBAAyB;;;;SAQpC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;QAE/B,CAAC;AAEF,eAAO,MAAM,aAAa,eAEzB,CAAC"}
1
+ {"version":3,"file":"externalProviderAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/externalProviderAtom.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAG5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,eAAO,MAAM,oBAAoB;;;;;;;;;;CAAqC,CAAC;AAEvE,eAAO,MAAM,yBAAyB;;;;SAQpC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;QAE/B,CAAC;AAEF,eAAO,MAAM,+BAA+B,eAO3C,CAAC;AAEF,eAAO,MAAM,aAAa,eAEzB,CAAC;AAEF,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,eAAe,GAAG;IAAE,IAAI,CAAC,EAAE;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAC7D,OAAO,CAET;AAED,wBAAsB,iCAAiC,CACrD,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,OAAO,CAAC,CAIlB"}
@@ -1,6 +1,8 @@
1
+ import { d as distExports } from '../../_virtual/index.js';
1
2
  import { atom } from 'jotai';
2
3
  import { useAtomValue } from '../store.js';
3
4
  import { widgetConfigAtom } from './configAtom.js';
5
+ import { isExternalConnector } from '../../components/web3/ConnectExternalProvider/utils.js';
4
6
 
5
7
  const externalProviderAtom = atom(null);
6
8
  const externalProviderToUseAtom = atom((get) => {
@@ -13,9 +15,34 @@ const externalProviderToUseAtom = atom((get) => {
13
15
  const useExternalProvider = () => {
14
16
  return useAtomValue(externalProviderToUseAtom);
15
17
  };
18
+ const useIsExternalProviderSafeIframe = () => {
19
+ const $ = distExports.c(2);
20
+ const externalProvider = useExternalProvider();
21
+ if (!externalProvider) {
22
+ return false;
23
+ }
24
+ let t0;
25
+ if ($[0] !== externalProvider) {
26
+ t0 = isSafeIframeProvider(externalProvider);
27
+ $[0] = externalProvider;
28
+ $[1] = t0;
29
+ } else {
30
+ t0 = $[1];
31
+ }
32
+ const isSafeIframe = t0;
33
+ return isSafeIframe;
34
+ };
16
35
  const useIsDappMode = () => {
17
36
  return useAtomValue(widgetConfigAtom).widgetMode === "dapp";
18
37
  };
38
+ function isSafeIframeProvider(provider) {
39
+ return !!provider.safe?.safeAddress;
40
+ }
41
+ async function isExternalConnectorWithSafeIframe(connector) {
42
+ if (!isExternalConnector(connector)) return false;
43
+ const provider = await connector.getProvider();
44
+ return isSafeIframeProvider(provider);
45
+ }
19
46
 
20
- export { externalProviderAtom, externalProviderToUseAtom, useExternalProvider, useIsDappMode };
47
+ export { externalProviderAtom, externalProviderToUseAtom, isExternalConnectorWithSafeIframe, isSafeIframeProvider, useExternalProvider, useIsDappMode, useIsExternalProviderSafeIframe };
21
48
  //# sourceMappingURL=externalProviderAtom.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"externalProviderAtom.js","sources":["../../../src/core/state/externalProviderAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport type { EIP1193Provider } from \"viem\";\nimport { widgetConfigAtom } from \"./configAtom\";\n\nexport const externalProviderAtom = atom<EIP1193Provider | null>(null);\n\nexport const externalProviderToUseAtom = atom<EIP1193Provider | null>((get) => {\n const widgetConfig = get(widgetConfigAtom);\n\n if (widgetConfig.widgetMode !== \"dapp\") {\n return null;\n }\n\n return get(externalProviderAtom);\n});\n\nexport const useExternalProvider = () => {\n return useAtomValue(externalProviderToUseAtom);\n};\n\nexport const useIsDappMode = () => {\n return useAtomValue(widgetConfigAtom).widgetMode === \"dapp\";\n};\n"],"names":["externalProviderAtom","atom","externalProviderToUseAtom","get","widgetConfig","widgetConfigAtom","widgetMode","useExternalProvider","useAtomValue","useIsDappMode"],"mappings":";;;;AAKO,MAAMA,oBAAAA,GAAuBC,KAA6B,IAAI;AAE9D,MAAMC,yBAAAA,GAA4BD,KAA8BE,CAAAA,GAAAA,KAAQ;AAC7E,EAAA,MAAMC,YAAAA,GAAeD,IAAIE,gBAAgB,CAAA;AAEzC,EAAA,IAAID,YAAAA,CAAaE,eAAe,MAAA,EAAQ;AACtC,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,OAAOH,IAAIH,oBAAoB,CAAA;AACjC,CAAC;AAEM,MAAMO,sBAAsBA,MAAA;AAAA,EAAA,OAC1BC,aAAaN,yBAAyB,CAAA;AAAC;AAGzC,MAAMO,gBAAgBA,MAAA;AAAA,EAAA,OACpBD,YAAAA,CAAaH,gBAAgB,CAAA,CAACC,UAAAA,KAAgB,MAAA;AAAM;;;;"}
1
+ {"version":3,"file":"externalProviderAtom.js","sources":["../../../src/core/state/externalProviderAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport type { EIP1193Provider } from \"viem\";\nimport { widgetConfigAtom } from \"./configAtom\";\nimport { isExternalConnector } from \"@/components/web3/ConnectExternalProvider/utils\";\nimport type { Connector } from \"wagmi\";\n\nexport const externalProviderAtom = atom<EIP1193Provider | null>(null);\n\nexport const externalProviderToUseAtom = atom<EIP1193Provider | null>((get) => {\n const widgetConfig = get(widgetConfigAtom);\n\n if (widgetConfig.widgetMode !== \"dapp\") {\n return null;\n }\n\n return get(externalProviderAtom);\n});\n\nexport const useExternalProvider = () => {\n return useAtomValue(externalProviderToUseAtom);\n};\n\nexport const useIsExternalProviderSafeIframe = () => {\n const externalProvider = useExternalProvider();\n\n if (!externalProvider) return false;\n\n const isSafeIframe = isSafeIframeProvider(externalProvider);\n return isSafeIframe;\n};\n\nexport const useIsDappMode = () => {\n return useAtomValue(widgetConfigAtom).widgetMode === \"dapp\";\n};\n\nexport function isSafeIframeProvider(\n provider: EIP1193Provider & { safe?: { safeAddress: string } }\n): boolean {\n return !!provider.safe?.safeAddress;\n}\n\nexport async function isExternalConnectorWithSafeIframe(\n connector: Connector\n): Promise<boolean> {\n if (!isExternalConnector(connector)) return false;\n const provider = await connector.getProvider();\n return isSafeIframeProvider(provider as EIP1193Provider);\n}\n"],"names":["externalProviderAtom","atom","externalProviderToUseAtom","get","widgetConfig","widgetConfigAtom","widgetMode","useExternalProvider","useAtomValue","useIsExternalProviderSafeIframe","$","_c","externalProvider","t0","isSafeIframeProvider","isSafeIframe","useIsDappMode","provider","safe","safeAddress","isExternalConnectorWithSafeIframe","connector","isExternalConnector","getProvider"],"mappings":";;;;;;AAOO,MAAMA,oBAAAA,GAAuBC,KAA6B,IAAI;AAE9D,MAAMC,yBAAAA,GAA4BD,KAA8BE,CAAAA,GAAAA,KAAQ;AAC7E,EAAA,MAAMC,YAAAA,GAAeD,IAAIE,gBAAgB,CAAA;AAEzC,EAAA,IAAID,YAAAA,CAAaE,eAAe,MAAA,EAAQ;AACtC,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,OAAOH,IAAIH,oBAAoB,CAAA;AACjC,CAAC;AAEM,MAAMO,sBAAsBA,MAAA;AAAA,EAAA,OAC1BC,aAAaN,yBAAyB,CAAA;AAAC;AAGzC,MAAMO,kCAAkCA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAC7C,EAAA,MAAAC,mBAAyBL,mBAAAA,EAAoB;AAE7C,EAAA,IAAI,CAACK,gBAAAA,EAAgB;AAAA,IAAA,OAAS,KAAA;AAAA,EAAK;AAAC,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAH,CAAAA,QAAAE,gBAAAA,EAAA;AAEfC,IAAAA,EAAAA,GAAAC,qBAAqBF,gBAAgB,CAAA;AAACF,IAAAA,CAAAA,MAAAE,gBAAAA;AAAAF,IAAAA,CAAAA,MAAAG,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAH,EAAA,CAAA,CAAA;AAAA,EAAA;AAA3D,EAAA,MAAAK,YAAAA,GAAqBF,EAAAA;AAAuC,EAAA,OACrDE,YAAAA;AAAY;AAGd,MAAMC,gBAAgBA,MAAA;AAAA,EAAA,OACpBR,YAAAA,CAAaH,gBAAgB,CAAA,CAACC,UAAAA,KAAgB,MAAA;AAAM;AAGtD,SAASQ,qBACdG,QAAAA,EACS;AACT,EAAA,OAAO,CAAC,CAACA,QAAAA,CAASC,IAAAA,EAAMC,WAAAA;AAC1B;AAEA,eAAsBC,kCACpBC,SAAAA,EACkB;AAClB,EAAA,IAAI,CAACC,mBAAAA,CAAoBD,SAAS,CAAA,EAAG,OAAO,KAAA;AAC5C,EAAA,MAAMJ,QAAAA,GAAW,MAAMI,SAAAA,CAAUE,WAAAA,EAAY;AAC7C,EAAA,OAAOT,qBAAqBG,QAA2B,CAAA;AACzD;;;;"}
@@ -18,8 +18,8 @@ export interface WidgetConfig {
18
18
  enableDelta?: boolean;
19
19
  /** Whether to enable cross-chain swaps. Defaults to true. */
20
20
  enableCrossChain?: boolean;
21
- /** Partner configuration for revenue sharing. */
22
- partnerConfig?: PartnerConfig;
21
+ /** Unique partner identifier. */
22
+ partner?: string;
23
23
  /** Privy app ID. Required for Privy integration. */
24
24
  privyAppId?: string;
25
25
  /** Privy client ID. Won't take effect if `privyAppId` is not provided. */
@@ -47,16 +47,6 @@ export type DevURLs = {
47
47
  apiProxyURL?: string;
48
48
  explorerURL?: string;
49
49
  };
50
- export type PartnerConfig = {
51
- /** Partner identifier that is used for revenue sharing and tracking. */
52
- partner?: string;
53
- /** Partner wallet address for revenue sharing. Takes precedence over `partner` if both provided, or if the address of `partner` cannot be found in the API. */
54
- partnerAddress?: string;
55
- /** Whether the partner takes surplus. If true, 50% of the surplus (the difference between the execution price and the user's limit price) will also be shared with the partner. */
56
- partnerTakesSurplus?: boolean;
57
- /** Partner fee in basis points (bps) for revenue sharing. Defaults to 0, max is 200 (2%). Partners can receive either fee or surplus. If both provided, `partnerFeeBps` takes precedence. */
58
- partnerFeeBps?: number;
59
- };
60
50
  interface RequestArguments {
61
51
  readonly method: any;
62
52
  readonly params?: any;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,MAAM,CAAC;AAE3C,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,mBAAmB,GAAG,WAAW,CAAC;AAE9E,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B,KAAK,CAAC,EAAE,cAAc,CAAC;CACxB;AAED,qCAAqC;AACrC,MAAM,WAAW,YAAY;IAC3B,mDAAmD;IACnD,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,wEAAwE;IACxE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,6DAA6D;IAC7D,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iDAAiD;IACjD,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0EAA0E;IAC1E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kEAAkE;IAClE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,qFAAqF;IACrF,UAAU,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;IACnC,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,uGAAuG;IACvG,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B,4GAA4G;IAC5G,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAChC,6GAA6G;IAC7G,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IACzB,2FAA2F;IAC3F,SAAS,CAAC,EAAE,cAAc,EAAE,CAAC;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,OAAO,GAAG;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,wEAAwE;IACxE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+JAA+J;IAC/J,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mLAAmL;IACnL,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,6LAA6L;IAC7L,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAGF,UAAU,gBAAgB;IACxB,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC;IACrB,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC;CACvB;AAOD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IAClD,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAAK,IAAI,CAAC;IAC3D,cAAc,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAAK,IAAI,CAAC;CACxE,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,MAAM,CAAC;AAE3C,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,mBAAmB,GAAG,WAAW,CAAC;AAE9E,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B,KAAK,CAAC,EAAE,cAAc,CAAC;CACxB;AAED,qCAAqC;AACrC,MAAM,WAAW,YAAY;IAC3B,mDAAmD;IACnD,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,wEAAwE;IACxE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,6DAA6D;IAC7D,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iCAAiC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0EAA0E;IAC1E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kEAAkE;IAClE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,qFAAqF;IACrF,UAAU,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;IACnC,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,uGAAuG;IACvG,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B,4GAA4G;IAC5G,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAChC,6GAA6G;IAC7G,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IACzB,2FAA2F;IAC3F,SAAS,CAAC,EAAE,cAAc,EAAE,CAAC;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,OAAO,GAAG;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAGF,UAAU,gBAAgB;IACxB,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC;IACrB,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC;CACvB;AAOD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IAClD,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAAK,IAAI,CAAC;IAC3D,cAAc,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAAK,IAAI,CAAC;CACxE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"swap.d.ts","sourceRoot":"","sources":["../../../src/events/getters/swap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAarD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAwBxD,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAcvD;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAqB3D"}
1
+ {"version":3,"file":"swap.d.ts","sourceRoot":"","sources":["../../../src/events/getters/swap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAarD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAwBxD,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAevD;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAqB3D"}
@@ -31,7 +31,8 @@ function getSwapState(get) {
31
31
  ...baseState,
32
32
  sendAmount,
33
33
  receiveAmount,
34
- connectedAccount: account
34
+ connectedAccount: account,
35
+ receiverAddress: baseState.receiverAddress ?? account
35
36
  };
36
37
  }
37
38
  function getSwapFormInput(get) {
@@ -1 +1 @@
1
- {"version":3,"file":"swap.js","sources":["../../../src/events/getters/swap.ts"],"sourcesContent":["import type { SwapFormState } from \"../types/common\";\nimport {\n swapTokenFromAtom,\n swapTokenToAtom,\n} from \"@/core/inputs/state/selectedTokenAtom\";\nimport {\n payInputAmountAtom,\n receiveInputAmountAtom,\n} from \"@/core/inputs/state/inputAmountAtom\";\nimport { swapSideAtom } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { getAccount } from \"@wagmi/core\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { receiverAddressAtom } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport type { Getter } from \"jotai\";\nimport type { SwapFormInput } from \"../types/formInput\";\nimport { sanitizeTradeFlowToken } from \"@/lib/utils/tradeFlow\";\n\nfunction getBaseParams(get: Getter) {\n const tokenFrom = get(swapTokenFromAtom);\n const tokenTo = get(swapTokenToAtom);\n\n const srcChainId = tokenFrom.network;\n const destChainId = tokenTo?.network;\n\n const side = get(swapSideAtom);\n\n const receiverAddress = get(receiverAddressAtom);\n\n return {\n tokenFrom: sanitizeTradeFlowToken(tokenFrom),\n tokenTo: tokenTo ? sanitizeTradeFlowToken(tokenTo) : undefined,\n srcChainId,\n destChainId,\n side,\n receiverAddress,\n };\n}\n\nexport function getSwapState(get: Getter): SwapFormState {\n const baseState = getBaseParams(get);\n\n const sendAmount = get(payInputAmountAtom);\n const receiveAmount = get(receiveInputAmountAtom);\n\n const account = getAccount(wagmiConfig).address;\n\n return {\n ...baseState,\n sendAmount,\n receiveAmount,\n connectedAccount: account,\n };\n}\n\nexport function getSwapFormInput(get: Getter): SwapFormInput {\n const baseState = getBaseParams(get);\n const side = baseState.side;\n\n if (side === \"SELL\") {\n const sendAmount = get(payInputAmountAtom);\n return {\n ...baseState,\n side,\n sendAmount,\n form: \"swap\",\n };\n }\n\n const receiveAmount = get(receiveInputAmountAtom);\n return {\n ...baseState,\n side,\n receiveAmount,\n form: \"swap\",\n };\n}\n"],"names":["getBaseParams","get","tokenFrom","swapTokenFromAtom","tokenTo","swapTokenToAtom","srcChainId","network","destChainId","side","swapSideAtom","receiverAddress","receiverAddressAtom","sanitizeTradeFlowToken","undefined","getSwapState","baseState","sendAmount","payInputAmountAtom","receiveAmount","receiveInputAmountAtom","account","getAccount","wagmiConfig","address","connectedAccount","getSwapFormInput","form"],"mappings":";;;;;;;;AAiBA,SAASA,cAAcC,GAAAA,EAAa;AAClC,EAAA,MAAMC,SAAAA,GAAYD,IAAIE,iBAAiB,CAAA;AACvC,EAAA,MAAMC,OAAAA,GAAUH,IAAII,eAAe,CAAA;AAEnC,EAAA,MAAMC,aAAaJ,SAAAA,CAAUK,OAAAA;AAC7B,EAAA,MAAMC,cAAcJ,OAAAA,EAASG,OAAAA;AAE7B,EAAA,MAAME,IAAAA,GAAOR,IAAIS,YAAY,CAAA;AAE7B,EAAA,MAAMC,eAAAA,GAAkBV,IAAIW,mBAAmB,CAAA;AAE/C,EAAA,OAAO;AAAA,IACLV,SAAAA,EAAWW,uBAAuBX,SAAS,CAAA;AAAA,IAC3CE,OAAAA,EAASA,OAAAA,GAAUS,sBAAAA,CAAuBT,OAAO,CAAA,GAAIU,MAAAA;AAAAA,IACrDR,UAAAA;AAAAA,IACAE,WAAAA;AAAAA,IACAC,IAAAA;AAAAA,IACAE;AAAAA,GACF;AACF;AAEO,SAASI,aAAad,GAAAA,EAA4B;AACvD,EAAA,MAAMe,SAAAA,GAAYhB,cAAcC,GAAG,CAAA;AAEnC,EAAA,MAAMgB,UAAAA,GAAahB,IAAIiB,kBAAkB,CAAA;AACzC,EAAA,MAAMC,aAAAA,GAAgBlB,IAAImB,sBAAsB,CAAA;AAEhD,EAAA,MAAMC,OAAAA,GAAUC,UAAAA,CAAWC,WAAW,CAAA,CAAEC,OAAAA;AAExC,EAAA,OAAO;AAAA,IACL,GAAGR,SAAAA;AAAAA,IACHC,UAAAA;AAAAA,IACAE,aAAAA;AAAAA,IACAM,gBAAAA,EAAkBJ;AAAAA,GACpB;AACF;AAEO,SAASK,iBAAiBzB,GAAAA,EAA4B;AAC3D,EAAA,MAAMe,SAAAA,GAAYhB,cAAcC,GAAG,CAAA;AACnC,EAAA,MAAMQ,OAAOO,SAAAA,CAAUP,IAAAA;AAEvB,EAAA,IAAIA,SAAS,MAAA,EAAQ;AACnB,IAAA,MAAMQ,UAAAA,GAAahB,IAAIiB,kBAAkB,CAAA;AACzC,IAAA,OAAO;AAAA,MACL,GAAGF,SAAAA;AAAAA,MACHP,IAAAA;AAAAA,MACAQ,UAAAA;AAAAA,MACAU,IAAAA,EAAM;AAAA,KACR;AAAA,EACF;AAEA,EAAA,MAAMR,aAAAA,GAAgBlB,IAAImB,sBAAsB,CAAA;AAChD,EAAA,OAAO;AAAA,IACL,GAAGJ,SAAAA;AAAAA,IACHP,IAAAA;AAAAA,IACAU,aAAAA;AAAAA,IACAQ,IAAAA,EAAM;AAAA,GACR;AACF;;;;"}
1
+ {"version":3,"file":"swap.js","sources":["../../../src/events/getters/swap.ts"],"sourcesContent":["import type { SwapFormState } from \"../types/common\";\nimport {\n swapTokenFromAtom,\n swapTokenToAtom,\n} from \"@/core/inputs/state/selectedTokenAtom\";\nimport {\n payInputAmountAtom,\n receiveInputAmountAtom,\n} from \"@/core/inputs/state/inputAmountAtom\";\nimport { swapSideAtom } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { getAccount } from \"@wagmi/core\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { receiverAddressAtom } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport type { Getter } from \"jotai\";\nimport type { SwapFormInput } from \"../types/formInput\";\nimport { sanitizeTradeFlowToken } from \"@/lib/utils/tradeFlow\";\n\nfunction getBaseParams(get: Getter) {\n const tokenFrom = get(swapTokenFromAtom);\n const tokenTo = get(swapTokenToAtom);\n\n const srcChainId = tokenFrom.network;\n const destChainId = tokenTo?.network;\n\n const side = get(swapSideAtom);\n\n const receiverAddress = get(receiverAddressAtom);\n\n return {\n tokenFrom: sanitizeTradeFlowToken(tokenFrom),\n tokenTo: tokenTo ? sanitizeTradeFlowToken(tokenTo) : undefined,\n srcChainId,\n destChainId,\n side,\n receiverAddress,\n };\n}\n\nexport function getSwapState(get: Getter): SwapFormState {\n const baseState = getBaseParams(get);\n\n const sendAmount = get(payInputAmountAtom);\n const receiveAmount = get(receiveInputAmountAtom);\n\n const account = getAccount(wagmiConfig).address;\n\n return {\n ...baseState,\n sendAmount,\n receiveAmount,\n connectedAccount: account,\n receiverAddress: baseState.receiverAddress ?? account,\n };\n}\n\nexport function getSwapFormInput(get: Getter): SwapFormInput {\n const baseState = getBaseParams(get);\n const side = baseState.side;\n\n if (side === \"SELL\") {\n const sendAmount = get(payInputAmountAtom);\n return {\n ...baseState,\n side,\n sendAmount,\n form: \"swap\",\n };\n }\n\n const receiveAmount = get(receiveInputAmountAtom);\n return {\n ...baseState,\n side,\n receiveAmount,\n form: \"swap\",\n };\n}\n"],"names":["getBaseParams","get","tokenFrom","swapTokenFromAtom","tokenTo","swapTokenToAtom","srcChainId","network","destChainId","side","swapSideAtom","receiverAddress","receiverAddressAtom","sanitizeTradeFlowToken","undefined","getSwapState","baseState","sendAmount","payInputAmountAtom","receiveAmount","receiveInputAmountAtom","account","getAccount","wagmiConfig","address","connectedAccount","getSwapFormInput","form"],"mappings":";;;;;;;;AAiBA,SAASA,cAAcC,GAAAA,EAAa;AAClC,EAAA,MAAMC,SAAAA,GAAYD,IAAIE,iBAAiB,CAAA;AACvC,EAAA,MAAMC,OAAAA,GAAUH,IAAII,eAAe,CAAA;AAEnC,EAAA,MAAMC,aAAaJ,SAAAA,CAAUK,OAAAA;AAC7B,EAAA,MAAMC,cAAcJ,OAAAA,EAASG,OAAAA;AAE7B,EAAA,MAAME,IAAAA,GAAOR,IAAIS,YAAY,CAAA;AAE7B,EAAA,MAAMC,eAAAA,GAAkBV,IAAIW,mBAAmB,CAAA;AAE/C,EAAA,OAAO;AAAA,IACLV,SAAAA,EAAWW,uBAAuBX,SAAS,CAAA;AAAA,IAC3CE,OAAAA,EAASA,OAAAA,GAAUS,sBAAAA,CAAuBT,OAAO,CAAA,GAAIU,MAAAA;AAAAA,IACrDR,UAAAA;AAAAA,IACAE,WAAAA;AAAAA,IACAC,IAAAA;AAAAA,IACAE;AAAAA,GACF;AACF;AAEO,SAASI,aAAad,GAAAA,EAA4B;AACvD,EAAA,MAAMe,SAAAA,GAAYhB,cAAcC,GAAG,CAAA;AAEnC,EAAA,MAAMgB,UAAAA,GAAahB,IAAIiB,kBAAkB,CAAA;AACzC,EAAA,MAAMC,aAAAA,GAAgBlB,IAAImB,sBAAsB,CAAA;AAEhD,EAAA,MAAMC,OAAAA,GAAUC,UAAAA,CAAWC,WAAW,CAAA,CAAEC,OAAAA;AAExC,EAAA,OAAO;AAAA,IACL,GAAGR,SAAAA;AAAAA,IACHC,UAAAA;AAAAA,IACAE,aAAAA;AAAAA,IACAM,gBAAAA,EAAkBJ,OAAAA;AAAAA,IAClBV,eAAAA,EAAiBK,UAAUL,eAAAA,IAAmBU;AAAAA,GAChD;AACF;AAEO,SAASK,iBAAiBzB,GAAAA,EAA4B;AAC3D,EAAA,MAAMe,SAAAA,GAAYhB,cAAcC,GAAG,CAAA;AACnC,EAAA,MAAMQ,OAAOO,SAAAA,CAAUP,IAAAA;AAEvB,EAAA,IAAIA,SAAS,MAAA,EAAQ;AACnB,IAAA,MAAMQ,UAAAA,GAAahB,IAAIiB,kBAAkB,CAAA;AACzC,IAAA,OAAO;AAAA,MACL,GAAGF,SAAAA;AAAAA,MACHP,IAAAA;AAAAA,MACAQ,UAAAA;AAAAA,MACAU,IAAAA,EAAM;AAAA,KACR;AAAA,EACF;AAEA,EAAA,MAAMR,aAAAA,GAAgBlB,IAAImB,sBAAsB,CAAA;AAChD,EAAA,OAAO;AAAA,IACL,GAAGJ,SAAAA;AAAAA,IACHP,IAAAA;AAAAA,IACAU,aAAAA;AAAAA,IACAQ,IAAAA,EAAM;AAAA,GACR;AACF;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useOnWalletConnect.d.ts","sourceRoot":"","sources":["../../../src/events/hooks/useOnWalletConnect.ts"],"names":[],"mappings":"AAKA,wBAAgB,oBAAoB,SAiCnC"}
1
+ {"version":3,"file":"useOnWalletConnect.d.ts","sourceRoot":"","sources":["../../../src/events/hooks/useOnWalletConnect.ts"],"names":[],"mappings":"AAWA,wBAAgB,oBAAoB,SA6CnC"}
@@ -1,4 +1,5 @@
1
1
  import { d as distExports } from '../../_virtual/index.js';
2
+ import { isExternalConnector } from '../../components/web3/ConnectExternalProvider/utils.js';
2
3
  import { getWalletMetadata } from '../../components/web3/ConnectWallets/walletIcons.js';
3
4
  import { useWidgetEvents } from '../../core/state/widgetEventsAtom.js';
4
5
  import { useAccountEffect } from 'wagmi';
@@ -19,10 +20,14 @@ function useOnWalletConnected() {
19
20
  chainId,
20
21
  isReconnected
21
22
  } = t1;
23
+ if (!connector || !address || !chainId) {
24
+ return;
25
+ }
22
26
  const walletMetadata = await getWalletMetadata(connector);
23
27
  const provider = await connector.getProvider();
24
28
  const isEmbedded = connector.type === safe.type;
25
- const connectorAction = isReconnected ? "Eager" : isEmbedded ? "Embedded" : "Click";
29
+ const isExternal = isExternalConnector(connector);
30
+ const connectorAction = isReconnected ? "Eager" : isEmbedded ? "Embedded" : isExternal ? "External" : "Click";
26
31
  onConnectWallet?.({
27
32
  event: {
28
33
  name: "ConnectWallet:connect",
@@ -1 +1 @@
1
- {"version":3,"file":"useOnWalletConnect.js","sources":["../../../src/events/hooks/useOnWalletConnect.ts"],"sourcesContent":["import { getWalletMetadata } from \"@/components/web3/ConnectWallets/walletIcons\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport { useAccountEffect } from \"wagmi\";\nimport { safe } from \"wagmi/connectors\";\n\nexport function useOnWalletConnected() {\n const { onConnectWallet } = useWidgetEvents();\n\n useAccountEffect({\n onConnect: async ({ address, connector, chainId, isReconnected }) => {\n const walletMetadata = await getWalletMetadata(connector);\n const provider = await connector.getProvider();\n\n const isEmbedded = connector.type === safe.type;\n\n const connectorAction = isReconnected\n ? \"Eager\"\n : isEmbedded\n ? \"Embedded\"\n : \"Click\";\n\n onConnectWallet?.({\n event: {\n name: \"ConnectWallet:connect\",\n params: {\n connectorType: connector.type,\n connectorName: connector.name,\n connectorAction,\n provider,\n account: address,\n chainId,\n walletName: walletMetadata.name,\n walletIcon: walletMetadata.icon,\n },\n },\n });\n },\n });\n}\n"],"names":["useOnWalletConnected","$","_c","onConnectWallet","useWidgetEvents","t0","onConnect","t1","address","connector","chainId","isReconnected","walletMetadata","getWalletMetadata","provider","getProvider","isEmbedded","type","safe","connectorAction","event","name","params","connectorType","connectorName","account","walletName","walletIcon","icon","useAccountEffect"],"mappings":";;;;;;AAKO,SAAAA,oBAAAA,GAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACL,EAAA,MAAA;AAAA,IAAAC;AAAAA,MAA4BC,eAAAA,EAAgB;AAAE,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAJ,CAAAA,QAAAE,eAAAA,EAAA;AAE7BE,IAAAA,EAAAA,GAAA;AAAA,MAAAC,SAAAA,EACJ,OAAAC,EAAAA,KAAA;AAAO,QAAA,MAAA;AAAA,UAAAC,OAAAA;AAAAA,UAAAC,SAAAA;AAAAA,UAAAC,OAAAA;AAAAA,UAAAC;AAAAA,SAAA,GAAAJ,EAAAA;AAChB,QAAA,MAAAK,cAAAA,GAAuB,MAAMC,iBAAAA,CAAkBJ,SAAS,CAAA;AACxD,QAAA,MAAAK,QAAAA,GAAiB,MAAML,SAAAA,CAASM,WAAAA,EAAa;AAE7C,QAAA,MAAAC,UAAAA,GAAmBP,SAAAA,CAASQ,IAAAA,KAAUC,IAAAA,CAAID,IAAAA;AAE1C,QAAA,MAAAE,eAAAA,GAAwBR,aAAAA,GAAA,OAAA,GAEpBK,UAAAA,GAAA,UAAA,GAAA,OAAA;AAIJb,QAAAA,eAAAA,GAAkB;AAAA,UAAAiB,KAAAA,EACT;AAAA,YAAAC,IAAAA,EACC,uBAAA;AAAA,YAAuBC,MAAAA,EACrB;AAAA,cAAAC,eACSd,SAAAA,CAASQ,IAAAA;AAAAA,cAAKO,eACdf,SAAAA,CAASY,IAAAA;AAAAA,cAAKF,eAAAA;AAAAA,cAAAL,QAAAA;AAAAA,cAAAW,OAAAA,EAGpBjB,OAAAA;AAAAA,cAAOE,OAAAA;AAAAA,cAAAgB,YAEJd,cAAAA,CAAcS,IAAAA;AAAAA,cAAKM,YACnBf,cAAAA,CAAcgB;AAAAA;AAC5B;AACF,SACD,CAAA;AAAA,MAAC;AAAA,KAEN;AAAC3B,IAAAA,CAAAA,MAAAE,eAAAA;AAAAF,IAAAA,CAAAA,MAAAI,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAJ,EAAA,CAAA,CAAA;AAAA,EAAA;AA7BD4B,EAAAA,gBAAAA,CAAiBxB,EA6BhB,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"useOnWalletConnect.js","sources":["../../../src/events/hooks/useOnWalletConnect.ts"],"sourcesContent":["import { isExternalConnector } from \"@/components/web3/ConnectExternalProvider/utils\";\nimport { getWalletMetadata } from \"@/components/web3/ConnectWallets/walletIcons\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport type { EIP1193Provider } from \"viem\";\nimport { useAccountEffect } from \"wagmi\";\nimport { safe } from \"wagmi/connectors\";\n\ntype OnConnectParams = Parameters<\n NonNullable<NonNullable<Parameters<typeof useAccountEffect>[0]>[\"onConnect\"]>\n>[0];\n\nexport function useOnWalletConnected() {\n const { onConnectWallet } = useWidgetEvents();\n\n useAccountEffect({\n onConnect: async ({\n address,\n connector,\n chainId,\n isReconnected,\n }: Partial<OnConnectParams>) => {\n // in some eager connect cases with external provider, account properties are not available yet,\n // especially when external provider = Safe iframe provider\n if (!connector || !address || !chainId) return;\n\n const walletMetadata = await getWalletMetadata(connector);\n const provider = await connector.getProvider();\n\n const isEmbedded = connector.type === safe.type;\n const isExternal = isExternalConnector(connector);\n\n const connectorAction = isReconnected\n ? \"Eager\"\n : isEmbedded\n ? \"Embedded\"\n : isExternal\n ? \"External\"\n : \"Click\";\n\n onConnectWallet?.({\n event: {\n name: \"ConnectWallet:connect\",\n params: {\n connectorType: connector.type,\n connectorName: connector.name,\n connectorAction,\n provider: provider as EIP1193Provider,\n account: address,\n chainId,\n walletName: walletMetadata.name,\n walletIcon: walletMetadata.icon,\n },\n },\n });\n },\n });\n}\n"],"names":["useOnWalletConnected","$","_c","onConnectWallet","useWidgetEvents","t0","onConnect","t1","address","connector","chainId","isReconnected","walletMetadata","getWalletMetadata","provider","getProvider","isEmbedded","type","safe","isExternal","isExternalConnector","connectorAction","event","name","params","connectorType","connectorName","account","walletName","walletIcon","icon","useAccountEffect"],"mappings":";;;;;;;AAWO,SAAAA,oBAAAA,GAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACL,EAAA,MAAA;AAAA,IAAAC;AAAAA,MAA4BC,eAAAA,EAAgB;AAAE,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAJ,CAAAA,QAAAE,eAAAA,EAAA;AAE7BE,IAAAA,EAAAA,GAAA;AAAA,MAAAC,SAAAA,EACJ,OAAAC,EAAAA,KAAA;AAAO,QAAA,MAAA;AAAA,UAAAC,OAAAA;AAAAA,UAAAC,SAAAA;AAAAA,UAAAC,OAAAA;AAAAA,UAAAC;AAAAA,SAAA,GAAAJ,EAAAA;AAQhB,QAAA,IAAI,CAACE,SAAAA,IAAD,CAAeD,OAAAA,IAAf,CAA2BE,OAAAA,EAAO;AAAA,UAAA;AAAA,QAAA;AAEtC,QAAA,MAAAE,cAAAA,GAAuB,MAAMC,iBAAAA,CAAkBJ,SAAS,CAAA;AACxD,QAAA,MAAAK,QAAAA,GAAiB,MAAML,SAAAA,CAASM,WAAAA,EAAa;AAE7C,QAAA,MAAAC,UAAAA,GAAmBP,SAAAA,CAASQ,IAAAA,KAAUC,IAAAA,CAAID,IAAAA;AAC1C,QAAA,MAAAE,UAAAA,GAAmBC,oBAAoBX,SAAS,CAAA;AAEhD,QAAA,MAAAY,kBAAwBV,aAAAA,GAAA,OAAA,GAEpBK,UAAAA,GAAA,UAAA,GAEEG,aAAA,UAAA,GAAA,OAAA;AAINhB,QAAAA,eAAAA,GAAkB;AAAA,UAAAmB,KAAAA,EACT;AAAA,YAAAC,IAAAA,EACC,uBAAA;AAAA,YAAuBC,MAAAA,EACrB;AAAA,cAAAC,eACShB,SAAAA,CAASQ,IAAAA;AAAAA,cAAKS,eACdjB,SAAAA,CAASc,IAAAA;AAAAA,cAAKF,eAAAA;AAAAA,cAAAP,QAAAA;AAAAA,cAEQa,OAAAA,EAC5BnB,OAAAA;AAAAA,cAAOE,OAAAA;AAAAA,cAAAkB,YAEJhB,cAAAA,CAAcW,IAAAA;AAAAA,cAAKM,YACnBjB,cAAAA,CAAckB;AAAAA;AAC5B;AACF,SACD,CAAA;AAAA,MAAC;AAAA,KAEN;AAAC7B,IAAAA,CAAAA,MAAAE,eAAAA;AAAAF,IAAAA,CAAAA,MAAAI,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAJ,EAAA,CAAA,CAAA;AAAA,EAAA;AAzCD8B,EAAAA,gBAAAA,CAAiB1B,EAyChB,CAAA;AAAC;;;;"}
@@ -1,10 +1,10 @@
1
- import { Address } from 'viem';
1
+ import { Address, EIP1193Provider } from 'viem';
2
2
  import { MakeEventArgs, WidgetEventCallbackConstructor, WidgetEventMinCallbackConstructor } from './common';
3
3
  type ConnectWalletParams = {
4
4
  connectorType: string;
5
5
  connectorName: string;
6
- connectorAction: "Click" | "Eager" | "Embedded";
7
- provider: unknown;
6
+ connectorAction: "Click" | "Eager" | "Embedded" | "External";
7
+ provider: EIP1193Provider;
8
8
  account: Address;
9
9
  walletName: string | null;
10
10
  walletIcon: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"connectWallet.d.ts","sourceRoot":"","sources":["../../../src/events/types/connectWallet.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,KAAK,EACV,aAAa,EACb,8BAA8B,EAC9B,iCAAiC,EAClC,MAAM,UAAU,CAAC;AAElB,KAAK,mBAAmB,GAAG;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC;IAChD,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,sBAAsB,GAAG,aAAa,CAAC;IAC1C,uBAAuB,EAAE,mBAAmB,CAAC;IAC7C,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChD,CAAC,CAAC;AAEH,MAAM,MAAM,eAAe,GACzB,8BAA8B,CAAC,sBAAsB,CAAC,CAAC;AACzD,MAAM,MAAM,kBAAkB,GAC5B,iCAAiC,CAAC,sBAAsB,CAAC,CAAC"}
1
+ {"version":3,"file":"connectWallet.d.ts","sourceRoot":"","sources":["../../../src/events/types/connectWallet.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AACrD,OAAO,KAAK,EACV,aAAa,EACb,8BAA8B,EAC9B,iCAAiC,EAClC,MAAM,UAAU,CAAC;AAElB,KAAK,mBAAmB,GAAG;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,OAAO,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,CAAC;IAC7D,QAAQ,EAAE,eAAe,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,sBAAsB,GAAG,aAAa,CAAC;IAC1C,uBAAuB,EAAE,mBAAmB,CAAC;IAC7C,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChD,CAAC,CAAC;AAEH,MAAM,MAAM,eAAe,GACzB,8BAA8B,CAAC,sBAAsB,CAAC,CAAC;AACzD,MAAM,MAAM,kBAAkB,GAC5B,iCAAiC,CAAC,sBAAsB,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useAwaitCalls.d.ts","sourceRoot":"","sources":["../../../src/hooks/batch/useAwaitCalls.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,aAAa,CAAC;AACrB,OAAO,EAGL,KAAK,+BAA+B,EACpC,KAAK,+BAA+B,EACrC,MAAM,OAAO,CAAC;AAEf,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,0CAA0C,CAAC;AAGlD,MAAM,MAAM,uBAAuB,CAAC,UAAU,GAAG,sBAAsB,IAAI;IACzE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,+BAA+B,CACrC,OAAO,WAAW,EAClB,UAAU,CACX,CAAC,OAAO,CAAC,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,sBAAsB,CAAC;AAE5D,MAAM,MAAM,uBAAuB,CAAC,UAAU,GAAG,sBAAsB,IACrE,+BAA+B,CAAC,UAAU,CAAC,CAAC;AAE9C,MAAM,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAE1D,MAAM,MAAM,YAAY,GAAG,WAAW,CACpC,4BAA4B,CAAC,UAAU,CAAC,CACzC,CAAC,MAAM,CAAC,CAAC;AAEV,MAAM,MAAM,kCAAkC,GAAG,QAAQ,CACvD,sBAAsB,GAAG;IACvB,QAAQ,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;CACvC,CACF,CAAC;AAEF,wBAAgB,aAAa,CAAC,UAAU,GAAG,sBAAsB,EAAE,EACjE,EAAE,EACF,KAAK,GACN,EAAE,uBAAuB,CAAC,UAAU,CAAC,GAAG,uBAAuB,CAAC,UAAU,CAAC,CAa3E;AAED,MAAM,MAAM,2BAA2B,CACrC,cAAc,GAAG,oBAAoB,EAAE,IACrC;IACF,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,OAAO,CAAC,EAAE,CACR,OAAO,EAAE,cAAc,CAAC,oBAAoB,EAAE,KAAK,CAAC,EAAE,KACnD,cAAc,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,cAAc,GAAG,cAAc,CAAC,sBAAsB,EAAE,KAAK,CAAC,EAAE,EAChE,EACA,GAAG,EACH,OAAO,GACR,EAAE,2BAA2B,CAAC,cAAc,CAAC,GAAG,cAAc,CAwB9D;AAED,wBAAgB,oBAAoB,IAAI,mBAAmB,CAK1D"}
1
+ {"version":3,"file":"useAwaitCalls.d.ts","sourceRoot":"","sources":["../../../src/hooks/batch/useAwaitCalls.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,aAAa,CAAC;AACrB,OAAO,EAGL,KAAK,+BAA+B,EACpC,KAAK,+BAA+B,EACrC,MAAM,OAAO,CAAC;AAEf,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,0CAA0C,CAAC;AAGlD,MAAM,MAAM,uBAAuB,CAAC,UAAU,GAAG,sBAAsB,IAAI;IACzE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,+BAA+B,CACrC,OAAO,WAAW,EAClB,UAAU,CACX,CAAC,OAAO,CAAC,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,sBAAsB,CAAC;AAE5D,MAAM,MAAM,uBAAuB,CAAC,UAAU,GAAG,sBAAsB,IACrE,+BAA+B,CAAC,UAAU,CAAC,CAAC;AAE9C,MAAM,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAE1D,MAAM,MAAM,YAAY,GAAG,WAAW,CACpC,4BAA4B,CAAC,UAAU,CAAC,CACzC,CAAC,MAAM,CAAC,CAAC;AAEV,MAAM,MAAM,kCAAkC,GAAG,QAAQ,CACvD,sBAAsB,GAAG;IACvB,QAAQ,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;CACvC,CACF,CAAC;AAEF,wBAAgB,aAAa,CAAC,UAAU,GAAG,sBAAsB,EAAE,EACjE,EAAE,EACF,KAAK,GACN,EAAE,uBAAuB,CAAC,UAAU,CAAC,GAAG,uBAAuB,CAAC,UAAU,CAAC,CAa3E;AAED,MAAM,MAAM,2BAA2B,CACrC,cAAc,GAAG,oBAAoB,EAAE,IACrC;IACF,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,OAAO,CAAC,EAAE,CACR,OAAO,EAAE,cAAc,CAAC,oBAAoB,EAAE,KAAK,CAAC,EAAE,KACnD,cAAc,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,cAAc,GAAG,cAAc,CAAC,sBAAsB,EAAE,KAAK,CAAC,EAAE,EAChE,EACA,GAAG,EACH,OAAO,GACR,EAAE,2BAA2B,CAAC,cAAc,CAAC,GAAG,cAAc,CAyB9D;AAED,wBAAgB,oBAAoB,IAAI,mBAAmB,CAK1D"}
@@ -1 +1 @@
1
- {"version":3,"file":"useAwaitCalls.js","sources":["../../../src/hooks/batch/useAwaitCalls.ts"],"sourcesContent":["import {\n useQueries,\n useQueryClient,\n type UseQueryResult,\n} from \"@tanstack/react-query\";\nimport {\n waitForCallsStatus,\n type WaitForCallsStatusReturnType,\n} from \"@wagmi/core\";\nimport {\n useConfig,\n useWaitForCallsStatus,\n type UseWaitForCallsStatusParameters,\n type UseWaitForCallsStatusReturnType,\n} from \"wagmi\";\n\nimport {\n waitForCallsStatusQueryKey,\n type WaitForCallsStatusData,\n} from \"@wagmi/core/query\";\nimport type { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { useConnectedSafe } from \"../connectors/useIsConnectedSafe\";\nimport type { NonEmptyArray, Prettify } from \"ts-essentials\";\nimport {\n ensureCallsStatusFactory,\n type EnsureCallsStatusFn,\n} from \"@/transactions/queries/ensureCallsStatus\";\nimport { SAFE_CALLS_WAIT_TIMEOUT } from \"@/lib/constants\";\n\nexport type UseAwaitCallsParameters<SelectData = DefaultCallsStatusData> = {\n id?: string;\n query?: UseWaitForCallsStatusParameters<\n typeof wagmiConfig,\n SelectData\n >[\"query\"];\n};\n\nexport type DefaultCallsStatusData = WaitForCallsStatusData;\n\nexport type UseAwaitCallsReturnType<SelectData = DefaultCallsStatusData> =\n UseWaitForCallsStatusReturnType<SelectData>;\n\nexport type CallsStatusFromWagmi = DefaultCallsStatusData;\n\nexport type CallsReceipt = NonNullable<\n WaitForCallsStatusReturnType[\"receipts\"]\n>[number];\n\nexport type WaitForCallsStatusDataWithReceipts = Prettify<\n WaitForCallsStatusData & {\n receipts: NonEmptyArray<CallsReceipt>;\n }\n>;\n\nexport function useAwaitCalls<SelectData = DefaultCallsStatusData>({\n id,\n query,\n}: UseAwaitCallsParameters<SelectData>): UseAwaitCallsReturnType<SelectData> {\n const isSafe = useConnectedSafe();\n\n const timeout = isSafe ? SAFE_CALLS_WAIT_TIMEOUT : undefined;\n\n const queryResult = useWaitForCallsStatus({\n id,\n throwOnFailure: true,\n query,\n timeout,\n });\n\n return queryResult;\n}\n\nexport type UseAwaitManyCallsParameters<\n CombinedResult = CallsStatusFromWagmi[],\n> = {\n ids: string[];\n combine?: (\n results: UseQueryResult<CallsStatusFromWagmi, Error>[]\n ) => CombinedResult;\n};\n\n/**\n * Hook to await multiple calls by IDs on different chains all together.\n */\nexport function useAwaitManyCalls<\n CombinedResult = UseQueryResult<WaitForCallsStatusData, Error>[],\n>({\n ids,\n combine,\n}: UseAwaitManyCallsParameters<CombinedResult>): CombinedResult {\n const config = useConfig();\n const isSafe = useConnectedSafe();\n\n const timeout = isSafe ? SAFE_CALLS_WAIT_TIMEOUT : undefined;\n\n const queries = ids.map((id) => {\n return {\n queryKey: waitForCallsStatusQueryKey({\n id,\n timeout,\n }),\n queryFn: () =>\n waitForCallsStatus(config, {\n id,\n timeout,\n throwOnFailure: true,\n }),\n };\n });\n\n const queryResults = useQueries({ queries, combine });\n\n return queryResults;\n}\n\nexport function useEnsureCallsStatus(): EnsureCallsStatusFn {\n const queryClient = useQueryClient();\n const wagmiConfig = useConfig();\n const isSafe = useConnectedSafe();\n return ensureCallsStatusFactory({ queryClient, wagmiConfig, isSafe });\n}\n"],"names":["useAwaitCalls","t0","$","_c","id","query","isSafe","useConnectedSafe","timeout","SAFE_CALLS_WAIT_TIMEOUT","undefined","t1","throwOnFailure","queryResult","useWaitForCallsStatus","useEnsureCallsStatus","queryClient","useQueryClient","wagmiConfig","useConfig","ensureCallsStatusFactory"],"mappings":";;;;;;;;;AAsDO,SAAAA,cAAAC,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAA4D,EAAA,MAAA;AAAA,IAAAC,EAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAAJ,EAAAA;AAIjE,EAAA,MAAAK,SAAeC,gBAAAA,EAAiB;AAEhC,EAAA,MAAAC,OAAAA,GAAgBF,SAAAG,uBAAAA,GAAAC,MAAAA;AAA6C,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAT,CAAAA,CAAA,CAAA,CAAA,KAAAE,EAAAA,IAAAF,CAAAA,QAAAG,KAAAA,IAAAH,CAAAA,CAAA,CAAA,CAAA,KAAAM,OAAAA,EAAA;AAEnBG,IAAAA,EAAAA,GAAA;AAAA,MAAAP,EAAAA;AAAAA,MAAAQ,cAAAA,EAExB,IAAA;AAAA,MAAIP,KAAAA;AAAAA,MAAAG;AAAAA,KAGtB;AAACN,IAAAA,CAAAA,MAAAE,EAAAA;AAAAF,IAAAA,CAAAA,MAAAG,KAAAA;AAAAH,IAAAA,CAAAA,MAAAM,OAAAA;AAAAN,IAAAA,CAAAA,MAAAS,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAT,EAAA,CAAA,CAAA;AAAA,EAAA;AALD,EAAA,MAAAW,WAAAA,GAAoBC,sBAAsBH,EAKzC,CAAA;AAAE,EAAA,OAEIE,WAAAA;AAAW;AA8Cb,SAAAE,oBAAAA,GAAA;AAAA,EAAA,MAAAb,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACL,EAAA,MAAAa,cAAoBC,cAAAA,EAAe;AACnC,EAAA,MAAAC,cAAoBC,SAAAA,EAAU;AAC9B,EAAA,MAAAb,SAAeC,gBAAAA,EAAiB;AAAE,EAAA,IAAAN,EAAAA;AAAA,EAAA,IAAAC,CAAAA,CAAA,CAAA,CAAA,KAAAI,MAAAA,IAAAJ,CAAAA,QAAAc,WAAAA,IAAAd,CAAAA,CAAA,CAAA,CAAA,KAAAgB,WAAAA,EAAA;AAC3BjB,IAAAA,EAAAA,GAAAmB,wBAAAA,CAAyB;AAAA,MAAAJ,WAAAA;AAAAA,MAAAE,WAAAA;AAAAA,MAAAZ;AAAAA,KAAoC,CAAA;AAACJ,IAAAA,CAAAA,MAAAI,MAAAA;AAAAJ,IAAAA,CAAAA,MAAAc,WAAAA;AAAAd,IAAAA,CAAAA,MAAAgB,WAAAA;AAAAhB,IAAAA,CAAAA,MAAAD,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAC,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAA9DD,EAAAA;AAA8D;;;;"}
1
+ {"version":3,"file":"useAwaitCalls.js","sources":["../../../src/hooks/batch/useAwaitCalls.ts"],"sourcesContent":["import {\n useQueries,\n useQueryClient,\n type UseQueryResult,\n} from \"@tanstack/react-query\";\nimport {\n waitForCallsStatus,\n type WaitForCallsStatusReturnType,\n} from \"@wagmi/core\";\nimport {\n useConfig,\n useWaitForCallsStatus,\n type UseWaitForCallsStatusParameters,\n type UseWaitForCallsStatusReturnType,\n} from \"wagmi\";\n\nimport {\n waitForCallsStatusQueryKey,\n type WaitForCallsStatusData,\n} from \"@wagmi/core/query\";\nimport type { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { useConnectedSafe } from \"../connectors/useIsConnectedSafe\";\nimport type { NonEmptyArray, Prettify } from \"ts-essentials\";\nimport {\n ensureCallsStatusFactory,\n type EnsureCallsStatusFn,\n} from \"@/transactions/queries/ensureCallsStatus\";\nimport { SAFE_CALLS_WAIT_TIMEOUT } from \"@/lib/constants\";\n\nexport type UseAwaitCallsParameters<SelectData = DefaultCallsStatusData> = {\n id?: string;\n query?: UseWaitForCallsStatusParameters<\n typeof wagmiConfig,\n SelectData\n >[\"query\"];\n};\n\nexport type DefaultCallsStatusData = WaitForCallsStatusData;\n\nexport type UseAwaitCallsReturnType<SelectData = DefaultCallsStatusData> =\n UseWaitForCallsStatusReturnType<SelectData>;\n\nexport type CallsStatusFromWagmi = DefaultCallsStatusData;\n\nexport type CallsReceipt = NonNullable<\n WaitForCallsStatusReturnType[\"receipts\"]\n>[number];\n\nexport type WaitForCallsStatusDataWithReceipts = Prettify<\n WaitForCallsStatusData & {\n receipts: NonEmptyArray<CallsReceipt>;\n }\n>;\n\nexport function useAwaitCalls<SelectData = DefaultCallsStatusData>({\n id,\n query,\n}: UseAwaitCallsParameters<SelectData>): UseAwaitCallsReturnType<SelectData> {\n const isSafe = useConnectedSafe();\n\n const timeout = isSafe ? SAFE_CALLS_WAIT_TIMEOUT : undefined;\n\n const queryResult = useWaitForCallsStatus({\n id,\n throwOnFailure: true,\n query,\n timeout,\n });\n\n return queryResult;\n}\n\nexport type UseAwaitManyCallsParameters<\n CombinedResult = CallsStatusFromWagmi[],\n> = {\n ids: string[];\n combine?: (\n results: UseQueryResult<CallsStatusFromWagmi, Error>[]\n ) => CombinedResult;\n};\n\n/**\n * Hook to await multiple calls by IDs on different chains all together.\n */\nexport function useAwaitManyCalls<\n CombinedResult = UseQueryResult<WaitForCallsStatusData, Error>[],\n>({\n ids,\n combine,\n}: UseAwaitManyCallsParameters<CombinedResult>): CombinedResult {\n const config = useConfig();\n const isSafe = useConnectedSafe();\n\n const timeout = isSafe ? SAFE_CALLS_WAIT_TIMEOUT : undefined;\n\n const queries = ids.map((id) => {\n return {\n queryKey: waitForCallsStatusQueryKey({\n id,\n timeout,\n throwOnFailure: true,\n }),\n queryFn: () =>\n waitForCallsStatus(config, {\n id,\n timeout,\n throwOnFailure: true,\n }),\n };\n });\n\n const queryResults = useQueries({ queries, combine });\n\n return queryResults;\n}\n\nexport function useEnsureCallsStatus(): EnsureCallsStatusFn {\n const queryClient = useQueryClient();\n const wagmiConfig = useConfig();\n const isSafe = useConnectedSafe();\n return ensureCallsStatusFactory({ queryClient, wagmiConfig, isSafe });\n}\n"],"names":["useAwaitCalls","t0","$","_c","id","query","isSafe","useConnectedSafe","timeout","SAFE_CALLS_WAIT_TIMEOUT","undefined","t1","throwOnFailure","queryResult","useWaitForCallsStatus","useEnsureCallsStatus","queryClient","useQueryClient","wagmiConfig","useConfig","ensureCallsStatusFactory"],"mappings":";;;;;;;;;AAsDO,SAAAA,cAAAC,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAA4D,EAAA,MAAA;AAAA,IAAAC,EAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAAJ,EAAAA;AAIjE,EAAA,MAAAK,SAAeC,gBAAAA,EAAiB;AAEhC,EAAA,MAAAC,OAAAA,GAAgBF,SAAAG,uBAAAA,GAAAC,MAAAA;AAA6C,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAT,CAAAA,CAAA,CAAA,CAAA,KAAAE,EAAAA,IAAAF,CAAAA,QAAAG,KAAAA,IAAAH,CAAAA,CAAA,CAAA,CAAA,KAAAM,OAAAA,EAAA;AAEnBG,IAAAA,EAAAA,GAAA;AAAA,MAAAP,EAAAA;AAAAA,MAAAQ,cAAAA,EAExB,IAAA;AAAA,MAAIP,KAAAA;AAAAA,MAAAG;AAAAA,KAGtB;AAACN,IAAAA,CAAAA,MAAAE,EAAAA;AAAAF,IAAAA,CAAAA,MAAAG,KAAAA;AAAAH,IAAAA,CAAAA,MAAAM,OAAAA;AAAAN,IAAAA,CAAAA,MAAAS,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAT,EAAA,CAAA,CAAA;AAAA,EAAA;AALD,EAAA,MAAAW,WAAAA,GAAoBC,sBAAsBH,EAKzC,CAAA;AAAE,EAAA,OAEIE,WAAAA;AAAW;AA+Cb,SAAAE,oBAAAA,GAAA;AAAA,EAAA,MAAAb,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACL,EAAA,MAAAa,cAAoBC,cAAAA,EAAe;AACnC,EAAA,MAAAC,cAAoBC,SAAAA,EAAU;AAC9B,EAAA,MAAAb,SAAeC,gBAAAA,EAAiB;AAAE,EAAA,IAAAN,EAAAA;AAAA,EAAA,IAAAC,CAAAA,CAAA,CAAA,CAAA,KAAAI,MAAAA,IAAAJ,CAAAA,QAAAc,WAAAA,IAAAd,CAAAA,CAAA,CAAA,CAAA,KAAAgB,WAAAA,EAAA;AAC3BjB,IAAAA,EAAAA,GAAAmB,wBAAAA,CAAyB;AAAA,MAAAJ,WAAAA;AAAAA,MAAAE,WAAAA;AAAAA,MAAAZ;AAAAA,KAAoC,CAAA;AAACJ,IAAAA,CAAAA,MAAAI,MAAAA;AAAAJ,IAAAA,CAAAA,MAAAc,WAAAA;AAAAd,IAAAA,CAAAA,MAAAgB,WAAAA;AAAAhB,IAAAA,CAAAA,MAAAD,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAC,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAA9DD,EAAAA;AAA8D;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useIsConnectedSafe.d.ts","sourceRoot":"","sources":["../../../src/hooks/connectors/useIsConnectedSafe.ts"],"names":[],"mappings":"AAgBA,wBAAgB,gBAAgB,IAAI,OAAO,CAK1C;AAGD,wBAAsB,aAAa,qBAalC"}
1
+ {"version":3,"file":"useIsConnectedSafe.d.ts","sourceRoot":"","sources":["../../../src/hooks/connectors/useIsConnectedSafe.ts"],"names":[],"mappings":"AAoBA,wBAAgB,gBAAgB,IAAI,OAAO,CAW1C;AAGD,wBAAsB,aAAa,qBAelC"}
@@ -7,11 +7,13 @@ import '@tanstack/react-query';
7
7
  import 'ts-essentials';
8
8
  import 'wagmi/connectors';
9
9
  import '../../lib/queryClient.js';
10
+ import { useIsExternalProviderSafeIframe } from '../../core/state/externalProviderAtom.js';
10
11
 
11
12
  function useConnectedSafe() {
12
13
  const isSafeConnector2 = useIsSafeConnector();
13
14
  const isSafeThroughWalletConnect = useIsSafeThroughWalletConnect();
14
- return isSafeConnector2 || isSafeThroughWalletConnect;
15
+ const isExternalProviderSafeIframe = useIsExternalProviderSafeIframe();
16
+ return isSafeConnector2 || isSafeThroughWalletConnect || isExternalProviderSafeIframe;
15
17
  }
16
18
 
17
19
  export { useConnectedSafe };
@@ -1 +1 @@
1
- {"version":3,"file":"useIsConnectedSafe.js","sources":["../../../src/hooks/connectors/useIsConnectedSafe.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport {\n isSafeConnector,\n useIsSafeConnector,\n} from \"./useIsGnosisSafeConnector\";\nimport {\n isSafeConnectorThroughWalletConnect,\n useIsSafeThroughWalletConnect,\n} from \"./useIsSafeThroughWalletConnect\";\nimport { getAccount } from \"@wagmi/core\";\nimport {\n getWalletMetadata,\n walletMetadataQueryKey,\n} from \"@/components/web3/ConnectWallets/walletIcons\";\nimport { queryClient } from \"@/lib/queryClient\";\n\nexport function useConnectedSafe(): boolean {\n const isSafeConnector = useIsSafeConnector();\n const isSafeThroughWalletConnect = useIsSafeThroughWalletConnect();\n\n return isSafeConnector || isSafeThroughWalletConnect;\n}\n\n// for use outside of react\nexport async function connectedSafe() {\n const connector = getAccount(wagmiConfig).connector;\n if (!connector) return false;\n\n if (isSafeConnector(connector)) return true;\n\n const walletMeta = await queryClient.ensureQueryData({\n queryKey: walletMetadataQueryKey(connector.id),\n queryFn: () => getWalletMetadata(connector),\n gcTime: Infinity,\n });\n\n return isSafeConnectorThroughWalletConnect(walletMeta);\n}\n"],"names":["useConnectedSafe","isSafeConnector","useIsSafeConnector","isSafeThroughWalletConnect","useIsSafeThroughWalletConnect"],"mappings":";;;;;;;;;;AAgBO,SAAAA,gBAAAA,GAAA;AACL,EAAA,MAAAC,mBAAwBC,kBAAAA,EAAmB;AAC3C,EAAA,MAAAC,6BAAmCC,6BAAAA,EAA8B;AAAE,EAAA,OAE5DH,gBAAAA,IAAAE,0BAAAA;AAA6C;;;;"}
1
+ {"version":3,"file":"useIsConnectedSafe.js","sources":["../../../src/hooks/connectors/useIsConnectedSafe.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport {\n isSafeConnector,\n useIsSafeConnector,\n} from \"./useIsGnosisSafeConnector\";\nimport {\n isSafeConnectorThroughWalletConnect,\n useIsSafeThroughWalletConnect,\n} from \"./useIsSafeThroughWalletConnect\";\nimport { getAccount } from \"@wagmi/core\";\nimport {\n getWalletMetadata,\n walletMetadataQueryKey,\n} from \"@/components/web3/ConnectWallets/walletIcons\";\nimport { queryClient } from \"@/lib/queryClient\";\nimport {\n isExternalConnectorWithSafeIframe,\n useIsExternalProviderSafeIframe,\n} from \"@/core/state/externalProviderAtom\";\n\nexport function useConnectedSafe(): boolean {\n const isSafeConnector = useIsSafeConnector();\n const isSafeThroughWalletConnect = useIsSafeThroughWalletConnect();\n\n const isExternalProviderSafeIframe = useIsExternalProviderSafeIframe();\n\n return (\n isSafeConnector ||\n isSafeThroughWalletConnect ||\n isExternalProviderSafeIframe\n );\n}\n\n// for use outside of react\nexport async function connectedSafe() {\n const connector = getAccount(wagmiConfig).connector;\n if (!connector) return false;\n\n if (isSafeConnector(connector)) return true;\n\n if (await isExternalConnectorWithSafeIframe(connector)) return true;\n\n const walletMeta = await queryClient.ensureQueryData({\n queryKey: walletMetadataQueryKey(connector.uid),\n queryFn: () => getWalletMetadata(connector),\n gcTime: Infinity,\n });\n\n return isSafeConnectorThroughWalletConnect(walletMeta);\n}\n"],"names":["useConnectedSafe","isSafeConnector","useIsSafeConnector","isSafeThroughWalletConnect","useIsSafeThroughWalletConnect","isExternalProviderSafeIframe","useIsExternalProviderSafeIframe"],"mappings":";;;;;;;;;;;AAoBO,SAAAA,gBAAAA,GAAA;AACL,EAAA,MAAAC,mBAAwBC,kBAAAA,EAAmB;AAC3C,EAAA,MAAAC,6BAAmCC,6BAAAA,EAA8B;AAEjE,EAAA,MAAAC,+BAAqCC,+BAAAA,EAAgC;AAAE,EAAA,OAGrEL,oBAAAE,0BAAAA,IAAAE,4BAAAA;AAE4B;;;;"}
@@ -1,4 +1,7 @@
1
1
  import { Connector } from 'wagmi';
2
+ import { safe } from 'wagmi/connectors';
2
3
  export declare function useIsSafeConnector(): boolean;
3
- export declare function isSafeConnector({ type }: Pick<Connector, "type">): boolean;
4
+ export declare function isSafeConnector<T extends Pick<Connector, "type">>(connector: T): connector is T & {
5
+ type: typeof safe.type;
6
+ };
4
7
  //# sourceMappingURL=useIsGnosisSafeConnector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useIsGnosisSafeConnector.d.ts","sourceRoot":"","sources":["../../../src/hooks/connectors/useIsGnosisSafeConnector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEnD,wBAAgB,kBAAkB,IAAI,OAAO,CAI5C;AAED,wBAAgB,eAAe,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,OAAO,CAE1E"}
1
+ {"version":3,"file":"useIsGnosisSafeConnector.d.ts","sourceRoot":"","sources":["../../../src/hooks/connectors/useIsGnosisSafeConnector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAExC,wBAAgB,kBAAkB,IAAI,OAAO,CAI5C;AAED,wBAAgB,eAAe,CAAC,CAAC,SAAS,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,EAC/D,SAAS,EAAE,CAAC,GACX,SAAS,IAAI,CAAC,GAAG;IAAE,IAAI,EAAE,OAAO,IAAI,CAAC,IAAI,CAAA;CAAE,CAE7C"}
@@ -1,5 +1,6 @@
1
1
  import { d as distExports } from '../../_virtual/index.js';
2
2
  import { useAccount } from 'wagmi';
3
+ import { safe } from 'wagmi/connectors';
3
4
 
4
5
  function useIsSafeConnector() {
5
6
  const $ = distExports.c(2);
@@ -19,10 +20,8 @@ function useIsSafeConnector() {
19
20
  }
20
21
  return t0;
21
22
  }
22
- function isSafeConnector({
23
- type
24
- }) {
25
- return type === "safe";
23
+ function isSafeConnector(connector) {
24
+ return connector.type === safe.type;
26
25
  }
27
26
 
28
27
  export { isSafeConnector, useIsSafeConnector };
@@ -1 +1 @@
1
- {"version":3,"file":"useIsGnosisSafeConnector.js","sources":["../../../src/hooks/connectors/useIsGnosisSafeConnector.ts"],"sourcesContent":["import { useAccount, type Connector } from \"wagmi\";\n\nexport function useIsSafeConnector(): boolean {\n const { connector } = useAccount();\n if (!connector) return false;\n return isSafeConnector(connector);\n}\n\nexport function isSafeConnector({ type }: Pick<Connector, \"type\">): boolean {\n return type === \"safe\";\n}\n"],"names":["useIsSafeConnector","$","_c","connector","useAccount","t0","isSafeConnector","type"],"mappings":";;;AAEO,SAAAA,kBAAAA,GAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACL,EAAA,MAAA;AAAA,IAAAC;AAAAA,MAAsBC,UAAAA,EAAW;AACjC,EAAA,IAAI,CAACD,SAAAA,EAAS;AAAA,IAAA,OAAS,KAAA;AAAA,EAAK;AAAC,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAAJ,CAAAA,QAAAE,SAAAA,EAAA;AACtBE,IAAAA,EAAAA,GAAAC,gBAAgBH,SAAS,CAAA;AAACF,IAAAA,CAAAA,MAAAE,SAAAA;AAAAF,IAAAA,CAAAA,MAAAI,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAJ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAA1BI,EAAAA;AAA0B;AAG5B,SAASC,eAAAA,CAAgB;AAAA,EAAEC;AAA8B,CAAA,EAAY;AAC1E,EAAA,OAAOA,IAAAA,KAAS,MAAA;AAClB;;;;"}
1
+ {"version":3,"file":"useIsGnosisSafeConnector.js","sources":["../../../src/hooks/connectors/useIsGnosisSafeConnector.ts"],"sourcesContent":["import { useAccount, type Connector } from \"wagmi\";\nimport { safe } from \"wagmi/connectors\";\n\nexport function useIsSafeConnector(): boolean {\n const { connector } = useAccount();\n if (!connector) return false;\n return isSafeConnector(connector);\n}\n\nexport function isSafeConnector<T extends Pick<Connector, \"type\">>(\n connector: T\n): connector is T & { type: typeof safe.type } {\n return connector.type === safe.type;\n}\n"],"names":["useIsSafeConnector","$","_c","connector","useAccount","t0","isSafeConnector","type","safe"],"mappings":";;;;AAGO,SAAAA,kBAAAA,GAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACL,EAAA,MAAA;AAAA,IAAAC;AAAAA,MAAsBC,UAAAA,EAAW;AACjC,EAAA,IAAI,CAACD,SAAAA,EAAS;AAAA,IAAA,OAAS,KAAA;AAAA,EAAK;AAAC,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAAJ,CAAAA,QAAAE,SAAAA,EAAA;AACtBE,IAAAA,EAAAA,GAAAC,gBAAgBH,SAAS,CAAA;AAACF,IAAAA,CAAAA,MAAAE,SAAAA;AAAAF,IAAAA,CAAAA,MAAAI,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAJ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAA1BI,EAAAA;AAA0B;AAG5B,SAASC,gBACdH,SAAAA,EAC6C;AAC7C,EAAA,OAAOA,SAAAA,CAAUI,SAASC,IAAAA,CAAKD,IAAAA;AACjC;;;;"}
@@ -1,4 +1,4 @@
1
1
  import { WalletMeta } from '../../components/web3/ConnectWallets/walletIcons';
2
2
  export declare function useIsSafeThroughWalletConnect(): boolean;
3
- export declare function isSafeConnectorThroughWalletConnect({ connectorType, name, }: Partial<Pick<WalletMeta, "connectorType" | "name">>): boolean;
3
+ export declare function isSafeConnectorThroughWalletConnect({ connectorType, connectorId, name, }: Partial<Pick<WalletMeta, "connectorType" | "connectorId" | "name">>): boolean;
4
4
  //# sourceMappingURL=useIsSafeThroughWalletConnect.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useIsSafeThroughWalletConnect.d.ts","sourceRoot":"","sources":["../../../src/hooks/connectors/useIsSafeThroughWalletConnect.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,UAAU,EAChB,MAAM,8CAA8C,CAAC;AAWtD,wBAAgB,6BAA6B,YAI5C;AAED,wBAAgB,mCAAmC,CAAC,EAClD,aAAa,EACb,IAAI,GACL,EAAE,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,eAAe,GAAG,MAAM,CAAC,CAAC,GAAG,OAAO,CAO/D"}
1
+ {"version":3,"file":"useIsSafeThroughWalletConnect.d.ts","sourceRoot":"","sources":["../../../src/hooks/connectors/useIsSafeThroughWalletConnect.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,UAAU,EAChB,MAAM,8CAA8C,CAAC;AAWtD,wBAAgB,6BAA6B,YAY5C;AAED,wBAAgB,mCAAmC,CAAC,EAClD,aAAa,EACb,WAAW,EACX,IAAI,GACL,EAAE,OAAO,CACR,IAAI,CAAC,UAAU,EAAE,eAAe,GAAG,aAAa,GAAG,MAAM,CAAC,CAC3D,GAAG,OAAO,CAeV"}
@@ -1,3 +1,4 @@
1
+ import { isExternalConnector } from '../../components/web3/ConnectExternalProvider/utils.js';
1
2
  import { useWalletMetadata } from '../../components/web3/ConnectWallets/walletIcons.js';
2
3
  import { walletConnect } from 'wagmi/connectors';
3
4
 
@@ -11,18 +12,31 @@ const GnosisSafeWConnectRegex = [
11
12
  function useIsSafeThroughWalletConnect() {
12
13
  const {
13
14
  connectorType,
14
- name
15
+ connectorId,
16
+ name,
17
+ isWalletConnect
15
18
  } = useWalletMetadata() ?? {};
19
+ if (!isWalletConnect) {
20
+ return false;
21
+ }
16
22
  return isSafeConnectorThroughWalletConnect({
17
23
  connectorType,
24
+ connectorId,
18
25
  name
19
26
  });
20
27
  }
21
28
  function isSafeConnectorThroughWalletConnect({
22
29
  connectorType,
30
+ connectorId,
23
31
  name
24
32
  }) {
25
- if (connectorType !== walletConnect.type || !name) {
33
+ const isExternal = !!connectorType && !!connectorId && isExternalConnector({
34
+ type: connectorType,
35
+ id: connectorId
36
+ });
37
+ const isWalletConnectConnector = connectorType === walletConnect.type;
38
+ const isConnectorWithMayBeSafe = isExternal || isWalletConnectConnector;
39
+ if (!isConnectorWithMayBeSafe || !name) {
26
40
  return false;
27
41
  }
28
42
  const isSafe = GnosisSafeWConnectRegex.some((rule) => rule.test(name));
@@ -1 +1 @@
1
- {"version":3,"file":"useIsSafeThroughWalletConnect.js","sources":["../../../src/hooks/connectors/useIsSafeThroughWalletConnect.ts"],"sourcesContent":["import {\n useWalletMetadata,\n type WalletMeta,\n} from \"@/components/web3/ConnectWallets/walletIcons\";\nimport { walletConnect } from \"wagmi/connectors\";\n\nconst GnosisSafeWConnectRegex = [\n // matches `WalletConnect Safe App` (app in web Safe) and `Safe` (iOS Safe)\n /^(?:WalletConnect)?\\s*Safe\\s*(?:App)?$/i,\n\n // if there's word Safe surrounded by non-word characters or by nothing -> most likely it's Gnosis Safe\n /([^a-zA-Z]|^)Safe([^a-zA-Z]|$)/i, // matches'Safe{Wallet}'\n];\n\nexport function useIsSafeThroughWalletConnect() {\n const { connectorType, name } = useWalletMetadata() ?? {};\n\n return isSafeConnectorThroughWalletConnect({ connectorType, name });\n}\n\nexport function isSafeConnectorThroughWalletConnect({\n connectorType,\n name,\n}: Partial<Pick<WalletMeta, \"connectorType\" | \"name\">>): boolean {\n if (connectorType !== walletConnect.type || !name) {\n return false;\n }\n\n const isSafe = GnosisSafeWConnectRegex.some((rule) => rule.test(name));\n return isSafe;\n}\n"],"names":["GnosisSafeWConnectRegex","useIsSafeThroughWalletConnect","connectorType","name","useWalletMetadata","isSafeConnectorThroughWalletConnect","walletConnect","type","isSafe","some","rule","test"],"mappings":";;;AAMA,MAAMA,uBAAAA,GAA0B;AAAA;AAAA,EAE9B,yCAAA;AAAA;AAAA,EAGA;AAAA;AAAmC,CAAA;AAG9B,SAAAC,6BAAAA,GAAA;AACL,EAAA,MAAA;AAAA,IAAAC,aAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAgCC,iBAAAA,EAAwB,IAAxB,EAAwB;AAAE,EAAA,OAEnDC,mCAAAA,CAAoC;AAAA,IAAAH,aAAAA;AAAAA,IAAAC;AAAAA,GAAuB,CAAA;AAAC;AAG9D,SAASE,mCAAAA,CAAoC;AAAA,EAClDH,aAAAA;AAAAA,EACAC;AACmD,CAAA,EAAY;AAC/D,EAAA,IAAID,aAAAA,KAAkBI,aAAAA,CAAcC,IAAAA,IAAQ,CAACJ,IAAAA,EAAM;AACjD,IAAA,OAAO,KAAA;AAAA,EACT;AAEA,EAAA,MAAMK,SAASR,uBAAAA,CAAwBS,IAAAA,CAAMC,UAASA,IAAAA,CAAKC,IAAAA,CAAKR,IAAI,CAAC,CAAA;AACrE,EAAA,OAAOK,MAAAA;AACT;;;;"}
1
+ {"version":3,"file":"useIsSafeThroughWalletConnect.js","sources":["../../../src/hooks/connectors/useIsSafeThroughWalletConnect.ts"],"sourcesContent":["import { isExternalConnector } from \"@/components/web3/ConnectExternalProvider/utils\";\nimport {\n useWalletMetadata,\n type WalletMeta,\n} from \"@/components/web3/ConnectWallets/walletIcons\";\nimport { walletConnect } from \"wagmi/connectors\";\n\nconst GnosisSafeWConnectRegex = [\n // matches `WalletConnect Safe App` (app in web Safe) and `Safe` (iOS Safe)\n /^(?:WalletConnect)?\\s*Safe\\s*(?:App)?$/i,\n\n // if there's word Safe surrounded by non-word characters or by nothing -> most likely it's Gnosis Safe\n /([^a-zA-Z]|^)Safe([^a-zA-Z]|$)/i, // matches'Safe{Wallet}'\n];\n\nexport function useIsSafeThroughWalletConnect() {\n const { connectorType, connectorId, name, isWalletConnect } = useWalletMetadata() ?? {};\n\n if (!isWalletConnect) {\n return false;\n }\n\n return isSafeConnectorThroughWalletConnect({\n connectorType,\n connectorId,\n name,\n });\n}\n\nexport function isSafeConnectorThroughWalletConnect({\n connectorType,\n connectorId,\n name,\n}: Partial<\n Pick<WalletMeta, \"connectorType\" | \"connectorId\" | \"name\">\n>): boolean {\n const isExternal =\n !!connectorType &&\n !!connectorId &&\n isExternalConnector({ type: connectorType, id: connectorId });\n const isWalletConnectConnector = connectorType === walletConnect.type;\n\n const isConnectorWithMayBeSafe = isExternal || isWalletConnectConnector;\n\n if (!isConnectorWithMayBeSafe || !name) {\n return false;\n }\n\n const isSafe = GnosisSafeWConnectRegex.some((rule) => rule.test(name));\n return isSafe;\n}\n"],"names":["GnosisSafeWConnectRegex","useIsSafeThroughWalletConnect","connectorType","connectorId","name","isWalletConnect","useWalletMetadata","isSafeConnectorThroughWalletConnect","isExternal","isExternalConnector","type","id","isWalletConnectConnector","walletConnect","isConnectorWithMayBeSafe","isSafe","some","rule","test"],"mappings":";;;;AAOA,MAAMA,uBAAAA,GAA0B;AAAA;AAAA,EAE9B,yCAAA;AAAA;AAAA,EAGA;AAAA;AAAmC,CAAA;AAG9B,SAAAC,6BAAAA,GAAA;AACL,EAAA,MAAA;AAAA,IAAAC,aAAAA;AAAAA,IAAAC,WAAAA;AAAAA,IAAAC,IAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAA8DC,iBAAAA,EAAwB,IAAxB,EAAwB;AAEtF,EAAA,IAAI,CAACD,eAAAA,EAAe;AAAA,IAAA,OACX,KAAA;AAAA,EAAK;AACb,EAAA,OAEME,mCAAAA,CAAoC;AAAA,IAAAL,aAAAA;AAAAA,IAAAC,WAAAA;AAAAA,IAAAC;AAAAA,GAI1C,CAAA;AAAC;AAGG,SAASG,mCAAAA,CAAoC;AAAA,EAClDL,aAAAA;AAAAA,EACAC,WAAAA;AAAAA,EACAC;AAGF,CAAA,EAAY;AACV,EAAA,MAAMI,aACJ,CAAC,CAACN,iBACF,CAAC,CAACC,eACFM,mBAAAA,CAAoB;AAAA,IAAEC,IAAAA,EAAMR,aAAAA;AAAAA,IAAeS,EAAAA,EAAIR;AAAAA,GAAa,CAAA;AAC9D,EAAA,MAAMS,wBAAAA,GAA2BV,kBAAkBW,aAAAA,CAAcH,IAAAA;AAEjE,EAAA,MAAMI,2BAA2BN,UAAAA,IAAcI,wBAAAA;AAE/C,EAAA,IAAI,CAACE,wBAAAA,IAA4B,CAACV,IAAAA,EAAM;AACtC,IAAA,OAAO,KAAA;AAAA,EACT;AAEA,EAAA,MAAMW,SAASf,uBAAAA,CAAwBgB,IAAAA,CAAMC,UAASA,IAAAA,CAAKC,IAAAA,CAAKd,IAAI,CAAC,CAAA;AACrE,EAAA,OAAOW,MAAAA;AACT;;;;"}
@@ -4,16 +4,17 @@ import { useMutation } from '@tanstack/react-query';
4
4
  import { assert } from 'ts-essentials';
5
5
  import 'wagmi';
6
6
  import 'wagmi/query';
7
+ import '../../../lib/queryClient.js';
7
8
  import '../../../lib/web3/wagmi/config.js';
9
+ import 'viem';
10
+ import 'wagmi/chains';
8
11
  import '@wagmi/core';
9
12
  import 'wagmi/connectors';
10
- import '../../../lib/queryClient.js';
11
- import 'viem';
12
13
  import 'react/jsx-runtime';
13
- import 'lucide-react';
14
- import 'sonner';
15
14
  import 'clsx';
16
15
  import 'tailwind-merge';
16
+ import 'lucide-react';
17
+ import 'sonner';
17
18
  import '../../../assets/spinner.svg.js';
18
19
  import '../../../assets/circle-check.svg.js';
19
20
  import '../../../assets/circle-exclamation.svg.js';