@gearbox-protocol/permissionless-ui 1.7.4 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/README.md +0 -4
  2. package/dist/cjs/_virtual/_commonjsHelpers.cjs +9 -0
  3. package/dist/cjs/_virtual/index.cjs +9 -0
  4. package/dist/cjs/components/alert-dialog/alert-dialog.cjs +1 -1
  5. package/dist/cjs/components/error-message/error-message.cjs +5 -5
  6. package/dist/cjs/components/graph/graph-current-value.cjs +2 -2
  7. package/dist/cjs/components/graph/graph-tooltip.cjs +4 -4
  8. package/dist/cjs/components/graph/graph-view.cjs +9 -9
  9. package/dist/cjs/components/graph/graph.cjs +2 -2
  10. package/dist/cjs/components/layout/app-logo/app-logo.cjs +8 -4
  11. package/dist/cjs/components/layout/footer/footer.cjs +1 -1
  12. package/dist/cjs/components/layout/grid/grid.cjs +7 -1
  13. package/dist/cjs/components/layout/header/header.cjs +16 -7
  14. package/dist/cjs/components/layout/page-layout/page-layout.cjs +2 -2
  15. package/dist/cjs/components/liquidation/liquidation-assets-table/liquidation-assets-table.cjs +23 -13
  16. package/dist/cjs/components/loader-guard/loader-guard.cjs +10 -6
  17. package/dist/cjs/components/navbar/navbar.cjs +5 -2
  18. package/dist/cjs/components/navitem/navitem.cjs +6 -6
  19. package/dist/cjs/components/page-title/page-title.cjs +2 -2
  20. package/dist/cjs/components/tab-control/tab-control.cjs +4 -3
  21. package/dist/cjs/components/tabs/tabs.cjs +2 -2
  22. package/dist/cjs/components/theme-toggle/theme-toggle.cjs +1 -1
  23. package/dist/cjs/components/token-icon/token-icon.cjs +2 -1
  24. package/dist/cjs/components/token-symbol/token-symbol.cjs +4 -4
  25. package/dist/cjs/components/trading-view/graph-dropdown.cjs +27 -3
  26. package/dist/cjs/components/trading-view/trading-view.cjs +15 -2
  27. package/dist/cjs/components/with-filter-button/with-filter-button.cjs +2 -2
  28. package/dist/cjs/configs/tailwind-preset.cjs +2 -1
  29. package/dist/cjs/node_modules/.pnpm/tailwind-scrollbar@4.0.2_react@19.2.0_tailwindcss@4.1.17/node_modules/tailwind-scrollbar/src/helpers.cjs +31 -0
  30. package/dist/cjs/node_modules/.pnpm/tailwind-scrollbar@4.0.2_react@19.2.0_tailwindcss@4.1.17/node_modules/tailwind-scrollbar/src/index.cjs +49 -0
  31. package/dist/cjs/node_modules/.pnpm/tailwind-scrollbar@4.0.2_react@19.2.0_tailwindcss@4.1.17/node_modules/tailwind-scrollbar/src/utilities.cjs +218 -0
  32. package/dist/cjs/node_modules/.pnpm/tailwind-scrollbar@4.0.2_react@19.2.0_tailwindcss@4.1.17/node_modules/tailwind-scrollbar/src/variants.cjs +44 -0
  33. package/dist/cjs/node_modules/.pnpm/tailwindcss@4.1.17/node_modules/tailwindcss/dist/flatten-color-palette.cjs +17 -0
  34. package/dist/cjs/node_modules/.pnpm/tailwindcss@4.1.17/node_modules/tailwindcss/dist/plugin.cjs +15 -0
  35. package/dist/esm/_virtual/_commonjsHelpers.js +5 -0
  36. package/dist/esm/_virtual/index.js +7 -0
  37. package/dist/esm/components/alert-dialog/alert-dialog.js +1 -1
  38. package/dist/esm/components/error-message/error-message.js +5 -5
  39. package/dist/esm/components/graph/graph-current-value.js +2 -2
  40. package/dist/esm/components/graph/graph-tooltip.js +4 -4
  41. package/dist/esm/components/graph/graph-view.js +9 -9
  42. package/dist/esm/components/graph/graph.js +2 -2
  43. package/dist/esm/components/layout/app-logo/app-logo.js +8 -4
  44. package/dist/esm/components/layout/footer/footer.js +1 -1
  45. package/dist/esm/components/layout/grid/grid.js +7 -1
  46. package/dist/esm/components/layout/header/header.js +16 -7
  47. package/dist/esm/components/layout/page-layout/page-layout.js +2 -2
  48. package/dist/esm/components/liquidation/liquidation-assets-table/liquidation-assets-table.js +23 -13
  49. package/dist/esm/components/loader-guard/loader-guard.js +10 -6
  50. package/dist/esm/components/navbar/navbar.js +5 -2
  51. package/dist/esm/components/navitem/navitem.js +6 -6
  52. package/dist/esm/components/page-title/page-title.js +2 -2
  53. package/dist/esm/components/tab-control/tab-control.js +4 -3
  54. package/dist/esm/components/tabs/tabs.js +2 -2
  55. package/dist/esm/components/theme-toggle/theme-toggle.js +1 -1
  56. package/dist/esm/components/token-icon/token-icon.js +2 -1
  57. package/dist/esm/components/token-symbol/token-symbol.js +4 -4
  58. package/dist/esm/components/trading-view/graph-dropdown.js +28 -4
  59. package/dist/esm/components/trading-view/trading-view.js +16 -3
  60. package/dist/esm/components/with-filter-button/with-filter-button.js +2 -2
  61. package/dist/esm/configs/tailwind-preset.js +2 -1
  62. package/dist/esm/node_modules/.pnpm/tailwind-scrollbar@4.0.2_react@19.2.0_tailwindcss@4.1.17/node_modules/tailwind-scrollbar/src/helpers.js +27 -0
  63. package/dist/esm/node_modules/.pnpm/tailwind-scrollbar@4.0.2_react@19.2.0_tailwindcss@4.1.17/node_modules/tailwind-scrollbar/src/index.js +45 -0
  64. package/dist/esm/node_modules/.pnpm/tailwind-scrollbar@4.0.2_react@19.2.0_tailwindcss@4.1.17/node_modules/tailwind-scrollbar/src/utilities.js +214 -0
  65. package/dist/esm/node_modules/.pnpm/tailwind-scrollbar@4.0.2_react@19.2.0_tailwindcss@4.1.17/node_modules/tailwind-scrollbar/src/variants.js +40 -0
  66. package/dist/esm/node_modules/.pnpm/tailwindcss@4.1.17/node_modules/tailwindcss/dist/flatten-color-palette.js +13 -0
  67. package/dist/esm/node_modules/.pnpm/tailwindcss@4.1.17/node_modules/tailwindcss/dist/plugin.js +11 -0
  68. package/dist/globals.css +50 -23
  69. package/dist/types/components/auth/signin-required.d.ts +2 -2
  70. package/dist/types/components/buttons/navigation-button/navigation-button.d.ts +1 -1
  71. package/dist/types/components/dialog/dialog.d.ts +3 -3
  72. package/dist/types/components/dropdown-menu/dropdown-menu.d.ts +6 -6
  73. package/dist/types/components/layout/col/col.d.ts +12 -2
  74. package/dist/types/components/layout/container/container.d.ts +1 -1
  75. package/dist/types/components/layout/footer/footer.d.ts +1 -1
  76. package/dist/types/components/layout/grid/grid.d.ts +3 -2
  77. package/dist/types/components/layout/header/header.d.ts +1 -1
  78. package/dist/types/components/layout/layout/layout.d.ts +1 -1
  79. package/dist/types/components/navbar/navbar-indicator-context.d.ts +1 -1
  80. package/dist/types/components/pool-points-indicator/pool-points-indicator.d.ts +1 -1
  81. package/dist/types/components/theme-provider.d.ts +1 -1
  82. package/dist/types/components/trading-view/graph-dropdown.d.ts +7 -1
  83. package/dist/types/components/trading-view/trading-view.d.ts +7 -1
  84. package/dist/types/configs/tailwind-preset.d.ts +1 -3
  85. package/dist/types/hooks/use-filter.d.ts +2 -2
  86. package/dist/types/types/component-props.d.ts +1 -1
  87. package/package.json +2 -1
