@lifi/widget 1.17.1 → 1.18.0

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 (210) hide show
  1. package/App.js +6 -86
  2. package/AppDrawer.js +3 -2
  3. package/AppRoutes.d.ts +2 -0
  4. package/AppRoutes.js +85 -0
  5. package/cjs/App.js +5 -85
  6. package/cjs/AppDrawer.js +2 -1
  7. package/cjs/AppRoutes.d.ts +2 -0
  8. package/cjs/AppRoutes.js +89 -0
  9. package/cjs/components/ActiveSwaps/ActiveSwaps.style.d.ts +1 -0
  10. package/cjs/components/AppContainer.d.ts +4 -5
  11. package/cjs/components/AppContainer.js +30 -29
  12. package/cjs/components/Card/Card.d.ts +1 -0
  13. package/cjs/components/Card/Card.js +13 -9
  14. package/cjs/components/ChainSelect/ChainSelect.js +3 -3
  15. package/cjs/components/ChainSelect/ChainSelect.style.d.ts +1 -0
  16. package/cjs/components/ChainSelect/ChainSelect.style.js +2 -2
  17. package/cjs/components/ChainSelect/useChainSelect.js +2 -2
  18. package/cjs/components/GasSufficiencyMessage/GasSufficiencyMessage.js +6 -2
  19. package/cjs/components/Header/Header.d.ts +2 -1
  20. package/cjs/components/Header/Header.js +3 -2
  21. package/cjs/components/Header/Header.style.js +3 -2
  22. package/cjs/components/Header/NavigationHeader.js +4 -1
  23. package/cjs/components/Header/WalletHeader.js +1 -1
  24. package/cjs/components/Header/useHeaderActionStore.js +1 -4
  25. package/cjs/components/PoweredBy/PoweredBy.js +7 -0
  26. package/cjs/components/SendToWallet/SendToWallet.js +6 -10
  27. package/cjs/components/SendToWallet/SendToWalletButton.d.ts +2 -0
  28. package/cjs/components/SendToWallet/SendToWalletButton.js +24 -0
  29. package/cjs/components/SendToWallet/index.d.ts +1 -0
  30. package/cjs/components/SendToWallet/index.js +1 -0
  31. package/cjs/components/SendToWallet/store.d.ts +4 -0
  32. package/cjs/components/SendToWallet/store.js +13 -0
  33. package/cjs/components/SendToWallet/types.d.ts +6 -0
  34. package/cjs/{stores/route → components/SendToWallet}/types.js +0 -0
  35. package/cjs/components/StepActions/StepActions.style.js +1 -1
  36. package/cjs/components/SwapButton/SwapButton.d.ts +1 -1
  37. package/cjs/components/SwapButton/SwapButton.js +4 -4
  38. package/cjs/components/SwapRouteCard/SwapRouteCard.d.ts +2 -1
  39. package/cjs/components/SwapRouteCard/SwapRouteCard.js +19 -15
  40. package/cjs/components/SwapRouteCard/SwapRouteCard.style.d.ts +30 -0
  41. package/cjs/components/SwapRouteCard/SwapRouteCard.style.js +16 -3
  42. package/cjs/components/SwapRouteCard/SwapRouteCardSkeleton.js +2 -12
  43. package/cjs/components/SwapRouteCard/SwapRouteNotFoundCard.d.ts +1 -3
  44. package/cjs/components/SwapRouteCard/SwapRouteNotFoundCard.js +1 -13
  45. package/cjs/components/SwapRouteCard/types.d.ts +6 -2
  46. package/cjs/{pages/MainPage → components/SwapRoutes}/SwapRoutes.d.ts +0 -0
  47. package/cjs/components/SwapRoutes/SwapRoutes.js +51 -0
  48. package/cjs/components/SwapRoutes/SwapRoutes.style.d.ts +43 -0
  49. package/cjs/components/SwapRoutes/SwapRoutes.style.js +47 -0
  50. package/cjs/components/SwapRoutes/SwapRoutesExpanded.d.ts +2 -0
  51. package/cjs/components/SwapRoutes/SwapRoutesExpanded.js +38 -0
  52. package/cjs/components/SwapRoutes/index.d.ts +2 -0
  53. package/cjs/components/SwapRoutes/index.js +18 -0
  54. package/cjs/components/Token/Token.d.ts +2 -1
  55. package/cjs/components/Token/Token.js +10 -6
  56. package/cjs/components/Token/Token.style.js +2 -0
  57. package/cjs/components/TokenList/TokenList.js +4 -1
  58. package/cjs/config/sentry.js +3 -26
  59. package/cjs/config/theme.js +20 -24
  60. package/cjs/config/version.d.ts +1 -1
  61. package/cjs/config/version.js +1 -1
  62. package/cjs/hooks/useChains.js +2 -2
  63. package/cjs/hooks/useGasSufficiency.js +14 -37
  64. package/cjs/hooks/useNavigateBack.js +13 -6
  65. package/cjs/hooks/useRouteExecution.js +5 -8
  66. package/cjs/hooks/useSwapRoutes.js +1 -4
  67. package/cjs/hooks/useTelemetry.js +3 -2
  68. package/cjs/hooks/useTokenBalances.d.ts +1 -1
  69. package/cjs/hooks/useTokenBalances.js +3 -1
  70. package/cjs/hooks/useWidgetEvents.js +2 -5
  71. package/cjs/i18n/index.js +2 -5
  72. package/cjs/pages/ActiveSwapsPage/ActiveSwapsEmpty.js +1 -0
  73. package/cjs/pages/MainPage/MainPage.js +4 -2
  74. package/cjs/pages/MainPage/MainSwapButton.js +4 -4
  75. package/cjs/pages/SelectTokenPage/SelectTokenPage.js +4 -3
  76. package/cjs/pages/SettingsPage/EnabledBridgesSelect.js +1 -4
  77. package/cjs/pages/SettingsPage/EnabledExchangesSelect.js +1 -4
  78. package/cjs/pages/SwapDetailsPage/SwapDetailsPage.js +2 -5
  79. package/cjs/pages/SwapHistoryPage/SwapHistoryEmpty.js +1 -0
  80. package/cjs/pages/SwapHistoryPage/SwapHistoryPage.js +8 -5
  81. package/cjs/pages/SwapPage/SwapPage.js +5 -1
  82. package/cjs/pages/SwapRoutesPage/SwapRoutesPage.js +3 -5
  83. package/cjs/providers/SDKProvider/SDKProvider.js +1 -4
  84. package/cjs/providers/WalletProvider/WalletProvider.js +2 -2
  85. package/cjs/stores/chains/useChainOrder.js +1 -4
  86. package/cjs/stores/chains/useChainOrderStore.js +1 -4
  87. package/cjs/stores/index.d.ts +2 -1
  88. package/cjs/stores/index.js +2 -1
  89. package/cjs/stores/{route → routes}/index.d.ts +2 -1
  90. package/cjs/stores/{route → routes}/index.js +2 -1
  91. package/cjs/stores/{route → routes}/types.d.ts +4 -0
  92. package/cjs/stores/routes/types.js +2 -0
  93. package/cjs/stores/{route → routes}/useExecutingRoutesIds.d.ts +0 -0
  94. package/cjs/stores/{route → routes}/useExecutingRoutesIds.js +3 -6
  95. package/cjs/stores/{route/useRouteStore.d.ts → routes/useRouteExecutionStore.d.ts} +1 -1
  96. package/cjs/stores/{route/useRouteStore.js → routes/useRouteExecutionStore.js} +3 -6
  97. package/cjs/stores/routes/useSelectedRouteStore.d.ts +4 -0
  98. package/cjs/stores/routes/useSelectedRouteStore.js +12 -0
  99. package/cjs/stores/{route → routes}/useSetExecutableRoute.d.ts +0 -0
  100. package/cjs/stores/{route → routes}/useSetExecutableRoute.js +2 -2
  101. package/cjs/stores/{route → routes}/useSwapHistory.d.ts +0 -0
  102. package/cjs/stores/{route → routes}/useSwapHistory.js +3 -6
  103. package/cjs/stores/{route → routes}/utils.d.ts +0 -0
  104. package/cjs/stores/{route → routes}/utils.js +1 -4
  105. package/cjs/stores/settings/useAppearance.js +1 -4
  106. package/cjs/stores/settings/useSettings.js +1 -4
  107. package/cjs/stores/settings/useSettingsStore.js +2 -5
  108. package/cjs/types/widget.d.ts +2 -0
  109. package/cjs/utils/colors.d.ts +1 -1
  110. package/cjs/utils/format.js +1 -4
  111. package/cjs/utils/navigationRoutes.js +12 -12
  112. package/components/ActiveSwaps/ActiveSwaps.style.d.ts +1 -0
  113. package/components/AppContainer.d.ts +4 -5
  114. package/components/AppContainer.js +29 -28
  115. package/components/Card/Card.d.ts +1 -0
  116. package/components/Card/Card.js +13 -9
  117. package/components/ChainSelect/ChainSelect.js +1 -1
  118. package/components/ChainSelect/ChainSelect.style.d.ts +1 -0
  119. package/components/ChainSelect/ChainSelect.style.js +2 -2
  120. package/components/ChainSelect/useChainSelect.js +1 -1
  121. package/components/GasSufficiencyMessage/GasSufficiencyMessage.js +6 -2
  122. package/components/Header/Header.d.ts +2 -1
  123. package/components/Header/Header.js +1 -1
  124. package/components/Header/Header.style.js +4 -3
  125. package/components/Header/NavigationHeader.js +4 -1
  126. package/components/Header/WalletHeader.js +2 -2
  127. package/components/PoweredBy/PoweredBy.js +7 -0
  128. package/components/SendToWallet/SendToWallet.js +8 -11
  129. package/components/SendToWallet/SendToWalletButton.d.ts +2 -0
  130. package/components/SendToWallet/SendToWalletButton.js +20 -0
  131. package/components/SendToWallet/index.d.ts +1 -0
  132. package/components/SendToWallet/index.js +1 -0
  133. package/components/SendToWallet/store.d.ts +4 -0
  134. package/components/SendToWallet/store.js +10 -0
  135. package/components/SendToWallet/types.d.ts +6 -0
  136. package/{stores/route → components/SendToWallet}/types.js +0 -0
  137. package/components/StepActions/StepActions.style.js +1 -1
  138. package/components/SwapButton/SwapButton.d.ts +1 -1
  139. package/components/SwapButton/SwapButton.js +4 -3
  140. package/components/SwapRouteCard/SwapRouteCard.d.ts +2 -1
  141. package/components/SwapRouteCard/SwapRouteCard.js +19 -16
  142. package/components/SwapRouteCard/SwapRouteCard.style.d.ts +30 -0
  143. package/components/SwapRouteCard/SwapRouteCard.style.js +17 -4
  144. package/components/SwapRouteCard/SwapRouteCardSkeleton.js +2 -12
  145. package/components/SwapRouteCard/SwapRouteNotFoundCard.d.ts +1 -3
  146. package/components/SwapRouteCard/SwapRouteNotFoundCard.js +1 -13
  147. package/components/SwapRouteCard/types.d.ts +6 -2
  148. package/{pages/MainPage → components/SwapRoutes}/SwapRoutes.d.ts +0 -0
  149. package/components/SwapRoutes/SwapRoutes.js +47 -0
  150. package/components/SwapRoutes/SwapRoutes.style.d.ts +43 -0
  151. package/components/SwapRoutes/SwapRoutes.style.js +44 -0
  152. package/components/SwapRoutes/SwapRoutesExpanded.d.ts +2 -0
  153. package/components/SwapRoutes/SwapRoutesExpanded.js +34 -0
  154. package/components/SwapRoutes/index.d.ts +2 -0
  155. package/components/SwapRoutes/index.js +2 -0
  156. package/components/Token/Token.d.ts +2 -1
  157. package/components/Token/Token.js +11 -7
  158. package/components/Token/Token.style.js +2 -0
  159. package/components/TokenList/TokenList.js +4 -1
  160. package/config/theme.js +20 -24
  161. package/config/version.d.ts +1 -1
  162. package/config/version.js +1 -1
  163. package/hooks/useChains.js +1 -1
  164. package/hooks/useGasSufficiency.js +15 -35
  165. package/hooks/useNavigateBack.js +13 -6
  166. package/hooks/useRouteExecution.js +5 -5
  167. package/hooks/useTelemetry.js +3 -2
  168. package/hooks/useTokenBalances.d.ts +1 -1
  169. package/hooks/useTokenBalances.js +3 -1
  170. package/package.json +14 -14
  171. package/pages/ActiveSwapsPage/ActiveSwapsEmpty.js +1 -0
  172. package/pages/MainPage/MainPage.js +4 -2
  173. package/pages/MainPage/MainSwapButton.js +4 -3
  174. package/pages/SelectTokenPage/SelectTokenPage.js +4 -3
  175. package/pages/SwapDetailsPage/SwapDetailsPage.js +2 -2
  176. package/pages/SwapHistoryPage/SwapHistoryEmpty.js +1 -0
  177. package/pages/SwapHistoryPage/SwapHistoryPage.js +8 -5
  178. package/pages/SwapPage/SwapPage.js +5 -1
  179. package/pages/SwapRoutesPage/SwapRoutesPage.js +4 -6
  180. package/providers/WalletProvider/WalletProvider.js +1 -1
  181. package/stores/index.d.ts +2 -1
  182. package/stores/index.js +2 -1
  183. package/stores/{route → routes}/index.d.ts +2 -1
  184. package/stores/{route → routes}/index.js +2 -1
  185. package/stores/{route → routes}/types.d.ts +4 -0
  186. package/stores/routes/types.js +1 -0
  187. package/stores/{route → routes}/useExecutingRoutesIds.d.ts +0 -0
  188. package/stores/{route → routes}/useExecutingRoutesIds.js +2 -2
  189. package/stores/{route/useRouteStore.d.ts → routes/useRouteExecutionStore.d.ts} +1 -1
  190. package/stores/{route/useRouteStore.js → routes/useRouteExecutionStore.js} +1 -1
  191. package/stores/routes/useSelectedRouteStore.d.ts +4 -0
  192. package/stores/routes/useSelectedRouteStore.js +9 -0
  193. package/stores/{route → routes}/useSetExecutableRoute.d.ts +0 -0
  194. package/stores/routes/useSetExecutableRoute.js +4 -0
  195. package/stores/{route → routes}/useSwapHistory.d.ts +0 -0
  196. package/stores/{route → routes}/useSwapHistory.js +2 -2
  197. package/stores/{route → routes}/utils.d.ts +0 -0
  198. package/stores/{route → routes}/utils.js +0 -0
  199. package/stores/settings/useSettingsStore.js +1 -1
  200. package/tsconfig.cjs.tsbuildinfo +1 -1
  201. package/types/widget.d.ts +2 -0
  202. package/utils/colors.d.ts +1 -1
  203. package/utils/navigationRoutes.js +12 -12
  204. package/cjs/pages/MainPage/SwapRoutes.js +0 -43
  205. package/cjs/pages/MainPage/SwapRoutes.style.d.ts +0 -11
  206. package/cjs/pages/MainPage/SwapRoutes.style.js +0 -16
  207. package/pages/MainPage/SwapRoutes.js +0 -39
  208. package/pages/MainPage/SwapRoutes.style.d.ts +0 -11
  209. package/pages/MainPage/SwapRoutes.style.js +0 -13
  210. package/stores/route/useSetExecutableRoute.js +0 -4
