@velora-dex/widget 0.3.7-dev.1 → 0.3.7-dev.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.d.ts.map +1 -1
  2. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js +33 -43
  3. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
  4. package/dist/components/web3/ConnectWallets/walletIcons.d.ts +1 -4
  5. package/dist/components/web3/ConnectWallets/walletIcons.d.ts.map +1 -1
  6. package/dist/components/web3/ConnectWallets/walletIcons.js +7 -18
  7. package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
  8. package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
  9. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +5 -11
  10. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  11. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts +2 -2
  12. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts.map +1 -1
  13. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js +23 -22
  14. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js.map +1 -1
  15. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js +1 -1
  16. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js.map +1 -1
  17. package/dist/core/index.d.ts +1 -1
  18. package/dist/core/index.d.ts.map +1 -1
  19. package/dist/core/index.js +179 -129
  20. package/dist/core/index.js.map +1 -1
  21. package/dist/core/state/apiConfigAtom.d.ts +14 -0
  22. package/dist/core/state/apiConfigAtom.d.ts.map +1 -0
  23. package/dist/core/state/apiConfigAtom.js +20 -0
  24. package/dist/core/state/apiConfigAtom.js.map +1 -0
  25. package/dist/core/state/configAtom.d.ts.map +1 -1
  26. package/dist/core/state/configAtom.js +4 -6
  27. package/dist/core/state/configAtom.js.map +1 -1
  28. package/dist/core/state/externalProviderAtom.d.ts +0 -9
  29. package/dist/core/state/externalProviderAtom.d.ts.map +1 -1
  30. package/dist/core/state/externalProviderAtom.js +1 -28
  31. package/dist/core/state/externalProviderAtom.js.map +1 -1
  32. package/dist/core/types.d.ts +2 -0
  33. package/dist/core/types.d.ts.map +1 -1
  34. package/dist/events/hooks/useOnWalletConnect.d.ts.map +1 -1
  35. package/dist/events/hooks/useOnWalletConnect.js +1 -3
  36. package/dist/events/hooks/useOnWalletConnect.js.map +1 -1
  37. package/dist/events/types/connectWallet.d.ts +3 -3
  38. package/dist/events/types/connectWallet.d.ts.map +1 -1
  39. package/dist/hooks/batch/useAwaitCalls.d.ts.map +1 -1
  40. package/dist/hooks/batch/useAwaitCalls.js.map +1 -1
  41. package/dist/hooks/connectors/useIsConnectedSafe.d.ts.map +1 -1
  42. package/dist/hooks/connectors/useIsConnectedSafe.js +1 -3
  43. package/dist/hooks/connectors/useIsConnectedSafe.js.map +1 -1
  44. package/dist/hooks/connectors/useIsGnosisSafeConnector.d.ts +1 -4
  45. package/dist/hooks/connectors/useIsGnosisSafeConnector.d.ts.map +1 -1
  46. package/dist/hooks/connectors/useIsGnosisSafeConnector.js +4 -3
  47. package/dist/hooks/connectors/useIsGnosisSafeConnector.js.map +1 -1
  48. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.d.ts +1 -1
  49. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.d.ts.map +1 -1
  50. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js +2 -16
  51. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js.map +1 -1
  52. package/dist/hooks/otc/mutations/useFillOrder.js +4 -15
  53. package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
  54. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js +0 -13
  55. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
  56. package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.d.ts.map +1 -1
  57. package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js +4 -7
  58. package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js.map +1 -1
  59. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts.map +1 -1
  60. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js +4 -7
  61. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
  62. package/dist/hooks/txs/queries/useAwaitTx.d.ts.map +1 -1
  63. package/dist/hooks/txs/queries/useAwaitTx.js +19 -71
  64. package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
  65. package/dist/hooks/useSDK.d.ts.map +1 -1
  66. package/dist/hooks/useSDK.js +32 -19
  67. package/dist/hooks/useSDK.js.map +1 -1
  68. package/dist/lib/utils/index.d.ts +1 -0
  69. package/dist/lib/utils/index.d.ts.map +1 -1
  70. package/dist/lib/utils/index.js +17 -5
  71. package/dist/lib/utils/index.js.map +1 -1
  72. package/dist/lib/utils/toasts.d.ts +1 -1
  73. package/dist/lib/utils/toasts.d.ts.map +1 -1
  74. package/dist/lib/utils/toasts.js +1 -5
  75. package/dist/lib/utils/toasts.js.map +1 -1
  76. package/dist/lib/web3/wagmi/external.d.ts +3 -10
  77. package/dist/lib/web3/wagmi/external.d.ts.map +1 -1
  78. package/dist/lib/web3/wagmi/external.js +2 -17
  79. package/dist/lib/web3/wagmi/external.js.map +1 -1
  80. package/dist/lib/web3/wagmi/switchChain.d.ts.map +1 -1
  81. package/dist/lib/web3/wagmi/switchChain.js +1 -5
  82. package/dist/lib/web3/wagmi/switchChain.js.map +1 -1
  83. package/dist/transactions/queries/ensureCallsStatus.d.ts.map +1 -1
  84. package/dist/transactions/queries/ensureCallsStatus.js +3 -11
  85. package/dist/transactions/queries/ensureCallsStatus.js.map +1 -1
  86. package/dist/transactions/queries/ensureTxReceipt.d.ts.map +1 -1
  87. package/dist/transactions/queries/ensureTxReceipt.js +4 -7
  88. package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
  89. package/dist/transactions/state/effects/finalize.d.ts +1 -7
  90. package/dist/transactions/state/effects/finalize.d.ts.map +1 -1
  91. package/dist/transactions/state/effects/finalize.js +7 -41
  92. package/dist/transactions/state/effects/finalize.js.map +1 -1
  93. package/dist/transactions/state/hooks/useActivateEffects.d.ts.map +1 -1
  94. package/dist/transactions/state/hooks/useActivateEffects.js +2 -4
  95. package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -1
  96. package/dist/transactions/state/transactionsActionAtom.d.ts.map +1 -1
  97. package/dist/transactions/state/transactionsActionAtom.js +15 -55
  98. package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
  99. package/dist/transactions/state/transactionsAtom.js +2 -2
  100. package/dist/transactions/state/transactionsAtom.js.map +1 -1
  101. package/dist/transactions/types.d.ts +1 -11
  102. package/dist/transactions/types.d.ts.map +1 -1
  103. package/dist/transactions/utils.d.ts +1 -2
  104. package/dist/transactions/utils.d.ts.map +1 -1
  105. package/dist/transactions/utils.js +1 -6
  106. package/dist/transactions/utils.js.map +1 -1
  107. package/package.json +2 -2
  108. package/dist/components/web3/ConnectExternalProvider/constants.d.ts +0 -2
  109. package/dist/components/web3/ConnectExternalProvider/constants.d.ts.map +0 -1
  110. package/dist/components/web3/ConnectExternalProvider/constants.js +0 -4
  111. package/dist/components/web3/ConnectExternalProvider/constants.js.map +0 -1
  112. package/dist/components/web3/ConnectExternalProvider/utils.d.ts +0 -8
  113. package/dist/components/web3/ConnectExternalProvider/utils.d.ts.map +0 -1
  114. package/dist/components/web3/ConnectExternalProvider/utils.js +0 -9
  115. package/dist/components/web3/ConnectExternalProvider/utils.js.map +0 -1
  116. package/dist/transactions/hash.d.ts +0 -7
  117. package/dist/transactions/hash.d.ts.map +0 -1
  118. package/dist/transactions/hash.js +0 -35
  119. package/dist/transactions/hash.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/core/index.tsx"],"sourcesContent":["import \"@/styles/global.css\";\n\nimport { DevTools } from \"./DevTools\"; // Jotai DevTools instantiation needs to be before jotai.createStore (even implicit with default provider)\nimport { TokenInput } from \"@/components/widget/TokenInput\";\nimport { useTokenFromInputProps } from \"./inputs/hooks/useTokenFromInputProps\";\nimport { Button } from \"@/components/ui/button\";\nimport {\n JotaiProvider,\n QueryClientProvider,\n Web3Providers,\n} from \"@/components/web3/providers\";\nimport { useAccount } from \"wagmi\";\nimport { WIDGET_ELEMENT_ID, WIDGET_HEIGHT_CLASSNAME } from \"./constants\";\n\nimport { Updaters } from \"./Updaters\";\nimport { useTokenToInputProps } from \"./inputs/hooks/useTokenToInputProps\";\nimport { TokenSwitcher as TokenSwitcherComp } from \"@/components/widget/TokenSwitcher/TokenSwitcher\";\nimport type { WidgetProps } from \"./types\";\nimport { cn } from \"@/lib/utils\";\nimport { useSwapTokenSwitcherProps } from \"./inputs/hooks/useTokenSwitcherProps\";\n\nimport { runSubscriptions } from \"./subscriptions\";\n\nimport { PrivyIframeDependency } from \"@/components/web3/ConnectWallets/privy/iframe\";\nimport { SwapModeSwitcherExpandable } from \"@/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable\";\n\nimport { useTokenInputsFromPrice } from \"@/hooks/swap/prices/useTokenInputsFromPrice\";\nimport type { MinTradeOverviewProps } from \"@/components/widget/TradeOverview/TradeOverview\";\n\nimport type { BridgePrice, DeltaPrice, OptimalRate } from \"@velora-dex/sdk\";\nimport type { SwapMode } from \"@/components/widget/SwapModeSwitcher/state/types\";\nimport { SwapDetailsExpandable } from \"@/components/widget/Details/SwapDetailsExpandable\";\nimport { ReceiverAddress } from \"@/components/widget/ReceiverAddress/ReceiverAddress\";\nimport { useAtomValue, useSetAtom } from \"@/core/store\";\nimport { useHydrateAtoms } from \"jotai/utils\";\nimport { containerAtom } from \"./state/containerAtom\";\nimport { AppHeader } from \"@/components/widget/AppHeader/AppHeader\";\nimport { useLayoutEffect, useRef } from \"react\";\nimport {\n defaultSubConfig,\n defaultWidgetConfig,\n excludeUIAtom,\n useWidgetConfig,\n} from \"./state/configAtom\";\nimport {\n setSubConfigAtom,\n setWidgetConfigAtom,\n} from \"./state/configActionsAtom\";\nimport { WrapEthDrawerButton } from \"@/components/widget/WrapEth/WrapEthDrawerButton\";\nimport type { WrapEthProps } from \"@/components/widget/WrapEth/hooks/types\";\nimport { useWrapEthProps } from \"@/components/widget/WrapEth/hooks/useWrapEthProps\";\nimport { PoweredBy } from \"@/components/widget/PoweredBy/PoweredBy\";\nimport { useWidgetButtonExtraProps } from \"./button/hooks/useWidgetButtonExtraProps\";\nimport { useSwapPrices } from \"@/hooks/swap/prices/useSwapPrices\";\nimport { Toaster } from \"./Toaster\";\nimport { externalProviderAtom } from \"./state/externalProviderAtom\";\nimport { AutoconnectExternalProvider } from \"@/components/web3/ConnectExternalProvider/AutoconnectExternal\";\nimport { SwapTradeFlowScreenButton } from \"./TradeFlowScreenButton\";\nimport { ConnectWalletDrawerButton } from \"./ConnectWalletDrawerButton\";\nimport { PriceInput } from \"@/components/widget/LimitPriceInput\";\nimport { OrderExpiryInput } from \"@/components/widget/OrderExpiryInput\";\nimport { useLimitTokenToInputProps } from \"./limit/useLimitTokenToInputProps\";\nimport { useLimitTokenFromInputProps } from \"./limit/useLimitTokenFromInputProps\";\nimport { useTradeMode, type TradeMode } from \"./state/tradeModeAtom\";\nimport { useDrawerContainerHeightTransition } from \"@/components/widget/Drawer/state/useDrawerControls\";\nimport { InWidgetDrawerOverlay } from \"@/components/widget/Drawer/Overlay\";\nimport { LimitOrderButton } from \"./LimitOrderButton\";\nimport { LimitOrderDetails } from \"./LimitOrderDetails\";\nimport { useOtcTokenFromInputProps } from \"./otc/useOtcTokenFromInputProps\";\nimport { useOtcTokenToInputProps } from \"./otc/useOtcTokenToInputProps\";\nimport { useLimitPriceInputProps } from \"./limit/useLimitPriceInputProps\";\nimport { useOtcPriceInputProps } from \"./otc/useOtcPriceInputProps\";\nimport { OtcOrderButton } from \"./OtcOrderButton\";\nimport { OtcOrderDetails } from \"./OtcOrderDetails\";\nimport { WidgetWarning } from \"./Warnings\";\nimport { useUnsupportedLimitChain } from \"./limit/useLimitNotSupported\";\nimport { useUnsupportedOtcChain } from \"./otc/useOtcNotSupported\";\nimport { useLimitTokenSwitcherProps } from \"./limit/useLimitTokenSwitcherProps\";\nimport { useOtcTokenSwitcherProps } from \"./otc/useOtcTokenSwitcherProps\";\nimport { useSwapReceiverAddress } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport { useOtcReceiverAddress } from \"./otc/state/receiverAddressAtom\";\nimport {\n useWidgetEventsSetter,\n widgetEventsAtom,\n} from \"./state/widgetEventsAtom\";\nimport {\n formInputPropsAtom,\n useSetFormInputFromProps,\n} from \"./inputs/state/setTokenByAddressAtom\";\nimport { queryClientAtom } from \"jotai-tanstack-query\";\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { useScreenValue } from \"./screen/state/hooks/useScreenValue\";\nimport {\n MainScreenContainer,\n SecondaryScreenContainer,\n} from \"@/components/widget/Screen/ScreenContainer\";\nimport { useCloseScreenOnClickOutside } from \"./screen/hooks/useOnClickOutside\";\nimport { useLimitReceiverAddress } from \"./limit/state/receiverAddressAtom\";\nimport { isBridgePrice } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\nimport { BridgeSelectorExpandable } from \"@/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable\";\nimport { ErrorBoundary } from \"react-error-boundary\";\nimport { useInitialValue } from \"./screen/hooks/useInitialValue\";\n\nrunSubscriptions();\n\nconst SwapScreen = () => {\n return (\n <>\n <SwapTokenFromInput />\n <SwapTokenSwitcher />\n <SwapTokenToInput />\n <SwapReceiverAddress />\n <WidgetWarning />\n <SwapButton />\n <SwapDetails />\n <SwapModeSwitcher />\n </>\n );\n};\n\nconst LimitOrderExtraInputs = () => {\n const priceInputProps = useLimitPriceInputProps();\n const unsupportedChain = useUnsupportedLimitChain();\n\n return (\n <div\n className={cn(\"flex gap-4 items-stretch py-2\", {\n \"pointer-events-none\": unsupportedChain,\n })}\n >\n <div className=\"flex-1\">\n <PriceInput {...priceInputProps} />\n </div>\n <div className=\"flex-1\">\n <OrderExpiryInput type=\"limit\" />\n </div>\n </div>\n );\n};\n\nconst OtcOrderExtraInputs = () => {\n const priceInputProps = useOtcPriceInputProps();\n const unsupportedChain = useUnsupportedOtcChain();\n\n return (\n <div\n className={cn(\"flex gap-4 items-stretch py-2\", {\n \"pointer-events-none\": unsupportedChain,\n })}\n >\n <div className=\"flex-1\">\n <PriceInput {...priceInputProps} />\n </div>\n <div className=\"flex-1\">\n <OrderExpiryInput type=\"otc\" />\n </div>\n </div>\n );\n};\n\nconst LimitOrderScreen = () => {\n return (\n <>\n <LimitTokenFromInput />\n <LimitTokenSwitcher />\n <LimitTokenToInput />\n <LimitOrderExtraInputs />\n <LimitReceiverAddress />\n <WidgetWarning />\n <LimitOrderButton />\n <LimitOrderDetails />\n </>\n );\n};\n\nconst OtcOrderScreen = () => {\n return (\n <>\n <OtcTokenFromInput />\n <OtcTokenSwitcher />\n <OtcTokenToInput />\n <OtcOrderExtraInputs />\n <OtcReceiverAddress />\n <WidgetWarning />\n <OtcOrderButton />\n <OtcOrderDetails />\n </>\n );\n};\n\nconst tradeModeToScreen: Record<TradeMode, React.FC> = {\n swap: SwapScreen,\n limit: LimitOrderScreen,\n otc: OtcOrderScreen,\n};\n\nconst MainScreen = () => {\n const tradeMode = useTradeMode();\n const TradeModeScreen = tradeModeToScreen[tradeMode];\n return <TradeModeScreen />;\n};\n\nconst App = () => {\n const excludeUI = useAtomValue(excludeUIAtom);\n const { screenElement } = useScreenValue();\n\n return (\n <Containers>\n {screenElement ? (\n <SecondaryScreenContainer>{screenElement}</SecondaryScreenContainer>\n ) : (\n <MainScreenContainer>\n <WidgetHeader />\n <MainScreen />\n <PoweredBy />\n </MainScreenContainer>\n )}\n {!excludeUI.includes(\"snackbars\") && <Toaster />}\n </Containers>\n );\n};\n\nconst WidgetBase = ({\n config: _config,\n provider,\n events,\n input: formInputProps,\n}: WidgetProps) => {\n const queryClient = useQueryClient();\n\n const setWidgetConfig = useSetAtom(setWidgetConfigAtom);\n const setSubConfig = useSetAtom(setSubConfigAtom);\n const {\n srcChains,\n destChains,\n tokenLists,\n tradeModes,\n excludeUI,\n devURLs,\n ...config\n } = _config || {};\n\n // hydrating with only partial config overrides values with undefined,\n // so we have default values too\n useHydrateAtoms([\n [setWidgetConfigAtom, { ...defaultWidgetConfig, ...config }],\n [\n setSubConfigAtom,\n {\n ...defaultSubConfig,\n srcChains,\n destChains,\n tokenLists,\n tradeModes,\n excludeUI,\n devURLs,\n },\n ],\n [externalProviderAtom, provider || null],\n [widgetEventsAtom, events || {}],\n [formInputPropsAtom, formInputProps || {}],\n // this provider initialisation step is needed so that jotai reference the same\n // queryClient in both atomWithQuery and other parts of the app. Without this,\n // jotai will reference a different instance of queryClient\n [queryClientAtom, queryClient],\n ]);\n\n useWidgetEventsSetter(events);\n useSetFormInputFromProps(formInputProps);\n\n useLayoutEffect(() => {\n setWidgetConfig({\n theme: config.theme,\n enableDelta: config.enableDelta,\n enableCrossChain: config.enableCrossChain,\n partner: config.partner,\n privyAppId: config.privyAppId,\n privyClientId: config.privyClientId,\n debug: config.debug,\n widgetMode: config.widgetMode,\n ignoreBadUsdPrice: config.ignoreBadUsdPrice,\n });\n }, [\n config.theme,\n config.enableDelta,\n config.enableCrossChain,\n config.partner,\n config.privyAppId,\n config.privyClientId,\n config.debug,\n config.widgetMode,\n config.ignoreBadUsdPrice,\n setWidgetConfig,\n ]);\n\n useLayoutEffect(() => {\n setSubConfig({\n srcChains,\n destChains,\n tokenLists,\n tradeModes,\n excludeUI,\n devURLs,\n });\n }, [\n srcChains,\n destChains,\n tokenLists,\n setSubConfig,\n tradeModes,\n excludeUI,\n devURLs,\n ]);\n\n const setExternalProvider = useSetAtom(externalProviderAtom);\n\n useLayoutEffect(() => {\n // update external provider on change\n setExternalProvider(provider || null);\n }, [provider, setExternalProvider]);\n\n const isDappMode = config?.widgetMode === \"dapp\";\n // after initial reconnect (or not reconnect) on mount, we want to keep the same reconnectOnMount value\n // so that onMount logic inside WagmiProvider/Hydrate doesn't re-run.\n // reconnectOnMountInit should be considered reconnectOnRender,\n // in normal Apps where WagmiProvider is at the very top of the tree, first and only render = when mounting,\n // in Widget, because of external props, rerender can happen more often.\n const reconnectOnMountInit = useInitialValue(!isDappMode);\n // reconnectOnMount not in Dapp mode,\n // in Dapp mode, connection happens to provider external provider, when provided, whether onMount or later\n\n return (\n <Web3Providers reconnectOnMount={reconnectOnMountInit}>\n <AutoconnectExternalProvider />\n <PrivyIframeDependency />\n <Updaters />\n <App />\n {import.meta.env.DEV && <DevTools />}\n </Web3Providers>\n );\n};\n\nexport const Widget = ({ config, provider, events, input }: WidgetProps) => {\n return (\n <JotaiProvider>\n <QueryClientProvider>\n <WidgetBase\n config={config}\n provider={provider}\n events={events}\n input={input}\n />\n </QueryClientProvider>\n </JotaiProvider>\n );\n};\n\nfunction Containers({ children }: { children: React.ReactNode }) {\n const setContainerElement = useSetAtom(containerAtom);\n\n const containerRef = useRef<HTMLDivElement | null>(null);\n useCloseScreenOnClickOutside(containerRef);\n\n const widgetConfig = useWidgetConfig();\n\n const { isDrawerFullCover, isDrawerOpen } =\n useDrawerContainerHeightTransition(containerRef);\n\n const partialDrawerOpen = isDrawerOpen && !isDrawerFullCover;\n\n return (\n <div\n ref={containerRef}\n // don't use tailwind classes on the root element, because of .velora-widget { @import tailwind/*}\n className={cn(\"velora-widget\", {\n dark: widgetConfig.theme === \"dark\",\n })}\n id={WIDGET_ELEMENT_ID}\n >\n <InWidgetDrawerOverlay open={partialDrawerOpen} />\n\n <div\n // absolutely positioned container on top of parent container with fixed height,\n // but because it's not statically positioned, it doesn't add to the whole widget height\n className={cn(\n \"overflow-hidden bottom-0 left-0 right-0 absolute transition-transform duration-500 z-11 pointer-events-none [&>*]:pointer-events-auto\",\n WIDGET_HEIGHT_CLASSNAME\n )}\n ref={setContainerElement}\n />\n {children}\n </div>\n );\n}\n\nfunction WidgetHeader() {\n return <AppHeader classes={{ root: \"mb-4\" }} />;\n}\n\nfunction SwapTokenFromInput() {\n // override Token amounts based on current swap price\n const overrides = useTokenInputsFromPrice();\n\n const tokenFromInputProps = useTokenFromInputProps({\n override: overrides.tokenFromAmount,\n activeSwapMode: overrides.priceMode,\n isPriceLoading: overrides.isLoading,\n price: overrides.price,\n });\n\n return <TokenInput {...tokenFromInputProps} />;\n}\n\nfunction LimitTokenFromInput() {\n const tokenFromInputProps = useLimitTokenFromInputProps();\n return <TokenInput {...tokenFromInputProps} />;\n}\n\nfunction OtcTokenFromInput() {\n const tokenFromInputProps = useOtcTokenFromInputProps();\n return <TokenInput {...tokenFromInputProps} />;\n}\n\nfunction SwapTokenToInput() {\n // override Token amounts based on current swap price\n const overrides = useTokenInputsFromPrice();\n\n const tokenToInputProps = useTokenToInputProps({\n override: overrides.tokenToAmount,\n isPriceLoading: overrides.isLoading,\n priceMode: overrides.priceMode,\n price: overrides.price,\n priceError: overrides.error,\n });\n\n return <TokenInput {...tokenToInputProps} />;\n}\n\nfunction LimitTokenToInput() {\n const tokenToInputProps = useLimitTokenToInputProps();\n return <TokenInput {...tokenToInputProps} />;\n}\n\nfunction OtcTokenToInput() {\n const tokenToInputProps = useOtcTokenToInputProps();\n return <TokenInput {...tokenToInputProps} />;\n}\n\nfunction SwapTokenSwitcher() {\n const tokenSwitcherProps = useSwapTokenSwitcherProps();\n return <TokenSwitcherComp {...tokenSwitcherProps} />;\n}\n\nfunction LimitTokenSwitcher() {\n const tokenSwitcherProps = useLimitTokenSwitcherProps();\n return <TokenSwitcherComp {...tokenSwitcherProps} />;\n}\n\nfunction OtcTokenSwitcher() {\n const tokenSwitcherProps = useOtcTokenSwitcherProps();\n return <TokenSwitcherComp {...tokenSwitcherProps} />;\n}\n\nfunction SwapButton() {\n // override Token amounts based on current swap price\n const overrides = useTokenInputsFromPrice();\n\n const tokenFromInputProps = useTokenFromInputProps({\n override: overrides.tokenFromAmount,\n activeSwapMode: overrides.priceMode,\n isPriceLoading: overrides.isLoading,\n price: overrides.price,\n });\n const tokenToInputProps = useTokenToInputProps({\n override: overrides.tokenToAmount,\n isPriceLoading: overrides.isLoading,\n priceMode: overrides.priceMode,\n price: overrides.price,\n priceError: overrides.error,\n });\n\n const orderProps =\n tokenFromInputProps.token && tokenToInputProps.token\n ? {\n fromToken: tokenFromInputProps.token,\n toToken: tokenToInputProps.token,\n fromAmount: tokenFromInputProps.amount,\n toAmount: tokenToInputProps.amount,\n swapSide: overrides.side,\n }\n : undefined;\n\n const wrapEthProps = useWrapEthProps();\n\n const extraProps = useWidgetButtonExtraProps({\n tokenFrom: tokenFromInputProps.token,\n tokenTo: tokenToInputProps.token,\n });\n\n return (\n <SwapButtonWithDrawer\n orderProps={orderProps}\n marketPrice={\n overrides.priceMode === \"market\" ? overrides.price : undefined\n }\n deltaPrice={overrides.priceMode === \"delta\" ? overrides.price : undefined}\n priceMode={overrides.priceMode}\n wrapEthProps={wrapEthProps}\n disabled={extraProps.disabled}\n labelOverride={extraProps.labelOverride}\n className={extraProps.className}\n />\n );\n}\n\nfunction SwapDetails() {\n const overrides = useTokenInputsFromPrice();\n\n const tokenFromInputProps = useTokenFromInputProps({\n override: overrides.tokenFromAmount,\n activeSwapMode: overrides.priceMode,\n isPriceLoading: overrides.isLoading,\n price: overrides.price,\n });\n const tokenToInputProps = useTokenToInputProps({\n override: overrides.tokenToAmount,\n isPriceLoading: overrides.isLoading,\n priceMode: overrides.priceMode,\n price: overrides.price,\n priceError: overrides.error,\n });\n\n const fromAmountGtZero = Number(tokenFromInputProps.amount) > 0;\n const shouldShowDetails = fromAmountGtZero && tokenToInputProps.token;\n\n return shouldShowDetails ? <SwapDetailsExpandable /> : null;\n}\n\nfunction SwapReceiverAddress() {\n const { isConnected } = useAccount();\n const shouldShowReceiverAddress = isConnected;\n const swapReceiverAddressProps = useSwapReceiverAddress();\n\n return shouldShowReceiverAddress ? (\n <ReceiverAddress\n classes={{ root: \"mt-2\" }}\n type=\"swap\"\n {...swapReceiverAddressProps}\n />\n ) : null;\n}\n\nfunction OtcReceiverAddress() {\n const unsupportedChain = useUnsupportedOtcChain();\n const otcReceiverAddressProps = useOtcReceiverAddress();\n\n return (\n <ReceiverAddress\n classes={{\n root: cn(\"mt-2\", {\n \"pointer-events-none\": unsupportedChain,\n }),\n }}\n type=\"otc\"\n {...otcReceiverAddressProps}\n />\n );\n}\n\nfunction LimitReceiverAddress() {\n const unsupportedChain = useUnsupportedLimitChain();\n const limitReceiverAddressProps = useLimitReceiverAddress();\n\n return (\n <ReceiverAddress\n classes={{\n root: cn(\"mt-2\", {\n \"pointer-events-none\": unsupportedChain,\n }),\n }}\n type=\"limit\"\n {...limitReceiverAddressProps}\n />\n );\n}\n\nconst swapModeSwitcherClasses = {\n root: \"mt-4\",\n} as const;\n\nfunction SwapModeSwitcher() {\n const { delta, market, priceMode } = useSwapPrices({ enabled: false });\n // @TODO as on the main UI:\n // 1. Show Market MarketOffers if marketPrice can be switched to and price will fetch\n // 2. Show nothing if only one of the prices can be used\n if (delta.canBeUsed && market.canBeUsed) {\n return (\n <SwapModeSwitcherExpandable\n classes={swapModeSwitcherClasses}\n currentEffectiveMode={priceMode}\n />\n );\n }\n\n if (delta.canBeUsed && delta.price && isBridgePrice(delta.price)) {\n return (\n <ErrorBoundary fallback={null}>\n <BridgeSelectorExpandable\n classes={swapModeSwitcherClasses}\n bridgePrice={delta.price}\n />\n </ErrorBoundary>\n );\n }\n}\n\ntype ButtonWithDrawerProps = React.ComponentProps<typeof Button> & {\n orderProps?: MinTradeOverviewProps;\n drawerContainer?: HTMLDivElement | null;\n marketPrice?: OptimalRate;\n deltaPrice?: DeltaPrice | BridgePrice;\n wrapEthProps: WrapEthProps;\n priceMode: SwapMode;\n labelOverride?: string;\n};\n\nfunction SwapButtonWithDrawer({\n orderProps,\n drawerContainer,\n marketPrice,\n deltaPrice,\n priceMode,\n wrapEthProps,\n labelOverride,\n ...buttonProps\n}: ButtonWithDrawerProps) {\n const { isConnected } = useAccount();\n\n if (!isConnected)\n return (\n <ConnectWalletDrawerButton\n drawerContainer={drawerContainer}\n {...buttonProps}\n />\n );\n\n if (wrapEthProps.shouldWrap)\n return (\n <WrapEthDrawerButton\n drawerContainer={drawerContainer}\n wrapEthProps={wrapEthProps}\n labelOverride={labelOverride}\n {...buttonProps}\n />\n );\n\n const priceProps =\n priceMode === \"delta\"\n ? { price: deltaPrice, priceMode }\n : { price: marketPrice, priceMode };\n\n return (\n <SwapTradeFlowScreenButton\n orderProps={orderProps}\n labelOverride={labelOverride}\n {...priceProps}\n {...buttonProps}\n />\n );\n}\n"],"names":["runSubscriptions","SwapScreen","$","_c","t0","Symbol","for","LimitOrderExtraInputs","priceInputProps","useLimitPriceInputProps","unsupportedChain","useUnsupportedLimitChain","cn","t1","t2","t3","OtcOrderExtraInputs","useOtcPriceInputProps","useUnsupportedOtcChain","LimitOrderScreen","OtcOrderScreen","tradeModeToScreen","swap","limit","otc","MainScreen","tradeMode","useTradeMode","TradeModeScreen","App","excludeUI","useAtomValue","excludeUIAtom","screenElement","useScreenValue","includes","WidgetBase","config","_config","provider","events","input","formInputProps","queryClient","useQueryClient","setWidgetConfig","useSetAtom","setWidgetConfigAtom","setSubConfig","setSubConfigAtom","destChains","devURLs","srcChains","tokenLists","tradeModes","defaultWidgetConfig","defaultSubConfig","t4","t5","externalProviderAtom","t6","t7","widgetEventsAtom","t8","t9","formInputPropsAtom","t10","queryClientAtom","t11","useHydrateAtoms","useWidgetEventsSetter","useSetFormInputFromProps","t12","t13","debug","enableCrossChain","enableDelta","ignoreBadUsdPrice","partner","privyAppId","privyClientId","theme","widgetMode","useLayoutEffect","t14","t15","setExternalProvider","t16","t17","isDappMode","reconnectOnMountInit","useInitialValue","t18","t19","t20","t21","t22","import","t23","Widget","Containers","children","setContainerElement","containerAtom","containerRef","useRef","useCloseScreenOnClickOutside","widgetConfig","useWidgetConfig","isDrawerFullCover","isDrawerOpen","useDrawerContainerHeightTransition","partialDrawerOpen","dark","WIDGET_HEIGHT_CLASSNAME","WIDGET_ELEMENT_ID","WidgetHeader","root","SwapTokenFromInput","overrides","useTokenInputsFromPrice","isLoading","price","priceMode","tokenFromAmount","override","activeSwapMode","isPriceLoading","tokenFromInputProps","useTokenFromInputProps","LimitTokenFromInput","useLimitTokenFromInputProps","OtcTokenFromInput","useOtcTokenFromInputProps","SwapTokenToInput","error","tokenToAmount","priceError","tokenToInputProps","useTokenToInputProps","LimitTokenToInput","useLimitTokenToInputProps","OtcTokenToInput","useOtcTokenToInputProps","SwapTokenSwitcher","tokenSwitcherProps","useSwapTokenSwitcherProps","TokenSwitcherComp","LimitTokenSwitcher","useLimitTokenSwitcherProps","OtcTokenSwitcher","useOtcTokenSwitcherProps","SwapButton","side","amount","token","fromToken","toToken","fromAmount","toAmount","swapSide","undefined","orderProps","wrapEthProps","useWrapEthProps","tokenFrom","tokenTo","extraProps","useWidgetButtonExtraProps","className","disabled","labelOverride","SwapDetails","fromAmountGtZero","Number","shouldShowDetails","SwapReceiverAddress","isConnected","useAccount","shouldShowReceiverAddress","swapReceiverAddressProps","useSwapReceiverAddress","OtcReceiverAddress","otcReceiverAddressProps","useOtcReceiverAddress","LimitReceiverAddress","limitReceiverAddressProps","useLimitReceiverAddress","swapModeSwitcherClasses","SwapModeSwitcher","enabled","delta","market","useSwapPrices","canBeUsed","isBridgePrice","SwapButtonWithDrawer","buttonProps","deltaPrice","drawerContainer","marketPrice","shouldWrap","priceProps"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../src/core/index.tsx"],"sourcesContent":["import \"@/styles/global.css\";\n\nimport { DevTools } from \"./DevTools\"; // Jotai DevTools instantiation needs to be before jotai.createStore (even implicit with default provider)\nimport { TokenInput } from \"@/components/widget/TokenInput\";\nimport { useTokenFromInputProps } from \"./inputs/hooks/useTokenFromInputProps\";\nimport { Button } from \"@/components/ui/button\";\nimport {\n JotaiProvider,\n QueryClientProvider,\n Web3Providers,\n} from \"@/components/web3/providers\";\nimport { useAccount } from \"wagmi\";\nimport { WIDGET_ELEMENT_ID, WIDGET_HEIGHT_CLASSNAME } from \"./constants\";\n\nimport { Updaters } from \"./Updaters\";\nimport { useTokenToInputProps } from \"./inputs/hooks/useTokenToInputProps\";\nimport { TokenSwitcher as TokenSwitcherComp } from \"@/components/widget/TokenSwitcher/TokenSwitcher\";\nimport type { WidgetProps } from \"./types\";\nimport { cn } from \"@/lib/utils\";\nimport { useSwapTokenSwitcherProps } from \"./inputs/hooks/useTokenSwitcherProps\";\n\nimport { runSubscriptions } from \"./subscriptions\";\n\nimport { PrivyIframeDependency } from \"@/components/web3/ConnectWallets/privy/iframe\";\nimport { SwapModeSwitcherExpandable } from \"@/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable\";\n\nimport { useTokenInputsFromPrice } from \"@/hooks/swap/prices/useTokenInputsFromPrice\";\nimport type { MinTradeOverviewProps } from \"@/components/widget/TradeOverview/TradeOverview\";\n\nimport type { BridgePrice, DeltaPrice, OptimalRate } from \"@velora-dex/sdk\";\nimport type { SwapMode } from \"@/components/widget/SwapModeSwitcher/state/types\";\nimport { SwapDetailsExpandable } from \"@/components/widget/Details/SwapDetailsExpandable\";\nimport { ReceiverAddress } from \"@/components/widget/ReceiverAddress/ReceiverAddress\";\nimport { useAtomValue, useSetAtom } from \"@/core/store\";\nimport { useHydrateAtoms } from \"jotai/utils\";\nimport { containerAtom } from \"./state/containerAtom\";\nimport { AppHeader } from \"@/components/widget/AppHeader/AppHeader\";\nimport { useLayoutEffect, useRef } from \"react\";\nimport {\n defaultSubConfig,\n defaultWidgetConfig,\n excludeUIAtom,\n useWidgetConfig,\n} from \"./state/configAtom\";\nimport {\n setSubConfigAtom,\n setWidgetConfigAtom,\n} from \"./state/configActionsAtom\";\nimport { WrapEthDrawerButton } from \"@/components/widget/WrapEth/WrapEthDrawerButton\";\nimport type { WrapEthProps } from \"@/components/widget/WrapEth/hooks/types\";\nimport { useWrapEthProps } from \"@/components/widget/WrapEth/hooks/useWrapEthProps\";\nimport { PoweredBy } from \"@/components/widget/PoweredBy/PoweredBy\";\nimport { useWidgetButtonExtraProps } from \"./button/hooks/useWidgetButtonExtraProps\";\nimport { useSwapPrices } from \"@/hooks/swap/prices/useSwapPrices\";\nimport { Toaster } from \"./Toaster\";\nimport { externalProviderAtom } from \"./state/externalProviderAtom\";\nimport { AutoconnectExternalProvider } from \"@/components/web3/ConnectExternalProvider/AutoconnectExternal\";\nimport { SwapTradeFlowScreenButton } from \"./TradeFlowScreenButton\";\nimport { ConnectWalletDrawerButton } from \"./ConnectWalletDrawerButton\";\nimport { PriceInput } from \"@/components/widget/LimitPriceInput\";\nimport { OrderExpiryInput } from \"@/components/widget/OrderExpiryInput\";\nimport { useLimitTokenToInputProps } from \"./limit/useLimitTokenToInputProps\";\nimport { useLimitTokenFromInputProps } from \"./limit/useLimitTokenFromInputProps\";\nimport { useTradeMode, type TradeMode } from \"./state/tradeModeAtom\";\nimport { useDrawerContainerHeightTransition } from \"@/components/widget/Drawer/state/useDrawerControls\";\nimport { InWidgetDrawerOverlay } from \"@/components/widget/Drawer/Overlay\";\nimport { LimitOrderButton } from \"./LimitOrderButton\";\nimport { LimitOrderDetails } from \"./LimitOrderDetails\";\nimport { useOtcTokenFromInputProps } from \"./otc/useOtcTokenFromInputProps\";\nimport { useOtcTokenToInputProps } from \"./otc/useOtcTokenToInputProps\";\nimport { useLimitPriceInputProps } from \"./limit/useLimitPriceInputProps\";\nimport { useOtcPriceInputProps } from \"./otc/useOtcPriceInputProps\";\nimport { OtcOrderButton } from \"./OtcOrderButton\";\nimport { OtcOrderDetails } from \"./OtcOrderDetails\";\nimport { WidgetWarning } from \"./Warnings\";\nimport { useUnsupportedLimitChain } from \"./limit/useLimitNotSupported\";\nimport { useUnsupportedOtcChain } from \"./otc/useOtcNotSupported\";\nimport { useLimitTokenSwitcherProps } from \"./limit/useLimitTokenSwitcherProps\";\nimport { useOtcTokenSwitcherProps } from \"./otc/useOtcTokenSwitcherProps\";\nimport { useSwapReceiverAddress } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport { useOtcReceiverAddress } from \"./otc/state/receiverAddressAtom\";\nimport {\n useWidgetEventsSetter,\n widgetEventsAtom,\n} from \"./state/widgetEventsAtom\";\nimport {\n formInputPropsAtom,\n useSetFormInputFromProps,\n} from \"./inputs/state/setTokenByAddressAtom\";\nimport { queryClientAtom } from \"jotai-tanstack-query\";\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { useScreenValue } from \"./screen/state/hooks/useScreenValue\";\nimport {\n MainScreenContainer,\n SecondaryScreenContainer,\n} from \"@/components/widget/Screen/ScreenContainer\";\nimport { useCloseScreenOnClickOutside } from \"./screen/hooks/useOnClickOutside\";\nimport { useLimitReceiverAddress } from \"./limit/state/receiverAddressAtom\";\nimport { isBridgePrice } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\nimport { BridgeSelectorExpandable } from \"@/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable\";\nimport { ErrorBoundary } from \"react-error-boundary\";\nimport { useInitialValue } from \"./screen/hooks/useInitialValue\";\nimport { apiConfigAtom } from \"./state/apiConfigAtom\";\n\nrunSubscriptions();\n\nconst SwapScreen = () => {\n return (\n <>\n <SwapTokenFromInput />\n <SwapTokenSwitcher />\n <SwapTokenToInput />\n <SwapReceiverAddress />\n <WidgetWarning />\n <SwapButton />\n <SwapDetails />\n <SwapModeSwitcher />\n </>\n );\n};\n\nconst LimitOrderExtraInputs = () => {\n const priceInputProps = useLimitPriceInputProps();\n const unsupportedChain = useUnsupportedLimitChain();\n\n return (\n <div\n className={cn(\"flex gap-4 items-stretch py-2\", {\n \"pointer-events-none\": unsupportedChain,\n })}\n >\n <div className=\"flex-1\">\n <PriceInput {...priceInputProps} />\n </div>\n <div className=\"flex-1\">\n <OrderExpiryInput type=\"limit\" />\n </div>\n </div>\n );\n};\n\nconst OtcOrderExtraInputs = () => {\n const priceInputProps = useOtcPriceInputProps();\n const unsupportedChain = useUnsupportedOtcChain();\n\n return (\n <div\n className={cn(\"flex gap-4 items-stretch py-2\", {\n \"pointer-events-none\": unsupportedChain,\n })}\n >\n <div className=\"flex-1\">\n <PriceInput {...priceInputProps} />\n </div>\n <div className=\"flex-1\">\n <OrderExpiryInput type=\"otc\" />\n </div>\n </div>\n );\n};\n\nconst LimitOrderScreen = () => {\n return (\n <>\n <LimitTokenFromInput />\n <LimitTokenSwitcher />\n <LimitTokenToInput />\n <LimitOrderExtraInputs />\n <LimitReceiverAddress />\n <WidgetWarning />\n <LimitOrderButton />\n <LimitOrderDetails />\n </>\n );\n};\n\nconst OtcOrderScreen = () => {\n return (\n <>\n <OtcTokenFromInput />\n <OtcTokenSwitcher />\n <OtcTokenToInput />\n <OtcOrderExtraInputs />\n <OtcReceiverAddress />\n <WidgetWarning />\n <OtcOrderButton />\n <OtcOrderDetails />\n </>\n );\n};\n\nconst tradeModeToScreen: Record<TradeMode, React.FC> = {\n swap: SwapScreen,\n limit: LimitOrderScreen,\n otc: OtcOrderScreen,\n};\n\nconst MainScreen = () => {\n const tradeMode = useTradeMode();\n const TradeModeScreen = tradeModeToScreen[tradeMode];\n return <TradeModeScreen />;\n};\n\nconst App = () => {\n const excludeUI = useAtomValue(excludeUIAtom);\n const { screenElement } = useScreenValue();\n\n return (\n <Containers>\n {screenElement ? (\n <SecondaryScreenContainer>{screenElement}</SecondaryScreenContainer>\n ) : (\n <MainScreenContainer>\n <WidgetHeader />\n <MainScreen />\n <PoweredBy />\n </MainScreenContainer>\n )}\n {!excludeUI.includes(\"snackbars\") && <Toaster />}\n </Containers>\n );\n};\n\nconst WidgetBase = ({\n config: _config,\n apiConfig,\n provider,\n events,\n input: formInputProps,\n}: WidgetProps) => {\n const queryClient = useQueryClient();\n\n const setWidgetConfig = useSetAtom(setWidgetConfigAtom);\n const setSubConfig = useSetAtom(setSubConfigAtom);\n const setApiConfig = useSetAtom(apiConfigAtom);\n\n const {\n srcChains,\n destChains,\n tokenLists,\n tradeModes,\n excludeUI,\n devURLs,\n ...config\n } = _config || {};\n\n // hydrating with only partial config overrides values with undefined,\n // so we have default values too\n useHydrateAtoms([\n [setWidgetConfigAtom, { ...defaultWidgetConfig, ...config }],\n [\n setSubConfigAtom,\n {\n ...defaultSubConfig,\n srcChains,\n destChains,\n tokenLists,\n tradeModes,\n excludeUI,\n devURLs,\n },\n ],\n [apiConfigAtom, apiConfig || {}],\n [externalProviderAtom, provider || null],\n [widgetEventsAtom, events || {}],\n [formInputPropsAtom, formInputProps || {}],\n // this provider initialisation step is needed so that jotai reference the same\n // queryClient in both atomWithQuery and other parts of the app. Without this,\n // jotai will reference a different instance of queryClient\n [queryClientAtom, queryClient],\n ]);\n\n useWidgetEventsSetter(events);\n useSetFormInputFromProps(formInputProps);\n\n useLayoutEffect(() => {\n setWidgetConfig({\n theme: config.theme,\n enableDelta: config.enableDelta,\n enableCrossChain: config.enableCrossChain,\n partner: config.partner,\n privyAppId: config.privyAppId,\n privyClientId: config.privyClientId,\n debug: config.debug,\n widgetMode: config.widgetMode,\n ignoreBadUsdPrice: config.ignoreBadUsdPrice,\n });\n }, [\n config.theme,\n config.enableDelta,\n config.enableCrossChain,\n config.partner,\n config.privyAppId,\n config.privyClientId,\n config.debug,\n config.widgetMode,\n config.ignoreBadUsdPrice,\n setWidgetConfig,\n ]);\n\n useLayoutEffect(() => {\n setSubConfig({\n srcChains,\n destChains,\n tokenLists,\n tradeModes,\n excludeUI,\n devURLs,\n });\n }, [\n srcChains,\n destChains,\n tokenLists,\n setSubConfig,\n tradeModes,\n excludeUI,\n devURLs,\n ]);\n\n useLayoutEffect(() => {\n setApiConfig({\n apiKey: apiConfig?.apiKey,\n headers: apiConfig?.headers,\n });\n }, [apiConfig?.apiKey, apiConfig?.headers, setApiConfig]);\n\n const setExternalProvider = useSetAtom(externalProviderAtom);\n\n useLayoutEffect(() => {\n // update external provider on change\n setExternalProvider(provider || null);\n }, [provider, setExternalProvider]);\n\n const isDappMode = config?.widgetMode === \"dapp\";\n // after initial reconnect (or not reconnect) on mount, we want to keep the same reconnectOnMount value\n // so that onMount logic inside WagmiProvider/Hydrate doesn't re-run.\n // reconnectOnMountInit should be considered reconnectOnRender,\n // in normal Apps where WagmiProvider is at the very top of the tree, first and only render = when mounting,\n // in Widget, because of external props, rerender can happen more often.\n const reconnectOnMountInit = useInitialValue(!isDappMode);\n // reconnectOnMount not in Dapp mode,\n // in Dapp mode, connection happens to provider external provider, when provided, whether onMount or later\n\n return (\n <Web3Providers reconnectOnMount={reconnectOnMountInit}>\n <AutoconnectExternalProvider />\n <PrivyIframeDependency />\n <Updaters />\n <App />\n {import.meta.env.DEV && <DevTools />}\n </Web3Providers>\n );\n};\n\nexport const Widget = ({\n config,\n apiConfig,\n provider,\n events,\n input,\n}: WidgetProps) => {\n return (\n <JotaiProvider>\n <QueryClientProvider>\n <WidgetBase\n config={config}\n apiConfig={apiConfig}\n provider={provider}\n events={events}\n input={input}\n />\n </QueryClientProvider>\n </JotaiProvider>\n );\n};\n\nfunction Containers({ children }: { children: React.ReactNode }) {\n const setContainerElement = useSetAtom(containerAtom);\n\n const containerRef = useRef<HTMLDivElement | null>(null);\n useCloseScreenOnClickOutside(containerRef);\n\n const widgetConfig = useWidgetConfig();\n\n const { isDrawerFullCover, isDrawerOpen } =\n useDrawerContainerHeightTransition(containerRef);\n\n const partialDrawerOpen = isDrawerOpen && !isDrawerFullCover;\n\n return (\n <div\n ref={containerRef}\n // don't use tailwind classes on the root element, because of .velora-widget { @import tailwind/*}\n className={cn(\"velora-widget\", {\n dark: widgetConfig.theme === \"dark\",\n })}\n id={WIDGET_ELEMENT_ID}\n >\n <InWidgetDrawerOverlay open={partialDrawerOpen} />\n\n <div\n // absolutely positioned container on top of parent container with fixed height,\n // but because it's not statically positioned, it doesn't add to the whole widget height\n className={cn(\n \"overflow-hidden bottom-0 left-0 right-0 absolute transition-transform duration-500 z-11 pointer-events-none [&>*]:pointer-events-auto\",\n WIDGET_HEIGHT_CLASSNAME\n )}\n ref={setContainerElement}\n />\n {children}\n </div>\n );\n}\n\nfunction WidgetHeader() {\n return <AppHeader classes={{ root: \"mb-4\" }} />;\n}\n\nfunction SwapTokenFromInput() {\n // override Token amounts based on current swap price\n const overrides = useTokenInputsFromPrice();\n\n const tokenFromInputProps = useTokenFromInputProps({\n override: overrides.tokenFromAmount,\n activeSwapMode: overrides.priceMode,\n isPriceLoading: overrides.isLoading,\n price: overrides.price,\n });\n\n return <TokenInput {...tokenFromInputProps} />;\n}\n\nfunction LimitTokenFromInput() {\n const tokenFromInputProps = useLimitTokenFromInputProps();\n return <TokenInput {...tokenFromInputProps} />;\n}\n\nfunction OtcTokenFromInput() {\n const tokenFromInputProps = useOtcTokenFromInputProps();\n return <TokenInput {...tokenFromInputProps} />;\n}\n\nfunction SwapTokenToInput() {\n // override Token amounts based on current swap price\n const overrides = useTokenInputsFromPrice();\n\n const tokenToInputProps = useTokenToInputProps({\n override: overrides.tokenToAmount,\n isPriceLoading: overrides.isLoading,\n priceMode: overrides.priceMode,\n price: overrides.price,\n priceError: overrides.error,\n });\n\n return <TokenInput {...tokenToInputProps} />;\n}\n\nfunction LimitTokenToInput() {\n const tokenToInputProps = useLimitTokenToInputProps();\n return <TokenInput {...tokenToInputProps} />;\n}\n\nfunction OtcTokenToInput() {\n const tokenToInputProps = useOtcTokenToInputProps();\n return <TokenInput {...tokenToInputProps} />;\n}\n\nfunction SwapTokenSwitcher() {\n const tokenSwitcherProps = useSwapTokenSwitcherProps();\n return <TokenSwitcherComp {...tokenSwitcherProps} />;\n}\n\nfunction LimitTokenSwitcher() {\n const tokenSwitcherProps = useLimitTokenSwitcherProps();\n return <TokenSwitcherComp {...tokenSwitcherProps} />;\n}\n\nfunction OtcTokenSwitcher() {\n const tokenSwitcherProps = useOtcTokenSwitcherProps();\n return <TokenSwitcherComp {...tokenSwitcherProps} />;\n}\n\nfunction SwapButton() {\n // override Token amounts based on current swap price\n const overrides = useTokenInputsFromPrice();\n\n const tokenFromInputProps = useTokenFromInputProps({\n override: overrides.tokenFromAmount,\n activeSwapMode: overrides.priceMode,\n isPriceLoading: overrides.isLoading,\n price: overrides.price,\n });\n const tokenToInputProps = useTokenToInputProps({\n override: overrides.tokenToAmount,\n isPriceLoading: overrides.isLoading,\n priceMode: overrides.priceMode,\n price: overrides.price,\n priceError: overrides.error,\n });\n\n const orderProps =\n tokenFromInputProps.token && tokenToInputProps.token\n ? {\n fromToken: tokenFromInputProps.token,\n toToken: tokenToInputProps.token,\n fromAmount: tokenFromInputProps.amount,\n toAmount: tokenToInputProps.amount,\n swapSide: overrides.side,\n }\n : undefined;\n\n const wrapEthProps = useWrapEthProps();\n\n const extraProps = useWidgetButtonExtraProps({\n tokenFrom: tokenFromInputProps.token,\n tokenTo: tokenToInputProps.token,\n });\n\n return (\n <SwapButtonWithDrawer\n orderProps={orderProps}\n marketPrice={\n overrides.priceMode === \"market\" ? overrides.price : undefined\n }\n deltaPrice={overrides.priceMode === \"delta\" ? overrides.price : undefined}\n priceMode={overrides.priceMode}\n wrapEthProps={wrapEthProps}\n disabled={extraProps.disabled}\n labelOverride={extraProps.labelOverride}\n className={extraProps.className}\n />\n );\n}\n\nfunction SwapDetails() {\n const overrides = useTokenInputsFromPrice();\n\n const tokenFromInputProps = useTokenFromInputProps({\n override: overrides.tokenFromAmount,\n activeSwapMode: overrides.priceMode,\n isPriceLoading: overrides.isLoading,\n price: overrides.price,\n });\n const tokenToInputProps = useTokenToInputProps({\n override: overrides.tokenToAmount,\n isPriceLoading: overrides.isLoading,\n priceMode: overrides.priceMode,\n price: overrides.price,\n priceError: overrides.error,\n });\n\n const fromAmountGtZero = Number(tokenFromInputProps.amount) > 0;\n const shouldShowDetails = fromAmountGtZero && tokenToInputProps.token;\n\n return shouldShowDetails ? <SwapDetailsExpandable /> : null;\n}\n\nfunction SwapReceiverAddress() {\n const { isConnected } = useAccount();\n const shouldShowReceiverAddress = isConnected;\n const swapReceiverAddressProps = useSwapReceiverAddress();\n\n return shouldShowReceiverAddress ? (\n <ReceiverAddress\n classes={{ root: \"mt-2\" }}\n type=\"swap\"\n {...swapReceiverAddressProps}\n />\n ) : null;\n}\n\nfunction OtcReceiverAddress() {\n const unsupportedChain = useUnsupportedOtcChain();\n const otcReceiverAddressProps = useOtcReceiverAddress();\n\n return (\n <ReceiverAddress\n classes={{\n root: cn(\"mt-2\", {\n \"pointer-events-none\": unsupportedChain,\n }),\n }}\n type=\"otc\"\n {...otcReceiverAddressProps}\n />\n );\n}\n\nfunction LimitReceiverAddress() {\n const unsupportedChain = useUnsupportedLimitChain();\n const limitReceiverAddressProps = useLimitReceiverAddress();\n\n return (\n <ReceiverAddress\n classes={{\n root: cn(\"mt-2\", {\n \"pointer-events-none\": unsupportedChain,\n }),\n }}\n type=\"limit\"\n {...limitReceiverAddressProps}\n />\n );\n}\n\nconst swapModeSwitcherClasses = {\n root: \"mt-4\",\n} as const;\n\nfunction SwapModeSwitcher() {\n const { delta, market, priceMode } = useSwapPrices({ enabled: false });\n // @TODO as on the main UI:\n // 1. Show Market MarketOffers if marketPrice can be switched to and price will fetch\n // 2. Show nothing if only one of the prices can be used\n if (delta.canBeUsed && market.canBeUsed) {\n return (\n <SwapModeSwitcherExpandable\n classes={swapModeSwitcherClasses}\n currentEffectiveMode={priceMode}\n />\n );\n }\n\n if (delta.canBeUsed && delta.price && isBridgePrice(delta.price)) {\n return (\n <ErrorBoundary fallback={null}>\n <BridgeSelectorExpandable\n classes={swapModeSwitcherClasses}\n bridgePrice={delta.price}\n />\n </ErrorBoundary>\n );\n }\n}\n\ntype ButtonWithDrawerProps = React.ComponentProps<typeof Button> & {\n orderProps?: MinTradeOverviewProps;\n drawerContainer?: HTMLDivElement | null;\n marketPrice?: OptimalRate;\n deltaPrice?: DeltaPrice | BridgePrice;\n wrapEthProps: WrapEthProps;\n priceMode: SwapMode;\n labelOverride?: string;\n};\n\nfunction SwapButtonWithDrawer({\n orderProps,\n drawerContainer,\n marketPrice,\n deltaPrice,\n priceMode,\n wrapEthProps,\n labelOverride,\n ...buttonProps\n}: ButtonWithDrawerProps) {\n const { isConnected } = useAccount();\n\n if (!isConnected)\n return (\n <ConnectWalletDrawerButton\n drawerContainer={drawerContainer}\n {...buttonProps}\n />\n );\n\n if (wrapEthProps.shouldWrap)\n return (\n <WrapEthDrawerButton\n drawerContainer={drawerContainer}\n wrapEthProps={wrapEthProps}\n labelOverride={labelOverride}\n {...buttonProps}\n />\n );\n\n const priceProps =\n priceMode === \"delta\"\n ? { price: deltaPrice, priceMode }\n : { price: marketPrice, priceMode };\n\n return (\n <SwapTradeFlowScreenButton\n orderProps={orderProps}\n labelOverride={labelOverride}\n {...priceProps}\n {...buttonProps}\n />\n );\n}\n"],"names":["runSubscriptions","SwapScreen","$","_c","t0","Symbol","for","LimitOrderExtraInputs","priceInputProps","useLimitPriceInputProps","unsupportedChain","useUnsupportedLimitChain","cn","t1","t2","t3","OtcOrderExtraInputs","useOtcPriceInputProps","useUnsupportedOtcChain","LimitOrderScreen","OtcOrderScreen","tradeModeToScreen","swap","limit","otc","MainScreen","tradeMode","useTradeMode","TradeModeScreen","App","excludeUI","useAtomValue","excludeUIAtom","screenElement","useScreenValue","includes","WidgetBase","config","_config","apiConfig","provider","events","input","formInputProps","queryClient","useQueryClient","setWidgetConfig","useSetAtom","setWidgetConfigAtom","setSubConfig","setSubConfigAtom","setApiConfig","apiConfigAtom","destChains","devURLs","srcChains","tokenLists","tradeModes","defaultWidgetConfig","defaultSubConfig","t4","t5","t6","t7","externalProviderAtom","t8","t9","widgetEventsAtom","t10","t11","formInputPropsAtom","t12","queryClientAtom","t13","useHydrateAtoms","useWidgetEventsSetter","useSetFormInputFromProps","t14","t15","debug","enableCrossChain","enableDelta","ignoreBadUsdPrice","partner","privyAppId","privyClientId","theme","widgetMode","useLayoutEffect","t16","t17","t18","apiKey","headers","t19","t20","t21","setExternalProvider","t22","t23","isDappMode","reconnectOnMountInit","useInitialValue","t24","t25","t26","t27","t28","import","t29","Widget","Containers","children","setContainerElement","containerAtom","containerRef","useRef","useCloseScreenOnClickOutside","widgetConfig","useWidgetConfig","isDrawerFullCover","isDrawerOpen","useDrawerContainerHeightTransition","partialDrawerOpen","dark","WIDGET_HEIGHT_CLASSNAME","WIDGET_ELEMENT_ID","WidgetHeader","root","SwapTokenFromInput","overrides","useTokenInputsFromPrice","isLoading","price","priceMode","tokenFromAmount","override","activeSwapMode","isPriceLoading","tokenFromInputProps","useTokenFromInputProps","LimitTokenFromInput","useLimitTokenFromInputProps","OtcTokenFromInput","useOtcTokenFromInputProps","SwapTokenToInput","error","tokenToAmount","priceError","tokenToInputProps","useTokenToInputProps","LimitTokenToInput","useLimitTokenToInputProps","OtcTokenToInput","useOtcTokenToInputProps","SwapTokenSwitcher","tokenSwitcherProps","useSwapTokenSwitcherProps","TokenSwitcherComp","LimitTokenSwitcher","useLimitTokenSwitcherProps","OtcTokenSwitcher","useOtcTokenSwitcherProps","SwapButton","side","amount","token","fromToken","toToken","fromAmount","toAmount","swapSide","undefined","orderProps","wrapEthProps","useWrapEthProps","tokenFrom","tokenTo","extraProps","useWidgetButtonExtraProps","className","disabled","labelOverride","SwapDetails","fromAmountGtZero","Number","shouldShowDetails","SwapReceiverAddress","isConnected","useAccount","shouldShowReceiverAddress","swapReceiverAddressProps","useSwapReceiverAddress","OtcReceiverAddress","otcReceiverAddressProps","useOtcReceiverAddress","LimitReceiverAddress","limitReceiverAddressProps","useLimitReceiverAddress","swapModeSwitcherClasses","SwapModeSwitcher","enabled","delta","market","useSwapPrices","canBeUsed","isBridgePrice","SwapButtonWithDrawer","buttonProps","deltaPrice","drawerContainer","marketPrice","shouldWrap","priceProps"],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { ExtraFetchParams } from '@velora-dex/sdk';