package/README.md CHANGED
@@ -244,10 +244,6 @@ import { TokenIcon } from '@gearbox-protocol/permissionless-ui/next';
244
244
  import { TokenIcon } from '@gearbox-protocol/permissionless-ui';
245
245
  ```
246
246
 
247
- ## Migration
248
-
249
- If you're migrating from a version that required Next.js, see [MIGRATION.md](./MIGRATION.md) for detailed instructions.
250
-
251
247
  ### Important information for contributors
252
248
 
253
249
  As a contributor to the Gearbox Protocol GitHub repository, your pull requests indicate acceptance of our Gearbox Contribution Agreement. This agreement outlines that you assign the Intellectual Property Rights of your contributions to the Gearbox Foundation. This helps safeguard the Gearbox protocol and ensure the accumulation of its intellectual property. Contributions become part of the repository and may be used for various purposes, including commercial. As recognition for your expertise and work, you receive the opportunity to participate in the protocol's development and the potential to see your work integrated within it. The full Gearbox Contribution Agreement is accessible within the [repository](/ContributionAgreement) for comprehensive understanding. [Let's innovate together!]
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
+
5
+ function getDefaultExportFromCjs (x) {
6
+ return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
7
+ }
8
+
9
+ exports.getDefaultExportFromCjs = getDefaultExportFromCjs;
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ const _commonjsHelpers = require('./_commonjsHelpers.cjs');
4
+ const index = require('../node_modules/.pnpm/tailwind-scrollbar@4.0.2_react@19.2.0_tailwindcss@4.1.17/node_modules/tailwind-scrollbar/src/index.cjs');
5
+
6
+ var srcExports = index.__require();
7
+ const tailwindScrollbar = /*@__PURE__*/_commonjsHelpers.getDefaultExportFromCjs(srcExports);
8
+
9
+ module.exports = tailwindScrollbar;
@@ -58,7 +58,7 @@ const AlertDialogContent = React__namespace.forwardRef(({ className, ...props },
58
58
  {
59
59
  ref,
60
60
  className: utils_cn.cn(
61
- "fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border border-input bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",
61
+ "fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border border-input bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] rounded-lg",
62
62
  className
63
63
  ),
64
64
  ...props
@@ -24,17 +24,17 @@ function ErrorMessage({
24
24
  maxWidth: "md",
25
25
  padding: true,
26
26
  className: utils_cn.cn(
27
- "min-h-[200px] min-w-[320px] max-w-[600px]",
27
+ "min-w-[280px] md:min-w-[320px] max-w-[600px]",
28
28
  theme === "dark" && "bg-slate-900",
29
29
  theme === "light" && "bg-white"
30
30
  ),
31
- children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex w-full flex-wrap justify-center", children: [
31
+ children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex w-full flex-wrap justify-center gap-2", children: [
32
32
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "w-full text-center text-xl font-medium text-muted-foreground", children: [
33
33
  /* @__PURE__ */ jsxRuntime.jsx(components_typedIntl_index.FormattedMessageTyped, { messageId: "components.errorMessage.oops" }),
34
- "😬"
34
+ " 😬"
35
35
  ] }),
36
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex w-full min-h-[100px] justify-center items-start pt-5 pr-8 pl-3 text-lg text-center text-foreground", children: /* @__PURE__ */ jsxRuntime.jsx(reactIntl.FormattedMessage, { id: err.message, defaultMessage: err.message }) }),
37
- /* @__PURE__ */ jsxRuntime.jsx(components_buttons_button_button.Button, { onClick, className: "w-1/2", children: btnTitle })
36
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex w-full justify-center items-start px-2 text-lg text-center text-foreground", children: /* @__PURE__ */ jsxRuntime.jsx(reactIntl.FormattedMessage, { id: err.message, defaultMessage: err.message }) }),
37
+ /* @__PURE__ */ jsxRuntime.jsx(components_buttons_button_button.Button, { onClick, className: "w-1/2 mt-2", children: btnTitle })
38
38
  ] })
39
39
  }
40
40
  );
@@ -24,8 +24,8 @@ function GraphCurrentValue({
24
24
  className
25
25
  ),
26
26
  children: [
27
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-2xl font-semibold text-foreground whitespace-nowrap overflow-hidden text-ellipsis", children: yFormatted }),
28
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm font-medium text-muted-foreground whitespace-nowrap overflow-hidden text-ellipsis mt-0.5", children: xFormatted })
27
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-xl sm:text-2xl font-semibold text-foreground whitespace-nowrap overflow-hidden text-ellipsis", children: yFormatted }),
28
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-xs sm:text-sm font-medium text-muted-foreground whitespace-nowrap overflow-hidden text-ellipsis mt-0.5", children: xFormatted })
29
29
  ]
30
30
  }
31
31
  );
@@ -75,8 +75,8 @@ function GraphTooltip({
75
75
  className
76
76
  ),
77
77
  style: positionStyles,
78
- children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "bg-background/90 backdrop-blur-sm rounded border border-border p-2 space-y-1.5", children: [
79
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm font-medium text-muted-foreground mb-1 whitespace-nowrap", children: xFormatted }),
78
+ children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "bg-background/90 backdrop-blur-sm rounded border border-border p-1.5 sm:p-2 space-y-1 sm:space-y-1.5", children: [
79
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-xs sm:text-sm font-medium text-muted-foreground mb-0.5 sm:mb-1 whitespace-nowrap", children: xFormatted }),
80
80
  series.map((s, index) => {
81
81
  const pointData = points.get(s.label);
82
82
  if (!pointData) return null;
@@ -94,12 +94,12 @@ function GraphTooltip({
94
94
  return /* @__PURE__ */ jsxRuntime.jsxs(
95
95
  "div",
96
96
  {
97
- className: "flex items-center gap-2 text-sm whitespace-nowrap",
97
+ className: "flex items-center gap-1.5 sm:gap-2 text-xs sm:text-sm whitespace-nowrap",
98
98
  children: [
99
99
  /* @__PURE__ */ jsxRuntime.jsx(
100
100
  "div",
101
101
  {
102
- className: "w-2 h-2 rounded-full flex-shrink-0",
102
+ className: "w-1.5 h-1.5 sm:w-2 sm:h-2 rounded-full flex-shrink-0",
103
103
  style: { backgroundColor: lineColor }
104
104
  }
105
105
  ),
@@ -38,10 +38,10 @@ const graphViewVariants = classVarianceAuthority.cva(
38
38
  ghost: "border-0 shadow-none"
39
39
  },
40
40
  size: {
41
- sm: "h-64",
42
- default: "h-96",
43
- lg: "h-[32rem]",
44
- xl: "h-[48rem]",
41
+ sm: "h-48 sm:h-64",
42
+ default: "h-64 sm:h-96",
43
+ lg: "h-96 sm:h-[32rem]",
44
+ xl: "h-[32rem] sm:h-[48rem]",
45
45
  full: "h-full"
46
46
  },
47
47
  padding: {
@@ -86,15 +86,15 @@ const GraphView = React__namespace.forwardRef(
86
86
  children: [
87
87
  hasHeader && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-4 flex items-start justify-between gap-4 flex-shrink-0", children: [
88
88
  (title || description) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-1", children: [
89
- title && /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-lg font-semibold leading-none tracking-tight", children: title }),
90
- description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-sm text-muted-foreground", children: description })
89
+ title && /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-base sm:text-lg font-semibold leading-none tracking-tight", children: title }),
90
+ description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 text-xs sm:text-sm text-muted-foreground", children: description })
91
91
  ] }),
92
92
  toolbar && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-shrink-0 w-full", children: toolbar })
93
93
  ] }),
94
94
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative flex-1 w-full min-h-0", children: [
95
95
  loading && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-0 z-10 flex items-center justify-center bg-transparent backdrop-blur-sm", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-center gap-2", children: [
96
96
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-8 w-8 animate-spin rounded-full border-4 border-primary border-t-transparent" }),
97
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm text-muted-foreground", children: "Loading..." })
97
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs sm:text-sm text-muted-foreground", children: "Loading..." })
98
98
  ] }) }),
99
99
  error && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-full items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-center gap-2 text-destructive", children: [
100
100
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -116,7 +116,7 @@ const GraphView = React__namespace.forwardRef(
116
116
  )
117
117
  }
118
118
  ),
119
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-medium", children: error })
119
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs sm:text-sm font-medium", children: error })
120
120
  ] }) }),
121
121
  !error && !children && emptyMessage && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-full items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-center gap-2 text-muted-foreground", children: [
122
122
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -138,7 +138,7 @@ const GraphView = React__namespace.forwardRef(
138
138
  )
139
139
  }
140
140
  ),
141
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm", children: emptyMessage })
141
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs sm:text-sm", children: emptyMessage })
142
142
  ] }) }),
143
143
  !error && children
144
144
  ] })
@@ -588,7 +588,7 @@ function GraphLegend({
588
588
  style: { backgroundColor: lineColor }
589
589
  }
590
590
  ),
591
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs font-medium text-foreground", children: s.label }),
591
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[10px] sm:text-xs font-medium text-foreground", children: s.label }),
592
592
  onUnselect && /* @__PURE__ */ jsxRuntime.jsx(
593
593
  "button",
594
594
  {
@@ -597,7 +597,7 @@ function GraphLegend({
597
597
  e.stopPropagation();
598
598
  onUnselect(s.label);
599
599
  },
600
- className: "ml-1 flex items-center justify-center w-4 h-4 rounded-sm hover:bg-muted transition-colors",
600
+ className: "ml-1 flex items-center justify-center w-4 h-4 rounded-sm hover:bg-muted transition-colors cursor-pointer",
601
601
  "aria-label": `Remove ${s.label}`,
602
602
  children: /* @__PURE__ */ jsxRuntime.jsxs(
603
603
  "svg",
@@ -14,8 +14,8 @@ function AppLogo({
14
14
  "div",
15
15
  {
16
16
  className: utils_cn.cn(
17
- "text-foreground flex items-center gap-2",
18
- size === "default" ? "text-xl" : "text-md"
17
+ "text-foreground flex items-center gap-1 sm:gap-2",
18
+ size === "default" ? "text-base sm:text-lg md:text-xl" : "text-sm sm:text-base md:text-md"
19
19
  ),
20
20
  children: [
21
21
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -25,10 +25,14 @@ function AppLogo({
25
25
  alt: "Gearbox Protocol",
26
26
  width: size === "default" ? 120 : 100,
27
27
  height: size === "default" ? 24 : 20,
28
- loading: "eager"
28
+ loading: "eager",
29
+ className: utils_cn.cn(
30
+ "h-auto",
31
+ size === "default" ? "w-20 sm:w-24 md:w-[120px]" : "w-16 sm:w-20 md:w-[100px]"
32
+ )
29
33
  }
30
34
  ),
31
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground", children: appName })
35
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground truncate", children: appName })
32
36
  ]
33
37
  }
34
38
  );
@@ -112,7 +112,7 @@ function GearboxFooter({
112
112
  ),
113
113
  children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-4 items-top py-6 w-full px-4 max-w-[1440px]", children: [
114
114
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-4 h-full justify-between", children: [
115
- /* @__PURE__ */ jsxRuntime.jsx(components_layout_appLogo_appLogo.AppLogo, { appName, size: "small" }),
115
+ /* @__PURE__ */ jsxRuntime.jsx(components_layout_appLogo_appLogo.AppLogo, { appName }),
116
116
  /* @__PURE__ */ jsxRuntime.jsx(components_layout_legalDisclaimer_legalDisclaimer.LegalDisclaimer, { hrefs: legalReferences })
117
117
  ] }),
118
118
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-4 h-full justify-between", children: [
@@ -129,6 +129,9 @@ const GAP_Y_CLASSES = {
129
129
  };
130
130
  const getGridColsClass = (cols, breakpoint) => {
131
131
  if (!cols) return "";
132
+ if (typeof cols === "string") {
133
+ return "";
134
+ }
132
135
  if (typeof cols === "number") {
133
136
  if (breakpoint === "sm") return GRID_COLS_SM_CLASSES[cols] || "";
134
137
  if (breakpoint === "md") return GRID_COLS_MD_CLASSES[cols] || "";
@@ -159,7 +162,10 @@ const Grid = React.forwardRef(
159
162
  children,
160
163
  ...props
161
164
  }, ref) => {
162
- const customStyle = typeof cols === "string" ? { ...style, gridTemplateColumns: cols } : style;
165
+ const customStyle = typeof cols === "string" ? {
166
+ ...style,
167
+ gridTemplateColumns: cols === "auto" ? "repeat(auto-fit, minmax(0, auto))" : cols
168
+ } : style;
163
169
  return /* @__PURE__ */ jsxRuntime.jsx(
164
170
  "div",
165
171
  {
@@ -47,19 +47,19 @@ const Header = React.forwardRef(
47
47
  "div",
48
48
  {
49
49
  className: utils_cn.cn(
50
- "w-full h-full flex items-stretch justify-between mx-auto px-4 max-w-[1440px]",
50
+ "w-full h-full flex items-stretch justify-between mx-auto px-4 sm:px-6 lg:px-8 max-w-[1440px]",
51
51
  containerClassName
52
52
  ),
53
53
  children: [
54
54
  logo && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center", children: logo }),
55
55
  navigation && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "hidden md:flex items-center", children: navigation }),
56
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
56
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-1 sm:gap-2", children: [
57
57
  actions && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "hidden md:flex items-center gap-2", children: actions }),
58
- (navigation || mobileMenuContent) && /* @__PURE__ */ jsxRuntime.jsx(
58
+ (navigation || mobileMenuContent || actions) && /* @__PURE__ */ jsxRuntime.jsx(
59
59
  "button",
60
60
  {
61
61
  type: "button",
62
- className: "md:hidden flex items-center justify-center p-2 rounded-md hover:bg-accent hover:text-accent-foreground focus:outline-none",
62
+ className: "md:hidden flex items-center justify-center p-2 rounded-md hover:bg-secondary hover:text-accent-foreground focus:outline-none cursor-pointer",
63
63
  onClick: () => setMobileMenuOpen(!mobileMenuOpen),
64
64
  "aria-label": mobileMenuOpen ? "Close menu" : "Open menu",
65
65
  children: mobileMenuOpen ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.X, { className: "h-6 w-6" }) : /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Menu, { className: "h-6 w-6" })
@@ -69,13 +69,22 @@ const Header = React.forwardRef(
69
69
  ]
70
70
  }
71
71
  ),
72
- mobileMenuOpen && (navigation || mobileMenuContent) && /* @__PURE__ */ jsxRuntime.jsx(
72
+ mobileMenuOpen && (navigation || mobileMenuContent || actions) && /* @__PURE__ */ jsxRuntime.jsx(
73
73
  MobileMenuContext.Provider,
74
74
  {
75
75
  value: { closeMobileMenu: () => setMobileMenuOpen(false) },
76
- children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute top-full left-0 right-0 bg-background border-b border-border md:hidden z-40 shadow-lg", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col px-4 py-4 space-y-2", children: [
76
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute top-full left-0 right-0 bg-background border-b border-border md:hidden z-40 shadow-lg", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col px-4 sm:px-6 py-4 space-y-2", children: [
77
77
  mobileMenuContent || navigation,
78
- actions && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col gap-2 pt-4 border-t border-border mt-4", children: actions })
78
+ actions && /* @__PURE__ */ jsxRuntime.jsx(
79
+ "div",
80
+ {
81
+ className: utils_cn.cn(
82
+ "flex flex-col gap-2",
83
+ (mobileMenuContent || navigation) && "pt-4 border-t border-border mt-4"
84
+ ),
85
+ children: actions
86
+ }
87
+ )
79
88
  ] }) })
80
89
  }
81
90
  )
@@ -29,8 +29,8 @@ function PageLayout({
29
29
  icon,
30
30
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "w-full", children: [
31
31
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-between items-center w-full", children: [
32
- /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "text-3xl font-bold", children: title }),
33
- actionButton
32
+ /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "text-3xl font-bold max-w-64 md:max-w-128 truncate", children: title }),
33
+ actionButton && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "shrink-0", children: actionButton })
34
34
  ] }),
35
35
  description
36
36
  ] })
@@ -7,8 +7,9 @@ const sdk = require('@gearbox-protocol/sdk');
7
7
  const React = require('react');
8
8
  const components_tokenSymbol_tokenSymbol = require('../../token-symbol/token-symbol.cjs');
9
9
  const components_typedIntl_index = require('../../typed-intl/index.cjs');
10
+ const hooks_useMediaQuery = require('../../../hooks/use-media-query.cjs');
11
+ const utils_cn = require('../../../utils/cn.cjs');
10
12
 
11
- const lineHeight = 51;
12
13
  function LiquidationModellingAssetsTable({
13
14
  tokensList,
14
15
  graphParams,
@@ -20,16 +21,21 @@ function LiquidationModellingAssetsTable({
20
21
  const fixedBalancesRecord = React.useMemo(() => {
21
22
  return sdk.AssetUtils.constructAssetRecord(fixedBalances);
22
23
  }, [fixedBalances]);
24
+ const isMobile = hooks_useMediaQuery.useIsMobile();
23
25
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "w-full", children: [
24
26
  /* @__PURE__ */ jsxRuntime.jsxs(
25
27
  "div",
26
28
  {
27
- className: "grid w-full px-4 gap-2 items-center h-[30px] relative after:absolute after:bottom-0 after:left-2 after:right-2 after:h-px after:border-b after:border-border",
29
+ className: utils_cn.cn(
30
+ "grid w-full px-3 sm:px-4 gap-1 sm:gap-2 items-center",
31
+ "h-7 sm:h-8 md:h-[30px]",
32
+ "relative after:absolute after:bottom-0 after:left-2 sm:after:left-3 after:right-2 sm:after:right-3 after:h-px after:border-b after:border-border"
33
+ ),
28
34
  style: { gridTemplateColumns: "1fr 1fr 1fr" },
29
35
  children: [
30
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-left text-sm font-medium text-muted-foreground", children: /* @__PURE__ */ jsxRuntime.jsx(components_typedIntl_index.FormattedMessageTyped, { messageId: "components.creditSessionDetailedLiquidation.table.asset" }) }),
31
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-right text-sm font-medium text-muted-foreground", children: /* @__PURE__ */ jsxRuntime.jsx(components_typedIntl_index.FormattedMessageTyped, { messageId: "components.creditSessionDetailedLiquidation.table.currentPrice" }) }),
32
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-right text-sm font-medium text-muted-foreground", children: /* @__PURE__ */ jsxRuntime.jsx(components_typedIntl_index.FormattedMessageTyped, { messageId: "components.creditSessionDetailedLiquidation.table.modelPrice" }) })
36
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-left text-xs sm:text-sm font-medium text-muted-foreground truncate", children: /* @__PURE__ */ jsxRuntime.jsx(components_typedIntl_index.FormattedMessageTyped, { messageId: "components.creditSessionDetailedLiquidation.table.asset" }) }),
37
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-right text-xs sm:text-sm font-medium text-muted-foreground truncate", children: /* @__PURE__ */ jsxRuntime.jsx(components_typedIntl_index.FormattedMessageTyped, { messageId: "components.creditSessionDetailedLiquidation.table.currentPrice" }) }),
38
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-right text-xs sm:text-sm font-medium text-muted-foreground truncate", children: /* @__PURE__ */ jsxRuntime.jsx(components_typedIntl_index.FormattedMessageTyped, { messageId: "components.creditSessionDetailedLiquidation.table.modelPrice" }) })
33
39
  ]
34
40
  }
35
41
  ),
@@ -38,26 +44,30 @@ function LiquidationModellingAssetsTable({
38
44
  return /* @__PURE__ */ jsxRuntime.jsxs(
39
45
  "div",
40
46
  {
41
- className: `grid w-full px-4 gap-2 items-center relative ${isLast ? "" : "after:absolute after:bottom-0 after:left-2 after:right-2 after:h-px after:border-b after:border-border"}`,
47
+ className: utils_cn.cn(
48
+ "grid w-full px-3 sm:px-4 gap-1 sm:gap-2 items-center relative",
49
+ "h-12 sm:h-14 md:h-[51px]",
50
+ !isLast && "after:absolute after:bottom-0 after:left-2 sm:after:left-3 after:right-2 sm:after:right-3 after:h-px after:border-b after:border-border"
51
+ ),
42
52
  style: {
43
- gridTemplateColumns: "1fr 1fr 1fr",
44
- height: `${lineHeight}px`
53
+ gridTemplateColumns: "1fr 1fr 1fr"
45
54
  },
46
55
  children: [
47
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-left", children: /* @__PURE__ */ jsxRuntime.jsx(
56
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-left min-w-0", children: /* @__PURE__ */ jsxRuntime.jsx(
48
57
  components_tokenSymbol_tokenSymbol.TokenSymbol,
49
58
  {
50
- size: 24,
59
+ size: isMobile ? 18 : 24,
51
60
  token: tokensList[c.token],
52
61
  showSymbol: true,
53
- maxLength: 8
62
+ maxLength: 6,
63
+ className: "gap-1.5 sm:gap-2"
54
64
  }
55
65
  ) }),
56
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "text-right", children: [
66
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "text-right text-xs sm:text-sm md:text-base truncate", children: [
57
67
  "$",
58
68
  formatPrice(prices[c.token])
59
69
  ] }),
60
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-right", children: fixedBalancesRecord[c.token] ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm text-muted-foreground", children: /* @__PURE__ */ jsxRuntime.jsx(components_typedIntl_index.FormattedMessageTyped, { messageId: "components.creditSessionDetailedLiquidation.table.seeGraph" }) }) : /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-sm text-muted-foreground", children: [
70
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-right min-w-0", children: fixedBalancesRecord[c.token] ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs sm:text-sm text-muted-foreground truncate", children: /* @__PURE__ */ jsxRuntime.jsx(components_typedIntl_index.FormattedMessageTyped, { messageId: "components.creditSessionDetailedLiquidation.table.seeGraph" }) }) : /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-xs sm:text-sm md:text-base text-muted-foreground truncate", children: [
61
71
  "$",
62
72
  formatPrice(editedPrices[c.token] || prices[c.token])
63
73
  ] }) })
@@ -21,12 +21,16 @@ function LoaderGuard({
21
21
  children,
22
22
  loader
23
23
  }) {
24
- const defaultLoader = /* @__PURE__ */ jsxRuntime.jsx(components_layout_container_container.Container, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-4 p-4", children: [
25
- /* @__PURE__ */ jsxRuntime.jsx(components_skeleton_skeleton.Skeleton, { className: "h-8 w-64" }),
26
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-2", children: [
27
- /* @__PURE__ */ jsxRuntime.jsx(components_skeleton_skeleton.Skeleton, { className: "h-4 w-full" }),
28
- /* @__PURE__ */ jsxRuntime.jsx(components_skeleton_skeleton.Skeleton, { className: "h-4 w-full" }),
29
- /* @__PURE__ */ jsxRuntime.jsx(components_skeleton_skeleton.Skeleton, { className: "h-4 w-3/4" })
24
+ const defaultLoader = /* @__PURE__ */ jsxRuntime.jsx(components_layout_container_container.Container, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-4 p-4 sm:p-6 w-full", children: [
25
+ /* @__PURE__ */ jsxRuntime.jsx(components_skeleton_skeleton.Skeleton, { className: "h-6 sm:h-8 w-48 sm:w-64" }),
26
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-2 mb-4", children: [
27
+ /* @__PURE__ */ jsxRuntime.jsx(components_skeleton_skeleton.Skeleton, { className: "h-3 sm:h-4 w-full" }),
28
+ /* @__PURE__ */ jsxRuntime.jsx(components_skeleton_skeleton.Skeleton, { className: "h-3 sm:h-4 w-full" }),
29
+ /* @__PURE__ */ jsxRuntime.jsx(components_skeleton_skeleton.Skeleton, { className: "h-3 sm:h-4 w-3/4" })
30
+ ] }),
31
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-4 md:flex-row flex-col w-full", children: [
32
+ /* @__PURE__ */ jsxRuntime.jsx(components_skeleton_skeleton.Skeleton, { className: "h-48 sm:h-64 md:h-72 md:w-2/3 w-full" }),
33
+ /* @__PURE__ */ jsxRuntime.jsx(components_skeleton_skeleton.Skeleton, { className: "h-48 sm:h-64 md:h-72 md:w-1/3 w-full" })
30
34
  ] })
31
35
  ] }) });
32
36
  const showGuard = show;
@@ -60,7 +60,10 @@ const NavbarContent = ({ containerClassName, children }) => {
60
60
  {
61
61
  ref: indicatorContext?.containerRef,
62
62
  className: utils_cn.cn(
63
- "flex items-center gap-2 flex-1 justify-center overflow-x-auto h-full relative",
63
+ "flex items-center gap-2 flex-1 h-full relative overflow-x-auto overflow-y-hidden",
64
+ "md:justify-center md:overflow-x-visible",
65
+ "px-1 pb-1 md:px-0 md:pb-0",
66
+ "navbar-scrollbar",
64
67
  containerClassName
65
68
  ),
66
69
  children: [
@@ -108,7 +111,7 @@ const NavbarNav = React__namespace.forwardRef(({ className, children, ...props }
108
111
  "div",
109
112
  {
110
113
  ref,
111
- className: utils_cn.cn("flex items-center gap-1", className),
114
+ className: utils_cn.cn("flex items-center gap-1 min-w-max", className),
112
115
  ...props,
113
116
  children
114
117
  }
@@ -35,12 +35,12 @@ const navitemVariants = classVarianceAuthority.cva(
35
35
  {
36
36
  variants: {
37
37
  variant: {
38
- default: "text-decoration-none text-foreground hover:text-foreground hover:bg-secondary data-[active=true]:bg-secondary md:data-[active=true]:bg-transparent data-[active=true]:text-foreground",
39
- active: "text-foreground bg-secondary",
40
- ghost: "text-decoration-none text-muted-foreground hover:text-foreground hover:bg-secondary data-[active=true]:bg-secondary md:data-[active=true]:bg-transparent data-[active=true]:text-foreground",
41
- link: "text-decoration-none text-muted-foreground hover:text-foreground underline-offset-4 hover:underline data-[active=true]:text-foreground data-[active=true]:underline",
42
- pill: "text-decoration-none text-muted-foreground hover:text-foreground hover:bg-accent rounded-full data-[active=true]:bg-accent data-[active=true]:text-foreground",
43
- tab: "text-decoration-none text-muted-foreground hover:text-foreground border-b-2 border-transparent hover:border-border data-[active=true]:border-primary data-[active=true]:text-foreground rounded-none"
38
+ default: "text-decoration-none text-foreground hover:text-foreground hover:bg-secondary data-[active=true]:bg-transparent md:data-[active=true]:bg-transparent data-[active=true]:text-foreground active:bg-transparent focus:bg-transparent md:focus:bg-secondary",
39
+ active: "text-foreground bg-transparent md:bg-secondary active:bg-transparent focus:bg-transparent md:active:bg-secondary md:focus:bg-secondary",
40
+ ghost: "text-decoration-none text-muted-foreground hover:text-foreground hover:bg-secondary data-[active=true]:bg-transparent md:data-[active=true]:bg-transparent data-[active=true]:text-foreground active:bg-transparent focus:bg-transparent md:focus:bg-secondary",
41
+ link: "text-decoration-none text-muted-foreground hover:text-foreground underline-offset-4 hover:underline data-[active=true]:text-foreground data-[active=true]:underline active:bg-transparent focus:bg-transparent",
42
+ pill: "text-decoration-none text-muted-foreground hover:text-foreground hover:bg-accent rounded-full data-[active=true]:bg-transparent md:data-[active=true]:bg-accent data-[active=true]:text-foreground active:bg-transparent focus:bg-transparent md:focus:bg-accent",
43
+ tab: "text-decoration-none text-muted-foreground hover:text-foreground border-b-2 border-transparent hover:border-border data-[active=true]:border-primary data-[active=true]:text-foreground rounded-none active:bg-transparent focus:bg-transparent"
44
44
  },
45
45
  size: {
46
46
  sm: "h-8 px-3 text-xs",
@@ -79,7 +79,7 @@ const PageTitle = React__namespace.forwardRef(
79
79
  }, ref) => {
80
80
  return /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: utils_cn.cn("w-full", className), ...props, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: utils_cn.cn(pageTitleRootVariants({ spacing })), children: [
81
81
  backButton && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-shrink-0", children: backButton }),
82
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-1 flex items-center gap-4", children: [
82
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-1 flex flex-col md:flex-row md:items-center gap-4", children: [
83
83
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-3 min-w-0", children: [
84
84
  icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-shrink-0", children: icon }),
85
85
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0", children: [
@@ -93,7 +93,7 @@ const PageTitle = React__namespace.forwardRef(
93
93
  subtitle && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm text-muted-foreground mt-1", children: subtitle })
94
94
  ] })
95
95
  ] }),
96
- actions && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-shrink-0 flex items-center gap-2", children: actions })
96
+ actions && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-shrink-0 flex items-center gap-2 md:ml-auto", children: actions })
97
97
  ] })
98
98
  ] }) });
99
99
  }
@@ -86,7 +86,8 @@ function TabControl({
86
86
  {
87
87
  ref: wrapRef,
88
88
  className: utils_cn.cn(
89
- "relative bottom-[-1px] flex items-stretch gap-3",
89
+ "relative bottom-[-1px] flex items-stretch gap-3 overflow-x-auto overflow-y-hidden w-full",
90
+ "navbar-scrollbar",
90
91
  showBorder && "border-b border-border"
91
92
  ),
92
93
  children: tabs.map((t, index, arr) => {
@@ -102,9 +103,9 @@ function TabControl({
102
103
  onClick: t.disabled ? void 0 : handleTabSelect(t.id, index),
103
104
  disabled: t.disabled,
104
105
  className: utils_cn.cn(
105
- "flex items-center bg-transparent border-none",
106
+ "flex items-center bg-transparent border-none shrink-0",
106
107
  tabItemWrapPadding || "pb-3.5",
107
- variant === "equal" ? "flex-1 justify-center" : !isLast && "mr-10 sm:mr-8",
108
+ variant === "equal" ? "flex-1 justify-center min-w-0" : !isLast && "mr-10 sm:mr-8",
108
109
  s || t.disabled ? "cursor-default" : "cursor-pointer",
109
110
  !t.disabled && "hover:text-foreground"
110
111
  ),
@@ -35,7 +35,7 @@ const TabsList = React__namespace.forwardRef(({ className, ...props }, ref) => /
35
35
  {
36
36
  ref,
37
37
  className: utils_cn.cn(
38
- "inline-flex h-fit items-center justify-start rounded-lg bg-muted p-1 text-muted-foreground bg-transparent p-0 space-x-6",
38
+ "inline-flex h-fit items-center justify-start rounded-lg bg-muted p-1 text-muted-foreground bg-transparent p-0 space-x-6 overflow-x-auto overflow-y-hidden navbar-scrollbar min-w-max",
39
39
  className
40
40
  ),
41
41
  ...props
@@ -47,7 +47,7 @@ const TabsTrigger = React__namespace.forwardRef(({ className, ...props }, ref) =
47
47
  {
48
48
  ref,
49
49
  className: utils_cn.cn(
50
- "inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow rounded-none border-b-2 border-transparent px-2 py-2 text-gray-400 hover:text-foreground data-[state=active]:border-foreground data-[state=active]:bg-transparent data-[state=active]:text-foreground focus:outline-none cursor-pointer",
50
+ "inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow rounded-none border-b-2 border-transparent px-2 py-2 text-gray-400 hover:text-foreground data-[state=active]:border-foreground data-[state=active]:bg-transparent data-[state=active]:text-foreground focus:outline-none cursor-pointer shrink-0",
51
51
  className
52
52
  ),
53
53
  ...props
@@ -12,7 +12,7 @@ function ThemeToggle() {
12
12
  {
13
13
  type: "button",
14
14
  onClick: () => setTheme(actualTheme === "dark" ? "light" : "dark"),
15
- className: "rounded-md p-2 hover:bg-accent cursor-pointer",
15
+ className: "rounded-md p-2 hover:bg-secondary cursor-pointer",
16
16
  "aria-label": "Toggle theme",
17
17
  children: actualTheme === "dark" ? /* @__PURE__ */ jsxRuntime.jsxs(
18
18
  "svg",
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const jsxRuntime = require('react/jsx-runtime');
6
6
  const React = require('react');
7
7
  const components_image_image = require('../image/image.cjs');
8
+ const utils_cn = require('../../utils/cn.cjs');
8
9
 
9
10
  function TokenIcon({
10
11
  symbol,
@@ -61,7 +62,7 @@ function TokenIcon({
61
62
  alt: "",
62
63
  width: size,
63
64
  height: size,
64
- className,
65
+ className: utils_cn.cn("w-full h-full object-contain block", className),
65
66
  onError: () => setSrc(defaultSrc),
66
67
  onLoad: () => setIsLoading(false)
67
68
  }
@@ -40,12 +40,12 @@ function TokenSymbol({
40
40
  {
41
41
  symbol,
42
42
  size,
43
- className: "rounded-full border-0"
43
+ className: "rounded-full border-0 shrink-0 self-center"
44
44
  }
45
45
  ),
46
- showSymbol && tokenTitle && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-1", children: [
47
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "font-medium", children: tokenTitle }),
48
- comment && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "text-md text-muted-foreground", children: [
46
+ showSymbol && tokenTitle && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-1 self-center", children: [
47
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-xs sm:text-sm md:text-base font-medium truncate whitespace-pre-wrap leading-tight", children: tokenTitle }),
48
+ comment && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "text-md text-muted-foreground leading-tight", children: [
49
49
  "(",
50
50
  comment,
51
51
  ")"