@0xsquid/ui 0.27.4 → 0.27.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cjs/index.js CHANGED
@@ -17326,6 +17326,18 @@ function ImageIcon({ size = "20", className, }) {
17326
17326
  function FilterTimelineIcon({ size = "20", className, }) {
17327
17327
  return (jsxRuntime.jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 20 20", fill: "none", className: className, children: [jsxRuntime.jsx("path", { d: "M5.00117 3.33325C5.46141 3.33325 5.8345 3.70635 5.8345 4.16659V13.8206L6.91042 12.7442C7.23577 12.4186 7.76341 12.4185 8.08894 12.7438C8.41446 13.0692 8.4146 13.5968 8.08925 13.9224L5.59058 16.4224C5.43434 16.5787 5.22241 16.6665 5.00139 16.6666C4.78038 16.6666 4.56839 16.5789 4.41207 16.4227L1.91074 13.9227C1.58521 13.5973 1.58507 13.0697 1.91042 12.7442C2.23577 12.4186 2.76341 12.4185 3.08894 12.7438L4.16784 13.8222V4.16659C4.16784 3.70635 4.54093 3.33325 5.00117 3.33325Z", fill: "currentColor" }), jsxRuntime.jsx("path", { d: "M9.99984 4.99992C9.5396 4.99992 9.1665 5.37301 9.1665 5.83325C9.1665 6.29349 9.5396 6.66659 9.99984 6.66659H16.6665C17.1267 6.66659 17.4998 6.29349 17.4998 5.83325C17.4998 5.37301 17.1267 4.99992 16.6665 4.99992H9.99984Z", fill: "currentColor" }), jsxRuntime.jsx("path", { d: "M13.3332 13.3333C12.8729 13.3333 12.4998 13.7063 12.4998 14.1666C12.4998 14.6268 12.8729 14.9999 13.3332 14.9999H16.6665C17.1267 14.9999 17.4998 14.6268 17.4998 14.1666C17.4998 13.7063 17.1267 13.3333 16.6665 13.3333H13.3332Z", fill: "currentColor" }), jsxRuntime.jsx("path", { d: "M10.8332 9.99992C10.8332 9.53968 11.2063 9.16659 11.6665 9.16659H16.6665C17.1267 9.16659 17.4998 9.53968 17.4998 9.99992C17.4998 10.4602 17.1267 10.8333 16.6665 10.8333H11.6665C11.2063 10.8333 10.8332 10.4602 10.8332 9.99992Z", fill: "currentColor" })] }));
17328
17328
  }
17329
+ function NewspaperIcon({ className, size = "24", }) {
17330
+ return (jsxRuntime.jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", className: className, children: jsxRuntime.jsx("path", { d: "M12 8C12 6.34315 13.3431 5 15 5H20C21.1046 5 22 5.89543 22 7V17C22 18.1046 21.1046 19 20 19H15.277C14.5966 19 13.9296 19.1642 13.3508 19.5219C12.772 19.8796 12.3043 20.3914 12 21M12 8C12 6.34315 10.6569 5 9 5H4C2.89543 5 2 5.89543 2 7V17C2 18.1046 2.89543 19 4 19H8.723C9.40341 19 10.0704 19.1642 10.6492 19.5219C11.228 19.8796 11.6957 20.3914 12 21M12 8V21", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }));
17331
+ }
17332
+ function AtomIcon({ className, size = "24", }) {
17333
+ return (jsxRuntime.jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", className: className, children: [jsxRuntime.jsx("path", { d: "M19.4739 4.52612C21.0463 6.09858 18.9749 10.7195 14.8472 14.8472C10.7195 18.9749 6.09858 21.0463 4.52612 19.4739C2.95366 17.9014 5.0251 13.2805 9.15281 9.15281C13.2805 5.0251 17.9014 2.95366 19.4739 4.52612Z", stroke: "currentColor", strokeWidth: "2" }), jsxRuntime.jsx("path", { d: "M19.4739 19.4739C17.9014 21.0463 13.2805 18.9749 9.15281 14.8472C5.0251 10.7195 2.95366 6.09858 4.52612 4.52612C6.09858 2.95366 10.7195 5.0251 14.8472 9.15281C18.9749 13.2805 21.0463 17.9014 19.4739 19.4739Z", stroke: "currentColor", strokeWidth: "2" })] }));
17334
+ }
17335
+ function SunriseSmallIcon({ className, size = "20", }) {
17336
+ return (jsxRuntime.jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 20 20", fill: "none", className: className, children: [jsxRuntime.jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M9.99984 1.66663C10.4601 1.66663 10.8332 2.03972 10.8332 2.49996V3.33329C10.8332 3.79353 10.4601 4.16663 9.99984 4.16663C9.5396 4.16663 9.1665 3.79353 9.1665 3.33329V2.49996C9.1665 2.03972 9.5396 1.66663 9.99984 1.66663ZM1.6665 9.99996C1.6665 9.53972 2.0396 9.16663 2.49984 9.16663H3.33317C3.79341 9.16663 4.1665 9.53972 4.1665 9.99996C4.1665 10.4602 3.79341 10.8333 3.33317 10.8333H2.49984C2.0396 10.8333 1.6665 10.4602 1.6665 9.99996ZM15.8332 9.99996C15.8332 9.53972 16.2063 9.16663 16.6665 9.16663H17.4998C17.9601 9.16663 18.3332 9.53972 18.3332 9.99996C18.3332 10.4602 17.9601 10.8333 17.4998 10.8333H16.6665C16.2063 10.8333 15.8332 10.4602 15.8332 9.99996Z", fill: "currentColor" }), jsxRuntime.jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M14.1241 5.87517C13.7987 5.54973 13.7987 5.0221 14.1241 4.69666L14.7134 4.1074C15.0388 3.78197 15.5665 3.78197 15.8919 4.1074C16.2173 4.43284 16.2173 4.96048 15.8919 5.28592L15.3026 5.87517C14.9772 6.20061 14.4496 6.20061 14.1241 5.87517Z", fill: "currentColor" }), jsxRuntime.jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M1.6665 13.3333C1.6665 12.8731 2.0396 12.5 2.49984 12.5H17.4998C17.9601 12.5 18.3332 12.8731 18.3332 13.3333C18.3332 13.7935 17.9601 14.1666 17.4998 14.1666H2.49984C2.0396 14.1666 1.6665 13.7935 1.6665 13.3333ZM4.99984 16.6666C4.99984 16.2064 5.37293 15.8333 5.83317 15.8333H14.1665C14.6267 15.8333 14.9998 16.2064 14.9998 16.6666C14.9998 17.1269 14.6267 17.5 14.1665 17.5H5.83317C5.37293 17.5 4.99984 17.1269 4.99984 16.6666Z", fill: "currentColor" }), jsxRuntime.jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M4.10785 4.1074C4.43328 3.78197 4.96092 3.78197 5.28636 4.1074L5.87561 4.69666C6.20105 5.0221 6.20105 5.54973 5.87561 5.87517C5.55018 6.20061 5.02254 6.20061 4.6971 5.87517L4.10785 5.28591C3.78241 4.96048 3.78241 4.43284 4.10785 4.1074Z", fill: "currentColor" }), jsxRuntime.jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M6.6665 10.8333C6.20627 10.8333 5.83317 10.4602 5.83317 9.99996C5.83317 7.69877 7.69865 5.83329 9.99984 5.83329C12.301 5.83329 14.1665 7.69877 14.1665 9.99996C14.1665 10.4602 13.7934 10.8333 13.3332 10.8333C11.9184 10.8333 8.08126 10.8333 6.6665 10.8333Z", fill: "currentColor" })] }));
17337
+ }
17338
+ function CoinsOutlinedIcon({ className, size = "24", }) {
17339
+ return (jsxRuntime.jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", className: className, children: jsxRuntime.jsx("path", { d: "M9 16C5.68629 16 3 13.3137 3 10C3 6.68629 5.68629 4 9 4C11.4597 4 13.5737 5.48012 14.5 7.59829M21 14C21 17.3137 18.3137 20 15 20C12.3841 20 10.1591 18.3259 9.33811 15.9906C9.11911 15.3677 9 14.6978 9 14C9 10.7998 11.5055 8.1847 14.6619 8.00937C14.7738 8.00315 14.8865 8 15 8C18.3137 8 21 10.6863 21 14Z", stroke: "currentColor", strokeWidth: "2" }) }));
17340
+ }
17329
17341
 
17330
17342
  function FeeButton(_a) {
17331
17343
  var { feeInUsd = "0", chipLabel = "Fee", className, tooltip } = _a, props = __rest$1(_a, ["feeInUsd", "chipLabel", "className", "tooltip"]);
@@ -17783,7 +17795,7 @@ const baseTailwindConfig = {
17783
17795
 
17784
17796
  function StopsButton(_a) {
17785
17797
  var { stopsCount = 0, estimatedTime = "0s", tooltip, providers } = _a, props = __rest$1(_a, ["stopsCount", "estimatedTime", "tooltip", "providers"]);
17786
- return (jsxRuntime.jsx(Tooltip, Object.assign({}, tooltip, { tooltipWidth: "max", containerClassName: "mobile-lg:tw-w-[190px] tw-rounded-squid-m tw-justify-end tw-flex", childrenClassName: "tw-rounded-squid-m tw-w-fit", children: jsxRuntime.jsxs("button", Object.assign({}, props, { onClick: props.disabled ? undefined : props.onClick, className: "tw-group/stops-button tw-flex tw-h-squid-xl tw-flex-1 tw-items-center tw-justify-end tw-rounded-squid-m tw-pr-squid-xs hover:tw-bg-material-light-thin", children: [jsxRuntime.jsx(Providers, { providers: providers }), jsxRuntime.jsxs(CaptionText, { className: "tw-flex tw-max-w-full tw-items-center tw-gap-[3px] tw-truncate tw-text-grey-500 mobile-lg:tw-w-[50px]", children: [jsxRuntime.jsx("span", { children: stopsCount }), jsxRuntime.jsx("span", { className: "tw-hidden mobile-lg:tw-block", children: "stops" })] }), jsxRuntime.jsx(ChevronDownSmallIcon, { className: "tw-text-grey-600" }), jsxRuntime.jsx("div", { className: "tw-pl-squid-xs", children: jsxRuntime.jsx(Chip, { label: estimatedTime }) })] })) })));
17798
+ return (jsxRuntime.jsx(Tooltip, Object.assign({}, tooltip, { tooltipWidth: "max", containerClassName: "mobile-lg:tw-w-[190px] tw-rounded-squid-m tw-justify-end tw-flex", childrenClassName: "tw-rounded-squid-m tw-w-fit", children: jsxRuntime.jsxs("button", Object.assign({}, props, { onClick: props.disabled ? undefined : props.onClick, className: "tw-group/stops-button tw-flex tw-h-squid-xl tw-flex-1 tw-items-center tw-justify-end tw-rounded-squid-m tw-pr-squid-xs hover:tw-bg-material-light-thin", children: [jsxRuntime.jsx(Providers, { providers: providers }), jsxRuntime.jsxs(CaptionText, { className: "tw-flex tw-max-w-full tw-items-center tw-gap-[3px] tw-truncate tw-text-grey-500 mobile-lg:tw-w-[50px]", children: [jsxRuntime.jsx("span", { children: stopsCount }), jsxRuntime.jsx("span", { className: "tw-hidden mobile-lg:tw-block", children: Number(stopsCount) === 1 ? "stop" : "stops" })] }), jsxRuntime.jsx(ChevronDownSmallIcon, { className: "tw-text-grey-600" }), jsxRuntime.jsx("div", { className: "tw-pl-squid-xs", children: jsxRuntime.jsx(Chip, { label: estimatedTime }) })] })) })));
17787
17799
  }
17788
17800
  const MAX_PROVIDERS = 4;
17789
17801
  const spacing = {
@@ -17797,7 +17809,7 @@ function Providers({ providers }) {
17797
17809
  return (jsxRuntime.jsxs("div", { className: "tw-relative tw-flex tw-flex-col tw-items-center tw-justify-center tw-gap-1 tw-self-stretch tw-rounded-squid-m tw-p-squid-xs", children: [jsxRuntime.jsx(Vector, { className: "tw-absolute -tw-top-0 tw-left-1/2 -tw-translate-x-1/2 tw-rounded-bl-full tw-rounded-br-full tw-bg-royal-500 tw-bg-gradient-to-t tw-text-grey-500" }), jsxRuntime.jsx("div", { className: "tw-flex tw-h-squid-m tw-w-[44px] tw-max-w-[44px] tw-items-center tw-justify-center", children: providersToDisplay.map((provider, index, self) => (jsxRuntime.jsx("img", { style: {
17798
17810
  transform: `translate(${spacing[self.length][index]}px)`,
17799
17811
  zIndex: self.length - 1 - index,
17800
- }, src: provider.logoUrl, className: "tw-relative tw-h-squid-m tw-w-squid-m tw-rounded-squid-xxs tw-border-2 tw-border-grey-900 tw-bg-grey-900" }, provider.logoUrl))) }), jsxRuntime.jsx(Vector, { className: "tw-absolute -tw-bottom-0 tw-left-1/2 -tw-translate-x-1/2 tw-rounded-tl-full tw-rounded-tr-full tw-bg-royal-500 tw-bg-gradient-to-b tw-text-grey-500" })] }));
17812
+ }, src: provider.logoUrl, className: "tw-relative tw-h-squid-m tw-w-squid-m tw-rounded-squid-xxs tw-border-2 tw-border-grey-900 tw-bg-grey-900" }, provider.key))) }), jsxRuntime.jsx(Vector, { className: "tw-absolute -tw-bottom-0 tw-left-1/2 -tw-translate-x-1/2 tw-rounded-tl-full tw-rounded-tr-full tw-bg-royal-500 tw-bg-gradient-to-b tw-text-grey-500" })] }));
17801
17813
  }