2
+ export type ApiConfig = {
3
+ apiKey?: ExtraFetchParams["apiKey"];
4
+ headers?: ExtraFetchParams["headers"];
5
+ };
6
+ export declare const apiConfigAtom: import('jotai').WritableAtom<{
7
+ apiKey: string | undefined;
8
+ headers: Record<string, string> | undefined;
9
+ }, [config: ApiConfig], void>;
10
+ export declare const useApiConfig: () => {
11
+ apiKey: string | undefined;
12
+ headers: Record<string, string> | undefined;
13
+ };
14
+ //# sourceMappingURL=apiConfigAtom.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apiConfigAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/apiConfigAtom.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAExD,MAAM,MAAM,SAAS,GAAG;IACtB,MAAM,CAAC,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACpC,OAAO,CAAC,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAC;CACvC,CAAC;AAQF,eAAO,MAAM,aAAa;;;6BASzB,CAAC;AAEF,eAAO,MAAM,YAAY;;;CAExB,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { atom } from 'jotai';
2
+ import { useAtomValue } from '../store.js';
3
+ import { atomWithCompare } from '../../lib/utils/atomWithCompare.js';
4
+ import { shallowEqual } from '../../lib/utils/index.js';
5
+
6
+ const apiKeyAtom = atom(void 0);
7
+ const apiHeadersAtom = atomWithCompare(void 0, shallowEqual);
8
+ const apiConfigAtom = atom((get) => ({
9
+ apiKey: get(apiKeyAtom),
10
+ headers: get(apiHeadersAtom)
11
+ }), (_, set, config) => {
12
+ set(apiKeyAtom, config.apiKey);
13
+ set(apiHeadersAtom, config.headers);
14
+ });
15
+ const useApiConfig = () => {
16
+ return useAtomValue(apiConfigAtom);
17
+ };
18
+
19
+ export { apiConfigAtom, useApiConfig };
20
+ //# sourceMappingURL=apiConfigAtom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apiConfigAtom.js","sources":["../../../src/core/state/apiConfigAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport { atomWithCompare } from \"@/lib/utils/atomWithCompare\";\nimport { shallowEqual } from \"@/lib/utils\";\nimport type { ExtraFetchParams } from \"@velora-dex/sdk\";\n\nexport type ApiConfig = {\n apiKey?: ExtraFetchParams[\"apiKey\"];\n headers?: ExtraFetchParams[\"headers\"];\n};\n\nconst apiKeyAtom = atom<ApiConfig[\"apiKey\"]>(undefined);\nconst apiHeadersAtom = atomWithCompare<ApiConfig[\"headers\"]>(\n undefined,\n shallowEqual\n);\n\nexport const apiConfigAtom = atom(\n (get) => ({\n apiKey: get(apiKeyAtom),\n headers: get(apiHeadersAtom),\n }),\n (_, set, config: ApiConfig) => {\n set(apiKeyAtom, config.apiKey);\n set(apiHeadersAtom, config.headers);\n }\n);\n\nexport const useApiConfig = () => {\n return useAtomValue(apiConfigAtom);\n};\n"],"names":["apiKeyAtom","atom","undefined","apiHeadersAtom","atomWithCompare","shallowEqual","apiConfigAtom","get","apiKey","headers","_","set","config","useApiConfig","useAtomValue"],"mappings":";;;;;AAWA,MAAMA,UAAAA,GAAaC,KAA0BC,MAAS,CAAA;AACtD,MAAMC,cAAAA,GAAiBC,eAAAA,CACrBF,MAAAA,EACAG,YACF,CAAA;AAEO,MAAMC,aAAAA,GAAgBL,KAC1BM,CAAAA,GAAAA,MAAS;AAAA,EACRC,MAAAA,EAAQD,IAAIP,UAAU,CAAA;AAAA,EACtBS,OAAAA,EAASF,IAAIJ,cAAc;AAC7B,CAAA,CAAA,EACA,CAACO,CAAAA,EAAGC,GAAAA,EAAKC,MAAAA,KAAsB;AAC7BD,EAAAA,GAAAA,CAAIX,UAAAA,EAAYY,OAAOJ,MAAM,CAAA;AAC7BG,EAAAA,GAAAA,CAAIR,cAAAA,EAAgBS,OAAOH,OAAO,CAAA;AACpC,CACF;AAEO,MAAMI,eAAeA,MAAA;AAAA,EAAA,OACnBC,aAAaR,aAAa,CAAA;AAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"configAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/configAtom.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAMtE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGjD,MAAM,MAAM,eAAe,GAAG,IAAI,CAChC,YAAY,EACV,OAAO,GACP,aAAa,GACb,kBAAkB,GAClB,SAAS,GACT,YAAY,GACZ,eAAe,GACf,OAAO,GACP,YAAY,GACZ,mBAAmB,CACtB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,IAAI,CAC/B,YAAY,EACV,WAAW,GACX,YAAY,GACZ,YAAY,GACZ,YAAY,GACZ,WAAW,GACX,SAAS,CACZ,CAAC;AAcF,eAAO,MAAM,mBAAmB;;;;;;;;;CASI,CAAC;AAErC,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;CAAkD,CAAC;AAEhF,eAAO,MAAM,eAAe;;;;;;;;;;CAE3B,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;;CAOM,CAAC;AAIpC,eAAO,MAAM,cAAc,0DAG1B,CAAC;AACF,eAAO,MAAM,aAAa,sKAGzB,CAAC;AACF,eAAO,MAAM,cAAc,sKAG1B,CAAC;AAEF,eAAO,MAAM,cAAc,gEAG1B,CAAC;AAEF,eAAO,MAAM,aAAa,0EAGzB,CAAC;AAEF,eAAO,MAAM,WAAW,wDAIvB,CAAC"}
1
+ {"version":3,"file":"configAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/configAtom.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAMtE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGjD,MAAM,MAAM,eAAe,GAAG,IAAI,CAChC,YAAY,EACV,OAAO,GACP,aAAa,GACb,kBAAkB,GAClB,SAAS,GACT,YAAY,GACZ,eAAe,GACf,OAAO,GACP,YAAY,GACZ,mBAAmB,CACtB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,IAAI,CAC/B,YAAY,EACV,WAAW,GACX,YAAY,GACZ,YAAY,GACZ,YAAY,GACZ,WAAW,GACX,SAAS,CACZ,CAAC;AAcF,eAAO,MAAM,mBAAmB;;;;;;;;;CASI,CAAC;AAErC,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;CAAkD,CAAC;AAEhF,eAAO,MAAM,eAAe;;;;;;;;;;CAE3B,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;;CAOM,CAAC;AAIpC,eAAO,MAAM,cAAc,0DAG1B,CAAC;AACF,eAAO,MAAM,aAAa,sKAGzB,CAAC;AACF,eAAO,MAAM,cAAc,sKAG1B,CAAC;AAEF,eAAO,MAAM,cAAc,gEAG1B,CAAC;AAEF,eAAO,MAAM,aAAa,0EAGzB,CAAC;AAEF,eAAO,MAAM,WAAW,wDAUvB,CAAC"}
@@ -2,7 +2,7 @@ import { atom } from 'jotai';
2
2
  import { useAtomValue } from '../store.js';
