@velora-dex/widget 0.5.0 → 0.5.1-dev.1

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 (693) hide show
  1. package/dist/components/ui/button.d.ts +1 -1
  2. package/dist/components/ui/button.d.ts.map +1 -1
  3. package/dist/components/ui/button.js +1 -0
  4. package/dist/components/ui/button.js.map +1 -1
  5. package/dist/components/web3/ConnectWallets/walletIcons.d.ts +1 -4
  6. package/dist/components/web3/ConnectWallets/walletIcons.d.ts.map +1 -1
  7. package/dist/components/web3/ConnectWallets/walletIcons.js +3 -23
  8. package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
  9. package/dist/components/widget/AppHeader/Activities/Drawers.d.ts.map +1 -1
  10. package/dist/components/widget/AppHeader/Activities/Drawers.js +14 -24
  11. package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
  12. package/dist/components/widget/AppHeader/Activities/hooks.d.ts.map +1 -1
  13. package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
  14. package/dist/components/widget/AppHeader/Activities/utils.d.ts +3 -3
  15. package/dist/components/widget/AppHeader/Activities/utils.d.ts.map +1 -1
  16. package/dist/components/widget/AppHeader/Activities/utils.js +7 -6
  17. package/dist/components/widget/AppHeader/Activities/utils.js.map +1 -1
  18. package/dist/components/widget/AppHeader/TradeModeSwitcher.d.ts.map +1 -1
  19. package/dist/components/widget/AppHeader/TradeModeSwitcher.js +2 -1
  20. package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
  21. package/dist/components/widget/Button/CancelButton/CancelButton.js +40 -44
  22. package/dist/components/widget/Button/CancelButton/CancelButton.js.map +1 -1
  23. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts.map +1 -1
  24. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +26 -4
  25. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  26. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.d.ts +1 -1
  27. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.d.ts.map +1 -1
  28. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js.map +1 -1
  29. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts +2 -5
  30. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
  31. package/dist/components/widget/Drawer/state/useDrawerControls.js +2 -75
  32. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  33. package/dist/components/widget/Duration/Duration.d.ts +1 -1
  34. package/dist/components/widget/Duration/Duration.d.ts.map +1 -1
  35. package/dist/components/widget/Duration/Duration.js +1 -4
  36. package/dist/components/widget/Duration/Duration.js.map +1 -1
  37. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.d.ts.map +1 -1
  38. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js +49 -85
  39. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js.map +1 -1
  40. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts +7 -8
  41. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts.map +1 -1
  42. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js +54 -60
  43. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js.map +1 -1
  44. package/dist/components/widget/LimitOrderItem/types.d.ts +3 -2
  45. package/dist/components/widget/LimitOrderItem/types.d.ts.map +1 -1
  46. package/dist/components/widget/LimitOrderItem/utils.d.ts +2 -2
  47. package/dist/components/widget/LimitOrderItem/utils.d.ts.map +1 -1
  48. package/dist/components/widget/LimitOrderItem/utils.js +19 -10
  49. package/dist/components/widget/LimitOrderItem/utils.js.map +1 -1
  50. package/dist/components/widget/NumberInput/NumberInput.d.ts +18 -0
  51. package/dist/components/widget/NumberInput/NumberInput.d.ts.map +1 -0
  52. package/dist/components/widget/NumberInput/NumberInput.js +242 -0
  53. package/dist/components/widget/NumberInput/NumberInput.js.map +1 -0
  54. package/dist/components/widget/NumberInput/assets/arrow-down.svg.js +12 -0
  55. package/dist/components/widget/NumberInput/assets/arrow-down.svg.js.map +1 -0
  56. package/dist/components/widget/NumberInput/assets/arrow-up.svg.js +12 -0
  57. package/dist/components/widget/NumberInput/assets/arrow-up.svg.js.map +1 -0
  58. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.d.ts.map +1 -1
  59. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.js +22 -33
  60. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.js.map +1 -1
  61. package/dist/components/widget/OtcOrderItem/utils.d.ts.map +1 -1
  62. package/dist/components/widget/OtcOrderItem/utils.js +5 -2
  63. package/dist/components/widget/OtcOrderItem/utils.js.map +1 -1
  64. package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
  65. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +8 -4
  66. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  67. package/dist/components/widget/SwapRate/SwapRate.d.ts +2 -9
  68. package/dist/components/widget/SwapRate/SwapRate.d.ts.map +1 -1
  69. package/dist/components/widget/SwapRate/SwapRate.js +30 -21
  70. package/dist/components/widget/SwapRate/SwapRate.js.map +1 -1
  71. package/dist/components/widget/SwapRate/types.d.ts +13 -0
  72. package/dist/components/widget/SwapRate/types.d.ts.map +1 -0
  73. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.d.ts +7 -0
  74. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.d.ts.map +1 -0
  75. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.js +118 -0
  76. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.js.map +1 -0
  77. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
  78. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +83 -90
  79. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  80. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts +2 -2
  81. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts.map +1 -1
  82. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js +28 -38
  83. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
  84. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.d.ts.map +1 -1
  85. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js +18 -16
  86. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js.map +1 -1
  87. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.d.ts +1 -2
  88. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.d.ts.map +1 -1
  89. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js +70 -102
  90. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js.map +1 -1
  91. package/dist/components/widget/TradeOverview/TradeComplete/constants.d.ts.map +1 -1
  92. package/dist/components/widget/TradeOverview/TradeComplete/constants.js +2 -1
  93. package/dist/components/widget/TradeOverview/TradeComplete/constants.js.map +1 -1
  94. package/dist/components/widget/TradeOverview/TradeComplete/index.d.ts.map +1 -1
  95. package/dist/components/widget/TradeOverview/TradeComplete/index.js +14 -21
  96. package/dist/components/widget/TradeOverview/TradeComplete/index.js.map +1 -1
  97. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.d.ts.map +1 -1
  98. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js +105 -72
  99. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js.map +1 -1
  100. package/dist/components/widget/TradeOverview/TradeComplete/utils.d.ts.map +1 -1
  101. package/dist/components/widget/TradeOverview/TradeComplete/utils.js +41 -18
  102. package/dist/components/widget/TradeOverview/TradeComplete/utils.js.map +1 -1
  103. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.d.ts +1 -2
  104. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.d.ts.map +1 -1
  105. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.js +24 -66
  106. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.js.map +1 -1
  107. package/dist/components/widget/TradeOverview/TradeError/index.d.ts.map +1 -1
  108. package/dist/components/widget/TradeOverview/TradeError/index.js +7 -11
  109. package/dist/components/widget/TradeOverview/TradeError/index.js.map +1 -1
  110. package/dist/components/widget/TradeOverview/TradeError/utils.d.ts +1 -4
  111. package/dist/components/widget/TradeOverview/TradeError/utils.d.ts.map +1 -1
  112. package/dist/components/widget/TradeOverview/TradeError/utils.js +2 -20
  113. package/dist/components/widget/TradeOverview/TradeError/utils.js.map +1 -1
  114. package/dist/components/widget/TradeOverview/TradeOverview.d.ts +4 -5
  115. package/dist/components/widget/TradeOverview/TradeOverview.d.ts.map +1 -1
  116. package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
  117. package/dist/components/widget/TradeOverview/TradeOverviewFooter.d.ts.map +1 -1
  118. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js +21 -15
  119. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js.map +1 -1
  120. package/dist/components/widget/TradeOverview/TradeOverviewScreen.d.ts +7 -2
  121. package/dist/components/widget/TradeOverview/TradeOverviewScreen.d.ts.map +1 -1
  122. package/dist/components/widget/TradeOverview/TradeOverviewScreen.js +19 -7
  123. package/dist/components/widget/TradeOverview/TradeOverviewScreen.js.map +1 -1
  124. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts +15 -0
  125. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts.map +1 -0
  126. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js +249 -0
  127. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js.map +1 -0
  128. package/dist/components/widget/TradeOverview/steps.d.ts +37 -4
  129. package/dist/components/widget/TradeOverview/steps.d.ts.map +1 -1
  130. package/dist/components/widget/TradeOverview/steps.js +10 -1
  131. package/dist/components/widget/TradeOverview/steps.js.map +1 -1
  132. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts +5 -22
  133. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts.map +1 -1
  134. package/dist/components/widget/TradeOverview/tradeFlowContext.js +11 -37
  135. package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
  136. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts +1 -4
  137. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts.map +1 -1
  138. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js +31 -133
  139. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js.map +1 -1
  140. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.d.ts +2 -7
  141. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.d.ts.map +1 -1
  142. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js +14 -18
  143. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js.map +1 -1
  144. package/dist/components/widget/TransactionDetails/TransactionListItem.d.ts.map +1 -1
  145. package/dist/components/widget/TransactionDetails/TransactionListItem.js +1 -1
  146. package/dist/components/widget/TransactionDetails/TransactionListItem.js.map +1 -1
  147. package/dist/components/widget/Twap/OrderDuration.d.ts +2 -0
  148. package/dist/components/widget/Twap/OrderDuration.d.ts.map +1 -0
  149. package/dist/components/widget/Twap/OrderDuration.js +77 -0
  150. package/dist/components/widget/Twap/OrderDuration.js.map +1 -0
  151. package/dist/components/widget/Twap/OrderSplit.d.ts +2 -0
  152. package/dist/components/widget/Twap/OrderSplit.d.ts.map +1 -0
  153. package/dist/components/widget/Twap/OrderSplit.js +57 -0
  154. package/dist/components/widget/Twap/OrderSplit.js.map +1 -0
  155. package/dist/components/widget/Twap/RateProtection.d.ts +2 -0
  156. package/dist/components/widget/Twap/RateProtection.d.ts.map +1 -0
  157. package/dist/components/widget/Twap/RateProtection.js +57 -0
  158. package/dist/components/widget/Twap/RateProtection.js.map +1 -0
  159. package/dist/components/widget/Twap/TwapDetailWithTooltip.d.ts +3 -0
  160. package/dist/components/widget/Twap/TwapDetailWithTooltip.d.ts.map +1 -0
  161. package/dist/components/widget/Twap/TwapDetailWithTooltip.js +33 -0
  162. package/dist/components/widget/Twap/TwapDetailWithTooltip.js.map +1 -0
  163. package/dist/configurator/components/FormPropsInputs.d.ts.map +1 -1
  164. package/dist/configurator/components/TradeModesSelector.d.ts.map +1 -1
  165. package/dist/core/TradeFlowScreenButton.d.ts +5 -0
  166. package/dist/core/TradeFlowScreenButton.d.ts.map +1 -1
  167. package/dist/core/TradeFlowScreenButton.js +58 -1
  168. package/dist/core/TradeFlowScreenButton.js.map +1 -1
  169. package/dist/core/TwapDetails.d.ts +2 -0
  170. package/dist/core/TwapDetails.d.ts.map +1 -0
  171. package/dist/core/TwapDetails.js +24 -0
  172. package/dist/core/TwapDetails.js.map +1 -0
  173. package/dist/core/Updaters.d.ts.map +1 -1
  174. package/dist/core/Updaters.js +0 -2
  175. package/dist/core/Updaters.js.map +1 -1
  176. package/dist/core/Warnings.d.ts +2 -1
  177. package/dist/core/Warnings.d.ts.map +1 -1
  178. package/dist/core/Warnings.js +99 -33
  179. package/dist/core/Warnings.js.map +1 -1
  180. package/dist/core/across/isCrosschainPossible.d.ts +1 -1
  181. package/dist/core/across/isCrosschainPossible.d.ts.map +1 -1
  182. package/dist/core/across/isCrosschainPossible.js +1 -1
  183. package/dist/core/across/isCrosschainPossible.js.map +1 -1
  184. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts +1 -0
  185. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
  186. package/dist/core/button/hooks/useWidgetButtonExtraProps.js +134 -51
  187. package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  188. package/dist/core/constants.d.ts +1 -1
  189. package/dist/core/index.d.ts.map +1 -1
  190. package/dist/core/index.js +205 -4
  191. package/dist/core/index.js.map +1 -1
  192. package/dist/core/inputs/hooks/types.d.ts +1 -1
  193. package/dist/core/inputs/hooks/types.d.ts.map +1 -1
  194. package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
  195. package/dist/core/inputs/hooks/useTokenToInputProps.js +5 -69
  196. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  197. package/dist/core/inputs/hooks/useWarningMessage.d.ts +10 -0
  198. package/dist/core/inputs/hooks/useWarningMessage.d.ts.map +1 -0
  199. package/dist/core/inputs/hooks/useWarningMessage.js +71 -0
  200. package/dist/core/inputs/hooks/useWarningMessage.js.map +1 -0
  201. package/dist/core/inputs/state/common.d.ts +4 -0
  202. package/dist/core/inputs/state/common.d.ts.map +1 -1
  203. package/dist/core/inputs/state/common.js +49 -4
  204. package/dist/core/inputs/state/common.js.map +1 -1
  205. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts.map +1 -1
  206. package/dist/core/inputs/state/setTokenByAddressAtom.js +27 -33
  207. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  208. package/dist/core/limit/state/utils.d.ts +1 -1
  209. package/dist/core/limit/useLimitRate.d.ts.map +1 -1
  210. package/dist/core/limit/useLimitRate.js +0 -2
  211. package/dist/core/limit/useLimitRate.js.map +1 -1
  212. package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
  213. package/dist/core/state/chainToAtom.d.ts +2 -0
  214. package/dist/core/state/chainToAtom.d.ts.map +1 -1
  215. package/dist/core/state/chainToAtom.js +28 -7
  216. package/dist/core/state/chainToAtom.js.map +1 -1
  217. package/dist/core/state/configAtom.js +2 -2
  218. package/dist/core/state/configAtom.js.map +1 -1
  219. package/dist/core/state/configEffectAtom.d.ts.map +1 -1
  220. package/dist/core/state/configEffectAtom.js +10 -15
  221. package/dist/core/state/configEffectAtom.js.map +1 -1
  222. package/dist/core/state/tradeModeAtom.d.ts +1 -1
  223. package/dist/core/state/tradeModeAtom.d.ts.map +1 -1
  224. package/dist/core/state/tradeModeAtom.js.map +1 -1
  225. package/dist/core/state/widgetEventsAtom.d.ts.map +1 -1
  226. package/dist/core/state/widgetEventsAtom.js +36 -28
  227. package/dist/core/state/widgetEventsAtom.js.map +1 -1
  228. package/dist/core/swapDetails/priceImpact.d.ts +2 -2
  229. package/dist/core/swapDetails/priceImpact.d.ts.map +1 -1
  230. package/dist/core/swapDetails/priceImpact.js.map +1 -1
  231. package/dist/core/swapDetails/types.d.ts +4 -0
  232. package/dist/core/swapDetails/types.d.ts.map +1 -0
  233. package/dist/core/swapDetails/useSwapDetailsListProps.d.ts.map +1 -1
  234. package/dist/core/swapDetails/useSwapDetailsListProps.js +62 -158
  235. package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
  236. package/dist/core/twap/state/constants.d.ts +20 -0
  237. package/dist/core/twap/state/constants.d.ts.map +1 -0
  238. package/dist/core/twap/state/constants.js +39 -0
  239. package/dist/core/twap/state/constants.js.map +1 -0
  240. package/dist/core/twap/state/currentTwapInputAtom.d.ts +4 -0
  241. package/dist/core/twap/state/currentTwapInputAtom.d.ts.map +1 -0
  242. package/dist/core/twap/state/currentTwapInputAtom.js +6 -0
  243. package/dist/core/twap/state/currentTwapInputAtom.js.map +1 -0
  244. package/dist/core/twap/state/isCrosschainAtom.d.ts +3 -0
  245. package/dist/core/twap/state/isCrosschainAtom.d.ts.map +1 -0
  246. package/dist/core/twap/state/isCrosschainAtom.js +16 -0
  247. package/dist/core/twap/state/isCrosschainAtom.js.map +1 -0
  248. package/dist/core/twap/state/selectedTokenActionsAtom.d.ts +13 -0
  249. package/dist/core/twap/state/selectedTokenActionsAtom.d.ts.map +1 -0
  250. package/dist/core/twap/state/selectedTokenActionsAtom.js +194 -0
  251. package/dist/core/twap/state/selectedTokenActionsAtom.js.map +1 -0
  252. package/dist/core/twap/state/twapInputAmountAtom.d.ts +9 -0
  253. package/dist/core/twap/state/twapInputAmountAtom.d.ts.map +1 -0
  254. package/dist/core/twap/state/twapInputAmountAtom.js +21 -0
  255. package/dist/core/twap/state/twapInputAmountAtom.js.map +1 -0
  256. package/dist/core/twap/state/twapParamsAtom.d.ts +15 -0
  257. package/dist/core/twap/state/twapParamsAtom.d.ts.map +1 -0
  258. package/dist/core/twap/state/twapParamsAtom.js +22 -0
  259. package/dist/core/twap/state/twapParamsAtom.js.map +1 -0
  260. package/dist/core/twap/state/twapReceiverAddressAtom.d.ts +5 -0
  261. package/dist/core/twap/state/twapReceiverAddressAtom.d.ts.map +1 -0
  262. package/dist/core/twap/state/twapReceiverAddressAtom.js +10 -0
  263. package/dist/core/twap/state/twapReceiverAddressAtom.js.map +1 -0
  264. package/dist/core/twap/state/twapSideAtom.d.ts +4 -0
  265. package/dist/core/twap/state/twapSideAtom.d.ts.map +1 -0
  266. package/dist/core/twap/state/twapSideAtom.js +24 -0
  267. package/dist/core/twap/state/twapSideAtom.js.map +1 -0
  268. package/dist/core/twap/state/twapTokenAtoms.d.ts +10 -0
  269. package/dist/core/twap/state/twapTokenAtoms.d.ts.map +1 -0
  270. package/dist/core/twap/state/twapTokenAtoms.js +17 -0
  271. package/dist/core/twap/state/twapTokenAtoms.js.map +1 -0
  272. package/dist/core/twap/twapDetails/minimumReceiveable.d.ts +12 -0
  273. package/dist/core/twap/twapDetails/minimumReceiveable.d.ts.map +1 -0
  274. package/dist/core/twap/twapDetails/minimumReceiveable.js +44 -0
  275. package/dist/core/twap/twapDetails/minimumReceiveable.js.map +1 -0
  276. package/dist/core/twap/useTwapDetailsListProps.d.ts +3 -0
  277. package/dist/core/twap/useTwapDetailsListProps.d.ts.map +1 -0
  278. package/dist/core/twap/useTwapDetailsListProps.js +143 -0
  279. package/dist/core/twap/useTwapDetailsListProps.js.map +1 -0
  280. package/dist/core/twap/useTwapTokenFromInputProps.d.ts +9 -0
  281. package/dist/core/twap/useTwapTokenFromInputProps.d.ts.map +1 -0
  282. package/dist/core/twap/useTwapTokenFromInputProps.js +455 -0
  283. package/dist/core/twap/useTwapTokenFromInputProps.js.map +1 -0
  284. package/dist/core/twap/useTwapTokenSwitcherProps.d.ts +3 -0
  285. package/dist/core/twap/useTwapTokenSwitcherProps.d.ts.map +1 -0
  286. package/dist/core/twap/useTwapTokenSwitcherProps.js +37 -0
  287. package/dist/core/twap/useTwapTokenSwitcherProps.js.map +1 -0
  288. package/dist/core/twap/useTwapTokenToInputProps.d.ts +10 -0
  289. package/dist/core/twap/useTwapTokenToInputProps.d.ts.map +1 -0
  290. package/dist/core/twap/useTwapTokenToInputProps.js +301 -0
  291. package/dist/core/twap/useTwapTokenToInputProps.js.map +1 -0
  292. package/dist/events/effects/formInput.d.ts +3 -0
  293. package/dist/events/effects/formInput.d.ts.map +1 -1
  294. package/dist/events/effects/formInput.js +17 -1
  295. package/dist/events/effects/formInput.js.map +1 -1
  296. package/dist/events/getters/twap.d.ts +6 -0
  297. package/dist/events/getters/twap.d.ts.map +1 -0
  298. package/dist/events/getters/twap.js +76 -0
  299. package/dist/events/getters/twap.js.map +1 -0
  300. package/dist/events/getters/widgetState.d.ts.map +1 -1
  301. package/dist/events/getters/widgetState.js +3 -1
  302. package/dist/events/getters/widgetState.js.map +1 -1
  303. package/dist/events/hooks/useActivateEffects.d.ts.map +1 -1
  304. package/dist/events/hooks/useActivateEffects.js +2 -1
  305. package/dist/events/hooks/useActivateEffects.js.map +1 -1
  306. package/dist/events/types/{cancelOrder.d.ts → cancel.d.ts} +2 -5
  307. package/dist/events/types/cancel.d.ts.map +1 -0
  308. package/dist/events/types/common.d.ts +8 -0
  309. package/dist/events/types/common.d.ts.map +1 -1
  310. package/dist/events/types/formInput.d.ts +11 -2
  311. package/dist/events/types/formInput.d.ts.map +1 -1
  312. package/dist/events/types/index.d.ts +5 -5
  313. package/dist/events/types/index.d.ts.map +1 -1
  314. package/dist/events/types/limit.d.ts +2 -2
  315. package/dist/events/types/limit.d.ts.map +1 -1
  316. package/dist/events/types/swap.d.ts +3 -12
  317. package/dist/events/types/swap.d.ts.map +1 -1
  318. package/dist/events/types/twap.d.ts +26 -0
  319. package/dist/events/types/twap.d.ts.map +1 -0
  320. package/dist/hooks/batch/useSendBatchTx.d.ts +1 -1
  321. package/dist/hooks/batch/useSendBatchTx.d.ts.map +1 -1
  322. package/dist/hooks/batch/useSendBatchTx.js.map +1 -1
  323. package/dist/hooks/connectors/useIsConnectedSafe.js +0 -1
  324. package/dist/hooks/connectors/useIsConnectedSafe.js.map +1 -1
  325. package/dist/hooks/getCode/useIsAccountContract.js.map +1 -1
  326. package/dist/hooks/otc/mutations/useCancelLimitOrder.d.ts +2 -20
  327. package/dist/hooks/otc/mutations/useCancelLimitOrder.d.ts.map +1 -1
  328. package/dist/hooks/otc/mutations/useCancelLimitOrder.js +74 -197
  329. package/dist/hooks/otc/mutations/useCancelLimitOrder.js.map +1 -1
  330. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.d.ts.map +1 -1
  331. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js +1 -0
  332. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
  333. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.d.ts +1 -6
  334. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.d.ts.map +1 -1
  335. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js +24 -37
  336. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js.map +1 -1
  337. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.d.ts +2 -2
  338. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.d.ts.map +1 -1
  339. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.js +42 -28
  340. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.js.map +1 -1
  341. package/dist/hooks/permit/utils/deadlines.d.ts +0 -3
  342. package/dist/hooks/permit/utils/deadlines.d.ts.map +1 -1
  343. package/dist/hooks/permit/utils/deadlines.js +3 -9
  344. package/dist/hooks/permit/utils/deadlines.js.map +1 -1
  345. package/dist/hooks/swap/prices/constants.d.ts +1 -0
  346. package/dist/hooks/swap/prices/constants.d.ts.map +1 -1
  347. package/dist/hooks/swap/prices/constants.js +2 -1
  348. package/dist/hooks/swap/prices/constants.js.map +1 -1
  349. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.d.ts +19 -0
  350. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.d.ts.map +1 -0
  351. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.js +86 -0
  352. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.js.map +1 -0
  353. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts +37 -0
  354. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts.map +1 -0
  355. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js +164 -0
  356. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js.map +1 -0
  357. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.d.ts +69 -0
  358. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.d.ts.map +1 -0
  359. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js +278 -0
  360. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js.map +1 -0
  361. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts +15 -0
  362. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts.map +1 -0
  363. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js +89 -0
  364. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js.map +1 -0
  365. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.d.ts +60 -0
  366. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.d.ts.map +1 -0
  367. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js +325 -0
  368. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js.map +1 -0
  369. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.d.ts +18 -0
  370. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.d.ts.map +1 -0
  371. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js +87 -0
  372. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js.map +1 -0
  373. package/dist/hooks/swap/prices/delta/mutations/types.d.ts +12 -1
  374. package/dist/hooks/swap/prices/delta/mutations/types.d.ts.map +1 -1
  375. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.d.ts +2 -5
  376. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.d.ts.map +1 -1
  377. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js.map +1 -1
  378. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.d.ts +1 -6
  379. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.d.ts.map +1 -1
  380. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.js +0 -16
  381. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.js.map +1 -1
  382. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts +6 -13
  383. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts.map +1 -1
  384. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js +149 -181
  385. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js.map +1 -1
  386. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts +6 -6
  387. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts.map +1 -1
  388. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
  389. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts +3 -3
  390. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts.map +1 -1
  391. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js +3 -15
  392. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js.map +1 -1
  393. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts +5 -5
  394. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts.map +1 -1
  395. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js +35 -24
  396. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js.map +1 -1
  397. package/dist/hooks/swap/prices/delta/mutations/utils.d.ts +17 -6
  398. package/dist/hooks/swap/prices/delta/mutations/utils.d.ts.map +1 -1
  399. package/dist/hooks/swap/prices/delta/mutations/utils.js +35 -2
  400. package/dist/hooks/swap/prices/delta/mutations/utils.js.map +1 -1
  401. package/dist/hooks/swap/prices/delta/orders/types.d.ts +11 -46
  402. package/dist/hooks/swap/prices/delta/orders/types.d.ts.map +1 -1
  403. package/dist/hooks/swap/prices/delta/orders/unposted/index.d.ts +2 -2
  404. package/dist/hooks/swap/prices/delta/orders/unposted/index.d.ts.map +1 -1
  405. package/dist/hooks/swap/prices/delta/orders/unposted/index.js.map +1 -1
  406. package/dist/hooks/swap/prices/delta/orders/unposted/types.d.ts +6 -5
  407. package/dist/hooks/swap/prices/delta/orders/unposted/types.d.ts.map +1 -1
  408. package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts +67 -1
  409. package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts.map +1 -1
  410. package/dist/hooks/swap/prices/delta/orders/unposted/utils.js +24 -6
  411. package/dist/hooks/swap/prices/delta/orders/unposted/utils.js.map +1 -1
  412. package/dist/hooks/swap/prices/delta/orders/utils.d.ts +41 -10
  413. package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
  414. package/dist/hooks/swap/prices/delta/orders/utils.js +135 -4
  415. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  416. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.js +3 -3
  417. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.js.map +1 -1
  418. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/types.d.ts +1 -1
  419. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/types.d.ts.map +1 -1
  420. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.d.ts +0 -1
  421. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.d.ts.map +1 -1
  422. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.js.map +1 -1
  423. package/dist/hooks/swap/prices/delta/queries/errors.d.ts +10 -0
  424. package/dist/hooks/swap/prices/delta/queries/errors.d.ts.map +1 -1
  425. package/dist/hooks/swap/prices/delta/queries/errors.js +22 -1
  426. package/dist/hooks/swap/prices/delta/queries/errors.js.map +1 -1
  427. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts +5 -6
  428. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts.map +1 -1
  429. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js.map +1 -1
  430. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +7 -7
  431. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
  432. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +37 -35
  433. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  434. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts +14 -17
  435. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts.map +1 -1
  436. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
  437. package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.d.ts +2 -6
  438. package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.d.ts.map +1 -1
  439. package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.js +2 -8
  440. package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.js.map +1 -1
  441. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts.map +1 -1
  442. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js +37 -35
  443. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
  444. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.d.ts.map +1 -1
  445. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.js.map +1 -1
  446. package/dist/hooks/swap/prices/usePricesParams.d.ts.map +1 -1
  447. package/dist/hooks/swap/prices/usePricesParams.js +3 -4
  448. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  449. package/dist/hooks/swap/prices/useSwapPrices.d.ts +3 -0
  450. package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
  451. package/dist/hooks/swap/prices/useSwapPrices.js +51 -33
  452. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  453. package/dist/hooks/swap/prices/useTokenInputsFromPrice.d.ts +1 -1
  454. package/dist/hooks/swap/prices/useTokenInputsFromPrice.d.ts.map +1 -1
  455. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
  456. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts +16 -0
  457. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts.map +1 -0
  458. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js +73 -0
  459. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js.map +1 -0
  460. package/dist/hooks/swap/prices/useTwapPrices.d.ts +44 -0
  461. package/dist/hooks/swap/prices/useTwapPrices.d.ts.map +1 -0
  462. package/dist/hooks/swap/prices/useTwapPrices.js +241 -0
  463. package/dist/hooks/swap/prices/useTwapPrices.js.map +1 -0
  464. package/dist/hooks/swap/tradeFlow/common/errors.d.ts +0 -6
  465. package/dist/hooks/swap/tradeFlow/common/errors.d.ts.map +1 -1
  466. package/dist/hooks/swap/tradeFlow/common/errors.js +1 -15
  467. package/dist/hooks/swap/tradeFlow/common/errors.js.map +1 -1
  468. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts +48 -0
  469. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts.map +1 -0
  470. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js +71 -0
  471. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js.map +1 -0
  472. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.d.ts +50 -0
  473. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.d.ts.map +1 -0
  474. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js +94 -0
  475. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js.map +1 -0
  476. package/dist/hooks/swap/tradeFlow/common/types.d.ts +4 -2
  477. package/dist/hooks/swap/tradeFlow/common/types.d.ts.map +1 -1
  478. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts +2 -0
  479. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -1
  480. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js +57 -55
  481. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
  482. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts +6 -6
  483. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts.map +1 -1
  484. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js +263 -152
  485. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js.map +1 -1
  486. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts +7 -7
  487. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts.map +1 -1
  488. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js +296 -181
  489. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
  490. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts +2 -1
  491. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts.map +1 -1
  492. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js +85 -83
  493. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js.map +1 -1
  494. package/dist/hooks/swap/tradeFlow/common/utils.d.ts.map +1 -1
  495. package/dist/hooks/swap/tradeFlow/common/utils.js +1 -1
  496. package/dist/hooks/swap/tradeFlow/common/utils.js.map +1 -1
  497. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +9 -15
  498. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  499. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +25 -61
  500. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  501. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts +2 -2
  502. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts.map +1 -1
  503. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js +57 -45
  504. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  505. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +6 -12
  506. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
  507. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +10 -35
  508. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  509. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.d.ts +4 -4
  510. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.d.ts.map +1 -1
  511. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.js +37 -23
  512. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.js.map +1 -1
  513. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts +1 -13
  514. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts.map +1 -1
  515. package/dist/hooks/swap/tradeFlow/useMarketFlow.js +26 -93
  516. package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
  517. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts +1 -7
  518. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts.map +1 -1
  519. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js +42 -59
  520. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
  521. package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts +88 -0
  522. package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts.map +1 -0
  523. package/dist/hooks/swap/tradeFlow/useTwapFlow.js +595 -0
  524. package/dist/hooks/swap/tradeFlow/useTwapFlow.js.map +1 -0
  525. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.d.ts +25 -0
  526. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.d.ts.map +1 -0
  527. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js +237 -0
  528. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js.map +1 -0
  529. package/dist/hooks/tokens/useAllTokensWithFilter.d.ts +1 -1
  530. package/dist/hooks/tokens/useAllTokensWithFilter.d.ts.map +1 -1
  531. package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
  532. package/dist/hooks/tokens/useTokensFromAcross.d.ts +1 -1
  533. package/dist/hooks/tokens/useTokensFromAcross.d.ts.map +1 -1
  534. package/dist/hooks/tokens/useTokensFromAcross.js.map +1 -1
  535. package/dist/hooks/txs/mutations/useSendTx.d.ts +2 -7
  536. package/dist/hooks/txs/mutations/useSendTx.d.ts.map +1 -1
  537. package/dist/hooks/txs/mutations/useSendTx.js.map +1 -1
  538. package/dist/hooks/txs/queries/useTxHistory.d.ts.map +1 -1
  539. package/dist/hooks/txs/queries/useTxHistory.js +2 -3
  540. package/dist/hooks/txs/queries/useTxHistory.js.map +1 -1
  541. package/dist/hooks/useBridgeInfo.d.ts +1 -1
  542. package/dist/hooks/useBridgeInfo.d.ts.map +1 -1
  543. package/dist/hooks/useBridgeInfo.js.map +1 -1
  544. package/dist/hooks/useIsCrosschainPossible.d.ts +1 -1
  545. package/dist/hooks/useIsCrosschainPossible.d.ts.map +1 -1
  546. package/dist/hooks/useIsCrosschainPossible.js.map +1 -1
  547. package/dist/hooks/useSDK.d.ts +4 -4
  548. package/dist/hooks/useSDK.d.ts.map +1 -1
  549. package/dist/hooks/useSDK.js +4 -4
  550. package/dist/hooks/useSDK.js.map +1 -1
  551. package/dist/hooks/useSelectableDestChains.d.ts +1 -1
  552. package/dist/hooks/useSelectableDestChains.d.ts.map +1 -1
  553. package/dist/hooks/useSelectableDestChains.js.map +1 -1
  554. package/dist/hooks/useSlippage.d.ts.map +1 -1
  555. package/dist/hooks/useSlippage.js +2 -1
  556. package/dist/hooks/useSlippage.js.map +1 -1
  557. package/dist/index.d.ts +2 -2
  558. package/dist/index.d.ts.map +1 -1
  559. package/dist/lib/constants/delta.d.ts.map +1 -1
  560. package/dist/lib/constants/delta.js +1 -1
  561. package/dist/lib/constants/delta.js.map +1 -1
  562. package/dist/lib/constants/time.d.ts +1 -0
  563. package/dist/lib/constants/time.d.ts.map +1 -1
  564. package/dist/lib/constants/time.js +2 -1
  565. package/dist/lib/constants/time.js.map +1 -1
  566. package/dist/lib/queryClient.js +2 -2
  567. package/dist/lib/queryClient.js.map +1 -1
  568. package/dist/lib/tradeMode.d.ts +9 -1
  569. package/dist/lib/tradeMode.d.ts.map +1 -1
  570. package/dist/lib/tradeMode.js +4 -2
  571. package/dist/lib/tradeMode.js.map +1 -1
  572. package/dist/lib/utils/delta.d.ts +10 -0
  573. package/dist/lib/utils/delta.d.ts.map +1 -1
  574. package/dist/lib/utils/delta.js +24 -1
  575. package/dist/lib/utils/delta.js.map +1 -1
  576. package/dist/lib/utils/index.d.ts +8 -0
  577. package/dist/lib/utils/index.d.ts.map +1 -1
  578. package/dist/lib/utils/index.js +18 -1
  579. package/dist/lib/utils/index.js.map +1 -1
  580. package/dist/lib/utils/price.d.ts +1 -0
  581. package/dist/lib/utils/price.d.ts.map +1 -1
  582. package/dist/lib/utils/price.js +4 -2
  583. package/dist/lib/utils/price.js.map +1 -1
  584. package/dist/lib/utils/scaleFactor.d.ts +3 -0
  585. package/dist/lib/utils/scaleFactor.d.ts.map +1 -0
  586. package/dist/lib/utils/scaleFactor.js +12 -0
  587. package/dist/lib/utils/scaleFactor.js.map +1 -0
  588. package/dist/lib/utils/time.d.ts +2 -0
  589. package/dist/lib/utils/time.d.ts.map +1 -1
  590. package/dist/lib/utils/time.js +7 -1
  591. package/dist/lib/utils/time.js.map +1 -1
  592. package/dist/lib/utils/toasts.d.ts +4 -4
  593. package/dist/lib/utils/toasts.d.ts.map +1 -1
  594. package/dist/lib/utils/toasts.js.map +1 -1
  595. package/dist/lib/utils/twap.d.ts +24 -0
  596. package/dist/lib/utils/twap.d.ts.map +1 -0
  597. package/dist/lib/utils/twap.js +52 -0
  598. package/dist/lib/utils/twap.js.map +1 -0
  599. package/dist/lib/web3/privy/config.js +1 -1
  600. package/dist/lib/web3/privy/config.js.map +1 -1
  601. package/dist/lib/web3/wagmi/config.js +1 -1
  602. package/dist/lib/web3/wagmi/config.js.map +1 -1
  603. package/dist/styles.css +65 -7
  604. package/dist/tokens/constants.d.ts.map +1 -1
  605. package/dist/tokens/constants.js +9 -9
  606. package/dist/tokens/constants.js.map +1 -1
  607. package/dist/tokens/defaultTokens.js +17 -17
  608. package/dist/tokens/defaultTokens.js.map +1 -1
  609. package/dist/tokens/lists/constants.d.ts +1 -1
  610. package/dist/tokens/lists/constants.d.ts.map +1 -1
  611. package/dist/tokens/lists/constants.js +1 -1
  612. package/dist/tokens/lists/constants.js.map +1 -1
  613. package/dist/transactions/queries/ensureTxReceipt.d.ts.map +1 -1
  614. package/dist/transactions/queries/ensureTxReceipt.js +1 -1
  615. package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
  616. package/dist/transactions/state/transactionsActionAtom.d.ts +0 -12
  617. package/dist/transactions/state/transactionsActionAtom.d.ts.map +1 -1
  618. package/dist/transactions/state/transactionsActionAtom.js +1 -40
  619. package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
  620. package/dist/transactions/status.d.ts +1 -1
  621. package/dist/transactions/status.d.ts.map +1 -1
  622. package/dist/transactions/status.js +0 -6
  623. package/dist/transactions/status.js.map +1 -1
  624. package/dist/transactions/types.d.ts +5 -18
  625. package/dist/transactions/types.d.ts.map +1 -1
  626. package/package.json +3 -3
  627. package/dist/components/web3/ConnectWallets/walletFlags.d.ts +0 -90
  628. package/dist/components/web3/ConnectWallets/walletFlags.d.ts.map +0 -1
  629. package/dist/components/web3/ConnectWallets/walletFlags.js +0 -104
  630. package/dist/components/web3/ConnectWallets/walletFlags.js.map +0 -1
  631. package/dist/components/widget/Button/CancelButton/CancelButtonWithDrawer.d.ts +0 -15
  632. package/dist/components/widget/Button/CancelButton/CancelButtonWithDrawer.d.ts.map +0 -1
  633. package/dist/components/widget/Button/CancelButton/CancelButtonWithDrawer.js +0 -66
  634. package/dist/components/widget/Button/CancelButton/CancelButtonWithDrawer.js.map +0 -1
  635. package/dist/components/widget/TradeOverview/CancelButtonWithDrawer.d.ts +0 -7
  636. package/dist/components/widget/TradeOverview/CancelButtonWithDrawer.d.ts.map +0 -1
  637. package/dist/components/widget/TradeOverview/CancelButtonWithDrawer.js +0 -84
  638. package/dist/components/widget/TradeOverview/CancelButtonWithDrawer.js.map +0 -1
  639. package/dist/components/widget/TradeOverview/CancelOrder/ConfirmCancel.d.ts +0 -12
  640. package/dist/components/widget/TradeOverview/CancelOrder/ConfirmCancel.d.ts.map +0 -1
  641. package/dist/components/widget/TradeOverview/CancelOrder/ConfirmCancel.js +0 -227
  642. package/dist/components/widget/TradeOverview/CancelOrder/ConfirmCancel.js.map +0 -1
  643. package/dist/components/widget/TradeOverview/CancelOrder/constants.d.ts +0 -8
  644. package/dist/components/widget/TradeOverview/CancelOrder/constants.d.ts.map +0 -1
  645. package/dist/components/widget/TradeOverview/CancelOrder/constants.js +0 -20
  646. package/dist/components/widget/TradeOverview/CancelOrder/constants.js.map +0 -1
  647. package/dist/components/widget/TradeOverview/CancelOrder/utils.d.ts +0 -12
  648. package/dist/components/widget/TradeOverview/CancelOrder/utils.d.ts.map +0 -1
  649. package/dist/components/widget/TradeOverview/CancelOrder/utils.js +0 -49
  650. package/dist/components/widget/TradeOverview/CancelOrder/utils.js.map +0 -1
  651. package/dist/events/types/cancelOrder.d.ts.map +0 -1
  652. package/dist/events/types/cancelTx.d.ts +0 -35
  653. package/dist/events/types/cancelTx.d.ts.map +0 -1
  654. package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.d.ts +0 -11
  655. package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.d.ts.map +0 -1
  656. package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.js +0 -69
  657. package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.js.map +0 -1
  658. package/dist/hooks/swap/prices/delta/queries/utils.d.ts +0 -4
  659. package/dist/hooks/swap/prices/delta/queries/utils.d.ts.map +0 -1
  660. package/dist/hooks/swap/prices/delta/queries/utils.js +0 -16
  661. package/dist/hooks/swap/prices/delta/queries/utils.js.map +0 -1
  662. package/dist/hooks/txs/mutations/useReplaceTx.d.ts +0 -86
  663. package/dist/hooks/txs/mutations/useReplaceTx.d.ts.map +0 -1
  664. package/dist/hooks/txs/mutations/useReplaceTx.js +0 -514
  665. package/dist/hooks/txs/mutations/useReplaceTx.js.map +0 -1
  666. package/dist/hooks/txs/queries/useAccountNonce.d.ts +0 -9
  667. package/dist/hooks/txs/queries/useAccountNonce.d.ts.map +0 -1
  668. package/dist/hooks/txs/queries/useAccountNonce.js +0 -31
  669. package/dist/hooks/txs/queries/useAccountNonce.js.map +0 -1
  670. package/dist/hooks/txs/queries/useTxFees.d.ts +0 -16
  671. package/dist/hooks/txs/queries/useTxFees.d.ts.map +0 -1
  672. package/dist/hooks/txs/queries/useTxFees.js +0 -103
  673. package/dist/hooks/txs/queries/useTxFees.js.map +0 -1
  674. package/dist/hooks/txs/queries/useTxResponse.d.ts +0 -2390
  675. package/dist/hooks/txs/queries/useTxResponse.d.ts.map +0 -1
  676. package/dist/hooks/txs/queries/useTxResponse.js +0 -75
  677. package/dist/hooks/txs/queries/useTxResponse.js.map +0 -1
  678. package/dist/hooks/txs/queries/useWalletCanReplaceTx.d.ts +0 -2
  679. package/dist/hooks/txs/queries/useWalletCanReplaceTx.d.ts.map +0 -1
  680. package/dist/hooks/txs/queries/useWalletCanReplaceTx.js +0 -30
  681. package/dist/hooks/txs/queries/useWalletCanReplaceTx.js.map +0 -1
  682. package/dist/transactions/queries/ensureEstimateFeesPerGas.d.ts +0 -16
  683. package/dist/transactions/queries/ensureEstimateFeesPerGas.d.ts.map +0 -1
  684. package/dist/transactions/queries/ensureEstimateFeesPerGas.js +0 -23
  685. package/dist/transactions/queries/ensureEstimateFeesPerGas.js.map +0 -1
  686. package/dist/transactions/queries/ensureTxResponse.d.ts +0 -17
  687. package/dist/transactions/queries/ensureTxResponse.d.ts.map +0 -1
  688. package/dist/transactions/queries/ensureTxResponse.js +0 -23
  689. package/dist/transactions/queries/ensureTxResponse.js.map +0 -1
  690. package/dist/transactions/state/hooks/useMarkTxAsDropped.d.ts +0 -7
  691. package/dist/transactions/state/hooks/useMarkTxAsDropped.d.ts.map +0 -1
  692. package/dist/transactions/state/hooks/useMarkTxAsDropped.js +0 -10
  693. package/dist/transactions/state/hooks/useMarkTxAsDropped.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"tradeMode.d.ts","sourceRoot":"","sources":["../../src/lib/tradeMode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAG5D,eAAO,MAAM,mBAAmB,0BAIa,CAAC;AAI9C,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,SAAS,CAE3D"}