17802
17814
  const Vector = ({ className }) => (jsxRuntime.jsx("div", { className: cn("tw-h-2.5 tw-w-1 tw-from-current tw-to-grey-900 group-hover/stops-button:tw-to-material-light-blend-grey-900", className) }));
17803
17815
 
@@ -17845,7 +17857,7 @@ function DropdownMenu({ dropdownRef, className, menuRef, isHidden = false, listC
17845
17857
  }
17846
17858
 
17847
17859
  function InfoBox({ title, description, icon }) {
17848
- return (jsxRuntime.jsxs("div", { className: "tw-align-self-stretch tw-flex tw-flex-col tw-items-center tw-gap-squid-xs tw-px-squid-m tw-pb-squid-l tw-pt-squid-xs tw-text-royal-400", children: [icon, jsxRuntime.jsxs("div", { className: "tw-flex tw-flex-col tw-items-center tw-justify-center tw-gap-squid-xs tw-self-stretch tw-pt-squid-xxs tw-text-center", children: [jsxRuntime.jsx(BodyText, { size: "small", className: "!tw-leading-[9px]", children: title }), jsxRuntime.jsx(CaptionText, { className: "tw-text-grey-500", children: description })] })] }));
17860
+ return (jsxRuntime.jsxs("div", { className: "tw-align-self-stretch tw-flex tw-flex-col tw-items-center tw-gap-squid-xs tw-px-squid-m tw-pb-squid-l tw-pt-squid-xs tw-text-royal-400", children: [icon, jsxRuntime.jsxs("div", { className: "tw-flex tw-flex-col tw-items-center tw-justify-center tw-gap-squid-xs tw-self-stretch tw-pt-squid-xxs tw-text-center", children: [jsxRuntime.jsx(BodyText, { size: "small", className: "!tw-leading-[9px]", children: title }), typeof description === "string" ? (jsxRuntime.jsx(CaptionText, { className: "tw-text-grey-500", children: description })) : (description)] })] }));
17849
17861
  }
17850
17862
 
17851
17863
  const modalWidthClassMap = {
@@ -18515,7 +18527,7 @@ function LogoContainer({ children }) {
18515
18527
  return (jsxRuntime.jsx("div", { className: "tw-flex tw-h-[60px] tw-w-[60px] tw-items-center tw-justify-center", children: children }));
18516
18528
  }
18517
18529
 
18518
- function SwapConfiguration({ amount, tokenPrice = 0, isFetching: isFetchingProp = false, chain, token, direction = "from", onAmountChange, balance, criticalPriceImpactPercentage, error, priceImpactPercentage, maxUsdDecimals, isInputInteractive = true, isLoading = false, inputModeButton, balanceButton, assetsButton, walletButton, }) {
18530
+ function SwapConfiguration({ amount, tokenPrice = 0, isFetching: isFetchingProp = false, chain, token, direction = "from", onAmountChange, balance, criticalPriceImpactPercentage, error, priceImpactPercentage, maxUsdDecimals, isInputInteractive = true, isLoading = false, inputModeButton, balanceButton, assetsButton, walletButton, showNumericInputDetails = true, }) {
18519
18531
  var _a, _b, _c;
18520
18532
  const isWalletButtonInteractive = !isLoading && !!(walletButton === null || walletButton === void 0 ? void 0 : walletButton.onClick);
18521
18533
  const WalletButtonTag = isWalletButtonInteractive ? "button" : "div";
@@ -18535,7 +18547,7 @@ function SwapConfiguration({ amount, tokenPrice = 0, isFetching: isFetchingProp
18535
18547
  }, balance: balance, criticalPriceImpactPercentage: criticalPriceImpactPercentage, error: error, formatIfVerySmall: {
18536
18548
  token: "0.001",
18537
18549
  usd: "0.01",
18538
- }, maxUsdDecimals: maxUsdDecimals, isLoading: isFetching, priceImpactPercentage: priceImpactPercentage, showDetails: !!token, direction: direction, forcedAmount: amount, inputModeButton: inputModeButton, balanceButton: balanceButton, isInteractive: isInputInteractive && !isLoading })] }));
18550
+ }, maxUsdDecimals: maxUsdDecimals, isLoading: isFetching, priceImpactPercentage: priceImpactPercentage, showDetails: showNumericInputDetails, direction: direction, forcedAmount: amount, inputModeButton: inputModeButton, balanceButton: balanceButton, isInteractive: isInputInteractive && !isLoading })] }));
18539
18551
  }
18540
18552
 
18541
18553
  function SwapProgressViewHeader({ title, description, }) {
@@ -27124,11 +27136,13 @@ const SearchAddress = ({ type }) => {
27124
27136
  }, icon: jsxRuntime.jsx("img", { src: "/assets/images/blast.jpg", className: "tw-rounded-squid-xxs" }) })) : null, jsxRuntime.jsx(Button$1, { size: "md", variant: "primary", icon: jsxRuntime.jsx(ArrowRightIcon, {}), disabled: type === "recipientEmpty" })] })] }));
27125
27137
  };
27126
27138
 
27127
- function SwapDetailsView({ isLoading, canToggleBoostMode = true, }) {
27139
+ const ROUTING_TOKEN_SUPPORT_ARTICLE = "https://support.squidrouter.com/squid-overview/liquidity-pools/what-is-a-routing-token";
27140
+
27141
+ function SwapDetailsView({ isLoading, canToggleBoostMode = true, displayBoostMode = false, }) {
27128
27142
  const [isModalOpen, setIsModalOpen] = React$1.useState(true);
27129
27143
  return (jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsxs(Modal, { isOpen: isModalOpen, onBackdropClick: () => {
27130
27144
  setIsModalOpen(false);
27131
- }, children: [jsxRuntime.jsxs(ModalContent, { children: [jsxRuntime.jsx(Settings, { canToggleBoostMode: canToggleBoostMode }), jsxRuntime.jsxs("ul", { className: "tw-flex tw-flex-col tw-items-start tw-gap-squid-xxs tw-self-stretch tw-py-squid-xs", children: [jsxRuntime.jsx(PropertyListItem, { isLoading: isLoading, icon: jsxRuntime.jsx(ClockOutlineIcon, {}), label: "Estimated time to complete", detail: "~20s" }), jsxRuntime.jsx(PropertyListItem, { isLoading: isLoading, icon: jsxRuntime.jsx(ArrowBottomTopIcon, {}), label: "Exchange rate", detail: "1 ETH = 4,031.05 USDC" }), jsxRuntime.jsx(PropertyListItem, { isLoading: isLoading, icon: jsxRuntime.jsx(ArrowWallDownIcon, {}), label: "Receive minimum", detail: "750.5 USDC" }), jsxRuntime.jsx(PropertyListItem, { isLoading: isLoading, icon: jsxRuntime.jsx(GasIcon, {}), label: "Cross-chain gas fees", detail: jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(CaptionText, { children: "0.02534 ETH" }), jsxRuntime.jsx(CaptionText, { className: "tw-text-grey-500", children: "$9.92" })] }) }), jsxRuntime.jsx(PropertyListItem, { isLoading: isLoading, icon: jsxRuntime.jsx(ReorderIcon, {}), label: "Expected gas refund", detail: jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(CaptionText, { children: "-0.06336 ETH" }), jsxRuntime.jsx(CaptionText, { className: "tw-text-grey-500", children: "-$2.48" })] }) }), jsxRuntime.jsx(PropertyListItem, { isLoading: isLoading, icon: jsxRuntime.jsx(ReceiptBillIcon, {}), label: "Total fee", detail: jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(CaptionText, { children: "0.0177 ETH" }), jsxRuntime.jsx(CaptionText, { className: "tw-text-grey-500", children: "$7.43" })] }) })] }), jsxRuntime.jsx(InfoBox, { icon: jsxRuntime.jsx(SnapIcon, {}), title: "Squid\u2019s price commitment", description: "In case of market price fluctuating significantly, your transaction may revert and you will receive axlUSDC on the destination chain instead." })] }), jsxRuntime.jsx(Button$1, { size: "lg", variant: "secondary", label: "Close", onClick: () => {
27145
+ }, children: [jsxRuntime.jsxs(ModalContent, { children: [displayBoostMode && (jsxRuntime.jsx(Settings, { canToggleBoostMode: canToggleBoostMode })), jsxRuntime.jsxs("ul", { className: "tw-flex tw-flex-col tw-items-start tw-gap-squid-xxs tw-self-stretch tw-py-squid-m", children: [jsxRuntime.jsx(PropertyListItem, { isLoading: isLoading, icon: jsxRuntime.jsx(ArrowBottomTopIcon, {}), label: "Exchange rate", detail: "1 ETH = 4,031.05 USDC" }), jsxRuntime.jsx(PropertyListItem, { isLoading: isLoading, icon: jsxRuntime.jsx(ArrowWallDownIcon, {}), label: "Receive minimum", detail: "750.5 USDC" }), jsxRuntime.jsx(PropertyListItem, { isLoading: isLoading, icon: jsxRuntime.jsx(GasIcon, {}), label: "Cross-chain gas fees", detail: jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(CaptionText, { children: "0.02534 ETH" }), jsxRuntime.jsx(CaptionText, { className: "tw-text-grey-500", children: "$9.92" })] }) }), jsxRuntime.jsx(PropertyListItem, { isLoading: isLoading, icon: jsxRuntime.jsx(ReorderIcon, {}), label: "Expected gas refund", detail: jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(CaptionText, { children: "-0.06336 ETH" }), jsxRuntime.jsx(CaptionText, { className: "tw-text-grey-500", children: "-$2.48" })] }) }), jsxRuntime.jsx(PropertyListItem, { isLoading: isLoading, icon: jsxRuntime.jsx(ReceiptBillIcon, {}), label: "Total fee", detail: jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(CaptionText, { children: "0.0177 ETH" }), jsxRuntime.jsx(CaptionText, { className: "tw-text-grey-500", children: "$7.43" })] }) })] }), jsxRuntime.jsx("span", { children: jsxRuntime.jsx(InfoBox, { icon: jsxRuntime.jsx(SnapIcon, {}), title: "Squid's price commitment", description: jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsxs(CaptionText, { className: "tw-text-grey-500", children: ["In case of market prices fluctuating significantly, your transaction may revert and you will receive one of Squid's routing tokens on the destination chain instead.", " ", jsxRuntime.jsx("a", { className: "tw-text-grey-300", href: ROUTING_TOKEN_SUPPORT_ARTICLE, target: "_blank", children: "Learn more" })] }) }) }) })] }), jsxRuntime.jsx(Button$1, { size: "lg", variant: "secondary", label: "Close", onClick: () => {
27132
27146
  setIsModalOpen(false);
27133
27147
  } })] }) }));
