@velora-dex/widget 0.2.5-dev.1 → 0.2.5-dev.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 (221) hide show
  1. package/dist/components/ui/button.d.ts +1 -1
  2. package/dist/components/ui/dropdown-menu.d.ts +2 -3
  3. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  4. package/dist/components/ui/dropdown-menu.js +22 -44
  5. package/dist/components/ui/dropdown-menu.js.map +1 -1
  6. package/dist/components/ui/tooltip.d.ts +2 -4
  7. package/dist/components/ui/tooltip.d.ts.map +1 -1
  8. package/dist/components/ui/tooltip.js +27 -44
  9. package/dist/components/ui/tooltip.js.map +1 -1
  10. package/dist/components/web3/providers.d.ts.map +1 -1
  11. package/dist/components/web3/providers.js +2 -1
  12. package/dist/components/web3/providers.js.map +1 -1
  13. package/dist/components/widget/AppHeader/Activities/ActivityItems.js +1 -1
  14. package/dist/components/widget/AppHeader/Activities/ActivityItems.js.map +1 -1
  15. package/dist/components/widget/AppHeader/AppHeader.js +1 -1
  16. package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
  17. package/dist/components/widget/AppHeader/TradeModeSwitcher.js +1 -1
  18. package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
  19. package/dist/components/widget/Dialog/state/dialogAtom.d.ts.map +1 -1
  20. package/dist/components/widget/Dialog/state/dialogAtom.js +1 -2
  21. package/dist/components/widget/Dialog/state/dialogAtom.js.map +1 -1
  22. package/dist/components/widget/Drawer/Overlay.js +1 -1
  23. package/dist/components/widget/Drawer/Overlay.js.map +1 -1
  24. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
  25. package/dist/components/widget/Drawer/state/useDrawerControls.js +1 -2
  26. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  27. package/dist/components/widget/ImportToken/ImportToken.js +1 -1
  28. package/dist/components/widget/ImportToken/ImportToken.js.map +1 -1
  29. package/dist/components/widget/OrderExpiryInput/index.js +1 -1
  30. package/dist/components/widget/OrderExpiryInput/index.js.map +1 -1
  31. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.d.ts.map +1 -1
  32. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js +1 -2
  33. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js.map +1 -1
  34. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +1 -1
  35. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  36. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js +1 -1
  37. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js.map +1 -1
  38. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts +6 -2
  39. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts.map +1 -1
  40. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js +7 -3
  41. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
  42. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js +1 -1
  43. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js.map +1 -1
  44. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.d.ts.map +1 -1
  45. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.js +1 -2
  46. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.js.map +1 -1
  47. package/dist/components/widget/TradeParameters/useTempTradeParameters.js +1 -1
  48. package/dist/components/widget/TradeParameters/useTempTradeParameters.js.map +1 -1
  49. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js +1 -1
  50. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js.map +1 -1
  51. package/dist/configurator/Configurator.d.ts.map +1 -1
  52. package/dist/configurator/components/FormPropsInputs.d.ts.map +1 -1
  53. package/dist/configurator/components/common/ButtonGroup.d.ts +12 -0
  54. package/dist/configurator/components/common/ButtonGroup.d.ts.map +1 -0
  55. package/dist/configurator/components/common/DetailWithTooltip.d.ts +0 -1
  56. package/dist/configurator/components/common/DetailWithTooltip.d.ts.map +1 -1
  57. package/dist/core/DevTools.d.ts.map +1 -1
  58. package/dist/core/LimitOrderButton.js +1 -1
  59. package/dist/core/LimitOrderButton.js.map +1 -1
  60. package/dist/core/OtcOrderButton.js +1 -1
  61. package/dist/core/OtcOrderButton.js.map +1 -1
  62. package/dist/core/index.js +1 -1
  63. package/dist/core/index.js.map +1 -1
  64. package/dist/core/inputs/hooks/useTokenFromInputProps.js +1 -1
  65. package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
  66. package/dist/core/inputs/hooks/useTokenSwitcherProps.js +1 -1
  67. package/dist/core/inputs/hooks/useTokenSwitcherProps.js.map +1 -1
  68. package/dist/core/inputs/hooks/useTokenToInputProps.js +1 -1
  69. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  70. package/dist/core/inputs/state/common.d.ts +13 -3
  71. package/dist/core/inputs/state/common.d.ts.map +1 -1
  72. package/dist/core/inputs/state/common.js +37 -8
  73. package/dist/core/inputs/state/common.js.map +1 -1
  74. package/dist/core/inputs/state/selectedTokenActionsAtom.js +1 -1
  75. package/dist/core/inputs/state/selectedTokenActionsAtom.js.map +1 -1
  76. package/dist/core/inputs/state/selectedTokenAtom.d.ts.map +1 -1
  77. package/dist/core/inputs/state/selectedTokenAtom.js +1 -2
  78. package/dist/core/inputs/state/selectedTokenAtom.js.map +1 -1
  79. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts +1 -1
  80. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts.map +1 -1
  81. package/dist/core/inputs/state/setTokenByAddressAtom.js +78 -20
  82. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  83. package/dist/core/inputs/state/store.d.ts +2 -0
  84. package/dist/core/inputs/state/store.d.ts.map +1 -0
  85. package/dist/core/inputs/state/store.js +6 -0
  86. package/dist/core/inputs/state/store.js.map +1 -0
  87. package/dist/core/inputs/state/types.d.ts +11 -1
  88. package/dist/core/inputs/state/types.d.ts.map +1 -1
  89. package/dist/core/limit/state/currentLimitInputAtom.d.ts +2 -2
  90. package/dist/core/limit/state/deadlineAtom.d.ts.map +1 -1
  91. package/dist/core/limit/state/deadlineAtom.js +1 -2
  92. package/dist/core/limit/state/deadlineAtom.js.map +1 -1
  93. package/dist/core/limit/state/limitInputActionsAtom.d.ts +3 -0
  94. package/dist/core/limit/state/limitInputActionsAtom.d.ts.map +1 -1
  95. package/dist/core/limit/state/limitInputActionsAtom.js +7 -3
  96. package/dist/core/limit/state/limitInputActionsAtom.js.map +1 -1
  97. package/dist/core/limit/state/selectedTokenAtom.d.ts.map +1 -1
  98. package/dist/core/limit/state/selectedTokenAtom.js +2 -2
  99. package/dist/core/limit/state/selectedTokenAtom.js.map +1 -1
  100. package/dist/core/limit/state/utils.d.ts +7 -0
  101. package/dist/core/limit/state/utils.d.ts.map +1 -1
  102. package/dist/core/limit/state/utils.js +31 -2
  103. package/dist/core/limit/state/utils.js.map +1 -1
  104. package/dist/core/limit/useLimitDetailsListProps.js +1 -1
  105. package/dist/core/limit/useLimitDetailsListProps.js.map +1 -1
  106. package/dist/core/limit/useLimitPriceDifference.js +1 -1
  107. package/dist/core/limit/useLimitPriceDifference.js.map +1 -1
  108. package/dist/core/limit/useLimitPriceInputProps.js +1 -1
  109. package/dist/core/limit/useLimitPriceInputProps.js.map +1 -1
  110. package/dist/core/limit/useLimitRate.js +1 -1
  111. package/dist/core/limit/useLimitRate.js.map +1 -1
  112. package/dist/core/limit/useLimitTokenFromInputProps.js +1 -1
  113. package/dist/core/limit/useLimitTokenFromInputProps.js.map +1 -1
  114. package/dist/core/limit/useLimitTokenSwitcherProps.js +1 -1
  115. package/dist/core/limit/useLimitTokenSwitcherProps.js.map +1 -1
  116. package/dist/core/limit/useLimitTokenToInputProps.js +1 -1
  117. package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
  118. package/dist/core/logger.js +1 -1
  119. package/dist/core/logger.js.map +1 -1
  120. package/dist/core/otc/state/currentOtcInputAtom.d.ts +2 -2
  121. package/dist/core/otc/state/deadlineAtom.d.ts.map +1 -1
  122. package/dist/core/otc/state/deadlineAtom.js +1 -2
  123. package/dist/core/otc/state/deadlineAtom.js.map +1 -1
  124. package/dist/core/otc/state/otcInputActionsAtom.d.ts +3 -0
  125. package/dist/core/otc/state/otcInputActionsAtom.d.ts.map +1 -1
  126. package/dist/core/otc/state/otcInputActionsAtom.js +7 -3
  127. package/dist/core/otc/state/otcInputActionsAtom.js.map +1 -1
  128. package/dist/core/otc/state/receiverAddressAtom.d.ts.map +1 -1
  129. package/dist/core/otc/state/receiverAddressAtom.js +1 -2
  130. package/dist/core/otc/state/receiverAddressAtom.js.map +1 -1
  131. package/dist/core/otc/state/selectedTokenAtom.d.ts.map +1 -1
  132. package/dist/core/otc/state/selectedTokenAtom.js +2 -2
  133. package/dist/core/otc/state/selectedTokenAtom.js.map +1 -1
  134. package/dist/core/otc/useOtcDetailsListProps.js +1 -1
  135. package/dist/core/otc/useOtcDetailsListProps.js.map +1 -1
  136. package/dist/core/otc/useOtcPriceDifference.js +1 -1
  137. package/dist/core/otc/useOtcPriceDifference.js.map +1 -1
  138. package/dist/core/otc/useOtcPriceInputProps.js +1 -1
  139. package/dist/core/otc/useOtcPriceInputProps.js.map +1 -1
  140. package/dist/core/otc/useOtcTokenFromInputProps.js +1 -1
  141. package/dist/core/otc/useOtcTokenFromInputProps.js.map +1 -1
  142. package/dist/core/otc/useOtcTokenSwitcherProps.js +1 -1
  143. package/dist/core/otc/useOtcTokenSwitcherProps.js.map +1 -1
  144. package/dist/core/otc/useOtcTokenToInputProps.js +1 -1
  145. package/dist/core/otc/useOtcTokenToInputProps.js.map +1 -1
  146. package/dist/core/state/chainToAtom.d.ts.map +1 -1
  147. package/dist/core/state/chainToAtom.js +1 -2
  148. package/dist/core/state/chainToAtom.js.map +1 -1
  149. package/dist/core/state/configAtom.d.ts.map +1 -1
  150. package/dist/core/state/configAtom.js +1 -2
  151. package/dist/core/state/configAtom.js.map +1 -1
  152. package/dist/core/state/configEffectAtom.d.ts.map +1 -1
  153. package/dist/core/state/configEffectAtom.js +1 -2
  154. package/dist/core/state/configEffectAtom.js.map +1 -1
  155. package/dist/core/state/containerAtom.d.ts.map +1 -1
  156. package/dist/core/state/containerAtom.js +1 -2
  157. package/dist/core/state/containerAtom.js.map +1 -1
  158. package/dist/core/state/enabledChainsAtom.d.ts.map +1 -1
  159. package/dist/core/state/enabledChainsAtom.js +1 -2
  160. package/dist/core/state/enabledChainsAtom.js.map +1 -1
  161. package/dist/core/state/externalProviderAtom.d.ts.map +1 -1
  162. package/dist/core/state/externalProviderAtom.js +1 -2
  163. package/dist/core/state/externalProviderAtom.js.map +1 -1
  164. package/dist/core/state/isCrosschainAtom.d.ts.map +1 -1
  165. package/dist/core/state/isCrosschainAtom.js +1 -2
  166. package/dist/core/state/isCrosschainAtom.js.map +1 -1
  167. package/dist/core/state/tradeModeAtom.d.ts.map +1 -1
  168. package/dist/core/state/tradeModeAtom.js +1 -2
  169. package/dist/core/state/tradeModeAtom.js.map +1 -1
  170. package/dist/core/state/widgetEventsAtom.d.ts.map +1 -1
  171. package/dist/core/state/widgetEventsAtom.js +1 -2
  172. package/dist/core/state/widgetEventsAtom.js.map +1 -1
  173. package/dist/core/swapDetails/useSwapDetailsListProps.js +1 -1
  174. package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
  175. package/dist/events/effects/price.js +1 -1
  176. package/dist/events/effects/price.js.map +1 -1
  177. package/dist/events/effects/swapMode.js +1 -1
  178. package/dist/events/effects/swapMode.js.map +1 -1
  179. package/dist/events/hooks/useActivateEffects.js +1 -1
  180. package/dist/events/hooks/useActivateEffects.js.map +1 -1
  181. package/dist/hooks/otc/mutations/useFillOrder.js +4 -0
  182. package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
  183. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.d.ts.map +1 -1
  184. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.js +1 -2
  185. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.js.map +1 -1
  186. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +6 -6
  187. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts +1 -1
  188. package/dist/hooks/swap/prices/usePricesParams.js +1 -6
  189. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  190. package/dist/hooks/swap/prices/useSwapPrices.js +1 -1
  191. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  192. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js +1 -1
  193. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js.map +1 -1
  194. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js +1 -1
  195. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js.map +1 -1
  196. package/dist/hooks/tokens/useAllTokensWithFilter.js +1 -1
  197. package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
  198. package/dist/hooks/useEIP1559Enabled.js +1 -1
  199. package/dist/hooks/useEIP1559Enabled.js.map +1 -1
  200. package/dist/hooks/useGlobalDeltaEnabled.js +1 -1
  201. package/dist/hooks/useGlobalDeltaEnabled.js.map +1 -1
  202. package/dist/hooks/useSlippage.js +1 -1
  203. package/dist/hooks/useSlippage.js.map +1 -1
  204. package/dist/styles.css +0 -4
  205. package/dist/tokens/hooks.js +1 -1
  206. package/dist/tokens/hooks.js.map +1 -1
  207. package/dist/tokens/lists/state/effects.js +2 -1
  208. package/dist/tokens/lists/state/effects.js.map +1 -1
  209. package/dist/tokens/queries.js +1 -1
  210. package/dist/tokens/queries.js.map +1 -1
  211. package/dist/transactions/state/hooks/useActivateEffects.js +1 -1
  212. package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -1
  213. package/dist/transactions/state/hooks/useTransactions.js +1 -1
  214. package/dist/transactions/state/hooks/useTransactions.js.map +1 -1
  215. package/dist/transactions/state/transactionsActionAtom.js +1 -1
  216. package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
  217. package/package.json +3 -4
  218. package/dist/core/store.d.ts +0 -29
  219. package/dist/core/store.d.ts.map +0 -1
  220. package/dist/core/store.js +0 -15
  221. package/dist/core/store.js.map +0 -1
@@ -1,7 +1,7 @@
1
1
  import { jsx, jsxs } from 'react/jsx-runtime';
2
2
  import { d as distExports } from '../../../_virtual/index.js';
3
3
  import { userTradeModeAtom, tradeModeAtom } from '../../../core/state/tradeModeAtom.js';
4
- import { useSetAtom, useAtomValue } from '../../../core/store.js';
4
+ import { useSetAtom, useAtomValue } from 'jotai';
5
5
  import { DropdownWithItems } from '../Dropdown/DropdownWithItems.js';
6
6
  import { ChevronIcon } from '../Icon/ChevronIcon.js';
7
7
  import { enabledTradeModesAtom } from '../../../core/state/enabledTradeModesAtom.js';