1
+ {"version":3,"file":"tradeMode.d.ts","sourceRoot":"","sources":["../../src/lib/tradeMode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAG5D,eAAO,MAAM,mBAAmB,kCAKa,CAAC;AAI9C;;GAEG;AACH,eAAO,MAAM,wBAAwB,gBAInC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,kBAAkB,gBAAuC,CAAC;AAEvE,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,SAAS,CAE3D"}
@@ -1,8 +1,10 @@
1
- const supportedTradeModes = ["swap", "limit", "otc"];
1
+ const supportedTradeModes = ["swap", "limit", "otc", "twap"];
2
2
  const validTradeModes = supportedTradeModes;
3
+ const tradeModesWithCrosschain = /* @__PURE__ */ new Set(["swap", "limit", "twap"]);
4
+ const tradeModesWithSide = /* @__PURE__ */ new Set(["swap", "twap"]);
3
5
  function isTradeMode(mode) {
4
6
  return validTradeModes.includes(mode);
5
7
  }
6
8
 
7
- export { isTradeMode, supportedTradeModes };
9
+ export { isTradeMode, supportedTradeModes, tradeModesWithCrosschain, tradeModesWithSide };
8
10
  //# sourceMappingURL=tradeMode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tradeMode.js","sources":["../../src/lib/tradeMode.ts"],"sourcesContent":["import type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport type { NonEmptyArray } from \"ts-essentials\";\n\nexport const supportedTradeModes = [\n \"swap\",\n \"limit\",\n \"otc\",\n] as const satisfies NonEmptyArray<TradeMode>;\n\nconst validTradeModes: string[] = supportedTradeModes;\n\nexport function isTradeMode(mode: string): mode is TradeMode {\n return validTradeModes.includes(mode);\n}\n"],"names":["supportedTradeModes","validTradeModes","isTradeMode","mode","includes"],"mappings":"AAGO,MAAMA,mBAAAA,GAAsB,CACjC,MAAA,EACA,OAAA,EACA,KAAK;AAGP,MAAMC,eAAAA,GAA4BD,mBAAAA;AAE3B,SAASE,YAAYC,IAAAA,EAAiC;AAC3D,EAAA,OAAOF,eAAAA,CAAgBG,SAASD,IAAI,CAAA;AACtC;;;;"}
1
+ {"version":3,"file":"tradeMode.js","sources":["../../src/lib/tradeMode.ts"],"sourcesContent":["import type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport type { NonEmptyArray } from \"ts-essentials\";\n\nexport const supportedTradeModes = [\n \"swap\",\n \"limit\",\n \"otc\",\n \"twap\",\n] as const satisfies NonEmptyArray<TradeMode>;\n\nconst validTradeModes: string[] = supportedTradeModes;\n\n/**\n * Trade modes that support cross-chain.\n */\nexport const tradeModesWithCrosschain = new Set<TradeMode>([\n \"swap\",\n \"limit\",\n \"twap\",\n]);\n\n/**\n * Trade modes that have a side (BUY/SELL) selection in the form.\n */\nexport const tradeModesWithSide = new Set<TradeMode>([\"swap\", \"twap\"]);\n\nexport function isTradeMode(mode: string): mode is TradeMode {\n return validTradeModes.includes(mode);\n}\n"],"names":["supportedTradeModes","validTradeModes","tradeModesWithCrosschain","Set","tradeModesWithSide","isTradeMode","mode","includes"],"mappings":"AAGO,MAAMA,mBAAAA,GAAsB,CACjC,MAAA,EACA,OAAA,EACA,OACA,MAAM;AAGR,MAAMC,eAAAA,GAA4BD,mBAAAA;AAK3B,MAAME,2CAA2B,IAAIC,GAAAA,CAAe,CACzD,MAAA,EACA,OAAA,EACA,MAAM,CACP;AAKM,MAAMC,qCAAqB,IAAID,GAAAA,CAAe,CAAC,MAAA,EAAQ,MAAM,CAAC;AAE9D,SAASE,YAAYC,IAAAA,EAAiC;AAC3D,EAAA,OAAOL,eAAAA,CAAgBM,SAASD,IAAI,CAAA;AACtC;;;;"}
@@ -19,5 +19,15 @@ export declare function replaceUnsupportedTokenMessage(unsupportedTokenMessage:
19
19
  tokens: Pick<Token, "symbol" | "address">[]): string;
20
20
  export declare function customUnsupportedTokenMessage({ symbol, }: Pick<Token, "symbol">): string;
21
21
  export declare function getInsufficientBalanceToFillOrderMessage({ address, symbol }: Pick<Token, "symbol" | "address">, requiredBalanceToFill: string): string;
22
+ export declare function getDeltaWarningMessage({ tokenFrom, tokenTo, priceError, tokenSupported, hasTokens, isCrosschain, }: {
23
+ tokenFrom: Token;
24
+ tokenTo?: Token;
25
+ priceError?: Error | null;
26
+ tokenSupported?: boolean;
27
+ hasTokens?: boolean;
28
+ isCrosschain: boolean;
29
+ }): string | undefined;
30
+ export declare function produceDeltaOrderDeadline(expiryMs?: number): bigint;
31
+ export declare function toDeadline(expiration: number): bigint;
22
32
  export {};
23
33
  //# sourceMappingURL=delta.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"delta.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/delta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAclD,KAAK,eAAe,GAAG,kBAAkB,GAAG,mBAAmB,CAAC;AAChE,KAAK,eAAe,GAChB;IAAE,SAAS,EAAE,MAAM,GAAG,eAAe,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAC5D;IAAE,SAAS,CAAC,EAAE,SAAS,CAAC;IAAC,WAAW,CAAC,EAAE,SAAS,CAAA;CAAE,CAAC;AAEvD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,GAAG,eAAe,CAiBvE;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,eAAe,GAAG,KAAK,IAAI;IACxE,SAAS,EAAE,kBAAkB,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB,CAEA;AAED,wBAAgB,8BAA8B,CAC5C,uBAAuB,EAAE,MAAM,EAAE,mCAAmC;AACpE,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,CAAC,EAAE,GAC1C,MAAM,CAeR;AAED,wBAAgB,6BAA6B,CAAC,EAC5C,MAAM,GACP,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,MAAM,CAEhC;AAED,wBAAgB,wCAAwC,CACtD,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,CAAC,EACtD,qBAAqB,EAAE,MAAM,UAI9B"}
1
+ {"version":3,"file":"delta.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/delta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAelD,KAAK,eAAe,GAAG,kBAAkB,GAAG,mBAAmB,CAAC;AAChE,KAAK,eAAe,GAChB;IAAE,SAAS,EAAE,MAAM,GAAG,eAAe,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAC5D;IAAE,SAAS,CAAC,EAAE,SAAS,CAAC;IAAC,WAAW,CAAC,EAAE,SAAS,CAAA;CAAE,CAAC;AAEvD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,GAAG,eAAe,CAiBvE;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,eAAe,GAAG,KAAK,IAAI;IACxE,SAAS,EAAE,kBAAkB,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB,CAEA;AAED,wBAAgB,8BAA8B,CAC5C,uBAAuB,EAAE,MAAM,EAAE,mCAAmC;AACpE,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,CAAC,EAAE,GAC1C,MAAM,CAeR;AAED,wBAAgB,6BAA6B,CAAC,EAC5C,MAAM,GACP,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,MAAM,CAEhC;AAED,wBAAgB,wCAAwC,CACtD,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,CAAC,EACtD,qBAAqB,EAAE,MAAM,UAI9B;AAED,wBAAgB,sBAAsB,CAAC,EACrC,SAAS,EACT,OAAO,EACP,UAAU,EACV,cAAc,EACd,SAAS,EACT,YAAY,GACb,EAAE;IACD,SAAS,EAAE,KAAK,CAAC;IACjB,OAAO,CAAC,EAAE,KAAK,CAAC;IAChB,UAAU,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;CACvB,sBAuBA;AAQD,wBAAgB,yBAAyB,CACvC,QAAQ,SAA0B,GACjC,MAAM,CAER;AAGD,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAIrD"}
@@ -1,5 +1,6 @@
1
1
  import axios from 'axios';
2
2
  import { isAddress } from 'viem';
3
+ import { isTruthy } from './index.js';
3
4
 
4
5
  function getErrorData(error) {
5
6
  if (!axios.isAxiosError(error)) return null;
@@ -47,6 +48,28 @@ function getInsufficientBalanceToFillOrderMessage({
47
48
  }, requiredBalanceToFill) {
48
49
  return `Insufficient ${symbol || address} balance to cover existing orders balance of ${requiredBalanceToFill}`;
49
50
  }
51
+ function getDeltaWarningMessage({
52
+ tokenFrom,
53
+ tokenTo,
54
+ priceError,
55
+ tokenSupported,
56
+ hasTokens,
57
+ isCrosschain
58
+ }) {
59
+ const deltaPriceError = priceError && parseDeltaApiError(priceError);
60
+ const deltaErrorToShow = deltaPriceError ? isUnsupportedTokenError(deltaPriceError) ? replaceUnsupportedTokenMessage(deltaPriceError.description, [tokenFrom, tokenTo].filter(isTruthy)) : deltaPriceError?.description : null;
61
+ const crosschainDeltaWarning = isCrosschain ? tokenSupported === false ? customUnsupportedTokenMessage(tokenFrom) : hasTokens === false ? "Chain selection isn't supported for Crosschain Swap" : void 0 : void 0;
62
+ const warningMessage = deltaErrorToShow || crosschainDeltaWarning;
63
+ return warningMessage;
64
+ }
65
+ const DELTA_DEFAULT_EXPIRY_MS = 10 * 60 * 1e3;
66
+ function produceDeltaOrderDeadline(expiryMs = DELTA_DEFAULT_EXPIRY_MS) {
67
+ return toDeadline(expiryMs);
68
+ }
69
+ function toDeadline(expiration) {
70
+ const deadline = Math.floor((Date.now() + expiration) / 1e3);
71
+ return BigInt(deadline);
72
+ }
50
73
 
51
- export { customUnsupportedTokenMessage, getInsufficientBalanceToFillOrderMessage, isUnsupportedTokenError, parseDeltaApiError, replaceUnsupportedTokenMessage };
74
+ export { customUnsupportedTokenMessage, getDeltaWarningMessage, getInsufficientBalanceToFillOrderMessage, isUnsupportedTokenError, parseDeltaApiError, produceDeltaOrderDeadline, replaceUnsupportedTokenMessage, toDeadline };
52
75
  //# sourceMappingURL=delta.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"delta.js","sources":["../../../src/lib/utils/delta.ts"],"sourcesContent":["import type { Token } from \"@/tokens/state/types\";\nimport axios from \"axios\";\nimport { isAddress } from \"viem\";\n\nfunction getErrorData(error: Error): Record<string, unknown> | null {\n if (!axios.isAxiosError(error)) return null;\n\n const errorData = error.response?.data;\n if (!errorData || typeof errorData !== \"object\") return null;\n\n return errorData;\n}\n\n// API Errors Across Error\ntype KnownErrorTypes = \"UnsupportedToken\" | \"BridgeQuoteFailed\";\ntype DeltaPriceError =\n | { errorType: string | KnownErrorTypes; description: string }\n | { errorType?: undefined; description?: undefined };\n\n/**\n * Parses a Delta API error and extracts known error types and descriptions.\n */\nexport function parseDeltaApiError(error: Error | null): DeltaPriceError {\n if (!axios.isAxiosError(error)) return {};\n\n const errorData = getErrorData(error);\n\n if (!errorData) return {};\n\n if (\"errorType\" in errorData) {\n const errorType = errorData[\"errorType\"];\n const description =\n errorData[\"description\"] || errorData[\"message\"] || errorData[\"details\"]; // Across error has .details\n\n if (typeof errorType === \"string\" && typeof description === \"string\")\n return { errorType, description };\n }\n\n return {};\n}\n\nexport function isUnsupportedTokenError(error: DeltaPriceError): error is {\n errorType: \"UnsupportedToken\";\n description: string;\n} {\n return error.errorType === \"UnsupportedToken\";\n}\n\nexport function replaceUnsupportedTokenMessage(\n unsupportedTokenMessage: string, // \"Token ADDRESS is not supported\"\n tokens: Pick<Token, \"symbol\" | \"address\">[] // src and dest token, we don't know which one is unsupported\n): string {\n const maybeAddress = unsupportedTokenMessage.split(\" \")[1];\n if (!maybeAddress || !isAddress(maybeAddress)) return unsupportedTokenMessage; // unexpected format\n\n for (const token of tokens) {\n if (\n token.symbol &&\n maybeAddress.toLowerCase() === token.address.toLowerCase()\n ) {\n return customUnsupportedTokenMessage({\n symbol: token.symbol,\n });\n }\n }\n return unsupportedTokenMessage; // fallback to original message\n}\n\nexport function customUnsupportedTokenMessage({\n symbol,\n}: Pick<Token, \"symbol\">): string {\n return `Token ${symbol} is not supported for this swap`;\n}\n\nexport function getInsufficientBalanceToFillOrderMessage(\n { address, symbol }: Pick<Token, \"symbol\" | \"address\">,\n requiredBalanceToFill: string\n) {\n // @TODO this message needs to be changed\n return `Insufficient ${symbol || address} balance to cover existing orders balance of ${requiredBalanceToFill}`;\n}\n"],"names":["getErrorData","error","axios","isAxiosError","errorData","response","data","parseDeltaApiError","errorType","description","isUnsupportedTokenError","replaceUnsupportedTokenMessage","unsupportedTokenMessage","tokens","maybeAddress","split","isAddress","token","symbol","toLowerCase","address","customUnsupportedTokenMessage","getInsufficientBalanceToFillOrderMessage","requiredBalanceToFill"],"mappings":";;;AAIA,SAASA,aAAaC,KAAAA,EAA8C;AAClE,EAAA,IAAI,CAACC,KAAAA,CAAMC,YAAAA,CAAaF,KAAK,GAAG,OAAO,IAAA;AAEvC,EAAA,MAAMG,SAAAA,GAAYH,MAAMI,QAAAA,EAAUC,IAAAA;AAClC,EAAA,IAAI,CAACF,SAAAA,IAAa,OAAOA,SAAAA,KAAc,UAAU,OAAO,IAAA;AAExD,EAAA,OAAOA,SAAAA;AACT;AAWO,SAASG,mBAAmBN,KAAAA,EAAsC;AACvE,EAAA,IAAI,CAACC,KAAAA,CAAMC,YAAAA,CAAaF,KAAK,CAAA,SAAU,EAAC;AAExC,EAAA,MAAMG,SAAAA,GAAYJ,aAAaC,KAAK,CAAA;AAEpC,EAAA,IAAI,CAACG,SAAAA,EAAW,OAAO,EAAC;AAExB,EAAA,IAAI,eAAeA,SAAAA,EAAW;AAC5B,IAAA,MAAMI,SAAAA,GAAYJ,UAAU,WAAW,CAAA;AACvC,IAAA,MAAMK,WAAAA,GACJL,UAAU,aAAa,CAAA,IAAKA,UAAU,SAAS,CAAA,IAAKA,UAAU,SAAS,CAAA;AAEzE,IAAA,IAAI,OAAOI,SAAAA,KAAc,QAAA,IAAY,OAAOC,WAAAA,KAAgB,UAC1D,OAAO;AAAA,MAAED,SAAAA;AAAAA,MAAWC;AAAAA,KAAY;AAAA,EACpC;AAEA,EAAA,OAAO,EAAC;AACV;AAEO,SAASC,wBAAwBT,KAAAA,EAGtC;AACA,EAAA,OAAOA,MAAMO,SAAAA,KAAc,kBAAA;AAC7B;AAEO,SAASG,8BAAAA,CACdC,yBACAC,MAAAA,EACQ;AACR,EAAA,MAAMC,YAAAA,GAAeF,uBAAAA,CAAwBG,KAAAA,CAAM,GAAG,EAAE,CAAC,CAAA;AACzD,EAAA,IAAI,CAACD,YAAAA,IAAgB,CAACE,SAAAA,CAAUF,YAAY,GAAG,OAAOF,uBAAAA;AAEtD,EAAA,KAAA,MAAWK,SAASJ,MAAAA,EAAQ;AAC1B,IAAA,IACEI,KAAAA,CAAMC,UACNJ,YAAAA,CAAaK,WAAAA,OAAkBF,KAAAA,CAAMG,OAAAA,CAAQD,aAAY,EACzD;AACA,MAAA,OAAOE,6BAAAA,CAA8B;AAAA,QACnCH,QAAQD,KAAAA,CAAMC;AAAAA,OACf,CAAA;AAAA,IACH;AAAA,EACF;AACA,EAAA,OAAON,uBAAAA;AACT;AAEO,SAASS,6BAAAA,CAA8B;AAAA,EAC5CH;AACqB,CAAA,EAAW;AAChC,EAAA,OAAO,SAASA,MAAM,CAAA,+BAAA,CAAA;AACxB;AAEO,SAASI,wCAAAA,CACd;AAAA,EAAEF,OAAAA;AAAAA,EAASF;AAA0C,CAAA,EACrDK,qBAAAA,EACA;AAEA,EAAA,OAAO,CAAA,aAAA,EAAgBL,MAAAA,IAAUE,OAAO,CAAA,6CAAA,EAAgDG,qBAAqB,CAAA,CAAA;AAC/G;;;;"}
1
+ {"version":3,"file":"delta.js","sources":["../../../src/lib/utils/delta.ts"],"sourcesContent":["import type { Token } from \"@/tokens/state/types\";\nimport axios from \"axios\";\nimport { isAddress } from \"viem\";\nimport { isTruthy } from \".\";\n\nfunction getErrorData(error: Error): Record<string, unknown> | null {\n if (!axios.isAxiosError(error)) return null;\n\n const errorData = error.response?.data;\n if (!errorData || typeof errorData !== \"object\") return null;\n\n return errorData;\n}\n\n// API Errors Across Error\ntype KnownErrorTypes = \"UnsupportedToken\" | \"BridgeQuoteFailed\";\ntype DeltaPriceError =\n | { errorType: string | KnownErrorTypes; description: string }\n | { errorType?: undefined; description?: undefined };\n\n/**\n * Parses a Delta API error and extracts known error types and descriptions.\n */\nexport function parseDeltaApiError(error: Error | null): DeltaPriceError {\n if (!axios.isAxiosError(error)) return {};\n\n const errorData = getErrorData(error);\n\n if (!errorData) return {};\n\n if (\"errorType\" in errorData) {\n const errorType = errorData[\"errorType\"];\n const description =\n errorData[\"description\"] || errorData[\"message\"] || errorData[\"details\"]; // Across error has .details\n\n if (typeof errorType === \"string\" && typeof description === \"string\")\n return { errorType, description };\n }\n\n return {};\n}\n\nexport function isUnsupportedTokenError(error: DeltaPriceError): error is {\n errorType: \"UnsupportedToken\";\n description: string;\n} {\n return error.errorType === \"UnsupportedToken\";\n}\n\nexport function replaceUnsupportedTokenMessage(\n unsupportedTokenMessage: string, // \"Token ADDRESS is not supported\"\n tokens: Pick<Token, \"symbol\" | \"address\">[] // src and dest token, we don't know which one is unsupported\n): string {\n const maybeAddress = unsupportedTokenMessage.split(\" \")[1];\n if (!maybeAddress || !isAddress(maybeAddress)) return unsupportedTokenMessage; // unexpected format\n\n for (const token of tokens) {\n if (\n token.symbol &&\n maybeAddress.toLowerCase() === token.address.toLowerCase()\n ) {\n return customUnsupportedTokenMessage({\n symbol: token.symbol,\n });\n }\n }\n return unsupportedTokenMessage; // fallback to original message\n}\n\nexport function customUnsupportedTokenMessage({\n symbol,\n}: Pick<Token, \"symbol\">): string {\n return `Token ${symbol} is not supported for this swap`;\n}\n\nexport function getInsufficientBalanceToFillOrderMessage(\n { address, symbol }: Pick<Token, \"symbol\" | \"address\">,\n requiredBalanceToFill: string\n) {\n // @TODO this message needs to be changed\n return `Insufficient ${symbol || address} balance to cover existing orders balance of ${requiredBalanceToFill}`;\n}\n\nexport function getDeltaWarningMessage({\n tokenFrom,\n tokenTo,\n priceError,\n tokenSupported,\n hasTokens,\n isCrosschain,\n}: {\n tokenFrom: Token;\n tokenTo?: Token;\n priceError?: Error | null;\n tokenSupported?: boolean;\n hasTokens?: boolean;\n isCrosschain: boolean;\n}) {\n const deltaPriceError = priceError && parseDeltaApiError(priceError);\n\n const deltaErrorToShow = deltaPriceError\n ? isUnsupportedTokenError(deltaPriceError)\n ? replaceUnsupportedTokenMessage(\n deltaPriceError.description,\n [tokenFrom, tokenTo].filter(isTruthy)\n )\n : deltaPriceError?.description\n : null;\n\n const crosschainDeltaWarning = isCrosschain\n ? tokenSupported === false\n ? customUnsupportedTokenMessage(tokenFrom)\n : hasTokens === false\n ? \"Chain selection isn't supported for Crosschain Swap\"\n : undefined\n : undefined;\n\n const warningMessage = deltaErrorToShow || crosschainDeltaWarning;\n\n return warningMessage;\n}\n\n// default deadline = 10 min for Delta Order\nconst DELTA_DEFAULT_EXPIRY_MS = 10 * 60 * 1000; // 10 minutes in milliseconds\n\n// deadline for Permit2 TransferFrom signature expiration,\n// and for Delta Order deadline;\n// they must match exactly\nexport function produceDeltaOrderDeadline(\n expiryMs = DELTA_DEFAULT_EXPIRY_MS\n): bigint {\n return toDeadline(expiryMs);\n}\n\n// given expiration in milliseconds, return the deadline(now+expiration) in seconds\nexport function toDeadline(expiration: number): bigint {\n const deadline = Math.floor((Date.now() + expiration) / 1000);\n\n return BigInt(deadline);\n}\n"],"names":["getErrorData","error","axios","isAxiosError","errorData","response","data","parseDeltaApiError","errorType","description","isUnsupportedTokenError","replaceUnsupportedTokenMessage","unsupportedTokenMessage","tokens","maybeAddress","split","isAddress","token","symbol","toLowerCase","address","customUnsupportedTokenMessage","getInsufficientBalanceToFillOrderMessage","requiredBalanceToFill","getDeltaWarningMessage","tokenFrom","tokenTo","priceError","tokenSupported","hasTokens","isCrosschain","deltaPriceError","deltaErrorToShow","filter","isTruthy","crosschainDeltaWarning","undefined","warningMessage","DELTA_DEFAULT_EXPIRY_MS","produceDeltaOrderDeadline","expiryMs","toDeadline","expiration","deadline","Math","floor","Date","now","BigInt"],"mappings":"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"}
@@ -1,8 +1,15 @@
1
1
  import { Token } from '../../tokens/state/types';
2
2
  import { ClassValue } from 'clsx';
3
+ import { MergeN } from 'ts-essentials';
3
4
  export declare function cn(...inputs: ClassValue[]): string;
4
5
  export declare function gatherObjectsByProp<T>(elements: T[], pickProp: (elem: T) => string): Record<string, T>;
5
6
  export declare function gatherObjectsByProp<T, U>(elements: T[], pickProp: (elem: T) => string, transform: (elem: T, accumElem?: U) => U): Record<string, U>;
7
+ type RemoveNullableElements<T extends readonly unknown[]> = T extends readonly [
8
+ infer Head,
9
+ ...infer Tail
10
+ ] ? Head extends undefined | null ? RemoveNullableElements<Tail> : [Head, ...RemoveNullableElements<Tail>] : [];
11
+ type MergeWithoutNullable<Tuple extends readonly unknown[]> = MergeN<RemoveNullableElements<Tuple>>;
12
+ export declare function concatClassNamesMaps<T extends (Record<string, string | undefined> | undefined)[]>(...maps: T): MergeWithoutNullable<T>;
6
13
  export declare function filterUnique<T, U>(elements: T[], constructUniqueKeys: (element: T) => U[]): T[];
7
14
  export declare const isTruthy: <T>(x: T | false | 0 | 0n | "" | null | undefined) => x is T;
8
15
  export declare function isNonNullableEntry<T>(entry: [key: string, value: T | null | undefined]): entry is [string, T];
@@ -28,5 +35,6 @@ export declare function isValidUrl(url: string): boolean;
28
35
  export declare function unorderedShallowEqual<T>(a: T[], b: T[]): boolean;
29
36
  export declare function constructPropertiesEqual<K extends string>(properties: readonly K[]): (a: Partial<Record<K, unknown>>, b: Partial<Record<K, unknown>>) => boolean;
30
37
  export declare function shallowEqual<T>(a: T, b: T): boolean;
38
+ export declare function getNumberWithinRange(num: number, min: number, max: number): number;
31
39
  export {};
32
40
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/index.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,20 @@ function gatherObjectsByProp(elements, pickProp, transform) {
17
17
  return accum;
18
18
  }, {});
19
19
  }