27134
27148
  }
@@ -62486,6 +62500,7 @@ exports.ArrowWallDownIcon = ArrowWallDownIcon;
62486
62500
  exports.ArrowsSwapIcon = ArrowsSwapIcon;
62487
62501
  exports.AssetsButton = AssetsButton;
62488
62502
  exports.AssetsView = AssetsView;
62503
+ exports.AtomIcon = AtomIcon;
62489
62504
  exports.BackpackIcon = BackpackIcon;
62490
62505
  exports.BadgeImage = BadgeImage;
62491
62506
  exports.BankIcon = BankIcon;
@@ -62531,6 +62546,7 @@ exports.ClockOutlineIcon = ClockOutlineIcon;
62531
62546
  exports.ClockSolidIcon = ClockSolidIcon;
62532
62547
  exports.CoinsAddIcon = CoinsAddIcon;
62533
62548
  exports.CoinsIcon = CoinsIcon;
62549
+ exports.CoinsOutlinedIcon = CoinsOutlinedIcon;
62534
62550
  exports.Collapse = Collapse;
62535
62551
  exports.CollapsibleMenu = CollapsibleMenu;
62536
62552
  exports.CollectionIcon = CollectionIcon;
@@ -62617,6 +62633,7 @@ exports.ModalContent = ModalContent;
62617
62633
  exports.ModalContentDivider = ModalContentDivider;
62618
62634
  exports.MoonIcon = MoonIcon;
62619
62635
  exports.NavigationBar = NavigationBar;
62636
+ exports.NewspaperIcon = NewspaperIcon;
62620
62637
  exports.NotAllowedIcon = NotAllowedIcon;
62621
62638
  exports.NumericInput = NumericInput;
62622
62639
  exports.PathSquareIcon = PathSquareIcon;
@@ -62667,6 +62684,7 @@ exports.StocksIcon = StocksIcon;
62667
62684
  exports.SuccessAction = SuccessAction;
62668
62685
  exports.SunIcon = SunIcon;
62669
62686
  exports.SunriseIcon = SunriseIcon;
62687
+ exports.SunriseSmallIcon = SunriseSmallIcon;
62670
62688
  exports.SwapAction = SwapAction;
62671
62689
  exports.SwapConfiguration = SwapConfiguration;
62672
62690
  exports.SwapDetailsView = SwapDetailsView;
@@ -9,5 +9,6 @@ export interface StopsProps extends React.ComponentProps<"button"> {
9
9
  export declare function StopsButton({ stopsCount, estimatedTime, tooltip, providers, ...props }: StopsProps): import("react/jsx-runtime").JSX.Element;
10
10
  type Provider = {
11
11
  logoUrl: string;
12
+ key: string;
12
13
  };
13
14
  export {};
@@ -38,3 +38,19 @@ export declare function FilterTimelineIcon({ size, className, }: {
38
38
  size?: string;
39
39
  className?: string;
40
40
  }): import("react/jsx-runtime").JSX.Element;
41
+ export declare function NewspaperIcon({ className, size, }: {
42
+ className?: string;
43
+ size?: string;
44
+ }): import("react/jsx-runtime").JSX.Element;
45
+ export declare function AtomIcon({ className, size, }: {
46
+ className?: string;
47
+ size?: string;
48
+ }): import("react/jsx-runtime").JSX.Element;
49
+ export declare function SunriseSmallIcon({ className, size, }: {
50
+ className?: string;
51
+ size?: string;
52
+ }): import("react/jsx-runtime").JSX.Element;
53
+ export declare function CoinsOutlinedIcon({ className, size, }: {
54
+ className?: string;
55
+ size?: string;
56
+ }): import("react/jsx-runtime").JSX.Element;
@@ -1,8 +1,8 @@
1
- /// <reference types="react" />
1
+ import { ReactNode } from "react";
2
2
  interface InfoBoxProps {
3
3
  title: string;
4
- description: string;
5
- icon?: React.ReactNode;
4
+ description: string | ReactNode;
5
+ icon?: ReactNode;
6
6
  }
7
7
  export declare function InfoBox({ title, description, icon }: InfoBoxProps): import("react/jsx-runtime").JSX.Element;
8
8
  export {};
@@ -46,6 +46,7 @@ interface SwapConfigurationProps {
46
46
  emptyAddressLabel?: string;
47
47
  disabled?: boolean;
48
48
  };
49
+ showNumericInputDetails?: boolean;
49
50
  }
50
- export declare function SwapConfiguration({ amount, tokenPrice, isFetching: isFetchingProp, chain, token, direction, onAmountChange, balance, criticalPriceImpactPercentage, error, priceImpactPercentage, maxUsdDecimals, isInputInteractive, isLoading, inputModeButton, balanceButton, assetsButton, walletButton, }: SwapConfigurationProps): import("react/jsx-runtime").JSX.Element;
51
+ export declare function SwapConfiguration({ amount, tokenPrice, isFetching: isFetchingProp, chain, token, direction, onAmountChange, balance, criticalPriceImpactPercentage, error, priceImpactPercentage, maxUsdDecimals, isInputInteractive, isLoading, inputModeButton, balanceButton, assetsButton, walletButton, showNumericInputDetails, }: SwapConfigurationProps): import("react/jsx-runtime").JSX.Element;
51
52
  export {};