@@ -1,11 +1,8 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.useWidgetEvents = void 0;
7
- const mitt_1 = __importDefault(require("mitt"));
8
- const zustand_1 = __importDefault(require("zustand"));
4
+ const mitt_1 = require("mitt");
5
+ const zustand_1 = require("zustand");
9
6
  const emitterStore = (0, zustand_1.default)()(() => (0, mitt_1.default)());
10
7
  const useWidgetEvents = () => {
11
8
  return emitterStore();
package/cjs/i18n/index.js CHANGED
@@ -1,12 +1,9 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.configureReactI18next = exports.resources = exports.defaultNS = void 0;
7
- const i18next_1 = __importDefault(require("i18next"));
4
+ const i18next_1 = require("i18next");
8
5
  const react_i18next_1 = require("react-i18next");
9
- const translation_json_1 = __importDefault(require("./en/translation.json"));
6
+ const translation_json_1 = require("./en/translation.json");
10
7
  exports.defaultNS = 'translation';
11
8
  exports.resources = {
12
9
  en: {
@@ -13,6 +13,7 @@ const ActiveSwapsEmpty = () => {
13
13
  flexDirection: 'column',
14
14
  alignItems: 'center',
15
15
  justifyContent: 'center',
16
+ paddingY: 12,
16
17
  } }, { children: [(0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ fontSize: 48 }, { children: (0, jsx_runtime_1.jsx)(icons_material_1.SwapHoriz, { fontSize: "inherit" }) })), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ fontSize: 18, fontWeight: 700 }, { children: t('swap.info.title.emptyActiveSwaps') })), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ fontSize: 14, color: "text.secondary", textAlign: "center", mt: 2 }, { children: t('swap.info.message.emptyActiveSwaps') }))] })));
