@velora-dex/widget 0.3.1 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (285) hide show
  1. package/dist/assets/bridges/canonical-uni.svg.js +12 -0
  2. package/dist/assets/bridges/canonical-uni.svg.js.map +1 -0
  3. package/dist/assets/bridges/cctp.svg.js +12 -0
  4. package/dist/assets/bridges/cctp.svg.js.map +1 -0
  5. package/dist/assets/bridges/celer.svg.js +16 -0
  6. package/dist/assets/bridges/celer.svg.js.map +1 -0
  7. package/dist/assets/bridges/relay.svg.js +12 -0
  8. package/dist/assets/bridges/relay.svg.js.map +1 -0
  9. package/dist/assets/refresh.svg.js +12 -0
  10. package/dist/assets/refresh.svg.js.map +1 -0
  11. package/dist/assets/speedometer.svg.js +12 -0
  12. package/dist/assets/speedometer.svg.js.map +1 -0
  13. package/dist/components/ui/accordion.d.ts +3 -2
  14. package/dist/components/ui/accordion.d.ts.map +1 -1
  15. package/dist/components/ui/accordion.js +64 -40
  16. package/dist/components/ui/accordion.js.map +1 -1
  17. package/dist/components/ui/skeleton.d.ts.map +1 -1
  18. package/dist/components/ui/skeleton.js.map +1 -1
  19. package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
  20. package/dist/components/widget/AppHeader/AppHeader.d.ts.map +1 -1
  21. package/dist/components/widget/AppHeader/AppHeader.js +67 -81
  22. package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
  23. package/dist/components/widget/AppHeader/TradeModeSwitcher.d.ts.map +1 -1
  24. package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
  25. package/dist/components/widget/BridgeList/BridgeListItem.d.ts +7 -0
  26. package/dist/components/widget/BridgeList/BridgeListItem.d.ts.map +1 -0
  27. package/dist/components/widget/BridgeList/BridgeListItem.js +475 -0
  28. package/dist/components/widget/BridgeList/BridgeListItem.js.map +1 -0
  29. package/dist/components/widget/BridgeList/BridgeProtocolsList.d.ts +9 -0
  30. package/dist/components/widget/BridgeList/BridgeProtocolsList.d.ts.map +1 -0
  31. package/dist/components/widget/BridgeList/BridgeProtocolsList.js +219 -0
  32. package/dist/components/widget/BridgeList/BridgeProtocolsList.js.map +1 -0
  33. package/dist/components/widget/BridgeList/BridgesList.d.ts +12 -0
  34. package/dist/components/widget/BridgeList/BridgesList.d.ts.map +1 -0
  35. package/dist/components/widget/BridgeList/BridgesList.js +76 -0
  36. package/dist/components/widget/BridgeList/BridgesList.js.map +1 -0
  37. package/dist/components/widget/BridgeList/hooks.d.ts +17 -0
  38. package/dist/components/widget/BridgeList/hooks.d.ts.map +1 -0
  39. package/dist/components/widget/BridgeList/hooks.js +259 -0
  40. package/dist/components/widget/BridgeList/hooks.js.map +1 -0
  41. package/dist/components/widget/BridgeList/types.d.ts +20 -0
  42. package/dist/components/widget/BridgeList/types.d.ts.map +1 -0
  43. package/dist/components/widget/BridgePreferences/BridgePreferences.d.ts +3 -0
  44. package/dist/components/widget/BridgePreferences/BridgePreferences.d.ts.map +1 -0
  45. package/dist/components/widget/BridgePreferences/BridgePreferences.js +136 -0
  46. package/dist/components/widget/BridgePreferences/BridgePreferences.js.map +1 -0
  47. package/dist/components/widget/BridgePreferences/types.d.ts +11 -0
  48. package/dist/components/widget/BridgePreferences/types.d.ts.map +1 -0
  49. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.d.ts +8 -0
  50. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.d.ts.map +1 -0
  51. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.js +137 -0
  52. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.js.map +1 -0
  53. package/dist/components/widget/CompareQuotes/CompareQuotes.d.ts +2 -0
  54. package/dist/components/widget/CompareQuotes/CompareQuotes.d.ts.map +1 -0
  55. package/dist/components/widget/CompareQuotes/CompareQuotes.js +210 -0
  56. package/dist/components/widget/CompareQuotes/CompareQuotes.js.map +1 -0
  57. package/dist/components/widget/Details/DetailWithValueListExpandable.d.ts.map +1 -1
  58. package/dist/components/widget/Details/DetailWithValueListExpandable.js.map +1 -1
  59. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js +2 -2
  60. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js.map +1 -1
  61. package/dist/components/widget/Duration/Duration.d.ts +6 -0
  62. package/dist/components/widget/Duration/Duration.d.ts.map +1 -0
  63. package/dist/components/widget/Duration/Duration.js +95 -0
  64. package/dist/components/widget/Duration/Duration.js.map +1 -0
  65. package/dist/components/widget/Duration/types.d.ts +5 -0
  66. package/dist/components/widget/Duration/types.d.ts.map +1 -0
  67. package/dist/components/widget/Duration/utils.d.ts +4 -0
  68. package/dist/components/widget/Duration/utils.d.ts.map +1 -0
  69. package/dist/components/widget/Duration/utils.js +6 -0
  70. package/dist/components/widget/Duration/utils.js.map +1 -0
  71. package/dist/components/widget/FetchingQuotes/FetchingQuotes.d.ts +2 -0
  72. package/dist/components/widget/FetchingQuotes/FetchingQuotes.d.ts.map +1 -0
  73. package/dist/components/widget/FetchingQuotes/FetchingQuotes.js +42 -0
  74. package/dist/components/widget/FetchingQuotes/FetchingQuotes.js.map +1 -0
  75. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts +1 -1
  76. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts.map +1 -1
  77. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js +10 -64
  78. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js.map +1 -1
  79. package/dist/components/widget/OrderExpiryInput/index.js.map +1 -1
  80. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.js.map +1 -1
  81. package/dist/components/widget/Screen/GenericScreen.js.map +1 -1
  82. package/dist/components/widget/SettingsButton/SettingsButton.d.ts +5 -0
  83. package/dist/components/widget/SettingsButton/SettingsButton.d.ts.map +1 -0
  84. package/dist/components/widget/SettingsButton/SettingsButton.js +61 -0
  85. package/dist/components/widget/SettingsButton/SettingsButton.js.map +1 -0
  86. package/dist/components/widget/TokenBadge/TokenBadge.d.ts.map +1 -1
  87. package/dist/components/widget/TokenBadge/TokenBadge.js +114 -65
  88. package/dist/components/widget/TokenBadge/TokenBadge.js.map +1 -1
  89. package/dist/components/widget/TokenBadge/types.d.ts +1 -0
  90. package/dist/components/widget/TokenBadge/types.d.ts.map +1 -1
  91. package/dist/components/widget/TokenInput/index.d.ts.map +1 -1
  92. package/dist/components/widget/TokenInput/index.js +35 -19
  93. package/dist/components/widget/TokenInput/index.js.map +1 -1
  94. package/dist/components/widget/TokenInput/types.d.ts +1 -0
  95. package/dist/components/widget/TokenInput/types.d.ts.map +1 -1
  96. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  97. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
  98. package/dist/components/widget/TradeOverview/TradeDetails.js +1 -1
  99. package/dist/components/widget/TradeOverview/TradeDetails.js.map +1 -1
  100. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js +1 -1
  101. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js.map +1 -1
  102. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.d.ts +1 -1
  103. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.d.ts.map +1 -1
  104. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.js.map +1 -1
  105. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/BridgePreferenceParameters.d.ts +21 -0
  106. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/BridgePreferenceParameters.d.ts.map +1 -0
  107. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/BridgePreferenceParameters.js +90 -0
  108. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/BridgePreferenceParameters.js.map +1 -0
  109. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/useDraftBridgePreferencesState.d.ts +12 -0
  110. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/useDraftBridgePreferencesState.d.ts.map +1 -0
  111. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/useDraftBridgePreferencesState.js +68 -0
  112. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/useDraftBridgePreferencesState.js.map +1 -0
  113. package/dist/components/widget/TradeParameters/TradeParameters.d.ts +3 -2
  114. package/dist/components/widget/TradeParameters/TradeParameters.d.ts.map +1 -1
  115. package/dist/components/widget/TradeParameters/TradeParameters.js +66 -45
  116. package/dist/components/widget/TradeParameters/TradeParameters.js.map +1 -1
  117. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.d.ts.map +1 -1
  118. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js +3 -1
  119. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js.map +1 -1
  120. package/dist/components/widget/TradeParameters/state/bridgePreferences/bridgePreferenceAtom.d.ts +10 -0
  121. package/dist/components/widget/TradeParameters/state/bridgePreferences/bridgePreferenceAtom.d.ts.map +1 -0
  122. package/dist/components/widget/TradeParameters/state/bridgePreferences/bridgePreferenceAtom.js +19 -0
  123. package/dist/components/widget/TradeParameters/state/bridgePreferences/bridgePreferenceAtom.js.map +1 -0
  124. package/dist/components/widget/TradeParameters/state/bridgePreferences/constants.d.ts +4 -0
  125. package/dist/components/widget/TradeParameters/state/bridgePreferences/constants.d.ts.map +1 -0
  126. package/dist/components/widget/TradeParameters/state/bridgePreferences/constants.js +7 -0
  127. package/dist/components/widget/TradeParameters/state/bridgePreferences/constants.js.map +1 -0
  128. package/dist/components/widget/TradeParameters/state/bridgePreferences/disabledBridgesAtom.d.ts +8 -0
  129. package/dist/components/widget/TradeParameters/state/bridgePreferences/disabledBridgesAtom.d.ts.map +1 -0
  130. package/dist/components/widget/TradeParameters/state/bridgePreferences/disabledBridgesAtom.js +21 -0
  131. package/dist/components/widget/TradeParameters/state/bridgePreferences/disabledBridgesAtom.js.map +1 -0
  132. package/dist/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom.d.ts +2 -0
  133. package/dist/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom.d.ts.map +1 -0
  134. package/dist/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom.js +11 -0
  135. package/dist/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom.js.map +1 -0
  136. package/dist/components/widget/TradeParameters/state/bridgePreferences/protocolNameAtom.d.ts +4 -0
  137. package/dist/components/widget/TradeParameters/state/bridgePreferences/protocolNameAtom.d.ts.map +1 -0
  138. package/dist/components/widget/TradeParameters/state/bridgePreferences/protocolNameAtom.js +8 -0
  139. package/dist/components/widget/TradeParameters/state/bridgePreferences/protocolNameAtom.js.map +1 -0
  140. package/dist/components/widget/TradeParameters/state/bridgePreferences/resetDraftsAtom.d.ts +4 -0
  141. package/dist/components/widget/TradeParameters/state/bridgePreferences/resetDraftsAtom.d.ts.map +1 -0
  142. package/dist/components/widget/TradeParameters/state/bridgePreferences/resetDraftsAtom.js +11 -0
  143. package/dist/components/widget/TradeParameters/state/bridgePreferences/resetDraftsAtom.js.map +1 -0
  144. package/dist/components/widget/TradeParameters/state/bridgePreferences/types.d.ts +3 -0
  145. package/dist/components/widget/TradeParameters/state/bridgePreferences/types.d.ts.map +1 -0
  146. package/dist/components/widget/TradeParameters/state/bridgePreferences/useBridgePreferences.d.ts +15 -0
  147. package/dist/components/widget/TradeParameters/state/bridgePreferences/useBridgePreferences.d.ts.map +1 -0
  148. package/dist/components/widget/TradeParameters/state/bridgePreferences/useBridgePreferences.js +63 -0
  149. package/dist/components/widget/TradeParameters/state/bridgePreferences/useBridgePreferences.js.map +1 -0
  150. package/dist/components/widget/TradeParameters/useTempTradeParameters.d.ts +5 -0
  151. package/dist/components/widget/TradeParameters/useTempTradeParameters.d.ts.map +1 -1
  152. package/dist/components/widget/TradeParameters/useTempTradeParameters.js +150 -67
  153. package/dist/components/widget/TradeParameters/useTempTradeParameters.js.map +1 -1
  154. package/dist/components/widget/YouGet/YouGet.d.ts.map +1 -1
  155. package/dist/components/widget/YouGet/YouGet.js +93 -99
  156. package/dist/components/widget/YouGet/YouGet.js.map +1 -1
  157. package/dist/components/widget/YouGet/types.d.ts +2 -1
  158. package/dist/components/widget/YouGet/types.d.ts.map +1 -1
  159. package/dist/configurator/state/themeAtom.d.ts.map +1 -1
  160. package/dist/core/Updaters.d.ts.map +1 -1
  161. package/dist/core/Updaters.js +2 -0
  162. package/dist/core/Updaters.js.map +1 -1
  163. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
  164. package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  165. package/dist/core/index.d.ts.map +1 -1
  166. package/dist/core/index.js +22 -14
  167. package/dist/core/index.js.map +1 -1
  168. package/dist/core/inputs/hooks/types.d.ts +2 -2
  169. package/dist/core/inputs/hooks/types.d.ts.map +1 -1
  170. package/dist/core/inputs/hooks/useTokenFromInputProps.d.ts.map +1 -1
  171. package/dist/core/inputs/hooks/useTokenFromInputProps.js +121 -103
  172. package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
  173. package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
  174. package/dist/core/inputs/hooks/useTokenToInputProps.js +158 -130
  175. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  176. package/dist/core/inputs/hooks/utils.d.ts +10 -0
  177. package/dist/core/inputs/hooks/utils.d.ts.map +1 -0
  178. package/dist/core/inputs/hooks/utils.js +41 -0
  179. package/dist/core/inputs/hooks/utils.js.map +1 -0
  180. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  181. package/dist/core/limit/state/utils.js.map +1 -1
  182. package/dist/core/limit/useLimitRate.d.ts.map +1 -1
  183. package/dist/core/limit/useLimitRate.js.map +1 -1
  184. package/dist/core/screen/hooks/useOnClickOutside.js.map +1 -1
  185. package/dist/core/screen/screenByType.d.ts +2 -0
  186. package/dist/core/screen/screenByType.d.ts.map +1 -1
  187. package/dist/core/screen/screenByType.js +5 -1
  188. package/dist/core/screen/screenByType.js.map +1 -1
  189. package/dist/core/screen/state/hooks/useSetScreen.d.ts +3 -0
  190. package/dist/core/screen/state/hooks/useSetScreen.d.ts.map +1 -1
  191. package/dist/core/screen/state/hooks/useSetScreen.js +43 -11
  192. package/dist/core/screen/state/hooks/useSetScreen.js.map +1 -1
  193. package/dist/core/state/enabledTradeModesAtom.d.ts.map +1 -1
  194. package/dist/core/state/enabledTradeModesAtom.js.map +1 -1
  195. package/dist/core/swapDetails/priceImpact.d.ts.map +1 -1
  196. package/dist/core/swapDetails/priceImpact.js +7 -3
  197. package/dist/core/swapDetails/priceImpact.js.map +1 -1
  198. package/dist/events/getters/settings.d.ts.map +1 -1
  199. package/dist/events/getters/settings.js +7 -1
  200. package/dist/events/getters/settings.js.map +1 -1
  201. package/dist/events/types/common.d.ts +6 -1
  202. package/dist/events/types/common.d.ts.map +1 -1
  203. package/dist/events/types/settings.d.ts +2 -1
  204. package/dist/events/types/settings.d.ts.map +1 -1
  205. package/dist/hooks/gas/useGasPrices.d.ts.map +1 -1
  206. package/dist/hooks/gas/useGasPrices.js.map +1 -1
  207. package/dist/hooks/otc/mutations/useFillOrder.js +1 -2
  208. package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
  209. package/dist/hooks/swap/prices/constants.d.ts +3 -0
  210. package/dist/hooks/swap/prices/constants.d.ts.map +1 -0
  211. package/dist/hooks/swap/prices/constants.js +5 -0
  212. package/dist/hooks/swap/prices/constants.js.map +1 -0
  213. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.d.ts +6 -0
  214. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.d.ts.map +1 -0
  215. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.js +36 -0
  216. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.js.map +1 -0
  217. package/dist/hooks/swap/prices/delta/bridge/utils.d.ts +7 -0
  218. package/dist/hooks/swap/prices/delta/bridge/utils.d.ts.map +1 -1
  219. package/dist/hooks/swap/prices/delta/bridge/utils.js +35 -1
  220. package/dist/hooks/swap/prices/delta/bridge/utils.js.map +1 -1
  221. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  222. package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/types.d.ts +13 -0
  223. package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/types.d.ts.map +1 -0
  224. package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/useBridgeProtocols.d.ts +3 -0
  225. package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/useBridgeProtocols.d.ts.map +1 -0
  226. package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/useBridgeProtocols.js +75 -0
  227. package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/useBridgeProtocols.js.map +1 -0
  228. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +2 -2
  229. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
  230. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +3 -1
  231. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  232. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
  233. package/dist/hooks/swap/prices/market/mutations/useBuildTx.d.ts.map +1 -1
  234. package/dist/hooks/swap/prices/market/mutations/useBuildTx.js.map +1 -1
  235. package/dist/hooks/swap/prices/types.d.ts +1 -0
  236. package/dist/hooks/swap/prices/types.d.ts.map +1 -1
  237. package/dist/hooks/swap/prices/useSwapPrices.d.ts +5 -0
  238. package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
  239. package/dist/hooks/swap/prices/useSwapPrices.js +119 -94
  240. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  241. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  242. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +15 -1
  243. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  244. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  245. package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
  246. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
  247. package/dist/hooks/tokens/prices/queries.d.ts.map +1 -1
  248. package/dist/hooks/tokens/prices/queries.js.map +1 -1
  249. package/dist/hooks/tokens/useAllTokensWithFilter.d.ts.map +1 -1
  250. package/dist/hooks/tokens/useAllTokensWithFilter.js +11 -6
  251. package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
  252. package/dist/hooks/useBridgeProtocols.d.ts +3 -0
  253. package/dist/hooks/useBridgeProtocols.d.ts.map +1 -0
  254. package/dist/hooks/useBridgeProtocols.js +35 -0
  255. package/dist/hooks/useBridgeProtocols.js.map +1 -0
  256. package/dist/hooks/useClickOutside.js.map +1 -1
  257. package/dist/lib/constants/storage.d.ts +2 -0
  258. package/dist/lib/constants/storage.d.ts.map +1 -0
  259. package/dist/lib/constants/storage.js +4 -0
  260. package/dist/lib/constants/storage.js.map +1 -0
  261. package/dist/lib/constants/weth.js.map +1 -1
  262. package/dist/lib/utils/priceImpact.d.ts +5 -2
  263. package/dist/lib/utils/priceImpact.d.ts.map +1 -1
  264. package/dist/lib/utils/priceImpact.js +8 -5
  265. package/dist/lib/utils/priceImpact.js.map +1 -1
  266. package/dist/lib/utils/tuple.d.ts +1 -0
  267. package/dist/lib/utils/tuple.d.ts.map +1 -1
  268. package/dist/lib/utils/tuple.js +5 -1
  269. package/dist/lib/utils/tuple.js.map +1 -1
  270. package/dist/lib/web3/privy/config.js +1 -1
  271. package/dist/lib/web3/wagmi/config.js +1 -1
  272. package/dist/styles.css +58 -3
  273. package/dist/tokens/queries.d.ts.map +1 -1
  274. package/dist/tokens/queries.js.map +1 -1
  275. package/dist/tokens/state/importedTokensAtom.d.ts.map +1 -1
  276. package/dist/tokens/state/importedTokensAtom.js +4 -1
  277. package/dist/tokens/state/importedTokensAtom.js.map +1 -1
  278. package/dist/tokens/utils/sorting.d.ts +5 -0
  279. package/dist/tokens/utils/sorting.d.ts.map +1 -1
  280. package/dist/tokens/utils/sorting.js +34 -1
  281. package/dist/tokens/utils/sorting.js.map +1 -1
  282. package/dist/transactions/state/transactionsAtom.d.ts.map +1 -1
  283. package/dist/transactions/state/transactionsAtom.js +2 -1
  284. package/dist/transactions/state/transactionsAtom.js.map +1 -1
  285. package/package.json +2 -2