3
3
  import { emptyArray, emptyObject } from '../../lib/constants/index.js';
4
4
  import { atomWithCompare } from '../../lib/utils/atomWithCompare.js';
5
- import { unorderedShallowEqual, constructPropertiesEqual } from '../../lib/utils/index.js';
5
+ import { unorderedShallowEqual } from '../../lib/utils/index.js';
6
6
  import { getDefaultTheme } from '../../lib/utils/theme.js';
7
7
 
8
8
  const defaultWidgetConfig = {
@@ -32,11 +32,9 @@ const srcChainsAtom = atomWithCompare(defaultSubConfig.srcChains, unorderedShall
32
32
  const destChainsAtom = atomWithCompare(defaultSubConfig.destChains, unorderedShallowEqual);
33
33
  const tradeModesAtom = atomWithCompare(defaultSubConfig.tradeModes, unorderedShallowEqual);
34
34
  const excludeUIAtom = atomWithCompare(defaultSubConfig.excludeUI, unorderedShallowEqual);
35
- const devURLsAtom = atomWithCompare(
36
- defaultSubConfig.devURLs,
37
- // known properties only comparison
38
- constructPropertiesEqual(["apiProxyURL", "apiURL", "explorerURL"])
39
- );
35
+ const devURLsAtom = atomWithCompare(defaultSubConfig.devURLs, (a, b) => {
36
+ return a?.apiProxyURL === b?.apiProxyURL && a?.apiURL === b?.apiURL && a?.explorerURL === b?.explorerURL;
37
+ });
40
38
 
41
39
  export { defaultSubConfig, defaultWidgetConfig, destChainsAtom, devURLsAtom, excludeUIAtom, srcChainsAtom, tokenListsAtom, tradeModesAtom, useWidgetConfig, widgetConfigAtom };
42
40
  //# sourceMappingURL=configAtom.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"configAtom.js","sources":["../../../src/core/state/configAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport type { WidgetElements, WidgetConfig, DevURLs } from \"../types\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { emptyArray, emptyObject } from \"@/lib/constants\";\nimport { atomWithCompare } from \"@/lib/utils/atomWithCompare\";\nimport { constructPropertiesEqual, unorderedShallowEqual } from \"@/lib/utils\";\nimport { type TradeMode } from \"./tradeModeAtom\";\nimport { getDefaultTheme } from \"@/lib/utils/theme\";\n\nexport type PrimitiveConfig = Pick<\n WidgetConfig,\n | \"theme\"\n | \"enableDelta\"\n | \"enableCrossChain\"\n | \"partner\"\n | \"privyAppId\"\n | \"privyClientId\"\n | \"debug\"\n | \"widgetMode\"\n | \"ignoreBadUsdPrice\"\n>;\n\nexport type IterableConfig = Pick<\n WidgetConfig,\n | \"srcChains\"\n | \"destChains\"\n | \"tokenLists\"\n | \"tradeModes\"\n | \"excludeUI\"\n | \"devURLs\"\n>;\n\ntype PrimitiveConfigState = MarkRequired<\n PrimitiveConfig,\n | \"theme\"\n | \"enableDelta\"\n | \"enableCrossChain\"\n | \"privyAppId\"\n | \"privyClientId\"\n | \"debug\"\n | \"widgetMode\"\n | \"ignoreBadUsdPrice\"\n>;\n\nexport const defaultWidgetConfig = {\n theme: getDefaultTheme(),\n enableDelta: true,\n enableCrossChain: true,\n privyAppId: import.meta.env.VITE_PRIVY_APP_ID,\n privyClientId: import.meta.env.VITE_PRIVY_CLIENT_ID,\n debug: false,\n widgetMode: \"standalone\",\n ignoreBadUsdPrice: true,\n} as const satisfies PrimitiveConfig;\n\nexport const widgetConfigAtom = atom<PrimitiveConfigState>(defaultWidgetConfig);\n\nexport const useWidgetConfig = () => {\n return useAtomValue(widgetConfigAtom);\n};\n\nexport const defaultSubConfig = {\n tokenLists: emptyArray,\n srcChains: emptyArray,\n destChains: emptyArray,\n tradeModes: emptyArray,\n excludeUI: emptyArray,\n devURLs: emptyObject,\n} as const satisfies IterableConfig;\n\n// independent atoms for each iterable config property\n// with comparison to avoid unnecessary re-renders\nexport const tokenListsAtom = atomWithCompare<string[]>(\n defaultSubConfig.tokenLists,\n unorderedShallowEqual\n);\nexport const srcChainsAtom = atomWithCompare<SupportedChainId[]>(\n defaultSubConfig.srcChains,\n unorderedShallowEqual\n);\nexport const destChainsAtom = atomWithCompare<SupportedChainId[]>(\n defaultSubConfig.destChains,\n unorderedShallowEqual\n);\n\nexport const tradeModesAtom = atomWithCompare<TradeMode[]>(\n defaultSubConfig.tradeModes,\n unorderedShallowEqual\n);\n\nexport const excludeUIAtom = atomWithCompare<WidgetElements[]>(\n defaultSubConfig.excludeUI,\n unorderedShallowEqual\n);\n\nexport const devURLsAtom = atomWithCompare<DevURLs>(\n defaultSubConfig.devURLs,\n // known properties only comparison\n constructPropertiesEqual([\"apiProxyURL\", \"apiURL\", \"explorerURL\"])\n);\n"],"names":["defaultWidgetConfig","theme","getDefaultTheme","enableDelta","enableCrossChain","privyAppId","import","privyClientId","debug","widgetMode","ignoreBadUsdPrice","widgetConfigAtom","atom","useWidgetConfig","useAtomValue","defaultSubConfig","tokenLists","emptyArray","srcChains","destChains","tradeModes","excludeUI","devURLs","emptyObject","tokenListsAtom","atomWithCompare","unorderedShallowEqual","srcChainsAtom","destChainsAtom","tradeModesAtom","excludeUIAtom","devURLsAtom","constructPropertiesEqual"],"mappings":";;;;;;;AA8CO,MAAMA,mBAAAA,GAAsB;AAAA,EACjCC,OAAOC,eAAAA,EAAgB;AAAA,EACvBC,WAAAA,EAAa,IAAA;AAAA,EACbC,gBAAAA,EAAkB,IAAA;AAAA,EAClBC,UAAAA,EAAYC,2BAAAA;AAAAA,EACZC,aAAAA,EAAeD,sDAAAA;AAAAA,EACfE,KAAAA,EAAO,KAAA;AAAA,EACPC,UAAAA,EAAY,YAAA;AAAA,EACZC,iBAAAA,EAAmB;AACrB;AAEO,MAAMC,gBAAAA,GAAmBC,KAA2BZ,mBAAmB;AAEvE,MAAMa,kBAAkBA,MAAA;AAAA,EAAA,OACtBC,aAAaH,gBAAgB,CAAA;AAAC;AAGhC,MAAMI,gBAAAA,GAAmB;AAAA,EAC9BC,UAAAA,EAAYC,UAAAA;AAAAA,EACZC,SAAAA,EAAWD,UAAAA;AAAAA,EACXE,UAAAA,EAAYF,UAAAA;AAAAA,EACZG,UAAAA,EAAYH,UAAAA;AAAAA,EACZI,SAAAA,EAAWJ,UAAAA;AAAAA,EACXK,OAAAA,EAASC;AACX;AAIO,MAAMC,cAAAA,GAAiBC,eAAAA,CAC5BV,gBAAAA,CAAiBC,UAAAA,EACjBU,qBACF;AACO,MAAMC,aAAAA,GAAgBF,eAAAA,CAC3BV,gBAAAA,CAAiBG,SAAAA,EACjBQ,qBACF;AACO,MAAME,cAAAA,GAAiBH,eAAAA,CAC5BV,gBAAAA,CAAiBI,UAAAA,EACjBO,qBACF;AAEO,MAAMG,cAAAA,GAAiBJ,eAAAA,CAC5BV,gBAAAA,CAAiBK,UAAAA,EACjBM,qBACF;AAEO,MAAMI,aAAAA,GAAgBL,eAAAA,CAC3BV,gBAAAA,CAAiBM,SAAAA,EACjBK,qBACF;AAEO,MAAMK,WAAAA,GAAcN,eAAAA;AAAAA,EACzBV,gBAAAA,CAAiBO,OAAAA;AAAAA;AAAAA,EAEjBU,wBAAAA,CAAyB,CAAC,aAAA,EAAe,QAAA,EAAU,aAAa,CAAC;AACnE;;;;"}
1
+ {"version":3,"file":"configAtom.js","sources":["../../../src/core/state/configAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport type { WidgetElements, WidgetConfig, DevURLs } from \"../types\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { emptyArray, emptyObject } from \"@/lib/constants\";\nimport { atomWithCompare } from \"@/lib/utils/atomWithCompare\";\nimport { unorderedShallowEqual } from \"@/lib/utils\";\nimport { type TradeMode } from \"./tradeModeAtom\";\nimport { getDefaultTheme } from \"@/lib/utils/theme\";\n\nexport type PrimitiveConfig = Pick<\n WidgetConfig,\n | \"theme\"\n | \"enableDelta\"\n | \"enableCrossChain\"\n | \"partner\"\n | \"privyAppId\"\n | \"privyClientId\"\n | \"debug\"\n | \"widgetMode\"\n | \"ignoreBadUsdPrice\"\n>;\n\nexport type IterableConfig = Pick<\n WidgetConfig,\n | \"srcChains\"\n | \"destChains\"\n | \"tokenLists\"\n | \"tradeModes\"\n | \"excludeUI\"\n | \"devURLs\"\n>;\n\ntype PrimitiveConfigState = MarkRequired<\n PrimitiveConfig,\n | \"theme\"\n | \"enableDelta\"\n | \"enableCrossChain\"\n | \"privyAppId\"\n | \"privyClientId\"\n | \"debug\"\n | \"widgetMode\"\n | \"ignoreBadUsdPrice\"\n>;\n\nexport const defaultWidgetConfig = {\n theme: getDefaultTheme(),\n enableDelta: true,\n enableCrossChain: true,\n privyAppId: import.meta.env.VITE_PRIVY_APP_ID,\n privyClientId: import.meta.env.VITE_PRIVY_CLIENT_ID,\n debug: false,\n widgetMode: \"standalone\",\n ignoreBadUsdPrice: true,\n} as const satisfies PrimitiveConfig;\n\nexport const widgetConfigAtom = atom<PrimitiveConfigState>(defaultWidgetConfig);\n\nexport const useWidgetConfig = () => {\n return useAtomValue(widgetConfigAtom);\n};\n\nexport const defaultSubConfig = {\n tokenLists: emptyArray,\n srcChains: emptyArray,\n destChains: emptyArray,\n tradeModes: emptyArray,\n excludeUI: emptyArray,\n devURLs: emptyObject,\n} as const satisfies IterableConfig;\n\n// independent atoms for each iterable config property\n// with comparison to avoid unnecessary re-renders\nexport const tokenListsAtom = atomWithCompare<string[]>(\n defaultSubConfig.tokenLists,\n unorderedShallowEqual\n);\nexport const srcChainsAtom = atomWithCompare<SupportedChainId[]>(\n defaultSubConfig.srcChains,\n unorderedShallowEqual\n);\nexport const destChainsAtom = atomWithCompare<SupportedChainId[]>(\n defaultSubConfig.destChains,\n unorderedShallowEqual\n);\n\nexport const tradeModesAtom = atomWithCompare<TradeMode[]>(\n defaultSubConfig.tradeModes,\n unorderedShallowEqual\n);\n\nexport const excludeUIAtom = atomWithCompare<WidgetElements[]>(\n defaultSubConfig.excludeUI,\n unorderedShallowEqual\n);\n\nexport const devURLsAtom = atomWithCompare<DevURLs>(\n defaultSubConfig.devURLs,\n (a, b) => {\n // known properties only comparison\n return (\n a?.apiProxyURL === b?.apiProxyURL &&\n a?.apiURL === b?.apiURL &&\n a?.explorerURL === b?.explorerURL\n );\n }\n);\n"],"names":["defaultWidgetConfig","theme","getDefaultTheme","enableDelta","enableCrossChain","privyAppId","import","privyClientId","debug","widgetMode","ignoreBadUsdPrice","widgetConfigAtom","atom","useWidgetConfig","useAtomValue","defaultSubConfig","tokenLists","emptyArray","srcChains","destChains","tradeModes","excludeUI","devURLs","emptyObject","tokenListsAtom","atomWithCompare","unorderedShallowEqual","srcChainsAtom","destChainsAtom","tradeModesAtom","excludeUIAtom","devURLsAtom","a","b","apiProxyURL","apiURL","explorerURL"],"mappings":";;;;;;;AA8CO,MAAMA,mBAAAA,GAAsB;AAAA,EACjCC,OAAOC,eAAAA,EAAgB;AAAA,EACvBC,WAAAA,EAAa,IAAA;AAAA,EACbC,gBAAAA,EAAkB,IAAA;AAAA,EAClBC,UAAAA,EAAYC,2BAAAA;AAAAA,EACZC,aAAAA,EAAeD,sDAAAA;AAAAA,EACfE,KAAAA,EAAO,KAAA;AAAA,EACPC,UAAAA,EAAY,YAAA;AAAA,EACZC,iBAAAA,EAAmB;AACrB;AAEO,MAAMC,gBAAAA,GAAmBC,KAA2BZ,mBAAmB;AAEvE,MAAMa,kBAAkBA,MAAA;AAAA,EAAA,OACtBC,aAAaH,gBAAgB,CAAA;AAAC;AAGhC,MAAMI,gBAAAA,GAAmB;AAAA,EAC9BC,UAAAA,EAAYC,UAAAA;AAAAA,EACZC,SAAAA,EAAWD,UAAAA;AAAAA,EACXE,UAAAA,EAAYF,UAAAA;AAAAA,EACZG,UAAAA,EAAYH,UAAAA;AAAAA,EACZI,SAAAA,EAAWJ,UAAAA;AAAAA,EACXK,OAAAA,EAASC;AACX;AAIO,MAAMC,cAAAA,GAAiBC,eAAAA,CAC5BV,gBAAAA,CAAiBC,UAAAA,EACjBU,qBACF;AACO,MAAMC,aAAAA,GAAgBF,eAAAA,CAC3BV,gBAAAA,CAAiBG,SAAAA,EACjBQ,qBACF;AACO,MAAME,cAAAA,GAAiBH,eAAAA,CAC5BV,gBAAAA,CAAiBI,UAAAA,EACjBO,qBACF;AAEO,MAAMG,cAAAA,GAAiBJ,eAAAA,CAC5BV,gBAAAA,CAAiBK,UAAAA,EACjBM,qBACF;AAEO,MAAMI,aAAAA,GAAgBL,eAAAA,CAC3BV,gBAAAA,CAAiBM,SAAAA,EACjBK,qBACF;AAEO,MAAMK,cAAcN,eAAAA,CACzBV,gBAAAA,CAAiBO,OAAAA,EACjB,CAACU,GAAGC,CAAAA,KAAM;AAER,EAAA,OACED,CAAAA,EAAGE,WAAAA,KAAgBD,CAAAA,EAAGC,WAAAA,IACtBF,CAAAA,EAAGG,WAAWF,CAAAA,EAAGE,MAAAA,IACjBH,CAAAA,EAAGI,WAAAA,KAAgBH,CAAAA,EAAGG,WAAAA;AAE1B,CACF;;;;"}
@@ -1,5 +1,3 @@
1
- import { EIP1193Provider } from 'viem';
2
- import { Connector } from 'wagmi';
3
1
  export declare const externalProviderAtom: import('jotai').PrimitiveAtom<{
4
2
  on: <event extends keyof import('viem').EIP1193EventMap>(event: event, listener: import('viem').EIP1193EventMap[event]) => void;
5
3
  removeListener: <event extends keyof import('viem').EIP1193EventMap>(event: event, listener: import('viem').EIP1193EventMap[event]) => void;
@@ -21,12 +19,5 @@ export declare const useExternalProvider: () => {
21
19
  removeListener: <event extends keyof import('viem').EIP1193EventMap>(event: event, listener: import('viem').EIP1193EventMap[event]) => void;
22
20
  request: import('viem').EIP1193RequestFn<import('viem').EIP1474Methods>;
23
21
  } | null;
24
- export declare const useIsExternalProviderSafeIframe: () => boolean;
25
22
  export declare const useIsDappMode: () => boolean;
26
- export declare function isSafeIframeProvider(provider: EIP1193Provider & {
27
- safe?: {
28
- safeAddress: string;
29
- };
30
- }): boolean;
31
- export declare function isExternalConnectorWithSafeIframe(connector: Connector): Promise<boolean>;
32
23
  //# sourceMappingURL=externalProviderAtom.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"externalProviderAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/externalProviderAtom.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAG5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,eAAO,MAAM,oBAAoB;;;;;;;;;;CAAqC,CAAC;AAEvE,eAAO,MAAM,yBAAyB;;;;SAQpC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;QAE/B,CAAC;AAEF,eAAO,MAAM,+BAA+B,eAO3C,CAAC;AAEF,eAAO,MAAM,aAAa,eAEzB,CAAC;AAEF,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,eAAe,GAAG;IAAE,IAAI,CAAC,EAAE;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAC7D,OAAO,CAET;AAED,wBAAsB,iCAAiC,CACrD,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,OAAO,CAAC,CAIlB"}
1
+ {"version":3,"file":"externalProviderAtom.d.ts","sourceRoot":"","sources":["../../../src/core/state/externalProviderAtom.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,oBAAoB;;;;;;;;;;CAAqC,CAAC;AAEvE,eAAO,MAAM,yBAAyB;;;;SAQpC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;QAE/B,CAAC;AAEF,eAAO,MAAM,aAAa,eAEzB,CAAC"}
@@ -1,8 +1,6 @@
1
- import { d as distExports } from '../../_virtual/index.js';
2
1
  import { atom } from 'jotai';
3
2
  import { useAtomValue } from '../store.js';
4
3
  import { widgetConfigAtom } from './configAtom.js';
5
- import { isExternalConnector } from '../../components/web3/ConnectExternalProvider/utils.js';
6
4
 
7
5
  const externalProviderAtom = atom(null);
8
6
  const externalProviderToUseAtom = atom((get) => {
@@ -15,34 +13,9 @@ const externalProviderToUseAtom = atom((get) => {
15
13
  const useExternalProvider = () => {
16
14
  return useAtomValue(externalProviderToUseAtom);
17
15
  };
18
- const useIsExternalProviderSafeIframe = () => {
19
- const $ = distExports.c(2);
20
- const externalProvider = useExternalProvider();
21
- if (!externalProvider) {
22
- return false;
23
- }
24
- let t0;
25
- if ($[0] !== externalProvider) {
26
- t0 = isSafeIframeProvider(externalProvider);
27
- $[0] = externalProvider;
28
- $[1] = t0;
29
- } else {
30
- t0 = $[1];
31
- }
32
- const isSafeIframe = t0;
33
- return isSafeIframe;
34
- };
35
16
  const useIsDappMode = () => {
36
17
  return useAtomValue(widgetConfigAtom).widgetMode === "dapp";
37
18
  };
38
- function isSafeIframeProvider(provider) {
39
- return !!provider.safe?.safeAddress;
40
- }
41
- async function isExternalConnectorWithSafeIframe(connector) {
42
- if (!isExternalConnector(connector)) return false;
43
- const provider = await connector.getProvider();
44
- return isSafeIframeProvider(provider);
45
- }
46
19
 
47
- export { externalProviderAtom, externalProviderToUseAtom, isExternalConnectorWithSafeIframe, isSafeIframeProvider, useExternalProvider, useIsDappMode, useIsExternalProviderSafeIframe };
20
+ export { externalProviderAtom, externalProviderToUseAtom, useExternalProvider, useIsDappMode };
48
21
  //# sourceMappingURL=externalProviderAtom.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"externalProviderAtom.js","sources":["../../../src/core/state/externalProviderAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport type { EIP1193Provider } from \"viem\";\nimport { widgetConfigAtom } from \"./configAtom\";\nimport { isExternalConnector } from \"@/components/web3/ConnectExternalProvider/utils\";\nimport type { Connector } from \"wagmi\";\n\nexport const externalProviderAtom = atom<EIP1193Provider | null>(null);\n\nexport const externalProviderToUseAtom = atom<EIP1193Provider | null>((get) => {\n const widgetConfig = get(widgetConfigAtom);\n\n if (widgetConfig.widgetMode !== \"dapp\") {\n return null;\n }\n\n return get(externalProviderAtom);\n});\n\nexport const useExternalProvider = () => {\n return useAtomValue(externalProviderToUseAtom);\n};\n\nexport const useIsExternalProviderSafeIframe = () => {\n const externalProvider = useExternalProvider();\n\n if (!externalProvider) return false;\n\n const isSafeIframe = isSafeIframeProvider(externalProvider);\n return isSafeIframe;\n};\n\nexport const useIsDappMode = () => {\n return useAtomValue(widgetConfigAtom).widgetMode === \"dapp\";\n};\n\nexport function isSafeIframeProvider(\n provider: EIP1193Provider & { safe?: { safeAddress: string } }\n): boolean {\n return !!provider.safe?.safeAddress;\n}\n\nexport async function isExternalConnectorWithSafeIframe(\n connector: Connector\n): Promise<boolean> {\n if (!isExternalConnector(connector)) return false;\n const provider = await connector.getProvider();\n return isSafeIframeProvider(provider as EIP1193Provider);\n}\n"],"names":["externalProviderAtom","atom","externalProviderToUseAtom","get","widgetConfig","widgetConfigAtom","widgetMode","useExternalProvider","useAtomValue","useIsExternalProviderSafeIframe","$","_c","externalProvider","t0","isSafeIframeProvider","isSafeIframe","useIsDappMode","provider","safe","safeAddress","isExternalConnectorWithSafeIframe","connector","isExternalConnector","getProvider"],"mappings":";;;;;;AAOO,MAAMA,oBAAAA,GAAuBC,KAA6B,IAAI;AAE9D,MAAMC,yBAAAA,GAA4BD,KAA8BE,CAAAA,GAAAA,KAAQ;AAC7E,EAAA,MAAMC,YAAAA,GAAeD,IAAIE,gBAAgB,CAAA;AAEzC,EAAA,IAAID,YAAAA,CAAaE,eAAe,MAAA,EAAQ;AACtC,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,OAAOH,IAAIH,oBAAoB,CAAA;AACjC,CAAC;AAEM,MAAMO,sBAAsBA,MAAA;AAAA,EAAA,OAC1BC,aAAaN,yBAAyB,CAAA;AAAC;AAGzC,MAAMO,kCAAkCA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAC7C,EAAA,MAAAC,mBAAyBL,mBAAAA,EAAoB;AAE7C,EAAA,IAAI,CAACK,gBAAAA,EAAgB;AAAA,IAAA,OAAS,KAAA;AAAA,EAAK;AAAC,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAH,CAAAA,QAAAE,gBAAAA,EAAA;AAEfC,IAAAA,EAAAA,GAAAC,qBAAqBF,gBAAgB,CAAA;AAACF,IAAAA,CAAAA,MAAAE,gBAAAA;AAAAF,IAAAA,CAAAA,MAAAG,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAH,EAAA,CAAA,CAAA;AAAA,EAAA;AAA3D,EAAA,MAAAK,YAAAA,GAAqBF,EAAAA;AAAuC,EAAA,OACrDE,YAAAA;AAAY;AAGd,MAAMC,gBAAgBA,MAAA;AAAA,EAAA,OACpBR,YAAAA,CAAaH,gBAAgB,CAAA,CAACC,UAAAA,KAAgB,MAAA;AAAM;AAGtD,SAASQ,qBACdG,QAAAA,EACS;AACT,EAAA,OAAO,CAAC,CAACA,QAAAA,CAASC,IAAAA,EAAMC,WAAAA;AAC1B;AAEA,eAAsBC,kCACpBC,SAAAA,EACkB;AAClB,EAAA,IAAI,CAACC,mBAAAA,CAAoBD,SAAS,CAAA,EAAG,OAAO,KAAA;AAC5C,EAAA,MAAMJ,QAAAA,GAAW,MAAMI,SAAAA,CAAUE,WAAAA,EAAY;AAC7C,EAAA,OAAOT,qBAAqBG,QAA2B,CAAA;AACzD;;;;"}
1
+ {"version":3,"file":"externalProviderAtom.js","sources":["../../../src/core/state/externalProviderAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport type { EIP1193Provider } from \"viem\";\nimport { widgetConfigAtom } from \"./configAtom\";\n\nexport const externalProviderAtom = atom<EIP1193Provider | null>(null);\n\nexport const externalProviderToUseAtom = atom<EIP1193Provider | null>((get) => {\n const widgetConfig = get(widgetConfigAtom);\n\n if (widgetConfig.widgetMode !== \"dapp\") {\n return null;\n }\n\n return get(externalProviderAtom);\n});\n\nexport const useExternalProvider = () => {\n return useAtomValue(externalProviderToUseAtom);\n};\n\nexport const useIsDappMode = () => {\n return useAtomValue(widgetConfigAtom).widgetMode === \"dapp\";\n};\n"],"names":["externalProviderAtom","atom","externalProviderToUseAtom","get","widgetConfig","widgetConfigAtom","widgetMode","useExternalProvider","useAtomValue","useIsDappMode"],"mappings":";;;;AAKO,MAAMA,oBAAAA,GAAuBC,KAA6B,IAAI;AAE9D,MAAMC,yBAAAA,GAA4BD,KAA8BE,CAAAA,GAAAA,KAAQ;AAC7E,EAAA,MAAMC,YAAAA,GAAeD,IAAIE,gBAAgB,CAAA;AAEzC,EAAA,IAAID,YAAAA,CAAaE,eAAe,MAAA,EAAQ;AACtC,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,OAAOH,IAAIH,oBAAoB,CAAA;AACjC,CAAC;AAEM,MAAMO,sBAAsBA,MAAA;AAAA,EAAA,OAC1BC,aAAaN,yBAAyB,CAAA;AAAC;AAGzC,MAAMO,gBAAgBA,MAAA;AAAA,EAAA,OACpBD,YAAAA,CAAaH,gBAAgB,CAAA,CAACC,UAAAA,KAAgB,MAAA;AAAM;;;;"}
@@ -2,10 +2,12 @@ import { WidgetEventCallbacks } from '../events/types';
2
2
  import { FormInputProps } from './inputs/state/types';
3
3
  import { SupportedChainId } from '../lib/web3/wagmi/types';
4
4
  import { TradeMode } from './state/tradeModeAtom';
5
+ import { ApiConfig } from './state/apiConfigAtom';
5
6
  export type WidgetTheme = "light" | "dark";
6
7
  export type WidgetElements = "activities" | "wallet-management" | "snackbars";
7
8
  export interface WidgetProps {
8
9
  config?: WidgetConfig;
10
+ apiConfig?: ApiConfig;
9
11
  provider?: EIP1193ProviderLax;
10
12
  events?: WidgetEventCallbacks;
11
13
  input?: FormInputProps;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,MAAM,CAAC;AAE3C,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,mBAAmB,GAAG,WAAW,CAAC;AAE9E,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B,KAAK,CAAC,EAAE,cAAc,CAAC;CACxB;AAED,qCAAqC;AACrC,MAAM,WAAW,YAAY;IAC3B,mDAAmD;IACnD,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,wEAAwE;IACxE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,6DAA6D;IAC7D,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iCAAiC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0EAA0E;IAC1E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kEAAkE;IAClE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,qFAAqF;IACrF,UAAU,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;IACnC,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,uGAAuG;IACvG,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B,4GAA4G;IAC5G,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAChC,6GAA6G;IAC7G,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IACzB,2FAA2F;IAC3F,SAAS,CAAC,EAAE,cAAc,EAAE,CAAC;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,OAAO,GAAG;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAGF,UAAU,gBAAgB;IACxB,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC;IACrB,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC;CACvB;AAOD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IAClD,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAAK,IAAI,CAAC;IAC3D,cAAc,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAAK,IAAI,CAAC;CACxE,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,MAAM,CAAC;AAE3C,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,mBAAmB,GAAG,WAAW,CAAC;AAE9E,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B,KAAK,CAAC,EAAE,cAAc,CAAC;CACxB;AAED,qCAAqC;AACrC,MAAM,WAAW,YAAY;IAC3B,mDAAmD;IACnD,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,wEAAwE;IACxE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,6DAA6D;IAC7D,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iCAAiC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0EAA0E;IAC1E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kEAAkE;IAClE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,qFAAqF;IACrF,UAAU,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;IACnC,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,uGAAuG;IACvG,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B,4GAA4G;IAC5G,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAChC,6GAA6G;IAC7G,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IACzB,2FAA2F;IAC3F,SAAS,CAAC,EAAE,cAAc,EAAE,CAAC;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,OAAO,GAAG;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAGF,UAAU,gBAAgB;IACxB,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC;IACrB,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC;CACvB;AAOD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IAClD,EAAE,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAAK,IAAI,CAAC;IAC3D,cAAc,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,KAAK,IAAI,CAAC;CACxE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useOnWalletConnect.d.ts","sourceRoot":"","sources":["../../../src/events/hooks/useOnWalletConnect.ts"],"names":[],"mappings":"AAOA,wBAAgB,oBAAoB,SAoCnC"}
1
+ {"version":3,"file":"useOnWalletConnect.d.ts","sourceRoot":"","sources":["../../../src/events/hooks/useOnWalletConnect.ts"],"names":[],"mappings":"AAKA,wBAAgB,oBAAoB,SAiCnC"}
@@ -1,5 +1,4 @@
1
1
  import { d as distExports } from '../../_virtual/index.js';
2
- import { isExternalConnector } from '../../components/web3/ConnectExternalProvider/utils.js';
3
2
  import { getWalletMetadata } from '../../components/web3/ConnectWallets/walletIcons.js';
4
3
  import { useWidgetEvents } from '../../core/state/widgetEventsAtom.js';
5
4
  import { useAccountEffect } from 'wagmi';
@@ -23,8 +22,7 @@ function useOnWalletConnected() {
23
22
  const walletMetadata = await getWalletMetadata(connector);
24
23
  const provider = await connector.getProvider();
25
24
  const isEmbedded = connector.type === safe.type;
26
- const isExternal = isExternalConnector(connector);
27
- const connectorAction = isReconnected ? "Eager" : isEmbedded ? "Embedded" : isExternal ? "External" : "Click";
25
+ const connectorAction = isReconnected ? "Eager" : isEmbedded ? "Embedded" : "Click";
28
26
  onConnectWallet?.({
29
27
  event: {
30
28
  name: "ConnectWallet:connect",
@@ -1 +1 @@
1
- {"version":3,"file":"useOnWalletConnect.js","sources":["../../../src/events/hooks/useOnWalletConnect.ts"],"sourcesContent":["import { isExternalConnector } from \"@/components/web3/ConnectExternalProvider/utils\";\nimport { getWalletMetadata } from \"@/components/web3/ConnectWallets/walletIcons\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport type { EIP1193Provider } from \"viem\";\nimport { useAccountEffect } from \"wagmi\";\nimport { safe } from \"wagmi/connectors\";\n\nexport function useOnWalletConnected() {\n const { onConnectWallet } = useWidgetEvents();\n\n useAccountEffect({\n onConnect: async ({ address, connector, chainId, isReconnected }) => {\n const walletMetadata = await getWalletMetadata(connector);\n const provider = await connector.getProvider();\n\n const isEmbedded = connector.type === safe.type;\n const isExternal = isExternalConnector(connector);\n\n const connectorAction = isReconnected\n ? \"Eager\"\n : isEmbedded\n ? \"Embedded\"\n : isExternal\n ? \"External\"\n : \"Click\";\n\n onConnectWallet?.({\n event: {\n name: \"ConnectWallet:connect\",\n params: {\n connectorType: connector.type,\n connectorName: connector.name,\n connectorAction,\n provider: provider as EIP1193Provider,\n account: address,\n chainId,\n walletName: walletMetadata.name,\n walletIcon: walletMetadata.icon,\n },\n },\n });\n },\n });\n}\n"],"names":["useOnWalletConnected","$","_c","onConnectWallet","useWidgetEvents","t0","onConnect","t1","address","connector","chainId","isReconnected","walletMetadata","getWalletMetadata","provider","getProvider","isEmbedded","type","safe","isExternal","isExternalConnector","connectorAction","event","name","params","connectorType","connectorName","account","walletName","walletIcon","icon","useAccountEffect"],"mappings":";;;;;;;AAOO,SAAAA,oBAAAA,GAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACL,EAAA,MAAA;AAAA,IAAAC;AAAAA,MAA4BC,eAAAA,EAAgB;AAAE,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAJ,CAAAA,QAAAE,eAAAA,EAAA;AAE7BE,IAAAA,EAAAA,GAAA;AAAA,MAAAC,SAAAA,EACJ,OAAAC,EAAAA,KAAA;AAAO,QAAA,MAAA;AAAA,UAAAC,OAAAA;AAAAA,UAAAC,SAAAA;AAAAA,UAAAC,OAAAA;AAAAA,UAAAC;AAAAA,SAAA,GAAAJ,EAAAA;AAChB,QAAA,MAAAK,cAAAA,GAAuB,MAAMC,iBAAAA,CAAkBJ,SAAS,CAAA;AACxD,QAAA,MAAAK,QAAAA,GAAiB,MAAML,SAAAA,CAASM,WAAAA,EAAa;AAE7C,QAAA,MAAAC,UAAAA,GAAmBP,SAAAA,CAASQ,IAAAA,KAAUC,IAAAA,CAAID,IAAAA;AAC1C,QAAA,MAAAE,UAAAA,GAAmBC,oBAAoBX,SAAS,CAAA;AAEhD,QAAA,MAAAY,kBAAwBV,aAAAA,GAAA,OAAA,GAEpBK,UAAAA,GAAA,UAAA,GAEEG,aAAA,UAAA,GAAA,OAAA;AAINhB,QAAAA,eAAAA,GAAkB;AAAA,UAAAmB,KAAAA,EACT;AAAA,YAAAC,IAAAA,EACC,uBAAA;AAAA,YAAuBC,MAAAA,EACrB;AAAA,cAAAC,eACShB,SAAAA,CAASQ,IAAAA;AAAAA,cAAKS,eACdjB,SAAAA,CAASc,IAAAA;AAAAA,cAAKF,eAAAA;AAAAA,cAAAP,QAAAA;AAAAA,cAEQa,OAAAA,EAC5BnB,OAAAA;AAAAA,cAAOE,OAAAA;AAAAA,cAAAkB,YAEJhB,cAAAA,CAAcW,IAAAA;AAAAA,cAAKM,YACnBjB,cAAAA,CAAckB;AAAAA;AAC5B;AACF,SACD,CAAA;AAAA,MAAC;AAAA,KAEN;AAAC7B,IAAAA,CAAAA,MAAAE,eAAAA;AAAAF,IAAAA,CAAAA,MAAAI,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAJ,EAAA,CAAA,CAAA;AAAA,EAAA;AAhCD8B,EAAAA,gBAAAA,CAAiB1B,EAgChB,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"useOnWalletConnect.js","sources":["../../../src/events/hooks/useOnWalletConnect.ts"],"sourcesContent":["import { getWalletMetadata } from \"@/components/web3/ConnectWallets/walletIcons\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport { useAccountEffect } from \"wagmi\";\nimport { safe } from \"wagmi/connectors\";\n\nexport function useOnWalletConnected() {\n const { onConnectWallet } = useWidgetEvents();\n\n useAccountEffect({\n onConnect: async ({ address, connector, chainId, isReconnected }) => {\n const walletMetadata = await getWalletMetadata(connector);\n const provider = await connector.getProvider();\n\n const isEmbedded = connector.type === safe.type;\n\n const connectorAction = isReconnected\n ? \"Eager\"\n : isEmbedded\n ? \"Embedded\"\n : \"Click\";\n\n onConnectWallet?.({\n event: {\n name: \"ConnectWallet:connect\",\n params: {\n connectorType: connector.type,\n connectorName: connector.name,\n connectorAction,\n provider,\n account: address,\n chainId,\n walletName: walletMetadata.name,\n walletIcon: walletMetadata.icon,\n },\n },\n });\n },\n });\n}\n"],"names":["useOnWalletConnected","$","_c","onConnectWallet","useWidgetEvents","t0","onConnect","t1","address","connector","chainId","isReconnected","walletMetadata","getWalletMetadata","provider","getProvider","isEmbedded","type","safe","connectorAction","event","name","params","connectorType","connectorName","account","walletName","walletIcon","icon","useAccountEffect"],"mappings":";;;;;;AAKO,SAAAA,oBAAAA,GAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACL,EAAA,MAAA;AAAA,IAAAC;AAAAA,MAA4BC,eAAAA,EAAgB;AAAE,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAJ,CAAAA,QAAAE,eAAAA,EAAA;AAE7BE,IAAAA,EAAAA,GAAA;AAAA,MAAAC,SAAAA,EACJ,OAAAC,EAAAA,KAAA;AAAO,QAAA,MAAA;AAAA,UAAAC,OAAAA;AAAAA,UAAAC,SAAAA;AAAAA,UAAAC,OAAAA;AAAAA,UAAAC;AAAAA,SAAA,GAAAJ,EAAAA;AAChB,QAAA,MAAAK,cAAAA,GAAuB,MAAMC,iBAAAA,CAAkBJ,SAAS,CAAA;AACxD,QAAA,MAAAK,QAAAA,GAAiB,MAAML,SAAAA,CAASM,WAAAA,EAAa;AAE7C,QAAA,MAAAC,UAAAA,GAAmBP,SAAAA,CAASQ,IAAAA,KAAUC,IAAAA,CAAID,IAAAA;AAE1C,QAAA,MAAAE,eAAAA,GAAwBR,aAAAA,GAAA,OAAA,GAEpBK,UAAAA,GAAA,UAAA,GAAA,OAAA;AAIJb,QAAAA,eAAAA,GAAkB;AAAA,UAAAiB,KAAAA,EACT;AAAA,YAAAC,IAAAA,EACC,uBAAA;AAAA,YAAuBC,MAAAA,EACrB;AAAA,cAAAC,eACSd,SAAAA,CAASQ,IAAAA;AAAAA,cAAKO,eACdf,SAAAA,CAASY,IAAAA;AAAAA,cAAKF,eAAAA;AAAAA,cAAAL,QAAAA;AAAAA,cAAAW,OAAAA,EAGpBjB,OAAAA;AAAAA,cAAOE,OAAAA;AAAAA,cAAAgB,YAEJd,cAAAA,CAAcS,IAAAA;AAAAA,cAAKM,YACnBf,cAAAA,CAAcgB;AAAAA;AAC5B;AACF,SACD,CAAA;AAAA,MAAC;AAAA,KAEN;AAAC3B,IAAAA,CAAAA,MAAAE,eAAAA;AAAAF,IAAAA,CAAAA,MAAAI,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAJ,EAAA,CAAA,CAAA;AAAA,EAAA;AA7BD4B,EAAAA,gBAAAA,CAAiBxB,EA6BhB,CAAA;AAAC;;;;"}