17
18
  };
18
19
  exports.ActiveSwapsEmpty = ActiveSwapsEmpty;
@@ -4,12 +4,14 @@ exports.MainPage = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const material_1 = require("@mui/material");
6
6
  const ActiveSwaps_1 = require("../../components/ActiveSwaps");
7
+ const GasSufficiencyMessage_1 = require("../../components/GasSufficiencyMessage");
7
8
  const SelectChainAndToken_1 = require("../../components/SelectChainAndToken");
9
+ const SendToWallet_1 = require("../../components/SendToWallet");
8
10
  const SwapInput_1 = require("../../components/SwapInput");
11
+ const SwapRoutes_1 = require("../../components/SwapRoutes");
9
12
  const MainPage_style_1 = require("./MainPage.style");
10
13
  const MainSwapButton_1 = require("./MainSwapButton");
11
- const SwapRoutes_1 = require("./SwapRoutes");
12
14
  const MainPage = () => {
13
- return ((0, jsx_runtime_1.jsxs)(MainPage_style_1.FormContainer, Object.assign({ disableGutters: true }, { children: [(0, jsx_runtime_1.jsx)(ActiveSwaps_1.ActiveSwaps, { mx: 3, mt: 1, mb: 2 }), (0, jsx_runtime_1.jsx)(SelectChainAndToken_1.SelectChainAndToken, { mt: 1, mx: 3, mb: 3 }), (0, jsx_runtime_1.jsx)(material_1.Box, Object.assign({ mx: 3, mb: 3 }, { children: (0, jsx_runtime_1.jsx)(SwapInput_1.SwapInput, { formType: "from" }) })), (0, jsx_runtime_1.jsx)(SwapRoutes_1.SwapRoutes, { mx: 3, mb: 3 }), (0, jsx_runtime_1.jsx)(material_1.Box, Object.assign({ mx: 3, mb: 1 }, { children: (0, jsx_runtime_1.jsx)(MainSwapButton_1.MainSwapButton, {}) }))] })));
15
+ return ((0, jsx_runtime_1.jsxs)(MainPage_style_1.FormContainer, Object.assign({ disableGutters: true }, { children: [(0, jsx_runtime_1.jsx)(ActiveSwaps_1.ActiveSwaps, { mx: 3, mt: 1, mb: 2 }), (0, jsx_runtime_1.jsx)(SelectChainAndToken_1.SelectChainAndToken, { mt: 1, mx: 3, mb: 3 }), (0, jsx_runtime_1.jsx)(material_1.Box, Object.assign({ mx: 3, mb: 3 }, { children: (0, jsx_runtime_1.jsx)(SwapInput_1.SwapInput, { formType: "from" }) })), (0, jsx_runtime_1.jsx)(SwapRoutes_1.SwapRoutes, { mx: 3, mb: 3 }), (0, jsx_runtime_1.jsx)(GasSufficiencyMessage_1.GasSufficiencyMessage, { mx: 3, mb: 3 }), (0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ mx: 3, mb: 1 }, { children: [(0, jsx_runtime_1.jsx)(SendToWallet_1.SendToWallet, { mb: 3 }), (0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ sx: { display: 'flex' } }, { children: [(0, jsx_runtime_1.jsx)(MainSwapButton_1.MainSwapButton, {}), (0, jsx_runtime_1.jsx)(SendToWallet_1.SendToWalletButton, {})] }))] }))] })));
14
16
  };