@@ -1 +1 @@
1
- {"version":3,"file":"TradeModeSwitcher.js","sources":["../../../../src/components/widget/AppHeader/TradeModeSwitcher.tsx"],"sourcesContent":["import {\n tradeModeAtom,\n userTradeModeAtom,\n type TradeMode,\n} from \"@/core/state/tradeModeAtom\";\nimport { useAtomValue, useSetAtom } from \"@/core/store\";\nimport { DropdownWithItems } from \"../Dropdown/DropdownWithItems\";\nimport { ChevronIcon } from \"../Icon/ChevronIcon\";\nimport type { DropdownItem } from \"../Dropdown/types\";\nimport { enabledTradeModesAtom } from \"@/core/state/enabledTradeModesAtom\";\nimport { cn } from \"@/lib/utils\";\n\nconst tradeModeLabel: Record<TradeMode, string> = {\n swap: \"Swap\",\n limit: \"Limit\",\n otc: \"OTC\",\n};\n\nexport const TradeModeSwitcher = () => {\n const setTradeMode = useSetAtom(userTradeModeAtom);\n const tradeMode = useAtomValue(tradeModeAtom);\n const enabledTradeModes = useAtomValue(enabledTradeModesAtom);\n const isDisabled = enabledTradeModes.length <= 1;\n\n const menuTrigger = (\n <div\n className={cn(\n \"flex items-center gap-2 font-medium text-contrast-3 dark:text-contrast-8\",\n { \"cursor-pointer\": !isDisabled }\n )}\n >\n {tradeModeLabel[tradeMode]}{\" \"}\n {!isDisabled && (\n <ChevronIcon width={8} className=\"pt-[2px] dark:text-contrast-5\" />\n )}\n </div>\n );\n\n if (isDisabled) return menuTrigger;\n\n const items: DropdownItem[] = enabledTradeModes.map((mode) => ({\n label: tradeModeLabel[mode],\n onSelect: () => setTradeMode(mode),\n selected: tradeMode === mode,\n // @TODO need a better styles for the items\n }));\n\n return <DropdownWithItems menuTrigger={menuTrigger} items={items} />;\n};\n"],"names":["tradeModeLabel","swap","limit","otc","TradeModeSwitcher","$","_c","setTradeMode","useSetAtom","userTradeModeAtom","tradeMode","useAtomValue","tradeModeAtom","enabledTradeModes","enabledTradeModesAtom","isDisabled","length","t0","t1","cn","t2","t3","t4","menuTrigger","t5","t6","mode","label","onSelect","selected","map","items"],"mappings":"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"}
1
+ {"version":3,"file":"TradeModeSwitcher.js","sources":["../../../../src/components/widget/AppHeader/TradeModeSwitcher.tsx"],"sourcesContent":["import {\n tradeModeAtom,\n userTradeModeAtom,\n type TradeMode,\n} from \"@/core/state/tradeModeAtom\";\nimport { useAtomValue, useSetAtom } from \"jotai\";\nimport { DropdownWithItems } from \"../Dropdown/DropdownWithItems\";\nimport { ChevronIcon } from \"../Icon/ChevronIcon\";\nimport type { DropdownItem } from \"../Dropdown/types\";\nimport { enabledTradeModesAtom } from \"@/core/state/enabledTradeModesAtom\";\nimport { cn } from \"@/lib/utils\";\n\nconst tradeModeLabel: Record<TradeMode, string> = {\n swap: \"Swap\",\n limit: \"Limit\",\n otc: \"OTC\",\n};\n\nexport const TradeModeSwitcher = () => {\n const setTradeMode = useSetAtom(userTradeModeAtom);\n const tradeMode = useAtomValue(tradeModeAtom);\n const enabledTradeModes = useAtomValue(enabledTradeModesAtom);\n const isDisabled = enabledTradeModes.length <= 1;\n\n const menuTrigger = (\n <div\n className={cn(\n \"flex items-center gap-2 font-medium text-contrast-3 dark:text-contrast-8\",\n { \"cursor-pointer\": !isDisabled }\n )}\n >\n {tradeModeLabel[tradeMode]}{\" \"}\n {!isDisabled && (\n <ChevronIcon width={8} className=\"pt-[2px] dark:text-contrast-5\" />\n )}\n </div>\n );\n\n if (isDisabled) return menuTrigger;\n\n const items: DropdownItem[] = enabledTradeModes.map((mode) => ({\n label: tradeModeLabel[mode],\n onSelect: () => setTradeMode(mode),\n selected: tradeMode === mode,\n // @TODO need a better styles for the items\n }));\n\n return <DropdownWithItems menuTrigger={menuTrigger} items={items} />;\n};\n"],"names":["tradeModeLabel","swap","limit","otc","TradeModeSwitcher","$","_c","setTradeMode","useSetAtom","userTradeModeAtom","tradeMode","useAtomValue","tradeModeAtom","enabledTradeModes","enabledTradeModesAtom","isDisabled","length","t0","t1","cn","t2","t3","t4","menuTrigger","t5","t6","mode","label","onSelect","selected","map","items"],"mappings":";;;;;;;;;AAYA,MAAMA,cAAAA,GAA4C;AAAA,EAChDC,IAAAA,EAAM,MAAA;AAAA,EACNC,KAAAA,EAAO,OAAA;AAAA,EACPC,GAAAA,EAAK;AACP,CAAA;AAEO,MAAMC,oBAAoBA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAC/B,EAAA,MAAAC,YAAAA,GAAqBC,WAAWC,iBAAiB,CAAA;AACjD,EAAA,MAAAC,SAAAA,GAAkBC,aAAaC,aAAa,CAAA;AAC5C,EAAA,MAAAC,iBAAAA,GAA0BF,aAAaG,qBAAqB,CAAA;AAC5D,EAAA,MAAAC,UAAAA,GAAmBF,kBAAiBG,MAAAA,IAAW,CAAA;AAMrB,EAAA,MAAAC,MAACF,UAAAA;AAAU,EAAA,IAAAG,EAAAA;AAAA,EAAA,IAAAb,CAAAA,QAAAY,EAAAA,EAAA;AAFtBC,IAAAA,EAAAA,GAAAC,GACT,0EAAA,EACA;AAAA,MAAA,gBAAA,EAAoBF;AAAAA,KACtB,CAAA;AAACZ,IAAAA,CAAAA,MAAAY,EAAAA;AAAAZ,IAAAA,CAAAA,MAAAa,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAb,EAAA,CAAA,CAAA;AAAA,EAAA;AAEA,EAAA,MAAAe,EAAAA,GAAApB,eAAeU,SAAS,CAAA;AAAC,EAAA,IAAAW,EAAAA;AAAA,EAAA,IAAAhB,CAAAA,QAAAU,UAAAA,EAAA;AACzBM,IAAAA,EAAAA,GAAA,CAACN,UAAAA,oBACA,GAAA,CAAC,eAAmB,KAAA,EAAA,CAAA,EAAa,WAAA,+BAAA,EAA+B,CAAA;AACjEV,IAAAA,CAAAA,MAAAU,UAAAA;AAAAV,IAAAA,CAAAA,MAAAgB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAhB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAiB,EAAAA;AAAA,EAAA,IAAAjB,CAAAA,CAAA,CAAA,CAAA,KAAAa,EAAAA,IAAAb,CAAAA,QAAAe,EAAAA,IAAAf,CAAAA,CAAA,CAAA,CAAA,KAAAgB,EAAAA,EAAA;AATHC,IAAAA,EAAAA,iCACa,SAAA,EAAAJ,EAAAA,EAKVE,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,MAA2B,GAAA;AAAA,MAC3BC;AAAAA,KAAAA,EAGH,CAAA;AAAMhB,IAAAA,CAAAA,MAAAa,EAAAA;AAAAb,IAAAA,CAAAA,MAAAe,EAAAA;AAAAf,IAAAA,CAAAA,MAAAgB,EAAAA;AAAAhB,IAAAA,CAAAA,MAAAiB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAjB,EAAA,CAAA,CAAA;AAAA,EAAA;AAXR,EAAA,MAAAkB,WAAAA,GACED,EAAAA;AAaF,EAAA,IAAIP,UAAAA,EAAU;AAAA,IAAA,OAASQ,WAAAA;AAAAA,EAAW;AAAC,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAnB,CAAAA,CAAA,CAAA,CAAA,KAAAQ,iBAAAA,IAAAR,CAAAA,QAAAE,YAAAA,IAAAF,CAAAA,CAAA,EAAA,CAAA,KAAAK,SAAAA,EAAA;AAAA,IAAA,IAAAe,GAAAA;AAAA,IAAA,IAAApB,EAAA,EAAA,CAAA,KAAAE,gBAAAF,CAAAA,SAAAK,SAAAA,EAAA;AAEiBe,MAAAA,MAAAC,CAAAA,IAAAA,MAAW;AAAA,QAAAC,KAAAA,EACtD3B,eAAe0B,IAAI,CAAA;AAAA,QAACE,QAAAA,EACjBA,MAAMrB,YAAAA,CAAamB,IAAI,CAAA;AAAA,QAACG,UACxBnB,SAAAA,KAAcgB;AAAAA,OAE1B,CAAA;AAAErB,MAAAA,CAAAA,OAAAE,YAAAA;AAAAF,MAAAA,CAAAA,OAAAK,SAAAA;AAAAL,MAAAA,CAAAA,OAAAoB,GAAAA;AAAAA,IAAA,CAAA,MAAA;AAAAA,MAAAA,GAAAA,GAAApB,EAAA,EAAA,CAAA;AAAA,IAAA;AAL4BmB,IAAAA,EAAAA,GAAAX,iBAAAA,CAAiBiB,IAAKL,GAKlD,CAAA;AAACpB,IAAAA,CAAAA,MAAAQ,iBAAAA;AAAAR,IAAAA,CAAAA,MAAAE,YAAAA;AAAAF,IAAAA,CAAAA,OAAAK,SAAAA;AAAAL,IAAAA,CAAAA,OAAAmB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAnB,EAAA,EAAA,CAAA;AAAA,EAAA;AALH,EAAA,MAAA0B,KAAAA,GAA8BP,EAAAA;AAK1B,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAApB,EAAA,EAAA,CAAA,KAAA0B,SAAA1B,CAAAA,SAAAkB,WAAAA,EAAA;AAEGE,IAAAA,EAAAA,mBAAA,GAAA,CAAC,iBAAA,EAAA,EAA+BF,WAAAA,EAAoBQ,KAAAA,EAAK,CAAA;AAAI1B,IAAAA,CAAAA,OAAA0B,KAAAA;AAAA1B,IAAAA,CAAAA,OAAAkB,WAAAA;AAAAlB,IAAAA,CAAAA,OAAAoB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAApB,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAA7DoB,EAAAA;AAA6D;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"dialogAtom.d.ts","sourceRoot":"","sources":["../../../../../src/components/widget/Dialog/state/dialogAtom.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAepD,KAAK,UAAU,GAAG,MAAM,OAAO,YAAY,CAAC;AAE5C,KAAK,sBAAsB,GAAG;IAC5B,UAAU,EAAE,UAAU,CAAC;IACvB,WAAW,CAAC,EAAE;SACX,GAAG,IAAI,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,OAAO,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC;KACvE,CAAC;CACH,CAAC;AAmBF,MAAM,MAAM,mBAAmB,GAAG;IAEhC,MAAM,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACtC,uBAAuB,EAAE,MAAM,IAAI,CAAC;IACpC,yBAAyB,EAAE,MAAM,IAAI,CAAC;IACtC,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,aAAa,QAAO,mBAkChC,CAAC"}
1
+ {"version":3,"file":"dialogAtom.d.ts","sourceRoot":"","sources":["../../../../../src/components/widget/Dialog/state/dialogAtom.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAepD,KAAK,UAAU,GAAG,MAAM,OAAO,YAAY,CAAC;AAE5C,KAAK,sBAAsB,GAAG;IAC5B,UAAU,EAAE,UAAU,CAAC;IACvB,WAAW,CAAC,EAAE;SACX,GAAG,IAAI,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,OAAO,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC;KACvE,CAAC;CACH,CAAC;AAmBF,MAAM,MAAM,mBAAmB,GAAG;IAEhC,MAAM,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACtC,uBAAuB,EAAE,MAAM,IAAI,CAAC;IACpC,yBAAyB,EAAE,MAAM,IAAI,CAAC;IACtC,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,aAAa,QAAO,mBAkChC,CAAC"}
@@ -1,6 +1,5 @@
1
1
  import { d as distExports } from '../../../../_virtual/index.js';
2
- import { atom } from 'jotai';
3
- import { useAtom } from '../../../../core/store.js';
2
+ import { useAtom, atom } from 'jotai';
4
3
  import 'react';
5
4
 
6
5
  const dialogAtom = atom(null);
@@ -1 +1 @@
1
- {"version":3,"file":"dialogAtom.js","sources":["../../../../../src/components/widget/Dialog/state/dialogAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtom } from \"@/core/store\";\nimport type { dialogByType } from \"../dialogByType\";\nimport { useMemo } from \"react\";\nimport type { Prettify } from \"ts-essentials\";\n\ntype DialogPropsWithoutUnknown<\n DType extends string,\n DTypeProps,\n> = unknown extends DTypeProps\n ? unknown\n : {\n dialogProps: {\n [key in DType]: DTypeProps;\n };\n };\n\ntype DialogType = keyof typeof dialogByType;\n\ntype PermissibleDialogState = {\n dialogType: DialogType;\n dialogProps?: {\n [key in DialogType]?: React.ComponentProps<(typeof dialogByType)[key]>;\n };\n};\n\n// makes a union with exactly matching `{dialogType, dialogProps: {[dialogType]: dialogTypeProps}}`,\n// so that setDialog can only be used with one specific dialogType per call\ntype FilledDialogState = {\n [Type in DialogType]: Prettify<\n {\n dialogType: Type;\n } & DialogPropsWithoutUnknown<\n Type,\n React.ComponentProps<(typeof dialogByType)[Type]>\n >\n >;\n}[DialogType];\n\ntype DialogState = FilledDialogState | null;\n\nconst dialogAtom = atom<DialogState>(null);\n\nexport type UseDialogAtomResult = {\n // allow to destructure without \"dialogType\" in dialog.dialogProps checks\n dialog: PermissibleDialogState | null;\n showConnectWalletDialog: () => void;\n showReceiverAddressDialog: () => void;\n closeDialog: () => void;\n};\n\nexport const useDialogAtom = (): UseDialogAtomResult => {\n const [dialog, setDialog] = useAtom(dialogAtom);\n\n const { closeDialog, showConnectWalletDialog, showReceiverAddressDialog } =\n useMemo(() => {\n const closeDialog = () => {\n setDialog(null);\n };\n\n const showConnectWalletDialog = () => {\n setDialog({\n dialogType: \"connectWallet\",\n });\n };\n\n const showReceiverAddressDialog = () => {\n setDialog({\n dialogType: \"receiverAddress\",\n });\n };\n\n return {\n closeDialog,\n showConnectWalletDialog,\n showReceiverAddressDialog,\n };\n }, [setDialog]);\n\n return {\n dialog,\n showConnectWalletDialog,\n showReceiverAddressDialog,\n closeDialog,\n };\n};\n"],"names":["dialogAtom","atom","useDialogAtom","$","_c","dialog","setDialog","useAtom","t0","closeDialog","t1","dialogType","showConnectWalletDialog","t2","showReceiverAddressDialog","t3","closeDialog_0","showConnectWalletDialog_0","showReceiverAddressDialog_0","t4"],"mappings":";;;;;AAyCA,MAAMA,UAAAA,GAAaC,KAAkB,IAAI,CAAA;AAUlC,MAAMC,gBAAgBA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAC3B,EAAA,MAAA,CAAAC,MAAAA,EAAAC,SAAA,CAAA,GAA4BC,QAAQP,UAAU,CAAA;AAAE,EAAA,IAAAQ,EAAAA;AAAA,EAAA,IAAAL,CAAAA,QAAAG,SAAAA,EAAA;AAIxBE,IAAAA,EAAAA,GAAAA,MAAA;AAClBF,MAAAA,SAAAA,CAAU,IAAI,CAAA;AAAA,IAAC,CAAA;AAChBH,IAAAA,CAAAA,MAAAG,SAAAA;AAAAH,IAAAA,CAAAA,MAAAK,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAL,EAAA,CAAA,CAAA;AAAA,EAAA;AAFD,EAAA,MAAAM,WAAAA,GAAoBD,EAAAA;AAElB,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAAP,CAAAA,QAAAG,SAAAA,EAAA;AAE8BI,IAAAA,EAAAA,GAAAA,MAAA;AAC9BJ,MAAAA,SAAAA,CAAU;AAAA,QAAAK,UAAAA,EACI;AAAA,OACb,CAAA;AAAA,IAAC,CAAA;AACHR,IAAAA,CAAAA,MAAAG,SAAAA;AAAAH,IAAAA,CAAAA,MAAAO,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAP,EAAA,CAAA,CAAA;AAAA,EAAA;AAJD,EAAA,MAAAS,uBAAAA,GAAgCF,EAAAA;AAI9B,EAAA,IAAAG,EAAAA;AAAA,EAAA,IAAAV,CAAAA,QAAAG,SAAAA,EAAA;AAEgCO,IAAAA,EAAAA,GAAAA,MAAA;AAChCP,MAAAA,SAAAA,CAAU;AAAA,QAAAK,UAAAA,EACI;AAAA,OACb,CAAA;AAAA,IAAC,CAAA;AACHR,IAAAA,CAAAA,MAAAG,SAAAA;AAAAH,IAAAA,CAAAA,MAAAU,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAV,EAAA,CAAA,CAAA;AAAA,EAAA;AAJD,EAAA,MAAAW,yBAAAA,GAAkCD,EAAAA;AAIhC,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAAZ,CAAAA,CAAA,CAAA,CAAA,KAAAM,WAAAA,IAAAN,CAAAA,QAAAS,uBAAAA,IAAAT,CAAAA,CAAA,CAAA,CAAA,KAAAW,yBAAAA,EAAA;AAEKC,IAAAA,EAAAA,GAAA;AAAA,MAAAN,WAAAA;AAAAA,MAAAG,uBAAAA;AAAAA,MAAAE;AAAAA,KAIP;AAACX,IAAAA,CAAAA,MAAAM,WAAAA;AAAAN,IAAAA,CAAAA,MAAAS,uBAAAA;AAAAT,IAAAA,CAAAA,MAAAW,yBAAAA;AAAAX,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAtBL,EAAA,MAAA;AAAA,IAAAM,WAAAA,EAAAO,aAAAA;AAAAA,IAAAJ,uBAAAA,EAAAK,yBAAAA;AAAAA,IAAAH,yBAAAA,EAAAI;AAAAA,GAAA,GAkBIH,EAAAA;AAKc,EAAA,IAAAI,EAAAA;AAAA,EAAA,IAAAhB,CAAAA,CAAA,EAAA,CAAA,KAAAa,aAAAA,IAAAb,EAAA,EAAA,CAAA,KAAAE,MAAAA,IAAAF,CAAAA,CAAA,EAAA,CAAA,KAAAc,yBAAAA,IAAAd,CAAAA,SAAAe,2BAAAA,EAAA;AAEXC,IAAAA,EAAAA,GAAA;AAAA,MAAAd,MAAAA;AAAAA,MAAAO,uBAAAA,EAELA,yBAAAA;AAAAA,MAAuBE,yBAAAA,EACvBA,2BAAAA;AAAAA,MAAyBL,WAAAA,EACzBA;AAAAA,KACF;AAACN,IAAAA,CAAAA,OAAAa,aAAAA;AAAAb,IAAAA,CAAAA,OAAAE,MAAAA;AAAAF,IAAAA,CAAAA,OAAAc,yBAAAA;AAAAd,IAAAA,CAAAA,OAAAe,2BAAAA;AAAAf,IAAAA,CAAAA,OAAAgB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAhB,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OALMgB,EAAAA;AAKN;;;;"}
1
+ {"version":3,"file":"dialogAtom.js","sources":["../../../../../src/components/widget/Dialog/state/dialogAtom.ts"],"sourcesContent":["import { atom, useAtom } from \"jotai\";\nimport type { dialogByType } from \"../dialogByType\";\nimport { useMemo } from \"react\";\nimport type { Prettify } from \"ts-essentials\";\n\ntype DialogPropsWithoutUnknown<\n DType extends string,\n DTypeProps,\n> = unknown extends DTypeProps\n ? unknown\n : {\n dialogProps: {\n [key in DType]: DTypeProps;\n };\n };\n\ntype DialogType = keyof typeof dialogByType;\n\ntype PermissibleDialogState = {\n dialogType: DialogType;\n dialogProps?: {\n [key in DialogType]?: React.ComponentProps<(typeof dialogByType)[key]>;\n };\n};\n\n// makes a union with exactly matching `{dialogType, dialogProps: {[dialogType]: dialogTypeProps}}`,\n// so that setDialog can only be used with one specific dialogType per call\ntype FilledDialogState = {\n [Type in DialogType]: Prettify<\n {\n dialogType: Type;\n } & DialogPropsWithoutUnknown<\n Type,\n React.ComponentProps<(typeof dialogByType)[Type]>\n >\n >;\n}[DialogType];\n\ntype DialogState = FilledDialogState | null;\n\nconst dialogAtom = atom<DialogState>(null);\n\nexport type UseDialogAtomResult = {\n // allow to destructure without \"dialogType\" in dialog.dialogProps checks\n dialog: PermissibleDialogState | null;\n showConnectWalletDialog: () => void;\n showReceiverAddressDialog: () => void;\n closeDialog: () => void;\n};\n\nexport const useDialogAtom = (): UseDialogAtomResult => {\n const [dialog, setDialog] = useAtom(dialogAtom);\n\n const { closeDialog, showConnectWalletDialog, showReceiverAddressDialog } =\n useMemo(() => {\n const closeDialog = () => {\n setDialog(null);\n };\n\n const showConnectWalletDialog = () => {\n setDialog({\n dialogType: \"connectWallet\",\n });\n };\n\n const showReceiverAddressDialog = () => {\n setDialog({\n dialogType: \"receiverAddress\",\n });\n };\n\n return {\n closeDialog,\n showConnectWalletDialog,\n showReceiverAddressDialog,\n };\n }, [setDialog]);\n\n return {\n dialog,\n showConnectWalletDialog,\n showReceiverAddressDialog,\n closeDialog,\n };\n};\n"],"names":["dialogAtom","atom","useDialogAtom","$","_c","dialog","setDialog","useAtom","t0","closeDialog","t1","dialogType","showConnectWalletDialog","t2","showReceiverAddressDialog","t3","closeDialog_0","showConnectWalletDialog_0","showReceiverAddressDialog_0","t4"],"mappings":"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"}
@@ -2,7 +2,7 @@ import { jsx } from 'react/jsx-runtime';
2
2
  import { d as distExports } from '../../../_virtual/index.js';
3
3
  import { cn } from '../../../lib/utils/index.js';
4
4
  import { openDrawerAtom } from './state/useDrawerControls.js';
5
- import { useSetAtom } from '../../../core/store.js';
5
+ import { useSetAtom } from 'jotai';
6
6
 
7
7
  function InWidgetDrawerOverlay(t0) {
8
8
  const $ = distExports.c(12);
@@ -1 +1 @@
1
- {"version":3,"file":"Overlay.js","sources":["../../../../src/components/widget/Drawer/Overlay.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport { openDrawerAtom } from \"./state/useDrawerControls\";\nimport { useSetAtom } from \"@/core/store\";\n\ntype DrawerOverlayProps = {\n open: boolean;\n onClick?: () => void;\n closeDrawerOnClick?: boolean;\n className?: string;\n};\n// Used when Partial Drawer is open,\n// darkens the Widget in the background,\n// onClick closes the Partial Drawer\nexport function InWidgetDrawerOverlay({\n open,\n onClick,\n closeDrawerOnClick = true,\n className,\n}: DrawerOverlayProps) {\n const setOpenDrawer = useSetAtom(openDrawerAtom);\n\n return (\n <div\n className={cn(\n \"absolute inset-0 bg-gray-900 z-10 transition-opacity duration-300 rounded-xxl\",\n {\n \"opacity-0\": !open,\n \"opacity-75\": open,\n // allow clicking through when no drawer is open\n \"pointer-events-none\": !open,\n },\n className\n )}\n onClick={() => {\n if (closeDrawerOnClick) {\n setOpenDrawer(null);\n }\n onClick?.();\n }}\n />\n );\n}\n"],"names":["InWidgetDrawerOverlay","t0","$","_c","open","onClick","closeDrawerOnClick","t1","className","undefined","setOpenDrawer","useSetAtom","openDrawerAtom","t2","t3","t4","cn","t5","t6"],"mappings":";;;;;;AAaO,SAAAA,sBAAAC,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAA+B,EAAA,MAAA;AAAA,IAAAC,IAAAA;AAAAA,IAAAC,OAAAA;AAAAA,IAAAC,kBAAAA,EAAAC,EAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAAP,EAAAA;AAGpC,EAAA,MAAAK,kBAAAA,GAAAC,EAAAA,KAAAE,MAAAA,GAAA,IAAA,GAAAF,EAAAA;AAGA,EAAA,MAAAG,aAAAA,GAAsBC,WAAWC,cAAc,CAAA;AAO1B,EAAA,MAAAC,MAACT,IAAAA;AAGS,EAAA,MAAAU,MAACV,IAAAA;AAAI,EAAA,IAAAW,EAAAA;AAAA,EAAA,IAAAb,CAAAA,CAAA,CAAA,CAAA,KAAAM,SAAAA,IAAAN,EAAA,CAAA,CAAA,KAAAE,IAAAA,IAAAF,CAAAA,CAAA,CAAA,CAAA,KAAAW,EAAAA,IAAAX,CAAAA,QAAAY,EAAAA,EAAA;AANrBC,IAAAA,EAAAA,GAAAC,GACT,+EAAA,EACA;AAAA,MAAA,WAAA,EACeH,EAAAA;AAAAA,MAAK,YAAA,EACJT,IAAAA;AAAAA,MAAI,qBAAA,EAEKU;AAAAA,OAEzBN,SACF,CAAA;AAACN,IAAAA,CAAAA,MAAAM,SAAAA;AAAAN,IAAAA,CAAAA,MAAAE,IAAAA;AAAAF,IAAAA,CAAAA,MAAAW,EAAAA;AAAAX,IAAAA,CAAAA,MAAAY,EAAAA;AAAAZ,IAAAA,CAAAA,MAAAa,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAb,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAe,EAAAA;AAAA,EAAA,IAAAf,CAAAA,CAAA,CAAA,CAAA,KAAAI,kBAAAA,IAAAJ,CAAAA,QAAAG,OAAAA,IAAAH,CAAAA,CAAA,CAAA,CAAA,KAAAQ,aAAAA,EAAA;AACQO,IAAAA,EAAAA,GAAAA,MAAA;AACP,MAAA,IAAIX,kBAAAA,EAAkB;AACpBI,QAAAA,aAAAA,CAAc,IAAI,CAAA;AAAA,MAAC;AAErBL,MAAAA,OAAAA,IAAU;AAAA,IAAC,CAAA;AACZH,IAAAA,CAAAA,MAAAI,kBAAAA;AAAAJ,IAAAA,CAAAA,MAAAG,OAAAA;AAAAH,IAAAA,CAAAA,MAAAQ,aAAAA;AAAAR,IAAAA,CAAAA,MAAAe,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAf,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAgB,EAAAA;AAAA,EAAA,IAAAhB,EAAA,CAAA,CAAA,KAAAa,MAAAb,CAAAA,SAAAe,EAAAA,EAAA;AAhBHC,IAAAA,EAAAA,mBAAA,GAAA,CAAA,KAAA,EAAA,EACa,SAAA,EAAAH,EAAAA,EAUF,SAAAE,EAAAA,EAKR,CAAA;AACDf,IAAAA,CAAAA,MAAAa,EAAAA;AAAAb,IAAAA,CAAAA,OAAAe,EAAAA;AAAAf,IAAAA,CAAAA,OAAAgB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAhB,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAjBFgB,EAAAA;AAiBE;;;;"}
1
+ {"version":3,"file":"Overlay.js","sources":["../../../../src/components/widget/Drawer/Overlay.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport { openDrawerAtom } from \"./state/useDrawerControls\";\nimport { useSetAtom } from \"jotai\";\n\ntype DrawerOverlayProps = {\n open: boolean;\n onClick?: () => void;\n closeDrawerOnClick?: boolean;\n className?: string;\n};\n// Used when Partial Drawer is open,\n// darkens the Widget in the background,\n// onClick closes the Partial Drawer\nexport function InWidgetDrawerOverlay({\n open,\n onClick,\n closeDrawerOnClick = true,\n className,\n}: DrawerOverlayProps) {\n const setOpenDrawer = useSetAtom(openDrawerAtom);\n\n return (\n <div\n className={cn(\n \"absolute inset-0 bg-gray-900 z-10 transition-opacity duration-300 rounded-xxl\",\n {\n \"opacity-0\": !open,\n \"opacity-75\": open,\n // allow clicking through when no drawer is open\n \"pointer-events-none\": !open,\n },\n className\n )}\n onClick={() => {\n if (closeDrawerOnClick) {\n setOpenDrawer(null);\n }\n onClick?.();\n }}\n />\n );\n}\n"],"names":["InWidgetDrawerOverlay","t0","$","_c","open","onClick","closeDrawerOnClick","t1","className","undefined","setOpenDrawer","useSetAtom","openDrawerAtom","t2","t3","t4","cn","t5","t6"],"mappings":";;;;;;AAaO,SAAAA,sBAAAC,EAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAA+B,EAAA,MAAA;AAAA,IAAAC,IAAAA;AAAAA,IAAAC,OAAAA;AAAAA,IAAAC,kBAAAA,EAAAC,EAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAAP,EAAAA;AAGpC,EAAA,MAAAK,kBAAAA,GAAAC,EAAAA,KAAAE,MAAAA,GAAA,IAAA,GAAAF,EAAAA;AAGA,EAAA,MAAAG,aAAAA,GAAsBC,WAAWC,cAAc,CAAA;AAO1B,EAAA,MAAAC,MAACT,IAAAA;AAGS,EAAA,MAAAU,MAACV,IAAAA;AAAI,EAAA,IAAAW,EAAAA;AAAA,EAAA,IAAAb,CAAAA,CAAA,CAAA,CAAA,KAAAM,SAAAA,IAAAN,EAAA,CAAA,CAAA,KAAAE,IAAAA,IAAAF,CAAAA,CAAA,CAAA,CAAA,KAAAW,EAAAA,IAAAX,CAAAA,QAAAY,EAAAA,EAAA;AANrBC,IAAAA,EAAAA,GAAAC,GACT,+EAAA,EACA;AAAA,MAAA,WAAA,EACeH,EAAAA;AAAAA,MAAK,YAAA,EACJT,IAAAA;AAAAA,MAAI,qBAAA,EAEKU;AAAAA,OAEzBN,SACF,CAAA;AAACN,IAAAA,CAAAA,MAAAM,SAAAA;AAAAN,IAAAA,CAAAA,MAAAE,IAAAA;AAAAF,IAAAA,CAAAA,MAAAW,EAAAA;AAAAX,IAAAA,CAAAA,MAAAY,EAAAA;AAAAZ,IAAAA,CAAAA,MAAAa,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAb,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAe,EAAAA;AAAA,EAAA,IAAAf,CAAAA,CAAA,CAAA,CAAA,KAAAI,kBAAAA,IAAAJ,CAAAA,QAAAG,OAAAA,IAAAH,CAAAA,CAAA,CAAA,CAAA,KAAAQ,aAAAA,EAAA;AACQO,IAAAA,EAAAA,GAAAA,MAAA;AACP,MAAA,IAAIX,kBAAAA,EAAkB;AACpBI,QAAAA,aAAAA,CAAc,IAAI,CAAA;AAAA,MAAC;AAErBL,MAAAA,OAAAA,IAAU;AAAA,IAAC,CAAA;AACZH,IAAAA,CAAAA,MAAAI,kBAAAA;AAAAJ,IAAAA,CAAAA,MAAAG,OAAAA;AAAAH,IAAAA,CAAAA,MAAAQ,aAAAA;AAAAR,IAAAA,CAAAA,MAAAe,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAf,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAgB,EAAAA;AAAA,EAAA,IAAAhB,EAAA,CAAA,CAAA,KAAAa,MAAAb,CAAAA,SAAAe,EAAAA,EAAA;AAhBHC,IAAAA,EAAAA,mBAAA,GAAA,CAAA,KAAA,EAAA,EACa,SAAA,EAAAH,EAAAA,EAUF,SAAAE,EAAAA,EAKR,CAAA;AACDf,IAAAA,CAAAA,MAAAa,EAAAA;AAAAb,IAAAA,CAAAA,OAAAe,EAAAA;AAAAf,IAAAA,CAAAA,OAAAgB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAhB,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAjBFgB,EAAAA;AAiBE;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useDrawerControls.d.ts","sourceRoot":"","sources":["../../../../../src/components/widget/Drawer/state/useDrawerControls.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAKzD,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,MAAM,EAAE,cAAc,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAChB,uBAAuB,GACvB,yBAAyB,GACzB,yBAAyB,GACzB,6BAA6B,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,GACxD,uBAAuB,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,GAClD,iBAAiB,GACjB,uBAAuB,GACvB,mBAAmB,GACnB,yBAAyB,GACzB,uBAAuB,GACvB,4BAA4B,GAC5B,qBAAqB,GACrB,qBAAqB,GACrB,mBAAmB,GACnB,mBAAmB,GACnB,eAAe,GACf,sCAAsC,GACtC,uBAAuB,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,GAClD,mBAAmB,CAAC;AAExB,eAAO,MAAM,cAAc;;CAA8B,CAAC;AAU1D,eAAO,MAAM,eAAe,QAAO,QAAQ,GAAG,IAE7C,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,mDAI/B;IACD,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,QAAQ,CAAC;CACpB,KAAG,cAyCH,CAAC;AAqBF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,kCAAkC,QAAO;IACpD,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACrD,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,YAAY,EAAE,OAAO,CAAC;CAsEvB,CAAC"}
1
+ {"version":3,"file":"useDrawerControls.d.ts","sourceRoot":"","sources":["../../../../../src/components/widget/Drawer/state/useDrawerControls.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAIzD,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,MAAM,EAAE,cAAc,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAChB,uBAAuB,GACvB,yBAAyB,GACzB,yBAAyB,GACzB,6BAA6B,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,GACxD,uBAAuB,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,GAClD,iBAAiB,GACjB,uBAAuB,GACvB,mBAAmB,GACnB,yBAAyB,GACzB,uBAAuB,GACvB,4BAA4B,GAC5B,qBAAqB,GACrB,qBAAqB,GACrB,mBAAmB,GACnB,mBAAmB,GACnB,eAAe,GACf,sCAAsC,GACtC,uBAAuB,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,GAClD,mBAAmB,CAAC;AAExB,eAAO,MAAM,cAAc;;CAA8B,CAAC;AAU1D,eAAO,MAAM,eAAe,QAAO,QAAQ,GAAG,IAE7C,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,mDAI/B;IACD,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,QAAQ,CAAC;CACpB,KAAG,cAyCH,CAAC;AAqBF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,kCAAkC,QAAO;IACpD,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACrD,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,YAAY,EAAE,OAAO,CAAC;CAsEvB,CAAC"}
@@ -1,8 +1,7 @@
1
1
  import { d as distExports } from '../../../../_virtual/index.js';
2
2
  import { DRAWER_HEIGHT } from '../../../../core/constants.js';
3
3
  import { useLogger } from '../../../../core/logger.js';
4
- import { atom } from 'jotai';
5
- import { useAtomValue, useAtom } from '../../../../core/store.js';
4
+ import { atom, useAtomValue, useAtom } from 'jotai';
6
5
  import { useRef, useLayoutEffect } from 'react';
7
6
 
8
7
  const openDrawerAtom = atom(null);
@@ -1 +1 @@
1
- {"version":3,"file":"useDrawerControls.js","sources":["../../../../../src/components/widget/Drawer/state/useDrawerControls.ts"],"sourcesContent":["import { DRAWER_HEIGHT } from \"@/core/constants\";\nimport { useLogger } from \"@/core/logger\";\nimport type { LoggerInstance } from \"@/lib/utils/logger\";\nimport { atom } from \"jotai\";\nimport { useAtom, useAtomValue } from \"@/core/store\";\nimport { useLayoutEffect, useRef } from \"react\";\n\nexport type DrawerControls = {\n open: boolean;\n onOpen: () => void;\n onClose: () => void;\n onOpenChange: (open: boolean) => void;\n logger: LoggerInstance;\n};\n\nexport type DrawerId =\n | \"account-button-drawer\"\n | \"trade-parameters-drawer\"\n | \"receiver-address-drawer\"\n | `empty-select-token-drawer-${\"from\" | \"to\" | undefined}`\n | `select-token-drawer-${\"from\" | \"to\" | undefined}`\n | \"wrap-eth-drawer\"\n | \"connect-wallet-drawer\"\n | \"trade-flow-drawer\"\n | \"limit-order-flow-drawer\"\n | \"otc-order-flow-drawer\"\n | \"fill-otc-order-flow-drawer\"\n | \"limit-orders-drawer\" // @TODO Activities cleanup\n | \"limit-order-details\" // @TODO Activities cleanup\n | \"otc-orders-drawer\" // @TODO Activities cleanup\n | \"otc-order-details\" // @TODO Activities cleanup\n | \"order-details\"\n | \"fill-order-review-and-confirm-drawer\"\n | `import-token-drawer-${\"from\" | \"to\" | undefined}`\n | \"activities-drawer\";\n\nexport const openDrawerAtom = atom<DrawerId | null>(null);\n\nopenDrawerAtom.onMount = (set) => {\n return () => {\n // Reset open drawer on unmount to prevent stuck open drawers on remount.\n // This happens, for example, on route change in the UI with any drawer open.\n set(null);\n };\n};\n\nexport const useOpenDrawerId = (): DrawerId | null => {\n return useAtomValue(openDrawerAtom);\n};\n\nexport const useDrawerControls = ({\n onOpen: _onOpen,\n onClose: _onClose,\n drawerId,\n}: {\n onOpen?: () => void;\n onClose?: () => void;\n drawerId: DrawerId;\n}): DrawerControls => {\n const [openDrawer, setOpenDrawer] = useAtom(openDrawerAtom);\n\n const open = openDrawer === drawerId;\n\n const logger = useLogger(drawerId);\n\n const onOpen = () => {\n logger.info(\"onOpen\");\n setOpenDrawer(drawerId);\n _onOpen?.();\n };\n const onClose = () => {\n logger.info(\"onClose\");\n setOpenDrawer((currentOpenDrawer) => {\n // only reset openDrawer if closing the drawer that is currently open,\n // so that we don't interfere with other drawers that are opening at the same time\n if (currentOpenDrawer === drawerId) {\n return null;\n }\n return currentOpenDrawer;\n });\n _onClose?.();\n };\n\n const onOpenChange = (open: boolean) => {\n if (open) {\n onOpen();\n } else {\n onClose();\n }\n };\n\n return {\n open,\n // expect onOpenChange not to be triggered for a controlled <Drawer open={open}/>.\n onOpenChange,\n onOpen,\n onClose,\n logger,\n };\n};\n\n/**\n * Drawer IDs that should be considered full-cover drawers.\n *\n * When a full-cover drawer opens, the widget container height is transitioned to a fixed WIDGET_HEIGHT_CLASSNAME height.\n * When the drawer closes, the widget container height is transitioned back to the natural height.\n */\nconst fullCoverDrawers = new Set<DrawerId>([\n \"trade-flow-drawer\",\n \"limit-order-flow-drawer\",\n \"otc-order-flow-drawer\",\n \"fill-otc-order-flow-drawer\",\n \"select-token-drawer-from\",\n \"select-token-drawer-to\",\n \"empty-select-token-drawer-from\",\n \"empty-select-token-drawer-to\",\n]);\n\nconst transition = \"height 0.3s ease-in-out\";\n\n/**\n * Hook that manages smooth height transitions for the main widget container when full-cover drawers open/close.\n *\n * When a full-cover drawer opens, this hook smoothly animates the widget height from its natural height\n * to a fixed WIDGET_HEIGHT_CLASSNAME height. When the drawer closes, it animates back to the original height and then\n * resets to auto for natural sizing.\n *\n * This prevents jarring height jumps and provides a polished user experience during drawer interactions.\n *\n * @returns {Object} containerRef - React ref that should be attached to the widget container element\n *\n * @example\n * const { containerRef } = useDrawerContainerHeightTransition();\n * return <div ref={containerRef} className=\"widget-container\">...</div>\n */\nexport const useDrawerContainerHeightTransition = (): {\n containerRef: React.RefObject<HTMLDivElement | null>;\n drawerId: DrawerId | null;\n isDrawerFullCover: boolean;\n isDrawerOpen: boolean;\n} => {\n const containerRef = useRef<HTMLDivElement>(null);\n const previousHeightRef = useRef<number | null>(null);\n\n const currentDrawerId = useOpenDrawerId();\n const isDrawerFullCover =\n !!currentDrawerId && fullCoverDrawers.has(currentDrawerId);\n\n useLayoutEffect(() => {\n if (containerRef.current) {\n const container = containerRef.current;\n\n if (isDrawerFullCover) {\n // Get current height\n const currentHeight = container.scrollHeight;\n // widget will be fully covered by the drawer, won't see the transition\n const shouldSkipTransition = currentHeight <= DRAWER_HEIGHT;\n if (shouldSkipTransition) {\n return;\n }\n previousHeightRef.current = currentHeight;\n container.style.overflow = \"hidden\";\n\n // Set current height first (no transition)\n container.style.transition = \"none\";\n container.style.height = `${currentHeight}px`;\n\n // Use requestAnimationFrame to ensure the first height is painted\n requestAnimationFrame(() => {\n // Enable transition and set target height\n container.style.transition = transition;\n container.style.height = `${DRAWER_HEIGHT}px`;\n });\n } else if (previousHeightRef.current !== null) {\n // Only transition back if we have a previous height\n container.style.transition = transition;\n container.style.height = `${previousHeightRef.current}px`;\n previousHeightRef.current = null;\n\n // After transition completes, reset to auto\n const onTransitionEnd = (event: TransitionEvent) => {\n if (\n event.target === container &&\n event.propertyName === \"height\" &&\n event.type === \"transitionend\"\n ) {\n container.style.height = \"auto\";\n container.style.transition = \"\";\n container.style.overflow = \"\";\n\n container.removeEventListener(\"transitionend\", onTransitionEnd);\n }\n };\n container.addEventListener(\"transitionend\", onTransitionEnd);\n\n return () => {\n // cleanup just in case\n container.removeEventListener(\"transitionend\", onTransitionEnd);\n };\n }\n }\n }, [isDrawerFullCover]);\n\n return {\n containerRef,\n drawerId: currentDrawerId,\n isDrawerFullCover,\n isDrawerOpen: !!currentDrawerId,\n };\n};\n"],"names":["openDrawerAtom","atom","onMount","set","useOpenDrawerId","useAtomValue","useDrawerControls","t0","$","_c","onOpen","_onOpen","onClose","_onClose","drawerId","openDrawer","setOpenDrawer","useAtom","open","logger","useLogger","t1","info","t2","currentOpenDrawer","t3","open_0","onOpenChange","t4","fullCoverDrawers","Set","transition","useDrawerContainerHeightTransition","containerRef","useRef","previousHeightRef","currentDrawerId","has","isDrawerFullCover","current","container","currentHeight","scrollHeight","shouldSkipTransition","DRAWER_HEIGHT","style","overflow","height","requestAnimationFrame","onTransitionEnd","event","target","propertyName","type","removeEventListener","addEventListener","useLayoutEffect","isDrawerOpen"],"mappings":"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"}
1
+ {"version":3,"file":"useDrawerControls.js","sources":["../../../../../src/components/widget/Drawer/state/useDrawerControls.ts"],"sourcesContent":["import { DRAWER_HEIGHT } from \"@/core/constants\";\nimport { useLogger } from \"@/core/logger\";\nimport type { LoggerInstance } from \"@/lib/utils/logger\";\nimport { atom, useAtom, useAtomValue } from \"jotai\";\nimport { useLayoutEffect, useRef } from \"react\";\n\nexport type DrawerControls = {\n open: boolean;\n onOpen: () => void;\n onClose: () => void;\n onOpenChange: (open: boolean) => void;\n logger: LoggerInstance;\n};\n\nexport type DrawerId =\n | \"account-button-drawer\"\n | \"trade-parameters-drawer\"\n | \"receiver-address-drawer\"\n | `empty-select-token-drawer-${\"from\" | \"to\" | undefined}`\n | `select-token-drawer-${\"from\" | \"to\" | undefined}`\n | \"wrap-eth-drawer\"\n | \"connect-wallet-drawer\"\n | \"trade-flow-drawer\"\n | \"limit-order-flow-drawer\"\n | \"otc-order-flow-drawer\"\n | \"fill-otc-order-flow-drawer\"\n | \"limit-orders-drawer\" // @TODO Activities cleanup\n | \"limit-order-details\" // @TODO Activities cleanup\n | \"otc-orders-drawer\" // @TODO Activities cleanup\n | \"otc-order-details\" // @TODO Activities cleanup\n | \"order-details\"\n | \"fill-order-review-and-confirm-drawer\"\n | `import-token-drawer-${\"from\" | \"to\" | undefined}`\n | \"activities-drawer\";\n\nexport const openDrawerAtom = atom<DrawerId | null>(null);\n\nopenDrawerAtom.onMount = (set) => {\n return () => {\n // Reset open drawer on unmount to prevent stuck open drawers on remount.\n // This happens, for example, on route change in the UI with any drawer open.\n set(null);\n };\n};\n\nexport const useOpenDrawerId = (): DrawerId | null => {\n return useAtomValue(openDrawerAtom);\n};\n\nexport const useDrawerControls = ({\n onOpen: _onOpen,\n onClose: _onClose,\n drawerId,\n}: {\n onOpen?: () => void;\n onClose?: () => void;\n drawerId: DrawerId;\n}): DrawerControls => {\n const [openDrawer, setOpenDrawer] = useAtom(openDrawerAtom);\n\n const open = openDrawer === drawerId;\n\n const logger = useLogger(drawerId);\n\n const onOpen = () => {\n logger.info(\"onOpen\");\n setOpenDrawer(drawerId);\n _onOpen?.();\n };\n const onClose = () => {\n logger.info(\"onClose\");\n setOpenDrawer((currentOpenDrawer) => {\n // only reset openDrawer if closing the drawer that is currently open,\n // so that we don't interfere with other drawers that are opening at the same time\n if (currentOpenDrawer === drawerId) {\n return null;\n }\n return currentOpenDrawer;\n });\n _onClose?.();\n };\n\n const onOpenChange = (open: boolean) => {\n if (open) {\n onOpen();\n } else {\n onClose();\n }\n };\n\n return {\n open,\n // expect onOpenChange not to be triggered for a controlled <Drawer open={open}/>.\n onOpenChange,\n onOpen,\n onClose,\n logger,\n };\n};\n\n/**\n * Drawer IDs that should be considered full-cover drawers.\n *\n * When a full-cover drawer opens, the widget container height is transitioned to a fixed WIDGET_HEIGHT_CLASSNAME height.\n * When the drawer closes, the widget container height is transitioned back to the natural height.\n */\nconst fullCoverDrawers = new Set<DrawerId>([\n \"trade-flow-drawer\",\n \"limit-order-flow-drawer\",\n \"otc-order-flow-drawer\",\n \"fill-otc-order-flow-drawer\",\n \"select-token-drawer-from\",\n \"select-token-drawer-to\",\n \"empty-select-token-drawer-from\",\n \"empty-select-token-drawer-to\",\n]);\n\nconst transition = \"height 0.3s ease-in-out\";\n\n/**\n * Hook that manages smooth height transitions for the main widget container when full-cover drawers open/close.\n *\n * When a full-cover drawer opens, this hook smoothly animates the widget height from its natural height\n * to a fixed WIDGET_HEIGHT_CLASSNAME height. When the drawer closes, it animates back to the original height and then\n * resets to auto for natural sizing.\n *\n * This prevents jarring height jumps and provides a polished user experience during drawer interactions.\n *\n * @returns {Object} containerRef - React ref that should be attached to the widget container element\n *\n * @example\n * const { containerRef } = useDrawerContainerHeightTransition();\n * return <div ref={containerRef} className=\"widget-container\">...</div>\n */\nexport const useDrawerContainerHeightTransition = (): {\n containerRef: React.RefObject<HTMLDivElement | null>;\n drawerId: DrawerId | null;\n isDrawerFullCover: boolean;\n isDrawerOpen: boolean;\n} => {\n const containerRef = useRef<HTMLDivElement>(null);\n const previousHeightRef = useRef<number | null>(null);\n\n const currentDrawerId = useOpenDrawerId();\n const isDrawerFullCover =\n !!currentDrawerId && fullCoverDrawers.has(currentDrawerId);\n\n useLayoutEffect(() => {\n if (containerRef.current) {\n const container = containerRef.current;\n\n if (isDrawerFullCover) {\n // Get current height\n const currentHeight = container.scrollHeight;\n // widget will be fully covered by the drawer, won't see the transition\n const shouldSkipTransition = currentHeight <= DRAWER_HEIGHT;\n if (shouldSkipTransition) {\n return;\n }\n previousHeightRef.current = currentHeight;\n container.style.overflow = \"hidden\";\n\n // Set current height first (no transition)\n container.style.transition = \"none\";\n container.style.height = `${currentHeight}px`;\n\n // Use requestAnimationFrame to ensure the first height is painted\n requestAnimationFrame(() => {\n // Enable transition and set target height\n container.style.transition = transition;\n container.style.height = `${DRAWER_HEIGHT}px`;\n });\n } else if (previousHeightRef.current !== null) {\n // Only transition back if we have a previous height\n container.style.transition = transition;\n container.style.height = `${previousHeightRef.current}px`;\n previousHeightRef.current = null;\n\n // After transition completes, reset to auto\n const onTransitionEnd = (event: TransitionEvent) => {\n if (\n event.target === container &&\n event.propertyName === \"height\" &&\n event.type === \"transitionend\"\n ) {\n container.style.height = \"auto\";\n container.style.transition = \"\";\n container.style.overflow = \"\";\n\n container.removeEventListener(\"transitionend\", onTransitionEnd);\n }\n };\n container.addEventListener(\"transitionend\", onTransitionEnd);\n\n return () => {\n // cleanup just in case\n container.removeEventListener(\"transitionend\", onTransitionEnd);\n };\n }\n }\n }, [isDrawerFullCover]);\n\n return {\n containerRef,\n drawerId: currentDrawerId,\n isDrawerFullCover,\n isDrawerOpen: !!currentDrawerId,\n };\n};\n"],"names":["openDrawerAtom","atom","onMount","set","useOpenDrawerId","useAtomValue","useDrawerControls","t0","$","_c","onOpen","_onOpen","onClose","_onClose","drawerId","openDrawer","setOpenDrawer","useAtom","open","logger","useLogger","t1","info","t2","currentOpenDrawer","t3","open_0","onOpenChange","t4","fullCoverDrawers","Set","transition","useDrawerContainerHeightTransition","containerRef","useRef","previousHeightRef","currentDrawerId","has","isDrawerFullCover","current","container","currentHeight","scrollHeight","shouldSkipTransition","DRAWER_HEIGHT","style","overflow","height","requestAnimationFrame","onTransitionEnd","event","target","propertyName","type","removeEventListener","addEventListener","useLayoutEffect","isDrawerOpen"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { jsx, jsxs } from 'react/jsx-runtime';
2
2
  import { d as distExports } from '../../../_virtual/index.js';
3
- import { useSetAtom } from '../../../core/store.js';
3
+ import { useSetAtom } from 'jotai';
4
4
  import { addImportedTokenAtom } from '../../../tokens/state/addImportedTokenAtom.js';
5
5
  import { WarningWithTitle } from '../Warning/Warning.js';
6
6
  import { Button } from '../../ui/button.js';
@@ -1 +1 @@
1
- {"version":3,"file":"ImportToken.js","sources":["../../../../src/components/widget/ImportToken/ImportToken.tsx"],"sourcesContent":["import { useSetAtom } from \"@/core/store\";\nimport { addImportedTokenAtom } from \"@/tokens/state/addImportedTokenAtom\";\nimport { WarningWithTitle } from \"../Warning/Warning\";\nimport { Button } from \"@/components/ui/button\";\nimport { TokenBadge } from \"../TokenBadge/TokenBadge\";\nimport type { ImportTokenDrawerProps } from \"./types\";\nimport { constructTokenLinkForChain } from \"@/lib/utils/explorer\";\n\nconst URL_CUSTOM_TOKEN_RISKS =\n \"https://help.velora.xyz/en/articles/6660821-the-risks-of-using-custom-tokens\";\n\ntype ImportTokenProps = ImportTokenDrawerProps & {\n onClose: () => void;\n};\n\nexport const ImportToken = (props: ImportTokenProps) => {\n const addImportedToken = useSetAtom(addImportedTokenAtom);\n\n const handleImport = () => {\n addImportedToken({\n newToken: props.token,\n afterAction: props.onConfirmAction,\n });\n\n props.onClose();\n };\n\n return (\n <div className=\"p-[24px] pt-0\">\n <div className=\"mb-5 text-contrast-4 dark:text-contrast-7\">\n <a\n href={constructTokenLinkForChain({\n chainId: props.token.network,\n address: props.token.address,\n })}\n target=\"_blank\"\n className=\"underline-offset-2\"\n >\n <TokenBadge\n img={props.token.img}\n classes={{ logo: \"size-[24px]\", root: \"underline\" }}\n address={props.token.address}\n symbol={props.token.symbol}\n chainId={props.token.network}\n showNetworkIcon\n />\n </a>\n </div>\n <WarningWithTitle\n title=\"Custom Tokens Alert\"\n message={\n <div className=\"flex flex-col gap-2\">\n <div>\n Always verify the tokens you are importing are legitimate, as\n trading unsafe tokens can lead to financial losses.\n </div>\n <div>\n Velora cannot verify the security of the token, and some tokens\n with transfer fees might fail when using our UI.\n </div>\n </div>\n }\n />\n\n <div className=\"text-sm text-contrast-4 dark:text-contrast-6 mt-7\">\n By proceeding to import custom tokens, you confirm that you acknowledge{\" \"}\n <a\n className=\"underline hover:text-contrast-5 dark:hover:text-contrast-7\"\n href={URL_CUSTOM_TOKEN_RISKS}\n target=\"_blank\"\n >\n the risks of using custom tokens\n </a>\n </div>\n <div className=\"pt-8 pb-5\">\n <Button radius=\"xs\" className=\"w-full h-[40px]\" onClick={handleImport}>\n Import\n </Button>\n </div>\n </div>\n );\n};\n"],"names":["URL_CUSTOM_TOKEN_RISKS","ImportToken","props","$","_c","addImportedToken","useSetAtom","addImportedTokenAtom","t0","newToken","token","afterAction","onConfirmAction","onClose","handleImport","t1","address","network","constructTokenLinkForChain","chainId","t2","Symbol","for","logo","root","t3","img","symbol","t4","t5","t6","t7","t8"],"mappings":"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"}
1
+ {"version":3,"file":"ImportToken.js","sources":["../../../../src/components/widget/ImportToken/ImportToken.tsx"],"sourcesContent":["import { useSetAtom } from \"jotai\";\nimport { addImportedTokenAtom } from \"@/tokens/state/addImportedTokenAtom\";\nimport { WarningWithTitle } from \"../Warning/Warning\";\nimport { Button } from \"@/components/ui/button\";\nimport { TokenBadge } from \"../TokenBadge/TokenBadge\";\nimport type { ImportTokenDrawerProps } from \"./types\";\nimport { constructTokenLinkForChain } from \"@/lib/utils/explorer\";\n\nconst URL_CUSTOM_TOKEN_RISKS =\n \"https://help.velora.xyz/en/articles/6660821-the-risks-of-using-custom-tokens\";\n\ntype ImportTokenProps = ImportTokenDrawerProps & {\n onClose: () => void;\n};\n\nexport const ImportToken = (props: ImportTokenProps) => {\n const addImportedToken = useSetAtom(addImportedTokenAtom);\n\n const handleImport = () => {\n addImportedToken({\n newToken: props.token,\n afterAction: props.onConfirmAction,\n });\n\n props.onClose();\n };\n\n return (\n <div className=\"p-[24px] pt-0\">\n <div className=\"mb-5 text-contrast-4 dark:text-contrast-7\">\n <a\n href={constructTokenLinkForChain({\n chainId: props.token.network,\n address: props.token.address,\n })}\n target=\"_blank\"\n className=\"underline-offset-2\"\n >\n <TokenBadge\n img={props.token.img}\n classes={{ logo: \"size-[24px]\", root: \"underline\" }}\n address={props.token.address}\n symbol={props.token.symbol}\n chainId={props.token.network}\n showNetworkIcon\n />\n </a>\n </div>\n <WarningWithTitle\n title=\"Custom Tokens Alert\"\n message={\n <div className=\"flex flex-col gap-2\">\n <div>\n Always verify the tokens you are importing are legitimate, as\n trading unsafe tokens can lead to financial losses.\n </div>\n <div>\n Velora cannot verify the security of the token, and some tokens\n with transfer fees might fail when using our UI.\n </div>\n </div>\n }\n />\n\n <div className=\"text-sm text-contrast-4 dark:text-contrast-6 mt-7\">\n By proceeding to import custom tokens, you confirm that you acknowledge{\" \"}\n <a\n className=\"underline hover:text-contrast-5 dark:hover:text-contrast-7\"\n href={URL_CUSTOM_TOKEN_RISKS}\n target=\"_blank\"\n >\n the risks of using custom tokens\n </a>\n </div>\n <div className=\"pt-8 pb-5\">\n <Button radius=\"xs\" className=\"w-full h-[40px]\" onClick={handleImport}>\n Import\n </Button>\n </div>\n </div>\n );\n};\n"],"names":["URL_CUSTOM_TOKEN_RISKS","ImportToken","props","$","_c","addImportedToken","useSetAtom","addImportedTokenAtom","t0","newToken","token","afterAction","onConfirmAction","onClose","handleImport","t1","address","network","constructTokenLinkForChain","chainId","t2","Symbol","for","logo","root","t3","img","symbol","t4","t5","t6","t7","t8"],"mappings":"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"}
@@ -4,7 +4,7 @@ import { UnstyledInput } from '../../ui/input.js';
4
4
  import { NumericFormat } from 'react-number-format';
5
5
  import { DropdownWithItems } from '../Dropdown/DropdownWithItems.js';
6
6
  import { ChevronIcon } from '../Icon/ChevronIcon.js';
7
- import { useAtom } from '../../../core/store.js';
7
+ import { useAtom } from 'jotai';
8
8
  import { timeUnitAtom } from '../../../core/limit/state/deadlineAtom.js';
9
9
  import { timeUnitAtom as timeUnitAtom$1 } from '../../../core/otc/state/deadlineAtom.js';
10
10
  import { neverTimeUnit, timeUnits, minTimeUnit } from '../../../core/limit/state/constants.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/widget/OrderExpiryInput/index.tsx"],"sourcesContent":["import { UnstyledInput } from \"@/components/ui/input\";\nimport { NumericFormat, type NumericFormatProps } from \"react-number-format\";\nimport { DropdownWithItems } from \"../Dropdown/DropdownWithItems\";\nimport type { DropdownItem, DropdownWithItemsProps } from \"../Dropdown/types\";\nimport { ChevronIcon } from \"../Icon/ChevronIcon\";\nimport { useAtom } from \"@/core/store\";\nimport {\n timeUnitAtom as limitTimeUnitAtom,\n type TimeUnit,\n type TimeUnitObject,\n} from \"@/core/limit/state/deadlineAtom\";\nimport { timeUnitAtom as otcTimeUnitAtom } from \"@/core/otc/state/deadlineAtom\";\nimport {\n minTimeUnit,\n neverTimeUnit,\n timeUnits,\n} from \"@/core/limit/state/constants\";\n\ntype TimeUnitsDropdownProps = {\n expiryTimeValue: number;\n selectedTimeUnit: TimeUnit;\n onSelect: (timeUnit: TimeUnitObject) => void;\n classes?: DropdownWithItemsProps[\"classes\"];\n type: OrderExpiryInputProps[\"type\"];\n};\n\nconst TimeUnitsDropdown: React.FC<TimeUnitsDropdownProps> = ({\n expiryTimeValue,\n selectedTimeUnit,\n onSelect,\n classes,\n type,\n}) => {\n const isLimit = type === \"limit\";\n const specificTimeUnits = isLimit\n ? timeUnits.filter((item) => item.label !== \"never\")\n : timeUnits; // OTC can have 0 deadline\n\n const items = specificTimeUnits.map<DropdownItem>((item) => ({\n label: item.label,\n onSelect: () => {\n onSelect(item);\n },\n className: \"capitalize\",\n selected: item.label === selectedTimeUnit,\n }));\n\n const label =\n expiryTimeValue > 1 || selectedTimeUnit === neverTimeUnit.label\n ? selectedTimeUnit\n : selectedTimeUnit.slice(0, -1); // \"days\" -> \"day\"\n\n const menuTrigger = (\n <div className=\"flex justify-between items-center gap-1.5 text-contrast-3 dark:text-contrast-7 text-sm cursor-pointer\">\n <span className=\"capitalize\">{label}</span>\n <ChevronIcon width={12} height={12} className=\"pt-[2px]\" />\n </div>\n );\n\n return (\n <DropdownWithItems\n items={items}\n menuTrigger={menuTrigger}\n classes={classes}\n align=\"end\"\n />\n );\n};\n\nconst TimeUnitInput = ({ type }: OrderExpiryInputProps) => {\n const isLimit = type === \"limit\";\n const [timeUnitObject, setTimeUnitObject] = useAtom(\n isLimit ? limitTimeUnitAtom : otcTimeUnitAtom\n );\n\n const onTimeUnitChange = (currentTimeUnitObject: TimeUnitObject) => {\n setTimeUnitObject((prev) => {\n if (prev.label === currentTimeUnitObject.label) {\n return prev;\n }\n\n return currentTimeUnitObject;\n });\n };\n\n const onValueChange: NumericFormatProps[\"onValueChange\"] = (values) => {\n const floatValue = values.floatValue;\n\n if (floatValue === neverTimeUnit.value && !isLimit) {\n setTimeUnitObject(neverTimeUnit);\n } else if (floatValue !== undefined) {\n setTimeUnitObject((prev) => {\n if (prev.value === floatValue) return prev;\n return { ...prev, value: floatValue };\n });\n } else {\n setTimeUnitObject(minTimeUnit);\n }\n };\n\n return (\n <div className=\"flex justify-between items-center flex-1\">\n {timeUnitObject.label !== neverTimeUnit.label && (\n <NumericFormat\n className=\"min-w-0 w-full text-lg font-geist-mono text-contrast-3 dark:text-contrast-8\"\n placeholder=\"0\"\n value={timeUnitObject.value}\n onValueChange={onValueChange}\n decimalScale={0}\n allowNegative={false}\n allowLeadingZeros={false}\n customInput={UnstyledInput}\n thousandSeparator\n />\n )}\n <TimeUnitsDropdown\n selectedTimeUnit={timeUnitObject.label}\n onSelect={onTimeUnitChange}\n expiryTimeValue={timeUnitObject.value}\n classes={{\n trigger: \"w-full min-h-[28px]\",\n }}\n type={type}\n />\n </div>\n );\n};\n\ntype OrderExpiryInputProps = {\n type: \"limit\" | \"otc\";\n};\n\nexport const OrderExpiryInput = (props: OrderExpiryInputProps) => {\n return (\n <div className=\"flex flex-col gap-[8px] p-4 border-1 rounded-[12px] border-transparent transition-all focus-within:border-primary-azul-1 bg-contrast-8 dark:bg-contrast-2\">\n <div className=\"flex items-center justify-between text-xs text-contrast-3 dark:text-contrast-7\">\n <span>Order Expiry</span>\n </div>\n <div className=\"flex items-center justify-between gap-1.5\">\n <TimeUnitInput {...props} />\n </div>\n </div>\n );\n};\n"],"names":["TimeUnitsDropdown","t0","$","_c","expiryTimeValue","selectedTimeUnit","onSelect","classes","type","isLimit","t1","specificTimeUnits","timeUnits","filter","_temp","t2","item_0","label","item","className","selected","map","items","neverTimeUnit","slice","t3","t4","Symbol","for","t5","menuTrigger","t6","TimeUnitInput","timeUnitObject","setTimeUnitObject","useAtom","limitTimeUnitAtom","otcTimeUnitAtom","currentTimeUnitObject","prev","onTimeUnitChange","values","floatValue","value","undefined","prev_0","minTimeUnit","onValueChange","UnstyledInput","trigger","OrderExpiryInput","props"],"mappings":";;;;;;;;;;;AA0BA,MAAMA,oBAAsDC,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAC,eAAAA;AAAAA,IAAAC,gBAAAA;AAAAA,IAAAC,QAAAA;AAAAA,IAAAC,OAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAAP,EAAAA;AAO3D,EAAA,MAAAQ,UAAgBD,IAAAA,KAAS,OAAA;AAAQ,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAAR,CAAAA,CAAA,CAAA,CAAA,KAAAO,OAAAA,IAAAP,CAAAA,QAAAI,QAAAA,IAAAJ,CAAAA,CAAA,CAAA,CAAA,KAAAG,gBAAAA,EAAA;AACjC,IAAA,MAAAM,iBAAAA,GAA0BF,OAAAA,GACtBG,SAAAA,CAASC,MAAAA,CAAQC,KACT,CAAA,GAFcF,SAAAA;AAEZ,IAAA,IAAAG,GAAAA;AAAA,IAAA,IAAAb,EAAA,CAAA,CAAA,KAAAI,YAAAJ,CAAAA,QAAAG,gBAAAA,EAAA;AAEoCU,MAAAA,MAAAC,CAAAA,MAAAA,MAAW;AAAA,QAAAC,OACpDC,MAAAA,CAAID,KAAAA;AAAAA,QAAMX,UACPA,MAAA;AACRA,UAAAA,QAAAA,CAASY,MAAI,CAAA;AAAA,QAAC,CAAA;AAAA,QACfC,SAAAA,EACU,YAAA;AAAA,QAAYC,QAAAA,EACbF,OAAID,KAAAA,KAAWZ;AAAAA,OAC3B,CAAA;AAAEH,MAAAA,CAAAA,MAAAI,QAAAA;AAAAJ,MAAAA,CAAAA,MAAAG,gBAAAA;AAAAH,MAAAA,CAAAA,MAAAa,GAAAA;AAAAA,IAAA,CAAA,MAAA;AAAAA,MAAAA,GAAAA,GAAAb,EAAA,CAAA,CAAA;AAAA,IAAA;AAPYQ,IAAAA,EAAAA,GAAAC,iBAAAA,CAAiBU,IAAmBN,GAOhD,CAAA;AAACb,IAAAA,CAAAA,MAAAO,OAAAA;AAAAP,IAAAA,CAAAA,MAAAI,QAAAA;AAAAJ,IAAAA,CAAAA,MAAAG,gBAAAA;AAAAH,IAAAA,CAAAA,MAAAQ,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAR,EAAA,CAAA,CAAA;AAAA,EAAA;AAPH,EAAA,MAAAoB,KAAAA,GAAcZ,EAAAA;AAOV,EAAA,IAAAK,EAAAA;AAAA,EAAA,IAAAb,EAAA,CAAA,CAAA,KAAAE,mBAAAF,CAAAA,QAAAG,gBAAAA,EAAA;AAGFU,IAAAA,EAAAA,GAAAX,eAAAA,GAAkB,KAAKC,gBAAAA,KAAqBkB,aAAAA,CAAaN,QAAzDZ,gBAAAA,GAEIA,gBAAAA,CAAgBmB,KAAAA,CAAO,CAAA,EAAG,EAAE,CAAA;AAACtB,IAAAA,CAAAA,MAAAE,eAAAA;AAAAF,IAAAA,CAAAA,MAAAG,gBAAAA;AAAAH,IAAAA,CAAAA,MAAAa,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAb,EAAA,CAAA,CAAA;AAAA,EAAA;AAHnC,EAAA,MAAAe,KAAAA,GACEF,EAAAA;AAEkC,EAAA,IAAAU,EAAAA;AAAA,EAAA,IAAAvB,CAAAA,SAAAe,KAAAA,EAAA;AAIhCQ,IAAAA,EAAAA,mBAAA,GAAA,CAAA,MAAA,EAAA,EAAgB,SAAA,EAAA,YAAA,EAAcR,QAAAA,EAAAA,KAAAA,EAAM,CAAA;AAAOf,IAAAA,CAAAA,OAAAe,KAAAA;AAAAf,IAAAA,CAAAA,OAAAuB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAvB,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAwB,EAAAA;AAAA,EAAA,IAAAxB,EAAA,EAAA,CAAA,KAAAyB,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAC3CF,IAAAA,EAAAA,uBAAC,WAAA,EAAA,EAAmB,KAAA,MAAY,MAAA,MAAc,WAAA,UAAA,EAAU,CAAA;AAAGxB,IAAAA,CAAAA,OAAAwB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAxB,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAA2B,EAAAA;AAAA,EAAA,IAAA3B,CAAAA,SAAAuB,EAAAA,EAAA;AAF7DI,IAAAA,EAAAA,mBAAA,IAAA,CAAA,KAAA,EAAA,EAAe,SAAA,EAAA,uGAAA,EACbJ,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,MACAC;AAAAA,KAAAA,EACF,CAAA;AAAMxB,IAAAA,CAAAA,OAAAuB,EAAAA;AAAAvB,IAAAA,CAAAA,OAAA2B,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAA3B,EAAA,EAAA,CAAA;AAAA,EAAA;AAJR,EAAA,MAAA4B,WAAAA,GACED,EAAAA;AAIA,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAA7B,CAAAA,CAAA,EAAA,CAAA,KAAAK,OAAAA,IAAAL,CAAAA,SAAAoB,KAAAA,IAAApB,CAAAA,CAAA,EAAA,CAAA,KAAA4B,WAAAA,EAAA;AAGAC,IAAAA,EAAAA,uBAAC,iBAAA,EAAA,EACQT,KAAAA,EACMQ,WAAAA,EACJvB,OAAAA,EACH,OAAA,KAAA,EAAK,CAAA;AACXL,IAAAA,CAAAA,OAAAK,OAAAA;AAAAL,IAAAA,CAAAA,OAAAoB,KAAAA;AAAApB,IAAAA,CAAAA,OAAA4B,WAAAA;AAAA5B,IAAAA,CAAAA,OAAA6B,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAA7B,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OALF6B,EAAAA;AAKE,CAAA;AAIN,MAAMC,gBAAgB/B,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAK;AAAAA,GAAA,GAAAP,EAAAA;AACrB,EAAA,MAAAQ,UAAgBD,IAAAA,KAAS,OAAA;AACzB,EAAA,MAAA,CAAAyB,cAAAA,EAAAC,iBAAA,IAA4CC,OAAAA,CAC1C1B,OAAAA,GAAA2B,eAAAC,cACF,CAAA;AAAE,EAAA,IAAA3B,EAAAA;AAAA,EAAA,IAAAR,CAAAA,QAAAgC,iBAAAA,EAAA;AAEuBxB,IAAAA,EAAAA,GAAA4B,CAAAA,qBAAAA,KAAA;AACvBJ,MAAAA,iBAAAA,CAAkBK,CAAAA,IAAAA,KAAA;AAChB,QAAA,IAAIA,IAAAA,CAAItB,KAAAA,KAAWqB,qBAAAA,CAAqBrB,KAAAA,EAAM;AAAA,UAAA,OACrCsB,IAAAA;AAAAA,QAAI;AACZ,QAAA,OAEMD,qBAAAA;AAAAA,MAAqB,CAC7B,CAAA;AAAA,IAAC,CAAA;AACHpC,IAAAA,CAAAA,MAAAgC,iBAAAA;AAAAhC,IAAAA,CAAAA,MAAAQ,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAR,EAAA,CAAA,CAAA;AAAA,EAAA;AARD,EAAA,MAAAsC,gBAAAA,GAAyB9B,EAAAA;AAQvB,EAAA,IAAAK,EAAAA;AAAA,EAAA,IAAAb,EAAA,CAAA,CAAA,KAAAO,WAAAP,CAAAA,QAAAgC,iBAAAA,EAAA;AAEyDnB,IAAAA,EAAAA,GAAA0B,CAAAA,MAAAA,KAAA;AACzD,MAAA,MAAAC,aAAmBD,MAAAA,CAAMC,UAAAA;AAEzB,MAAA,IAAIA,UAAAA,KAAenB,aAAAA,CAAaoB,KAAAA,IAA5B,CAAuClC,OAAAA,EAAO;AAChDyB,QAAAA,iBAAAA,CAAkBX,aAAa,CAAA;AAAA,MAAC,CAAA,MAAA;AAC3B,QAAA,IAAImB,eAAeE,MAAAA,EAAS;AACjCV,UAAAA,iBAAAA,CAAkBW,CAAAA,MAAAA,KAAA;AAChB,YAAA,IAAIN,MAAAA,CAAII,UAAWD,UAAAA,EAAU;AAAA,cAAA,OAASH,MAAAA;AAAAA,YAAI;AAAC,YAAA,OACpC;AAAA,cAAA,GAAKA,MAAAA;AAAAA,cAAII,KAAAA,EAASD;AAAAA,aAAW;AAAA,UAAC,CACtC,CAAA;AAAA,QAAC,CAAA,MAAA;AAEFR,UAAAA,iBAAAA,CAAkBY,WAAW,CAAA;AAAA,QAAC;AAAA,MAC/B;AAAA,IAAA,CAAA;AACF5C,IAAAA,CAAAA,MAAAO,OAAAA;AAAAP,IAAAA,CAAAA,MAAAgC,iBAAAA;AAAAhC,IAAAA,CAAAA,MAAAa,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAb,EAAA,CAAA,CAAA;AAAA,EAAA;AAbD,EAAA,MAAA6C,aAAAA,GAA2DhC,EAAAA;AAazD,EAAA,IAAAU,EAAAA;AAAA,EAAA,IAAAvB,CAAAA,CAAA,CAAA,CAAA,KAAA6C,aAAAA,IAAA7C,CAAAA,CAAA,CAAA,CAAA,KAAA+B,cAAAA,CAAAhB,KAAAA,IAAAf,CAAAA,CAAA,CAAA,CAAA,KAAA+B,eAAAU,KAAAA,EAAA;AAIGlB,IAAAA,EAAAA,GAAAQ,cAAAA,CAAchB,UAAWM,aAAAA,CAAaN,KAAAA,wBACpC,aAAA,EAAA,EACW,SAAA,EAAA,6EAAA,EACE,WAAA,EAAA,GAAA,EACL,KAAA,EAAAgB,eAAcU,KAAAA,EACNI,aAAAA,EACD,YAAA,EAAA,CAAA,EACC,aAAA,EAAA,KAAA,EACI,mBAAA,KAAA,EACNC,WAAAA,EAAAA,aAAAA,EACb,iBAAA,EAAA,IAAA,EAAiB,CAAA;AAEpB9C,IAAAA,CAAAA,MAAA6C,aAAAA;AAAA7C,IAAAA,CAAAA,CAAA,CAAA,IAAA+B,cAAAA,CAAAhB,KAAAA;AAAAf,IAAAA,CAAAA,CAAA,CAAA,IAAA+B,cAAAA,CAAAU,KAAAA;AAAAzC,IAAAA,CAAAA,MAAAuB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAvB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAwB,EAAAA;AAAA,EAAA,IAAAxB,EAAA,CAAA,CAAA,KAAAyB,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAKUF,IAAAA,EAAAA,GAAA;AAAA,MAAAuB,OAAAA,EACE;AAAA,KACX;AAAC/C,IAAAA,CAAAA,MAAAwB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAxB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAA2B,EAAAA;AAAA,EAAA,IAAA3B,EAAA,EAAA,CAAA,KAAAsC,gBAAAA,IAAAtC,CAAAA,CAAA,EAAA,CAAA,KAAA+B,cAAAA,CAAAhB,KAAAA,IAAAf,CAAAA,SAAA+B,cAAAA,CAAAU,SAAAzC,CAAAA,SAAAM,IAAAA,EAAA;AANHqB,IAAAA,EAAAA,mBAAA,GAAA,CAAC,iBAAA,EAAA,EACmB,gBAAA,EAAAI,cAAAA,CAAchB,KAAAA,EACtBuB,QAAAA,EAAAA,gBAAAA,EACO,eAAA,EAAAP,cAAAA,CAAcU,KAAAA,EACtB,OAAA,EAAAjB,EAAAA,EAGHlB,IAAAA,EAAI,CAAA;AACVN,IAAAA,CAAAA,OAAAsC,gBAAAA;AAAAtC,IAAAA,CAAAA,CAAA,EAAA,IAAA+B,cAAAA,CAAAhB,KAAAA;AAAAf,IAAAA,CAAAA,CAAA,EAAA,IAAA+B,cAAAA,CAAAU,KAAAA;AAAAzC,IAAAA,CAAAA,OAAAM,IAAAA;AAAAN,IAAAA,CAAAA,OAAA2B,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAA3B,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAA6B,EAAAA;AAAA,EAAA,IAAA7B,EAAA,EAAA,CAAA,KAAAuB,MAAAvB,CAAAA,SAAA2B,EAAAA,EAAA;AAtBJE,IAAAA,EAAAA,mBAAA,IAAA,CAAA,KAAA,EAAA,EAAe,SAAA,EAAA,0CAAA,EACZN,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,MAaDI;AAAAA,KAAAA,EASF,CAAA;AAAM3B,IAAAA,CAAAA,OAAAuB,EAAAA;AAAAvB,IAAAA,CAAAA,OAAA2B,EAAAA;AAAA3B,IAAAA,CAAAA,OAAA6B,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAA7B,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAvBN6B,EAAAA;AAuBM,CAAA;AAQH,MAAMmB,mBAAmBC,CAAAA,KAAAA,KAAA;AAAA,EAAA,MAAAjD,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAA,EAAA,IAAAF,EAAAA;AAAA,EAAA,IAAAC,EAAA,CAAA,CAAA,KAAAyB,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAG1B3B,IAAAA,EAAAA,uBAAA,KAAA,EAAA,EAAe,SAAA,EAAA,kFACb,QAAA,kBAAA,GAAA,CAAA,MAAA,EAAA,EAAM,0BAAY,CAAA,EACpB,CAAA;AAAMC,IAAAA,CAAAA,MAAAD,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAC,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAQ,EAAAA;AAAA,EAAA,IAAAR,CAAAA,QAAAiD,KAAAA,EAAA;AAHRzC,IAAAA,EAAAA,mBAAA,IAAA,CAAA,KAAA,EAAA,EAAe,SAAA,EAAA,2JAAA,EACbT,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,sBAGA,GAAA,CAAA,SAAe,SAAA,EAAA,2CAAA,EACb,8BAAC,aAAA,EAAA,EAAa,GAAKkD,UACrB;AAAA,KAAA,EACF,CAAA;AAAMjD,IAAAA,CAAAA,MAAAiD,KAAAA;AAAAjD,IAAAA,CAAAA,MAAAQ,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAR,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAPNQ,EAAAA;AAOM;AAnHkD,SAAAI,MAAAI,IAAAA,EAAA;AAAA,EAAA,OAS3BA,KAAID,KAAAA,KAAW,OAAA;AAAO;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/widget/OrderExpiryInput/index.tsx"],"sourcesContent":["import { UnstyledInput } from \"@/components/ui/input\";\nimport { NumericFormat, type NumericFormatProps } from \"react-number-format\";\nimport { DropdownWithItems } from \"../Dropdown/DropdownWithItems\";\nimport type { DropdownItem, DropdownWithItemsProps } from \"../Dropdown/types\";\nimport { ChevronIcon } from \"../Icon/ChevronIcon\";\nimport { useAtom } from \"jotai\";\nimport {\n timeUnitAtom as limitTimeUnitAtom,\n type TimeUnit,\n type TimeUnitObject,\n} from \"@/core/limit/state/deadlineAtom\";\nimport { timeUnitAtom as otcTimeUnitAtom } from \"@/core/otc/state/deadlineAtom\";\nimport {\n minTimeUnit,\n neverTimeUnit,\n timeUnits,\n} from \"@/core/limit/state/constants\";\n\ntype TimeUnitsDropdownProps = {\n expiryTimeValue: number;\n selectedTimeUnit: TimeUnit;\n onSelect: (timeUnit: TimeUnitObject) => void;\n classes?: DropdownWithItemsProps[\"classes\"];\n type: OrderExpiryInputProps[\"type\"];\n};\n\nconst TimeUnitsDropdown: React.FC<TimeUnitsDropdownProps> = ({\n expiryTimeValue,\n selectedTimeUnit,\n onSelect,\n classes,\n type,\n}) => {\n const isLimit = type === \"limit\";\n const specificTimeUnits = isLimit\n ? timeUnits.filter((item) => item.label !== \"never\")\n : timeUnits; // OTC can have 0 deadline\n\n const items = specificTimeUnits.map<DropdownItem>((item) => ({\n label: item.label,\n onSelect: () => {\n onSelect(item);\n },\n className: \"capitalize\",\n selected: item.label === selectedTimeUnit,\n }));\n\n const label =\n expiryTimeValue > 1 || selectedTimeUnit === neverTimeUnit.label\n ? selectedTimeUnit\n : selectedTimeUnit.slice(0, -1); // \"days\" -> \"day\"\n\n const menuTrigger = (\n <div className=\"flex justify-between items-center gap-1.5 text-contrast-3 dark:text-contrast-7 text-sm cursor-pointer\">\n <span className=\"capitalize\">{label}</span>\n <ChevronIcon width={12} height={12} className=\"pt-[2px]\" />\n </div>\n );\n\n return (\n <DropdownWithItems\n items={items}\n menuTrigger={menuTrigger}\n classes={classes}\n align=\"end\"\n />\n );\n};\n\nconst TimeUnitInput = ({ type }: OrderExpiryInputProps) => {\n const isLimit = type === \"limit\";\n const [timeUnitObject, setTimeUnitObject] = useAtom(\n isLimit ? limitTimeUnitAtom : otcTimeUnitAtom\n );\n\n const onTimeUnitChange = (currentTimeUnitObject: TimeUnitObject) => {\n setTimeUnitObject((prev) => {\n if (prev.label === currentTimeUnitObject.label) {\n return prev;\n }\n\n return currentTimeUnitObject;\n });\n };\n\n const onValueChange: NumericFormatProps[\"onValueChange\"] = (values) => {\n const floatValue = values.floatValue;\n\n if (floatValue === neverTimeUnit.value && !isLimit) {\n setTimeUnitObject(neverTimeUnit);\n } else if (floatValue !== undefined) {\n setTimeUnitObject((prev) => {\n if (prev.value === floatValue) return prev;\n return { ...prev, value: floatValue };\n });\n } else {\n setTimeUnitObject(minTimeUnit);\n }\n };\n\n return (\n <div className=\"flex justify-between items-center flex-1\">\n {timeUnitObject.label !== neverTimeUnit.label && (\n <NumericFormat\n className=\"min-w-0 w-full text-lg font-geist-mono text-contrast-3 dark:text-contrast-8\"\n placeholder=\"0\"\n value={timeUnitObject.value}\n onValueChange={onValueChange}\n decimalScale={0}\n allowNegative={false}\n allowLeadingZeros={false}\n customInput={UnstyledInput}\n thousandSeparator\n />\n )}\n <TimeUnitsDropdown\n selectedTimeUnit={timeUnitObject.label}\n onSelect={onTimeUnitChange}\n expiryTimeValue={timeUnitObject.value}\n classes={{\n trigger: \"w-full min-h-[28px]\",\n }}\n type={type}\n />\n </div>\n );\n};\n\ntype OrderExpiryInputProps = {\n type: \"limit\" | \"otc\";\n};\n\nexport const OrderExpiryInput = (props: OrderExpiryInputProps) => {\n return (\n <div className=\"flex flex-col gap-[8px] p-4 border-1 rounded-[12px] border-transparent transition-all focus-within:border-primary-azul-1 bg-contrast-8 dark:bg-contrast-2\">\n <div className=\"flex items-center justify-between text-xs text-contrast-3 dark:text-contrast-7\">\n <span>Order Expiry</span>\n </div>\n <div className=\"flex items-center justify-between gap-1.5\">\n <TimeUnitInput {...props} />\n </div>\n </div>\n );\n};\n"],"names":["TimeUnitsDropdown","t0","$","_c","expiryTimeValue","selectedTimeUnit","onSelect","classes","type","isLimit","t1","specificTimeUnits","timeUnits","filter","_temp","t2","item_0","label","item","className","selected","map","items","neverTimeUnit","slice","t3","t4","Symbol","for","t5","menuTrigger","t6","TimeUnitInput","timeUnitObject","setTimeUnitObject","useAtom","limitTimeUnitAtom","otcTimeUnitAtom","currentTimeUnitObject","prev","onTimeUnitChange","values","floatValue","value","undefined","prev_0","minTimeUnit","onValueChange","UnstyledInput","trigger","OrderExpiryInput","props"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"receiverAddressAtom.d.ts","sourceRoot":"","sources":["../../../../../src/components/widget/ReceiverAddress/state/receiverAddressAtom.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAExD,eAAO,MAAM,mBAAmB;;CAA8B,CAAC;AAE/D,eAAO,MAAM,sBAAsB,QAAO,wBAKzC,CAAC;AAEF,eAAO,MAAM,2BAA2B,iCAEvC,CAAC"}
1
+ {"version":3,"file":"receiverAddressAtom.d.ts","sourceRoot":"","sources":["../../../../../src/components/widget/ReceiverAddress/state/receiverAddressAtom.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAExD,eAAO,MAAM,mBAAmB;;CAA8B,CAAC;AAE/D,eAAO,MAAM,sBAAsB,QAAO,wBAKzC,CAAC;AAEF,eAAO,MAAM,2BAA2B,iCAEvC,CAAC"}
@@ -1,7 +1,6 @@
1
1
  import { d as distExports } from '../../../../_virtual/index.js';
2
2
  import { shortenAddress } from '../../../../lib/utils/index.js';
3
- import { atom } from 'jotai';
4
- import { useAtom, useAtomValue } from '../../../../core/store.js';
3
+ import { atom, useAtom, useAtomValue } from 'jotai';
5
4
 
6
5
  const receiverAddressAtom = atom();
7
6
  const useSwapReceiverAddress = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"receiverAddressAtom.js","sources":["../../../../../src/components/widget/ReceiverAddress/state/receiverAddressAtom.ts"],"sourcesContent":["import { shortenAddress } from \"@/lib/utils\";\nimport { atom } from \"jotai\";\nimport { useAtom, useAtomValue } from \"@/core/store\";\nimport type { Address } from \"viem\";\nimport type { UseReceiverAddressReturn } from \"./types\";\n\nexport const receiverAddressAtom = atom<Address | undefined>();\n\nexport const useSwapReceiverAddress = (): UseReceiverAddressReturn => {\n const [address, setAddress] = useAtom(receiverAddressAtom);\n const shortAddress = address ? shortenAddress(address) : undefined;\n\n return { address, setAddress, shortAddress };\n};\n\nexport const useSwapReceiverAddressValue = () => {\n return useAtomValue(receiverAddressAtom);\n};\n"],"names":["receiverAddressAtom","atom","useSwapReceiverAddress","$","_c","address","setAddress","useAtom","t0","shortenAddress","undefined","shortAddress","t1","useSwapReceiverAddressValue","useAtomValue"],"mappings":";;;;;AAMO,MAAMA,sBAAsBC,IAAAA;AAE5B,MAAMC,yBAAyBA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACpC,EAAA,MAAA,CAAAC,OAAAA,EAAAC,UAAA,CAAA,GAA8BC,QAAQP,mBAAmB,CAAA;AAAE,EAAA,IAAAQ,EAAAA;AAAA,EAAA,IAAAL,CAAAA,QAAAE,OAAAA,EAAA;AACtCG,IAAAA,EAAAA,GAAAH,OAAAA,GAAUI,cAAAA,CAAeJ,OAAmB,CAAA,GAA5CK,MAAAA;AAA6CP,IAAAA,CAAAA,MAAAE,OAAAA;AAAAF,IAAAA,CAAAA,MAAAK,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAL,EAAA,CAAA,CAAA;AAAA,EAAA;AAAlE,EAAA,MAAAQ,YAAAA,GAAqBH,EAAAA;AAA8C,EAAA,IAAAI,EAAAA;AAAA,EAAA,IAAAT,CAAAA,CAAA,CAAA,CAAA,KAAAE,OAAAA,IAAAF,CAAAA,QAAAG,UAAAA,IAAAH,CAAAA,CAAA,CAAA,CAAA,KAAAQ,YAAAA,EAAA;AAE5DC,IAAAA,EAAAA,GAAA;AAAA,MAAAP,OAAAA;AAAAA,MAAAC,UAAAA;AAAAA,MAAAK;AAAAA,KAAoC;AAACR,IAAAA,CAAAA,MAAAE,OAAAA;AAAAF,IAAAA,CAAAA,MAAAG,UAAAA;AAAAH,IAAAA,CAAAA,MAAAQ,YAAAA;AAAAR,IAAAA,CAAAA,MAAAS,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAT,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAArCS,EAAAA;AAAqC;AAGvC,MAAMC,8BAA8BA,MAAA;AAAA,EAAA,OAClCC,aAAad,mBAAmB,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"receiverAddressAtom.js","sources":["../../../../../src/components/widget/ReceiverAddress/state/receiverAddressAtom.ts"],"sourcesContent":["import { shortenAddress } from \"@/lib/utils\";\nimport { atom, useAtom, useAtomValue } from \"jotai\";\nimport type { Address } from \"viem\";\nimport type { UseReceiverAddressReturn } from \"./types\";\n\nexport const receiverAddressAtom = atom<Address | undefined>();\n\nexport const useSwapReceiverAddress = (): UseReceiverAddressReturn => {\n const [address, setAddress] = useAtom(receiverAddressAtom);\n const shortAddress = address ? shortenAddress(address) : undefined;\n\n return { address, setAddress, shortAddress };\n};\n\nexport const useSwapReceiverAddressValue = () => {\n return useAtomValue(receiverAddressAtom);\n};\n"],"names":["receiverAddressAtom","atom","useSwapReceiverAddress","$","_c","address","setAddress","useAtom","t0","shortenAddress","undefined","shortAddress","t1","useSwapReceiverAddressValue","useAtomValue"],"mappings":";;;;AAKO,MAAMA,sBAAsBC,IAAAA;AAE5B,MAAMC,yBAAyBA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACpC,EAAA,MAAA,CAAAC,OAAAA,EAAAC,UAAA,CAAA,GAA8BC,QAAQP,mBAAmB,CAAA;AAAE,EAAA,IAAAQ,EAAAA;AAAA,EAAA,IAAAL,CAAAA,QAAAE,OAAAA,EAAA;AACtCG,IAAAA,EAAAA,GAAAH,OAAAA,GAAUI,cAAAA,CAAeJ,OAAmB,CAAA,GAA5CK,MAAAA;AAA6CP,IAAAA,CAAAA,MAAAE,OAAAA;AAAAF,IAAAA,CAAAA,MAAAK,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAL,EAAA,CAAA,CAAA;AAAA,EAAA;AAAlE,EAAA,MAAAQ,YAAAA,GAAqBH,EAAAA;AAA8C,EAAA,IAAAI,EAAAA;AAAA,EAAA,IAAAT,CAAAA,CAAA,CAAA,CAAA,KAAAE,OAAAA,IAAAF,CAAAA,QAAAG,UAAAA,IAAAH,CAAAA,CAAA,CAAA,CAAA,KAAAQ,YAAAA,EAAA;AAE5DC,IAAAA,EAAAA,GAAA;AAAA,MAAAP,OAAAA;AAAAA,MAAAC,UAAAA;AAAAA,MAAAK;AAAAA,KAAoC;AAACR,IAAAA,CAAAA,MAAAE,OAAAA;AAAAF,IAAAA,CAAAA,MAAAG,UAAAA;AAAAH,IAAAA,CAAAA,MAAAQ,YAAAA;AAAAR,IAAAA,CAAAA,MAAAS,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAT,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAArCS,EAAAA;AAAqC;AAGvC,MAAMC,8BAA8BA,MAAA;AAAA,EAAA,OAClCC,aAAad,mBAAmB,CAAA;AAAC;;;;"}
@@ -4,7 +4,7 @@ import { receiverAddressAtom } from './receiverAddressAtom.js';
4
4
  import { queryClient } from '../../../../lib/queryClient.js';
5
5
  import { isSupportedChainId } from '../../../../lib/web3/wagmi/utils.js';
6
6
  import { constructIsContractAtAddressQueryKey, getIsContractAtAddress } from '../../../../hooks/getCode/query.js';
7
- import { jotaiStore } from '../../../../core/store.js';
7
+ import { jotaiStore } from '../../../../core/inputs/state/store.js';
8
8
  import { accountAtom } from '../../../../lib/web3/wagmi/external.js';
9
9
  import { resetOrdersCountAtom } from '../../AppHeader/state/showMoreAtom.js';
10
10
  import { enabledSrcChainsAtom } from '../../../../core/state/enabledChainsAtom.js';
@@ -1 +1 @@
1
- {"version":3,"file":"subscriptions.js","sources":["../../../../../src/components/widget/ReceiverAddress/state/subscriptions.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { watchAccount } from \"@wagmi/core\";\nimport { receiverAddressAtom } from \"./receiverAddressAtom\";\n\nimport { queryClient } from \"@/lib/queryClient\";\n\nimport { isSupportedChainId } from \"@/lib/web3/wagmi/utils\";\nimport {\n constructIsContractAtAddressQueryKey,\n getIsContractAtAddress,\n} from \"@/hooks/getCode/query\";\nimport { jotaiStore } from \"@/core/store\";\nimport { accountAtom } from \"@/lib/web3/wagmi/external\";\nimport { resetOrdersCountAtom } from \"../../AppHeader/state/showMoreAtom\";\nimport { enabledSrcChainsAtom } from \"@/core/state/enabledChainsAtom\";\n\nexport function subscribeToAccountChanges() {\n // subscribes to wallet account changes\n // config.subscribe(() => getAccount(config), onChange)\n return watchAccount(wagmiConfig, {\n onChange: async ({ address, chainId }) => {\n const enabledSrcChains = jotaiStore.get(enabledSrcChainsAtom);\n\n // reset the receiver address if the address is not valid or chainId is not supported\n if (\n !address ||\n chainId === undefined ||\n !isSupportedChainId(chainId) ||\n !enabledSrcChains.includes(chainId)\n ) {\n jotaiStore.set(receiverAddressAtom, undefined);\n return;\n }\n\n // internal account atom to trigger atomEffects\n jotaiStore.set(accountAtom, address);\n // reset activities pagination\n jotaiStore.set(resetOrdersCountAtom);\n\n if (chainId !== wagmiConfig.state.chainId)\n // wallet chainId takes precedence\n wagmiConfig.setState((prev) => ({ ...prev, chainId }));\n\n const queryKey = constructIsContractAtAddressQueryKey({\n chainId,\n address,\n });\n\n const { isEOA } = await queryClient.ensureQueryData({\n queryKey,\n queryFn: () =>\n getIsContractAtAddress({\n address,\n chainId,\n }),\n });\n\n // save if address is EOA, otherwise reset\n jotaiStore.set(receiverAddressAtom, isEOA ? address : undefined);\n },\n });\n}\n"],"names":["subscribeToAccountChanges","watchAccount","wagmiConfig","onChange","address","chainId","enabledSrcChains","jotaiStore","get","enabledSrcChainsAtom","undefined","isSupportedChainId","includes","set","receiverAddressAtom","accountAtom","resetOrdersCountAtom","state","setState","prev","queryKey","constructIsContractAtAddressQueryKey","isEOA","queryClient","ensureQueryData","queryFn","getIsContractAtAddress"],"mappings":";;;;;;;;;;;AAgBO,SAASA,yBAAAA,GAA4B;AAG1C,EAAA,OAAOC,aAAaC,WAAAA,EAAa;AAAA,IAC/BC,UAAU,OAAO;AAAA,MAAEC,OAAAA;AAAAA,MAASC;AAAAA,KAAQ,KAAM;AACxC,MAAA,MAAMC,gBAAAA,GAAmBC,UAAAA,CAAWC,GAAAA,CAAIC,oBAAoB,CAAA;AAG5D,MAAA,IACE,CAACL,OAAAA,IACDC,OAAAA,KAAYK,MAAAA,IACZ,CAACC,kBAAAA,CAAmBN,OAAO,CAAA,IAC3B,CAACC,gBAAAA,CAAiBM,QAAAA,CAASP,OAAO,CAAA,EAClC;AACAE,QAAAA,UAAAA,CAAWM,GAAAA,CAAIC,qBAAqBJ,MAAS,CAAA;AAC7C,QAAA;AAAA,MACF;AAGAH,MAAAA,UAAAA,CAAWM,GAAAA,CAAIE,aAAaX,OAAO,CAAA;AAEnCG,MAAAA,UAAAA,CAAWM,IAAIG,oBAAoB,CAAA;AAEnC,MAAA,IAAIX,OAAAA,KAAYH,YAAYe,KAAAA,CAAMZ,OAAAA;AAEhCH,QAAAA,WAAAA,CAAYgB,SAAUC,CAAAA,IAAAA,MAAU;AAAA,UAAE,GAAGA,IAAAA;AAAAA,UAAMd;AAAAA,SAAQ,CAAE,CAAA;AAEvD,MAAA,MAAMe,WAAWC,oCAAAA,CAAqC;AAAA,QACpDhB,OAAAA;AAAAA,QACAD;AAAAA,OACD,CAAA;AAED,MAAA,MAAM;AAAA,QAAEkB;AAAAA,OAAM,GAAI,MAAMC,WAAAA,CAAYC,eAAAA,CAAgB;AAAA,QAClDJ,QAAAA;AAAAA,QACAK,OAAAA,EAASA,MACPC,sBAAAA,CAAuB;AAAA,UACrBtB,OAAAA;AAAAA,UACAC;AAAAA,SACD;AAAA,OACJ,CAAA;AAGDE,MAAAA,UAAAA,CAAWM,GAAAA,CAAIC,mBAAAA,EAAqBQ,KAAAA,GAAQlB,OAAAA,GAAUM,MAAS,CAAA;AAAA,IACjE;AAAA,GACD,CAAA;AACH;;;;"}
1
+ {"version":3,"file":"subscriptions.js","sources":["../../../../../src/components/widget/ReceiverAddress/state/subscriptions.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { watchAccount } from \"@wagmi/core\";\nimport { receiverAddressAtom } from \"./receiverAddressAtom\";\n\nimport { queryClient } from \"@/lib/queryClient\";\n\nimport { isSupportedChainId } from \"@/lib/web3/wagmi/utils\";\nimport {\n constructIsContractAtAddressQueryKey,\n getIsContractAtAddress,\n} from \"@/hooks/getCode/query\";\nimport { jotaiStore } from \"@/core/inputs/state/store\";\nimport { accountAtom } from \"@/lib/web3/wagmi/external\";\nimport { resetOrdersCountAtom } from \"../../AppHeader/state/showMoreAtom\";\nimport { enabledSrcChainsAtom } from \"@/core/state/enabledChainsAtom\";\n\nexport function subscribeToAccountChanges() {\n // subscribes to wallet account changes\n // config.subscribe(() => getAccount(config), onChange)\n return watchAccount(wagmiConfig, {\n onChange: async ({ address, chainId }) => {\n const enabledSrcChains = jotaiStore.get(enabledSrcChainsAtom);\n\n // reset the receiver address if the address is not valid or chainId is not supported\n if (\n !address ||\n chainId === undefined ||\n !isSupportedChainId(chainId) ||\n !enabledSrcChains.includes(chainId)\n ) {\n jotaiStore.set(receiverAddressAtom, undefined);\n return;\n }\n\n // internal account atom to trigger atomEffects\n jotaiStore.set(accountAtom, address);\n // reset activities pagination\n jotaiStore.set(resetOrdersCountAtom);\n\n if (chainId !== wagmiConfig.state.chainId)\n // wallet chainId takes precedence\n wagmiConfig.setState((prev) => ({ ...prev, chainId }));\n\n const queryKey = constructIsContractAtAddressQueryKey({\n chainId,\n address,\n });\n\n const { isEOA } = await queryClient.ensureQueryData({\n queryKey,\n queryFn: () =>\n getIsContractAtAddress({\n address,\n chainId,\n }),\n });\n\n // save if address is EOA, otherwise reset\n jotaiStore.set(receiverAddressAtom, isEOA ? address : undefined);\n },\n });\n}\n"],"names":["subscribeToAccountChanges","watchAccount","wagmiConfig","onChange","address","chainId","enabledSrcChains","jotaiStore","get","enabledSrcChainsAtom","undefined","isSupportedChainId","includes","set","receiverAddressAtom","accountAtom","resetOrdersCountAtom","state","setState","prev","queryKey","constructIsContractAtAddressQueryKey","isEOA","queryClient","ensureQueryData","queryFn","getIsContractAtAddress"],"mappings":";;;;;;;;;;;AAgBO,SAASA,yBAAAA,GAA4B;AAG1C,EAAA,OAAOC,aAAaC,WAAAA,EAAa;AAAA,IAC/BC,UAAU,OAAO;AAAA,MAAEC,OAAAA;AAAAA,MAASC;AAAAA,KAAQ,KAAM;AACxC,MAAA,MAAMC,gBAAAA,GAAmBC,UAAAA,CAAWC,GAAAA,CAAIC,oBAAoB,CAAA;AAG5D,MAAA,IACE,CAACL,OAAAA,IACDC,OAAAA,KAAYK,MAAAA,IACZ,CAACC,kBAAAA,CAAmBN,OAAO,CAAA,IAC3B,CAACC,gBAAAA,CAAiBM,QAAAA,CAASP,OAAO,CAAA,EAClC;AACAE,QAAAA,UAAAA,CAAWM,GAAAA,CAAIC,qBAAqBJ,MAAS,CAAA;AAC7C,QAAA;AAAA,MACF;AAGAH,MAAAA,UAAAA,CAAWM,GAAAA,CAAIE,aAAaX,OAAO,CAAA;AAEnCG,MAAAA,UAAAA,CAAWM,IAAIG,oBAAoB,CAAA;AAEnC,MAAA,IAAIX,OAAAA,KAAYH,YAAYe,KAAAA,CAAMZ,OAAAA;AAEhCH,QAAAA,WAAAA,CAAYgB,SAAUC,CAAAA,IAAAA,MAAU;AAAA,UAAE,GAAGA,IAAAA;AAAAA,UAAMd;AAAAA,SAAQ,CAAE,CAAA;AAEvD,MAAA,MAAMe,WAAWC,oCAAAA,CAAqC;AAAA,QACpDhB,OAAAA;AAAAA,QACAD;AAAAA,OACD,CAAA;AAED,MAAA,MAAM;AAAA,QAAEkB;AAAAA,OAAM,GAAI,MAAMC,WAAAA,CAAYC,eAAAA,CAAgB;AAAA,QAClDJ,QAAAA;AAAAA,QACAK,OAAAA,EAASA,MACPC,sBAAAA,CAAuB;AAAA,UACrBtB,OAAAA;AAAAA,UACAC;AAAAA,SACD;AAAA,OACJ,CAAA;AAGDE,MAAAA,UAAAA,CAAWM,GAAAA,CAAIC,mBAAAA,EAAqBQ,KAAAA,GAAQlB,OAAAA,GAAUM,MAAS,CAAA;AAAA,IACjE;AAAA,GACD,CAAA;AACH;;;;"}
@@ -5,7 +5,7 @@ import { AccordionTrigger, AccordionContent, AccordionItem, Accordion } from '..
5
5
  import { DetailWithTooltip } from '../Details/DetailWithTooltip.js';
6
6
  import { DeltaIcon } from '../Icon/DeltaIcon.js';
7
7
  import { MarketIcon } from '../Icon/MarketIcon.js';
8
- import { useSetAtom } from '../../../core/store.js';
8
+ import { useSetAtom } from 'jotai';
9
9
  import { setSwapModeAtom } from './state/swapModeActionsAtom.js';
10
10
  import { useSwapPrices } from '../../../hooks/swap/prices/useSwapPrices.js';
11
11
  import { formatFiatPrice } from '../../../lib/utils/formatFiatPrice.js';
@@ -1 +1 @@
1
- {"version":3,"file":"SwapModeSwitcherExpandable.js","sources":["../../../../src/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport {\n Accordion,\n AccordionContent,\n AccordionItem,\n AccordionTrigger,\n} from \"@/components/ui/accordion\";\nimport { DetailWithTooltip } from \"@/components/widget/Details/DetailWithTooltip\";\nimport { DeltaIcon } from \"@/components/widget/Icon/DeltaIcon\";\nimport { MarketIcon } from \"@/components/widget/Icon/MarketIcon\";\nimport { useSetAtom } from \"@/core/store\";\nimport { setSwapModeAtom } from \"./state/swapModeActionsAtom\";\nimport type { SwapModeSwitcherExpandableProps } from \"./types\";\nimport { useSwapPrices } from \"@/hooks/swap/prices/useSwapPrices\";\n\nimport { formatFiatPrice } from \"@/lib/utils/formatFiatPrice\";\nimport type { WithClasses } from \"@/types/withClasses\";\nimport { useIsCrossChain } from \"@/core/state/isCrosschainAtom\";\nimport { useGlobalDeltaEnabled } from \"@/hooks/useGlobalDeltaEnabled\";\nimport { DexesList } from \"../DexesList/DexesList\";\nimport { useWidgetTokens } from \"@/core/inputs/state/common\";\nimport { ErrorBoundary } from \"react-error-boundary\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport type { SwapMode } from \"./state/types\";\n\nexport const SwapModeSwitcherExpandable: React.FC<\n SwapModeSwitcherExpandableProps\n> = ({ classes, currentEffectiveMode }) => {\n return (\n <Accordion type=\"single\" collapsible className={classes?.root}>\n <AccordionItem value=\"item-1\">\n <AccordionTrigger>\n <div className=\"flex items-center justify-between flex-1 gap-2\">\n <div>Swap Mode</div>\n <div>\n {currentEffectiveMode === \"delta\" ? (\n <div className=\"flex items-center gap-1\">\n <DeltaIcon /> Delta\n </div>\n ) : (\n \"Market\"\n )}\n </div>\n </div>\n </AccordionTrigger>\n <AccordionContent>\n <div className=\"flex items-center justify-between gap-4\">\n <DeltaModeItem currentEffectiveMode={currentEffectiveMode} />\n <MarketModeItem currentEffectiveMode={currentEffectiveMode} />\n </div>\n <DexesListWithErrorBoundary />\n </AccordionContent>\n </AccordionItem>\n </Accordion>\n );\n};\n\nconst SwapModeItem: React.FC<\n {\n icon: React.ReactNode;\n mode: SwapMode;\n // with consideration for deltaPrice.errors and market as fallback\n currentEffectiveMode: SwapMode;\n fees: React.ReactNode;\n tooltip: string;\n onClick?: () => void;\n } & WithClasses<\"root\">\n> = ({ icon, mode, currentEffectiveMode, fees, tooltip, classes, onClick }) => {\n return (\n <div\n className={cn(\n \"py-[14px] px-4 flex flex-1 gap-3 items-center bg-contrast-7 dark:bg-contrast-3 cursor-pointer rounded-md\",\n {\n \"outline outline-primary-azul-1\": currentEffectiveMode === mode,\n },\n classes?.root\n )}\n onClick={onClick}\n >\n <div>{icon}</div>\n <div className=\"flex flex-1 flex-col gap-1\">\n <div className=\"dark:text-contrast-9 text-sm\">\n {mode === \"delta\" ? \"Delta\" : \"Market\"}\n </div>\n <div className=\"flex items-center justify-between\">\n <DetailWithTooltip\n detail={\"Fees\"}\n tooltip={tooltip}\n classes={{\n icon: \"dark:fill-contrast-5 size-[12px]\",\n root: \"text-[10px]\",\n }}\n />\n <div className=\"text-[10px] font-geist-mono\">{fees}</div>\n </div>\n </div>\n </div>\n );\n};\n\nconst DeltaModeItem = ({\n currentEffectiveMode,\n}: {\n currentEffectiveMode: SwapMode;\n}) => {\n const setSwapMode = useSetAtom(setSwapModeAtom);\n const { onSettingsChange } = useWidgetEvents();\n\n const { enabledInConfig, enabledOnCurrentChain } = useGlobalDeltaEnabled();\n const isEnabled = enabledInConfig && enabledOnCurrentChain;\n\n const onClick = !isEnabled\n ? undefined\n : () => {\n setSwapMode(\"delta\");\n onSettingsChange?.({\n event: {\n name: \"Settings:switchSwapMode\",\n params: {\n swapMode: \"delta\",\n },\n },\n });\n };\n\n return (\n <SwapModeItem\n icon={<DeltaIcon />}\n mode=\"delta\"\n currentEffectiveMode={currentEffectiveMode}\n fees={<div className=\"text-[#A5D712]\">Gasless</div>}\n tooltip=\"Estimated network fees\"\n onClick={onClick}\n classes={{\n root: cn({\n \"cursor-not-allowed\": !isEnabled,\n }),\n }}\n />\n );\n};\n\nconst MarketModeItem = ({\n currentEffectiveMode,\n}: {\n currentEffectiveMode: SwapMode;\n}) => {\n const setSwapMode = useSetAtom(setSwapModeAtom);\n const { onSettingsChange } = useWidgetEvents();\n\n const gasCostUSD = useSwapPrices({\n enabled: false,\n }).market.price?.gasCostUSD;\n\n const formattedGasCostUSD =\n gasCostUSD !== undefined ? formatFiatPrice(Number(gasCostUSD)) : undefined;\n const marketNetworkFees =\n formattedGasCostUSD !== undefined\n ? formattedGasCostUSD === \"$0.00\"\n ? \"<$0.01\"\n : formattedGasCostUSD\n : \"N/A\";\n\n const isCrossChain = useIsCrossChain();\n\n const onClick = isCrossChain\n ? undefined\n : () => {\n setSwapMode(\"market\");\n onSettingsChange?.({\n event: {\n name: \"Settings:switchSwapMode\",\n params: {\n swapMode: \"market\",\n },\n },\n });\n };\n\n return (\n <SwapModeItem\n icon={<MarketIcon />}\n mode=\"market\"\n currentEffectiveMode={currentEffectiveMode}\n fees={marketNetworkFees}\n tooltip=\"Estimated network fees\"\n onClick={onClick}\n classes={{\n root: cn({\n \"cursor-not-allowed\": isCrossChain,\n }),\n }}\n />\n );\n};\n\nconst DexesListWithErrorBoundary = () => {\n const { priceMode, market } = useSwapPrices({ enabled: false });\n const { tokenFrom, tokenTo } = useWidgetTokens(\"swap\");\n\n if (priceMode !== \"market\" || !market.price || !tokenTo) return null;\n\n return (\n <ErrorBoundary fallback={null}>\n <DexesList\n marketPrice={market.price}\n tokenFrom={tokenFrom}\n tokenTo={tokenTo}\n />\n </ErrorBoundary>\n );\n};\n"],"names":["SwapModeSwitcherExpandable","t0","$","_c","classes","currentEffectiveMode","t1","root","t2","Symbol","for","t3","t4","t5","t6","t7","t8","t9","SwapModeItem","icon","mode","fees","tooltip","onClick","cn","t10","t11","DeltaModeItem","setSwapMode","useSetAtom","setSwapModeAtom","onSettingsChange","useWidgetEvents","enabledInConfig","enabledOnCurrentChain","useGlobalDeltaEnabled","isEnabled","undefined","event","name","params","swapMode","MarketModeItem","gasCostUSD","useSwapPrices","enabled","market","price","formatFiatPrice","Number","formattedGasCostUSD","marketNetworkFees","isCrossChain","useIsCrossChain","DexesListWithErrorBoundary","priceMode","tokenFrom","tokenTo","useWidgetTokens"],"mappings":"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"}
1
+ {"version":3,"file":"SwapModeSwitcherExpandable.js","sources":["../../../../src/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport {\n Accordion,\n AccordionContent,\n AccordionItem,\n AccordionTrigger,\n} from \"@/components/ui/accordion\";\nimport { DetailWithTooltip } from \"@/components/widget/Details/DetailWithTooltip\";\nimport { DeltaIcon } from \"@/components/widget/Icon/DeltaIcon\";\nimport { MarketIcon } from \"@/components/widget/Icon/MarketIcon\";\nimport { useSetAtom } from \"jotai\";\nimport { setSwapModeAtom } from \"./state/swapModeActionsAtom\";\nimport type { SwapModeSwitcherExpandableProps } from \"./types\";\nimport { useSwapPrices } from \"@/hooks/swap/prices/useSwapPrices\";\n\nimport { formatFiatPrice } from \"@/lib/utils/formatFiatPrice\";\nimport type { WithClasses } from \"@/types/withClasses\";\nimport { useIsCrossChain } from \"@/core/state/isCrosschainAtom\";\nimport { useGlobalDeltaEnabled } from \"@/hooks/useGlobalDeltaEnabled\";\nimport { DexesList } from \"../DexesList/DexesList\";\nimport { useWidgetTokens } from \"@/core/inputs/state/common\";\nimport { ErrorBoundary } from \"react-error-boundary\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport type { SwapMode } from \"./state/types\";\n\nexport const SwapModeSwitcherExpandable: React.FC<\n SwapModeSwitcherExpandableProps\n> = ({ classes, currentEffectiveMode }) => {\n return (\n <Accordion type=\"single\" collapsible className={classes?.root}>\n <AccordionItem value=\"item-1\">\n <AccordionTrigger>\n <div className=\"flex items-center justify-between flex-1 gap-2\">\n <div>Swap Mode</div>\n <div>\n {currentEffectiveMode === \"delta\" ? (\n <div className=\"flex items-center gap-1\">\n <DeltaIcon /> Delta\n </div>\n ) : (\n \"Market\"\n )}\n </div>\n </div>\n </AccordionTrigger>\n <AccordionContent>\n <div className=\"flex items-center justify-between gap-4\">\n <DeltaModeItem currentEffectiveMode={currentEffectiveMode} />\n <MarketModeItem currentEffectiveMode={currentEffectiveMode} />\n </div>\n <DexesListWithErrorBoundary />\n </AccordionContent>\n </AccordionItem>\n </Accordion>\n );\n};\n\nconst SwapModeItem: React.FC<\n {\n icon: React.ReactNode;\n mode: SwapMode;\n // with consideration for deltaPrice.errors and market as fallback\n currentEffectiveMode: SwapMode;\n fees: React.ReactNode;\n tooltip: string;\n onClick?: () => void;\n } & WithClasses<\"root\">\n> = ({ icon, mode, currentEffectiveMode, fees, tooltip, classes, onClick }) => {\n return (\n <div\n className={cn(\n \"py-[14px] px-4 flex flex-1 gap-3 items-center bg-contrast-7 dark:bg-contrast-3 cursor-pointer rounded-md\",\n {\n \"outline outline-primary-azul-1\": currentEffectiveMode === mode,\n },\n classes?.root\n )}\n onClick={onClick}\n >\n <div>{icon}</div>\n <div className=\"flex flex-1 flex-col gap-1\">\n <div className=\"dark:text-contrast-9 text-sm\">\n {mode === \"delta\" ? \"Delta\" : \"Market\"}\n </div>\n <div className=\"flex items-center justify-between\">\n <DetailWithTooltip\n detail={\"Fees\"}\n tooltip={tooltip}\n classes={{\n icon: \"dark:fill-contrast-5 size-[12px]\",\n root: \"text-[10px]\",\n }}\n />\n <div className=\"text-[10px] font-geist-mono\">{fees}</div>\n </div>\n </div>\n </div>\n );\n};\n\nconst DeltaModeItem = ({\n currentEffectiveMode,\n}: {\n currentEffectiveMode: SwapMode;\n}) => {\n const setSwapMode = useSetAtom(setSwapModeAtom);\n const { onSettingsChange } = useWidgetEvents();\n\n const { enabledInConfig, enabledOnCurrentChain } = useGlobalDeltaEnabled();\n const isEnabled = enabledInConfig && enabledOnCurrentChain;\n\n const onClick = !isEnabled\n ? undefined\n : () => {\n setSwapMode(\"delta\");\n onSettingsChange?.({\n event: {\n name: \"Settings:switchSwapMode\",\n params: {\n swapMode: \"delta\",\n },\n },\n });\n };\n\n return (\n <SwapModeItem\n icon={<DeltaIcon />}\n mode=\"delta\"\n currentEffectiveMode={currentEffectiveMode}\n fees={<div className=\"text-[#A5D712]\">Gasless</div>}\n tooltip=\"Estimated network fees\"\n onClick={onClick}\n classes={{\n root: cn({\n \"cursor-not-allowed\": !isEnabled,\n }),\n }}\n />\n );\n};\n\nconst MarketModeItem = ({\n currentEffectiveMode,\n}: {\n currentEffectiveMode: SwapMode;\n}) => {\n const setSwapMode = useSetAtom(setSwapModeAtom);\n const { onSettingsChange } = useWidgetEvents();\n\n const gasCostUSD = useSwapPrices({\n enabled: false,\n }).market.price?.gasCostUSD;\n\n const formattedGasCostUSD =\n gasCostUSD !== undefined ? formatFiatPrice(Number(gasCostUSD)) : undefined;\n const marketNetworkFees =\n formattedGasCostUSD !== undefined\n ? formattedGasCostUSD === \"$0.00\"\n ? \"<$0.01\"\n : formattedGasCostUSD\n : \"N/A\";\n\n const isCrossChain = useIsCrossChain();\n\n const onClick = isCrossChain\n ? undefined\n : () => {\n setSwapMode(\"market\");\n onSettingsChange?.({\n event: {\n name: \"Settings:switchSwapMode\",\n params: {\n swapMode: \"market\",\n },\n },\n });\n };\n\n return (\n <SwapModeItem\n icon={<MarketIcon />}\n mode=\"market\"\n currentEffectiveMode={currentEffectiveMode}\n fees={marketNetworkFees}\n tooltip=\"Estimated network fees\"\n onClick={onClick}\n classes={{\n root: cn({\n \"cursor-not-allowed\": isCrossChain,\n }),\n }}\n />\n );\n};\n\nconst DexesListWithErrorBoundary = () => {\n const { priceMode, market } = useSwapPrices({ enabled: false });\n const { tokenFrom, tokenTo } = useWidgetTokens(\"swap\");\n\n if (priceMode !== \"market\" || !market.price || !tokenTo) return null;\n\n return (\n <ErrorBoundary fallback={null}>\n <DexesList\n marketPrice={market.price}\n tokenFrom={tokenFrom}\n tokenTo={tokenTo}\n />\n </ErrorBoundary>\n );\n};\n"],"names":["SwapModeSwitcherExpandable","t0","$","_c","classes","currentEffectiveMode","t1","root","t2","Symbol","for","t3","t4","t5","t6","t7","t8","t9","SwapModeItem","icon","mode","fees","tooltip","onClick","cn","t10","t11","DeltaModeItem","setSwapMode","useSetAtom","setSwapModeAtom","onSettingsChange","useWidgetEvents","enabledInConfig","enabledOnCurrentChain","useGlobalDeltaEnabled","isEnabled","undefined","event","name","params","swapMode","MarketModeItem","gasCostUSD","useSwapPrices","enabled","market","price","formatFiatPrice","Number","formattedGasCostUSD","marketNetworkFees","isCrossChain","useIsCrossChain","DexesListWithErrorBoundary","priceMode","tokenFrom","tokenTo","useWidgetTokens"],"mappings":"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"}
@@ -1,3 +1,7 @@
1
- export declare const swapSideAtom: import('jotai').Atom<"SELL" | "BUY">;
2
- export declare const useSwapSide: () => "SELL" | "BUY";
1
+ import { SwapSideUnion } from '@velora-dex/sdk';
2
+ export declare const userSwapSideAtom: import('jotai').PrimitiveAtom<SwapSideUnion | undefined> & {
3
+ init: SwapSideUnion | undefined;
4
+ };
5
+ export declare const swapSideAtom: import('jotai').Atom<SwapSideUnion>;
6
+ export declare const useSwapSide: () => SwapSideUnion;
3
7
  //# sourceMappingURL=swapSideAtom.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"swapSideAtom.d.ts","sourceRoot":"","sources":["../../../../../src/components/widget/SwapModeSwitcher/state/swapSideAtom.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,YAAY,sCAgBvB,CAAC;AAEH,eAAO,MAAM,WAAW,sBAEvB,CAAC"}
1
+ {"version":3,"file":"swapSideAtom.d.ts","sourceRoot":"","sources":["../../../../../src/components/widget/SwapModeSwitcher/state/swapSideAtom.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGrD,eAAO,MAAM,gBAAgB;;CAAwB,CAAC;AAEtD,eAAO,MAAM,YAAY,qCAsBvB,CAAC;AAEH,eAAO,MAAM,WAAW,qBAEvB,CAAC"}
@@ -1,9 +1,9 @@
1
1
  import { swapTokenToAtom } from '../../../../core/inputs/state/selectedTokenAtom.js';
2
2
  import { currentSwapInputAtom } from '../../../../core/state/currentSwapInputAtom.js';
3
3
  import { tradeModeAtom } from '../../../../core/state/tradeModeAtom.js';
4
- import { atom } from 'jotai';
5
- import { useAtomValue } from '../../../../core/store.js';
4
+ import { atom, useAtomValue } from 'jotai';
6
5
 
6
+ const userSwapSideAtom = atom();
7
7
  const swapSideAtom = atom((get) => {
8
8
  const tradeMode = get(tradeModeAtom);
9
9
  if (tradeMode !== "swap") {
@@ -13,6 +13,10 @@ const swapSideAtom = atom((get) => {
13
13
  if (!tokenTo) {
14
14
  return "SELL";
15
15
  }
16
+ const userSwapSide = get(userSwapSideAtom);
17
+ if (userSwapSide) {
18
+ return userSwapSide;
19
+ }
16
20
  const currentSwapInput = get(currentSwapInputAtom);
17
21
  return currentSwapInput === "from" ? "SELL" : "BUY";
18
22
  });
@@ -20,5 +24,5 @@ const useSwapSide = () => {
20
24
  return useAtomValue(swapSideAtom);
21
25
  };
22
26
 
23
- export { swapSideAtom, useSwapSide };
27
+ export { swapSideAtom, useSwapSide, userSwapSideAtom };
24
28
  //# sourceMappingURL=swapSideAtom.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"swapSideAtom.js","sources":["../../../../../src/components/widget/SwapModeSwitcher/state/swapSideAtom.ts"],"sourcesContent":["import { swapTokenToAtom } from \"@/core/inputs/state/selectedTokenAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { tradeModeAtom } from \"@/core/state/tradeModeAtom\";\nimport { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\n\nexport const swapSideAtom = atom<\"SELL\" | \"BUY\">((get) => {\n const tradeMode = get(tradeModeAtom);\n\n if (tradeMode !== \"swap\") {\n return \"SELL\";\n }\n\n const tokenTo = get(swapTokenToAtom);\n\n if (!tokenTo) {\n return \"SELL\";\n }\n\n const currentSwapInput = get(currentSwapInputAtom);\n\n return currentSwapInput === \"from\" ? \"SELL\" : \"BUY\";\n});\n\nexport const useSwapSide = () => {\n return useAtomValue(swapSideAtom);\n};\n"],"names":["swapSideAtom","atom","get","tradeMode","tradeModeAtom","tokenTo","swapTokenToAtom","currentSwapInput","currentSwapInputAtom","useSwapSide","useAtomValue"],"mappings":";;;;;;AAMO,MAAMA,YAAAA,GAAeC,KAAsBC,CAAAA,GAAAA,KAAQ;AACxD,EAAA,MAAMC,SAAAA,GAAYD,IAAIE,aAAa,CAAA;AAEnC,EAAA,IAAID,cAAc,MAAA,EAAQ;AACxB,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,MAAME,OAAAA,GAAUH,IAAII,eAAe,CAAA;AAEnC,EAAA,IAAI,CAACD,OAAAA,EAAS;AACZ,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,MAAME,gBAAAA,GAAmBL,IAAIM,oBAAoB,CAAA;AAEjD,EAAA,OAAOD,gBAAAA,KAAqB,SAAS,MAAA,GAAS,KAAA;AAChD,CAAC;AAEM,MAAME,cAAcA,MAAA;AAAA,EAAA,OAClBC,aAAaV,YAAY,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"swapSideAtom.js","sources":["../../../../../src/components/widget/SwapModeSwitcher/state/swapSideAtom.ts"],"sourcesContent":["import { swapTokenToAtom } from \"@/core/inputs/state/selectedTokenAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { tradeModeAtom } from \"@/core/state/tradeModeAtom\";\nimport type { SwapSideUnion } from \"@velora-dex/sdk\";\nimport { atom, useAtomValue } from \"jotai\";\n\nexport const userSwapSideAtom = atom<SwapSideUnion>();\n\nexport const swapSideAtom = atom<SwapSideUnion>((get) => {\n const tradeMode = get(tradeModeAtom);\n\n if (tradeMode !== \"swap\") {\n return \"SELL\";\n }\n\n const tokenTo = get(swapTokenToAtom);\n\n if (!tokenTo) {\n return \"SELL\";\n }\n\n const userSwapSide = get(userSwapSideAtom);\n\n if (userSwapSide) {\n return userSwapSide;\n }\n\n const currentSwapInput = get(currentSwapInputAtom);\n\n return currentSwapInput === \"from\" ? \"SELL\" : \"BUY\";\n});\n\nexport const useSwapSide = () => {\n return useAtomValue(swapSideAtom);\n};\n"],"names":["userSwapSideAtom","atom","swapSideAtom","get","tradeMode","tradeModeAtom","tokenTo","swapTokenToAtom","userSwapSide","currentSwapInput","currentSwapInputAtom","useSwapSide","useAtomValue"],"mappings":";;;;;AAMO,MAAMA,mBAAmBC,IAAAA;AAEzB,MAAMC,YAAAA,GAAeD,KAAqBE,CAAAA,GAAAA,KAAQ;AACvD,EAAA,MAAMC,SAAAA,GAAYD,IAAIE,aAAa,CAAA;AAEnC,EAAA,IAAID,cAAc,MAAA,EAAQ;AACxB,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,MAAME,OAAAA,GAAUH,IAAII,eAAe,CAAA;AAEnC,EAAA,IAAI,CAACD,OAAAA,EAAS;AACZ,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,MAAME,YAAAA,GAAeL,IAAIH,gBAAgB,CAAA;AAEzC,EAAA,IAAIQ,YAAAA,EAAc;AAChB,IAAA,OAAOA,YAAAA;AAAAA,EACT;AAEA,EAAA,MAAMC,gBAAAA,GAAmBN,IAAIO,oBAAoB,CAAA;AAEjD,EAAA,OAAOD,gBAAAA,KAAqB,SAAS,MAAA,GAAS,KAAA;AAChD,CAAC;AAEM,MAAME,cAAcA,MAAA;AAAA,EAAA,OAClBC,aAAaV,YAAY,CAAA;AAAC;;;;"}