@velora-dex/widget 0.4.14 → 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 (503) 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/widget/AppHeader/Activities/hooks.d.ts.map +1 -1
  6. package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
  7. package/dist/components/widget/AppHeader/Activities/utils.d.ts +3 -3
  8. package/dist/components/widget/AppHeader/Activities/utils.d.ts.map +1 -1
  9. package/dist/components/widget/AppHeader/Activities/utils.js +7 -6
  10. package/dist/components/widget/AppHeader/Activities/utils.js.map +1 -1
  11. package/dist/components/widget/AppHeader/TradeModeSwitcher.d.ts.map +1 -1
  12. package/dist/components/widget/AppHeader/TradeModeSwitcher.js +2 -1
  13. package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
  14. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts.map +1 -1
  15. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +26 -4
  16. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  17. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.d.ts +1 -1
  18. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.d.ts.map +1 -1
  19. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js.map +1 -1
  20. package/dist/components/widget/Duration/Duration.d.ts +1 -1
  21. package/dist/components/widget/Duration/Duration.d.ts.map +1 -1
  22. package/dist/components/widget/Duration/Duration.js +1 -4
  23. package/dist/components/widget/Duration/Duration.js.map +1 -1
  24. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts +7 -8
  25. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts.map +1 -1
  26. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js +54 -60
  27. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js.map +1 -1
  28. package/dist/components/widget/LimitOrderItem/types.d.ts +3 -2
  29. package/dist/components/widget/LimitOrderItem/types.d.ts.map +1 -1
  30. package/dist/components/widget/LimitOrderItem/utils.d.ts +2 -2
  31. package/dist/components/widget/LimitOrderItem/utils.d.ts.map +1 -1
  32. package/dist/components/widget/LimitOrderItem/utils.js +19 -10
  33. package/dist/components/widget/LimitOrderItem/utils.js.map +1 -1
  34. package/dist/components/widget/NumberInput/NumberInput.d.ts +18 -0
  35. package/dist/components/widget/NumberInput/NumberInput.d.ts.map +1 -0
  36. package/dist/components/widget/NumberInput/NumberInput.js +242 -0
  37. package/dist/components/widget/NumberInput/NumberInput.js.map +1 -0
  38. package/dist/components/widget/NumberInput/assets/arrow-down.svg.js +12 -0
  39. package/dist/components/widget/NumberInput/assets/arrow-down.svg.js.map +1 -0
  40. package/dist/components/widget/NumberInput/assets/arrow-up.svg.js +12 -0
  41. package/dist/components/widget/NumberInput/assets/arrow-up.svg.js.map +1 -0
  42. package/dist/components/widget/OtcOrderItem/utils.d.ts.map +1 -1
  43. package/dist/components/widget/OtcOrderItem/utils.js +5 -2
  44. package/dist/components/widget/OtcOrderItem/utils.js.map +1 -1
  45. package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
  46. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +8 -4
  47. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  48. package/dist/components/widget/SwapRate/SwapRate.d.ts +2 -9
  49. package/dist/components/widget/SwapRate/SwapRate.d.ts.map +1 -1
  50. package/dist/components/widget/SwapRate/SwapRate.js +30 -21
  51. package/dist/components/widget/SwapRate/SwapRate.js.map +1 -1
  52. package/dist/components/widget/SwapRate/types.d.ts +13 -0
  53. package/dist/components/widget/SwapRate/types.d.ts.map +1 -0
  54. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.d.ts +7 -0
  55. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.d.ts.map +1 -0
  56. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.js +118 -0
  57. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.js.map +1 -0
  58. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
  59. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +83 -90
  60. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  61. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js +28 -46
  62. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js.map +1 -1
  63. package/dist/components/widget/TradeOverview/TradeComplete/constants.d.ts.map +1 -1
  64. package/dist/components/widget/TradeOverview/TradeComplete/constants.js +2 -1
  65. package/dist/components/widget/TradeOverview/TradeComplete/constants.js.map +1 -1
  66. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.d.ts.map +1 -1
  67. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js +105 -72
  68. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js.map +1 -1
  69. package/dist/components/widget/TradeOverview/TradeComplete/utils.d.ts.map +1 -1
  70. package/dist/components/widget/TradeOverview/TradeComplete/utils.js +41 -18
  71. package/dist/components/widget/TradeOverview/TradeComplete/utils.js.map +1 -1
  72. package/dist/components/widget/TradeOverview/TradeOverviewScreen.d.ts +7 -2
  73. package/dist/components/widget/TradeOverview/TradeOverviewScreen.d.ts.map +1 -1
  74. package/dist/components/widget/TradeOverview/TradeOverviewScreen.js +19 -7
  75. package/dist/components/widget/TradeOverview/TradeOverviewScreen.js.map +1 -1
  76. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts +15 -0
  77. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts.map +1 -0
  78. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js +249 -0
  79. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js.map +1 -0
  80. package/dist/components/widget/TradeOverview/steps.d.ts +37 -0
  81. package/dist/components/widget/TradeOverview/steps.d.ts.map +1 -1
  82. package/dist/components/widget/TradeOverview/steps.js +10 -1
  83. package/dist/components/widget/TradeOverview/steps.js.map +1 -1
  84. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts +2 -2
  85. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts.map +1 -1
  86. package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
  87. package/dist/components/widget/Twap/OrderDuration.d.ts +2 -0
  88. package/dist/components/widget/Twap/OrderDuration.d.ts.map +1 -0
  89. package/dist/components/widget/Twap/OrderDuration.js +77 -0
  90. package/dist/components/widget/Twap/OrderDuration.js.map +1 -0
  91. package/dist/components/widget/Twap/OrderSplit.d.ts +2 -0
  92. package/dist/components/widget/Twap/OrderSplit.d.ts.map +1 -0
  93. package/dist/components/widget/Twap/OrderSplit.js +57 -0
  94. package/dist/components/widget/Twap/OrderSplit.js.map +1 -0
  95. package/dist/components/widget/Twap/RateProtection.d.ts +2 -0
  96. package/dist/components/widget/Twap/RateProtection.d.ts.map +1 -0
  97. package/dist/components/widget/Twap/RateProtection.js +57 -0
  98. package/dist/components/widget/Twap/RateProtection.js.map +1 -0
  99. package/dist/components/widget/Twap/TwapDetailWithTooltip.d.ts +3 -0
  100. package/dist/components/widget/Twap/TwapDetailWithTooltip.d.ts.map +1 -0
  101. package/dist/components/widget/Twap/TwapDetailWithTooltip.js +33 -0
  102. package/dist/components/widget/Twap/TwapDetailWithTooltip.js.map +1 -0
  103. package/dist/configurator/Configurator.d.ts.map +1 -1
  104. package/dist/configurator/components/FormPropsInputs.d.ts.map +1 -1
  105. package/dist/configurator/components/TradeModesSelector.d.ts.map +1 -1
  106. package/dist/core/TradeFlowScreenButton.d.ts +5 -0
  107. package/dist/core/TradeFlowScreenButton.d.ts.map +1 -1
  108. package/dist/core/TradeFlowScreenButton.js +58 -1
  109. package/dist/core/TradeFlowScreenButton.js.map +1 -1
  110. package/dist/core/TwapDetails.d.ts +2 -0
  111. package/dist/core/TwapDetails.d.ts.map +1 -0
  112. package/dist/core/TwapDetails.js +24 -0
  113. package/dist/core/TwapDetails.js.map +1 -0
  114. package/dist/core/Warnings.d.ts +2 -1
  115. package/dist/core/Warnings.d.ts.map +1 -1
  116. package/dist/core/Warnings.js +99 -33
  117. package/dist/core/Warnings.js.map +1 -1
  118. package/dist/core/across/isCrosschainPossible.d.ts +1 -1
  119. package/dist/core/across/isCrosschainPossible.d.ts.map +1 -1
  120. package/dist/core/across/isCrosschainPossible.js +1 -1
  121. package/dist/core/across/isCrosschainPossible.js.map +1 -1
  122. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts +1 -0
  123. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
  124. package/dist/core/button/hooks/useWidgetButtonExtraProps.js +134 -51
  125. package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  126. package/dist/core/constants.d.ts +1 -1
  127. package/dist/core/index.d.ts.map +1 -1
  128. package/dist/core/index.js +205 -4
  129. package/dist/core/index.js.map +1 -1
  130. package/dist/core/inputs/hooks/types.d.ts +1 -1
  131. package/dist/core/inputs/hooks/types.d.ts.map +1 -1
  132. package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
  133. package/dist/core/inputs/hooks/useTokenToInputProps.js +5 -69
  134. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  135. package/dist/core/inputs/hooks/useWarningMessage.d.ts +10 -0
  136. package/dist/core/inputs/hooks/useWarningMessage.d.ts.map +1 -0
  137. package/dist/core/inputs/hooks/useWarningMessage.js +71 -0
  138. package/dist/core/inputs/hooks/useWarningMessage.js.map +1 -0
  139. package/dist/core/inputs/state/common.d.ts +4 -0
  140. package/dist/core/inputs/state/common.d.ts.map +1 -1
  141. package/dist/core/inputs/state/common.js +49 -4
  142. package/dist/core/inputs/state/common.js.map +1 -1
  143. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts.map +1 -1
  144. package/dist/core/inputs/state/setTokenByAddressAtom.js +27 -33
  145. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  146. package/dist/core/limit/state/utils.d.ts +1 -1
  147. package/dist/core/limit/useLimitRate.d.ts.map +1 -1
  148. package/dist/core/limit/useLimitRate.js +0 -2
  149. package/dist/core/limit/useLimitRate.js.map +1 -1
  150. package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
  151. package/dist/core/state/chainToAtom.d.ts +2 -0
  152. package/dist/core/state/chainToAtom.d.ts.map +1 -1
  153. package/dist/core/state/chainToAtom.js +28 -7
  154. package/dist/core/state/chainToAtom.js.map +1 -1
  155. package/dist/core/state/configAtom.js +2 -2
  156. package/dist/core/state/configAtom.js.map +1 -1
  157. package/dist/core/state/configEffectAtom.d.ts.map +1 -1
  158. package/dist/core/state/configEffectAtom.js +10 -15
  159. package/dist/core/state/configEffectAtom.js.map +1 -1
  160. package/dist/core/state/tradeModeAtom.d.ts +1 -1
  161. package/dist/core/state/tradeModeAtom.d.ts.map +1 -1
  162. package/dist/core/state/tradeModeAtom.js.map +1 -1
  163. package/dist/core/state/widgetEventsAtom.d.ts.map +1 -1
  164. package/dist/core/state/widgetEventsAtom.js +55 -33
  165. package/dist/core/state/widgetEventsAtom.js.map +1 -1
  166. package/dist/core/swapDetails/priceImpact.d.ts +2 -2
  167. package/dist/core/swapDetails/priceImpact.d.ts.map +1 -1
  168. package/dist/core/swapDetails/priceImpact.js.map +1 -1
  169. package/dist/core/swapDetails/types.d.ts +4 -0
  170. package/dist/core/swapDetails/types.d.ts.map +1 -0
  171. package/dist/core/swapDetails/useSwapDetailsListProps.d.ts.map +1 -1
  172. package/dist/core/swapDetails/useSwapDetailsListProps.js +62 -158
  173. package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
  174. package/dist/core/twap/state/constants.d.ts +20 -0
  175. package/dist/core/twap/state/constants.d.ts.map +1 -0
  176. package/dist/core/twap/state/constants.js +39 -0
  177. package/dist/core/twap/state/constants.js.map +1 -0
  178. package/dist/core/twap/state/currentTwapInputAtom.d.ts +4 -0
  179. package/dist/core/twap/state/currentTwapInputAtom.d.ts.map +1 -0
  180. package/dist/core/twap/state/currentTwapInputAtom.js +6 -0
  181. package/dist/core/twap/state/currentTwapInputAtom.js.map +1 -0
  182. package/dist/core/twap/state/isCrosschainAtom.d.ts +3 -0
  183. package/dist/core/twap/state/isCrosschainAtom.d.ts.map +1 -0
  184. package/dist/core/twap/state/isCrosschainAtom.js +16 -0
  185. package/dist/core/twap/state/isCrosschainAtom.js.map +1 -0
  186. package/dist/core/twap/state/selectedTokenActionsAtom.d.ts +13 -0
  187. package/dist/core/twap/state/selectedTokenActionsAtom.d.ts.map +1 -0
  188. package/dist/core/twap/state/selectedTokenActionsAtom.js +194 -0
  189. package/dist/core/twap/state/selectedTokenActionsAtom.js.map +1 -0
  190. package/dist/core/twap/state/twapInputAmountAtom.d.ts +9 -0
  191. package/dist/core/twap/state/twapInputAmountAtom.d.ts.map +1 -0
  192. package/dist/core/twap/state/twapInputAmountAtom.js +21 -0
  193. package/dist/core/twap/state/twapInputAmountAtom.js.map +1 -0
  194. package/dist/core/twap/state/twapParamsAtom.d.ts +15 -0
  195. package/dist/core/twap/state/twapParamsAtom.d.ts.map +1 -0
  196. package/dist/core/twap/state/twapParamsAtom.js +22 -0
  197. package/dist/core/twap/state/twapParamsAtom.js.map +1 -0
  198. package/dist/core/twap/state/twapReceiverAddressAtom.d.ts +5 -0
  199. package/dist/core/twap/state/twapReceiverAddressAtom.d.ts.map +1 -0
  200. package/dist/core/twap/state/twapReceiverAddressAtom.js +10 -0
  201. package/dist/core/twap/state/twapReceiverAddressAtom.js.map +1 -0
  202. package/dist/core/twap/state/twapSideAtom.d.ts +4 -0
  203. package/dist/core/twap/state/twapSideAtom.d.ts.map +1 -0
  204. package/dist/core/twap/state/twapSideAtom.js +24 -0
  205. package/dist/core/twap/state/twapSideAtom.js.map +1 -0
  206. package/dist/core/twap/state/twapTokenAtoms.d.ts +10 -0
  207. package/dist/core/twap/state/twapTokenAtoms.d.ts.map +1 -0
  208. package/dist/core/twap/state/twapTokenAtoms.js +17 -0
  209. package/dist/core/twap/state/twapTokenAtoms.js.map +1 -0
  210. package/dist/core/twap/twapDetails/minimumReceiveable.d.ts +12 -0
  211. package/dist/core/twap/twapDetails/minimumReceiveable.d.ts.map +1 -0
  212. package/dist/core/twap/twapDetails/minimumReceiveable.js +44 -0
  213. package/dist/core/twap/twapDetails/minimumReceiveable.js.map +1 -0
  214. package/dist/core/twap/useTwapDetailsListProps.d.ts +3 -0
  215. package/dist/core/twap/useTwapDetailsListProps.d.ts.map +1 -0
  216. package/dist/core/twap/useTwapDetailsListProps.js +143 -0
  217. package/dist/core/twap/useTwapDetailsListProps.js.map +1 -0
  218. package/dist/core/twap/useTwapTokenFromInputProps.d.ts +9 -0
  219. package/dist/core/twap/useTwapTokenFromInputProps.d.ts.map +1 -0
  220. package/dist/core/twap/useTwapTokenFromInputProps.js +455 -0
  221. package/dist/core/twap/useTwapTokenFromInputProps.js.map +1 -0
  222. package/dist/core/twap/useTwapTokenSwitcherProps.d.ts +3 -0
  223. package/dist/core/twap/useTwapTokenSwitcherProps.d.ts.map +1 -0
  224. package/dist/core/twap/useTwapTokenSwitcherProps.js +37 -0
  225. package/dist/core/twap/useTwapTokenSwitcherProps.js.map +1 -0
  226. package/dist/core/twap/useTwapTokenToInputProps.d.ts +10 -0
  227. package/dist/core/twap/useTwapTokenToInputProps.d.ts.map +1 -0
  228. package/dist/core/twap/useTwapTokenToInputProps.js +301 -0
  229. package/dist/core/twap/useTwapTokenToInputProps.js.map +1 -0
  230. package/dist/events/effects/formInput.d.ts +3 -0
  231. package/dist/events/effects/formInput.d.ts.map +1 -1
  232. package/dist/events/effects/formInput.js +17 -1
  233. package/dist/events/effects/formInput.js.map +1 -1
  234. package/dist/events/getters/twap.d.ts +6 -0
  235. package/dist/events/getters/twap.d.ts.map +1 -0
  236. package/dist/events/getters/twap.js +76 -0
  237. package/dist/events/getters/twap.js.map +1 -0
  238. package/dist/events/getters/widgetState.d.ts.map +1 -1
  239. package/dist/events/getters/widgetState.js +3 -1
  240. package/dist/events/getters/widgetState.js.map +1 -1
  241. package/dist/events/hooks/useActivateEffects.d.ts.map +1 -1
  242. package/dist/events/hooks/useActivateEffects.js +2 -1
  243. package/dist/events/hooks/useActivateEffects.js.map +1 -1
  244. package/dist/events/types/common.d.ts +8 -0
  245. package/dist/events/types/common.d.ts.map +1 -1
  246. package/dist/events/types/formInput.d.ts +11 -2
  247. package/dist/events/types/formInput.d.ts.map +1 -1
  248. package/dist/events/types/index.d.ts +4 -1
  249. package/dist/events/types/index.d.ts.map +1 -1
  250. package/dist/events/types/limit.d.ts +2 -2
  251. package/dist/events/types/limit.d.ts.map +1 -1
  252. package/dist/events/types/swap.d.ts +3 -2
  253. package/dist/events/types/swap.d.ts.map +1 -1
  254. package/dist/events/types/twap.d.ts +26 -0
  255. package/dist/events/types/twap.d.ts.map +1 -0
  256. package/dist/hooks/batch/useSendBatchTx.d.ts +1 -1
  257. package/dist/hooks/batch/useSendBatchTx.d.ts.map +1 -1
  258. package/dist/hooks/batch/useSendBatchTx.js.map +1 -1
  259. package/dist/hooks/permit/utils/deadlines.d.ts +0 -3
  260. package/dist/hooks/permit/utils/deadlines.d.ts.map +1 -1
  261. package/dist/hooks/permit/utils/deadlines.js +3 -9
  262. package/dist/hooks/permit/utils/deadlines.js.map +1 -1
  263. package/dist/hooks/swap/prices/constants.d.ts +1 -0
  264. package/dist/hooks/swap/prices/constants.d.ts.map +1 -1
  265. package/dist/hooks/swap/prices/constants.js +2 -1
  266. package/dist/hooks/swap/prices/constants.js.map +1 -1
  267. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.d.ts +19 -0
  268. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.d.ts.map +1 -0
  269. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.js +86 -0
  270. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.js.map +1 -0
  271. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts +37 -0
  272. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts.map +1 -0
  273. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js +164 -0
  274. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js.map +1 -0
  275. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.d.ts +69 -0
  276. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.d.ts.map +1 -0
  277. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js +278 -0
  278. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js.map +1 -0
  279. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts +15 -0
  280. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts.map +1 -0
  281. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js +89 -0
  282. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js.map +1 -0
  283. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.d.ts +60 -0
  284. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.d.ts.map +1 -0
  285. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js +325 -0
  286. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js.map +1 -0
  287. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.d.ts +18 -0
  288. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.d.ts.map +1 -0
  289. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js +87 -0
  290. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js.map +1 -0
  291. package/dist/hooks/swap/prices/delta/mutations/types.d.ts +12 -1
  292. package/dist/hooks/swap/prices/delta/mutations/types.d.ts.map +1 -1
  293. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.d.ts +2 -5
  294. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.d.ts.map +1 -1
  295. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js.map +1 -1
  296. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts +2 -3
  297. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts.map +1 -1
  298. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js +4 -5
  299. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js.map +1 -1
  300. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts +6 -6
  301. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts.map +1 -1
  302. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
  303. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts +3 -3
  304. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts.map +1 -1
  305. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js +3 -15
  306. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js.map +1 -1
  307. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts +4 -4
  308. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts.map +1 -1
  309. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js +7 -0
  310. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js.map +1 -1
  311. package/dist/hooks/swap/prices/delta/mutations/utils.d.ts +17 -6
  312. package/dist/hooks/swap/prices/delta/mutations/utils.d.ts.map +1 -1
  313. package/dist/hooks/swap/prices/delta/mutations/utils.js +35 -2
  314. package/dist/hooks/swap/prices/delta/mutations/utils.js.map +1 -1
  315. package/dist/hooks/swap/prices/delta/orders/types.d.ts +11 -46
  316. package/dist/hooks/swap/prices/delta/orders/types.d.ts.map +1 -1
  317. package/dist/hooks/swap/prices/delta/orders/unposted/index.d.ts +2 -2
  318. package/dist/hooks/swap/prices/delta/orders/unposted/index.d.ts.map +1 -1
  319. package/dist/hooks/swap/prices/delta/orders/unposted/index.js.map +1 -1
  320. package/dist/hooks/swap/prices/delta/orders/unposted/types.d.ts +6 -5
  321. package/dist/hooks/swap/prices/delta/orders/unposted/types.d.ts.map +1 -1
  322. package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts +67 -1
  323. package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts.map +1 -1
  324. package/dist/hooks/swap/prices/delta/orders/unposted/utils.js +24 -6
  325. package/dist/hooks/swap/prices/delta/orders/unposted/utils.js.map +1 -1
  326. package/dist/hooks/swap/prices/delta/orders/utils.d.ts +41 -10
  327. package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
  328. package/dist/hooks/swap/prices/delta/orders/utils.js +135 -4
  329. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  330. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.js +3 -3
  331. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.js.map +1 -1
  332. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/types.d.ts +1 -1
  333. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/types.d.ts.map +1 -1
  334. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.d.ts +0 -1
  335. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.d.ts.map +1 -1
  336. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.js.map +1 -1
  337. package/dist/hooks/swap/prices/delta/queries/errors.d.ts +10 -0
  338. package/dist/hooks/swap/prices/delta/queries/errors.d.ts.map +1 -1
  339. package/dist/hooks/swap/prices/delta/queries/errors.js +22 -1
  340. package/dist/hooks/swap/prices/delta/queries/errors.js.map +1 -1
  341. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts +5 -6
  342. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts.map +1 -1
  343. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js.map +1 -1
  344. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +7 -7
  345. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
  346. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +37 -35
  347. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  348. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts +14 -17
  349. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts.map +1 -1
  350. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
  351. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts.map +1 -1
  352. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js +37 -35
  353. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
  354. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.d.ts.map +1 -1
  355. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.js.map +1 -1
  356. package/dist/hooks/swap/prices/usePricesParams.d.ts.map +1 -1
  357. package/dist/hooks/swap/prices/usePricesParams.js +3 -4
  358. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  359. package/dist/hooks/swap/prices/useSwapPrices.d.ts +3 -0
  360. package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
  361. package/dist/hooks/swap/prices/useSwapPrices.js +51 -33
  362. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  363. package/dist/hooks/swap/prices/useTokenInputsFromPrice.d.ts +1 -1
  364. package/dist/hooks/swap/prices/useTokenInputsFromPrice.d.ts.map +1 -1
  365. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
  366. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts +16 -0
  367. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts.map +1 -0
  368. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js +73 -0
  369. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js.map +1 -0
  370. package/dist/hooks/swap/prices/useTwapPrices.d.ts +44 -0
  371. package/dist/hooks/swap/prices/useTwapPrices.d.ts.map +1 -0
  372. package/dist/hooks/swap/prices/useTwapPrices.js +241 -0
  373. package/dist/hooks/swap/prices/useTwapPrices.js.map +1 -0
  374. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts +48 -0
  375. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts.map +1 -0
  376. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js +71 -0
  377. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js.map +1 -0
  378. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.d.ts +50 -0
  379. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.d.ts.map +1 -0
  380. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js +94 -0
  381. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js.map +1 -0
  382. package/dist/hooks/swap/tradeFlow/common/types.d.ts +4 -2
  383. package/dist/hooks/swap/tradeFlow/common/types.d.ts.map +1 -1
  384. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts +2 -0
  385. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -1
  386. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js +57 -55
  387. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
  388. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts +6 -6
  389. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts.map +1 -1
  390. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js +263 -152
  391. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js.map +1 -1
  392. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts +7 -7
  393. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts.map +1 -1
  394. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js +296 -181
  395. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
  396. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts +2 -1
  397. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts.map +1 -1
  398. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js +85 -83
  399. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js.map +1 -1
  400. package/dist/hooks/swap/tradeFlow/common/utils.d.ts.map +1 -1
  401. package/dist/hooks/swap/tradeFlow/common/utils.js +1 -1
  402. package/dist/hooks/swap/tradeFlow/common/utils.js.map +1 -1
  403. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +8 -9
  404. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  405. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +6 -6
  406. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  407. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +5 -6
  408. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
  409. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +5 -9
  410. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  411. package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts +88 -0
  412. package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts.map +1 -0
  413. package/dist/hooks/swap/tradeFlow/useTwapFlow.js +595 -0
  414. package/dist/hooks/swap/tradeFlow/useTwapFlow.js.map +1 -0
  415. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.d.ts +25 -0
  416. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.d.ts.map +1 -0
  417. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js +237 -0
  418. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js.map +1 -0
  419. package/dist/hooks/tokens/useAllTokensWithFilter.d.ts +1 -1
  420. package/dist/hooks/tokens/useAllTokensWithFilter.d.ts.map +1 -1
  421. package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
  422. package/dist/hooks/tokens/useTokensFromAcross.d.ts +1 -1
  423. package/dist/hooks/tokens/useTokensFromAcross.d.ts.map +1 -1
  424. package/dist/hooks/tokens/useTokensFromAcross.js.map +1 -1
  425. package/dist/hooks/useBridgeInfo.d.ts +1 -1
  426. package/dist/hooks/useBridgeInfo.d.ts.map +1 -1
  427. package/dist/hooks/useBridgeInfo.js.map +1 -1
  428. package/dist/hooks/useIsCrosschainPossible.d.ts +1 -1
  429. package/dist/hooks/useIsCrosschainPossible.d.ts.map +1 -1
  430. package/dist/hooks/useIsCrosschainPossible.js.map +1 -1
  431. package/dist/hooks/useSDK.d.ts +4 -4
  432. package/dist/hooks/useSDK.d.ts.map +1 -1
  433. package/dist/hooks/useSDK.js +4 -4
  434. package/dist/hooks/useSDK.js.map +1 -1
  435. package/dist/hooks/useSelectableDestChains.d.ts +1 -1
  436. package/dist/hooks/useSelectableDestChains.d.ts.map +1 -1
  437. package/dist/hooks/useSelectableDestChains.js.map +1 -1
  438. package/dist/hooks/useSlippage.d.ts.map +1 -1
  439. package/dist/hooks/useSlippage.js +2 -1
  440. package/dist/hooks/useSlippage.js.map +1 -1
  441. package/dist/index.d.ts +2 -2
  442. package/dist/index.d.ts.map +1 -1
  443. package/dist/lib/constants/delta.d.ts.map +1 -1
  444. package/dist/lib/constants/delta.js +1 -1
  445. package/dist/lib/constants/delta.js.map +1 -1
  446. package/dist/lib/constants/time.d.ts +1 -0
  447. package/dist/lib/constants/time.d.ts.map +1 -1
  448. package/dist/lib/constants/time.js +2 -1
  449. package/dist/lib/constants/time.js.map +1 -1
  450. package/dist/lib/queryClient.js +2 -2
  451. package/dist/lib/queryClient.js.map +1 -1
  452. package/dist/lib/tradeMode.d.ts +9 -1
  453. package/dist/lib/tradeMode.d.ts.map +1 -1
  454. package/dist/lib/tradeMode.js +4 -2
  455. package/dist/lib/tradeMode.js.map +1 -1
  456. package/dist/lib/utils/delta.d.ts +10 -0
  457. package/dist/lib/utils/delta.d.ts.map +1 -1
  458. package/dist/lib/utils/delta.js +24 -1
  459. package/dist/lib/utils/delta.js.map +1 -1
  460. package/dist/lib/utils/index.d.ts +8 -0
  461. package/dist/lib/utils/index.d.ts.map +1 -1
  462. package/dist/lib/utils/index.js +18 -1
  463. package/dist/lib/utils/index.js.map +1 -1
  464. package/dist/lib/utils/price.d.ts +1 -0
  465. package/dist/lib/utils/price.d.ts.map +1 -1
  466. package/dist/lib/utils/price.js +4 -2
  467. package/dist/lib/utils/price.js.map +1 -1
  468. package/dist/lib/utils/scaleFactor.d.ts +3 -0
  469. package/dist/lib/utils/scaleFactor.d.ts.map +1 -0
  470. package/dist/lib/utils/scaleFactor.js +12 -0
  471. package/dist/lib/utils/scaleFactor.js.map +1 -0
  472. package/dist/lib/utils/time.d.ts +2 -0
  473. package/dist/lib/utils/time.d.ts.map +1 -1
  474. package/dist/lib/utils/time.js +7 -1
  475. package/dist/lib/utils/time.js.map +1 -1
  476. package/dist/lib/utils/toasts.d.ts +4 -4
  477. package/dist/lib/utils/toasts.d.ts.map +1 -1
  478. package/dist/lib/utils/toasts.js.map +1 -1
  479. package/dist/lib/utils/twap.d.ts +24 -0
  480. package/dist/lib/utils/twap.d.ts.map +1 -0
  481. package/dist/lib/utils/twap.js +52 -0
  482. package/dist/lib/utils/twap.js.map +1 -0
  483. package/dist/lib/web3/privy/config.js +1 -1
  484. package/dist/lib/web3/privy/config.js.map +1 -1
  485. package/dist/lib/web3/wagmi/config.js +1 -1
  486. package/dist/lib/web3/wagmi/config.js.map +1 -1
  487. package/dist/styles.css +65 -4
  488. package/dist/tokens/constants.d.ts.map +1 -1
  489. package/dist/tokens/constants.js +9 -9
  490. package/dist/tokens/constants.js.map +1 -1
  491. package/dist/tokens/defaultTokens.js +17 -17
  492. package/dist/tokens/defaultTokens.js.map +1 -1
  493. package/dist/tokens/lists/constants.d.ts +1 -1
  494. package/dist/tokens/lists/constants.d.ts.map +1 -1
  495. package/dist/tokens/lists/constants.js +1 -1
  496. package/dist/tokens/lists/constants.js.map +1 -1
  497. package/dist/transactions/types.d.ts +3 -3
  498. package/dist/transactions/types.d.ts.map +1 -1
  499. package/package.json +2 -2
  500. package/dist/hooks/swap/prices/delta/queries/utils.d.ts +0 -4
  501. package/dist/hooks/swap/prices/delta/queries/utils.d.ts.map +0 -1
  502. package/dist/hooks/swap/prices/delta/queries/utils.js +0 -16
  503. package/dist/hooks/swap/prices/delta/queries/utils.js.map +0 -1