15
17
  exports.MainPage = MainPage;
@@ -11,13 +11,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.MainSwapButton = void 0;
13
13
  const jsx_runtime_1 = require("react/jsx-runtime");
14
+ const react_1 = require("react");
14
15
  const react_hook_form_1 = require("react-hook-form");
15
16
  const react_router_dom_1 = require("react-router-dom");
16
17
  const SwapButton_1 = require("../../components/SwapButton");
17
18
  const hooks_1 = require("../../hooks");
18
19
  const stores_1 = require("../../stores");
19
20
  const utils_1 = require("../../utils");
20
- const MainSwapButton = () => {
21
+ exports.MainSwapButton = (0, react_1.forwardRef)((_, ref) => {
21
22
  const navigate = (0, react_router_dom_1.useNavigate)();
22
23
  const { isValid, isValidating } = (0, react_hook_form_1.useFormState)();
23
24
  const setExecutableRoute = (0, stores_1.useSetExecutableRoute)();
@@ -31,6 +32,5 @@ const MainSwapButton = () => {
31
32
  });
32
33
  }
33
34
  });
34
- return ((0, jsx_runtime_1.jsx)(SwapButton_1.SwapButton, { onClick: handleClick, currentRoute: currentRoute, disable: isLoading || isFetching || isValidating || !isValid }));
35
- };
36
- exports.MainSwapButton = MainSwapButton;
35
+ return ((0, jsx_runtime_1.jsx)(SwapButton_1.SwapButton, { onClick: handleClick, currentRoute: currentRoute, disable: isLoading || isFetching || isValidating || !isValid, ref: ref }));
36
+ });
@@ -8,16 +8,17 @@ const ChainSelect_1 = require("../../components/ChainSelect");
8
8
  const TokenList_1 = require("../../components/TokenList");
9
9
  const hooks_1 = require("../../hooks");
10
10
  const SearchTokenInput_1 = require("./SearchTokenInput");
11
+ const minTokenListHeight = 330;
11
12
  const SelectTokenPage = ({ formType }) => {
12
13
  (0, hooks_1.useScrollableOverflowHidden)();
13
14
  const { navigateBack } = (0, hooks_1.useNavigateBack)();
14
15
  const headerRef = (0, react_1.useRef)(null);
15
16
  const contentHeight = (0, hooks_1.useContentHeight)();
16
- const [headerHeight, setHeaderHeight] = (0, react_1.useState)(0);
17
+ const [tokenListHeight, setTokenListHeight] = (0, react_1.useState)(0);
17
18
  (0, react_1.useLayoutEffect)(() => {
18
19
  var _a, _b;
19
- setHeaderHeight(contentHeight - ((_b = (_a = headerRef.current) === null || _a === void 0 ? void 0 : _a.offsetHeight) !== null && _b !== void 0 ? _b : 0));
20
+ setTokenListHeight(Math.max(contentHeight - ((_b = (_a = headerRef.current) === null || _a === void 0 ? void 0 : _a.offsetHeight) !== null && _b !== void 0 ? _b : 0), minTokenListHeight));
20
21
  }, [contentHeight]);
21
- return ((0, jsx_runtime_1.jsxs)(material_1.Container, Object.assign({ disableGutters: true }, { children: [(0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ pt: 1, pb: 2, px: 3, ref: headerRef }, { children: [(0, jsx_runtime_1.jsx)(ChainSelect_1.ChainSelect, { formType: formType }), (0, jsx_runtime_1.jsx)(material_1.Box, Object.assign({ mt: 2 }, { children: (0, jsx_runtime_1.jsx)(SearchTokenInput_1.SearchTokenInput, {}) }))] })), (0, jsx_runtime_1.jsx)(TokenList_1.TokenList, { height: headerHeight, onClick: navigateBack, formType: formType })] })));
22
+ return ((0, jsx_runtime_1.jsxs)(material_1.Container, Object.assign({ disableGutters: true }, { children: [(0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ pt: 1, pb: 2, px: 3, ref: headerRef }, { children: [(0, jsx_runtime_1.jsx)(ChainSelect_1.ChainSelect, { formType: formType }), (0, jsx_runtime_1.jsx)(material_1.Box, Object.assign({ mt: 2 }, { children: (0, jsx_runtime_1.jsx)(SearchTokenInput_1.SearchTokenInput, {}) }))] })), (0, jsx_runtime_1.jsx)(TokenList_1.TokenList, { height: tokenListHeight, onClick: navigateBack, formType: formType })] })));
22
23
  };
23
24
  exports.SelectTokenPage = SelectTokenPage;
@@ -1,14 +1,11 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.EnabledBridgesSelect = void 0;
7
4
  const jsx_runtime_1 = require("react/jsx-runtime");
8
5
  const icons_material_1 = require("@mui/icons-material");
9
6
  const material_1 = require("@mui/material");
10
7
  const react_i18next_1 = require("react-i18next");
11
- const shallow_1 = __importDefault(require("zustand/shallow"));
8
+ const shallow_1 = require("zustand/shallow");
12
9
  const Card_1 = require("../../components/Card");
13
10
  const Select_1 = require("../../components/Select");
14
11
  const hooks_1 = require("../../hooks");
@@ -1,14 +1,11 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.EnabledExchangesSelect = void 0;
7
4
  const jsx_runtime_1 = require("react/jsx-runtime");
8
5
  const icons_material_1 = require("@mui/icons-material");
9
6
  const material_1 = require("@mui/material");
10
7
  const react_i18next_1 = require("react-i18next");
