@velora-dex/widget 0.3.1 → 0.3.2-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (241) hide show
  1. package/dist/assets/bridges/canonical-uni.svg.js +12 -0
  2. package/dist/assets/bridges/canonical-uni.svg.js.map +1 -0
  3. package/dist/assets/bridges/cctp.svg.js +12 -0
  4. package/dist/assets/bridges/cctp.svg.js.map +1 -0
  5. package/dist/assets/bridges/celer.svg.js +16 -0
  6. package/dist/assets/bridges/celer.svg.js.map +1 -0
  7. package/dist/assets/bridges/relay.svg.js +12 -0
  8. package/dist/assets/bridges/relay.svg.js.map +1 -0
  9. package/dist/assets/refresh.svg.js +12 -0
  10. package/dist/assets/refresh.svg.js.map +1 -0
  11. package/dist/assets/speedometer.svg.js +12 -0
  12. package/dist/assets/speedometer.svg.js.map +1 -0
  13. package/dist/components/ui/accordion.d.ts +3 -2
  14. package/dist/components/ui/accordion.d.ts.map +1 -1
  15. package/dist/components/ui/accordion.js +64 -40
  16. package/dist/components/ui/accordion.js.map +1 -1
  17. package/dist/components/ui/skeleton.d.ts.map +1 -1
  18. package/dist/components/ui/skeleton.js.map +1 -1
  19. package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
  20. package/dist/components/widget/AppHeader/AppHeader.d.ts.map +1 -1
  21. package/dist/components/widget/AppHeader/AppHeader.js +52 -70
  22. package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
  23. package/dist/components/widget/AppHeader/TradeModeSwitcher.d.ts.map +1 -1
  24. package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
  25. package/dist/components/widget/BridgeList/BridgeListItem.d.ts +7 -0
  26. package/dist/components/widget/BridgeList/BridgeListItem.d.ts.map +1 -0
  27. package/dist/components/widget/BridgeList/BridgeListItem.js +475 -0
  28. package/dist/components/widget/BridgeList/BridgeListItem.js.map +1 -0
  29. package/dist/components/widget/BridgeList/BridgeProtocolsList.d.ts +9 -0
  30. package/dist/components/widget/BridgeList/BridgeProtocolsList.d.ts.map +1 -0
  31. package/dist/components/widget/BridgeList/BridgeProtocolsList.js +219 -0
  32. package/dist/components/widget/BridgeList/BridgeProtocolsList.js.map +1 -0
  33. package/dist/components/widget/BridgeList/BridgesList.d.ts +12 -0
  34. package/dist/components/widget/BridgeList/BridgesList.d.ts.map +1 -0
  35. package/dist/components/widget/BridgeList/BridgesList.js +76 -0
  36. package/dist/components/widget/BridgeList/BridgesList.js.map +1 -0
  37. package/dist/components/widget/BridgeList/hooks.d.ts +17 -0
  38. package/dist/components/widget/BridgeList/hooks.d.ts.map +1 -0
  39. package/dist/components/widget/BridgeList/hooks.js +254 -0
  40. package/dist/components/widget/BridgeList/hooks.js.map +1 -0
  41. package/dist/components/widget/BridgeList/types.d.ts +19 -0
  42. package/dist/components/widget/BridgeList/types.d.ts.map +1 -0
  43. package/dist/components/widget/BridgePreferences/BridgePreferences.d.ts +3 -0
  44. package/dist/components/widget/BridgePreferences/BridgePreferences.d.ts.map +1 -0
  45. package/dist/components/widget/BridgePreferences/BridgePreferences.js +136 -0
  46. package/dist/components/widget/BridgePreferences/BridgePreferences.js.map +1 -0
  47. package/dist/components/widget/BridgePreferences/types.d.ts +11 -0
  48. package/dist/components/widget/BridgePreferences/types.d.ts.map +1 -0
  49. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.d.ts +8 -0
  50. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.d.ts.map +1 -0
  51. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.js +137 -0
  52. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.js.map +1 -0
  53. package/dist/components/widget/CompareQuotes/CompareQuotes.d.ts +2 -0
  54. package/dist/components/widget/CompareQuotes/CompareQuotes.d.ts.map +1 -0
  55. package/dist/components/widget/CompareQuotes/CompareQuotes.js +208 -0
  56. package/dist/components/widget/CompareQuotes/CompareQuotes.js.map +1 -0
  57. package/dist/components/widget/Details/DetailWithValueListExpandable.d.ts.map +1 -1
  58. package/dist/components/widget/Details/DetailWithValueListExpandable.js.map +1 -1
  59. package/dist/components/widget/Duration/Duration.d.ts +6 -0
  60. package/dist/components/widget/Duration/Duration.d.ts.map +1 -0
  61. package/dist/components/widget/Duration/Duration.js +85 -0
  62. package/dist/components/widget/Duration/Duration.js.map +1 -0
  63. package/dist/components/widget/FetchingQuotes/FetchingQuotes.d.ts +2 -0
  64. package/dist/components/widget/FetchingQuotes/FetchingQuotes.d.ts.map +1 -0
  65. package/dist/components/widget/FetchingQuotes/FetchingQuotes.js +42 -0
  66. package/dist/components/widget/FetchingQuotes/FetchingQuotes.js.map +1 -0
  67. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts +1 -1
  68. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts.map +1 -1
  69. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js +10 -64
  70. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js.map +1 -1
  71. package/dist/components/widget/OrderExpiryInput/index.js.map +1 -1
  72. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.js.map +1 -1
  73. package/dist/components/widget/Screen/GenericScreen.js.map +1 -1
  74. package/dist/components/widget/SettingsButton/SettingsButton.d.ts +5 -0
  75. package/dist/components/widget/SettingsButton/SettingsButton.d.ts.map +1 -0
  76. package/dist/components/widget/SettingsButton/SettingsButton.js +61 -0
  77. package/dist/components/widget/SettingsButton/SettingsButton.js.map +1 -0
  78. package/dist/components/widget/TokenBadge/TokenBadge.d.ts.map +1 -1
  79. package/dist/components/widget/TokenBadge/TokenBadge.js +114 -65
  80. package/dist/components/widget/TokenBadge/TokenBadge.js.map +1 -1
  81. package/dist/components/widget/TokenBadge/types.d.ts +1 -0
  82. package/dist/components/widget/TokenBadge/types.d.ts.map +1 -1
  83. package/dist/components/widget/TokenInput/index.d.ts.map +1 -1
  84. package/dist/components/widget/TokenInput/index.js +34 -18
  85. package/dist/components/widget/TokenInput/index.js.map +1 -1
  86. package/dist/components/widget/TokenInput/types.d.ts +1 -0
  87. package/dist/components/widget/TokenInput/types.d.ts.map +1 -1
  88. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  89. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
  90. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.d.ts +1 -1
  91. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.d.ts.map +1 -1
  92. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.js.map +1 -1
  93. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/BridgePreferenceParameters.d.ts +21 -0
  94. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/BridgePreferenceParameters.d.ts.map +1 -0
  95. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/BridgePreferenceParameters.js +90 -0
  96. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/BridgePreferenceParameters.js.map +1 -0
  97. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/useDraftBridgePreferencesState.d.ts +12 -0
  98. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/useDraftBridgePreferencesState.d.ts.map +1 -0
  99. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/useDraftBridgePreferencesState.js +68 -0
  100. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/useDraftBridgePreferencesState.js.map +1 -0
  101. package/dist/components/widget/TradeParameters/TradeParameters.d.ts +3 -2
  102. package/dist/components/widget/TradeParameters/TradeParameters.d.ts.map +1 -1
  103. package/dist/components/widget/TradeParameters/TradeParameters.js +64 -45
  104. package/dist/components/widget/TradeParameters/TradeParameters.js.map +1 -1
  105. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.d.ts.map +1 -1
  106. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js +3 -1
  107. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js.map +1 -1
  108. package/dist/components/widget/TradeParameters/state/bridgePreferences/bridgePreferenceAtom.d.ts +9 -0
  109. package/dist/components/widget/TradeParameters/state/bridgePreferences/bridgePreferenceAtom.d.ts.map +1 -0
  110. package/dist/components/widget/TradeParameters/state/bridgePreferences/bridgePreferenceAtom.js +14 -0
  111. package/dist/components/widget/TradeParameters/state/bridgePreferences/bridgePreferenceAtom.js.map +1 -0
  112. package/dist/components/widget/TradeParameters/state/bridgePreferences/constants.d.ts +4 -0
  113. package/dist/components/widget/TradeParameters/state/bridgePreferences/constants.d.ts.map +1 -0
  114. package/dist/components/widget/TradeParameters/state/bridgePreferences/constants.js +7 -0
  115. package/dist/components/widget/TradeParameters/state/bridgePreferences/constants.js.map +1 -0
  116. package/dist/components/widget/TradeParameters/state/bridgePreferences/disabledBridgesAtom.d.ts +8 -0
  117. package/dist/components/widget/TradeParameters/state/bridgePreferences/disabledBridgesAtom.d.ts.map +1 -0
  118. package/dist/components/widget/TradeParameters/state/bridgePreferences/disabledBridgesAtom.js +15 -0
  119. package/dist/components/widget/TradeParameters/state/bridgePreferences/disabledBridgesAtom.js.map +1 -0
  120. package/dist/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom.d.ts +2 -0
  121. package/dist/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom.d.ts.map +1 -0
  122. package/dist/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom.js +11 -0
  123. package/dist/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom.js.map +1 -0
  124. package/dist/components/widget/TradeParameters/state/bridgePreferences/protocolSelectorAtom.d.ts +4 -0
  125. package/dist/components/widget/TradeParameters/state/bridgePreferences/protocolSelectorAtom.d.ts.map +1 -0
  126. package/dist/components/widget/TradeParameters/state/bridgePreferences/protocolSelectorAtom.js +6 -0
  127. package/dist/components/widget/TradeParameters/state/bridgePreferences/protocolSelectorAtom.js.map +1 -0
  128. package/dist/components/widget/TradeParameters/state/bridgePreferences/types.d.ts +3 -0
  129. package/dist/components/widget/TradeParameters/state/bridgePreferences/types.d.ts.map +1 -0
  130. package/dist/components/widget/TradeParameters/state/bridgePreferences/useBridgePreferences.d.ts +14 -0
  131. package/dist/components/widget/TradeParameters/state/bridgePreferences/useBridgePreferences.d.ts.map +1 -0
  132. package/dist/components/widget/TradeParameters/state/bridgePreferences/useBridgePreferences.js +58 -0
  133. package/dist/components/widget/TradeParameters/state/bridgePreferences/useBridgePreferences.js.map +1 -0
  134. package/dist/components/widget/TradeParameters/useTempTradeParameters.d.ts +5 -0
  135. package/dist/components/widget/TradeParameters/useTempTradeParameters.d.ts.map +1 -1
  136. package/dist/components/widget/TradeParameters/useTempTradeParameters.js +150 -67
  137. package/dist/components/widget/TradeParameters/useTempTradeParameters.js.map +1 -1
  138. package/dist/core/Updaters.d.ts.map +1 -1
  139. package/dist/core/Updaters.js +2 -0
  140. package/dist/core/Updaters.js.map +1 -1
  141. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
  142. package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  143. package/dist/core/index.d.ts.map +1 -1
  144. package/dist/core/index.js +22 -14
  145. package/dist/core/index.js.map +1 -1
  146. package/dist/core/inputs/hooks/types.d.ts +1 -1
  147. package/dist/core/inputs/hooks/types.d.ts.map +1 -1
  148. package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
  149. package/dist/core/inputs/hooks/useTokenToInputProps.js +25 -12
  150. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  151. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  152. package/dist/core/limit/state/utils.js.map +1 -1
  153. package/dist/core/limit/useLimitRate.d.ts.map +1 -1
  154. package/dist/core/limit/useLimitRate.js.map +1 -1
  155. package/dist/core/screen/hooks/useOnClickOutside.js.map +1 -1
  156. package/dist/core/screen/screenByType.d.ts +2 -0
  157. package/dist/core/screen/screenByType.d.ts.map +1 -1
  158. package/dist/core/screen/screenByType.js +5 -1
  159. package/dist/core/screen/screenByType.js.map +1 -1
  160. package/dist/core/screen/state/hooks/useSetScreen.d.ts +3 -0
  161. package/dist/core/screen/state/hooks/useSetScreen.d.ts.map +1 -1
  162. package/dist/core/screen/state/hooks/useSetScreen.js +43 -11
  163. package/dist/core/screen/state/hooks/useSetScreen.js.map +1 -1
  164. package/dist/core/state/enabledTradeModesAtom.d.ts.map +1 -1
  165. package/dist/core/state/enabledTradeModesAtom.js.map +1 -1
  166. package/dist/core/swapDetails/priceImpact.d.ts.map +1 -1
  167. package/dist/core/swapDetails/priceImpact.js +7 -3
  168. package/dist/core/swapDetails/priceImpact.js.map +1 -1
  169. package/dist/events/getters/settings.d.ts.map +1 -1
  170. package/dist/events/getters/settings.js +7 -1
  171. package/dist/events/getters/settings.js.map +1 -1
  172. package/dist/events/types/common.d.ts +6 -1
  173. package/dist/events/types/common.d.ts.map +1 -1
  174. package/dist/events/types/settings.d.ts +2 -1
  175. package/dist/events/types/settings.d.ts.map +1 -1
  176. package/dist/hooks/gas/useGasPrices.d.ts.map +1 -1
  177. package/dist/hooks/gas/useGasPrices.js.map +1 -1
  178. package/dist/hooks/otc/mutations/useFillOrder.js +1 -14
  179. package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
  180. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js +0 -12
  181. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
  182. package/dist/hooks/swap/prices/constants.d.ts +3 -0
  183. package/dist/hooks/swap/prices/constants.d.ts.map +1 -0
  184. package/dist/hooks/swap/prices/constants.js +5 -0
  185. package/dist/hooks/swap/prices/constants.js.map +1 -0
  186. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.d.ts +6 -0
  187. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.d.ts.map +1 -0
  188. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.js +36 -0
  189. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.js.map +1 -0
  190. package/dist/hooks/swap/prices/delta/bridge/utils.d.ts +7 -0
  191. package/dist/hooks/swap/prices/delta/bridge/utils.d.ts.map +1 -1
  192. package/dist/hooks/swap/prices/delta/bridge/utils.js +34 -1
  193. package/dist/hooks/swap/prices/delta/bridge/utils.js.map +1 -1
  194. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  195. package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/types.d.ts +13 -0
  196. package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/types.d.ts.map +1 -0
  197. package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/useBridgeProtocols.d.ts +3 -0
  198. package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/useBridgeProtocols.d.ts.map +1 -0
  199. package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/useBridgeProtocols.js +75 -0
  200. package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/useBridgeProtocols.js.map +1 -0
  201. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +2 -2
  202. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
  203. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +3 -1
  204. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  205. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
  206. package/dist/hooks/swap/prices/market/mutations/useBuildTx.d.ts.map +1 -1
  207. package/dist/hooks/swap/prices/market/mutations/useBuildTx.js.map +1 -1
  208. package/dist/hooks/swap/prices/types.d.ts +1 -0
  209. package/dist/hooks/swap/prices/types.d.ts.map +1 -1
  210. package/dist/hooks/swap/prices/useSwapPrices.d.ts +5 -0
  211. package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
  212. package/dist/hooks/swap/prices/useSwapPrices.js +119 -94
  213. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  214. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  215. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +15 -1
  216. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  217. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  218. package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
  219. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
  220. package/dist/hooks/tokens/prices/queries.d.ts.map +1 -1
  221. package/dist/hooks/tokens/prices/queries.js.map +1 -1
  222. package/dist/hooks/useBridgeProtocols.d.ts +4 -0
  223. package/dist/hooks/useBridgeProtocols.d.ts.map +1 -0
  224. package/dist/hooks/useBridgeProtocols.js +52 -0
  225. package/dist/hooks/useBridgeProtocols.js.map +1 -0
  226. package/dist/hooks/useClickOutside.js.map +1 -1
  227. package/dist/lib/constants/weth.js.map +1 -1
  228. package/dist/lib/utils/priceImpact.d.ts +5 -2
  229. package/dist/lib/utils/priceImpact.d.ts.map +1 -1
  230. package/dist/lib/utils/priceImpact.js +8 -5
  231. package/dist/lib/utils/priceImpact.js.map +1 -1
  232. package/dist/lib/utils/tuple.d.ts +1 -0
  233. package/dist/lib/utils/tuple.d.ts.map +1 -1
  234. package/dist/lib/utils/tuple.js +5 -1
  235. package/dist/lib/utils/tuple.js.map +1 -1
  236. package/dist/lib/web3/privy/config.js +1 -1
  237. package/dist/lib/web3/wagmi/config.js +1 -1
  238. package/dist/styles.css +51 -1
  239. package/dist/tokens/queries.d.ts.map +1 -1
  240. package/dist/tokens/queries.js.map +1 -1
  241. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/core/index.tsx"],"sourcesContent":["import \"@/styles/global.css\";\n\nimport { DevTools } from \"./DevTools\"; // Jotai DevTools instantiation needs to be before jotai.createStore (even implicit with default provider)\nimport { TokenInput } from \"@/components/widget/TokenInput\";\nimport { useTokenFromInputProps } from \"./inputs/hooks/useTokenFromInputProps\";\nimport { Button } from \"@/components/ui/button\";\nimport {\n JotaiProvider,\n QueryClientProvider,\n Web3Providers,\n} from \"@/components/web3/providers\";\nimport { useAccount } from \"wagmi\";\nimport { WIDGET_ELEMENT_ID, WIDGET_HEIGHT_CLASSNAME } from \"./constants\";\n\nimport { Updaters } from \"./Updaters\";\nimport { useTokenToInputProps } from \"./inputs/hooks/useTokenToInputProps\";\nimport { TokenSwitcher as TokenSwitcherComp } from \"@/components/widget/TokenSwitcher/TokenSwitcher\";\nimport type { WidgetProps } from \"./types\";\nimport { cn } from \"@/lib/utils\";\nimport { useSwapTokenSwitcherProps } from \"./inputs/hooks/useTokenSwitcherProps\";\n\nimport { runSubscriptions } from \"./subscriptions\";\n\nimport { PrivyIframeDependency } from \"@/components/web3/ConnectWallets/privy/iframe\";\nimport { SwapModeSwitcherExpandable } from \"@/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable\";\n\nimport { useTokenInputsFromPrice } from \"@/hooks/swap/prices/useTokenInputsFromPrice\";\nimport type { MinTradeOverviewProps } from \"@/components/widget/TradeOverview/TradeOverview\";\n\nimport type { BridgePrice, DeltaPrice, OptimalRate } from \"@velora-dex/sdk\";\nimport type { SwapMode } from \"@/components/widget/SwapModeSwitcher/state/types\";\nimport { SwapDetailsExpandable } from \"@/components/widget/Details/SwapDetailsExpandable\";\nimport { ReceiverAddress } from \"@/components/widget/ReceiverAddress/ReceiverAddress\";\nimport { useAtomValue, useSetAtom } from \"@/core/store\";\nimport { useHydrateAtoms } from \"jotai/utils\";\nimport { containerAtom } from \"./state/containerAtom\";\nimport { AppHeader } from \"@/components/widget/AppHeader/AppHeader\";\nimport { useLayoutEffect, useRef } from \"react\";\nimport {\n defaultSubConfig,\n defaultWidgetConfig,\n excludeUIAtom,\n useWidgetConfig,\n} from \"./state/configAtom\";\nimport {\n setSubConfigAtom,\n setWidgetConfigAtom,\n} from \"./state/configActionsAtom\";\nimport { WrapEthDrawerButton } from \"@/components/widget/WrapEth/WrapEthDrawerButton\";\nimport type { WrapEthProps } from \"@/components/widget/WrapEth/hooks/types\";\nimport { useWrapEthProps } from \"@/components/widget/WrapEth/hooks/useWrapEthProps\";\nimport { PoweredBy } from \"@/components/widget/PoweredBy/PoweredBy\";\nimport { useWidgetButtonExtraProps } from \"./button/hooks/useWidgetButtonExtraProps\";\nimport { useSwapPrices } from \"@/hooks/swap/prices/useSwapPrices\";\nimport { Toaster } from \"./Toaster\";\nimport { externalProviderAtom } from \"./state/externalProviderAtom\";\nimport { AutoconnectExternalProvider } from \"@/components/web3/ConnectExternalProvider/AutoconnectExternal\";\nimport { SwapTradeFlowScreenButton } from \"./TradeFlowScreenButton\";\nimport { ConnectWalletDrawerButton } from \"./ConnectWalletDrawerButton\";\nimport { PriceInput } from \"@/components/widget/LimitPriceInput\";\nimport { OrderExpiryInput } from \"@/components/widget/OrderExpiryInput\";\nimport { useLimitTokenToInputProps } from \"./limit/useLimitTokenToInputProps\";\nimport { useLimitTokenFromInputProps } from \"./limit/useLimitTokenFromInputProps\";\nimport { useTradeMode } from \"./state/tradeModeAtom\";\nimport { useDrawerContainerHeightTransition } from \"@/components/widget/Drawer/state/useDrawerControls\";\nimport { InWidgetDrawerOverlay } from \"@/components/widget/Drawer/Overlay\";\nimport { LimitOrderButton } from \"./LimitOrderButton\";\nimport { LimitOrderDetails } from \"./LimitOrderDetails\";\nimport { useOtcTokenFromInputProps } from \"./otc/useOtcTokenFromInputProps\";\nimport { useOtcTokenToInputProps } from \"./otc/useOtcTokenToInputProps\";\nimport { useLimitPriceInputProps } from \"./limit/useLimitPriceInputProps\";\nimport { useOtcPriceInputProps } from \"./otc/useOtcPriceInputProps\";\nimport { OtcOrderButton } from \"./OtcOrderButton\";\nimport { OtcOrderDetails } from \"./OtcOrderDetails\";\nimport { WidgetWarning } from \"./Warnings\";\nimport { useUnsupportedLimitChain } from \"./limit/useLimitNotSupported\";\nimport { useUnsupportedOtcChain } from \"./otc/useOtcNotSupported\";\nimport { useLimitTokenSwitcherProps } from \"./limit/useLimitTokenSwitcherProps\";\nimport { useOtcTokenSwitcherProps } from \"./otc/useOtcTokenSwitcherProps\";\nimport { useSwapReceiverAddress } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport { useOtcReceiverAddress } from \"./otc/state/receiverAddressAtom\";\nimport {\n useWidgetEventsSetter,\n widgetEventsAtom,\n} from \"./state/widgetEventsAtom\";\nimport {\n formInputPropsAtom,\n useSetFormInputFromProps,\n} from \"./inputs/state/setTokenByAddressAtom\";\nimport { queryClientAtom } from \"jotai-tanstack-query\";\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { useScreenValue } from \"./screen/state/hooks/useScreenValue\";\nimport {\n MainScreenContainer,\n SecondaryScreenContainer,\n} from \"@/components/widget/Screen/ScreenContainer\";\nimport { useCloseScreenOnClickOutside } from \"./screen/hooks/useOnClickOutside\";\nimport { useLimitReceiverAddress } from \"./limit/state/receiverAddressAtom\";\n\nrunSubscriptions();\n\nconst SwapScreen = () => {\n return (\n <>\n <SwapTokenFromInput />\n <SwapTokenSwitcher />\n <SwapTokenToInput />\n <SwapReceiverAddress />\n <WidgetWarning />\n <SwapButton />\n <SwapDetails />\n <SwapModeSwitcher />\n </>\n );\n};\n\nconst LimitOrderExtraInputs = () => {\n const priceInputProps = useLimitPriceInputProps();\n const unsupportedChain = useUnsupportedLimitChain();\n\n return (\n <div\n className={cn(\"flex gap-4 items-stretch py-2\", {\n \"pointer-events-none\": unsupportedChain,\n })}\n >\n <div className=\"flex-1\">\n <PriceInput {...priceInputProps} />\n </div>\n <div className=\"flex-1\">\n <OrderExpiryInput type=\"limit\" />\n </div>\n </div>\n );\n};\n\nconst OtcOrderExtraInputs = () => {\n const priceInputProps = useOtcPriceInputProps();\n const unsupportedChain = useUnsupportedOtcChain();\n\n return (\n <div\n className={cn(\"flex gap-4 items-stretch py-2\", {\n \"pointer-events-none\": unsupportedChain,\n })}\n >\n <div className=\"flex-1\">\n <PriceInput {...priceInputProps} />\n </div>\n <div className=\"flex-1\">\n <OrderExpiryInput type=\"otc\" />\n </div>\n </div>\n );\n};\n\nconst LimitOrderScreen = () => {\n return (\n <>\n <LimitTokenFromInput />\n <LimitTokenSwitcher />\n <LimitTokenToInput />\n <LimitOrderExtraInputs />\n <LimitReceiverAddress />\n <WidgetWarning />\n <LimitOrderButton />\n <LimitOrderDetails />\n </>\n );\n};\n\nconst OtcOrderScreen = () => {\n return (\n <>\n <OtcTokenFromInput />\n <OtcTokenSwitcher />\n <OtcTokenToInput />\n <OtcOrderExtraInputs />\n <OtcReceiverAddress />\n <WidgetWarning />\n <OtcOrderButton />\n <OtcOrderDetails />\n </>\n );\n};\n\nconst MainScreen = () => {\n const tradeMode = useTradeMode();\n return tradeMode === \"swap\" ? (\n <SwapScreen />\n ) : tradeMode === \"limit\" ? (\n <LimitOrderScreen />\n ) : (\n <OtcOrderScreen />\n );\n};\n\nconst App = () => {\n const excludeUI = useAtomValue(excludeUIAtom);\n const { screenElement } = useScreenValue();\n\n return (\n <Containers>\n {screenElement ? (\n <SecondaryScreenContainer>{screenElement}</SecondaryScreenContainer>\n ) : (\n <MainScreenContainer>\n <WidgetHeader />\n <MainScreen />\n <PoweredBy />\n </MainScreenContainer>\n )}\n {!excludeUI.includes(\"snackbars\") && <Toaster />}\n </Containers>\n );\n};\n\nconst WidgetBase = ({\n config: _config,\n provider,\n events,\n input: formInputProps,\n}: WidgetProps) => {\n const queryClient = useQueryClient();\n\n const setWidgetConfig = useSetAtom(setWidgetConfigAtom);\n const setSubConfig = useSetAtom(setSubConfigAtom);\n const {\n srcChains,\n destChains,\n tokenLists,\n tradeModes,\n excludeUI,\n devURLs,\n ...config\n } = _config || {};\n\n // hydrating with only partial config overrides values with undefined,\n // so we have default values too\n useHydrateAtoms([\n [setWidgetConfigAtom, { ...defaultWidgetConfig, ...config }],\n [\n setSubConfigAtom,\n {\n ...defaultSubConfig,\n srcChains,\n destChains,\n tokenLists,\n tradeModes,\n excludeUI,\n devURLs,\n },\n ],\n [externalProviderAtom, provider || null],\n [widgetEventsAtom, events || {}],\n [formInputPropsAtom, formInputProps || {}],\n // this provider initialisation step is needed so that jotai reference the same\n // queryClient in both atomWithQuery and other parts of the app. Without this,\n // jotai will reference a different instance of queryClient\n [queryClientAtom, queryClient],\n ]);\n\n useWidgetEventsSetter(events);\n useSetFormInputFromProps(formInputProps);\n\n useLayoutEffect(() => {\n setWidgetConfig({\n theme: config.theme,\n enableDelta: config.enableDelta,\n enableCrossChain: config.enableCrossChain,\n partner: config.partner,\n privyAppId: config.privyAppId,\n privyClientId: config.privyClientId,\n debug: config.debug,\n widgetMode: config.widgetMode,\n ignoreBadUsdPrice: config.ignoreBadUsdPrice,\n });\n }, [\n config.theme,\n config.enableDelta,\n config.enableCrossChain,\n config.partner,\n config.privyAppId,\n config.privyClientId,\n config.debug,\n config.widgetMode,\n config.ignoreBadUsdPrice,\n setWidgetConfig,\n ]);\n\n useLayoutEffect(() => {\n setSubConfig({\n srcChains,\n destChains,\n tokenLists,\n tradeModes,\n excludeUI,\n devURLs,\n });\n }, [\n srcChains,\n destChains,\n tokenLists,\n setSubConfig,\n tradeModes,\n excludeUI,\n devURLs,\n ]);\n\n const setExternalProvider = useSetAtom(externalProviderAtom);\n\n useLayoutEffect(() => {\n // update external provider on change\n setExternalProvider(provider || null);\n }, [provider, setExternalProvider]);\n\n return (\n <Web3Providers>\n <AutoconnectExternalProvider />\n <PrivyIframeDependency />\n <Updaters />\n <App />\n {import.meta.env.DEV && <DevTools />}\n </Web3Providers>\n );\n};\n\nexport const Widget = ({ config, provider, events, input }: WidgetProps) => {\n return (\n <QueryClientProvider>\n <JotaiProvider>\n <WidgetBase\n config={config}\n provider={provider}\n events={events}\n input={input}\n />\n </JotaiProvider>\n </QueryClientProvider>\n );\n};\n\nfunction Containers({ children }: { children: React.ReactNode }) {\n const setContainerElement = useSetAtom(containerAtom);\n\n const containerRef = useRef<HTMLDivElement | null>(null);\n useCloseScreenOnClickOutside(containerRef);\n\n const widgetConfig = useWidgetConfig();\n\n const { isDrawerFullCover, isDrawerOpen } =\n useDrawerContainerHeightTransition(containerRef);\n\n const partialDrawerOpen = isDrawerOpen && !isDrawerFullCover;\n\n return (\n <div\n ref={containerRef}\n // don't use tailwind classes on the root element, because of .velora-widget { @import tailwind/*}\n className={cn(\"velora-widget\", {\n dark: widgetConfig.theme === \"dark\",\n })}\n id={WIDGET_ELEMENT_ID}\n >\n <InWidgetDrawerOverlay open={partialDrawerOpen} />\n\n <div\n // absolutely positioned container on top of parent container with fixed height,\n // but because it's not statically positioned, it doesn't add to the whole widget height\n className={cn(\n \"overflow-hidden bottom-0 left-0 right-0 absolute transition-transform duration-500 z-11 pointer-events-none [&>*]:pointer-events-auto\",\n WIDGET_HEIGHT_CLASSNAME,\n )}\n ref={setContainerElement}\n />\n {children}\n </div>\n );\n}\n\nfunction WidgetHeader() {\n return <AppHeader classes={{ root: \"mb-4\" }} />;\n}\n\nfunction SwapTokenFromInput() {\n // override Token amounts based on current swap price\n const overrides = useTokenInputsFromPrice();\n\n const tokenFromInputProps = useTokenFromInputProps({\n override: overrides.tokenFromAmount,\n activeSwapMode: overrides.priceMode,\n isPriceLoading: overrides.isLoading,\n price: overrides.price,\n });\n\n return <TokenInput {...tokenFromInputProps} />;\n}\n\nfunction LimitTokenFromInput() {\n const tokenFromInputProps = useLimitTokenFromInputProps();\n return <TokenInput {...tokenFromInputProps} />;\n}\n\nfunction OtcTokenFromInput() {\n const tokenFromInputProps = useOtcTokenFromInputProps();\n return <TokenInput {...tokenFromInputProps} />;\n}\n\nfunction SwapTokenToInput() {\n // override Token amounts based on current swap price\n const overrides = useTokenInputsFromPrice();\n\n const tokenToInputProps = useTokenToInputProps({\n override: overrides.tokenToAmount,\n isPriceLoading: overrides.isLoading,\n priceMode: overrides.priceMode,\n price: overrides.price,\n priceError: overrides.error,\n });\n\n return <TokenInput {...tokenToInputProps} />;\n}\n\nfunction LimitTokenToInput() {\n const tokenToInputProps = useLimitTokenToInputProps();\n return <TokenInput {...tokenToInputProps} />;\n}\n\nfunction OtcTokenToInput() {\n const tokenToInputProps = useOtcTokenToInputProps();\n return <TokenInput {...tokenToInputProps} />;\n}\n\nfunction SwapTokenSwitcher() {\n const tokenSwitcherProps = useSwapTokenSwitcherProps();\n return <TokenSwitcherComp {...tokenSwitcherProps} />;\n}\n\nfunction LimitTokenSwitcher() {\n const tokenSwitcherProps = useLimitTokenSwitcherProps();\n return <TokenSwitcherComp {...tokenSwitcherProps} />;\n}\n\nfunction OtcTokenSwitcher() {\n const tokenSwitcherProps = useOtcTokenSwitcherProps();\n return <TokenSwitcherComp {...tokenSwitcherProps} />;\n}\n\nfunction SwapButton() {\n // override Token amounts based on current swap price\n const overrides = useTokenInputsFromPrice();\n\n const tokenFromInputProps = useTokenFromInputProps({\n override: overrides.tokenFromAmount,\n activeSwapMode: overrides.priceMode,\n isPriceLoading: overrides.isLoading,\n price: overrides.price,\n });\n const tokenToInputProps = useTokenToInputProps({\n override: overrides.tokenToAmount,\n isPriceLoading: overrides.isLoading,\n priceMode: overrides.priceMode,\n price: overrides.price,\n priceError: overrides.error,\n });\n\n const orderProps =\n tokenFromInputProps.token && tokenToInputProps.token\n ? {\n fromToken: tokenFromInputProps.token,\n toToken: tokenToInputProps.token,\n fromAmount: tokenFromInputProps.amount,\n toAmount: tokenToInputProps.amount,\n swapSide: overrides.side,\n }\n : undefined;\n\n const wrapEthProps = useWrapEthProps();\n\n const extraProps = useWidgetButtonExtraProps({\n tokenFrom: tokenFromInputProps.token,\n tokenTo: tokenToInputProps.token,\n });\n\n return (\n <SwapButtonWithDrawer\n orderProps={orderProps}\n marketPrice={\n overrides.priceMode === \"market\" ? overrides.price : undefined\n }\n deltaPrice={overrides.priceMode === \"delta\" ? overrides.price : undefined}\n priceMode={overrides.priceMode}\n wrapEthProps={wrapEthProps}\n disabled={extraProps.disabled}\n labelOverride={extraProps.labelOverride}\n className={extraProps.className}\n />\n );\n}\n\nfunction SwapDetails() {\n const overrides = useTokenInputsFromPrice();\n\n const tokenFromInputProps = useTokenFromInputProps({\n override: overrides.tokenFromAmount,\n activeSwapMode: overrides.priceMode,\n isPriceLoading: overrides.isLoading,\n price: overrides.price,\n });\n const tokenToInputProps = useTokenToInputProps({\n override: overrides.tokenToAmount,\n isPriceLoading: overrides.isLoading,\n priceMode: overrides.priceMode,\n price: overrides.price,\n priceError: overrides.error,\n });\n\n const fromAmountGtZero = Number(tokenFromInputProps.amount) > 0;\n const shouldShowDetails = fromAmountGtZero && tokenToInputProps.token;\n\n return shouldShowDetails ? <SwapDetailsExpandable /> : null;\n}\n\nfunction SwapReceiverAddress() {\n const { isConnected } = useAccount();\n const shouldShowReceiverAddress = isConnected;\n const swapReceiverAddressProps = useSwapReceiverAddress();\n\n return shouldShowReceiverAddress ? (\n <ReceiverAddress\n classes={{ root: \"mt-2\" }}\n type=\"swap\"\n {...swapReceiverAddressProps}\n />\n ) : null;\n}\n\nfunction OtcReceiverAddress() {\n const unsupportedChain = useUnsupportedOtcChain();\n const otcReceiverAddressProps = useOtcReceiverAddress();\n\n return (\n <ReceiverAddress\n classes={{\n root: cn(\"mt-2\", {\n \"pointer-events-none\": unsupportedChain,\n }),\n }}\n type=\"otc\"\n {...otcReceiverAddressProps}\n />\n );\n}\n\nfunction LimitReceiverAddress() {\n const unsupportedChain = useUnsupportedLimitChain();\n const limitReceiverAddressProps = useLimitReceiverAddress();\n\n return (\n <ReceiverAddress\n classes={{\n root: cn(\"mt-2\", {\n \"pointer-events-none\": unsupportedChain,\n }),\n }}\n type=\"limit\"\n {...limitReceiverAddressProps}\n />\n );\n}\n\nfunction SwapModeSwitcher() {\n const { delta, market, priceMode } = useSwapPrices({ enabled: false });\n // @TODO as on the main UI:\n // 1. Show Market MarketOffers if marketPrice can be switched to and price will fetch\n // 2. Show nothing if only one of the prices can be used\n if (delta.canBeUsed && market.canBeUsed) {\n return (\n <SwapModeSwitcherExpandable\n classes={{ root: \"mt-4\" }}\n currentEffectiveMode={priceMode}\n />\n );\n }\n}\n\ntype ButtonWithDrawerProps = React.ComponentProps<typeof Button> & {\n orderProps?: MinTradeOverviewProps;\n drawerContainer?: HTMLDivElement | null;\n marketPrice?: OptimalRate;\n deltaPrice?: DeltaPrice | BridgePrice;\n wrapEthProps: WrapEthProps;\n priceMode: SwapMode;\n labelOverride?: string;\n};\n\nfunction SwapButtonWithDrawer({\n orderProps,\n drawerContainer,\n marketPrice,\n deltaPrice,\n priceMode,\n wrapEthProps,\n labelOverride,\n ...buttonProps\n}: ButtonWithDrawerProps) {\n const { isConnected } = useAccount();\n\n if (!isConnected)\n return (\n <ConnectWalletDrawerButton\n drawerContainer={drawerContainer}\n {...buttonProps}\n />\n );\n\n if (wrapEthProps.shouldWrap)\n return (\n <WrapEthDrawerButton\n drawerContainer={drawerContainer}\n wrapEthProps={wrapEthProps}\n labelOverride={labelOverride}\n {...buttonProps}\n />\n );\n\n const priceProps =\n priceMode === \"delta\"\n ? { price: deltaPrice, priceMode }\n : { price: marketPrice, priceMode };\n\n return (\n <SwapTradeFlowScreenButton\n orderProps={orderProps}\n labelOverride={labelOverride}\n {...priceProps}\n {...buttonProps}\n />\n );\n}\n"],"names":["runSubscriptions","SwapScreen","$","_c","t0","Symbol","for","LimitOrderExtraInputs","priceInputProps","useLimitPriceInputProps","unsupportedChain","useUnsupportedLimitChain","cn","t1","t2","t3","OtcOrderExtraInputs","useOtcPriceInputProps","useUnsupportedOtcChain","LimitOrderScreen","OtcOrderScreen","MainScreen","tradeMode","useTradeMode","App","excludeUI","useAtomValue","excludeUIAtom","screenElement","useScreenValue","includes","WidgetBase","config","_config","provider","events","input","formInputProps","queryClient","useQueryClient","setWidgetConfig","useSetAtom","setWidgetConfigAtom","setSubConfig","setSubConfigAtom","destChains","devURLs","srcChains","tokenLists","tradeModes","defaultWidgetConfig","defaultSubConfig","t4","t5","externalProviderAtom","t6","t7","widgetEventsAtom","t8","t9","formInputPropsAtom","t10","queryClientAtom","t11","useHydrateAtoms","useWidgetEventsSetter","useSetFormInputFromProps","t12","t13","debug","enableCrossChain","enableDelta","ignoreBadUsdPrice","partner","privyAppId","privyClientId","theme","widgetMode","useLayoutEffect","t14","t15","setExternalProvider","t16","t17","t18","import","Widget","Containers","children","setContainerElement","containerAtom","containerRef","useRef","useCloseScreenOnClickOutside","widgetConfig","useWidgetConfig","isDrawerFullCover","isDrawerOpen","useDrawerContainerHeightTransition","partialDrawerOpen","dark","WIDGET_HEIGHT_CLASSNAME","WIDGET_ELEMENT_ID","WidgetHeader","root","SwapTokenFromInput","overrides","useTokenInputsFromPrice","isLoading","price","priceMode","tokenFromAmount","override","activeSwapMode","isPriceLoading","tokenFromInputProps","useTokenFromInputProps","LimitTokenFromInput","useLimitTokenFromInputProps","OtcTokenFromInput","useOtcTokenFromInputProps","SwapTokenToInput","error","tokenToAmount","priceError","tokenToInputProps","useTokenToInputProps","LimitTokenToInput","useLimitTokenToInputProps","OtcTokenToInput","useOtcTokenToInputProps","SwapTokenSwitcher","tokenSwitcherProps","useSwapTokenSwitcherProps","TokenSwitcherComp","LimitTokenSwitcher","useLimitTokenSwitcherProps","OtcTokenSwitcher","useOtcTokenSwitcherProps","SwapButton","side","amount","token","fromToken","toToken","fromAmount","toAmount","swapSide","undefined","orderProps","wrapEthProps","useWrapEthProps","tokenFrom","tokenTo","extraProps","useWidgetButtonExtraProps","className","disabled","labelOverride","SwapDetails","fromAmountGtZero","Number","shouldShowDetails","SwapReceiverAddress","isConnected","useAccount","shouldShowReceiverAddress","swapReceiverAddressProps","useSwapReceiverAddress","OtcReceiverAddress","otcReceiverAddressProps","useOtcReceiverAddress","LimitReceiverAddress","limitReceiverAddressProps","useLimitReceiverAddress","SwapModeSwitcher","enabled","delta","market","useSwapPrices","canBeUsed","SwapButtonWithDrawer","buttonProps","deltaPrice","drawerContainer","marketPrice","shouldWrap","priceProps"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../src/core/index.tsx"],"sourcesContent":["import \"@/styles/global.css\";\n\nimport { DevTools } from \"./DevTools\"; // Jotai DevTools instantiation needs to be before jotai.createStore (even implicit with default provider)\nimport { TokenInput } from \"@/components/widget/TokenInput\";\nimport { useTokenFromInputProps } from \"./inputs/hooks/useTokenFromInputProps\";\nimport { Button } from \"@/components/ui/button\";\nimport {\n JotaiProvider,\n QueryClientProvider,\n Web3Providers,\n} from \"@/components/web3/providers\";\nimport { useAccount } from \"wagmi\";\nimport { WIDGET_ELEMENT_ID, WIDGET_HEIGHT_CLASSNAME } from \"./constants\";\n\nimport { Updaters } from \"./Updaters\";\nimport { useTokenToInputProps } from \"./inputs/hooks/useTokenToInputProps\";\nimport { TokenSwitcher as TokenSwitcherComp } from \"@/components/widget/TokenSwitcher/TokenSwitcher\";\nimport type { WidgetProps } from \"./types\";\nimport { cn } from \"@/lib/utils\";\nimport { useSwapTokenSwitcherProps } from \"./inputs/hooks/useTokenSwitcherProps\";\n\nimport { runSubscriptions } from \"./subscriptions\";\n\nimport { PrivyIframeDependency } from \"@/components/web3/ConnectWallets/privy/iframe\";\nimport { SwapModeSwitcherExpandable } from \"@/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable\";\n\nimport { useTokenInputsFromPrice } from \"@/hooks/swap/prices/useTokenInputsFromPrice\";\nimport type { MinTradeOverviewProps } from \"@/components/widget/TradeOverview/TradeOverview\";\n\nimport type { BridgePrice, DeltaPrice, OptimalRate } from \"@velora-dex/sdk\";\nimport type { SwapMode } from \"@/components/widget/SwapModeSwitcher/state/types\";\nimport { SwapDetailsExpandable } from \"@/components/widget/Details/SwapDetailsExpandable\";\nimport { ReceiverAddress } from \"@/components/widget/ReceiverAddress/ReceiverAddress\";\nimport { useAtomValue, useSetAtom } from \"@/core/store\";\nimport { useHydrateAtoms } from \"jotai/utils\";\nimport { containerAtom } from \"./state/containerAtom\";\nimport { AppHeader } from \"@/components/widget/AppHeader/AppHeader\";\nimport { useLayoutEffect, useRef } from \"react\";\nimport {\n defaultSubConfig,\n defaultWidgetConfig,\n excludeUIAtom,\n useWidgetConfig,\n} from \"./state/configAtom\";\nimport {\n setSubConfigAtom,\n setWidgetConfigAtom,\n} from \"./state/configActionsAtom\";\nimport { WrapEthDrawerButton } from \"@/components/widget/WrapEth/WrapEthDrawerButton\";\nimport type { WrapEthProps } from \"@/components/widget/WrapEth/hooks/types\";\nimport { useWrapEthProps } from \"@/components/widget/WrapEth/hooks/useWrapEthProps\";\nimport { PoweredBy } from \"@/components/widget/PoweredBy/PoweredBy\";\nimport { useWidgetButtonExtraProps } from \"./button/hooks/useWidgetButtonExtraProps\";\nimport { useSwapPrices } from \"@/hooks/swap/prices/useSwapPrices\";\nimport { Toaster } from \"./Toaster\";\nimport { externalProviderAtom } from \"./state/externalProviderAtom\";\nimport { AutoconnectExternalProvider } from \"@/components/web3/ConnectExternalProvider/AutoconnectExternal\";\nimport { SwapTradeFlowScreenButton } from \"./TradeFlowScreenButton\";\nimport { ConnectWalletDrawerButton } from \"./ConnectWalletDrawerButton\";\nimport { PriceInput } from \"@/components/widget/LimitPriceInput\";\nimport { OrderExpiryInput } from \"@/components/widget/OrderExpiryInput\";\nimport { useLimitTokenToInputProps } from \"./limit/useLimitTokenToInputProps\";\nimport { useLimitTokenFromInputProps } from \"./limit/useLimitTokenFromInputProps\";\nimport { useTradeMode } from \"./state/tradeModeAtom\";\nimport { useDrawerContainerHeightTransition } from \"@/components/widget/Drawer/state/useDrawerControls\";\nimport { InWidgetDrawerOverlay } from \"@/components/widget/Drawer/Overlay\";\nimport { LimitOrderButton } from \"./LimitOrderButton\";\nimport { LimitOrderDetails } from \"./LimitOrderDetails\";\nimport { useOtcTokenFromInputProps } from \"./otc/useOtcTokenFromInputProps\";\nimport { useOtcTokenToInputProps } from \"./otc/useOtcTokenToInputProps\";\nimport { useLimitPriceInputProps } from \"./limit/useLimitPriceInputProps\";\nimport { useOtcPriceInputProps } from \"./otc/useOtcPriceInputProps\";\nimport { OtcOrderButton } from \"./OtcOrderButton\";\nimport { OtcOrderDetails } from \"./OtcOrderDetails\";\nimport { WidgetWarning } from \"./Warnings\";\nimport { useUnsupportedLimitChain } from \"./limit/useLimitNotSupported\";\nimport { useUnsupportedOtcChain } from \"./otc/useOtcNotSupported\";\nimport { useLimitTokenSwitcherProps } from \"./limit/useLimitTokenSwitcherProps\";\nimport { useOtcTokenSwitcherProps } from \"./otc/useOtcTokenSwitcherProps\";\nimport { useSwapReceiverAddress } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport { useOtcReceiverAddress } from \"./otc/state/receiverAddressAtom\";\nimport {\n useWidgetEventsSetter,\n widgetEventsAtom,\n} from \"./state/widgetEventsAtom\";\nimport {\n formInputPropsAtom,\n useSetFormInputFromProps,\n} from \"./inputs/state/setTokenByAddressAtom\";\nimport { queryClientAtom } from \"jotai-tanstack-query\";\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { useScreenValue } from \"./screen/state/hooks/useScreenValue\";\nimport {\n MainScreenContainer,\n SecondaryScreenContainer,\n} from \"@/components/widget/Screen/ScreenContainer\";\nimport { useCloseScreenOnClickOutside } from \"./screen/hooks/useOnClickOutside\";\nimport { useLimitReceiverAddress } from \"./limit/state/receiverAddressAtom\";\nimport { isBridgePrice } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\nimport { BridgeSelectorExpandable } from \"@/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable\";\nimport { ErrorBoundary } from \"react-error-boundary\";\n\nrunSubscriptions();\n\nconst SwapScreen = () => {\n return (\n <>\n <SwapTokenFromInput />\n <SwapTokenSwitcher />\n <SwapTokenToInput />\n <SwapReceiverAddress />\n <WidgetWarning />\n <SwapButton />\n <SwapDetails />\n <SwapModeSwitcher />\n </>\n );\n};\n\nconst LimitOrderExtraInputs = () => {\n const priceInputProps = useLimitPriceInputProps();\n const unsupportedChain = useUnsupportedLimitChain();\n\n return (\n <div\n className={cn(\"flex gap-4 items-stretch py-2\", {\n \"pointer-events-none\": unsupportedChain,\n })}\n >\n <div className=\"flex-1\">\n <PriceInput {...priceInputProps} />\n </div>\n <div className=\"flex-1\">\n <OrderExpiryInput type=\"limit\" />\n </div>\n </div>\n );\n};\n\nconst OtcOrderExtraInputs = () => {\n const priceInputProps = useOtcPriceInputProps();\n const unsupportedChain = useUnsupportedOtcChain();\n\n return (\n <div\n className={cn(\"flex gap-4 items-stretch py-2\", {\n \"pointer-events-none\": unsupportedChain,\n })}\n >\n <div className=\"flex-1\">\n <PriceInput {...priceInputProps} />\n </div>\n <div className=\"flex-1\">\n <OrderExpiryInput type=\"otc\" />\n </div>\n </div>\n );\n};\n\nconst LimitOrderScreen = () => {\n return (\n <>\n <LimitTokenFromInput />\n <LimitTokenSwitcher />\n <LimitTokenToInput />\n <LimitOrderExtraInputs />\n <LimitReceiverAddress />\n <WidgetWarning />\n <LimitOrderButton />\n <LimitOrderDetails />\n </>\n );\n};\n\nconst OtcOrderScreen = () => {\n return (\n <>\n <OtcTokenFromInput />\n <OtcTokenSwitcher />\n <OtcTokenToInput />\n <OtcOrderExtraInputs />\n <OtcReceiverAddress />\n <WidgetWarning />\n <OtcOrderButton />\n <OtcOrderDetails />\n </>\n );\n};\n\nconst MainScreen = () => {\n const tradeMode = useTradeMode();\n return tradeMode === \"swap\" ? (\n <SwapScreen />\n ) : tradeMode === \"limit\" ? (\n <LimitOrderScreen />\n ) : (\n <OtcOrderScreen />\n );\n};\n\nconst App = () => {\n const excludeUI = useAtomValue(excludeUIAtom);\n const { screenElement } = useScreenValue();\n\n return (\n <Containers>\n {screenElement ? (\n <SecondaryScreenContainer>{screenElement}</SecondaryScreenContainer>\n ) : (\n <MainScreenContainer>\n <WidgetHeader />\n <MainScreen />\n <PoweredBy />\n </MainScreenContainer>\n )}\n {!excludeUI.includes(\"snackbars\") && <Toaster />}\n </Containers>\n );\n};\n\nconst WidgetBase = ({\n config: _config,\n provider,\n events,\n input: formInputProps,\n}: WidgetProps) => {\n const queryClient = useQueryClient();\n\n const setWidgetConfig = useSetAtom(setWidgetConfigAtom);\n const setSubConfig = useSetAtom(setSubConfigAtom);\n const {\n srcChains,\n destChains,\n tokenLists,\n tradeModes,\n excludeUI,\n devURLs,\n ...config\n } = _config || {};\n\n // hydrating with only partial config overrides values with undefined,\n // so we have default values too\n useHydrateAtoms([\n [setWidgetConfigAtom, { ...defaultWidgetConfig, ...config }],\n [\n setSubConfigAtom,\n {\n ...defaultSubConfig,\n srcChains,\n destChains,\n tokenLists,\n tradeModes,\n excludeUI,\n devURLs,\n },\n ],\n [externalProviderAtom, provider || null],\n [widgetEventsAtom, events || {}],\n [formInputPropsAtom, formInputProps || {}],\n // this provider initialisation step is needed so that jotai reference the same\n // queryClient in both atomWithQuery and other parts of the app. Without this,\n // jotai will reference a different instance of queryClient\n [queryClientAtom, queryClient],\n ]);\n\n useWidgetEventsSetter(events);\n useSetFormInputFromProps(formInputProps);\n\n useLayoutEffect(() => {\n setWidgetConfig({\n theme: config.theme,\n enableDelta: config.enableDelta,\n enableCrossChain: config.enableCrossChain,\n partner: config.partner,\n privyAppId: config.privyAppId,\n privyClientId: config.privyClientId,\n debug: config.debug,\n widgetMode: config.widgetMode,\n ignoreBadUsdPrice: config.ignoreBadUsdPrice,\n });\n }, [\n config.theme,\n config.enableDelta,\n config.enableCrossChain,\n config.partner,\n config.privyAppId,\n config.privyClientId,\n config.debug,\n config.widgetMode,\n config.ignoreBadUsdPrice,\n setWidgetConfig,\n ]);\n\n useLayoutEffect(() => {\n setSubConfig({\n srcChains,\n destChains,\n tokenLists,\n tradeModes,\n excludeUI,\n devURLs,\n });\n }, [\n srcChains,\n destChains,\n tokenLists,\n setSubConfig,\n tradeModes,\n excludeUI,\n devURLs,\n ]);\n\n const setExternalProvider = useSetAtom(externalProviderAtom);\n\n useLayoutEffect(() => {\n // update external provider on change\n setExternalProvider(provider || null);\n }, [provider, setExternalProvider]);\n\n return (\n <Web3Providers>\n <AutoconnectExternalProvider />\n <PrivyIframeDependency />\n <Updaters />\n <App />\n {import.meta.env.DEV && <DevTools />}\n </Web3Providers>\n );\n};\n\nexport const Widget = ({ config, provider, events, input }: WidgetProps) => {\n return (\n <QueryClientProvider>\n <JotaiProvider>\n <WidgetBase\n config={config}\n provider={provider}\n events={events}\n input={input}\n />\n </JotaiProvider>\n </QueryClientProvider>\n );\n};\n\nfunction Containers({ children }: { children: React.ReactNode }) {\n const setContainerElement = useSetAtom(containerAtom);\n\n const containerRef = useRef<HTMLDivElement | null>(null);\n useCloseScreenOnClickOutside(containerRef);\n\n const widgetConfig = useWidgetConfig();\n\n const { isDrawerFullCover, isDrawerOpen } =\n useDrawerContainerHeightTransition(containerRef);\n\n const partialDrawerOpen = isDrawerOpen && !isDrawerFullCover;\n\n return (\n <div\n ref={containerRef}\n // don't use tailwind classes on the root element, because of .velora-widget { @import tailwind/*}\n className={cn(\"velora-widget\", {\n dark: widgetConfig.theme === \"dark\",\n })}\n id={WIDGET_ELEMENT_ID}\n >\n <InWidgetDrawerOverlay open={partialDrawerOpen} />\n\n <div\n // absolutely positioned container on top of parent container with fixed height,\n // but because it's not statically positioned, it doesn't add to the whole widget height\n className={cn(\n \"overflow-hidden bottom-0 left-0 right-0 absolute transition-transform duration-500 z-11 pointer-events-none [&>*]:pointer-events-auto\",\n WIDGET_HEIGHT_CLASSNAME\n )}\n ref={setContainerElement}\n />\n {children}\n </div>\n );\n}\n\nfunction WidgetHeader() {\n return <AppHeader classes={{ root: \"mb-4\" }} />;\n}\n\nfunction SwapTokenFromInput() {\n // override Token amounts based on current swap price\n const overrides = useTokenInputsFromPrice();\n\n const tokenFromInputProps = useTokenFromInputProps({\n override: overrides.tokenFromAmount,\n activeSwapMode: overrides.priceMode,\n isPriceLoading: overrides.isLoading,\n price: overrides.price,\n });\n\n return <TokenInput {...tokenFromInputProps} />;\n}\n\nfunction LimitTokenFromInput() {\n const tokenFromInputProps = useLimitTokenFromInputProps();\n return <TokenInput {...tokenFromInputProps} />;\n}\n\nfunction OtcTokenFromInput() {\n const tokenFromInputProps = useOtcTokenFromInputProps();\n return <TokenInput {...tokenFromInputProps} />;\n}\n\nfunction SwapTokenToInput() {\n // override Token amounts based on current swap price\n const overrides = useTokenInputsFromPrice();\n\n const tokenToInputProps = useTokenToInputProps({\n override: overrides.tokenToAmount,\n isPriceLoading: overrides.isLoading,\n priceMode: overrides.priceMode,\n price: overrides.price,\n priceError: overrides.error,\n });\n\n return <TokenInput {...tokenToInputProps} />;\n}\n\nfunction LimitTokenToInput() {\n const tokenToInputProps = useLimitTokenToInputProps();\n return <TokenInput {...tokenToInputProps} />;\n}\n\nfunction OtcTokenToInput() {\n const tokenToInputProps = useOtcTokenToInputProps();\n return <TokenInput {...tokenToInputProps} />;\n}\n\nfunction SwapTokenSwitcher() {\n const tokenSwitcherProps = useSwapTokenSwitcherProps();\n return <TokenSwitcherComp {...tokenSwitcherProps} />;\n}\n\nfunction LimitTokenSwitcher() {\n const tokenSwitcherProps = useLimitTokenSwitcherProps();\n return <TokenSwitcherComp {...tokenSwitcherProps} />;\n}\n\nfunction OtcTokenSwitcher() {\n const tokenSwitcherProps = useOtcTokenSwitcherProps();\n return <TokenSwitcherComp {...tokenSwitcherProps} />;\n}\n\nfunction SwapButton() {\n // override Token amounts based on current swap price\n const overrides = useTokenInputsFromPrice();\n\n const tokenFromInputProps = useTokenFromInputProps({\n override: overrides.tokenFromAmount,\n activeSwapMode: overrides.priceMode,\n isPriceLoading: overrides.isLoading,\n price: overrides.price,\n });\n const tokenToInputProps = useTokenToInputProps({\n override: overrides.tokenToAmount,\n isPriceLoading: overrides.isLoading,\n priceMode: overrides.priceMode,\n price: overrides.price,\n priceError: overrides.error,\n });\n\n const orderProps =\n tokenFromInputProps.token && tokenToInputProps.token\n ? {\n fromToken: tokenFromInputProps.token,\n toToken: tokenToInputProps.token,\n fromAmount: tokenFromInputProps.amount,\n toAmount: tokenToInputProps.amount,\n swapSide: overrides.side,\n }\n : undefined;\n\n const wrapEthProps = useWrapEthProps();\n\n const extraProps = useWidgetButtonExtraProps({\n tokenFrom: tokenFromInputProps.token,\n tokenTo: tokenToInputProps.token,\n });\n\n return (\n <SwapButtonWithDrawer\n orderProps={orderProps}\n marketPrice={\n overrides.priceMode === \"market\" ? overrides.price : undefined\n }\n deltaPrice={overrides.priceMode === \"delta\" ? overrides.price : undefined}\n priceMode={overrides.priceMode}\n wrapEthProps={wrapEthProps}\n disabled={extraProps.disabled}\n labelOverride={extraProps.labelOverride}\n className={extraProps.className}\n />\n );\n}\n\nfunction SwapDetails() {\n const overrides = useTokenInputsFromPrice();\n\n const tokenFromInputProps = useTokenFromInputProps({\n override: overrides.tokenFromAmount,\n activeSwapMode: overrides.priceMode,\n isPriceLoading: overrides.isLoading,\n price: overrides.price,\n });\n const tokenToInputProps = useTokenToInputProps({\n override: overrides.tokenToAmount,\n isPriceLoading: overrides.isLoading,\n priceMode: overrides.priceMode,\n price: overrides.price,\n priceError: overrides.error,\n });\n\n const fromAmountGtZero = Number(tokenFromInputProps.amount) > 0;\n const shouldShowDetails = fromAmountGtZero && tokenToInputProps.token;\n\n return shouldShowDetails ? <SwapDetailsExpandable /> : null;\n}\n\nfunction SwapReceiverAddress() {\n const { isConnected } = useAccount();\n const shouldShowReceiverAddress = isConnected;\n const swapReceiverAddressProps = useSwapReceiverAddress();\n\n return shouldShowReceiverAddress ? (\n <ReceiverAddress\n classes={{ root: \"mt-2\" }}\n type=\"swap\"\n {...swapReceiverAddressProps}\n />\n ) : null;\n}\n\nfunction OtcReceiverAddress() {\n const unsupportedChain = useUnsupportedOtcChain();\n const otcReceiverAddressProps = useOtcReceiverAddress();\n\n return (\n <ReceiverAddress\n classes={{\n root: cn(\"mt-2\", {\n \"pointer-events-none\": unsupportedChain,\n }),\n }}\n type=\"otc\"\n {...otcReceiverAddressProps}\n />\n );\n}\n\nfunction LimitReceiverAddress() {\n const unsupportedChain = useUnsupportedLimitChain();\n const limitReceiverAddressProps = useLimitReceiverAddress();\n\n return (\n <ReceiverAddress\n classes={{\n root: cn(\"mt-2\", {\n \"pointer-events-none\": unsupportedChain,\n }),\n }}\n type=\"limit\"\n {...limitReceiverAddressProps}\n />\n );\n}\n\nconst swapModeSwitcherClasses = {\n root: \"mt-4\",\n} as const;\n\nfunction SwapModeSwitcher() {\n const { delta, market, priceMode } = useSwapPrices({ enabled: false });\n // @TODO as on the main UI:\n // 1. Show Market MarketOffers if marketPrice can be switched to and price will fetch\n // 2. Show nothing if only one of the prices can be used\n if (delta.canBeUsed && market.canBeUsed) {\n return (\n <SwapModeSwitcherExpandable\n classes={swapModeSwitcherClasses}\n currentEffectiveMode={priceMode}\n />\n );\n }\n\n if (delta.canBeUsed && delta.price && isBridgePrice(delta.price)) {\n return (\n <ErrorBoundary fallback={null}>\n <BridgeSelectorExpandable\n classes={swapModeSwitcherClasses}\n bridgePrice={delta.price}\n />\n </ErrorBoundary>\n );\n }\n}\n\ntype ButtonWithDrawerProps = React.ComponentProps<typeof Button> & {\n orderProps?: MinTradeOverviewProps;\n drawerContainer?: HTMLDivElement | null;\n marketPrice?: OptimalRate;\n deltaPrice?: DeltaPrice | BridgePrice;\n wrapEthProps: WrapEthProps;\n priceMode: SwapMode;\n labelOverride?: string;\n};\n\nfunction SwapButtonWithDrawer({\n orderProps,\n drawerContainer,\n marketPrice,\n deltaPrice,\n priceMode,\n wrapEthProps,\n labelOverride,\n ...buttonProps\n}: ButtonWithDrawerProps) {\n const { isConnected } = useAccount();\n\n if (!isConnected)\n return (\n <ConnectWalletDrawerButton\n drawerContainer={drawerContainer}\n {...buttonProps}\n />\n );\n\n if (wrapEthProps.shouldWrap)\n return (\n <WrapEthDrawerButton\n drawerContainer={drawerContainer}\n wrapEthProps={wrapEthProps}\n labelOverride={labelOverride}\n {...buttonProps}\n />\n );\n\n const priceProps =\n priceMode === \"delta\"\n ? { price: deltaPrice, priceMode }\n : { price: marketPrice, priceMode };\n\n return (\n <SwapTradeFlowScreenButton\n orderProps={orderProps}\n labelOverride={labelOverride}\n {...priceProps}\n {...buttonProps}\n />\n );\n}\n"],"names":["runSubscriptions","SwapScreen","$","_c","t0","Symbol","for","LimitOrderExtraInputs","priceInputProps","useLimitPriceInputProps","unsupportedChain","useUnsupportedLimitChain","cn","t1","t2","t3","OtcOrderExtraInputs","useOtcPriceInputProps","useUnsupportedOtcChain","LimitOrderScreen","OtcOrderScreen","MainScreen","tradeMode","useTradeMode","App","excludeUI","useAtomValue","excludeUIAtom","screenElement","useScreenValue","includes","WidgetBase","config","_config","provider","events","input","formInputProps","queryClient","useQueryClient","setWidgetConfig","useSetAtom","setWidgetConfigAtom","setSubConfig","setSubConfigAtom","destChains","devURLs","srcChains","tokenLists","tradeModes","defaultWidgetConfig","defaultSubConfig","t4","t5","externalProviderAtom","t6","t7","widgetEventsAtom","t8","t9","formInputPropsAtom","t10","queryClientAtom","t11","useHydrateAtoms","useWidgetEventsSetter","useSetFormInputFromProps","t12","t13","debug","enableCrossChain","enableDelta","ignoreBadUsdPrice","partner","privyAppId","privyClientId","theme","widgetMode","useLayoutEffect","t14","t15","setExternalProvider","t16","t17","t18","import","Widget","Containers","children","setContainerElement","containerAtom","containerRef","useRef","useCloseScreenOnClickOutside","widgetConfig","useWidgetConfig","isDrawerFullCover","isDrawerOpen","useDrawerContainerHeightTransition","partialDrawerOpen","dark","WIDGET_HEIGHT_CLASSNAME","WIDGET_ELEMENT_ID","WidgetHeader","root","SwapTokenFromInput","overrides","useTokenInputsFromPrice","isLoading","price","priceMode","tokenFromAmount","override","activeSwapMode","isPriceLoading","tokenFromInputProps","useTokenFromInputProps","LimitTokenFromInput","useLimitTokenFromInputProps","OtcTokenFromInput","useOtcTokenFromInputProps","SwapTokenToInput","error","tokenToAmount","priceError","tokenToInputProps","useTokenToInputProps","LimitTokenToInput","useLimitTokenToInputProps","OtcTokenToInput","useOtcTokenToInputProps","SwapTokenSwitcher","tokenSwitcherProps","useSwapTokenSwitcherProps","TokenSwitcherComp","LimitTokenSwitcher","useLimitTokenSwitcherProps","OtcTokenSwitcher","useOtcTokenSwitcherProps","SwapButton","side","amount","token","fromToken","toToken","fromAmount","toAmount","swapSide","undefined","orderProps","wrapEthProps","useWrapEthProps","tokenFrom","tokenTo","extraProps","useWidgetButtonExtraProps","className","disabled","labelOverride","SwapDetails","fromAmountGtZero","Number","shouldShowDetails","SwapReceiverAddress","isConnected","useAccount","shouldShowReceiverAddress","swapReceiverAddressProps","useSwapReceiverAddress","OtcReceiverAddress","otcReceiverAddressProps","useOtcReceiverAddress","LimitReceiverAddress","limitReceiverAddressProps","useLimitReceiverAddress","swapModeSwitcherClasses","SwapModeSwitcher","enabled","delta","market","useSwapPrices","canBeUsed","isBridgePrice","SwapButtonWithDrawer","buttonProps","deltaPrice","drawerContainer","marketPrice","shouldWrap","priceProps"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsGAA,gBAAAA,EAAiB;AAEjB,MAAMC,aAAaA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAA,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAF,EAAA,CAAA,CAAA,KAAAG,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAEfF,IAAAA,EAAAA,mBAAA,IAAA,CAAA,QAAA,EAAA,EACE,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,kBAAA,EAAA,EAAkB,CAAA;AAAA,0BAClB,iBAAA,EAAA,EAAiB,CAAA;AAAA,0BACjB,gBAAA,EAAA,EAAgB,CAAA;AAAA,0BAChB,mBAAA,EAAA;0BACA,aAAA,EAAA,EAAa,CAAA;AAAA,0BACb,UAAA,EAAA,EAAU,CAAA;AAAA,0BACV,WAAA,EAAA,EAAW,CAAA;AAAA,0BACX,gBAAA,EAAA,EAAgB;AAAA,OAAG,CAAA;AACnBF,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OATHE,EAAAA;AASG,CAAA;AAIP,MAAMG,wBAAwBA,MAAA;AAAA,EAAA,MAAAL,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAC5B,EAAA,MAAAK,kBAAwBC,uBAAAA,EAAwB;AAChD,EAAA,MAAAC,mBAAyBC,wBAAAA,EAAyB;AAAE,EAAA,IAAAP,EAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAQ,gBAAAA,EAAA;AAIrCN,IAAAA,EAAAA,GAAAQ,GAAG,+BAAA,EAAiC;AAAA,MAAA,qBAAA,EACtBF;AAAAA,KACxB,CAAA;AAACR,IAAAA,CAAAA,MAAAQ,gBAAAA;AAAAR,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAW,EAAAA;AAAA,EAAA,IAAAX,CAAAA,QAAAM,eAAAA,EAAA;AAEFK,IAAAA,EAAAA,mBAAA,GAAA,CAAA,KAAA,IAAe,SAAA,EAAA,QAAA,EACb,QAAA,sBAAC,UAAA,EAAA,EAAU,GAAKL,eAAAA,EAAe,GACjC,CAAA;AAAMN,IAAAA,CAAAA,MAAAM,eAAAA;AAAAN,IAAAA,CAAAA,MAAAW,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAZ,EAAA,CAAA,CAAA,KAAAG,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AACNQ,IAAAA,EAAAA,mBAAA,GAAA,CAAA,KAAA,IAAe,SAAA,EAAA,QAAA,EACb,QAAA,sBAAC,gBAAA,EAAA,EAAsB,IAAA,EAAA,OAAA,EAAO,GAChC,CAAA;AAAMZ,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAa,EAAAA;AAAA,EAAA,IAAAb,EAAA,CAAA,CAAA,KAAAE,MAAAF,CAAAA,QAAAW,EAAAA,EAAA;AAVRE,IAAAA,EAAAA,mBAAA,IAAA,CAAA,KAAA,EAAA,EACa,SAAA,EAAAX,IAIXS,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,MAGAC;AAAAA,OAGF,CAAA;AAAMZ,IAAAA,CAAAA,MAAAE,EAAAA;AAAAF,IAAAA,CAAAA,MAAAW,EAAAA;AAAAX,IAAAA,CAAAA,MAAAa,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAb,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAXNa,EAAAA;AAWM,CAAA;AAIV,MAAMC,sBAAsBA,MAAA;AAAA,EAAA,MAAAd,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAC1B,EAAA,MAAAK,kBAAwBS,qBAAAA,EAAsB;AAC9C,EAAA,MAAAP,mBAAyBQ,sBAAAA,EAAuB;AAAE,EAAA,IAAAd,EAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAQ,gBAAAA,EAAA;AAInCN,IAAAA,EAAAA,GAAAQ,GAAG,+BAAA,EAAiC;AAAA,MAAA,qBAAA,EACtBF;AAAAA,KACxB,CAAA;AAACR,IAAAA,CAAAA,MAAAQ,gBAAAA;AAAAR,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAW,EAAAA;AAAA,EAAA,IAAAX,CAAAA,QAAAM,eAAAA,EAAA;AAEFK,IAAAA,EAAAA,mBAAA,GAAA,CAAA,KAAA,IAAe,SAAA,EAAA,QAAA,EACb,QAAA,sBAAC,UAAA,EAAA,EAAU,GAAKL,eAAAA,EAAe,GACjC,CAAA;AAAMN,IAAAA,CAAAA,MAAAM,eAAAA;AAAAN,IAAAA,CAAAA,MAAAW,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAZ,EAAA,CAAA,CAAA,KAAAG,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AACNQ,IAAAA,EAAAA,mBAAA,GAAA,CAAA,KAAA,IAAe,SAAA,EAAA,QAAA,EACb,QAAA,sBAAC,gBAAA,EAAA,EAAsB,IAAA,EAAA,KAAA,EAAK,GAC9B,CAAA;AAAMZ,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAa,EAAAA;AAAA,EAAA,IAAAb,EAAA,CAAA,CAAA,KAAAE,MAAAF,CAAAA,QAAAW,EAAAA,EAAA;AAVRE,IAAAA,EAAAA,mBAAA,IAAA,CAAA,KAAA,EAAA,EACa,SAAA,EAAAX,IAIXS,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,MAGAC;AAAAA,OAGF,CAAA;AAAMZ,IAAAA,CAAAA,MAAAE,EAAAA;AAAAF,IAAAA,CAAAA,MAAAW,EAAAA;AAAAX,IAAAA,CAAAA,MAAAa,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAb,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAXNa,EAAAA;AAWM,CAAA;AAIV,MAAMI,mBAAmBA,MAAA;AAAA,EAAA,MAAAjB,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAA,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAF,EAAA,CAAA,CAAA,KAAAG,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAErBF,IAAAA,EAAAA,mBAAA,IAAA,CAAA,QAAA,EAAA,EACE,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,mBAAA,EAAA,EAAmB,CAAA;AAAA,0BACnB,kBAAA,EAAA,EAAkB,CAAA;AAAA,0BAClB,iBAAA,EAAA,EAAiB,CAAA;AAAA,0BACjB,qBAAA,EAAA;0BACA,oBAAA,EAAA,EAAoB,CAAA;AAAA,0BACpB,aAAA,EAAA,EAAa,CAAA;AAAA,0BACb,gBAAA,EAAA,EAAgB,CAAA;AAAA,0BAChB,iBAAA,EAAA,EAAiB;AAAA,OAAG,CAAA;AACpBF,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OATHE,EAAAA;AASG,CAAA;AAIP,MAAMgB,iBAAiBA,MAAA;AAAA,EAAA,MAAAlB,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAA,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAF,EAAA,CAAA,CAAA,KAAAG,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAEnBF,IAAAA,EAAAA,mBAAA,IAAA,CAAA,QAAA,EAAA,EACE,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,iBAAA,EAAA,EAAiB,CAAA;AAAA,0BACjB,gBAAA,EAAA,EAAgB,CAAA;AAAA,0BAChB,eAAA,EAAA,EAAe,CAAA;AAAA,0BACf,mBAAA,EAAA;0BACA,kBAAA,EAAA,EAAkB,CAAA;AAAA,0BAClB,aAAA,EAAA,EAAa,CAAA;AAAA,0BACb,cAAA,EAAA,EAAc,CAAA;AAAA,0BACd,eAAA,EAAA,EAAe;AAAA,OAAG,CAAA;AAClBF,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OATHE,EAAAA;AASG,CAAA;AAIP,MAAMiB,aAAaA,MAAA;AAAA,EAAA,MAAAnB,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACjB,EAAA,MAAAmB,YAAkBC,YAAAA,EAAa;AAAE,EAAA,IAAAnB,EAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAoB,SAAAA,EAAA;AAC1BlB,IAAAA,EAAAA,GAAAkB,cAAc,MAAA,mBACnB,GAAA,CAAC,UAAA,EAAA,EAAU,CAAA,GACTA,SAAAA,KAAc,OAAA,mBAChB,GAAA,CAAC,kBAAA,sBAED,GAAA,CAAC,cAAA,EAAA,EAAc,CAAA;AAChBpB,IAAAA,CAAAA,MAAAoB,SAAAA;AAAApB,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OANME,EAAAA;AAMN,CAAA;AAGH,MAAMoB,MAAMA,MAAA;AAAA,EAAA,MAAAtB,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACV,EAAA,MAAAsB,SAAAA,GAAkBC,aAAaC,aAAa,CAAA;AAC5C,EAAA,MAAA;AAAA,IAAAC;AAAAA,MAA0BC,cAAAA,EAAe;AAAE,EAAA,IAAAzB,EAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAA0B,aAAAA,EAAA;AAItCxB,IAAAA,EAAAA,GAAAwB,aAAAA,mBACC,GAAA,CAAC,wBAAA,EAAA,EAA0BA,QAAAA,EAAAA,aAAAA,EAAc,CAAA,wBAExC,mBAAA,EAAA,EACC,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,YAAA,EAAA,EAAY,CAAA;AAAA,0BACZ,UAAA,EAAA,EAAU,CAAA;AAAA,0BACV,SAAA,EAAA,EAAS;AAAA,OACZ,CAAA;AACD1B,IAAAA,CAAAA,MAAA0B,aAAAA;AAAA1B,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAW,EAAAA;AAAA,EAAA,IAAAX,CAAAA,QAAAuB,SAAAA,EAAA;AACAZ,IAAAA,EAAAA,GAAA,CAACY,UAASK,QAAAA,CAAU,WAAW,yBAAM,OAAA,EAAA,EAAO,CAAA;AAAG5B,IAAAA,CAAAA,MAAAuB,SAAAA;AAAAvB,IAAAA,CAAAA,MAAAW,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAZ,EAAA,CAAA,CAAA,KAAAE,MAAAF,CAAAA,QAAAW,EAAAA,EAAA;AAVlDC,IAAAA,EAAAA,wBAAC,UAAA,EAAA,EACEV,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,MASAS;AAAAA,OACH,CAAA;AAAaX,IAAAA,CAAAA,MAAAE,EAAAA;AAAAF,IAAAA,CAAAA,MAAAW,EAAAA;AAAAX,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAXbY,EAAAA;AAWa,CAAA;AAIjB,MAAMiB,UAAAA,GAAa3B,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAF,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAA6B,MAAAA,EAAAC,OAAAA;AAAAA,IAAAC,QAAAA;AAAAA,IAAAC,MAAAA;AAAAA,IAAAC,KAAAA,EAAAC;AAAAA,GAAA,GAAAjC,EAAAA;AAMlB,EAAA,MAAAkC,cAAoBC,cAAAA,EAAe;AAEnC,EAAA,MAAAC,eAAAA,GAAwBC,WAAWC,mBAAmB,CAAA;AACtD,EAAA,MAAAC,YAAAA,GAAqBF,WAAWG,gBAAgB,CAAA;AAAE,EAAA,IAAA/B,EAAAA;AAAA,EAAA,IAAAX,CAAAA,QAAA+B,OAAAA,EAAA;AAS9CpB,IAAAA,EAAAA,GAAAoB,WAAA,EAAY;AAAC/B,IAAAA,CAAAA,MAAA+B,OAAAA;AAAA/B,IAAAA,CAAAA,MAAAW,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAA8B,MAAAA;AAAA,EAAA,IAAAa,UAAAA;AAAA,EAAA,IAAAC,OAAAA;AAAA,EAAA,IAAArB,SAAAA;AAAA,EAAA,IAAAsB,SAAAA;AAAA,EAAA,IAAAC,UAAAA;AAAA,EAAA,IAAAC,UAAAA;AAAA,EAAA,IAAA/C,CAAAA,QAAAW,EAAAA,EAAA;AARjB,IAAA,CAAA;AAAA,MAAAkC,SAAAA;AAAAA,MAAAF,UAAAA;AAAAA,MAAAG,UAAAA;AAAAA,MAAAC,UAAAA;AAAAA,MAAAxB,SAAAA;AAAAA,MAAAqB,OAAAA;AAAAA,MAAA,GAAAd;AAAAA,KAAA,GAQInB,EAAAA;AAAcX,IAAAA,CAAAA,MAAAW,EAAAA;AAAAX,IAAAA,CAAAA,MAAA8B,MAAAA;AAAA9B,IAAAA,CAAAA,MAAA2C,UAAAA;AAAA3C,IAAAA,CAAAA,MAAA4C,OAAAA;AAAA5C,IAAAA,CAAAA,MAAAuB,SAAAA;AAAAvB,IAAAA,CAAAA,MAAA6C,SAAAA;AAAA7C,IAAAA,CAAAA,MAAA8C,UAAAA;AAAA9C,IAAAA,CAAAA,MAAA+C,UAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAjB,IAAAA,MAAAA,GAAA9B,EAAA,CAAA,CAAA;AAAA2C,IAAAA,UAAAA,GAAA3C,EAAA,CAAA,CAAA;AAAA4C,IAAAA,OAAAA,GAAA5C,EAAA,CAAA,CAAA;AAAAuB,IAAAA,SAAAA,GAAAvB,EAAA,CAAA,CAAA;AAAA6C,IAAAA,SAAAA,GAAA7C,EAAA,CAAA,CAAA;AAAA8C,IAAAA,UAAAA,GAAA9C,EAAA,CAAA,CAAA;AAAA+C,IAAAA,UAAAA,GAAA/C,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAZ,CAAAA,SAAA8B,MAAAA,EAAA;AAKhBlB,IAAAA,EAAAA,GAAA,CAAC4B,mBAAAA,EAAqB;AAAA,MAAA,GAAKQ,mBAAAA;AAAAA,MAAmB,GAAKlB;AAAAA,KAAQ,CAAA;AAAC9B,IAAAA,CAAAA,OAAA8B,MAAAA;AAAA9B,IAAAA,CAAAA,OAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAa,EAAAA;AAAA,EAAA,IAAAb,CAAAA,SAAA2C,UAAAA,IAAA3C,EAAA,EAAA,CAAA,KAAA4C,OAAAA,IAAA5C,CAAAA,CAAA,EAAA,CAAA,KAAAuB,aAAAvB,CAAAA,CAAA,EAAA,CAAA,KAAA6C,SAAAA,IAAA7C,CAAAA,SAAA8C,UAAAA,IAAA9C,CAAAA,CAAA,EAAA,CAAA,KAAA+C,UAAAA,EAAA;AAC5DlC,IAAAA,EAAAA,GAAA,CACE6B,gBAAAA,EACA;AAAA,MAAA,GACKO,gBAAAA;AAAAA,MAAgBJ,SAAAA;AAAAA,MAAAF,UAAAA;AAAAA,MAAAG,UAAAA;AAAAA,MAAAC,UAAAA;AAAAA,MAAAxB,SAAAA;AAAAA,MAAAqB;AAAAA,KAOpB,CAAA;AACF5C,IAAAA,CAAAA,OAAA2C,UAAAA;AAAA3C,IAAAA,CAAAA,OAAA4C,OAAAA;AAAA5C,IAAAA,CAAAA,OAAAuB,SAAAA;AAAAvB,IAAAA,CAAAA,OAAA6C,SAAAA;AAAA7C,IAAAA,CAAAA,OAAA8C,UAAAA;AAAA9C,IAAAA,CAAAA,OAAA+C,UAAAA;AAAA/C,IAAAA,CAAAA,OAAAa,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAb,EAAA,EAAA,CAAA;AAAA,EAAA;AACsB,EAAA,MAAAkD,KAAAlB,QAAAA,IAAA,IAAA;AAAgB,EAAA,IAAAmB,EAAAA;AAAA,EAAA,IAAAnD,CAAAA,SAAAkD,EAAAA,EAAA;AAAvCC,IAAAA,EAAAA,GAAA,CAACC,sBAAsBF,EAAgB,CAAA;AAAClD,IAAAA,CAAAA,OAAAkD,EAAAA;AAAAlD,IAAAA,CAAAA,OAAAmD,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAnD,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAqD,EAAAA;AAAA,EAAA,IAAArD,CAAAA,SAAAiC,MAAAA,EAAA;AACrBoB,IAAAA,EAAAA,GAAApB,UAAA,EAAW;AAACjC,IAAAA,CAAAA,OAAAiC,MAAAA;AAAAjC,IAAAA,CAAAA,OAAAqD,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAArD,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAsD,EAAAA;AAAA,EAAA,IAAAtD,CAAAA,SAAAqD,EAAAA,EAAA;AAA/BC,IAAAA,EAAAA,GAAA,CAACC,kBAAkBF,EAAY,CAAA;AAACrD,IAAAA,CAAAA,OAAAqD,EAAAA;AAAArD,IAAAA,CAAAA,OAAAsD,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAtD,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAwD,EAAAA;AAAA,EAAA,IAAAxD,CAAAA,SAAAmC,cAAAA,EAAA;AACXqB,IAAAA,EAAAA,GAAArB,kBAAA,EAAmB;AAACnC,IAAAA,CAAAA,OAAAmC,cAAAA;AAAAnC,IAAAA,CAAAA,OAAAwD,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAxD,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAyD,EAAAA;AAAA,EAAA,IAAAzD,CAAAA,SAAAwD,EAAAA,EAAA;AAAzCC,IAAAA,EAAAA,GAAA,CAACC,oBAAoBF,EAAoB,CAAA;AAACxD,IAAAA,CAAAA,OAAAwD,EAAAA;AAAAxD,IAAAA,CAAAA,OAAAyD,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAzD,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAA2D,GAAAA;AAAA,EAAA,IAAA3D,CAAAA,SAAAoC,WAAAA,EAAA;AAI1CuB,IAAAA,GAAAA,GAAA,CAACC,iBAAiBxB,WAAW,CAAA;AAACpC,IAAAA,CAAAA,OAAAoC,WAAAA;AAAApC,IAAAA,CAAAA,OAAA2D,GAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,GAAAA,GAAA3D,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAA6D,GAAAA;AAAA,EAAA,IAAA7D,CAAAA,SAAA2D,GAAAA,IAAA3D,EAAA,EAAA,CAAA,KAAAY,EAAAA,IAAAZ,CAAAA,CAAA,EAAA,CAAA,KAAAa,MAAAb,CAAAA,CAAA,EAAA,CAAA,KAAAmD,EAAAA,IAAAnD,CAAAA,SAAAsD,EAAAA,IAAAtD,CAAAA,CAAA,EAAA,CAAA,KAAAyD,EAAAA,EAAA;AApBhBI,IAAAA,GAAAA,GAAA,CACdjD,EAAAA,EACAC,EAAAA,EAYAsC,EAAAA,EACAG,EAAAA,EACAG,IAIAE,GAA8B,CAAA;AAC/B3D,IAAAA,CAAAA,OAAA2D,GAAAA;AAAA3D,IAAAA,CAAAA,OAAAY,EAAAA;AAAAZ,IAAAA,CAAAA,OAAAa,EAAAA;AAAAb,IAAAA,CAAAA,OAAAmD,EAAAA;AAAAnD,IAAAA,CAAAA,OAAAsD,EAAAA;AAAAtD,IAAAA,CAAAA,OAAAyD,EAAAA;AAAAzD,IAAAA,CAAAA,OAAA6D,GAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,GAAAA,GAAA7D,EAAA,EAAA,CAAA;AAAA,EAAA;AArBD8D,EAAAA,eAAAA,CAAgBD,GAqBf,CAAA;AAEDE,EAAAA,qBAAAA,CAAsB9B,MAAM,CAAA;AAC5B+B,EAAAA,wBAAAA,CAAyB7B,cAAc,CAAA;AAAC,EAAA,IAAA8B,GAAAA;AAAA,EAAA,IAAAC,GAAAA;AAAA,EAAA,IAAAlE,CAAAA,CAAA,EAAA,CAAA,KAAA8B,MAAAA,CAAAqC,SAAAnE,CAAAA,CAAA,EAAA,CAAA,KAAA8B,MAAAA,CAAAsC,gBAAAA,IAAApE,CAAAA,SAAA8B,MAAAA,CAAAuC,eAAArE,CAAAA,CAAA,EAAA,MAAA8B,MAAAA,CAAAwC,iBAAAA,IAAAtE,CAAAA,CAAA,EAAA,CAAA,KAAA8B,MAAAA,CAAAyC,WAAAvE,CAAAA,CAAA,EAAA,MAAA8B,MAAAA,CAAA0C,UAAAA,IAAAxE,EAAA,EAAA,CAAA,KAAA8B,MAAAA,CAAA2C,aAAAA,IAAAzE,CAAAA,SAAA8B,MAAAA,CAAA4C,KAAAA,IAAA1E,EAAA,EAAA,CAAA,KAAA8B,OAAA6C,UAAAA,IAAA3E,CAAAA,CAAA,EAAA,CAAA,KAAAsC,eAAAA,EAAA;AAExB2B,IAAAA,GAAAA,GAAAA,MAAA;AACd3B,MAAAA,eAAAA,CAAgB;AAAA,QAAAoC,OACP5C,MAAAA,CAAM4C,KAAAA;AAAAA,QAAML,aACNvC,MAAAA,CAAMuC,WAAAA;AAAAA,QAAYD,kBACbtC,MAAAA,CAAMsC,gBAAAA;AAAAA,QAAiBG,SAChCzC,MAAAA,CAAMyC,OAAAA;AAAAA,QAAQC,YACX1C,MAAAA,CAAM0C,UAAAA;AAAAA,QAAWC,eACd3C,MAAAA,CAAM2C,aAAAA;AAAAA,QAAcN,OAC5BrC,MAAAA,CAAMqC,KAAAA;AAAAA,QAAMQ,YACP7C,MAAAA,CAAM6C,UAAAA;AAAAA,QAAWL,mBACVxC,MAAAA,CAAMwC;AAAAA,OAC1B,CAAA;AAAA,IAAC,CAAA;AACDJ,IAAAA,GAAAA,IACDpC,MAAAA,CAAM4C,KAAAA,EACN5C,OAAMuC,WAAAA,EACNvC,MAAAA,CAAMsC,kBACNtC,MAAAA,CAAMyC,OAAAA,EACNzC,OAAM0C,UAAAA,EACN1C,MAAAA,CAAM2C,eACN3C,MAAAA,CAAMqC,KAAAA,EACNrC,OAAM6C,UAAAA,EACN7C,MAAAA,CAAMwC,mBACNhC,eAAe,CAAA;AAChBtC,IAAAA,CAAAA,CAAA,EAAA,IAAA8B,MAAAA,CAAAqC,KAAAA;AAAAnE,IAAAA,CAAAA,CAAA,EAAA,IAAA8B,MAAAA,CAAAsC,gBAAAA;AAAApE,IAAAA,CAAAA,CAAA,EAAA,IAAA8B,MAAAA,CAAAuC,WAAAA;AAAArE,IAAAA,CAAAA,CAAA,EAAA,IAAA8B,MAAAA,CAAAwC,iBAAAA;AAAAtE,IAAAA,CAAAA,CAAA,EAAA,IAAA8B,MAAAA,CAAAyC,OAAAA;AAAAvE,IAAAA,CAAAA,CAAA,EAAA,IAAA8B,MAAAA,CAAA0C,UAAAA;AAAAxE,IAAAA,CAAAA,CAAA,EAAA,IAAA8B,MAAAA,CAAA2C,aAAAA;AAAAzE,IAAAA,CAAAA,CAAA,EAAA,IAAA8B,MAAAA,CAAA4C,KAAAA;AAAA1E,IAAAA,CAAAA,CAAA,EAAA,IAAA8B,MAAAA,CAAA6C,UAAAA;AAAA3E,IAAAA,CAAAA,OAAAsC,eAAAA;AAAAtC,IAAAA,CAAAA,OAAAiE,GAAAA;AAAAjE,IAAAA,CAAAA,OAAAkE,GAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAD,IAAAA,GAAAA,GAAAjE,EAAA,EAAA,CAAA;AAAAkE,IAAAA,GAAAA,GAAAlE,EAAA,EAAA,CAAA;AAAA,EAAA;AAvBD4E,EAAAA,eAAAA,CAAgBX,KAYbC,GAWF,CAAA;AAAC,EAAA,IAAAW,GAAAA;AAAA,EAAA,IAAAC,GAAAA;AAAA,EAAA,IAAA9E,CAAAA,CAAA,EAAA,CAAA,KAAA2C,UAAAA,IAAA3C,CAAAA,CAAA,EAAA,CAAA,KAAA4C,OAAAA,IAAA5C,CAAAA,CAAA,EAAA,CAAA,KAAAuB,SAAAA,IAAAvB,CAAAA,SAAAyC,YAAAA,IAAAzC,CAAAA,CAAA,EAAA,CAAA,KAAA6C,SAAAA,IAAA7C,CAAAA,CAAA,EAAA,CAAA,KAAA8C,UAAAA,IAAA9C,CAAAA,CAAA,EAAA,CAAA,KAAA+C,UAAAA,EAAA;AAEc8B,IAAAA,GAAAA,GAAAA,MAAA;AACdpC,MAAAA,YAAAA,CAAa;AAAA,QAAAI,SAAAA;AAAAA,QAAAF,UAAAA;AAAAA,QAAAG,UAAAA;AAAAA,QAAAC,UAAAA;AAAAA,QAAAxB,SAAAA;AAAAA,QAAAqB;AAAAA,OAOZ,CAAA;AAAA,IAAC,CAAA;AACDkC,IAAAA,GAAAA,GAAA,CACDjC,SAAAA,EACAF,UAAAA,EACAG,YACAL,YAAAA,EACAM,UAAAA,EACAxB,WACAqB,OAAO,CAAA;AACR5C,IAAAA,CAAAA,OAAA2C,UAAAA;AAAA3C,IAAAA,CAAAA,OAAA4C,OAAAA;AAAA5C,IAAAA,CAAAA,OAAAuB,SAAAA;AAAAvB,IAAAA,CAAAA,OAAAyC,YAAAA;AAAAzC,IAAAA,CAAAA,OAAA6C,SAAAA;AAAA7C,IAAAA,CAAAA,OAAA8C,UAAAA;AAAA9C,IAAAA,CAAAA,OAAA+C,UAAAA;AAAA/C,IAAAA,CAAAA,OAAA6E,GAAAA;AAAA7E,IAAAA,CAAAA,OAAA8E,GAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAD,IAAAA,GAAAA,GAAA7E,EAAA,EAAA,CAAA;AAAA8E,IAAAA,GAAAA,GAAA9E,EAAA,EAAA,CAAA;AAAA,EAAA;AAjBD4E,EAAAA,eAAAA,CAAgBC,KASbC,GAQF,CAAA;AAED,EAAA,MAAAC,mBAAAA,GAA4BxC,WAAWa,oBAAoB,CAAA;AAAE,EAAA,IAAA4B,GAAAA;AAAA,EAAA,IAAAC,GAAAA;AAAA,EAAA,IAAAjF,EAAA,EAAA,CAAA,KAAAgC,YAAAhC,CAAAA,SAAA+E,mBAAAA,EAAA;AAE7CC,IAAAA,GAAAA,GAAAA,MAAA;AAEdD,MAAAA,mBAAAA,CAAoB/C,YAAA,IAAgB,CAAA;AAAA,IAAC,CAAA;AACpCiD,IAAAA,GAAAA,GAAA,CAACjD,UAAU+C,mBAAmB,CAAA;AAAC/E,IAAAA,CAAAA,OAAAgC,QAAAA;AAAAhC,IAAAA,CAAAA,OAAA+E,mBAAAA;AAAA/E,IAAAA,CAAAA,OAAAgF,GAAAA;AAAAhF,IAAAA,CAAAA,OAAAiF,GAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAD,IAAAA,GAAAA,GAAAhF,EAAA,EAAA,CAAA;AAAAiF,IAAAA,GAAAA,GAAAjF,EAAA,EAAA,CAAA;AAAA,EAAA;AAHlC4E,EAAAA,eAAAA,CAAgBI,KAGbC,GAA+B,CAAA;AAAC,EAAA,IAAAC,GAAAA;AAAA,EAAA,IAAAlF,EAAA,EAAA,CAAA,KAAAG,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAGjC8E,IAAAA,GAAAA,wBAAC,aAAA,EAAA,EACC,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,2BAAA,EAAA,EAA2B,CAAA;AAAA,0BAC3B,qBAAA,EAAA,EAAqB,CAAA;AAAA,0BACrB,QAAA,EAAA,EAAQ,CAAA;AAAA,0BACR,GAAA,EAAA,EAAG,CAAA;AAAA,MACHC;AAAAA,OACH,CAAA;AAAgBnF,IAAAA,CAAAA,OAAAkF,GAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,GAAAA,GAAAlF,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OANhBkF,GAAAA;AAMgB,CAAA;AAIb,MAAME,MAAAA,GAASlF,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAF,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAA6B,MAAAA;AAAAA,IAAAE,QAAAA;AAAAA,IAAAC,MAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAAhC,EAAAA;AAAgD,EAAA,IAAAS,EAAAA;AAAA,EAAA,IAAAX,CAAAA,CAAA,CAAA,CAAA,KAAA8B,MAAAA,IAAA9B,EAAA,CAAA,CAAA,KAAAiC,MAAAA,IAAAjC,CAAAA,CAAA,CAAA,CAAA,KAAAkC,KAAAA,IAAAlC,CAAAA,QAAAgC,QAAAA,EAAA;AAEnErB,IAAAA,EAAAA,uBAAC,mBAAA,EAAA,EACC,0BAAA,GAAA,CAAC,aAAA,EAAA,EACC,QAAA,kBAAA,GAAA,CAAC,YAAA,EACSmB,MAAAA,EACEE,UACFC,MAAAA,EACDC,KAAAA,KAEX,GACF,CAAA;AAAsBlC,IAAAA,CAAAA,MAAA8B,MAAAA;AAAA9B,IAAAA,CAAAA,MAAAiC,MAAAA;AAAAjC,IAAAA,CAAAA,MAAAkC,KAAAA;AAAAlC,IAAAA,CAAAA,MAAAgC,QAAAA;AAAAhC,IAAAA,CAAAA,MAAAW,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OATtBW,EAAAA;AASsB;AAI1B,SAAA0E,WAAAnF,EAAAA,EAAA;AAAA,EAAA,MAAAF,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAoB,EAAA,MAAA;AAAA,IAAAqF;AAAAA,GAAA,GAAApF,EAAAA;AAClB,EAAA,MAAAqF,mBAAAA,GAA4BhD,WAAWiD,aAAa,CAAA;AAEpD,EAAA,MAAAC,YAAAA,GAAqBC,OAA8B,IAAI,CAAA;AACvDC,EAAAA,4BAAAA,CAA6BF,YAAY,CAAA;AAEzC,EAAA,MAAAG,eAAqBC,eAAAA,EAAgB;AAErC,EAAA,MAAA;AAAA,IAAAC,iBAAAA;AAAAA,IAAAC;AAAAA,GAAA,GACEC,mCAAmCP,YAAY,CAAA;AAEjD,EAAA,MAAAQ,iBAAAA,GAA0BF,gBAAA,CAAiBD,iBAAAA;AAO/B,EAAA,MAAAnF,EAAAA,GAAAiF,aAAYlB,KAAAA,KAAW,MAAA;AAAM,EAAA,IAAA9D,EAAAA;AAAA,EAAA,IAAAZ,CAAAA,QAAAW,EAAAA,EAAA;AAD1BC,IAAAA,EAAAA,GAAAF,GAAG,eAAA,EAAiB;AAAA,MAAAwF,IAAAA,EACvBvF;AAAAA,KACP,CAAA;AAACX,IAAAA,CAAAA,MAAAW,EAAAA;AAAAX,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAa,EAAAA;AAAA,EAAA,IAAAb,CAAAA,QAAAiG,iBAAAA,EAAA;AAGFpF,IAAAA,EAAAA,uBAAC,qBAAA,EAAA,EAA4BoF,IAAAA,EAAAA,mBAAiB,CAAA;AAAIjG,IAAAA,CAAAA,MAAAiG,iBAAAA;AAAAjG,IAAAA,CAAAA,MAAAa,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAb,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAkD,EAAAA;AAAA,EAAA,IAAAlD,EAAA,CAAA,CAAA,KAAAG,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAKrC8C,IAAAA,EAAAA,GAAAxC,EAAAA,CACT,yIACAyF,uBACF,CAAA;AAACnG,IAAAA,CAAAA,MAAAkD,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAlD,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAmD,EAAAA;AAAA,EAAA,IAAAnD,CAAAA,QAAAuF,mBAAAA,EAAA;AANHpC,IAAAA,EAAAA,uBAAA,KAAA,EAAA,EAGa,WAAAD,EAAAA,EAINqC,GAAAA,EAAAA,qBAAmB,CAAA;AACxBvF,IAAAA,CAAAA,MAAAuF,mBAAAA;AAAAvF,IAAAA,CAAAA,MAAAmD,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAnD,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAqD,EAAAA;AAAA,EAAA,IAAArD,CAAAA,CAAA,CAAA,CAAA,KAAAsF,QAAAA,IAAAtF,EAAA,CAAA,CAAA,KAAAY,EAAAA,IAAAZ,CAAAA,CAAA,CAAA,CAAA,KAAAa,EAAAA,IAAAb,CAAAA,SAAAmD,EAAAA,EAAA;AAlBJE,IAAAA,EAAAA,wBAAA,OAAA,EACOoC,GAAAA,EAAAA,cAEM,SAAA,EAAA7E,EAAAA,EAGPwF,EAAAA,EAAAA,iBAAAA,EAEJvF,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,MAEAsC,EAAAA;AAAAA,MASCmC;AAAAA,OACH,CAAA;AAAMtF,IAAAA,CAAAA,MAAAsF,QAAAA;AAAAtF,IAAAA,CAAAA,MAAAY,EAAAA;AAAAZ,IAAAA,CAAAA,MAAAa,EAAAA;AAAAb,IAAAA,CAAAA,OAAAmD,EAAAA;AAAAnD,IAAAA,CAAAA,OAAAqD,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAArD,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OApBNqD,EAAAA;AAoBM;AAIV,SAAAgD,YAAAA,GAAA;AAAA,EAAA,MAAArG,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAA,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAF,EAAA,CAAA,CAAA,KAAAG,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AACSF,IAAAA,EAAAA,mBAAA,GAAA,CAAC,SAAA,IAAmB,OAAA,EAAA;AAAA,MAAAoG,IAAAA,EAAQ;AAAA,OAAQ,CAAA;AAAItG,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAAxCE,EAAAA;AAAwC;AAGjD,SAAAqG,kBAAAA,GAAA;AAAA,EAAA,MAAAvG,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAEE,EAAA,MAAAuG,YAAkBC,uBAAAA,EAAwB;AAAE,EAAA,IAAAvG,EAAAA;AAAA,EAAA,IAAAF,SAAAwG,UAAAE,SAAAA,IAAA1G,CAAAA,CAAA,CAAA,CAAA,KAAAwG,SAAAA,CAAAG,SAAA3G,CAAAA,CAAA,CAAA,MAAAwG,SAAAA,CAAAI,SAAAA,IAAA5G,EAAA,CAAA,CAAA,KAAAwG,UAAAK,eAAAA,EAAA;AAEO3G,IAAAA,EAAAA,GAAA;AAAA,MAAA4G,UACvCN,SAAAA,CAASK,eAAAA;AAAAA,MAAgBE,gBACnBP,SAAAA,CAASI,SAAAA;AAAAA,MAAUI,gBACnBR,SAAAA,CAASE,SAAAA;AAAAA,MAAUC,OAC5BH,SAAAA,CAASG;AAAAA,KAClB;AAAC3G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAE,SAAAA;AAAA1G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAG,KAAAA;AAAA3G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAI,SAAAA;AAAA5G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAK,eAAAA;AAAA7G,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AALD,EAAA,MAAAiH,mBAAAA,GAA4BC,uBAAuBhH,EAKlD,CAAA;AAAE,EAAA,IAAAS,EAAAA;AAAA,EAAA,IAAAX,CAAAA,QAAAiH,mBAAAA,EAAA;AAEItG,IAAAA,EAAAA,mBAAA,GAAA,CAAC,UAAA,EAAA,EAAU,GAAKsG,qBAAmB,CAAA;AAAIjH,IAAAA,CAAAA,MAAAiH,mBAAAA;AAAAjH,IAAAA,CAAAA,MAAAW,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAAvCW,EAAAA;AAAuC;AAGhD,SAAAwG,mBAAAA,GAAA;AAAA,EAAA,MAAAnH,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACE,EAAA,MAAAgH,sBAA4BG,2BAAAA,EAA4B;AAAE,EAAA,IAAAlH,EAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAiH,mBAAAA,EAAA;AACnD/G,IAAAA,EAAAA,mBAAA,GAAA,CAAC,UAAA,EAAA,EAAU,GAAK+G,qBAAmB,CAAA;AAAIjH,IAAAA,CAAAA,MAAAiH,mBAAAA;AAAAjH,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAAvCE,EAAAA;AAAuC;AAGhD,SAAAmH,iBAAAA,GAAA;AAAA,EAAA,MAAArH,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACE,EAAA,MAAAgH,sBAA4BK,yBAAAA,EAA0B;AAAE,EAAA,IAAApH,EAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAiH,mBAAAA,EAAA;AACjD/G,IAAAA,EAAAA,mBAAA,GAAA,CAAC,UAAA,EAAA,EAAU,GAAK+G,qBAAmB,CAAA;AAAIjH,IAAAA,CAAAA,MAAAiH,mBAAAA;AAAAjH,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAAvCE,EAAAA;AAAuC;AAGhD,SAAAqH,gBAAAA,GAAA;AAAA,EAAA,MAAAvH,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAEE,EAAA,MAAAuG,YAAkBC,uBAAAA,EAAwB;AAAE,EAAA,IAAAvG,EAAAA;AAAA,EAAA,IAAAF,CAAAA,CAAA,CAAA,CAAA,KAAAwG,SAAAA,CAAAgB,KAAAA,IAAAxH,EAAA,CAAA,CAAA,KAAAwG,SAAAA,CAAAE,SAAAA,IAAA1G,CAAAA,CAAA,CAAA,MAAAwG,SAAAA,CAAAG,KAAAA,IAAA3G,CAAAA,CAAA,CAAA,CAAA,KAAAwG,SAAAA,CAAAI,aAAA5G,CAAAA,CAAA,CAAA,CAAA,KAAAwG,SAAAA,CAAAiB,aAAAA,EAAA;AAEGvH,IAAAA,EAAAA,GAAA;AAAA,MAAA4G,UACnCN,SAAAA,CAASiB,aAAAA;AAAAA,MAAcT,gBACjBR,SAAAA,CAASE,SAAAA;AAAAA,MAAUE,WACxBJ,SAAAA,CAASI,SAAAA;AAAAA,MAAUD,OACvBH,SAAAA,CAASG,KAAAA;AAAAA,MAAMe,YACVlB,SAAAA,CAASgB;AAAAA,KACvB;AAACxH,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAgB,KAAAA;AAAAxH,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAE,SAAAA;AAAA1G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAG,KAAAA;AAAA3G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAI,SAAAA;AAAA5G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAiB,aAAAA;AAAAzH,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAND,EAAA,MAAA2H,iBAAAA,GAA0BC,qBAAqB1H,EAM9C,CAAA;AAAE,EAAA,IAAAS,EAAAA;AAAA,EAAA,IAAAX,CAAAA,QAAA2H,iBAAAA,EAAA;AAEIhH,IAAAA,EAAAA,mBAAA,GAAA,CAAC,UAAA,EAAA,EAAU,GAAKgH,mBAAiB,CAAA;AAAI3H,IAAAA,CAAAA,MAAA2H,iBAAAA;AAAA3H,IAAAA,CAAAA,MAAAW,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAArCW,EAAAA;AAAqC;AAG9C,SAAAkH,iBAAAA,GAAA;AAAA,EAAA,MAAA7H,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACE,EAAA,MAAA0H,oBAA0BG,yBAAAA,EAA0B;AAAE,EAAA,IAAA5H,EAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAA2H,iBAAAA,EAAA;AAC/CzH,IAAAA,EAAAA,mBAAA,GAAA,CAAC,UAAA,EAAA,EAAU,GAAKyH,mBAAiB,CAAA;AAAI3H,IAAAA,CAAAA,MAAA2H,iBAAAA;AAAA3H,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAArCE,EAAAA;AAAqC;AAG9C,SAAA6H,eAAAA,GAAA;AAAA,EAAA,MAAA/H,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACE,EAAA,MAAA0H,oBAA0BK,uBAAAA,EAAwB;AAAE,EAAA,IAAA9H,EAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAA2H,iBAAAA,EAAA;AAC7CzH,IAAAA,EAAAA,mBAAA,GAAA,CAAC,UAAA,EAAA,EAAU,GAAKyH,mBAAiB,CAAA;AAAI3H,IAAAA,CAAAA,MAAA2H,iBAAAA;AAAA3H,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAArCE,EAAAA;AAAqC;AAG9C,SAAA+H,iBAAAA,GAAA;AAAA,EAAA,MAAAjI,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACE,EAAA,MAAAiI,qBAA2BC,yBAAAA,EAA0B;AAAE,EAAA,IAAAjI,EAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAkI,kBAAAA,EAAA;AAChDhI,IAAAA,EAAAA,mBAAA,GAAA,CAACkI,aAAA,EAAA,EAAiB,GAAKF,oBAAkB,CAAA;AAAIlI,IAAAA,CAAAA,MAAAkI,kBAAAA;AAAAlI,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAA7CE,EAAAA;AAA6C;AAGtD,SAAAmI,kBAAAA,GAAA;AAAA,EAAA,MAAArI,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACE,EAAA,MAAAiI,qBAA2BI,0BAAAA,EAA2B;AAAE,EAAA,IAAApI,EAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAkI,kBAAAA,EAAA;AACjDhI,IAAAA,EAAAA,mBAAA,GAAA,CAACkI,aAAA,EAAA,EAAiB,GAAKF,oBAAkB,CAAA;AAAIlI,IAAAA,CAAAA,MAAAkI,kBAAAA;AAAAlI,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAA7CE,EAAAA;AAA6C;AAGtD,SAAAqI,gBAAAA,GAAA;AAAA,EAAA,MAAAvI,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACE,EAAA,MAAAiI,qBAA2BM,wBAAAA,EAAyB;AAAE,EAAA,IAAAtI,EAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAkI,kBAAAA,EAAA;AAC/ChI,IAAAA,EAAAA,mBAAA,GAAA,CAACkI,aAAA,EAAA,EAAiB,GAAKF,oBAAkB,CAAA;AAAIlI,IAAAA,CAAAA,MAAAkI,kBAAAA;AAAAlI,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAA7CE,EAAAA;AAA6C;AAGtD,SAAAuI,UAAAA,GAAA;AAAA,EAAA,MAAAzI,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAEE,EAAA,MAAAuG,YAAkBC,uBAAAA,EAAwB;AAAE,EAAA,IAAAvG,EAAAA;AAAA,EAAA,IAAAF,SAAAwG,UAAAE,SAAAA,IAAA1G,CAAAA,CAAA,CAAA,CAAA,KAAAwG,SAAAA,CAAAG,SAAA3G,CAAAA,CAAA,CAAA,MAAAwG,SAAAA,CAAAI,SAAAA,IAAA5G,EAAA,CAAA,CAAA,KAAAwG,UAAAK,eAAAA,EAAA;AAEO3G,IAAAA,EAAAA,GAAA;AAAA,MAAA4G,UACvCN,SAAAA,CAASK,eAAAA;AAAAA,MAAgBE,gBACnBP,SAAAA,CAASI,SAAAA;AAAAA,MAAUI,gBACnBR,SAAAA,CAASE,SAAAA;AAAAA,MAAUC,OAC5BH,SAAAA,CAASG;AAAAA,KAClB;AAAC3G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAE,SAAAA;AAAA1G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAG,KAAAA;AAAA3G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAI,SAAAA;AAAA5G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAK,eAAAA;AAAA7G,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AALD,EAAA,MAAAiH,mBAAAA,GAA4BC,uBAAuBhH,EAKlD,CAAA;AAAE,EAAA,IAAAS,EAAAA;AAAA,EAAA,IAAAX,CAAAA,CAAA,CAAA,CAAA,KAAAwG,SAAAA,CAAAgB,KAAAA,IAAAxH,EAAA,CAAA,CAAA,KAAAwG,SAAAA,CAAAE,SAAAA,IAAA1G,CAAAA,CAAA,CAAA,MAAAwG,SAAAA,CAAAG,KAAAA,IAAA3G,CAAAA,CAAA,CAAA,CAAA,KAAAwG,SAAAA,CAAAI,aAAA5G,CAAAA,CAAA,CAAA,CAAA,KAAAwG,SAAAA,CAAAiB,aAAAA,EAAA;AAC4C9G,IAAAA,EAAAA,GAAA;AAAA,MAAAmG,UACnCN,SAAAA,CAASiB,aAAAA;AAAAA,MAAcT,gBACjBR,SAAAA,CAASE,SAAAA;AAAAA,MAAUE,WACxBJ,SAAAA,CAASI,SAAAA;AAAAA,MAAUD,OACvBH,SAAAA,CAASG,KAAAA;AAAAA,MAAMe,YACVlB,SAAAA,CAASgB;AAAAA,KACvB;AAACxH,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAgB,KAAAA;AAAAxH,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAE,SAAAA;AAAA1G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAG,KAAAA;AAAA3G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAI,SAAAA;AAAA5G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAiB,aAAAA;AAAAzH,IAAAA,CAAAA,OAAAW,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,EAAA,CAAA;AAAA,EAAA;AAND,EAAA,MAAA2H,iBAAAA,GAA0BC,qBAAqBjH,EAM9C,CAAA;AAAE,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAZ,CAAAA,CAAA,EAAA,CAAA,KAAAwG,SAAAA,CAAAkC,IAAAA,IAAA1I,EAAA,EAAA,CAAA,KAAAiH,mBAAAA,CAAA0B,MAAAA,IAAA3I,CAAAA,CAAA,EAAA,MAAAiH,mBAAAA,CAAA2B,KAAAA,IAAA5I,CAAAA,CAAA,EAAA,CAAA,KAAA2H,iBAAAA,CAAAgB,UAAA3I,CAAAA,CAAA,EAAA,CAAA,KAAA2H,iBAAAA,CAAAiB,KAAAA,EAAA;AAGDhI,IAAAA,EAAAA,GAAAqG,mBAAAA,CAAmB2B,KAAAA,IAAUjB,iBAAAA,CAAiBiB,KAAAA,GAA9C;AAAA,MAAAC,WAEiB5B,mBAAAA,CAAmB2B,KAAAA;AAAAA,MAAME,SAC3BnB,iBAAAA,CAAiBiB,KAAAA;AAAAA,MAAMG,YACpB9B,mBAAAA,CAAmB0B,MAAAA;AAAAA,MAAOK,UAC5BrB,iBAAAA,CAAiBgB,MAAAA;AAAAA,MAAOM,UACxBzC,SAAAA,CAASkC;AAAAA,KAEb,GARZQ,MAAAA;AAQalJ,IAAAA,CAAAA,CAAA,EAAA,IAAAwG,SAAAA,CAAAkC,IAAAA;AAAA1I,IAAAA,CAAAA,CAAA,EAAA,IAAAiH,mBAAAA,CAAA0B,MAAAA;AAAA3I,IAAAA,CAAAA,CAAA,EAAA,IAAAiH,mBAAAA,CAAA2B,KAAAA;AAAA5I,IAAAA,CAAAA,CAAA,EAAA,IAAA2H,iBAAAA,CAAAgB,MAAAA;AAAA3I,IAAAA,CAAAA,CAAA,EAAA,IAAA2H,iBAAAA,CAAAiB,KAAAA;AAAA5I,IAAAA,CAAAA,OAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,EAAA,CAAA;AAAA,EAAA;AATf,EAAA,MAAAmJ,UAAAA,GACEvI,EAAAA;AAUF,EAAA,MAAAwI,eAAqBC,eAAAA,EAAgB;AAAE,EAAA,IAAAxI,EAAAA;AAAA,EAAA,IAAAb,CAAAA,CAAA,EAAA,CAAA,KAAAiH,mBAAAA,CAAA2B,SAAA5I,CAAAA,CAAA,EAAA,CAAA,KAAA2H,iBAAAA,CAAAiB,KAAAA,EAAA;AAEM/H,IAAAA,EAAAA,GAAA;AAAA,MAAAyI,WAChCrC,mBAAAA,CAAmB2B,KAAAA;AAAAA,MAAMW,SAC3B5B,iBAAAA,CAAiBiB;AAAAA,KAC5B;AAAC5I,IAAAA,CAAAA,CAAA,EAAA,IAAAiH,mBAAAA,CAAA2B,KAAAA;AAAA5I,IAAAA,CAAAA,CAAA,EAAA,IAAA2H,iBAAAA,CAAAiB,KAAAA;AAAA5I,IAAAA,CAAAA,OAAAa,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAb,EAAA,EAAA,CAAA;AAAA,EAAA;AAHD,EAAA,MAAAwJ,UAAAA,GAAmBC,0BAA0B5I,EAG5C,CAAA;AAMK,EAAA,MAAAqC,EAAAA,GAAAsD,SAAAA,CAASI,SAAAA,KAAe,QAAA,GAAWJ,UAASG,KAAAA,GAA5CuC,MAAAA;AAEU,EAAA,MAAA/F,EAAAA,GAAAqD,SAAAA,CAASI,SAAAA,KAAe,OAAA,GAAUJ,UAASG,KAAAA,GAA3CuC,MAAAA;AAA6D,EAAA,IAAA7F,EAAAA;AAAA,EAAA,IAAArD,CAAAA,CAAA,EAAA,CAAA,KAAAwJ,UAAAA,CAAAE,aAAA1J,CAAAA,CAAA,EAAA,CAAA,KAAAwJ,UAAAA,CAAAG,YAAA3J,CAAAA,SAAAwJ,UAAAA,CAAAI,iBAAA5J,CAAAA,CAAA,EAAA,CAAA,KAAAmJ,UAAAA,IAAAnJ,EAAA,EAAA,CAAA,KAAAwG,SAAAA,CAAAI,SAAAA,IAAA5G,EAAA,EAAA,CAAA,KAAAkD,EAAAA,IAAAlD,CAAAA,CAAA,EAAA,CAAA,KAAAmD,EAAAA,IAAAnD,CAAAA,SAAAoJ,YAAAA,EAAA;AAL3E/F,IAAAA,EAAAA,uBAAC,sBAAA,EACa8F,UAAAA,EAEV,aAAAjG,EAAAA,EAEU,UAAA,EAAAC,IACD,SAAA,EAAAqD,SAAAA,CAASI,WACNwC,YAAAA,EACJ,QAAA,EAAAI,WAAUG,QAAAA,EACL,aAAA,EAAAH,WAAUI,aAAAA,EACd,SAAA,EAAAJ,UAAAA,CAAUE,SAAAA,EAAU,CAAA;AAC/B1J,IAAAA,CAAAA,CAAA,EAAA,IAAAwJ,UAAAA,CAAAE,SAAAA;AAAA1J,IAAAA,CAAAA,CAAA,EAAA,IAAAwJ,UAAAA,CAAAG,QAAAA;AAAA3J,IAAAA,CAAAA,CAAA,EAAA,IAAAwJ,UAAAA,CAAAI,aAAAA;AAAA5J,IAAAA,CAAAA,OAAAmJ,UAAAA;AAAAnJ,IAAAA,CAAAA,CAAA,EAAA,IAAAwG,SAAAA,CAAAI,SAAAA;AAAA5G,IAAAA,CAAAA,OAAAkD,EAAAA;AAAAlD,IAAAA,CAAAA,OAAAmD,EAAAA;AAAAnD,IAAAA,CAAAA,OAAAoJ,YAAAA;AAAApJ,IAAAA,CAAAA,OAAAqD,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAArD,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAXFqD,EAAAA;AAWE;AAIN,SAAAwG,WAAAA,GAAA;AAAA,EAAA,MAAA7J,CAAAA,GAAAC,cAAA,EAAA,CAAA;AACE,EAAA,MAAAuG,YAAkBC,uBAAAA,EAAwB;AAAE,EAAA,IAAAvG,EAAAA;AAAA,EAAA,IAAAF,SAAAwG,UAAAE,SAAAA,IAAA1G,CAAAA,CAAA,CAAA,CAAA,KAAAwG,SAAAA,CAAAG,SAAA3G,CAAAA,CAAA,CAAA,MAAAwG,SAAAA,CAAAI,SAAAA,IAAA5G,EAAA,CAAA,CAAA,KAAAwG,UAAAK,eAAAA,EAAA;AAEO3G,IAAAA,EAAAA,GAAA;AAAA,MAAA4G,UACvCN,SAAAA,CAASK,eAAAA;AAAAA,MAAgBE,gBACnBP,SAAAA,CAASI,SAAAA;AAAAA,MAAUI,gBACnBR,SAAAA,CAASE,SAAAA;AAAAA,MAAUC,OAC5BH,SAAAA,CAASG;AAAAA,KAClB;AAAC3G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAE,SAAAA;AAAA1G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAG,KAAAA;AAAA3G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAI,SAAAA;AAAA5G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAK,eAAAA;AAAA7G,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AALD,EAAA,MAAAiH,mBAAAA,GAA4BC,uBAAuBhH,EAKlD,CAAA;AAAE,EAAA,IAAAS,EAAAA;AAAA,EAAA,IAAAX,CAAAA,CAAA,CAAA,CAAA,KAAAwG,SAAAA,CAAAgB,KAAAA,IAAAxH,EAAA,CAAA,CAAA,KAAAwG,SAAAA,CAAAE,SAAAA,IAAA1G,CAAAA,CAAA,CAAA,MAAAwG,SAAAA,CAAAG,KAAAA,IAAA3G,CAAAA,CAAA,CAAA,CAAA,KAAAwG,SAAAA,CAAAI,aAAA5G,CAAAA,CAAA,CAAA,CAAA,KAAAwG,SAAAA,CAAAiB,aAAAA,EAAA;AAC4C9G,IAAAA,EAAAA,GAAA;AAAA,MAAAmG,UACnCN,SAAAA,CAASiB,aAAAA;AAAAA,MAAcT,gBACjBR,SAAAA,CAASE,SAAAA;AAAAA,MAAUE,WACxBJ,SAAAA,CAASI,SAAAA;AAAAA,MAAUD,OACvBH,SAAAA,CAASG,KAAAA;AAAAA,MAAMe,YACVlB,SAAAA,CAASgB;AAAAA,KACvB;AAACxH,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAgB,KAAAA;AAAAxH,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAE,SAAAA;AAAA1G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAG,KAAAA;AAAA3G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAI,SAAAA;AAAA5G,IAAAA,CAAAA,CAAA,CAAA,IAAAwG,SAAAA,CAAAiB,aAAAA;AAAAzH,IAAAA,CAAAA,OAAAW,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,EAAA,CAAA;AAAA,EAAA;AAND,EAAA,MAAA2H,iBAAAA,GAA0BC,qBAAqBjH,EAM9C,CAAA;AAED,EAAA,MAAAmJ,gBAAAA,GAAyBC,MAAAA,CAAO9C,mBAAAA,CAAmB0B,MAAO,CAAA,GAAI,CAAA;AAC9D,EAAA,MAAAqB,iBAAAA,GAA0BF,oBAAoBnC,iBAAAA,CAAiBiB,KAAAA;AAAO,EAAA,IAAAhI,EAAAA;AAAA,EAAA,IAAAZ,CAAAA,SAAAgK,iBAAAA,EAAA;AAE/DpJ,IAAAA,EAAAA,GAAAoJ,iBAAAA,mBAAoB,GAAA,CAAC,qBAAA,EAAA,EAAqB,CAAA,GAA1C,IAAA;AAAoDhK,IAAAA,CAAAA,OAAAgK,iBAAAA;AAAAhK,IAAAA,CAAAA,OAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAApDY,EAAAA;AAAoD;AAG7D,SAAAqJ,mBAAAA,GAAA;AAAA,EAAA,MAAAjK,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACE,EAAA,MAAA;AAAA,IAAAiK;AAAAA,MAAwBC,UAAAA,EAAW;AACnC,EAAA,MAAAC,yBAAAA,GAAkCF,WAAAA;AAClC,EAAA,MAAAG,2BAAiCC,sBAAAA,EAAuB;AAAE,EAAA,IAAApK,EAAAA;AAAA,EAAA,IAAAF,EAAA,CAAA,CAAA,KAAAoK,6BAAApK,CAAAA,QAAAqK,wBAAAA,EAAA;AAEnDnK,IAAAA,EAAAA,GAAAkK,yBAAAA,mBACL,GAAA,CAAC,eAAA,EAAA,EACU,OAAA,EAAA;AAAA,MAAA9D,IAAAA,EAAQ;AAAA,OACZ,IAAA,EAAA,MAAA,KACD+D,wBAAAA,EAAwB,CAAA,GAJzB,IAAA;AAMCrK,IAAAA,CAAAA,MAAAoK,yBAAAA;AAAApK,IAAAA,CAAAA,MAAAqK,wBAAAA;AAAArK,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OANDE,EAAAA;AAMC;AAGV,SAAAqK,kBAAAA,GAAA;AAAA,EAAA,MAAAvK,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACE,EAAA,MAAAO,mBAAyBQ,sBAAAA,EAAuB;AAChD,EAAA,MAAAwJ,0BAAgCC,qBAAAA,EAAsB;AAAE,EAAA,IAAAvK,EAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAQ,gBAAAA,EAAA;AAK5CN,IAAAA,EAAAA,GAAAQ,GAAG,MAAA,EAAQ;AAAA,MAAA,qBAAA,EACQF;AAAAA,KACxB,CAAA;AAACR,IAAAA,CAAAA,MAAAQ,gBAAAA;AAAAR,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAW,EAAAA;AAAA,EAAA,IAAAX,CAAAA,QAAAE,EAAAA,EAAA;AAHKS,IAAAA,EAAAA,GAAA;AAAA,MAAA2F,IAAAA,EACDpG;AAAAA,KAGR;AAACF,IAAAA,CAAAA,MAAAE,EAAAA;AAAAF,IAAAA,CAAAA,MAAAW,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAZ,EAAA,CAAA,CAAA,KAAAwK,2BAAAxK,CAAAA,QAAAW,EAAAA,EAAA;AALHC,IAAAA,EAAAA,uBAAC,iBAAA,EACU,OAAA,EAAAD,IAKJ,IAAA,EAAA,KAAA,EAAK,GACN6J,uBAAAA,EAAuB,CAAA;AAC3BxK,IAAAA,CAAAA,MAAAwK,uBAAAA;AAAAxK,IAAAA,CAAAA,MAAAW,EAAAA;AAAAX,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OARFY,EAAAA;AAQE;AAIN,SAAA8J,oBAAAA,GAAA;AAAA,EAAA,MAAA1K,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACE,EAAA,MAAAO,mBAAyBC,wBAAAA,EAAyB;AAClD,EAAA,MAAAkK,4BAAkCC,uBAAAA,EAAwB;AAAE,EAAA,IAAA1K,EAAAA;AAAA,EAAA,IAAAF,CAAAA,QAAAQ,gBAAAA,EAAA;AAKhDN,IAAAA,EAAAA,GAAAQ,GAAG,MAAA,EAAQ;AAAA,MAAA,qBAAA,EACQF;AAAAA,KACxB,CAAA;AAACR,IAAAA,CAAAA,MAAAQ,gBAAAA;AAAAR,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAW,EAAAA;AAAA,EAAA,IAAAX,CAAAA,QAAAE,EAAAA,EAAA;AAHKS,IAAAA,EAAAA,GAAA;AAAA,MAAA2F,IAAAA,EACDpG;AAAAA,KAGR;AAACF,IAAAA,CAAAA,MAAAE,EAAAA;AAAAF,IAAAA,CAAAA,MAAAW,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAZ,EAAA,CAAA,CAAA,KAAA2K,6BAAA3K,CAAAA,QAAAW,EAAAA,EAAA;AALHC,IAAAA,EAAAA,uBAAC,iBAAA,EACU,OAAA,EAAAD,IAKJ,IAAA,EAAA,OAAA,EAAO,GACRgK,yBAAAA,EAAyB,CAAA;AAC7B3K,IAAAA,CAAAA,MAAA2K,yBAAAA;AAAA3K,IAAAA,CAAAA,MAAAW,EAAAA;AAAAX,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OARFY,EAAAA;AAQE;AAIN,MAAMiK,uBAAAA,GAA0B;AAAA,EAC9BvE,IAAAA,EAAM;AACR,CAAA;AAEA,SAAAwE,gBAAAA,GAAA;AAAA,EAAA,MAAA9K,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAA,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAF,EAAA,CAAA,CAAA,KAAAG,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AACqDF,IAAAA,EAAAA,GAAA;AAAA,MAAA6K,OAAAA,EAAW;AAAA,KAAM;AAAC/K,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAArE,EAAA,MAAA;AAAA,IAAAgL,KAAAA;AAAAA,IAAAC,MAAAA;AAAAA,IAAArE;AAAAA,GAAA,GAAqCsE,cAAchL,EAAkB,CAAA;AAIrE,EAAA,IAAI8K,KAAAA,CAAKG,SAAAA,IAAcF,MAAAA,CAAME,SAAAA,EAAU;AAAA,IAAA,IAAAxK,EAAAA;AAAA,IAAA,IAAAX,CAAAA,QAAA4G,SAAAA,EAAA;AAEnCjG,MAAAA,EAAAA,uBAAC,0BAAA,EAAA,EACUkK,SAAAA,uBAAAA,EACajE,oBAAAA,EAAAA,WAAS,CAAA;AAC/B5G,MAAAA,CAAAA,MAAA4G,SAAAA;AAAA5G,MAAAA,CAAAA,MAAAW,EAAAA;AAAAA,IAAA,CAAA,MAAA;AAAAA,MAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA,IAAA;AAAA,IAAA,OAHFW,EAAAA;AAAAA,EAGE;AAIN,EAAA,IAAIqK,MAAKG,SAAAA,IAAcH,KAAAA,CAAKrE,SAAUyE,aAAAA,CAAcJ,KAAAA,CAAKrE,KAAM,CAAA,EAAC;AAAA,IAAA,IAAAhG,EAAAA;AAAA,IAAA,IAAAX,CAAAA,CAAA,CAAA,CAAA,KAAAgL,KAAAA,CAAArE,KAAAA,EAAA;AAE5DhG,MAAAA,EAAAA,uBAAC,aAAA,EAAA,EAAwB,QAAA,EAAA,IAAA,EACvB,0BAAA,GAAA,CAAC,wBAAA,EAAA,EACUkK,OAAAA,2BACI,WAAA,EAAAG,KAAAA,CAAKrE,KAAAA,EAAM,GAE5B,CAAA;AAAgB3G,MAAAA,CAAAA,CAAA,CAAA,IAAAgL,KAAAA,CAAArE,KAAAA;AAAA3G,MAAAA,CAAAA,MAAAW,EAAAA;AAAAA,IAAA,CAAA,MAAA;AAAAA,MAAAA,EAAAA,GAAAX,EAAA,CAAA,CAAA;AAAA,IAAA;AAAA,IAAA,OALhBW,EAAAA;AAAAA,EAKgB;AAEnB;AAaH,SAAA0K,qBAAAnL,EAAAA,EAAA;AAAA,EAAA,MAAAF,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAA,EAAA,IAAAqL,WAAAA;AAAA,EAAA,IAAAC,UAAAA;AAAA,EAAA,IAAAC,eAAAA;AAAA,EAAA,IAAA5B,aAAAA;AAAA,EAAA,IAAA6B,WAAAA;AAAA,EAAA,IAAAtC,UAAAA;AAAA,EAAA,IAAAvC,SAAAA;AAAA,EAAA,IAAAwC,YAAAA;AAAA,EAAA,IAAApJ,CAAAA,QAAAE,EAAAA,EAAA;AAA8B,IAAA,CAAA;AAAA,MAAAiJ,UAAAA;AAAAA,MAAAqC,eAAAA;AAAAA,MAAAC,WAAAA;AAAAA,MAAAF,UAAAA;AAAAA,MAAA3E,SAAAA;AAAAA,MAAAwC,YAAAA;AAAAA,MAAAQ,aAAAA;AAAAA,MAAA,GAAA0B;AAAAA,KAAA,GAAApL,EAAAA;AASNF,IAAAA,CAAAA,MAAAE,EAAAA;AAAAF,IAAAA,CAAAA,MAAAsL,WAAAA;AAAAtL,IAAAA,CAAAA,MAAAuL,UAAAA;AAAAvL,IAAAA,CAAAA,MAAAwL,eAAAA;AAAAxL,IAAAA,CAAAA,MAAA4J,aAAAA;AAAA5J,IAAAA,CAAAA,MAAAyL,WAAAA;AAAAzL,IAAAA,CAAAA,MAAAmJ,UAAAA;AAAAnJ,IAAAA,CAAAA,MAAA4G,SAAAA;AAAA5G,IAAAA,CAAAA,MAAAoJ,YAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAkC,IAAAA,WAAAA,GAAAtL,EAAA,CAAA,CAAA;AAAAuL,IAAAA,UAAAA,GAAAvL,EAAA,CAAA,CAAA;AAAAwL,IAAAA,eAAAA,GAAAxL,EAAA,CAAA,CAAA;AAAA4J,IAAAA,aAAAA,GAAA5J,EAAA,CAAA,CAAA;AAAAyL,IAAAA,WAAAA,GAAAzL,EAAA,CAAA,CAAA;AAAAmJ,IAAAA,UAAAA,GAAAnJ,EAAA,CAAA,CAAA;AAAA4G,IAAAA,SAAAA,GAAA5G,EAAA,CAAA,CAAA;AAAAoJ,IAAAA,YAAAA,GAAApJ,EAAA,CAAA,CAAA;AAAA,EAAA;AACtB,EAAA,MAAA;AAAA,IAAAkK;AAAAA,MAAwBC,UAAAA,EAAW;AAEnC,EAAA,IAAI,CAACD,WAAAA,EAAW;AAAA,IAAA,IAAAvJ,GAAAA;AAAA,IAAA,IAAAX,EAAA,CAAA,CAAA,KAAAsL,eAAAtL,CAAAA,SAAAwL,eAAAA,EAAA;AAEZ7K,MAAAA,GAAAA,uBAAC,yBAAA,EAAA,EACkB6K,eAAAA,EAAe,GAC5BF,aAAW,CAAA;AACftL,MAAAA,CAAAA,MAAAsL,WAAAA;AAAAtL,MAAAA,CAAAA,OAAAwL,eAAAA;AAAAxL,MAAAA,CAAAA,OAAAW,GAAAA;AAAAA,IAAA,CAAA,MAAA;AAAAA,MAAAA,GAAAA,GAAAX,EAAA,EAAA,CAAA;AAAA,IAAA;AAAA,IAAA,OAHFW,GAAAA;AAAAA,EAGE;AAGN,EAAA,IAAIyI,aAAYsC,UAAAA,EAAW;AAAA,IAAA,IAAA/K,GAAAA;AAAA,IAAA,IAAAX,CAAAA,CAAA,EAAA,CAAA,KAAAsL,WAAAA,IAAAtL,EAAA,EAAA,CAAA,KAAAwL,eAAAA,IAAAxL,CAAAA,CAAA,EAAA,CAAA,KAAA4J,aAAAA,IAAA5J,CAAAA,SAAAoJ,YAAAA,EAAA;AAEvBzI,MAAAA,GAAAA,uBAAC,qBAAA,EACkB6K,eAAAA,EACHpC,cACCQ,aAAAA,EAAa,GACxB0B,aAAW,CAAA;AACftL,MAAAA,CAAAA,OAAAsL,WAAAA;AAAAtL,MAAAA,CAAAA,OAAAwL,eAAAA;AAAAxL,MAAAA,CAAAA,OAAA4J,aAAAA;AAAA5J,MAAAA,CAAAA,OAAAoJ,YAAAA;AAAApJ,MAAAA,CAAAA,OAAAW,GAAAA;AAAAA,IAAA,CAAA,MAAA;AAAAA,MAAAA,GAAAA,GAAAX,EAAA,EAAA,CAAA;AAAA,IAAA;AAAA,IAAA,OALFW,GAAAA;AAAAA,EAKE;AACF,EAAA,IAAAA,EAAAA;AAAA,EAAA,IAAAX,CAAAA,CAAA,EAAA,CAAA,KAAAuL,UAAAA,IAAAvL,CAAAA,SAAAyL,WAAAA,IAAAzL,CAAAA,CAAA,EAAA,CAAA,KAAA4G,SAAAA,EAAA;AAGFjG,IAAAA,EAAAA,GAAAiG,cAAc,OAAA,GAAd;AAAA,MAAAD,KAAAA,EACa4E,UAAAA;AAAAA,MAAU3E;AAAAA,KACa,GAFpC;AAAA,MAAAD,KAAAA,EAEa8E,WAAAA;AAAAA,MAAW7E;AAAAA,KAAY;AAAC5G,IAAAA,CAAAA,OAAAuL,UAAAA;AAAAvL,IAAAA,CAAAA,OAAAyL,WAAAA;AAAAzL,IAAAA,CAAAA,OAAA4G,SAAAA;AAAA5G,IAAAA,CAAAA,OAAAW,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAX,EAAA,EAAA,CAAA;AAAA,EAAA;AAHvC,EAAA,MAAA2L,UAAAA,GACEhL,EAAAA;AAEsC,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAZ,CAAAA,CAAA,EAAA,CAAA,KAAAsL,WAAAA,IAAAtL,EAAA,EAAA,CAAA,KAAA4J,aAAAA,IAAA5J,CAAAA,CAAA,EAAA,CAAA,KAAAmJ,UAAAA,IAAAnJ,CAAAA,SAAA2L,UAAAA,EAAA;AAGtC/K,IAAAA,EAAAA,uBAAC,2BAAA,EACauI,UAAAA,EACGS,eAAa,GACxB+B,UAAAA,EAAU,GACVL,WAAAA,EAAW,CAAA;AACftL,IAAAA,CAAAA,OAAAsL,WAAAA;AAAAtL,IAAAA,CAAAA,OAAA4J,aAAAA;AAAA5J,IAAAA,CAAAA,OAAAmJ,UAAAA;AAAAnJ,IAAAA,CAAAA,OAAA2L,UAAAA;AAAA3L,IAAAA,CAAAA,OAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OALFY,EAAAA;AAKE;;;;"}
@@ -1,4 +1,4 @@
1
1
  import { TokenInputProps } from '../../../components/widget/TokenInput/types';
2
2
  export type TokenInputAmountProps = Pick<TokenInputProps, "amount" | "onAmountChange" | "token" | "readOnly" | "usdEstimation" | "tokenBalanceUnit">;
3
- export type TokenInputExtraProps = Pick<TokenInputProps, "networkSwitcherProps" | "tokenType" | "onFocus" | "label" | "isLoading" | "warningMessage" | "disabled">;
3
+ export type TokenInputExtraProps = Pick<TokenInputProps, "networkSwitcherProps" | "tokenType" | "onFocus" | "label" | "isLoading" | "warningMessage" | "disabled" | "bottomElement">;
4
4
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/hooks/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAE5E,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACtC,eAAe,EACb,QAAQ,GACR,gBAAgB,GAChB,OAAO,GACP,UAAU,GACV,eAAe,GACf,kBAAkB,CACrB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACrC,eAAe,EACb,sBAAsB,GACtB,WAAW,GACX,SAAS,GACT,OAAO,GACP,WAAW,GACX,gBAAgB,GAChB,UAAU,CACb,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/hooks/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAE5E,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACtC,eAAe,EACb,QAAQ,GACR,gBAAgB,GAChB,OAAO,GACP,UAAU,GACV,eAAe,GACf,kBAAkB,CACrB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACrC,eAAe,EACb,sBAAsB,GACtB,WAAW,GACX,SAAS,GACT,OAAO,GACP,WAAW,GACX,gBAAgB,GAChB,UAAU,GACV,eAAe,CAClB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenToInputProps.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/hooks/useTokenToInputProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAgB5E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAoBpE,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,CAAC,EAAE;QACT,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC9B,UAAU,EAAE,KAAK,GAAG,IAAI,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AA4LF,eAAO,MAAM,oBAAoB,GAAI,6DAMlC,oBAAoB,KAAG,eA6BzB,CAAC"}
1
+ {"version":3,"file":"useTokenToInputProps.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/hooks/useTokenToInputProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAgB5E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAqBpE,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,CAAC,EAAE;QACT,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC9B,UAAU,EAAE,KAAK,GAAG,IAAI,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAiMF,eAAO,MAAM,oBAAoB,GAAI,6DAMlC,oBAAoB,KAAG,eA6BzB,CAAC"}
@@ -21,6 +21,7 @@ import { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from '../../../lib/constants/time.
21
21
  import { selectSwapTokenToAtom } from '../state/selectedTokenActionsAtom.js';
22
22
  import { isTruthy } from '../../../lib/utils/index.js';
23
23
  import { isDeltaPrice } from '../../../hooks/swap/prices/delta/queries/useDeltaPriceQuery.js';
24
+ import { FetchingQuotes } from '../../../components/widget/FetchingQuotes/FetchingQuotes.js';
24
25
 
25
26
  const useTokenToAmountProps = (t0) => {
26
27
  const $ = distExports.c(13);
@@ -211,7 +212,7 @@ const useWarningMessage = (t0) => {
211
212
  return warningMessage;
212
213
  };
213
214
  const useExtraProps = (t0) => {
214
- const $ = distExports.c(21);
215
+ const $ = distExports.c(24);
215
216
  const {
216
217
  isPriceLoading,
217
218
  acrossMode
@@ -256,6 +257,8 @@ const useExtraProps = (t0) => {
256
257
  const side = useSwapSide();
257
258
  const isSell = side === "SELL";
258
259
  const isLoading = isPriceLoading && isSell;
260
+ const isCrosschain = useIsCrossChain();
261
+ const showFetchingQuotes = isCrosschain && isPriceLoading;
259
262
  let t3;
260
263
  if ($[8] !== setCurrentInput) {
261
264
  t3 = () => setCurrentInput("to");
@@ -293,25 +296,35 @@ const useExtraProps = (t0) => {
293
296
  }
294
297
  const t7 = selectableChains.length === 0;
295
298
  let t8;
296
- if ($[15] !== isLoading || $[16] !== networkSwitcherProps || $[17] !== t3 || $[18] !== t6 || $[19] !== t7) {
297
- t8 = {
299
+ if ($[15] !== showFetchingQuotes) {
300
+ t8 = showFetchingQuotes ? /* @__PURE__ */ jsx(FetchingQuotes, {}) : void 0;
301
+ $[15] = showFetchingQuotes;
302
+ $[16] = t8;
303
+ } else {
304
+ t8 = $[16];
305
+ }
306
+ let t9;
307
+ if ($[17] !== isLoading || $[18] !== networkSwitcherProps || $[19] !== t3 || $[20] !== t6 || $[21] !== t7 || $[22] !== t8) {
308
+ t9 = {
298
309
  networkSwitcherProps,
299
310
  tokenType: "to",
300
311
  onFocus: t3,
301
312
  label: t6,
302
313
  isLoading,
303
- disabled: t7
314
+ disabled: t7,
315
+ bottomElement: t8
304
316
  };
305
- $[15] = isLoading;
306
- $[16] = networkSwitcherProps;
307
- $[17] = t3;
308
- $[18] = t6;
309
- $[19] = t7;
310
- $[20] = t8;
317
+ $[17] = isLoading;
318
+ $[18] = networkSwitcherProps;
319
+ $[19] = t3;
320
+ $[20] = t6;
321
+ $[21] = t7;
322
+ $[22] = t8;
323
+ $[23] = t9;
311
324
  } else {
312
- t8 = $[20];
325
+ t9 = $[23];
313
326
  }
314
- return t8;
327
+ return t9;
315
328
  };
316
329
  const useTokenToInputProps = (t0) => {
317
330
  const $ = distExports.c(24);
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenToInputProps.js","sources":["../../../../src/core/inputs/hooks/useTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\n\nimport { useSwapTokenFrom, useSwapTokenTo } from \"../state/selectedTokenAtom\";\n\nimport { swapChainToAtom } from \"@/core/state/chainToAtom\";\nimport { useAtom, useAtomValue, useSetAtom } from \"@/core/store\";\n\nimport { useSelectableDestChains } from \"@/hooks/useSelectableDestChains\";\nimport { useChainId } from \"wagmi\";\nimport { receiveInputAmountAtom } from \"../state/inputAmountAtom\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { formatUnits } from \"viem\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { useIsCrossChain } from \"@/core/state/isCrosschainAtom\";\nimport { getDestAmountAfterFee } from \"@/lib/utils/price\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport { calculateFeeUSD } from \"@/lib/utils/fee\";\nimport {\n replaceUnsupportedTokenMessage,\n isUnsupportedTokenError,\n parseDeltaApiError,\n customUnsupportedTokenMessage,\n} from \"@/lib/utils/delta\";\nimport { useIsCrosschainPossible } from \"@/hooks/useIsCrosschainPossible\";\nimport type { TokenInputAmountProps, TokenInputExtraProps } from \"./types\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useLogger } from \"@/core/logger\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { selectSwapTokenToAtom } from \"../state/selectedTokenActionsAtom\";\nimport { isTruthy } from \"@/lib/utils\";\nimport { isDeltaPrice } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { BridgeInfoMode } from \"@/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo\";\n\ntype UseTokenToInputInput = {\n override?: {\n amountWei?: string;\n };\n price?: DeltaOrMarketPrice;\n priceMode: \"market\" | \"delta\";\n priceError: Error | null;\n isPriceLoading?: boolean;\n};\n\nconst useTokenToAmountProps = ({\n price,\n}: { price?: DeltaOrMarketPrice } = {}): TokenInputAmountProps => {\n const logger = useLogger(\"Swap::TokenTo::AmountProps\");\n const tokenTo = useSwapTokenTo();\n\n const [amountValue, setAmountValue] = useAtom(receiveInputAmountAtom);\n\n const tokenBalanceUnit = useTokenToBalanceUnit();\n\n const usdEstimation =\n price && isDeltaPrice(price)\n ? // receivedDestUSDBeforeFee is available for SELL side\n price.receivedDestUSDBeforeFee || price.receivedDestUSD\n : price?.destUSD;\n\n return {\n usdEstimation,\n amount: amountValue,\n tokenBalanceUnit,\n token: tokenTo,\n onAmountChange: (values) => {\n logger.log(\"onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\nconst useTokenToBalanceUnit = () => {\n const tokenTo = useSwapTokenTo();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenTo,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useYouGetProps = ({\n priceMode,\n price,\n token,\n}: {\n priceMode: \"market\" | \"delta\";\n price?: DeltaOrMarketPrice;\n token?: Token;\n}) => {\n const side = useSwapSide();\n const isSell = side === \"SELL\";\n\n const destUSD =\n price && isDeltaPrice(price) ? price.receivedDestUSD : price?.destUSD;\n\n const youGetProps =\n // filling for SELL side\n // forBUY side youGetAmount= exactly destAmount\n isSell &&\n // price is available\n price &&\n // tokenTo is available\n token &&\n // either priceMode is delta or market with non-zero partner fee\n (priceMode === \"delta\" || (priceMode === \"market\" && price.partnerFee > 0))\n ? {\n // YouGet section should show amount after fee without slippage included\n amountWei: getDestAmountAfterFee(price),\n swapFeesUSD: destUSD\n ? calculateFeeUSD(price.partnerFee, destUSD).toString()\n : undefined,\n networkCostUSD: price.gasCostUSD,\n token,\n priceMode,\n }\n : undefined;\n\n return youGetProps;\n};\n\nconst useWarningMessage = ({\n priceError,\n priceMode,\n mode,\n}: {\n priceMode?: \"market\" | \"delta\";\n priceError?: Error | null;\n mode: BridgeInfoMode;\n}) => {\n const chainId = useChainId();\n const chainTo = useAtomValue(swapChainToAtom);\n const tokenFrom = useSwapTokenFrom();\n const tokenTo = useSwapTokenTo();\n\n const {\n isCrosschainPossible,\n isLoading: isLoadingCrosschainAvailability,\n hasTokens,\n tokenSupported,\n } = useIsCrosschainPossible({\n fromChainId: chainId,\n toChainId: chainTo,\n tokenAddress: tokenFrom.address,\n mode,\n });\n\n const isCrosschain = useIsCrossChain();\n\n const deltaPriceError = priceError && parseDeltaApiError(priceError);\n\n const deltaErrorToShow = deltaPriceError\n ? isUnsupportedTokenError(deltaPriceError)\n ? replaceUnsupportedTokenMessage(\n deltaPriceError.description,\n [tokenFrom, tokenTo].filter(isTruthy)\n )\n : deltaPriceError?.description\n : null;\n\n const crosschainDeltaWarning =\n !isLoadingCrosschainAvailability && !isCrosschainPossible && isCrosschain\n ? tokenSupported === false\n ? customUnsupportedTokenMessage(tokenFrom)\n : hasTokens === false\n ? \"Chain selection isn't supported for Crosschain Swap\"\n : undefined\n : undefined;\n\n const warningMessage =\n priceMode === \"delta\"\n ? deltaErrorToShow || crosschainDeltaWarning\n : undefined;\n\n return warningMessage;\n};\n\nconst useExtraProps = ({\n isPriceLoading,\n acrossMode,\n}: {\n isPriceLoading?: boolean;\n acrossMode: BridgeInfoMode;\n}): TokenInputExtraProps => {\n const appChainId = useChainId();\n const [chainTo, setChainTo] = useAtom(swapChainToAtom);\n\n const { selectableChains } = useSelectableDestChains({\n fromChainId: appChainId,\n mode: acrossMode,\n });\n\n const showNetworkSwitcher = chainTo !== undefined;\n\n const networkSwitcherProps = showNetworkSwitcher\n ? {\n networks: selectableChains,\n selectedNetwork: chainTo,\n allOption: false,\n onSelect: (chainId: SupportedChainId | \"all\") =>\n chainId !== \"all\" && setChainTo(chainId),\n disabled: selectableChains.length <= 1,\n }\n : undefined;\n\n const setCurrentInput = useSetAtom(currentSwapInputAtom);\n\n const side = useSwapSide();\n const isSell = side === \"SELL\";\n\n // SELLing and price is loading = tokenTo input will receive destAmount\n const isLoading = isPriceLoading && isSell;\n\n return {\n networkSwitcherProps,\n tokenType: \"to\" as const,\n onFocus: () => setCurrentInput(\"to\"),\n label: (\n <>\n <span>Receive</span>{\" \"}\n {showNetworkSwitcher && <span className=\"text-contrast-5\">on</span>}\n </>\n ),\n isLoading,\n disabled: selectableChains.length === 0,\n };\n};\n\nexport const useTokenToInputProps = ({\n override,\n isPriceLoading,\n priceMode,\n price,\n priceError,\n}: UseTokenToInputInput): TokenInputProps => {\n const tokenToAmounts = useTokenToAmountProps({ price });\n const token = tokenToAmounts.token;\n const extraProps = useExtraProps({ isPriceLoading, acrossMode: \"swap\" });\n const youGetProps = useYouGetProps({ priceMode, price, token });\n const warningMessage = useWarningMessage({\n priceMode,\n priceError,\n mode: \"swap\",\n });\n\n const amount =\n override?.amountWei && token\n ? formatUnits(BigInt(override.amountWei), token.decimals)\n : tokenToAmounts.amount;\n\n const setTokenTo = useSetAtom(selectSwapTokenToAtom);\n const onTokenSelect = (newTokenTo: Token) => {\n setTokenTo(newTokenTo);\n };\n\n return {\n ...tokenToAmounts,\n amount,\n ...extraProps,\n youGetProps,\n warningMessage,\n onTokenSelect,\n };\n};\n"],"names":["useTokenToAmountProps","t0","$","_c","t1","undefined","price","logger","useLogger","tokenTo","useSwapTokenTo","amountValue","setAmountValue","useAtom","receiveInputAmountAtom","tokenBalanceUnit","useTokenToBalanceUnit","t2","isDeltaPrice","receivedDestUSDBeforeFee","receivedDestUSD","destUSD","usdEstimation","t3","values","log","value","t4","amount","token","onAmountChange","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","queryOptions","balanceUnit","useTokenBalance","toDecimalTrimmed","useYouGetProps","priceMode","side","useSwapSide","isSell","partnerFee","amountWei","getDestAmountAfterFee","swapFeesUSD","calculateFeeUSD","toString","networkCostUSD","gasCostUSD","youGetProps","useWarningMessage","priceError","mode","chainId","useChainId","chainTo","useAtomValue","swapChainToAtom","tokenFrom","useSwapTokenFrom","address","fromChainId","toChainId","tokenAddress","isCrosschainPossible","isLoading","isLoadingCrosschainAvailability","hasTokens","tokenSupported","useIsCrosschainPossible","isCrosschain","useIsCrossChain","deltaPriceError","parseDeltaApiError","isUnsupportedTokenError","replaceUnsupportedTokenMessage","description","filter","isTruthy","deltaErrorToShow","customUnsupportedTokenMessage","crosschainDeltaWarning","warningMessage","useExtraProps","isPriceLoading","acrossMode","appChainId","setChainTo","selectableChains","useSelectableDestChains","showNetworkSwitcher","networks","selectedNetwork","allOption","onSelect","disabled","length","networkSwitcherProps","setCurrentInput","useSetAtom","currentSwapInputAtom","t5","t6","t7","t8","tokenType","onFocus","label","useTokenToInputProps","override","tokenToAmounts","extraProps","formatUnits","BigInt","decimals","setTokenTo","selectSwapTokenToAtom","newTokenTo","onTokenSelect"],"mappings":"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"}
1
+ {"version":3,"file":"useTokenToInputProps.js","sources":["../../../../src/core/inputs/hooks/useTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\n\nimport { useSwapTokenFrom, useSwapTokenTo } from \"../state/selectedTokenAtom\";\n\nimport { swapChainToAtom } from \"@/core/state/chainToAtom\";\nimport { useAtom, useAtomValue, useSetAtom } from \"@/core/store\";\n\nimport { useSelectableDestChains } from \"@/hooks/useSelectableDestChains\";\nimport { useChainId } from \"wagmi\";\nimport { receiveInputAmountAtom } from \"../state/inputAmountAtom\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { formatUnits } from \"viem\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { useIsCrossChain } from \"@/core/state/isCrosschainAtom\";\nimport { getDestAmountAfterFee } from \"@/lib/utils/price\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport { calculateFeeUSD } from \"@/lib/utils/fee\";\nimport {\n replaceUnsupportedTokenMessage,\n isUnsupportedTokenError,\n parseDeltaApiError,\n customUnsupportedTokenMessage,\n} from \"@/lib/utils/delta\";\nimport { useIsCrosschainPossible } from \"@/hooks/useIsCrosschainPossible\";\nimport type { TokenInputAmountProps, TokenInputExtraProps } from \"./types\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useLogger } from \"@/core/logger\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { selectSwapTokenToAtom } from \"../state/selectedTokenActionsAtom\";\nimport { isTruthy } from \"@/lib/utils\";\nimport { isDeltaPrice } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { BridgeInfoMode } from \"@/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo\";\nimport { FetchingQuotes } from \"@/components/widget/FetchingQuotes/FetchingQuotes\";\n\ntype UseTokenToInputInput = {\n override?: {\n amountWei?: string;\n };\n price?: DeltaOrMarketPrice;\n priceMode: \"market\" | \"delta\";\n priceError: Error | null;\n isPriceLoading?: boolean;\n};\n\nconst useTokenToAmountProps = ({\n price,\n}: { price?: DeltaOrMarketPrice } = {}): TokenInputAmountProps => {\n const logger = useLogger(\"Swap::TokenTo::AmountProps\");\n const tokenTo = useSwapTokenTo();\n\n const [amountValue, setAmountValue] = useAtom(receiveInputAmountAtom);\n\n const tokenBalanceUnit = useTokenToBalanceUnit();\n\n const usdEstimation =\n price && isDeltaPrice(price)\n ? // receivedDestUSDBeforeFee is available for SELL side\n price.receivedDestUSDBeforeFee || price.receivedDestUSD\n : price?.destUSD;\n\n return {\n usdEstimation,\n amount: amountValue,\n tokenBalanceUnit,\n token: tokenTo,\n onAmountChange: (values) => {\n logger.log(\"onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\nconst useTokenToBalanceUnit = () => {\n const tokenTo = useSwapTokenTo();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenTo,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useYouGetProps = ({\n priceMode,\n price,\n token,\n}: {\n priceMode: \"market\" | \"delta\";\n price?: DeltaOrMarketPrice;\n token?: Token;\n}) => {\n const side = useSwapSide();\n const isSell = side === \"SELL\";\n\n const destUSD =\n price && isDeltaPrice(price) ? price.receivedDestUSD : price?.destUSD;\n\n const youGetProps =\n // filling for SELL side\n // forBUY side youGetAmount= exactly destAmount\n isSell &&\n // price is available\n price &&\n // tokenTo is available\n token &&\n // either priceMode is delta or market with non-zero partner fee\n (priceMode === \"delta\" || (priceMode === \"market\" && price.partnerFee > 0))\n ? {\n // YouGet section should show amount after fee without slippage included\n amountWei: getDestAmountAfterFee(price),\n swapFeesUSD: destUSD\n ? calculateFeeUSD(price.partnerFee, destUSD).toString()\n : undefined,\n networkCostUSD: price.gasCostUSD,\n token,\n priceMode,\n }\n : undefined;\n\n return youGetProps;\n};\n\nconst useWarningMessage = ({\n priceError,\n priceMode,\n mode,\n}: {\n priceMode?: \"market\" | \"delta\";\n priceError?: Error | null;\n mode: BridgeInfoMode;\n}) => {\n const chainId = useChainId();\n const chainTo = useAtomValue(swapChainToAtom);\n const tokenFrom = useSwapTokenFrom();\n const tokenTo = useSwapTokenTo();\n\n const {\n isCrosschainPossible,\n isLoading: isLoadingCrosschainAvailability,\n hasTokens,\n tokenSupported,\n } = useIsCrosschainPossible({\n fromChainId: chainId,\n toChainId: chainTo,\n tokenAddress: tokenFrom.address,\n mode,\n });\n\n const isCrosschain = useIsCrossChain();\n\n const deltaPriceError = priceError && parseDeltaApiError(priceError);\n\n const deltaErrorToShow = deltaPriceError\n ? isUnsupportedTokenError(deltaPriceError)\n ? replaceUnsupportedTokenMessage(\n deltaPriceError.description,\n [tokenFrom, tokenTo].filter(isTruthy)\n )\n : deltaPriceError?.description\n : null;\n\n const crosschainDeltaWarning =\n !isLoadingCrosschainAvailability && !isCrosschainPossible && isCrosschain\n ? tokenSupported === false\n ? customUnsupportedTokenMessage(tokenFrom)\n : hasTokens === false\n ? \"Chain selection isn't supported for Crosschain Swap\"\n : undefined\n : undefined;\n\n const warningMessage =\n priceMode === \"delta\"\n ? deltaErrorToShow || crosschainDeltaWarning\n : undefined;\n\n return warningMessage;\n};\n\nconst useExtraProps = ({\n isPriceLoading,\n acrossMode,\n}: {\n isPriceLoading?: boolean;\n acrossMode: BridgeInfoMode;\n}): TokenInputExtraProps => {\n const appChainId = useChainId();\n const [chainTo, setChainTo] = useAtom(swapChainToAtom);\n\n const { selectableChains } = useSelectableDestChains({\n fromChainId: appChainId,\n mode: acrossMode,\n });\n\n const showNetworkSwitcher = chainTo !== undefined;\n\n const networkSwitcherProps = showNetworkSwitcher\n ? {\n networks: selectableChains,\n selectedNetwork: chainTo,\n allOption: false,\n onSelect: (chainId: SupportedChainId | \"all\") =>\n chainId !== \"all\" && setChainTo(chainId),\n disabled: selectableChains.length <= 1,\n }\n : undefined;\n\n const setCurrentInput = useSetAtom(currentSwapInputAtom);\n\n const side = useSwapSide();\n const isSell = side === \"SELL\";\n\n // SELLing and price is loading = tokenTo input will receive destAmount\n const isLoading = isPriceLoading && isSell;\n\n const isCrosschain = useIsCrossChain();\n\n const showFetchingQuotes = isCrosschain && isPriceLoading;\n\n return {\n networkSwitcherProps,\n tokenType: \"to\" as const,\n onFocus: () => setCurrentInput(\"to\"),\n label: (\n <>\n <span>Receive</span>{\" \"}\n {showNetworkSwitcher && <span className=\"text-contrast-5\">on</span>}\n </>\n ),\n isLoading,\n disabled: selectableChains.length === 0,\n bottomElement: showFetchingQuotes ? <FetchingQuotes /> : undefined,\n };\n};\n\nexport const useTokenToInputProps = ({\n override,\n isPriceLoading,\n priceMode,\n price,\n priceError,\n}: UseTokenToInputInput): TokenInputProps => {\n const tokenToAmounts = useTokenToAmountProps({ price });\n const token = tokenToAmounts.token;\n const extraProps = useExtraProps({ isPriceLoading, acrossMode: \"swap\" });\n const youGetProps = useYouGetProps({ priceMode, price, token });\n const warningMessage = useWarningMessage({\n priceMode,\n priceError,\n mode: \"swap\",\n });\n\n const amount =\n override?.amountWei && token\n ? formatUnits(BigInt(override.amountWei), token.decimals)\n : tokenToAmounts.amount;\n\n const setTokenTo = useSetAtom(selectSwapTokenToAtom);\n const onTokenSelect = (newTokenTo: Token) => {\n setTokenTo(newTokenTo);\n };\n\n return {\n ...tokenToAmounts,\n amount,\n ...extraProps,\n youGetProps,\n warningMessage,\n onTokenSelect,\n };\n};\n"],"names":["useTokenToAmountProps","t0","$","_c","t1","undefined","price","logger","useLogger","tokenTo","useSwapTokenTo","amountValue","setAmountValue","useAtom","receiveInputAmountAtom","tokenBalanceUnit","useTokenToBalanceUnit","t2","isDeltaPrice","receivedDestUSDBeforeFee","receivedDestUSD","destUSD","usdEstimation","t3","values","log","value","t4","amount","token","onAmountChange","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","queryOptions","balanceUnit","useTokenBalance","toDecimalTrimmed","useYouGetProps","priceMode","side","useSwapSide","isSell","partnerFee","amountWei","getDestAmountAfterFee","swapFeesUSD","calculateFeeUSD","toString","networkCostUSD","gasCostUSD","youGetProps","useWarningMessage","priceError","mode","chainId","useChainId","chainTo","useAtomValue","swapChainToAtom","tokenFrom","useSwapTokenFrom","address","fromChainId","toChainId","tokenAddress","isCrosschainPossible","isLoading","isLoadingCrosschainAvailability","hasTokens","tokenSupported","useIsCrosschainPossible","isCrosschain","useIsCrossChain","deltaPriceError","parseDeltaApiError","isUnsupportedTokenError","replaceUnsupportedTokenMessage","description","filter","isTruthy","deltaErrorToShow","customUnsupportedTokenMessage","crosschainDeltaWarning","warningMessage","useExtraProps","isPriceLoading","acrossMode","appChainId","setChainTo","selectableChains","useSelectableDestChains","showNetworkSwitcher","networks","selectedNetwork","allOption","onSelect","disabled","length","networkSwitcherProps","setCurrentInput","useSetAtom","currentSwapInputAtom","showFetchingQuotes","t5","t6","t7","t8","t9","tokenType","onFocus","label","bottomElement","useTokenToInputProps","override","tokenToAmounts","extraProps","formatUnits","BigInt","decimals","setTokenTo","selectSwapTokenToAtom","newTokenTo","onTokenSelect"],"mappings":"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"}