@velora-dex/widget 0.4.9-dev.3 → 0.4.10
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/components/ui/accordion.js +1 -1
- package/dist/components/ui/accordion.js.map +1 -1
- package/dist/components/widget/AppHeader/AppHeader.d.ts.map +1 -1
- package/dist/components/widget/AppHeader/AppHeader.js +66 -93
- package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
- package/dist/components/widget/Details/DetailWithValueList.js +1 -1
- package/dist/components/widget/Details/DetailWithValueList.js.map +1 -1
- package/dist/components/widget/Drawer/state/useDrawerControls.d.ts +0 -1
- package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
- package/dist/components/widget/Drawer/state/useDrawerControls.js +2 -5
- package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js +3 -3
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js.map +1 -1
- package/dist/components/widget/TradeParameters/TradeParameters.d.ts +1 -3
- package/dist/components/widget/TradeParameters/TradeParameters.d.ts.map +1 -1
- package/dist/components/widget/TradeParameters/TradeParameters.js +77 -131
- 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 +7 -15
- package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js.map +1 -1
- package/dist/components/widget/TradeParameters/state/resetParamsAtom.d.ts.map +1 -1
- package/dist/components/widget/TradeParameters/useTempTradeParameters.d.ts +0 -2
- package/dist/components/widget/TradeParameters/useTempTradeParameters.d.ts.map +1 -1
- package/dist/components/widget/TradeParameters/useTempTradeParameters.js +82 -108
- package/dist/components/widget/TradeParameters/useTempTradeParameters.js.map +1 -1
- package/dist/components/widget/Warning/Warning.d.ts +2 -4
- package/dist/components/widget/Warning/Warning.d.ts.map +1 -1
- package/dist/components/widget/Warning/Warning.js +31 -41
- package/dist/components/widget/Warning/Warning.js.map +1 -1
- package/dist/components/widget/YouGet/YouGet.d.ts.map +1 -1
- package/dist/components/widget/YouGet/YouGet.js +46 -56
- package/dist/components/widget/YouGet/YouGet.js.map +1 -1
- package/dist/configurator/components/AllowNoUsdPricesSwitcher.d.ts +3 -3
- package/dist/configurator/components/AllowNoUsdPricesSwitcher.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/Warnings.d.ts.map +1 -1
- package/dist/core/Warnings.js +12 -38
- package/dist/core/Warnings.js.map +1 -1
- package/dist/core/index.js +5 -5
- package/dist/core/index.js.map +1 -1
- package/dist/core/state/configActionsAtom.js +2 -2
- package/dist/core/state/configActionsAtom.js.map +1 -1
- package/dist/core/state/configAtom.d.ts +5 -5
- package/dist/core/state/configAtom.d.ts.map +1 -1
- package/dist/core/state/configAtom.js +1 -1
- package/dist/core/state/configAtom.js.map +1 -1
- package/dist/core/swapDetails/priceImpact.d.ts +0 -1
- package/dist/core/swapDetails/priceImpact.d.ts.map +1 -1
- package/dist/core/swapDetails/priceImpact.js +3 -4
- package/dist/core/swapDetails/priceImpact.js.map +1 -1
- package/dist/core/swapDetails/useIsPriceImpactUnavailable.d.ts +2 -0
- package/dist/core/swapDetails/useIsPriceImpactUnavailable.d.ts.map +1 -0
- package/dist/core/swapDetails/useIsPriceImpactUnavailable.js +40 -0
- package/dist/core/swapDetails/useIsPriceImpactUnavailable.js.map +1 -0
- package/dist/core/swapDetails/useSwapDetailsListProps.d.ts.map +1 -1
- package/dist/core/swapDetails/useSwapDetailsListProps.js +5 -7
- package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
- package/dist/core/types.d.ts +2 -2
- package/dist/core/types.d.ts.map +1 -1
- package/dist/events/getters/settings.d.ts.map +1 -1
- package/dist/events/getters/settings.js +0 -3
- package/dist/events/getters/settings.js.map +1 -1
- package/dist/events/types/common.d.ts +0 -1
- package/dist/events/types/common.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts +0 -1
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js +2 -4
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.js +2 -4
- package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.js +2 -4
- package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js +17 -4
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/utils.d.ts +2 -2
- package/dist/hooks/swap/prices/delta/mutations/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/utils.js +12 -5
- package/dist/hooks/swap/prices/delta/mutations/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/types.d.ts +1 -1
- package/dist/hooks/swap/prices/delta/orders/types.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/unposted/const.d.ts +5 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/const.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/const.js +8 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/const.js.map +1 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/effect.d.ts +2 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/effect.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/effect.js +28 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/effect.js.map +1 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/index.d.ts +8 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/index.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/index.js +34 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/index.js.map +1 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/storage.d.ts +8 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/storage.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/storage.js +47 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/storage.js.map +1 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/types.d.ts +16 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/types.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts +3 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.js +103 -0
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.js.map +1 -0
- package/dist/hooks/swap/prices/delta/orders/utils.d.ts +7 -0
- package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/utils.js +10 -4
- package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/errors.d.ts +0 -2
- package/dist/hooks/swap/prices/delta/queries/errors.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/errors.js +1 -9
- package/dist/hooks/swap/prices/delta/queries/errors.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts +9 -4
- package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js +19 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +0 -2
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +2 -4
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
- package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts +0 -1
- package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts.map +1 -1
- package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js +2 -3
- package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
- package/dist/hooks/swap/prices/usePricesParams.d.ts +1 -1
- package/dist/hooks/swap/prices/usePricesParams.d.ts.map +1 -1
- package/dist/hooks/swap/prices/usePricesParams.js +33 -31
- package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.d.ts +0 -3
- package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.js +58 -67
- package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js +17 -9
- package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js +21 -35
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +0 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +1 -0
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketFlow.js +0 -1
- package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
- package/dist/hooks/tokens/balances/useMultichainTokenBalances.d.ts.map +1 -1
- package/dist/hooks/tokens/balances/useMultichainTokenBalances.js +1 -1
- package/dist/hooks/tokens/balances/useMultichainTokenBalances.js.map +1 -1
- package/dist/hooks/useSDK.js +2 -34
- package/dist/hooks/useSDK.js.map +1 -1
- package/dist/styles.css +3 -21
- package/dist/transactions/state/transactionsAtom.d.ts +2 -1
- package/dist/transactions/state/transactionsAtom.d.ts.map +1 -1
- package/dist/transactions/state/transactionsAtom.js +6 -2
- package/dist/transactions/state/transactionsAtom.js.map +1 -1
- package/dist/transactions/types.d.ts +1 -0
- package/dist/transactions/types.d.ts.map +1 -1
- package/dist/transactions/utils.d.ts +2 -1
- package/dist/transactions/utils.d.ts.map +1 -1
- package/dist/transactions/utils.js +4 -1
- package/dist/transactions/utils.js.map +1 -1
- package/package.json +2 -2
- package/dist/components/widget/TradeParameters/DegenModeConfirmation.d.ts +0 -6
- package/dist/components/widget/TradeParameters/DegenModeConfirmation.d.ts.map +0 -1
- package/dist/components/widget/TradeParameters/DegenModeConfirmation.js +0 -139
- package/dist/components/widget/TradeParameters/DegenModeConfirmation.js.map +0 -1
- package/dist/components/widget/TradeParameters/DegenModeParameter.d.ts +0 -8
- package/dist/components/widget/TradeParameters/DegenModeParameter.d.ts.map +0 -1
- package/dist/components/widget/TradeParameters/DegenModeParameter.js +0 -84
- package/dist/components/widget/TradeParameters/DegenModeParameter.js.map +0 -1
- package/dist/components/widget/TradeParameters/state/degenModeParamAtom.d.ts +0 -7
- package/dist/components/widget/TradeParameters/state/degenModeParamAtom.d.ts.map +0 -1
- package/dist/components/widget/TradeParameters/state/degenModeParamAtom.js +0 -16
- package/dist/components/widget/TradeParameters/state/degenModeParamAtom.js.map +0 -1
- package/dist/core/swapDetails/usePriceImpactWarning.d.ts +0 -8
- package/dist/core/swapDetails/usePriceImpactWarning.d.ts.map +0 -1
- package/dist/core/swapDetails/usePriceImpactWarning.js +0 -89
- package/dist/core/swapDetails/usePriceImpactWarning.js.map +0 -1
- package/dist/hooks/swap/prices/market/queries/errors.d.ts +0 -3
- package/dist/hooks/swap/prices/market/queries/errors.d.ts.map +0 -1
- package/dist/hooks/swap/prices/market/queries/errors.js +0 -11
- package/dist/hooks/swap/prices/market/queries/errors.js.map +0 -1
package/dist/hooks/useSDK.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSDK.js","sources":["../../src/hooks/useSDK.ts"],"sourcesContent":["import axios from \"axios\";\nimport { useMemo } from \"react\";\n\nimport {\n constructAxiosFetcher,\n constructFetchFetcher,\n constructPartialSDK,\n constructGetSpender,\n constructBuildTx,\n constructAllLimitOrdersHandlers,\n constructGetRate,\n constructGetDeltaPrice,\n constructGetDeltaOrders,\n constructBuildDeltaOrder,\n constructSignDeltaOrder,\n constructPreSignDeltaOrder,\n constructPostDeltaOrder,\n constructCancelDeltaOrder,\n constructGetBridgeInfo,\n constructIsTokenSupportedInDelta,\n constructDeltaTokenModule,\n constructViemContractCaller,\n type LimitOrderHandlers,\n type GetRateFunctions,\n type APIVersion,\n type GetDeltaOrdersFunctions,\n type GetDeltaPriceFunctions,\n type PostDeltaOrderFunctions,\n type BuildDeltaOrderFunctions,\n type SignDeltaOrderFunctions,\n type PreSignDeltaOrderFunctions,\n type CancelDeltaOrderFunctions,\n type GetBridgeInfoFunctions,\n type IsTokenSupportedInDeltaFunctions,\n type BuildTxFunctions,\n type GetSpenderFunctions,\n type MinViemClient,\n constructGetLimitOrders,\n constructBuildLimitOrder,\n constructPostLimitOrder,\n constructFillOrderDirectly,\n type GetLimitOrdersFunctions,\n type BuildLimitOrderFunctions,\n type PostLimitOrderFunctions,\n type FillOrderDirectlyFunctions,\n type ContractCallerFunctions,\n type DeltaTokenModuleFunctions,\n} from \"@velora-dex/sdk\";\nimport { encodeFunctionData, type Address, type Hash, type Hex } from \"viem\";\nimport type { Prettify } from \"ts-essentials\";\nimport { getLogger } from \"@/core/logger\";\nimport { getApiURL } from \"@/lib/constants/urls\";\nimport { useApiConfig } from \"@/core/state/apiConfigAtom\";\n\nfunction useSDKFetcher() {\n \"use no memo\";\n\n const apiConfig = useApiConfig();\n\n return useMemo(() => {\n return constructAxiosFetcher(axios, apiConfig);\n }, [apiConfig]);\n}\n\nfunction useKeepAliveSDKFetcher() {\n \"use no memo\";\n\n const apiConfig = useApiConfig();\n\n return useMemo(() => {\n if (typeof window === \"undefined\") return;\n return constructFetchFetcher(window.fetch, {\n ...apiConfig,\n keepalive: true,\n });\n }, [apiConfig]);\n}\n\ntype SDKCreateParams = {\n chainId: number;\n apiURL?: string;\n account?: Address;\n};\n\nexport type MarketSwapSDK = Prettify<\n GetSpenderFunctions & BuildTxFunctions & GetRateFunctions\n>;\n\ntype ConstructedSDKOutput<T> = {\n sdk: T;\n appVersion: APIVersion;\n chainId: number;\n apiURL: string;\n};\n\nexport function useMarketSwapSDK({\n chainId,\n apiURL,\n}: SDKCreateParams): ConstructedSDKOutput<MarketSwapSDK> {\n \"use no memo\";\n\n const fetcher = useSDKFetcher();\n\n const sdk = useMemo(() => {\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n };\n\n return constructPartialSDK(\n SDKconfig,\n constructGetRate,\n constructGetSpender,\n constructBuildTx\n );\n }, [apiURL, chainId, fetcher]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\ntype LimitOrdersSDKCreateParams = SDKCreateParams & {\n client?: MinViemClient;\n};\n\ntype ReadOnlyLimitOrdersSDK = Prettify<\n GetLimitOrdersFunctions & BuildLimitOrderFunctions & PostLimitOrderFunctions\n>;\n\nexport type LimitOrdersSDK = Prettify<LimitOrderHandlers<Hash>>;\n\nconst limitSDKLogger = getLogger(\"LimitOrdersSDK\");\n\n// can paraswap.fillOrder from a taker address to simulate happy path\n// @TODO check that we always use correct SDK version\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams & {\n account?: undefined;\n client?: undefined;\n}): ConstructedSDKOutput<ReadOnlyLimitOrdersSDK>;\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams & {\n account: Address;\n client: MinViemClient;\n}): ConstructedSDKOutput<LimitOrdersSDK>;\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams): ConstructedSDKOutput<\n LimitOrdersSDK | ReadOnlyLimitOrdersSDK\n>;\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams): ConstructedSDKOutput<\n LimitOrdersSDK | ReadOnlyLimitOrdersSDK\n> {\n \"use no memo\";\n\n const fetcher = useSDKFetcher();\n\n const sdk = useMemo(() => {\n limitSDKLogger.once.log(\"init sdk\");\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n };\n\n if (!client || !account) {\n return constructPartialSDK(\n SDKconfig,\n constructGetLimitOrders,\n constructBuildLimitOrder,\n constructPostLimitOrder\n );\n }\n\n const contractCaller = constructViemContractCaller(client, account);\n\n return constructPartialSDK(\n { ...SDKconfig, contractCaller },\n constructAllLimitOrdersHandlers\n );\n }, [client, account, apiURL, chainId, fetcher]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\n\n// ContractCaller that returns Contract[method](args) calldata instead of sending out a transaction\ntype CalldataContractCaller = ContractCallerFunctions<Hex>;\n\nconst constructCalldataContractCaller = (): CalldataContractCaller => {\n const transactCall: CalldataContractCaller[\"transactCall\"] = async (\n params\n ) => {\n const { abi, contractMethod: functionName, args } = params;\n const calldata = encodeFunctionData<typeof abi, string>({\n abi,\n functionName,\n args,\n });\n return calldata;\n };\n\n // won't be used, but needed for types\n const staticCall = () => {\n throw new Error(\"Not implemented\");\n };\n\n return {\n transactCall,\n staticCall,\n signTypedDataCall: staticCall,\n };\n};\n\n// can be used to POST final data before page is closed\nexport const useFetchOnlySDK = ({\n chainId,\n apiURL,\n}: SDKCreateParams): Partial<ConstructedSDKOutput<PostDeltaOrderFunctions>> => {\n \"use no memo\";\n\n // fetch, unlike axios allows for `keepalive` parameter,\n // so we can use it to keep the request alive a bit after the page is closed.\n // the alternative of using navigator.sendBeacon doesn't work with API because it includes credentials=always\n // which is incompatible with API CORS settings\n const fetcher = useKeepAliveSDKFetcher();\n\n const sdk = useMemo(() => {\n if (!fetcher) return;\n\n return constructPartialSDK(\n {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n },\n constructPostDeltaOrder\n );\n }, [apiURL, chainId, fetcher]);\n\n return {\n appVersion: sdk?.version,\n chainId: sdk?.chainId,\n apiURL: sdk?.apiURL,\n sdk,\n };\n};\n\nconst calldataSDKLogger = getLogger(\"CalldataSDK\");\n\nexport const useCalldataSDK = ({\n chainId,\n apiURL,\n client,\n}: Omit<LimitOrdersSDKCreateParams, \"account\">): Partial<\n ConstructedSDKOutput<\n FillOrderDirectlyFunctions<Hex> &\n PreSignDeltaOrderFunctions<Hex> &\n BuildDeltaOrderFunctions\n >\n> => {\n \"use no memo\";\n\n const fetcher = useSDKFetcher();\n\n const sdk = useMemo(() => {\n if (!client) return;\n calldataSDKLogger.once.log(\"init sdk\");\n\n const contractCaller = constructCalldataContractCaller();\n\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n contractCaller,\n };\n\n return constructPartialSDK(\n SDKconfig,\n constructFillOrderDirectly,\n constructPreSignDeltaOrder,\n constructBuildDeltaOrder\n );\n }, [apiURL, chainId, client, fetcher]);\n\n return {\n appVersion: sdk?.version,\n chainId: sdk?.chainId,\n apiURL: sdk?.apiURL,\n sdk,\n };\n};\n\ntype ReadOnlyDeltaSDK = Prettify<\n GetDeltaOrdersFunctions &\n GetDeltaPriceFunctions &\n BuildDeltaOrderFunctions &\n PostDeltaOrderFunctions &\n GetBridgeInfoFunctions &\n IsTokenSupportedInDeltaFunctions & { chainId: number }\n>;\n\nexport type DeltaSDK = Prettify<\n ReadOnlyDeltaSDK &\n SignDeltaOrderFunctions &\n CancelDeltaOrderFunctions &\n PreSignDeltaOrderFunctions<Hash> &\n DeltaTokenModuleFunctions<Hash>\n>;\n\ntype DeltaSDKCreateParams = SDKCreateParams & {\n client?: MinViemClient;\n};\n\nconst deltaSDKLogger = getLogger(\"DeltaSDK\");\n\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams & {\n account?: undefined;\n client?: undefined;\n}): ConstructedSDKOutput<ReadOnlyDeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams & {\n account: Address;\n client: MinViemClient;\n}): ConstructedSDKOutput<DeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams): ConstructedSDKOutput<DeltaSDK | ReadOnlyDeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams): ConstructedSDKOutput<DeltaSDK | ReadOnlyDeltaSDK> {\n \"use no memo\";\n // react-compiler fails here and sdk is created anew\n\n const fetcher = useSDKFetcher();\n\n const sdk = useMemo(() => {\n deltaSDKLogger.once.log(\"init sdk\");\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n };\n\n if (!client || !account) {\n return constructPartialSDK(\n SDKconfig,\n constructGetDeltaOrders,\n constructGetDeltaPrice,\n constructBuildDeltaOrder,\n constructPostDeltaOrder,\n constructGetBridgeInfo,\n constructIsTokenSupportedInDelta\n );\n }\n\n const contractCaller = constructViemContractCaller(client, account);\n\n return constructPartialSDK(\n { ...SDKconfig, contractCaller },\n constructGetDeltaOrders,\n constructGetDeltaPrice,\n constructBuildDeltaOrder,\n constructPostDeltaOrder,\n constructCancelDeltaOrder,\n constructGetBridgeInfo,\n constructIsTokenSupportedInDelta,\n constructSignDeltaOrder,\n constructPreSignDeltaOrder,\n constructDeltaTokenModule\n );\n }, [apiURL, chainId, client, account, fetcher]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\n"],"names":["useSDKFetcher","apiConfig","useApiConfig","useMemo","constructAxiosFetcher","axios","useKeepAliveSDKFetcher","window","constructFetchFetcher","fetch","keepalive","useMarketSwapSDK","chainId","apiURL","fetcher","sdk","SDKconfig","getApiURL","constructPartialSDK","constructGetRate","constructGetSpender","constructBuildTx","appVersion","version","limitSDKLogger","getLogger","useLimitOrdersSDK","account","client","once","log","constructGetLimitOrders","constructBuildLimitOrder","constructPostLimitOrder","contractCaller","constructViemContractCaller","constructAllLimitOrdersHandlers","constructCalldataContractCaller","transactCall","params","abi","contractMethod","functionName","args","calldata","encodeFunctionData","staticCall","Error","signTypedDataCall","useFetchOnlySDK","constructPostDeltaOrder","calldataSDKLogger","useCalldataSDK","constructFillOrderDirectly","constructPreSignDeltaOrder","constructBuildDeltaOrder","deltaSDKLogger","useDeltaSDK","constructGetDeltaOrders","constructGetDeltaPrice","constructGetBridgeInfo","constructIsTokenSupportedInDelta","constructCancelDeltaOrder","constructSignDeltaOrder","constructDeltaTokenModule"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useSDK.js","sources":["../../src/hooks/useSDK.ts"],"sourcesContent":["import axios from \"axios\";\nimport { useMemo } from \"react\";\n\nimport {\n constructAxiosFetcher,\n constructFetchFetcher,\n constructPartialSDK,\n constructGetSpender,\n constructBuildTx,\n constructAllLimitOrdersHandlers,\n constructGetRate,\n constructGetDeltaPrice,\n constructGetDeltaOrders,\n constructBuildDeltaOrder,\n constructSignDeltaOrder,\n constructPreSignDeltaOrder,\n constructPostDeltaOrder,\n constructCancelDeltaOrder,\n constructGetBridgeInfo,\n constructIsTokenSupportedInDelta,\n constructDeltaTokenModule,\n constructViemContractCaller,\n type LimitOrderHandlers,\n type GetRateFunctions,\n type APIVersion,\n type GetDeltaOrdersFunctions,\n type GetDeltaPriceFunctions,\n type PostDeltaOrderFunctions,\n type BuildDeltaOrderFunctions,\n type SignDeltaOrderFunctions,\n type PreSignDeltaOrderFunctions,\n type CancelDeltaOrderFunctions,\n type GetBridgeInfoFunctions,\n type IsTokenSupportedInDeltaFunctions,\n type BuildTxFunctions,\n type GetSpenderFunctions,\n type MinViemClient,\n constructGetLimitOrders,\n constructBuildLimitOrder,\n constructPostLimitOrder,\n constructFillOrderDirectly,\n type GetLimitOrdersFunctions,\n type BuildLimitOrderFunctions,\n type PostLimitOrderFunctions,\n type FillOrderDirectlyFunctions,\n type ContractCallerFunctions,\n type DeltaTokenModuleFunctions,\n} from \"@velora-dex/sdk\";\nimport { encodeFunctionData, type Address, type Hash, type Hex } from \"viem\";\nimport type { Prettify } from \"ts-essentials\";\nimport { getLogger } from \"@/core/logger\";\nimport { getApiURL } from \"@/lib/constants/urls\";\nimport { useApiConfig } from \"@/core/state/apiConfigAtom\";\n\nfunction useSDKFetcher() {\n \"use no memo\";\n\n const apiConfig = useApiConfig();\n\n return useMemo(() => {\n return constructAxiosFetcher(axios, apiConfig);\n }, [apiConfig]);\n}\n\nfunction useKeepAliveSDKFetcher() {\n \"use no memo\";\n\n const apiConfig = useApiConfig();\n\n return useMemo(() => {\n if (typeof window === \"undefined\") return;\n return constructFetchFetcher(window.fetch, {\n ...apiConfig,\n keepalive: true,\n });\n }, [apiConfig]);\n}\n\ntype SDKCreateParams = {\n chainId: number;\n apiURL?: string;\n account?: Address;\n};\n\nexport type MarketSwapSDK = Prettify<\n GetSpenderFunctions & BuildTxFunctions & GetRateFunctions\n>;\n\ntype ConstructedSDKOutput<T> = {\n sdk: T;\n appVersion: APIVersion;\n chainId: number;\n apiURL: string;\n};\n\nexport function useMarketSwapSDK({\n chainId,\n apiURL,\n}: SDKCreateParams): ConstructedSDKOutput<MarketSwapSDK> {\n \"use no memo\";\n\n const fetcher = useSDKFetcher();\n\n const sdk = useMemo(() => {\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n };\n\n return constructPartialSDK(\n SDKconfig,\n constructGetRate,\n constructGetSpender,\n constructBuildTx\n );\n }, [apiURL, chainId, fetcher]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\ntype LimitOrdersSDKCreateParams = SDKCreateParams & {\n client?: MinViemClient;\n};\n\ntype ReadOnlyLimitOrdersSDK = Prettify<\n GetLimitOrdersFunctions & BuildLimitOrderFunctions & PostLimitOrderFunctions\n>;\n\nexport type LimitOrdersSDK = Prettify<LimitOrderHandlers<Hash>>;\n\nconst limitSDKLogger = getLogger(\"LimitOrdersSDK\");\n\n// can paraswap.fillOrder from a taker address to simulate happy path\n// @TODO check that we always use correct SDK version\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams & {\n account?: undefined;\n client?: undefined;\n}): ConstructedSDKOutput<ReadOnlyLimitOrdersSDK>;\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams & {\n account: Address;\n client: MinViemClient;\n}): ConstructedSDKOutput<LimitOrdersSDK>;\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams): ConstructedSDKOutput<\n LimitOrdersSDK | ReadOnlyLimitOrdersSDK\n>;\nexport function useLimitOrdersSDK({\n chainId,\n apiURL,\n account,\n client,\n}: LimitOrdersSDKCreateParams): ConstructedSDKOutput<\n LimitOrdersSDK | ReadOnlyLimitOrdersSDK\n> {\n \"use no memo\";\n\n const fetcher = useSDKFetcher();\n\n const sdk = useMemo(() => {\n limitSDKLogger.once.log(\"init sdk\");\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n };\n\n if (!client || !account) {\n return constructPartialSDK(\n SDKconfig,\n constructGetLimitOrders,\n constructBuildLimitOrder,\n constructPostLimitOrder\n );\n }\n\n const contractCaller = constructViemContractCaller(client, account);\n\n return constructPartialSDK(\n { ...SDKconfig, contractCaller },\n constructAllLimitOrdersHandlers\n );\n }, [client, account, apiURL, chainId, fetcher]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\n\n// ContractCaller that returns Contract[method](args) calldata instead of sending out a transaction\ntype CalldataContractCaller = ContractCallerFunctions<Hex>;\n\nconst constructCalldataContractCaller = (): CalldataContractCaller => {\n const transactCall: CalldataContractCaller[\"transactCall\"] = async (\n params\n ) => {\n const { abi, contractMethod: functionName, args } = params;\n const calldata = encodeFunctionData<typeof abi, string>({\n abi,\n functionName,\n args,\n });\n return calldata;\n };\n\n // won't be used, but needed for types\n const staticCall = () => {\n throw new Error(\"Not implemented\");\n };\n\n return {\n transactCall,\n staticCall,\n signTypedDataCall: staticCall,\n };\n};\n\n// can be used to POST final data before page is closed\nexport const useFetchOnlySDK = ({\n chainId,\n apiURL,\n}: SDKCreateParams): Partial<ConstructedSDKOutput<PostDeltaOrderFunctions>> => {\n \"use no memo\";\n\n // fetch, unlike axios allows for `keepalive` parameter,\n // so we can use it to keep the request alive a bit after the page is closed.\n // the alternative of using navigator.sendBeacon doesn't work with API because it includes credentials=always\n // which is incompatible with API CORS settings\n const fetcher = useKeepAliveSDKFetcher();\n\n const sdk = useMemo(() => {\n if (!fetcher) return;\n\n return constructPartialSDK(\n {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n },\n constructPostDeltaOrder\n );\n }, [apiURL, chainId, fetcher]);\n\n return {\n appVersion: sdk?.version,\n chainId: sdk?.chainId,\n apiURL: sdk?.apiURL,\n sdk,\n };\n};\n\nconst calldataSDKLogger = getLogger(\"CalldataSDK\");\n\nexport const useCalldataSDK = ({\n chainId,\n apiURL,\n client,\n}: Omit<LimitOrdersSDKCreateParams, \"account\">): Partial<\n ConstructedSDKOutput<\n FillOrderDirectlyFunctions<Hex> &\n PreSignDeltaOrderFunctions<Hex> &\n BuildDeltaOrderFunctions\n >\n> => {\n \"use no memo\";\n\n const fetcher = useSDKFetcher();\n\n const sdk = useMemo(() => {\n if (!client) return;\n calldataSDKLogger.once.log(\"init sdk\");\n\n const contractCaller = constructCalldataContractCaller();\n\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n contractCaller,\n };\n\n return constructPartialSDK(\n SDKconfig,\n constructFillOrderDirectly,\n constructPreSignDeltaOrder,\n constructBuildDeltaOrder\n );\n }, [apiURL, chainId, client, fetcher]);\n\n return {\n appVersion: sdk?.version,\n chainId: sdk?.chainId,\n apiURL: sdk?.apiURL,\n sdk,\n };\n};\n\ntype ReadOnlyDeltaSDK = Prettify<\n GetDeltaOrdersFunctions &\n GetDeltaPriceFunctions &\n BuildDeltaOrderFunctions &\n PostDeltaOrderFunctions &\n GetBridgeInfoFunctions &\n IsTokenSupportedInDeltaFunctions & { chainId: number }\n>;\n\nexport type DeltaSDK = Prettify<\n ReadOnlyDeltaSDK &\n SignDeltaOrderFunctions &\n CancelDeltaOrderFunctions &\n PreSignDeltaOrderFunctions<Hash> &\n DeltaTokenModuleFunctions<Hash>\n>;\n\ntype DeltaSDKCreateParams = SDKCreateParams & {\n client?: MinViemClient;\n};\n\nconst deltaSDKLogger = getLogger(\"DeltaSDK\");\n\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams & {\n account?: undefined;\n client?: undefined;\n}): ConstructedSDKOutput<ReadOnlyDeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams & {\n account: Address;\n client: MinViemClient;\n}): ConstructedSDKOutput<DeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams): ConstructedSDKOutput<DeltaSDK | ReadOnlyDeltaSDK>;\nexport function useDeltaSDK({\n chainId,\n apiURL,\n account,\n client,\n}: DeltaSDKCreateParams): ConstructedSDKOutput<DeltaSDK | ReadOnlyDeltaSDK> {\n \"use no memo\";\n // react-compiler fails here and sdk is created anew\n\n const fetcher = useSDKFetcher();\n\n const sdk = useMemo(() => {\n deltaSDKLogger.once.log(\"init sdk\");\n const SDKconfig = {\n apiURL: apiURL ?? getApiURL(),\n chainId,\n fetcher,\n };\n\n if (!client || !account) {\n return constructPartialSDK(\n SDKconfig,\n constructGetDeltaOrders,\n constructGetDeltaPrice,\n constructBuildDeltaOrder,\n constructPostDeltaOrder,\n constructGetBridgeInfo,\n constructIsTokenSupportedInDelta\n );\n }\n\n const contractCaller = constructViemContractCaller(client, account);\n\n return constructPartialSDK(\n { ...SDKconfig, contractCaller },\n constructGetDeltaOrders,\n constructGetDeltaPrice,\n constructBuildDeltaOrder,\n constructPostDeltaOrder,\n constructCancelDeltaOrder,\n constructGetBridgeInfo,\n constructIsTokenSupportedInDelta,\n constructSignDeltaOrder,\n constructPreSignDeltaOrder,\n constructDeltaTokenModule\n );\n }, [apiURL, chainId, client, account, fetcher]);\n\n return {\n appVersion: sdk.version,\n chainId: sdk.chainId,\n apiURL: sdk.apiURL,\n sdk,\n };\n}\n"],"names":["useSDKFetcher","apiConfig","useApiConfig","useMemo","constructAxiosFetcher","axios","useMarketSwapSDK","chainId","apiURL","fetcher","sdk","SDKconfig","getApiURL","constructPartialSDK","constructGetRate","constructGetSpender","constructBuildTx","appVersion","version","limitSDKLogger","getLogger","useLimitOrdersSDK","account","client","once","log","constructGetLimitOrders","constructBuildLimitOrder","constructPostLimitOrder","contractCaller","constructViemContractCaller","constructAllLimitOrdersHandlers","constructCalldataContractCaller","transactCall","params","abi","contractMethod","functionName","args","calldata","encodeFunctionData","staticCall","Error","signTypedDataCall","calldataSDKLogger","useCalldataSDK","constructFillOrderDirectly","constructPreSignDeltaOrder","constructBuildDeltaOrder","deltaSDKLogger","useDeltaSDK","constructGetDeltaOrders","constructGetDeltaPrice","constructPostDeltaOrder","constructGetBridgeInfo","constructIsTokenSupportedInDelta","constructCancelDeltaOrder","constructSignDeltaOrder","constructDeltaTokenModule"],"mappings":"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"}
|
package/dist/styles.css
CHANGED
|
@@ -1308,9 +1308,6 @@
|
|
|
1308
1308
|
.velora-widget.velora-widget .border-secondary-radical-red-1 {
|
|
1309
1309
|
border-color: var(--secondary-radical_red-1);
|
|
1310
1310
|
}
|
|
1311
|
-
.velora-widget.velora-widget .border-secondary-shamrock-green-2 {
|
|
1312
|
-
border-color: var(--secondary-shamrock_green-2);
|
|
1313
|
-
}
|
|
1314
1311
|
.velora-widget.velora-widget .border-transparent {
|
|
1315
1312
|
border-color: #0000;
|
|
1316
1313
|
}
|
|
@@ -1475,9 +1472,6 @@
|
|
|
1475
1472
|
.velora-widget.velora-widget .stroke-secondary-orange-peel-1 {
|
|
1476
1473
|
stroke: var(--secondary-orange_peel-1);
|
|
1477
1474
|
}
|
|
1478
|
-
.velora-widget.velora-widget .stroke-secondary-shamrock-green-2 {
|
|
1479
|
-
stroke: var(--secondary-shamrock_green-2);
|
|
1480
|
-
}
|
|
1481
1475
|
.velora-widget.velora-widget .p-0 {
|
|
1482
1476
|
padding: calc(var(--spacing) * 0);
|
|
1483
1477
|
}
|
|
@@ -1601,9 +1595,6 @@
|
|
|
1601
1595
|
.velora-widget.velora-widget .pt-8 {
|
|
1602
1596
|
padding-top: calc(var(--spacing) * 8);
|
|
1603
1597
|
}
|
|
1604
|
-
.velora-widget.velora-widget .pt-20 {
|
|
1605
|
-
padding-top: calc(var(--spacing) * 20);
|
|
1606
|
-
}
|
|
1607
1598
|
.velora-widget.velora-widget .pt-\[2px\] {
|
|
1608
1599
|
padding-top: 2px;
|
|
1609
1600
|
}
|
|
@@ -2326,9 +2317,6 @@
|
|
|
2326
2317
|
.velora-widget.velora-widget .focus-visible\:border-ring:focus-visible {
|
|
2327
2318
|
border-color: var(--ring);
|
|
2328
2319
|
}
|
|
2329
|
-
.velora-widget.velora-widget .focus-visible\:border-secondary-shamrock-green-2:focus-visible {
|
|
2330
|
-
border-color: var(--secondary-shamrock_green-2);
|
|
2331
|
-
}
|
|
2332
2320
|
.velora-widget.velora-widget .focus-visible\:ring-\[3px\]:focus-visible {
|
|
2333
2321
|
--tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
|
|
2334
2322
|
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
|
|
@@ -2658,9 +2646,6 @@
|
|
|
2658
2646
|
.velora-widget.velora-widget .dark\:border-input:is(.velora-widget.dark *) {
|
|
2659
2647
|
border-color: var(--input);
|
|
2660
2648
|
}
|
|
2661
|
-
.velora-widget.velora-widget .dark\:border-secondary-shamrock-green-2:is(.velora-widget.dark *) {
|
|
2662
|
-
border-color: var(--secondary-shamrock_green-2);
|
|
2663
|
-
}
|
|
2664
2649
|
.velora-widget.velora-widget .dark\:border-transparent:is(.velora-widget.dark *) {
|
|
2665
2650
|
border-color: #0000;
|
|
2666
2651
|
}
|
|
@@ -2752,12 +2737,12 @@
|
|
|
2752
2737
|
.velora-widget.velora-widget .dark\:text-contrast-9:is(.velora-widget.dark *) {
|
|
2753
2738
|
color: var(--contrast-9);
|
|
2754
2739
|
}
|
|
2740
|
+
.velora-widget.velora-widget .dark\:text-secondary-orange-peel-1:is(.velora-widget.dark *) {
|
|
2741
|
+
color: var(--secondary-orange_peel-1);
|
|
2742
|
+
}
|
|
2755
2743
|
.velora-widget.velora-widget .dark\:text-secondary-radical-red-1:is(.velora-widget.dark *) {
|
|
2756
2744
|
color: var(--secondary-radical_red-1);
|
|
2757
2745
|
}
|
|
2758
|
-
.velora-widget.velora-widget .dark\:text-secondary-radical-red-2:is(.velora-widget.dark *) {
|
|
2759
|
-
color: var(--secondary-radical_red-2);
|
|
2760
|
-
}
|
|
2761
2746
|
.velora-widget.velora-widget .dark\:text-white:is(.velora-widget.dark *) {
|
|
2762
2747
|
color: var(--color-white);
|
|
2763
2748
|
}
|
|
@@ -2844,9 +2829,6 @@
|
|
|
2844
2829
|
.velora-widget.velora-widget .dark\:focus-visible\:border-primary-azul-1:is(.velora-widget.dark *):focus-visible {
|
|
2845
2830
|
border-color: var(--primary-azul-1);
|
|
2846
2831
|
}
|
|
2847
|
-
.velora-widget.velora-widget .dark\:focus-visible\:border-secondary-shamrock-green-2:is(.velora-widget.dark *):focus-visible {
|
|
2848
|
-
border-color: var(--secondary-shamrock_green-2);
|
|
2849
|
-
}
|
|
2850
2832
|
.velora-widget.velora-widget .dark\:focus-visible\:ring-destructive\/40:is(.velora-widget.dark *):focus-visible {
|
|
2851
2833
|
--tw-ring-color: var(--destructive);
|
|
2852
2834
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BatchTransactionItem, StandaloneTransactionItem, TransactionItem, TransactionItemSwap } from '../types';
|
|
1
|
+
import { BatchTransactionItem, PreSignTransactionItem, StandaloneTransactionItem, TransactionItem, TransactionItemSwap } from '../types';
|
|
2
2
|
import { Address } from 'viem';
|
|
3
3
|
export type TransactionsMap = Record<string, TransactionItem>;
|
|
4
4
|
export type TransactionsState = Record<Address, TransactionsMap>;
|
|
@@ -11,4 +11,5 @@ export declare const allPendingStandaloneTransactionItemsAtom: import('jotai').A
|
|
|
11
11
|
export declare const allPendingBatchTransactionItemsAtom: import('jotai').Atom<BatchTransactionItem[]>;
|
|
12
12
|
export declare const userPendingTransactionsAtom: import('jotai').Atom<TransactionItem[]>;
|
|
13
13
|
export declare const userSwapTransactionsAtom: import('jotai').Atom<TransactionItemSwap[]>;
|
|
14
|
+
export declare const userPreSignTransactionsAtom: import('jotai').Atom<PreSignTransactionItem[]>;
|
|
14
15
|
//# sourceMappingURL=transactionsAtom.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transactionsAtom.d.ts","sourceRoot":"","sources":["../../../src/transactions/state/transactionsAtom.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,yBAAyB,EACzB,eAAe,EACf,mBAAmB,EACpB,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"transactionsAtom.d.ts","sourceRoot":"","sources":["../../../src/transactions/state/transactionsAtom.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,eAAe,EACf,mBAAmB,EACpB,MAAM,UAAU,CAAC;AAYlB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAMpC,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;AAE9D,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;AAEjE,eAAO,MAAM,gBAAgB,yMAW5B,CAAC;AAEF,eAAO,MAAM,mBAAmB,yCAG9B,CAAC;AAEH,eAAO,MAAM,oBAAoB,yCAM/B,CAAC;AAEH,eAAO,MAAM,iCAAiC,mDAK5C,CAAC;AAEH,eAAO,MAAM,4BAA4B,8CAKxC,CAAC;AAEF,eAAO,MAAM,wCAAwC,mDAKnD,CAAC;AAEH,eAAO,MAAM,mCAAmC,8CAK/C,CAAC;AAEF,eAAO,MAAM,2BAA2B,yCAGtC,CAAC;AAEH,eAAO,MAAM,wBAAwB,6CAGnC,CAAC;AAEH,eAAO,MAAM,2BAA2B,gDAKvC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { atomWithStorage, createJSONStorage } from 'jotai/utils';
|
|
2
2
|
import { atom } from 'jotai';
|
|
3
|
-
import { extractPendingTransactions, isStandaloneTransactionItem, isBatchTransactionItem, extractSwapTransactions } from '../utils.js';
|
|
3
|
+
import { extractPendingTransactions, isStandaloneTransactionItem, isBatchTransactionItem, extractPreSignTransactions, extractSwapTransactions } from '../utils.js';
|
|
4
4
|
import { serialize, deserialize } from 'wagmi';
|
|
5
5
|
import { addressAtom } from '../../lib/web3/wagmi/external.js';
|
|
6
6
|
import { emptyArray } from '../../lib/constants/index.js';
|
|
@@ -50,6 +50,10 @@ const userSwapTransactionsAtom = atom((get) => {
|
|
|
50
50
|
const transactions = get(userTransactionsAtom);
|
|
51
51
|
return extractSwapTransactions(transactions);
|
|
52
52
|
});
|
|
53
|
+
const userPreSignTransactionsAtom = atom((get) => {
|
|
54
|
+
const transactions = get(userTransactionsAtom);
|
|
55
|
+
return extractPreSignTransactions(transactions);
|
|
56
|
+
});
|
|
53
57
|
|
|
54
|
-
export { allBatchTransactionItemsAtom, allPendingBatchTransactionItemsAtom, allPendingStandaloneTransactionItemsAtom, allStandaloneTransactionItemsAtom, allTransactionsAtom, transactionsAtom, userPendingTransactionsAtom, userSwapTransactionsAtom, userTransactionsAtom };
|
|
58
|
+
export { allBatchTransactionItemsAtom, allPendingBatchTransactionItemsAtom, allPendingStandaloneTransactionItemsAtom, allStandaloneTransactionItemsAtom, allTransactionsAtom, transactionsAtom, userPendingTransactionsAtom, userPreSignTransactionsAtom, userSwapTransactionsAtom, userTransactionsAtom };
|
|
55
59
|
//# sourceMappingURL=transactionsAtom.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transactionsAtom.js","sources":["../../../src/transactions/state/transactionsAtom.ts"],"sourcesContent":["import type {\n BatchTransactionItem,\n StandaloneTransactionItem,\n TransactionItem,\n TransactionItemSwap,\n} from \"../types\";\nimport { atomWithStorage, createJSONStorage } from \"jotai/utils\";\nimport { atom } from \"jotai\";\n\nimport {\n extractPendingTransactions,\n extractSwapTransactions,\n isStandaloneTransactionItem,\n isBatchTransactionItem,\n} from \"../utils\";\nimport { serialize, deserialize } from \"wagmi\";\nimport type { Address } from \"viem\";\nimport { addressAtom } from \"@/lib/web3/wagmi/external\";\nimport { emptyArray } from \"@/lib/constants\";\nimport { LOCAL_STORAGE_PREFIX } from \"@/lib/constants/storage\";\n\n// Record<TxHash/CallsId, TransactionItem>\nexport type TransactionsMap = Record<string, TransactionItem>;\n\nexport type TransactionsState = Record<Address, TransactionsMap>;\n\nexport const transactionsAtom = atomWithStorage<TransactionsState>(\n `${LOCAL_STORAGE_PREFIX}_transactions`,\n {},\n createJSONStorage(() => localStorage, {\n // serialize/deserialize to handle bigint values\n replacer: (_, value) => serialize(value),\n reviver: (_, value) => {\n return typeof value === \"string\" ? deserialize(value) : value;\n },\n }),\n { getOnInit: true }\n);\n\nexport const allTransactionsAtom = atom<TransactionItem[]>((get) => {\n const transactions = get(transactionsAtom);\n return Object.values(transactions).flatMap((txMap) => Object.values(txMap));\n});\n\nexport const userTransactionsAtom = atom<TransactionItem[]>((get) => {\n const account = get(addressAtom);\n if (!account) return emptyArray;\n const transactions = get(transactionsAtom)[account];\n if (!transactions) return emptyArray;\n return Object.values(transactions);\n});\n\nexport const allStandaloneTransactionItemsAtom = atom<\n StandaloneTransactionItem[]\n>((get) => {\n const transactions = get(allTransactionsAtom);\n return transactions.filter(isStandaloneTransactionItem);\n});\n\nexport const allBatchTransactionItemsAtom = atom<BatchTransactionItem[]>(\n (get) => {\n const transactions = get(allTransactionsAtom);\n return transactions.filter(isBatchTransactionItem);\n }\n);\n\nexport const allPendingStandaloneTransactionItemsAtom = atom<\n StandaloneTransactionItem[]\n>((get) => {\n const transactions = get(allStandaloneTransactionItemsAtom);\n return extractPendingTransactions(transactions);\n});\n\nexport const allPendingBatchTransactionItemsAtom = atom<BatchTransactionItem[]>(\n (get) => {\n const transactions = get(allBatchTransactionItemsAtom);\n return extractPendingTransactions(transactions);\n }\n);\n\nexport const userPendingTransactionsAtom = atom<TransactionItem[]>((get) => {\n const transactions = get(userTransactionsAtom);\n return extractPendingTransactions(transactions);\n});\n\nexport const userSwapTransactionsAtom = atom<TransactionItemSwap[]>((get) => {\n const transactions = get(userTransactionsAtom);\n return extractSwapTransactions(transactions);\n});\n"],"names":["transactionsAtom","atomWithStorage","LOCAL_STORAGE_PREFIX","createJSONStorage","localStorage","replacer","_","value","serialize","reviver","deserialize","getOnInit","allTransactionsAtom","atom","get","transactions","Object","values","flatMap","txMap","userTransactionsAtom","account","addressAtom","emptyArray","allStandaloneTransactionItemsAtom","filter","isStandaloneTransactionItem","allBatchTransactionItemsAtom","isBatchTransactionItem","allPendingStandaloneTransactionItemsAtom","extractPendingTransactions","allPendingBatchTransactionItemsAtom","userPendingTransactionsAtom","userSwapTransactionsAtom","extractSwapTransactions"],"mappings":";;;;;;;;
|
|
1
|
+
{"version":3,"file":"transactionsAtom.js","sources":["../../../src/transactions/state/transactionsAtom.ts"],"sourcesContent":["import type {\n BatchTransactionItem,\n PreSignTransactionItem,\n StandaloneTransactionItem,\n TransactionItem,\n TransactionItemSwap,\n} from \"../types\";\nimport { atomWithStorage, createJSONStorage } from \"jotai/utils\";\nimport { atom } from \"jotai\";\n\nimport {\n extractPendingTransactions,\n extractSwapTransactions,\n isStandaloneTransactionItem,\n isBatchTransactionItem,\n extractPreSignTransactions,\n} from \"../utils\";\nimport { serialize, deserialize } from \"wagmi\";\nimport type { Address } from \"viem\";\nimport { addressAtom } from \"@/lib/web3/wagmi/external\";\nimport { emptyArray } from \"@/lib/constants\";\nimport { LOCAL_STORAGE_PREFIX } from \"@/lib/constants/storage\";\n\n// Record<TxHash/CallsId, TransactionItem>\nexport type TransactionsMap = Record<string, TransactionItem>;\n\nexport type TransactionsState = Record<Address, TransactionsMap>;\n\nexport const transactionsAtom = atomWithStorage<TransactionsState>(\n `${LOCAL_STORAGE_PREFIX}_transactions`,\n {},\n createJSONStorage(() => localStorage, {\n // serialize/deserialize to handle bigint values\n replacer: (_, value) => serialize(value),\n reviver: (_, value) => {\n return typeof value === \"string\" ? deserialize(value) : value;\n },\n }),\n { getOnInit: true }\n);\n\nexport const allTransactionsAtom = atom<TransactionItem[]>((get) => {\n const transactions = get(transactionsAtom);\n return Object.values(transactions).flatMap((txMap) => Object.values(txMap));\n});\n\nexport const userTransactionsAtom = atom<TransactionItem[]>((get) => {\n const account = get(addressAtom);\n if (!account) return emptyArray;\n const transactions = get(transactionsAtom)[account];\n if (!transactions) return emptyArray;\n return Object.values(transactions);\n});\n\nexport const allStandaloneTransactionItemsAtom = atom<\n StandaloneTransactionItem[]\n>((get) => {\n const transactions = get(allTransactionsAtom);\n return transactions.filter(isStandaloneTransactionItem);\n});\n\nexport const allBatchTransactionItemsAtom = atom<BatchTransactionItem[]>(\n (get) => {\n const transactions = get(allTransactionsAtom);\n return transactions.filter(isBatchTransactionItem);\n }\n);\n\nexport const allPendingStandaloneTransactionItemsAtom = atom<\n StandaloneTransactionItem[]\n>((get) => {\n const transactions = get(allStandaloneTransactionItemsAtom);\n return extractPendingTransactions(transactions);\n});\n\nexport const allPendingBatchTransactionItemsAtom = atom<BatchTransactionItem[]>(\n (get) => {\n const transactions = get(allBatchTransactionItemsAtom);\n return extractPendingTransactions(transactions);\n }\n);\n\nexport const userPendingTransactionsAtom = atom<TransactionItem[]>((get) => {\n const transactions = get(userTransactionsAtom);\n return extractPendingTransactions(transactions);\n});\n\nexport const userSwapTransactionsAtom = atom<TransactionItemSwap[]>((get) => {\n const transactions = get(userTransactionsAtom);\n return extractSwapTransactions(transactions);\n});\n\nexport const userPreSignTransactionsAtom = atom<PreSignTransactionItem[]>(\n (get) => {\n const transactions = get(userTransactionsAtom);\n return extractPreSignTransactions(transactions);\n }\n);\n"],"names":["transactionsAtom","atomWithStorage","LOCAL_STORAGE_PREFIX","createJSONStorage","localStorage","replacer","_","value","serialize","reviver","deserialize","getOnInit","allTransactionsAtom","atom","get","transactions","Object","values","flatMap","txMap","userTransactionsAtom","account","addressAtom","emptyArray","allStandaloneTransactionItemsAtom","filter","isStandaloneTransactionItem","allBatchTransactionItemsAtom","isBatchTransactionItem","allPendingStandaloneTransactionItemsAtom","extractPendingTransactions","allPendingBatchTransactionItemsAtom","userPendingTransactionsAtom","userSwapTransactionsAtom","extractSwapTransactions","userPreSignTransactionsAtom","extractPreSignTransactions"],"mappings":";;;;;;;;AA4BO,MAAMA,gBAAAA,GAAmBC,gBAC9B,CAAA,EAAGC,oBAAoB,iBACvB,EAAC,EACDC,iBAAAA,CAAkB,MAAMC,YAAAA,EAAc;AAAA;AAAA,EAEpCC,QAAAA,EAAUA,CAACC,CAAAA,EAAGC,KAAAA,KAAUC,UAAUD,KAAK,CAAA;AAAA,EACvCE,OAAAA,EAASA,CAACH,CAAAA,EAAGC,KAAAA,KAAU;AACrB,IAAA,OAAO,OAAOA,KAAAA,KAAU,QAAA,GAAWG,WAAAA,CAAYH,KAAK,CAAA,GAAIA,KAAAA;AAAAA,EAC1D;AACF,CAAC,CAAA,EACD;AAAA,EAAEI,SAAAA,EAAW;AAAK,CACpB;AAEO,MAAMC,mBAAAA,GAAsBC,KAAyBC,CAAAA,GAAAA,KAAQ;AAClE,EAAA,MAAMC,YAAAA,GAAeD,IAAId,gBAAgB,CAAA;AACzC,EAAA,OAAOgB,MAAAA,CAAOC,OAAOF,YAAY,CAAA,CAAEG,QAASC,CAAAA,KAAAA,KAAUH,MAAAA,CAAOC,MAAAA,CAAOE,KAAK,CAAC,CAAA;AAC5E,CAAC;AAEM,MAAMC,oBAAAA,GAAuBP,KAAyBC,CAAAA,GAAAA,KAAQ;AACnE,EAAA,MAAMO,OAAAA,GAAUP,IAAIQ,WAAW,CAAA;AAC/B,EAAA,IAAI,CAACD,SAAS,OAAOE,UAAAA;AACrB,EAAA,MAAMR,YAAAA,GAAeD,GAAAA,CAAId,gBAAgB,CAAA,CAAEqB,OAAO,CAAA;AAClD,EAAA,IAAI,CAACN,cAAc,OAAOQ,UAAAA;AAC1B,EAAA,OAAOP,MAAAA,CAAOC,OAAOF,YAAY,CAAA;AACnC,CAAC;AAEM,MAAMS,iCAAAA,GAAoCX,KAE9CC,CAAAA,GAAAA,KAAQ;AACT,EAAA,MAAMC,YAAAA,GAAeD,IAAIF,mBAAmB,CAAA;AAC5C,EAAA,OAAOG,YAAAA,CAAaU,OAAOC,2BAA2B,CAAA;AACxD,CAAC;AAEM,MAAMC,4BAAAA,GAA+Bd,KACzCC,CAAAA,GAAAA,KAAQ;AACP,EAAA,MAAMC,YAAAA,GAAeD,IAAIF,mBAAmB,CAAA;AAC5C,EAAA,OAAOG,YAAAA,CAAaU,OAAOG,sBAAsB,CAAA;AACnD,CACF;AAEO,MAAMC,wCAAAA,GAA2ChB,KAErDC,CAAAA,GAAAA,KAAQ;AACT,EAAA,MAAMC,YAAAA,GAAeD,IAAIU,iCAAiC,CAAA;AAC1D,EAAA,OAAOM,2BAA2Bf,YAAY,CAAA;AAChD,CAAC;AAEM,MAAMgB,mCAAAA,GAAsClB,KAChDC,CAAAA,GAAAA,KAAQ;AACP,EAAA,MAAMC,YAAAA,GAAeD,IAAIa,4BAA4B,CAAA;AACrD,EAAA,OAAOG,2BAA2Bf,YAAY,CAAA;AAChD,CACF;AAEO,MAAMiB,2BAAAA,GAA8BnB,KAAyBC,CAAAA,GAAAA,KAAQ;AAC1E,EAAA,MAAMC,YAAAA,GAAeD,IAAIM,oBAAoB,CAAA;AAC7C,EAAA,OAAOU,2BAA2Bf,YAAY,CAAA;AAChD,CAAC;AAEM,MAAMkB,wBAAAA,GAA2BpB,KAA6BC,CAAAA,GAAAA,KAAQ;AAC3E,EAAA,MAAMC,YAAAA,GAAeD,IAAIM,oBAAoB,CAAA;AAC7C,EAAA,OAAOc,wBAAwBnB,YAAY,CAAA;AAC7C,CAAC;AAEM,MAAMoB,2BAAAA,GAA8BtB,KACxCC,CAAAA,GAAAA,KAAQ;AACP,EAAA,MAAMC,YAAAA,GAAeD,IAAIM,oBAAoB,CAAA;AAC7C,EAAA,OAAOgB,2BAA2BrB,YAAY,CAAA;AAChD,CACF;;;;"}
|
|
@@ -103,6 +103,7 @@ export type MinTransactionItem = TransactionWithoutMeta<TransactionItem>;
|
|
|
103
103
|
export type StandaloneTransactionItem = Prettify<Extract<TransactionItem, StandaloneTransactionItemData>>;
|
|
104
104
|
export type BatchTransactionItem = Prettify<Extract<TransactionItem, BatchTransactionItemData>>;
|
|
105
105
|
export type TransactionWithoutMeta<T> = T extends Pick<TransactionItem, "dropped" | "timestamp" | "account" | "connectorData"> ? Prettify<Omit<T, "dropped" | "timestamp" | "account" | "connectorData">> : T;
|
|
106
|
+
export type PreSignTransactionItem = TransactionItemPreSignDeltaOrder | TransactionItemDepositNativeAndPreSignDeltaOrder;
|
|
106
107
|
type SafeConnectorData = {
|
|
107
108
|
type: typeof safe.type;
|
|
108
109
|
id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/transactions/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/transactions/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { BatchTransactionItem, GnosisSafeTransactionItem, StandaloneTransactionItem, TransactionItem, TransactionItemSwap } from './types';
|
|
1
|
+
import { BatchTransactionItem, GnosisSafeTransactionItem, PreSignTransactionItem, StandaloneTransactionItem, TransactionItem, TransactionItemSwap } from './types';
|
|
2
2
|
import { Hash } from 'viem';
|
|
3
3
|
export declare function isStandaloneTransactionItem(item: TransactionItem): item is StandaloneTransactionItem;
|
|
4
4
|
export declare function isBatchTransactionItem(item: TransactionItem): item is BatchTransactionItem;
|
|
5
5
|
export declare function extractPendingTransactions<T extends StandaloneTransactionItem | BatchTransactionItem>(transactions: T[]): T[];
|
|
6
6
|
export declare function extractSwapTransactions(transactions: (StandaloneTransactionItem | BatchTransactionItem)[]): TransactionItemSwap[];
|
|
7
|
+
export declare function extractPreSignTransactions(transactions: (StandaloneTransactionItem | BatchTransactionItem)[]): PreSignTransactionItem[];
|
|
7
8
|
export type TransactionItemSwapWithId = TransactionItemSwap & {
|
|
8
9
|
id: Hash;
|
|
9
10
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/transactions/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EACpB,yBAAyB,EACzB,yBAAyB,EACzB,eAAe,EACf,mBAAmB,EACpB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAEjC,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,eAAe,GACpB,IAAI,IAAI,yBAAyB,CAEnC;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,eAAe,GACpB,IAAI,IAAI,oBAAoB,CAE9B;AAED,wBAAgB,0BAA0B,CACxC,CAAC,SAAS,yBAAyB,GAAG,oBAAoB,EAC1D,YAAY,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAQxB;AAED,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,CAAC,yBAAyB,GAAG,oBAAoB,CAAC,EAAE,GACjE,mBAAmB,EAAE,CAEvB;AAID,MAAM,MAAM,yBAAyB,GAAG,mBAAmB,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,CAAC;AAE3E,wBAAgB,2BAA2B,CAAC,CAAC,SAAS,mBAAmB,EACvE,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,GACjB,yBAAyB,EAAE,CAiB7B;AAED,wBAAgB,cAAc,CAC5B,EAAE,EAAE,eAAe,GAClB,EAAE,IAAI,yBAAyB,CAOjC"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/transactions/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EACpB,yBAAyB,EACzB,sBAAsB,EACtB,yBAAyB,EACzB,eAAe,EACf,mBAAmB,EACpB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAEjC,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,eAAe,GACpB,IAAI,IAAI,yBAAyB,CAEnC;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,eAAe,GACpB,IAAI,IAAI,oBAAoB,CAE9B;AAED,wBAAgB,0BAA0B,CACxC,CAAC,SAAS,yBAAyB,GAAG,oBAAoB,EAC1D,YAAY,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAQxB;AAED,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,CAAC,yBAAyB,GAAG,oBAAoB,CAAC,EAAE,GACjE,mBAAmB,EAAE,CAEvB;AAED,wBAAgB,0BAA0B,CACxC,YAAY,EAAE,CAAC,yBAAyB,GAAG,oBAAoB,CAAC,EAAE,GACjE,sBAAsB,EAAE,CAM1B;AAID,MAAM,MAAM,yBAAyB,GAAG,mBAAmB,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,CAAC;AAE3E,wBAAgB,2BAA2B,CAAC,CAAC,SAAS,mBAAmB,EACvE,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,GACjB,yBAAyB,EAAE,CAiB7B;AAED,wBAAgB,cAAc,CAC5B,EAAE,EAAE,eAAe,GAClB,EAAE,IAAI,yBAAyB,CAOjC"}
|
|
@@ -12,6 +12,9 @@ function extractPendingTransactions(transactions) {
|
|
|
12
12
|
function extractSwapTransactions(transactions) {
|
|
13
13
|
return transactions.filter((tx) => tx.action === "swap");
|
|
14
14
|
}
|
|
15
|
+
function extractPreSignTransactions(transactions) {
|
|
16
|
+
return transactions.filter((tx) => tx.action === "preSignDeltaOrder" || tx.action === "depositNativeAndPreSign");
|
|
17
|
+
}
|
|
15
18
|
function combineSwapTransactionItems(...txArrays) {
|
|
16
19
|
const map = {};
|
|
17
20
|
txArrays.flat().forEach((item) => {
|
|
@@ -28,5 +31,5 @@ function isGnosisSafeTx(tx) {
|
|
|
28
31
|
isConnectorWithSafeProvider(tx.connectorData));
|
|
29
32
|
}
|
|
30
33
|
|
|
31
|
-
export { combineSwapTransactionItems, extractPendingTransactions, extractSwapTransactions, isBatchTransactionItem, isGnosisSafeTx, isStandaloneTransactionItem };
|
|
34
|
+
export { combineSwapTransactionItems, extractPendingTransactions, extractPreSignTransactions, extractSwapTransactions, isBatchTransactionItem, isGnosisSafeTx, isStandaloneTransactionItem };
|
|
32
35
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sources":["../../src/transactions/utils.ts"],"sourcesContent":["import { isConnectorWithSafeProvider } from \"@/components/web3/ConnectExternalProvider/utils\";\nimport type {\n BatchTransactionItem,\n GnosisSafeTransactionItem,\n StandaloneTransactionItem,\n TransactionItem,\n TransactionItemSwap,\n} from \"./types\";\nimport type { Hash } from \"viem\";\n\nexport function isStandaloneTransactionItem(\n item: TransactionItem\n): item is StandaloneTransactionItem {\n return \"transactionHash\" in item;\n}\n\nexport function isBatchTransactionItem(\n item: TransactionItem\n): item is BatchTransactionItem {\n return \"callsId\" in item;\n}\n\nexport function extractPendingTransactions<\n T extends StandaloneTransactionItem | BatchTransactionItem,\n>(transactions: T[]): T[] {\n return transactions.filter(\n (tx) =>\n !tx.dropped &&\n (isStandaloneTransactionItem(tx)\n ? !tx.receipt\n : !tx.callsStatus || tx.callsStatus === \"pending\")\n );\n}\n\nexport function extractSwapTransactions(\n transactions: (StandaloneTransactionItem | BatchTransactionItem)[]\n): TransactionItemSwap[] {\n return transactions.filter((tx) => tx.action === \"swap\");\n}\n\n// not all TransactionItemSwap have transactionHash\n// id will be either transactionHash (for standalone tx) or receipt.transactionHash (for batch tx)\nexport type TransactionItemSwapWithId = TransactionItemSwap & { id: Hash };\n\nexport function combineSwapTransactionItems<T extends TransactionItemSwap>(\n ...txArrays: T[][]\n): TransactionItemSwapWithId[] {\n const map: Record<Hash, TransactionItemSwapWithId> = {};\n\n txArrays.flat().forEach((item) => {\n const transactionHash = isStandaloneTransactionItem(item)\n ? item.transactionHash\n : item.receipt?.transactionHash;\n\n // we can't rely on callsId for batch swap tx as identifier if we have another source of truth\n // better to not show pending calls until we have transactionHash\n // otherwise it may lead to duplicate entries in the Activities list\n // when transaction appeared in the metabase but we still have pending call in the local storage\n if (transactionHash)\n map[transactionHash] = { ...item, id: transactionHash };\n });\n\n return Object.values(map);\n}\n\nexport function isGnosisSafeTx(\n tx: TransactionItem\n): tx is GnosisSafeTransactionItem {\n return (\n !!tx.connectorData &&\n (tx.connectorData.isSafe === true ||\n // extra check for backwards compatibility with txs from localStorage without connectorData.isSafe\n isConnectorWithSafeProvider(tx.connectorData))\n );\n}\n"],"names":["isStandaloneTransactionItem","item","isBatchTransactionItem","extractPendingTransactions","transactions","filter","tx","dropped","receipt","callsStatus","extractSwapTransactions","action","combineSwapTransactionItems","txArrays","map","flat","forEach","transactionHash","id","Object","values","isGnosisSafeTx","connectorData","isSafe","isConnectorWithSafeProvider"],"mappings":";;
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../src/transactions/utils.ts"],"sourcesContent":["import { isConnectorWithSafeProvider } from \"@/components/web3/ConnectExternalProvider/utils\";\nimport type {\n BatchTransactionItem,\n GnosisSafeTransactionItem,\n PreSignTransactionItem,\n StandaloneTransactionItem,\n TransactionItem,\n TransactionItemSwap,\n} from \"./types\";\nimport type { Hash } from \"viem\";\n\nexport function isStandaloneTransactionItem(\n item: TransactionItem\n): item is StandaloneTransactionItem {\n return \"transactionHash\" in item;\n}\n\nexport function isBatchTransactionItem(\n item: TransactionItem\n): item is BatchTransactionItem {\n return \"callsId\" in item;\n}\n\nexport function extractPendingTransactions<\n T extends StandaloneTransactionItem | BatchTransactionItem,\n>(transactions: T[]): T[] {\n return transactions.filter(\n (tx) =>\n !tx.dropped &&\n (isStandaloneTransactionItem(tx)\n ? !tx.receipt\n : !tx.callsStatus || tx.callsStatus === \"pending\")\n );\n}\n\nexport function extractSwapTransactions(\n transactions: (StandaloneTransactionItem | BatchTransactionItem)[]\n): TransactionItemSwap[] {\n return transactions.filter((tx) => tx.action === \"swap\");\n}\n\nexport function extractPreSignTransactions(\n transactions: (StandaloneTransactionItem | BatchTransactionItem)[]\n): PreSignTransactionItem[] {\n return transactions.filter(\n (tx) =>\n tx.action === \"preSignDeltaOrder\" ||\n tx.action === \"depositNativeAndPreSign\"\n );\n}\n\n// not all TransactionItemSwap have transactionHash\n// id will be either transactionHash (for standalone tx) or receipt.transactionHash (for batch tx)\nexport type TransactionItemSwapWithId = TransactionItemSwap & { id: Hash };\n\nexport function combineSwapTransactionItems<T extends TransactionItemSwap>(\n ...txArrays: T[][]\n): TransactionItemSwapWithId[] {\n const map: Record<Hash, TransactionItemSwapWithId> = {};\n\n txArrays.flat().forEach((item) => {\n const transactionHash = isStandaloneTransactionItem(item)\n ? item.transactionHash\n : item.receipt?.transactionHash;\n\n // we can't rely on callsId for batch swap tx as identifier if we have another source of truth\n // better to not show pending calls until we have transactionHash\n // otherwise it may lead to duplicate entries in the Activities list\n // when transaction appeared in the metabase but we still have pending call in the local storage\n if (transactionHash)\n map[transactionHash] = { ...item, id: transactionHash };\n });\n\n return Object.values(map);\n}\n\nexport function isGnosisSafeTx(\n tx: TransactionItem\n): tx is GnosisSafeTransactionItem {\n return (\n !!tx.connectorData &&\n (tx.connectorData.isSafe === true ||\n // extra check for backwards compatibility with txs from localStorage without connectorData.isSafe\n isConnectorWithSafeProvider(tx.connectorData))\n );\n}\n"],"names":["isStandaloneTransactionItem","item","isBatchTransactionItem","extractPendingTransactions","transactions","filter","tx","dropped","receipt","callsStatus","extractSwapTransactions","action","extractPreSignTransactions","combineSwapTransactionItems","txArrays","map","flat","forEach","transactionHash","id","Object","values","isGnosisSafeTx","connectorData","isSafe","isConnectorWithSafeProvider"],"mappings":";;AAWO,SAASA,4BACdC,IAAAA,EACmC;AACnC,EAAA,OAAO,iBAAA,IAAqBA,IAAAA;AAC9B;AAEO,SAASC,uBACdD,IAAAA,EAC8B;AAC9B,EAAA,OAAO,SAAA,IAAaA,IAAAA;AACtB;AAEO,SAASE,2BAEdC,YAAAA,EAAwB;AACxB,EAAA,OAAOA,aAAaC,MAAAA,CACjBC,CAAAA,EAAAA,KACC,CAACA,EAAAA,CAAGC,YACHP,2BAAAA,CAA4BM,EAAE,CAAA,GAC3B,CAACA,GAAGE,OAAAA,GACJ,CAACF,GAAGG,WAAAA,IAAeH,EAAAA,CAAGG,gBAAgB,SAAA,CAC9C,CAAA;AACF;AAEO,SAASC,wBACdN,YAAAA,EACuB;AACvB,EAAA,OAAOA,YAAAA,CAAaC,MAAAA,CAAQC,CAAAA,EAAAA,KAAOA,EAAAA,CAAGK,WAAW,MAAM,CAAA;AACzD;AAEO,SAASC,2BACdR,YAAAA,EAC0B;AAC1B,EAAA,OAAOA,YAAAA,CAAaC,OACjBC,CAAAA,EAAAA,KACCA,EAAAA,CAAGK,WAAW,mBAAA,IACdL,EAAAA,CAAGK,WAAW,yBAClB,CAAA;AACF;AAMO,SAASE,+BACXC,QAAAA,EAC0B;AAC7B,EAAA,MAAMC,MAA+C,EAAC;AAEtDD,EAAAA,QAAAA,CAASE,IAAAA,EAAK,CAAEC,OAAAA,CAAShB,CAAAA,IAAAA,KAAS;AAChC,IAAA,MAAMiB,kBAAkBlB,2BAAAA,CAA4BC,IAAI,IACpDA,IAAAA,CAAKiB,eAAAA,GACLjB,KAAKO,OAAAA,EAASU,eAAAA;AAMlB,IAAA,IAAIA,eAAAA,EACFH,GAAAA,CAAIG,eAAe,CAAA,GAAI;AAAA,MAAE,GAAGjB,IAAAA;AAAAA,MAAMkB,EAAAA,EAAID;AAAAA,KAAgB;AAAA,EAC1D,CAAC,CAAA;AAED,EAAA,OAAOE,MAAAA,CAAOC,OAAON,GAAG,CAAA;AAC1B;AAEO,SAASO,eACdhB,EAAAA,EACiC;AACjC,EAAA,OACE,CAAC,CAACA,EAAAA,CAAGiB,aAAAA,KACJjB,EAAAA,CAAGiB,cAAcC,MAAAA,KAAW,IAAA;AAAA,EAE3BC,2BAAAA,CAA4BnB,GAAGiB,aAAa,CAAA,CAAA;AAElD;;;;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@velora-dex/widget",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.10",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
"@tanstack/react-pacer": "^0.14.0",
|
|
77
77
|
"@tanstack/react-virtual": "^3.13.12",
|
|
78
78
|
"@uniswap/token-lists": "1.0.0-beta.34",
|
|
79
|
-
"@velora-dex/sdk": "9.3.5
|
|
79
|
+
"@velora-dex/sdk": "9.3.5",
|
|
80
80
|
"@wagmi/core": "^2.18.1",
|
|
81
81
|
"axios": "^1.11.0",
|
|
82
82
|
"big.js": "^7.0.1",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DegenModeConfirmation.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/TradeParameters/DegenModeConfirmation.tsx"],"names":[],"mappings":"AASA,KAAK,0BAA0B,GAAG;IAChC,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AAOF,eAAO,MAAM,qBAAqB,GAAI,gBAEnC,0BAA0B,4CAuE5B,CAAC"}
|
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
-
import { d as distExports } from '../../../_virtual/index.js';
|
|
3
|
-
import { useState } from 'react';
|
|
4
|
-
import { Input } from '../../ui/input.js';
|
|
5
|
-
import { Button } from '../../ui/button.js';
|
|
6
|
-
import { WarningWithTitle } from '../Warning/Warning.js';
|
|
7
|
-
import { cn } from '../../../lib/utils/index.js';
|
|
8
|
-
import { ReactComponent as ForwardRef } from '../../../assets/check.svg.js';
|
|
9
|
-
|
|
10
|
-
const CONFIRMATION_WORD = "CONFIRM";
|
|
11
|
-
const warningClassses = {
|
|
12
|
-
root: "border-1 border-secondary-radical-red-1 rounded-xs bg-[rgba(255,43,82,0.05)] text-secondary-radical-red-1",
|
|
13
|
-
title: "font-medium"
|
|
14
|
-
};
|
|
15
|
-
const DegenModeConfirmation = (t0) => {
|
|
16
|
-
const $ = distExports.c(24);
|
|
17
|
-
const {
|
|
18
|
-
onConfirm
|
|
19
|
-
} = t0;
|
|
20
|
-
const [inputValue, setInputValue] = useState("");
|
|
21
|
-
let t1;
|
|
22
|
-
if ($[0] !== inputValue) {
|
|
23
|
-
t1 = inputValue.toLowerCase();
|
|
24
|
-
$[0] = inputValue;
|
|
25
|
-
$[1] = t1;
|
|
26
|
-
} else {
|
|
27
|
-
t1 = $[1];
|
|
28
|
-
}
|
|
29
|
-
let t2;
|
|
30
|
-
if ($[2] === Symbol.for("react.memo_cache_sentinel")) {
|
|
31
|
-
t2 = CONFIRMATION_WORD.toLowerCase();
|
|
32
|
-
$[2] = t2;
|
|
33
|
-
} else {
|
|
34
|
-
t2 = $[2];
|
|
35
|
-
}
|
|
36
|
-
const isValid = t1 === t2;
|
|
37
|
-
let t3;
|
|
38
|
-
if ($[3] === Symbol.for("react.memo_cache_sentinel")) {
|
|
39
|
-
t3 = /* @__PURE__ */ jsx(WarningWithTitle, { title: "You are about to enable “Degen Mode”", message: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2", children: [
|
|
40
|
-
/* @__PURE__ */ jsx("div", { children: "Enabling Degen Mode allows future trades with high price impact or no USD price oracle." }),
|
|
41
|
-
/* @__PURE__ */ jsx("div", { children: "Prices may be unreliable and execution can be unfavorable. This disables price safety checks until turned off. Proceed only if you accept the risks." })
|
|
42
|
-
] }), classes: warningClassses });
|
|
43
|
-
$[3] = t3;
|
|
44
|
-
} else {
|
|
45
|
-
t3 = $[3];
|
|
46
|
-
}
|
|
47
|
-
let t4;
|
|
48
|
-
if ($[4] === Symbol.for("react.memo_cache_sentinel")) {
|
|
49
|
-
t4 = /* @__PURE__ */ jsxs("p", { className: "text-sm text-contrast-4 dark:text-contrast-6 pb-2", children: [
|
|
50
|
-
"Please write below “",
|
|
51
|
-
/* @__PURE__ */ jsx("span", { className: "font-semibold text-secondary-radical-red-1", children: CONFIRMATION_WORD }),
|
|
52
|
-
"” to proceed"
|
|
53
|
-
] });
|
|
54
|
-
$[4] = t4;
|
|
55
|
-
} else {
|
|
56
|
-
t4 = $[4];
|
|
57
|
-
}
|
|
58
|
-
let t5;
|
|
59
|
-
if ($[5] === Symbol.for("react.memo_cache_sentinel")) {
|
|
60
|
-
t5 = (e) => setInputValue(e.target.value);
|
|
61
|
-
$[5] = t5;
|
|
62
|
-
} else {
|
|
63
|
-
t5 = $[5];
|
|
64
|
-
}
|
|
65
|
-
let t6;
|
|
66
|
-
if ($[6] !== isValid) {
|
|
67
|
-
t6 = cn("rounded-sm h-10 placeholder:text-contrast-6 dark:placeholder:text-contrast-5 placeholder:text-xs uppercase", {
|
|
68
|
-
"border-secondary-shamrock-green-2 dark:border-secondary-shamrock-green-2 focus-visible:border-secondary-shamrock-green-2 dark:focus-visible:border-secondary-shamrock-green-2": isValid
|
|
69
|
-
});
|
|
70
|
-
$[6] = isValid;
|
|
71
|
-
$[7] = t6;
|
|
72
|
-
} else {
|
|
73
|
-
t6 = $[7];
|
|
74
|
-
}
|
|
75
|
-
let t7;
|
|
76
|
-
if ($[8] !== isValid) {
|
|
77
|
-
t7 = isValid ? /* @__PURE__ */ jsx(ForwardRef, { className: "stroke-secondary-shamrock-green-2" }) : void 0;
|
|
78
|
-
$[8] = isValid;
|
|
79
|
-
$[9] = t7;
|
|
80
|
-
} else {
|
|
81
|
-
t7 = $[9];
|
|
82
|
-
}
|
|
83
|
-
let t8;
|
|
84
|
-
if ($[10] !== isValid || $[11] !== onConfirm) {
|
|
85
|
-
t8 = (e_0) => {
|
|
86
|
-
if (e_0.key === "Enter" && isValid) {
|
|
87
|
-
onConfirm();
|
|
88
|
-
}
|
|
89
|
-
};
|
|
90
|
-
$[10] = isValid;
|
|
91
|
-
$[11] = onConfirm;
|
|
92
|
-
$[12] = t8;
|
|
93
|
-
} else {
|
|
94
|
-
t8 = $[12];
|
|
95
|
-
}
|
|
96
|
-
let t9;
|
|
97
|
-
if ($[13] !== inputValue || $[14] !== t6 || $[15] !== t7 || $[16] !== t8) {
|
|
98
|
-
t9 = /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6 pb-8", children: [
|
|
99
|
-
t3,
|
|
100
|
-
/* @__PURE__ */ jsxs("div", { children: [
|
|
101
|
-
t4,
|
|
102
|
-
/* @__PURE__ */ jsx(Input, { value: inputValue, onChange: t5, placeholder: `Write “${CONFIRMATION_WORD}” here`, autoFocus: true, className: t6, endAdornment: t7, onKeyDown: t8 })
|
|
103
|
-
] })
|
|
104
|
-
] });
|
|
105
|
-
$[13] = inputValue;
|
|
106
|
-
$[14] = t6;
|
|
107
|
-
$[15] = t7;
|
|
108
|
-
$[16] = t8;
|
|
109
|
-
$[17] = t9;
|
|
110
|
-
} else {
|
|
111
|
-
t9 = $[17];
|
|
112
|
-
}
|
|
113
|
-
const t10 = !isValid;
|
|
114
|
-
let t11;
|
|
115
|
-
if ($[18] !== onConfirm || $[19] !== t10) {
|
|
116
|
-
t11 = /* @__PURE__ */ jsx(Button, { variant: "default", radius: "sm", className: "h-[40px] w-full mt-auto", onClick: onConfirm, disabled: t10, children: "Confirm" });
|
|
117
|
-
$[18] = onConfirm;
|
|
118
|
-
$[19] = t10;
|
|
119
|
-
$[20] = t11;
|
|
120
|
-
} else {
|
|
121
|
-
t11 = $[20];
|
|
122
|
-
}
|
|
123
|
-
let t12;
|
|
124
|
-
if ($[21] !== t11 || $[22] !== t9) {
|
|
125
|
-
t12 = /* @__PURE__ */ jsxs("div", { className: "p-6 pt-0 text-contrast-4 dark:text-contrast-7 flex flex-col", children: [
|
|
126
|
-
t9,
|
|
127
|
-
t11
|
|
128
|
-
] });
|
|
129
|
-
$[21] = t11;
|
|
130
|
-
$[22] = t9;
|
|
131
|
-
$[23] = t12;
|
|
132
|
-
} else {
|
|
133
|
-
t12 = $[23];
|
|
134
|
-
}
|
|
135
|
-
return t12;
|
|
136
|
-
};
|
|
137
|
-
|
|
138
|
-
export { DegenModeConfirmation };
|
|
139
|
-
//# sourceMappingURL=DegenModeConfirmation.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DegenModeConfirmation.js","sources":["../../../../src/components/widget/TradeParameters/DegenModeConfirmation.tsx"],"sourcesContent":["import { useState } from \"react\";\nimport { Input } from \"@/components/ui/input\";\nimport { Button } from \"@/components/ui/button\";\nimport { WarningWithTitle } from \"../Warning/Warning\";\nimport { cn } from \"@/lib/utils\";\nimport { ReactComponent as CheckSVG } from \"@/assets/check.svg\";\n\nconst CONFIRMATION_WORD = \"CONFIRM\";\n\ntype DegenModeConfirmationProps = {\n onConfirm: () => void;\n};\n\nconst warningClassses = {\n root: \"border-1 border-secondary-radical-red-1 rounded-xs bg-[rgba(255,43,82,0.05)] text-secondary-radical-red-1\",\n title: \"font-medium\",\n} as const;\n\nexport const DegenModeConfirmation = ({\n onConfirm,\n}: DegenModeConfirmationProps) => {\n const [inputValue, setInputValue] = useState(\"\");\n\n const isValid = inputValue.toLowerCase() === CONFIRMATION_WORD.toLowerCase();\n\n return (\n <div className=\"p-6 pt-0 text-contrast-4 dark:text-contrast-7 flex flex-col\">\n <div className=\"flex flex-col gap-6 pb-8\">\n <WarningWithTitle\n title=\"You are about to enable “Degen Mode”\"\n message={\n <div className=\"flex flex-col gap-2\">\n <div>\n Enabling Degen Mode allows future trades with high price impact\n or no USD price oracle.\n </div>\n <div>\n Prices may be unreliable and execution can be unfavorable. This\n disables price safety checks until turned off. Proceed only if\n you accept the risks.\n </div>\n </div>\n }\n classes={warningClassses}\n />\n <div>\n <p className=\"text-sm text-contrast-4 dark:text-contrast-6 pb-2\">\n Please write below “\n <span className=\"font-semibold text-secondary-radical-red-1\">\n {CONFIRMATION_WORD}\n </span>\n ” to proceed\n </p>\n <Input\n value={inputValue}\n onChange={(e) => setInputValue(e.target.value)}\n placeholder={`Write “${CONFIRMATION_WORD}” here`}\n autoFocus\n className={cn(\n \"rounded-sm h-10 placeholder:text-contrast-6 dark:placeholder:text-contrast-5 placeholder:text-xs uppercase\",\n {\n \"border-secondary-shamrock-green-2 dark:border-secondary-shamrock-green-2 focus-visible:border-secondary-shamrock-green-2 dark:focus-visible:border-secondary-shamrock-green-2\":\n isValid,\n }\n )}\n endAdornment={\n isValid ? (\n <CheckSVG className=\"stroke-secondary-shamrock-green-2\" />\n ) : undefined\n }\n onKeyDown={(e) => {\n // allow confirming by pressing Enter\n if (e.key === \"Enter\" && isValid) {\n onConfirm();\n }\n }}\n />\n </div>\n </div>\n\n <Button\n variant=\"default\"\n radius=\"sm\"\n className=\"h-[40px] w-full mt-auto\"\n onClick={onConfirm}\n disabled={!isValid}\n >\n Confirm\n </Button>\n </div>\n );\n};\n"],"names":["CONFIRMATION_WORD","warningClassses","root","title","DegenModeConfirmation","t0","$","_c","onConfirm","inputValue","setInputValue","useState","t1","toLowerCase","t2","Symbol","for","isValid","t3","t4","t5","e","target","value","t6","cn","t7","CheckSVG","undefined","t8","e_0","key","t9","t10","t11","t12"],"mappings":"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"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export type DegenModeParameterProps = {
|
|
2
|
-
isNotDefault: boolean;
|
|
3
|
-
setValue: (value: boolean) => void;
|
|
4
|
-
value: boolean;
|
|
5
|
-
onRequestEnable?: () => void;
|
|
6
|
-
};
|
|
7
|
-
export declare const DegenModeParameter: ({ isNotDefault, setValue, value, onRequestEnable, }: DegenModeParameterProps) => import("react/jsx-runtime").JSX.Element;
|
|
8
|
-
//# sourceMappingURL=DegenModeParameter.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DegenModeParameter.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/TradeParameters/DegenModeParameter.tsx"],"names":[],"mappings":"AAIA,MAAM,MAAM,uBAAuB,GAAG;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,KAAK,EAAE,OAAO,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,qDAKhC,uBAAuB,4CAgCzB,CAAC"}
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
-
import { d as distExports } from '../../../_virtual/index.js';
|
|
3
|
-
import { Switch } from '../../ui/switch.js';
|
|
4
|
-
import { EllipseIcon } from '../Icon/EllipseIcon.js';
|
|
5
|
-
import { DetailWithTooltip } from '../Details/DetailWithTooltip.js';
|
|
6
|
-
|
|
7
|
-
const DegenModeParameter = (t0) => {
|
|
8
|
-
const $ = distExports.c(14);
|
|
9
|
-
const {
|
|
10
|
-
isNotDefault,
|
|
11
|
-
setValue,
|
|
12
|
-
value,
|
|
13
|
-
onRequestEnable
|
|
14
|
-
} = t0;
|
|
15
|
-
let t1;
|
|
16
|
-
if ($[0] !== onRequestEnable || $[1] !== setValue) {
|
|
17
|
-
t1 = (checked) => {
|
|
18
|
-
if (checked && onRequestEnable) {
|
|
19
|
-
onRequestEnable();
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
setValue(checked);
|
|
23
|
-
};
|
|
24
|
-
$[0] = onRequestEnable;
|
|
25
|
-
$[1] = setValue;
|
|
26
|
-
$[2] = t1;
|
|
27
|
-
} else {
|
|
28
|
-
t1 = $[2];
|
|
29
|
-
}
|
|
30
|
-
const handleChange = t1;
|
|
31
|
-
let t2;
|
|
32
|
-
if ($[3] === Symbol.for("react.memo_cache_sentinel")) {
|
|
33
|
-
t2 = /* @__PURE__ */ jsx(DetailWithTooltip, { detail: "Degen Mode", tooltip: "Allows trading when price impact is high or no USD oracle price is available. Rates may be unreliable. Use at your own risk.", classes: {
|
|
34
|
-
root: "text-sm"
|
|
35
|
-
} });
|
|
36
|
-
$[3] = t2;
|
|
37
|
-
} else {
|
|
38
|
-
t2 = $[3];
|
|
39
|
-
}
|
|
40
|
-
let t3;
|
|
41
|
-
if ($[4] !== isNotDefault) {
|
|
42
|
-
t3 = isNotDefault && /* @__PURE__ */ jsx(EllipseIcon, { className: "stroke-contrast-8 dark:stroke-contrast-2" });
|
|
43
|
-
$[4] = isNotDefault;
|
|
44
|
-
$[5] = t3;
|
|
45
|
-
} else {
|
|
46
|
-
t3 = $[5];
|
|
47
|
-
}
|
|
48
|
-
let t4;
|
|
49
|
-
if ($[6] !== t3) {
|
|
50
|
-
t4 = /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 text-sm", children: [
|
|
51
|
-
t2,
|
|
52
|
-
t3
|
|
53
|
-
] });
|
|
54
|
-
$[6] = t3;
|
|
55
|
-
$[7] = t4;
|
|
56
|
-
} else {
|
|
57
|
-
t4 = $[7];
|
|
58
|
-
}
|
|
59
|
-
let t5;
|
|
60
|
-
if ($[8] !== handleChange || $[9] !== value) {
|
|
61
|
-
t5 = /* @__PURE__ */ jsx(Switch, { checked: value, onCheckedChange: handleChange, className: "cursor-pointer" });
|
|
62
|
-
$[8] = handleChange;
|
|
63
|
-
$[9] = value;
|
|
64
|
-
$[10] = t5;
|
|
65
|
-
} else {
|
|
66
|
-
t5 = $[10];
|
|
67
|
-
}
|
|
68
|
-
let t6;
|
|
69
|
-
if ($[11] !== t4 || $[12] !== t5) {
|
|
70
|
-
t6 = /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between gap-2 py-4", children: [
|
|
71
|
-
t4,
|
|
72
|
-
t5
|
|
73
|
-
] });
|
|
74
|
-
$[11] = t4;
|
|
75
|
-
$[12] = t5;
|
|
76
|
-
$[13] = t6;
|
|
77
|
-
} else {
|
|
78
|
-
t6 = $[13];
|
|
79
|
-
}
|
|
80
|
-
return t6;
|
|
81
|
-
};
|
|
82
|
-
|
|
83
|
-
export { DegenModeParameter };
|
|
84
|
-
//# sourceMappingURL=DegenModeParameter.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DegenModeParameter.js","sources":["../../../../src/components/widget/TradeParameters/DegenModeParameter.tsx"],"sourcesContent":["import { Switch } from \"@/components/ui/switch\";\nimport { EllipseIcon } from \"../Icon/EllipseIcon\";\nimport { DetailWithTooltip } from \"../Details/DetailWithTooltip\";\n\nexport type DegenModeParameterProps = {\n isNotDefault: boolean;\n setValue: (value: boolean) => void;\n value: boolean;\n onRequestEnable?: () => void;\n};\n\nexport const DegenModeParameter = ({\n isNotDefault,\n setValue,\n value,\n onRequestEnable,\n}: DegenModeParameterProps) => {\n const handleChange = (checked: boolean) => {\n if (checked && onRequestEnable) {\n // Intercept enable — show confirmation instead of toggling directly\n onRequestEnable();\n return;\n }\n // Disable works immediately without confirmation\n setValue(checked);\n };\n\n return (\n <div className=\"flex items-center justify-between gap-2 py-4\">\n <div className=\"flex items-center gap-2 text-sm\">\n <DetailWithTooltip\n detail=\"Degen Mode\"\n tooltip={\n \"Allows trading when price impact is high or no USD oracle price is available. Rates may be unreliable. Use at your own risk.\"\n }\n classes={{ root: \"text-sm\" }}\n />\n {isNotDefault && (\n <EllipseIcon className=\"stroke-contrast-8 dark:stroke-contrast-2\" />\n )}\n </div>\n <Switch\n checked={value}\n onCheckedChange={handleChange}\n className=\"cursor-pointer\"\n />\n </div>\n );\n};\n"],"names":["DegenModeParameter","t0","$","_c","isNotDefault","setValue","value","onRequestEnable","t1","checked","handleChange","t2","Symbol","for","root","t3","t4","t5","t6"],"mappings":";;;;;;AAWO,MAAMA,qBAAqBC,CAAAA,EAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAAC,EAAA,MAAA;AAAA,IAAAC,YAAAA;AAAAA,IAAAC,QAAAA;AAAAA,IAAAC,KAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAAN,EAAAA;AAKT,EAAA,IAAAO,EAAAA;AAAA,EAAA,IAAAN,EAAA,CAAA,CAAA,KAAAK,mBAAAL,CAAAA,QAAAG,QAAAA,EAAA;AACHG,IAAAA,EAAAA,GAAAC,CAAAA,OAAAA,KAAA;AACnB,MAAA,IAAIA,WAAAF,eAAAA,EAA0B;AAE5BA,QAAAA,eAAAA,EAAgB;AAAC,QAAA;AAAA,MAAA;AAInBF,MAAAA,QAAAA,CAASI,OAAO,CAAA;AAAA,IAAC,CAAA;AAClBP,IAAAA,CAAAA,MAAAK,eAAAA;AAAAL,IAAAA,CAAAA,MAAAG,QAAAA;AAAAH,IAAAA,CAAAA,MAAAM,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAN,EAAA,CAAA,CAAA;AAAA,EAAA;AARD,EAAA,MAAAQ,YAAAA,GAAqBF,EAAAA;AAQnB,EAAA,IAAAG,EAAAA;AAAA,EAAA,IAAAT,EAAA,CAAA,CAAA,KAAAU,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAKIF,IAAAA,EAAAA,uBAAC,iBAAA,EAAA,EACQ,MAAA,EAAA,YAAA,EAEL,OAAA,EAAA,gIAEO,OAAA,EAAA;AAAA,MAAAG,IAAAA,EAAQ;AAAA,KAAU,EAAC,CAAA;AAC5BZ,IAAAA,CAAAA,MAAAS,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAT,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAa,EAAAA;AAAA,EAAA,IAAAb,CAAAA,QAAAE,YAAAA,EAAA;AACDW,IAAAA,EAAAA,GAAAX,YAAAA,oBACC,GAAA,CAAC,WAAA,EAAA,EAAsB,SAAA,EAAA,0CAAA,EAA0C,CAAA;AAClEF,IAAAA,CAAAA,MAAAE,YAAAA;AAAAF,IAAAA,CAAAA,MAAAa,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAb,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAc,EAAAA;AAAA,EAAA,IAAAd,CAAAA,QAAAa,EAAAA,EAAA;AAVHC,IAAAA,EAAAA,mBAAA,IAAA,CAAA,KAAA,EAAA,EAAe,SAAA,EAAA,iCAAA,EACbL,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,MAOCI;AAAAA,KAAAA,EAGH,CAAA;AAAMb,IAAAA,CAAAA,MAAAa,EAAAA;AAAAb,IAAAA,CAAAA,MAAAc,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAd,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAe,EAAAA;AAAA,EAAA,IAAAf,EAAA,CAAA,CAAA,KAAAQ,gBAAAR,CAAAA,QAAAI,KAAAA,EAAA;AACNW,IAAAA,EAAAA,uBAAC,MAAA,EAAA,EACUX,OAAAA,SACQI,eAAAA,gBACP,WAAA,gBAAA,EAAgB,CAAA;AAC1BR,IAAAA,CAAAA,MAAAQ,YAAAA;AAAAR,IAAAA,CAAAA,MAAAI,KAAAA;AAAAJ,IAAAA,CAAAA,OAAAe,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAf,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAgB,EAAAA;AAAA,EAAA,IAAAhB,EAAA,EAAA,CAAA,KAAAc,MAAAd,CAAAA,SAAAe,EAAAA,EAAA;AAjBJC,IAAAA,EAAAA,mBAAA,IAAA,CAAA,KAAA,EAAA,EAAe,SAAA,EAAA,8CAAA,EACbF,QAAAA,EAAAA;AAAAA,MAAAA,EAAAA;AAAAA,MAYAC;AAAAA,KAAAA,EAKF,CAAA;AAAMf,IAAAA,CAAAA,OAAAc,EAAAA;AAAAd,IAAAA,CAAAA,OAAAe,EAAAA;AAAAf,IAAAA,CAAAA,OAAAgB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAhB,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAlBNgB,EAAAA;AAkBM;;;;"}
|