11
- const shallow_1 = __importDefault(require("zustand/shallow"));
8
+ const shallow_1 = require("zustand/shallow");
12
9
  const Card_1 = require("../../components/Card");
13
10
  const Select_1 = require("../../components/Select");
14
11
  const hooks_1 = require("../../hooks");
@@ -8,9 +8,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
11
  Object.defineProperty(exports, "__esModule", { value: true });
15
12
  exports.SwapDetailsPage = void 0;
16
13
  const jsx_runtime_1 = require("react/jsx-runtime");
@@ -19,7 +16,7 @@ const material_1 = require("@mui/material");
19
16
  const react_1 = require("react");
20
17
  const react_i18next_1 = require("react-i18next");
21
18
  const react_router_dom_1 = require("react-router-dom");
22
- const shallow_1 = __importDefault(require("zustand/shallow"));
19
+ const shallow_1 = require("zustand/shallow");
23
20
  const Card_1 = require("../../components/Card");
24
21
  const Dialog_1 = require("../../components/Dialog");
25
22
  const Header_1 = require("../../components/Header");
@@ -33,7 +30,7 @@ const SwapDetailsPage = () => {
33
30
  const { t } = (0, react_i18next_1.useTranslation)();
34
31
  const { navigateBack } = (0, hooks_1.useNavigateBack)();
35
32
  const { state } = (0, react_router_dom_1.useLocation)();
36
- const [routeExecution, deleteRoute] = (0, stores_1.useRouteStore)((store) => [store.routes[state === null || state === void 0 ? void 0 : state.routeId], store.deleteRoute], shallow_1.default);
33
+ const [routeExecution, deleteRoute] = (0, stores_1.useRouteExecutionStore)((store) => [store.routes[state === null || state === void 0 ? void 0 : state.routeId], store.deleteRoute], shallow_1.default);
37
34
  const [open, setOpen] = (0, react_1.useState)(false);
38
35
  const toggleDialog = (0, react_1.useCallback)(() => {
39
36
  setOpen((open) => !open);
@@ -13,6 +13,7 @@ const SwapHistoryEmpty = () => {
13
13
  flexDirection: 'column',
14
14
  alignItems: 'center',
15
15
  justifyContent: 'center',
16
+ paddingY: 12,
16
17
  } }, { children: [(0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ fontSize: 48 }, { children: (0, jsx_runtime_1.jsx)(icons_material_1.History, { fontSize: "inherit" }) })), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ fontSize: 18, fontWeight: 700 }, { children: t('swap.info.title.emptySwapHistory') })), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ fontSize: 14, color: "text.secondary", textAlign: "center", mt: 2 }, { children: t('swap.info.message.emptySwapHistory') }))] })));
17
18
  };
18
19
  exports.SwapHistoryEmpty = SwapHistoryEmpty;
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SwapHistoryPage = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
+ /* eslint-disable consistent-return */
5
6
  const icons_material_1 = require("@mui/icons-material");
6
7
  const material_1 = require("@mui/material");
7
8
  const react_1 = require("react");
@@ -10,21 +11,23 @@ const Dialog_1 = require("../../components/Dialog");
10
11
  const Header_1 = require("../../components/Header");
11
12
  const providers_1 = require("../../providers");
12
13
  const stores_1 = require("../../stores");
13
- const route_1 = require("../../stores/route");
14
+ const routes_1 = require("../../stores/routes");
14
15
  const SwapHistoryEmpty_1 = require("./SwapHistoryEmpty");
15
16
  const SwapHistoryItem_1 = require("./SwapHistoryItem");
16
17
  const SwapHistoryPage = () => {
17
18
  const { t } = (0, react_i18next_1.useTranslation)();
18
19
  const { account } = (0, providers_1.useWallet)();
19
- const swaps = (0, route_1.useSwapHistory)(account.address);
20
- const deleteRoutes = (0, stores_1.useRouteStore)((store) => store.deleteRoutes);
20
+ const swaps = (0, routes_1.useSwapHistory)(account.address);
21
+ const deleteRoutes = (0, stores_1.useRouteExecutionStore)((store) => store.deleteRoutes);
21
22
  const [open, setOpen] = (0, react_1.useState)(false);
22
23
  const toggleDialog = (0, react_1.useCallback)(() => {
23
24
  setOpen((open) => !open);
24
25
  }, []);
25
26
  (0, react_1.useEffect)(() => {
26
- return Header_1.useHeaderActionStore.getState().setAction((0, jsx_runtime_1.jsx)(material_1.IconButton, Object.assign({ size: "medium", "aria-label": "settings", edge: "end", onClick: toggleDialog }, { children: (0, jsx_runtime_1.jsx)(icons_material_1.DeleteOutline, {}) })));
27
- }, [toggleDialog]);
27
+ if (swaps.length) {
28
+ return Header_1.useHeaderActionStore.getState().setAction((0, jsx_runtime_1.jsx)(material_1.IconButton, Object.assign({ size: "medium", "aria-label": "settings", edge: "end", onClick: toggleDialog }, { children: (0, jsx_runtime_1.jsx)(icons_material_1.DeleteOutline, {}) })));
29
+ }
30
+ }, [swaps.length, toggleDialog]);
28
31
  if (!swaps.length) {
29
32
  return (0, jsx_runtime_1.jsx)(SwapHistoryEmpty_1.SwapHistoryEmpty, {});
30
33
  }
@@ -11,6 +11,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.SwapPage = void 0;
13
13
  const jsx_runtime_1 = require("react/jsx-runtime");
14
+ const icons_material_1 = require("@mui/icons-material");
14
15
  const material_1 = require("@mui/material");
15
16
  const react_1 = require("react");
16
17
  const react_hook_form_1 = require("react-hook-form");
@@ -57,6 +58,9 @@ const SwapPage = () => {
57
58
  return ((0, jsx_runtime_1.jsxs)(react_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(Step_1.Step, { step: step, fromToken: index === 0
58
59
  ? Object.assign(Object.assign({}, step.action.fromToken), { amount: step.action.fromAmount }) : undefined, toToken: index === steps.length - 1
59
60
  ? Object.assign(Object.assign({}, step.action.toToken), { amount: (_b = (_a = step.execution) === null || _a === void 0 ? void 0 : _a.toAmount) !== null && _b !== void 0 ? _b : step.estimate.toAmount }) : undefined }), steps.length > 1 && index !== steps.length - 1 ? ((0, jsx_runtime_1.jsx)(StepDivider_1.StepDivider, {})) : null] }, step.id));
