@velora-dex/widget 0.4.14-dev.2 → 0.4.14-dev.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.
@@ -1,4 +1,4 @@
1
1
  import { TokenInputProps } from '../../../components/widget/TokenInput/types';
2
2
  export type TokenInputAmountProps = Pick<TokenInputProps, "amount" | "onAmountChange" | "token" | "readOnly" | "tokenBalanceUnit">;
3
- export type TokenInputExtraProps = Pick<TokenInputProps, "networkSwitcherProps" | "tokenType" | "onFocus" | "label" | "isLoading" | "warningMessage" | "disabled" | "bottomElement">;
3
+ export type TokenInputExtraProps = Pick<TokenInputProps, "networkSwitcherProps" | "tokenType" | "onFocus" | "label" | "isLoading" | "warningMessage" | "disabled" | "bottomElement" | "readOnly">;
4
4
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/hooks/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAE5E,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACtC,eAAe,EACf,QAAQ,GAAG,gBAAgB,GAAG,OAAO,GAAG,UAAU,GAAG,kBAAkB,CACxE,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACrC,eAAe,EACb,sBAAsB,GACtB,WAAW,GACX,SAAS,GACT,OAAO,GACP,WAAW,GACX,gBAAgB,GAChB,UAAU,GACV,eAAe,CAClB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/hooks/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAE5E,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACtC,eAAe,EACf,QAAQ,GAAG,gBAAgB,GAAG,OAAO,GAAG,UAAU,GAAG,kBAAkB,CACxE,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACrC,eAAe,EACb,sBAAsB,GACtB,WAAW,GACX,SAAS,GACT,OAAO,GACP,WAAW,GACX,gBAAgB,GAChB,UAAU,GACV,eAAe,GACf,UAAU,CACb,CAAC"}
@@ -3,7 +3,7 @@ import { SupportedChainId } from '../../../lib/web3/wagmi/types';
3
3
  export declare const switchTwapTokensAtom: import('jotai').WritableAtom<null, [], Promise<void>> & {
4
4
  init: null;
5
5
  };