@@ -1,4 +1,5 @@
1
- export declare function SwapDetailsView({ isLoading, canToggleBoostMode, }: {
1
+ export declare function SwapDetailsView({ isLoading, canToggleBoostMode, displayBoostMode, }: {
2
2
  isLoading?: boolean;
3
3
  canToggleBoostMode?: boolean;
4
+ displayBoostMode?: boolean;
4
5
  }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export declare const ROUTING_TOKEN_SUPPORT_ARTICLE = "https://support.squidrouter.com/squid-overview/liquidity-pools/what-is-a-routing-token";
2
+ export declare const PRICE_IMPACT_SUPPORT_ARTICLE = "https://support.squidrouter.com/swapping-with-squid/squid-settings-and-features/what-is-price-impact";
@@ -4,6 +4,7 @@ declare const meta: Meta<typeof SwapConfiguration>;
4
4
  export default meta;
5
5
  type Story = StoryObj<typeof meta>;
6
6
  export declare const EmptyVariantPrimary: Story;
7
+ export declare const EmptyVariantWithoutNumericInputDetails: Story;
7
8
  export declare const EmptyVariantAccent: Story;
8
9
  export declare const Loading: Story;
9
10
  export declare const LoadingWithAllProps: Story;
@@ -6,3 +6,4 @@ type Story = StoryObj<typeof meta>;
6
6
  export declare const Default: Story;
7
7
  export declare const Loading: Story;
8
8
  export declare const BoostDisabled: Story;
9
+ export declare const BoostHidden: Story;
package/dist/esm/index.js CHANGED
@@ -17306,6 +17306,18 @@ function ImageIcon({ size = "20", className, }) {
17306
17306
  function FilterTimelineIcon({ size = "20", className, }) {
17307
17307
  return (jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 20 20", fill: "none", className: className, children: [jsx("path", { d: "M5.00117 3.33325C5.46141 3.33325 5.8345 3.70635 5.8345 4.16659V13.8206L6.91042 12.7442C7.23577 12.4186 7.76341 12.4185 8.08894 12.7438C8.41446 13.0692 8.4146 13.5968 8.08925 13.9224L5.59058 16.4224C5.43434 16.5787 5.22241 16.6665 5.00139 16.6666C4.78038 16.6666 4.56839 16.5789 4.41207 16.4227L1.91074 13.9227C1.58521 13.5973 1.58507 13.0697 1.91042 12.7442C2.23577 12.4186 2.76341 12.4185 3.08894 12.7438L4.16784 13.8222V4.16659C4.16784 3.70635 4.54093 3.33325 5.00117 3.33325Z", fill: "currentColor" }), jsx("path", { d: "M9.99984 4.99992C9.5396 4.99992 9.1665 5.37301 9.1665 5.83325C9.1665 6.29349 9.5396 6.66659 9.99984 6.66659H16.6665C17.1267 6.66659 17.4998 6.29349 17.4998 5.83325C17.4998 5.37301 17.1267 4.99992 16.6665 4.99992H9.99984Z", fill: "currentColor" }), jsx("path", { d: "M13.3332 13.3333C12.8729 13.3333 12.4998 13.7063 12.4998 14.1666C12.4998 14.6268 12.8729 14.9999 13.3332 14.9999H16.6665C17.1267 14.9999 17.4998 14.6268 17.4998 14.1666C17.4998 13.7063 17.1267 13.3333 16.6665 13.3333H13.3332Z", fill: "currentColor" }), jsx("path", { d: "M10.8332 9.99992C10.8332 9.53968 11.2063 9.16659 11.6665 9.16659H16.6665C17.1267 9.16659 17.4998 9.53968 17.4998 9.99992C17.4998 10.4602 17.1267 10.8333 16.6665 10.8333H11.6665C11.2063 10.8333 10.8332 10.4602 10.8332 9.99992Z", fill: "currentColor" })] }));
17308
17308
  }
17309
+ function NewspaperIcon({ className, size = "24", }) {
17310
+ return (jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", className: className, children: jsx("path", { d: "M12 8C12 6.34315 13.3431 5 15 5H20C21.1046 5 22 5.89543 22 7V17C22 18.1046 21.1046 19 20 19H15.277C14.5966 19 13.9296 19.1642 13.3508 19.5219C12.772 19.8796 12.3043 20.3914 12 21M12 8C12 6.34315 10.6569 5 9 5H4C2.89543 5 2 5.89543 2 7V17C2 18.1046 2.89543 19 4 19H8.723C9.40341 19 10.0704 19.1642 10.6492 19.5219C11.228 19.8796 11.6957 20.3914 12 21M12 8V21", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }));
17311
+ }
17312
+ function AtomIcon({ className, size = "24", }) {
17313
+ return (jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", className: className, children: [jsx("path", { d: "M19.4739 4.52612C21.0463 6.09858 18.9749 10.7195 14.8472 14.8472C10.7195 18.9749 6.09858 21.0463 4.52612 19.4739C2.95366 17.9014 5.0251 13.2805 9.15281 9.15281C13.2805 5.0251 17.9014 2.95366 19.4739 4.52612Z", stroke: "currentColor", strokeWidth: "2" }), jsx("path", { d: "M19.4739 19.4739C17.9014 21.0463 13.2805 18.9749 9.15281 14.8472C5.0251 10.7195 2.95366 6.09858 4.52612 4.52612C6.09858 2.95366 10.7195 5.0251 14.8472 9.15281C18.9749 13.2805 21.0463 17.9014 19.4739 19.4739Z", stroke: "currentColor", strokeWidth: "2" })] }));
17314
+ }
17315
+ function SunriseSmallIcon({ className, size = "20", }) {
17316
+ return (jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 20 20", fill: "none", className: className, children: [jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M9.99984 1.66663C10.4601 1.66663 10.8332 2.03972 10.8332 2.49996V3.33329C10.8332 3.79353 10.4601 4.16663 9.99984 4.16663C9.5396 4.16663 9.1665 3.79353 9.1665 3.33329V2.49996C9.1665 2.03972 9.5396 1.66663 9.99984 1.66663ZM1.6665 9.99996C1.6665 9.53972 2.0396 9.16663 2.49984 9.16663H3.33317C3.79341 9.16663 4.1665 9.53972 4.1665 9.99996C4.1665 10.4602 3.79341 10.8333 3.33317 10.8333H2.49984C2.0396 10.8333 1.6665 10.4602 1.6665 9.99996ZM15.8332 9.99996C15.8332 9.53972 16.2063 9.16663 16.6665 9.16663H17.4998C17.9601 9.16663 18.3332 9.53972 18.3332 9.99996C18.3332 10.4602 17.9601 10.8333 17.4998 10.8333H16.6665C16.2063 10.8333 15.8332 10.4602 15.8332 9.99996Z", fill: "currentColor" }), jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M14.1241 5.87517C13.7987 5.54973 13.7987 5.0221 14.1241 4.69666L14.7134 4.1074C15.0388 3.78197 15.5665 3.78197 15.8919 4.1074C16.2173 4.43284 16.2173 4.96048 15.8919 5.28592L15.3026 5.87517C14.9772 6.20061 14.4496 6.20061 14.1241 5.87517Z", fill: "currentColor" }), jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M1.6665 13.3333C1.6665 12.8731 2.0396 12.5 2.49984 12.5H17.4998C17.9601 12.5 18.3332 12.8731 18.3332 13.3333C18.3332 13.7935 17.9601 14.1666 17.4998 14.1666H2.49984C2.0396 14.1666 1.6665 13.7935 1.6665 13.3333ZM4.99984 16.6666C4.99984 16.2064 5.37293 15.8333 5.83317 15.8333H14.1665C14.6267 15.8333 14.9998 16.2064 14.9998 16.6666C14.9998 17.1269 14.6267 17.5 14.1665 17.5H5.83317C5.37293 17.5 4.99984 17.1269 4.99984 16.6666Z", fill: "currentColor" }), jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M4.10785 4.1074C4.43328 3.78197 4.96092 3.78197 5.28636 4.1074L5.87561 4.69666C6.20105 5.0221 6.20105 5.54973 5.87561 5.87517C5.55018 6.20061 5.02254 6.20061 4.6971 5.87517L4.10785 5.28591C3.78241 4.96048 3.78241 4.43284 4.10785 4.1074Z", fill: "currentColor" }), jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M6.6665 10.8333C6.20627 10.8333 5.83317 10.4602 5.83317 9.99996C5.83317 7.69877 7.69865 5.83329 9.99984 5.83329C12.301 5.83329 14.1665 7.69877 14.1665 9.99996C14.1665 10.4602 13.7934 10.8333 13.3332 10.8333C11.9184 10.8333 8.08126 10.8333 6.6665 10.8333Z", fill: "currentColor" })] }));
17317
+ }
17318
+ function CoinsOutlinedIcon({ className, size = "24", }) {
17319
+ return (jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", className: className, children: jsx("path", { d: "M9 16C5.68629 16 3 13.3137 3 10C3 6.68629 5.68629 4 9 4C11.4597 4 13.5737 5.48012 14.5 7.59829M21 14C21 17.3137 18.3137 20 15 20C12.3841 20 10.1591 18.3259 9.33811 15.9906C9.11911 15.3677 9 14.6978 9 14C9 10.7998 11.5055 8.1847 14.6619 8.00937C14.7738 8.00315 14.8865 8 15 8C18.3137 8 21 10.6863 21 14Z", stroke: "currentColor", strokeWidth: "2" }) }));
17320
+ }
17309
17321
 
17310
17322
  function FeeButton(_a) {
17311
17323
  var { feeInUsd = "0", chipLabel = "Fee", className, tooltip } = _a, props = __rest$1(_a, ["feeInUsd", "chipLabel", "className", "tooltip"]);
@@ -17763,7 +17775,7 @@ const baseTailwindConfig = {
17763
17775
 
17764
17776
  function StopsButton(_a) {
17765
17777
  var { stopsCount = 0, estimatedTime = "0s", tooltip, providers } = _a, props = __rest$1(_a, ["stopsCount", "estimatedTime", "tooltip", "providers"]);
17766
- return (jsx(Tooltip, Object.assign({}, tooltip, { tooltipWidth: "max", containerClassName: "mobile-lg:tw-w-[190px] tw-rounded-squid-m tw-justify-end tw-flex", childrenClassName: "tw-rounded-squid-m tw-w-fit", children: jsxs("button", Object.assign({}, props, { onClick: props.disabled ? undefined : props.onClick, className: "tw-group/stops-button tw-flex tw-h-squid-xl tw-flex-1 tw-items-center tw-justify-end tw-rounded-squid-m tw-pr-squid-xs hover:tw-bg-material-light-thin", children: [jsx(Providers, { providers: providers }), jsxs(CaptionText, { className: "tw-flex tw-max-w-full tw-items-center tw-gap-[3px] tw-truncate tw-text-grey-500 mobile-lg:tw-w-[50px]", children: [jsx("span", { children: stopsCount }), jsx("span", { className: "tw-hidden mobile-lg:tw-block", children: "stops" })] }), jsx(ChevronDownSmallIcon, { className: "tw-text-grey-600" }), jsx("div", { className: "tw-pl-squid-xs", children: jsx(Chip, { label: estimatedTime }) })] })) })));
17778
+ return (jsx(Tooltip, Object.assign({}, tooltip, { tooltipWidth: "max", containerClassName: "mobile-lg:tw-w-[190px] tw-rounded-squid-m tw-justify-end tw-flex", childrenClassName: "tw-rounded-squid-m tw-w-fit", children: jsxs("button", Object.assign({}, props, { onClick: props.disabled ? undefined : props.onClick, className: "tw-group/stops-button tw-flex tw-h-squid-xl tw-flex-1 tw-items-center tw-justify-end tw-rounded-squid-m tw-pr-squid-xs hover:tw-bg-material-light-thin", children: [jsx(Providers, { providers: providers }), jsxs(CaptionText, { className: "tw-flex tw-max-w-full tw-items-center tw-gap-[3px] tw-truncate tw-text-grey-500 mobile-lg:tw-w-[50px]", children: [jsx("span", { children: stopsCount }), jsx("span", { className: "tw-hidden mobile-lg:tw-block", children: Number(stopsCount) === 1 ? "stop" : "stops" })] }), jsx(ChevronDownSmallIcon, { className: "tw-text-grey-600" }), jsx("div", { className: "tw-pl-squid-xs", children: jsx(Chip, { label: estimatedTime }) })] })) })));
17767
17779
  }
17768
17780
  const MAX_PROVIDERS = 4;
17769
17781
  const spacing = {
@@ -17777,7 +17789,7 @@ function Providers({ providers }) {
17777
17789
  return (jsxs("div", { className: "tw-relative tw-flex tw-flex-col tw-items-center tw-justify-center tw-gap-1 tw-self-stretch tw-rounded-squid-m tw-p-squid-xs", children: [jsx(Vector, { className: "tw-absolute -tw-top-0 tw-left-1/2 -tw-translate-x-1/2 tw-rounded-bl-full tw-rounded-br-full tw-bg-royal-500 tw-bg-gradient-to-t tw-text-grey-500" }), jsx("div", { className: "tw-flex tw-h-squid-m tw-w-[44px] tw-max-w-[44px] tw-items-center tw-justify-center", children: providersToDisplay.map((provider, index, self) => (jsx("img", { style: {
17778
17790
  transform: `translate(${spacing[self.length][index]}px)`,
17779
17791
  zIndex: self.length - 1 - index,
17780
- }, src: provider.logoUrl, className: "tw-relative tw-h-squid-m tw-w-squid-m tw-rounded-squid-xxs tw-border-2 tw-border-grey-900 tw-bg-grey-900" }, provider.logoUrl))) }), jsx(Vector, { className: "tw-absolute -tw-bottom-0 tw-left-1/2 -tw-translate-x-1/2 tw-rounded-tl-full tw-rounded-tr-full tw-bg-royal-500 tw-bg-gradient-to-b tw-text-grey-500" })] }));
17792
+ }, src: provider.logoUrl, className: "tw-relative tw-h-squid-m tw-w-squid-m tw-rounded-squid-xxs tw-border-2 tw-border-grey-900 tw-bg-grey-900" }, provider.key))) }), jsx(Vector, { className: "tw-absolute -tw-bottom-0 tw-left-1/2 -tw-translate-x-1/2 tw-rounded-tl-full tw-rounded-tr-full tw-bg-royal-500 tw-bg-gradient-to-b tw-text-grey-500" })] }));
17781
17793
  }