60
- }), status === 'idle' ? ((0, jsx_runtime_1.jsx)(GasSufficiencyMessage_1.GasSufficiencyMessage, { route: route, mt: 2 })) : null, status === 'idle' || status === 'error' ? ((0, jsx_runtime_1.jsx)(material_1.Box, Object.assign({ mt: 2 }, { children: (0, jsx_runtime_1.jsx)(SwapButton_1.SwapButton, { text: getSwapButtonText(), onClick: handleSwapClick, currentRoute: route, disable: status === 'idle' && (isValidating || !isValid) }) }))) : null, status === 'error' ? ((0, jsx_runtime_1.jsx)(material_1.Box, Object.assign({ mt: 2 }, { children: (0, jsx_runtime_1.jsx)(material_1.Button, Object.assign({ variant: "outlined", onClick: handleRemoveRoute, fullWidth: true }, { children: t('button.removeSwap') })) }))) : null, route && status ? ((0, jsx_runtime_1.jsx)(StatusBottomSheet_1.StatusBottomSheet, { status: status, route: route })) : null] }));
61
+ }), status === 'idle' ? ((0, jsx_runtime_1.jsx)(GasSufficiencyMessage_1.GasSufficiencyMessage, { route: route, mt: 2 })) : null, status === 'idle' || status === 'error' ? ((0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ mt: 2, display: "flex" }, { children: [(0, jsx_runtime_1.jsx)(SwapButton_1.SwapButton, { text: getSwapButtonText(), onClick: handleSwapClick, currentRoute: route, disable: status === 'idle' && (isValidating || !isValid) }), status === 'error' ? ((0, jsx_runtime_1.jsx)(material_1.Button, Object.assign({ onClick: handleRemoveRoute, sx: {
62
+ minWidth: 48,
63
+ marginLeft: 1,
64
+ } }, { children: (0, jsx_runtime_1.jsx)(icons_material_1.Delete, {}) }))) : null] }))) : null, route && status ? ((0, jsx_runtime_1.jsx)(StatusBottomSheet_1.StatusBottomSheet, { status: status, route: route })) : null] }));
61
65
  };
62
66
  exports.SwapPage = SwapPage;
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SwapRoutesPage = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const react_1 = require("react");
6
- const react_router_dom_1 = require("react-router-dom");
7
6
  const Header_1 = require("../../components/Header");
8
7
  const ProgressToNextUpdate_1 = require("../../components/ProgressToNextUpdate");
9
8
  const SwapRouteCard_1 = require("../../components/SwapRouteCard");
@@ -12,8 +11,7 @@ const stores_1 = require("../../stores");
12
11
  const utils_1 = require("../../utils");
13
12
  const SwapRoutesPage_style_1 = require("./SwapRoutesPage.style");