20
+ function concatClassNamesMaps(...maps) {
21
+ if (maps.length <= 1) return maps[0] || {};
22
+ const gathered = {};
23
+ for (const map of maps) {
24
+ if (!map) continue;
25
+ for (const key in map) {
26
+ const value = map[key];
27
+ if (value !== void 0) {
28
+ gathered[key] = cn(gathered[key], value);
29
+ }
30
+ }
31
+ }
32
+ return gathered;
33
+ }
20
34
  function filterUnique(elements, constructUniqueKeys) {
21
35
  if (elements.length <= 1) return elements;
22
36
  const hasSeen = /* @__PURE__ */ new Set();
@@ -91,6 +105,9 @@ function shallowEqual(a, b) {
91
105
  Object.prototype.hasOwnProperty.call(b, key) && a[key] === b[key]
92
106
  ));
93
107
  }
108
+ function getNumberWithinRange(num, min, max) {
109
+ return Math.min(Math.max(num, min), max);
110
+ }
94
111
 
95
- export { assertProp, cn, constructPropertiesEqual, filterInvalidTokenAddress, filterUnique, gatherObjectsByProp, hasCorrectAddressLength, isNonNullableEntry, isTruthy, isValidUrl, replaceUnderscoresWithSpaces, shallowEqual, shortenAddress, shortenText, stringIncludes, unorderedShallowEqual };
112
+ export { assertProp, cn, concatClassNamesMaps, constructPropertiesEqual, filterInvalidTokenAddress, filterUnique, gatherObjectsByProp, getNumberWithinRange, hasCorrectAddressLength, isNonNullableEntry, isTruthy, isValidUrl, replaceUnderscoresWithSpaces, shallowEqual, shortenAddress, shortenText, stringIncludes, unorderedShallowEqual };
96
113
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/lib/utils/index.ts"],"sourcesContent":["import type { Token } from \"@/tokens/state/types\";\nimport { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\nimport { assert } from \"ts-essentials\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\n// reduce element[] to Object{key: prop, val?: element}\n// for example\n// gatherObjectsByProp(Token[], token => token.address) => Record<address, Token|undefined>\nexport function gatherObjectsByProp<T>(\n elements: T[],\n pickProp: (elem: T) => string\n): Record<string, T>;\nexport function gatherObjectsByProp<T, U>(\n elements: T[],\n pickProp: (elem: T) => string,\n transform: (elem: T, accumElem?: U) => U\n): Record<string, U>;\nexport function gatherObjectsByProp<T, U>(\n elements: T[],\n pickProp: (elem: T) => string,\n transform?: (elem: T, accumElem?: U) => U\n): Record<string, T> | Record<string, U> {\n return elements.reduce<Record<string, T> | Record<string, U>>(\n (accum, element) => {\n const key = pickProp(element);\n\n const accumElem: T | U | undefined = accum[key];\n const transformedElement = transform\n ? // if transform is available, can only be U | undefined\n transform(element, accumElem as U | undefined)\n : element;\n\n accum[key] = transformedElement;\n\n return accum;\n },\n {}\n );\n}\n\nexport function filterUnique<T, U>(\n elements: T[],\n // supports multikey filtering, if only one key required return [U]\n constructUniqueKeys: (element: T) => U[]\n): T[] {\n if (elements.length <= 1) return elements;\n const hasSeen = new Set<U>();\n\n return elements.filter((element) => {\n const keys = constructUniqueKeys(element);\n if (keys.some((key) => hasSeen.has(key))) return false;\n\n keys.forEach((key) => hasSeen.add(key));\n return true;\n });\n}\n\nexport const isTruthy = <T>(\n x: T | false | 0 | 0n | \"\" | null | undefined\n): x is T => !!x;\n\nexport function isNonNullableEntry<T>(\n entry: [key: string, value: T | null | undefined]\n): entry is [string, T] {\n return entry[1] !== null && entry[1] !== undefined;\n}\n\ntype ReturnIfTruthy<T> = typeof isTruthy<T>;\n\nexport function assertProp<\n T extends Record<string, unknown>,\n K extends keyof T,\n>(obj: T, prop: K): asserts obj is T & { [P in K]-?: ReturnIfTruthy<T[P]> } {\n assert(isTruthy(obj[prop]), `${String(prop)} is required`);\n}\n\nexport function hasCorrectAddressLength(maybeAddress: string): boolean {\n return maybeAddress.length === 42;\n}\n\nexport const filterInvalidTokenAddress = ({\n address,\n}: Pick<Token, \"address\">) => hasCorrectAddressLength(address);\n\nexport const stringIncludes = (a: string, b: string): boolean => {\n return a.toLowerCase().includes(b.toLowerCase());\n};\n\n/**\n * Shorten any string with more than 6 characters (included) by inserting ellipsis placeholder in between\n *\n * @param {string} str the string to shorten\n * @param {number} start how much to leave off the start\n * @param {number} [end=0] how much to leave off the end\n * @returns {string} shortened text\n */\nexport const shortenText = (\n str: string,\n start: number,\n end: number = 0\n): string => {\n const regexp = new RegExp(`(.{${start}}).{3,}(.{${end}})`);\n return str.replace(regexp, \"$1...$2\");\n};\n\nexport function shortenAddress(\n address: string,\n slashIndex = 6,\n rightCutLength = 4\n): string {\n // An ethereum address has 42 characters\n return shortenText(address, slashIndex, rightCutLength);\n}\n\nexport function replaceUnderscoresWithSpaces(str: string): string {\n return str.replace(/_/g, \" \");\n}\n\nexport function isValidUrl(url: string): boolean {\n try {\n new URL(url);\n return true;\n } catch {\n return false;\n }\n}\n\nexport function unorderedShallowEqual<T>(a: T[], b: T[]): boolean {\n if (a.length !== b.length) return false;\n const setA = new Set(a);\n for (const item of b) {\n if (!setA.has(item)) return false;\n }\n return true;\n}\n\nexport function constructPropertiesEqual<K extends string>(\n properties: readonly K[]\n): (a: Partial<Record<K, unknown>>, b: Partial<Record<K, unknown>>) => boolean {\n return (a, b) => {\n return properties.every((key) => a[key] === b[key]);\n };\n}\n\nexport function shallowEqual<T>(a: T, b: T): boolean {\n // both the same value, check would pass for primitive values\n if (a === b) {\n return true;\n }\n\n // not an object, and checks for primitive have already been made\n if (typeof a !== \"object\" || typeof b !== \"object\" || !a || !b) {\n return false;\n }\n // both objects, check if they have the same keys\n const aKeys = Object.keys(a);\n const bKeys = Object.keys(b);\n // different number of keys\n if (aKeys.length !== bKeys.length) {\n return false;\n }\n return aKeys.every(\n (key) =>\n // b[key] exists, and not a[key] === undefined && b[key] doesn't exist\n Object.prototype.hasOwnProperty.call(b, key) &&\n a[key as keyof typeof a] === b[key as keyof typeof b]\n );\n}\n"],"names":["cn","inputs","twMerge","clsx","gatherObjectsByProp","elements","pickProp","transform","reduce","accum","element","key","accumElem","transformedElement","filterUnique","constructUniqueKeys","length","hasSeen","Set","filter","keys","some","has","forEach","add","isTruthy","x","isNonNullableEntry","entry","undefined","assertProp","obj","prop","assert","String","hasCorrectAddressLength","maybeAddress","filterInvalidTokenAddress","address","stringIncludes","a","b","toLowerCase","includes","shortenText","str","start","end","regexp","RegExp","replace","shortenAddress","slashIndex","rightCutLength","replaceUnderscoresWithSpaces","isValidUrl","url","URL","unorderedShallowEqual","setA","item","constructPropertiesEqual","properties","every","shallowEqual","aKeys","Object","bKeys","prototype","hasOwnProperty","call"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/lib/utils/index.ts"],"sourcesContent":["import type { Token } from \"@/tokens/state/types\";\nimport { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\nimport { assert, type MergeN } from \"ts-essentials\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\n// reduce element[] to Object{key: prop, val?: element}\n// for example\n// gatherObjectsByProp(Token[], token => token.address) => Record<address, Token|undefined>\nexport function gatherObjectsByProp<T>(\n elements: T[],\n pickProp: (elem: T) => string\n): Record<string, T>;\nexport function gatherObjectsByProp<T, U>(\n elements: T[],\n pickProp: (elem: T) => string,\n transform: (elem: T, accumElem?: U) => U\n): Record<string, U>;\nexport function gatherObjectsByProp<T, U>(\n elements: T[],\n pickProp: (elem: T) => string,\n transform?: (elem: T, accumElem?: U) => U\n): Record<string, T> | Record<string, U> {\n return elements.reduce<Record<string, T> | Record<string, U>>(\n (accum, element) => {\n const key = pickProp(element);\n\n const accumElem: T | U | undefined = accum[key];\n const transformedElement = transform\n ? // if transform is available, can only be U | undefined\n transform(element, accumElem as U | undefined)\n : element;\n\n accum[key] = transformedElement;\n\n return accum;\n },\n {}\n );\n}\n\ntype RemoveNullableElements<T extends readonly unknown[]> = T extends readonly [\n infer Head,\n ...infer Tail,\n]\n ? Head extends undefined | null\n ? RemoveNullableElements<Tail>\n : [Head, ...RemoveNullableElements<Tail>]\n : [];\n\ntype MergeWithoutNullable<Tuple extends readonly unknown[]> = MergeN<\n RemoveNullableElements<Tuple>\n>;\n\nexport function concatClassNamesMaps<\n T extends (Record<string, string | undefined> | undefined)[],\n>(...maps: T): MergeWithoutNullable<T> {\n if (maps.length <= 1) return (maps[0] || {}) as MergeWithoutNullable<T>;\n\n const gathered: Record<string, string> = {};\n\n for (const map of maps) {\n if (!map) continue;\n\n for (const key in map) {\n const value = map[key];\n if (value !== undefined) {\n gathered[key] = cn(gathered[key], value);\n }\n }\n }\n\n return gathered as MergeWithoutNullable<T>;\n}\n\nexport function filterUnique<T, U>(\n elements: T[],\n // supports multikey filtering, if only one key required return [U]\n constructUniqueKeys: (element: T) => U[]\n): T[] {\n if (elements.length <= 1) return elements;\n const hasSeen = new Set<U>();\n\n return elements.filter((element) => {\n const keys = constructUniqueKeys(element);\n if (keys.some((key) => hasSeen.has(key))) return false;\n\n keys.forEach((key) => hasSeen.add(key));\n return true;\n });\n}\n\nexport const isTruthy = <T>(\n x: T | false | 0 | 0n | \"\" | null | undefined\n): x is T => !!x;\n\nexport function isNonNullableEntry<T>(\n entry: [key: string, value: T | null | undefined]\n): entry is [string, T] {\n return entry[1] !== null && entry[1] !== undefined;\n}\n\ntype ReturnIfTruthy<T> = typeof isTruthy<T>;\n\nexport function assertProp<\n T extends Record<string, unknown>,\n K extends keyof T,\n>(obj: T, prop: K): asserts obj is T & { [P in K]-?: ReturnIfTruthy<T[P]> } {\n assert(isTruthy(obj[prop]), `${String(prop)} is required`);\n}\n\nexport function hasCorrectAddressLength(maybeAddress: string): boolean {\n return maybeAddress.length === 42;\n}\n\nexport const filterInvalidTokenAddress = ({\n address,\n}: Pick<Token, \"address\">) => hasCorrectAddressLength(address);\n\nexport const stringIncludes = (a: string, b: string): boolean => {\n return a.toLowerCase().includes(b.toLowerCase());\n};\n\n/**\n * Shorten any string with more than 6 characters (included) by inserting ellipsis placeholder in between\n *\n * @param {string} str the string to shorten\n * @param {number} start how much to leave off the start\n * @param {number} [end=0] how much to leave off the end\n * @returns {string} shortened text\n */\nexport const shortenText = (\n str: string,\n start: number,\n end: number = 0\n): string => {\n const regexp = new RegExp(`(.{${start}}).{3,}(.{${end}})`);\n return str.replace(regexp, \"$1...$2\");\n};\n\nexport function shortenAddress(\n address: string,\n slashIndex = 6,\n rightCutLength = 4\n): string {\n // An ethereum address has 42 characters\n return shortenText(address, slashIndex, rightCutLength);\n}\n\nexport function replaceUnderscoresWithSpaces(str: string): string {\n return str.replace(/_/g, \" \");\n}\n\nexport function isValidUrl(url: string): boolean {\n try {\n new URL(url);\n return true;\n } catch {\n return false;\n }\n}\n\nexport function unorderedShallowEqual<T>(a: T[], b: T[]): boolean {\n if (a.length !== b.length) return false;\n const setA = new Set(a);\n for (const item of b) {\n if (!setA.has(item)) return false;\n }\n return true;\n}\n\nexport function constructPropertiesEqual<K extends string>(\n properties: readonly K[]\n): (a: Partial<Record<K, unknown>>, b: Partial<Record<K, unknown>>) => boolean {\n return (a, b) => {\n return properties.every((key) => a[key] === b[key]);\n };\n}\n\nexport function shallowEqual<T>(a: T, b: T): boolean {\n // both the same value, check would pass for primitive values\n if (a === b) {\n return true;\n }\n\n // not an object, and checks for primitive have already been made\n if (typeof a !== \"object\" || typeof b !== \"object\" || !a || !b) {\n return false;\n }\n // both objects, check if they have the same keys\n const aKeys = Object.keys(a);\n const bKeys = Object.keys(b);\n // different number of keys\n if (aKeys.length !== bKeys.length) {\n return false;\n }\n return aKeys.every(\n (key) =>\n // b[key] exists, and not a[key] === undefined && b[key] doesn't exist\n Object.prototype.hasOwnProperty.call(b, key) &&\n a[key as keyof typeof a] === b[key as keyof typeof b]\n );\n}\n\nexport function getNumberWithinRange(\n num: number,\n min: number,\n max: number\n): number {\n return Math.min(Math.max(num, min), max);\n}\n"],"names":["cn","inputs","twMerge","clsx","gatherObjectsByProp","elements","pickProp","transform","reduce","accum","element","key","accumElem","transformedElement","concatClassNamesMaps","maps","length","gathered","map","value","undefined","filterUnique","constructUniqueKeys","hasSeen","Set","filter","keys","some","has","forEach","add","isTruthy","x","isNonNullableEntry","entry","assertProp","obj","prop","assert","String","hasCorrectAddressLength","maybeAddress","filterInvalidTokenAddress","address","stringIncludes","a","b","toLowerCase","includes","shortenText","str","start","end","regexp","RegExp","replace","shortenAddress","slashIndex","rightCutLength","replaceUnderscoresWithSpaces","isValidUrl","url","URL","unorderedShallowEqual","setA","item","constructPropertiesEqual","properties","every","shallowEqual","aKeys","Object","bKeys","prototype","hasOwnProperty","call","getNumberWithinRange","num","min","max","Math"],"mappings":"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"}
@@ -16,6 +16,7 @@ export declare function applySlippage({ srcAmount, destAmount, }: Pick<DeltaOrMa
16
16
  * Calculates the destination amount after applying partner fee.
17
17
  *
18
18
  * @param price - The DeltaOrMarketPrice object containing destAmounts and partnerFee.
19
+ * @param priceMode - The mode of the price, either "delta" or "market".
19
20
  * @returns The destination amount after applying partner fee.
20
21
  */
21
22
  export declare function getDestAmountAfterFee(price: DeltaOrMarketPrice): string;
@@ -1 +1 @@
1
- {"version":3,"file":"price.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/price.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAMpE;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAC3B,EACE,SAAS,EACT,UAAU,GACX,EAAE,IAAI,CAAC,kBAAkB,EAAE,WAAW,GAAG,YAAY,CAAC,EACvD,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,KAAK,GAAG,MAAM;;;EAyBrB;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,kBAAkB,UAQ9D;AAED;;;;;;;GAOG;AACH,wBAAgB,gCAAgC,CAAC,EAC/C,KAAK,EACL,eAAe,GAChB,EAAE;IACD,KAAK,EAAE,kBAAkB,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;CACzB,UAGA;AAED,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,UAGxD"}
1
+ {"version":3,"file":"price.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/price.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAMpE;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAC3B,EACE,SAAS,EACT,UAAU,GACX,EAAE,IAAI,CAAC,kBAAkB,EAAE,WAAW,GAAG,YAAY,CAAC,EACvD,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,KAAK,GAAG,MAAM;;;EAyBrB;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,kBAAkB,UAQ9D;AAED;;;;;;;GAOG;AACH,wBAAgB,gCAAgC,CAAC,EAC/C,KAAK,EACL,eAAe,GAChB,EAAE;IACD,KAAK,EAAE,kBAAkB,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;CACzB,UAGA;AAED,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,UAGxD"}
@@ -21,8 +21,10 @@ function applySlippage({
21
21
  };
22
22
  }
23
23
  function getDestAmountAfterFee(price) {
24
- const destAmount = isDeltaPrice(price) ? price.receivedDestAmount : price.destAmount;
25
- return subtractFee(destAmount, price.partnerFee);
24
+ if (isDeltaPrice(price)) {
25
+ return price.receivedDestAmount;
26
+ }
27
+ return subtractFee(price.destAmount, price.partnerFee);
26
28
  }
27
29
  function getDestAmountAfterFeeAndSlippage({
28
30
  price,
@@ -1 +1 @@
1
- {"version":3,"file":"price.js","sources":["../../../src/lib/utils/price.ts"],"sourcesContent":["import type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport { amountAfterSlippage, subtractSlippage } from \"./slippage\";\nimport { subtractFee } from \"./fee\";\nimport Big from \"big.js\";\nimport { isDeltaPrice } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\n\n/**\n * Applies slippage to the srcAmount and destAmount of a DeltaOrMarketPrice.\n *\n * @param srcAmount - The source amount of the trade.\n * @param destAmount - The destination amount of the trade.\n * @param slippage - The slippage percentage to apply (e.g., 0.5 for 0.5%).\n * @param side - The side of the trade, either \"BUY\" or \"SELL\".\n * @returns An object containing the adjusted srcAmount and destAmount after applying slippage.\n */\nexport function applySlippage(\n {\n srcAmount,\n destAmount,\n }: Pick<DeltaOrMarketPrice, \"srcAmount\" | \"destAmount\">,\n slippage: number,\n side: \"BUY\" | \"SELL\"\n) {\n if (side === \"BUY\") {\n const srcAmountAfterSlippage = amountAfterSlippage(\n srcAmount,\n slippage,\n side\n ).toFixed(0);\n\n return {\n srcAmount: srcAmountAfterSlippage,\n destAmount,\n };\n }\n\n const destAmountAfterSlippage = amountAfterSlippage(\n destAmount,\n slippage,\n side\n ).toFixed(0);\n\n return {\n srcAmount,\n destAmount: destAmountAfterSlippage,\n };\n}\n\n/**\n * Calculates the destination amount after applying partner fee.\n *\n * @param price - The DeltaOrMarketPrice object containing destAmounts and partnerFee.\n * @returns The destination amount after applying partner fee.\n */\nexport function getDestAmountAfterFee(price: DeltaOrMarketPrice) {\n // destAmount has swapFees (and bridgeFees for Crosschain Delta) applied,\n // but not partnerFee\n const destAmount = isDeltaPrice(price)\n ? price.receivedDestAmount\n : price.destAmount;\n\n return subtractFee(destAmount, price.partnerFee);\n}\n\n/**\n * Calculates the destination amount after applying partner fee and slippage.\n *\n * @param price - The DeltaOrMarketPrice object containing destAmounts and partnerFee.\n * @param slippagePercent - The slippage percentage to apply.\n * @param priceMode - The mode of the price, either \"delta\" or \"market\".\n * @returns The destination amount after applying partner fee and slippage.\n */\nexport function getDestAmountAfterFeeAndSlippage({\n price,\n slippagePercent,\n}: {\n price: DeltaOrMarketPrice;\n slippagePercent: number;\n}) {\n const destAmountAfterFee = getDestAmountAfterFee(price);\n return subtractSlippage(destAmountAfterFee, slippagePercent);\n}\n\nexport function getPercentDifference(a: number, b: number) {\n if (b === 0 || a === b) return 0;\n return Big(a).minus(b).div(b).mul(100).toNumber();\n}\n"],"names":["applySlippage","srcAmount","destAmount","slippage","side","srcAmountAfterSlippage","amountAfterSlippage","toFixed","destAmountAfterSlippage","getDestAmountAfterFee","price","isDeltaPrice","receivedDestAmount","subtractFee","partnerFee","getDestAmountAfterFeeAndSlippage","slippagePercent","destAmountAfterFee","subtractSlippage","getPercentDifference","a","b","Big","minus","div","mul","toNumber"],"mappings":";;;;;AAeO,SAASA,aAAAA,CACd;AAAA,EACEC,SAAAA;AAAAA,EACAC;AACoD,CAAA,EACtDC,UACAC,IAAAA,EACA;AACA,EAAA,IAAIA,SAAS,KAAA,EAAO;AAClB,IAAA,MAAMC,yBAAyBC,mBAAAA,CAC7BL,SAAAA,EACAE,UACAC,IACF,CAAA,CAAEG,QAAQ,CAAC,CAAA;AAEX,IAAA,OAAO;AAAA,MACLN,SAAAA,EAAWI,sBAAAA;AAAAA,MACXH;AAAAA,KACF;AAAA,EACF;AAEA,EAAA,MAAMM,0BAA0BF,mBAAAA,CAC9BJ,UAAAA,EACAC,UACAC,IACF,CAAA,CAAEG,QAAQ,CAAC,CAAA;AAEX,EAAA,OAAO;AAAA,IACLN,SAAAA;AAAAA,IACAC,UAAAA,EAAYM;AAAAA,GACd;AACF;AAQO,SAASC,sBAAsBC,KAAAA,EAA2B;AAG/D,EAAA,MAAMR,aAAaS,YAAAA,CAAaD,KAAK,CAAA,GACjCA,KAAAA,CAAME,qBACNF,KAAAA,CAAMR,UAAAA;AAEV,EAAA,OAAOW,WAAAA,CAAYX,UAAAA,EAAYQ,KAAAA,CAAMI,UAAU,CAAA;AACjD;AAUO,SAASC,gCAAAA,CAAiC;AAAA,EAC/CL,KAAAA;AAAAA,EACAM;AAIF,CAAA,EAAG;AACD,EAAA,MAAMC,kBAAAA,GAAqBR,sBAAsBC,KAAK,CAAA;AACtD,EAAA,OAAOQ,gBAAAA,CAAiBD,oBAAoBD,eAAe,CAAA;AAC7D;AAEO,SAASG,oBAAAA,CAAqBC,GAAWC,CAAAA,EAAW;AACzD,EAAA,IAAIA,CAAAA,KAAM,CAAA,IAAKD,CAAAA,KAAMC,CAAAA,EAAG,OAAO,CAAA;AAC/B,EAAA,OAAOC,GAAAA,CAAIF,CAAC,CAAA,CAAEG,KAAAA,CAAMF,CAAC,CAAA,CAAEG,GAAAA,CAAIH,CAAC,CAAA,CAAEI,GAAAA,CAAI,GAAG,CAAA,CAAEC,QAAAA,EAAS;AAClD;;;;"}
1
+ {"version":3,"file":"price.js","sources":["../../../src/lib/utils/price.ts"],"sourcesContent":["import type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport { amountAfterSlippage, subtractSlippage } from \"./slippage\";\nimport { subtractFee } from \"./fee\";\nimport Big from \"big.js\";\nimport { isDeltaPrice } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\n\n/**\n * Applies slippage to the srcAmount and destAmount of a DeltaOrMarketPrice.\n *\n * @param srcAmount - The source amount of the trade.\n * @param destAmount - The destination amount of the trade.\n * @param slippage - The slippage percentage to apply (e.g., 0.5 for 0.5%).\n * @param side - The side of the trade, either \"BUY\" or \"SELL\".\n * @returns An object containing the adjusted srcAmount and destAmount after applying slippage.\n */\nexport function applySlippage(\n {\n srcAmount,\n destAmount,\n }: Pick<DeltaOrMarketPrice, \"srcAmount\" | \"destAmount\">,\n slippage: number,\n side: \"BUY\" | \"SELL\"\n) {\n if (side === \"BUY\") {\n const srcAmountAfterSlippage = amountAfterSlippage(\n srcAmount,\n slippage,\n side\n ).toFixed(0);\n\n return {\n srcAmount: srcAmountAfterSlippage,\n destAmount,\n };\n }\n\n const destAmountAfterSlippage = amountAfterSlippage(\n destAmount,\n slippage,\n side\n ).toFixed(0);\n\n return {\n srcAmount,\n destAmount: destAmountAfterSlippage,\n };\n}\n\n/**\n * Calculates the destination amount after applying partner fee.\n *\n * @param price - The DeltaOrMarketPrice object containing destAmounts and partnerFee.\n * @param priceMode - The mode of the price, either \"delta\" or \"market\".\n * @returns The destination amount after applying partner fee.\n */\nexport function getDestAmountAfterFee(price: DeltaOrMarketPrice) {\n if (isDeltaPrice(price)) {\n // For Delta: (price.destAmount | price.bridgeInfo.destAmountAfterBridge) = price.receivedDestAmount are amounts after fee\n return price.receivedDestAmount;\n }\n\n // For Market: price.destAmount is amount before fee\n return subtractFee(price.destAmount, price.partnerFee);\n}\n\n/**\n * Calculates the destination amount after applying partner fee and slippage.\n *\n * @param price - The DeltaOrMarketPrice object containing destAmounts and partnerFee.\n * @param slippagePercent - The slippage percentage to apply.\n * @param priceMode - The mode of the price, either \"delta\" or \"market\".\n * @returns The destination amount after applying partner fee and slippage.\n */\nexport function getDestAmountAfterFeeAndSlippage({\n price,\n slippagePercent,\n}: {\n price: DeltaOrMarketPrice;\n slippagePercent: number;\n}) {\n const destAmountAfterFee = getDestAmountAfterFee(price);\n return subtractSlippage(destAmountAfterFee, slippagePercent);\n}\n\nexport function getPercentDifference(a: number, b: number) {\n if (b === 0 || a === b) return 0;\n return Big(a).minus(b).div(b).mul(100).toNumber();\n}\n"],"names":["applySlippage","srcAmount","destAmount","slippage","side","srcAmountAfterSlippage","amountAfterSlippage","toFixed","destAmountAfterSlippage","getDestAmountAfterFee","price","isDeltaPrice","receivedDestAmount","subtractFee","partnerFee","getDestAmountAfterFeeAndSlippage","slippagePercent","destAmountAfterFee","subtractSlippage","getPercentDifference","a","b","Big","minus","div","mul","toNumber"],"mappings":";;;;;AAeO,SAASA,aAAAA,CACd;AAAA,EACEC,SAAAA;AAAAA,EACAC;AACoD,CAAA,EACtDC,UACAC,IAAAA,EACA;AACA,EAAA,IAAIA,SAAS,KAAA,EAAO;AAClB,IAAA,MAAMC,yBAAyBC,mBAAAA,CAC7BL,SAAAA,EACAE,UACAC,IACF,CAAA,CAAEG,QAAQ,CAAC,CAAA;AAEX,IAAA,OAAO;AAAA,MACLN,SAAAA,EAAWI,sBAAAA;AAAAA,MACXH;AAAAA,KACF;AAAA,EACF;AAEA,EAAA,MAAMM,0BAA0BF,mBAAAA,CAC9BJ,UAAAA,EACAC,UACAC,IACF,CAAA,CAAEG,QAAQ,CAAC,CAAA;AAEX,EAAA,OAAO;AAAA,IACLN,SAAAA;AAAAA,IACAC,UAAAA,EAAYM;AAAAA,GACd;AACF;AASO,SAASC,sBAAsBC,KAAAA,EAA2B;AAC/D,EAAA,IAAIC,YAAAA,CAAaD,KAAK,CAAA,EAAG;AAEvB,IAAA,OAAOA,KAAAA,CAAME,kBAAAA;AAAAA,EACf;AAGA,EAAA,OAAOC,WAAAA,CAAYH,KAAAA,CAAMR,UAAAA,EAAYQ,KAAAA,CAAMI,UAAU,CAAA;AACvD;AAUO,SAASC,gCAAAA,CAAiC;AAAA,EAC/CL,KAAAA;AAAAA,EACAM;AAIF,CAAA,EAAG;AACD,EAAA,MAAMC,kBAAAA,GAAqBR,sBAAsBC,KAAK,CAAA;AACtD,EAAA,OAAOQ,gBAAAA,CAAiBD,oBAAoBD,eAAe,CAAA;AAC7D;AAEO,SAASG,oBAAAA,CAAqBC,GAAWC,CAAAA,EAAW;AACzD,EAAA,IAAIA,CAAAA,KAAM,CAAA,IAAKD,CAAAA,KAAMC,CAAAA,EAAG,OAAO,CAAA;AAC/B,EAAA,OAAOC,GAAAA,CAAIF,CAAC,CAAA,CAAEG,KAAAA,CAAMF,CAAC,CAAA,CAAEG,GAAAA,CAAIH,CAAC,CAAA,CAAEI,GAAAA,CAAI,GAAG,CAAA,CAAEC,QAAAA,EAAS;AAClD;;;;"}
@@ -0,0 +1,3 @@
1
+ import { default as Big } from 'big.js';
2
+ export declare function scaleByFactor(amount?: Big.BigSource, scalingFactor?: number): Big;
3
+ //# sourceMappingURL=scaleFactor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scaleFactor.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/scaleFactor.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,QAAQ,CAAC;AAEzB,wBAAgB,aAAa,CAC3B,MAAM,CAAC,EAAE,GAAG,CAAC,SAAS,EACtB,aAAa,CAAC,EAAE,MAAM,GACrB,GAAG,CAYL"}
@@ -0,0 +1,12 @@
1
+ import Big from 'big.js';
2
+
3
+ function scaleByFactor(amount, scalingFactor) {
4
+ if (!amount) return new Big(0);
5
+ const bigAmount = new Big(amount);
6
+ if (scalingFactor === void 0) return bigAmount;
7
+ const bigBase = new Big(10);
8
+ return scalingFactor < 0 ? bigAmount.div(bigBase.pow(-scalingFactor)) : bigAmount.times(bigBase.pow(scalingFactor));
9
+ }
10
+
11
+ export { scaleByFactor };
12
+ //# sourceMappingURL=scaleFactor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scaleFactor.js","sources":["../../../src/lib/utils/scaleFactor.ts"],"sourcesContent":["import Big from \"big.js\";\n\nexport function scaleByFactor(\n amount?: Big.BigSource,\n scalingFactor?: number\n): Big {\n if (!amount) return new Big(0);\n\n const bigAmount = new Big(amount);\n\n if (scalingFactor === undefined) return bigAmount;\n\n const bigBase = new Big(10);\n\n return scalingFactor < 0\n ? bigAmount.div(bigBase.pow(-scalingFactor))\n : bigAmount.times(bigBase.pow(scalingFactor));\n}\n"],"names":["scaleByFactor","amount","scalingFactor","Big","bigAmount","undefined","bigBase","div","pow","times"],"mappings":";;AAEO,SAASA,aAAAA,CACdC,QACAC,aAAAA,EACK;AACL,EAAA,IAAI,CAACD,MAAAA,EAAQ,OAAO,IAAIE,IAAI,CAAC,CAAA;AAE7B,EAAA,MAAMC,SAAAA,GAAY,IAAID,GAAAA,CAAIF,MAAM,CAAA;AAEhC,EAAA,IAAIC,aAAAA,KAAkBG,QAAW,OAAOD,SAAAA;AAExC,EAAA,MAAME,OAAAA,GAAU,IAAIH,GAAAA,CAAI,EAAE,CAAA;AAE1B,EAAA,OAAOD,aAAAA,GAAgB,CAAA,GACnBE,SAAAA,CAAUG,GAAAA,CAAID,QAAQE,GAAAA,CAAI,CAACN,aAAa,CAAC,IACzCE,SAAAA,CAAUK,KAAAA,CAAMH,OAAAA,CAAQE,GAAAA,CAAIN,aAAa,CAAC,CAAA;AAChD;;;;"}
@@ -1,3 +1,5 @@
1
1
  import { default as duration } from 'dayjs/plugin/duration';
2
2
  export declare function getDuration(deadline: number): duration.Duration;
3
+ export declare function minutesToMilliseconds(minutes: number): number;
4
+ export declare function millisecondsToSeconds(milliseconds: number): number;
3
5
  //# sourceMappingURL=time.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"time.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/time.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAM7C,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,qBAE3C"}
1
+ {"version":3,"file":"time.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/time.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAM7C,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,qBAE3C;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,UAEpD;AAED,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,UAEzD"}
@@ -7,6 +7,12 @@ dayjs.extend(relativeTime);
7
7
  function getDuration(deadline) {
8
8
  return dayjs.duration(deadline);
9
9
  }
10
+ function minutesToMilliseconds(minutes) {
11
+ return minutes * 60 * 1e3;
12
+ }
13
+ function millisecondsToSeconds(milliseconds) {
14
+ return Math.floor(milliseconds / 1e3);
15
+ }
10
16
 
11
- export { getDuration };
17
+ export { getDuration, millisecondsToSeconds, minutesToMilliseconds };
12
18
  //# sourceMappingURL=time.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"time.js","sources":["../../../src/lib/utils/time.ts"],"sourcesContent":["import dayjs from \"dayjs\";\nimport duration from \"dayjs/plugin/duration\";\nimport relativeTime from \"dayjs/plugin/relativeTime\";\n\ndayjs.extend(duration);\ndayjs.extend(relativeTime);\n\nexport function getDuration(deadline: number) {\n return dayjs.duration(deadline);\n}\n"],"names":["dayjs","extend","duration","relativeTime","getDuration","deadline"],"mappings":";;;;AAIAA,KAAAA,CAAMC,OAAOC,QAAQ,CAAA;AACrBF,KAAAA,CAAMC,OAAOE,YAAY,CAAA;AAElB,SAASC,YAAYC,QAAAA,EAAkB;AAC5C,EAAA,OAAOL,KAAAA,CAAME,SAASG,QAAQ,CAAA;AAChC;;;;"}
1
+ {"version":3,"file":"time.js","sources":["../../../src/lib/utils/time.ts"],"sourcesContent":["import dayjs from \"dayjs\";\nimport duration from \"dayjs/plugin/duration\";\nimport relativeTime from \"dayjs/plugin/relativeTime\";\n\ndayjs.extend(duration);\ndayjs.extend(relativeTime);\n\nexport function getDuration(deadline: number) {\n return dayjs.duration(deadline);\n}\n\nexport function minutesToMilliseconds(minutes: number) {\n return minutes * 60 * 1000;\n}\n\nexport function millisecondsToSeconds(milliseconds: number) {\n return Math.floor(milliseconds / 1000);\n}\n"],"names":["dayjs","extend","duration","relativeTime","getDuration","deadline","minutesToMilliseconds","minutes","millisecondsToSeconds","milliseconds","Math","floor"],"mappings":";;;;AAIAA,KAAAA,CAAMC,OAAOC,QAAQ,CAAA;AACrBF,KAAAA,CAAMC,OAAOE,YAAY,CAAA;AAElB,SAASC,YAAYC,QAAAA,EAAkB;AAC5C,EAAA,OAAOL,KAAAA,CAAME,SAASG,QAAQ,CAAA;AAChC;AAEO,SAASC,sBAAsBC,OAAAA,EAAiB;AACrD,EAAA,OAAOA,UAAU,EAAA,GAAK,GAAA;AACxB;AAEO,SAASC,sBAAsBC,YAAAA,EAAsB;AAC1D,EAAA,OAAOC,IAAAA,CAAKC,KAAAA,CAAMF,YAAAA,GAAe,GAAI,CAAA;AACvC;;;;"}
@@ -1,11 +1,11 @@
1
- import { SubmittedDeltaOrderFromAPI } from '../../hooks/swap/prices/delta/queries/useDeltaOrders';
2
- import { MaybeVeloraDeltaAuction } from '../../hooks/swap/prices/delta/queries/useWatchDeltaOrder';
3
1
  import { Hash, TransactionReceipt } from 'viem';
4
2
  import { CallsReceipt } from '../../hooks/batch/useAwaitCalls';
5
3
  import { SupportedChainId } from '../web3/wagmi/types';
4
+ import { NullableDeltaAuction } from '../../hooks/swap/prices/delta/orders/types';
5
+ import { DeltaAuction } from '@velora-dex/sdk';
6
6
  export type OrderSentObject = {
7
- order: SubmittedDeltaOrderFromAPI;
8
- lastOrderState: Promise<MaybeVeloraDeltaAuction>;
7
+ order: DeltaAuction;
8
+ lastOrderState: Promise<NullableDeltaAuction>;
9
9
  };
10
10
  export declare function addTxToast({ transactionHash: _transactionHash, receiptPromise, chainId, }: {
11
11
  chainId: SupportedChainId;
@@ -1 +1 @@
1
- {"version":3,"file":"toasts.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/toasts.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,kDAAkD,CAAC;AACnG,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sDAAsD,CAAC;AAIpG,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAK1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAK5D,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,0BAA0B,CAAC;IAClC,cAAc,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAC;CAClD,CAAC;AAEF,wBAAgB,UAAU,CAAC,EACzB,eAAe,EAAE,gBAAgB,EACjC,cAAc,EACd,OAAO,GACR,EAAE;IACD,OAAO,EAAE,gBAAgB,CAAC;IAC1B,cAAc,EAAE,OAAO,CAAC,kBAAkB,GAAG,YAAY,GAAG,SAAS,CAAC,CAAC;IACvE,eAAe,CAAC,EAAE,IAAI,CAAC;CACxB,QAmDA;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,eAAe,QA4B5D"}
1
+ {"version":3,"file":"toasts.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/toasts.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAK1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AACnF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAIpD,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,YAAY,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;CAC/C,CAAC;AAEF,wBAAgB,UAAU,CAAC,EACzB,eAAe,EAAE,gBAAgB,EACjC,cAAc,EACd,OAAO,GACR,EAAE;IACD,OAAO,EAAE,gBAAgB,CAAC;IAC1B,cAAc,EAAE,OAAO,CAAC,kBAAkB,GAAG,YAAY,GAAG,SAAS,CAAC,CAAC;IACvE,eAAe,CAAC,EAAE,IAAI,CAAC;CACxB,QAmDA;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,eAAe,QA4B5D"}
@@ -1 +1 @@
1
- {"version":3,"file":"toasts.js","sources":["../../../src/lib/utils/toasts.tsx"],"sourcesContent":["import type { SubmittedDeltaOrderFromAPI } from \"@/hooks/swap/prices/delta/queries/useDeltaOrders\";\nimport type { MaybeVeloraDeltaAuction } from \"@/hooks/swap/prices/delta/queries/useWatchDeltaOrder\";\n\nimport { CustomToast } from \"@/components/widget/Toasts/CustomToast\";\nimport { toast } from \"sonner\";\nimport { type Hash, type TransactionReceipt } from \"viem\";\nimport {\n constructExplorerOrderDetailsLink,\n constructTxLinkForChain,\n} from \"./explorer\";\nimport type { CallsReceipt } from \"@/hooks/batch/useAwaitCalls\";\nimport type { SupportedChainId } from \"../web3/wagmi/types\";\nimport { getStandaloneTxHash } from \"@/transactions/hash\";\n\ntype ToastPromiseData<T> = NonNullable<Parameters<typeof toast.promise<T>>[1]>;\n\nexport type OrderSentObject = {\n order: SubmittedDeltaOrderFromAPI;\n lastOrderState: Promise<MaybeVeloraDeltaAuction>;\n};\n\nexport function addTxToast({\n transactionHash: _transactionHash,\n receiptPromise,\n chainId,\n}: {\n chainId: SupportedChainId;\n receiptPromise: Promise<TransactionReceipt | CallsReceipt | undefined>;\n transactionHash?: Hash;\n}) {\n const toastId = crypto.randomUUID();\n\n const transactionHash = getStandaloneTxHash({\n transactionHash: _transactionHash,\n });\n const _detailsLink = transactionHash\n ? constructTxLinkForChain({ chainId, txHash: transactionHash })\n : undefined;\n\n const toastOptions: ToastPromiseData<\n TransactionReceipt | CallsReceipt | undefined\n > = {\n id: toastId,\n loading: (\n <CustomToast\n variant=\"loading\"\n label=\"Pending Transaction\"\n toastId={toastId}\n detailsLink={_detailsLink}\n />\n ),\n success: (receipt) => {\n let detailsLink = _detailsLink;\n if (!detailsLink && receipt) {\n detailsLink = constructTxLinkForChain({\n chainId,\n txHash: receipt.transactionHash,\n });\n }\n\n return (\n <CustomToast\n variant=\"success\"\n label=\"Transaction Confirmed\"\n toastId={toastId}\n detailsLink={detailsLink}\n />\n );\n },\n error: (\n <CustomToast\n variant=\"error\"\n label=\"Transaction Failed\"\n toastId={toastId}\n detailsLink={_detailsLink}\n />\n ),\n };\n\n toast.promise(receiptPromise, toastOptions);\n}\n\nexport function addDeltaOrderToast(orderSent: OrderSentObject) {\n const customToastProps = {\n toastId: crypto.randomUUID(),\n detailsLink: constructExplorerOrderDetailsLink(orderSent.order.id),\n };\n\n const toastOptions = {\n id: customToastProps.toastId,\n loading: (\n <CustomToast\n variant=\"loading\"\n label=\"Pending Order\"\n {...customToastProps}\n />\n ),\n success: (\n <CustomToast\n variant=\"success\"\n label=\"Order Confirmed\"\n {...customToastProps}\n />\n ),\n error: (\n <CustomToast variant=\"error\" label=\"Order Failed\" {...customToastProps} />\n ),\n };\n\n toast.promise(orderSent.lastOrderState, toastOptions);\n}\n"],"names":["addTxToast","transactionHash","_transactionHash","receiptPromise","chainId","toastId","crypto","randomUUID","getStandaloneTxHash","_detailsLink","constructTxLinkForChain","txHash","undefined","toastOptions","id","loading","success","receipt","detailsLink","error","toast","promise","addDeltaOrderToast","orderSent","customToastProps","constructExplorerOrderDetailsLink","order","lastOrderState"],"mappings":";;;;;;;AAqBO,SAASA,UAAAA,CAAW;AAAA,EACzBC,eAAAA,EAAiBC,gBAAAA;AAAAA,EACjBC,cAAAA;AAAAA,EACAC;AAKF,CAAA,EAAG;AACD,EAAA,MAAMC,OAAAA,GAAUC,OAAOC,UAAAA,EAAW;AAElC,EAAA,MAAMN,kBAAkBO,mBAAAA,CAAoB;AAAA,IAC1CP,eAAAA,EAAiBC;AAAAA,GAClB,CAAA;AACD,EAAA,MAAMO,YAAAA,GAAeR,kBACjBS,uBAAAA,CAAwB;AAAA,IAAEN,OAAAA;AAAAA,IAASO,MAAAA,EAAQV;AAAAA,GAAiB,CAAA,GAC5DW,MAAAA;AAEJ,EAAA,MAAMC,YAAAA,GAEF;AAAA,IACFC,EAAAA,EAAIT,OAAAA;AAAAA,IACJU,OAAAA,sBACG,WAAA,EAAA,EACC,OAAA,EAAQ,WACR,KAAA,EAAM,qBAAA,EACN,OAAA,EACA,WAAA,EAAaN,YAAAA,EAAa,CAAA;AAAA,IAG9BO,SAAUC,CAAAA,OAAAA,KAAY;AACpB,MAAA,IAAIC,WAAAA,GAAcT,YAAAA;AAClB,MAAA,IAAI,CAACS,eAAeD,OAAAA,EAAS;AAC3BC,QAAAA,WAAAA,GAAcR,uBAAAA,CAAwB;AAAA,UACpCN,OAAAA;AAAAA,UACAO,QAAQM,OAAAA,CAAQhB;AAAAA,SACjB,CAAA;AAAA,MACH;AAEA,MAAA,2BACG,WAAA,EAAA,EACC,OAAA,EAAQ,WACR,KAAA,EAAM,uBAAA,EACN,SACA,WAAA,EAAyB,CAAA;AAAA,IAG/B,CAAA;AAAA,IACAkB,KAAAA,sBACG,WAAA,EAAA,EACC,OAAA,EAAQ,SACR,KAAA,EAAM,oBAAA,EACN,OAAA,EACA,WAAA,EAAaV,YAAAA,EAAa;AAAA,GAGhC;AAEAW,EAAAA,KAAAA,CAAMC,OAAAA,CAAQlB,gBAAgBU,YAAY,CAAA;AAC5C;AAEO,SAASS,mBAAmBC,SAAAA,EAA4B;AAC7D,EAAA,MAAMC,gBAAAA,GAAmB;AAAA,IACvBnB,OAAAA,EAASC,OAAOC,UAAAA,EAAW;AAAA,IAC3BW,WAAAA,EAAaO,iCAAAA,CAAkCF,SAAAA,CAAUG,KAAAA,CAAMZ,EAAE;AAAA,GACnE;AAEA,EAAA,MAAMD,YAAAA,GAAe;AAAA,IACnBC,IAAIU,gBAAAA,CAAiBnB,OAAAA;AAAAA,IACrBU,OAAAA,sBACG,WAAA,EAAA,EACC,OAAA,EAAQ,WACR,KAAA,EAAM,eAAA,EACN,GAAIS,gBAAAA,EAAiB,CAAA;AAAA,IAGzBR,OAAAA,sBACG,WAAA,EAAA,EACC,OAAA,EAAQ,WACR,KAAA,EAAM,iBAAA,EACN,GAAIQ,gBAAAA,EAAiB,CAAA;AAAA,IAGzBL,KAAAA,sBACG,WAAA,EAAA,EAAY,OAAA,EAAQ,SAAQ,KAAA,EAAM,cAAA,EAAe,GAAIK,gBAAAA,EAAiB;AAAA,GAE3E;AAEAJ,EAAAA,KAAAA,CAAMC,OAAAA,CAAQE,SAAAA,CAAUI,cAAAA,EAAgBd,YAAY,CAAA;AACtD;;;;"}
1
+ {"version":3,"file":"toasts.js","sources":["../../../src/lib/utils/toasts.tsx"],"sourcesContent":["import { CustomToast } from \"@/components/widget/Toasts/CustomToast\";\nimport { toast } from \"sonner\";\nimport { type Hash, type TransactionReceipt } from \"viem\";\nimport {\n constructExplorerOrderDetailsLink,\n constructTxLinkForChain,\n} from \"./explorer\";\nimport type { CallsReceipt } from \"@/hooks/batch/useAwaitCalls\";\nimport type { SupportedChainId } from \"../web3/wagmi/types\";\nimport { getStandaloneTxHash } from \"@/transactions/hash\";\nimport type { NullableDeltaAuction } from \"@/hooks/swap/prices/delta/orders/types\";\nimport type { DeltaAuction } from \"@velora-dex/sdk\";\n\ntype ToastPromiseData<T> = NonNullable<Parameters<typeof toast.promise<T>>[1]>;\n\nexport type OrderSentObject = {\n order: DeltaAuction;\n lastOrderState: Promise<NullableDeltaAuction>;\n};\n\nexport function addTxToast({\n transactionHash: _transactionHash,\n receiptPromise,\n chainId,\n}: {\n chainId: SupportedChainId;\n receiptPromise: Promise<TransactionReceipt | CallsReceipt | undefined>;\n transactionHash?: Hash;\n}) {\n const toastId = crypto.randomUUID();\n\n const transactionHash = getStandaloneTxHash({\n transactionHash: _transactionHash,\n });\n const _detailsLink = transactionHash\n ? constructTxLinkForChain({ chainId, txHash: transactionHash })\n : undefined;\n\n const toastOptions: ToastPromiseData<\n TransactionReceipt | CallsReceipt | undefined\n > = {\n id: toastId,\n loading: (\n <CustomToast\n variant=\"loading\"\n label=\"Pending Transaction\"\n toastId={toastId}\n detailsLink={_detailsLink}\n />\n ),\n success: (receipt) => {\n let detailsLink = _detailsLink;\n if (!detailsLink && receipt) {\n detailsLink = constructTxLinkForChain({\n chainId,\n txHash: receipt.transactionHash,\n });\n }\n\n return (\n <CustomToast\n variant=\"success\"\n label=\"Transaction Confirmed\"\n toastId={toastId}\n detailsLink={detailsLink}\n />\n );\n },\n error: (\n <CustomToast\n variant=\"error\"\n label=\"Transaction Failed\"\n toastId={toastId}\n detailsLink={_detailsLink}\n />\n ),\n };\n\n toast.promise(receiptPromise, toastOptions);\n}\n\nexport function addDeltaOrderToast(orderSent: OrderSentObject) {\n const customToastProps = {\n toastId: crypto.randomUUID(),\n detailsLink: constructExplorerOrderDetailsLink(orderSent.order.id),\n };\n\n const toastOptions = {\n id: customToastProps.toastId,\n loading: (\n <CustomToast\n variant=\"loading\"\n label=\"Pending Order\"\n {...customToastProps}\n />\n ),\n success: (\n <CustomToast\n variant=\"success\"\n label=\"Order Confirmed\"\n {...customToastProps}\n />\n ),\n error: (\n <CustomToast variant=\"error\" label=\"Order Failed\" {...customToastProps} />\n ),\n };\n\n toast.promise(orderSent.lastOrderState, toastOptions);\n}\n"],"names":["addTxToast","transactionHash","_transactionHash","receiptPromise","chainId","toastId","crypto","randomUUID","getStandaloneTxHash","_detailsLink","constructTxLinkForChain","txHash","undefined","toastOptions","id","loading","success","receipt","detailsLink","error","toast","promise","addDeltaOrderToast","orderSent","customToastProps","constructExplorerOrderDetailsLink","order","lastOrderState"],"mappings":";;;;;;;AAoBO,SAASA,UAAAA,CAAW;AAAA,EACzBC,eAAAA,EAAiBC,gBAAAA;AAAAA,EACjBC,cAAAA;AAAAA,EACAC;AAKF,CAAA,EAAG;AACD,EAAA,MAAMC,OAAAA,GAAUC,OAAOC,UAAAA,EAAW;AAElC,EAAA,MAAMN,kBAAkBO,mBAAAA,CAAoB;AAAA,IAC1CP,eAAAA,EAAiBC;AAAAA,GAClB,CAAA;AACD,EAAA,MAAMO,YAAAA,GAAeR,kBACjBS,uBAAAA,CAAwB;AAAA,IAAEN,OAAAA;AAAAA,IAASO,MAAAA,EAAQV;AAAAA,GAAiB,CAAA,GAC5DW,MAAAA;AAEJ,EAAA,MAAMC,YAAAA,GAEF;AAAA,IACFC,EAAAA,EAAIT,OAAAA;AAAAA,IACJU,OAAAA,sBACG,WAAA,EAAA,EACC,OAAA,EAAQ,WACR,KAAA,EAAM,qBAAA,EACN,OAAA,EACA,WAAA,EAAaN,YAAAA,EAAa,CAAA;AAAA,IAG9BO,SAAUC,CAAAA,OAAAA,KAAY;AACpB,MAAA,IAAIC,WAAAA,GAAcT,YAAAA;AAClB,MAAA,IAAI,CAACS,eAAeD,OAAAA,EAAS;AAC3BC,QAAAA,WAAAA,GAAcR,uBAAAA,CAAwB;AAAA,UACpCN,OAAAA;AAAAA,UACAO,QAAQM,OAAAA,CAAQhB;AAAAA,SACjB,CAAA;AAAA,MACH;AAEA,MAAA,2BACG,WAAA,EAAA,EACC,OAAA,EAAQ,WACR,KAAA,EAAM,uBAAA,EACN,SACA,WAAA,EAAyB,CAAA;AAAA,IAG/B,CAAA;AAAA,IACAkB,KAAAA,sBACG,WAAA,EAAA,EACC,OAAA,EAAQ,SACR,KAAA,EAAM,oBAAA,EACN,OAAA,EACA,WAAA,EAAaV,YAAAA,EAAa;AAAA,GAGhC;AAEAW,EAAAA,KAAAA,CAAMC,OAAAA,CAAQlB,gBAAgBU,YAAY,CAAA;AAC5C;AAEO,SAASS,mBAAmBC,SAAAA,EAA4B;AAC7D,EAAA,MAAMC,gBAAAA,GAAmB;AAAA,IACvBnB,OAAAA,EAASC,OAAOC,UAAAA,EAAW;AAAA,IAC3BW,WAAAA,EAAaO,iCAAAA,CAAkCF,SAAAA,CAAUG,KAAAA,CAAMZ,EAAE;AAAA,GACnE;AAEA,EAAA,MAAMD,YAAAA,GAAe;AAAA,IACnBC,IAAIU,gBAAAA,CAAiBnB,OAAAA;AAAAA,IACrBU,OAAAA,sBACG,WAAA,EAAA,EACC,OAAA,EAAQ,WACR,KAAA,EAAM,eAAA,EACN,GAAIS,gBAAAA,EAAiB,CAAA;AAAA,IAGzBR,OAAAA,sBACG,WAAA,EAAA,EACC,OAAA,EAAQ,WACR,KAAA,EAAM,iBAAA,EACN,GAAIQ,gBAAAA,EAAiB,CAAA;AAAA,IAGzBL,KAAAA,sBACG,WAAA,EAAA,EAAY,OAAA,EAAQ,SAAQ,KAAA,EAAM,cAAA,EAAe,GAAIK,gBAAAA,EAAiB;AAAA,GAE3E;AAEAJ,EAAAA,KAAAA,CAAMC,OAAAA,CAAQE,SAAAA,CAAUI,cAAAA,EAAgBd,YAAY,CAAA;AACtD;;;;"}
@@ -0,0 +1,24 @@
1
+ import { DeltaOrBridgePrice } from '../../hooks/swap/prices/types';
2
+ export declare function getTwapChunkAmount({ totalWei, numSlices, }: {
3
+ totalWei: string;
4
+ numSlices: number;
5
+ }): string;
6
+ export declare function getTotalTwapAmount({ chunkWei, numSlices, }: {
7
+ chunkWei: string;
8
+ numSlices: number;
9
+ }): string;
10
+ export declare function getTwapAmountsFromPrice({ price, numSlices, }: {
11
+ price: DeltaOrBridgePrice;
12
+ numSlices: number;
13
+ }): {
14
+ srcAmount: string;
15
+ destAmount: string;
16
+ };
17
+ export declare function produceTwapDeadlines({ durationMin, numSlices, }: {
18
+ durationMin: number;
19
+ numSlices: number;
20
+ }): {
21
+ orderDeadline: number;
22
+ orderInterval: number;
23
+ };
24
+ //# sourceMappingURL=twap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"twap.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/twap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAMpE,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,SAAS,GACV,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,MAAM,CAGT;AAED,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,SAAS,GACV,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,MAAM,CAGT;AAED,wBAAgB,uBAAuB,CAAC,EACtC,KAAK,EACL,SAAS,GACV,EAAE;IACD,KAAK,EAAE,kBAAkB,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;CACnB;;;EAQA;AAED,wBAAgB,oBAAoB,CAAC,EACnC,WAAW,EACX,SAAS,GACV,EAAE;IACD,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;;;EAcA"}
@@ -0,0 +1,52 @@
1
+ import Big from 'big.js';
2
+ import { millisecondsToSeconds, minutesToMilliseconds } from './time.js';
3
+ import { TEN_MINUTES_MS } from '../constants/time.js';
4
+ import { produceDeltaOrderDeadline } from './delta.js';
5
+
6
+ function getTwapChunkAmount({
7
+ totalWei,
8
+ numSlices
9
+ }) {
10
+ if (numSlices <= 0 || totalWei === "0") return totalWei;
11
+ return Big(totalWei).div(numSlices).toFixed(0, 0);
12
+ }
13
+ function getTotalTwapAmount({
14
+ chunkWei,
15
+ numSlices
16
+ }) {
17
+ if (numSlices <= 0 || chunkWei === "0") return chunkWei;
18
+ return Big(chunkWei).mul(numSlices).toFixed();
19
+ }
20
+ function getTwapAmountsFromPrice({
21
+ price,
22
+ numSlices
23
+ }) {
24
+ return {
25
+ srcAmount: getTotalTwapAmount({
26
+ chunkWei: price.srcAmount,
27
+ numSlices
28
+ }),
29
+ destAmount: getTotalTwapAmount({
30
+ chunkWei: price.receivedDestAmount,
31
+ numSlices
32
+ })
33
+ };
34
+ }
35
+ function produceTwapDeadlines({
36
+ durationMin,
37
+ numSlices
38
+ }) {
39
+ const orderDurationMs = minutesToMilliseconds(durationMin);
40
+ const orderDeadline = produceDeltaOrderDeadline(
41
+ // 10 min buffer for possible delays in order creation or slice executions
42
+ orderDurationMs + TEN_MINUTES_MS
43
+ );
44
+ const orderInterval = Math.floor(millisecondsToSeconds(orderDurationMs) / numSlices);
45
+ return {
46
+ orderDeadline: Number(orderDeadline),
47
+ orderInterval
48
+ };
49
+ }
50
+
51
+ export { getTotalTwapAmount, getTwapAmountsFromPrice, getTwapChunkAmount, produceTwapDeadlines };
52
+ //# sourceMappingURL=twap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"twap.js","sources":["../../../src/lib/utils/twap.ts"],"sourcesContent":["import type { DeltaOrBridgePrice } from \"@/hooks/swap/prices/types\";\nimport Big from \"big.js\";\nimport { millisecondsToSeconds, minutesToMilliseconds } from \"./time\";\nimport { TEN_MINUTES_MS } from \"../constants/time\";\nimport { produceDeltaOrderDeadline } from \"./delta\";\n\nexport function getTwapChunkAmount({\n totalWei,\n numSlices,\n}: {\n totalWei: string;\n numSlices: number;\n}): string {\n if (numSlices <= 0 || totalWei === \"0\") return totalWei;\n return Big(totalWei).div(numSlices).toFixed(0, 0); // roundDown to avoid overestimating\n}\n\nexport function getTotalTwapAmount({\n chunkWei,\n numSlices,\n}: {\n chunkWei: string;\n numSlices: number;\n}): string {\n if (numSlices <= 0 || chunkWei === \"0\") return chunkWei;\n return Big(chunkWei).mul(numSlices).toFixed();\n}\n\nexport function getTwapAmountsFromPrice({\n price,\n numSlices,\n}: {\n price: DeltaOrBridgePrice;\n numSlices: number;\n}) {\n return {\n srcAmount: getTotalTwapAmount({ chunkWei: price.srcAmount, numSlices }),\n destAmount: getTotalTwapAmount({\n chunkWei: price.receivedDestAmount,\n numSlices,\n }),\n };\n}\n\nexport function produceTwapDeadlines({\n durationMin,\n numSlices,\n}: {\n durationMin: number;\n numSlices: number;\n}) {\n const orderDurationMs = minutesToMilliseconds(durationMin);\n const orderDeadline = produceDeltaOrderDeadline(\n // 10 min buffer for possible delays in order creation or slice executions\n orderDurationMs + TEN_MINUTES_MS\n );\n const orderInterval = Math.floor(\n millisecondsToSeconds(orderDurationMs) / numSlices\n );\n\n return {\n orderDeadline: Number(orderDeadline),\n orderInterval,\n };\n}\n"],"names":["getTwapChunkAmount","totalWei","numSlices","Big","div","toFixed","getTotalTwapAmount","chunkWei","mul","getTwapAmountsFromPrice","price","srcAmount","destAmount","receivedDestAmount","produceTwapDeadlines","durationMin","orderDurationMs","minutesToMilliseconds","orderDeadline","produceDeltaOrderDeadline","TEN_MINUTES_MS","orderInterval","Math","floor","millisecondsToSeconds","Number"],"mappings":";;;;;AAMO,SAASA,kBAAAA,CAAmB;AAAA,EACjCC,QAAAA;AAAAA,EACAC;AAIF,CAAA,EAAW;AACT,EAAA,IAAIA,SAAAA,IAAa,CAAA,IAAKD,QAAAA,KAAa,GAAA,EAAK,OAAOA,QAAAA;AAC/C,EAAA,OAAOE,GAAAA,CAAIF,QAAQ,CAAA,CAAEG,GAAAA,CAAIF,SAAS,CAAA,CAAEG,OAAAA,CAAQ,GAAG,CAAC,CAAA;AAClD;AAEO,SAASC,kBAAAA,CAAmB;AAAA,EACjCC,QAAAA;AAAAA,EACAL;AAIF,CAAA,EAAW;AACT,EAAA,IAAIA,SAAAA,IAAa,CAAA,IAAKK,QAAAA,KAAa,GAAA,EAAK,OAAOA,QAAAA;AAC/C,EAAA,OAAOJ,IAAII,QAAQ,CAAA,CAAEC,GAAAA,CAAIN,SAAS,EAAEG,OAAAA,EAAQ;AAC9C;AAEO,SAASI,uBAAAA,CAAwB;AAAA,EACtCC,KAAAA;AAAAA,EACAR;AAIF,CAAA,EAAG;AACD,EAAA,OAAO;AAAA,IACLS,WAAWL,kBAAAA,CAAmB;AAAA,MAAEC,UAAUG,KAAAA,CAAMC,SAAAA;AAAAA,MAAWT;AAAAA,KAAW,CAAA;AAAA,IACtEU,YAAYN,kBAAAA,CAAmB;AAAA,MAC7BC,UAAUG,KAAAA,CAAMG,kBAAAA;AAAAA,MAChBX;AAAAA,KACD;AAAA,GACH;AACF;AAEO,SAASY,oBAAAA,CAAqB;AAAA,EACnCC,WAAAA;AAAAA,EACAb;AAIF,CAAA,EAAG;AACD,EAAA,MAAMc,eAAAA,GAAkBC,sBAAsBF,WAAW,CAAA;AACzD,EAAA,MAAMG,aAAAA,GAAgBC,yBAAAA;AAAAA;AAAAA,IAEpBH,eAAAA,GAAkBI;AAAAA,GACpB;AACA,EAAA,MAAMC,gBAAgBC,IAAAA,CAAKC,KAAAA,CACzBC,qBAAAA,CAAsBR,eAAe,IAAId,SAC3C,CAAA;AAEA,EAAA,OAAO;AAAA,IACLgB,aAAAA,EAAeO,OAAOP,aAAa,CAAA;AAAA,IACnCG;AAAAA,GACF;AACF;;;;"}
@@ -28,7 +28,7 @@ const privyConfig = {
28
28
  },
29
29
  // another option is to give an invalid ID,
30
30
  // but then it retries indefinitely
31
- walletConnectCloudProjectId: "7535ce67d223b89670980f2442899904",
31
+ walletConnectCloudProjectId: undefined ,
32
32
  // Privy doesn't accept const Chain[]
33
33
  supportedChains: chains
34
34
  // defaultChain: chains[0], @TODO set to App's selected chain
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sources":["../../../../src/lib/web3/privy/config.ts"],"sourcesContent":["import { chains } from \"@/lib/web3/wagmi/constants\";\nimport { type PrivyClientConfig } from \"@privy-io/react-auth\";\nimport type { Mutable } from \"viem\";\n\nexport const privyConfig: PrivyClientConfig = {\n // appearance: {\n // // showWalletLoginFirst: true,\n // walletChainType: \"ethereum-only\",\n // // @TODO customize theming\n // },\n // loginMethods: [\"wallet\", \"email\"],\n loginMethods: [\"email\"],\n // loginMethodsAndOrder: {\n // primary: [\"metamask\", \"wallet_connect\", \"email\", \"rainbow\"],\n // // overflow: [\"wallet\", \"email\"],\n // }, // can be used to reorder wallets in Connect Wallet Privy modal\n // Create embedded wallets for users who don't have a wallet\n embeddedWallets: {\n ethereum: {\n createOnLogin: \"users-without-wallets\",\n },\n },\n externalWallets: {\n disableAllExternalWallets: true,\n walletConnect: {\n // this doesn't do anything\n enabled: false,\n },\n },\n // another option is to give an invalid ID,\n // but then it retries indefinitely\n walletConnectCloudProjectId: import.meta.env.VITE_WALLET_CONNECT_ID,\n // Privy doesn't accept const Chain[]\n supportedChains: chains as Mutable<typeof chains>,\n // defaultChain: chains[0], @TODO set to App's selected chain\n};\n"],"names":["privyConfig","loginMethods","embeddedWallets","ethereum","createOnLogin","externalWallets","disableAllExternalWallets","walletConnect","enabled","walletConnectCloudProjectId","import","supportedChains","chains"],"mappings":";;;AAIO,MAAMA,WAAAA,GAAiC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAO5CC,YAAAA,EAAc,CAAC,OAAO,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMtBC,eAAAA,EAAiB;AAAA,IACfC,QAAAA,EAAU;AAAA,MACRC,aAAAA,EAAe;AAAA;AACjB,GACF;AAAA,EACAC,eAAAA,EAAiB;AAAA,IACfC,yBAAAA,EAA2B,IAAA;AAAA,IAC3BC,aAAAA,EAAe;AAAA;AAAA,MAEbC,OAAAA,EAAS;AAAA;AACX,GACF;AAAA;AAAA;AAAA,EAGAC,2BAAAA,EAA6BC,kCAAAA;AAAAA;AAAAA,EAE7BC,eAAAA,EAAiBC;AAAAA;AAEnB;;;;"}
1
+ {"version":3,"file":"config.js","sources":["../../../../src/lib/web3/privy/config.ts"],"sourcesContent":["import { chains } from \"@/lib/web3/wagmi/constants\";\nimport { type PrivyClientConfig } from \"@privy-io/react-auth\";\nimport type { Mutable } from \"viem\";\n\nexport const privyConfig: PrivyClientConfig = {\n // appearance: {\n // // showWalletLoginFirst: true,\n // walletChainType: \"ethereum-only\",\n // // @TODO customize theming\n // },\n // loginMethods: [\"wallet\", \"email\"],\n loginMethods: [\"email\"],\n // loginMethodsAndOrder: {\n // primary: [\"metamask\", \"wallet_connect\", \"email\", \"rainbow\"],\n // // overflow: [\"wallet\", \"email\"],\n // }, // can be used to reorder wallets in Connect Wallet Privy modal\n // Create embedded wallets for users who don't have a wallet\n embeddedWallets: {\n ethereum: {\n createOnLogin: \"users-without-wallets\",\n },\n },\n externalWallets: {\n disableAllExternalWallets: true,\n walletConnect: {\n // this doesn't do anything\n enabled: false,\n },\n },\n // another option is to give an invalid ID,\n // but then it retries indefinitely\n walletConnectCloudProjectId: import.meta.env.VITE_WALLET_CONNECT_ID,\n // Privy doesn't accept const Chain[]\n supportedChains: chains as Mutable<typeof chains>,\n // defaultChain: chains[0], @TODO set to App's selected chain\n};\n"],"names":["privyConfig","loginMethods","embeddedWallets","ethereum","createOnLogin","externalWallets","disableAllExternalWallets","walletConnect","enabled","walletConnectCloudProjectId","import","VITE_WALLET_CONNECT_ID","supportedChains","chains"],"mappings":";;;AAIO,MAAMA,WAAAA,GAAiC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAO5CC,YAAAA,EAAc,CAAC,OAAO,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMtBC,eAAAA,EAAiB;AAAA,IACfC,QAAAA,EAAU;AAAA,MACRC,aAAAA,EAAe;AAAA;AACjB,GACF;AAAA,EACAC,eAAAA,EAAiB;AAAA,IACfC,yBAAAA,EAA2B,IAAA;AAAA,IAC3BC,aAAAA,EAAe;AAAA;AAAA,MAEbC,OAAAA,EAAS;AAAA;AACX,GACF;AAAA;AAAA;AAAA,EAGAC,6BAA6BC,SAAAA;AAAgBC;AAAAA,EAE7CC,eAAAA,EAAiBC;AAAAA;AAEnB;;;;"}
@@ -7,7 +7,7 @@ import { LOCAL_STORAGE_PREFIX } from '../../constants/storage.js';
7
7
 
8
8
  const connectors = [
9
9
  walletConnect({
10
- projectId: "7535ce67d223b89670980f2442899904"
10
+ projectId: undefined
11
11
  }),
12
12
  injected(),
13
13
  // metaMask() as CreateConnectorFn, // injected() detects metamask already
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sources":["../../../../src/lib/web3/wagmi/config.ts"],"sourcesContent":["import { createConfig, createStorage, type CreateConnectorFn } from \"wagmi\";\nimport {\n injected,\n // metaMask,\n safe,\n walletConnect,\n coinbaseWallet,\n} from \"wagmi/connectors\";\nimport { chains } from \"./constants\";\nimport { transports } from \"./transports\";\nimport { isInIframe } from \"./isInIframe\";\nimport { LOCAL_STORAGE_PREFIX } from \"@/lib/constants/storage\";\n\n// can add more connectors to cover wallets Privy doesn't support, but need to change UI to allow connection\nconst connectors = [\n walletConnect({\n projectId: import.meta.env.VITE_WALLET_CONNECT_ID,\n }) as CreateConnectorFn,\n injected() as CreateConnectorFn,\n // metaMask() as CreateConnectorFn, // injected() detects metamask already\n coinbaseWallet() as CreateConnectorFn,\n // raw returned types result in\n // The inferred type of 'config' cannot be named without a reference to '.pnpm/@safe-global+safe-apps-provider@0.18.6_typescript@5.8.3/node_modules/@safe-global/safe-apps-provider'. This is likely not portable. A type annotation is necessary.\n\n // getPrivyWalletConnector(), // only CorssApp Privy connector is available, not our use case\n];\n// @TODO see how we can implement Ledger connector, borrow it from rainbowkit?\n\nif (isInIframe) {\n // when widget is in an App inside iframe, chances are we are in Safe web app,\n // allow Safe connector to be used.\n // we can't know if we are inside specifically Safe iframe until we try to connect, though.\n // A check for that is in isInsideSafeIframe.ts\n connectors.unshift(safe());\n}\n\nexport const wagmiConfig = createConfig({\n storage: createStorage({\n storage: typeof window !== \"undefined\" ? window.localStorage : undefined,\n key: `${LOCAL_STORAGE_PREFIX}_wagmi`,\n }),\n chains,\n connectors,\n transports,\n syncConnectedChain: false,\n batch: {\n multicall: {\n wait: 20,\n },\n },\n});\n\ndeclare module \"wagmi\" {\n interface Register {\n config: typeof wagmiConfig;\n }\n}\n"],"names":["connectors","walletConnect","projectId","import","injected","coinbaseWallet","isInIframe","unshift","safe","wagmiConfig","createConfig","storage","createStorage","window","localStorage","undefined","key","LOCAL_STORAGE_PREFIX","chains","transports","syncConnectedChain","batch","multicall","wait"],"mappings":";;;;;;;AAcA,MAAMA,UAAAA,GAAa;AAAA,EACjBC,aAAAA,CAAc;AAAA,IACZC,SAAAA,EAAWC;AAAAA,GACZ,CAAA;AAAA,EACDC,QAAAA,EAAS;AAAA;AAAA,EAETC,cAAAA;AAAe;AAAA;AAAA;AAIf,CAAA;AAIF,IAAIC,UAAAA,EAAY;AAKdN,EAAAA,UAAAA,CAAWO,OAAAA,CAAQC,MAAM,CAAA;AAC3B;AAEO,MAAMC,cAAcC,YAAAA,CAAa;AAAA,EACtCC,SAASC,aAAAA,CAAc;AAAA,IACrBD,OAAAA,EAAS,OAAOE,MAAAA,KAAW,WAAA,GAAcA,OAAOC,YAAAA,GAAeC,MAAAA;AAAAA,IAC/DC,GAAAA,EAAK,GAAGC,oBAAoB,CAAA,MAAA;AAAA,GAC7B,CAAA;AAAA,EACDC,MAAAA;AAAAA,EACAlB,UAAAA;AAAAA,EACAmB,UAAAA;AAAAA,EACAC,kBAAAA,EAAoB,KAAA;AAAA,EACpBC,KAAAA,EAAO;AAAA,IACLC,SAAAA,EAAW;AAAA,MACTC,IAAAA,EAAM;AAAA;AACR;AAEJ,CAAC;;;;"}
1
+ {"version":3,"file":"config.js","sources":["../../../../src/lib/web3/wagmi/config.ts"],"sourcesContent":["import { createConfig, createStorage, type CreateConnectorFn } from \"wagmi\";\nimport {\n injected,\n // metaMask,\n safe,\n walletConnect,\n coinbaseWallet,\n} from \"wagmi/connectors\";\nimport { chains } from \"./constants\";\nimport { transports } from \"./transports\";\nimport { isInIframe } from \"./isInIframe\";\nimport { LOCAL_STORAGE_PREFIX } from \"@/lib/constants/storage\";\n\n// can add more connectors to cover wallets Privy doesn't support, but need to change UI to allow connection\nconst connectors = [\n walletConnect({\n projectId: import.meta.env.VITE_WALLET_CONNECT_ID,\n }) as CreateConnectorFn,\n injected() as CreateConnectorFn,\n // metaMask() as CreateConnectorFn, // injected() detects metamask already\n coinbaseWallet() as CreateConnectorFn,\n // raw returned types result in\n // The inferred type of 'config' cannot be named without a reference to '.pnpm/@safe-global+safe-apps-provider@0.18.6_typescript@5.8.3/node_modules/@safe-global/safe-apps-provider'. This is likely not portable. A type annotation is necessary.\n\n // getPrivyWalletConnector(), // only CorssApp Privy connector is available, not our use case\n];\n// @TODO see how we can implement Ledger connector, borrow it from rainbowkit?\n\nif (isInIframe) {\n // when widget is in an App inside iframe, chances are we are in Safe web app,\n // allow Safe connector to be used.\n // we can't know if we are inside specifically Safe iframe until we try to connect, though.\n // A check for that is in isInsideSafeIframe.ts\n connectors.unshift(safe());\n}\n\nexport const wagmiConfig = createConfig({\n storage: createStorage({\n storage: typeof window !== \"undefined\" ? window.localStorage : undefined,\n key: `${LOCAL_STORAGE_PREFIX}_wagmi`,\n }),\n chains,\n connectors,\n transports,\n syncConnectedChain: false,\n batch: {\n multicall: {\n wait: 20,\n },\n },\n});\n\ndeclare module \"wagmi\" {\n interface Register {\n config: typeof wagmiConfig;\n }\n}\n"],"names":["connectors","walletConnect","projectId","import","VITE_WALLET_CONNECT_ID","injected","coinbaseWallet","isInIframe","unshift","safe","wagmiConfig","createConfig","storage","createStorage","window","localStorage","undefined","key","LOCAL_STORAGE_PREFIX","chains","transports","syncConnectedChain","batch","multicall","wait"],"mappings":";;;;;;;AAcA,MAAMA,UAAAA,GAAa;AAAA,EACjBC,aAAAA,CAAc;AAAA,IACZC,WAAWC,SAAAA;AAAgBC,GAC5B,CAAA;AAAA,EACDC,QAAAA,EAAS;AAAA;AAAA,EAETC,cAAAA;AAAe;AAAA;AAAA;AAIf,CAAA;AAIF,IAAIC,UAAAA,EAAY;AAKdP,EAAAA,UAAAA,CAAWQ,OAAAA,CAAQC,MAAM,CAAA;AAC3B;AAEO,MAAMC,cAAcC,YAAAA,CAAa;AAAA,EACtCC,SAASC,aAAAA,CAAc;AAAA,IACrBD,OAAAA,EAAS,OAAOE,MAAAA,KAAW,WAAA,GAAcA,OAAOC,YAAAA,GAAeC,MAAAA;AAAAA,IAC/DC,GAAAA,EAAK,GAAGC,oBAAoB,CAAA,MAAA;AAAA,GAC7B,CAAA;AAAA,EACDC,MAAAA;AAAAA,EACAnB,UAAAA;AAAAA,EACAoB,UAAAA;AAAAA,EACAC,kBAAAA,EAAoB,KAAA;AAAA,EACpBC,KAAAA,EAAO;AAAA,IACLC,SAAAA,EAAW;AAAA,MACTC,IAAAA,EAAM;AAAA;AACR;AAEJ,CAAC;;;;"}