17782
17794
  const Vector = ({ className }) => (jsx("div", { className: cn("tw-h-2.5 tw-w-1 tw-from-current tw-to-grey-900 group-hover/stops-button:tw-to-material-light-blend-grey-900", className) }));
17783
17795
 
@@ -17825,7 +17837,7 @@ function DropdownMenu({ dropdownRef, className, menuRef, isHidden = false, listC
17825
17837
  }
17826
17838
 
17827
17839
  function InfoBox({ title, description, icon }) {
17828
- return (jsxs("div", { className: "tw-align-self-stretch tw-flex tw-flex-col tw-items-center tw-gap-squid-xs tw-px-squid-m tw-pb-squid-l tw-pt-squid-xs tw-text-royal-400", children: [icon, jsxs("div", { className: "tw-flex tw-flex-col tw-items-center tw-justify-center tw-gap-squid-xs tw-self-stretch tw-pt-squid-xxs tw-text-center", children: [jsx(BodyText, { size: "small", className: "!tw-leading-[9px]", children: title }), jsx(CaptionText, { className: "tw-text-grey-500", children: description })] })] }));
17840
+ return (jsxs("div", { className: "tw-align-self-stretch tw-flex tw-flex-col tw-items-center tw-gap-squid-xs tw-px-squid-m tw-pb-squid-l tw-pt-squid-xs tw-text-royal-400", children: [icon, jsxs("div", { className: "tw-flex tw-flex-col tw-items-center tw-justify-center tw-gap-squid-xs tw-self-stretch tw-pt-squid-xxs tw-text-center", children: [jsx(BodyText, { size: "small", className: "!tw-leading-[9px]", children: title }), typeof description === "string" ? (jsx(CaptionText, { className: "tw-text-grey-500", children: description })) : (description)] })] }));
17829
17841
  }
17830
17842
 
17831
17843
  const modalWidthClassMap = {
@@ -18495,7 +18507,7 @@ function LogoContainer({ children }) {
18495
18507
  return (jsx("div", { className: "tw-flex tw-h-[60px] tw-w-[60px] tw-items-center tw-justify-center", children: children }));
18496
18508
  }
18497
18509
 
18498
- function SwapConfiguration({ amount, tokenPrice = 0, isFetching: isFetchingProp = false, chain, token, direction = "from", onAmountChange, balance, criticalPriceImpactPercentage, error, priceImpactPercentage, maxUsdDecimals, isInputInteractive = true, isLoading = false, inputModeButton, balanceButton, assetsButton, walletButton, }) {
18510
+ function SwapConfiguration({ amount, tokenPrice = 0, isFetching: isFetchingProp = false, chain, token, direction = "from", onAmountChange, balance, criticalPriceImpactPercentage, error, priceImpactPercentage, maxUsdDecimals, isInputInteractive = true, isLoading = false, inputModeButton, balanceButton, assetsButton, walletButton, showNumericInputDetails = true, }) {
18499
18511
  var _a, _b, _c;
18500
18512
  const isWalletButtonInteractive = !isLoading && !!(walletButton === null || walletButton === void 0 ? void 0 : walletButton.onClick);
18501
18513
  const WalletButtonTag = isWalletButtonInteractive ? "button" : "div";
@@ -18515,7 +18527,7 @@ function SwapConfiguration({ amount, tokenPrice = 0, isFetching: isFetchingProp
18515
18527
  }, balance: balance, criticalPriceImpactPercentage: criticalPriceImpactPercentage, error: error, formatIfVerySmall: {
18516
18528
  token: "0.001",
18517
18529
  usd: "0.01",
18518
- }, maxUsdDecimals: maxUsdDecimals, isLoading: isFetching, priceImpactPercentage: priceImpactPercentage, showDetails: !!token, direction: direction, forcedAmount: amount, inputModeButton: inputModeButton, balanceButton: balanceButton, isInteractive: isInputInteractive && !isLoading })] }));
18530
+ }, maxUsdDecimals: maxUsdDecimals, isLoading: isFetching, priceImpactPercentage: priceImpactPercentage, showDetails: showNumericInputDetails, direction: direction, forcedAmount: amount, inputModeButton: inputModeButton, balanceButton: balanceButton, isInteractive: isInputInteractive && !isLoading })] }));
18519
18531
  }
18520
18532
 
18521
18533
  function SwapProgressViewHeader({ title, description, }) {
@@ -27104,11 +27116,13 @@ const SearchAddress = ({ type }) => {
27104
27116
  }, icon: jsx("img", { src: "/assets/images/blast.jpg", className: "tw-rounded-squid-xxs" }) })) : null, jsx(Button$1, { size: "md", variant: "primary", icon: jsx(ArrowRightIcon, {}), disabled: type === "recipientEmpty" })] })] }));
27105
27117
  };
27106
27118
 
