@0xsquid/ui 2.2.11 → 2.3.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.
Files changed (43) hide show
  1. package/dist/cjs/index.js +147 -64
  2. package/dist/cjs/types/components/badges/ImageGroup.d.ts +6 -0
  3. package/dist/cjs/types/components/badges/index.d.ts +1 -0
  4. package/dist/cjs/types/components/buttons/AccountsButton.d.ts +6 -0
  5. package/dist/cjs/types/components/buttons/index.d.ts +2 -1
  6. package/dist/cjs/types/components/icons/Arrow.d.ts +2 -3
  7. package/dist/cjs/types/components/icons/Generic.d.ts +15 -0
  8. package/dist/cjs/types/components/layout/ImageStack.d.ts +4 -2
  9. package/dist/cjs/types/components/layout/Modal.d.ts +2 -1
  10. package/dist/cjs/types/components/layout/TokenDetailsView.d.ts +11 -5
  11. package/dist/cjs/types/components/layout/Transfer.d.ts +1 -1
  12. package/dist/cjs/types/components/navigation/Tabs.d.ts +18 -0
  13. package/dist/cjs/types/components/navigation/index.d.ts +1 -0
  14. package/dist/cjs/types/components/typography/CaptionText.d.ts +2 -1
  15. package/dist/cjs/types/services/internal/colorService.d.ts +2 -1
  16. package/dist/cjs/types/stories/badges/ImageGroup.stories.d.ts +6 -0
  17. package/dist/cjs/types/stories/buttons/AccountsButton.stories.d.ts +6 -0
  18. package/dist/cjs/types/stories/lists/TokenGroup.stories.d.ts +2 -0
  19. package/dist/cjs/types/stories/navigation/Tabs.stories.d.ts +7 -0
  20. package/dist/cjs/types/stories/views/SwapProgressView.stories.d.ts +1 -1
  21. package/dist/esm/index.js +141 -65
  22. package/dist/esm/types/components/badges/ImageGroup.d.ts +6 -0
  23. package/dist/esm/types/components/badges/index.d.ts +1 -0
  24. package/dist/esm/types/components/buttons/AccountsButton.d.ts +6 -0
  25. package/dist/esm/types/components/buttons/index.d.ts +2 -1
  26. package/dist/esm/types/components/icons/Arrow.d.ts +2 -3
  27. package/dist/esm/types/components/icons/Generic.d.ts +15 -0
  28. package/dist/esm/types/components/layout/ImageStack.d.ts +4 -2
  29. package/dist/esm/types/components/layout/Modal.d.ts +2 -1
  30. package/dist/esm/types/components/layout/TokenDetailsView.d.ts +11 -5
  31. package/dist/esm/types/components/layout/Transfer.d.ts +1 -1
  32. package/dist/esm/types/components/navigation/Tabs.d.ts +18 -0
  33. package/dist/esm/types/components/navigation/index.d.ts +1 -0
  34. package/dist/esm/types/components/typography/CaptionText.d.ts +2 -1
  35. package/dist/esm/types/services/internal/colorService.d.ts +2 -1
  36. package/dist/esm/types/stories/badges/ImageGroup.stories.d.ts +6 -0
  37. package/dist/esm/types/stories/buttons/AccountsButton.stories.d.ts +6 -0
  38. package/dist/esm/types/stories/lists/TokenGroup.stories.d.ts +2 -0
  39. package/dist/esm/types/stories/navigation/Tabs.stories.d.ts +7 -0
  40. package/dist/esm/types/stories/views/SwapProgressView.stories.d.ts +1 -1
  41. package/dist/index.css +1 -1
  42. package/dist/index.d.ts +50 -17
  43. package/package.json +1 -1
package/dist/cjs/index.js CHANGED
@@ -3061,6 +3061,26 @@ const baseTailwindConfig = {
3061
3061
  transform: "translate3d(0, 650px, 0)",
3062
3062
  },
3063
3063
  },
