@0xsquid/ui 2.5.0 → 2.5.1-beta.1
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 +34 -201
- package/dist/cjs/types/components/icons/Generic.d.ts +8 -0
- package/dist/cjs/types/components/layout/ImageStack.d.ts +3 -1
- package/dist/cjs/types/components/layout/index.d.ts +1 -0
- package/dist/cjs/types/components/lists/PropertyListItem.d.ts +3 -1
- package/dist/cjs/types/components/views/index.d.ts +1 -12
- package/dist/cjs/types/stories/lists/PropertyListItem.stories.d.ts +1 -0
- package/dist/esm/index.js +32 -195
- package/dist/esm/types/components/icons/Generic.d.ts +8 -0
- package/dist/esm/types/components/layout/ImageStack.d.ts +3 -1
- package/dist/esm/types/components/layout/index.d.ts +1 -0
- package/dist/esm/types/components/lists/PropertyListItem.d.ts +3 -1
- package/dist/esm/types/components/views/index.d.ts +1 -12
- package/dist/esm/types/stories/lists/PropertyListItem.stories.d.ts +1 -0
- package/dist/index.css +1 -1
- package/dist/index.d.ts +46 -69
- package/package.json +1 -1
package/dist/esm/index.js
CHANGED
|
@@ -2996,6 +2996,10 @@ const backgrounds = {
|
|
|
2996
2996
|
rgba(180, 143, 233, 1) 100%
|
|
2997
2997
|
)`,
|
|
2998
2998
|
};
|
|
2999
|
+
const transitionDuration = Object.entries(ANIMATION_DURATIONS).reduce((finalObj, [key, value]) => {
|
|
3000
|
+
finalObj[key.toLowerCase().replaceAll("_", "-")] = String(value);
|
|
3001
|
+
return finalObj;
|
|
3002
|
+
}, {});
|
|
2999
3003
|
const baseTailwindConfig = {
|
|
3000
3004
|
prefix: "tw-",
|
|
3001
3005
|
content: ["./src/**/*.{ts,tsx,js,jsx}", ".storybook/**/*.{ts,tsx,js,jsx}"],
|
|
@@ -3259,6 +3263,7 @@ const baseTailwindConfig = {
|
|
|
3259
3263
|
backgroundImage: backgrounds,
|
|
3260
3264
|
backdropBlur,
|
|
3261
3265
|
colors: mapToCssVariables(themeKeysToCssVariables.color),
|
|
3266
|
+
transitionDuration,
|
|
3262
3267
|
},
|
|
3263
3268
|
},
|
|
3264
3269
|
plugins: [
|
|
@@ -3993,6 +3998,12 @@ function StarLinesIcon({ size = "20", className, }) {
|
|
|
3993
3998
|
function QrCodeIcon({ size = "24", className, }) {
|
|
3994
3999
|
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: "M14 14V16H16M18 14H20M20 18H18V20M14 19.99V20M16 10H18C19.1046 10 20 9.10457 20 8V6C20 4.89543 19.1046 4 18 4H16C14.8954 4 14 4.89543 14 6V8C14 9.10457 14.8954 10 16 10ZM6 20H8C9.10457 20 10 19.1046 10 18V16C10 14.8954 9.10457 14 8 14H6C4.89543 14 4 14.8954 4 16V18C4 19.1046 4.89543 20 6 20ZM6 10H8C9.10457 10 10 9.10457 10 8V6C10 4.89543 9.10457 4 8 4H6C4.89543 4 4 4.89543 4 6V8C4 9.10457 4.89543 10 6 10Z", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }));
|
|
3995
4000
|
}
|
|
4001
|
+
function ArrowExpandIcon({ className, size = "24", }) {
|
|
4002
|
+
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: "M18 8L22 12M22 12L18 16M22 12H2M6 8L2 12M2 12L6 16", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }));
|
|
4003
|
+
}
|
|
4004
|
+
function MoneyBagIcon({ className, size = "24", }) {
|
|
4005
|
+
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.5 8H14.5M9.5 8C9.5 8 3.99996 11 4 16C4.00003 20.0207 7.97931 21 12 21C16.0207 21 20 20.0207 20 16C20 11 14.5 8 14.5 8M9.5 8L8.55725 5.48601C8.23089 4.6157 8.56249 3.64123 9.45158 3.37016C10.1074 3.1702 10.9686 3 12 3C13.0314 3 13.8926 3.1702 14.5484 3.37016C15.4375 3.64123 15.7691 4.6157 15.4427 5.48601L14.5 8", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }));
|
|
4006
|
+
}
|
|
3996
4007
|
|
|
3997
4008
|
function EmptyHeartIcon({ className }) {
|
|
3998
4009
|
return (jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", className: className, children: jsx("path", { d: "M21 10C21 15.75 12.75 20 12 20C11.25 20 3 15.75 3 10C3 6 5.5 4 8 4C10.5 4 12 5.5 12 5.5C12 5.5 13.5 4 16 4C18.5 4 21 6 21 10Z", stroke: "currentColor", strokeWidth: "2", strokeLinejoin: "round" }) }));
|
|
@@ -4333,21 +4344,19 @@ const extraPaddingMap = {
|
|
|
4333
4344
|
"outline-lg": "3px",
|
|
4334
4345
|
};
|
|
4335
4346
|
function ImageStack(_a) {
|
|
4336
|
-
var { imageUrls, spacing, stackOnTop = true, addExtraPadding, removeDuplicates = false } = _a, imageProps = __rest$1(_a, ["imageUrls", "spacing", "stackOnTop", "addExtraPadding", "removeDuplicates"]);
|
|
4347
|
+
var { imageUrls, spacing, stackOnTop = true, addExtraPadding, removeDuplicates = false, containerProps } = _a, imageProps = __rest$1(_a, ["imageUrls", "spacing", "stackOnTop", "addExtraPadding", "removeDuplicates", "containerProps"]);
|
|
4337
4348
|
const imagesToRender = removeDuplicates ? [...new Set(imageUrls)] : imageUrls;
|
|
4338
|
-
return (jsx("div", { style: {
|
|
4349
|
+
return (jsx("div", Object.assign({}, containerProps, { style: Object.assign(Object.assign({}, containerProps === null || containerProps === void 0 ? void 0 : containerProps.style), {
|
|
4339
4350
|
// @ts-expect-error Custom CSS property
|
|
4340
|
-
"--image-stack-spacing": spacing,
|
|
4341
|
-
padding: addExtraPadding && imageProps.border
|
|
4351
|
+
"--image-stack-spacing": spacing, padding: addExtraPadding && imageProps.border
|
|
4342
4352
|
? extraPaddingMap[imageProps.border]
|
|
4343
|
-
: undefined,
|
|
4344
|
-
}, className: "tw-flex tw-items-center tw-space-x-[--image-stack-spacing]", children: imagesToRender.map((url, index, self) => (jsx(Image$1, Object.assign({ src: url, containerProps: stackOnTop
|
|
4353
|
+
: undefined }), className: cn("tw-flex tw-items-center tw-space-x-[--image-stack-spacing]", containerProps === null || containerProps === void 0 ? void 0 : containerProps.className), children: imagesToRender.map((url, index, self) => (jsx(Image$1, Object.assign({ src: url, containerProps: stackOnTop
|
|
4345
4354
|
? {
|
|
4346
4355
|
style: {
|
|
4347
4356
|
zIndex: self.length - index,
|
|
4348
4357
|
},
|
|
4349
4358
|
}
|
|
4350
|
-
: undefined }, imageProps), index))) }));
|
|
4359
|
+
: undefined }, imageProps), index))) })));
|
|
4351
4360
|
}
|
|
4352
4361
|
|
|
4353
4362
|
function Chip(_a) {
|
|
@@ -19472,7 +19481,7 @@ function MenuItem({ label, imageUrl, icon }) {
|
|
|
19472
19481
|
return (jsxs("li", { className: "tw-mx-squid-xxs tw-inline-flex tw-max-h-list-item-small tw-items-center tw-justify-start tw-gap-squid-xxs tw-rounded-squid-xs tw-bg-grey-900 tw-py-squid-xxs tw-pl-squid-xxs tw-pr-squid-xl tw-text-grey-300", children: [jsx("div", { className: "tw-h-squid-m tw-w-squid-m", children: imageUrl ? (jsx("img", { className: "tw-h-full tw-w-full tw-rounded-squid-xxs", src: imageUrl, alt: "" })) : icon ? (icon) : null }), jsx(CaptionText, { children: label })] }));
|
|
19473
19482
|
}
|
|
19474
19483
|
|
|
19475
|
-
const
|
|
19484
|
+
const containerPaddingClassNameMap = {
|
|
19476
19485
|
small: "tw-px-squid-xs",
|
|
19477
19486
|
large: "tw-px-squid-0",
|
|
19478
19487
|
};
|
|
@@ -19484,9 +19493,15 @@ function SmallBodyText(props) {
|
|
|
19484
19493
|
return jsx(BodyText, Object.assign({ size: "small" }, props));
|
|
19485
19494
|
}
|
|
19486
19495
|
function PropertyListItem(_a) {
|
|
19487
|
-
var { isLoading = false, label, detail, icon, className, variant = "small", showGradientBg = true, labelClassName, iconClassName, detailClassName, tooltip } = _a, props = __rest$1(_a, ["isLoading", "label", "detail", "icon", "className", "variant", "showGradientBg", "labelClassName", "iconClassName", "detailClassName", "tooltip"]);
|
|
19496
|
+
var { isLoading = false, label, detail, icon, className, variant = "small", showGradientBg = true, labelClassName, iconClassName, detailClassName, tooltip, collapsibleContent, addExtraPadding = true } = _a, props = __rest$1(_a, ["isLoading", "label", "detail", "icon", "className", "variant", "showGradientBg", "labelClassName", "iconClassName", "detailClassName", "tooltip", "collapsibleContent", "addExtraPadding"]);
|
|
19497
|
+
const [isCollapsed, setIsCollapsed] = useState(true);
|
|
19498
|
+
const handleToggleCollapsed = useCallback(() => {
|
|
19499
|
+
setIsCollapsed((prev) => !prev);
|
|
19500
|
+
}, []);
|
|
19488
19501
|
const Text = variant === "small" ? CaptionText : SmallBodyText;
|
|
19489
|
-
|
|
19502
|
+
const isCollapsible = !!collapsibleContent;
|
|
19503
|
+
const ContentWrapperTag = isCollapsible ? "button" : "div";
|
|
19504
|
+
return (jsx("li", Object.assign({}, props, { className: cn("tw-flex tw-w-full tw-gap-squid-xs tw-rounded-squid-xs tw-text-grey-300", showGradientBg && "squid-property-row-bg", addExtraPadding && containerPaddingClassNameMap[variant], className), children: jsxs(ContentWrapperTag, { onClick: isCollapsible ? handleToggleCollapsed : undefined, className: "tw-w-full tw-rounded-squid-xs", children: [jsxs("div", { className: cn("tw-flex tw-h-squid-l tw-w-full tw-items-center tw-justify-between tw-gap-squid-xs", childrenVariantClassNameMap[variant]), children: [jsx("div", { className: cn("tw-w-6 tw-text-grey-500", iconClassName), children: icon }), jsxs(Text, { className: cn("tw-flex tw-min-w-fit tw-flex-1 tw-gap-squid-xxs tw-text-grey-500", labelClassName), children: [jsx(TextSkeleton, { isLoading: isLoading, children: label }), !!tooltip && (jsx(Tooltip, Object.assign({}, tooltip, { children: jsx(HelpIcon, { className: "tw-cursor-help tw-text-grey-600 hover:tw-text-grey-500" }) })))] }), jsx(Text, { truncate: variant === "small" || undefined, className: cn("tw-flex tw-text-grey-300", detailClassName), children: jsx(TextSkeleton, { isLoading: isLoading, children: detail }) }), isCollapsible && (jsx(ChevronLargeRightIcon, { className: cn("tw-text-grey-600 tw-duration-generic", !isCollapsed && "tw-rotate-90"), size: "16" }))] }), isCollapsible && (jsx(Collapse, { collapsed: isCollapsed, children: collapsibleContent }))] }) })));
|
|
19490
19505
|
}
|
|
19491
19506
|
|
|
19492
19507
|
function RouteStep({ imageUrl, descriptionBlocks, subtitle, showStepSeparator = false, }) {
|
|
@@ -27782,22 +27797,6 @@ function Tab(_a) {
|
|
|
27782
27797
|
}, children: [jsx(BodyText, { size: size, children: label }), !props.disabled && (jsx("span", { className: cn("tw-absolute tw-w-[calc(100%+20px)] tw-rounded-squid-s tw-p-squid-xs group-hover/tab-button:tw-bg-material-light-thin", size === "small" ? "tw-h-squid-l" : "tw-h-squid-xl") }))] })));
|
|
27783
27798
|
}
|
|
27784
27799
|
|
|
27785
|
-
function AssetsView({ chains, favoriteTokens, popularTokens, userTokens, }) {
|
|
27786
|
-
const matchesMobileLg = useMediaQuery(MEDIA_QUERIES.MOBILE_LG.media);
|
|
27787
|
-
return (jsxs(ProductCard, { children: [jsx(NavigationBar, { displayBackButton: true, subtitle: "Select a token to receive" }), jsx("div", { className: "tw-max-h-[60px] tw-px-squid-m tw-py-squid-xs", children: jsx(Input, {}) }), jsx(BorderedContainer, { className: "!tw-grid tw-overflow-hidden", children: jsxs("div", { className: cn("tw-grid tw-overflow-hidden", matchesMobileLg
|
|
27788
|
-
? "tw-grid-cols-[180px_299px]"
|
|
27789
|
-
: "tw-grid-cols-[70px_1fr]"), children: [jsxs("div", { style: {
|
|
27790
|
-
scrollbarWidth: "none",
|
|
27791
|
-
}, className: cn("tw-flex tw-flex-col tw-gap-squid-xxs tw-overflow-y-auto tw-overflow-x-hidden", matchesMobileLg
|
|
27792
|
-
? "tw-w-[180px] tw-max-w-[180px] tw-pt-0"
|
|
27793
|
-
: "tw-w-[70px] tw-max-w-[70px] tw-pt-squid-xs"), children: [jsx(SectionTitle, { title: "Chains", icon: jsx(ChainLink, {}), className: cn(matchesMobileLg ? "tw-flex" : "tw-hidden") }), jsxs(List, { children: [jsx(ListItem, { size: "small", mainIcon: jsx("span", { className: "tw-flex tw-h-squid-l tw-w-squid-l tw-flex-1 tw-items-center tw-justify-center tw-rounded-squid-xs tw-bg-royal-500 tw-text-[#FBFBFD]", children: jsx(ChainLink, { size: "24" }) }), itemTitle: "All Chains", compactOnMobile: true, onClick: () => { } }), chains.map((item) => (jsx(ListItem, { size: "small", mainImageUrl: item.iconUrl, itemTitle: item.name, detail: item.name, compactOnMobile: true, onClick: () => { } }, item.name)))] })] }), jsxs("div", { style: {
|
|
27794
|
-
scrollbarWidth: "none",
|
|
27795
|
-
}, className: cn("tw-flex tw-flex-col tw-gap-squid-xxs tw-overflow-y-auto tw-overflow-x-hidden", matchesMobileLg ? "tw-w-[299px] tw-max-w-[299px]" : "tw-w-full"), children: [jsx(SectionTitle, { title: "Favorite tokens", icon: jsx(HeartSmallIcon, {}) }), jsx(List, { children: favoriteTokens.map((favToken) => (jsx(ListItem, { size: "large", mainImageUrl: favToken.iconUrl, secondaryImageUrl: favToken.iconUrl, itemTitle: favToken.name, subtitle: favToken.symbol, rounded: "full", onClick: () => { }, dropdownMenuContent: jsx(Fragment, { children: jsx(DropdownMenuItem, { label: "Add to favorites", icon: jsx(FilledHeartIcon, {}) }) }) }, favToken.name))) }), jsx(SectionTitle, { title: "Your tokens loading", icon: jsx(CoinsIcon, {}) }), jsx(List, { children: userTokens.map((userToken) => (jsx(ListItem, { size: "large", mainImageUrl: userToken.iconUrl, secondaryImageUrl: userToken.iconUrl, itemTitle: userToken.name, subtitle: `${userToken.balance} ${userToken.symbol}`, icon: jsx(EmptyHeartIcon, { className: "tw-text-status-negative" }), rounded: "full", onClick: () => { }, loading: { subtitle: userToken.symbol } }, userToken.name))) }), jsx(SectionTitle, { title: "Your tokens & balance", icon: jsx(CoinsIcon, {}) }), jsx(List, { children: userTokens.map((userToken) => (jsx(ListItem, { size: "large", mainImageUrl: userToken.iconUrl, secondaryImageUrl: userToken.iconUrl, itemTitle: userToken.name, subtitle: `${userToken.balance} ${userToken.symbol}`, icon: jsx(EmptyHeartIcon, { className: "tw-text-status-negative" }), rounded: "full", onClick: () => { } }, userToken.name))) }), jsx(SectionTitle, { title: "Popular tokens", icon: jsx(SparkleIcon, {}) }), jsx(List, { children: popularTokens.map((popToken) => (jsx(ListItem, { size: "large", mainImageUrl: popToken.iconUrl, secondaryImageUrl: popToken.iconUrl, itemTitle: popToken.name, subtitle: popToken.symbol, icon: jsx(EmptyHeartIcon, { className: "tw-text-status-negative" }), rounded: "full", onClick: () => { } }, popToken.name))) })] })] }) })] }));
|
|
27796
|
-
}
|
|
27797
|
-
const List = ({ children }) => {
|
|
27798
|
-
return (jsx("ul", { className: "tw-flex tw-flex-col tw-gap-squid-xxs tw-pb-squid-xs", children: children }));
|
|
27799
|
-
};
|
|
27800
|
-
|
|
27801
27800
|
function useCountdown(initialSeconds) {
|
|
27802
27801
|
const [secondsLeft, setSecondsLeft] = useState(initialSeconds);
|
|
27803
27802
|
useEffect(() => {
|
|
@@ -27820,7 +27819,7 @@ function DepositAddressView({ isOpen = true, fromToken, toToken, handleClose, fr
|
|
|
27820
27819
|
}, borderType: "outline", children: [jsxs("div", { className: "tw-relative tw-flex tw-h-[160px] tw-w-full tw-items-center tw-justify-center tw-rounded-tl-modal tw-rounded-tr-modal tw-bg-grey-900 tw-py-squid-s tw-text-material-light-thin", style: {
|
|
27821
27820
|
// box shadow simulating bottom outline (we do not use css outline because cannot apply it to only one side)
|
|
27822
27821
|
boxShadow: "0 1px 0 currentColor",
|
|
27823
|
-
}, children: [jsx("div", { className: "tw-absolute tw-right-squid-xs tw-top-squid-xs", children: jsx(Button$1, { size: "md", variant: "secondary", label: "Copy" }) }), headerContent] }), jsx("div", { className: "tw-relative tw-flex tw-h-squid-m tw-w-full tw-items-end tw-justify-between tw-self-stretch tw-px-squid-m", children: jsx(Image$1, { src: fromToken.logoUrl, rounded: "full", shadow: true, size: "xlarge" }) }), jsx(TxProgressViewHeader, { title: title, description: description, isWarning: true }), jsxs("ul", { className: "tw-flex tw-w-full tw-flex-col tw-items-center tw-justify-start tw-gap-squid-xxs tw-overflow-auto tw-rounded-squid-l tw-pb-squid-s tw-scrollbar-hidden", children: [jsx(PropertyListItem, { icon: jsx(WalletFilledIcon, { size: "24" }), label: "Deposit address", detail: jsx(HashLink, { className: "tw-text-royal-500", formattedHash: depositAddressFormatted, hash: depositAddress, showCopyButton: true, copyIconSize: "24" }), tooltip: (tooltips === null || tooltips === void 0 ? void 0 : tooltips.depositAddress)
|
|
27822
|
+
}, children: [jsx("div", { className: "tw-absolute tw-right-squid-xs tw-top-squid-xs", children: jsx(Button$1, { size: "md", variant: "secondary", label: "Copy" }) }), headerContent] }), jsx("div", { className: "tw-relative tw-flex tw-h-squid-m tw-w-full tw-items-end tw-justify-between tw-self-stretch tw-px-squid-m", children: jsx(Image$1, { src: fromToken.logoUrl, rounded: "full", shadow: true, size: "xlarge" }) }), jsx(TxProgressViewHeader, { title: title, description: description, isWarning: true }), jsxs("ul", { className: "squid-property-gradient-bg-even-container tw-flex tw-w-full tw-flex-col tw-items-center tw-justify-start tw-gap-squid-xxs tw-overflow-auto tw-rounded-squid-l tw-pb-squid-s tw-scrollbar-hidden", children: [jsx(PropertyListItem, { icon: jsx(WalletFilledIcon, { size: "24" }), label: "Deposit address", detail: jsx(HashLink, { className: "tw-text-royal-500", formattedHash: depositAddressFormatted, hash: depositAddress, showCopyButton: true, copyIconSize: "24" }), tooltip: (tooltips === null || tooltips === void 0 ? void 0 : tooltips.depositAddress)
|
|
27824
27823
|
? {
|
|
27825
27824
|
tooltipContent: tooltips.depositAddress,
|
|
27826
27825
|
tooltipWidth: "max",
|
|
@@ -27837,164 +27836,6 @@ function TimeRemaining({ timeRemainingSeconds, tooltipContent, }) {
|
|
|
27837
27836
|
: undefined }));
|
|
27838
27837
|
}
|
|
27839
27838
|
|
|
27840
|
-
function MainView({ isLoading = false }) {
|
|
27841
|
-
return (jsxs(ProductCard, { children: [jsx(NavigationBar, { isLoading: isLoading, title: "Swap", actions: [
|
|
27842
|
-
{
|
|
27843
|
-
labelOrIcon: jsx(ClockOutlineIcon, {}),
|
|
27844
|
-
id: "history",
|
|
27845
|
-
tooltip: {
|
|
27846
|
-
tooltipContent: "Swap history",
|
|
27847
|
-
},
|
|
27848
|
-
},
|
|
27849
|
-
{
|
|
27850
|
-
labelOrIcon: jsx(SettingsGearIcon, {}),
|
|
27851
|
-
id: "settings",
|
|
27852
|
-
tooltip: {
|
|
27853
|
-
tooltipContent: "Swap preferences",
|
|
27854
|
-
},
|
|
27855
|
-
},
|
|
27856
|
-
] }), jsx(SwapConfiguration, { isLoading: isLoading, direction: "from", chain: {
|
|
27857
|
-
iconUrl: "https://raw.githubusercontent.com/0xsquid/assets/main/images/tokens/blast.svg",
|
|
27858
|
-
bgColor: "#fcfc03",
|
|
27859
|
-
}, token: {
|
|
27860
|
-
iconUrl: "https://raw.githubusercontent.com/0xsquid/assets/main/images/tokens/eth.svg",
|
|
27861
|
-
symbol: "ETH",
|
|
27862
|
-
bgColor: "#627eea",
|
|
27863
|
-
textColor: "#fff",
|
|
27864
|
-
decimals: 18,
|
|
27865
|
-
}, priceImpactPercentage: "0.3", balance: "4.57", walletButton: {
|
|
27866
|
-
address: "so-so.eth",
|
|
27867
|
-
onClick: () => { },
|
|
27868
|
-
tooltip: {
|
|
27869
|
-
tooltipContent: "Connect wallet",
|
|
27870
|
-
},
|
|
27871
|
-
}, assetsButton: {
|
|
27872
|
-
tooltip: {
|
|
27873
|
-
tooltipContent: "Select token",
|
|
27874
|
-
},
|
|
27875
|
-
}, balanceButton: {
|
|
27876
|
-
tooltip: {
|
|
27877
|
-
tooltipContent: "Max balance",
|
|
27878
|
-
},
|
|
27879
|
-
}, inputModeButton: {
|
|
27880
|
-
usdModeTooltip: {
|
|
27881
|
-
tooltipContent: "Enter token amount",
|
|
27882
|
-
},
|
|
27883
|
-
tokenModeTooltip: {
|
|
27884
|
-
tooltipContent: "Enter in USD",
|
|
27885
|
-
},
|
|
27886
|
-
} }), jsx(DetailsToolbar, { flipButton: {
|
|
27887
|
-
isDisabled: true,
|
|
27888
|
-
tooltip: {
|
|
27889
|
-
tooltipContent: "Not enough USDC to flip the swap",
|
|
27890
|
-
displayDelayMs: 0,
|
|
27891
|
-
},
|
|
27892
|
-
}, stopsButton: {
|
|
27893
|
-
providers: [
|
|
27894
|
-
{
|
|
27895
|
-
logoUrl: "https://raw.githubusercontent.com/0xsquid/assets/main/images/png128/providers/uniswap.png",
|
|
27896
|
-
key: "uniswap",
|
|
27897
|
-
},
|
|
27898
|
-
{
|
|
27899
|
-
logoUrl: "https://raw.githubusercontent.com/0xsquid/assets/main/images/png128/providers/axelar.png",
|
|
27900
|
-
key: "axelar",
|
|
27901
|
-
},
|
|
27902
|
-
],
|
|
27903
|
-
tooltip: {
|
|
27904
|
-
tooltipContent: "Open route preview",
|
|
27905
|
-
displayDelayMs: 700,
|
|
27906
|
-
},
|
|
27907
|
-
}, feeButton: {
|
|
27908
|
-
feeInUsd: "0.4",
|
|
27909
|
-
onClick: () => { },
|
|
27910
|
-
tooltip: {
|
|
27911
|
-
tooltipContent: "View fees",
|
|
27912
|
-
},
|
|
27913
|
-
}, isLoading: isLoading, isEmpty: isLoading }), jsx(SwapConfiguration, { isLoading: isLoading, direction: "to", chain: {
|
|
27914
|
-
iconUrl: "https://raw.githubusercontent.com/0xsquid/assets/main/images/tokens/avax.svg",
|
|
27915
|
-
bgColor: "#e84142",
|
|
27916
|
-
}, token: {
|
|
27917
|
-
iconUrl: "https://raw.githubusercontent.com/0xsquid/assets/main/images/tokens/usdc.svg",
|
|
27918
|
-
symbol: "USDC",
|
|
27919
|
-
bgColor: "#2775ca",
|
|
27920
|
-
textColor: "#fff",
|
|
27921
|
-
decimals: 6,
|
|
27922
|
-
}, priceImpactPercentage: isLoading ? undefined : "7.2", balance: "2854", walletButton: {
|
|
27923
|
-
address: "so-so.eth",
|
|
27924
|
-
onClick: () => { },
|
|
27925
|
-
tooltip: {
|
|
27926
|
-
tooltipContent: "Connect wallet",
|
|
27927
|
-
},
|
|
27928
|
-
}, amount: isLoading ? undefined : "100", assetsButton: {
|
|
27929
|
-
tooltip: {
|
|
27930
|
-
tooltipContent: "Select token",
|
|
27931
|
-
},
|
|
27932
|
-
}, balanceButton: {
|
|
27933
|
-
tooltip: {
|
|
27934
|
-
tooltipContent: "Max balance",
|
|
27935
|
-
},
|
|
27936
|
-
}, inputModeButton: {
|
|
27937
|
-
usdModeTooltip: {
|
|
27938
|
-
tooltipContent: "Enter token amount",
|
|
27939
|
-
},
|
|
27940
|
-
tokenModeTooltip: {
|
|
27941
|
-
tooltipContent: "Enter in USD",
|
|
27942
|
-
},
|
|
27943
|
-
} }), jsx("div", { className: "tw-h-full tw-max-h-[80px] tw-px-squid-m tw-pb-squid-m", children: jsx(Button$1, { variant: isLoading ? "tertiary" : "primary", size: "lg", label: "Swap", isLoading: isLoading }) })] }));
|
|
27944
|
-
}
|
|
27945
|
-
|
|
27946
|
-
function RecipientView({ type }) {
|
|
27947
|
-
return (jsxs(ProductCard, { children: [jsx(NavigationBar, { title: type === "paymentMethod" ? "Pay" : "Receive", displayBackButton: true }), jsx(BorderedContainer, { children: jsx(FlexContainer, { children: type === "paymentMethod" || type === "recipientEmpty" ? (jsxs(Fragment, { children: [jsx(SectionTitle, { title: "Your wallet", icon: jsx(PunkIcon, {}) }), jsx(ListItem, { itemTitle: "so-so.eth", subtitle: "0x2276\u2026F3c56", mainImageUrl: "/assets/images/avatar.png", size: "large", className: "tw-w-full tw-max-w-none", onClick: () => { }, detail: "Connected" }), jsx("div", { className: "tw-flex tw-w-full tw-items-center tw-justify-center tw-px-squid-m tw-pb-squid-s tw-pt-squid-xxs", children: jsx(Button$1, { size: "md", variant: "primary", label: "Change wallet", className: "tw-w-full", containerClassName: "tw-w-full" }) })] })) : type === "recipientTypingEns" ? (jsxs(Fragment, { children: [jsx(SearchAddress, { type: type }), jsx(ListItem, { itemTitle: "souljabags.eth", subtitle: "0x25c9\u202623d5", mainImageUrl: "/assets/images/punks.png", size: "large", className: "tw-w-full tw-max-w-none", onClick: () => { } }), jsx(ListItem, { itemTitle: "souljaboy.eth", subtitle: "0x0ec8\u202604c1", mainIcon: jsx("div", { className: "tw-flex tw-h-full tw-items-center tw-justify-center tw-rounded-squid-xs tw-bg-royal-500 tw-text-grey-100", children: jsx(PunkIcon, { size: "30" }) }), size: "large", className: "tw-w-full tw-max-w-none", onClick: () => { } })] })) : type === "recipientTypingAddress" ? (jsx(SearchAddress, { type: type })) : null }) }), type === "paymentMethod" ? (jsx(BorderedContainer, { className: "tw-flex-1 tw-pt-squid-xs", children: jsxs(FlexContainer, { children: [jsx(SectionTitle, { title: "Centralized Exchange", icon: type === "paymentMethod" ? jsx(BankIcon, {}) : jsx(WalletIcon, {}) }), jsx(DepositSection, {})] }) })) : type === "recipientEmpty" ? (jsx(BorderedContainer, { className: "tw-flex-1 tw-pt-squid-xs", children: jsxs(FlexContainer, { children: [jsx(SearchAddress, { type: type }), jsx("div", { className: "tw-flex tw-h-full tw-w-full tw-flex-1 tw-flex-col tw-items-center tw-justify-center tw-gap-squid-xxs tw-self-stretch tw-px-squid-xxl tw-py-squid-xl", children: jsx(CaptionText, { className: "tw-max-w-[200px] tw-text-center tw-text-grey-500", children: "Wallets you add and swap to will appear here" }) })] }) })) : type === "recipientTypingEns" || type === "recipientTypingAddress" ? (jsx("div", {})) : null, " "] }));
|
|
27948
|
-
}
|
|
27949
|
-
const FlexContainer = ({ children }) => (jsx("div", { className: "tw-flex tw-h-full tw-flex-1 tw-flex-col tw-items-center tw-gap-squid-xxs tw-px-0 mobile-lg:tw-px-squid-xs", children: children }));
|
|
27950
|
-
const DepositSection = () => {
|
|
27951
|
-
return (jsxs(Fragment, { children: [jsx(ListItem, { itemTitle: "Deposit", mainIcon: jsx("div", { className: "tw-flex tw-h-full tw-items-center tw-justify-center tw-rounded-squid-xs tw-bg-royal-500 tw-text-grey-100", children: jsx(CoinsAddIcon, {}) }), className: "tw-w-full tw-max-w-none", onClick: () => { } }), jsx(CaptionText, { className: "tw-px-squid-m tw-py-squid-xxs tw-text-grey-500", children: "In case of swapping from a centralized exchange, you can send your tokens to a temporary deposit account that will handle the swap instead." }), jsx("div", { className: "tw-flex tw-w-full tw-items-center tw-justify-center tw-px-squid-m tw-pb-squid-s tw-pt-squid-xxs", children: jsx(Button$1, { size: "md", variant: "tertiary", label: "Learn more", className: "tw-w-full", containerClassName: "tw-w-full" }) })] }));
|
|
27952
|
-
};
|
|
27953
|
-
const SearchAddress = ({ type }) => {
|
|
27954
|
-
return (jsxs(Fragment, { children: [jsx(SectionTitle, { title: "Custom wallet", icon: jsx(WalletIcon, {}), accessory: type === "recipientTypingEns"
|
|
27955
|
-
? null
|
|
27956
|
-
: "CEX addresses are not supported" }), jsxs("nav", { className: "tw-flex tw-w-full tw-items-center tw-gap-squid-xxs tw-px-squid-m tw-py-squid-xxs", children: [type === "recipientEmpty" ? (jsx(Input, { className: "tw-flex-1", placeholder: "Address on Blast", actionButtonProps: {
|
|
27957
|
-
label: "Paste",
|
|
27958
|
-
variant: "tertiary",
|
|
27959
|
-
}, icon: jsx("img", { src: "/assets/images/blast.jpg", className: "tw-rounded-squid-xxs" }) })) : type === "recipientTypingEns" ? (jsx(Input, { className: "tw-flex-1", placeholder: "Address on Blast", value: "souljab", actionButtonProps: {
|
|
27960
|
-
label: "Paste",
|
|
27961
|
-
variant: "tertiary",
|
|
27962
|
-
}, icon: jsx(Loader, {}) })) : type === "recipientTypingAddress" ? (jsx(Input, { className: "tw-flex-1", placeholder: "Address on Blast", value: "0xA7D7079b0FEaD91F3e65f86E8915Cb59c1a4C664", actionButtonProps: {
|
|
27963
|
-
label: "Paste",
|
|
27964
|
-
variant: "tertiary",
|
|
27965
|
-
}, 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" })] })] }));
|
|
27966
|
-
};
|
|
27967
|
-
|
|
27968
|
-
const ROUTING_TOKEN_SUPPORT_ARTICLE = "https://support.squidrouter.com/squid-overview/liquidity-pools/what-is-a-routing-token";
|
|
27969
|
-
|
|
27970
|
-
function SwapDetailsView({ isLoading, canToggleBoostMode = true, displayBoostMode = false, }) {
|
|
27971
|
-
const [isModalOpen, setIsModalOpen] = useState(true);
|
|
27972
|
-
return (jsx(Fragment, { children: jsxs(Modal, { isOpen: isModalOpen, onBackdropClick: () => {
|
|
27973
|
-
setIsModalOpen(false);
|
|
27974
|
-
}, 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", rel: "noreferrer", children: "Learn more" })] }) }) }) })] }), jsx(Button$1, { size: "lg", variant: "secondary", label: "Close", onClick: () => {
|
|
27975
|
-
setIsModalOpen(false);
|
|
27976
|
-
} })] }) }));
|
|
27977
|
-
}
|
|
27978
|
-
function Settings({ canToggleBoostMode }) {
|
|
27979
|
-
return (jsx("div", { className: "tw-flex tw-flex-col tw-items-start tw-justify-center tw-gap-squid-xxs tw-self-stretch tw-py-squid-xxs", children: jsx(SettingsItem, { icon: jsx(LightningIcon, { className: "tw-text-grey-500" }), label: "Boost", control: {
|
|
27980
|
-
type: "switch",
|
|
27981
|
-
checked: false,
|
|
27982
|
-
disabled: !canToggleBoostMode,
|
|
27983
|
-
onChange: console.log,
|
|
27984
|
-
tooltip: canToggleBoostMode
|
|
27985
|
-
? undefined
|
|
27986
|
-
: {
|
|
27987
|
-
tooltipWidth: "max",
|
|
27988
|
-
containerClassName: "tw-h-[30px]",
|
|
27989
|
-
tooltipContent: "Boost not supported for this route",
|
|
27990
|
-
},
|
|
27991
|
-
}, transparent: true, helpTooltip: {
|
|
27992
|
-
tooltipWidth: "max",
|
|
27993
|
-
tooltipClassName: "tw-left-[15px]",
|
|
27994
|
-
tooltipContent: (jsxs(Fragment, { children: [jsx(CaptionText, { children: "Boost by Squid reduces transaction times across chains down to" }), " ", jsx(CaptionText, { className: "tw-text-status-positive", children: "5-30 seconds" }), jsx(CaptionText, { children: ". It\u2019s currently only available for swaps below a value of" }), " ", jsx(CaptionText, { className: "tw-text-status-positive", children: "$20,000 USD" }), "."] })),
|
|
27995
|
-
} }) }));
|
|
27996
|
-
}
|
|
27997
|
-
|
|
27998
27839
|
var v$6 = "5.10.0";
|
|
27999
27840
|
var fr$6 = 25;
|
|
28000
27841
|
var ip$6 = 0;
|
|
@@ -69409,7 +69250,7 @@ function SwapProgressView({ steps, isOpen = true, handleClose, handleComplete, s
|
|
|
69409
69250
|
}, secondToken: {
|
|
69410
69251
|
bgColor: toToken.bgColor,
|
|
69411
69252
|
logoURI: toToken.logoUrl,
|
|
69412
|
-
} })) }), jsx(TxProgressViewHeader, { title: headerTitle, description: headerDescription }), jsxs("ul", { className: "tw-flex tw-w-full tw-flex-col tw-items-center tw-justify-center tw-gap-squid-xxs tw-rounded-squid-l tw-pb-squid-s tw-pt-squid-xs mobile-xs-height:tw-h-[195px] mobile-sm-height:tw-py-squid-s", children: [jsx(PropertyListItem, { icon: jsx(ArrowsSwapIcon, {}), label: "Swap", detail: jsx(Transfer, { from: jsx(IconLabel, { src: fromToken.logoUrl, rounded: "full", children: fromAmount }), to: jsx(IconLabel, { src: toToken.logoUrl, rounded: "full", children: toAmount }) }) }), jsx(PropertyListItem, { icon: jsx(ChainLink, { size: "24", strokeWidth: "2" }), label: "Chain", detail: jsx(Transfer, { from: jsxs(Fragment, { children: [jsx("img", { className: "tw-h-squid-m tw-w-squid-m tw-rounded-squid-xxs", src: fromChain.logoUrl }), jsx(CaptionText, { children: fromChain.networkName })] }), to: jsxs(Fragment, { children: [jsx("img", { className: "tw-h-squid-m tw-w-squid-m tw-rounded-squid-xxs", src: toChain.logoUrl }), jsx(CaptionText, { children: toChain.networkName })] }) }) }), jsx(PropertyListItem, { icon: jsx(WalletFilledIcon, { size: "24" }), label: "Wallet", detail: jsx(Transfer, { from: fromAddressFormatted, to: toAddressFormatted }) }), jsx(PropertyListItem, { icon: jsx(TimeFliesIcon, {}), label: "Time to complete", detail: swapState === SwapState.PROGRESS ? (jsx(Transfer, { from: timer, to: estimatedTimeToComplete })) : swapState === SwapState.COMPLETED ? (jsx(CaptionText, { children: timer })) : (jsx(CaptionText, { children: estimatedTimeToComplete })) })] })] }), jsx(TrackTransactionView, { ref: trackTransactionViewRef, onTxEnd: () => {
|
|
69253
|
+
} })) }), jsx(TxProgressViewHeader, { title: headerTitle, description: headerDescription }), jsxs("ul", { className: "squid-property-gradient-bg-odd-container tw-flex tw-w-full tw-flex-col tw-items-center tw-justify-center tw-gap-squid-xxs tw-rounded-squid-l tw-pb-squid-s tw-pt-squid-xs mobile-xs-height:tw-h-[195px] mobile-sm-height:tw-py-squid-s", children: [jsx(PropertyListItem, { icon: jsx(ArrowsSwapIcon, {}), label: "Swap", detail: jsx(Transfer, { from: jsx(IconLabel, { src: fromToken.logoUrl, rounded: "full", children: fromAmount }), to: jsx(IconLabel, { src: toToken.logoUrl, rounded: "full", children: toAmount }) }) }), jsx(PropertyListItem, { icon: jsx(ChainLink, { size: "24", strokeWidth: "2" }), label: "Chain", detail: jsx(Transfer, { from: jsxs(Fragment, { children: [jsx("img", { className: "tw-h-squid-m tw-w-squid-m tw-rounded-squid-xxs", src: fromChain.logoUrl }), jsx(CaptionText, { children: fromChain.networkName })] }), to: jsxs(Fragment, { children: [jsx("img", { className: "tw-h-squid-m tw-w-squid-m tw-rounded-squid-xxs", src: toChain.logoUrl }), jsx(CaptionText, { children: toChain.networkName })] }) }) }), jsx(PropertyListItem, { icon: jsx(WalletFilledIcon, { size: "24" }), label: "Wallet", detail: jsx(Transfer, { from: fromAddressFormatted, to: toAddressFormatted }) }), jsx(PropertyListItem, { icon: jsx(TimeFliesIcon, {}), label: "Time to complete", detail: swapState === SwapState.PROGRESS ? (jsx(Transfer, { from: timer, to: estimatedTimeToComplete })) : swapState === SwapState.COMPLETED ? (jsx(CaptionText, { children: timer })) : (jsx(CaptionText, { children: estimatedTimeToComplete })) })] })] }), jsx(TrackTransactionView, { ref: trackTransactionViewRef, onTxEnd: () => {
|
|
69413
69254
|
stopTimer();
|
|
69414
69255
|
}, onTxStart: () => {
|
|
69415
69256
|
startTimer();
|
|
@@ -69499,10 +69340,6 @@ function PropertiesSkeleton() {
|
|
|
69499
69340
|
return (jsx(PropertiesLayout, { children: Array.from({ length: 5 }, (_, i) => (jsx(PropertyListItem, { variant: "large", isLoading: true }, i))) }));
|
|
69500
69341
|
}
|
|
69501
69342
|
|
|
69502
|
-
function BridgeTransactionView({ title, hash, status, url, amount, token, fromChain, toChain, address, actions, fees, boosted, timeToComplete, }) {
|
|
69503
|
-
return (jsx(TransactionViewLayout, { header: jsx(BridgeHeader, { tokenLogoURI: token.logoURI, chainLogoURI: toChain.logoURI, title: title, hash: hash, url: url, status: status }), properties: jsx(BridgeProperties, { amount: amount, token: token, fromChain: fromChain, toChain: toChain, wallet: address, boosted: boosted, timeToComplete: timeToComplete }), actions: actions, fees: fees }));
|
|
69504
|
-
}
|
|
69505
|
-
|
|
69506
69343
|
function BuyNFTTransactionView({ title, hash, status, url, imageURI, collection, price, token, marketplace, fromChain, toChain, fromAddress, toAddress, boosted, timeToComplete, tokenId, nftType, actions, fees, }) {
|
|
69507
69344
|
return (jsx(TransactionViewLayout, { header: jsx(BuyNFTHeader, { imageUrl: imageURI, title: title, hash: hash, url: url, status: status }), properties: jsx(BuyNFTProperties, { title: title, imageURI: imageURI, collection: collection, price: price, token: token, marketplace: marketplace, fromChain: fromChain, toChain: toChain, fromAddress: fromAddress, toAddress: toAddress, boosted: boosted, timeToComplete: timeToComplete, tokenId: tokenId, nftType: nftType }), actions: actions, fees: fees }));
|
|
69508
69345
|
}
|
|
@@ -69515,6 +69352,10 @@ function SwapTransactionView({ title, hash, status, url, fromAmount, fromToken,
|
|
|
69515
69352
|
return (jsx(TransactionViewLayout, { header: jsx(SwapHeader, { fromToken: fromToken, toToken: toToken, title: title, hash: hash, url: url, status: status }), properties: jsx(SwapProperties, { fromAmount: fromAmount, fromToken: fromToken, toAmount: toAmount, toToken: toToken, fromChain: fromChain, toChain: toChain, fromAddress: fromAddress, toAddress: toAddress, exchangeRate: exchangeRate, boosted: boosted, timeToComplete: timeToComplete }), actions: actions, fees: fees }));
|
|
69516
69353
|
}
|
|
69517
69354
|
|
|
69355
|
+
function BridgeTransactionView({ title, hash, status, url, amount, token, fromChain, toChain, address, actions, fees, boosted, timeToComplete, }) {
|
|
69356
|
+
return (jsx(TransactionViewLayout, { header: jsx(BridgeHeader, { tokenLogoURI: token.logoURI, chainLogoURI: toChain.logoURI, title: title, hash: hash, url: url, status: status }), properties: jsx(BridgeProperties, { amount: amount, token: token, fromChain: fromChain, toChain: toChain, wallet: address, boosted: boosted, timeToComplete: timeToComplete }), actions: actions, fees: fees }));
|
|
69357
|
+
}
|
|
69358
|
+
|
|
69518
69359
|
const componentMap = {
|
|
69519
69360
|
swap: SwapTransactionView,
|
|
69520
69361
|
buy_nft: BuyNFTTransactionView,
|
|
@@ -69526,10 +69367,6 @@ function TransactionView({ type, props }) {
|
|
|
69526
69367
|
return jsx(Component, Object.assign({}, props));
|
|
69527
69368
|
}
|
|
69528
69369
|
|
|
69529
|
-
function WalletsView() {
|
|
69530
|
-
return (jsxs(Modal, { maxHeight: true, children: [jsxs(ModalContent, { addGap: true, children: [jsx("div", { className: "tw-px-squid-xs tw-py-squid-xxs", children: jsx(Input, { placeholder: "Select your wallet" }) }), jsxs("ul", { className: "tw-flex tw-flex-col tw-gap-squid-xxs tw-overflow-auto tw-py-squid-xxs", children: [jsx(ListItem, { icon: jsx("span", { className: "tw-text-material-light-average", children: jsx(ChevronLargeRightIcon, {}) }), className: "tw-bg-transparent tw-text-royal-500", detail: "Installed", itemTitle: jsx(BodyText, { size: "small", className: "!tw-leading-[13px] tw-text-grey-300", children: "Rainbow" }), mainImageUrl: "/assets/images/avatar.png" }), jsx(ListItem, { icon: jsx("span", { className: "tw-text-material-light-average", children: jsx(ChevronLargeRightIcon, {}) }), className: "tw-bg-transparent tw-text-royal-500", detail: "Installed", itemTitle: jsx(BodyText, { size: "small", className: "!tw-leading-[13px] tw-text-grey-300", children: "Metamask" }), mainImageUrl: "/assets/images/punks.png" }), jsx("span", { className: "tw-text-material-light-thin", children: jsx(ModalContentDivider, {}) }), jsx(ListItem, { icon: jsx("span", { className: "tw-text-material-light-average", children: jsx(ChevronLargeRightIcon, {}) }), className: "tw-bg-transparent tw-text-royal-500", subtitle: "Connect with an Injected Wallet", itemTitle: jsx(BodyText, { size: "small", className: "!tw-leading-[13px] tw-text-grey-300", children: "Browser Extension" }), mainImageUrl: "/assets/images/avatar.png" }), jsx(ListItem, { icon: jsx("span", { className: "tw-text-material-light-average", children: jsx(ChevronLargeRightIcon, {}) }), className: "tw-bg-transparent tw-text-royal-500", itemTitle: jsx(BodyText, { size: "small", className: "!tw-leading-[13px] tw-text-grey-300", children: "Metamask" }), mainImageUrl: "/assets/images/punks.png" }), " ", jsx(ListItem, { icon: jsx("span", { className: "tw-text-material-light-average", children: jsx(ChevronLargeRightIcon, {}) }), className: "tw-bg-transparent tw-text-royal-500", itemTitle: jsx(BodyText, { size: "small", className: "!tw-leading-[13px] tw-text-grey-300", children: "Rainbow" }), mainImageUrl: "/assets/images/avatar.png" }), jsx(ListItem, { icon: jsx("span", { className: "tw-text-material-light-average", children: jsx(ChevronLargeRightIcon, {}) }), className: "tw-bg-transparent tw-text-royal-500", itemTitle: jsx(BodyText, { size: "small", className: "!tw-leading-[13px] tw-text-grey-300", children: "Metamask" }), mainImageUrl: "/assets/images/punks.png" }), " ", jsx(ListItem, { icon: jsx("span", { className: "tw-text-material-light-average", children: jsx(ChevronLargeRightIcon, {}) }), className: "tw-bg-transparent tw-text-royal-500", itemTitle: jsx(BodyText, { size: "small", className: "!tw-leading-[13px] tw-text-grey-300", children: "Rainbow" }), mainImageUrl: "/assets/images/avatar.png" }), jsx(ListItem, { icon: jsx("span", { className: "tw-text-material-light-average", children: jsx(ChevronLargeRightIcon, {}) }), className: "tw-bg-transparent tw-text-royal-500", itemTitle: jsx(BodyText, { size: "small", className: "!tw-leading-[13px] tw-text-grey-300", children: "Metamask" }), mainImageUrl: "/assets/images/punks.png" }), " ", jsx(ListItem, { icon: jsx("span", { className: "tw-text-material-light-average", children: jsx(ChevronLargeRightIcon, {}) }), className: "tw-bg-transparent tw-text-royal-500", itemTitle: jsx(BodyText, { size: "small", className: "!tw-leading-[13px] tw-text-grey-300", children: "Rainbow" }), mainImageUrl: "/assets/images/avatar.png" }), jsx(ListItem, { icon: jsx("span", { className: "tw-text-material-light-average", children: jsx(ChevronLargeRightIcon, {}) }), className: "tw-bg-transparent tw-text-royal-500", itemTitle: jsx(BodyText, { size: "small", className: "!tw-leading-[13px] tw-text-grey-300", children: "Metamask" }), mainImageUrl: "/assets/images/punks.png" })] })] }), jsx(Button$1, { size: "lg", variant: "secondary", label: "Cancel" })] }));
|
|
69531
|
-
}
|
|
69532
|
-
|
|
69533
69370
|
var isMergeableObject = function isMergeableObject(value) {
|
|
69534
69371
|
return isNonNullObject(value)
|
|
69535
69372
|
&& !isSpecial(value)
|
|
@@ -69866,4 +69703,4 @@ function ThemeProvider(_a) {
|
|
|
69866
69703
|
return (jsx("div", Object.assign({}, props, { style: Object.assign(Object.assign({}, props.style), parsedStyle), "data-squid-theme-type": themeType, className: cn("tw-group tw-relative tw-flex tw-font-squid-main tw-h-d-screen mobile-lg:tw-h-auto", props.className), children: children })));
|
|
69867
69704
|
}
|
|
69868
69705
|
|
|
69869
|
-
export { ANIMATION_DURATIONS, AccountListItem, AccountsButton, ActionLayout, ActionLineOutRow, ActionProperties, ActionRow, ActionStatusRow, ActionWrapper, AddressButton, AnimationWrapper, Announcement, AppContainer, Approve, ApproveAction, ArrowBottomTopIcon, ArrowButton, ArrowCornerDownRightIcon, ArrowDownIcon, ArrowLeftIcon, ArrowOutOfBoxIcon, ArrowRightDownCircleIcon, ArrowRightDownIcon, ArrowRightIcon, ArrowRightUpCircleIcon, ArrowRightUpIcon, ArrowRotate, ArrowSplit, ArrowTriangle, ArrowUpIcon, ArrowWallDownIcon, ArrowsSwapIcon, AssetsButton,
|
|
69706
|
+
export { ANIMATION_DURATIONS, AccountListItem, AccountsButton, ActionLayout, ActionLineOutRow, ActionProperties, ActionRow, ActionStatusRow, ActionWrapper, AddressButton, AnimationWrapper, Announcement, AppContainer, Approve, ApproveAction, ArrowBottomTopIcon, ArrowButton, ArrowCornerDownRightIcon, ArrowDownIcon, ArrowExpandIcon, ArrowLeftIcon, ArrowOutOfBoxIcon, ArrowRightDownCircleIcon, ArrowRightDownIcon, ArrowRightIcon, ArrowRightUpCircleIcon, ArrowRightUpIcon, ArrowRotate, ArrowSplit, ArrowTriangle, ArrowUpIcon, ArrowWallDownIcon, ArrowsSwapIcon, AssetsButton, AtomIcon, BackpackIcon, BadgeImage, BankIcon, BellAlarmIcon, BlockSkeleton, BodyText, Boost, BoostBadge, BoostButton, BorderedContainer, Breadcrumb, BridgeAction, BridgeHeader, BridgeProperties, BrokenHeartIcon, BubblesIcon, Button$1 as Button, BuyNFTHeader, BuyNFTProperties, BuyNFTTransactionView, CSS_VARS, Calendar, CaptionText, CatSquareIcon, CelebrateIcon, ChainLink, Checkmark1Icon, Checkmark2Icon, ChevronArrowIcon, ChevronDownSmallIcon, ChevronGrabberVerticalIcon, ChevronLargeDownIcon, ChevronLargeRightIcon, ChevronRightSmallIcon, ChevronTopIcon, ChevronTopSmallIcon, Chip, CircleMinusIcon, CirclePlusIcon, CircleX, CircleXFilledIcon, ClockOutlineIcon, ClockSolidIcon, CodeBracketsIcon, CodeSolidSquareIcon, CoinsAddIcon, CoinsIcon, CoinsOutlinedIcon, Collapse, CollapsibleMenu, CollectionIcon, ColorPaletteIcon, CommandIcon, CompassRoundOutlinedIcon, CompassRoundSolidIcon, ConsoleIcon, Copy, CopyIcon, CopyOutlinedIcon, CrossAnimatedIcon, CrossedOutSunSolidIcon, DashboardFast, DepositAddressView, DescriptionBlocks, DetailsToolbar, DiscordIcon, DockIconAnalytics, DockIconCheckout, DockIconHelp, DockIconProfile, DockIconScan, DockIconSwap, DockSwapIcon, DollarOutlinedIcon, DollarSolidIcon, DotGrid1x3HorizontalIcon, DropdownMenu, DropdownMenuItem, DropdownMenuTitle, EmojiMeh, EmojiSadIcon, EmptyHeartIcon, ErrorMessage, EthereumIcon, ExplosionIcon, EyeOpenIcon, FavouriteFilterIcon, FeeButton, FeesAction, FeesLines, FeesTotal, FileDownloadIcon, FilledHeartIcon, FilterAscendingIcon, FilterButton, FilterIcon, FilterTimelineIcon, GasIcon, GhostIcon, GithubIcon, HashLink, HeadingText, HeartSmallIcon, HelpIcon, HighestPriceRangeIcon, HistoryItem, HomeIcon, IconButton, IconLabel, Image$1 as Image, ImageGroup, ImageIcon, ImageSparkle, ImageStack, ImageState, IncompleteAction, InfinityIcon, InfoBox, Inline, Input, InteractionHeader, InteractionProperties, InteractionTransactionView, Join, LaptopIcon, LightningIcon, LimitIcon, LinkIcon, ListItem, ListItemActionsButton, Loader, LoadingProvider, LoadingSkeleton, MEDIA_QUERIES, MarketCapIcon, MaxIcon, Menu, MenuItem, MenuSwapIcon, MirrorIcon, Modal, ModalContent, ModalContentDivider, MoneyBagIcon, MoonIcon, NavigationBar, NewsIcon, NewspaperIcon, NotAllowedIcon, NumericInput, PathSquareIcon, PauseIcon, PercentIcon, PhoneIcon, PieChartIcon, PipeSeparator, PlusIcon, PoopIcon, PowerIcon, PriceChange, ProductCard, ProfileHeader, ProfileHeaderBackground, PropertiesLayout, PropertyListItem, PunkIcon, QrCodeIcon, RangeInput, ReceiptBillIcon, ReceiveNFTAction, ReceiveTokensAction, RefreshIcon, ReorderIcon, RouteStep, STEP_ITEM_HEIGHT, SearchIcon, SectionTitle, SendTokensAction, SettingsButton, SettingsGearIcon, SettingsItem, SettingsSlider, SettingsSliderIcon, ShoppingBagIcon, SizeTransition, SmileFilledIcon, SmileIcon, SnapIcon, SortIcon, SparkleIcon, SparklesIcon, SquareArrowCenter, SquareArrowTopLeftIcon, SquareArrowTopRight2Icon, SquidLogo, SquidVector, StakeAction, StarLinesIcon, StartAction, StocksIcon, SuccessAction, SunIcon, SunOutlinedIcon, SunriseIcon, SunriseSmallIcon, SwapAction, SwapConfiguration, SwapErrorIcon, SwapHeader, SwapIcon, SwapInputsIcon, SwapProgressView, SwapProperties, SwapStepItem, SwapStepSeparator, SwapStepsCollapsed, SwapSuccessIcon, SwapTransactionView, SwapWarningIcon, Switch, Tab, Tabs, TagIcon, TagIconFilled, TextSkeleton, ThemePreference, ThemeProvider, ThumbsUp, Tick, TimeFliesIcon, Timeline, Timestamp, Toast, TokenDetailsView, TokenGroup, TokenGroups, TokenPair, Tooltip, TradingViewStepsIcon, TransactionAction, TransactionFilters, TransactionHeader, TransactionHeaderLayout, TransactionItem, TransactionProperties, TransactionSearch, TransactionState, TransactionView, TransactionViewLayout, Transfer, TranslateIcon, TriangleExclamation, TxProgressViewHeader, UnsupportedPairNotice, UsdAmount, WalletFilledIcon, WalletIcon, WalletLink, WrapAction, XSocial, adjustColorForContrast, baseTailwindConfig, blendColors, cn, darkTheme, getColorBrightness, getContrastColor, getHexColorFromOpacityPercentage, getWalletCardBackground, hexToRgb, isValidHexColor, lightTheme, linkActionTimelineProps, parseColor, parseSquidTheme, pxToRem, remToPx, rgbToHex, spacing$1 as spacing, statusTextClassMap, themeKeysToCssVariables, transactionErrorPauseAnimation, transactionFailureAnimation, transactionHalfSuccessAnimation, transactionPendingAnimation, transactionProcessingAnimation, transactionRejectedAnimation, transactionSuccessAnimation, useCollapsibleMenu, useDropdownMenu, useMediaQuery, useOnResize, useRect, useTimer, useUserTheme, useVersion };
|
|
@@ -105,3 +105,11 @@ export declare function QrCodeIcon({ size, className, }: {
|
|
|
105
105
|
size?: string;
|
|
106
106
|
className?: string;
|
|
107
107
|
}): import("react/jsx-runtime").JSX.Element;
|
|
108
|
+
export declare function ArrowExpandIcon({ className, size, }: {
|
|
109
|
+
className?: string;
|
|
110
|
+
size?: string;
|
|
111
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
112
|
+
export declare function MoneyBagIcon({ className, size, }: {
|
|
113
|
+
className?: string;
|
|
114
|
+
size?: string;
|
|
115
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
1
2
|
import { type ImageProps } from "../badges";
|
|
2
3
|
interface ImageStackProps extends ImageProps {
|
|
3
4
|
imageUrls: string[];
|
|
@@ -8,6 +9,7 @@ interface ImageStackProps extends ImageProps {
|
|
|
8
9
|
stackOnTop?: boolean;
|
|
9
10
|
addExtraPadding?: boolean;
|
|
10
11
|
removeDuplicates?: boolean;
|
|
12
|
+
containerProps?: React.HTMLAttributes<HTMLDivElement>;
|
|
11
13
|
}
|
|
12
|
-
export declare function ImageStack({ imageUrls, spacing, stackOnTop, addExtraPadding, removeDuplicates, ...imageProps }: ImageStackProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export declare function ImageStack({ imageUrls, spacing, stackOnTop, addExtraPadding, removeDuplicates, containerProps, ...imageProps }: ImageStackProps): import("react/jsx-runtime").JSX.Element;
|
|
13
15
|
export {};
|
|
@@ -12,5 +12,7 @@ export interface PropertyListItemProps extends ComponentProps<"li"> {
|
|
|
12
12
|
iconClassName?: string;
|
|
13
13
|
detailClassName?: string;
|
|
14
14
|
tooltip?: Omit<TooltipProps, "children">;
|
|
15
|
+
collapsibleContent?: React.ReactNode;
|
|
16
|
+
addExtraPadding?: boolean;
|
|
15
17
|
}
|
|
16
|
-
export declare function PropertyListItem({ isLoading, label, detail, icon, className, variant, showGradientBg, labelClassName, iconClassName, detailClassName, tooltip, ...props }: PropertyListItemProps): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export declare function PropertyListItem({ isLoading, label, detail, icon, className, variant, showGradientBg, labelClassName, iconClassName, detailClassName, tooltip, collapsibleContent, addExtraPadding, ...props }: PropertyListItemProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,14 +1,3 @@
|
|
|
1
|
-
export * from "./AssetsView";
|
|
2
1
|
export * from "./DepositAddressView";
|
|
3
|
-
export * from "./MainView";
|
|
4
|
-
export * from "./RecipientView";
|
|
5
|
-
export * from "./SwapDetailsView";
|
|
6
2
|
export * from "./SwapProgressView";
|
|
7
|
-
export * from "./TransactionView
|
|
8
|
-
export * from "./TransactionView/BridgeTransactionView";
|
|
9
|
-
export * from "./TransactionView/BuyNFTTransactionView";
|
|
10
|
-
export * from "./TransactionView/InteractionTransactionView";
|
|
11
|
-
export * from "./TransactionView/SwapTransactionView";
|
|
12
|
-
export * from "./TransactionView/TransactionView";
|
|
13
|
-
export * from "./TransactionView/TransactionViewLayout";
|
|
14
|
-
export * from "./WalletsView";
|
|
3
|
+
export * from "./TransactionView";
|