6
- export declare const selectTwapTokenFromAtom: import('jotai').WritableAtom<null, [_newTokenFrom: Token], Promise<void>> & {
6
+ export declare const selectTwapTokenFromAtom: import('jotai').WritableAtom<null, [newTokenFrom: Token], Promise<void>> & {
7
7
  init: null;
8
8
  };
9
9
  export declare const selectTwapTokenToAtom: import('jotai').WritableAtom<null, [newTokenTo: Token], Promise<void>> & {
@@ -1 +1 @@
1
- {"version":3,"file":"selectedTokenActionsAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/selectedTokenActionsAtom.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAYlD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAK/D,eAAO,MAAM,oBAAoB;;CAwB/B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;CAqEnC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;CAoGjC,CAAC;AAEF,eAAO,MAAM,8BAA8B,GAAI,SAAS,gBAAgB,SA+DvE,CAAC"}
1
+ {"version":3,"file":"selectedTokenActionsAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/selectedTokenActionsAtom.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAYlD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,eAAO,MAAM,oBAAoB;;CAwB/B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;CAgEnC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;CAoGjC,CAAC;AAEF,eAAO,MAAM,8BAA8B,GAAI,SAAS,gBAAgB,SA+DvE,CAAC"}
@@ -10,9 +10,6 @@ import { allTokensByChainAtom } from '../../../tokens/state/allTokensByChainAtom
10
10
  import { getSelectableDestChains } from '../../state/getSelectableDestChains.js';
11
11
  import { enabledSrcChainsAtom } from '../../state/enabledChainsAtom.js';
12
12
  import { jotaiStore } from '../../store.js';
13
- import { isETH } from '../../../tokens/utils/eth.js';
14
- import { constructWrappedNativeToken } from '../../../tokens/constructor.js';
15
- import { chainConfigMap } from '../../../lib/web3/wagmi/constants.js';
16
13
 
17
14
  const switchTwapTokensAtom = atom(null, async (get, set) => {
18
15
  const tokenTo = get(twapTokenToAtom);
@@ -30,8 +27,7 @@ const switchTwapTokensAtom = atom(null, async (get, set) => {
30
27
  });
31
28
  }
32
29
  });
33
- const selectTwapTokenFromAtom = atom(null, async (get, set, _newTokenFrom) => {
34
- const newTokenFrom = isETH(_newTokenFrom) ? constructWrappedNativeToken(chainConfigMap[_newTokenFrom.network]) : _newTokenFrom;
30
+ const selectTwapTokenFromAtom = atom(null, async (get, set, newTokenFrom) => {
35
31
  let tokenFrom = get(twapTokenFromAtom);
36
32
  let tokenTo = get(twapTokenToAtom);
37
33
  const initTokenFrom = tokenFrom;
@@ -1 +1 @@
1
- {"version":3,"file":"selectedTokenActionsAtom.js","sources":["../../../../src/core/twap/state/selectedTokenActionsAtom.ts"],"sourcesContent":["import { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport { areTokensSame } from \"@/tokens/utils/areTokensSame\";\nimport { atom } from \"jotai\";\nimport { twapTokenFromAtom, twapTokenToAtom } from \"./twapTokenAtoms\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { switchChain } from \"@/lib/web3/wagmi/switchChain\";\nimport { isCrosschainPossible } from \"@/core/across/isCrosschainPossible\";\nimport {\n findFirstTokenFromAcross,\n isTokenFromAcross,\n} from \"@/core/across/utils\";\nimport { allTokensByChainAtom } from \"@/tokens/state/allTokensByChainAtom\";\nimport { getSelectableDestChains } from \"@/core/state/getSelectableDestChains\";\nimport { enabledSrcChainsAtom } from \"@/core/state/enabledChainsAtom\";\nimport { jotaiStore } from \"@/core/store\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { isETH } from \"@/tokens/utils/eth\";\nimport { constructWrappedNativeToken } from \"@/tokens/constructor\";\nimport { chainConfigMap } from \"@/lib/web3/wagmi/constants\";\n\nexport const switchTwapTokensAtom = atom(null, async (get, set) => {\n const tokenTo = get(twapTokenToAtom);\n\n if (!tokenTo) return;\n\n const enabledSrcChains = get(enabledSrcChainsAtom);\n if (!enabledSrcChains.includes(tokenTo.network)) return;\n\n const tokenFrom = get(twapTokenFromAtom);\n const initChainFrom = tokenFrom.network;\n\n // set tokenFrom as is\n set(twapTokenFromAtom, tokenTo);\n // set tokenTo, including running all crosschain logic inside\n set(selectTwapTokenToAtom, tokenFrom);\n\n const currentTokenFrom = get(twapTokenFromAtom);\n\n // switch a token from a different chain?\n if (currentTokenFrom.network !== initChainFrom) {\n switchChain({\n chainId: currentTokenFrom.network,\n });\n }\n});\n\nexport const selectTwapTokenFromAtom = atom(\n null,\n async (get, set, _newTokenFrom: Token) => {\n // @TODO revert this change when ETH cancelAndWithdraw is supported for TWAP\n const newTokenFrom = isETH(_newTokenFrom)\n ? constructWrappedNativeToken(chainConfigMap[_newTokenFrom.network])\n : _newTokenFrom;\n\n let tokenFrom = get(twapTokenFromAtom);\n let tokenTo = get(twapTokenToAtom);\n const initTokenFrom = tokenFrom;\n\n // set the tokenFrom\n set(twapTokenFromAtom, newTokenFrom);\n tokenFrom = newTokenFrom;\n\n // selecting a token from a different chain?\n if (tokenFrom.network !== wagmiConfig.state.chainId) {\n switchChain({\n chainId: tokenFrom.network,\n });\n }\n\n if (!tokenTo) return;\n\n const crosschainPossible = isCrosschainPossible({\n get,\n chainIdFrom: tokenFrom.network,\n chainIdTo: tokenTo.network,\n mode: \"limit\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n mode: \"limit\",\n });\n\n if (!isTokenToFromAcross) {\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n listByChainId: get(allTokensByChainAtom).listByChainId,\n mode: \"limit\",\n });\n\n set(twapTokenToAtom, maybeAcrossToken);\n }\n } else {\n if (tokenFrom.network !== tokenTo.network) {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n tokenFrom.network,\n \"twap\"\n );\n\n tokenTo = areTokensSame(tokenFrom, defaultTokenTo)\n ? defaultTokenFrom\n : defaultTokenTo;\n set(twapTokenToAtom, tokenTo);\n } else {\n if (areTokensSame(tokenFrom, tokenTo)) {\n tokenTo = initTokenFrom;\n set(twapTokenToAtom, tokenTo);\n }\n }\n }\n }\n);\n\nexport const selectTwapTokenToAtom = atom(\n null,\n async (get, set, newTokenTo: Token) => {\n let tokenFrom = get(twapTokenFromAtom);\n\n const selectableDestChains = getSelectableDestChains(get, {\n fromChainId: tokenFrom.network,\n mode: \"limit\",\n });\n if (!selectableDestChains.includes(newTokenTo.network)) return;\n\n let tokenTo = get(twapTokenToAtom);\n const initTokenTo = tokenTo;\n\n set(twapTokenToAtom, newTokenTo);\n tokenTo = newTokenTo;\n\n if (areTokensSame(tokenTo, tokenFrom)) {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n tokenTo.network,\n \"twap\"\n );\n\n const defaultToken = areTokensSame(tokenFrom, defaultTokenFrom)\n ? defaultTokenTo\n : defaultTokenFrom;\n\n const wasCrosschain =\n initTokenTo && tokenFrom.network !== initTokenTo.network;\n\n const newTokenFrom = wasCrosschain\n ? defaultToken\n : (initTokenTo ?? defaultToken);\n\n set(twapTokenFromAtom, newTokenFrom);\n tokenFrom = newTokenFrom;\n }\n\n let needResetTokenFrom = false;\n\n const crosschainPossible = isCrosschainPossible({\n get,\n chainIdFrom: tokenFrom.network,\n chainIdTo: tokenTo.network,\n mode: \"limit\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n mode: \"limit\",\n });\n\n if (!isTokenToFromAcross) {\n needResetTokenFrom = true;\n }\n }\n\n if (tokenFrom.network !== tokenTo.network && !crosschainPossible) {\n needResetTokenFrom = true;\n }\n const enabledSrcChains = get(enabledSrcChainsAtom);\n\n if (needResetTokenFrom) {\n let firstPossibleSrcChain = tokenTo.network;\n if (!enabledSrcChains.includes(tokenTo.network)) {\n for (const srcChain of enabledSrcChains) {\n const crosschainPossible = isCrosschainPossible({\n get,\n chainIdFrom: srcChain,\n chainIdTo: tokenTo.network,\n mode: \"limit\",\n });\n if (crosschainPossible) {\n firstPossibleSrcChain = srcChain;\n break;\n }\n }\n }\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n firstPossibleSrcChain,\n \"twap\"\n );\n const newTokenFrom = areTokensSame(tokenTo, defaultTokenFrom)\n ? defaultTokenTo\n : defaultTokenFrom;\n\n set(twapTokenFromAtom, newTokenFrom);\n tokenFrom = newTokenFrom;\n }\n\n // ended up changing tokenFrom network?\n if (tokenFrom.network !== wagmiConfig.state.chainId) {\n switchChain({\n chainId: tokenFrom.network,\n });\n }\n }\n);\n\nexport const syncTwapTokensAfterChainSwitch = (chainId: SupportedChainId) => {\n const enabledSrcChains = jotaiStore.get(enabledSrcChainsAtom);\n if (!enabledSrcChains.includes(chainId)) return;\n\n let tokenFrom = jotaiStore.get(twapTokenFromAtom);\n\n // chains are the same? do nothing\n if (tokenFrom.network === chainId) return;\n\n // get default tokens for the new chain\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n chainId,\n \"twap\"\n );\n\n // update tokenFrom\n jotaiStore.set(twapTokenFromAtom, defaultTokenFrom);\n tokenFrom = defaultTokenFrom;\n\n let tokenTo = jotaiStore.get(twapTokenToAtom);\n\n // toChainId derives from tokenTo.network, if no tokenTo - do nothing\n if (!tokenTo) return;\n\n const crosschainPossible = isCrosschainPossible({\n get: jotaiStore.get,\n chainIdFrom: chainId,\n chainIdTo: tokenTo.network,\n mode: \"limit\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: chainId,\n toChainId: tokenTo.network,\n mode: \"limit\",\n });\n\n if (!isTokenToFromAcross) {\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: chainId,\n toChainId: tokenTo.network,\n listByChainId: jotaiStore.get(allTokensByChainAtom).listByChainId,\n mode: \"limit\",\n });\n\n tokenTo = maybeAcrossToken;\n jotaiStore.set(twapTokenToAtom, tokenTo);\n }\n } else {\n const selectableDestChains = getSelectableDestChains(jotaiStore.get, {\n fromChainId: tokenFrom.network,\n mode: \"limit\",\n });\n if (selectableDestChains.includes(chainId)) {\n tokenTo = defaultTokenTo;\n jotaiStore.set(twapTokenToAtom, tokenTo);\n } else {\n tokenTo = undefined;\n jotaiStore.set(twapTokenToAtom, tokenTo);\n }\n }\n};\n"],"names":["switchTwapTokensAtom","atom","get","set","tokenTo","twapTokenToAtom","enabledSrcChains","enabledSrcChainsAtom","includes","network","tokenFrom","twapTokenFromAtom","initChainFrom","selectTwapTokenToAtom","currentTokenFrom","switchChain","chainId","selectTwapTokenFromAtom","_newTokenFrom","newTokenFrom","isETH","constructWrappedNativeToken","chainConfigMap","initTokenFrom","wagmiConfig","state","crosschainPossible","isCrosschainPossible","chainIdFrom","chainIdTo","mode","isTokenToFromAcross","isTokenFromAcross","token","fromChainId","toChainId","maybeAcrossToken","findFirstTokenFromAcross","listByChainId","allTokensByChainAtom","defaultTokenFrom","defaultTokenTo","pickDefaultTokenPair","areTokensSame","newTokenTo","selectableDestChains","getSelectableDestChains","initTokenTo","defaultToken","wasCrosschain","needResetTokenFrom","firstPossibleSrcChain","srcChain","syncTwapTokensAfterChainSwitch","jotaiStore","undefined"],"mappings":"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"}
1
+ {"version":3,"file":"selectedTokenActionsAtom.js","sources":["../../../../src/core/twap/state/selectedTokenActionsAtom.ts"],"sourcesContent":["import { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport { areTokensSame } from \"@/tokens/utils/areTokensSame\";\nimport { atom } from \"jotai\";\nimport { twapTokenFromAtom, twapTokenToAtom } from \"./twapTokenAtoms\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { switchChain } from \"@/lib/web3/wagmi/switchChain\";\nimport { isCrosschainPossible } from \"@/core/across/isCrosschainPossible\";\nimport {\n findFirstTokenFromAcross,\n isTokenFromAcross,\n} from \"@/core/across/utils\";\nimport { allTokensByChainAtom } from \"@/tokens/state/allTokensByChainAtom\";\nimport { getSelectableDestChains } from \"@/core/state/getSelectableDestChains\";\nimport { enabledSrcChainsAtom } from \"@/core/state/enabledChainsAtom\";\nimport { jotaiStore } from \"@/core/store\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\n\nexport const switchTwapTokensAtom = atom(null, async (get, set) => {\n const tokenTo = get(twapTokenToAtom);\n\n if (!tokenTo) return;\n\n const enabledSrcChains = get(enabledSrcChainsAtom);\n if (!enabledSrcChains.includes(tokenTo.network)) return;\n\n const tokenFrom = get(twapTokenFromAtom);\n const initChainFrom = tokenFrom.network;\n\n // set tokenFrom as is\n set(twapTokenFromAtom, tokenTo);\n // set tokenTo, including running all crosschain logic inside\n set(selectTwapTokenToAtom, tokenFrom);\n\n const currentTokenFrom = get(twapTokenFromAtom);\n\n // switch a token from a different chain?\n if (currentTokenFrom.network !== initChainFrom) {\n switchChain({\n chainId: currentTokenFrom.network,\n });\n }\n});\n\nexport const selectTwapTokenFromAtom = atom(\n null,\n async (get, set, newTokenFrom: Token) => {\n let tokenFrom = get(twapTokenFromAtom);\n let tokenTo = get(twapTokenToAtom);\n const initTokenFrom = tokenFrom;\n\n // set the tokenFrom\n set(twapTokenFromAtom, newTokenFrom);\n tokenFrom = newTokenFrom;\n\n // selecting a token from a different chain?\n if (tokenFrom.network !== wagmiConfig.state.chainId) {\n switchChain({\n chainId: tokenFrom.network,\n });\n }\n\n if (!tokenTo) return;\n\n const crosschainPossible = isCrosschainPossible({\n get,\n chainIdFrom: tokenFrom.network,\n chainIdTo: tokenTo.network,\n mode: \"limit\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n mode: \"limit\",\n });\n\n if (!isTokenToFromAcross) {\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n listByChainId: get(allTokensByChainAtom).listByChainId,\n mode: \"limit\",\n });\n\n set(twapTokenToAtom, maybeAcrossToken);\n }\n } else {\n if (tokenFrom.network !== tokenTo.network) {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n tokenFrom.network,\n \"twap\"\n );\n\n tokenTo = areTokensSame(tokenFrom, defaultTokenTo)\n ? defaultTokenFrom\n : defaultTokenTo;\n set(twapTokenToAtom, tokenTo);\n } else {\n if (areTokensSame(tokenFrom, tokenTo)) {\n tokenTo = initTokenFrom;\n set(twapTokenToAtom, tokenTo);\n }\n }\n }\n }\n);\n\nexport const selectTwapTokenToAtom = atom(\n null,\n async (get, set, newTokenTo: Token) => {\n let tokenFrom = get(twapTokenFromAtom);\n\n const selectableDestChains = getSelectableDestChains(get, {\n fromChainId: tokenFrom.network,\n mode: \"limit\",\n });\n if (!selectableDestChains.includes(newTokenTo.network)) return;\n\n let tokenTo = get(twapTokenToAtom);\n const initTokenTo = tokenTo;\n\n set(twapTokenToAtom, newTokenTo);\n tokenTo = newTokenTo;\n\n if (areTokensSame(tokenTo, tokenFrom)) {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n tokenTo.network,\n \"twap\"\n );\n\n const defaultToken = areTokensSame(tokenFrom, defaultTokenFrom)\n ? defaultTokenTo\n : defaultTokenFrom;\n\n const wasCrosschain =\n initTokenTo && tokenFrom.network !== initTokenTo.network;\n\n const newTokenFrom = wasCrosschain\n ? defaultToken\n : (initTokenTo ?? defaultToken);\n\n set(twapTokenFromAtom, newTokenFrom);\n tokenFrom = newTokenFrom;\n }\n\n let needResetTokenFrom = false;\n\n const crosschainPossible = isCrosschainPossible({\n get,\n chainIdFrom: tokenFrom.network,\n chainIdTo: tokenTo.network,\n mode: \"limit\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n mode: \"limit\",\n });\n\n if (!isTokenToFromAcross) {\n needResetTokenFrom = true;\n }\n }\n\n if (tokenFrom.network !== tokenTo.network && !crosschainPossible) {\n needResetTokenFrom = true;\n }\n const enabledSrcChains = get(enabledSrcChainsAtom);\n\n if (needResetTokenFrom) {\n let firstPossibleSrcChain = tokenTo.network;\n if (!enabledSrcChains.includes(tokenTo.network)) {\n for (const srcChain of enabledSrcChains) {\n const crosschainPossible = isCrosschainPossible({\n get,\n chainIdFrom: srcChain,\n chainIdTo: tokenTo.network,\n mode: \"limit\",\n });\n if (crosschainPossible) {\n firstPossibleSrcChain = srcChain;\n break;\n }\n }\n }\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n firstPossibleSrcChain,\n \"twap\"\n );\n const newTokenFrom = areTokensSame(tokenTo, defaultTokenFrom)\n ? defaultTokenTo\n : defaultTokenFrom;\n\n set(twapTokenFromAtom, newTokenFrom);\n tokenFrom = newTokenFrom;\n }\n\n // ended up changing tokenFrom network?\n if (tokenFrom.network !== wagmiConfig.state.chainId) {\n switchChain({\n chainId: tokenFrom.network,\n });\n }\n }\n);\n\nexport const syncTwapTokensAfterChainSwitch = (chainId: SupportedChainId) => {\n const enabledSrcChains = jotaiStore.get(enabledSrcChainsAtom);\n if (!enabledSrcChains.includes(chainId)) return;\n\n let tokenFrom = jotaiStore.get(twapTokenFromAtom);\n\n // chains are the same? do nothing\n if (tokenFrom.network === chainId) return;\n\n // get default tokens for the new chain\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n chainId,\n \"twap\"\n );\n\n // update tokenFrom\n jotaiStore.set(twapTokenFromAtom, defaultTokenFrom);\n tokenFrom = defaultTokenFrom;\n\n let tokenTo = jotaiStore.get(twapTokenToAtom);\n\n // toChainId derives from tokenTo.network, if no tokenTo - do nothing\n if (!tokenTo) return;\n\n const crosschainPossible = isCrosschainPossible({\n get: jotaiStore.get,\n chainIdFrom: chainId,\n chainIdTo: tokenTo.network,\n mode: \"limit\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: chainId,\n toChainId: tokenTo.network,\n mode: \"limit\",\n });\n\n if (!isTokenToFromAcross) {\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: chainId,\n toChainId: tokenTo.network,\n listByChainId: jotaiStore.get(allTokensByChainAtom).listByChainId,\n mode: \"limit\",\n });\n\n tokenTo = maybeAcrossToken;\n jotaiStore.set(twapTokenToAtom, tokenTo);\n }\n } else {\n const selectableDestChains = getSelectableDestChains(jotaiStore.get, {\n fromChainId: tokenFrom.network,\n mode: \"limit\",\n });\n if (selectableDestChains.includes(chainId)) {\n tokenTo = defaultTokenTo;\n jotaiStore.set(twapTokenToAtom, tokenTo);\n } else {\n tokenTo = undefined;\n jotaiStore.set(twapTokenToAtom, tokenTo);\n }\n }\n};\n"],"names":["switchTwapTokensAtom","atom","get","set","tokenTo","twapTokenToAtom","enabledSrcChains","enabledSrcChainsAtom","includes","network","tokenFrom","twapTokenFromAtom","initChainFrom","selectTwapTokenToAtom","currentTokenFrom","switchChain","chainId","selectTwapTokenFromAtom","newTokenFrom","initTokenFrom","wagmiConfig","state","crosschainPossible","isCrosschainPossible","chainIdFrom","chainIdTo","mode","isTokenToFromAcross","isTokenFromAcross","token","fromChainId","toChainId","maybeAcrossToken","findFirstTokenFromAcross","listByChainId","allTokensByChainAtom","defaultTokenFrom","defaultTokenTo","pickDefaultTokenPair","areTokensSame","newTokenTo","selectableDestChains","getSelectableDestChains","initTokenTo","defaultToken","wasCrosschain","needResetTokenFrom","firstPossibleSrcChain","srcChain","syncTwapTokensAfterChainSwitch","jotaiStore","undefined"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"twapSideAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/twapSideAtom.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAIrD,eAAO,MAAM,YAAY,qCAUvB,CAAC;AAEH,eAAO,MAAM,WAAW,qBAEvB,CAAC"}
1
+ {"version":3,"file":"twapSideAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/twapSideAtom.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAKrD,eAAO,MAAM,YAAY,qCAiBvB,CAAC;AAEH,eAAO,MAAM,WAAW,qBAEvB,CAAC"}
@@ -2,9 +2,14 @@ import { twapTokenToAtom } from './twapTokenAtoms.js';
2
2
  import { currentTwapInputAtom } from './currentTwapInputAtom.js';
3
3
  import { atom } from 'jotai';
4
4
  import { useAtomValue } from '../../store.js';
5
+ import { isTwapCrossChainAtom } from './isCrosschainAtom.js';
5
6
 
6
7
  const twapSideAtom = atom((get) => {
7
8
  const tokenTo = get(twapTokenToAtom);
9
+ const isCrosschain = get(isTwapCrossChainAtom);
10
+ if (isCrosschain) {
11
+ return "SELL";
12
+ }
8
13
  if (!tokenTo) {
9
14
  return "SELL";
10
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"twapSideAtom.js","sources":["../../../../src/core/twap/state/twapSideAtom.ts"],"sourcesContent":["import { twapTokenToAtom } from \"./twapTokenAtoms\";\nimport { currentTwapInputAtom } from \"./currentTwapInputAtom\";\nimport type { SwapSideUnion } from \"@velora-dex/sdk\";\nimport { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\n\nexport const twapSideAtom = atom<SwapSideUnion>((get) => {\n const tokenTo = get(twapTokenToAtom);\n\n if (!tokenTo) {\n return \"SELL\";\n }\n\n const currentTwapInput = get(currentTwapInputAtom);\n\n return currentTwapInput === \"from\" ? \"SELL\" : \"BUY\";\n});\n\nexport const useTwapSide = () => {\n return useAtomValue(twapSideAtom);\n};\n"],"names":["twapSideAtom","atom","get","tokenTo","twapTokenToAtom","currentTwapInput","currentTwapInputAtom","useTwapSide","useAtomValue"],"mappings":";;;;;AAMO,MAAMA,YAAAA,GAAeC,KAAqBC,CAAAA,GAAAA,KAAQ;AACvD,EAAA,MAAMC,OAAAA,GAAUD,IAAIE,eAAe,CAAA;AAEnC,EAAA,IAAI,CAACD,OAAAA,EAAS;AACZ,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,MAAME,gBAAAA,GAAmBH,IAAII,oBAAoB,CAAA;AAEjD,EAAA,OAAOD,gBAAAA,KAAqB,SAAS,MAAA,GAAS,KAAA;AAChD,CAAC;AAEM,MAAME,cAAcA,MAAA;AAAA,EAAA,OAClBC,aAAaR,YAAY,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"twapSideAtom.js","sources":["../../../../src/core/twap/state/twapSideAtom.ts"],"sourcesContent":["import { twapTokenToAtom } from \"./twapTokenAtoms\";\nimport { currentTwapInputAtom } from \"./currentTwapInputAtom\";\nimport type { SwapSideUnion } from \"@velora-dex/sdk\";\nimport { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport { isTwapCrossChainAtom } from \"./isCrosschainAtom\";\n\nexport const twapSideAtom = atom<SwapSideUnion>((get) => {\n const tokenTo = get(twapTokenToAtom);\n\n const isCrosschain = get(isTwapCrossChainAtom);\n\n if (isCrosschain) {\n // @TODO revert this change when Crosschain BUY is supported for TWAP\n return \"SELL\";\n }\n\n if (!tokenTo) {\n return \"SELL\";\n }\n\n const currentTwapInput = get(currentTwapInputAtom);\n\n return currentTwapInput === \"from\" ? \"SELL\" : \"BUY\";\n});\n\nexport const useTwapSide = () => {\n return useAtomValue(twapSideAtom);\n};\n"],"names":["twapSideAtom","atom","get","tokenTo","twapTokenToAtom","isCrosschain","isTwapCrossChainAtom","currentTwapInput","currentTwapInputAtom","useTwapSide","useAtomValue"],"mappings":";;;;;;AAOO,MAAMA,YAAAA,GAAeC,KAAqBC,CAAAA,GAAAA,KAAQ;AACvD,EAAA,MAAMC,OAAAA,GAAUD,IAAIE,eAAe,CAAA;AAEnC,EAAA,MAAMC,YAAAA,GAAeH,IAAII,oBAAoB,CAAA;AAE7C,EAAA,IAAID,YAAAA,EAAc;AAEhB,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,IAAI,CAACF,OAAAA,EAAS;AACZ,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,MAAMI,gBAAAA,GAAmBL,IAAIM,oBAAoB,CAAA;AAEjD,EAAA,OAAOD,gBAAAA,KAAqB,SAAS,MAAA,GAAS,KAAA;AAChD,CAAC;AAEM,MAAME,cAAcA,MAAA;AAAA,EAAA,OAClBC,aAAaV,YAAY,CAAA;AAAC;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { Token } from '../../../tokens/state/types';
2
- export declare const twapTokenFromAtom: import('jotai').PrimitiveAtom<Token> & {
2
+ export declare const twapTokenFromAtom: import('jotai').WritableAtom<Token, [token: Token], void> & {
3
3
  init: Token;
4
4
  };
5
5
  export declare const twapTokenToAtom: import('jotai').PrimitiveAtom<Token | undefined> & {
@@ -1 +1 @@
1
- {"version":3,"file":"twapTokenAtoms.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/twapTokenAtoms.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AASlD,eAAO,MAAM,iBAAiB;;CAAyB,CAAC;AACxD,eAAO,MAAM,eAAe;;CAAgB,CAAC;AAE7C,eAAO,MAAM,gBAAgB,aAAwC,CAAC;AACtE,eAAO,MAAM,cAAc,yBAAsC,CAAC"}
1
+ {"version":3,"file":"twapTokenAtoms.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/twapTokenAtoms.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAalD,eAAO,MAAM,iBAAiB;;CAc7B,CAAC;AACF,eAAO,MAAM,eAAe;;CAAgB,CAAC;AAE7C,eAAO,MAAM,gBAAgB,aAAwC,CAAC;AACtE,eAAO,MAAM,cAAc,yBAAsC,CAAC"}
@@ -2,9 +2,21 @@ import { wagmiConfig } from '../../../lib/web3/wagmi/config.js';
2
2
  import { pickDefaultTokenPair } from '../../../tokens/defaultTokens.js';
3
3
  import { atom } from 'jotai';
4
4
  import { useAtomValue } from '../../store.js';
5
+ import { isETH } from '../../../tokens/utils/eth.js';
6
+ import { constructWrappedNativeToken } from '../../../tokens/constructor.js';
7
+ import { chainConfigMap } from '../../../lib/web3/wagmi/constants.js';
5
8
 
6
9
  const [defaultTokenFrom] = pickDefaultTokenPair(wagmiConfig.state.chainId, "twap");
7
- const twapTokenFromAtom = atom(defaultTokenFrom);
10
+ const twapTokenFromAtom = atom(
11
+ defaultTokenFrom,
12
+ // with this change it's technically possible to select WETH-WETH, but
13
+ // it's easier to change in one place here than to add extra logic to selectTokenAtoms,
14
+ // since switch tokens if tokenTo=ETH is disabled anyway.
15
+ // @TODO revert this change when ETH cancelAndWithdraw is supported for TWAP
16
+ (_, set, token) => {
17
+ set(twapTokenFromAtom, isETH(token) ? constructWrappedNativeToken(chainConfigMap[token.network]) : token);
18
+ }
19
+ );
8
20
  const twapTokenToAtom = atom();
9
21
  const useTwapTokenFrom = () => {
10
22
  return useAtomValue(twapTokenFromAtom);
@@ -1 +1 @@
1
- {"version":3,"file":"twapTokenAtoms.js","sources":["../../../../src/core/twap/state/twapTokenAtoms.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\n\nconst [defaultTokenFrom] = pickDefaultTokenPair(\n wagmiConfig.state.chainId,\n \"twap\"\n);\n\nexport const twapTokenFromAtom = atom(defaultTokenFrom);\nexport const twapTokenToAtom = atom<Token>();\n\nexport const useTwapTokenFrom = () => useAtomValue(twapTokenFromAtom);\nexport const useTwapTokenTo = () => useAtomValue(twapTokenToAtom);\n"],"names":["defaultTokenFrom","pickDefaultTokenPair","wagmiConfig","state","chainId","twapTokenFromAtom","atom","twapTokenToAtom","useTwapTokenFrom","useAtomValue","useTwapTokenTo"],"mappings":";;;;;AAMA,MAAM,CAACA,gBAAgB,CAAA,GAAIC,qBACzBC,WAAAA,CAAYC,KAAAA,CAAMC,SAClB,MACF,CAAA;AAEO,MAAMC,iBAAAA,GAAoBC,KAAKN,gBAAgB;AAC/C,MAAMO,kBAAkBD,IAAAA;AAExB,MAAME,mBAAmBA,MAAA;AAAA,EAAA,OAAMC,aAAaJ,iBAAiB,CAAA;AAAC;AAC9D,MAAMK,iBAAiBA,MAAA;AAAA,EAAA,OAAMD,aAAaF,eAAe,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"twapTokenAtoms.js","sources":["../../../../src/core/twap/state/twapTokenAtoms.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\n\nimport { isETH } from \"@/tokens/utils/eth\";\nimport { constructWrappedNativeToken } from \"@/tokens/constructor\";\nimport { chainConfigMap } from \"@/lib/web3/wagmi/constants\";\n\nconst [defaultTokenFrom] = pickDefaultTokenPair(\n wagmiConfig.state.chainId,\n \"twap\"\n);\n\nexport const twapTokenFromAtom = atom(\n defaultTokenFrom,\n // with this change it's technically possible to select WETH-WETH, but\n // it's easier to change in one place here than to add extra logic to selectTokenAtoms,\n // since switch tokens if tokenTo=ETH is disabled anyway.\n // @TODO revert this change when ETH cancelAndWithdraw is supported for TWAP\n (_, set, token: Token) => {\n set(\n twapTokenFromAtom,\n isETH(token)\n ? constructWrappedNativeToken(chainConfigMap[token.network])\n : token\n );\n }\n);\nexport const twapTokenToAtom = atom<Token>();\n\nexport const useTwapTokenFrom = () => useAtomValue(twapTokenFromAtom);\nexport const useTwapTokenTo = () => useAtomValue(twapTokenToAtom);\n"],"names":["defaultTokenFrom","pickDefaultTokenPair","wagmiConfig","state","chainId","twapTokenFromAtom","atom","_","set","token","isETH","constructWrappedNativeToken","chainConfigMap","network","twapTokenToAtom","useTwapTokenFrom","useAtomValue","useTwapTokenTo"],"mappings":";;;;;;;;AAUA,MAAM,CAACA,gBAAgB,CAAA,GAAIC,qBACzBC,WAAAA,CAAYC,KAAAA,CAAMC,SAClB,MACF,CAAA;AAEO,MAAMC,iBAAAA,GAAoBC,IAAAA;AAAAA,EAC/BN,gBAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,EAKA,CAACO,CAAAA,EAAGC,GAAAA,EAAKC,KAAAA,KAAiB;AACxBD,IAAAA,GAAAA,CACEH,iBAAAA,EACAK,KAAAA,CAAMD,KAAK,CAAA,GACPE,2BAAAA,CAA4BC,eAAeH,KAAAA,CAAMI,OAAO,CAAC,CAAA,GACzDJ,KACN,CAAA;AAAA,EACF;AACF;AACO,MAAMK,kBAAkBR,IAAAA;AAExB,MAAMS,mBAAmBA,MAAA;AAAA,EAAA,OAAMC,aAAaX,iBAAiB,CAAA;AAAC;AAC9D,MAAMY,iBAAiBA,MAAA;AAAA,EAAA,OAAMD,aAAaF,eAAe,CAAA;AAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTwapTokenToInputProps.d.ts","sourceRoot":"","sources":["../../../src/core/twap/useTwapTokenToInputProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAqB5E,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAClC,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAoGF,eAAO,MAAM,wBAAwB,GACnC,QAAO,wBAA6B,KACnC,eAUF,CAAC"}
1
+ {"version":3,"file":"useTwapTokenToInputProps.d.ts","sourceRoot":"","sources":["../../../src/core/twap/useTwapTokenToInputProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAqB5E,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAClC,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAqGF,eAAO,MAAM,wBAAwB,GACnC,QAAO,wBAA6B,KACnC,eAUF,CAAC"}
@@ -54,7 +54,7 @@ const useTokenToBalanceUnit = () => {
54
54
  return t2;
55
55
  };
56
56
  const useExtraProps = (t0) => {
57
- const $ = distExports.c(25);
57
+ const $ = distExports.c(26);
58
58
  let t1;
59
59
  if ($[0] !== t0) {
60
60
  t1 = t0 === void 0 ? {} : t0;
@@ -101,7 +101,7 @@ const useExtraProps = (t0) => {
101
101
  t3 = $[8];
102
102
  }
103
103
  const networkSwitcherProps = t3;
104
- const setCurrentInput = useSetAtom(currentTwapInputAtom);
104
+ const [currentInput, setCurrentInput] = useAtom(currentTwapInputAtom);
105
105
  const side = useTwapSide();
106
106
  const isSell = side === "SELL";
107
107
  const isLoading = isPriceLoading && isSell;
@@ -151,28 +151,31 @@ const useExtraProps = (t0) => {
151
151
  } else {
152
152
  t9 = $[17];
153
153
  }
154
- let t10;
155
- if ($[18] !== isLoading || $[19] !== networkSwitcherProps || $[20] !== t4 || $[21] !== t7 || $[22] !== t8 || $[23] !== t9) {
156
- t10 = {
154
+ const t10 = isCrosschain && currentInput === "to";
155
+ let t11;
156
+ if ($[18] !== isLoading || $[19] !== networkSwitcherProps || $[20] !== t10 || $[21] !== t4 || $[22] !== t7 || $[23] !== t8 || $[24] !== t9) {
157
+ t11 = {
157
158
  networkSwitcherProps,
158
159
  tokenType: "to",
159
160
  onFocus: t4,
160
161
  label: t7,
161
162
  isLoading,
162
163
  disabled: t8,
163
- bottomElement: t9
164
+ bottomElement: t9,
165
+ readOnly: t10
164
166
  };
165
167
  $[18] = isLoading;
166
168
  $[19] = networkSwitcherProps;
167
- $[20] = t4;
168
- $[21] = t7;
169
- $[22] = t8;
170
- $[23] = t9;
171
- $[24] = t10;
169
+ $[20] = t10;
170
+ $[21] = t4;
171
+ $[22] = t7;
172
+ $[23] = t8;
173
+ $[24] = t9;
174
+ $[25] = t11;
172
175
  } else {
173
- t10 = $[24];
176
+ t11 = $[25];
174
177
  }
175
- return t10;
178
+ return t11;
176
179
  };
177
180
  const useTokenToAmountProps = (t0) => {
178
181
  const $ = distExports.c(12);
@@ -1 +1 @@
1
- {"version":3,"file":"useTwapTokenToInputProps.js","sources":["../../../src/core/twap/useTwapTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\nimport { useAtomValue, useSetAtom, useAtom } from \"@/core/store\";\nimport { twapReceiveInputAmountAtom } from \"./state/twapInputAmountAtom\";\nimport { useLogger } from \"../logger\";\nimport type { OnValueChange } from \"react-number-format\";\nimport type { TokenInputExtraProps } from \"../inputs/hooks/types\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { selectTwapTokenToAtom } from \"./state/selectedTokenActionsAtom\";\nimport { useTwapTokenTo } from \"./state/twapTokenAtoms\";\nimport { useChainId } from \"wagmi\";\nimport { useSelectableDestChains } from \"@/hooks/useSelectableDestChains\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { twapChainToAtom } from \"../state/chainToAtom\";\nimport { currentTwapInputAtom } from \"./state/currentTwapInputAtom\";\nimport { useTwapSide } from \"./state/twapSideAtom\";\nimport { useIsTwapCrossChain } from \"./state/isCrosschainAtom\";\nimport { FetchingQuotes } from \"@/components/widget/FetchingQuotes/FetchingQuotes\";\nimport { formatUnits } from \"viem\";\n\nexport type UseTwapTokenToInputInput = {\n override?: { amountWei?: string };\n isPriceLoading?: boolean;\n};\n\nconst useTokenToBalanceUnit = () => {\n const tokenTo = useTwapTokenTo();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenTo,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useExtraProps = ({\n isPriceLoading,\n}: {\n isPriceLoading?: boolean;\n} = {}): TokenInputExtraProps => {\n const appChainId = useChainId();\n\n const [chainTo, setChainTo] = useAtom(twapChainToAtom);\n\n const { selectableChains } = useSelectableDestChains({\n fromChainId: appChainId,\n mode: \"limit\",\n });\n\n const showNetworkSwitcher = chainTo !== undefined;\n\n const networkSwitcherProps = showNetworkSwitcher\n ? {\n networks: selectableChains,\n selectedNetwork: chainTo,\n allOption: false,\n onSelect: (chainId: SupportedChainId | \"all\") =>\n chainId !== \"all\" && setChainTo(chainId),\n disabled: selectableChains.length <= 1,\n }\n : undefined;\n\n const setCurrentInput = useSetAtom(currentTwapInputAtom);\n\n const side = useTwapSide();\n const isSell = side === \"SELL\";\n\n // SELLing and price is loading = tokenTo input will receive destAmount\n const isLoading = isPriceLoading && isSell;\n\n const isCrosschain = useIsTwapCrossChain();\n const showFetchingQuotes = isCrosschain && isPriceLoading;\n\n return {\n networkSwitcherProps,\n tokenType: \"to\" as const,\n onFocus: () => setCurrentInput(\"to\"),\n label: (\n <>\n <span>Receive (estimated)</span>{\" \"}\n {showNetworkSwitcher && <span className=\"text-contrast-5\">on</span>}\n </>\n ),\n isLoading,\n disabled: selectableChains.length === 0,\n bottomElement: showFetchingQuotes ? <FetchingQuotes /> : undefined,\n };\n};\n\nconst useTokenToAmountProps = ({\n override,\n}: UseTwapTokenToInputInput): Pick<\n TokenInputProps,\n \"amount\" | \"token\" | \"onAmountChange\" | \"onTokenSelect\"\n> => {\n const logger = useLogger(\"Twap::TokenTo::AmountProps\");\n const tokenTo = useTwapTokenTo();\n\n const rawAmount = useAtomValue(twapReceiveInputAmountAtom);\n const setReceiveAmount = useSetAtom(twapReceiveInputAmountAtom);\n\n // SELL mode: override from price\n const amount =\n override?.amountWei && tokenTo\n ? formatUnits(BigInt(override.amountWei), tokenTo.decimals)\n : rawAmount;\n\n const onAmountChange: OnValueChange = (values) => {\n logger.log(\"onAmountChange::values\", values);\n setReceiveAmount(values.value);\n };\n\n const setTokenTo = useSetAtom(selectTwapTokenToAtom);\n\n return {\n amount,\n token: tokenTo,\n onAmountChange,\n onTokenSelect: setTokenTo,\n };\n};\n\nexport const useTwapTokenToInputProps = (\n input: UseTwapTokenToInputInput = {}\n): TokenInputProps => {\n const extraAmountProps = useTokenToAmountProps(input);\n const extraProps = useExtraProps({ isPriceLoading: input.isPriceLoading });\n const tokenBalanceUnit = useTokenToBalanceUnit();\n\n return {\n ...extraProps,\n ...extraAmountProps,\n tokenBalanceUnit,\n };\n};\n"],"names":["useTokenToBalanceUnit","$","_c","tokenTo","useTwapTokenTo","t0","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","t1","token","queryOptions","balanceUnit","useTokenBalance","t2","toDecimalTrimmed","useExtraProps","undefined","isPriceLoading","appChainId","useChainId","chainTo","setChainTo","useAtom","twapChainToAtom","fromChainId","mode","selectableChains","useSelectableDestChains","showNetworkSwitcher","t3","networks","selectedNetwork","allOption","onSelect","chainId","disabled","length","networkSwitcherProps","setCurrentInput","useSetAtom","currentTwapInputAtom","side","useTwapSide","isSell","isLoading","isCrosschain","useIsTwapCrossChain","showFetchingQuotes","t4","t5","t6","t7","t8","t9","t10","tokenType","onFocus","label","bottomElement","useTokenToAmountProps","override","logger","useLogger","rawAmount","useAtomValue","twapReceiveInputAmountAtom","setReceiveAmount","amountWei","formatUnits","BigInt","decimals","amount","values","log","value","onAmountChange","setTokenTo","selectTwapTokenToAtom","onTokenSelect","useTwapTokenToInputProps","input","extraAmountProps","extraProps","tokenBalanceUnit"],"mappings":"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"}
1
+ {"version":3,"file":"useTwapTokenToInputProps.js","sources":["../../../src/core/twap/useTwapTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\nimport { useAtomValue, useSetAtom, useAtom } from \"@/core/store\";\nimport { twapReceiveInputAmountAtom } from \"./state/twapInputAmountAtom\";\nimport { useLogger } from \"../logger\";\nimport type { OnValueChange } from \"react-number-format\";\nimport type { TokenInputExtraProps } from \"../inputs/hooks/types\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { selectTwapTokenToAtom } from \"./state/selectedTokenActionsAtom\";\nimport { useTwapTokenTo } from \"./state/twapTokenAtoms\";\nimport { useChainId } from \"wagmi\";\nimport { useSelectableDestChains } from \"@/hooks/useSelectableDestChains\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { twapChainToAtom } from \"../state/chainToAtom\";\nimport { currentTwapInputAtom } from \"./state/currentTwapInputAtom\";\nimport { useTwapSide } from \"./state/twapSideAtom\";\nimport { useIsTwapCrossChain } from \"./state/isCrosschainAtom\";\nimport { FetchingQuotes } from \"@/components/widget/FetchingQuotes/FetchingQuotes\";\nimport { formatUnits } from \"viem\";\n\nexport type UseTwapTokenToInputInput = {\n override?: { amountWei?: string };\n isPriceLoading?: boolean;\n};\n\nconst useTokenToBalanceUnit = () => {\n const tokenTo = useTwapTokenTo();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenTo,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useExtraProps = ({\n isPriceLoading,\n}: {\n isPriceLoading?: boolean;\n} = {}): TokenInputExtraProps => {\n const appChainId = useChainId();\n\n const [chainTo, setChainTo] = useAtom(twapChainToAtom);\n\n const { selectableChains } = useSelectableDestChains({\n fromChainId: appChainId,\n mode: \"limit\",\n });\n\n const showNetworkSwitcher = chainTo !== undefined;\n\n const networkSwitcherProps = showNetworkSwitcher\n ? {\n networks: selectableChains,\n selectedNetwork: chainTo,\n allOption: false,\n onSelect: (chainId: SupportedChainId | \"all\") =>\n chainId !== \"all\" && setChainTo(chainId),\n disabled: selectableChains.length <= 1,\n }\n : undefined;\n\n const [currentInput, setCurrentInput] = useAtom(currentTwapInputAtom);\n\n const side = useTwapSide();\n const isSell = side === \"SELL\";\n\n // SELLing and price is loading = tokenTo input will receive destAmount\n const isLoading = isPriceLoading && isSell;\n\n const isCrosschain = useIsTwapCrossChain();\n const showFetchingQuotes = isCrosschain && isPriceLoading;\n\n return {\n networkSwitcherProps,\n tokenType: \"to\" as const,\n onFocus: () => setCurrentInput(\"to\"),\n label: (\n <>\n <span>Receive (estimated)</span>{\" \"}\n {showNetworkSwitcher && <span className=\"text-contrast-5\">on</span>}\n </>\n ),\n isLoading,\n disabled: selectableChains.length === 0,\n bottomElement: showFetchingQuotes ? <FetchingQuotes /> : undefined,\n readOnly: isCrosschain && currentInput === \"to\", // @TODO revert this change when Crosschain BUY is supported for TWAP\n };\n};\n\nconst useTokenToAmountProps = ({\n override,\n}: UseTwapTokenToInputInput): Pick<\n TokenInputProps,\n \"amount\" | \"token\" | \"onAmountChange\" | \"onTokenSelect\"\n> => {\n const logger = useLogger(\"Twap::TokenTo::AmountProps\");\n const tokenTo = useTwapTokenTo();\n\n const rawAmount = useAtomValue(twapReceiveInputAmountAtom);\n const setReceiveAmount = useSetAtom(twapReceiveInputAmountAtom);\n\n // SELL mode: override from price\n const amount =\n override?.amountWei && tokenTo\n ? formatUnits(BigInt(override.amountWei), tokenTo.decimals)\n : rawAmount;\n\n const onAmountChange: OnValueChange = (values) => {\n logger.log(\"onAmountChange::values\", values);\n setReceiveAmount(values.value);\n };\n\n const setTokenTo = useSetAtom(selectTwapTokenToAtom);\n\n return {\n amount,\n token: tokenTo,\n onAmountChange,\n onTokenSelect: setTokenTo,\n };\n};\n\nexport const useTwapTokenToInputProps = (\n input: UseTwapTokenToInputInput = {}\n): TokenInputProps => {\n const extraAmountProps = useTokenToAmountProps(input);\n const extraProps = useExtraProps({ isPriceLoading: input.isPriceLoading });\n const tokenBalanceUnit = useTokenToBalanceUnit();\n\n return {\n ...extraProps,\n ...extraAmountProps,\n tokenBalanceUnit,\n };\n};\n"],"names":["useTokenToBalanceUnit","$","_c","tokenTo","useTwapTokenTo","t0","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","t1","token","queryOptions","balanceUnit","useTokenBalance","t2","toDecimalTrimmed","useExtraProps","undefined","isPriceLoading","appChainId","useChainId","chainTo","setChainTo","useAtom","twapChainToAtom","fromChainId","mode","selectableChains","useSelectableDestChains","showNetworkSwitcher","t3","networks","selectedNetwork","allOption","onSelect","chainId","disabled","length","networkSwitcherProps","currentInput","setCurrentInput","currentTwapInputAtom","side","useTwapSide","isSell","isLoading","isCrosschain","useIsTwapCrossChain","showFetchingQuotes","t4","t5","t6","t7","t8","t9","t10","t11","tokenType","onFocus","label","bottomElement","readOnly","useTokenToAmountProps","override","logger","useLogger","rawAmount","useAtomValue","twapReceiveInputAmountAtom","setReceiveAmount","useSetAtom","amountWei","formatUnits","BigInt","decimals","amount","values","log","value","onAmountChange","setTokenTo","selectTwapTokenToAtom","onTokenSelect","useTwapTokenToInputProps","input","extraAmountProps","extraProps","tokenBalanceUnit"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@velora-dex/widget",
3
- "version": "0.4.14-dev.2",
3
+ "version": "0.4.14-dev.3",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "files": [