14
13
  const SwapRoutesPage = () => {
15
- const navigate = (0, react_router_dom_1.useNavigate)();
16
- const { pathname } = (0, react_router_dom_1.useLocation)();
14
+ const { navigateBack, navigate } = (0, hooks_1.useNavigateBack)();
17
15
  const { routes: swapRoutes, isLoading, isFetching, dataUpdatedAt, refetchTime, refetch, } = (0, hooks_1.useSwapRoutes)();
18
16
  const setExecutableRoute = (0, stores_1.useSetExecutableRoute)();
19
17
  const handleRouteClick = (route) => {
@@ -24,7 +22,7 @@ const SwapRoutesPage = () => {
24
22
  };
25
23
  (0, react_1.useEffect)(() => {
26
24
  if (!(swapRoutes === null || swapRoutes === void 0 ? void 0 : swapRoutes.length) && !isLoading && !isFetching) {
27
- navigate(pathname.substring(0, pathname.lastIndexOf('/')));
25
+ navigateBack();
28
26
  }
29
27
  // redirect to the home page if no routes are found on page reload
30
28
  // eslint-disable-next-line react-hooks/exhaustive-deps
@@ -35,6 +33,6 @@ const SwapRoutesPage = () => {
35
33
  .setAction((0, jsx_runtime_1.jsx)(ProgressToNextUpdate_1.ProgressToNextUpdate, { updatedAt: dataUpdatedAt || new Date().getTime(), timeToUpdate: refetchTime, isLoading: isFetching, onClick: () => refetch(), sx: { marginRight: -1 }, size: "medium", edge: "end" }));
36
34
  }, [dataUpdatedAt, isFetching, refetch, refetchTime]);
37
35
  const routeNotFound = !(swapRoutes === null || swapRoutes === void 0 ? void 0 : swapRoutes.length) && !isLoading && !isFetching;
38
- return ((0, jsx_runtime_1.jsx)(SwapRoutesPage_style_1.Stack, Object.assign({ direction: "column", spacing: 2, flex: 1 }, { children: routeNotFound ? ((0, jsx_runtime_1.jsx)(SwapRouteCard_1.SwapRouteNotFoundCard, {})) : isLoading || isFetching ? (Array.from({ length: 3 }).map((_, index) => ((0, jsx_runtime_1.jsx)(SwapRouteCard_1.SwapRouteCardSkeleton, {}, index)))) : (swapRoutes === null || swapRoutes === void 0 ? void 0 : swapRoutes.map((route) => ((0, jsx_runtime_1.jsx)(SwapRouteCard_1.SwapRouteCard, { route: route, onClick: () => handleRouteClick(route) }, route.id)))) })));
36
+ return ((0, jsx_runtime_1.jsx)(SwapRoutesPage_style_1.Stack, Object.assign({ direction: "column", spacing: 2, flex: 1 }, { children: routeNotFound ? ((0, jsx_runtime_1.jsx)(SwapRouteCard_1.SwapRouteNotFoundCard, {})) : isLoading || isFetching ? (Array.from({ length: 3 }).map((_, index) => ((0, jsx_runtime_1.jsx)(SwapRouteCard_1.SwapRouteCardSkeleton, {}, index)))) : (swapRoutes === null || swapRoutes === void 0 ? void 0 : swapRoutes.map((route, index) => ((0, jsx_runtime_1.jsx)(SwapRouteCard_1.SwapRouteCard, { route: route, onClick: () => handleRouteClick(route), active: index === 0 }, route.id)))) })));
39
37
  };
40
38
  exports.SwapRoutesPage = SwapRoutesPage;
@@ -1,11 +1,8 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.SDKProvider = exports.useLiFi = void 0;
7
4
  const jsx_runtime_1 = require("react/jsx-runtime");
8
- const sdk_1 = __importDefault(require("@lifi/sdk"));
5
+ const sdk_1 = require("@lifi/sdk");
9
6
  const react_1 = require("react");
10
7
  const WidgetProvider_1 = require("../WidgetProvider");
11
8
  let lifi;
@@ -14,7 +14,7 @@ const jsx_runtime_1 = require("react/jsx-runtime");
14
14
  const wallet_management_1 = require("@lifi/wallet-management");
15
15
  const react_1 = require("react");
16
16
  const react_hook_form_1 = require("react-hook-form");
17
- const chains_1 = require("../../stores/chains");
17
+ const stores_1 = require("../../stores");
18
18
  const SwapFormProvider_1 = require("../SwapFormProvider");
19
19
  const WidgetProvider_1 = require("../WidgetProvider");
20
20
  const stub = () => {
@@ -112,7 +112,7 @@ const WalletProvider = ({ children }) => {
112
112
  const { isDirty: isToChainDirty } = methods.getFieldState(SwapFormProvider_1.SwapFormKey.ToChain, methods.formState);
113
113
  const { isDirty: isFromTokenDirty } = methods.getFieldState(SwapFormProvider_1.SwapFormKey.FromToken, methods.formState);
114
114
  const { isDirty: isToTokenDirty } = methods.getFieldState(SwapFormProvider_1.SwapFormKey.ToToken, methods.formState);
115
- const { chainOrder, setChain } = chains_1.useChainOrderStore.getState();
115
+ const { chainOrder, setChain } = stores_1.useChainOrderStore.getState();
116
116
  // Users can switch chains in the wallet.
117
117
  // If we don't have a chain in the ordered chain list we should add it.
118
118
  setChain(account.chainId);
@@ -1,10 +1,7 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.useChainOrder = void 0;
7
- const shallow_1 = __importDefault(require("zustand/shallow"));
4
+ const shallow_1 = require("zustand/shallow");
8
5
  const useChainOrderStore_1 = require("./useChainOrderStore");
9
6
  const useChainOrder = () => {
10
7
  return (0, useChainOrderStore_1.useChainOrderStore)((state) => [state.chainOrder, state.setChain], shallow_1.default);
@@ -1,11 +1,8 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.useChainOrderStore = exports.maxChainToOrder = void 0;
7
4
  /* eslint-disable no-underscore-dangle */
8
- const zustand_1 = __importDefault(require("zustand"));
5
+ const zustand_1 = require("zustand");
9
6
  const middleware_1 = require("zustand/middleware");
10
7
  const immer_1 = require("zustand/middleware/immer");
11
8
  exports.maxChainToOrder = 9;
@@ -1,2 +1,3 @@
1
- export * from './route';
1
+ export * from './chains';
2
+ export * from './routes';
2
3
  export * from './settings';
@@ -14,5 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./route"), exports);
17
+ __exportStar(require("./chains"), exports);
18
+ __exportStar(require("./routes"), exports);
18
19
  __exportStar(require("./settings"), exports);
@@ -1,6 +1,7 @@
1
1
  export * from './types';
2
2
  export * from './useExecutingRoutesIds';
3
- export * from './useRouteStore';
3
+ export * from './useRouteExecutionStore';
4
+ export * from './useSelectedRouteStore';
4
5
  export * from './useSetExecutableRoute';
5
6
  export * from './useSwapHistory';
6
7
  export * from './utils';
@@ -16,7 +16,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./types"), exports);
18
18
  __exportStar(require("./useExecutingRoutesIds"), exports);
19
- __exportStar(require("./useRouteStore"), exports);
19
+ __exportStar(require("./useRouteExecutionStore"), exports);
20
+ __exportStar(require("./useSelectedRouteStore"), exports);
20
21
  __exportStar(require("./useSetExecutableRoute"), exports);
21
22
  __exportStar(require("./useSwapHistory"), exports);
22
23
  __exportStar(require("./utils"), exports);
@@ -12,3 +12,7 @@ export interface RouteExecution {
12
12
  route: Route;
13
13
  status: RouteExecutionStatus;
14
14
  }
15
+ export interface SelectedRouteStore {
16
+ selectedRoute?: Route;
17
+ setSelectedRoute: (route?: Route) => void;
18
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,13 +1,10 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.useExecutingRoutesIds = void 0;
7
- const shallow_1 = __importDefault(require("zustand/shallow"));
8
- const useRouteStore_1 = require("./useRouteStore");
4
+ const shallow_1 = require("zustand/shallow");
5
+ const useRouteExecutionStore_1 = require("./useRouteExecutionStore");
9
6
  const useExecutingRoutesIds = (address) => {
10
- return (0, useRouteStore_1.useRouteStore)((state) => Object.values(state.routes)
7
+ return (0, useRouteExecutionStore_1.useRouteExecutionStore)((state) => Object.values(state.routes)
11
8
  .filter((item) => item.route.fromAddress === address &&
12
9
  (item.status === 'loading' || item.status === 'error'))
13
10
  .sort((a, b) => {
@@ -1,5 +1,5 @@
1
1
  import type { RouteExecutionStore } from './types';
2
- export declare const useRouteStore: import("zustand").UseBoundStore<Omit<Omit<import("zustand").StoreApi<RouteExecutionStore>, "persist"> & {
2
+ export declare const useRouteExecutionStore: import("zustand").UseBoundStore<Omit<Omit<import("zustand").StoreApi<RouteExecutionStore>, "persist"> & {
3
3
  persist: {
4
4
  setOptions: (options: Partial<import("zustand/middleware").PersistOptions<RouteExecutionStore, {
5
5
  routes: Partial<Record<string, import("./types").RouteExecution>>;
@@ -1,14 +1,11 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.useRouteStore = void 0;
7
- const zustand_1 = __importDefault(require("zustand"));
3
+ exports.useRouteExecutionStore = void 0;
4
+ const zustand_1 = require("zustand");
8
5
  const middleware_1 = require("zustand/middleware");
9
6
  const immer_1 = require("zustand/middleware/immer");
10
7
  const utils_1 = require("./utils");
11
- exports.useRouteStore = (0, zustand_1.default)()((0, middleware_1.persist)((0, immer_1.immer)((set) => ({
8
+ exports.useRouteExecutionStore = (0, zustand_1.default)()((0, middleware_1.persist)((0, immer_1.immer)((set) => ({
12
9
  routes: {},
13
10
  setExecutableRoute: (route) => set((state) => {
14
11
  if (!state.routes[route.id]) {
@@ -0,0 +1,4 @@
1
+ import type { SelectedRouteStore } from './types';
2
+ export declare const useSelectedRouteStore: import("zustand").UseBoundStore<Omit<import("zustand").StoreApi<SelectedRouteStore>, "setState"> & {
3
+ setState(nextStateOrUpdater: SelectedRouteStore | Partial<SelectedRouteStore> | ((state: import("immer/dist/internal").WritableDraft<SelectedRouteStore>) => void), shouldReplace?: boolean | undefined): void;
4
+ }>;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useSelectedRouteStore = void 0;
4
+ const zustand_1 = require("zustand");
5
+ const immer_1 = require("zustand/middleware/immer");
6
+ exports.useSelectedRouteStore = (0, zustand_1.default)()((0, immer_1.immer)((set) => ({
7
+ setSelectedRoute: (route) => {
8
+ set((state) => {
9
+ state.selectedRoute = route;
10
+ });
11
+ },
12
+ })));
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useSetExecutableRoute = void 0;
4
- const useRouteStore_1 = require("./useRouteStore");
4
+ const useRouteExecutionStore_1 = require("./useRouteExecutionStore");
5
5
  const useSetExecutableRoute = () => {
6
- return (0, useRouteStore_1.useRouteStore)((state) => state.setExecutableRoute);
6
+ return (0, useRouteExecutionStore_1.useRouteExecutionStore)((state) => state.setExecutableRoute);
7
7
  };
8
8
  exports.useSetExecutableRoute = useSetExecutableRoute;
File without changes
@@ -1,13 +1,10 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.useSwapHistory = void 0;
7
- const shallow_1 = __importDefault(require("zustand/shallow"));
8
- const useRouteStore_1 = require("./useRouteStore");
4
+ const shallow_1 = require("zustand/shallow");
5
+ const useRouteExecutionStore_1 = require("./useRouteExecutionStore");
9
6
  const useSwapHistory = (address) => {
10
- return (0, useRouteStore_1.useRouteStore)((state) => Object.values(state.routes)
7
+ return (0, useRouteExecutionStore_1.useRouteExecutionStore)((state) => Object.values(state.routes)
11
8
  .filter((item) => (item === null || item === void 0 ? void 0 : item.route.fromAddress) === address && (item === null || item === void 0 ? void 0 : item.status) === 'success')
12
9
  .sort((a, b) => {
13
10
  var _a, _b, _c, _d;
File without changes
@@ -1,10 +1,7 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.getUpdatedProcess = exports.isRouteActive = exports.isRouteFailed = exports.isRouteCompleted = void 0;
7
- const microdiff_1 = __importDefault(require("microdiff"));
4
+ const microdiff_1 = require("microdiff");
8
5
  const isRouteCompleted = (route) => {
9
6
  return route.steps.every((step) => { var _a; return ((_a = step.execution) === null || _a === void 0 ? void 0 : _a.status) === 'DONE'; });
10
7
  };
@@ -1,10 +1,7 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.useAppearance = void 0;
7
- const shallow_1 = __importDefault(require("zustand/shallow"));
4
+ const shallow_1 = require("zustand/shallow");
8
5
  const useSettingsStore_1 = require("./useSettingsStore");
9
6
  const useAppearance = () => {
10
7
  const [appearance, setValue] = (0, useSettingsStore_1.useSettingsStore)((state) => [state.appearance, state.setValue], shallow_1.default);
@@ -1,10 +1,7 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.useSettings = void 0;
7
- const shallow_1 = __importDefault(require("zustand/shallow"));
4
+ const shallow_1 = require("zustand/shallow");
8
5
  const useSettingsStore_1 = require("./useSettingsStore");
9
6
  const useSettings = (keys) => {
10
7
  return (0, useSettingsStore_1.useSettingsStore)((state) => keys.reduce((values, key) => {
@@ -10,19 +10,16 @@ var __rest = (this && this.__rest) || function (s, e) {
10
10
  }
11
11
  return t;
12
12
  };
13
- var __importDefault = (this && this.__importDefault) || function (mod) {
14
- return (mod && mod.__esModule) ? mod : { "default": mod };
15
- };
16
13
  Object.defineProperty(exports, "__esModule", { value: true });
17
14
  exports.useSettingsStore = void 0;
18
15
  /* eslint-disable no-underscore-dangle */
19
- const zustand_1 = __importDefault(require("zustand"));
16
+ const zustand_1 = require("zustand");
20
17
  const middleware_1 = require("zustand/middleware");
21
18
  const immer_1 = require("zustand/middleware/immer");
22
19
  const types_1 = require("./types");
23
20
  exports.useSettingsStore = (0, zustand_1.default)()((0, middleware_1.persist)((0, immer_1.immer)((set) => ({
24
21
  advancedPreferences: false,
25
- showDestinationWallet: false,
22
+ showDestinationWallet: true,
26
23
  appearance: 'auto',
27
24
  gasPrice: 'normal',
28
25
  routePriority: 'RECOMMENDED',
@@ -3,6 +3,7 @@ import type { PaletteMode, PaletteOptions, Shape } from '@mui/material';
3
3
  import type { TypographyOptions } from '@mui/material/styles/createTypography';
4
4
  import type { Signer } from 'ethers';
5
5
  import type { CSSProperties } from 'react';
6
+ export declare type WidgetVariant = 'default' | 'expandable' | 'drawer';
6
7
  export declare type Appearance = PaletteMode | 'auto';
7
8
  export declare type ThemeConfig = {
8
9
  palette?: Pick<PaletteOptions, 'primary' | 'secondary'>;
@@ -34,6 +35,7 @@ export interface WidgetConfig {
34
35
  /** @deprecated Use tokens.featured instead */
35
36
  featuredTokens?: Token[];
36
37
  integrator?: string;
38
+ variant?: WidgetVariant;
37
39
  walletManagement?: WidgetWalletManagement;
38
40
  sdkConfig?: ConfigUpdate;
39
41
  bridges?: {
@@ -1,3 +1,3 @@
1
1
  import type { Theme } from '@mui/material';
2
2
  export declare const getContrastAlphaColor: (theme: Theme, alpha: string | number) => string;
3
- export declare const getContrastTextColor: (theme: Theme, background?: string) => "#000" | "#fff";
3
+ export declare const getContrastTextColor: (theme: Theme, background?: string) => "#fff" | "#000";
@@ -1,10 +1,7 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.formatTokenPrice = exports.formatAmount = exports.formatSlippage = exports.formatTokenAmount = void 0;
7
- const big_js_1 = __importDefault(require("big.js"));
4
+ const big_js_1 = require("big.js");
8
5
  // JavaScript numbers use exponential notation for positive exponents of 21 and above. We need more.
9
6
  big_js_1.default.PE = 42;
10
7
  // JavaScript numbers use exponential notation for negative exponents of -7 and below. We need more.