@0xsquid/ui 2.6.8-send-beta.0 → 2.6.8
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 +272 -88
- package/dist/cjs/types/components/badges/PriceChange.d.ts +3 -1
- package/dist/cjs/types/components/badges/index.d.ts +1 -1
- package/dist/cjs/types/components/buttons/Button.d.ts +2 -1
- package/dist/cjs/types/components/controls/NumericInput.d.ts +8 -1
- package/dist/cjs/types/components/feedback/LoadingText.d.ts +7 -0
- package/dist/cjs/types/components/icons/Loader.d.ts +1 -1
- package/dist/cjs/types/components/icons/PaymentIcons.d.ts +12 -0
- package/dist/cjs/types/components/icons/index.d.ts +1 -0
- package/dist/cjs/types/components/layout/SwapConfiguration.d.ts +17 -1
- package/dist/cjs/types/core/index.d.ts +1 -1
- package/dist/cjs/types/core/utils.d.ts +16 -0
- package/dist/cjs/types/hooks/index.d.ts +3 -2
- package/dist/cjs/types/hooks/useNumericInput.d.ts +2 -1
- package/dist/cjs/types/services/internal/colorService.d.ts +0 -2
- package/dist/cjs/types/stories/buttons/Button.stories.d.ts +3 -0
- package/dist/cjs/types/stories/controls/NumericInput.stories.d.ts +17 -0
- package/dist/{esm/types/stories/badges → cjs/types/stories/feedback}/Loader.stories.d.ts +1 -1
- package/dist/cjs/types/stories/{badges → feedback}/LoadingSkeleton.stories.d.ts +2 -2
- package/dist/cjs/types/stories/feedback/LoadingText.stories.d.ts +6 -0
- package/dist/esm/index.js +250 -71
- package/dist/esm/types/components/badges/PriceChange.d.ts +3 -1
- package/dist/esm/types/components/badges/index.d.ts +1 -1
- package/dist/esm/types/components/buttons/Button.d.ts +2 -1
- package/dist/esm/types/components/controls/NumericInput.d.ts +8 -1
- package/dist/esm/types/components/feedback/LoadingText.d.ts +7 -0
- package/dist/esm/types/components/icons/Loader.d.ts +1 -1
- package/dist/esm/types/components/icons/PaymentIcons.d.ts +12 -0
- package/dist/esm/types/components/icons/index.d.ts +1 -0
- package/dist/esm/types/components/layout/SwapConfiguration.d.ts +17 -1
- package/dist/esm/types/core/index.d.ts +1 -1
- package/dist/esm/types/core/utils.d.ts +16 -0
- package/dist/esm/types/hooks/index.d.ts +3 -2
- package/dist/esm/types/hooks/useNumericInput.d.ts +2 -1
- package/dist/esm/types/services/internal/colorService.d.ts +0 -2
- package/dist/esm/types/stories/buttons/Button.stories.d.ts +3 -0
- package/dist/esm/types/stories/controls/NumericInput.stories.d.ts +17 -0
- package/dist/{cjs/types/stories/badges → esm/types/stories/feedback}/Loader.stories.d.ts +1 -1
- package/dist/esm/types/stories/{badges → feedback}/LoadingSkeleton.stories.d.ts +2 -2
- package/dist/esm/types/stories/feedback/LoadingText.stories.d.ts +6 -0
- package/dist/index.css +1 -1
- package/dist/index.d.ts +87 -16
- package/package.json +1 -1
- /package/dist/cjs/types/components/{badges → feedback}/LoadingSkeleton.d.ts +0 -0
- /package/dist/esm/types/components/{badges → feedback}/LoadingSkeleton.d.ts +0 -0
package/dist/cjs/index.js
CHANGED
|
@@ -3000,6 +3000,39 @@ function hashStringToIndex(str, max) {
|
|
|
3000
3000
|
}
|
|
3001
3001
|
return index;
|
|
3002
3002
|
}
|
|
3003
|
+
/**
|
|
3004
|
+
* Formats a value for CSS properties by adding 'px' if no unit is present.
|
|
3005
|
+
* @param {string | number} value - The value to format (can be a number or string)
|
|
3006
|
+
* @returns {string} - The formatted CSS value with appropriate units
|
|
3007
|
+
*
|
|
3008
|
+
* @example
|
|
3009
|
+
* // Returns "20px"
|
|
3010
|
+
* formatCSSValue(20)
|
|
3011
|
+
*
|
|
3012
|
+
* @example
|
|
3013
|
+
* // Returns "5rem"
|
|
3014
|
+
* formatCSSValue("5rem")
|
|
3015
|
+
*/
|
|
3016
|
+
function formatCSSValue(value) {
|
|
3017
|
+
if (typeof value === "number" || /^\d+$/.test(value.toString())) {
|
|
3018
|
+
return `${value}px`;
|
|
3019
|
+
}
|
|
3020
|
+
const validCSSUnits = /(px|em|rem|%|vh|vw|vmin|vmax|ex|ch|cm|mm|in|pt|pc)$/i;
|
|
3021
|
+
if (validCSSUnits.test(String(value))) {
|
|
3022
|
+
return value;
|
|
3023
|
+
}
|
|
3024
|
+
return `${pxToRem(value)}rem`;
|
|
3025
|
+
}
|
|
3026
|
+
const remToPx = (rem, baseFontSize = 16) => {
|
|
3027
|
+
if (typeof rem === "string")
|
|
3028
|
+
return Number(rem.replace("rem", "")) * baseFontSize;
|
|
3029
|
+
return rem * baseFontSize;
|
|
3030
|
+
};
|
|
3031
|
+
const pxToRem = (px, baseFontSize = 16) => {
|
|
3032
|
+
if (typeof px === "string")
|
|
3033
|
+
return Number(px.replace("px", "")) / baseFontSize;
|
|
3034
|
+
return px / baseFontSize;
|
|
3035
|
+
};
|
|
3003
3036
|
|
|
3004
3037
|
const spacing$1 = {
|
|
3005
3038
|
"squid-xxs": "0.3125rem", // 5px
|
|
@@ -3063,6 +3096,15 @@ const backgrounds = {
|
|
|
3063
3096
|
rgba(223, 159, 196, 1) 91.82%,
|
|
3064
3097
|
rgba(180, 143, 233, 1) 100%
|
|
3065
3098
|
)`,
|
|
3099
|
+
shimmer: "linear-gradient(90deg, currentColor 0%, currentColor 50%, rgba(255, 255, 255, 0.4) 57.5%, currentColor 65%, currentColor 100%)",
|
|
3100
|
+
"shimmer-light": `linear-gradient(90deg, color-mix(in srgb, var(${themeKeysToCssVariables.color["grey-100"].cssVariable}) 40%, transparent) 0%, var(${themeKeysToCssVariables.color["grey-100"].cssVariable}) 10%, color-mix(in srgb, var(${themeKeysToCssVariables.color["grey-100"].cssVariable}) 40%, transparent) 60%)`,
|
|
3101
|
+
"shimmer-dark": `linear-gradient(90deg, color-mix(in srgb, var(${themeKeysToCssVariables.color["grey-900"].cssVariable}) 40%, transparent) 0%, var(${themeKeysToCssVariables.color["grey-900"].cssVariable}) 10%, color-mix(in srgb, var(${themeKeysToCssVariables.color["grey-900"].cssVariable}) 40%, transparent) 60%)`,
|
|
3102
|
+
"loading-gradient": `linear-gradient(
|
|
3103
|
+
to right,
|
|
3104
|
+
var(${themeKeysToCssVariables.color["material-light-thin"].cssVariable}) 43%,
|
|
3105
|
+
var(--mid-color) 52%,
|
|
3106
|
+
var(${themeKeysToCssVariables.color["material-light-thin"].cssVariable}) 56%
|
|
3107
|
+
)`,
|
|
3066
3108
|
};
|
|
3067
3109
|
// Format animation durations object to Tailwind config
|
|
3068
3110
|
// This way Tailwind can generate utility classes for each duration
|
|
@@ -3280,6 +3322,37 @@ const baseTailwindConfig = {
|
|
|
3280
3322
|
opacity: "1",
|
|
3281
3323
|
},
|
|
3282
3324
|
},
|
|
3325
|
+
shimmer: {
|
|
3326
|
+
"0%": {
|
|
3327
|
+
backgroundPosition: "100% center",
|
|
3328
|
+
},
|
|
3329
|
+
"100%": {
|
|
3330
|
+
backgroundPosition: "-100% center",
|
|
3331
|
+
},
|
|
3332
|
+
},
|
|
3333
|
+
"loading-gradient-scroll": {
|
|
3334
|
+
"0%": {
|
|
3335
|
+
transform: "translateX(-56%)",
|
|
3336
|
+
},
|
|
3337
|
+
"100%": {
|
|
3338
|
+
transform: "translateX(0)",
|
|
3339
|
+
},
|
|
3340
|
+
},
|
|
3341
|
+
"squid-animated-loader-dash-grow": {
|
|
3342
|
+
"0%": {
|
|
3343
|
+
"stroke-dasharray": "62.827" /* 1/4 circle visible */,
|
|
3344
|
+
"stroke-dashoffset": "0" /* Starting from the beginning of the path */,
|
|
3345
|
+
},
|
|
3346
|
+
"100%": {
|
|
3347
|
+
"stroke-dasharray": "4141.884" /* 1/2 circle visible */,
|
|
3348
|
+
"stroke-dashoffset": "-20.942" /* Move the beginning of the path to make it grow */,
|
|
3349
|
+
},
|
|
3350
|
+
},
|
|
3351
|
+
"rotate-360": {
|
|
3352
|
+
to: {
|
|
3353
|
+
transform: "rotate(360deg)",
|
|
3354
|
+
},
|
|
3355
|
+
},
|
|
3283
3356
|
},
|
|
3284
3357
|
animation: {
|
|
3285
3358
|
"move-to-right-with-spring-bounce": `move-to-right-with-spring-bounce var(${CSS_VARS.MOVE_WITH_SPRING_BOUNCE_DURATION}, 0s) ease-out both`,
|
|
@@ -3302,6 +3375,10 @@ const baseTailwindConfig = {
|
|
|
3302
3375
|
"display-delayed": `display 0s var(${CSS_VARS.DISPLAY_DELAYED_DURATION}, 0s) ease-out both`,
|
|
3303
3376
|
hide: `hide 0s ease-out forwards`,
|
|
3304
3377
|
"move-loading-cover-to-right": "move-loading-cover-to-right 1.4s linear infinite",
|
|
3378
|
+
shimmer: "shimmer 1.5s linear infinite",
|
|
3379
|
+
"loading-gradient-scroll": "loading-gradient-scroll 1s ease-in-out both infinite",
|
|
3380
|
+
"squid-animated-loader-dash-grow": "squid-animated-loader-dash-grow var(--squid-loader-rotate-duration) infinite alternate ease-in-out",
|
|
3381
|
+
"squid-animated-loader": "rotate-360 var(--squid-loader-rotate-duration) linear infinite",
|
|
3305
3382
|
},
|
|
3306
3383
|
opacity: {
|
|
3307
3384
|
33: "0.33",
|
|
@@ -3368,6 +3445,57 @@ const baseTailwindConfig = {
|
|
|
3368
3445
|
".h-d-screen": {
|
|
3369
3446
|
height: "100dvh",
|
|
3370
3447
|
},
|
|
3448
|
+
".assets-button-mask": {
|
|
3449
|
+
"mask-image": 'url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA3MiA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTAgMjBDMCAxNC44ODE2IDEuOTUyNjIgOS43NjMxMSA1Ljg1Nzg2IDUuODU3ODZDOS43NjMwOSAxLjk1MjY0IDE0Ljg4MTUgMi4yMDcwMmUtMDUgMTkuOTk5OSAxLjg3MzU2ZS0xMEMyNS4xMTg0IC0yLjIwNjkxZS0wNSAzMC4yMzY5IDEuOTUyNiAzNC4xNDIxIDUuODU3ODZDMzQuNjY5NiA2LjM4NTI5IDM1LjE4NzkgNi45MTg3MyAzNS43MDExIDcuNDQ2OTVDMzguOTg4OCAxMC44MzA2IDQyLjA2ODMgMTQgNDYgMTRDNDkuOTMxNyAxNCA1My4wMTEyIDEwLjgzMDYgNTYuMjk4OSA3LjQ0Njk1QzU2LjgxMjEgNi45MTg3MyA1Ny4zMzA0IDYuMzg1MjkgNTcuODU3OSA1Ljg1Nzg2QzYxLjc2MzEgMS45NTI2IDY2Ljg4MTYgLTIuMjA2OTFlLTA1IDcyLjAwMDEgMS44NzM1NmUtMTBWNDBDNjYuODgxNiA0MCA2MS43NjMxIDM4LjA0NzQgNTcuODU3OSAzNC4xNDIxQzU3LjMzMzEgMzMuNjE3MSA1Ni44MTc0IDMzLjA4NjEgNTYuMzA2NSAzMi41NjAyQzUzLjAxNzQgMjkuMTc0IDQ5LjkzNDQgMjYgNDYgMjZDNDIuMDY1NiAyNiAzOC45ODI2IDI5LjE3NCAzNS42OTM1IDMyLjU2MDJDMzUuMTgyNiAzMy4wODYxIDM0LjY2NjkgMzMuNjE3MSAzNC4xNDIxIDM0LjE0MjFDMzAuMjM2OSAzOC4wNDc0IDI1LjExODQgNDAgMTkuOTk5OSA0MEMxNC44ODE1IDQwIDkuNzYzMDkgMzguMDQ3NCA1Ljg1Nzg2IDM0LjE0MjFDMS45NTI2MiAzMC4yMzY5IDAgMjUuMTE4NCAwIDIwWiIgZmlsbD0iI0ZCRkJGRCIgc3R5bGU9ImZpbGw6I0ZCRkJGRDtmaWxsOmNvbG9yKGRpc3BsYXktcDMgMC45ODQwIDAuOTg2MSAwLjk5MDQpO2ZpbGwtb3BhY2l0eToxOyIvPgo8L3N2Zz4=")',
|
|
3450
|
+
"mask-repeat": "no-repeat",
|
|
3451
|
+
},
|
|
3452
|
+
li: {
|
|
3453
|
+
"list-style-type": "none",
|
|
3454
|
+
},
|
|
3455
|
+
".squid-property-gradient-bg-odd-container .squid-property-row-bg:nth-child(odd) > :is(div, button)": {
|
|
3456
|
+
background: `linear-gradient(
|
|
3457
|
+
91deg,
|
|
3458
|
+
/* grey-100 with 0.05 opacity */ var(${themeKeysToCssVariables.color["grey-100-005"].cssVariable}) 0%,
|
|
3459
|
+
transparent 100%
|
|
3460
|
+
)`,
|
|
3461
|
+
},
|
|
3462
|
+
".squid-property-gradient-bg-even-container .squid-property-row-bg:nth-child(even) > :is(div, button)": {
|
|
3463
|
+
background: `linear-gradient(
|
|
3464
|
+
91deg,
|
|
3465
|
+
/* grey-100 with 0.05 opacity */ var(${themeKeysToCssVariables.color["grey-100-005"].cssVariable}) 0%,
|
|
3466
|
+
transparent 100%
|
|
3467
|
+
)`,
|
|
3468
|
+
},
|
|
3469
|
+
":focus-visible": {
|
|
3470
|
+
"@apply tw-outline tw-outline-2 tw-outline-royal-500": {},
|
|
3471
|
+
},
|
|
3472
|
+
":invalid": {
|
|
3473
|
+
"@apply tw-outline-status-negative": {},
|
|
3474
|
+
},
|
|
3475
|
+
":disabled": {
|
|
3476
|
+
cursor: "not-allowed",
|
|
3477
|
+
},
|
|
3478
|
+
"*, *::before, *::after": {
|
|
3479
|
+
boxSizing: "border-box",
|
|
3480
|
+
},
|
|
3481
|
+
"input::-webkit-outer-spin-button, input::-webkit-inner-spin-button": {
|
|
3482
|
+
"-webkit-appearance": "none",
|
|
3483
|
+
margin: "0",
|
|
3484
|
+
},
|
|
3485
|
+
"input[type='number']": {
|
|
3486
|
+
"-moz-appearance": "textfield",
|
|
3487
|
+
},
|
|
3488
|
+
"#squid-lottie-animation #keystroke": {
|
|
3489
|
+
stroke: `var(${themeKeysToCssVariables.color["animation-text"].cssVariable})`,
|
|
3490
|
+
},
|
|
3491
|
+
"#squid-lottie-animation #keyfill": {
|
|
3492
|
+
fill: `var(${themeKeysToCssVariables.color["animation-bg"].cssVariable})`,
|
|
3493
|
+
},
|
|
3494
|
+
".squid-animated-loader-dash": {
|
|
3495
|
+
"@apply tw-animate-squid-animated-loader-dash-grow": {},
|
|
3496
|
+
"stroke-dasharray": "20.942, 62.827" /* Initial visible part: 1/4 circle */,
|
|
3497
|
+
"stroke-dashoffset": "0",
|
|
3498
|
+
},
|
|
3371
3499
|
});
|
|
3372
3500
|
}),
|
|
3373
3501
|
],
|
|
@@ -3663,12 +3791,17 @@ function BadgeImage({ image, badge, extraMarginForBadge = false, className, }) {
|
|
|
3663
3791
|
|
|
3664
3792
|
const LoadingContext = React$1.createContext(false);
|
|
3665
3793
|
const LoadingProvider = LoadingContext.Provider;
|
|
3794
|
+
const loadingGradientClassName = "tw-relative tw-overflow-hidden [--mid-color:transparent] data-[squid-theme-type=dark]:[--mid-color:var(--st-color-material-light-average)] after:tw-content-[''] after:tw-absolute after:tw-block after:tw-top-0 after:tw-left-0 after:tw-h-full after:tw-w-[230%] after:tw-animate-loading-gradient-scroll after:tw-bg-loading-gradient";
|
|
3666
3795
|
function LoadingSkeleton({ className, height = "20", isLoading: isLoadingProp, children, width = "100", }) {
|
|
3667
3796
|
const contextValue = React$1.useContext(LoadingContext);
|
|
3668
3797
|
const isLoading = isLoadingProp !== null && isLoadingProp !== void 0 ? isLoadingProp : contextValue;
|
|
3669
3798
|
if (children && !isLoading)
|
|
3670
3799
|
return children;
|
|
3671
|
-
return (jsxRuntime.
|
|
3800
|
+
return (jsxRuntime.jsx("div", { className: cn("tw-animate-shimmer tw-rounded-full tw-bg-shimmer tw-text-material-light-thin [--gradient-middle-color:transparent] group-data-[squid-theme-type='dark']:[--gradient-middle-color:rgba(255,255,255,0.5)]", className), style: {
|
|
3801
|
+
backgroundSize: "200% 100%",
|
|
3802
|
+
width: formatCSSValue(width),
|
|
3803
|
+
height: formatCSSValue(height),
|
|
3804
|
+
} }));
|
|
3672
3805
|
}
|
|
3673
3806
|
function TextSkeleton(_a) {
|
|
3674
3807
|
var { className, width = ["4em", "6em"], children, isLoading } = _a, props = __rest$1(_a, ["className", "width", "children", "isLoading"]);
|
|
@@ -3679,7 +3812,7 @@ function TextSkeleton(_a) {
|
|
|
3679
3812
|
const t = React$1.useMemo(Math.random, []);
|
|
3680
3813
|
if (isLoading === false)
|
|
3681
3814
|
return children;
|
|
3682
|
-
return (jsxRuntime.jsx("span", Object.assign({ className: cn("
|
|
3815
|
+
return (jsxRuntime.jsx("span", Object.assign({ className: cn("tw-inline-flex tw-rounded-full", loadingGradientClassName, className), style: {
|
|
3683
3816
|
["--min-width"]: minWidth,
|
|
3684
3817
|
["--max-width"]: maxWidth,
|
|
3685
3818
|
width: calcLerp(`var(${minWidthVar})`, `var(${maxWidthVar})`, t),
|
|
@@ -3689,7 +3822,7 @@ function BlockSkeleton(_a) {
|
|
|
3689
3822
|
var { isLoading, className, children } = _a, props = __rest$1(_a, ["isLoading", "className", "children"]);
|
|
3690
3823
|
if (isLoading === false)
|
|
3691
3824
|
return children;
|
|
3692
|
-
return (jsxRuntime.jsx("div", Object.assign({ className: cn("
|
|
3825
|
+
return (jsxRuntime.jsx("div", Object.assign({ className: cn("tw-rounded-squid-s", loadingGradientClassName, className) }, props)));
|
|
3693
3826
|
}
|
|
3694
3827
|
|
|
3695
3828
|
// font size, line height, and letter spacing classes
|
|
@@ -4173,8 +4306,8 @@ function Loader(_a) {
|
|
|
4173
4306
|
var { size = "24", strokeWidth = "2", className, rotateDuration = "0.8s" } = _a, props = __rest$1(_a, ["size", "strokeWidth", "className", "rotateDuration"]);
|
|
4174
4307
|
return (jsxRuntime.jsxs("svg", Object.assign({ width: size, height: size, viewBox: "0 0 32 32", fill: "none" }, props, { style: {
|
|
4175
4308
|
"--squid-loader-rotate-duration": rotateDuration,
|
|
4176
|
-
}, className: cn("squid-animated-loader", className), children: [jsxRuntime.jsx("style", { children: `
|
|
4177
|
-
` }), jsxRuntime.jsxs("g", { id: "Spinner", children: [jsxRuntime.jsx("circle", { id: "Groove", cx: "16.0001", cy: "16", r: "13.3333", stroke: "currentColor", strokeOpacity: "0.1", strokeWidth: strokeWidth }), jsxRuntime.jsx("path", { className: "squid-animated-loader-dash", d: "M16,2.66666 A13.3334,13.3334 0 0,1 16,29.3334", stroke: "currentColor", strokeWidth: strokeWidth, strokeLinecap: "round" })] })] })));
|
|
4309
|
+
}, className: cn("tw-animate-squid-animated-loader", className), children: [jsxRuntime.jsx("style", { children: `
|
|
4310
|
+
` }), jsxRuntime.jsxs("g", { id: "Spinner", children: [jsxRuntime.jsx("circle", { id: "Groove", cx: "16.0001", cy: "16", r: "13.3333", stroke: "currentColor", strokeOpacity: "0.1", strokeWidth: strokeWidth }), jsxRuntime.jsx("path", { className: "tw-squid-animated-loader-dash", d: "M16,2.66666 A13.3334,13.3334 0 0,1 16,29.3334", stroke: "currentColor", strokeWidth: strokeWidth, strokeLinecap: "round" })] })] })));
|
|
4178
4311
|
}
|
|
4179
4312
|
|
|
4180
4313
|
function MarketCapIcon({ size = "20", className, }) {
|
|
@@ -4192,6 +4325,16 @@ function NotAllowedIcon() {
|
|
|
4192
4325
|
return (jsxRuntime.jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", fill: "none", viewBox: "0 0 16 16", children: jsxRuntime.jsx("path", { stroke: "currentColor", strokeLinecap: "round", strokeWidth: "2", d: "M12.243 3.757a6 6 0 00-8.485 8.485m8.485-8.485a6 6 0 11-8.485 8.485m8.485-8.485l-8.486 8.486" }) }));
|
|
4193
4326
|
}
|
|
4194
4327
|
|
|
4328
|
+
function GooglePayIcon({ className, size = "40", }) {
|
|
4329
|
+
return (jsxRuntime.jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 40 40", fill: "none", className: className, children: [jsxRuntime.jsx("rect", { width: "40", height: "40", fill: "white" }), jsxRuntime.jsx("path", { d: "M31.9805 20.2842C31.9805 19.3978 31.901 18.5454 31.7532 17.7273H19.9805V22.5682H26.7077C26.4122 24.125 25.5258 25.4432 24.1963 26.3295V29.4773H28.2532C30.6168 27.2954 31.9805 24.0909 31.9805 20.2842Z", fill: "#4285F4" }), jsxRuntime.jsx("path", { d: "M19.9775 32.4999C23.3525 32.4999 26.182 31.3862 28.2502 29.4771L24.1934 26.3294C23.0797 27.0794 21.6592 27.534 19.9775 27.534C16.7275 27.534 13.9661 25.3407 12.9774 22.3862H8.81836V25.6135C10.8752 29.6931 15.0911 32.4999 19.9775 32.4999Z", fill: "#34A853" }), jsxRuntime.jsx("path", { d: "M12.9805 22.375C12.7305 21.625 12.5827 20.8295 12.5827 20C12.5827 19.1704 12.7305 18.375 12.9805 17.625V14.3977H8.82137C7.96909 16.0795 7.48047 17.9773 7.48047 20C7.48047 22.0228 7.96909 23.9205 8.82137 25.6023L12.06 23.0795L12.9805 22.375Z", fill: "#FABB05" }), jsxRuntime.jsx("path", { d: "M19.9775 12.4773C21.8184 12.4773 23.4547 13.1136 24.7615 14.3409L28.3411 10.7614C26.1706 8.73864 23.3525 7.5 19.9775 7.5C15.0911 7.5 10.8752 10.3068 8.81836 14.3977L12.9774 17.625C13.9661 14.6705 16.7275 12.4773 19.9775 12.4773Z", fill: "#E94235" })] }));
|
|
4330
|
+
}
|
|
4331
|
+
function ApplePayIcon({ className, size = "40", }) {
|
|
4332
|
+
return (jsxRuntime.jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 40 40", fill: "none", className: className, children: [jsxRuntime.jsx("rect", { width: "40", height: "40", fill: "black" }), jsxRuntime.jsx("path", { d: "M30.0044 13.9477C29.1463 14.473 28.4356 15.2074 27.9387 16.0822C27.4418 16.957 27.175 17.9436 27.1632 18.9496C27.1666 20.0819 27.502 21.1883 28.128 22.1318C28.754 23.0753 29.643 23.8144 30.6849 24.2576C30.2741 25.583 29.6661 26.839 28.8814 27.9835C27.7587 29.5998 26.5846 31.2159 24.7983 31.2159C23.012 31.2159 22.5526 30.1781 20.494 30.1781C18.4865 30.1781 17.7719 31.25 16.1386 31.25C14.5053 31.25 13.3656 29.7528 12.0555 27.9154C10.325 25.3415 9.37391 22.3228 9.31641 19.2218C9.31641 14.1178 12.634 11.4128 15.9004 11.4128C17.6358 11.4128 19.082 12.5526 20.1708 12.5526C21.2086 12.5526 22.8249 11.3446 24.7983 11.3446C25.813 11.3185 26.8185 11.5422 27.7264 11.9961C28.6342 12.45 29.4165 13.1202 30.0044 13.9477ZM23.8627 9.18408C24.7326 8.16073 25.2251 6.86987 25.2578 5.52713C25.2592 5.35012 25.2421 5.17344 25.2067 5C23.7124 5.14597 22.3306 5.85819 21.3447 6.99057C20.4663 7.97314 19.9553 9.22953 19.8985 10.5462C19.8992 10.7063 19.9163 10.866 19.9496 11.0226C20.0674 11.0449 20.187 11.0563 20.3069 11.0567C20.9955 11.0019 21.6659 10.8076 22.2772 10.4857C22.8884 10.1638 23.4279 9.72095 23.8627 9.18408Z", fill: "#FBFBFD" })] }));
|
|
4333
|
+
}
|
|
4334
|
+
function CreditCardIcon({ className, size = "30", }) {
|
|
4335
|
+
return (jsxRuntime.jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 30 30", fill: "none", className: className, children: [jsxRuntime.jsx("path", { d: "M6.25 5C4.17893 5 2.5 6.67893 2.5 8.75L2.5 11.25L27.5 11.25V8.74969C27.5 6.67842 25.8209 5 23.75 5L6.25 5Z", fill: "currentColor" }), jsxRuntime.jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M2.5 21.25L2.5 13.75L27.5 13.75L27.5 21.25C27.5 23.3211 25.8211 25 23.75 25L6.25 25C4.17893 25 2.5 23.3211 2.5 21.25ZM8.75 16.25C8.05964 16.25 7.5 16.8096 7.5 17.5C7.5 18.1904 8.05964 18.75 8.75 18.75H12.5C13.1904 18.75 13.75 18.1904 13.75 17.5C13.75 16.8096 13.1904 16.25 12.5 16.25H8.75Z", fill: "currentColor" })] }));
|
|
4336
|
+
}
|
|
4337
|
+
|
|
4195
4338
|
function PercentIcon({ size = "24", className, }) {
|
|
4196
4339
|
return (jsxRuntime.jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: size, height: size, viewBox: "0 0 24 24", fill: "none", className: className, children: [jsxRuntime.jsx("path", { d: "M15.5 8.5L8.5 15.5M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12Z", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), jsxRuntime.jsx("path", { d: "M9 9.875C9.48325 9.875 9.875 9.48325 9.875 9C9.875 8.51675 9.48325 8.125 9 8.125C8.51675 8.125 8.125 8.51675 8.125 9C8.125 9.48325 8.51675 9.875 9 9.875Z", fill: "currentColor", stroke: "currentColor", strokeWidth: "0.75", strokeLinecap: "round", strokeLinejoin: "round" }), jsxRuntime.jsx("path", { d: "M15 15.875C15.4832 15.875 15.875 15.4832 15.875 15C15.875 14.5168 15.4832 14.125 15 14.125C14.5168 14.125 14.125 14.5168 14.125 15C14.125 15.4832 14.5168 15.875 15 15.875Z", fill: "currentColor", stroke: "currentColor", strokeWidth: "0.75", strokeLinecap: "round", strokeLinejoin: "round" })] }));
|
|
4197
4340
|
}
|
|
@@ -4373,14 +4516,23 @@ const priceChangeSignToIconMap = {
|
|
|
4373
4516
|
[PriceChangeSign.NEGATIVE]: (jsxRuntime.jsx(ArrowTriangle, { className: "tw-text-status-negative" })),
|
|
4374
4517
|
[PriceChangeSign.NEUTRAL]: jsxRuntime.jsx(PauseIcon, {}),
|
|
4375
4518
|
};
|
|
4376
|
-
|
|
4519
|
+
const priceChangeSignToTextColorMap = {
|
|
4520
|
+
[PriceChangeSign.POSITIVE]: "tw-text-status-positive",
|
|
4521
|
+
[PriceChangeSign.NEGATIVE]: "tw-text-status-negative",
|
|
4522
|
+
[PriceChangeSign.NEUTRAL]: "tw-text-grey-500",
|
|
4523
|
+
};
|
|
4524
|
+
function PriceChange({ value: rawValue = 0, variant = "small", highlightText = false, triangle = "suffix", }) {
|
|
4377
4525
|
const valueFormatted = Math.abs(Number(rawValue)).toFixed(2);
|
|
4378
4526
|
const sign = Number(rawValue) > 0
|
|
4379
4527
|
? PriceChangeSign.POSITIVE
|
|
4380
4528
|
: Number(rawValue) < 0
|
|
4381
4529
|
? PriceChangeSign.NEGATIVE
|
|
4382
4530
|
: PriceChangeSign.NEUTRAL;
|
|
4383
|
-
|
|
4531
|
+
const textColorClass = highlightText
|
|
4532
|
+
? priceChangeSignToTextColorMap[sign]
|
|
4533
|
+
: "tw-text-grey-500";
|
|
4534
|
+
const triangleElement = triangle !== "none" ? priceChangeSignToIconMap[sign] : null;
|
|
4535
|
+
return (jsxRuntime.jsx("div", { className: cn("tw-flex tw-h-squid-xs tw-items-center tw-justify-end", textColorClass), children: jsxRuntime.jsxs("div", { className: "tw-flex tw-items-center tw-justify-center tw-gap-[2px]", children: [triangle === "prefix" && triangleElement, variant === "small" ? (jsxRuntime.jsx(CaptionText, { className: valueWrapperClassName, children: valueFormatted })) : (jsxRuntime.jsx(BodyText, { size: "small", className: valueWrapperClassName, children: valueFormatted })), variant === "small" ? (jsxRuntime.jsx(CaptionText, { className: cn("!tw-leading-[10px]", highlightText ? textColorClass : "tw-text-grey-600"), children: "%" })) : (jsxRuntime.jsx(BodyText, { size: "small", className: cn("!tw-leading-[10px]", highlightText ? textColorClass : "tw-text-grey-600"), children: "%" })), triangle === "suffix" && triangleElement] }) }));
|
|
4384
4536
|
}
|
|
4385
4537
|
|
|
4386
4538
|
const statusBgClassMap$1 = {
|
|
@@ -4471,6 +4623,23 @@ function ImageStack(_a) {
|
|
|
4471
4623
|
: undefined }, imageProps), index))) })));
|
|
4472
4624
|
}
|
|
4473
4625
|
|
|
4626
|
+
const renderGradient = (variant) => {
|
|
4627
|
+
switch (variant) {
|
|
4628
|
+
case "primary":
|
|
4629
|
+
return "group-data-[squid-theme-type=light]:tw-bg-shimmer-dark group-data-[squid-theme-type=dark]:tw-bg-shimmer-light";
|
|
4630
|
+
case "secondary":
|
|
4631
|
+
return "tw-bg-shimmer-dark";
|
|
4632
|
+
default:
|
|
4633
|
+
return "tw-bg-shimmer-light";
|
|
4634
|
+
}
|
|
4635
|
+
};
|
|
4636
|
+
function LoadingText(_a) {
|
|
4637
|
+
var { children, className } = _a, props = __rest$1(_a, ["children", "className"]);
|
|
4638
|
+
return (jsxRuntime.jsx("span", Object.assign({}, props, { className: cn("tw-animate-shimmer tw-bg-clip-text tw-text-transparent ", renderGradient(props.variant), className), style: {
|
|
4639
|
+
backgroundSize: "200% 100%",
|
|
4640
|
+
}, children: children })));
|
|
4641
|
+
}
|
|
4642
|
+
|
|
4474
4643
|
function Chip(_a) {
|
|
4475
4644
|
var { label, icon } = _a, props = __rest$1(_a, ["label", "icon"]);
|
|
4476
4645
|
const isInteractive = !!props.onClick;
|
|
@@ -4533,12 +4702,12 @@ const buttonVariantClassMap = {
|
|
|
4533
4702
|
const buttonDisabledClass = "!tw-bg-grey-800 !tw-text-grey-600 tw-cursor-not-allowed";
|
|
4534
4703
|
const loadingClassname = "tw-invisible tw-opacity-0";
|
|
4535
4704
|
function Button$1(_a) {
|
|
4536
|
-
var { label, disabled = false, size, variant, icon, link, isLoading = false, showLoader = false, loaderSize = "md", chip, containerClassName, anchorRef, buttonRef } = _a, props = __rest$1(_a, ["label", "disabled", "size", "variant", "icon", "link", "isLoading", "showLoader", "loaderSize", "chip", "containerClassName", "anchorRef", "buttonRef"]);
|
|
4705
|
+
var { label, disabled = false, size, variant, icon, link, isLoading = false, isShimmering = false, showLoader = false, loaderSize = "md", chip, containerClassName, anchorRef, buttonRef } = _a, props = __rest$1(_a, ["label", "disabled", "size", "variant", "icon", "link", "isLoading", "isShimmering", "showLoader", "loaderSize", "chip", "containerClassName", "anchorRef", "buttonRef"]);
|
|
4537
4706
|
const chipElement = chip != null ? (jsxRuntime.jsx(Chip, Object.assign({}, chip, { className: cn("tw-absolute -tw-right-squid-xxs -tw-top-squid-xxs tw-z-10", chip.className) }))) : null;
|
|
4707
|
+
const TextWrap = isShimmering ? LoadingText : "span";
|
|
4538
4708
|
const children = (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [!disabled && !isLoading && (jsxRuntime.jsx(ButtonHoverOverlay, { className: buttonRoundedClassMap[size][variant] })), jsxRuntime.jsx("div", { className: "tw-relative tw-z-[5] tw-flex tw-items-center tw-justify-center tw-gap-squid-xxs", children: label == null && icon == null && !showLoader ? (props.children) : (jsxRuntime.jsxs("span", { className: cn("tw-flex tw-items-center tw-justify-center", size === "lg"
|
|
4539
4709
|
? "tw-gap-squid-xs tw-px-squid-m"
|
|
4540
|
-
: "tw-gap-squid-xxs"), children: [showLoader && jsxRuntime.jsx(Loader, { size: loaderSizeMap[loaderSize] }), !isLoading && icon, label != null &&
|
|
4541
|
-
(size === "sm" ? (jsxRuntime.jsx(CaptionText, { className: cn(isLoading && loadingClassname, icon != null && "tw-pr-1"), children: label })) : (jsxRuntime.jsx(BodyText, { className: cn(isLoading && loadingClassname, icon != null && "tw-pr-1"), size: size === "lg" ? "medium" : "small", children: label })))] })) })] }));
|
|
4710
|
+
: "tw-gap-squid-xxs"), children: [showLoader && jsxRuntime.jsx(Loader, { size: loaderSizeMap[loaderSize] }), !isLoading && icon, label != null && (jsxRuntime.jsx(TextWrap, { variant: variant, children: size === "sm" ? (jsxRuntime.jsx(CaptionText, { className: cn(isLoading && loadingClassname, icon != null && "tw-pr-1"), children: label })) : (jsxRuntime.jsx(BodyText, { className: cn(isLoading && loadingClassname, icon != null && "tw-pr-1"), size: size === "lg" ? "medium" : "small", children: label })) }))] })) })] }));
|
|
4542
4711
|
const className = cn(baseButtonClassName, buttonSizeClassMap[size], buttonWidthClassnameMap[size], buttonVariantClassMap[size][variant], "tw-border-material-light-thin", !disabled && !isLoading && "hover:tw-border-material-light-average", buttonRoundedClassMap[size][variant],
|
|
4543
4712
|
// disabled styles
|
|
4544
4713
|
disabled && buttonDisabledClass, isLoading && "tw-cursor-not-allowed",
|
|
@@ -7630,14 +7799,14 @@ function trimExtraDecimals(value, maxDecimals) {
|
|
|
7630
7799
|
|
|
7631
7800
|
// checks that the value includes at least one character different than `0` (zero), or `.` (dot)
|
|
7632
7801
|
const RegExpNonZeroValue = /[^0.]/;
|
|
7633
|
-
|
|
7802
|
+
exports.UserInputType = void 0;
|
|
7634
7803
|
(function (UserInputType) {
|
|
7635
7804
|
UserInputType[UserInputType["TOKEN"] = 0] = "TOKEN";
|
|
7636
7805
|
UserInputType[UserInputType["USD"] = 1] = "USD";
|
|
7637
|
-
})(UserInputType || (UserInputType = {}));
|
|
7638
|
-
function useNumericInput({ onAmountChange, token, balance, debounceInput, forcedAmount, formatIfVerySmall, inputModeButton, maxUsdDecimals, direction, }) {
|
|
7806
|
+
})(exports.UserInputType || (exports.UserInputType = {}));
|
|
7807
|
+
function useNumericInput({ onAmountChange, token, balance, debounceInput, forcedAmount, formatIfVerySmall, inputModeButton, maxUsdDecimals, direction, initialInputMode = exports.UserInputType.TOKEN, }) {
|
|
7639
7808
|
const [inputValue, setInputValue] = React$1.useState("");
|
|
7640
|
-
const [userInputType, setUserInputType] = React$1.useState(
|
|
7809
|
+
const [userInputType, setUserInputType] = React$1.useState(initialInputMode);
|
|
7641
7810
|
React$1.useEffect(() => {
|
|
7642
7811
|
if (forcedAmount !== undefined) {
|
|
7643
7812
|
updateInputValue(forcedAmount);
|
|
@@ -7645,7 +7814,7 @@ function useNumericInput({ onAmountChange, token, balance, debounceInput, forced
|
|
|
7645
7814
|
}, [forcedAmount]);
|
|
7646
7815
|
const updateInputValue = React$1.useCallback((newValue) => {
|
|
7647
7816
|
const safeNewValue = trimExtraDecimals(newValue, token.decimals);
|
|
7648
|
-
const formattedAmount = userInputType === UserInputType.TOKEN
|
|
7817
|
+
const formattedAmount = userInputType === exports.UserInputType.TOKEN
|
|
7649
7818
|
? safeNewValue
|
|
7650
7819
|
: convertTokenAmountToUSD(safeNewValue, token.price, maxUsdDecimals);
|
|
7651
7820
|
setInputValue(formattedAmount);
|
|
@@ -7657,7 +7826,7 @@ function useNumericInput({ onAmountChange, token, balance, debounceInput, forced
|
|
|
7657
7826
|
const onAmountChangeDebounced = React$1.useCallback(debounce(onAmountChange, debounceInput ? 1000 : 0), [onAmountChange]);
|
|
7658
7827
|
const handleInputChange = (e) => {
|
|
7659
7828
|
const value = e.target.value.replace(/,/g, "."); // Replace commas with dots
|
|
7660
|
-
const maxDecimalsForInputType = userInputType === UserInputType.TOKEN ? token.decimals : maxUsdDecimals;
|
|
7829
|
+
const maxDecimalsForInputType = userInputType === exports.UserInputType.TOKEN ? token.decimals : maxUsdDecimals;
|
|
7661
7830
|
const isValidAmount = new RegExp(`^\\d*\\.?\\d{0,${maxDecimalsForInputType}}$`).test(value);
|
|
7662
7831
|
if (isValidAmount) {
|
|
7663
7832
|
setInputValue(value);
|
|
@@ -7675,14 +7844,14 @@ function useNumericInput({ onAmountChange, token, balance, debounceInput, forced
|
|
|
7675
7844
|
};
|
|
7676
7845
|
const handleSwitchInputMode = () => {
|
|
7677
7846
|
if (inputValue !== "") {
|
|
7678
|
-
const convertedAmount = userInputType === UserInputType.TOKEN
|
|
7847
|
+
const convertedAmount = userInputType === exports.UserInputType.TOKEN
|
|
7679
7848
|
? convertTokenAmountToUSD(inputValue, token.price, maxUsdDecimals)
|
|
7680
7849
|
: convertUSDToTokenAmount(inputValue, token.price, token.decimals);
|
|
7681
7850
|
setInputValue(convertedAmount);
|
|
7682
7851
|
}
|
|
7683
|
-
setUserInputType((prevMode) => prevMode === UserInputType.TOKEN
|
|
7684
|
-
? UserInputType.USD
|
|
7685
|
-
: UserInputType.TOKEN);
|
|
7852
|
+
setUserInputType((prevMode) => prevMode === exports.UserInputType.TOKEN
|
|
7853
|
+
? exports.UserInputType.USD
|
|
7854
|
+
: exports.UserInputType.TOKEN);
|
|
7686
7855
|
};
|
|
7687
7856
|
const getRawAmounts = (amount) => {
|
|
7688
7857
|
if (amount === "")
|
|
@@ -7692,7 +7861,7 @@ function useNumericInput({ onAmountChange, token, balance, debounceInput, forced
|
|
|
7692
7861
|
isTokenAmountVerySmall: false,
|
|
7693
7862
|
isUsdAmountVerySmall: false,
|
|
7694
7863
|
};
|
|
7695
|
-
if (userInputType === UserInputType.TOKEN) {
|
|
7864
|
+
if (userInputType === exports.UserInputType.TOKEN) {
|
|
7696
7865
|
const usdRawAmount = convertTokenAmountToUSD(amount, token.price, maxUsdDecimals);
|
|
7697
7866
|
const tokenRawAmount = amount;
|
|
7698
7867
|
const isTokenAmountVerySmall = !!tokenRawAmount &&
|
|
@@ -7732,7 +7901,7 @@ function useNumericInput({ onAmountChange, token, balance, debounceInput, forced
|
|
|
7732
7901
|
var _a;
|
|
7733
7902
|
if (isNaN(Number(inputValue)) || inputValue === "")
|
|
7734
7903
|
return "0";
|
|
7735
|
-
if (userInputType === UserInputType.TOKEN) {
|
|
7904
|
+
if (userInputType === exports.UserInputType.TOKEN) {
|
|
7736
7905
|
if (direction === "from") {
|
|
7737
7906
|
return formatUsdAmount(convertTokenAmountToUSD(inputValue, token.price, maxUsdDecimals), {
|
|
7738
7907
|
includeSign: false,
|
|
@@ -7758,9 +7927,9 @@ function useNumericInput({ onAmountChange, token, balance, debounceInput, forced
|
|
|
7758
7927
|
]);
|
|
7759
7928
|
const balanceFormatted = React$1.useMemo(() => {
|
|
7760
7929
|
switch (userInputType) {
|
|
7761
|
-
case UserInputType.TOKEN:
|
|
7930
|
+
case exports.UserInputType.TOKEN:
|
|
7762
7931
|
return formatTokenAmount(balance !== null && balance !== void 0 ? balance : "0");
|
|
7763
|
-
case UserInputType.USD:
|
|
7932
|
+
case exports.UserInputType.USD:
|
|
7764
7933
|
return formatUsdAmount(convertTokenAmountToUSD(balance !== null && balance !== void 0 ? balance : "0", token === null || token === void 0 ? void 0 : token.price), {
|
|
7765
7934
|
includeSign: false,
|
|
7766
7935
|
});
|
|
@@ -9661,18 +9830,18 @@ function LargeNumericInput({ balance = "0", token, onAmountChange, forcedAmount,
|
|
|
9661
9830
|
};
|
|
9662
9831
|
}, []);
|
|
9663
9832
|
const isBalanceButtonInteractive = Number(balance) > 0;
|
|
9664
|
-
return (jsxRuntime.jsxs("section", { className: "tw-flex tw-flex-1 tw-flex-col tw-items-center tw-justify-center tw-self-stretch tw-px-squid-m tw-pb-squid-m", children: [jsxRuntime.jsx("div", { className: "tw-flex tw-w-full tw-flex-1 tw-items-center tw-justify-center tw-self-stretch tw-text-[4.40625rem] tw-text-royal-500", children: jsxRuntime.jsxs("label", { className: "tw-flex tw-min-w-squid-xl tw-max-w-full tw-cursor-text tw-items-center tw-overflow-hidden tw-rounded-squid-l tw-px-squid-s tw-py-squid-xxs focus-within:tw-bg-material-light-thin hover:tw-bg-material-light-thin", children: [jsxRuntime.jsx("span", { ref: inputValueSpyRef, className: "tw-pointer-events-none tw-absolute tw-opacity-0", children: inputValue || placeholder }), userInputType === UserInputType.USD && jsxRuntime.jsx("span", { children: "$" }), jsxRuntime.jsx("input", { inputMode: "decimal", pattern: "[0-9.,]*", ref: inputRef, value: inputValue, onChange: handleInputChange, className: cn("tw-bg-transparent tw-placeholder-royal-500 tw-outline-none focus:tw-outline-none", userInputType === UserInputType.USD &&
|
|
9665
|
-
"tw-max-w-[calc(100%-3.125rem)]"), placeholder: placeholder })] }) }), jsxRuntime.jsxs("footer", { className: "tw-flex tw-h-squid-m tw-items-center tw-justify-center tw-self-stretch tw-text-grey-500", children: [jsxRuntime.jsx("div", { className: "tw-flex-1", children: jsxRuntime.jsx(Tooltip, Object.assign({}, (userInputType === UserInputType.TOKEN
|
|
9833
|
+
return (jsxRuntime.jsxs("section", { className: "tw-flex tw-flex-1 tw-flex-col tw-items-center tw-justify-center tw-self-stretch tw-px-squid-m tw-pb-squid-m", children: [jsxRuntime.jsx("div", { className: "tw-flex tw-w-full tw-flex-1 tw-items-center tw-justify-center tw-self-stretch tw-text-[4.40625rem] tw-text-royal-500", children: jsxRuntime.jsxs("label", { className: "tw-flex tw-min-w-squid-xl tw-max-w-full tw-cursor-text tw-items-center tw-overflow-hidden tw-rounded-squid-l tw-px-squid-s tw-py-squid-xxs focus-within:tw-bg-material-light-thin hover:tw-bg-material-light-thin", children: [jsxRuntime.jsx("span", { ref: inputValueSpyRef, className: "tw-pointer-events-none tw-absolute tw-opacity-0", children: inputValue || placeholder }), userInputType === exports.UserInputType.USD && jsxRuntime.jsx("span", { children: "$" }), jsxRuntime.jsx("input", { inputMode: "decimal", pattern: "[0-9.,]*", ref: inputRef, value: inputValue, onChange: handleInputChange, className: cn("tw-bg-transparent tw-placeholder-royal-500 tw-outline-none focus:tw-outline-none", userInputType === exports.UserInputType.USD &&
|
|
9834
|
+
"tw-max-w-[calc(100%-3.125rem)]"), placeholder: placeholder })] }) }), jsxRuntime.jsxs("footer", { className: "tw-flex tw-h-squid-m tw-items-center tw-justify-center tw-self-stretch tw-text-grey-500", children: [jsxRuntime.jsx("div", { className: "tw-flex-1", children: jsxRuntime.jsx(Tooltip, Object.assign({}, (userInputType === exports.UserInputType.TOKEN
|
|
9666
9835
|
? inputModeButton === null || inputModeButton === void 0 ? void 0 : inputModeButton.tokenModeTooltip
|
|
9667
9836
|
: inputModeButton === null || inputModeButton === void 0 ? void 0 : inputModeButton.usdModeTooltip), { tooltipWidth: "max", childrenClassName: "tw-rounded-squid-s", containerClassName: "tw-rounded-squid-s tw-w-fit", children: jsxRuntime.jsxs("button", { onClick: () => {
|
|
9668
9837
|
var _a;
|
|
9669
9838
|
handleSwitchInputMode();
|
|
9670
9839
|
(_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
|
|
9671
|
-
}, className: "tw-flex tw-flex-1 tw-items-center tw-gap-squid-xxs tw-rounded-squid-s tw-px-squid-xs tw-py-squid-xxs hover:tw-bg-material-light-thin", children: [jsxRuntime.jsx(SwapInputsIcon, { size: "20" }), userInputType === UserInputType.TOKEN ? (jsxRuntime.jsxs("span", { className: "tw-flex tw-items-center tw-justify-center", children: [jsxRuntime.jsxs(CaptionText, { className: "tw-opacity-66", children: [isUsdAmountVerySmall ? "<" : "", "$"] }), jsxRuntime.jsx(CaptionText, { children: isUsdAmountVerySmall
|
|
9840
|
+
}, className: "tw-flex tw-flex-1 tw-items-center tw-gap-squid-xxs tw-rounded-squid-s tw-px-squid-xs tw-py-squid-xxs hover:tw-bg-material-light-thin", children: [jsxRuntime.jsx(SwapInputsIcon, { size: "20" }), userInputType === exports.UserInputType.TOKEN ? (jsxRuntime.jsxs("span", { className: "tw-flex tw-items-center tw-justify-center", children: [jsxRuntime.jsxs(CaptionText, { className: "tw-opacity-66", children: [isUsdAmountVerySmall ? "<" : "", "$"] }), jsxRuntime.jsx(CaptionText, { children: isUsdAmountVerySmall
|
|
9672
9841
|
? formatIfVerySmall.token
|
|
9673
9842
|
: amountFormatted })] })) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs(CaptionText, { children: [isTokenAmountVerySmall ? "<" : "", isTokenAmountVerySmall
|
|
9674
9843
|
? formatIfVerySmall.token
|
|
9675
|
-
: amountFormatted] }), " ", jsxRuntime.jsx(CaptionText, { className: "tw-opacity-66", children: token.symbol })] }))] }) })) }), jsxRuntime.jsx(Tooltip, Object.assign({}, (isBalanceButtonInteractive ? balanceButton === null || balanceButton === void 0 ? void 0 : balanceButton.tooltip : undefined), { tooltipWidth: "max", childrenClassName: "tw-rounded-squid-s", containerClassName: "tw-rounded-squid-s", children: jsxRuntime.jsxs("button", { disabled: !isBalanceButtonInteractive, onClick: onBalanceButtonClick, className: cn("tw-flex tw-h-squid-l tw-items-center tw-gap-1.5 tw-rounded-squid-s tw-px-squid-xs", isBalanceButtonInteractive && "hover:tw-bg-material-light-thin"), children: [jsxRuntime.jsx(CaptionText, { className: "tw-opacity-66", children: "Balance" }), jsxRuntime.jsxs("div", { children: [userInputType === UserInputType.USD && (jsxRuntime.jsx(CaptionText, { className: "tw-opacity-66", children: "$" })), jsxRuntime.jsx(CaptionText, { children: balanceFormatted })] }), jsxRuntime.jsx(Chip, { className: "tw-text-grey-900", label: "Max" })] }) }))] })] }));
|
|
9844
|
+
: amountFormatted] }), " ", jsxRuntime.jsx(CaptionText, { className: "tw-opacity-66", children: token.symbol })] }))] }) })) }), jsxRuntime.jsx(Tooltip, Object.assign({}, (isBalanceButtonInteractive ? balanceButton === null || balanceButton === void 0 ? void 0 : balanceButton.tooltip : undefined), { tooltipWidth: "max", childrenClassName: "tw-rounded-squid-s", containerClassName: "tw-rounded-squid-s", children: jsxRuntime.jsxs("button", { disabled: !isBalanceButtonInteractive, onClick: onBalanceButtonClick, className: cn("tw-flex tw-h-squid-l tw-items-center tw-gap-1.5 tw-rounded-squid-s tw-px-squid-xs", isBalanceButtonInteractive && "hover:tw-bg-material-light-thin"), children: [jsxRuntime.jsx(CaptionText, { className: "tw-opacity-66", children: "Balance" }), jsxRuntime.jsxs("div", { children: [userInputType === exports.UserInputType.USD && (jsxRuntime.jsx(CaptionText, { className: "tw-opacity-66", children: "$" })), jsxRuntime.jsx(CaptionText, { children: balanceFormatted })] }), jsxRuntime.jsx(Chip, { className: "tw-text-grey-900", label: "Max" })] }) }))] })] }));
|
|
9676
9845
|
}
|
|
9677
9846
|
|
|
9678
9847
|
/*! *****************************************************************************
|
|
@@ -20051,24 +20220,19 @@ function LogoContainer({ children }) {
|
|
|
20051
20220
|
return (jsxRuntime.jsx("div", { className: "tw-flex tw-h-[60px] tw-w-[60px] tw-items-center tw-justify-center", children: children }));
|
|
20052
20221
|
}
|
|
20053
20222
|
|
|
20054
|
-
|
|
20055
|
-
|
|
20056
|
-
|
|
20057
|
-
|
|
20223
|
+
const AddressHeader = ({ direction, onClick, isDisabled, tooltip, label, walletIconUrl, isLoading, displayLabel = true, highlightLabel = false, showIcon = true, }) => {
|
|
20224
|
+
const ButtonTag = onClick && !isDisabled ? "button" : "div";
|
|
20225
|
+
return (jsxRuntime.jsx("header", { className: "tw-flex tw-h-squid-xl2 tw-items-center tw-self-stretch tw-px-squid-m tw-py-squid-xxs", children: jsxRuntime.jsx(Tooltip, { tooltipContent: tooltip, tooltipWidth: "max", childrenClassName: "tw-rounded-squid-s", containerClassName: "tw-rounded-squid-s", children: jsxRuntime.jsxs(ButtonTag, { onClick: onClick, disabled: isDisabled, type: onClick ? "button" : undefined, className: cn("tw-flex tw-h-squid-l tw-items-center tw-gap-squid-xxs tw-rounded-squid-s tw-px-squid-xs", onClick && !isDisabled && "hover:tw-bg-material-light-thin", isLoading && "tw-opacity-50"), children: [jsxRuntime.jsx(BodyText, { size: "small", className: "tw-text-grey-500", children: direction === "from" ? "Pay" : "Receive" }), displayLabel && !isLoading && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(BodyText, { size: "small", className: "tw-text-grey-600", children: ":" }), jsxRuntime.jsxs("div", { className: "tw-flex tw-items-center tw-gap-squid-xxs", children: [showIcon &&
|
|
20226
|
+
(walletIconUrl ? (jsxRuntime.jsx(Image$1, { width: 24, height: 24, rounded: "xxs", src: walletIconUrl })) : (jsxRuntime.jsx("div", { className: "tw-flex tw-h-6 tw-w-6 tw-items-center tw-justify-center tw-rounded-lg tw-bg-royal-500 tw-px-0.5 tw-outline tw-outline-1 tw-outline-material-light-thin", children: jsxRuntime.jsx(WalletFilledIcon, { size: "18" }) }))), jsxRuntime.jsx(BodyText, { size: "small", className: cn(highlightLabel ? "tw-text-royal-500" : "tw-text-grey-300"), children: label }), jsxRuntime.jsx(ChevronArrowIcon, { className: cn(highlightLabel ? "tw-text-royal-500" : "tw-text-grey-600"), size: "16" })] })] }))] }) }) }));
|
|
20227
|
+
};
|
|
20228
|
+
function SwapConfiguration({ amount, tokenPrice = 0, isFetching: isFetchingProp = false, chain, token, direction = "from", onAmountChange, balance, criticalPriceImpactPercentage, error, priceImpactPercentage, maxUsdDecimals, isInputInteractive = true, isLoading = false, inputModeButton, balanceButton, assetsButton, walletButton, showNumericInputDetails = true, fullHeight = true, debounceInput = true, showWalletButtonHeader = true, }) {
|
|
20229
|
+
var _a, _b, _c, _d;
|
|
20058
20230
|
const isFetching = isFetchingProp || isLoading;
|
|
20059
|
-
|
|
20060
|
-
|
|
20061
|
-
|
|
20062
|
-
|
|
20063
|
-
|
|
20064
|
-
? "tw-text-grey-300"
|
|
20065
|
-
: "tw-text-royal-500", children: (walletButton === null || walletButton === void 0 ? void 0 : walletButton.address)
|
|
20066
|
-
? walletButton === null || walletButton === void 0 ? void 0 : walletButton.address
|
|
20067
|
-
: walletButton === null || walletButton === void 0 ? void 0 : walletButton.emptyAddressLabel }), jsxRuntime.jsx(ChevronArrowIcon, { className: (walletButton === null || walletButton === void 0 ? void 0 : walletButton.address)
|
|
20068
|
-
? "tw-text-grey-600"
|
|
20069
|
-
: "tw-text-royal-500" })] })] }))] }) })) }), jsxRuntime.jsx("div", { className: "tw-px-squid-m mobile-lg:tw-px-squid-l", children: jsxRuntime.jsx(AssetsButton, Object.assign({}, assetsButton, { chain: chain, token: token, isLoading: isLoading })) }), jsxRuntime.jsx(NumericInput, { inputMode: "decimal", pattern: "[0-9.,]*", token: {
|
|
20070
|
-
decimals: (_a = token === null || token === void 0 ? void 0 : token.decimals) !== null && _a !== void 0 ? _a : 18,
|
|
20071
|
-
symbol: (_b = token === null || token === void 0 ? void 0 : token.symbol) !== null && _b !== void 0 ? _b : "",
|
|
20231
|
+
return (jsxRuntime.jsxs("section", { className: cn("tw-relative tw-flex tw-w-full tw-flex-col tw-border-t tw-border-t-material-light-thin tw-bg-grey-900 mobile-lg:tw-w-card-large", fullHeight && "tw-h-full tw-pb-squid-m"), children: [jsxRuntime.jsx(AddressHeader, { direction: direction, onClick: walletButton === null || walletButton === void 0 ? void 0 : walletButton.onClick, isDisabled: walletButton === null || walletButton === void 0 ? void 0 : walletButton.disabled, tooltip: (_a = walletButton === null || walletButton === void 0 ? void 0 : walletButton.tooltip) === null || _a === void 0 ? void 0 : _a.tooltipContent, label: (walletButton === null || walletButton === void 0 ? void 0 : walletButton.address) ||
|
|
20232
|
+
(walletButton === null || walletButton === void 0 ? void 0 : walletButton.emptyAddressLabel) ||
|
|
20233
|
+
(direction === "from" ? "Connect wallet" : "Select recipient"), walletIconUrl: walletButton === null || walletButton === void 0 ? void 0 : walletButton.walletIconUrl, isLoading: isLoading, displayLabel: showWalletButtonHeader, highlightLabel: !(walletButton === null || walletButton === void 0 ? void 0 : walletButton.address), showIcon: (_b = walletButton === null || walletButton === void 0 ? void 0 : walletButton.showIcon) !== null && _b !== void 0 ? _b : true }), jsxRuntime.jsx("div", { className: "tw-px-squid-m mobile-lg:tw-px-squid-l", children: jsxRuntime.jsx(AssetsButton, Object.assign({}, assetsButton, { chain: chain, token: token, isLoading: isLoading })) }), jsxRuntime.jsx(NumericInput, { inputMode: "decimal", pattern: "[0-9.,]*", token: {
|
|
20234
|
+
decimals: (_c = token === null || token === void 0 ? void 0 : token.decimals) !== null && _c !== void 0 ? _c : 18,
|
|
20235
|
+
symbol: (_d = token === null || token === void 0 ? void 0 : token.symbol) !== null && _d !== void 0 ? _d : "",
|
|
20072
20236
|
price: tokenPrice,
|
|
20073
20237
|
}, onAmountChange: (value) => {
|
|
20074
20238
|
onAmountChange === null || onAmountChange === void 0 ? void 0 : onAmountChange(value);
|
|
@@ -20094,6 +20258,28 @@ function AccountListItem({ isConnected, imageUrls = [], imageUrl, badgeUrl, acti
|
|
|
20094
20258
|
}, badge: badge })) : (jsxRuntime.jsx(ImageGroup, { imageUrls: imageUrls, badge: badge })), jsxRuntime.jsxs("div", { className: "tw-flex tw-flex-1 tw-flex-col tw-items-start tw-gap-squid-xs", children: [jsxRuntime.jsx(BodyText, { size: "small", className: "tw-h-[13px] !tw-leading-[13px]", children: title }), jsxRuntime.jsx(BodyText, { size: "small", className: "tw-h-[13px] !tw-leading-[13px] tw-text-grey-500", children: subtitle })] }), jsxRuntime.jsx("menu", { className: "tw-flex tw-items-center tw-gap-squid-xxs", children: actions })] }));
|
|
20095
20259
|
}
|
|
20096
20260
|
|
|
20261
|
+
function useCollapsibleMenu() {
|
|
20262
|
+
const [isMenuOpen, setIsMenuOpen] = React$1.useState(false);
|
|
20263
|
+
const menuRef = React$1.useRef(null);
|
|
20264
|
+
const toggleMenu = () => {
|
|
20265
|
+
setIsMenuOpen(!isMenuOpen);
|
|
20266
|
+
};
|
|
20267
|
+
React$1.useEffect(() => {
|
|
20268
|
+
const handleClickOutside = (event) => {
|
|
20269
|
+
if (menuRef.current && !menuRef.current.contains(event.target)) {
|
|
20270
|
+
setIsMenuOpen(false);
|
|
20271
|
+
}
|
|
20272
|
+
};
|
|
20273
|
+
document.addEventListener("mousedown", handleClickOutside);
|
|
20274
|
+
return () => document.removeEventListener("mousedown", handleClickOutside);
|
|
20275
|
+
}, []);
|
|
20276
|
+
return {
|
|
20277
|
+
isMenuOpen,
|
|
20278
|
+
toggleMenu,
|
|
20279
|
+
menuRef,
|
|
20280
|
+
};
|
|
20281
|
+
}
|
|
20282
|
+
|
|
20097
20283
|
const SPACING = 10;
|
|
20098
20284
|
function useDropdownMenu(props) {
|
|
20099
20285
|
const { initialIsDropdownOpen, itemsContainerRef } = props !== null && props !== void 0 ? props : {};
|
|
@@ -20250,28 +20436,6 @@ function useMediaQuery(query, { defaultValue = false, initializeWithValue = true
|
|
|
20250
20436
|
return matches;
|
|
20251
20437
|
}
|
|
20252
20438
|
|
|
20253
|
-
function useCollapsibleMenu() {
|
|
20254
|
-
const [isMenuOpen, setIsMenuOpen] = React$1.useState(false);
|
|
20255
|
-
const menuRef = React$1.useRef(null);
|
|
20256
|
-
const toggleMenu = () => {
|
|
20257
|
-
setIsMenuOpen(!isMenuOpen);
|
|
20258
|
-
};
|
|
20259
|
-
React$1.useEffect(() => {
|
|
20260
|
-
const handleClickOutside = (event) => {
|
|
20261
|
-
if (menuRef.current && !menuRef.current.contains(event.target)) {
|
|
20262
|
-
setIsMenuOpen(false);
|
|
20263
|
-
}
|
|
20264
|
-
};
|
|
20265
|
-
document.addEventListener("mousedown", handleClickOutside);
|
|
20266
|
-
return () => document.removeEventListener("mousedown", handleClickOutside);
|
|
20267
|
-
}, []);
|
|
20268
|
-
return {
|
|
20269
|
-
isMenuOpen,
|
|
20270
|
-
toggleMenu,
|
|
20271
|
-
menuRef,
|
|
20272
|
-
};
|
|
20273
|
-
}
|
|
20274
|
-
|
|
20275
20439
|
const useTimer = ({ immediateStart = true, }) => {
|
|
20276
20440
|
const [timer, setTimer] = React$1.useState("0s");
|
|
20277
20441
|
const intervalRef = React$1.useRef(null);
|
|
@@ -20603,7 +20767,7 @@ function PropertyListItem(_a) {
|
|
|
20603
20767
|
const Text = variant === "small" ? CaptionText : SmallBodyText;
|
|
20604
20768
|
const isCollapsible = !!collapsibleContent;
|
|
20605
20769
|
const ContentWrapperTag = isCollapsible ? "button" : "div";
|
|
20606
|
-
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", addExtraPadding && containerPaddingClassNameMap[variant], className), children: jsxRuntime.jsxs(ContentWrapperTag, { onClick: isCollapsible ? handleToggleCollapsed : undefined, className: "tw-w-full tw-rounded-squid-xs", 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", childrenVariantClassNameMap[variant]), children: [jsxRuntime.jsx("div", { className: cn("tw-w-6 tw-text-grey-500", iconClassName), children: icon }), jsxRuntime.jsxs(Text, { className: cn("tw-flex tw-min-w-fit tw-flex-1 tw-gap-squid-xxs tw-text-grey-500", labelClassName), children: [jsxRuntime.jsx(TextSkeleton, { isLoading: isLoading, children: label }), !!tooltip && (jsxRuntime.jsx(Tooltip, Object.assign({}, tooltip, { children: jsxRuntime.jsx(HelpIcon, { className: "tw-cursor-help tw-text-grey-600 hover:tw-text-grey-500" }) })))] }), jsxRuntime.jsx(Text, { truncate: variant === "small" || undefined, className: cn("tw-flex tw-text-grey-300", detailClassName), children: jsxRuntime.jsx(TextSkeleton, { isLoading: isLoading, children: detail }) }), isCollapsible && (jsxRuntime.jsx(ChevronLargeRightIcon, { className: cn("tw-text-grey-600 tw-duration-generic", !isCollapsed && "tw-rotate-90"), size: "16" }))] }), isCollapsible && (jsxRuntime.jsx(Collapse, { collapsed: isCollapsed, children: collapsibleContent }))] }) })));
|
|
20770
|
+
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 && "tw-squid-property-row-bg", addExtraPadding && containerPaddingClassNameMap[variant], className), children: jsxRuntime.jsxs(ContentWrapperTag, { onClick: isCollapsible ? handleToggleCollapsed : undefined, className: "tw-w-full tw-rounded-squid-xs", 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", childrenVariantClassNameMap[variant]), children: [jsxRuntime.jsx("div", { className: cn("tw-w-6 tw-text-grey-500", iconClassName), children: icon }), jsxRuntime.jsxs(Text, { className: cn("tw-flex tw-min-w-fit tw-flex-1 tw-gap-squid-xxs tw-text-grey-500", labelClassName), children: [jsxRuntime.jsx(TextSkeleton, { isLoading: isLoading, children: label }), !!tooltip && (jsxRuntime.jsx(Tooltip, Object.assign({}, tooltip, { children: jsxRuntime.jsx(HelpIcon, { className: "tw-cursor-help tw-text-grey-600 hover:tw-text-grey-500" }) })))] }), jsxRuntime.jsx(Text, { truncate: variant === "small" || undefined, className: cn("tw-flex tw-text-grey-300", detailClassName), children: jsxRuntime.jsx(TextSkeleton, { isLoading: isLoading, children: detail }) }), isCollapsible && (jsxRuntime.jsx(ChevronLargeRightIcon, { className: cn("tw-text-grey-600 tw-duration-generic", !isCollapsed && "tw-rotate-90"), size: "16" }))] }), isCollapsible && (jsxRuntime.jsx(Collapse, { collapsed: isCollapsed, children: collapsibleContent }))] }) })));
|
|
20607
20771
|
}
|
|
20608
20772
|
|
|
20609
20773
|
function RouteStep({ imageUrl, descriptionBlocks, subtitle, showStepSeparator = false, }) {
|
|
@@ -27070,7 +27234,7 @@ function UnsupportedPairNotice({ description, fromImageUrl, toImageUrl, }) {
|
|
|
27070
27234
|
return (jsxRuntime.jsxs("article", { className: "tw-flex tw-flex-col tw-items-center tw-justify-center tw-gap-squid-xs", children: [jsxRuntime.jsxs("div", { className: "tw-flex tw-items-center tw-gap-squid-xs -tw-space-x-[18px] tw-p-squid-xs", children: [jsxRuntime.jsx(Image$1, { src: fromImageUrl, size: "large", rounded: "xs" }), jsxRuntime.jsx("span", { className: "tw-z-[1] tw-rounded-full tw-bg-grey-900", children: jsxRuntime.jsx(CircleXFilledIcon, {}) }), jsxRuntime.jsx(Image$1, { src: toImageUrl, size: "large", rounded: "xs" })] }), jsxRuntime.jsx(CaptionText, { className: "tw-max-w-[260px] tw-text-balance tw-text-center tw-text-grey-500", children: description })] }));
|
|
27071
27235
|
}
|
|
27072
27236
|
|
|
27073
|
-
const containerClassname = "tw-px-squid-xs !tw-h-full tw-pt-squid-xxs mobile-xs-height:tw-pb-squid-s tw-text-heading-small tw-font-regular mobile-lg:tw-px-squid-m
|
|
27237
|
+
const containerClassname = "tw-px-squid-xs !tw-h-full tw-pt-squid-xxs mobile-xs-height:tw-pb-squid-s tw-text-heading-small tw-font-regular mobile-lg:tw-px-squid-m tw-h-[65px] mobile-sm-height:tw-h-[75px]";
|
|
27074
27238
|
const buttonClassName = "tw-flex tw-h-squid-l tw-items-center tw-gap-1.5 tw-rounded-squid-s tw-px-squid-xs";
|
|
27075
27239
|
const interactiveChipClassName = "hover:tw-bg-material-light-thin";
|
|
27076
27240
|
const notInteractiveChipClassName = "tw-cursor-not-allowed";
|
|
@@ -27080,7 +27244,7 @@ function NumericInput(_a) {
|
|
|
27080
27244
|
var { priceImpactPercentage, balance = "0", error, criticalPriceImpactPercentage = 5, token, onAmountChange, forcedAmount, maxUsdDecimals = 2, formatIfVerySmall = {
|
|
27081
27245
|
token: "0.001",
|
|
27082
27246
|
usd: "0.01",
|
|
27083
|
-
}, showDetails = true, isLoading = false, direction, inputModeButton, isInteractive = false, balanceButton, debounceInput = true } = _a, props = __rest$1(_a, ["priceImpactPercentage", "balance", "error", "criticalPriceImpactPercentage", "token", "onAmountChange", "forcedAmount", "maxUsdDecimals", "formatIfVerySmall", "showDetails", "isLoading", "direction", "inputModeButton", "isInteractive", "balanceButton", "debounceInput"]);
|
|
27247
|
+
}, showDetails = true, isLoading = false, direction, inputModeButton, isInteractive = false, balanceButton, debounceInput = true, initialInputMode = exports.UserInputType.TOKEN, customSymbol, hideControls = false, hideBalance = false, containerClassName, inputClassName } = _a, props = __rest$1(_a, ["priceImpactPercentage", "balance", "error", "criticalPriceImpactPercentage", "token", "onAmountChange", "forcedAmount", "maxUsdDecimals", "formatIfVerySmall", "showDetails", "isLoading", "direction", "inputModeButton", "isInteractive", "balanceButton", "debounceInput", "initialInputMode", "customSymbol", "hideControls", "hideBalance", "containerClassName", "inputClassName"]);
|
|
27084
27248
|
const { userInputType, inputValue, handleInputChange, handleSwitchInputMode, isTokenAmountVerySmall, isUsdAmountVerySmall, amountFormatted, onBalanceButtonClick, balanceFormatted, } = useNumericInput({
|
|
27085
27249
|
onAmountChange,
|
|
27086
27250
|
token,
|
|
@@ -27091,6 +27255,7 @@ function NumericInput(_a) {
|
|
|
27091
27255
|
inputModeButton,
|
|
27092
27256
|
maxUsdDecimals,
|
|
27093
27257
|
direction,
|
|
27258
|
+
initialInputMode,
|
|
27094
27259
|
});
|
|
27095
27260
|
const balanceChipClickable = isInteractive && parseFloat(balance) > 0;
|
|
27096
27261
|
const AmountChip = isInteractive ? "button" : "div";
|
|
@@ -27099,11 +27264,35 @@ function NumericInput(_a) {
|
|
|
27099
27264
|
: "tw-text-grey-300";
|
|
27100
27265
|
const BalanceChipTag = balanceChipClickable ? "button" : "div";
|
|
27101
27266
|
const inputRef = React$1.useRef(null);
|
|
27102
|
-
|
|
27267
|
+
const symbolRef = React$1.useRef(null);
|
|
27268
|
+
const [symbolWidth, setSymbolWidth] = React$1.useState(0);
|
|
27269
|
+
const displaySymbol = customSymbol !== null && customSymbol !== void 0 ? customSymbol : (userInputType === exports.UserInputType.USD ? "$" : undefined);
|
|
27270
|
+
// Calculate symbol width when it changes
|
|
27271
|
+
React$1.useEffect(() => {
|
|
27272
|
+
if (symbolRef.current && displaySymbol) {
|
|
27273
|
+
const width = symbolRef.current.getBoundingClientRect().width;
|
|
27274
|
+
setSymbolWidth(width);
|
|
27275
|
+
}
|
|
27276
|
+
}, [displaySymbol]);
|
|
27277
|
+
// Calculate left padding based on symbol width plus some spacing
|
|
27278
|
+
const getInputPadding = () => {
|
|
27279
|
+
if (!displaySymbol)
|
|
27280
|
+
return undefined;
|
|
27281
|
+
const basePadding = 5; // Base padding in pixels
|
|
27282
|
+
const totalPadding = Math.ceil(symbolWidth) + basePadding;
|
|
27283
|
+
return `${totalPadding}px`;
|
|
27284
|
+
};
|
|
27285
|
+
return (jsxRuntime.jsxs("div", { className: "tw-relative tw-flex tw-w-full tw-flex-col", children: [isLoading && (jsxRuntime.jsx("div", { className: "tw-pointer-events-none tw-absolute tw-inset-0 tw-top-squid-xxs tw-z-10 tw-overflow-hidden", children: jsxRuntime.jsx("div", { className: "tw-h-full tw-w-[78.75rem] tw-animate-move-loading-cover-to-right tw-bg-dark-cover" }) })), isInteractive && !isLoading ? (jsxRuntime.jsx("form", { className: cn(containerClassname, containerClassName), onSubmit: (e) => {
|
|
27103
27286
|
e.preventDefault();
|
|
27104
|
-
}, children:
|
|
27287
|
+
}, children: jsxRuntime.jsxs("span", { className: "tw-relative tw-w-full", children: [displaySymbol && (jsxRuntime.jsx("span", { ref: symbolRef, style: {
|
|
27288
|
+
transform: "translateY(-50%)",
|
|
27289
|
+
}, className: "tw-absolute tw-top-1/2 tw-pl-squid-xs tw-text-grey-600", children: displaySymbol })), jsxRuntime.jsx("input", Object.assign({ ref: inputRef, type: "text", value: inputValue, onChange: handleInputChange, placeholder: "0", style: displaySymbol
|
|
27290
|
+
? {
|
|
27291
|
+
paddingLeft: getInputPadding(),
|
|
27292
|
+
}
|
|
27293
|
+
: undefined, className: cn("tw-h-[55px] tw-w-full tw-rounded-squid-s tw-bg-transparent tw-py-squid-s tw-text-grey-300 placeholder:tw-text-grey-600 hover:tw-bg-material-light-thin focus:tw-bg-material-light-thin focus:tw-text-royal-500 focus:tw-outline-none", displaySymbol ? "tw-pr-squid-xs" : "tw-px-squid-xs", inputClassName) }, props))] }) })) : (jsxRuntime.jsx("div", { className: cn(containerClassname, (isLoading || Number(inputValue || 0) === 0) && loadingClassName, containerClassName), children: jsxRuntime.jsx("div", { className: "tw-font-regular tw-flex tw-h-[55px] tw-w-full tw-cursor-default tw-items-center tw-rounded-squid-s tw-bg-transparent tw-px-squid-xs tw-py-squid-s tw-text-heading-small tw-text-grey-300", children: jsxRuntime.jsx("span", { children: inputValue }) }) })), !showDetails || hideControls ? null : (jsxRuntime.jsxs("footer", { className: cn("tw-flex tw-h-squid-m tw-max-h-squid-m tw-items-center tw-justify-between tw-gap-2 tw-px-squid-xs tw-text-grey-500 mobile-lg:tw-px-squid-m", isLoading && loadingClassName), children: [error ? (jsxRuntime.jsx("div", { className: "tw-px-squid-xs", children: jsxRuntime.jsx(ErrorMessage, { message: error.message }) })) : (jsxRuntime.jsx(Tooltip, Object.assign({}, (isLoading
|
|
27105
27294
|
? undefined
|
|
27106
|
-
: userInputType === UserInputType.TOKEN
|
|
27295
|
+
: userInputType === exports.UserInputType.TOKEN
|
|
27107
27296
|
? inputModeButton === null || inputModeButton === void 0 ? void 0 : inputModeButton.tokenModeTooltip
|
|
27108
27297
|
: inputModeButton === null || inputModeButton === void 0 ? void 0 : inputModeButton.usdModeTooltip), { tooltipWidth: "max", childrenClassName: "tw-rounded-squid-s", containerClassName: "tw-rounded-squid-s", children: jsxRuntime.jsxs(AmountChip, { onClick: isInteractive
|
|
27109
27298
|
? () => {
|
|
@@ -27113,15 +27302,15 @@ function NumericInput(_a) {
|
|
|
27113
27302
|
}
|
|
27114
27303
|
: undefined, className: cn(buttonClassName, isInteractive
|
|
27115
27304
|
? interactiveChipClassName
|
|
27116
|
-
: notInteractiveChipClassName), children: [jsxRuntime.jsx(SwapInputsIcon, {}), userInputType === UserInputType.TOKEN ? (jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsxs("span", { className: "tw-flex tw-items-center tw-text-grey-500", children: [jsxRuntime.jsxs(CaptionText, { className: "tw-opacity-66", children: [isUsdAmountVerySmall ? "<" : "", "$"] }), jsxRuntime.jsx(CaptionText, { children: isUsdAmountVerySmall
|
|
27305
|
+
: notInteractiveChipClassName), children: [jsxRuntime.jsx(SwapInputsIcon, {}), userInputType === exports.UserInputType.TOKEN ? (jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsxs("span", { className: "tw-flex tw-items-center tw-text-grey-500", children: [jsxRuntime.jsxs(CaptionText, { className: "tw-opacity-66", children: [isUsdAmountVerySmall ? "<" : "", "$"] }), jsxRuntime.jsx(CaptionText, { children: isUsdAmountVerySmall
|
|
27117
27306
|
? formatIfVerySmall.token
|
|
27118
27307
|
: amountFormatted })] }) })) : (jsxRuntime.jsxs("span", { className: "tw-text-grey-500", children: [isTokenAmountVerySmall ? "<" : "", jsxRuntime.jsx(CaptionText, { children: isTokenAmountVerySmall
|
|
27119
27308
|
? formatIfVerySmall.token
|
|
27120
27309
|
: amountFormatted }), " ", jsxRuntime.jsx(CaptionText, { className: "tw-opacity-66", children: token.symbol })] })), priceImpactPercentage && direction === "to" ? (jsxRuntime.jsxs("span", { className: cn("tw-flex tw-items-center", priceImpactClass), children: [jsxRuntime.jsx(ArrowTriangle, { className: Number(priceImpactPercentage) === 0
|
|
27121
27310
|
? "tw-opacity-0"
|
|
27122
|
-
: "" }), jsxRuntime.jsx(CaptionText, { bold: true, children: priceImpactPercentage.toString().concat("%") })] })) : null] }) }))), jsxRuntime.jsx(Tooltip, Object.assign({}, (isLoading ? undefined : balanceButton === null || balanceButton === void 0 ? void 0 : balanceButton.tooltip), { tooltipWidth: "max", childrenClassName: "tw-rounded-squid-s", containerClassName: "tw-rounded-squid-s", children: jsxRuntime.jsxs(BalanceChipTag, { disabled: !balanceChipClickable, onClick: balanceChipClickable ? onBalanceButtonClick : undefined, className: cn(buttonClassName, balanceChipClickable
|
|
27311
|
+
: "" }), jsxRuntime.jsx(CaptionText, { bold: true, children: priceImpactPercentage.toString().concat("%") })] })) : null] }) }))), !hideBalance && (jsxRuntime.jsx(Tooltip, Object.assign({}, (isLoading ? undefined : balanceButton === null || balanceButton === void 0 ? void 0 : balanceButton.tooltip), { tooltipWidth: "max", childrenClassName: "tw-rounded-squid-s", containerClassName: "tw-rounded-squid-s", children: jsxRuntime.jsxs(BalanceChipTag, { disabled: !balanceChipClickable, onClick: balanceChipClickable ? onBalanceButtonClick : undefined, className: cn(buttonClassName, balanceChipClickable
|
|
27123
27312
|
? interactiveChipClassName
|
|
27124
|
-
: notInteractiveChipClassName), children: [jsxRuntime.jsx(CaptionText, { className: "tw-opacity-66", children: "Balance" }), jsxRuntime.jsxs("div", { children: [userInputType === UserInputType.USD && (jsxRuntime.jsx(CaptionText, { className: "tw-opacity-66", children: "$" })), jsxRuntime.jsx(CaptionText, { children: balanceFormatted })] }), !(balanceButton === null || balanceButton === void 0 ? void 0 : balanceButton.hideMaxChip) && jsxRuntime.jsx(Chip, { label: "Max" })] }) }))] }))] }));
|
|
27313
|
+
: notInteractiveChipClassName), children: [jsxRuntime.jsx(CaptionText, { className: "tw-opacity-66", children: "Balance" }), jsxRuntime.jsxs("div", { children: [userInputType === exports.UserInputType.USD && (jsxRuntime.jsx(CaptionText, { className: "tw-opacity-66", children: "$" })), jsxRuntime.jsx(CaptionText, { children: balanceFormatted })] }), !(balanceButton === null || balanceButton === void 0 ? void 0 : balanceButton.hideMaxChip) && jsxRuntime.jsx(Chip, { label: "Max" })] }) })))] }))] }));
|
|
27125
27314
|
}
|
|
27126
27315
|
|
|
27127
27316
|
function RangeInput({ label, initialValue, onChange, min = 0, max = 99, isWarning = false, }) {
|
|
@@ -27559,7 +27748,7 @@ function DepositAddressView({ isOpen = true, fromToken, toToken, handleClose, fr
|
|
|
27559
27748
|
}, borderType: "outline", children: [jsxRuntime.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: {
|
|
27560
27749
|
// box shadow simulating bottom outline (we do not use css outline because cannot apply it to only one side)
|
|
27561
27750
|
boxShadow: "0 1px 0 currentColor",
|
|
27562
|
-
}, children: [jsxRuntime.jsx("div", { className: "tw-absolute tw-right-squid-xs tw-top-squid-xs", children: jsxRuntime.jsx(Button$1, { size: "md", variant: "secondary", label: "Copy" }) }), headerContent] }), jsxRuntime.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: jsxRuntime.jsx(Image$1, { src: fromToken.logoUrl, rounded: "full", shadow: true, size: "xlarge" }) }), jsxRuntime.jsx(TxProgressViewHeader, { title: title, description: description, isWarning: true }), jsxRuntime.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: [jsxRuntime.jsx(PropertyListItem, { icon: jsxRuntime.jsx(WalletFilledIcon, { size: "24" }), label: "Deposit address", detail: jsxRuntime.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)
|
|
27751
|
+
}, children: [jsxRuntime.jsx("div", { className: "tw-absolute tw-right-squid-xs tw-top-squid-xs", children: jsxRuntime.jsx(Button$1, { size: "md", variant: "secondary", label: "Copy" }) }), headerContent] }), jsxRuntime.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: jsxRuntime.jsx(Image$1, { src: fromToken.logoUrl, rounded: "full", shadow: true, size: "xlarge" }) }), jsxRuntime.jsx(TxProgressViewHeader, { title: title, description: description, isWarning: true }), jsxRuntime.jsxs("ul", { className: "tw-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: [jsxRuntime.jsx(PropertyListItem, { icon: jsxRuntime.jsx(WalletFilledIcon, { size: "24" }), label: "Deposit address", detail: jsxRuntime.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)
|
|
27563
27752
|
? {
|
|
27564
27753
|
tooltipContent: tooltips.depositAddress,
|
|
27565
27754
|
tooltipWidth: "max",
|
|
@@ -69010,7 +69199,7 @@ function SwapProgressView({ steps, isOpen = true, handleClose, handleComplete, s
|
|
|
69010
69199
|
}, secondToken: {
|
|
69011
69200
|
bgColor: toToken.bgColor,
|
|
69012
69201
|
logoURI: toToken.logoUrl,
|
|
69013
|
-
} })) }), jsxRuntime.jsx(TxProgressViewHeader, { title: headerTitle, description: headerDescription }), jsxRuntime.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: [jsxRuntime.jsx(PropertyListItem, { icon: isSendTransaction ? (jsxRuntime.jsx(ArrowRightUpCircleIcon, {})) : (jsxRuntime.jsx(ArrowsSwapIcon, {})), label: isSendTransaction ? "Send" : "Swap", detail: isSendTransaction ? (jsxRuntime.jsx(IconLabel, { src: fromToken.logoUrl, rounded: "full", children: fromAmount })) : (jsxRuntime.jsx(Transfer, { from: jsxRuntime.jsx(IconLabel, { src: fromToken.logoUrl, rounded: "full", children: fromAmount }), to: jsxRuntime.jsx(IconLabel, { src: toToken.logoUrl, rounded: "full", children: toAmount }) })) }), jsxRuntime.jsx(PropertyListItem, { icon: jsxRuntime.jsx(ChainLink, { size: "24", strokeWidth: "2" }), label: "Chain", detail: isSendTransaction ? (jsxRuntime.jsxs("span", { className: "tw-flex tw-items-center tw-gap-squid-xxs", children: [jsxRuntime.jsx(Image$1, { size: "medium", rounded: "xxs", src: fromChain.logoUrl }), jsxRuntime.jsx(CaptionText, { children: fromChain.networkName })] })) : (jsxRuntime.jsx(Transfer, { from: jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(Image$1, { size: "medium", rounded: "xxs", src: fromChain.logoUrl }), jsxRuntime.jsx(CaptionText, { children: fromChain.networkName })] }), to: jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(Image$1, { size: "medium", rounded: "xxs", src: toChain.logoUrl }), jsxRuntime.jsx(CaptionText, { children: toChain.networkName })] }) })) }), jsxRuntime.jsx(PropertyListItem, { icon: jsxRuntime.jsx(WalletFilledIcon, { size: "24" }), label: "Wallet", detail: jsxRuntime.jsx(Transfer, { from: fromAddressFormatted, to: toAddressFormatted }) }), jsxRuntime.jsx(PropertyListItem, { icon: jsxRuntime.jsx(TimeFliesIcon, {}), label: "Time to complete", detail: swapState === SwapState.PROGRESS ? (jsxRuntime.jsx(Transfer, { from: timer, to: estimatedTimeToComplete })) : swapState === SwapState.COMPLETED ? (jsxRuntime.jsx(CaptionText, { children: timer })) : (jsxRuntime.jsx(CaptionText, { children: estimatedTimeToComplete })) })] })] }), jsxRuntime.jsx(TrackTransactionView, { ref: trackTransactionViewRef, onTxEnd: () => {
|
|
69202
|
+
} })) }), jsxRuntime.jsx(TxProgressViewHeader, { title: headerTitle, description: headerDescription }), jsxRuntime.jsxs("ul", { className: "tw-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: [jsxRuntime.jsx(PropertyListItem, { icon: isSendTransaction ? (jsxRuntime.jsx(ArrowRightUpCircleIcon, {})) : (jsxRuntime.jsx(ArrowsSwapIcon, {})), label: isSendTransaction ? "Send" : "Swap", detail: isSendTransaction ? (jsxRuntime.jsx(IconLabel, { src: fromToken.logoUrl, rounded: "full", children: fromAmount })) : (jsxRuntime.jsx(Transfer, { from: jsxRuntime.jsx(IconLabel, { src: fromToken.logoUrl, rounded: "full", children: fromAmount }), to: jsxRuntime.jsx(IconLabel, { src: toToken.logoUrl, rounded: "full", children: toAmount }) })) }), jsxRuntime.jsx(PropertyListItem, { icon: jsxRuntime.jsx(ChainLink, { size: "24", strokeWidth: "2" }), label: "Chain", detail: isSendTransaction ? (jsxRuntime.jsxs("span", { className: "tw-flex tw-items-center tw-gap-squid-xxs", children: [jsxRuntime.jsx(Image$1, { size: "medium", rounded: "xxs", src: fromChain.logoUrl }), jsxRuntime.jsx(CaptionText, { children: fromChain.networkName })] })) : (jsxRuntime.jsx(Transfer, { from: jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(Image$1, { size: "medium", rounded: "xxs", src: fromChain.logoUrl }), jsxRuntime.jsx(CaptionText, { children: fromChain.networkName })] }), to: jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(Image$1, { size: "medium", rounded: "xxs", src: toChain.logoUrl }), jsxRuntime.jsx(CaptionText, { children: toChain.networkName })] }) })) }), jsxRuntime.jsx(PropertyListItem, { icon: jsxRuntime.jsx(WalletFilledIcon, { size: "24" }), label: "Wallet", detail: jsxRuntime.jsx(Transfer, { from: fromAddressFormatted, to: toAddressFormatted }) }), jsxRuntime.jsx(PropertyListItem, { icon: jsxRuntime.jsx(TimeFliesIcon, {}), label: "Time to complete", detail: swapState === SwapState.PROGRESS ? (jsxRuntime.jsx(Transfer, { from: timer, to: estimatedTimeToComplete })) : swapState === SwapState.COMPLETED ? (jsxRuntime.jsx(CaptionText, { children: timer })) : (jsxRuntime.jsx(CaptionText, { children: estimatedTimeToComplete })) })] })] }), jsxRuntime.jsx(TrackTransactionView, { ref: trackTransactionViewRef, onTxEnd: () => {
|
|
69014
69203
|
stopTimer();
|
|
69015
69204
|
}, onTxStart: () => {
|
|
69016
69205
|
startTimer();
|
|
@@ -69370,16 +69559,6 @@ const parseSquidTheme = (userTheme, themeType) => {
|
|
|
69370
69559
|
prefix: THEME_CSS_VARIABLE_PREFIX,
|
|
69371
69560
|
});
|
|
69372
69561
|
};
|
|
69373
|
-
const remToPx = (rem, baseFontSize = 16) => {
|
|
69374
|
-
if (typeof rem === "string")
|
|
69375
|
-
return Number(rem.replace("rem", "")) * baseFontSize;
|
|
69376
|
-
return rem * baseFontSize;
|
|
69377
|
-
};
|
|
69378
|
-
const pxToRem = (px, baseFontSize = 16) => {
|
|
69379
|
-
if (typeof px === "string")
|
|
69380
|
-
return Number(px.replace("px", "")) / baseFontSize;
|
|
69381
|
-
return px / baseFontSize;
|
|
69382
|
-
};
|
|
69383
69562
|
function getContrastColor({ r, g, b, }, threshold = 128) {
|
|
69384
69563
|
const brightness = (r * 299 + g * 587 + b * 114) / 1000;
|
|
69385
69564
|
return brightness >= threshold ? "dark" : "light";
|
|
@@ -69508,10 +69687,12 @@ exports.ActionRow = ActionRow;
|
|
|
69508
69687
|
exports.ActionStatusRow = ActionStatusRow;
|
|
69509
69688
|
exports.ActionWrapper = ActionWrapper;
|
|
69510
69689
|
exports.AddressButton = AddressButton;
|
|
69690
|
+
exports.AddressHeader = AddressHeader;
|
|
69511
69691
|
exports.AnimationCard = AnimationCard;
|
|
69512
69692
|
exports.AnimationWrapper = AnimationWrapper;
|
|
69513
69693
|
exports.Announcement = Announcement;
|
|
69514
69694
|
exports.AppContainer = AppContainer;
|
|
69695
|
+
exports.ApplePayIcon = ApplePayIcon;
|
|
69515
69696
|
exports.Approve = Approve;
|
|
69516
69697
|
exports.ApproveAction = ApproveAction;
|
|
69517
69698
|
exports.ArrowBottomTopIcon = ArrowBottomTopIcon;
|
|
@@ -69593,6 +69774,7 @@ exports.CompassRoundSolidIcon = CompassRoundSolidIcon;
|
|
|
69593
69774
|
exports.ConsoleIcon = ConsoleIcon;
|
|
69594
69775
|
exports.Copy2Icon = Copy2Icon;
|
|
69595
69776
|
exports.CopyOutlinedIcon = CopyOutlinedIcon;
|
|
69777
|
+
exports.CreditCardIcon = CreditCardIcon;
|
|
69596
69778
|
exports.CrossAnimatedIcon = CrossAnimatedIcon;
|
|
69597
69779
|
exports.CrossedOutSunSolidIcon = CrossedOutSunSolidIcon;
|
|
69598
69780
|
exports.DashboardFast = DashboardFast;
|
|
@@ -69635,6 +69817,7 @@ exports.FilterTimelineIcon = FilterTimelineIcon;
|
|
|
69635
69817
|
exports.GasIcon = GasIcon;
|
|
69636
69818
|
exports.GhostIcon = GhostIcon;
|
|
69637
69819
|
exports.GithubIcon = GithubIcon;
|
|
69820
|
+
exports.GooglePayIcon = GooglePayIcon;
|
|
69638
69821
|
exports.HashLink = HashLink;
|
|
69639
69822
|
exports.HeadingText = HeadingText;
|
|
69640
69823
|
exports.HeartSmallIcon = HeartSmallIcon;
|
|
@@ -69829,6 +70012,7 @@ exports.transactionSuccessAnimation = transactionSuccessAnimation;
|
|
|
69829
70012
|
exports.useCollapsibleMenu = useCollapsibleMenu;
|
|
69830
70013
|
exports.useDropdownMenu = useDropdownMenu;
|
|
69831
70014
|
exports.useMediaQuery = useMediaQuery;
|
|
70015
|
+
exports.useNumericInput = useNumericInput;
|
|
69832
70016
|
exports.useOnResize = useOnResize;
|
|
69833
70017
|
exports.useRect = useRect;
|
|
69834
70018
|
exports.useTimer = useTimer;
|