3064
+ "slide-to-top-and-fade-in": {
3065
+ "0%": {
3066
+ transform: "translate3d(0, 650px, 0)",
3067
+ opacity: "0",
3068
+ },
3069
+ "100%": {
3070
+ transform: "translate3d(0, 0, 0)",
3071
+ opacity: "1",
3072
+ },
3073
+ },
3074
+ "slide-to-bottom-and-fade-out": {
3075
+ "0%": {
3076
+ transform: "translate3d(0, 0, 0)",
3077
+ opacity: "1",
3078
+ },
3079
+ "100%": {
3080
+ transform: "translate3d(0, 650px, 0)",
3081
+ opacity: "0",
3082
+ },
3083
+ },
3064
3084
  "expand-route": {
3065
3085
  "0%": {
3066
3086
  height: "60px",
@@ -3190,6 +3210,8 @@ const baseTailwindConfig = {
3190
3210
  "move-to-left-with-spring-bounce": `move-to-left-with-spring-bounce var(${CSS_VARS.MOVE_WITH_SPRING_BOUNCE_DURATION}, 0s) ease-out both`,
3191
3211
  "slide-to-top": `slide-to-top var(${CSS_VARS.SLIDE_TO_TOP_DURATION}, 0s) ${ANIMATION_TIMINGS.SHOW_ROUTE} both`,
3192
3212
  "slide-to-bottom": `slide-to-bottom var(${CSS_VARS.SLIDE_TO_BOTTOM_DURATION}, 0s) ${ANIMATION_TIMINGS.HIDE_ROUTE} both`,
3213
+ "slide-to-top-and-fade-in": `slide-to-top-and-fade-in var(${CSS_VARS.SLIDE_TO_TOP_DURATION}, 0s) ${ANIMATION_TIMINGS.SHOW_ROUTE} both`,
3214
+ "slide-to-bottom-and-fade-out": `slide-to-bottom-and-fade-out var(${CSS_VARS.SLIDE_TO_BOTTOM_DURATION}, 0s) ${ANIMATION_TIMINGS.HIDE_ROUTE} both`,
3193
3215
  "expand-route": `expand-route var(${CSS_VARS.EXPAND_ROUTE_DURATION}, 0s) ${ANIMATION_TIMINGS.EXPAND_ROUTE} both`,
3194
3216
  "collapse-route": `collapse-route var(${CSS_VARS.COLLAPSE_ROUTE_DURATION}, 0s) ${ANIMATION_TIMINGS.COLLAPSE_ROUTE} both`,
3195
3217
  "fade-in": `fade-in var(${CSS_VARS.FADE_IN_DURATION}, 0s) ease-out both`,
@@ -3588,13 +3610,14 @@ function BodyText(_a) {
3588
3610
 
3589
3611
  function CaptionText(_a) {
3590
3612
  var _b, _c;
3591
- var { children, bold = false, loading, tight = false } = _a, props = __rest$1(_a, ["children", "bold", "loading", "tight"]);
3613
+ var { children, bold = false, loading, tight = false, truncate = false } = _a, props = __rest$1(_a, ["children", "bold", "loading", "tight", "truncate"]);
3592
3614
  const boldClass = bold ? "!tw-font-bold" : "";
3593
3615
  const className = cn("tw-text-caption tw-font-caption tw-leading-caption", boldClass, tight && "!tw-leading-[1]", props.className);
3594
3616
  if ((_b = loading === null || loading === void 0 ? void 0 : loading.isLoading) !== null && _b !== void 0 ? _b : false) {
3595
3617
  return (jsxRuntime.jsx(TextSkeleton, { className: className, width: (_c = loading === null || loading === void 0 ? void 0 : loading.width) !== null && _c !== void 0 ? _c : "100%", isLoading: true }));
3596
3618
  }
3597
- return (jsxRuntime.jsx("span", Object.assign({}, props, { className: className, children: children })));
3619
+ return (jsxRuntime.jsx("span", Object.assign({}, props, { className: className, style: truncate
3620
+ ? Object.assign(Object.assign({}, props.style), { whiteSpace: "nowrap", overflow: "hidden", textOverflow: "ellipsis" }) : props.style, children: children })));
3598
3621
  }
3599
3622
 
3600
3623
  // font size, line height, and letter spacing classes
@@ -3612,6 +3635,14 @@ function IconLabel({ src, children, rounded }) {
3612
3635
  return (jsxRuntime.jsxs("div", { className: "tw-inline-flex tw-items-center tw-gap-squid-xxs", children: [src && jsxRuntime.jsx(Image$1, { src: src, rounded: rounded, size: "medium" }), typeof children === "string" ? (jsxRuntime.jsx(CaptionText, { children: children })) : (children)] }));
3613
3636
  }
3614
3637
 
3638
+ function ImageGroup({ imageUrls, badgeUrl }) {
3639
+ return (jsxRuntime.jsxs("div", { className: "tw-relative tw-flex tw-h-squid-xxl tw-w-squid-xxl tw-flex-shrink-0 tw-flex-wrap tw-content-center tw-items-center tw-justify-center tw-gap-0.5 tw-rounded-squid-s tw-border tw-border-solid tw-border-material-light-thin tw-bg-grey-700", children: [imageUrls.map((url) => (jsxRuntime.jsx(Image$1, { src: url, size: "medium", rounded: "xxs", style: {
3640
+ width: "24px",
3641
+ height: "24px",
3642
+ borderRadius: "7.5px",
3643
+ } }, url))), jsxRuntime.jsx("div", { className: "tw-absolute -tw-bottom-[1px] -tw-right-[1px] tw-bg-highlight-700", children: jsxRuntime.jsx(Image$1, { border: "outline-lg", src: badgeUrl, size: "medium", className: "tw-p-0.5" }) })] }));
3644
+ }
3645
+
3615
3646
  function Approve() {
3616
3647
  return (jsxRuntime.jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "30", height: "31", fill: "none", viewBox: "0 0 30 31", children: [jsxRuntime.jsx("path", { fill: "color(display-p3 0.7208 0.5750 0.9250)", d: "M0 5.5a5 5 0 015-5h20a5 5 0 015 5v20a5 5 0 01-5 5H5a5 5 0 01-5-5v-20z" }), jsxRuntime.jsx("path", { stroke: "color(display-p3 0.9840 0.9861 0.9904)", strokeLinejoin: "round", strokeWidth: "2", d: "M16.454 6.557L16 6.5c-.965 2.309-2.406 4.303-4.107 6.098-.558.589-.893 1.36-.893 2.172v6.455c0 .778.447 1.496 1.178 1.762 2.48.903 5.073 1.097 7.695.87 1.601-.14 2.856-1.376 3.21-2.944l.844-3.755A3 3 0 0021 13.5h-3l.949-3.084a3 3 0 00-2.495-3.86zM6 15.5a2 2 0 012-2 3 3 0 013 3v4a3 3 0 01-3 3 2 2 0 01-2-2v-6z" })] }));
3617
3648
  }
@@ -3640,8 +3671,8 @@ function ChevronTopSmallIcon() {
3640
3671
  function ChevronLargeDownIcon({ size = "24", className, }) {
3641
3672
  return (jsxRuntime.jsx("svg", { width: size, height: size, viewBox: "0 0 24 25", fill: "none", xmlns: "http://www.w3.org/2000/svg", className: className, children: jsxRuntime.jsx("path", { d: "M3 10.5L11.0287 14.9604C11.6328 15.296 12.3672 15.296 12.9713 14.9604L21 10.5", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }));
3642
3673
  }
3643
- function ChevronTopIcon({ className }) {
3644
- return (jsxRuntime.jsx("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", className: className, children: jsxRuntime.jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M8.47139 6.08088C8.21104 5.82053 7.78893 5.82053 7.52858 6.08088L3.13807 10.4714C2.87772 10.7318 2.45561 10.7318 2.19526 10.4714C1.93491 10.2111 1.93491 9.78895 2.19526 9.5286L6.58577 5.13807C7.36682 4.35702 8.63315 4.35702 9.4142 5.13807L13.8047 9.52859C14.0651 9.78894 14.0651 10.2111 13.8047 10.4714C13.5444 10.7318 13.1223 10.7318 12.8619 10.4714L8.47139 6.08088Z", fill: "currentColor" }) }));
3674
+ function ChevronTopIcon(props) {
3675
+ return (jsxRuntime.jsx("svg", Object.assign({}, props, { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: jsxRuntime.jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M8.47139 6.08088C8.21104 5.82053 7.78893 5.82053 7.52858 6.08088L3.13807 10.4714C2.87772 10.7318 2.45561 10.7318 2.19526 10.4714C1.93491 10.2111 1.93491 9.78895 2.19526 9.5286L6.58577 5.13807C7.36682 4.35702 8.63315 4.35702 9.4142 5.13807L13.8047 9.52859C14.0651 9.78894 14.0651 10.2111 13.8047 10.4714C13.5444 10.7318 13.1223 10.7318 12.8619 10.4714L8.47139 6.08088Z", fill: "currentColor" }) })));
3645
3676
  }
3646
3677
  function ChevronLargeRightIcon({ size = "16", className, }) {
3647
3678
  return (jsxRuntime.jsx("svg", { width: size, height: size, viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", className: className, children: jsxRuntime.jsx("path", { d: "M6.66675 14L9.64035 8.64754C9.86407 8.24484 9.86407 7.75519 9.64035 7.35249L6.66675 2", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }));
@@ -3941,6 +3972,18 @@ function CodeBracketsIcon({ size = "20", className, }) {
3941
3972
  function CommandIcon({ size = "22", className, }) {
3942
3973
  return (jsxRuntime.jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 22 22", fill: "none", className: className, children: jsxRuntime.jsx("path", { d: "M8 17V17C8 16.0219 8.28951 15.0657 8.83205 14.2519L13.1679 7.74808C13.7105 6.93427 14 5.97808 14 5V5", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }) }));
3943
3974
  }
3975
+ function NewsIcon({ className }) {
3976
+ return (jsxRuntime.jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "34", height: "28", viewBox: "0 0 34 28", fill: "none", className: className, children: [jsxRuntime.jsx("path", { d: "M22.8645 1H11.1245C5.53665 1 1 5.48783 1 11.0155C1 16.5432 5.53665 21.031 11.1245 21.031H11.4786C12.1978 22.5744 14.4882 26.3727 19.9765 26.9966C20.4965 27.0513 20.8285 26.4383 20.4744 26.0552C19.4011 24.895 18.0401 22.9356 18.8589 21.031H22.8755C28.4633 21.031 33 16.5432 33 11.0155C33 5.48783 28.4633 1 22.8755 1H22.8645Z", fill: "currentColor", stroke: "black", strokeLinecap: "round", strokeLinejoin: "round" }), jsxRuntime.jsx("text", { x: "17", y: "12", fontFamily: "Arial", fontSize: "10", fill: "black", textAnchor: "middle", dominantBaseline: "middle", children: "news" })] }));
3977
+ }
3978
+ function CelebrateIcon({ className, size = "27", }) {
3979
+ return (jsxRuntime.jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 27 27", fill: "none", className: className, children: [jsxRuntime.jsxs("g", { clipPath: "url(#clip0_1739_52134)", children: [jsxRuntime.jsx("path", { d: "M15.2972 19.8873L1.47657 26.8989C0.615947 27.3376 -0.295303 26.4179 0.143447 25.5657L7.15501 11.7451L15.2972 19.8873Z", fill: "currentColor" }), jsxRuntime.jsx("path", { d: "M15.585 19.6563C16.5109 18.7304 15.4264 16.1447 13.1628 13.881C10.8991 11.6173 8.31342 10.5329 7.38752 11.4588C6.46162 12.3847 7.5461 14.9703 9.80978 17.234C12.0735 19.4977 14.6591 20.5822 15.585 19.6563Z", fill: "black" }), jsxRuntime.jsx("path", { d: "M12.7238 17.314C13.1456 16.8077 13.8459 15.9471 14.3606 15.5505C16.1241 14.1752 18.2588 13.2808 20.5284 13.4412C21.9544 13.5424 23.2622 14.3271 24.705 14.2849C25.8778 14.2512 27.1603 13.399 26.9578 12.0912C26.7553 10.7918 25.3125 10.0155 24.0891 9.76241C22.2581 9.38272 20.4356 9.84679 18.7903 10.6905C16.3856 11.9224 14.2256 13.7618 12.3356 15.6771C12.2934 15.7193 11.6944 16.369 11.6606 16.4027C11.6522 16.4027 11.9644 16.8921 12.7238 17.314Z", fill: "currentColor" }), jsxRuntime.jsx("path", { d: "M26.6625 22.3172C26.1478 22.8825 25.1691 22.6884 24.5953 22.1822C23.9878 21.6422 23.6419 20.8997 23.1272 20.2837C22.14 19.1194 21.2288 18.3094 19.9294 17.6091C19.4822 17.3644 17.8031 16.7822 17.9297 16.7906C18.1406 16.8075 18.3516 16.8244 18.5625 16.8497C18.9844 16.8919 19.4063 16.9509 19.8281 17.0184C20.6635 17.1534 21.4988 17.3306 22.3088 17.5753C23.8444 18.0394 25.5066 18.765 26.4516 20.1319C26.8988 20.7731 27.2025 21.7266 26.6625 22.3172Z", fill: "currentColor" }), jsxRuntime.jsx("path", { d: "M14.251 0.0504011C13.635 0.295089 13.4831 1.13884 13.7194 1.75478C13.9641 2.4129 14.4535 2.91915 14.791 3.52665C15.4238 4.68259 15.7866 5.66134 15.9553 6.92696C16.0144 7.36571 15.9806 8.41196 15.9891 8.79165C16.1578 8.2179 16.3181 7.55978 16.3941 7.19696C16.546 6.47978 16.6556 5.76259 16.7147 5.02853C16.8244 3.64478 16.7569 2.09228 15.9469 0.902589C15.5588 0.337276 14.8922 -0.194286 14.251 0.0504011Z", fill: "currentColor" }), jsxRuntime.jsx("path", { d: "M10.4878 15.0863C11.3737 14.6307 12.6647 13.0275 12.6647 13.0275C15.6769 9.38254 13.9134 4.29472 10.6565 1.48504C9.86342 0.801599 8.94374 0.194099 7.90592 0.0337867C6.87655 -0.126526 5.70374 0.261599 5.17217 1.16441C4.56467 2.22754 5.02874 3.6366 5.88936 4.50566C7.39124 6.03285 9.6778 6.37035 11.1628 7.9566C11.7787 8.60629 12.1837 9.45847 12.2428 10.3697C12.3525 12.1585 9.6778 13.7194 9.55967 13.7785C9.98155 14.5463 9.98155 14.5463 10.4878 15.0863Z", fill: "currentColor" }), jsxRuntime.jsx("path", { d: "M2.77594 11.9896C4.27177 11.9896 5.48438 10.777 5.48438 9.28119C5.48438 7.78536 4.27177 6.57275 2.77594 6.57275C1.28011 6.57275 0.0675049 7.78536 0.0675049 9.28119C0.0675049 10.777 1.28011 11.9896 2.77594 11.9896Z", fill: "currentColor" }), jsxRuntime.jsx("path", { d: "M24.0891 5.79674C25.6595 5.79674 26.9325 4.52369 26.9325 2.9533C26.9325 1.38291 25.6595 0.109863 24.0891 0.109863C22.5187 0.109863 21.2456 1.38291 21.2456 2.9533C21.2456 4.52369 22.5187 5.79674 24.0891 5.79674Z", fill: "currentColor" }), jsxRuntime.jsx("path", { d: "M19.6341 9.13762C20.5148 9.13762 21.2287 8.42365 21.2287 7.54293C21.2287 6.66221 20.5148 5.94824 19.6341 5.94824C18.7533 5.94824 18.0394 6.66221 18.0394 7.54293C18.0394 8.42365 18.7533 9.13762 19.6341 9.13762Z", fill: "currentColor" })] }), jsxRuntime.jsx("defs", { children: jsxRuntime.jsx("clipPath", { id: "clip0_1739_52134", children: jsxRuntime.jsx("rect", { width: "27", height: "27", fill: "white" }) }) })] }));
3980
+ }
3981
+ function SmileFilledIcon({ className, size = "27", }) {
3982
+ return (jsxRuntime.jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 27 27", fill: "none", className: className, children: [jsxRuntime.jsx("path", { d: "M13.3473 25.6812C20.1666 25.6812 25.6947 20.1561 25.6947 13.3406C25.6947 6.52507 20.1666 1 13.3473 1C6.52809 1 1 6.52507 1 13.3406C1 20.1561 6.52809 25.6812 13.3473 25.6812Z", fill: "currentColor", stroke: "black", strokeLinecap: "round", strokeLinejoin: "round" }), jsxRuntime.jsx("path", { d: "M12.2618 16.4004C13.5833 18.38 16.1579 19.2247 18.4518 18.292C20.7457 17.3592 21.9008 15.1253 21.5941 12.8652", fill: "currentColor" }), jsxRuntime.jsx("path", { d: "M12.2618 16.4004C13.5833 18.38 16.1579 19.2247 18.4518 18.292C20.7457 17.3592 21.9008 15.1253 21.5941 12.8652", stroke: "black", strokeLinecap: "round", strokeLinejoin: "round" }), jsxRuntime.jsx("path", { d: "M19.6634 10.5012C19.2946 9.92059 18.557 9.65636 17.8879 9.9108C17.2416 10.1555 16.8695 10.8014 16.9413 11.4571", fill: "currentColor" }), jsxRuntime.jsx("path", { d: "M19.6634 10.5012C19.2946 9.92059 18.557 9.65636 17.8879 9.9108C17.2416 10.1555 16.8695 10.8014 16.9413 11.4571", stroke: "black", strokeLinecap: "round", strokeLinejoin: "round" }), jsxRuntime.jsx("path", { d: "M15.121 12.0857C14.7522 11.5051 14.0146 11.2408 13.3455 11.4953C12.6992 11.7399 12.3271 12.3858 12.3989 13.0415", fill: "currentColor" }), jsxRuntime.jsx("path", { d: "M15.121 12.0857C14.7522 11.5051 14.0146 11.2408 13.3455 11.4953C12.6992 11.7399 12.3271 12.3858 12.3989 13.0415", stroke: "black", strokeLinecap: "round", strokeLinejoin: "round" }), jsxRuntime.jsx("path", { d: "M22.3289 12.7085C21.8132 12.8325 21.2714 12.839 20.7525 12.7346L22.3289 12.7085Z", fill: "currentColor" }), jsxRuntime.jsx("path", { d: "M22.3289 12.7085C21.8132 12.8325 21.2714 12.839 20.7525 12.7346", stroke: "black", strokeLinecap: "round", strokeLinejoin: "round" })] }));
3983
+ }
3984
+ function StarLinesIcon({ size = "20", className, }) {
3985
+ return (jsxRuntime.jsx("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: "M11.8455 1.41356C12.3313 0.606286 13.5017 0.606288 13.9875 1.41356L15.2314 3.4805L17.5816 4.0248C18.4995 4.23739 18.8611 5.35048 18.2435 6.06199L16.6621 7.88373L16.8707 10.2871C16.9522 11.2257 16.0053 11.9137 15.1378 11.5461L12.9165 10.6051L10.6952 11.5461C9.8277 11.9137 8.88085 11.2257 8.96232 10.2871L9.1709 7.88373L7.58951 6.06199C6.97187 5.35048 7.33354 4.23739 8.25143 4.0248L10.6016 3.4805L11.8455 1.41356ZM6.42243 8.57745C6.74786 8.90289 6.74786 9.43053 6.42243 9.75596L3.08909 13.0893C2.76366 13.4147 2.23602 13.4147 1.91058 13.0893C1.58514 12.7639 1.58514 12.2362 1.91058 11.9108L5.24392 8.57745C5.56935 8.25202 6.09699 8.25202 6.42243 8.57745ZM8.08909 12.7441C8.41453 13.0696 8.41453 13.5972 8.08909 13.9226L4.75576 17.256C4.43032 17.5814 3.90269 17.5814 3.57725 17.256C3.25181 16.9305 3.25181 16.4029 3.57725 16.0775L6.91058 12.7441C7.23602 12.4187 7.76366 12.4187 8.08909 12.7441ZM13.9224 12.7441C14.2479 13.0696 14.2479 13.5972 13.9224 13.9226L10.5891 17.256C10.2637 17.5814 9.73602 17.5814 9.41058 17.256C9.08515 16.9305 9.08515 16.4029 9.41058 16.0775L12.7439 12.7441C13.0694 12.4187 13.597 12.4187 13.9224 12.7441Z", fill: "currentColor" }) }));
3986
+ }
3944
3987
 
3945
3988
  function EmptyHeartIcon({ className }) {
3946
3989
  return (jsxRuntime.jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", className: className, children: jsxRuntime.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" }) }));
@@ -4198,7 +4241,7 @@ const priceChangeSignToIconMap = {
4198
4241
  [PriceChangeSign.NEGATIVE]: (jsxRuntime.jsx(ArrowTriangle, { className: "tw-text-status-negative" })),
4199
4242
  [PriceChangeSign.NEUTRAL]: jsxRuntime.jsx(PauseIcon, {}),
4200
4243
  };
4201
- function PriceChange({ value: rawValue, variant = "small", }) {
4244
+ function PriceChange({ value: rawValue = 0, variant = "small", }) {
4202
4245
  const valueFormatted = Math.abs(Number(rawValue)).toFixed(2);
4203
4246
  const sign = Number(rawValue) > 0
4204
4247
  ? PriceChangeSign.POSITIVE
@@ -4274,6 +4317,28 @@ function WalletLink({ imageURI, address }) {
4274
4317
  return (jsxRuntime.jsx(IconLabel, { src: imageURI, rounded: "full", children: jsxRuntime.jsx(HashLink, { hash: address, showCopyButton: true, children: jsxRuntime.jsx(BodyText, { size: "small", children: truncateHash(address) }) }) }));
4275
4318
  }
4276
4319
 
4320
+ const extraPaddingMap = {
4321
+ "outline-sm": "1px",
4322
+ "outline-lg": "3px",
4323
+ };
4324
+ function ImageStack(_a) {
4325
+ var { imageUrls, spacing, stackOnTop = true, addExtraPadding, removeDuplicates = false } = _a, imageProps = __rest$1(_a, ["imageUrls", "spacing", "stackOnTop", "addExtraPadding", "removeDuplicates"]);
4326
+ const imagesToRender = removeDuplicates ? [...new Set(imageUrls)] : imageUrls;
4327
+ return (jsxRuntime.jsx("div", { style: {
4328
+ // @ts-expect-error Custom CSS property
4329
+ "--image-stack-spacing": spacing,
4330
+ padding: addExtraPadding && imageProps.border
4331
+ ? extraPaddingMap[imageProps.border]
4332
+ : undefined,
4333
+ }, className: "tw-flex tw-items-center tw-space-x-[--image-stack-spacing]", children: imagesToRender.map((url, index, self) => (jsxRuntime.jsx(Image$1, Object.assign({ src: url, containerProps: stackOnTop
4334
+ ? {
4335
+ style: {
4336
+ zIndex: self.length - index,
4337
+ },
4338
+ }
4339
+ : undefined }, imageProps), index))) }));
4340
+ }
4341
+
4277
4342
  function Chip(_a) {
4278
4343
  var { label, icon } = _a, props = __rest$1(_a, ["label", "icon"]);
4279
4344
  return (jsxRuntime.jsx("div", Object.assign({}, props, { className: cn("tw-flex tw-h-squid-m tw-items-center tw-justify-center tw-rounded-squid-m tw-bg-grey-500 tw-text-grey-900", icon && "tw-w-squid-m", props.className), children: label ? (jsxRuntime.jsx(CaptionText, { className: "tw-min-w-squid-xl tw-text-nowrap tw-px-squid-xxs tw-text-center", children: label })) : (icon) })));
@@ -4341,6 +4406,11 @@ const ButtonHoverOverlay = ({ className }) => {
4341
4406
  return (jsxRuntime.jsx("span", { className: cn("tw-absolute tw-inset-0 tw-z-0 tw-hidden tw-h-full tw-w-full tw-bg-material-light-thin group-hover/base-button:tw-block", className) }));
4342
4407
  };
4343
4408
 
4409
+ function AccountsButton(_a) {
4410
+ var { imageUrls } = _a, props = __rest$1(_a, ["imageUrls"]);
4411
+ return (jsxRuntime.jsx(Button$1, Object.assign({}, props, { size: "md", variant: "tertiary", className: cn("tw-group/accounts-button", props.className), children: jsxRuntime.jsxs("div", { className: "tw-flex tw-items-center tw-gap-squid-xxs tw-text-grey-300", children: [jsxRuntime.jsx(ImageStack, { imageUrls: imageUrls, spacing: "-10px", border: "outline-lg", size: "medium", rounded: "xxs", className: "!tw-outline-button-md-tertiary-bg group-hover/accounts-button:!tw-outline-material-light-blend-grey-800" }), jsxRuntime.jsx(BodyText, { size: "small", children: "Accounts" }), jsxRuntime.jsx(ChevronDownSmallIcon, { size: "16" })] }) })));
4412
+ }
4413
+
4344
4414
  function AddressButton(_a) {
4345
4415
  var { label, imageUrl, badgeUrl, isLoading } = _a, props = __rest$1(_a, ["label", "imageUrl", "badgeUrl", "isLoading"]);
4346
4416
  return (jsxRuntime.jsx(Button$1, Object.assign({ size: "md", variant: "tertiary" }, props, { disabled: isLoading, className: !isLoading && imageUrl ? "tw-pl-1 tw-pr-4" : "!tw-px-4", children: isLoading ? (jsxRuntime.jsx("span", { className: "tw-mx-auto tw-px-4 tw-text-grey-300", children: jsxRuntime.jsx(Loader, {}) })) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(BadgeImage, { image: {
@@ -18758,7 +18828,7 @@ const modalWidthClassMap = {
18758
18828
  large: "mobile-lg:tw-w-modal-large",
18759
18829
  "extra-large": "mobile-lg:tw-w-modal-extra-large",
18760
18830
  };
18761
- function Modal({ children, className, onBackdropClick, isOpen: _isOpen = true, maxHeight = false, width = "large", animateOpacity = false, }) {
18831
+ function Modal({ children, className, onBackdropClick, isOpen: _isOpen = true, maxHeight = false, width = "large", animateOpacity = false, backdropStyle, }) {
18762
18832
  const [isOpen, setIsOpen] = React$1.useState(_isOpen);
18763
18833
  React$1.useEffect(() => {
18764
18834
  if (_isOpen) {
@@ -18780,16 +18850,18 @@ function Modal({ children, className, onBackdropClick, isOpen: _isOpen = true, m
18780
18850
  onBackdropClick();
18781
18851
  }
18782
18852
  }
18783
- : undefined, style: {
18784
- [CSS_VARS.BLUR_IN_DURATION]: `${ANIMATION_DURATIONS.SHOW_MODAL}ms`,
18785
- [CSS_VARS.BLUR_OUT_DURATION]: `${ANIMATION_DURATIONS.HIDE_MODAL}ms`,
18786
- }, className: cn("tw-absolute tw-inset-0 tw-z-40 tw-flex tw-items-start tw-justify-center tw-px-squid-xs tw-py-squid-xl tw-pb-squid-m", _isOpen ? "tw-animate-blur-in" : "tw-animate-blur-out"), children: jsxRuntime.jsx("div", { style: {
18853
+ : undefined, style: Object.assign({ [CSS_VARS.BLUR_IN_DURATION]: `${ANIMATION_DURATIONS.SHOW_MODAL}ms`, [CSS_VARS.BLUR_OUT_DURATION]: `${ANIMATION_DURATIONS.HIDE_MODAL}ms` }, backdropStyle), className: cn("tw-absolute tw-inset-0 tw-z-40 tw-flex tw-items-start tw-justify-center tw-px-squid-xs tw-py-squid-xl tw-pb-squid-m", _isOpen ? "tw-animate-blur-in" : "tw-animate-blur-out"), children: jsxRuntime.jsx("div", { style: {
18787
18854
  [CSS_VARS.SLIDE_TO_TOP_DURATION]: `${ANIMATION_DURATIONS.SHOW_MODAL}ms`,
18788
18855
  [CSS_VARS.SLIDE_TO_BOTTOM_DURATION]: `${ANIMATION_DURATIONS.HIDE_MODAL}ms`,
18789
18856
  [CSS_VARS.FADE_IN_DURATION]: `${ANIMATION_DURATIONS.SHOW_MODAL}ms`,
18790
18857
  [CSS_VARS.FADE_OUT_DURATION]: `${ANIMATION_DURATIONS.HIDE_MODAL}ms`,
18791
- }, className: cn("tw-relative tw-flex tw-max-h-modal-compact tw-max-w-full tw-flex-col tw-items-start tw-justify-end tw-gap-squid-xxs tw-self-end mobile-xs:tw-w-modal-compact mobile-lg:tw-max-h-modal-large", className, _isOpen ? "tw-animate-slide-to-top" : "tw-animate-slide-to-bottom", animateOpacity &&
18792
- (_isOpen ? "tw-animate-fade-in" : "tw-animate-fade-out"), maxHeight && "tw-h-full", modalWidthClassMap[width]), children: children }) })));
18858
+ }, className: cn("tw-relative tw-flex tw-max-h-modal-compact tw-max-w-full tw-flex-col tw-items-start tw-justify-end tw-gap-squid-xxs tw-self-end mobile-xs:tw-w-modal-compact mobile-lg:tw-max-h-modal-large", className, animateOpacity
18859
+ ? _isOpen
18860
+ ? "tw-animate-slide-to-top-and-fade-in"
18861
+ : "tw-animate-slide-to-bottom-and-fade-out"
18862
+ : _isOpen
18863
+ ? "tw-animate-slide-to-top"
18864
+ : "tw-animate-slide-to-bottom", maxHeight && "tw-h-full", modalWidthClassMap[width]), children: children }) })));
18793
18865
  }
18794
18866
 
18795
18867
  const borderTypeClassMap = {
@@ -18885,7 +18957,7 @@ function SwapConfiguration({ amount, tokenPrice = 0, isFetching: isFetchingProp
18885
18957
  }
18886
18958
 
18887
18959
  function SwapProgressViewHeader({ title, description, }) {
18888
- return (jsxRuntime.jsxs("header", { className: "tw-flex tw-h-[95px] tw-w-full tw-flex-col tw-gap-squid-s tw-bg-grey-800 tw-px-squid-m tw-py-squid-s", children: [jsxRuntime.jsx(BodyText, { size: "large", className: "tw-h-squid-m !tw-leading-[20px] tw-text-grey-300", children: title }), jsxRuntime.jsx(CaptionText, { className: "tw-h-squid-l tw-text-grey-500", children: description })] }));
18960
+ return (jsxRuntime.jsxs("header", { className: "tw-flex tw-min-h-[95px] tw-w-full tw-flex-col tw-gap-squid-s tw-bg-grey-800 tw-px-squid-m tw-py-squid-s", children: [jsxRuntime.jsx(BodyText, { size: "large", className: "tw-min-h-squid-m !tw-leading-[25px] tw-text-grey-300", children: title }), jsxRuntime.jsx(CaptionText, { className: "tw-h-squid-l tw-text-grey-500", children: description })] }));
18889
18961
  }
18890
18962
 
18891
18963
  const SPACING = 10;
@@ -19202,28 +19274,6 @@ function DropdownMenuTitle({ title }) {
19202
19274
  return (jsxRuntime.jsx("div", { className: "tw-flex tw-items-center tw-gap-squid-xs tw-self-stretch tw-p-squid-xs tw-pb-squid-xxs tw-text-material-light-average", children: jsxRuntime.jsx(CaptionText, { children: title }) }));
19203
19275
  }
19204
19276
 
19205
- const extraPaddingMap = {
19206
- "outline-sm": "1px",
19207
- "outline-lg": "3px",
19208
- };
19209
- function ImageStack(_a) {
19210
- var { imageUrls, spacing, stackOnTop = true, addExtraPadding, removeDuplicates = false } = _a, imageProps = __rest$1(_a, ["imageUrls", "spacing", "stackOnTop", "addExtraPadding", "removeDuplicates"]);
19211
- const imagesToRender = removeDuplicates ? [...new Set(imageUrls)] : imageUrls;
19212
- return (jsxRuntime.jsx("div", { style: {
19213
- // @ts-expect-error Custom CSS property
19214
- "--image-stack-spacing": spacing,
19215
- padding: addExtraPadding && imageProps.border
19216
- ? extraPaddingMap[imageProps.border]
19217
- : undefined,
19218
- }, className: "tw-flex tw-items-center tw-space-x-[--image-stack-spacing]", children: imagesToRender.map((url, index, self) => (jsxRuntime.jsx(Image$1, Object.assign({ src: url, containerProps: stackOnTop
19219
- ? {
19220
- style: {
19221
- zIndex: self.length - index,
19222
- },
19223
- }
19224
- : undefined }, imageProps), index))) }));
19225
- }
19226
-
19227
19277
  function useOnClickOutside(callback, externalRef) {
19228
19278
  const internalRef = React$1.useRef(null);
19229
19279
  const ref = externalRef !== null && externalRef !== void 0 ? externalRef : internalRef;
@@ -19407,7 +19457,7 @@ function SmallBodyText(props) {
19407
19457
  function PropertyListItem(_a) {
19408
19458
  var { isLoading = false, label, detail, icon, className, variant = "small", showGradientBg = true, labelClassName, iconClassName, detailClassName } = _a, props = __rest$1(_a, ["isLoading", "label", "detail", "icon", "className", "variant", "showGradientBg", "labelClassName", "iconClassName", "detailClassName"]);
19409
19459
  const Text = variant === "small" ? CaptionText : SmallBodyText;
19410
- return (jsxRuntime.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", containerVariantClassNameMap[variant], className), children: jsxRuntime.jsxs("div", { className: cn("tw-flex tw-h-squid-l tw-w-full tw-items-center tw-justify-between tw-gap-squid-xs tw-rounded-squid-xs", childrenVariantClassNameMap[variant]), children: [jsxRuntime.jsx("div", { className: cn("tw-w-6 tw-text-grey-500", iconClassName), children: icon }), jsxRuntime.jsx(Text, { className: cn("tw-flex-1 tw-text-grey-500", labelClassName), children: jsxRuntime.jsx(TextSkeleton, { isLoading: isLoading, children: label }) }), jsxRuntime.jsx(Text, { className: cn("tw-flex tw-text-grey-300", detailClassName), children: jsxRuntime.jsx(TextSkeleton, { isLoading: isLoading, children: detail }) })] }) })));
19460
+ return (jsxRuntime.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", containerVariantClassNameMap[variant], className), children: jsxRuntime.jsxs("div", { className: cn("tw-flex tw-h-squid-l tw-w-full tw-items-center tw-justify-between tw-gap-squid-xs tw-rounded-squid-xs", childrenVariantClassNameMap[variant]), children: [jsxRuntime.jsx("div", { className: cn("tw-w-6 tw-text-grey-500", iconClassName), children: icon }), jsxRuntime.jsx(Text, { className: cn("tw-min-w-fit tw-flex-1 tw-text-grey-500", labelClassName), children: jsxRuntime.jsx(TextSkeleton, { isLoading: isLoading, children: label }) }), jsxRuntime.jsx(Text, { truncate: variant === "small" || undefined, className: cn("tw-flex tw-text-grey-300", detailClassName), children: jsxRuntime.jsx(TextSkeleton, { isLoading: isLoading, children: detail }) })] }) })));
19411
19461
  }
19412
19462
 
19413
19463
  function RouteStep({ imageUrl, descriptionBlocks, subtitle, showStepSeparator = false, }) {
@@ -19516,7 +19566,9 @@ function TokenGroup({ isSelected = false, tokenItems, priceChange, balance, bala
19516
19566
  const handleToggleCollapsed = React$1.useCallback(() => {
19517
19567
  setIsCollapsed((prev) => !prev);
19518
19568
  }, []);
19519
- return (jsxRuntime.jsxs("li", { className: cn("tw-w-full tw-self-stretch", extraSpacing && "tw-px-squid-xs tw-pt-squid-xs", !isCollapsed &&
19569
+ return (jsxRuntime.jsxs("li", { style: {
19570
+ transition: `padding ${ANIMATION_DURATIONS.GENERIC}ms ${ANIMATION_TIMINGS.GENERIC}`,
19571
+ }, className: cn("tw-w-full tw-self-stretch", extraSpacing && "tw-px-squid-xs tw-pt-squid-xs", !isCollapsed &&
19520
19572
  "tw-border-y tw-border-solid tw-border-y-material-light-thin tw-py-squid-xs", className), children: [jsxRuntime.jsxs(ContentTag, { onClick: (event) => {
19521
19573
  onClick === null || onClick === void 0 ? void 0 : onClick(event);
19522
19574
  if (isCollapsible)
@@ -19524,7 +19576,7 @@ function TokenGroup({ isSelected = false, tokenItems, priceChange, balance, bala
19524
19576
  }, style: isCollapsible
19525
19577
  ? {
19526
19578
  transition: `${ANIMATION_DURATIONS.GENERIC}ms ${ANIMATION_TIMINGS.GENERIC}`,
19527
- transitionProperty: "height",
19579
+ transitionProperty: "height, gap",
19528
19580
  }
19529
19581
  : undefined, className: cn("tw-flex tw-w-full tw-items-center tw-rounded-squid-s tw-px-squid-xs", isSelected && "tw-bg-material-light-thin", isInteractive && "hover:tw-bg-material-light-thin", isLargeVariant
19530
19582
  ? isCollapsed
@@ -19532,7 +19584,7 @@ function TokenGroup({ isSelected = false, tokenItems, priceChange, balance, bala
19532
19584
  : "tw-h-squid-xl tw-gap-squid-xxs"
19533
19585
  : isSmallVariant
19534
19586
  ? "tw-h-[50px] tw-gap-squid-s tw-py-squid-xxs"
19535
- : "tw-h-squid-xl tw-gap-squid-xxs"), children: [jsxRuntime.jsxs("div", { className: "tw-relative", children: [jsxRuntime.jsx(Image$1, { src: imageUrl, size: isLargeVariant && !isCollapsed
19587
+ : "tw-h-squid-xl tw-gap-squid-xxs"), children: [jsxRuntime.jsxs("div", { className: "tw-relative tw-min-w-fit", children: [jsxRuntime.jsx(Image$1, { src: imageUrl, size: isLargeVariant && !isCollapsed
19536
19588
  ? "medium"
19537
19589
  : (_a = mainImageSizeMap[variant]) !== null && _a !== void 0 ? _a : "medium", rounded: isCompactVariant ? "xxs" : "full", style: {
19538
19590
  transition: `${ANIMATION_DURATIONS.GENERIC}ms ${ANIMATION_TIMINGS.GENERIC}`,
@@ -19550,8 +19602,19 @@ function TokenGroup({ isSelected = false, tokenItems, priceChange, balance, bala
19550
19602
  ? "-tw-bottom-0 -tw-right-0"
19551
19603
  : "-tw-bottom-[3px] -tw-right-[3px]"), children: jsxRuntime.jsx(ImageStack, { spacing: "-10px", removeDuplicates: true, addExtraPadding: !isCollapsible, size: "medium", rounded: "xxs", border: "outline-lg", imageUrls: isCollapsible
19552
19604
  ? tokenItems === null || tokenItems === void 0 ? void 0 : tokenItems.slice(0, MAX_PREVIEW_ITEMS).map((item) => item.chainImageUrl)
19553
- : [chainImageUrl] }) }))] }), jsxRuntime.jsxs("div", { className: cn("tw-flex tw-flex-1 tw-flex-col tw-items-start tw-justify-center tw-text-grey-300", isCollapsed &&
19554
- (isSmallVariant ? "tw-gap-squid-xs" : "tw-gap-squid-xxs"), isSmallVariant && "tw-h-[45px]"), children: [jsxRuntime.jsxs("div", { className: cn("tw-flex tw-gap-squid-xxs tw-self-stretch", isSmallVariant ? "tw-h-[13px] tw-items-end" : "tw-items-center", isLargeVariant && "tw-h-squid-m"), children: [jsxRuntime.jsx(BodyText, { size: "small", className: "tw-h-fit !tw-leading-[13px]", children: name }), (!isCollapsed || isCompactVariant) && (jsxRuntime.jsx(ChevronTopIcon, { className: cn("tw-text-grey-500", isCollapsed ? "tw-rotate-90" : "tw-rotate-180") })), balanceUsd ? (jsxRuntime.jsx("span", { className: cn("tw-flex tw-flex-1 tw-items-center tw-justify-end", isCollapsed ? "tw-text-grey-300" : "tw-text-grey-500"), children: isSmallVariant ? (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(CaptionText, { className: "!tw-leading-[10px] tw-opacity-66", children: "$" }), jsxRuntime.jsx(CaptionText, { className: "!tw-leading-[10px]", children: balanceUsd })] })) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(BodyText, { size: "small", className: "!tw-leading-[10px] tw-opacity-66", children: "$" }), jsxRuntime.jsx(BodyText, { size: "small", className: "!tw-leading-[10px]", children: balanceUsd })] })) })) : null] }), !isCompactVariant && (jsxRuntime.jsx(Collapse, { collapsed: !isCollapsed, contentsClassName: "tw-flex tw-w-full tw-items-start tw-justify-between", className: "tw-w-full", children: jsxRuntime.jsxs("div", { className: cn("tw-flex tw-w-full tw-items-center tw-justify-between tw-self-stretch", isLargeVariant && "tw-h-squid-m"), children: [jsxRuntime.jsx("div", { className: "tw-flex tw-flex-1 tw-items-center tw-gap-squid-xxs tw-text-grey-400", children: jsxRuntime.jsxs(CaptionText, { className: "!tw-leading-[10px]", children: [balance, symbol] }) }), priceChange && jsxRuntime.jsx(PriceChange, { value: priceChange })] }) }))] })] }), jsxRuntime.jsx(Collapse, { collapsed: isCollapsed, children: jsxRuntime.jsx("ul", { className: cn("tw-flex tw-flex-col tw-items-start tw-justify-end tw-self-stretch", isCompactVariant && "tw-gap-squid-xs tw-pt-squid-xs"), children: tokenItems === null || tokenItems === void 0 ? void 0 : tokenItems.map((token) => (jsxRuntime.jsx(TokenGroup, Object.assign({}, token, { extraSpacing: false, variant: isCompactVariant ? "small" : "large", onClick: () => onChildClick === null || onChildClick === void 0 ? void 0 : onChildClick(token) }), token.chainImageUrl))) }) })] }));
19605
+ : [chainImageUrl] }) }))] }), jsxRuntime.jsxs("div", { style: {
19606
+ transition: `max-width ${ANIMATION_DURATIONS.GENERIC}ms ${ANIMATION_TIMINGS.GENERIC}`,
19607
+ }, className: cn("tw-flex tw-flex-1 tw-flex-col tw-text-grey-300", isCollapsed && "tw-gap-squid-xxs", !isSmallVariant && "tw-justify-center", isCompactVariant && "tw-max-w-[calc(100%-30px)]", isSmallVariant &&
19608
+ "tw-h-[45px] tw-max-w-[calc(100%-60px)] tw-justify-end", isLargeVariant &&
19609
+ (isCollapsed
19610
+ ? "tw-max-w-[calc(100%-80px)]"
19611
+ : "tw-max-w-[calc(100%-30px)]")), children: [jsxRuntime.jsxs("div", { className: cn("tw-flex tw-w-full tw-items-center tw-gap-squid-xxs tw-self-stretch", isSmallVariant ? "tw-h-[13px] tw-items-end" : "tw-items-center", isLargeVariant && "tw-h-squid-m"), children: [jsxRuntime.jsx(BodyText, { size: "small", className: "tw-h-fit tw-max-w-fit tw-flex-grow tw-truncate", style: {
19612
+ whiteSpace: "nowrap",
19613
+ overflow: "hidden",
19614
+ textOverflow: "ellipsis",
19615
+ }, children: name }), isCollapsible && (jsxRuntime.jsx(ChevronTopIcon, { style: {
19616
+ transition: `transform ${ANIMATION_DURATIONS.GENERIC}ms ${ANIMATION_TIMINGS.GENERIC}`,
19617
+ }, className: cn("tw-min-w-fit tw-text-grey-500", isCollapsed ? "tw-rotate-90" : "tw-rotate-180") })), balanceUsd ? (jsxRuntime.jsx("span", { className: cn("tw-flex tw-flex-1 tw-items-center tw-justify-end", isCollapsed ? "tw-text-grey-300" : "tw-text-grey-500"), children: isSmallVariant ? (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(CaptionText, { className: "tw-opacity-66", children: "$" }), jsxRuntime.jsx(CaptionText, { children: balanceUsd })] })) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(BodyText, { size: "small", className: "tw-opacity-66", children: "$" }), jsxRuntime.jsx(BodyText, { size: "small", children: balanceUsd })] })) })) : null] }), !isCompactVariant && (jsxRuntime.jsx(Collapse, { collapsed: !isCollapsed, contentsClassName: "tw-flex tw-w-full tw-items-start tw-justify-between", className: "tw-w-full", children: jsxRuntime.jsxs("div", { className: cn("tw-flex tw-w-full tw-items-center tw-justify-between tw-self-stretch", isLargeVariant && "tw-h-squid-m"), children: [jsxRuntime.jsx("div", { className: "tw-flex tw-flex-1 tw-items-center tw-gap-squid-xxs tw-text-grey-400", children: jsxRuntime.jsxs(CaptionText, { children: [balance, " ", symbol] }) }), priceChange && jsxRuntime.jsx(PriceChange, { value: priceChange })] }) }))] })] }), jsxRuntime.jsx(Collapse, { collapsed: isCollapsed, children: jsxRuntime.jsx("ul", { className: cn("tw-flex tw-flex-col tw-items-start tw-justify-end tw-self-stretch", isCompactVariant && "tw-gap-squid-xs tw-pt-squid-xs"), children: tokenItems === null || tokenItems === void 0 ? void 0 : tokenItems.map((token) => (jsxRuntime.jsx(TokenGroup, Object.assign({}, token, { extraSpacing: false, variant: isCompactVariant ? "small" : "large", onClick: () => onChildClick === null || onChildClick === void 0 ? void 0 : onChildClick(token) }), token.chainImageUrl + token.symbol))) }) })] }));
19555
19618
  }
19556
19619
 
19557
19620
  function ActionLayout({ lineCap = jsxRuntime.jsx(Timeline.CapTop, {}), status = "executed", showTimeline = true, showBody = true, nextStatus, statusIcon, description, title, icon, children, }) {
@@ -19692,7 +19755,7 @@ function TransactionAction({ type, props }) {
19692
19755
  }
19693
19756
 
19694
19757
  function Transfer({ isLoading, from, to, className }) {
19695
- return (jsxRuntime.jsx("div", { className: cn("tw-flex tw-items-center tw-gap-squid-xxs", className), children: jsxRuntime.jsxs(Join, { glue: () => jsxRuntime.jsx(ChevronLargeRightIcon, { className: "tw-text-grey-500" }), children: [isLoading ? jsxRuntime.jsx(TextSkeleton, {}) : from, isLoading ? jsxRuntime.jsx(TextSkeleton, {}) : to] }) }));
19758
+ return (jsxRuntime.jsx("div", { className: cn("tw-flex tw-max-w-full tw-items-center tw-gap-squid-xxs", className), children: jsxRuntime.jsxs(Join, { glue: () => jsxRuntime.jsx(ChevronLargeRightIcon, { className: "tw-text-grey-500" }), children: [isLoading ? (jsxRuntime.jsx(TextSkeleton, {})) : typeof from === "string" ? (jsxRuntime.jsx(CaptionText, { truncate: true, children: from })) : (from), isLoading ? (jsxRuntime.jsx(TextSkeleton, {})) : typeof to === "string" ? (jsxRuntime.jsx(CaptionText, { truncate: true, children: to })) : (to)] }) }));
19696
19759
  }
19697
19760
 
19698
19761
  function TransactionItem({ className, isLoading = false, status, image, type, hash, fromChain, toChain, fromAmount, toAmount, timestamp, variant = "full", }) {
@@ -19812,6 +19875,8 @@ function Toast({ headerContent, actionsContent, description, chipLabel, title, }
19812
19875
  }, rounded: "sm", children: [headerContent, jsxRuntime.jsx("header", { className: "tw-flex tw-flex-col tw-items-center tw-justify-center tw-self-stretch tw-px-0 tw-py-squid-xxs", children: jsxRuntime.jsx(BodyText, { size: "small", className: "tw-text-grey-100", children: title }) }), jsxRuntime.jsx(CaptionText, { className: "tw-text-center tw-text-material-light-thick", children: description }), jsxRuntime.jsx("menu", { className: "tw-flex tw-flex-col tw-items-center tw-justify-center tw-gap-squid-xs tw-self-stretch tw-pt-squid-xs", children: actionsContent }), chipLabel && (jsxRuntime.jsx(Chip, { label: chipLabel, className: "tw-absolute tw-right-squid-xs tw-top-squid-xs" }))] }));
19813
19876
  }
19814
19877
 
19878
+ const BACKGROUND_COLOR_CSS_VARIABLE = "--token-details-view-bg-color";
19879
+ const TEXT_COLOR_CSS_VARIABLE = "--token-details-view-text-color";
19815
19880
  const DEFAULT_TIMEFRAME = "1D";
19816
19881
  const DefaultChart = ({ timeframe, }) => (jsxRuntime.jsx("div", { className: "tw-flex tw-h-full tw-w-full tw-items-center tw-justify-center", children: jsxRuntime.jsxs(BodyText, { size: "small", children: ["Chart (", timeframe, ")"] }) }));
19817
19882
  const TokenModalHeader = ({ token, chain, onLikeToken, onClose, isFavorite, }) => (jsxRuntime.jsxs("div", { className: "tw-flex tw-w-full tw-items-start tw-justify-between", children: [jsxRuntime.jsx("div", { className: "tw-flex tw-items-center tw-gap-squid-xs tw-pb-squid-xs", children: jsxRuntime.jsx(BadgeImage, { image: {
@@ -19829,34 +19894,35 @@ const TokenInfo = ({ token, tokenPrice, priceChange, loading, }) => (jsxRuntime.
19829
19894
  const BalanceInfo = ({ balance, balanceUSD, token, loading, }) => (jsxRuntime.jsxs("div", { className: "tw-flex tw-flex-col", children: [jsxRuntime.jsx(CaptionText, { className: "tw-text-grey-400", children: "Balance" }), jsxRuntime.jsxs("div", { className: "tw-flex tw-flex-row tw-justify-between", children: [jsxRuntime.jsxs("span", { className: "tw-flex tw-flex-row tw-items-center tw-gap-squid-xxs", children: [jsxRuntime.jsx("img", { src: token.image, alt: token.name, className: "tw-h-squid-m tw-w-squid-m tw-rounded-full" }), jsxRuntime.jsxs(BodyText, { size: "small", loading: { isLoading: loading, width: "80px" }, children: [balance, " ", token.symbol] })] }), jsxRuntime.jsxs(CaptionText, { className: "tw-text-grey-500", loading: { isLoading: loading, width: "60px" }, children: [jsxRuntime.jsx("span", { className: "tw-opacity-66", children: "$" }), balanceUSD] })] })] }));
19830
19895
  const MarketDataItem = ({ label, value, showDollar, loading, }) => (jsxRuntime.jsxs("div", { className: "tw-flex tw-flex-col", children: [jsxRuntime.jsx(CaptionText, { className: "tw-text-grey-500", children: label }), jsxRuntime.jsxs(CaptionText, { loading: { isLoading: loading, width: "60px" }, children: [showDollar && jsxRuntime.jsx("span", { className: "tw-text-grey-500", children: "$" }), value] })] }));
19831
19896
  const TokenMarketData = ({ volume24h, marketCap, totalSupply, loading, }) => (jsxRuntime.jsxs("div", { className: "tw-flex tw-h-full tw-w-full tw-flex-row tw-items-center tw-justify-between", children: [jsxRuntime.jsx(MarketDataItem, { label: "24h volume", value: volume24h, showDollar: true, loading: loading }), jsxRuntime.jsx(MarketDataItem, { label: "Market cap", value: marketCap, showDollar: true, loading: loading }), jsxRuntime.jsx(MarketDataItem, { label: "Total supply", value: totalSupply, loading: loading })] }));
19832
- const SwapButton = ({ label, color, icon, onClick, textColor, }) => (jsxRuntime.jsxs("div", { className: "tw-flex tw-flex-1 tw-flex-col tw-items-center tw-justify-center tw-gap-squid-xs", children: [jsxRuntime.jsx(IconButton, { icon: icon, className: "tw-text-grey-900", style: {
19833
- height: "40px",
19834
- width: "40px",
19835
- borderRadius: "100%",
19836
- backgroundColor: color,
19837
- color: textColor,
19838
- }, onClick: onClick }), jsxRuntime.jsx(CaptionText, { className: "tw-text-grey-400", children: label })] }));
19839
- const SwapButtons = ({ token, onSwapFrom, onSwapTo, }) => (jsxRuntime.jsxs("div", { className: "tw-flex tw-justify-between tw-py-5", children: [jsxRuntime.jsx(SwapButton, { label: "Swap From", color: token.color, textColor: token.textColor, icon: jsxRuntime.jsx(ArrowUpIcon, {}), onClick: () => {
19840
- onSwapFrom({ address: token.address, chainId: token.chainId });
19841
- } }), jsxRuntime.jsx(SwapButton, { label: "Swap To", color: token.color, textColor: token.textColor, icon: jsxRuntime.jsx(ArrowDownIcon, {}), onClick: () => {
19842
- onSwapTo({ address: token.address, chainId: token.chainId });
19843
- } })] }));
19844
- const TimeframeChip = ({ label, isSelected, onClick, }) => (jsxRuntime.jsx(Chip, { className: cn("tw-w-squid-xl tw-cursor-pointer hover:tw-bg-material-light-thin", isSelected
19845
- ? "!tw-bg-grey-300 !tw-text-grey-900"
19846
- : "tw-bg-transparent !tw-text-grey-600"), label: label, onClick: onClick }));
19897
+ const FooterButton = (_a) => {
19898
+ var { icon, label } = _a, props = __rest$1(_a, ["icon", "label"]);
19899
+ return (jsxRuntime.jsxs("div", { className: "tw-flex tw-flex-1 tw-flex-col tw-items-center tw-justify-center tw-gap-squid-xs", children: [jsxRuntime.jsx("button", Object.assign({}, props, { className: "tw-flex tw-h-squid-xl tw-w-squid-xl tw-items-center tw-justify-center tw-rounded-full tw-border tw-border-material-light-thin tw-text-grey-900 tw-shadow-elevation-light-1 disabled:tw-bg-grey-700", style: props.disabled
19900
+ ? undefined
19901
+ : {
19902
+ backgroundColor: `var(${BACKGROUND_COLOR_CSS_VARIABLE})`,
19903
+ color: `var(${TEXT_COLOR_CSS_VARIABLE})`,
19904
+ }, children: icon })), jsxRuntime.jsx(CaptionText, { className: props.disabled ? "tw-text-grey-700" : "tw-text-grey-400", children: label })] }));
19905
+ };
19906
+ const FooterButtons = ({ buttons }) => (jsxRuntime.jsx("div", { className: "tw-flex tw-justify-between tw-py-5", children: buttons.map((button) => (jsxRuntime.jsx(FooterButton, Object.assign({}, button), button.label))) }));
19907
+ const TimeframeChip = ({ label, isSelected, onClick, }) => (jsxRuntime.jsx("button", { onClick: onClick, className: "tw-rounded-squid-m", children: jsxRuntime.jsx(Chip, { className: cn("tw-w-squid-xl tw-cursor-pointer hover:tw-bg-material-light-thin", isSelected
19908
+ ? "!tw-bg-grey-300 !tw-text-grey-900"
19909
+ : "tw-bg-transparent !tw-text-grey-600"), label: label }) }));
19847
19910
  const ChartTimeframeSelector = ({ selectedTimeframe, onTimeframeChange, }) => {
19848
19911
  const timeframes = ["1H", "1D", "1W", "1Y"];
19849
19912
  return (jsxRuntime.jsx("div", { className: "tw-mt-squid-s tw-flex tw-justify-center tw-gap-squid-xs", children: timeframes.map((timeframe) => (jsxRuntime.jsx(TimeframeChip, { label: timeframe, isSelected: selectedTimeframe === timeframe, onClick: () => {
19850
19913
  onTimeframeChange(timeframe);
19851
19914
  } }, timeframe))) }));
19852
19915
  };
19853
- const TokenDetailsView = ({ isOpen, onClose, token, chain, tokenPrice, priceChange, balance, balanceUSD, volume24h, marketCap, totalSupply, loading, onLikeToken, isFavorite, Chart = DefaultChart, initialTimeframe = DEFAULT_TIMEFRAME, onTimeframeChange = () => { }, onSwapFrom, onSwapTo, }) => {
19916
+ const TokenDetailsView = ({ isOpen, onClose, token, chain, tokenPrice, priceChange, balance, balanceUSD, volume24h, marketCap, totalSupply, loading, onLikeToken, isFavorite, Chart = DefaultChart, initialTimeframe = DEFAULT_TIMEFRAME, onTimeframeChange = () => { }, footerButtons, backdropStyle, colors, }) => {
19854
19917
  const [selectedTimeframe, setSelectedTimeframe] = React$1.useState(initialTimeframe);
19855
19918
  const handleTimeframeChange = (timeframe) => {
19856
19919
  setSelectedTimeframe(timeframe);
19857
19920
  onTimeframeChange(timeframe);
19858
19921
  };
19859
- return (jsxRuntime.jsx(Modal, { animateOpacity: true, isOpen: isOpen, onBackdropClick: onClose, width: "extra-large", className: "tw-my-auto", children: jsxRuntime.jsxs(ModalContent, { className: "tw-flex tw-min-h-[631px] tw-flex-col !tw-bg-grey-900 tw-pt-squid-m", children: [jsxRuntime.jsxs("div", { className: "tw-px-squid-m", children: [jsxRuntime.jsx(TokenModalHeader, { token: token, chain: chain, onLikeToken: onLikeToken, isFavorite: isFavorite, onClose: onClose }), jsxRuntime.jsx(TokenInfo, { token: token, tokenPrice: tokenPrice, priceChange: priceChange, loading: loading })] }), jsxRuntime.jsxs("div", { className: "tw-flex tw-w-full tw-grow tw-flex-col tw-justify-between tw-text-center", children: [jsxRuntime.jsx("span", { className: "tw-flex tw-h-full tw-grow tw-items-center tw-justify-center", children: loading ? jsxRuntime.jsx(Loader, {}) : jsxRuntime.jsx(Chart, { timeframe: selectedTimeframe }) }), jsxRuntime.jsx(ChartTimeframeSelector, { selectedTimeframe: selectedTimeframe, onTimeframeChange: handleTimeframeChange })] }), jsxRuntime.jsx("hr", { className: "tw-my-squid-xs tw-h-px tw-border-0 tw-bg-material-light-thin" }), jsxRuntime.jsxs("div", { className: "tw-flex tw-flex-col", children: [jsxRuntime.jsxs("div", { className: "tw-gap-squid-sm tw-flex tw-flex-col tw-px-squid-m", children: [jsxRuntime.jsx(BalanceInfo, { balance: balance, balanceUSD: balanceUSD, token: token, loading: loading }), jsxRuntime.jsx("hr", { className: "tw-my-squid-xs tw-h-px tw-border-0 tw-bg-material-light-thin" }), jsxRuntime.jsx(TokenMarketData, { volume24h: volume24h, marketCap: marketCap, totalSupply: totalSupply, loading: loading })] }), jsxRuntime.jsx("hr", { className: "tw-my-squid-xs tw-h-px tw-border-0 tw-bg-material-light-thin" }), jsxRuntime.jsx(SwapButtons, { token: token, onSwapFrom: onSwapFrom, onSwapTo: onSwapTo })] })] }) }));
19922
+ return (jsxRuntime.jsx(Modal, { animateOpacity: true, isOpen: isOpen, onBackdropClick: onClose, width: "extra-large", className: "tw-my-auto", backdropStyle: backdropStyle, children: jsxRuntime.jsxs(ModalContent, { style: {
19923
+ [BACKGROUND_COLOR_CSS_VARIABLE]: colors === null || colors === void 0 ? void 0 : colors.backgroundColor,
19924
+ [TEXT_COLOR_CSS_VARIABLE]: colors === null || colors === void 0 ? void 0 : colors.textColor,
19925
+ }, className: "tw-flex tw-min-h-[631px] tw-flex-col !tw-bg-grey-900 tw-pt-squid-m", children: [jsxRuntime.jsxs("div", { className: "tw-px-squid-m", children: [jsxRuntime.jsx(TokenModalHeader, { token: token, chain: chain, onLikeToken: onLikeToken, isFavorite: isFavorite, onClose: onClose }), jsxRuntime.jsx(TokenInfo, { token: token, tokenPrice: tokenPrice, priceChange: priceChange, loading: loading })] }), jsxRuntime.jsxs("div", { className: "tw-flex tw-w-full tw-grow tw-flex-col tw-justify-between tw-text-center", children: [jsxRuntime.jsx("span", { className: "tw-flex tw-h-full tw-grow tw-items-center tw-justify-center", children: loading ? jsxRuntime.jsx(Loader, {}) : jsxRuntime.jsx(Chart, { timeframe: selectedTimeframe }) }), jsxRuntime.jsx(ChartTimeframeSelector, { selectedTimeframe: selectedTimeframe, onTimeframeChange: handleTimeframeChange })] }), jsxRuntime.jsx("hr", { className: "tw-my-squid-xs tw-h-px tw-border-0 tw-bg-material-light-thin" }), jsxRuntime.jsxs("div", { className: "tw-flex tw-flex-col", children: [jsxRuntime.jsxs("div", { className: "tw-gap-squid-sm tw-flex tw-flex-col tw-px-squid-m", children: [jsxRuntime.jsx(BalanceInfo, { balance: balance, balanceUSD: balanceUSD, token: token, loading: loading }), jsxRuntime.jsx("hr", { className: "tw-my-squid-xs tw-h-px tw-border-0 tw-bg-material-light-thin" }), jsxRuntime.jsx(TokenMarketData, { volume24h: volume24h, marketCap: marketCap, totalSupply: totalSupply, loading: loading })] }), jsxRuntime.jsx("hr", { className: "tw-my-squid-xs tw-h-px tw-border-0 tw-bg-material-light-thin" }), jsxRuntime.jsx(FooterButtons, { buttons: footerButtons })] })] }) }));
19860
19926
  };
19861
19927
 
19862
19928
  const WIDTH_SM = "69";
@@ -27579,16 +27645,16 @@ function FilterButton({ selected, numApplied = 0, onClick, }) {
27579
27645
  : "!tw-border-transparent !tw-bg-grey-800 !tw-text-grey-500"), onClick: onClick, children: jsxRuntime.jsx(FilterIcon, {}) }), numApplied > 0 && (jsxRuntime.jsx("div", { className: "tw-absolute tw-right-0 tw-top-0 tw-h-squid-m tw-w-squid-xl -tw-translate-y-1/2 tw-translate-x-1/2 tw-rounded-full tw-bg-highlight-700 tw-text-center tw-leading-[1]", children: jsxRuntime.jsx(CaptionText, { children: numApplied }) }))] }));
27580
27646
  }
27581
27647
 
27582
- function SettingsButton({ label, isSelected = false, onClick, }) {
27583
- return (jsxRuntime.jsx("button", { onClick: onClick, className: cn("tw-flex tw-h-[30px] tw-items-center tw-justify-center tw-self-stretch tw-rounded-squid-xs tw-border-2 tw-border-transparent tw-p-squid-xs -tw-outline-offset-2 hover:tw-bg-material-light-thin", isSelected && "tw-outline tw-outline-2 tw-outline-royal-500"), children: jsxRuntime.jsx(CaptionText, { className: "!tw-font-medium", children: label }) }));
27584
- }
27585
-
27586
27648
  const IconButton = React$1.forwardRef((_a, ref) => {
27587
27649
  var { icon, disabled = false } = _a, props = __rest$1(_a, ["icon", "disabled"]);
27588
27650
  return (jsxRuntime.jsx("button", Object.assign({}, props, { ref: ref, disabled: disabled, className: cn("tw-flex tw-h-8 tw-w-8 tw-min-w-8 tw-items-center tw-justify-center tw-rounded-squid-xs hover:tw-bg-material-light-thin", disabled ? "tw-text-grey-600" : "tw-text-grey-300", props.className), children: icon })));
27589
27651
  });
27590
27652
  IconButton.displayName = "IconButton";
27591
27653
 
27654
+ function SettingsButton({ label, isSelected = false, onClick, }) {
27655
+ return (jsxRuntime.jsx("button", { onClick: onClick, className: cn("tw-flex tw-h-[30px] tw-items-center tw-justify-center tw-self-stretch tw-rounded-squid-xs tw-border-2 tw-border-transparent tw-p-squid-xs -tw-outline-offset-2 hover:tw-bg-material-light-thin", isSelected && "tw-outline tw-outline-2 tw-outline-royal-500"), children: jsxRuntime.jsx(CaptionText, { className: "!tw-font-medium", children: label }) }));
27656
+ }
27657
+
27592
27658
  function AssetsView({ chains, favoriteTokens, popularTokens, userTokens, }) {
27593
27659
  const matchesMobileLg = useMediaQuery(MEDIA_QUERIES.MOBILE_LG.media);
27594
27660
  return (jsxRuntime.jsxs(ProductCard, { children: [jsxRuntime.jsx(NavigationBar, { displayBackButton: true, subtitle: "Select a token to receive" }), jsxRuntime.jsx("div", { className: "tw-max-h-[60px] tw-px-squid-m tw-py-squid-xs", children: jsxRuntime.jsx(Input, {}) }), jsxRuntime.jsx(BorderedContainer, { children: jsxRuntime.jsxs("div", { className: cn("tw-grid", matchesMobileLg
@@ -69556,7 +69622,17 @@ function rgbToHex(r, g, b) {
69556
69622
  // let bgColor = '#17191C'
69557
69623
  // let resultingColor = blendColors(foregroundColor, bgColor)
69558
69624
  // console.log(resultingColor) // Output: ~#2f3033
69559
- function blendColors(foreground, background, factor = 1) {
69625
+ function blendColors(foreground, background) {
69626
+ const fg = hexToRgb(foreground);
69627
+ const bg = hexToRgb(background);
69628
+ if (fg == null || bg == null)
69629
+ return null;
69630
+ const r = Math.round(fg.r * fg.a + bg.r * (1 - fg.a));
69631
+ const g = Math.round(fg.g * fg.a + bg.g * (1 - fg.a));
69632
+ const b = Math.round(fg.b * fg.a + bg.b * (1 - fg.a));
69633
+ return rgbToHex(r, g, b);
69634
+ }
69635
+ function adjustColorForContrast(foreground, background, factor = 1) {
69560
69636
  const fg = parseColor(foreground);
69561
69637
  const bg = parseColor(background);
69562
69638
  if (fg == null || bg == null)
@@ -69615,6 +69691,7 @@ function ThemeProvider(_a) {
69615
69691
  }
69616
69692
 
69617
69693
  exports.ANIMATION_DURATIONS = ANIMATION_DURATIONS;
69694
+ exports.AccountsButton = AccountsButton;
69618
69695
  exports.ActionLayout = ActionLayout;
69619
69696
  exports.ActionLineOutRow = ActionLineOutRow;
69620
69697
  exports.ActionProperties = ActionProperties;
@@ -69672,6 +69749,7 @@ exports.CSS_VARS = CSS_VARS;
69672
69749
  exports.Calendar = Calendar;
69673
69750
  exports.CaptionText = CaptionText;
69674
69751
  exports.CatSquareIcon = CatSquareIcon;
69752
+ exports.CelebrateIcon = CelebrateIcon;
69675
69753
  exports.ChainLink = ChainLink;
69676
69754
  exports.Checkmark1Icon = Checkmark1Icon;
69677
69755
  exports.Checkmark2Icon = Checkmark2Icon;
@@ -69755,6 +69833,7 @@ exports.HomeIcon = HomeIcon;
69755
69833
  exports.IconButton = IconButton;
69756
69834
  exports.IconLabel = IconLabel;
69757
69835
  exports.Image = Image$1;
69836
+ exports.ImageGroup = ImageGroup;
69758
69837
  exports.ImageIcon = ImageIcon;
69759
69838
  exports.ImageSparkle = ImageSparkle;
69760
69839
  exports.IncompleteAction = IncompleteAction;
@@ -69789,6 +69868,7 @@ exports.ModalContent = ModalContent;
69789
69868
  exports.ModalContentDivider = ModalContentDivider;
69790
69869
  exports.MoonIcon = MoonIcon;
69791
69870
  exports.NavigationBar = NavigationBar;
69871
+ exports.NewsIcon = NewsIcon;
69792
69872
  exports.NewspaperIcon = NewspaperIcon;
69793
69873
  exports.NotAllowedIcon = NotAllowedIcon;
69794
69874
  exports.NumericInput = NumericInput;
@@ -69827,6 +69907,7 @@ exports.SettingsSlider = SettingsSlider;
69827
69907
  exports.SettingsSliderIcon = SettingsSliderIcon;
69828
69908
  exports.ShoppingBagIcon = ShoppingBagIcon;
69829
69909
  exports.SizeTransition = SizeTransition;
69910
+ exports.SmileFilledIcon = SmileFilledIcon;
69830
69911
  exports.SmileIcon = SmileIcon;
69831
69912
  exports.SnapIcon = SnapIcon;
69832
69913
  exports.SortIcon = SortIcon;
@@ -69838,6 +69919,7 @@ exports.SquareArrowTopRight2Icon = SquareArrowTopRight2Icon;
69838
69919
  exports.SquidLogo = SquidLogo;
69839
69920
  exports.SquidVector = SquidVector;
69840
69921
  exports.StakeAction = StakeAction;
69922
+ exports.StarLinesIcon = StarLinesIcon;
69841
69923
  exports.StartAction = StartAction;
69842
69924
  exports.StocksIcon = StocksIcon;
69843
69925
  exports.SuccessAction = SuccessAction;
@@ -69897,6 +69979,7 @@ exports.WalletLink = WalletLink;
69897
69979
  exports.WalletsView = WalletsView;
69898
69980
  exports.WrapAction = WrapAction;
69899
69981
  exports.XSocial = XSocial;
69982
+ exports.adjustColorForContrast = adjustColorForContrast;
69900
69983
  exports.baseTailwindConfig = baseTailwindConfig;
69901
69984
  exports.blendColors = blendColors;
69902
69985
  exports.cn = cn;
@@ -0,0 +1,6 @@
1
+ interface ImageGroupProps {
2
+ imageUrls: string[];
3
+ badgeUrl?: string;
4
+ }
5
+ export declare function ImageGroup({ imageUrls, badgeUrl }: ImageGroupProps): import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -1,6 +1,7 @@
1
1
  export * from "./BadgeImage";
2
2
  export * from "./IconLabel";
3
3
  export * from "./Image";
4
+ export * from "./ImageGroup";
4
5
  export * from "./LoadingSkeleton";
5
6
  export * from "./PriceChange";
6
7
  export * from "./TransactionState";
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ interface AccountsButtonProps extends React.ComponentProps<"button"> {
3
+ imageUrls: string[];
4
+ }
5
+ export declare function AccountsButton({ imageUrls, ...props }: AccountsButtonProps): import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -1,3 +1,4 @@
1
+ export * from "./AccountsButton";
1
2
  export * from "./AddressButton";
2
3
  export * from "./ArrowButton";
3
4
  export * from "./AssetsButton";
@@ -6,6 +7,6 @@ export * from "./Button";
6
7
  export * from "./Chip";
7
8
  export * from "./FeeButton";
8
9
  export * from "./FilterButton";
9
- export * from "./SettingsButton";
10
10
  export * from "./IconButton";
11
11
  export * from "./SettingsButton";
12
+ export * from "./SettingsButton";
@@ -1,3 +1,4 @@
1
+ import { type ComponentProps } from "react";
1
2
  export declare function ArrowRightIcon(): import("react/jsx-runtime").JSX.Element;
2
3
  export declare function ArrowRightDownIcon(): import("react/jsx-runtime").JSX.Element;
3
4
  export declare function ArrowRightUpIcon(): import("react/jsx-runtime").JSX.Element;
@@ -17,9 +18,7 @@ export declare function ChevronLargeDownIcon({ size, className, }: {
17
18
  size?: string;
18
19
  className?: string;
19
20
  }): import("react/jsx-runtime").JSX.Element;
20
- export declare function ChevronTopIcon({ className }: {
21
- className?: string;
22
- }): import("react/jsx-runtime").JSX.Element;
21
+ export declare function ChevronTopIcon(props: ComponentProps<"svg">): import("react/jsx-runtime").JSX.Element;
23
22
  export declare function ChevronLargeRightIcon({ size, className, }: {
24
23
  size?: string;
25
24
  className?: string;
@@ -82,3 +82,18 @@ export declare function CommandIcon({ size, className, }: {
82
82
  size?: string;
83
83
  className?: string;
84
84
  }): import("react/jsx-runtime").JSX.Element;
85
+ export declare function NewsIcon({ className }: {
86
+ className?: string;
87
+ }): import("react/jsx-runtime").JSX.Element;
88
+ export declare function CelebrateIcon({ className, size, }: {
89
+ className?: string;
90
+ size?: string;
91
+ }): import("react/jsx-runtime").JSX.Element;
92
+ export declare function SmileFilledIcon({ className, size, }: {
93
+ className?: string;
94
+ size?: string;
95
+ }): import("react/jsx-runtime").JSX.Element;
96
+ export declare function StarLinesIcon({ size, className, }: {
97
+ size?: string;
98
+ className?: string;
99
+ }): import("react/jsx-runtime").JSX.Element;
@@ -1,5 +1,5 @@
1
1
  import { type ImageProps } from "../badges";
2
- export declare function ImageStack({ imageUrls, spacing, stackOnTop, addExtraPadding, removeDuplicates, ...imageProps }: {
2
+ interface ImageStackProps extends ImageProps {
3
3
  imageUrls: string[];
4
4
  spacing: string;
5
5
  border?: ImageProps["border"];
@@ -8,4 +8,6 @@ export declare function ImageStack({ imageUrls, spacing, stackOnTop, addExtraPad
8
8
  stackOnTop?: boolean;
9
9
  addExtraPadding?: boolean;
10
10
  removeDuplicates?: boolean;
11
- }): import("react/jsx-runtime").JSX.Element;
11
+ }
12
+ export declare function ImageStack({ imageUrls, spacing, stackOnTop, addExtraPadding, removeDuplicates, ...imageProps }: ImageStackProps): import("react/jsx-runtime").JSX.Element;
13
+ export {};
@@ -8,6 +8,7 @@ interface ModalProps {
8
8
  maxHeight?: boolean;
9
9
  width?: ModalWidth;
10
10
  animateOpacity?: boolean;
11
+ backdropStyle?: React.CSSProperties;
11
12
  }
12
- export declare function Modal({ children, className, onBackdropClick, isOpen: _isOpen, maxHeight, width, animateOpacity, }: ModalProps): false | import("react/jsx-runtime").JSX.Element;
13
+ export declare function Modal({ children, className, onBackdropClick, isOpen: _isOpen, maxHeight, width, animateOpacity, backdropStyle, }: ModalProps): false | import("react/jsx-runtime").JSX.Element;
13
14
  export {};