@velora-dex/widget 0.8.3-dev.0 → 0.8.3
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/web3/ConnectExternalProvider/AutoconnectExternal.d.ts.map +1 -1
- package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js +23 -22
- package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
- package/dist/components/web3/ConnectExternalProvider/constants.d.ts +2 -1
- package/dist/components/web3/ConnectExternalProvider/constants.d.ts.map +1 -1
- package/dist/components/web3/ConnectExternalProvider/constants.js +2 -2
- package/dist/components/web3/ConnectExternalProvider/constants.js.map +1 -1
- package/dist/components/web3/ConnectExternalProvider/safeProviderWrapper.d.ts.map +1 -1
- package/dist/components/web3/ConnectExternalProvider/safeProviderWrapper.js +4 -1
- package/dist/components/web3/ConnectExternalProvider/safeProviderWrapper.js.map +1 -1
- package/dist/components/web3/ConnectExternalProvider/utils.d.ts.map +1 -1
- package/dist/components/web3/ConnectExternalProvider/utils.js +1 -1
- package/dist/components/web3/ConnectExternalProvider/utils.js.map +1 -1
- package/dist/components/web3/ConnectExternalProvider/walletConnectProviderWrapper.d.ts +5 -0
- package/dist/components/web3/ConnectExternalProvider/walletConnectProviderWrapper.d.ts.map +1 -0
- package/dist/components/web3/ConnectExternalProvider/walletConnectProviderWrapper.js +22 -0
- package/dist/components/web3/ConnectExternalProvider/walletConnectProviderWrapper.js.map +1 -0
- package/dist/components/widget/BridgeList/hooks.d.ts +2 -2
- package/dist/components/widget/BridgeList/hooks.d.ts.map +1 -1
- package/dist/components/widget/BridgeList/hooks.js +73 -79
- package/dist/components/widget/BridgeList/hooks.js.map +1 -1
- package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.d.ts +2 -2
- package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.d.ts.map +1 -1
- package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.d.ts.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.js +10 -10
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.js.map +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.js +1 -1
- package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js +1 -1
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts +2 -2
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +2 -2
- package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeError/utils.js +1 -1
- package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts +2 -2
- package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js.map +1 -1
- package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.d.ts +1 -4
- package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.js +1 -1
- package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.js.map +1 -1
- package/dist/configurator/Configurator.d.ts.map +1 -1
- package/dist/core/LimitOrderButton.d.ts.map +1 -1
- package/dist/core/LimitOrderButton.js +53 -46
- package/dist/core/LimitOrderButton.js.map +1 -1
- package/dist/core/OtcOrderButton.d.ts.map +1 -1
- package/dist/core/OtcOrderButton.js +6 -5
- package/dist/core/OtcOrderButton.js.map +1 -1
- package/dist/core/TradeFlowScreenButton.d.ts +4 -3
- package/dist/core/TradeFlowScreenButton.d.ts.map +1 -1
- package/dist/core/TradeFlowScreenButton.js +24 -24
- package/dist/core/TradeFlowScreenButton.js.map +1 -1
- package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts +1 -0
- package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
- package/dist/core/button/hooks/useWidgetButtonExtraProps.js +130 -99
- package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
- package/dist/core/index.js +5 -4
- package/dist/core/index.js.map +1 -1
- package/dist/core/inputs/hooks/useTokenFromInputProps.d.ts.map +1 -1
- package/dist/core/inputs/hooks/useTokenFromInputProps.js +2 -2
- 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 +2 -2
- package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
- package/dist/core/inputs/hooks/utils.d.ts.map +1 -1
- package/dist/core/inputs/hooks/utils.js +5 -7
- package/dist/core/inputs/hooks/utils.js.map +1 -1
- package/dist/core/limit/useLimitRate.d.ts +3 -2
- package/dist/core/limit/useLimitRate.d.ts.map +1 -1
- package/dist/core/limit/useLimitRate.js +110 -54
- package/dist/core/limit/useLimitRate.js.map +1 -1
- package/dist/core/limit/useLimitTokenToInputProps.d.ts.map +1 -1
- package/dist/core/limit/useLimitTokenToInputProps.js +4 -1
- package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
- package/dist/core/otc/state/selectedTokenActionsAtom.d.ts.map +1 -1
- package/dist/core/otc/state/selectedTokenActionsAtom.js +2 -2
- package/dist/core/otc/state/selectedTokenActionsAtom.js.map +1 -1
- package/dist/core/state/widgetEventsAtom.d.ts.map +1 -1
- package/dist/core/state/widgetEventsAtom.js +21 -11
- package/dist/core/state/widgetEventsAtom.js.map +1 -1
- package/dist/core/swapDetails/fees.d.ts.map +1 -1
- package/dist/core/swapDetails/fees.js +11 -16
- package/dist/core/swapDetails/fees.js.map +1 -1
- package/dist/core/swapDetails/maxToPay.d.ts.map +1 -1
- package/dist/core/swapDetails/maxToPay.js +17 -18
- package/dist/core/swapDetails/maxToPay.js.map +1 -1
- package/dist/core/twap/twapDetails/minimumReceiveable.d.ts +2 -2
- package/dist/core/twap/twapDetails/minimumReceiveable.d.ts.map +1 -1
- package/dist/core/twap/twapDetails/minimumReceiveable.js.map +1 -1
- package/dist/events/hooks/useOnPriceUpdates.js.map +1 -1
- package/dist/events/types/importToken.d.ts +14 -0
- package/dist/events/types/importToken.d.ts.map +1 -0
- package/dist/events/types/index.d.ts +4 -1
- package/dist/events/types/index.d.ts.map +1 -1
- package/dist/events/types/priceChange.d.ts +2 -2
- package/dist/events/types/priceChange.d.ts.map +1 -1
- package/dist/events/types/swap.d.ts +2 -2
- package/dist/events/types/swap.d.ts.map +1 -1
- package/dist/events/types/twap.d.ts +2 -2
- package/dist/events/types/twap.d.ts.map +1 -1
- package/dist/hooks/batch/useSendBatchTx.d.ts.map +1 -1
- package/dist/hooks/batch/useSendBatchTx.js +31 -32
- package/dist/hooks/batch/useSendBatchTx.js.map +1 -1
- package/dist/hooks/swap/prices/delta/bridge/const.d.ts +8 -0
- package/dist/hooks/swap/prices/delta/bridge/const.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/bridge/const.js +13 -0
- package/dist/hooks/swap/prices/delta/bridge/const.js.map +1 -0
- package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.d.ts +4 -3
- package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.js.map +1 -1
- package/dist/hooks/swap/prices/delta/bridge/utils.d.ts +3 -6
- package/dist/hooks/swap/prices/delta/bridge/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/bridge/utils.js +17 -20
- package/dist/hooks/swap/prices/delta/bridge/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts +2 -2
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js +5 -5
- package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts +2 -2
- package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js +2 -2
- package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js +28 -27
- package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/types.d.ts +3 -3
- package/dist/hooks/swap/prices/delta/mutations/types.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js +2 -2
- package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts +2 -2
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js +5 -5
- package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.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 +28 -27
- package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts +2 -2
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js +2 -2
- package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useSendDepositPreSignDeltaOrderTx.js +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useSendDepositPreSignDeltaOrderTx.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js +2 -2
- package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/utils.d.ts +6 -5
- package/dist/hooks/swap/prices/delta/mutations/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/mutations/utils.js +6 -6
- package/dist/hooks/swap/prices/delta/mutations/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/types.d.ts +1 -2
- package/dist/hooks/swap/prices/delta/orders/types.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts +3 -3
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.js +3 -3
- package/dist/hooks/swap/prices/delta/orders/unposted/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/utils.d.ts +29 -44
- package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/orders/utils.js +16 -128
- package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/errors.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +33 -16
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +6 -6
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts +3 -3
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js +8 -7
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/prices/factory.d.ts.map +1 -1
- package/dist/hooks/swap/prices/factory.js +1 -1
- package/dist/hooks/swap/prices/factory.js.map +1 -1
- package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts +1 -1
- package/dist/hooks/swap/prices/types.d.ts +3 -2
- package/dist/hooks/swap/prices/types.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.d.ts +3 -3
- package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
- package/dist/hooks/swap/prices/useTokenInputsFromPrice.js +3 -3
- package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
- package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts +2 -2
- package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js.map +1 -1
- package/dist/hooks/swap/prices/useTwapPrices.d.ts +5 -4
- package/dist/hooks/swap/prices/useTwapPrices.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useTwapPrices.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts +17 -10
- package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js +6 -6
- package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js +1 -1
- package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +5 -5
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +124 -119
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +2 -2
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +196 -159
- package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts +5 -5
- package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useTwapFlow.js +229 -217
- package/dist/hooks/swap/tradeFlow/useTwapFlow.js.map +1 -1
- package/dist/hooks/useSDK.d.ts +3 -19
- package/dist/hooks/useSDK.d.ts.map +1 -1
- package/dist/hooks/useSDK.js +35 -65
- package/dist/hooks/useSDK.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/lib/queryClient.js +2 -2
- package/dist/lib/queryClient.js.map +1 -1
- package/dist/lib/utils/price.d.ts +2 -5
- package/dist/lib/utils/price.d.ts.map +1 -1
- package/dist/lib/utils/price.js +5 -8
- package/dist/lib/utils/price.js.map +1 -1
- package/dist/lib/utils/twap.d.ts +2 -2
- package/dist/lib/utils/twap.d.ts.map +1 -1
- package/dist/lib/utils/twap.js +2 -2
- package/dist/lib/utils/twap.js.map +1 -1
- package/dist/tokens/state/addImportedTokenAtom.d.ts +2 -0
- package/dist/tokens/state/addImportedTokenAtom.d.ts.map +1 -1
- package/dist/tokens/state/addImportedTokenAtom.js +47 -31
- package/dist/tokens/state/addImportedTokenAtom.js.map +1 -1
- package/package.json +2 -2
- package/dist/lib/utils/scaleFactor.js +0 -13
- package/dist/lib/utils/scaleFactor.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queryClient.js","names":["getLogger","notifyOnPriceChange","isDeltaAuctionData","isExecutedDeltaAuction","DeltaPriceQueryKeyPrefix","
|
|
1
|
+
{"version":3,"file":"queryClient.js","names":["getLogger","notifyOnPriceChange","isDeltaAuctionData","isExecutedDeltaAuction","DeltaPriceQueryKeyPrefix","isDataDeltaOrBridgePrice","deltaAuctionPollingQueryKey","isDataMarketPrice","MarketPriceQueryKeyPrefix","invalidateBalancesAndAllowancesFactory","isReceiptsInWaitForCallsStatusData","isTransactionReceipt","isWaitForCallsStatusData","QueryCache","QueryClient","hashFn","waitForCallsStatusQueryKey","waitForTransactionReceiptQueryKey","logger","queryClient","defaultOptions","queries","queryKeyHashFn","queryCache","onSuccess","data","query","queryKeyPrefix","queryKey","waitForTransactionReceiptQueryKeyPrefix","log","transactionHash","invalidateBalancesAndAllowances","nonces","waitForCallsStatusDataQueryKeyPrefix","status","id","deltaAuctionPollingQueryKeyPrefix","order","permit"],"sources":["../../src/lib/queryClient.ts"],"sourcesContent":["import { getLogger } from \"@/core/logger\";\nimport { notifyOnPriceChange } from \"@/events/effects/price\";\nimport {\n isDeltaAuctionData,\n isExecutedDeltaAuction,\n} from \"@/hooks/swap/prices/delta/orders/utils\";\nimport {\n DeltaPriceQueryKeyPrefix,\n isDataDeltaOrBridgePrice,\n} from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\nimport { deltaAuctionPollingQueryKey } from \"@/hooks/swap/prices/delta/queries/useWatchDeltaOrder\";\nimport {\n isDataMarketPrice,\n MarketPriceQueryKeyPrefix,\n} from \"@/hooks/swap/prices/market/queries/useMarketPriceQuery\";\nimport { invalidateBalancesAndAllowancesFactory } from \"@/hooks/tokens/balances/useInvalidateTokenData\";\nimport {\n isReceiptsInWaitForCallsStatusData,\n isTransactionReceipt,\n isWaitForCallsStatusData,\n} from \"@/hooks/txs/queries/utils\";\nimport { QueryCache, QueryClient } from \"@tanstack/react-query\";\nimport {\n hashFn,\n waitForCallsStatusQueryKey,\n waitForTransactionReceiptQueryKey,\n} from \"wagmi/query\";\n\nconst logger = getLogger(\"QueryCache\");\n\nexport const queryClient = new QueryClient({\n defaultOptions: {\n queries: {\n queryKeyHashFn: hashFn, // for bigint support\n },\n },\n queryCache: new QueryCache({\n onSuccess(data, query) {\n const queryKeyPrefix = query.queryKey[0];\n\n if (\n queryKeyPrefix === waitForTransactionReceiptQueryKeyPrefix &&\n isTransactionReceipt(data)\n ) {\n logger.log(\n `waitForTransactionReceiptQuery:: tx ${data.transactionHash} is mined, invalidating balances and allowances`\n );\n invalidateBalancesAndAllowances({ nonces: true });\n return;\n }\n\n if (\n queryKeyPrefix === waitForCallsStatusDataQueryKeyPrefix &&\n isWaitForCallsStatusData(data) &&\n data.status === \"success\" &&\n isReceiptsInWaitForCallsStatusData(data)\n ) {\n logger.log(\n `waitForCallsStatusDataQuery:: batch ${data.id} success, invalidating balances and allowances`\n );\n invalidateBalancesAndAllowances({ nonces: false });\n return;\n }\n\n if (\n queryKeyPrefix === deltaAuctionPollingQueryKeyPrefix &&\n isDeltaAuctionData(data) &&\n isExecutedDeltaAuction(data)\n ) {\n logger.log(\n `deltaAuctionPollingQueryKey:: order ${data.id} is executed, invalidating balances and allowances`\n );\n invalidateBalancesAndAllowances({ nonces: !!data.order.permit });\n return;\n }\n\n if (\n queryKeyPrefix === DeltaPriceQueryKeyPrefix &&\n isDataDeltaOrBridgePrice(data)\n ) {\n notifyOnPriceChange(data, queryClient);\n return;\n }\n\n if (\n queryKeyPrefix === MarketPriceQueryKeyPrefix &&\n isDataMarketPrice(data)\n ) {\n notifyOnPriceChange(data, queryClient);\n return;\n }\n },\n }),\n});\n\nconst invalidateBalancesAndAllowances =\n invalidateBalancesAndAllowancesFactory(queryClient);\n\nconst waitForTransactionReceiptQueryKeyPrefix =\n waitForTransactionReceiptQueryKey()[0];\nconst waitForCallsStatusDataQueryKeyPrefix = waitForCallsStatusQueryKey({})[0];\nconst deltaAuctionPollingQueryKeyPrefix = deltaAuctionPollingQueryKey()[0];\n"],"mappings":";;;;;;;;;;;AA4BA,IAAMkB,IAASlB,EAAU,aAAa,EAEzBmB,IAAc,IAAIL,EAAY;CACzCM,gBAAgB,EACdC,SAAS,EACPC,gBAAgBP,GAClB,EACD;CACDQ,YAAY,IAAIV,EAAW,EACzBW,UAAUC,GAAMC,GAAO;EACrB,IAAMC,IAAiBD,EAAME,SAAS;EAEtC,IACED,MAAmBE,KACnBlB,EAAqBc,EAAK,EAC1B;GAIAO,AAHAd,EAAOY,IACL,uCAAuCL,EAAKM,gBAAe,iDAC5D,EACDC,EAAgC,EAAEC,QAAQ,IAAM,CAAC;GACjD;;EAGF,IACEN,MAAmBO,KACnBtB,EAAyBa,EAAK,IAC9BA,EAAKU,WAAW,aAChBzB,EAAmCe,EAAK,EACxC;GAIAO,AAHAd,EAAOY,IACL,uCAAuCL,EAAKW,GAAE,gDAC/C,EACDJ,EAAgC,EAAEC,QAAQ,IAAO,CAAC;GAClD;;EAGF,IACEN,MAAmBU,KACnBnC,EAAmBuB,EAAK,IACxBtB,EAAuBsB,EAAK,EAC5B;GAIAO,AAHAd,EAAOY,IACL,uCAAuCL,EAAKW,GAAE,oDAC/C,EACDJ,EAAgC,EAAEC,QAAQ,CAAC,CAACR,EAAKa,MAAMC,QAAQ,CAAC;GAChE;;EAGF,IACEZ,MAAAA,uBACAtB,EAAyBoB,EAAK,EAC9B;GACAxB,EAAoBwB,GAAMN,EAAY;GACtC;;EAGF,IACEQ,MAAAA,wBACApB,EAAkBkB,EAAK,EACvB;GACAxB,EAAoBwB,GAAMN,EAAY;GACtC;;IAGL,CAAA;CACF,CAAC,EAEIa,IACJvB,EAAuCU,EAAY,EAE/CU,IACJZ,GAAmC,CAAC,IAChCiB,IAAuClB,EAA2B,EAAE,CAAC,CAAC,IACtEqB,IAAoC/B,GAA6B,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DeltaOrMarketPrice } from '../../hooks/swap/prices/types';
|
|
2
2
|
/**
|
|
3
|
-
* Applies slippage to
|
|
3
|
+
* Applies slippage to the srcAmount and destAmount of a DeltaOrMarketPrice.
|
|
4
4
|
*
|
|
5
5
|
* @param srcAmount - The source amount of the trade.
|
|
6
6
|
* @param destAmount - The destination amount of the trade.
|
|
@@ -8,10 +8,7 @@ import { DeltaOrMarketPrice } from '../../hooks/swap/prices/types';
|
|
|
8
8
|
* @param side - The side of the trade, either "BUY" or "SELL".
|
|
9
9
|
* @returns An object containing the adjusted srcAmount and destAmount after applying slippage.
|
|
10
10
|
*/
|
|
11
|
-
export declare function applySlippage({ srcAmount, destAmount }: {
|
|
12
|
-
srcAmount: string;
|
|
13
|
-
destAmount: string;
|
|
14
|
-
}, slippage: number, side: "BUY" | "SELL"): {
|
|
11
|
+
export declare function applySlippage({ srcAmount, destAmount, }: Pick<DeltaOrMarketPrice, "srcAmount" | "destAmount">, slippage: number, side: "BUY" | "SELL"): {
|
|
15
12
|
srcAmount: string;
|
|
16
13
|
destAmount: string;
|
|
17
14
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"price.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/price.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAMpE;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAC3B,
|
|
1
|
+
{"version":3,"file":"price.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/price.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAMpE;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAC3B,EACE,SAAS,EACT,UAAU,GACX,EAAE,IAAI,CAAC,kBAAkB,EAAE,WAAW,GAAG,YAAY,CAAC,EACvD,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,KAAK,GAAG,MAAM;;;EAyBrB;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,kBAAkB,UAQ9D;AAED;;;;;;;GAOG;AACH,wBAAgB,gCAAgC,CAAC,EAC/C,KAAK,EACL,eAAe,GAChB,EAAE;IACD,KAAK,EAAE,kBAAkB,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;CACzB,UAGA;AAED,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,UAGxD"}
|
package/dist/lib/utils/price.js
CHANGED
|
@@ -13,18 +13,15 @@ function a({ srcAmount: e, destAmount: n }, r, i) {
|
|
|
13
13
|
};
|
|
14
14
|
}
|
|
15
15
|
function o(t) {
|
|
16
|
-
return e(t) ? t.
|
|
16
|
+
return r(e(t) ? t.receivedDestAmount : t.destAmount, t.partnerFee);
|
|
17
17
|
}
|
|
18
|
-
function s(t) {
|
|
19
|
-
return
|
|
18
|
+
function s({ price: e, slippagePercent: t }) {
|
|
19
|
+
return n(o(e), t);
|
|
20
20
|
}
|
|
21
|
-
function c(
|
|
22
|
-
return n(s(e), t);
|
|
23
|
-
}
|
|
24
|
-
function l(e, t) {
|
|
21
|
+
function c(e, t) {
|
|
25
22
|
return t === 0 || e === t ? 0 : i(e).minus(t).div(t).mul(100).toNumber();
|
|
26
23
|
}
|
|
27
24
|
//#endregion
|
|
28
|
-
export { a as applySlippage,
|
|
25
|
+
export { a as applySlippage, o as getDestAmountAfterFee, s as getDestAmountAfterFeeAndSlippage, c as getPercentDifference };
|
|
29
26
|
|
|
30
27
|
//# sourceMappingURL=price.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"price.js","names":["DeltaOrMarketPrice","amountAfterSlippage","subtractSlippage","subtractFee","Big","isDeltaPrice","applySlippage","srcAmount","destAmount","slippage","side","srcAmountAfterSlippage","toFixed","destAmountAfterSlippage","
|
|
1
|
+
{"version":3,"file":"price.js","names":["DeltaOrMarketPrice","amountAfterSlippage","subtractSlippage","subtractFee","Big","isDeltaPrice","applySlippage","srcAmount","destAmount","Pick","slippage","side","srcAmountAfterSlippage","toFixed","destAmountAfterSlippage","getDestAmountAfterFee","price","receivedDestAmount","partnerFee","getDestAmountAfterFeeAndSlippage","slippagePercent","destAmountAfterFee","getPercentDifference","a","b","minus","div","mul","toNumber"],"sources":["../../../src/lib/utils/price.ts"],"sourcesContent":["import type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport { amountAfterSlippage, subtractSlippage } from \"./slippage\";\nimport { subtractFee } from \"./fee\";\nimport Big from \"big.js\";\nimport { isDeltaPrice } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\n\n/**\n * Applies slippage to the srcAmount and destAmount of a DeltaOrMarketPrice.\n *\n * @param srcAmount - The source amount of the trade.\n * @param destAmount - The destination amount of the trade.\n * @param slippage - The slippage percentage to apply (e.g., 0.5 for 0.5%).\n * @param side - The side of the trade, either \"BUY\" or \"SELL\".\n * @returns An object containing the adjusted srcAmount and destAmount after applying slippage.\n */\nexport function applySlippage(\n {\n srcAmount,\n destAmount,\n }: Pick<DeltaOrMarketPrice, \"srcAmount\" | \"destAmount\">,\n slippage: number,\n side: \"BUY\" | \"SELL\"\n) {\n if (side === \"BUY\") {\n const srcAmountAfterSlippage = amountAfterSlippage(\n srcAmount,\n slippage,\n side\n ).toFixed(0);\n\n return {\n srcAmount: srcAmountAfterSlippage,\n destAmount,\n };\n }\n\n const destAmountAfterSlippage = amountAfterSlippage(\n destAmount,\n slippage,\n side\n ).toFixed(0);\n\n return {\n srcAmount,\n destAmount: destAmountAfterSlippage,\n };\n}\n\n/**\n * Calculates the destination amount after applying partner fee.\n *\n * @param price - The DeltaOrMarketPrice object containing destAmounts and partnerFee.\n * @returns The destination amount after applying partner fee.\n */\nexport function getDestAmountAfterFee(price: DeltaOrMarketPrice) {\n // destAmount has swapFees (and bridgeFees for Crosschain Delta) applied,\n // but not partnerFee\n const destAmount = isDeltaPrice(price)\n ? price.receivedDestAmount\n : price.destAmount;\n\n return subtractFee(destAmount, price.partnerFee);\n}\n\n/**\n * Calculates the destination amount after applying partner fee and slippage.\n *\n * @param price - The DeltaOrMarketPrice object containing destAmounts and partnerFee.\n * @param slippagePercent - The slippage percentage to apply.\n * @param priceMode - The mode of the price, either \"delta\" or \"market\".\n * @returns The destination amount after applying partner fee and slippage.\n */\nexport function getDestAmountAfterFeeAndSlippage({\n price,\n slippagePercent,\n}: {\n price: DeltaOrMarketPrice;\n slippagePercent: number;\n}) {\n const destAmountAfterFee = getDestAmountAfterFee(price);\n return subtractSlippage(destAmountAfterFee, slippagePercent);\n}\n\nexport function getPercentDifference(a: number, b: number) {\n if (b === 0 || a === b) return 0;\n return Big(a).minus(b).div(b).mul(100).toNumber();\n}\n"],"mappings":";;;;;AAeA,SAAgBM,EACd,EACEC,cACAC,iBAEFE,GACAC,GACA;CAoBA,OAnBIA,MAAS,QAOJ;EACLJ,WAP6BN,EAC7BM,GACAG,GACAC,EACD,CAACE,QAAQ,EAGGD;EACXJ;EACD,GASI;EACLD;EACAC,YAR8BP,EAC9BO,GACAE,GACAC,EACD,CAACE,QAAQ,EAIIC;EACb;;AASH,SAAgBC,EAAsBC,GAA2B;CAO/D,OAAOb,EAJYE,EAAaW,EAAM,GAClCA,EAAMC,qBACND,EAAMR,YAEqBQ,EAAME,WAAW;;AAWlD,SAAgBC,EAAiC,EAC/CH,UACAI,sBAIC;CAED,OAAOlB,EADoBa,EAAsBC,EACzBK,EAAoBD,EAAgB;;AAG9D,SAAgBE,EAAqBC,GAAWC,GAAW;CAEzD,OADIA,MAAM,KAAKD,MAAMC,IAAU,IACxBpB,EAAImB,EAAE,CAACE,MAAMD,EAAE,CAACE,IAAIF,EAAE,CAACG,IAAI,IAAI,CAACC,UAAU"}
|
package/dist/lib/utils/twap.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { DeltaOrBridgePrice } from '../../hooks/swap/prices/types';
|
|
2
2
|
import { DeltaAuctionWithTwapOrder } from '../../hooks/swap/prices/delta/orders/types';
|
|
3
3
|
export declare function getTwapChunkAmount({ totalWei, numSlices, }: {
|
|
4
4
|
totalWei: string;
|
|
@@ -9,7 +9,7 @@ export declare function getTotalTwapAmount({ chunkWei, numSlices, }: {
|
|
|
9
9
|
numSlices: number;
|
|
10
10
|
}): string;
|
|
11
11
|
export declare function getTwapAmountsFromPrice({ price, numSlices, }: {
|
|
12
|
-
price:
|
|
12
|
+
price: DeltaOrBridgePrice;
|
|
13
13
|
numSlices: number;
|
|
14
14
|
}): {
|
|
15
15
|
srcAmount: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"twap.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/twap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"twap.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/twap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAKpE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;AAExF,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,SAAS,GACV,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,MAAM,CAGT;AAED,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,SAAS,GACV,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,MAAM,CAGT;AAED,wBAAgB,uBAAuB,CAAC,EACtC,KAAK,EACL,SAAS,GACV,EAAE;IACD,KAAK,EAAE,kBAAkB,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;CACnB;;;EAQA;AACD,wBAAgB,oBAAoB,CAAC,EACnC,WAAW,EACX,SAAS,GACV,EAAE;IACD,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;;;EAcA;AAED,wBAAgB,uBAAuB,CAAC,EACtC,KAAK,EACL,SAAS,GACV,EAAE,IAAI,CAAC,yBAAyB,EAAE,OAAO,GAAG,WAAW,CAAC;;;EAIxD"}
|
package/dist/lib/utils/twap.js
CHANGED
|
@@ -12,11 +12,11 @@ function o({ chunkWei: e, numSlices: t }) {
|
|
|
12
12
|
function s({ price: e, numSlices: t }) {
|
|
13
13
|
return {
|
|
14
14
|
srcAmount: o({
|
|
15
|
-
chunkWei: e.
|
|
15
|
+
chunkWei: e.srcAmount,
|
|
16
16
|
numSlices: t
|
|
17
17
|
}),
|
|
18
18
|
destAmount: o({
|
|
19
|
-
chunkWei: e.
|
|
19
|
+
chunkWei: e.receivedDestAmount,
|
|
20
20
|
numSlices: t
|
|
21
21
|
})
|
|
22
22
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"twap.js","names":["
|
|
1
|
+
{"version":3,"file":"twap.js","names":["DeltaOrBridgePrice","Big","millisecondsToSeconds","minutesToMilliseconds","TEN_MINUTES_MS","produceDeltaOrderDeadline","DeltaAuctionWithTwapOrder","getTwapChunkAmount","totalWei","numSlices","div","toFixed","getTotalTwapAmount","chunkWei","mul","getTwapAmountsFromPrice","price","srcAmount","destAmount","receivedDestAmount","produceTwapDeadlines","durationMin","orderDurationMs","orderDeadline","orderInterval","Math","floor","Number","getTwapAuctionDeadlines","order","createdAt","Pick","durationMs","interval","endsInMs","Date","getTime"],"sources":["../../../src/lib/utils/twap.ts"],"sourcesContent":["import type { DeltaOrBridgePrice } from \"@/hooks/swap/prices/types\";\nimport Big from \"big.js\";\nimport { millisecondsToSeconds, minutesToMilliseconds } from \"./time\";\nimport { TEN_MINUTES_MS } from \"../constants/time\";\nimport { produceDeltaOrderDeadline } from \"./delta\";\nimport type { DeltaAuctionWithTwapOrder } from \"@/hooks/swap/prices/delta/orders/types\";\n\nexport function getTwapChunkAmount({\n totalWei,\n numSlices,\n}: {\n totalWei: string;\n numSlices: number;\n}): string {\n if (numSlices <= 0 || totalWei === \"0\") return totalWei;\n return Big(totalWei).div(numSlices).toFixed(0, 0); // roundDown to avoid overestimating\n}\n\nexport function getTotalTwapAmount({\n chunkWei,\n numSlices,\n}: {\n chunkWei: string;\n numSlices: number;\n}): string {\n if (numSlices <= 0 || chunkWei === \"0\") return chunkWei;\n return Big(chunkWei).mul(numSlices).toFixed();\n}\n\nexport function getTwapAmountsFromPrice({\n price,\n numSlices,\n}: {\n price: DeltaOrBridgePrice;\n numSlices: number;\n}) {\n return {\n srcAmount: getTotalTwapAmount({ chunkWei: price.srcAmount, numSlices }),\n destAmount: getTotalTwapAmount({\n chunkWei: price.receivedDestAmount,\n numSlices,\n }),\n };\n}\nexport function produceTwapDeadlines({\n durationMin,\n numSlices,\n}: {\n durationMin: number;\n numSlices: number;\n}) {\n const orderDurationMs = minutesToMilliseconds(durationMin);\n const orderDeadline = produceDeltaOrderDeadline(\n // 10 min buffer for possible delays in order creation or slice executions\n orderDurationMs + TEN_MINUTES_MS\n );\n const orderInterval = Math.floor(\n millisecondsToSeconds(orderDurationMs) / numSlices\n );\n\n return {\n orderDeadline: Number(orderDeadline),\n orderInterval,\n };\n}\n\nexport function getTwapAuctionDeadlines({\n order,\n createdAt,\n}: Pick<DeltaAuctionWithTwapOrder, \"order\" | \"createdAt\">) {\n const durationMs = order.numSlices * order.interval * 1000;\n const endsInMs = new Date(createdAt).getTime() + durationMs;\n return { endsInMs, durationMs };\n}\n"],"mappings":";;;;;AAOA,SAAgBO,EAAmB,EACjCC,aACAC,gBAIS;CAET,OADIA,KAAa,KAAKD,MAAa,MAAYA,IACxCP,EAAIO,EAAS,CAACE,IAAID,EAAU,CAACE,QAAQ,GAAG,EAAE;;AAGnD,SAAgBC,EAAmB,EACjCC,aACAJ,gBAIS;CAET,OADIA,KAAa,KAAKI,MAAa,MAAYA,IACxCZ,EAAIY,EAAS,CAACC,IAAIL,EAAU,CAACE,SAAS;;AAG/C,SAAgBI,EAAwB,EACtCC,UACAP,gBAIC;CACD,OAAO;EACLQ,WAAWL,EAAmB;GAAEC,UAAUG,EAAMC;GAAWR;GAAW,CAAC;EACvES,YAAYN,EAAmB;GAC7BC,UAAUG,EAAMG;GAChBV;GACD,CAAA;EACF;;AAEH,SAAgBW,EAAqB,EACnCC,gBACAZ,gBAIC;CACD,IAAMa,IAAkBnB,EAAsBkB,EAAY,EACpDE,IAAgBlB,EAEpBiB,IAAkBlB,EACnB,EACKoB,IAAgBC,KAAKC,MACzBxB,EAAsBoB,EAAgB,GAAGb,EAC1C;CAED,OAAO;EACLc,eAAeI,OAAOJ,EAAc;EACpCC;EACD;;AAGH,SAAgBI,EAAwB,EACtCC,UACAC,gBACyD;CACzD,IAAME,IAAaH,EAAMpB,YAAYoB,EAAMI,WAAW;CAEtD,OAAO;EAAEC,UADQ,IAAIC,KAAKL,EAAU,CAACM,SAAS,GAAGJ;EAC9BA;EAAY"}
|
|
@@ -3,11 +3,13 @@ import { ImportTokenDrawerProps } from '../../components/widget/ImportToken/type
|
|
|
3
3
|
import { MarkRequired } from 'ts-essentials';
|
|
4
4
|
import { Address } from 'viem';
|
|
5
5
|
import { SupportedChainId } from '../../lib/web3/wagmi/types';
|
|
6
|
+
import { ImportTokenReason } from '../../events/types/importToken';
|
|
6
7
|
type TokenWithSymbol = MarkRequired<Token, "symbol">;
|
|
7
8
|
export type OnImportAction = (tokenImported: TokenWithSymbol) => void;
|
|
8
9
|
export declare const addImportedTokenAtom: import('jotai').WritableAtom<null, [{
|
|
9
10
|
newToken: TokenWithSymbol;
|
|
10
11
|
afterAction?: ImportTokenDrawerProps["onConfirmAction"];
|
|
12
|
+
reason?: ImportTokenReason;
|
|
11
13
|
}], ImportedToken | undefined> & {
|
|
12
14
|
init: null;
|
|
13
15
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addImportedTokenAtom.d.ts","sourceRoot":"","sources":["../../../src/tokens/state/addImportedTokenAtom.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAKpF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI/D,KAAK,eAAe,GAAG,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AACrD,MAAM,MAAM,cAAc,GAAG,CAAC,aAAa,EAAE,eAAe,KAAK,IAAI,CAAC;AAEtE,eAAO,MAAM,oBAAoB;
|
|
1
|
+
{"version":3,"file":"addImportedTokenAtom.d.ts","sourceRoot":"","sources":["../../../src/tokens/state/addImportedTokenAtom.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAKpF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI/D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,KAAK,eAAe,GAAG,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AACrD,MAAM,MAAM,cAAc,GAAG,CAAC,aAAa,EAAE,eAAe,KAAK,IAAI,CAAC;AAEtE,eAAO,MAAM,oBAAoB;cAUjB,eAAe;kBACX,sBAAsB,CAAC,iBAAiB,CAAC;aAC9C,iBAAiB;;;CAuD/B,CAAC;AAKF,eAAO,MAAM,wBAAwB;aAKR,OAAO;aAAW,gBAAgB;;;CA+B9D,CAAC"}
|
|
@@ -1,40 +1,56 @@
|
|
|
1
1
|
import { tradeModeAtom as e } from "../../core/state/tradeModeAtom.js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
2
|
+
import { widgetEventsAtom as t } from "../../core/state/widgetEventsAtom.js";
|
|
3
|
+
import { autoImportedTokensAtom as n, importedTokensAtom as r } from "./importedTokensAtom.js";
|
|
4
|
+
import { tradeModeToSetTokenAtoms as i } from "../../core/inputs/state/common.js";
|
|
5
|
+
import { fetchUnknownTokenData as a } from "../../hooks/tokens/data/useMultichainTokensData.js";
|
|
6
|
+
import { atom as o } from "jotai";
|
|
7
|
+
import { constructToken as s } from "@velora-dex/sdk";
|
|
7
8
|
//#region src/tokens/state/addImportedTokenAtom.ts
|
|
8
|
-
var
|
|
9
|
-
let
|
|
10
|
-
if (
|
|
11
|
-
let
|
|
12
|
-
...
|
|
9
|
+
var c = o(null, (n, a, { newToken: o, afterAction: s, reason: c = "manual" }) => {
|
|
10
|
+
let l = o.network, d = n(r), f = d[l] ?? [], p = o.address.toLowerCase();
|
|
11
|
+
if (f.some((e) => e.address.toLowerCase() === p)) return;
|
|
12
|
+
let m = {
|
|
13
|
+
...u(o),
|
|
13
14
|
imported: !0,
|
|
14
|
-
symbol:
|
|
15
|
+
symbol: o.symbol
|
|
15
16
|
};
|
|
16
|
-
if (
|
|
17
|
-
...
|
|
18
|
-
[
|
|
19
|
-
}),
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
17
|
+
if (a(r, {
|
|
18
|
+
...d,
|
|
19
|
+
[l]: [...f, m]
|
|
20
|
+
}), n(t).onImportToken?.({ event: {
|
|
21
|
+
name: "ImportToken:imported",
|
|
22
|
+
params: {
|
|
23
|
+
reason: c,
|
|
24
|
+
token: {
|
|
25
|
+
address: m.address,
|
|
26
|
+
network: m.network,
|
|
27
|
+
symbol: m.symbol,
|
|
28
|
+
decimals: m.decimals,
|
|
29
|
+
img: m.img
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
} }), !s) return m;
|
|
33
|
+
let h = i[n(e)][s === "set-token-from" ? "tokenFromAtom" : "tokenToAtom"];
|
|
34
|
+
return a(h, m), m;
|
|
35
|
+
}), l = o([], async (e, t, r) => {
|
|
36
|
+
let i = await a(r);
|
|
37
|
+
if (i) {
|
|
38
|
+
let a = t(c, {
|
|
39
|
+
newToken: {
|
|
40
|
+
...s(i),
|
|
41
|
+
symbol: i.symbol,
|
|
42
|
+
network: r.chainId
|
|
43
|
+
},
|
|
44
|
+
reason: "auto"
|
|
45
|
+
});
|
|
46
|
+
if (a) {
|
|
47
|
+
let r = e(n);
|
|
48
|
+
if (r.some((e) => e.address.toLowerCase() === a.address.toLowerCase() && e.network === a.network)) return;
|
|
49
|
+
t(n, [...r, a]);
|
|
34
50
|
}
|
|
35
51
|
}
|
|
36
52
|
});
|
|
37
|
-
function
|
|
53
|
+
function u(e) {
|
|
38
54
|
return {
|
|
39
55
|
address: e.address,
|
|
40
56
|
decimals: e.decimals,
|
|
@@ -53,6 +69,6 @@ function l(e) {
|
|
|
53
69
|
};
|
|
54
70
|
}
|
|
55
71
|
//#endregion
|
|
56
|
-
export {
|
|
72
|
+
export { c as addImportedTokenAtom, l as autoAddImportedTokenAtom };
|
|
57
73
|
|
|
58
74
|
//# sourceMappingURL=addImportedTokenAtom.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addImportedTokenAtom.js","names":["atom","ImportedToken","Token","ImportTokenDrawerProps","autoImportedTokensAtom","importedTokensAtom","MarkRequired","fetchUnknownTokenData","constructToken","Address","SupportedChainId","tradeModeAtom","tradeModeToSetTokenAtoms","TokenWithSymbol","OnImportAction","tokenImported","addImportedTokenAtom","get","set","newToken","afterAction","chainId","network","currentTokens","tokensForChain","newTokenAddressLower","address","toLowerCase","alreadyExists","some","t","tokenToAdd","pickOnlyTokenProps","imported","symbol","tradeMode","tokensToSet","tokenAtomToSet","autoAddImportedTokenAtom","minTokenData","fetchedToken","constructedToken","importedToken","currentAutoImportedTokens","
|
|
1
|
+
{"version":3,"file":"addImportedTokenAtom.js","names":["atom","ImportedToken","Token","ImportTokenDrawerProps","autoImportedTokensAtom","importedTokensAtom","MarkRequired","fetchUnknownTokenData","constructToken","Address","SupportedChainId","tradeModeAtom","tradeModeToSetTokenAtoms","widgetEventsAtom","ImportTokenReason","TokenWithSymbol","OnImportAction","tokenImported","addImportedTokenAtom","get","set","newToken","afterAction","reason","chainId","network","currentTokens","tokensForChain","newTokenAddressLower","address","toLowerCase","alreadyExists","some","t","tokenToAdd","pickOnlyTokenProps","imported","symbol","onImportToken","event","name","params","token","decimals","img","tradeMode","tokensToSet","tokenAtomToSet","autoAddImportedTokenAtom","minTokenData","fetchedToken","constructedToken","importedToken","currentAutoImportedTokens","tokenType","mainConnector","connectors","allowance","balance","fromList","fromListURL"],"sources":["../../../src/tokens/state/addImportedTokenAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport type { ImportedToken, Token } from \"./types\";\nimport type { ImportTokenDrawerProps } from \"@/components/widget/ImportToken/types\";\nimport {\n autoImportedTokensAtom,\n importedTokensAtom,\n} from \"./importedTokensAtom\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport { fetchUnknownTokenData } from \"@/hooks/tokens/data/useMultichainTokensData\";\nimport { constructToken } from \"@velora-dex/sdk\";\nimport type { Address } from \"viem\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { tradeModeAtom } from \"@/core/state/tradeModeAtom\";\nimport { tradeModeToSetTokenAtoms } from \"@/core/inputs/state/common\";\nimport { widgetEventsAtom } from \"@/core/state/widgetEventsAtom\";\nimport type { ImportTokenReason } from \"@/events/types/importToken\";\n\ntype TokenWithSymbol = MarkRequired<Token, \"symbol\">;\nexport type OnImportAction = (tokenImported: TokenWithSymbol) => void;\n\nexport const addImportedTokenAtom = atom(\n null,\n (\n get,\n set,\n {\n newToken,\n afterAction,\n reason = \"manual\",\n }: {\n newToken: TokenWithSymbol;\n afterAction?: ImportTokenDrawerProps[\"onConfirmAction\"];\n reason?: ImportTokenReason;\n }\n ) => {\n const chainId = newToken.network;\n const currentTokens = get(importedTokensAtom);\n const tokensForChain = currentTokens[chainId] ?? [];\n // Avoid duplicates by address\n const newTokenAddressLower = newToken.address.toLowerCase();\n const alreadyExists = tokensForChain.some(\n (t) => t.address.toLowerCase() === newTokenAddressLower\n );\n if (alreadyExists) return;\n\n const tokenToAdd: ImportedToken = {\n // get rid of extra props attached for display purposes (usdBalance, fetchedOnChain)\n ...pickOnlyTokenProps(newToken),\n imported: true,\n symbol: newToken.symbol,\n };\n\n set(importedTokensAtom, {\n ...currentTokens,\n [chainId]: [...tokensForChain, tokenToAdd],\n });\n\n get(widgetEventsAtom).onImportToken?.({\n event: {\n name: \"ImportToken:imported\",\n params: {\n reason,\n token: {\n address: tokenToAdd.address,\n network: tokenToAdd.network,\n symbol: tokenToAdd.symbol,\n decimals: tokenToAdd.decimals,\n img: tokenToAdd.img,\n },\n },\n },\n });\n\n if (!afterAction) return tokenToAdd;\n\n const tradeMode = get(tradeModeAtom);\n const tokensToSet = tradeModeToSetTokenAtoms[tradeMode];\n const tokenAtomToSet =\n tokensToSet[\n afterAction === \"set-token-from\" ? \"tokenFromAtom\" : \"tokenToAtom\"\n ];\n // atom setter inside takes care of disallowed pair choices,\n // like invalid crosschain match\n set(tokenAtomToSet, tokenToAdd);\n\n return tokenToAdd;\n }\n);\n\n// fetches Token data onchain internally,\n// adds it to addImportedTokenAtom.\n// then adds it to autoImportedTokensAtom.\nexport const autoAddImportedTokenAtom = atom(\n [],\n async (\n get,\n set,\n minTokenData: { address: Address; chainId: SupportedChainId }\n ) => {\n const fetchedToken = await fetchUnknownTokenData(minTokenData);\n\n if (fetchedToken) {\n const constructedToken = constructToken(fetchedToken);\n const importedToken = set(addImportedTokenAtom, {\n newToken: {\n ...constructedToken,\n symbol: fetchedToken.symbol,\n network: minTokenData.chainId,\n },\n reason: \"auto\",\n });\n\n if (importedToken) {\n const currentAutoImportedTokens = get(autoImportedTokensAtom);\n const alreadyExists = currentAutoImportedTokens.some(\n (t) =>\n t.address.toLowerCase() === importedToken.address.toLowerCase() &&\n t.network === importedToken.network\n );\n if (alreadyExists) return;\n\n set(autoImportedTokensAtom, [\n ...currentAutoImportedTokens,\n importedToken,\n ]);\n }\n }\n }\n);\n\nfunction pickOnlyTokenProps(token: Token): Token {\n return {\n address: token.address,\n decimals: token.decimals,\n symbol: token.symbol,\n tokenType: token.tokenType,\n mainConnector: token.mainConnector,\n connectors: token.connectors,\n network: token.network,\n img: token.img,\n allowance: token.allowance,\n balance: token.balance,\n imported: token.imported,\n name: token.name,\n fromList: token.fromList,\n fromListURL: token.fromListURL,\n };\n}\n"],"mappings":";;;;;;;;AAoBA,IAAakB,IAAuBlB,EAClC,OAEEmB,GACAC,GACA,EACEC,aACAC,gBACAC,YAAS,eAMR;CACH,IAAMC,IAAUH,EAASI,SACnBC,IAAgBP,EAAId,EAAmB,EACvCsB,IAAiBD,EAAcF,MAAY,EAAE,EAE7CI,IAAuBP,EAASQ,QAAQC,aAAa;CAI3D,IAHsBH,EAAeK,MAClCC,MAAMA,EAAEJ,QAAQC,aAAa,KAAKF,EAEjCG,EAAe;CAEnB,IAAMG,IAA4B;EAEhC,GAAGC,EAAmBd,EAAS;EAC/Be,UAAU;EACVC,QAAQhB,EAASgB;EAClB;CAuBD,IArBAjB,EAAIf,GAAoB;EACtB,GAAGqB;GACFF,IAAU,CAAC,GAAGG,GAAgBO,EAAU;EAC1C,CAAC,EAEFf,EAAIN,EAAiB,CAACyB,gBAAgB,EACpCC,OAAO;EACLC,MAAM;EACNC,QAAQ;GACNlB;GACAmB,OAAO;IACLb,SAASK,EAAWL;IACpBJ,SAASS,EAAWT;IACpBY,QAAQH,EAAWG;IACnBM,UAAUT,EAAWS;IACrBC,KAAKV,EAAWU;IAClB;GACF;EACF,EACD,CAAC,EAEE,CAACtB,GAAa,OAAOY;CAIzB,IAAMa,IADcnC,EADFO,EAAIR,EACuBkC,EAGzCvB,MAAgB,mBAAmB,kBAAkB;CAMzD,OAFAF,EAAI2B,GAAgBb,EAAW,EAExBA;EAEV,EAKYc,IAA2BhD,EACtC,EAAE,EACF,OACEmB,GACAC,GACA6B,MACG;CACH,IAAMC,IAAe,MAAM3C,EAAsB0C,EAAa;CAE9D,IAAIC,GAAc;EAEhB,IAAME,IAAgBhC,EAAIF,GAAsB;GAC9CG,UAAU;IACR,GAHqBb,EAAe0C,EAGjCC;IACHd,QAAQa,EAAab;IACrBZ,SAASwB,EAAazB;IACvB;GACDD,QAAQ;GACT,CAAC;EAEF,IAAI6B,GAAe;GACjB,IAAMC,IAA4BlC,EAAIf,EAAuB;GAM7D,IALsBiD,EAA0BrB,MAC7CC,MACCA,EAAEJ,QAAQC,aAAa,KAAKsB,EAAcvB,QAAQC,aAAa,IAC/DG,EAAER,YAAY2B,EAAc3B,QAE5BM,EAAe;GAEnBX,EAAIhB,GAAwB,CAC1B,GAAGiD,GACHD,EACD,CAAC;;;EAIT;AAED,SAASjB,EAAmBO,GAAqB;CAC/C,OAAO;EACLb,SAASa,EAAMb;EACfc,UAAUD,EAAMC;EAChBN,QAAQK,EAAML;EACdiB,WAAWZ,EAAMY;EACjBC,eAAeb,EAAMa;EACrBC,YAAYd,EAAMc;EAClB/B,SAASiB,EAAMjB;EACfmB,KAAKF,EAAME;EACXa,WAAWf,EAAMe;EACjBC,SAAShB,EAAMgB;EACftB,UAAUM,EAAMN;EAChBI,MAAME,EAAMF;EACZmB,UAAUjB,EAAMiB;EAChBC,aAAalB,EAAMkB;EACpB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@velora-dex/widget",
|
|
3
|
-
"version": "0.8.3
|
|
3
|
+
"version": "0.8.3",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
@@ -78,7 +78,7 @@
|
|
|
78
78
|
"@tanstack/react-pacer": "^0.14.0",
|
|
79
79
|
"@tanstack/react-virtual": "^3.13.12",
|
|
80
80
|
"@uniswap/token-lists": "1.0.0-beta.34",
|
|
81
|
-
"@velora-dex/sdk": "9.5.
|
|
81
|
+
"@velora-dex/sdk": "9.5.3",
|
|
82
82
|
"@wagmi/core": "^2.18.1",
|
|
83
83
|
"axios": "^1.16.1",
|
|
84
84
|
"big.js": "^7.0.1",
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import e from "big.js";
|
|
2
|
-
//#region src/lib/utils/scaleFactor.ts
|
|
3
|
-
function t(t, n) {
|
|
4
|
-
if (!t) return new e(0);
|
|
5
|
-
let r = new e(t);
|
|
6
|
-
if (n === void 0) return r;
|
|
7
|
-
let i = new e(10);
|
|
8
|
-
return n < 0 ? r.div(i.pow(-n)) : r.times(i.pow(n));
|
|
9
|
-
}
|
|
10
|
-
//#endregion
|
|
11
|
-
export { t as scaleByFactor };
|
|
12
|
-
|
|
13
|
-
//# sourceMappingURL=scaleFactor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scaleFactor.js","names":["Big","scaleByFactor","amount","BigSource","scalingFactor","bigAmount","undefined","bigBase","div","pow","times"],"sources":["../../../src/lib/utils/scaleFactor.ts"],"sourcesContent":["import Big from \"big.js\";\n\nexport function scaleByFactor(\n amount?: Big.BigSource,\n scalingFactor?: number\n): Big {\n if (!amount) return new Big(0);\n\n const bigAmount = new Big(amount);\n\n if (scalingFactor === undefined) return bigAmount;\n\n const bigBase = new Big(10);\n\n return scalingFactor < 0\n ? bigAmount.div(bigBase.pow(-scalingFactor))\n : bigAmount.times(bigBase.pow(scalingFactor));\n}\n"],"mappings":";;AAEA,SAAgBC,EACdC,GACAE,GACK;CACL,IAAI,CAACF,GAAQ,OAAO,IAAIF,EAAI,EAAE;CAE9B,IAAMK,IAAY,IAAIL,EAAIE,EAAO;CAEjC,IAAIE,MAAkBE,KAAAA,GAAW,OAAOD;CAExC,IAAME,IAAU,IAAIP,EAAI,GAAG;CAE3B,OAAOI,IAAgB,IACnBC,EAAUG,IAAID,EAAQE,IAAI,CAACL,EAAc,CAAC,GAC1CC,EAAUK,MAAMH,EAAQE,IAAIL,EAAc,CAAC"}
|