27107
- function SwapDetailsView({ isLoading, canToggleBoostMode = true, }) {
27119
+ const ROUTING_TOKEN_SUPPORT_ARTICLE = "https://support.squidrouter.com/squid-overview/liquidity-pools/what-is-a-routing-token";
27120
+
27121
+ function SwapDetailsView({ isLoading, canToggleBoostMode = true, displayBoostMode = false, }) {
27108
27122
  const [isModalOpen, setIsModalOpen] = useState(true);
27109
27123
  return (jsx(Fragment, { children: jsxs(Modal, { isOpen: isModalOpen, onBackdropClick: () => {
27110
27124
  setIsModalOpen(false);
27111
- }, children: [jsxs(ModalContent, { children: [jsx(Settings, { canToggleBoostMode: canToggleBoostMode }), jsxs("ul", { className: "tw-flex tw-flex-col tw-items-start tw-gap-squid-xxs tw-self-stretch tw-py-squid-xs", children: [jsx(PropertyListItem, { isLoading: isLoading, icon: jsx(ClockOutlineIcon, {}), label: "Estimated time to complete", detail: "~20s" }), jsx(PropertyListItem, { isLoading: isLoading, icon: jsx(ArrowBottomTopIcon, {}), label: "Exchange rate", detail: "1 ETH = 4,031.05 USDC" }), jsx(PropertyListItem, { isLoading: isLoading, icon: jsx(ArrowWallDownIcon, {}), label: "Receive minimum", detail: "750.5 USDC" }), jsx(PropertyListItem, { isLoading: isLoading, icon: jsx(GasIcon, {}), label: "Cross-chain gas fees", detail: jsxs(Fragment, { children: [jsx(CaptionText, { children: "0.02534 ETH" }), jsx(CaptionText, { className: "tw-text-grey-500", children: "$9.92" })] }) }), jsx(PropertyListItem, { isLoading: isLoading, icon: jsx(ReorderIcon, {}), label: "Expected gas refund", detail: jsxs(Fragment, { children: [jsx(CaptionText, { children: "-0.06336 ETH" }), jsx(CaptionText, { className: "tw-text-grey-500", children: "-$2.48" })] }) }), jsx(PropertyListItem, { isLoading: isLoading, icon: jsx(ReceiptBillIcon, {}), label: "Total fee", detail: jsxs(Fragment, { children: [jsx(CaptionText, { children: "0.0177 ETH" }), jsx(CaptionText, { className: "tw-text-grey-500", children: "$7.43" })] }) })] }), jsx(InfoBox, { icon: jsx(SnapIcon, {}), title: "Squid\u2019s price commitment", description: "In case of market price fluctuating significantly, your transaction may revert and you will receive axlUSDC on the destination chain instead." })] }), jsx(Button$1, { size: "lg", variant: "secondary", label: "Close", onClick: () => {
27125
+ }, children: [jsxs(ModalContent, { children: [displayBoostMode && (jsx(Settings, { canToggleBoostMode: canToggleBoostMode })), jsxs("ul", { className: "tw-flex tw-flex-col tw-items-start tw-gap-squid-xxs tw-self-stretch tw-py-squid-m", children: [jsx(PropertyListItem, { isLoading: isLoading, icon: jsx(ArrowBottomTopIcon, {}), label: "Exchange rate", detail: "1 ETH = 4,031.05 USDC" }), jsx(PropertyListItem, { isLoading: isLoading, icon: jsx(ArrowWallDownIcon, {}), label: "Receive minimum", detail: "750.5 USDC" }), jsx(PropertyListItem, { isLoading: isLoading, icon: jsx(GasIcon, {}), label: "Cross-chain gas fees", detail: jsxs(Fragment, { children: [jsx(CaptionText, { children: "0.02534 ETH" }), jsx(CaptionText, { className: "tw-text-grey-500", children: "$9.92" })] }) }), jsx(PropertyListItem, { isLoading: isLoading, icon: jsx(ReorderIcon, {}), label: "Expected gas refund", detail: jsxs(Fragment, { children: [jsx(CaptionText, { children: "-0.06336 ETH" }), jsx(CaptionText, { className: "tw-text-grey-500", children: "-$2.48" })] }) }), jsx(PropertyListItem, { isLoading: isLoading, icon: jsx(ReceiptBillIcon, {}), label: "Total fee", detail: jsxs(Fragment, { children: [jsx(CaptionText, { children: "0.0177 ETH" }), jsx(CaptionText, { className: "tw-text-grey-500", children: "$7.43" })] }) })] }), jsx("span", { children: jsx(InfoBox, { icon: jsx(SnapIcon, {}), title: "Squid's price commitment", description: jsx(Fragment, { children: jsxs(CaptionText, { className: "tw-text-grey-500", children: ["In case of market prices fluctuating significantly, your transaction may revert and you will receive one of Squid's routing tokens on the destination chain instead.", " ", jsx("a", { className: "tw-text-grey-300", href: ROUTING_TOKEN_SUPPORT_ARTICLE, target: "_blank", children: "Learn more" })] }) }) }) })] }), jsx(Button$1, { size: "lg", variant: "secondary", label: "Close", onClick: () => {
27112
27126
  setIsModalOpen(false);
27113
27127
  } })] }) }));
27114
27128
  }
@@ -62436,4 +62450,4 @@ function SquidConfigProvider({ theme = lightTheme, children, themeType = "light"
62436
62450
  return (jsx("div", { style: parsedStyle, "data-squid-theme-type": themeType, className: "tw-h-d-screen tw-group tw-relative tw-flex tw-font-geist mobile-lg:tw-h-auto", children: children }));
62437
62451
  }
62438
62452
 
62439
- export { ActionLayout, ActionLineOutRow, ActionProperties, ActionRow, ActionStatusRow, ActionWrapper, AddressButton, AnimationWrapper, AppContainer, Approve, ApproveAction, ArrowBottomTopIcon, ArrowButton, ArrowCornerDownRightIcon, ArrowDownIcon, ArrowLeftIcon, ArrowOutOfBoxIcon, ArrowRightDownCircleIcon, ArrowRightDownIcon, ArrowRightIcon, ArrowRightUpCircleIcon, ArrowRightUpIcon, ArrowRotate, ArrowSplit, ArrowTriangle, ArrowUpIcon, ArrowWallDownIcon, ArrowsSwapIcon, AssetsButton, AssetsView, BackpackIcon, BadgeImage, BankIcon, BellAlarmIcon, BlockSkeleton, BodyText, Boost, BoostBadge, BoostButton, BorderedContainer, Breadcrumb, BridgeAction, BridgeHeader, BridgeProperties, BridgeTransactionView, BrokenHeartIcon, BubblesIcon, Button$1 as Button, BuyNFTHeader, BuyNFTProperties, BuyNFTTransactionView, CSS_VARS, Calendar, CaptionText, CatSquareIcon, ChainLink, Checkmark1Icon, Checkmark2Icon, ChevronArrowIcon, ChevronDownSmallIcon, ChevronGrabberVerticalIcon, ChevronLargeDownIcon, ChevronLargeRightIcon, ChevronRightSmallIcon, ChevronTopIcon, ChevronTopSmallIcon, Chip, CircleMinusIcon, CirclePlusIcon, CircleX, CircleXFilledIcon, ClockOutlineIcon, ClockSolidIcon, CoinsAddIcon, CoinsIcon, Collapse, CollapsibleMenu, CollectionIcon, ColorPaletteIcon, CompassRoundOutlinedIcon, CompassRoundSolidIcon, ConsoleIcon, Copy, CrossAnimatedIcon, DashboardFast, DescriptionBlocks, DetailsToolbar, DiscordIcon, DockIconAnalytics, DockIconCheckout, DockIconHelp, DockIconProfile, DockIconScan, DockIconSwap, DockSwapIcon, DollarOutlinedIcon, DollarSolidIcon, DotGrid1x3HorizontalIcon, DropdownMenu, DropdownMenuItem, DropdownMenuTitle, EmojiMeh, EmojiSadIcon, EmptyHeartIcon, ErrorMessage, EthereumIcon, ExplosionIcon, EyeOpenIcon, FeeButton, FeesAction, FeesLines, FeesTotal, FilledHeartIcon, FilterAscendingIcon, FilterButton, FilterIcon, FilterTimelineIcon, GasIcon, GhostIcon, GithubIcon, HashLink, HeadingText, HeartSmallIcon, HelpIcon, HistoryItem, HomeIcon, IconButton, IconLabel, Image$1 as Image, ImageIcon, ImageSparkle, IncompleteAction, InfinityIcon, InfoBox, Inline, Input, InteractionHeader, InteractionProperties, InteractionTransactionView, Join, LightningIcon, LimitIcon, LinkIcon, List, ListItem, ListItemActionsButton, Loader, LoadingProvider, LoadingSkeleton, MEDIA_QUERIES, MainView, MaxIcon, Menu, MenuItem, MenuSwapIcon, MirrorIcon, Modal, ModalContent, ModalContentDivider, MoonIcon, NavigationBar, NotAllowedIcon, NumericInput, PathSquareIcon, PercentIcon, PieChartIcon, PipeSeparator, PlusIcon, PoopIcon, PowerIcon, ProductCard, ProfileHeader, ProfileHeaderBackground, PropertiesLayout, PropertyListItem, PunkIcon, RangeInput, ReceiptBillIcon, ReceiveNFTAction, ReceiveTokensAction, RecipientView, RefreshIcon, ReorderIcon, RouteStep, STEP_ITEM_HEIGHT, SearchIcon, SectionTitle, SendTokensAction, SettingsButton, SettingsGearIcon, SettingsItem, SettingsSlider, SettingsSliderIcon, ShoppingBagIcon, SizeTransition, SmileIcon, SnapIcon, SortIcon, SparkleIcon, SparklesIcon, SquareArrowCenter, SquareArrowTopLeftIcon, SquareArrowTopRight2Icon, SquidConfigProvider, SquidLogo, StakeAction, StartAction, StocksIcon, SuccessAction, SunIcon, SunriseIcon, SwapAction, SwapConfiguration, SwapDetailsView, SwapErrorIcon, SwapHeader, SwapIcon, SwapInputsIcon, SwapProgressView, SwapProgressViewHeader, SwapProperties, SwapStepItem, SwapStepSeparator, SwapStepsCollapsed, SwapSuccessIcon, SwapTransactionView, SwapWarningIcon, Switch, TagIcon, TagIconFilled, TextSkeleton, ThumbsUp, Tick, TimeFliesIcon, Timeline, Timestamp, Toast, TokenPair, Tooltip, TradingViewStepsIcon, TransactionAction, TransactionFilters, TransactionHeader, TransactionHeaderLayout, TransactionItem, TransactionProperties, TransactionSearch, TransactionState, TransactionView, TransactionViewLayout, Transfer, TranslateIcon, TriangleExclamation, UsdAmount, WalletFilledIcon, WalletIcon, WalletLink, WalletsView, WrapAction, XSocial, baseTailwindConfig, cn, darkTheme, lightTheme, linkActionTimelineProps, statusTextClassMap, useCollapsibleMenu, useDropdownMenu, useMediaQuery, useOnResize, useRect, useTimer, useVersion };
62453
+ export { ActionLayout, ActionLineOutRow, ActionProperties, ActionRow, ActionStatusRow, ActionWrapper, AddressButton, AnimationWrapper, AppContainer, Approve, ApproveAction, ArrowBottomTopIcon, ArrowButton, ArrowCornerDownRightIcon, ArrowDownIcon, ArrowLeftIcon, ArrowOutOfBoxIcon, ArrowRightDownCircleIcon, ArrowRightDownIcon, ArrowRightIcon, ArrowRightUpCircleIcon, ArrowRightUpIcon, ArrowRotate, ArrowSplit, ArrowTriangle, ArrowUpIcon, ArrowWallDownIcon, ArrowsSwapIcon, AssetsButton, AssetsView, AtomIcon, BackpackIcon, BadgeImage, BankIcon, BellAlarmIcon, BlockSkeleton, BodyText, Boost, BoostBadge, BoostButton, BorderedContainer, Breadcrumb, BridgeAction, BridgeHeader, BridgeProperties, BridgeTransactionView, BrokenHeartIcon, BubblesIcon, Button$1 as Button, BuyNFTHeader, BuyNFTProperties, BuyNFTTransactionView, CSS_VARS, Calendar, CaptionText, CatSquareIcon, ChainLink, Checkmark1Icon, Checkmark2Icon, ChevronArrowIcon, ChevronDownSmallIcon, ChevronGrabberVerticalIcon, ChevronLargeDownIcon, ChevronLargeRightIcon, ChevronRightSmallIcon, ChevronTopIcon, ChevronTopSmallIcon, Chip, CircleMinusIcon, CirclePlusIcon, CircleX, CircleXFilledIcon, ClockOutlineIcon, ClockSolidIcon, CoinsAddIcon, CoinsIcon, CoinsOutlinedIcon, Collapse, CollapsibleMenu, CollectionIcon, ColorPaletteIcon, CompassRoundOutlinedIcon, CompassRoundSolidIcon, ConsoleIcon, Copy, CrossAnimatedIcon, DashboardFast, DescriptionBlocks, DetailsToolbar, DiscordIcon, DockIconAnalytics, DockIconCheckout, DockIconHelp, DockIconProfile, DockIconScan, DockIconSwap, DockSwapIcon, DollarOutlinedIcon, DollarSolidIcon, DotGrid1x3HorizontalIcon, DropdownMenu, DropdownMenuItem, DropdownMenuTitle, EmojiMeh, EmojiSadIcon, EmptyHeartIcon, ErrorMessage, EthereumIcon, ExplosionIcon, EyeOpenIcon, FeeButton, FeesAction, FeesLines, FeesTotal, FilledHeartIcon, FilterAscendingIcon, FilterButton, FilterIcon, FilterTimelineIcon, GasIcon, GhostIcon, GithubIcon, HashLink, HeadingText, HeartSmallIcon, HelpIcon, HistoryItem, HomeIcon, IconButton, IconLabel, Image$1 as Image, ImageIcon, ImageSparkle, IncompleteAction, InfinityIcon, InfoBox, Inline, Input, InteractionHeader, InteractionProperties, InteractionTransactionView, Join, LightningIcon, LimitIcon, LinkIcon, List, ListItem, ListItemActionsButton, Loader, LoadingProvider, LoadingSkeleton, MEDIA_QUERIES, MainView, MaxIcon, Menu, MenuItem, MenuSwapIcon, MirrorIcon, Modal, ModalContent, ModalContentDivider, MoonIcon, NavigationBar, NewspaperIcon, NotAllowedIcon, NumericInput, PathSquareIcon, PercentIcon, PieChartIcon, PipeSeparator, PlusIcon, PoopIcon, PowerIcon, ProductCard, ProfileHeader, ProfileHeaderBackground, PropertiesLayout, PropertyListItem, PunkIcon, RangeInput, ReceiptBillIcon, ReceiveNFTAction, ReceiveTokensAction, RecipientView, RefreshIcon, ReorderIcon, RouteStep, STEP_ITEM_HEIGHT, SearchIcon, SectionTitle, SendTokensAction, SettingsButton, SettingsGearIcon, SettingsItem, SettingsSlider, SettingsSliderIcon, ShoppingBagIcon, SizeTransition, SmileIcon, SnapIcon, SortIcon, SparkleIcon, SparklesIcon, SquareArrowCenter, SquareArrowTopLeftIcon, SquareArrowTopRight2Icon, SquidConfigProvider, SquidLogo, StakeAction, StartAction, StocksIcon, SuccessAction, SunIcon, SunriseIcon, SunriseSmallIcon, SwapAction, SwapConfiguration, SwapDetailsView, SwapErrorIcon, SwapHeader, SwapIcon, SwapInputsIcon, SwapProgressView, SwapProgressViewHeader, SwapProperties, SwapStepItem, SwapStepSeparator, SwapStepsCollapsed, SwapSuccessIcon, SwapTransactionView, SwapWarningIcon, Switch, TagIcon, TagIconFilled, TextSkeleton, ThumbsUp, Tick, TimeFliesIcon, Timeline, Timestamp, Toast, TokenPair, Tooltip, TradingViewStepsIcon, TransactionAction, TransactionFilters, TransactionHeader, TransactionHeaderLayout, TransactionItem, TransactionProperties, TransactionSearch, TransactionState, TransactionView, TransactionViewLayout, Transfer, TranslateIcon, TriangleExclamation, UsdAmount, WalletFilledIcon, WalletIcon, WalletLink, WalletsView, WrapAction, XSocial, baseTailwindConfig, cn, darkTheme, lightTheme, linkActionTimelineProps, statusTextClassMap, useCollapsibleMenu, useDropdownMenu, useMediaQuery, useOnResize, useRect, useTimer, useVersion };
@@ -9,5 +9,6 @@ export interface StopsProps extends React.ComponentProps<"button"> {
9
9
  export declare function StopsButton({ stopsCount, estimatedTime, tooltip, providers, ...props }: StopsProps): import("react/jsx-runtime").JSX.Element;
10
10
  type Provider = {
11
11
  logoUrl: string;
12
+ key: string;
12
13
  };
13
14
  export {};
@@ -38,3 +38,19 @@ export declare function FilterTimelineIcon({ size, className, }: {
38
38
  size?: string;
39
39
  className?: string;
40
40
  }): import("react/jsx-runtime").JSX.Element;
41
+ export declare function NewspaperIcon({ className, size, }: {
42
+ className?: string;
43
+ size?: string;
44
+ }): import("react/jsx-runtime").JSX.Element;
45
+ export declare function AtomIcon({ className, size, }: {
46
+ className?: string;
47
+ size?: string;
48
+ }): import("react/jsx-runtime").JSX.Element;
49
+ export declare function SunriseSmallIcon({ className, size, }: {
50
+ className?: string;
51
+ size?: string;
52
+ }): import("react/jsx-runtime").JSX.Element;
53
+ export declare function CoinsOutlinedIcon({ className, size, }: {
54
+ className?: string;
55
+ size?: string;
56
+ }): import("react/jsx-runtime").JSX.Element;
@@ -1,8 +1,8 @@
1
- /// <reference types="react" />
1
+ import { ReactNode } from "react";
2
2
  interface InfoBoxProps {
3
3
  title: string;
4
- description: string;
5
- icon?: React.ReactNode;
4
+ description: string | ReactNode;
5
+ icon?: ReactNode;
6
6
  }
7
7
  export declare function InfoBox({ title, description, icon }: InfoBoxProps): import("react/jsx-runtime").JSX.Element;
8
8
  export {};
@@ -46,6 +46,7 @@ interface SwapConfigurationProps {
46
46
  emptyAddressLabel?: string;
47
47
  disabled?: boolean;
48
48
  };
49
+ showNumericInputDetails?: boolean;
49
50
  }
50
- export declare function SwapConfiguration({ amount, tokenPrice, isFetching: isFetchingProp, chain, token, direction, onAmountChange, balance, criticalPriceImpactPercentage, error, priceImpactPercentage, maxUsdDecimals, isInputInteractive, isLoading, inputModeButton, balanceButton, assetsButton, walletButton, }: SwapConfigurationProps): import("react/jsx-runtime").JSX.Element;
51
+ export declare function SwapConfiguration({ amount, tokenPrice, isFetching: isFetchingProp, chain, token, direction, onAmountChange, balance, criticalPriceImpactPercentage, error, priceImpactPercentage, maxUsdDecimals, isInputInteractive, isLoading, inputModeButton, balanceButton, assetsButton, walletButton, showNumericInputDetails, }: SwapConfigurationProps): import("react/jsx-runtime").JSX.Element;
51
52
  export {};
@@ -1,4 +1,5 @@
1
- export declare function SwapDetailsView({ isLoading, canToggleBoostMode, }: {
1
+ export declare function SwapDetailsView({ isLoading, canToggleBoostMode, displayBoostMode, }: {
2
2
  isLoading?: boolean;
3
3
  canToggleBoostMode?: boolean;
4
+ displayBoostMode?: boolean;
4
5
  }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export declare const ROUTING_TOKEN_SUPPORT_ARTICLE = "https://support.squidrouter.com/squid-overview/liquidity-pools/what-is-a-routing-token";
2
+ export declare const PRICE_IMPACT_SUPPORT_ARTICLE = "https://support.squidrouter.com/swapping-with-squid/squid-settings-and-features/what-is-price-impact";
@@ -4,6 +4,7 @@ declare const meta: Meta<typeof SwapConfiguration>;
4
4
  export default meta;
5
5
  type Story = StoryObj<typeof meta>;
6
6
  export declare const EmptyVariantPrimary: Story;
7
+ export declare const EmptyVariantWithoutNumericInputDetails: Story;
7
8
  export declare const EmptyVariantAccent: Story;
8
9
  export declare const Loading: Story;
9
10
  export declare const LoadingWithAllProps: Story;
@@ -6,3 +6,4 @@ type Story = StoryObj<typeof meta>;
6
6
  export declare const Default: Story;
7
7
  export declare const Loading: Story;
8
8
  export declare const BoostDisabled: Story;
9
+ export declare const BoostHidden: Story;
package/dist/index.d.ts CHANGED
@@ -762,6 +762,22 @@ declare function FilterTimelineIcon({ size, className, }: {
762
762
  size?: string;
763
763
  className?: string;
764
764
  }): react_jsx_runtime.JSX.Element;
765
+ declare function NewspaperIcon({ className, size, }: {
766
+ className?: string;
767
+ size?: string;
768
+ }): react_jsx_runtime.JSX.Element;
769
+ declare function AtomIcon({ className, size, }: {
770
+ className?: string;
771
+ size?: string;
772
+ }): react_jsx_runtime.JSX.Element;
773
+ declare function SunriseSmallIcon({ className, size, }: {
774
+ className?: string;
775
+ size?: string;
776
+ }): react_jsx_runtime.JSX.Element;
777
+ declare function CoinsOutlinedIcon({ className, size, }: {
778
+ className?: string;
779
+ size?: string;
780
+ }): react_jsx_runtime.JSX.Element;
765
781
 
766
782
  interface Props {
767
783
  lottieJsonFile: object;
@@ -1339,6 +1355,7 @@ interface StopsProps extends React.ComponentProps<"button"> {
1339
1355
  }
1340
1356
  type Provider = {
1341
1357
  logoUrl: string;
1358
+ key: string;
1342
1359
  };
1343
1360
 
1344
1361
  interface DetailsToolbarProps {
@@ -1394,8 +1411,8 @@ declare function HashLink({ showTx, hash, showCopyButton, url, children, }: Hash
1394
1411
 
1395
1412
  interface InfoBoxProps {
1396
1413
  title: string;
1397
- description: string;
1398
- icon?: React.ReactNode;
1414
+ description: string | ReactNode;
1415
+ icon?: ReactNode;
1399
1416
  }
1400
1417
  declare function InfoBox({ title, description, icon }: InfoBoxProps): react_jsx_runtime.JSX.Element;
1401
1418
 
@@ -1531,8 +1548,9 @@ interface SwapConfigurationProps {
1531
1548
  emptyAddressLabel?: string;
1532
1549
  disabled?: boolean;
1533
1550
  };
1551
+ showNumericInputDetails?: boolean;
1534
1552
  }
1535
- declare function SwapConfiguration({ amount, tokenPrice, isFetching: isFetchingProp, chain, token, direction, onAmountChange, balance, criticalPriceImpactPercentage, error, priceImpactPercentage, maxUsdDecimals, isInputInteractive, isLoading, inputModeButton, balanceButton, assetsButton, walletButton, }: SwapConfigurationProps): react_jsx_runtime.JSX.Element;
1553
+ declare function SwapConfiguration({ amount, tokenPrice, isFetching: isFetchingProp, chain, token, direction, onAmountChange, balance, criticalPriceImpactPercentage, error, priceImpactPercentage, maxUsdDecimals, isInputInteractive, isLoading, inputModeButton, balanceButton, assetsButton, walletButton, showNumericInputDetails, }: SwapConfigurationProps): react_jsx_runtime.JSX.Element;
1536
1554
 
1537
1555
  interface SwapProgressViewHeaderProps {
1538
1556
  title: string;
@@ -2374,9 +2392,10 @@ interface WalletsViewProps {
2374
2392
  }
2375
2393
  declare function RecipientView({ type }: WalletsViewProps): react_jsx_runtime.JSX.Element;
2376
2394
 
2377
- declare function SwapDetailsView({ isLoading, canToggleBoostMode, }: {
2395
+ declare function SwapDetailsView({ isLoading, canToggleBoostMode, displayBoostMode, }: {
2378
2396
  isLoading?: boolean;
2379
2397
  canToggleBoostMode?: boolean;
2398
+ displayBoostMode?: boolean;
2380
2399
  }): react_jsx_runtime.JSX.Element;
2381
2400
 
2382
2401
  type ChainData = {
@@ -2654,4 +2673,4 @@ declare const baseTailwindConfig: Config;
2654
2673
  */
2655
2674
  declare const cn: (...inputs: ClassValue[]) => string;
2656
2675
 
2657
- export { type ActionButton, ActionLayout, ActionLineOutRow, ActionProperties, ActionRow, type ActionStatus, ActionStatusRow, ActionWrapper, AddressButton, type AllOrNone, AnimationWrapper, AppContainer, Approve, ApproveAction, ArrowBottomTopIcon, ArrowButton, ArrowCornerDownRightIcon, ArrowDownIcon, ArrowLeftIcon, ArrowOutOfBoxIcon, ArrowRightDownCircleIcon, ArrowRightDownIcon, ArrowRightIcon, ArrowRightUpCircleIcon, ArrowRightUpIcon, ArrowRotate, ArrowSplit, ArrowTriangle, ArrowUpIcon, ArrowWallDownIcon, ArrowsSwapIcon, AssetsButton, type AssetsButtonVariant, AssetsView, BackpackIcon, BadgeImage, BankIcon, type BaseActionProps, type BaseTransactionViewProps, BellAlarmIcon, BlockSkeleton, BodyText, Boost, BoostBadge, BoostButton, BorderedContainer, Breadcrumb, BridgeAction, BridgeHeader, BridgeProperties, BridgeTransactionView, BrokenHeartIcon, BubblesIcon, Button, BuyNFTHeader, BuyNFTProperties, BuyNFTTransactionView, CSS_VARS, Calendar, CaptionText, CatSquareIcon, ChainLink, Checkmark1Icon, Checkmark2Icon, ChevronArrowIcon, ChevronDownSmallIcon, ChevronGrabberVerticalIcon, ChevronLargeDownIcon, ChevronLargeRightIcon, ChevronRightSmallIcon, ChevronTopIcon, ChevronTopSmallIcon, Chip, type ChipProps, CircleMinusIcon, CirclePlusIcon, CircleX, CircleXFilledIcon, ClockOutlineIcon, ClockSolidIcon, CoinsAddIcon, CoinsIcon, Collapse, CollapsibleMenu, CollectionIcon, ColorPaletteIcon, CompassRoundOutlinedIcon, CompassRoundSolidIcon, ConsoleIcon, Copy, CrossAnimatedIcon, DashboardFast, type DescriptionBlock, DescriptionBlocks, DetailsToolbar, DiscordIcon, DockIconAnalytics, DockIconCheckout, DockIconHelp, DockIconProfile, DockIconScan, DockIconSwap, DockSwapIcon, DollarOutlinedIcon, DollarSolidIcon, DotGrid1x3HorizontalIcon, DropdownMenu, DropdownMenuItem, type DropdownMenuItemProps, DropdownMenuTitle, type DropdownPosition, type DropdownStyles, EmojiMeh, EmojiSadIcon, EmptyHeartIcon, ErrorMessage, EthereumIcon, ExplosionIcon, EyeOpenIcon, FeeButton, FeesAction, type FeesActionProps, FeesLines, FeesTotal, FilledHeartIcon, FilterAscendingIcon, FilterButton, FilterIcon, FilterTimelineIcon, GasIcon, GhostIcon, GithubIcon, HashLink, HeadingText, HeartSmallIcon, HelpIcon, HistoryItem, type HistoryItemStatus, HomeIcon, IconButton, IconLabel, Image, ImageIcon, ImageSparkle, IncompleteAction, InfinityIcon, InfoBox, Inline, Input, InteractionHeader, InteractionProperties, InteractionTransactionView, Join, LightningIcon, LimitIcon, LinkIcon, List, ListItem, ListItemActionsButton, Loader, LoadingProvider, LoadingSkeleton, MEDIA_QUERIES, MainView, MaxIcon, Menu, MenuItem, MenuSwapIcon, MirrorIcon, Modal, ModalContent, ModalContentDivider, MoonIcon, NavigationBar, NotAllowedIcon, NumericInput, PathSquareIcon, PercentIcon, PieChartIcon, PipeSeparator, PlusIcon, PoopIcon, PowerIcon, ProductCard, ProfileHeader, ProfileHeaderBackground, PropertiesLayout, PropertyListItem, type PropertyListItemProps, PunkIcon, RangeInput, ReceiptBillIcon, ReceiveNFTAction, ReceiveTokensAction, RecipientView, RefreshIcon, ReorderIcon, RouteStep, STEP_ITEM_HEIGHT, SearchIcon, SectionTitle, SendTokensAction, SettingsButton, type SettingsButtonProps, type SettingsControl, SettingsGearIcon, SettingsItem, type SettingsItemProps, SettingsSlider, SettingsSliderIcon, type SettingsSliderProps, ShoppingBagIcon, SizeTransition, SmileIcon, SnapIcon, SortIcon, SparkleIcon, SparklesIcon, SquareArrowCenter, SquareArrowTopLeftIcon, SquareArrowTopRight2Icon, SquidConfigProvider, SquidLogo, type SquidTheme, StakeAction, StartAction, StocksIcon, SuccessAction, SunIcon, SunriseIcon, SwapAction, SwapConfiguration, SwapDetailsView, SwapErrorIcon, SwapHeader, type SwapHeaderProps, SwapIcon, SwapInputsIcon, SwapProgressView, SwapProgressViewHeader, SwapProperties, type SwapPropertiesProps, SwapState, type SwapStep, SwapStepItem, SwapStepSeparator, SwapStepsCollapsed, type SwapStepsCollapsedFooterButton, SwapSuccessIcon, SwapTransactionView, SwapWarningIcon, Switch, type SwitchProps, TagIcon, TagIconFilled, TextSkeleton, type ThemeType, ThumbsUp, Tick, TimeFliesIcon, Timeline, Timestamp, Toast, TokenPair, Tooltip, type TooltipProps, type TooltipThreshold, type TooltipWidth, TradingViewStepsIcon, TransactionAction, type TransactionActionProps, type TransactionActionType, TransactionFilters, TransactionHeader, TransactionHeaderLayout, type TransactionHeaderProps, type TransactionHeaderType, TransactionItem, TransactionProperties, type TransactionPropertiesProps, type TransactionPropertiesType, TransactionSearch, TransactionState, TransactionView, TransactionViewLayout, type TransactionViewProps, type TransactionViewType, Transfer, TranslateIcon, TriangleExclamation, UsdAmount, WalletFilledIcon, WalletIcon, WalletLink, WalletsView, WrapAction, XSocial, baseTailwindConfig, cn, darkTheme, lightTheme, linkActionTimelineProps, statusTextClassMap, useCollapsibleMenu, useDropdownMenu, useMediaQuery, useOnResize, useRect, useTimer, useVersion };
2676
+ export { type ActionButton, ActionLayout, ActionLineOutRow, ActionProperties, ActionRow, type ActionStatus, ActionStatusRow, ActionWrapper, AddressButton, type AllOrNone, AnimationWrapper, AppContainer, Approve, ApproveAction, ArrowBottomTopIcon, ArrowButton, ArrowCornerDownRightIcon, ArrowDownIcon, ArrowLeftIcon, ArrowOutOfBoxIcon, ArrowRightDownCircleIcon, ArrowRightDownIcon, ArrowRightIcon, ArrowRightUpCircleIcon, ArrowRightUpIcon, ArrowRotate, ArrowSplit, ArrowTriangle, ArrowUpIcon, ArrowWallDownIcon, ArrowsSwapIcon, AssetsButton, type AssetsButtonVariant, AssetsView, AtomIcon, BackpackIcon, BadgeImage, BankIcon, type BaseActionProps, type BaseTransactionViewProps, BellAlarmIcon, BlockSkeleton, BodyText, Boost, BoostBadge, BoostButton, BorderedContainer, Breadcrumb, BridgeAction, BridgeHeader, BridgeProperties, BridgeTransactionView, BrokenHeartIcon, BubblesIcon, Button, BuyNFTHeader, BuyNFTProperties, BuyNFTTransactionView, CSS_VARS, Calendar, CaptionText, CatSquareIcon, ChainLink, Checkmark1Icon, Checkmark2Icon, ChevronArrowIcon, ChevronDownSmallIcon, ChevronGrabberVerticalIcon, ChevronLargeDownIcon, ChevronLargeRightIcon, ChevronRightSmallIcon, ChevronTopIcon, ChevronTopSmallIcon, Chip, type ChipProps, CircleMinusIcon, CirclePlusIcon, CircleX, CircleXFilledIcon, ClockOutlineIcon, ClockSolidIcon, CoinsAddIcon, CoinsIcon, CoinsOutlinedIcon, Collapse, CollapsibleMenu, CollectionIcon, ColorPaletteIcon, CompassRoundOutlinedIcon, CompassRoundSolidIcon, ConsoleIcon, Copy, CrossAnimatedIcon, DashboardFast, type DescriptionBlock, DescriptionBlocks, DetailsToolbar, DiscordIcon, DockIconAnalytics, DockIconCheckout, DockIconHelp, DockIconProfile, DockIconScan, DockIconSwap, DockSwapIcon, DollarOutlinedIcon, DollarSolidIcon, DotGrid1x3HorizontalIcon, DropdownMenu, DropdownMenuItem, type DropdownMenuItemProps, DropdownMenuTitle, type DropdownPosition, type DropdownStyles, EmojiMeh, EmojiSadIcon, EmptyHeartIcon, ErrorMessage, EthereumIcon, ExplosionIcon, EyeOpenIcon, FeeButton, FeesAction, type FeesActionProps, FeesLines, FeesTotal, FilledHeartIcon, FilterAscendingIcon, FilterButton, FilterIcon, FilterTimelineIcon, GasIcon, GhostIcon, GithubIcon, HashLink, HeadingText, HeartSmallIcon, HelpIcon, HistoryItem, type HistoryItemStatus, HomeIcon, IconButton, IconLabel, Image, ImageIcon, ImageSparkle, IncompleteAction, InfinityIcon, InfoBox, Inline, Input, InteractionHeader, InteractionProperties, InteractionTransactionView, Join, LightningIcon, LimitIcon, LinkIcon, List, ListItem, ListItemActionsButton, Loader, LoadingProvider, LoadingSkeleton, MEDIA_QUERIES, MainView, MaxIcon, Menu, MenuItem, MenuSwapIcon, MirrorIcon, Modal, ModalContent, ModalContentDivider, MoonIcon, NavigationBar, NewspaperIcon, NotAllowedIcon, NumericInput, PathSquareIcon, PercentIcon, PieChartIcon, PipeSeparator, PlusIcon, PoopIcon, PowerIcon, ProductCard, ProfileHeader, ProfileHeaderBackground, PropertiesLayout, PropertyListItem, type PropertyListItemProps, PunkIcon, RangeInput, ReceiptBillIcon, ReceiveNFTAction, ReceiveTokensAction, RecipientView, RefreshIcon, ReorderIcon, RouteStep, STEP_ITEM_HEIGHT, SearchIcon, SectionTitle, SendTokensAction, SettingsButton, type SettingsButtonProps, type SettingsControl, SettingsGearIcon, SettingsItem, type SettingsItemProps, SettingsSlider, SettingsSliderIcon, type SettingsSliderProps, ShoppingBagIcon, SizeTransition, SmileIcon, SnapIcon, SortIcon, SparkleIcon, SparklesIcon, SquareArrowCenter, SquareArrowTopLeftIcon, SquareArrowTopRight2Icon, SquidConfigProvider, SquidLogo, type SquidTheme, StakeAction, StartAction, StocksIcon, SuccessAction, SunIcon, SunriseIcon, SunriseSmallIcon, SwapAction, SwapConfiguration, SwapDetailsView, SwapErrorIcon, SwapHeader, type SwapHeaderProps, SwapIcon, SwapInputsIcon, SwapProgressView, SwapProgressViewHeader, SwapProperties, type SwapPropertiesProps, SwapState, type SwapStep, SwapStepItem, SwapStepSeparator, SwapStepsCollapsed, type SwapStepsCollapsedFooterButton, SwapSuccessIcon, SwapTransactionView, SwapWarningIcon, Switch, type SwitchProps, TagIcon, TagIconFilled, TextSkeleton, type ThemeType, ThumbsUp, Tick, TimeFliesIcon, Timeline, Timestamp, Toast, TokenPair, Tooltip, type TooltipProps, type TooltipThreshold, type TooltipWidth, TradingViewStepsIcon, TransactionAction, type TransactionActionProps, type TransactionActionType, TransactionFilters, TransactionHeader, TransactionHeaderLayout, type TransactionHeaderProps, type TransactionHeaderType, TransactionItem, TransactionProperties, type TransactionPropertiesProps, type TransactionPropertiesType, TransactionSearch, TransactionState, TransactionView, TransactionViewLayout, type TransactionViewProps, type TransactionViewType, Transfer, TranslateIcon, TriangleExclamation, UsdAmount, WalletFilledIcon, WalletIcon, WalletLink, WalletsView, WrapAction, XSocial, baseTailwindConfig, cn, darkTheme, lightTheme, linkActionTimelineProps, statusTextClassMap, useCollapsibleMenu, useDropdownMenu, useMediaQuery, useOnResize, useRect, useTimer, useVersion };
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "url": "git+https://github.com/0xsquid/squid-ui.git"
6
6
  },
7
7
  "description": "Squid's UI components",
8
- "version": "0.27.4",
8
+ "version": "0.27.6",
9
9
  "author": "",
10
10
  "license": "MIT",
11
11
  "resolutions": {