@@ -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;;;;"}
package/dist/styles.css CHANGED
@@ -70,7 +70,7 @@
70
70
  }
71
71
  }
72
72
  }
73
- .velora-widget {
73
+ :root, :host {
74
74
  --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
75
75
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
76
76
  --color-red-800: oklch(44.4% .177 26.899);
@@ -833,6 +833,9 @@
833
833
  .velora-widget.velora-widget .w-\[1px\] {
834
834
  width: 1px;
835
835
  }
836
+ .velora-widget.velora-widget .w-\[2px\] {
837
+ width: 2px;
838
+ }
836
839
  .velora-widget.velora-widget .w-\[18px\] {
837
840
  width: 18px;
838
841
  }
@@ -890,6 +893,12 @@
890
893
  .velora-widget.velora-widget .max-w-3xl {
891
894
  max-width: var(--container-3xl);
892
895
  }
896
+ .velora-widget.velora-widget .max-w-18 {
897
+ max-width: calc(var(--spacing) * 18);
898
+ }
899
+ .velora-widget.velora-widget .max-w-20 {
900
+ max-width: calc(var(--spacing) * 20);
901
+ }
893
902
  .velora-widget.velora-widget .max-w-\[140px\] {
894
903
  max-width: 140px;
895
904
  }
@@ -932,6 +941,9 @@
932
941
  .velora-widget.velora-widget .min-w-\[8rem\] {
933
942
  min-width: 8rem;
934
943
  }
944
+ .velora-widget.velora-widget .min-w-\[30px\] {
945
+ min-width: 30px;
946
+ }
935
947
  .velora-widget.velora-widget .min-w-\[42px\] {
936
948
  min-width: 42px;
937
949
  }
@@ -1016,6 +1028,9 @@
1016
1028
  .velora-widget.velora-widget .scroll-my-1 {
1017
1029
  scroll-margin-block: calc(var(--spacing) * 1);
1018
1030
  }
1031
+ .velora-widget.velora-widget .\[appearance\:textfield\] {
1032
+ appearance: textfield;
1033
+ }
1019
1034
  .velora-widget.velora-widget .appearance-none {
1020
1035
  appearance: none;
1021
1036
  }
@@ -1025,8 +1040,8 @@
1025
1040
  .velora-widget.velora-widget .grid-cols-2 {
1026
1041
  grid-template-columns: repeat(2, minmax(0, 1fr));
1027
1042
  }
1028
- .velora-widget.velora-widget .grid-cols-3 {
1029
- grid-template-columns: repeat(3, minmax(0, 1fr));
1043
+ .velora-widget.velora-widget .grid-cols-4 {
1044
+ grid-template-columns: repeat(4, minmax(0, 1fr));
1030
1045
  }
1031
1046
  .velora-widget.velora-widget .grid-cols-\[auto_1fr\] {
1032
1047
  grid-template-columns: auto 1fr;
@@ -1221,6 +1236,9 @@
1221
1236
  .velora-widget.velora-widget .rounded-md {
1222
1237
  border-radius: var(--radius);
1223
1238
  }
1239
+ .velora-widget.velora-widget .rounded-none {
1240
+ border-radius: 0;
1241
+ }
1224
1242
  .velora-widget.velora-widget .rounded-sm {
1225
1243
  border-radius: calc(var(--radius) - 2px);
1226
1244
  }
@@ -1236,10 +1254,21 @@
1236
1254
  .velora-widget.velora-widget .rounded-xxs {
1237
1255
  border-radius: calc(var(--radius) - 8px);
1238
1256
  }
1257
+ .velora-widget.velora-widget .rounded-r-none {
1258
+ border-top-right-radius: 0;
1259
+ border-bottom-right-radius: 0;
1260
+ }
1261
+ .velora-widget.velora-widget .rounded-r-sm {
1262
+ border-top-right-radius: calc(var(--radius) - 2px);
1263
+ border-bottom-right-radius: calc(var(--radius) - 2px);
1264
+ }
1239
1265
  .velora-widget.velora-widget .rounded-r-xxl {
1240
1266
  border-top-right-radius: calc(var(--radius) + 10px);
1241
1267
  border-bottom-right-radius: calc(var(--radius) + 10px);
1242
1268
  }
1269
+ .velora-widget.velora-widget .rounded-tr-xs {
1270
+ border-top-right-radius: calc(var(--radius) - 4px);
1271
+ }
1243
1272
  .velora-widget.velora-widget .rounded-br-xs {
1244
1273
  border-bottom-right-radius: calc(var(--radius) - 4px);
1245
1274
  }
@@ -2184,6 +2213,9 @@
2184
2213
  .velora-widget.velora-widget .focus-within\:border-primary-azul-1:focus-within {
2185
2214
  border-color: var(--primary-azul-1);
2186
2215
  }
2216
+ .velora-widget.velora-widget .focus-within\:bg-contrast-8:focus-within {
2217
+ background-color: var(--contrast-8);
2218
+ }
2187
2219
  @media (hover: hover) {
2188
2220
  .velora-widget.velora-widget .hover\:rotate-\[0\.5turn\]:hover {
2189
2221
  rotate: .5turn;
@@ -2233,7 +2265,7 @@
2233
2265
  background-color: var(--color-green-300);
2234
2266
  }
2235
2267
 
2236
- .velora-widget.velora-widget .hover\:bg-primary-azul-1\/90:hover {
2268
+ .velora-widget.velora-widget .hover\:bg-primary-azul-1:hover, .velora-widget.velora-widget .hover\:bg-primary-azul-1\/90:hover {
2237
2269
  background-color: var(--primary-azul-1);
2238
2270
  }
2239
2271
 
@@ -2259,6 +2291,10 @@
2259
2291
  color: var(--contrast-5);
2260
2292
  }
2261
2293
 
2294
+ .velora-widget.velora-widget .hover\:text-contrast-9:hover {
2295
+ color: var(--contrast-9);
2296
+ }
2297
+
2262
2298
  .velora-widget.velora-widget .hover\:text-primary-azul-1:hover {
2263
2299
  color: var(--primary-azul-1);
2264
2300
  }
@@ -2658,6 +2694,9 @@
2658
2694
  .velora-widget.velora-widget .dark\:border-input:is(.velora-widget.dark *) {
2659
2695
  border-color: var(--input);
2660
2696
  }
2697
+ .velora-widget.velora-widget .dark\:border-primary-azul-1:is(.velora-widget.dark *) {
2698
+ border-color: var(--primary-azul-1);
2699
+ }
2661
2700
  .velora-widget.velora-widget .dark\:border-secondary-shamrock-green-2:is(.velora-widget.dark *) {
2662
2701
  border-color: var(--secondary-shamrock_green-2);
2663
2702
  }
@@ -2707,6 +2746,9 @@
2707
2746
  background-color: color-mix(in oklab, var(--input) 30%, transparent);
2708
2747
  }
2709
2748
  }
2749
+ .velora-widget.velora-widget .dark\:bg-primary-azul-1:is(.velora-widget.dark *) {
2750
+ background-color: var(--primary-azul-1);
2751
+ }
2710
2752
  .velora-widget.velora-widget .dark\:bg-transparent:is(.velora-widget.dark *) {
2711
2753
  background-color: #0000;
2712
2754
  }
@@ -2719,6 +2761,9 @@
2719
2761
  .velora-widget.velora-widget .dark\:fill-contrast-6:is(.velora-widget.dark *) {
2720
2762
  fill: var(--contrast-6);
2721
2763
  }
2764
+ .velora-widget.velora-widget .dark\:fill-contrast-9:is(.velora-widget.dark *) {
2765
+ fill: var(--contrast-9);
2766
+ }
2722
2767
  .velora-widget.velora-widget .dark\:stroke-contrast-2:is(.velora-widget.dark *) {
2723
2768
  stroke: var(--contrast-2);
2724
2769
  }
@@ -2784,6 +2829,12 @@
2784
2829
  .velora-widget.velora-widget .last-of-type\:dark\:border-r-contrast-5:last-of-type:is(.velora-widget.dark *) {
2785
2830
  border-right-color: var(--contrast-5);
2786
2831
  }
2832
+ .velora-widget.velora-widget .dark\:focus-within\:border-primary-azul-1:is(.velora-widget.dark *):focus-within {
2833
+ border-color: var(--primary-azul-1);
2834
+ }
2835
+ .velora-widget.velora-widget .dark\:focus-within\:bg-contrast-1:is(.velora-widget.dark *):focus-within {
2836
+ background-color: var(--contrast-1);
2837
+ }
2787
2838
  @media (hover: hover) {
2788
2839
  .velora-widget.velora-widget .dark\:hover\:bg-accent\/50:is(.velora-widget.dark *):hover {
2789
2840
  background-color: var(--accent);
@@ -2823,6 +2874,10 @@
2823
2874
  }
2824
2875
  }
2825
2876
 
2877
+ .velora-widget.velora-widget .dark\:hover\:bg-primary-azul-1:is(.velora-widget.dark *):hover {
2878
+ background-color: var(--primary-azul-1);
2879
+ }
2880
+
2826
2881
  .velora-widget.velora-widget .dark\:hover\:text-contrast-7:is(.velora-widget.dark *):hover {
2827
2882
  color: var(--contrast-7);
2828
2883
  }
@@ -2914,6 +2969,12 @@
2914
2969
  .velora-widget.velora-widget .\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*="text-"]) {
2915
2970
  color: var(--muted-foreground);
2916
2971
  }
2972
+ .velora-widget.velora-widget .\[\&\:\:-webkit-inner-spin-button\]\:appearance-none::-webkit-inner-spin-button {
2973
+ appearance: none;
2974
+ }
2975
+ .velora-widget.velora-widget .\[\&\:\:-webkit-outer-spin-button\]\:appearance-none::-webkit-outer-spin-button {
2976
+ appearance: none;
2977
+ }
2917
2978
  .velora-widget.velora-widget .\[\.border-b\]\:pb-6.border-b {
2918
2979
  padding-bottom: calc(var(--spacing) * 6);
2919
2980
  }
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/tokens/constants.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,eAAO,MAAM,2BAA2B,sBAAsB,CAAC;AAE/D,eAAO,MAAM,WAAW,+CAA+C,CAAC;AAExE,eAAO,MAAM,qBAAqB,EAAgC,SAAS,CACzE,OAAO,WAAW,CACnB,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAUjE,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,OAAO,CAC1C,MAAM,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAMlC,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/tokens/constants.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,eAAO,MAAM,2BAA2B,sBAAsB,CAAC;AAE/D,eAAO,MAAM,WAAW,+CAA+C,CAAC;AAExE,eAAO,MAAM,qBAAqB,EAAgC,SAAS,CACzE,OAAO,WAAW,CACnB,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAWjE,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,OAAO,CAC1C,MAAM,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAMlC,CAAC"}