@@ -0,0 +1,219 @@
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import { d as distExports } from '../../../_virtual/index.js';
3
+ import { Switch } from '../../ui/switch.js';
4
+ import { emptyArray } from '../../../lib/constants/index.js';
5
+ import { cn } from '../../../lib/utils/index.js';
6
+
7
+ const BridgeProtocolsList = (t0) => {
8
+ const $ = distExports.c(28);
9
+ const {
10
+ bridgeProtocols,
11
+ disabledBridges,
12
+ onDisabledBridgesChange
13
+ } = t0;
14
+ let t1;
15
+ if ($[0] !== disabledBridges) {
16
+ t1 = new Set(disabledBridges);
17
+ $[0] = disabledBridges;
18
+ $[1] = t1;
19
+ } else {
20
+ t1 = $[1];
21
+ }
22
+ const disabledBridgesSet = t1;
23
+ let t2;
24
+ if ($[2] !== bridgeProtocols) {
25
+ t2 = bridgeProtocols.map(_temp);
26
+ $[2] = bridgeProtocols;
27
+ $[3] = t2;
28
+ } else {
29
+ t2 = $[3];
30
+ }
31
+ const allProtocols = t2;
32
+ const isAllEnabled = disabledBridges.length === 0;
33
+ let t3;
34
+ if ($[4] !== allProtocols || $[5] !== onDisabledBridgesChange) {
35
+ t3 = (checked) => {
36
+ onDisabledBridgesChange(checked ? emptyArray : allProtocols);
37
+ };
38
+ $[4] = allProtocols;
39
+ $[5] = onDisabledBridgesChange;
40
+ $[6] = t3;
41
+ } else {
42
+ t3 = $[6];
43
+ }
44
+ const onEnableAllChange = t3;
45
+ let t4;
46
+ if ($[7] !== disabledBridges || $[8] !== onDisabledBridgesChange) {
47
+ t4 = (checked_0, protocol_0) => {
48
+ const disabledBridgesUpdate = checked_0 ? disabledBridges.filter((b) => b !== protocol_0) : [...disabledBridges, protocol_0];
49
+ onDisabledBridgesChange(disabledBridgesUpdate);
50
+ };
51
+ $[7] = disabledBridges;
52
+ $[8] = onDisabledBridgesChange;
53
+ $[9] = t4;
54
+ } else {
55
+ t4 = $[9];
56
+ }
57
+ const onItemChange = t4;
58
+ let t5;
59
+ if ($[10] !== bridgeProtocols.length) {
60
+ t5 = /* @__PURE__ */ jsxs("div", { className: "text-sm dark:text-contrast-7", children: [
61
+ "Enable All Bridges (",
62
+ bridgeProtocols.length,
63
+ ")"
64
+ ] });
65
+ $[10] = bridgeProtocols.length;
66
+ $[11] = t5;
67
+ } else {
68
+ t5 = $[11];
69
+ }
70
+ let t6;
71
+ if ($[12] !== isAllEnabled || $[13] !== onEnableAllChange) {
72
+ t6 = /* @__PURE__ */ jsx(Switch, { checked: isAllEnabled, onCheckedChange: onEnableAllChange, className: "cursor-pointer" });
73
+ $[12] = isAllEnabled;
74
+ $[13] = onEnableAllChange;
75
+ $[14] = t6;
76
+ } else {
77
+ t6 = $[14];
78
+ }
79
+ let t7;
80
+ if ($[15] !== t5 || $[16] !== t6) {
81
+ t7 = /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between gap-2 py-4 border-b border-b-contrast-7 dark:border-b-contrast-3", children: [
82
+ t5,
83
+ t6
84
+ ] });
85
+ $[15] = t5;
86
+ $[16] = t6;
87
+ $[17] = t7;
88
+ } else {
89
+ t7 = $[17];
90
+ }
91
+ let t8;
92
+ if ($[18] !== bridgeProtocols || $[19] !== disabledBridgesSet || $[20] !== onItemChange) {
93
+ let t92;
94
+ if ($[22] !== disabledBridgesSet || $[23] !== onItemChange) {
95
+ t92 = (t10) => {
96
+ const {
97
+ protocol: protocol_1,
98
+ displayName,
99
+ icon
100
+ } = t10;
101
+ return /* @__PURE__ */ jsx(ProtocolItem, { label: /* @__PURE__ */ jsx(BridgeNameWithIcon, { icon, displayName }), checked: !disabledBridgesSet.has(protocol_1), onCheckedChange: (checked_1) => {
102
+ onItemChange(checked_1, protocol_1);
103
+ } }, protocol_1);
104
+ };
105
+ $[22] = disabledBridgesSet;
106
+ $[23] = onItemChange;
107
+ $[24] = t92;
108
+ } else {
109
+ t92 = $[24];
110
+ }
111
+ t8 = bridgeProtocols.map(t92);
112
+ $[18] = bridgeProtocols;
113
+ $[19] = disabledBridgesSet;
114
+ $[20] = onItemChange;
115
+ $[21] = t8;
116
+ } else {
117
+ t8 = $[21];
118
+ }
119
+ let t9;
120
+ if ($[25] !== t7 || $[26] !== t8) {
121
+ t9 = /* @__PURE__ */ jsxs("div", { className: "px-6 h-[420px] overflow-auto", children: [
122
+ t7,
123
+ t8
124
+ ] });
125
+ $[25] = t7;
126
+ $[26] = t8;
127
+ $[27] = t9;
128
+ } else {
129
+ t9 = $[27];
130
+ }
131
+ return t9;
132
+ };
133
+ const ProtocolItem = (t0) => {
134
+ const $ = distExports.c(11);
135
+ const {
136
+ label,
137
+ checked,
138
+ onCheckedChange,
139
+ classes
140
+ } = t0;
141
+ const t1 = classes?.root;
142
+ let t2;
143
+ if ($[0] !== t1) {
144
+ t2 = cn("flex items-center justify-between gap-2 py-4 border-b border-b-contrast-7 dark:border-b-contrast-3", t1);
145
+ $[0] = t1;
146
+ $[1] = t2;
147
+ } else {
148
+ t2 = $[1];
149
+ }
150
+ let t3;
151
+ if ($[2] !== label) {
152
+ t3 = /* @__PURE__ */ jsx("div", { className: "text-sm dark:text-contrast-7", children: label });
153
+ $[2] = label;
154
+ $[3] = t3;
155
+ } else {
156
+ t3 = $[3];
157
+ }
158
+ let t4;
159
+ if ($[4] !== checked || $[5] !== onCheckedChange) {
160
+ t4 = /* @__PURE__ */ jsx(Switch, { checked, onCheckedChange, className: "cursor-pointer" });
161
+ $[4] = checked;
162
+ $[5] = onCheckedChange;
163
+ $[6] = t4;
164
+ } else {
165
+ t4 = $[6];
166
+ }
167
+ let t5;
168
+ if ($[7] !== t2 || $[8] !== t3 || $[9] !== t4) {
169
+ t5 = /* @__PURE__ */ jsxs("div", { className: t2, children: [
170
+ t3,
171
+ t4
172
+ ] });
173
+ $[7] = t2;
174
+ $[8] = t3;
175
+ $[9] = t4;
176
+ $[10] = t5;
177
+ } else {
178
+ t5 = $[10];
179
+ }
180
+ return t5;
181
+ };
182
+ const BridgeNameWithIcon = (t0) => {
183
+ const $ = distExports.c(6);
184
+ const {
185
+ icon,
186
+ displayName
187
+ } = t0;
188
+ let t1;
189
+ if ($[0] !== displayName || $[1] !== icon) {
190
+ t1 = /* @__PURE__ */ jsx("img", { src: icon, alt: displayName, className: "size-5.5" });
191
+ $[0] = displayName;
192
+ $[1] = icon;
193
+ $[2] = t1;
194
+ } else {
195
+ t1 = $[2];
196
+ }
197
+ let t2;
198
+ if ($[3] !== displayName || $[4] !== t1) {
199
+ t2 = /* @__PURE__ */ jsxs("div", { className: "text-sm dark:text-contrast-7 flex items-center gap-2", children: [
200
+ t1,
201
+ displayName
202
+ ] });
203
+ $[3] = displayName;
204
+ $[4] = t1;
205
+ $[5] = t2;
206
+ } else {
207
+ t2 = $[5];
208
+ }
209
+ return t2;
210
+ };
211
+ function _temp(t0) {
212
+ const {
213
+ protocol
214
+ } = t0;
215
+ return protocol;
216
+ }
217
+
218
+ export { BridgeProtocolsList };
219
+ //# sourceMappingURL=BridgeProtocolsList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BridgeProtocolsList.js","sources":["../../../../src/components/widget/BridgeList/BridgeProtocolsList.tsx"],"sourcesContent":["import { Switch } from \"@/components/ui/switch\";\nimport { emptyArray } from \"@/lib/constants\";\nimport { cn } from \"@/lib/utils\";\nimport type { WithClasses } from \"@/types/withClasses\";\nimport type { BridgeProtocolResponse } from \"@velora-dex/sdk\";\nimport type { NonEmptyArray } from \"ts-essentials\";\nimport type { DisabledBridges } from \"../TradeParameters/state/bridgePreferences/types\";\n\nexport const BridgeProtocolsList = ({\n bridgeProtocols,\n disabledBridges,\n onDisabledBridgesChange,\n}: {\n bridgeProtocols: NonEmptyArray<BridgeProtocolResponse>;\n disabledBridges: DisabledBridges;\n onDisabledBridgesChange: (bridges: DisabledBridges) => void;\n}) => {\n // faster lookup when checking individual items\n const disabledBridgesSet = new Set(disabledBridges);\n\n const allProtocols = bridgeProtocols.map(({ protocol }) => protocol);\n const isAllEnabled = disabledBridges.length === 0;\n\n const onEnableAllChange = (checked: boolean) => {\n onDisabledBridgesChange(checked ? emptyArray : allProtocols);\n };\n\n const onItemChange = (checked: boolean, protocol: string) => {\n const disabledBridgesUpdate = checked\n ? disabledBridges.filter((b) => b !== protocol)\n : [...disabledBridges, protocol];\n onDisabledBridgesChange(disabledBridgesUpdate);\n };\n\n return (\n <div className=\"px-6 h-[420px] overflow-auto\">\n <div className=\"flex items-center justify-between gap-2 py-4 border-b border-b-contrast-7 dark:border-b-contrast-3\">\n <div className=\"text-sm dark:text-contrast-7\">\n Enable All Bridges ({bridgeProtocols.length})\n </div>\n <Switch\n checked={isAllEnabled}\n onCheckedChange={onEnableAllChange}\n className=\"cursor-pointer\"\n />\n </div>\n {bridgeProtocols.map(({ protocol, displayName, icon }) => (\n <ProtocolItem\n key={protocol}\n label={<BridgeNameWithIcon icon={icon} displayName={displayName} />}\n checked={!disabledBridgesSet.has(protocol)}\n onCheckedChange={(checked) => {\n onItemChange(checked, protocol);\n }}\n />\n ))}\n </div>\n );\n};\n\nconst ProtocolItem = ({\n label,\n checked,\n onCheckedChange,\n classes,\n}: {\n label: React.ReactNode;\n checked: boolean;\n onCheckedChange: (checked: boolean) => void;\n} & WithClasses<\"root\">) => {\n return (\n <div\n className={cn(\n \"flex items-center justify-between gap-2 py-4 border-b border-b-contrast-7 dark:border-b-contrast-3\",\n classes?.root\n )}\n >\n <div className=\"text-sm dark:text-contrast-7\">{label}</div>\n <Switch\n checked={checked}\n onCheckedChange={onCheckedChange}\n className=\"cursor-pointer\"\n />\n </div>\n );\n};\n\nconst BridgeNameWithIcon = ({\n icon,\n displayName,\n}: Pick<BridgeProtocolResponse, \"icon\" | \"displayName\">) => {\n return (\n <div className=\"text-sm dark:text-contrast-7 flex items-center gap-2\">\n <img src={icon} alt={displayName} className=\"size-5.5\" />\n {displayName}\n </div>\n );\n};\n"],"names":["BridgeProtocolsList","t0","$","_c","bridgeProtocols","disabledBridges","onDisabledBridgesChange","t1","Set","disabledBridgesSet","t2","map","_temp","allProtocols","isAllEnabled","length","t3","checked","emptyArray","onEnableAllChange","t4","checked_0","protocol_0","disabledBridgesUpdate","filter","b","protocol","onItemChange","t5","t6","t7","t8","t9","t10","protocol_1","displayName","icon","has","checked_1","ProtocolItem","label","onCheckedChange","classes","root","cn","BridgeNameWithIcon"],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { BridgeListItemProps } from './types';
2
+ import { WithClasses } from '../../../types/withClasses';
3
+ type BridgesListProps = {
4
+ bridges: BridgeListItemProps[];
5
+ totalLength?: number;
6
+ showViewAllButton?: boolean;
7
+ isLoading?: boolean;
8
+ onViewAllClick?: () => void;
9
+ } & WithClasses<"root">;
10
+ export declare const BridgesList: ({ bridges, totalLength, showViewAllButton: _showViewAllButton, isLoading, onViewAllClick, classes, }: BridgesListProps) => import("react/jsx-runtime").JSX.Element;
11
+ export {};
12
+ //# sourceMappingURL=BridgesList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BridgesList.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/BridgeList/BridgesList.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGvD,KAAK,gBAAgB,GAAG;IACtB,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;CAC7B,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAExB,eAAO,MAAM,WAAW,GAAI,sGAOzB,gBAAgB,4CAgClB,CAAC"}
@@ -0,0 +1,76 @@
1
+ import { jsx, jsxs } from 'react/jsx-runtime';
2
+ import { d as distExports } from '../../../_virtual/index.js';
3
+ import { Button } from '../../ui/button.js';
4
+ import { BridgeListItem } from './BridgeListItem.js';
5
+ import { Skeleton } from '../../ui/skeleton.js';
6
+
7
+ const BridgesList = (t0) => {
8
+ const $ = distExports.c(13);
9
+ const {
10
+ bridges,
11
+ totalLength,
12
+ showViewAllButton: t1,
13
+ isLoading,
14
+ onViewAllClick,
15
+ classes
16
+ } = t0;
17
+ const _showViewAllButton = t1 === void 0 ? true : t1;
18
+ const showViewAllButton = _showViewAllButton && onViewAllClick && !isLoading && totalLength !== void 0 && totalLength > bridges.length;
19
+ const t2 = classes?.root;
20
+ let t3;
21
+ if ($[0] !== bridges || $[1] !== isLoading) {
22
+ t3 = isLoading && !bridges.length ? Array.from({
23
+ length: 3
24
+ }).map(_temp) : bridges.map(_temp2);
25
+ $[0] = bridges;
26
+ $[1] = isLoading;
27
+ $[2] = t3;
28
+ } else {
29
+ t3 = $[2];
30
+ }
31
+ let t4;
32
+ if ($[3] !== t3) {
33
+ t4 = /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-4 pb-2", children: t3 });
34
+ $[3] = t3;
35
+ $[4] = t4;
36
+ } else {
37
+ t4 = $[4];
38
+ }
39
+ let t5;
40
+ if ($[5] !== onViewAllClick || $[6] !== showViewAllButton || $[7] !== totalLength) {
41
+ t5 = showViewAllButton && /* @__PURE__ */ jsx("div", { className: "flex justify-center", children: /* @__PURE__ */ jsxs(Button, { variant: "link", className: "underline text-primary-azul-1 text-xs h-min w-min", onClick: onViewAllClick, children: [
42
+ "View All (",
43
+ totalLength,
44
+ ")"
45
+ ] }) });
46
+ $[5] = onViewAllClick;
47
+ $[6] = showViewAllButton;
48
+ $[7] = totalLength;
49
+ $[8] = t5;
50
+ } else {
51
+ t5 = $[8];
52
+ }
53
+ let t6;
54
+ if ($[9] !== t2 || $[10] !== t4 || $[11] !== t5) {
55
+ t6 = /* @__PURE__ */ jsxs("div", { className: t2, children: [
56
+ t4,
57
+ t5
58
+ ] });
59
+ $[9] = t2;
60
+ $[10] = t4;
61
+ $[11] = t5;
62
+ $[12] = t6;
63
+ } else {
64
+ t6 = $[12];
65
+ }
66
+ return t6;
67
+ };
68
+ function _temp(_, i) {
69
+ return /* @__PURE__ */ jsx(Skeleton, { className: "h-[100px]" }, i);
70
+ }
71
+ function _temp2(props) {
72
+ return /* @__PURE__ */ jsx(BridgeListItem, { ...props }, props.protocolName);
73
+ }
74
+
75
+ export { BridgesList };
76
+ //# sourceMappingURL=BridgesList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BridgesList.js","sources":["../../../../src/components/widget/BridgeList/BridgesList.tsx"],"sourcesContent":["import { Button } from \"@/components/ui/button\";\nimport { BridgeListItem } from \"./BridgeListItem\";\nimport type { BridgeListItemProps } from \"./types\";\nimport type { WithClasses } from \"@/types/withClasses\";\nimport { Skeleton } from \"@/components/ui/skeleton\";\n\ntype BridgesListProps = {\n bridges: BridgeListItemProps[];\n totalLength?: number;\n showViewAllButton?: boolean;\n isLoading?: boolean;\n onViewAllClick?: () => void;\n} & WithClasses<\"root\">;\n\nexport const BridgesList = ({\n bridges,\n totalLength,\n showViewAllButton: _showViewAllButton = true,\n isLoading,\n onViewAllClick,\n classes,\n}: BridgesListProps) => {\n const showViewAllButton =\n _showViewAllButton &&\n onViewAllClick &&\n !isLoading &&\n totalLength !== undefined &&\n totalLength > bridges.length;\n\n return (\n <div className={classes?.root}>\n <div className=\"flex flex-col gap-4 pb-2\">\n {isLoading && !bridges.length\n ? Array.from({ length: 3 }).map((_, i) => (\n <Skeleton className=\"h-[100px]\" key={i} />\n ))\n : bridges.map((props) => (\n <BridgeListItem key={props.protocolName} {...props} />\n ))}\n </div>\n {showViewAllButton && (\n <div className=\"flex justify-center\">\n <Button\n variant=\"link\"\n className=\"underline text-primary-azul-1 text-xs h-min w-min\"\n onClick={onViewAllClick}\n >\n View All ({totalLength})\n </Button>\n </div>\n )}\n </div>\n );\n};\n"],"names":["BridgesList","t0","$","_c","bridges","totalLength","showViewAllButton","t1","isLoading","onViewAllClick","classes","_showViewAllButton","undefined","length","t2","root","t3","Array","from","map","_temp","_temp2","t4","t5","t6","_","i","props","protocolName"],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { BridgePrice } from '@velora-dex/sdk';
2
+ import { BridgeListItemProps } from './types';
3
+ export declare function useBridgeListItems({ bridgePrice, prioritize, maxItems, }: {
4
+ bridgePrice?: BridgePrice;
5
+ /**
6
+ @true [recommended, selected, bestReturn, fastest, others...]
7
+ @false [recommended, others...]
8
+ @default false
9
+ */
10
+ prioritize?: boolean;
11
+ maxItems?: number;
12
+ }): {
13
+ displayedBridges: BridgeListItemProps[];
14
+ allBridges: BridgeListItemProps[];
15
+ selectedBridge?: BridgeListItemProps;
16
+ };
17
+ //# sourceMappingURL=hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/BridgeList/hooks.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAmB,MAAM,iBAAiB,CAAC;AAGpE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAOnD,wBAAgB,kBAAkB,CAAC,EACjC,WAAW,EACX,UAAkB,EAClB,QAAQ,GACT,EAAE;IACD,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG;IACF,gBAAgB,EAAE,mBAAmB,EAAE,CAAC;IACxC,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC,CA2CA"}
@@ -0,0 +1,259 @@
1
+ import { d as distExports } from '../../../_virtual/index.js';
2
+ import { useGetBridgeProtocolsMap } from '../../../hooks/useBridgeProtocols.js';
3
+ import { useWidgetTokens } from '../../../core/inputs/state/common.js';
4
+ import { emptyArray } from '../../../lib/constants/index.js';
5
+ import { useSetAtom } from '../../../core/store.js';
6
+ import { protocolNameAtom } from '../TradeParameters/state/bridgePreferences/protocolNameAtom.js';
7
+ import { useSelectedBridgePrice } from '../../../hooks/swap/prices/delta/bridge/useSelectedBridgePrice.js';
8
+
9
+ function useBridgeListItems(t0) {
10
+ const $ = distExports.c(20);
11
+ const {
12
+ bridgePrice,
13
+ prioritize: t1,
14
+ maxItems
15
+ } = t0;
16
+ const prioritize = t1 === void 0 ? false : t1;
17
+ const {
18
+ data: bridgeProtocols
19
+ } = useGetBridgeProtocolsMap();
20
+ const {
21
+ tokenFrom,
22
+ tokenTo
23
+ } = useWidgetTokens("swap");
24
+ const setProtocolName = useSetAtom(protocolNameAtom);
25
+ let t2;
26
+ if ($[0] !== bridgePrice) {
27
+ t2 = {
28
+ price: bridgePrice
29
+ };
30
+ $[0] = bridgePrice;
31
+ $[1] = t2;
32
+ } else {
33
+ t2 = $[1];
34
+ }
35
+ const selectedBridgePrice = useSelectedBridgePrice(t2);
36
+ if (!bridgePrice || !bridgeProtocols || !tokenTo || !selectedBridgePrice) {
37
+ let t32;
38
+ if ($[2] === Symbol.for("react.memo_cache_sentinel")) {
39
+ t32 = {
40
+ displayedBridges: emptyArray,
41
+ allBridges: emptyArray
42
+ };
43
+ $[2] = t32;
44
+ } else {
45
+ t32 = $[2];
46
+ }
47
+ return t32;
48
+ }
49
+ let t3;
50
+ if ($[3] !== selectedBridgePrice.bridgeInfo.protocolName || $[4] !== setProtocolName || $[5] !== tokenFrom || $[6] !== tokenTo) {
51
+ t3 = (bridge) => {
52
+ const loweredProtocolName = bridge.protocolName.toLowerCase();
53
+ const loweredSelectedProtocolName = selectedBridgePrice.bridgeInfo.protocolName.toLowerCase();
54
+ const onClick = () => {
55
+ setProtocolName(loweredProtocolName);
56
+ };
57
+ const isSelected = loweredProtocolName === loweredSelectedProtocolName;
58
+ return {
59
+ ...bridge,
60
+ onClick,
61
+ tokenFrom,
62
+ tokenTo,
63
+ isSelected
64
+ };
65
+ };
66
+ $[3] = selectedBridgePrice.bridgeInfo.protocolName;
67
+ $[4] = setProtocolName;
68
+ $[5] = tokenFrom;
69
+ $[6] = tokenTo;
70
+ $[7] = t3;
71
+ } else {
72
+ t3 = $[7];
73
+ }
74
+ const extendBridge = t3;
75
+ let selectedBridge;
76
+ let t4;
77
+ if ($[8] !== bridgePrice || $[9] !== bridgeProtocols || $[10] !== extendBridge || $[11] !== maxItems || $[12] !== prioritize || $[13] !== selectedBridgePrice) {
78
+ selectedBridge = extendBridge(pickBridgeProps({
79
+ srcUSD: bridgePrice.srcUSD,
80
+ srcAmount: bridgePrice.srcAmount,
81
+ availableBridge: selectedBridgePrice,
82
+ bridgeProtocols
83
+ }));
84
+ t4 = getDisplayedBridges({
85
+ prioritize,
86
+ bridgePrice,
87
+ bridgeProtocols,
88
+ extendBridge,
89
+ selectedBridge,
90
+ maxItems
91
+ });
92
+ $[8] = bridgePrice;
93
+ $[9] = bridgeProtocols;
94
+ $[10] = extendBridge;
95
+ $[11] = maxItems;
96
+ $[12] = prioritize;
97
+ $[13] = selectedBridgePrice;
98
+ $[14] = selectedBridge;
99
+ $[15] = t4;
100
+ } else {
101
+ selectedBridge = $[14];
102
+ t4 = $[15];
103
+ }
104
+ const {
105
+ displayedBridges,
106
+ allBridges
107
+ } = t4;
108
+ let t5;
109
+ if ($[16] !== allBridges || $[17] !== displayedBridges || $[18] !== selectedBridge) {
110
+ t5 = {
111
+ displayedBridges,
112
+ allBridges,
113
+ selectedBridge
114
+ };
115
+ $[16] = allBridges;
116
+ $[17] = displayedBridges;
117
+ $[18] = selectedBridge;
118
+ $[19] = t5;
119
+ } else {
120
+ t5 = $[19];
121
+ }
122
+ return t5;
123
+ }
124
+ function getDisplayedBridges({
125
+ prioritize,
126
+ bridgePrice,
127
+ bridgeProtocols,
128
+ extendBridge,
129
+ selectedBridge,
130
+ maxItems
131
+ }) {
132
+ if (prioritize) {
133
+ return getBridgesWithPriority({
134
+ bridgePrice,
135
+ bridgeProtocols,
136
+ extendBridge,
137
+ selectedBridge,
138
+ maxItems
139
+ });
140
+ }
141
+ return getAllBridges({
142
+ bridgePrice,
143
+ bridgeProtocols,
144
+ extendBridge,
145
+ maxItems
146
+ });
147
+ }
148
+ function getBridgesWithPriority({
149
+ bridgePrice,
150
+ bridgeProtocols,
151
+ extendBridge,
152
+ selectedBridge,
153
+ maxItems
154
+ }) {
155
+ const {
156
+ srcUSD,
157
+ srcAmount,
158
+ availableBridges
159
+ } = bridgePrice;
160
+ const displayedBridges = [selectedBridge];
161
+ const addedBridgesSet = /* @__PURE__ */ new Set([selectedBridge.protocolName.toLowerCase()]);
162
+ for (const availableBridge of availableBridges) {
163
+ const loweredProtocolName = availableBridge.bridgeInfo.protocolName.toLowerCase();
164
+ if (addedBridgesSet.has(loweredProtocolName)) continue;
165
+ addedBridgesSet.add(loweredProtocolName);
166
+ const bridgeProps = pickBridgeProps({
167
+ srcUSD,
168
+ srcAmount,
169
+ availableBridge,
170
+ bridgeProtocols
171
+ });
172
+ displayedBridges.push(extendBridge(bridgeProps));
173
+ }
174
+ const sorted = displayedBridges.sort(sortBridgesByPriority);
175
+ return {
176
+ displayedBridges: maxItems ? sorted.slice(0, maxItems) : sorted,
177
+ allBridges: sorted
178
+ };
179
+ }
180
+ function getAllBridges({
181
+ bridgePrice,
182
+ bridgeProtocols,
183
+ extendBridge,
184
+ maxItems
185
+ }) {
186
+ const {
187
+ srcUSD,
188
+ srcAmount,
189
+ availableBridges
190
+ } = bridgePrice;
191
+ const displayedBridges = [];
192
+ const addedBridgesSet = /* @__PURE__ */ new Set();
193
+ for (const availableBridge of availableBridges) {
194
+ const {
195
+ bridgeInfo
196
+ } = availableBridge;
197
+ const loweredProtocolName = bridgeInfo.protocolName.toLowerCase();
198
+ if (addedBridgesSet.has(loweredProtocolName)) continue;
199
+ const bridgeProps = pickBridgeProps({
200
+ srcUSD,
201
+ srcAmount,
202
+ availableBridge,
203
+ bridgeProtocols
204
+ });
205
+ addedBridgesSet.add(loweredProtocolName);
206
+ displayedBridges.push(extendBridge(bridgeProps));
207
+ }
208
+ const sorted = displayedBridges.sort(sortBridgesRecommendedFirst);
209
+ return {
210
+ displayedBridges: maxItems ? sorted.slice(0, maxItems) : sorted,
211
+ allBridges: sorted
212
+ };
213
+ }
214
+ function pickBridgeProps({
215
+ srcUSD,
216
+ srcAmount,
217
+ availableBridge,
218
+ bridgeProtocols
219
+ }) {
220
+ const {
221
+ receivedDestUSD,
222
+ bridge,
223
+ bridgeInfo
224
+ } = availableBridge;
225
+ const bridgeProtocol = bridgeProtocols[bridgeInfo.protocolName.toLowerCase()];
226
+ return {
227
+ srcUSD,
228
+ destUSD: receivedDestUSD,
229
+ srcAmount,
230
+ destAmount: bridgeInfo.destAmountAfterBridge,
231
+ protocolDisplayName: bridgeProtocol?.displayName,
232
+ protocolIcon: bridgeProtocol?.icon,
233
+ protocolSelector: bridge.protocolSelector,
234
+ protocolName: bridgeInfo.protocolName,
235
+ estimatedTimeMs: bridgeInfo.estimatedTimeMs,
236
+ recommended: bridgeInfo.recommended,
237
+ bestReturn: bridgeInfo.bestReturn,
238
+ fastest: bridgeInfo.fastest
239
+ };
240
+ }
241
+ function sortBridgesByPriority(a, b) {
242
+ if (a.recommended && !b.recommended) return -1;
243
+ if (!a.recommended && b.recommended) return 1;
244
+ if (a.isSelected && !b.isSelected) return -1;
245
+ if (!a.isSelected && b.isSelected) return 1;
246
+ if (a.bestReturn && !b.bestReturn) return -1;
247
+ if (!a.bestReturn && b.bestReturn) return 1;
248
+ if (a.fastest && !b.fastest) return -1;
249
+ if (!a.fastest && b.fastest) return 1;
250
+ return 0;
251
+ }
252
+ function sortBridgesRecommendedFirst(a, b) {
253
+ if (a.recommended && !b.recommended) return -1;
254
+ if (!a.recommended && b.recommended) return 1;
255
+ return 0;
256
+ }
257
+
258
+ export { useBridgeListItems };
259
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.js","sources":["../../../../src/components/widget/BridgeList/hooks.tsx"],"sourcesContent":["import type { BridgePrice, AvailableBridge } from \"@velora-dex/sdk\";\nimport { useGetBridgeProtocolsMap } from \"@/hooks/useBridgeProtocols\";\nimport { useWidgetTokens } from \"@/core/inputs/state/common\";\nimport type { BridgeListItemProps } from \"./types\";\nimport { emptyArray } from \"@/lib/constants\";\nimport type { BridgeProtocolsMapping } from \"@/hooks/swap/prices/delta/queries/bridgeProtocols/types\";\nimport { useSetAtom } from \"@/core/store\";\nimport { protocolNameAtom } from \"../TradeParameters/state/bridgePreferences/protocolNameAtom\";\nimport { useSelectedBridgePrice } from \"@/hooks/swap/prices/delta/bridge/useSelectedBridgePrice\";\n\nexport function useBridgeListItems({\n bridgePrice,\n prioritize = false,\n maxItems,\n}: {\n bridgePrice?: BridgePrice;\n /**\n @true [recommended, selected, bestReturn, fastest, others...]\n @false [recommended, others...]\n @default false\n */\n prioritize?: boolean;\n maxItems?: number;\n}): {\n displayedBridges: BridgeListItemProps[];\n allBridges: BridgeListItemProps[];\n selectedBridge?: BridgeListItemProps;\n} {\n const { data: bridgeProtocols } = useGetBridgeProtocolsMap();\n const { tokenFrom, tokenTo } = useWidgetTokens(\"swap\");\n\n const setProtocolName = useSetAtom(protocolNameAtom);\n const selectedBridgePrice = useSelectedBridgePrice({ price: bridgePrice });\n\n if (!bridgePrice || !bridgeProtocols || !tokenTo || !selectedBridgePrice)\n return { displayedBridges: emptyArray, allBridges: emptyArray };\n\n const extendBridge = (\n bridge: BridgeListItemBaseProps\n ): BridgeListItemProps => {\n const loweredProtocolName = bridge.protocolName.toLowerCase();\n const loweredSelectedProtocolName =\n selectedBridgePrice.bridgeInfo.protocolName.toLowerCase();\n\n const onClick = () => {\n setProtocolName(loweredProtocolName);\n };\n const isSelected = loweredProtocolName === loweredSelectedProtocolName;\n return { ...bridge, onClick, tokenFrom, tokenTo, isSelected };\n };\n\n const selectedBridge = extendBridge(\n pickBridgeProps({\n srcUSD: bridgePrice.srcUSD,\n srcAmount: bridgePrice.srcAmount,\n availableBridge: selectedBridgePrice,\n bridgeProtocols,\n })\n );\n\n const { displayedBridges, allBridges } = getDisplayedBridges({\n prioritize,\n bridgePrice,\n bridgeProtocols,\n extendBridge,\n selectedBridge,\n maxItems,\n });\n\n return { displayedBridges, allBridges, selectedBridge };\n}\n\n// BridgeListItemProps without stateful fields\ntype BridgeListItemBaseProps = Omit<\n BridgeListItemProps,\n \"tokenFrom\" | \"tokenTo\" | \"isSelected\" | \"onClick\"\n>;\n\ntype GetDisplayedBridgesParams = {\n prioritize: boolean;\n bridgePrice: BridgePrice;\n bridgeProtocols: BridgeProtocolsMapping;\n extendBridge: (bridge: BridgeListItemBaseProps) => BridgeListItemProps;\n selectedBridge: BridgeListItemProps;\n maxItems?: number;\n};\n\nfunction getDisplayedBridges({\n prioritize,\n bridgePrice,\n bridgeProtocols,\n extendBridge,\n selectedBridge,\n maxItems,\n}: GetDisplayedBridgesParams) {\n if (prioritize) {\n return getBridgesWithPriority({\n bridgePrice,\n bridgeProtocols,\n extendBridge,\n selectedBridge,\n maxItems,\n });\n }\n\n return getAllBridges({\n bridgePrice,\n bridgeProtocols,\n extendBridge,\n maxItems,\n });\n}\n\nfunction getBridgesWithPriority({\n bridgePrice,\n bridgeProtocols,\n extendBridge,\n selectedBridge,\n maxItems,\n}: Omit<GetDisplayedBridgesParams, \"prioritize\">) {\n const { srcUSD, srcAmount, availableBridges } = bridgePrice;\n\n const displayedBridges: BridgeListItemProps[] = [selectedBridge];\n const addedBridgesSet = new Set<string>([\n selectedBridge.protocolName.toLowerCase(),\n ]);\n\n for (const availableBridge of availableBridges) {\n const loweredProtocolName =\n availableBridge.bridgeInfo.protocolName.toLowerCase();\n if (addedBridgesSet.has(loweredProtocolName)) continue;\n addedBridgesSet.add(loweredProtocolName);\n\n const bridgeProps = pickBridgeProps({\n srcUSD,\n srcAmount,\n availableBridge,\n bridgeProtocols,\n });\n displayedBridges.push(extendBridge(bridgeProps));\n }\n\n const sorted = displayedBridges.sort(sortBridgesByPriority);\n return {\n displayedBridges: maxItems ? sorted.slice(0, maxItems) : sorted,\n allBridges: sorted,\n };\n}\n\nfunction getAllBridges({\n bridgePrice,\n bridgeProtocols,\n extendBridge,\n maxItems,\n}: Omit<GetDisplayedBridgesParams, \"prioritize\" | \"selectedBridge\">) {\n const { srcUSD, srcAmount, availableBridges } = bridgePrice;\n\n const displayedBridges: BridgeListItemProps[] = [];\n const addedBridgesSet = new Set<string>();\n\n // then all others in any order\n for (const availableBridge of availableBridges) {\n const { bridgeInfo } = availableBridge;\n const loweredProtocolName = bridgeInfo.protocolName.toLowerCase();\n if (addedBridgesSet.has(loweredProtocolName)) continue;\n\n const bridgeProps = pickBridgeProps({\n srcUSD,\n srcAmount,\n availableBridge,\n bridgeProtocols,\n });\n addedBridgesSet.add(loweredProtocolName);\n displayedBridges.push(extendBridge(bridgeProps));\n }\n\n const sorted = displayedBridges.sort(sortBridgesRecommendedFirst);\n return {\n displayedBridges: maxItems ? sorted.slice(0, maxItems) : sorted,\n allBridges: sorted,\n };\n}\n\nfunction pickBridgeProps({\n srcUSD,\n srcAmount,\n availableBridge,\n bridgeProtocols,\n}: {\n srcUSD: string;\n srcAmount: string;\n availableBridge: AvailableBridge;\n bridgeProtocols: BridgeProtocolsMapping;\n}): BridgeListItemBaseProps {\n const { receivedDestUSD, bridge, bridgeInfo } = availableBridge;\n const bridgeProtocol = bridgeProtocols[bridgeInfo.protocolName.toLowerCase()];\n\n return {\n srcUSD: srcUSD,\n destUSD: receivedDestUSD,\n srcAmount: srcAmount,\n destAmount: bridgeInfo.destAmountAfterBridge,\n protocolDisplayName: bridgeProtocol?.displayName,\n protocolIcon: bridgeProtocol?.icon,\n protocolSelector: bridge.protocolSelector,\n protocolName: bridgeInfo.protocolName,\n estimatedTimeMs: bridgeInfo.estimatedTimeMs,\n recommended: bridgeInfo.recommended,\n bestReturn: bridgeInfo.bestReturn,\n fastest: bridgeInfo.fastest,\n };\n}\n\nfunction sortBridgesByPriority(a: BridgeListItemProps, b: BridgeListItemProps) {\n // prioritize recommended > selected > bestReturn > fastest\n if (a.recommended && !b.recommended) return -1;\n if (!a.recommended && b.recommended) return 1;\n\n if (a.isSelected && !b.isSelected) return -1;\n if (!a.isSelected && b.isSelected) return 1;\n\n if (a.bestReturn && !b.bestReturn) return -1;\n if (!a.bestReturn && b.bestReturn) return 1;\n\n if (a.fastest && !b.fastest) return -1;\n if (!a.fastest && b.fastest) return 1;\n\n return 0;\n}\n\nfunction sortBridgesRecommendedFirst(\n a: BridgeListItemProps,\n b: BridgeListItemProps\n) {\n // prioritize recommended first\n if (a.recommended && !b.recommended) return -1;\n if (!a.recommended && b.recommended) return 1;\n\n return 0;\n}\n"],"names":["useBridgeListItems","t0","$","_c","bridgePrice","prioritize","t1","maxItems","undefined","data","bridgeProtocols","useGetBridgeProtocolsMap","tokenFrom","tokenTo","useWidgetTokens","setProtocolName","useSetAtom","protocolNameAtom","t2","price","selectedBridgePrice","useSelectedBridgePrice","t3","Symbol","for","displayedBridges","emptyArray","allBridges","bridgeInfo","protocolName","bridge","loweredProtocolName","toLowerCase","loweredSelectedProtocolName","onClick","isSelected","extendBridge","selectedBridge","t4","pickBridgeProps","srcUSD","srcAmount","availableBridge","getDisplayedBridges","t5","getBridgesWithPriority","getAllBridges","availableBridges","addedBridgesSet","Set","has","add","bridgeProps","push","sorted","sort","sortBridgesByPriority","slice","sortBridgesRecommendedFirst","receivedDestUSD","bridgeProtocol","destUSD","destAmount","destAmountAfterBridge","protocolDisplayName","displayName","protocolIcon","icon","protocolSelector","estimatedTimeMs","recommended","bestReturn","fastest","a","b"],"mappings":"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"}