@velora-dex/widget 0.3.1 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/bridges/canonical-uni.svg.js +12 -0
- package/dist/assets/bridges/canonical-uni.svg.js.map +1 -0
- package/dist/assets/bridges/cctp.svg.js +12 -0
- package/dist/assets/bridges/cctp.svg.js.map +1 -0
- package/dist/assets/bridges/celer.svg.js +16 -0
- package/dist/assets/bridges/celer.svg.js.map +1 -0
- package/dist/assets/bridges/relay.svg.js +12 -0
- package/dist/assets/bridges/relay.svg.js.map +1 -0
- package/dist/assets/refresh.svg.js +12 -0
- package/dist/assets/refresh.svg.js.map +1 -0
- package/dist/assets/speedometer.svg.js +12 -0
- package/dist/assets/speedometer.svg.js.map +1 -0
- package/dist/components/ui/accordion.d.ts +3 -2
- package/dist/components/ui/accordion.d.ts.map +1 -1
- package/dist/components/ui/accordion.js +64 -40
- package/dist/components/ui/accordion.js.map +1 -1
- package/dist/components/ui/skeleton.d.ts.map +1 -1
- package/dist/components/ui/skeleton.js.map +1 -1
- package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
- package/dist/components/widget/AppHeader/AppHeader.d.ts.map +1 -1
- package/dist/components/widget/AppHeader/AppHeader.js +67 -81
- package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
- package/dist/components/widget/AppHeader/TradeModeSwitcher.d.ts.map +1 -1
- package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
- package/dist/components/widget/BridgeList/BridgeListItem.d.ts +7 -0
- package/dist/components/widget/BridgeList/BridgeListItem.d.ts.map +1 -0
- package/dist/components/widget/BridgeList/BridgeListItem.js +475 -0
- package/dist/components/widget/BridgeList/BridgeListItem.js.map +1 -0
- package/dist/components/widget/BridgeList/BridgeProtocolsList.d.ts +9 -0
- package/dist/components/widget/BridgeList/BridgeProtocolsList.d.ts.map +1 -0
- package/dist/components/widget/BridgeList/BridgeProtocolsList.js +219 -0
- package/dist/components/widget/BridgeList/BridgeProtocolsList.js.map +1 -0
- package/dist/components/widget/BridgeList/BridgesList.d.ts +12 -0
- package/dist/components/widget/BridgeList/BridgesList.d.ts.map +1 -0
- package/dist/components/widget/BridgeList/BridgesList.js +76 -0
- package/dist/components/widget/BridgeList/BridgesList.js.map +1 -0
- package/dist/components/widget/BridgeList/hooks.d.ts +17 -0
- package/dist/components/widget/BridgeList/hooks.d.ts.map +1 -0
- package/dist/components/widget/BridgeList/hooks.js +259 -0
- package/dist/components/widget/BridgeList/hooks.js.map +1 -0
- package/dist/components/widget/BridgeList/types.d.ts +20 -0
- package/dist/components/widget/BridgeList/types.d.ts.map +1 -0
- package/dist/components/widget/BridgePreferences/BridgePreferences.d.ts +3 -0
- package/dist/components/widget/BridgePreferences/BridgePreferences.d.ts.map +1 -0
- package/dist/components/widget/BridgePreferences/BridgePreferences.js +136 -0
- package/dist/components/widget/BridgePreferences/BridgePreferences.js.map +1 -0
- package/dist/components/widget/BridgePreferences/types.d.ts +11 -0
- package/dist/components/widget/BridgePreferences/types.d.ts.map +1 -0
- package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.d.ts +8 -0
- package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.d.ts.map +1 -0
- package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.js +137 -0
- package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.js.map +1 -0
- package/dist/components/widget/CompareQuotes/CompareQuotes.d.ts +2 -0
- package/dist/components/widget/CompareQuotes/CompareQuotes.d.ts.map +1 -0
- package/dist/components/widget/CompareQuotes/CompareQuotes.js +210 -0
- package/dist/components/widget/CompareQuotes/CompareQuotes.js.map +1 -0
- package/dist/components/widget/Details/DetailWithValueListExpandable.d.ts.map +1 -1
- package/dist/components/widget/Details/DetailWithValueListExpandable.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js +2 -2
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js.map +1 -1
- package/dist/components/widget/Duration/Duration.d.ts +6 -0
- package/dist/components/widget/Duration/Duration.d.ts.map +1 -0
- package/dist/components/widget/Duration/Duration.js +95 -0
- package/dist/components/widget/Duration/Duration.js.map +1 -0
- package/dist/components/widget/Duration/types.d.ts +5 -0
- package/dist/components/widget/Duration/types.d.ts.map +1 -0
- package/dist/components/widget/Duration/utils.d.ts +4 -0
- package/dist/components/widget/Duration/utils.d.ts.map +1 -0
- package/dist/components/widget/Duration/utils.js +6 -0
- package/dist/components/widget/Duration/utils.js.map +1 -0
- package/dist/components/widget/FetchingQuotes/FetchingQuotes.d.ts +2 -0
- package/dist/components/widget/FetchingQuotes/FetchingQuotes.d.ts.map +1 -0
- package/dist/components/widget/FetchingQuotes/FetchingQuotes.js +42 -0
- package/dist/components/widget/FetchingQuotes/FetchingQuotes.js.map +1 -0
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js +10 -64
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js.map +1 -1
- package/dist/components/widget/OrderExpiryInput/index.js.map +1 -1
- package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.js.map +1 -1
- package/dist/components/widget/Screen/GenericScreen.js.map +1 -1
- package/dist/components/widget/SettingsButton/SettingsButton.d.ts +5 -0
- package/dist/components/widget/SettingsButton/SettingsButton.d.ts.map +1 -0
- package/dist/components/widget/SettingsButton/SettingsButton.js +61 -0
- package/dist/components/widget/SettingsButton/SettingsButton.js.map +1 -0
- package/dist/components/widget/TokenBadge/TokenBadge.d.ts.map +1 -1
- package/dist/components/widget/TokenBadge/TokenBadge.js +114 -65
- package/dist/components/widget/TokenBadge/TokenBadge.js.map +1 -1
- package/dist/components/widget/TokenBadge/types.d.ts +1 -0
- package/dist/components/widget/TokenBadge/types.d.ts.map +1 -1
- package/dist/components/widget/TokenInput/index.d.ts.map +1 -1
- package/dist/components/widget/TokenInput/index.js +35 -19
- package/dist/components/widget/TokenInput/index.js.map +1 -1
- package/dist/components/widget/TokenInput/types.d.ts +1 -0
- package/dist/components/widget/TokenInput/types.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeDetails.js +1 -1
- package/dist/components/widget/TradeOverview/TradeDetails.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js +1 -1
- package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js.map +1 -1
- package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.d.ts +1 -1
- package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.js.map +1 -1
- package/dist/components/widget/TradeParameters/BridgePreferenceParameters/BridgePreferenceParameters.d.ts +21 -0
- package/dist/components/widget/TradeParameters/BridgePreferenceParameters/BridgePreferenceParameters.d.ts.map +1 -0
- package/dist/components/widget/TradeParameters/BridgePreferenceParameters/BridgePreferenceParameters.js +90 -0
- package/dist/components/widget/TradeParameters/BridgePreferenceParameters/BridgePreferenceParameters.js.map +1 -0
- package/dist/components/widget/TradeParameters/BridgePreferenceParameters/useDraftBridgePreferencesState.d.ts +12 -0
- package/dist/components/widget/TradeParameters/BridgePreferenceParameters/useDraftBridgePreferencesState.d.ts.map +1 -0
- package/dist/components/widget/TradeParameters/BridgePreferenceParameters/useDraftBridgePreferencesState.js +68 -0
- package/dist/components/widget/TradeParameters/BridgePreferenceParameters/useDraftBridgePreferencesState.js.map +1 -0
- package/dist/components/widget/TradeParameters/TradeParameters.d.ts +3 -2
- package/dist/components/widget/TradeParameters/TradeParameters.d.ts.map +1 -1
- package/dist/components/widget/TradeParameters/TradeParameters.js +66 -45
- package/dist/components/widget/TradeParameters/TradeParameters.js.map +1 -1
- package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.d.ts.map +1 -1
- package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js +3 -1
- package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js.map +1 -1
- package/dist/components/widget/TradeParameters/state/bridgePreferences/bridgePreferenceAtom.d.ts +10 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/bridgePreferenceAtom.d.ts.map +1 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/bridgePreferenceAtom.js +19 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/bridgePreferenceAtom.js.map +1 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/constants.d.ts +4 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/constants.d.ts.map +1 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/constants.js +7 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/constants.js.map +1 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/disabledBridgesAtom.d.ts +8 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/disabledBridgesAtom.d.ts.map +1 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/disabledBridgesAtom.js +21 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/disabledBridgesAtom.js.map +1 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom.d.ts +2 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom.d.ts.map +1 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom.js +11 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom.js.map +1 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/protocolNameAtom.d.ts +4 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/protocolNameAtom.d.ts.map +1 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/protocolNameAtom.js +8 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/protocolNameAtom.js.map +1 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/resetDraftsAtom.d.ts +4 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/resetDraftsAtom.d.ts.map +1 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/resetDraftsAtom.js +11 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/resetDraftsAtom.js.map +1 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/types.d.ts +3 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/types.d.ts.map +1 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/useBridgePreferences.d.ts +15 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/useBridgePreferences.d.ts.map +1 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/useBridgePreferences.js +63 -0
- package/dist/components/widget/TradeParameters/state/bridgePreferences/useBridgePreferences.js.map +1 -0
- package/dist/components/widget/TradeParameters/useTempTradeParameters.d.ts +5 -0
- package/dist/components/widget/TradeParameters/useTempTradeParameters.d.ts.map +1 -1
- package/dist/components/widget/TradeParameters/useTempTradeParameters.js +150 -67
- package/dist/components/widget/TradeParameters/useTempTradeParameters.js.map +1 -1
- package/dist/components/widget/YouGet/YouGet.d.ts.map +1 -1
- package/dist/components/widget/YouGet/YouGet.js +93 -99
- package/dist/components/widget/YouGet/YouGet.js.map +1 -1
- package/dist/components/widget/YouGet/types.d.ts +2 -1
- package/dist/components/widget/YouGet/types.d.ts.map +1 -1
- package/dist/configurator/state/themeAtom.d.ts.map +1 -1
- package/dist/core/Updaters.d.ts.map +1 -1
- package/dist/core/Updaters.js +2 -0
- package/dist/core/Updaters.js.map +1 -1
- package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
- package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +22 -14
- package/dist/core/index.js.map +1 -1
- package/dist/core/inputs/hooks/types.d.ts +2 -2
- package/dist/core/inputs/hooks/types.d.ts.map +1 -1
- package/dist/core/inputs/hooks/useTokenFromInputProps.d.ts.map +1 -1
- package/dist/core/inputs/hooks/useTokenFromInputProps.js +121 -103
- package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
- package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
- package/dist/core/inputs/hooks/useTokenToInputProps.js +158 -130
- package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
- package/dist/core/inputs/hooks/utils.d.ts +10 -0
- package/dist/core/inputs/hooks/utils.d.ts.map +1 -0
- package/dist/core/inputs/hooks/utils.js +41 -0
- package/dist/core/inputs/hooks/utils.js.map +1 -0
- package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
- package/dist/core/limit/state/utils.js.map +1 -1
- package/dist/core/limit/useLimitRate.d.ts.map +1 -1
- package/dist/core/limit/useLimitRate.js.map +1 -1
- package/dist/core/screen/hooks/useOnClickOutside.js.map +1 -1
- package/dist/core/screen/screenByType.d.ts +2 -0
- package/dist/core/screen/screenByType.d.ts.map +1 -1
- package/dist/core/screen/screenByType.js +5 -1
- package/dist/core/screen/screenByType.js.map +1 -1
- package/dist/core/screen/state/hooks/useSetScreen.d.ts +3 -0
- package/dist/core/screen/state/hooks/useSetScreen.d.ts.map +1 -1
- package/dist/core/screen/state/hooks/useSetScreen.js +43 -11
- package/dist/core/screen/state/hooks/useSetScreen.js.map +1 -1
- package/dist/core/state/enabledTradeModesAtom.d.ts.map +1 -1
- package/dist/core/state/enabledTradeModesAtom.js.map +1 -1
- package/dist/core/swapDetails/priceImpact.d.ts.map +1 -1
- package/dist/core/swapDetails/priceImpact.js +7 -3
- package/dist/core/swapDetails/priceImpact.js.map +1 -1
- package/dist/events/getters/settings.d.ts.map +1 -1
- package/dist/events/getters/settings.js +7 -1
- package/dist/events/getters/settings.js.map +1 -1
- package/dist/events/types/common.d.ts +6 -1
- package/dist/events/types/common.d.ts.map +1 -1
- package/dist/events/types/settings.d.ts +2 -1
- package/dist/events/types/settings.d.ts.map +1 -1
- package/dist/hooks/gas/useGasPrices.d.ts.map +1 -1
- package/dist/hooks/gas/useGasPrices.js.map +1 -1
- package/dist/hooks/otc/mutations/useFillOrder.js +1 -2
- package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
- package/dist/hooks/swap/prices/constants.d.ts +3 -0
- package/dist/hooks/swap/prices/constants.d.ts.map +1 -0
- package/dist/hooks/swap/prices/constants.js +5 -0
- package/dist/hooks/swap/prices/constants.js.map +1 -0
- package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.d.ts +6 -0
- package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.js +36 -0
- package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.js.map +1 -0
- package/dist/hooks/swap/prices/delta/bridge/utils.d.ts +7 -0
- package/dist/hooks/swap/prices/delta/bridge/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/bridge/utils.js +35 -1
- package/dist/hooks/swap/prices/delta/bridge/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/types.d.ts +13 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/types.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/useBridgeProtocols.d.ts +3 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/useBridgeProtocols.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/useBridgeProtocols.js +75 -0
- package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/useBridgeProtocols.js.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +2 -2
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +3 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/market/mutations/useBuildTx.d.ts.map +1 -1
- package/dist/hooks/swap/prices/market/mutations/useBuildTx.js.map +1 -1
- package/dist/hooks/swap/prices/types.d.ts +1 -0
- package/dist/hooks/swap/prices/types.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.d.ts +5 -0
- package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.js +119 -94
- package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +15 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
- package/dist/hooks/tokens/prices/queries.d.ts.map +1 -1
- package/dist/hooks/tokens/prices/queries.js.map +1 -1
- package/dist/hooks/tokens/useAllTokensWithFilter.d.ts.map +1 -1
- package/dist/hooks/tokens/useAllTokensWithFilter.js +11 -6
- package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
- package/dist/hooks/useBridgeProtocols.d.ts +3 -0
- package/dist/hooks/useBridgeProtocols.d.ts.map +1 -0
- package/dist/hooks/useBridgeProtocols.js +35 -0
- package/dist/hooks/useBridgeProtocols.js.map +1 -0
- package/dist/hooks/useClickOutside.js.map +1 -1
- package/dist/lib/constants/storage.d.ts +2 -0
- package/dist/lib/constants/storage.d.ts.map +1 -0
- package/dist/lib/constants/storage.js +4 -0
- package/dist/lib/constants/storage.js.map +1 -0
- package/dist/lib/constants/weth.js.map +1 -1
- package/dist/lib/utils/priceImpact.d.ts +5 -2
- package/dist/lib/utils/priceImpact.d.ts.map +1 -1
- package/dist/lib/utils/priceImpact.js +8 -5
- package/dist/lib/utils/priceImpact.js.map +1 -1
- package/dist/lib/utils/tuple.d.ts +1 -0
- package/dist/lib/utils/tuple.d.ts.map +1 -1
- package/dist/lib/utils/tuple.js +5 -1
- package/dist/lib/utils/tuple.js.map +1 -1
- package/dist/lib/web3/privy/config.js +1 -1
- package/dist/lib/web3/wagmi/config.js +1 -1
- package/dist/styles.css +58 -3
- package/dist/tokens/queries.d.ts.map +1 -1
- package/dist/tokens/queries.js.map +1 -1
- package/dist/tokens/state/importedTokensAtom.d.ts.map +1 -1
- package/dist/tokens/state/importedTokensAtom.js +4 -1
- package/dist/tokens/state/importedTokensAtom.js.map +1 -1
- package/dist/tokens/utils/sorting.d.ts +5 -0
- package/dist/tokens/utils/sorting.d.ts.map +1 -1
- package/dist/tokens/utils/sorting.js +34 -1
- package/dist/tokens/utils/sorting.js.map +1 -1
- package/dist/transactions/state/transactionsAtom.d.ts.map +1 -1
- package/dist/transactions/state/transactionsAtom.js +2 -1
- package/dist/transactions/state/transactionsAtom.js.map +1 -1
- package/package.json +2 -2
|
@@ -104,7 +104,7 @@ const DefaultRowRenderer = (t0) => {
|
|
|
104
104
|
}
|
|
105
105
|
let t4;
|
|
106
106
|
if ($[7] !== balanceToDisplay) {
|
|
107
|
-
t4 = /* @__PURE__ */ jsx("div", { className: "
|
|
107
|
+
t4 = /* @__PURE__ */ jsx("div", { className: "dark:text-contrast-7 font-medium", children: balanceToDisplay });
|
|
108
108
|
$[7] = balanceToDisplay;
|
|
109
109
|
$[8] = t4;
|
|
110
110
|
} else {
|
|
@@ -132,7 +132,7 @@ const DefaultRowRenderer = (t0) => {
|
|
|
132
132
|
}
|
|
133
133
|
let t7;
|
|
134
134
|
if ($[14] !== usdBalanceToDisplay) {
|
|
135
|
-
t7 = /* @__PURE__ */ jsx("div", {
|
|
135
|
+
t7 = /* @__PURE__ */ jsx("div", { children: usdBalanceToDisplay });
|
|
136
136
|
$[14] = usdBalanceToDisplay;
|
|
137
137
|
$[15] = t7;
|
|
138
138
|
} else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenListRow.js","sources":["../../../../../../src/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.tsx"],"sourcesContent":["import type { Token, TokenMaybeWithUsdBalance } from \"@/tokens/state/types\";\nimport { TokenBadge } from \"@/components/widget/TokenBadge/TokenBadge\";\nimport { formatUnits } from \"viem\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { formatFiatPrice } from \"@/lib/utils/formatFiatPrice\";\nimport { Button } from \"@/components/ui/button\";\nimport type { JSX } from \"react\";\nimport type { Prettify } from \"ts-essentials\";\n\nexport type TokenRowForFetchedToken = Prettify<\n TokenMaybeWithUsdBalance & {\n fetchedOnChain?: true;\n }\n>;\n\nexport type RowRendererProps = {\n row: TokenRowForFetchedToken;\n onSelect?: (token: Token) => void;\n};\n\nexport type RowRenderer = (props: RowRendererProps) => JSX.Element;\n\ntype BaseRowRenderer = (\n props: RowRendererProps & {\n afterBadge?: React.ReactNode;\n }\n) => JSX.Element;\n\nconst BaseRenderer: BaseRowRenderer = ({ row, onSelect, afterBadge }) => {\n return (\n <div className=\"h-full px-[11px]\">\n <div\n className=\"px-2 rounded-sm hover:bg-contrast-9 dark:hover:bg-contrast-3 h-full hover:cursor-pointer transition-colors\"\n onClick={\n onSelect\n ? () => {\n onSelect(row);\n }\n : undefined\n }\n >\n <div className=\"flex items-center gap-2 h-full border-b-[0.5px] border-b-contrast-7 dark:border-b-contrast-3 hover:cursor-pointer\">\n <TokenBadge\n address={row.address}\n img={row.img}\n chainId={row.network}\n showNetworkIcon\n classes={{ logo: \"size-[24px]\" }}\n />\n {afterBadge}\n </div>\n </div>\n </div>\n );\n};\n\ntype DefaultRenderer = (\n props: RowRendererProps & {\n afterBalance?: React.ReactNode;\n }\n) => JSX.Element;\n\nconst DefaultRowRenderer: DefaultRenderer = ({\n row,\n onSelect,\n afterBalance,\n}) => {\n const formattedBalance = row.balance\n ? formatUnits(BigInt(row.balance), row.decimals)\n : undefined;\n\n const balanceToDisplay = formattedBalance\n ? toDecimalTrimmed(formattedBalance)\n : \"0\";\n\n const formattedUsdBalance = row.usdBalance\n ? formatFiatPrice(row.usdBalance)\n : undefined;\n\n const usdBalanceToDisplay =\n formattedUsdBalance === undefined\n ? \"$0\" // no usd prices or token.balance is zero\n : formattedUsdBalance === \"$0.00\"\n ? \"<$0.01\" // usd balance is less than 0.01\n : formattedUsdBalance;\n\n return (\n <BaseRenderer\n row={row}\n onSelect={onSelect}\n afterBadge={\n <>\n <div className=\"flex-1\">\n <div className=\"flex items-center justify-between text-sm text-contrast-3\">\n <div className=\"dark:text-contrast-6 font-medium\">\n {row.symbol}\n </div>\n <div className=\"font-geist-mono dark:text-contrast-7 font-medium\">\n {balanceToDisplay}\n </div>\n </div>\n <div className=\"text-contrast-5 dark:text-contrast-5 flex items-center justify-between text-[10px]\">\n <div>{row.name}</div>\n <div className=\"font-geist-mono\">{usdBalanceToDisplay}</div>\n </div>\n </div>\n {afterBalance}\n </>\n }\n />\n );\n};\n\nconst FetchedTokenRenderer: RowRenderer = ({ row, onSelect }) => {\n return (\n <DefaultRowRenderer\n row={row}\n afterBalance={\n <Button\n onClick={onSelect ? () => onSelect(row) : undefined}\n variant={\"secondary\"}\n size=\"sm\"\n className=\"ml-2 flex-shrink-0 uppercase\"\n >\n Import\n </Button>\n }\n />\n );\n};\n\nexport const RendererByType = (props: RowRendererProps) => {\n const Renderer = props.row.fetchedOnChain\n ? FetchedTokenRenderer\n : DefaultRowRenderer;\n return <Renderer {...props} />;\n};\n"],"names":["BaseRenderer","t0","$","_c","row","onSelect","afterBadge","t1","undefined","t2","Symbol","for","logo","t3","address","img","network","t4","t5","DefaultRowRenderer","afterBalance","balance","decimals","formattedBalance","formatUnits","BigInt","toDecimalTrimmed","balanceToDisplay","usdBalance","formatFiatPrice","formattedUsdBalance","usdBalanceToDisplay","symbol","t6","name","t7","t8","t9","t10","t11","FetchedTokenRenderer","RendererByType","props","Renderer","fetchedOnChain"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TokenListRow.js","sources":["../../../../../../src/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.tsx"],"sourcesContent":["import type { Token, TokenMaybeWithUsdBalance } from \"@/tokens/state/types\";\nimport { TokenBadge } from \"@/components/widget/TokenBadge/TokenBadge\";\nimport { formatUnits } from \"viem\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { formatFiatPrice } from \"@/lib/utils/formatFiatPrice\";\nimport { Button } from \"@/components/ui/button\";\nimport type { JSX } from \"react\";\nimport type { Prettify } from \"ts-essentials\";\n\nexport type TokenRowForFetchedToken = Prettify<\n TokenMaybeWithUsdBalance & {\n fetchedOnChain?: true;\n }\n>;\n\nexport type RowRendererProps = {\n row: TokenRowForFetchedToken;\n onSelect?: (token: Token) => void;\n};\n\nexport type RowRenderer = (props: RowRendererProps) => JSX.Element;\n\ntype BaseRowRenderer = (\n props: RowRendererProps & {\n afterBadge?: React.ReactNode;\n }\n) => JSX.Element;\n\nconst BaseRenderer: BaseRowRenderer = ({ row, onSelect, afterBadge }) => {\n return (\n <div className=\"h-full px-[11px]\">\n <div\n className=\"px-2 rounded-sm hover:bg-contrast-9 dark:hover:bg-contrast-3 h-full hover:cursor-pointer transition-colors\"\n onClick={\n onSelect\n ? () => {\n onSelect(row);\n }\n : undefined\n }\n >\n <div className=\"flex items-center gap-2 h-full border-b-[0.5px] border-b-contrast-7 dark:border-b-contrast-3 hover:cursor-pointer\">\n <TokenBadge\n address={row.address}\n img={row.img}\n chainId={row.network}\n showNetworkIcon\n classes={{ logo: \"size-[24px]\" }}\n />\n {afterBadge}\n </div>\n </div>\n </div>\n );\n};\n\ntype DefaultRenderer = (\n props: RowRendererProps & {\n afterBalance?: React.ReactNode;\n }\n) => JSX.Element;\n\nconst DefaultRowRenderer: DefaultRenderer = ({\n row,\n onSelect,\n afterBalance,\n}) => {\n const formattedBalance = row.balance\n ? formatUnits(BigInt(row.balance), row.decimals)\n : undefined;\n\n const balanceToDisplay = formattedBalance\n ? toDecimalTrimmed(formattedBalance)\n : \"0\";\n\n const formattedUsdBalance = row.usdBalance\n ? formatFiatPrice(row.usdBalance)\n : undefined;\n\n const usdBalanceToDisplay =\n formattedUsdBalance === undefined\n ? \"$0\" // no usd prices or token.balance is zero\n : formattedUsdBalance === \"$0.00\"\n ? \"<$0.01\" // usd balance is less than 0.01\n : formattedUsdBalance;\n\n return (\n <BaseRenderer\n row={row}\n onSelect={onSelect}\n afterBadge={\n <>\n <div className=\"flex-1\">\n <div className=\"flex items-center justify-between text-sm text-contrast-3\">\n <div className=\"dark:text-contrast-6 font-medium\">\n {row.symbol}\n </div>\n <div className=\"dark:text-contrast-7 font-medium\">\n {balanceToDisplay}\n </div>\n </div>\n <div className=\"text-contrast-5 dark:text-contrast-5 flex items-center justify-between text-[10px]\">\n <div>{row.name}</div>\n <div>{usdBalanceToDisplay}</div>\n </div>\n </div>\n {afterBalance}\n </>\n }\n />\n );\n};\n\nconst FetchedTokenRenderer: RowRenderer = ({ row, onSelect }) => {\n return (\n <DefaultRowRenderer\n row={row}\n afterBalance={\n <Button\n onClick={onSelect ? () => onSelect(row) : undefined}\n variant={\"secondary\"}\n size=\"sm\"\n className=\"ml-2 flex-shrink-0 uppercase\"\n >\n Import\n </Button>\n }\n />\n );\n};\n\nexport const RendererByType = (props: RowRendererProps) => {\n const Renderer = props.row.fetchedOnChain\n ? FetchedTokenRenderer\n : DefaultRowRenderer;\n return <Renderer {...props} />;\n};\n"],"names":["BaseRenderer","t0","$","_c","row","onSelect","afterBadge","t1","undefined","t2","Symbol","for","logo","t3","address","img","network","t4","t5","DefaultRowRenderer","afterBalance","balance","decimals","formattedBalance","formatUnits","BigInt","toDecimalTrimmed","balanceToDisplay","usdBalance","formatFiatPrice","formattedUsdBalance","usdBalanceToDisplay","symbol","t6","name","t7","t8","t9","t10","t11","FetchedTokenRenderer","RendererByType","props","Renderer","fetchedOnChain"],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { WithClasses } from '../../../types/withClasses';
|
|
2
|
+
export declare const Duration: ({ timeMs, classes, showSeconds, }: {
|
|
3
|
+
timeMs: number;
|
|
4
|
+
showSeconds?: boolean;
|
|
5
|
+
} & WithClasses<"root">) => import("react/jsx-runtime").JSX.Element | null;
|
|
6
|
+
//# sourceMappingURL=Duration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Duration.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/Duration/Duration.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAIvD,eAAO,MAAM,QAAQ,GAAI,mCAItB;IACD,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,GAAG,WAAW,CAAC,MAAM,CAAC,mDA8CtB,CAAC"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { d as distExports } from '../../../_virtual/index.js';
|
|
3
|
+
import { cn } from '../../../lib/utils/index.js';
|
|
4
|
+
import { getDuration } from '../../../lib/utils/time.js';
|
|
5
|
+
import { isPartWithValue } from './utils.js';
|
|
6
|
+
|
|
7
|
+
const Duration = (t0) => {
|
|
8
|
+
const $ = distExports.c(10);
|
|
9
|
+
const {
|
|
10
|
+
timeMs,
|
|
11
|
+
classes,
|
|
12
|
+
showSeconds: t1
|
|
13
|
+
} = t0;
|
|
14
|
+
const showSeconds = t1 === void 0 ? false : t1;
|
|
15
|
+
let t2;
|
|
16
|
+
if ($[0] !== showSeconds || $[1] !== timeMs) {
|
|
17
|
+
const duration = getDuration(timeMs);
|
|
18
|
+
let asSecondsPart;
|
|
19
|
+
if (showSeconds) {
|
|
20
|
+
const asSeconds = duration.asSeconds();
|
|
21
|
+
if (asSeconds === 60) {
|
|
22
|
+
asSecondsPart = {
|
|
23
|
+
value: 60,
|
|
24
|
+
unit: "s"
|
|
25
|
+
};
|
|
26
|
+
} else {
|
|
27
|
+
asSecondsPart = {
|
|
28
|
+
value: asSeconds >= 1 ? duration.seconds() : null,
|
|
29
|
+
unit: "s"
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
t2 = [{
|
|
34
|
+
value: duration.asYears() > 1 ? duration.years() : null,
|
|
35
|
+
unit: "y"
|
|
36
|
+
}, {
|
|
37
|
+
value: duration.asMonths() > 1 ? duration.months() : null,
|
|
38
|
+
unit: "mo"
|
|
39
|
+
}, {
|
|
40
|
+
value: duration.asDays() > 1 ? duration.days() : null,
|
|
41
|
+
unit: "d"
|
|
42
|
+
}, {
|
|
43
|
+
value: duration.asHours() > 1 ? duration.hours() : null,
|
|
44
|
+
unit: "h"
|
|
45
|
+
}, {
|
|
46
|
+
value: duration.asMinutes() > 1 ? duration.minutes() : null,
|
|
47
|
+
unit: "m"
|
|
48
|
+
}, showSeconds && asSecondsPart].filter(isPartWithValue);
|
|
49
|
+
$[0] = showSeconds;
|
|
50
|
+
$[1] = timeMs;
|
|
51
|
+
$[2] = t2;
|
|
52
|
+
} else {
|
|
53
|
+
t2 = $[2];
|
|
54
|
+
}
|
|
55
|
+
const parts = t2;
|
|
56
|
+
if (!parts.length) {
|
|
57
|
+
return null;
|
|
58
|
+
}
|
|
59
|
+
const t3 = classes?.root;
|
|
60
|
+
let t4;
|
|
61
|
+
if ($[3] !== t3) {
|
|
62
|
+
t4 = cn("text-xs flex gap-1 items-center dark:text-contrast-7", t3);
|
|
63
|
+
$[3] = t3;
|
|
64
|
+
$[4] = t4;
|
|
65
|
+
} else {
|
|
66
|
+
t4 = $[4];
|
|
67
|
+
}
|
|
68
|
+
let t5;
|
|
69
|
+
if ($[5] !== parts) {
|
|
70
|
+
t5 = parts.map(_temp);
|
|
71
|
+
$[5] = parts;
|
|
72
|
+
$[6] = t5;
|
|
73
|
+
} else {
|
|
74
|
+
t5 = $[6];
|
|
75
|
+
}
|
|
76
|
+
let t6;
|
|
77
|
+
if ($[7] !== t4 || $[8] !== t5) {
|
|
78
|
+
t6 = /* @__PURE__ */ jsx("div", { className: t4, children: t5 });
|
|
79
|
+
$[7] = t4;
|
|
80
|
+
$[8] = t5;
|
|
81
|
+
$[9] = t6;
|
|
82
|
+
} else {
|
|
83
|
+
t6 = $[9];
|
|
84
|
+
}
|
|
85
|
+
return t6;
|
|
86
|
+
};
|
|
87
|
+
function _temp(part, i) {
|
|
88
|
+
return /* @__PURE__ */ jsxs("span", { children: [
|
|
89
|
+
/* @__PURE__ */ jsx("span", { children: part.value }),
|
|
90
|
+
/* @__PURE__ */ jsx("span", { children: part.unit })
|
|
91
|
+
] }, i);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
export { Duration };
|
|
95
|
+
//# sourceMappingURL=Duration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Duration.js","sources":["../../../../src/components/widget/Duration/Duration.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport { getDuration } from \"@/lib/utils/time\";\nimport type { WithClasses } from \"@/types/withClasses\";\nimport { isPartWithValue } from \"./utils\";\nimport type { DurationPart } from \"./types\";\n\nexport const Duration = ({\n timeMs,\n classes,\n showSeconds = false,\n}: {\n timeMs: number;\n showSeconds?: boolean;\n} & WithClasses<\"root\">) => {\n const duration = getDuration(timeMs);\n\n let asSecondsPart: DurationPart | undefined;\n if (showSeconds) {\n // duration.seconds() for exactly 60 seconds returns 0, so we have to handle this case separately\n const asSeconds = duration.asSeconds();\n if (asSeconds === 60) {\n asSecondsPart = {\n value: 60,\n unit: \"s\",\n };\n } else {\n asSecondsPart = {\n value: asSeconds >= 1 ? duration.seconds() : null,\n unit: \"s\",\n };\n }\n }\n\n const parts = [\n { value: duration.asYears() > 1 ? duration.years() : null, unit: \"y\" },\n { value: duration.asMonths() > 1 ? duration.months() : null, unit: \"mo\" },\n { value: duration.asDays() > 1 ? duration.days() : null, unit: \"d\" },\n { value: duration.asHours() > 1 ? duration.hours() : null, unit: \"h\" },\n { value: duration.asMinutes() > 1 ? duration.minutes() : null, unit: \"m\" },\n showSeconds && asSecondsPart,\n ].filter(isPartWithValue);\n\n if (!parts.length) return null;\n\n return (\n <div\n className={cn(\n \"text-xs flex gap-1 items-center dark:text-contrast-7\",\n classes?.root\n )}\n >\n {parts.map((part, i) => (\n <span key={i}>\n <span>{part.value}</span>\n <span>{part.unit}</span>\n </span>\n ))}\n </div>\n );\n};\n"],"names":["Duration","t0","$","_c","timeMs","classes","showSeconds","t1","undefined","t2","duration","getDuration","asSecondsPart","asSeconds","seconds","unit","value","asYears","years","asMonths","months","asDays","days","asHours","hours","asMinutes","minutes","filter","isPartWithValue","parts","length","t3","root","t4","cn","t5","map","_temp","t6","part","i"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/Duration/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/Duration/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,wBAAgB,eAAe,CAC7B,IAAI,CAAC,EAAE,KAAK,GAAG,YAAY,GAC1B,IAAI,IAAI,eAAe,CAAC,YAAY,CAAC,CAEvC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../../src/components/widget/Duration/utils.ts"],"sourcesContent":["import type { DeepNonNullable } from \"ts-essentials\";\nimport type { DurationPart } from \"./types\";\n\nexport function isPartWithValue(\n part?: false | DurationPart\n): part is DeepNonNullable<DurationPart> {\n return !!part && !!part.value; // value > 0\n}\n"],"names":["isPartWithValue","part","value"],"mappings":"AAGO,SAASA,gBACdC,IAAAA,EACuC;AACvC,EAAA,OAAO,CAAC,CAACA,IAAAA,IAAQ,CAAC,CAACA,IAAAA,CAAKC,KAAAA;AAC1B;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FetchingQuotes.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/FetchingQuotes/FetchingQuotes.tsx"],"names":[],"mappings":"AAWA,eAAO,MAAM,cAAc,+CA+B1B,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { d as distExports } from '../../../_virtual/index.js';
|
|
3
|
+
import { ReactComponent as ForwardRef$2 } from '../../../assets/bridges/celer.svg.js';
|
|
4
|
+
import { ReactComponent as ForwardRef } from '../../../assets/bridges/relay.svg.js';
|
|
5
|
+
import { ReactComponent as ForwardRef$1 } from '../../../assets/bridges/cctp.svg.js';
|
|
6
|
+
import { ReactComponent as ForwardRef$3 } from '../../../assets/bridges/canonical-uni.svg.js';
|
|
7
|
+
import { motion } from 'motion/react';
|
|
8
|
+
|
|
9
|
+
const icons = [ForwardRef, ForwardRef$1, ForwardRef$2, ForwardRef$3];
|
|
10
|
+
const animationDuration = 0.8;
|
|
11
|
+
const animationDelay = 0.25;
|
|
12
|
+
const FetchingQuotes = () => {
|
|
13
|
+
const $ = distExports.c(1);
|
|
14
|
+
let t0;
|
|
15
|
+
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
|
|
16
|
+
t0 = /* @__PURE__ */ jsxs("div", { className: "min-h-[20px] flex items-center justify-center gap-3", children: [
|
|
17
|
+
/* @__PURE__ */ jsx("div", { className: "flex items-center justify-center", children: icons.map(_temp) }),
|
|
18
|
+
/* @__PURE__ */ jsx("div", { className: "text-center text-xs text-contrast-5 dark:text-contrast-8", children: "Fetching Quotes" })
|
|
19
|
+
] });
|
|
20
|
+
$[0] = t0;
|
|
21
|
+
} else {
|
|
22
|
+
t0 = $[0];
|
|
23
|
+
}
|
|
24
|
+
return t0;
|
|
25
|
+
};
|
|
26
|
+
function _temp(Icon, index) {
|
|
27
|
+
return /* @__PURE__ */ jsx(motion.div, { style: {
|
|
28
|
+
zIndex: index,
|
|
29
|
+
marginRight: -5
|
|
30
|
+
}, animate: {
|
|
31
|
+
y: [0, -10, 0]
|
|
32
|
+
}, transition: {
|
|
33
|
+
duration: animationDuration,
|
|
34
|
+
repeat: Infinity,
|
|
35
|
+
repeatDelay: icons.length * animationDelay,
|
|
36
|
+
delay: index * animationDelay,
|
|
37
|
+
ease: "easeInOut"
|
|
38
|
+
}, children: /* @__PURE__ */ jsx(Icon, { className: "size-4" }) }, index);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export { FetchingQuotes };
|
|
42
|
+
//# sourceMappingURL=FetchingQuotes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FetchingQuotes.js","sources":["../../../../src/components/widget/FetchingQuotes/FetchingQuotes.tsx"],"sourcesContent":["import { ReactComponent as CellerBridgeSVG } from \"@/assets/bridges/celer.svg\";\nimport { ReactComponent as RelayBridgeSVG } from \"@/assets/bridges/relay.svg\";\nimport { ReactComponent as CctpBridgeSVG } from \"@/assets/bridges/cctp.svg\";\nimport { ReactComponent as CanonicalUni } from \"@/assets/bridges/canonical-uni.svg\";\nimport { motion } from \"motion/react\";\n\nconst icons = [RelayBridgeSVG, CctpBridgeSVG, CellerBridgeSVG, CanonicalUni];\n\nconst animationDuration = 0.8;\nconst animationDelay = 0.25;\n\nexport const FetchingQuotes = () => {\n return (\n // min-h-[20px] to align with YouGet and don't cause layout shift when the price fetches\n <div className=\"min-h-[20px] flex items-center justify-center gap-3\">\n <div className=\"flex items-center justify-center\">\n {icons.map((Icon, index) => (\n <motion.div\n key={index}\n style={{\n // zIndex so later icons (higher index) appear above earlier ones, with the last icon on top\n zIndex: index,\n marginRight: -5,\n }}\n animate={{ y: [0, -10, 0] }}\n transition={{\n duration: animationDuration,\n repeat: Infinity,\n repeatDelay: icons.length * animationDelay,\n delay: index * animationDelay,\n ease: \"easeInOut\",\n }}\n >\n <Icon className=\"size-4\" />\n </motion.div>\n ))}\n </div>\n <div className=\"text-center text-xs text-contrast-5 dark:text-contrast-8\">\n Fetching Quotes\n </div>\n </div>\n );\n};\n"],"names":["icons","RelayBridgeSVG","CctpBridgeSVG","CellerBridgeSVG","CanonicalUni","animationDuration","animationDelay","FetchingQuotes","$","_c","t0","Symbol","for","map","_temp","Icon","index","zIndex","marginRight","y","duration","repeat","Infinity","repeatDelay","length","delay","ease"],"mappings":";;;;;;;;AAMA,MAAMA,KAAAA,GAAQ,CAACC,UAAAA,EAAgBC,YAAAA,EAAeC,cAAiBC,YAAY,CAAA;AAE3E,MAAMC,iBAAAA,GAAoB,GAAA;AAC1B,MAAMC,cAAAA,GAAiB,IAAA;AAEhB,MAAMC,iBAAiBA,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;AAG1BF,IAAAA,EAAAA,mBAAA,IAAA,CAAA,KAAA,EAAA,EAAe,SAAA,EAAA,qDAAA,EACb,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAA,SAAe,SAAA,EAAA,kCAAA,EACZV,QAAAA,EAAAA,KAAAA,CAAKa,GAAAA,CAAKC,KAmBV,CAAA,EACH,CAAA;AAAA,sBACA,GAAA,UAAe,SAAA,EAAA,0DAAA,EAA2D,QAAA,EAAA,iBAAA,EAE1E;AAAA,KAAA,EACF,CAAA;AAAMN,IAAAA,CAAAA,MAAAE,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAF,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OA1BNE,EAAAA;AA0BM;AA7BoB,SAAAI,KAAAA,CAAAC,MAAAC,KAAAA,EAAA;AAAA,EAAA,uBAMpB,GAAA,eAES,KAAA,EAAA;AAAA,IAAAC,MAAAA,EAEGD,KAAAA;AAAAA,IAAKE,WAAAA,EACA;AAAA,KAEN,OAAA,EAAA;AAAA,IAAAC,CAAAA,EAAK,CAAC,CAAA,EAAG,GAAA,EAAK,CAAC;AAAA,KACZ,UAAA,EAAA;AAAA,IAAAC,QAAAA,EACAf,iBAAAA;AAAAA,IAAiBgB,MAAAA,EACnBC,QAAAA;AAAAA,IAAQC,WAAAA,EACHvB,MAAKwB,MAAAA,GAAUlB,cAAAA;AAAAA,IAAcmB,OACnCT,KAAAA,GAAQV,cAAAA;AAAAA,IAAcoB,IAAAA,EACvB;AAAA,KAGR,QAAA,kBAAA,GAAA,CAAC,IAAA,EAAA,EAAe,SAAA,EAAA,QAAA,YAClB,CAAA;AAAa;;;;"}
|
|
@@ -15,6 +15,6 @@ export declare const StatusBadge: ({ status }: {
|
|
|
15
15
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
16
16
|
export declare const TimeTillExpiry: ({ deadline, classes, }: {
|
|
17
17
|
deadline: number;
|
|
18
|
-
} & WithClasses<"root">) => import("react/jsx-runtime").JSX.Element
|
|
18
|
+
} & WithClasses<"root">) => import("react/jsx-runtime").JSX.Element;
|
|
19
19
|
export {};
|
|
20
20
|
//# sourceMappingURL=LimitOrderListItem.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LimitOrderListItem.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/LimitOrderItem/LimitOrderListItem.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAuB,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"LimitOrderListItem.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/LimitOrderItem/LimitOrderListItem.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAuB,MAAM,SAAS,CAAC;AAOnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAM1D,eAAO,MAAM,mBAAmB,GAAI,uBAGjC;IACD,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAC;CAC5C,4CAUA,CAAC;AAMF,KAAK,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,KAAK,CAAC;AAE3C,eAAO,MAAM,eAAe,GAAI,2BAI7B,IAAI,CAAC,cAAc,EAAE,OAAO,GAAG,SAAS,CAAC,GAAG;IAC7C,IAAI,EAAE,QAAQ,CAAC;CAChB,4CAUA,CAAC;AAgEF,eAAO,MAAM,IAAI,GAAI,qBAGlB,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,GAAG,WAAW,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,kDAiBxE,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,YAAY;IAAE,MAAM,EAAE,kBAAkB,CAAA;CAAE,4CAkBrE,CAAC;AAuBF,eAAO,MAAM,cAAc,GAAI,wBAG5B;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,WAAW,CAAC,MAAM,CAAC,4CAK5C,CAAC"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
2
|
import { d as distExports } from '../../../_virtual/index.js';
|
|
3
3
|
import { TokenBadge } from '../TokenBadge/TokenBadge.js';
|
|
4
4
|
import { NetworkWithIcon } from '../NetworkWithIcon/NetworkWithIcon.js';
|
|
5
5
|
import { formatTokenAmount } from '../../../lib/utils/formatTokenBalance.js';
|
|
6
6
|
import { calcRate } from '../../../lib/utils/rate.js';
|
|
7
|
-
import { cn, replaceUnderscoresWithSpaces
|
|
7
|
+
import { cn, replaceUnderscoresWithSpaces } from '../../../lib/utils/index.js';
|
|
8
8
|
import { DeltaOrderStatusChecker } from '../../../hooks/swap/prices/delta/orders/utils.js';
|
|
9
|
-
import { getDuration } from '../../../lib/utils/time.js';
|
|
10
9
|
import { useDateNow } from '../../../lib/utils/useDateNow.js';
|
|
10
|
+
import { Duration } from '../Duration/Duration.js';
|
|
11
11
|
|
|
12
12
|
const missingContent = "-";
|
|
13
13
|
const LimitOrdersListItem = (t0) => {
|
|
@@ -424,78 +424,24 @@ const RateAndStatus = (props) => {
|
|
|
424
424
|
return t5;
|
|
425
425
|
};
|
|
426
426
|
const TimeTillExpiry = (t0) => {
|
|
427
|
-
const $ = distExports.c(
|
|
427
|
+
const $ = distExports.c(3);
|
|
428
428
|
const {
|
|
429
429
|
deadline,
|
|
430
430
|
classes
|
|
431
431
|
} = t0;
|
|
432
432
|
const now = useDateNow();
|
|
433
|
+
const timeMs = (deadline - now / 1e3) * 1e3;
|
|
433
434
|
let t1;
|
|
434
|
-
if ($[0] !==
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
unit: "y"
|
|
439
|
-
}, {
|
|
440
|
-
value: duration.asMonths() > 1 ? duration.months() : null,
|
|
441
|
-
unit: "mo"
|
|
442
|
-
}, {
|
|
443
|
-
value: duration.asDays() > 1 ? duration.days() : null,
|
|
444
|
-
unit: "d"
|
|
445
|
-
}, {
|
|
446
|
-
value: duration.asHours() > 1 ? duration.hours() : null,
|
|
447
|
-
unit: "h"
|
|
448
|
-
}, {
|
|
449
|
-
value: duration.asMinutes() > 1 ? duration.minutes() : null,
|
|
450
|
-
unit: "m"
|
|
451
|
-
}].filter(_temp);
|
|
452
|
-
$[0] = deadline;
|
|
453
|
-
$[1] = now;
|
|
435
|
+
if ($[0] !== classes || $[1] !== timeMs) {
|
|
436
|
+
t1 = /* @__PURE__ */ jsx(Duration, { timeMs, classes });
|
|
437
|
+
$[0] = classes;
|
|
438
|
+
$[1] = timeMs;
|
|
454
439
|
$[2] = t1;
|
|
455
440
|
} else {
|
|
456
441
|
t1 = $[2];
|
|
457
442
|
}
|
|
458
|
-
|
|
459
|
-
if (!parts.length) {
|
|
460
|
-
return null;
|
|
461
|
-
}
|
|
462
|
-
const t2 = classes?.root;
|
|
463
|
-
let t3;
|
|
464
|
-
if ($[3] !== t2) {
|
|
465
|
-
t3 = cn("text-xs flex gap-1 items-center dark:text-contrast-7", t2);
|
|
466
|
-
$[3] = t2;
|
|
467
|
-
$[4] = t3;
|
|
468
|
-
} else {
|
|
469
|
-
t3 = $[4];
|
|
470
|
-
}
|
|
471
|
-
let t4;
|
|
472
|
-
if ($[5] !== parts) {
|
|
473
|
-
t4 = parts.map(_temp2);
|
|
474
|
-
$[5] = parts;
|
|
475
|
-
$[6] = t4;
|
|
476
|
-
} else {
|
|
477
|
-
t4 = $[6];
|
|
478
|
-
}
|
|
479
|
-
let t5;
|
|
480
|
-
if ($[7] !== t3 || $[8] !== t4) {
|
|
481
|
-
t5 = /* @__PURE__ */ jsx("div", { className: t3, children: t4 });
|
|
482
|
-
$[7] = t3;
|
|
483
|
-
$[8] = t4;
|
|
484
|
-
$[9] = t5;
|
|
485
|
-
} else {
|
|
486
|
-
t5 = $[9];
|
|
487
|
-
}
|
|
488
|
-
return t5;
|
|
443
|
+
return t1;
|
|
489
444
|
};
|
|
490
|
-
function _temp(part) {
|
|
491
|
-
return isTruthy(part.value);
|
|
492
|
-
}
|
|
493
|
-
function _temp2(part_0, i) {
|
|
494
|
-
return /* @__PURE__ */ jsxs("span", { children: [
|
|
495
|
-
/* @__PURE__ */ jsx("span", { children: part_0.value }),
|
|
496
|
-
/* @__PURE__ */ jsx("span", { children: part_0.unit })
|
|
497
|
-
] }, i);
|
|
498
|
-
}
|
|
499
445
|
|
|
500
446
|
export { LimitOrdersListItem, Rate, StatusBadge, TimeTillExpiry, TradeAndNetwork };
|
|
501
447
|
//# sourceMappingURL=LimitOrderListItem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LimitOrderListItem.js","sources":["../../../../src/components/widget/LimitOrderItem/LimitOrderListItem.tsx"],"sourcesContent":["import { TokenBadge } from \"../TokenBadge/TokenBadge\";\nimport type { LimitOrderItem, LimitOrderItemExtra } from \"./types\";\nimport { NetworkWithIcon } from \"../NetworkWithIcon/NetworkWithIcon\";\nimport { formatTokenAmount } from \"@/lib/utils/formatTokenBalance\";\nimport { calcRate } from \"@/lib/utils/rate\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { cn, isTruthy, replaceUnderscoresWithSpaces } from \"@/lib/utils\";\nimport { DeltaOrderStatusChecker } from \"@/hooks/swap/prices/delta/orders/utils\";\nimport { getDuration } from \"@/lib/utils/time\";\nimport type { WithClasses } from \"@/types/withClasses\";\nimport type { DeltaAuctionStatus } from \"@velora-dex/sdk\";\nimport { useDateNow } from \"@/lib/utils/useDateNow\";\n\nconst missingContent = \"-\";\n\nexport const LimitOrdersListItem = ({\n auction,\n onClick,\n}: {\n auction: LimitOrderItem;\n onClick: (auction: LimitOrderItem) => void;\n}) => {\n return (\n <div\n className={\"bg-white dark:bg-contrast-3 p-4 rounded-sm cursor-pointer\"}\n onClick={() => onClick(auction)}\n >\n <TradeAndNetwork {...auction} />\n <RateAndStatus {...auction} />\n </div>\n );\n};\n\nconst srcTokenBadgeClasses = { logo: \"size-[16px]\", root: \"z-1\" };\nconst destTokenBadgeClasses = { logo: \"size-[16px]\", root: \"-ml-1\" };\nconst networkIconClasses = { root: \"gap-2\", name: \"dark:text-contrast-7\" };\n\ntype ItemType = \"MARKET\" | \"LIMIT\" | \"P2P\";\n\nexport const TradeAndNetwork = ({\n extra,\n type,\n chainId,\n}: Pick<LimitOrderItem, \"extra\" | \"chainId\"> & {\n type: ItemType;\n}) => {\n return (\n <div className=\"flex items-center justify-between pb-4\">\n <Trade {...extra} type={type} />\n <NetworkWithIcon\n networkId={chainId as SupportedChainId}\n classes={networkIconClasses}\n />\n </div>\n );\n};\n\nconst itemTypeToLabel: Record<ItemType, string> = {\n MARKET: \"Swap\",\n LIMIT: \"Limit\",\n P2P: \"OTC\",\n};\n\nconst Trade = ({\n srcToken,\n destToken,\n srcAmountUnit,\n destAmountUnit,\n type,\n}: LimitOrderItemExtra & {\n type: ItemType;\n}) => {\n // @TODO we'll miss a big piece of info if we don't have the tokens\n // consider to fetch them onchain if missing in useQuery(select)\n // or just add more token lists\n if (!srcToken || !destToken || !srcAmountUnit || !destAmountUnit)\n return missingContent;\n\n const formattedSrcAmount = formatTokenAmount(srcAmountUnit);\n const formattedDestAmount = formatTokenAmount(destAmountUnit);\n\n const icons = (\n <div className=\"flex items-center\">\n <TokenBadge\n address={srcToken.address}\n chainId={srcToken.network}\n img={srcToken.img}\n classes={srcTokenBadgeClasses}\n />\n <TokenBadge\n address={destToken.address}\n img={destToken.img}\n chainId={destToken.network}\n classes={destTokenBadgeClasses}\n />\n </div>\n );\n\n const typeAndAmounts = (\n <div className=\"ml-2 flex flex-col\">\n <div className=\"text-xs font-medium text-contrast-5\">\n {itemTypeToLabel[type]}\n </div>\n <div className=\"text-sm font-medium dark:text-contrast-9\">\n {srcToken.symbol} {formattedSrcAmount}\n <span className=\"mx-1\">→</span>\n {destToken.symbol} {formattedDestAmount}\n </div>\n </div>\n );\n\n return (\n <div className=\"flex items-center\">\n {icons}\n {typeAndAmounts}\n </div>\n );\n};\n\nexport const Rate = ({\n extra,\n classes,\n}: Pick<LimitOrderItem, \"extra\"> & WithClasses<\"root\" | \"left\" | \"right\">) => {\n const { srcToken, destToken, srcAmountUnit, destAmountUnit } = extra;\n if (!srcToken || !destToken || !srcAmountUnit || !destAmountUnit)\n return missingContent;\n\n const rateFormatted = calcRate(srcAmountUnit, destAmountUnit)?.rateFormatted;\n if (!rateFormatted) return missingContent;\n\n const left = `${formatTokenAmount(rateFormatted)} ${destToken.symbol}`;\n const right = `per ${srcToken.symbol}`;\n\n return (\n <div className={cn(\"text-xs\", classes?.root)}>\n <span className={classes?.left}>{left}</span>{\" \"}\n <span className={classes?.right}>{right}</span>\n </div>\n );\n};\n\nexport const StatusBadge = ({ status }: { status: DeltaAuctionStatus }) => {\n const success = DeltaOrderStatusChecker.success.has(status);\n const failed = DeltaOrderStatusChecker.failed.has(status);\n const overallPending =\n DeltaOrderStatusChecker.pending.has(status) ||\n DeltaOrderStatusChecker.executing.has(status);\n\n return (\n <div\n className={cn(\"text-[10px] p-0.5 px-2 rounded-lg w-max\", {\n \"text-secondary-shamrock-green-2 bg-[#00976733]\": success,\n \"text-secondary-radical-red-1 bg-[#FF3B301A]\": failed,\n \"text-secondary-orange-peel-1 bg-[#FF950033]\": overallPending,\n })}\n >\n {replaceUnderscoresWithSpaces(status)}\n </div>\n );\n};\n\nconst rateClasses = {\n left: \"dark:text-contrast-7\",\n right: \"text-contrast-5\",\n};\n\nconst RateAndStatus = (props: LimitOrderItem) => {\n const overallPending =\n DeltaOrderStatusChecker.pending.has(props.status) ||\n DeltaOrderStatusChecker.executing.has(props.status);\n\n return (\n <div className=\"flex items-center justify-between\">\n <Rate extra={props.extra} classes={rateClasses} />\n <div className=\"flex items-center gap-1\">\n {overallPending && <TimeTillExpiry deadline={props.order.deadline} />}\n <StatusBadge status={props.status} />\n </div>\n </div>\n );\n};\n\nexport const TimeTillExpiry = ({\n deadline,\n classes,\n}: { deadline: number } & WithClasses<\"root\">) => {\n const now = useDateNow();\n const duration = getDuration((deadline - now / 1000) * 1000);\n\n const parts = [\n { value: duration.asYears() > 1 ? duration.years() : null, unit: \"y\" },\n { value: duration.asMonths() > 1 ? duration.months() : null, unit: \"mo\" },\n { value: duration.asDays() > 1 ? duration.days() : null, unit: \"d\" },\n { value: duration.asHours() > 1 ? duration.hours() : null, unit: \"h\" },\n { value: duration.asMinutes() > 1 ? duration.minutes() : null, unit: \"m\" },\n ].filter((part) => isTruthy(part.value));\n\n if (!parts.length) return null;\n\n return (\n <div\n className={cn(\n \"text-xs flex gap-1 items-center dark:text-contrast-7\",\n classes?.root\n )}\n >\n {parts.map((part, i) => (\n <span key={i}>\n <span>{part.value}</span>\n <span>{part.unit}</span>\n </span>\n ))}\n </div>\n );\n};\n"],"names":["missingContent","LimitOrdersListItem","t0","$","_c","auction","onClick","t1","t2","t3","t4","srcTokenBadgeClasses","logo","root","destTokenBadgeClasses","networkIconClasses","name","TradeAndNetwork","extra","type","chainId","itemTypeToLabel","MARKET","LIMIT","P2P","Trade","srcToken","destToken","srcAmountUnit","destAmountUnit","formatTokenAmount","formattedSrcAmount","formattedDestAmount","address","img","network","t5","icons","t6","t7","t8","Symbol","for","t9","symbol","t10","typeAndAmounts","t11","Rate","classes","bb0","rateFormatted","calcRate","left","right","cn","StatusBadge","status","success","DeltaOrderStatusChecker","has","failed","overallPending","pending","executing","replaceUnderscoresWithSpaces","rateClasses","RateAndStatus","props","order","deadline","TimeTillExpiry","now","useDateNow","duration","getDuration","value","asYears","years","unit","asMonths","months","asDays","days","asHours","hours","asMinutes","minutes","filter","_temp","parts","length","map","_temp2","part","isTruthy","part_0","i"],"mappings":";;;;;;;;;;;AAaA,MAAMA,cAAAA,GAAiB,GAAA;AAEhB,MAAMC,sBAAsBC,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAC,OAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAAJ,EAAAA;AAMnC,EAAA,IAAAK,EAAAA;AAAA,EAAA,IAAAJ,EAAA,CAAA,CAAA,KAAAE,WAAAF,CAAAA,QAAAG,OAAAA,EAAA;AAIcC,IAAAA,EAAAA,GAAAA,MAAMD,QAAQD,OAAO,CAAA;AAACF,IAAAA,CAAAA,MAAAE,OAAAA;AAAAF,IAAAA,CAAAA,MAAAG,OAAAA;AAAAH,IAAAA,CAAAA,MAAAI,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAJ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAK,EAAAA;AAAA,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAN,CAAAA,QAAAE,OAAAA,EAAA;AAE/BG,IAAAA,EAAAA,mBAAA,GAAA,CAAC,eAAA,EAAA,EAAe,GAAKH,OAAAA,EAAO,CAAA;AAC5BI,IAAAA,EAAAA,mBAAA,GAAA,CAAC,aAAA,EAAA,EAAa,GAAKJ,OAAAA,EAAO,CAAA;AAAIF,IAAAA,CAAAA,MAAAE,OAAAA;AAAAF,IAAAA,CAAAA,MAAAK,EAAAA;AAAAL,IAAAA,CAAAA,MAAAM,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAD,IAAAA,EAAAA,GAAAL,EAAA,CAAA,CAAA;AAAAM,IAAAA,EAAAA,GAAAN,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAAP,CAAAA,CAAA,CAAA,CAAA,KAAAI,EAAAA,IAAAJ,CAAAA,QAAAK,EAAAA,IAAAL,CAAAA,CAAA,CAAA,CAAA,KAAAM,EAAAA,EAAA;AALhCC,IAAAA,EAAAA,iCACa,SAAA,EAAA,2DAAA,EACF,SAAAH,EAAAA,EAETC,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,MACAC;AAAAA,KAAAA,EACF,CAAA;AAAMN,IAAAA,CAAAA,MAAAI,EAAAA;AAAAJ,IAAAA,CAAAA,MAAAK,EAAAA;AAAAL,IAAAA,CAAAA,MAAAM,EAAAA;AAAAN,IAAAA,CAAAA,MAAAO,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAP,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OANNO,EAAAA;AAMM;AAIV,MAAMC,oBAAAA,GAAuB;AAAA,EAAEC,IAAAA,EAAM,aAAA;AAAA,EAAeC,IAAAA,EAAM;AAAM,CAAA;AAChE,MAAMC,qBAAAA,GAAwB;AAAA,EAAEF,IAAAA,EAAM,aAAA;AAAA,EAAeC,IAAAA,EAAM;AAAQ,CAAA;AACnE,MAAME,kBAAAA,GAAqB;AAAA,EAAEF,IAAAA,EAAM,OAAA;AAAA,EAASG,IAAAA,EAAM;AAAuB,CAAA;AAIlE,MAAMC,kBAAkBf,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAc,KAAAA;AAAAA,IAAAC,IAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAAlB,EAAAA;AAM/B,EAAA,IAAAK,EAAAA;AAAA,EAAA,IAAAJ,EAAA,CAAA,CAAA,KAAAe,SAAAf,CAAAA,QAAAgB,IAAAA,EAAA;AAGKZ,IAAAA,EAAAA,mBAAA,GAAA,CAAC,KAAA,EAAA,EAAK,GAAKW,KAAAA,EAAaC,IAAAA,EAAI,CAAA;AAAIhB,IAAAA,CAAAA,MAAAe,KAAAA;AAAAf,IAAAA,CAAAA,MAAAgB,IAAAA;AAAAhB,IAAAA,CAAAA,MAAAI,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAJ,EAAA,CAAA,CAAA;AAAA,EAAA;AAEnB,EAAA,MAAAK,EAAAA,GAAAY,OAAAA;AAA2B,EAAA,IAAAX,EAAAA;AAAA,EAAA,IAAAN,CAAAA,QAAAK,EAAAA,EAAA;AADxCC,IAAAA,EAAAA,mBAAA,GAAA,CAAC,eAAA,EAAA,EACY,SAAA,EAAAD,EAAAA,EACFO,SAAAA,kBAAAA,EAAkB,CAAA;AAC3BZ,IAAAA,CAAAA,MAAAK,EAAAA;AAAAL,IAAAA,CAAAA,MAAAM,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAN,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAAP,EAAA,CAAA,CAAA,KAAAI,MAAAJ,CAAAA,QAAAM,EAAAA,EAAA;AALJC,IAAAA,EAAAA,mBAAA,IAAA,CAAA,KAAA,EAAA,EAAe,SAAA,EAAA,wCAAA,EACbH,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,MACAE;AAAAA,KAAAA,EAIF,CAAA;AAAMN,IAAAA,CAAAA,MAAAI,EAAAA;AAAAJ,IAAAA,CAAAA,MAAAM,EAAAA;AAAAN,IAAAA,CAAAA,MAAAO,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAP,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OANNO,EAAAA;AAMM;AAIV,MAAMW,eAAAA,GAA4C;AAAA,EAChDC,MAAAA,EAAQ,MAAA;AAAA,EACRC,KAAAA,EAAO,OAAA;AAAA,EACPC,GAAAA,EAAK;AACP,CAAA;AAEA,MAAMC,QAAQvB,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAsB,QAAAA;AAAAA,IAAAC,SAAAA;AAAAA,IAAAC,aAAAA;AAAAA,IAAAC,cAAAA;AAAAA,IAAAV;AAAAA,GAAA,GAAAjB,EAAAA;AAYb,EAAA,IAAI,CAACwB,QAAAA,IAAD,CAAcC,aAAd,CAA4BC,aAAAA,IAA5B,CAA8CC,cAAAA,EAAc;AAAA,IAAA,OACvD7B,cAAAA;AAAAA,EAAc;AAAC,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAAJ,CAAAA,QAAAyB,aAAAA,EAAA;AAEGrB,IAAAA,EAAAA,GAAAuB,kBAAkBF,aAAa,CAAA;AAACzB,IAAAA,CAAAA,MAAAyB,aAAAA;AAAAzB,IAAAA,CAAAA,MAAAI,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAJ,EAAA,CAAA,CAAA;AAAA,EAAA;AAA3D,EAAA,MAAA4B,kBAAAA,GAA2BxB,EAAAA;AAAiC,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAL,CAAAA,QAAA0B,cAAAA,EAAA;AAChCrB,IAAAA,EAAAA,GAAAsB,kBAAkBD,cAAc,CAAA;AAAC1B,IAAAA,CAAAA,MAAA0B,cAAAA;AAAA1B,IAAAA,CAAAA,MAAAK,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAL,EAAA,CAAA,CAAA;AAAA,EAAA;AAA7D,EAAA,MAAA6B,mBAAAA,GAA4BxB,EAAAA;AAAkC,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAN,CAAAA,CAAA,CAAA,CAAA,KAAAuB,QAAAA,CAAAO,WAAA9B,CAAAA,CAAA,CAAA,CAAA,KAAAuB,QAAAA,CAAAQ,GAAAA,IAAA/B,CAAAA,CAAA,CAAA,CAAA,KAAAuB,SAAAS,OAAAA,EAAA;AAI1D1B,IAAAA,EAAAA,mBAAA,GAAA,CAAC,UAAA,EAAA,EACU,OAAA,EAAAiB,QAAAA,CAAQO,OAAAA,EACR,OAAA,EAAAP,QAAAA,CAAQS,OAAAA,EACZ,GAAA,EAAAT,QAAAA,CAAQQ,GAAAA,EACJvB,OAAAA,EAAAA,oBAAAA,EAAoB,CAAA;AAC7BR,IAAAA,CAAAA,CAAA,CAAA,IAAAuB,QAAAA,CAAAO,OAAAA;AAAA9B,IAAAA,CAAAA,CAAA,CAAA,IAAAuB,QAAAA,CAAAQ,GAAAA;AAAA/B,IAAAA,CAAAA,CAAA,CAAA,IAAAuB,QAAAA,CAAAS,OAAAA;AAAAhC,IAAAA,CAAAA,MAAAM,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAN,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAAP,CAAAA,CAAA,CAAA,CAAA,KAAAwB,SAAAA,CAAAM,WAAA9B,CAAAA,CAAA,CAAA,CAAA,KAAAwB,SAAAA,CAAAO,GAAAA,IAAA/B,CAAAA,CAAA,EAAA,CAAA,KAAAwB,UAAAQ,OAAAA,EAAA;AACFzB,IAAAA,EAAAA,mBAAA,GAAA,CAAC,UAAA,EAAA,EACU,OAAA,EAAAiB,SAAAA,CAASM,OAAAA,EACb,GAAA,EAAAN,SAAAA,CAASO,GAAAA,EACL,OAAA,EAAAP,SAAAA,CAASQ,OAAAA,EACTrB,OAAAA,EAAAA,qBAAAA,EAAqB,CAAA;AAC9BX,IAAAA,CAAAA,CAAA,CAAA,IAAAwB,SAAAA,CAAAM,OAAAA;AAAA9B,IAAAA,CAAAA,CAAA,CAAA,IAAAwB,SAAAA,CAAAO,GAAAA;AAAA/B,IAAAA,CAAAA,CAAA,EAAA,IAAAwB,SAAAA,CAAAQ,OAAAA;AAAAhC,IAAAA,CAAAA,OAAAO,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAP,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAiC,EAAAA;AAAA,EAAA,IAAAjC,EAAA,EAAA,CAAA,KAAAM,MAAAN,CAAAA,SAAAO,EAAAA,EAAA;AAZJ0B,IAAAA,EAAAA,mBAAA,IAAA,CAAA,KAAA,EAAA,EAAe,SAAA,EAAA,mBAAA,EACb3B,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,MAMAC;AAAAA,KAAAA,EAMF,CAAA;AAAMP,IAAAA,CAAAA,OAAAM,EAAAA;AAAAN,IAAAA,CAAAA,OAAAO,EAAAA;AAAAP,IAAAA,CAAAA,OAAAiC,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAjC,EAAA,EAAA,CAAA;AAAA,EAAA;AAdR,EAAA,MAAAkC,KAAAA,GACED,EAAAA;AAmBK,EAAA,MAAAE,EAAAA,GAAAjB,gBAAgBF,IAAI,CAAA;AAAC,EAAA,IAAAoB,EAAAA;AAAA,EAAA,IAAApC,CAAAA,SAAAmC,EAAAA,EAAA;AADxBC,IAAAA,EAAAA,mBAAA,GAAA,CAAA,KAAA,EAAA,EAAe,SAAA,EAAA,qCAAA,EACZD,QAAAA,EAAAA,EAAAA,EACH,CAAA;AAAMnC,IAAAA,CAAAA,OAAAmC,EAAAA;AAAAnC,IAAAA,CAAAA,OAAAoC,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAApC,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAqC,EAAAA;AAAA,EAAA,IAAArC,EAAA,EAAA,CAAA,KAAAsC,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAGJF,IAAAA,EAAAA,mBAAA,GAAA,CAAA,MAAA,EAAA,EAAgB,SAAA,EAAA,MAAA,EAAO,QAAA,EAAA,GAAA,EAAC,CAAA;AAAOrC,IAAAA,CAAAA,OAAAqC,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAArC,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAwC,EAAAA;AAAA,EAAA,IAAAxC,EAAA,EAAA,CAAA,KAAAwB,SAAAA,CAAAiB,MAAAA,IAAAzC,EAAA,EAAA,CAAA,KAAA6B,mBAAAA,IAAA7B,CAAAA,SAAA4B,kBAAAA,IAAA5B,EAAA,EAAA,CAAA,KAAAuB,SAAAkB,MAAAA,EAAA;AAFjCD,IAAAA,EAAAA,mBAAA,IAAA,CAAA,KAAA,EAAA,EAAe,SAAA,EAAA,0CAAA,EACZjB,QAAAA,EAAAA;AAAAA,MAAAA,QAAAA,CAAQkB,MAAAA;AAAAA,MAAQ,GAAA;AAAA,MAAEb,kBAAAA;AAAAA,MACnBS,EAAAA;AAAAA,MACCb,SAAAA,CAASiB,MAAAA;AAAAA,MAAQ,GAAA;AAAA,MAAEZ;AAAAA,KAAAA,EACtB,CAAA;AAAM7B,IAAAA,CAAAA,CAAA,EAAA,IAAAwB,SAAAA,CAAAiB,MAAAA;AAAAzC,IAAAA,CAAAA,OAAA6B,mBAAAA;AAAA7B,IAAAA,CAAAA,OAAA4B,kBAAAA;AAAA5B,IAAAA,CAAAA,CAAA,EAAA,IAAAuB,QAAAA,CAAAkB,MAAAA;AAAAzC,IAAAA,CAAAA,OAAAwC,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAxC,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAA0C,GAAAA;AAAA,EAAA,IAAA1C,EAAA,EAAA,CAAA,KAAAoC,MAAApC,CAAAA,SAAAwC,EAAAA,EAAA;AARRE,IAAAA,GAAAA,mBAAA,IAAA,CAAA,KAAA,EAAA,EAAe,SAAA,EAAA,oBAAA,EACbN,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,MAGAI;AAAAA,KAAAA,EAKF,CAAA;AAAMxC,IAAAA,CAAAA,OAAAoC,EAAAA;AAAApC,IAAAA,CAAAA,OAAAwC,EAAAA;AAAAxC,IAAAA,CAAAA,OAAA0C,GAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,GAAAA,GAAA1C,EAAA,EAAA,CAAA;AAAA,EAAA;AAVR,EAAA,MAAA2C,cAAAA,GACED,GAAAA;AAUA,EAAA,IAAAE,GAAAA;AAAA,EAAA,IAAA5C,EAAA,EAAA,CAAA,KAAAkC,SAAAlC,CAAAA,SAAA2C,cAAAA,EAAA;AAGAC,IAAAA,GAAAA,mBAAA,IAAA,CAAA,KAAA,EAAA,EAAe,SAAA,EAAA,mBAAA,EACZV,QAAAA,EAAAA;AAAAA,MAAAA,KAAAA;AAAAA,MACAS;AAAAA,KAAAA,EACH,CAAA;AAAM3C,IAAAA,CAAAA,OAAAkC,KAAAA;AAAAlC,IAAAA,CAAAA,OAAA2C,cAAAA;AAAA3C,IAAAA,CAAAA,OAAA4C,GAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,GAAAA,GAAA5C,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAHN4C,GAAAA;AAGM,CAAA;AAIH,MAAMC,OAAO9C,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAc,KAAAA;AAAAA,IAAA+B;AAAAA,GAAA,GAAA/C,EAAAA;AAInB,EAAA,MAAA;AAAA,IAAAwB,QAAAA;AAAAA,IAAAC,SAAAA;AAAAA,IAAAC,aAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAA+DX,KAAAA;AAC/D,EAAA,IAAI,CAACQ,QAAAA,IAAD,CAAcC,aAAd,CAA4BC,aAAAA,IAA5B,CAA8CC,cAAAA,EAAc;AAAA,IAAA,OACvD7B,cAAAA;AAAAA,EAAc;AAAC,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAL,EAAA,CAAA,CAAA,KAAA0B,kBAAA1B,CAAAA,QAAAyB,aAAAA,EAAA;AAGG5B,IAAAA,EAAAA,GAAAA,MAAAA,CAAc0C,IAAd1C,6BAAa,CAAA;AAACkD,IAAAA,GAAAA,EAAA;AADzC,MAAA,MAAAC,aAAAA,GAAsBC,QAAAA,CAASxB,aAAAA,EAAeC,cAA6B,CAAA,EAACsB,aAAAA;AAC5E,MAAA,IAAI,CAACA,aAAAA,EAAa;AAASnD,QAAAA,EAAAA,GAAAA,cAAAA;AAAAA,QAAAA,MAAAA,GAAAA;AAAAA,MAAc;AAEzBO,MAAAA,EAAAA,GAAAuB,kBAAkBqB,aAAa,CAAA;AAAA,IAAC;AAAAhD,IAAAA,CAAAA,MAAA0B,cAAAA;AAAA1B,IAAAA,CAAAA,MAAAyB,aAAAA;AAAAzB,IAAAA,CAAAA,MAAAI,EAAAA;AAAAJ,IAAAA,CAAAA,MAAAK,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAD,IAAAA,EAAAA,GAAAJ,EAAA,CAAA,CAAA;AAAAK,IAAAA,EAAAA,GAAAL,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAK,EAAAA,KAAAiC,MAAAA,CAAAC,GAAAA,CAAA,6BAAA,CAAA,EAAA;AAAA,IAAA,OAAAlC,EAAAA;AAAAA,EAAA;AAAhD,EAAA,MAAA6C,IAAAA,GAAa,CAAA,EAAG9C,EAAgC,CAAA,CAAA,EAAIoB,UAASiB,MAAO,CAAA,CAAA;AACpE,EAAA,MAAAU,KAAAA,GAAc,CAAA,IAAA,EAAO5B,QAAAA,CAAQkB,MAAO,CAAA,CAAA;AAGJ,EAAA,MAAAnC,KAAAwC,OAAAA,EAAOpC,IAAAA;AAAM,EAAA,IAAAH,EAAAA;AAAA,EAAA,IAAAP,CAAAA,QAAAM,EAAAA,EAAA;AAA3BC,IAAAA,EAAAA,GAAA6C,EAAAA,CAAG,WAAW9C,EAAa,CAAA;AAACN,IAAAA,CAAAA,MAAAM,EAAAA;AAAAN,IAAAA,CAAAA,MAAAO,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAP,EAAA,CAAA,CAAA;AAAA,EAAA;AACzB,EAAA,MAAAiC,KAAAa,OAAAA,EAAOI,IAAAA;AAAM,EAAA,IAAAf,EAAAA;AAAA,EAAA,IAAAnC,EAAA,CAAA,CAAA,KAAAkD,QAAAlD,CAAAA,QAAAiC,EAAAA,EAAA;AAA9BE,IAAAA,EAAAA,mBAAA,GAAA,CAAA,MAAA,EAAA,EAAiB,SAAA,EAAAF,EAAAA,EAAgBiB,QAAAA,EAAAA,IAAAA,EAAK,CAAA;AAAOlD,IAAAA,CAAAA,MAAAkD,IAAAA;AAAAlD,IAAAA,CAAAA,MAAAiC,EAAAA;AAAAjC,IAAAA,CAAAA,MAAAmC,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAnC,EAAA,CAAA,CAAA;AAAA,EAAA;AAC5B,EAAA,MAAAoC,KAAAU,OAAAA,EAAOK,KAAAA;AAAO,EAAA,IAAAd,EAAAA;AAAA,EAAA,IAAArC,EAAA,CAAA,CAAA,KAAAmD,SAAAnD,CAAAA,SAAAoC,EAAAA,EAAA;AAA/BC,IAAAA,EAAAA,mBAAA,GAAA,CAAA,MAAA,EAAA,EAAiB,SAAA,EAAAD,EAAAA,EAAiBe,QAAAA,EAAAA,KAAAA,EAAM,CAAA;AAAOnD,IAAAA,CAAAA,MAAAmD,KAAAA;AAAAnD,IAAAA,CAAAA,OAAAoC,EAAAA;AAAApC,IAAAA,CAAAA,OAAAqC,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAArC,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAwC,EAAAA;AAAA,EAAA,IAAAxC,CAAAA,CAAA,EAAA,CAAA,KAAAO,EAAAA,IAAAP,CAAAA,SAAAmC,EAAAA,IAAAnC,CAAAA,CAAA,EAAA,CAAA,KAAAqC,EAAAA,EAAA;AAFjDG,IAAAA,EAAAA,iCAAgB,SAAA,EAAAjC,EAAAA,EACd4B,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,MAA8C,GAAA;AAAA,MAC9CE;AAAAA,KAAAA,EACF,CAAA;AAAMrC,IAAAA,CAAAA,OAAAO,EAAAA;AAAAP,IAAAA,CAAAA,OAAAmC,EAAAA;AAAAnC,IAAAA,CAAAA,OAAAqC,EAAAA;AAAArC,IAAAA,CAAAA,OAAAwC,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAxC,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAHNwC,EAAAA;AAGM;AAIH,MAAMa,cAActD,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAqD;AAAAA,GAAA,GAAAvD,EAAAA;AAA0C,EAAA,IAAAK,EAAAA;AAAA,EAAA,IAAAJ,CAAAA,QAAAsD,MAAAA,EAAA;AACpE,IAAA,MAAAC,OAAAA,GAAgBC,uBAAAA,CAAuBD,OAAAA,CAAQE,GAAAA,CAAKH,MAAM,CAAA;AAC1D,IAAA,MAAAI,MAAAA,GAAeF,uBAAAA,CAAuBE,MAAAA,CAAOD,GAAAA,CAAKH,MAAM,CAAA;AACxD,IAAA,MAAAK,cAAAA,GACEH,wBAAuBI,OAAAA,CAAQH,GAAAA,CAAKH,MACQ,CAAA,IAA5CE,uBAAAA,CAAuBK,SAAAA,CAAUJ,GAAAA,CAAKH,MAAM,CAAA;AAI/BlD,IAAAA,EAAAA,GAAAgD,GAAG,yCAAA,EAA2C;AAAA,MAAA,gDAAA,EACLG,OAAAA;AAAAA,MAAO,6CAAA,EACVG,MAAAA;AAAAA,MAAM,6CAAA,EACNC;AAAAA,KAChD,CAAA;AAAC3D,IAAAA,CAAAA,MAAAsD,MAAAA;AAAAtD,IAAAA,CAAAA,MAAAI,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAJ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAK,EAAAA;AAAA,EAAA,IAAAL,CAAAA,QAAAsD,MAAAA,EAAA;AAEDjD,IAAAA,EAAAA,GAAAyD,6BAA6BR,MAAM,CAAA;AAACtD,IAAAA,CAAAA,MAAAsD,MAAAA;AAAAtD,IAAAA,CAAAA,MAAAK,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAL,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAM,EAAAA;AAAA,EAAA,IAAAN,EAAA,CAAA,CAAA,KAAAI,MAAAJ,CAAAA,QAAAK,EAAAA,EAAA;AAPvCC,IAAAA,EAAAA,mBAAA,GAAA,CAAA,KAAA,EAAA,EACa,SAAA,EAAAF,EAAAA,EAMVC,QAAAA,EAAAA,EAAAA,EACH,CAAA;AAAML,IAAAA,CAAAA,MAAAI,EAAAA;AAAAJ,IAAAA,CAAAA,MAAAK,EAAAA;AAAAL,IAAAA,CAAAA,MAAAM,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAN,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OARNM,EAAAA;AAQM;AAIV,MAAMyD,WAAAA,GAAc;AAAA,EAClBb,IAAAA,EAAM,sBAAA;AAAA,EACNC,KAAAA,EAAO;AACT,CAAA;AAEA,MAAMa,gBAAgBC,CAAAA,KAAAA,KAAA;AAAA,EAAA,MAAAjE,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAA,EAAA,IAAAF,EAAAA;AAAA,EAAA,IAAAC,CAAAA,CAAA,CAAA,CAAA,KAAAiE,KAAAA,CAAAX,MAAAA,EAAA;AAElBvD,IAAAA,EAAAA,GAAAyD,uBAAAA,CAAuBI,OAAAA,CAAQH,GAAAA,CAAKQ,KAAAA,CAAKX,MACS,KAAlDE,uBAAAA,CAAuBK,SAAAA,CAAUJ,GAAAA,CAAKQ,KAAAA,CAAKX,MAAO,CAAA;AAACtD,IAAAA,CAAAA,CAAA,CAAA,IAAAiE,KAAAA,CAAAX,MAAAA;AAAAtD,IAAAA,CAAAA,MAAAD,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAC,EAAA,CAAA,CAAA;AAAA,EAAA;AAFrD,EAAA,MAAA2D,cAAAA,GACE5D,EAAAA;AACoD,EAAA,IAAAK,EAAAA;AAAA,EAAA,IAAAJ,CAAAA,CAAA,CAAA,CAAA,KAAAiE,KAAAA,CAAAlD,KAAAA,EAAA;AAIlDX,IAAAA,EAAAA,uBAAC,IAAA,EAAA,EAAY,KAAA,EAAA6D,KAAAA,CAAKlD,KAAAA,EAAiBgD,SAAAA,WAAAA,EAAW,CAAA;AAAI/D,IAAAA,CAAAA,CAAA,CAAA,IAAAiE,KAAAA,CAAAlD,KAAAA;AAAAf,IAAAA,CAAAA,MAAAI,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAJ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAK,EAAAA;AAAA,EAAA,IAAAL,CAAAA,QAAA2D,cAAAA,IAAA3D,EAAA,CAAA,CAAA,KAAAiE,MAAAC,KAAAA,EAAA;AAE/C7D,IAAAA,EAAAA,GAAAsD,kCAAkB,GAAA,CAAC,cAAA,EAAA,EAAyB,QAAA,EAAAM,KAAAA,CAAKC,MAAMC,QAAAA,EAAS,CAAA;AAAInE,IAAAA,CAAAA,MAAA2D,cAAAA;AAAA3D,IAAAA,CAAAA,CAAA,CAAA,IAAAiE,KAAAA,CAAAC,KAAAA;AAAAlE,IAAAA,CAAAA,MAAAK,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAL,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAM,EAAAA;AAAA,EAAA,IAAAN,CAAAA,CAAA,CAAA,CAAA,KAAAiE,KAAAA,CAAAX,MAAAA,EAAA;AACrEhD,IAAAA,EAAAA,mBAAA,GAAA,CAAC,WAAA,EAAA,EAAoB,MAAA,EAAA2D,KAAAA,CAAKX,MAAAA,EAAO,CAAA;AAAItD,IAAAA,CAAAA,CAAA,CAAA,IAAAiE,KAAAA,CAAAX,MAAAA;AAAAtD,IAAAA,CAAAA,MAAAM,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAN,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAAP,EAAA,CAAA,CAAA,KAAAK,MAAAL,CAAAA,SAAAM,EAAAA,EAAA;AAFvCC,IAAAA,EAAAA,mBAAA,IAAA,CAAA,KAAA,EAAA,EAAe,SAAA,EAAA,yBAAA,EACZF,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,MACDC;AAAAA,KAAAA,EACF,CAAA;AAAMN,IAAAA,CAAAA,MAAAK,EAAAA;AAAAL,IAAAA,CAAAA,OAAAM,EAAAA;AAAAN,IAAAA,CAAAA,OAAAO,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAP,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAiC,EAAAA;AAAA,EAAA,IAAAjC,EAAA,EAAA,CAAA,KAAAI,MAAAJ,CAAAA,SAAAO,EAAAA,EAAA;AALR0B,IAAAA,EAAAA,mBAAA,IAAA,CAAA,KAAA,EAAA,EAAe,SAAA,EAAA,mCAAA,EACb7B,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,MACAG;AAAAA,KAAAA,EAIF,CAAA;AAAMP,IAAAA,CAAAA,OAAAI,EAAAA;AAAAJ,IAAAA,CAAAA,OAAAO,EAAAA;AAAAP,IAAAA,CAAAA,OAAAiC,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAjC,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OANNiC,EAAAA;AAMM,CAAA;AAIH,MAAMmC,iBAAiBrE,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAkE,QAAAA;AAAAA,IAAArB;AAAAA,GAAA,GAAA/C,EAAAA;AAI7B,EAAA,MAAAsE,MAAYC,UAAAA,EAAW;AAAE,EAAA,IAAAlE,EAAAA;AAAA,EAAA,IAAAJ,EAAA,CAAA,CAAA,KAAAmE,YAAAnE,CAAAA,QAAAqE,GAAAA,EAAA;AACzB,IAAA,MAAAE,QAAAA,GAAiBC,WAAAA,CAAAA,CAAaL,QAAAA,GAAWE,GAAAA,GAAM,OAAQ,GAAI,CAAA;AAE7CjE,IAAAA,EAAAA,GAAA,CACZ;AAAA,MAAAqE,OAASF,QAAAA,CAAQG,OAAAA,KAAa,CAAA,GAAIH,QAAAA,CAAQI,OAAc,GAA/C,IAAA;AAAA,MAAgDC,IAAAA,EAAQ;AAAA,KAAI,EACrE;AAAA,MAAAH,OAASF,QAAAA,CAAQM,QAAAA,KAAc,CAAA,GAAIN,QAAAA,CAAQO,QAAe,GAAjD,IAAA;AAAA,MAAkDF,IAAAA,EAAQ;AAAA,KAAK,EACxE;AAAA,MAAAH,OAASF,QAAAA,CAAQQ,MAAAA,KAAY,CAAA,GAAIR,QAAAA,CAAQS,MAAa,GAA7C,IAAA;AAAA,MAA8CJ,IAAAA,EAAQ;AAAA,KAAI,EACnE;AAAA,MAAAH,OAASF,QAAAA,CAAQU,OAAAA,KAAa,CAAA,GAAIV,QAAAA,CAAQW,OAAc,GAA/C,IAAA;AAAA,MAAgDN,IAAAA,EAAQ;AAAA,KAAI,EACrE;AAAA,MAAAH,OAASF,QAAAA,CAAQY,SAAAA,KAAe,CAAA,GAAIZ,QAAAA,CAAQa,SAAgB,GAAnD,IAAA;AAAA,MAAoDR,IAAAA,EAAQ;AAAA,KAAK,CAAA,CAC3ES,MAAAA,CAAQC,KAA8B,CAAA;AAACtF,IAAAA,CAAAA,MAAAmE,QAAAA;AAAAnE,IAAAA,CAAAA,MAAAqE,GAAAA;AAAArE,IAAAA,CAAAA,MAAAI,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAJ,EAAA,CAAA,CAAA;AAAA,EAAA;AANxC,EAAA,MAAAuF,KAAAA,GAAcnF,EAAAA;AAQd,EAAA,IAAI,CAACmF,MAAKC,MAAAA,EAAO;AAAA,IAAA,OAAS,IAAA;AAAA,EAAI;AAMxB,EAAA,MAAAnF,KAAAyC,OAAAA,EAAOpC,IAAAA;AAAM,EAAA,IAAAJ,EAAAA;AAAA,EAAA,IAAAN,CAAAA,QAAAK,EAAAA,EAAA;AAFJC,IAAAA,EAAAA,GAAA8C,EAAAA,CACT,wDACA/C,EACF,CAAA;AAACL,IAAAA,CAAAA,MAAAK,EAAAA;AAAAL,IAAAA,CAAAA,MAAAM,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAN,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAAP,CAAAA,QAAAuF,KAAAA,EAAA;AAEAhF,IAAAA,EAAAA,GAAAgF,KAAAA,CAAKE,IAAKC,MAKV,CAAA;AAAC1F,IAAAA,CAAAA,MAAAuF,KAAAA;AAAAvF,IAAAA,CAAAA,MAAAO,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAP,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAiC,EAAAA;AAAA,EAAA,IAAAjC,EAAA,CAAA,CAAA,KAAAM,MAAAN,CAAAA,QAAAO,EAAAA,EAAA;AAXJ0B,IAAAA,EAAAA,mBAAA,GAAA,CAAA,KAAA,EAAA,EACa,SAAA,EAAA3B,EAAAA,EAKVC,QAAAA,EAAAA,EAAAA,EAMH,CAAA;AAAMP,IAAAA,CAAAA,MAAAM,EAAAA;AAAAN,IAAAA,CAAAA,MAAAO,EAAAA;AAAAP,IAAAA,CAAAA,MAAAiC,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAjC,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAZNiC,EAAAA;AAYM;AA9BoB,SAAAqD,MAAAK,IAAAA,EAAA;AAAA,EAAA,OAaTC,QAAAA,CAASD,KAAIlB,KAAM,CAAA;AAAC;AAbX,SAAAiB,MAAAA,CAAAG,QAAAC,CAAAA,EAAA;AAAA,EAAA,4BAyBtB,MAAA,EAAA,EACE,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAA,MAAA,EAAA,EAAOH,iBAAIlB,KAAAA,EAAO,CAAA;AAAA,oBAClB,GAAA,CAAA,MAAA,EAAA,EAAOkB,QAAAA,EAAAA,MAAAA,CAAIf,IAAAA,EAAM;AAAA,GAAA,EAAA,EAFRkB,CAGX,CAAA;AAAO;;;;"}
|
|
1
|
+
{"version":3,"file":"LimitOrderListItem.js","sources":["../../../../src/components/widget/LimitOrderItem/LimitOrderListItem.tsx"],"sourcesContent":["import { TokenBadge } from \"../TokenBadge/TokenBadge\";\nimport type { LimitOrderItem, LimitOrderItemExtra } from \"./types\";\nimport { NetworkWithIcon } from \"../NetworkWithIcon/NetworkWithIcon\";\nimport { formatTokenAmount } from \"@/lib/utils/formatTokenBalance\";\nimport { calcRate } from \"@/lib/utils/rate\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { cn, replaceUnderscoresWithSpaces } from \"@/lib/utils\";\nimport { DeltaOrderStatusChecker } from \"@/hooks/swap/prices/delta/orders/utils\";\nimport type { WithClasses } from \"@/types/withClasses\";\nimport type { DeltaAuctionStatus } from \"@velora-dex/sdk\";\nimport { useDateNow } from \"@/lib/utils/useDateNow\";\nimport { Duration } from \"../Duration/Duration\";\n\nconst missingContent = \"-\";\n\nexport const LimitOrdersListItem = ({\n auction,\n onClick,\n}: {\n auction: LimitOrderItem;\n onClick: (auction: LimitOrderItem) => void;\n}) => {\n return (\n <div\n className={\"bg-white dark:bg-contrast-3 p-4 rounded-sm cursor-pointer\"}\n onClick={() => onClick(auction)}\n >\n <TradeAndNetwork {...auction} />\n <RateAndStatus {...auction} />\n </div>\n );\n};\n\nconst srcTokenBadgeClasses = { logo: \"size-[16px]\", root: \"z-1\" };\nconst destTokenBadgeClasses = { logo: \"size-[16px]\", root: \"-ml-1\" };\nconst networkIconClasses = { root: \"gap-2\", name: \"dark:text-contrast-7\" };\n\ntype ItemType = \"MARKET\" | \"LIMIT\" | \"P2P\";\n\nexport const TradeAndNetwork = ({\n extra,\n type,\n chainId,\n}: Pick<LimitOrderItem, \"extra\" | \"chainId\"> & {\n type: ItemType;\n}) => {\n return (\n <div className=\"flex items-center justify-between pb-4\">\n <Trade {...extra} type={type} />\n <NetworkWithIcon\n networkId={chainId as SupportedChainId}\n classes={networkIconClasses}\n />\n </div>\n );\n};\n\nconst itemTypeToLabel: Record<ItemType, string> = {\n MARKET: \"Swap\",\n LIMIT: \"Limit\",\n P2P: \"OTC\",\n};\n\nconst Trade = ({\n srcToken,\n destToken,\n srcAmountUnit,\n destAmountUnit,\n type,\n}: LimitOrderItemExtra & {\n type: ItemType;\n}) => {\n // @TODO we'll miss a big piece of info if we don't have the tokens\n // consider to fetch them onchain if missing in useQuery(select)\n // or just add more token lists\n if (!srcToken || !destToken || !srcAmountUnit || !destAmountUnit)\n return missingContent;\n\n const formattedSrcAmount = formatTokenAmount(srcAmountUnit);\n const formattedDestAmount = formatTokenAmount(destAmountUnit);\n\n const icons = (\n <div className=\"flex items-center\">\n <TokenBadge\n address={srcToken.address}\n chainId={srcToken.network}\n img={srcToken.img}\n classes={srcTokenBadgeClasses}\n />\n <TokenBadge\n address={destToken.address}\n img={destToken.img}\n chainId={destToken.network}\n classes={destTokenBadgeClasses}\n />\n </div>\n );\n\n const typeAndAmounts = (\n <div className=\"ml-2 flex flex-col\">\n <div className=\"text-xs font-medium text-contrast-5\">\n {itemTypeToLabel[type]}\n </div>\n <div className=\"text-sm font-medium dark:text-contrast-9\">\n {srcToken.symbol} {formattedSrcAmount}\n <span className=\"mx-1\">→</span>\n {destToken.symbol} {formattedDestAmount}\n </div>\n </div>\n );\n\n return (\n <div className=\"flex items-center\">\n {icons}\n {typeAndAmounts}\n </div>\n );\n};\n\nexport const Rate = ({\n extra,\n classes,\n}: Pick<LimitOrderItem, \"extra\"> & WithClasses<\"root\" | \"left\" | \"right\">) => {\n const { srcToken, destToken, srcAmountUnit, destAmountUnit } = extra;\n if (!srcToken || !destToken || !srcAmountUnit || !destAmountUnit)\n return missingContent;\n\n const rateFormatted = calcRate(srcAmountUnit, destAmountUnit)?.rateFormatted;\n if (!rateFormatted) return missingContent;\n\n const left = `${formatTokenAmount(rateFormatted)} ${destToken.symbol}`;\n const right = `per ${srcToken.symbol}`;\n\n return (\n <div className={cn(\"text-xs\", classes?.root)}>\n <span className={classes?.left}>{left}</span>{\" \"}\n <span className={classes?.right}>{right}</span>\n </div>\n );\n};\n\nexport const StatusBadge = ({ status }: { status: DeltaAuctionStatus }) => {\n const success = DeltaOrderStatusChecker.success.has(status);\n const failed = DeltaOrderStatusChecker.failed.has(status);\n const overallPending =\n DeltaOrderStatusChecker.pending.has(status) ||\n DeltaOrderStatusChecker.executing.has(status);\n\n return (\n <div\n className={cn(\"text-[10px] p-0.5 px-2 rounded-lg w-max\", {\n \"text-secondary-shamrock-green-2 bg-[#00976733]\": success,\n \"text-secondary-radical-red-1 bg-[#FF3B301A]\": failed,\n \"text-secondary-orange-peel-1 bg-[#FF950033]\": overallPending,\n })}\n >\n {replaceUnderscoresWithSpaces(status)}\n </div>\n );\n};\n\nconst rateClasses = {\n left: \"dark:text-contrast-7\",\n right: \"text-contrast-5\",\n};\n\nconst RateAndStatus = (props: LimitOrderItem) => {\n const overallPending =\n DeltaOrderStatusChecker.pending.has(props.status) ||\n DeltaOrderStatusChecker.executing.has(props.status);\n\n return (\n <div className=\"flex items-center justify-between\">\n <Rate extra={props.extra} classes={rateClasses} />\n <div className=\"flex items-center gap-1\">\n {overallPending && <TimeTillExpiry deadline={props.order.deadline} />}\n <StatusBadge status={props.status} />\n </div>\n </div>\n );\n};\n\nexport const TimeTillExpiry = ({\n deadline,\n classes,\n}: { deadline: number } & WithClasses<\"root\">) => {\n const now = useDateNow();\n const timeMs = (deadline - now / 1000) * 1000;\n\n return <Duration timeMs={timeMs} classes={classes} />;\n};\n"],"names":["missingContent","LimitOrdersListItem","t0","$","_c","auction","onClick","t1","t2","t3","t4","srcTokenBadgeClasses","logo","root","destTokenBadgeClasses","networkIconClasses","name","TradeAndNetwork","extra","type","chainId","itemTypeToLabel","MARKET","LIMIT","P2P","Trade","srcToken","destToken","srcAmountUnit","destAmountUnit","formatTokenAmount","formattedSrcAmount","formattedDestAmount","address","img","network","t5","icons","t6","t7","t8","Symbol","for","t9","symbol","t10","typeAndAmounts","t11","Rate","classes","bb0","rateFormatted","calcRate","left","right","cn","StatusBadge","status","success","DeltaOrderStatusChecker","has","failed","overallPending","pending","executing","replaceUnderscoresWithSpaces","rateClasses","RateAndStatus","props","order","deadline","TimeTillExpiry","now","useDateNow","timeMs"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/widget/OrderExpiryInput/index.tsx"],"sourcesContent":["import { UnstyledInput } from \"@/components/ui/input\";\nimport { NumericFormat, type NumericFormatProps } from \"react-number-format\";\nimport { DropdownWithItems } from \"../Dropdown/DropdownWithItems\";\nimport type { DropdownItem, DropdownWithItemsProps } from \"../Dropdown/types\";\nimport { ChevronIcon } from \"../Icon/ChevronIcon\";\nimport { jotaiStore, useAtom } from \"@/core/store\";\nimport {\n timeUnitAtom as limitTimeUnitAtom,\n type TimeUnit,\n type TimeUnitObject,\n} from \"@/core/limit/state/deadlineAtom\";\nimport { timeUnitAtom as otcTimeUnitAtom } from \"@/core/otc/state/deadlineAtom\";\nimport {\n minTimeUnit,\n neverTimeUnit,\n timeUnits,\n} from \"@/core/limit/state/constants\";\nimport { useEffect, useState } from \"react\";\n\ntype TimeUnitsDropdownProps = {\n expiryTimeValue: number;\n selectedTimeUnit: TimeUnit;\n onSelect: (timeUnit: TimeUnitObject) => void;\n classes?: DropdownWithItemsProps[\"classes\"];\n type: OrderExpiryInputProps[\"type\"];\n};\n\nconst TimeUnitsDropdown: React.FC<TimeUnitsDropdownProps> = ({\n expiryTimeValue,\n selectedTimeUnit,\n onSelect,\n classes,\n type,\n}) => {\n const isLimit = type === \"limit\";\n const specificTimeUnits = isLimit\n ? timeUnits.filter((item) => item.label !== \"never\")\n : timeUnits; // OTC can have 0 deadline\n\n const items = specificTimeUnits.map<DropdownItem>((item) => ({\n label: item.label,\n onSelect: () => {\n onSelect(item);\n },\n className: \"capitalize\",\n selected: item.label === selectedTimeUnit,\n }));\n\n const label =\n expiryTimeValue > 1 || selectedTimeUnit === neverTimeUnit.label\n ? selectedTimeUnit\n : selectedTimeUnit.slice(0, -1); // \"days\" -> \"day\"\n\n const menuTrigger = (\n <div className=\"flex justify-between items-center gap-1.5 text-contrast-3 dark:text-contrast-7 text-sm cursor-pointer\">\n <span className=\"capitalize\">{label}</span>\n <ChevronIcon width={12} height={12} className=\"pt-[2px]\" />\n </div>\n );\n\n return (\n <DropdownWithItems\n items={items}\n menuTrigger={menuTrigger}\n classes={classes}\n align=\"end\"\n />\n );\n};\n\nconst TimeUnitInput = ({ type }: OrderExpiryInputProps) => {\n const isLimit = type === \"limit\";\n const subscribedAtom = isLimit ? limitTimeUnitAtom : otcTimeUnitAtom;\n const [timeUnitObject, setTimeUnitObject] = useAtom(subscribedAtom);\n\n const onValueChange: NumericFormatProps[\"onValueChange\"] = (\n { floatValue },\n sourceInfo,\n ) => {\n // source=\"event\" when changed by user input\n // source=\"prop\" when changed by prop update\n // do not respond to external value changes (e.g. when setting orderDeadline from inputProps)\n if (sourceInfo.source === \"prop\") return;\n\n setValue(floatValue ?? 0);\n\n if (floatValue === neverTimeUnit.value && !isLimit) {\n setTimeUnitObject(neverTimeUnit);\n } else if (floatValue !== undefined) {\n setTimeUnitObject({\n label: timeUnitObject.label,\n value: floatValue,\n });\n } else {\n setTimeUnitObject(minTimeUnit);\n }\n };\n\n // Use localValue to reflect user input immediately, even if it's temporarily invalid (e.g., empty or below minimum).\n // The atom enforces validation (e.g., minimum expiry for limit), but the input field doesn't update if the atom's value doesn't change.\n // This allows the user to see what they type, even if the atom silently corrects the value (e.g., always setting 10min for limit orders).\n // And at the same time, onBlur resets the input field to the atom's value to ensure consistency.\n const [value, setValue] = useState(timeUnitObject.value);\n // Sync local value when atom value changes (e.g., from inputProps)\n useEffect(() => {\n return jotaiStore.sub(subscribedAtom, () => {\n setValue(jotaiStore.get(subscribedAtom).value);\n });\n }, [subscribedAtom]);\n\n return (\n <div className=\"flex justify-between items-center flex-1\">\n {timeUnitObject.label !== neverTimeUnit.label && (\n <NumericFormat\n className=\"min-w-0 w-full text-lg font-geist-mono text-contrast-3 dark:text-contrast-8\"\n placeholder=\"0\"\n value={value}\n onValueChange={onValueChange}\n decimalScale={0}\n allowNegative={false}\n allowLeadingZeros={false}\n customInput={UnstyledInput}\n thousandSeparator\n onBlur={() => {\n setValue(timeUnitObject.value);\n }}\n />\n )}\n <TimeUnitsDropdown\n selectedTimeUnit={timeUnitObject.label}\n onSelect={setTimeUnitObject}\n expiryTimeValue={value}\n classes={{\n trigger: \"w-full min-h-[28px]\",\n }}\n type={type}\n />\n </div>\n );\n};\n\ntype OrderExpiryInputProps = {\n type: \"limit\" | \"otc\";\n};\n\nexport const OrderExpiryInput = (props: OrderExpiryInputProps) => {\n return (\n <div className=\"flex flex-col gap-[8px] p-4 border-1 rounded-[12px] border-transparent transition-all focus-within:border-primary-azul-1 bg-contrast-8 dark:bg-contrast-2\">\n <div className=\"flex items-center justify-between text-xs text-contrast-3 dark:text-contrast-7\">\n <span>Order Expiry</span>\n </div>\n <div className=\"flex items-center justify-between gap-1.5\">\n <TimeUnitInput {...props} />\n </div>\n </div>\n );\n};\n"],"names":["TimeUnitsDropdown","t0","$","_c","expiryTimeValue","selectedTimeUnit","onSelect","classes","type","isLimit","t1","specificTimeUnits","timeUnits","filter","_temp","t2","item_0","label","item","className","selected","map","items","neverTimeUnit","slice","t3","t4","Symbol","for","t5","menuTrigger","t6","TimeUnitInput","subscribedAtom","limitTimeUnitAtom","otcTimeUnitAtom","timeUnitObject","setTimeUnitObject","useAtom","onValueChange","sourceInfo","floatValue","source","setValue","value","undefined","minTimeUnit","useState","jotaiStore","sub","get","useEffect","UnstyledInput","trigger","t7","t8","OrderExpiryInput","props"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/components/widget/OrderExpiryInput/index.tsx"],"sourcesContent":["import { UnstyledInput } from \"@/components/ui/input\";\nimport { NumericFormat, type NumericFormatProps } from \"react-number-format\";\nimport { DropdownWithItems } from \"../Dropdown/DropdownWithItems\";\nimport type { DropdownItem, DropdownWithItemsProps } from \"../Dropdown/types\";\nimport { ChevronIcon } from \"../Icon/ChevronIcon\";\nimport { jotaiStore, useAtom } from \"@/core/store\";\nimport {\n timeUnitAtom as limitTimeUnitAtom,\n type TimeUnit,\n type TimeUnitObject,\n} from \"@/core/limit/state/deadlineAtom\";\nimport { timeUnitAtom as otcTimeUnitAtom } from \"@/core/otc/state/deadlineAtom\";\nimport {\n minTimeUnit,\n neverTimeUnit,\n timeUnits,\n} from \"@/core/limit/state/constants\";\nimport { useEffect, useState } from \"react\";\n\ntype TimeUnitsDropdownProps = {\n expiryTimeValue: number;\n selectedTimeUnit: TimeUnit;\n onSelect: (timeUnit: TimeUnitObject) => void;\n classes?: DropdownWithItemsProps[\"classes\"];\n type: OrderExpiryInputProps[\"type\"];\n};\n\nconst TimeUnitsDropdown: React.FC<TimeUnitsDropdownProps> = ({\n expiryTimeValue,\n selectedTimeUnit,\n onSelect,\n classes,\n type,\n}) => {\n const isLimit = type === \"limit\";\n const specificTimeUnits = isLimit\n ? timeUnits.filter((item) => item.label !== \"never\")\n : timeUnits; // OTC can have 0 deadline\n\n const items = specificTimeUnits.map<DropdownItem>((item) => ({\n label: item.label,\n onSelect: () => {\n onSelect(item);\n },\n className: \"capitalize\",\n selected: item.label === selectedTimeUnit,\n }));\n\n const label =\n expiryTimeValue > 1 || selectedTimeUnit === neverTimeUnit.label\n ? selectedTimeUnit\n : selectedTimeUnit.slice(0, -1); // \"days\" -> \"day\"\n\n const menuTrigger = (\n <div className=\"flex justify-between items-center gap-1.5 text-contrast-3 dark:text-contrast-7 text-sm cursor-pointer\">\n <span className=\"capitalize\">{label}</span>\n <ChevronIcon width={12} height={12} className=\"pt-[2px]\" />\n </div>\n );\n\n return (\n <DropdownWithItems\n items={items}\n menuTrigger={menuTrigger}\n classes={classes}\n align=\"end\"\n />\n );\n};\n\nconst TimeUnitInput = ({ type }: OrderExpiryInputProps) => {\n const isLimit = type === \"limit\";\n const subscribedAtom = isLimit ? limitTimeUnitAtom : otcTimeUnitAtom;\n const [timeUnitObject, setTimeUnitObject] = useAtom(subscribedAtom);\n\n const onValueChange: NumericFormatProps[\"onValueChange\"] = (\n { floatValue },\n sourceInfo\n ) => {\n // source=\"event\" when changed by user input\n // source=\"prop\" when changed by prop update\n // do not respond to external value changes (e.g. when setting orderDeadline from inputProps)\n if (sourceInfo.source === \"prop\") return;\n\n setValue(floatValue ?? 0);\n\n if (floatValue === neverTimeUnit.value && !isLimit) {\n setTimeUnitObject(neverTimeUnit);\n } else if (floatValue !== undefined) {\n setTimeUnitObject({\n label: timeUnitObject.label,\n value: floatValue,\n });\n } else {\n setTimeUnitObject(minTimeUnit);\n }\n };\n\n // Use localValue to reflect user input immediately, even if it's temporarily invalid (e.g., empty or below minimum).\n // The atom enforces validation (e.g., minimum expiry for limit), but the input field doesn't update if the atom's value doesn't change.\n // This allows the user to see what they type, even if the atom silently corrects the value (e.g., always setting 10min for limit orders).\n // And at the same time, onBlur resets the input field to the atom's value to ensure consistency.\n const [value, setValue] = useState(timeUnitObject.value);\n // Sync local value when atom value changes (e.g., from inputProps)\n useEffect(() => {\n return jotaiStore.sub(subscribedAtom, () => {\n setValue(jotaiStore.get(subscribedAtom).value);\n });\n }, [subscribedAtom]);\n\n return (\n <div className=\"flex justify-between items-center flex-1\">\n {timeUnitObject.label !== neverTimeUnit.label && (\n <NumericFormat\n className=\"min-w-0 w-full text-lg font-geist-mono text-contrast-3 dark:text-contrast-8\"\n placeholder=\"0\"\n value={value}\n onValueChange={onValueChange}\n decimalScale={0}\n allowNegative={false}\n allowLeadingZeros={false}\n customInput={UnstyledInput}\n thousandSeparator\n onBlur={() => {\n setValue(timeUnitObject.value);\n }}\n />\n )}\n <TimeUnitsDropdown\n selectedTimeUnit={timeUnitObject.label}\n onSelect={setTimeUnitObject}\n expiryTimeValue={value}\n classes={{\n trigger: \"w-full min-h-[28px]\",\n }}\n type={type}\n />\n </div>\n );\n};\n\ntype OrderExpiryInputProps = {\n type: \"limit\" | \"otc\";\n};\n\nexport const OrderExpiryInput = (props: OrderExpiryInputProps) => {\n return (\n <div className=\"flex flex-col gap-[8px] p-4 border-1 rounded-[12px] border-transparent transition-all focus-within:border-primary-azul-1 bg-contrast-8 dark:bg-contrast-2\">\n <div className=\"flex items-center justify-between text-xs text-contrast-3 dark:text-contrast-7\">\n <span>Order Expiry</span>\n </div>\n <div className=\"flex items-center justify-between gap-1.5\">\n <TimeUnitInput {...props} />\n </div>\n </div>\n );\n};\n"],"names":["TimeUnitsDropdown","t0","$","_c","expiryTimeValue","selectedTimeUnit","onSelect","classes","type","isLimit","t1","specificTimeUnits","timeUnits","filter","_temp","t2","item_0","label","item","className","selected","map","items","neverTimeUnit","slice","t3","t4","Symbol","for","t5","menuTrigger","t6","TimeUnitInput","subscribedAtom","limitTimeUnitAtom","otcTimeUnitAtom","timeUnitObject","setTimeUnitObject","useAtom","onValueChange","sourceInfo","floatValue","source","setValue","value","undefined","minTimeUnit","useState","jotaiStore","sub","get","useEffect","UnstyledInput","trigger","t7","t8","OrderExpiryInput","props"],"mappings":"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"}
|