elseware-ui 2.30.1 → 2.31.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +109 -109
- package/dist/index.css +1791 -541
- package/dist/index.css.map +1 -1
- package/dist/index.d.mts +1327 -1225
- package/dist/index.d.ts +1327 -1225
- package/dist/index.js +1171 -381
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1167 -381
- package/dist/index.mjs.map +1 -1
- package/package.json +110 -110
package/dist/index.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var tailwindMerge = require('tailwind-merge');
|
|
4
|
+
var React4 = require('react');
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
4
6
|
var bs = require('react-icons/bs');
|
|
5
7
|
var fa = require('react-icons/fa');
|
|
6
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
7
8
|
var reactChartjs2 = require('react-chartjs-2');
|
|
8
9
|
var chart_js = require('chart.js');
|
|
9
|
-
var React4 = require('react');
|
|
10
10
|
var react = require('@headlessui/react');
|
|
11
|
-
var
|
|
11
|
+
var classNames16 = require('classnames');
|
|
12
12
|
var fa6 = require('react-icons/fa6');
|
|
13
13
|
var ReactWorldFlags = require('react-world-flags');
|
|
14
14
|
var emojiFlags = require('emoji-flags');
|
|
@@ -24,6 +24,7 @@ var reactBeautifulDnd = require('react-beautiful-dnd');
|
|
|
24
24
|
var md = require('react-icons/md');
|
|
25
25
|
require('@mdxeditor/editor/style.css');
|
|
26
26
|
var editor = require('@mdxeditor/editor');
|
|
27
|
+
var bi = require('react-icons/bi');
|
|
27
28
|
|
|
28
29
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
29
30
|
|
|
@@ -46,7 +47,7 @@ function _interopNamespace(e) {
|
|
|
46
47
|
}
|
|
47
48
|
|
|
48
49
|
var React4__default = /*#__PURE__*/_interopDefault(React4);
|
|
49
|
-
var
|
|
50
|
+
var classNames16__default = /*#__PURE__*/_interopDefault(classNames16);
|
|
50
51
|
var ReactWorldFlags__default = /*#__PURE__*/_interopDefault(ReactWorldFlags);
|
|
51
52
|
var emojiFlags__default = /*#__PURE__*/_interopDefault(emojiFlags);
|
|
52
53
|
var d3__namespace = /*#__PURE__*/_interopNamespace(d3);
|
|
@@ -188,27 +189,80 @@ var isMatch = (itemPath, currentPath) => {
|
|
|
188
189
|
if (item !== "/" && current.startsWith(item + "/")) return true;
|
|
189
190
|
return false;
|
|
190
191
|
};
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
192
|
+
|
|
193
|
+
// src/utils/styles.ts
|
|
194
|
+
function resolveAppearanceStyles({
|
|
195
|
+
appearance = "solid",
|
|
196
|
+
variant = "default",
|
|
197
|
+
solid,
|
|
198
|
+
lite,
|
|
199
|
+
ghost
|
|
200
|
+
}) {
|
|
201
|
+
switch (appearance) {
|
|
202
|
+
case "ghost":
|
|
203
|
+
return ghost[variant];
|
|
204
|
+
case "lite":
|
|
205
|
+
return lite[variant];
|
|
206
|
+
default:
|
|
207
|
+
return solid[variant];
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
var EUIContext = React4.createContext(null);
|
|
211
|
+
var EUIProvider = ({
|
|
212
|
+
config,
|
|
213
|
+
children
|
|
214
|
+
}) => {
|
|
215
|
+
const [state, setState] = React4.useState(config);
|
|
216
|
+
return /* @__PURE__ */ jsxRuntime.jsx(EUIContext.Provider, { value: { config: state, setConfig: setState }, children });
|
|
217
|
+
};
|
|
218
|
+
var useEUIConfig = () => {
|
|
219
|
+
const ctx = React4.useContext(EUIContext);
|
|
220
|
+
if (!ctx) {
|
|
221
|
+
throw new Error("useEUIConfig must be used inside EUIProvider");
|
|
222
|
+
}
|
|
223
|
+
return ctx;
|
|
224
|
+
};
|
|
225
|
+
|
|
226
|
+
// src/components/eui/resolveGlobalConfigs.tsx
|
|
227
|
+
function resolveWithGlobal(config, props, defaults) {
|
|
228
|
+
return {
|
|
229
|
+
...defaults,
|
|
230
|
+
...config?.global ?? {},
|
|
231
|
+
...props
|
|
232
|
+
};
|
|
233
|
+
}
|
|
234
|
+
var variantsSolid = {
|
|
235
|
+
default: "bg-gray-300 text-gray-900 hover:bg-gray-200 dark:bg-gray-700 dark:text-gray-100 dark:hover:bg-gray-600",
|
|
236
|
+
primary: "bg-gradient-to-r from-eui-primary-500 to-eui-primary-600 text-white hover:brightness-110",
|
|
237
|
+
secondary: "bg-gradient-to-r from-eui-secondary-600 to-eui-secondary-500 text-white hover:brightness-110",
|
|
238
|
+
success: "bg-gradient-to-r from-eui-success-600 to-eui-success-500 text-white hover:brightness-110",
|
|
239
|
+
danger: "bg-gradient-to-r from-eui-danger-600 to-eui-danger-500 text-white hover:brightness-110",
|
|
240
|
+
warning: "bg-gradient-to-r from-eui-warning-500 to-eui-warning-400 text-black hover:brightness-105",
|
|
241
|
+
info: "bg-gradient-to-r from-eui-info-600 to-eui-info-500 text-white hover:brightness-110",
|
|
242
|
+
light: "bg-gradient-to-r from-eui-light-400 to-eui-light-300 text-gray-900 hover:brightness-105 dark:from-gray-200 dark:to-gray-100 dark:text-gray-900",
|
|
243
|
+
dark: "bg-gradient-to-r from-eui-dark-400 to-eui-dark-500 text-white hover:brightness-110 dark:from-eui-dark-300 dark:to-eui-dark-400"
|
|
201
244
|
};
|
|
202
245
|
var variantsLite = {
|
|
203
|
-
default: "bg-gray-
|
|
204
|
-
primary: "bg-eui-primary-
|
|
205
|
-
secondary: "bg-eui-secondary-
|
|
206
|
-
success: "bg-eui-success-
|
|
207
|
-
danger: "bg-
|
|
208
|
-
warning: "bg-
|
|
209
|
-
info: "bg-eui-info-
|
|
210
|
-
light: "bg-
|
|
211
|
-
dark: "bg-eui-dark-
|
|
246
|
+
default: "bg-gray-500/10 border border-gray-300 text-gray-700 dark:bg-gray-400/10 dark:border-gray-700 dark:text-gray-200",
|
|
247
|
+
primary: "bg-eui-primary-500/10 border border-eui-primary-500/30 text-eui-primary-400 dark:text-eui-primary-300",
|
|
248
|
+
secondary: "bg-eui-secondary-500/10 border border-eui-secondary-500/30 text-eui-secondary-500 dark:text-eui-secondary-400",
|
|
249
|
+
success: "bg-eui-success-500/10 border border-eui-success-500/30 text-eui-success-500 dark:text-eui-success-400",
|
|
250
|
+
danger: "bg-eui-danger-500/10 border border-eui-danger-500/30 text-eui-danger-500 dark:text-eui-danger-400",
|
|
251
|
+
warning: "bg-eui-warning-500/10 border border-eui-warning-500/30 text-eui-warning-600 dark:text-eui-warning-400",
|
|
252
|
+
info: "bg-eui-info-500/10 border border-eui-info-500/30 text-eui-info-500 dark:text-eui-info-400",
|
|
253
|
+
light: "bg-white/40 border border-white/30 text-gray-800 dark:bg-white/10 dark:border-white/10 dark:text-gray-100",
|
|
254
|
+
dark: "bg-eui-dark-500/10 border border-eui-dark-500/30 text-eui-dark-500 dark:text-eui-dark-300"
|
|
255
|
+
};
|
|
256
|
+
var variantsGhost = {
|
|
257
|
+
default: "bg-transparent border border-gray-300 text-gray-700 hover:bg-gray-100 dark:border-gray-700 dark:text-gray-200 dark:hover:bg-gray-800",
|
|
258
|
+
primary: "bg-transparent border border-eui-primary-500 text-eui-primary-500 hover:bg-eui-primary-500/10 dark:text-eui-primary-300 dark:border-eui-primary-400",
|
|
259
|
+
secondary: "bg-transparent border border-eui-secondary-500 text-eui-secondary-500 hover:bg-eui-secondary-500/10 dark:text-eui-secondary-400 dark:border-eui-secondary-400",
|
|
260
|
+
success: "bg-transparent border border-eui-success-500 text-eui-success-500 hover:bg-eui-success-500/10 dark:text-eui-success-400 dark:border-eui-success-400",
|
|
261
|
+
danger: "bg-transparent border border-eui-danger-500 text-eui-danger-500 hover:bg-eui-danger-500/10 dark:text-eui-danger-400 dark:border-eui-danger-400",
|
|
262
|
+
warning: "bg-transparent border border-eui-warning-500 text-eui-warning-600 hover:bg-eui-warning-500/10 dark:text-eui-warning-400 dark:border-eui-warning-400",
|
|
263
|
+
info: "bg-transparent border border-eui-info-500 text-eui-info-500 hover:bg-eui-info-500/10 dark:text-eui-info-400 dark:border-eui-info-400",
|
|
264
|
+
light: "bg-transparent border border-gray-300 text-gray-700 hover:bg-white/10 dark:border-gray-500 dark:text-gray-100 dark:hover:bg-white/5",
|
|
265
|
+
dark: "bg-transparent border border-eui-dark-500 text-eui-dark-500 hover:bg-eui-dark-500/10 dark:text-eui-dark-300 dark:border-eui-dark-300"
|
|
212
266
|
};
|
|
213
267
|
var textVariants = {
|
|
214
268
|
default: "eui-text-md",
|
|
@@ -221,28 +275,6 @@ var textVariants = {
|
|
|
221
275
|
light: "text-gray-300",
|
|
222
276
|
dark: "text-gray-900"
|
|
223
277
|
};
|
|
224
|
-
var variantsGhost = {
|
|
225
|
-
default: "bg-transparent border border-gray-300 text-gray-800 hover:bg-gray-100",
|
|
226
|
-
primary: "bg-transparent border border-eui-primary-500 text-eui-primary-500",
|
|
227
|
-
secondary: "bg-transparent border border-eui-secondary-500 text-eui-secondary-500",
|
|
228
|
-
success: "bg-transparent border border-eui-success-500 text-eui-success-500",
|
|
229
|
-
danger: "bg-transparent border border-eui-danger-500 text-eui-danger-500",
|
|
230
|
-
warning: "bg-transparent border border-eui-warning-500 text-eui-warning-500",
|
|
231
|
-
info: "bg-transparent border border-eui-info-500 text-eui-info-500",
|
|
232
|
-
light: "bg-transparent border border-eui-light-500 text-eui-light-500",
|
|
233
|
-
dark: "bg-transparent border border-eui-dark-500 text-eui-dark-500"
|
|
234
|
-
};
|
|
235
|
-
var borderVariants = {
|
|
236
|
-
default: "border-gray-300",
|
|
237
|
-
primary: "border-eui-primary-500",
|
|
238
|
-
secondary: "border-eui-secondary-500",
|
|
239
|
-
success: "border-eui-success-500",
|
|
240
|
-
danger: "border-eui-danger-500",
|
|
241
|
-
warning: "border-eui-warning-500",
|
|
242
|
-
info: "border-eui-info-500",
|
|
243
|
-
light: "border-eui-light-500",
|
|
244
|
-
dark: "border-eui-dark-500"
|
|
245
|
-
};
|
|
246
278
|
var decorations = {
|
|
247
279
|
underline: "underline",
|
|
248
280
|
overline: "overline",
|
|
@@ -366,18 +398,38 @@ var bulletTypes = {
|
|
|
366
398
|
number: null,
|
|
367
399
|
none: null
|
|
368
400
|
};
|
|
401
|
+
var checkboxVariants = {
|
|
402
|
+
default: "checked:bg-gray-600 checked:border-gray-600 dark:checked:bg-gray-500 dark:checked:border-gray-500",
|
|
403
|
+
primary: "checked:bg-eui-primary-600 checked:border-eui-primary-600 dark:checked:bg-eui-primary-500 dark:checked:border-eui-primary-500",
|
|
404
|
+
secondary: "checked:bg-eui-secondary-600 checked:border-eui-secondary-600 dark:checked:bg-eui-secondary-500 dark:checked:border-eui-secondary-500",
|
|
405
|
+
success: "checked:bg-eui-success-600 checked:border-eui-success-600 dark:checked:bg-eui-success-500 dark:checked:border-eui-success-500",
|
|
406
|
+
danger: "checked:bg-eui-danger-600 checked:border-eui-danger-600 dark:checked:bg-eui-danger-500 dark:checked:border-eui-danger-500",
|
|
407
|
+
warning: "checked:bg-eui-warning-500 checked:border-eui-warning-500 dark:checked:bg-eui-warning-400 dark:checked:border-eui-warning-400",
|
|
408
|
+
info: "checked:bg-eui-info-600 checked:border-eui-info-600 dark:checked:bg-eui-info-500 dark:checked:border-eui-info-500",
|
|
409
|
+
light: "checked:bg-eui-light-400 checked:border-eui-light-400 dark:checked:bg-gray-200 dark:checked:border-gray-200",
|
|
410
|
+
dark: "checked:bg-eui-dark-500 checked:border-eui-dark-500 dark:checked:bg-eui-dark-300 dark:checked:border-eui-dark-300"
|
|
411
|
+
};
|
|
369
412
|
var Avatar = ({
|
|
370
413
|
alt,
|
|
371
414
|
icon,
|
|
372
415
|
children = "B",
|
|
373
416
|
variant = "success",
|
|
374
|
-
|
|
417
|
+
appearance = "solid",
|
|
418
|
+
shape,
|
|
375
419
|
size = "md",
|
|
376
420
|
src,
|
|
377
|
-
borderVariant = false,
|
|
378
421
|
className,
|
|
379
422
|
...rest
|
|
380
423
|
}) => {
|
|
424
|
+
const eui = useEUIConfig();
|
|
425
|
+
const resolvedShape = shape ?? eui?.config?.global?.shape ?? "circle";
|
|
426
|
+
const variantStyles = resolveAppearanceStyles({
|
|
427
|
+
appearance,
|
|
428
|
+
variant,
|
|
429
|
+
solid: variantsSolid,
|
|
430
|
+
lite: variantsLite,
|
|
431
|
+
ghost: variantsGhost
|
|
432
|
+
});
|
|
381
433
|
const content = src ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
382
434
|
"img",
|
|
383
435
|
{
|
|
@@ -391,10 +443,10 @@ var Avatar = ({
|
|
|
391
443
|
{
|
|
392
444
|
...rest,
|
|
393
445
|
className: cn(
|
|
394
|
-
"inline-flex items-center justify-center text-center overflow-hidden",
|
|
395
|
-
|
|
446
|
+
"inline-flex items-center justify-center text-center overflow-hidden transition-all duration-300 select-none",
|
|
447
|
+
variantStyles,
|
|
448
|
+
shapes[resolvedShape],
|
|
396
449
|
avatarSizes[size],
|
|
397
|
-
borderVariant ? ["border-2", borderVariants[variant]] : variants[variant],
|
|
398
450
|
className
|
|
399
451
|
),
|
|
400
452
|
children: content
|
|
@@ -407,6 +459,7 @@ var Badge = ({
|
|
|
407
459
|
dot,
|
|
408
460
|
count,
|
|
409
461
|
variant = "success",
|
|
462
|
+
appearance = "solid",
|
|
410
463
|
shape = "circle",
|
|
411
464
|
size = "md",
|
|
412
465
|
showZero = true,
|
|
@@ -423,14 +476,21 @@ var Badge = ({
|
|
|
423
476
|
if (position.includes("right")) offsetStyles.right = x;
|
|
424
477
|
}
|
|
425
478
|
const isVisible = dot || count !== void 0 && (count > 0 || showZero);
|
|
479
|
+
const variantStyles = resolveAppearanceStyles({
|
|
480
|
+
appearance,
|
|
481
|
+
variant,
|
|
482
|
+
solid: variantsSolid,
|
|
483
|
+
lite: variantsLite,
|
|
484
|
+
ghost: variantsGhost
|
|
485
|
+
});
|
|
426
486
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ...rest, className: "relative w-fit h-fit", children: [
|
|
427
487
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
428
488
|
"div",
|
|
429
489
|
{
|
|
430
490
|
className: cn(
|
|
431
|
-
"absolute inline-flex items-center justify-center text-center
|
|
491
|
+
"absolute inline-flex items-center justify-center text-center z-10 border border-white dark:border-neutral-900 transition-all duration-300",
|
|
432
492
|
badgePositions[position],
|
|
433
|
-
|
|
493
|
+
variantStyles,
|
|
434
494
|
shapes[shape],
|
|
435
495
|
badgeSizes[size],
|
|
436
496
|
!isVisible && "hidden",
|
|
@@ -554,21 +614,30 @@ var PieChart_default = PieChart;
|
|
|
554
614
|
var Chip = ({
|
|
555
615
|
label,
|
|
556
616
|
variant = "success",
|
|
557
|
-
|
|
558
|
-
|
|
617
|
+
appearance = "ghost",
|
|
618
|
+
shape,
|
|
559
619
|
size = "md",
|
|
560
620
|
className,
|
|
561
621
|
...rest
|
|
562
622
|
}) => {
|
|
623
|
+
const eui = useEUIConfig();
|
|
624
|
+
const resolvedShape = shape ?? eui?.config?.global?.shape ?? "circle";
|
|
625
|
+
const variantStyles = resolveAppearanceStyles({
|
|
626
|
+
appearance,
|
|
627
|
+
variant,
|
|
628
|
+
solid: variantsSolid,
|
|
629
|
+
lite: variantsLite,
|
|
630
|
+
ghost: variantsGhost
|
|
631
|
+
});
|
|
563
632
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-fit h-fit", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
564
633
|
"div",
|
|
565
634
|
{
|
|
566
635
|
...rest,
|
|
567
636
|
className: cn(
|
|
568
|
-
"inline-flex items-center justify-center text-center text-xs font-semibold
|
|
569
|
-
shapes[
|
|
637
|
+
"inline-flex items-center justify-center text-center text-xs font-semibold transition-all duration-300",
|
|
638
|
+
shapes[resolvedShape],
|
|
570
639
|
chipSizes[size],
|
|
571
|
-
|
|
640
|
+
variantStyles,
|
|
572
641
|
className
|
|
573
642
|
),
|
|
574
643
|
children: label
|
|
@@ -687,30 +756,6 @@ function DataViewFooter({ children }) {
|
|
|
687
756
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-between mt-6 pt-4 border-t border-gray-700/60", children });
|
|
688
757
|
}
|
|
689
758
|
var DataViewFooter_default = DataViewFooter;
|
|
690
|
-
var EUIContext = React4.createContext(null);
|
|
691
|
-
var EUIProvider = ({
|
|
692
|
-
config,
|
|
693
|
-
children
|
|
694
|
-
}) => {
|
|
695
|
-
const [state, setState] = React4.useState(config);
|
|
696
|
-
return /* @__PURE__ */ jsxRuntime.jsx(EUIContext.Provider, { value: { config: state, setConfig: setState }, children });
|
|
697
|
-
};
|
|
698
|
-
var useEUIConfig = () => {
|
|
699
|
-
const ctx = React4.useContext(EUIContext);
|
|
700
|
-
if (!ctx) {
|
|
701
|
-
throw new Error("useEUIConfig must be used inside EUIProvider");
|
|
702
|
-
}
|
|
703
|
-
return ctx;
|
|
704
|
-
};
|
|
705
|
-
|
|
706
|
-
// src/components/eui/resolveGlobalConfigs.tsx
|
|
707
|
-
function resolveWithGlobal(config, props, defaults) {
|
|
708
|
-
return {
|
|
709
|
-
...defaults,
|
|
710
|
-
...config?.global ?? {},
|
|
711
|
-
...props
|
|
712
|
-
};
|
|
713
|
-
}
|
|
714
759
|
function DataViewSearch({
|
|
715
760
|
placeholder = "Search...",
|
|
716
761
|
shape
|
|
@@ -767,7 +812,7 @@ function Accordion({
|
|
|
767
812
|
/* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
768
813
|
"div",
|
|
769
814
|
{
|
|
770
|
-
className:
|
|
815
|
+
className: classNames16__default.default({
|
|
771
816
|
"inline-flex gap-3 items-center px-3 py-2 w-full eui-gradient-to-r-general-xs": true,
|
|
772
817
|
"hover:cursor-pointer": toggleOnSummaryClick
|
|
773
818
|
}),
|
|
@@ -785,7 +830,7 @@ function Accordion({
|
|
|
785
830
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
786
831
|
fa6.FaCircleChevronDown,
|
|
787
832
|
{
|
|
788
|
-
className:
|
|
833
|
+
className: classNames16__default.default(
|
|
789
834
|
"text-xl transition-transform duration-300",
|
|
790
835
|
{ "rotate-180": collapse }
|
|
791
836
|
)
|
|
@@ -811,7 +856,7 @@ function Accordion({
|
|
|
811
856
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
812
857
|
"div",
|
|
813
858
|
{
|
|
814
|
-
className:
|
|
859
|
+
className: classNames16__default.default({
|
|
815
860
|
"border-t border-t-eui-dark-400/40 eui-text-sm": true,
|
|
816
861
|
"p-5": enableChildrenPadding
|
|
817
862
|
}),
|
|
@@ -891,7 +936,7 @@ function CardHeader({ icon, title, description, className }) {
|
|
|
891
936
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
892
937
|
"div",
|
|
893
938
|
{
|
|
894
|
-
className:
|
|
939
|
+
className: classNames16__default.default(
|
|
895
940
|
"flex items-start gap-4 p-6 border-b border-white/10",
|
|
896
941
|
className
|
|
897
942
|
),
|
|
@@ -907,14 +952,14 @@ function CardHeader({ icon, title, description, className }) {
|
|
|
907
952
|
}
|
|
908
953
|
var CardHeader_default = CardHeader;
|
|
909
954
|
function CardContent({ children, className }) {
|
|
910
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
955
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: classNames16__default.default("p-6 text-gray-300 text-sm", className), children });
|
|
911
956
|
}
|
|
912
957
|
var CardContent_default = CardContent;
|
|
913
958
|
function CardFooter({ children, className }) {
|
|
914
959
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
915
960
|
"div",
|
|
916
961
|
{
|
|
917
|
-
className:
|
|
962
|
+
className: classNames16__default.default(
|
|
918
963
|
"flex items-center gap-3 p-5 border-t border-white/10 text-sm text-gray-400",
|
|
919
964
|
className
|
|
920
965
|
),
|
|
@@ -956,7 +1001,7 @@ function GradientAnimation({
|
|
|
956
1001
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
957
1002
|
"div",
|
|
958
1003
|
{
|
|
959
|
-
className:
|
|
1004
|
+
className: classNames16__default.default("absolute inset-0"),
|
|
960
1005
|
style: {
|
|
961
1006
|
background: `linear-gradient(${cfg.angle}deg, ${cfg.colors?.join(",")})`,
|
|
962
1007
|
backgroundSize: cfg.backgroundSize,
|
|
@@ -1102,7 +1147,7 @@ function MotionSurface({
|
|
|
1102
1147
|
}) {
|
|
1103
1148
|
const AnimationComponent = animationVariant === "custom" ? CustomAnimation : animationRegistry[animationVariant];
|
|
1104
1149
|
const OverlayComponent = overlay === "custom" ? CustomOverlay : overlayRegistry[overlay];
|
|
1105
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className:
|
|
1150
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: classNames16__default.default("relative overflow-hidden", className), children: [
|
|
1106
1151
|
AnimationComponent && /* @__PURE__ */ jsxRuntime.jsx(AnimationComponent, { config: animationConfig, animated }),
|
|
1107
1152
|
OverlayComponent && /* @__PURE__ */ jsxRuntime.jsx(OverlayComponent, { config: overlayConfig }),
|
|
1108
1153
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative z-10", children })
|
|
@@ -1626,19 +1671,27 @@ function Info({
|
|
|
1626
1671
|
children,
|
|
1627
1672
|
variant = "default",
|
|
1628
1673
|
appearance = "lite",
|
|
1629
|
-
shape
|
|
1674
|
+
shape,
|
|
1630
1675
|
className,
|
|
1631
1676
|
...rest
|
|
1632
1677
|
}) {
|
|
1633
|
-
const
|
|
1678
|
+
const eui = useEUIConfig();
|
|
1679
|
+
const resolvedShape = shape ?? eui?.config?.global?.shape ?? "roundedSquare";
|
|
1680
|
+
const variantStyles = resolveAppearanceStyles({
|
|
1681
|
+
appearance,
|
|
1682
|
+
variant,
|
|
1683
|
+
solid: infoVariantsSolid,
|
|
1684
|
+
lite: infoVariantsLite,
|
|
1685
|
+
ghost: infoVariantsGhost
|
|
1686
|
+
});
|
|
1634
1687
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1635
1688
|
"div",
|
|
1636
1689
|
{
|
|
1637
1690
|
...rest,
|
|
1638
1691
|
className: cn(
|
|
1639
|
-
"w-full p-5 text-sm transition-
|
|
1692
|
+
"w-full p-5 text-sm transition-all duration-300",
|
|
1640
1693
|
variantStyles,
|
|
1641
|
-
shapes[
|
|
1694
|
+
shapes[resolvedShape],
|
|
1642
1695
|
className
|
|
1643
1696
|
),
|
|
1644
1697
|
children
|
|
@@ -1984,7 +2037,7 @@ var ListItem = ({
|
|
|
1984
2037
|
align = "start",
|
|
1985
2038
|
className
|
|
1986
2039
|
}) => {
|
|
1987
|
-
const bullet = renderBullet?.(index) ?? (bulletType === "number" ? /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-
|
|
2040
|
+
const bullet = renderBullet?.(index) ?? (bulletType === "number" ? /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-sm font-medium opacity-70", children: [
|
|
1988
2041
|
index + 1,
|
|
1989
2042
|
"."
|
|
1990
2043
|
] }) : bulletTypes[bulletType]);
|
|
@@ -1993,7 +2046,7 @@ var ListItem = ({
|
|
|
1993
2046
|
{
|
|
1994
2047
|
className: cn(
|
|
1995
2048
|
"flex gap-3",
|
|
1996
|
-
align === "center"
|
|
2049
|
+
align === "center" ? "items-center" : "items-baseline",
|
|
1997
2050
|
className
|
|
1998
2051
|
),
|
|
1999
2052
|
children: [
|
|
@@ -2001,18 +2054,23 @@ var ListItem = ({
|
|
|
2001
2054
|
"div",
|
|
2002
2055
|
{
|
|
2003
2056
|
className: cn(
|
|
2004
|
-
"
|
|
2005
|
-
|
|
2006
|
-
bulletType
|
|
2057
|
+
"shrink-0 text-gray-400 dark:text-gray-500",
|
|
2058
|
+
"w-[14px] flex justify-center",
|
|
2059
|
+
bulletType !== "number" && "mt-[0.35em]"
|
|
2007
2060
|
),
|
|
2008
2061
|
children: bullet
|
|
2009
2062
|
}
|
|
2010
2063
|
),
|
|
2011
|
-
TypographyComponent ? React4__default.default.cloneElement(
|
|
2064
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-1 min-w-0", children: TypographyComponent ? React4__default.default.cloneElement(
|
|
2012
2065
|
TypographyComponent,
|
|
2013
|
-
{
|
|
2066
|
+
{
|
|
2067
|
+
className: cn(
|
|
2068
|
+
"leading-relaxed",
|
|
2069
|
+
TypographyComponent?.props?.className
|
|
2070
|
+
)
|
|
2071
|
+
},
|
|
2014
2072
|
content
|
|
2015
|
-
) : content
|
|
2073
|
+
) : content })
|
|
2016
2074
|
]
|
|
2017
2075
|
}
|
|
2018
2076
|
);
|
|
@@ -2032,10 +2090,16 @@ var gridCols = {
|
|
|
2032
2090
|
};
|
|
2033
2091
|
function normalizeItem(item, defaultBulletType) {
|
|
2034
2092
|
if (typeof item === "string") {
|
|
2035
|
-
return {
|
|
2093
|
+
return {
|
|
2094
|
+
content: item,
|
|
2095
|
+
bulletType: defaultBulletType
|
|
2096
|
+
};
|
|
2036
2097
|
}
|
|
2037
2098
|
if (React4__default.default.isValidElement(item)) {
|
|
2038
|
-
return {
|
|
2099
|
+
return {
|
|
2100
|
+
content: item,
|
|
2101
|
+
bulletType: defaultBulletType
|
|
2102
|
+
};
|
|
2039
2103
|
}
|
|
2040
2104
|
return {
|
|
2041
2105
|
bulletType: defaultBulletType,
|
|
@@ -2056,8 +2120,8 @@ function List({
|
|
|
2056
2120
|
}) {
|
|
2057
2121
|
const isGrid = !!columns;
|
|
2058
2122
|
const isOrdered = bulletType === "number";
|
|
2059
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ...rest, className: cn("py-
|
|
2060
|
-
title && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-
|
|
2123
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ...rest, className: cn("py-2", className), children: [
|
|
2124
|
+
title && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm font-semibold mb-3", children: title }),
|
|
2061
2125
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2062
2126
|
"div",
|
|
2063
2127
|
{
|
|
@@ -2078,7 +2142,8 @@ function List({
|
|
|
2078
2142
|
bulletType: normalized.bulletType,
|
|
2079
2143
|
renderBullet: normalized.renderBullet,
|
|
2080
2144
|
TypographyComponent: normalized.TypographyComponent,
|
|
2081
|
-
className: normalized.className
|
|
2145
|
+
className: normalized.className,
|
|
2146
|
+
align
|
|
2082
2147
|
},
|
|
2083
2148
|
i
|
|
2084
2149
|
);
|
|
@@ -2088,230 +2153,404 @@ function List({
|
|
|
2088
2153
|
] });
|
|
2089
2154
|
}
|
|
2090
2155
|
var List_default = List;
|
|
2091
|
-
var
|
|
2092
|
-
|
|
2156
|
+
var calculateDiscountedPrice = (price, discount) => {
|
|
2157
|
+
if (!discount) return price;
|
|
2158
|
+
return price - price * discount / 100;
|
|
2093
2159
|
};
|
|
2160
|
+
var formatPrice = (value, decimals) => value.toFixed(decimals);
|
|
2094
2161
|
function PriceTag({
|
|
2095
|
-
discount,
|
|
2096
2162
|
price,
|
|
2163
|
+
discount,
|
|
2097
2164
|
code = "USD",
|
|
2165
|
+
variant = "success",
|
|
2166
|
+
appearance = "solid",
|
|
2167
|
+
shape,
|
|
2168
|
+
size = "md",
|
|
2169
|
+
decimals = 2,
|
|
2170
|
+
showCurrencyCode = true,
|
|
2171
|
+
currencyAsSubscript = true,
|
|
2172
|
+
showFreeLabel = true,
|
|
2098
2173
|
className,
|
|
2099
2174
|
...rest
|
|
2100
2175
|
}) {
|
|
2101
|
-
|
|
2102
|
-
|
|
2176
|
+
const eui = useEUIConfig();
|
|
2177
|
+
const resolvedShape = shape ?? eui?.config?.global?.shape ?? "roundedSquare";
|
|
2178
|
+
const variantStyles = resolveAppearanceStyles({
|
|
2179
|
+
appearance,
|
|
2180
|
+
variant,
|
|
2181
|
+
solid: variantsSolid,
|
|
2182
|
+
lite: variantsLite,
|
|
2183
|
+
ghost: variantsGhost
|
|
2184
|
+
});
|
|
2185
|
+
const discountedPrice = calculateDiscountedPrice(price, discount);
|
|
2186
|
+
const currency = getCurrencySymbol(code);
|
|
2187
|
+
if (price <= 0 && showFreeLabel) {
|
|
2188
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { ...rest, className: cn("inline-flex items-center", className), children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2103
2189
|
"div",
|
|
2104
2190
|
{
|
|
2105
|
-
|
|
2106
|
-
|
|
2107
|
-
|
|
2191
|
+
className: cn(
|
|
2192
|
+
"font-semibold",
|
|
2193
|
+
"px-3 py-1",
|
|
2194
|
+
"inline-flex items-center justify-center",
|
|
2195
|
+
variantStyles,
|
|
2196
|
+
shapes[resolvedShape],
|
|
2197
|
+
badgeSizes[size]
|
|
2198
|
+
),
|
|
2199
|
+
children: "FREE"
|
|
2108
2200
|
}
|
|
2109
|
-
);
|
|
2201
|
+
) });
|
|
2110
2202
|
}
|
|
2111
|
-
|
|
2112
|
-
|
|
2203
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ...rest, className: cn("inline-flex items-center gap-3", className), children: [
|
|
2204
|
+
!!discount && discount > 0 && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2113
2205
|
"div",
|
|
2114
2206
|
{
|
|
2115
|
-
|
|
2116
|
-
|
|
2207
|
+
className: cn(
|
|
2208
|
+
"inline-flex items-center justify-center",
|
|
2209
|
+
"font-semibold leading-none",
|
|
2210
|
+
"px-3 py-1",
|
|
2211
|
+
variantStyles,
|
|
2212
|
+
shapes[resolvedShape],
|
|
2213
|
+
badgeSizes[size]
|
|
2214
|
+
),
|
|
2117
2215
|
children: [
|
|
2118
|
-
|
|
2119
|
-
|
|
2120
|
-
|
|
2121
|
-
"%"
|
|
2122
|
-
] }),
|
|
2123
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "inline-flex gap-1 items-center", children: [
|
|
2124
|
-
discount ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "inline-flex gap-[3px] font-semibold", children: [
|
|
2125
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "eui-text-sm line-through", children: [
|
|
2126
|
-
getCurrencySymbol(code),
|
|
2127
|
-
price
|
|
2128
|
-
] }),
|
|
2129
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "eui-text-md", children: [
|
|
2130
|
-
getCurrencySymbol(code),
|
|
2131
|
-
applyDiscount(discount, price)
|
|
2132
|
-
] })
|
|
2133
|
-
] }) : /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "text-gray-50 font-semibold", children: [
|
|
2134
|
-
getCurrencySymbol(code),
|
|
2135
|
-
price
|
|
2136
|
-
] }),
|
|
2137
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-yellow-500 font-thin", children: code })
|
|
2138
|
-
] })
|
|
2216
|
+
"-",
|
|
2217
|
+
discount,
|
|
2218
|
+
"%"
|
|
2139
2219
|
]
|
|
2140
2220
|
}
|
|
2141
|
-
)
|
|
2142
|
-
|
|
2221
|
+
),
|
|
2222
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "inline-flex items-baseline gap-3", children: [
|
|
2223
|
+
!!discount && discount > 0 && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2224
|
+
"span",
|
|
2225
|
+
{
|
|
2226
|
+
className: cn(
|
|
2227
|
+
"font-semibold leading-none",
|
|
2228
|
+
"opacity-50 line-through",
|
|
2229
|
+
"text-lg"
|
|
2230
|
+
),
|
|
2231
|
+
children: [
|
|
2232
|
+
currency,
|
|
2233
|
+
formatPrice(price, decimals)
|
|
2234
|
+
]
|
|
2235
|
+
}
|
|
2236
|
+
),
|
|
2237
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: cn("font-semibold leading-none", "text-lg"), children: [
|
|
2238
|
+
currency,
|
|
2239
|
+
formatPrice(discountedPrice, decimals)
|
|
2240
|
+
] }),
|
|
2241
|
+
showCurrencyCode && /* @__PURE__ */ jsxRuntime.jsx(
|
|
2242
|
+
"span",
|
|
2243
|
+
{
|
|
2244
|
+
className: cn(
|
|
2245
|
+
"uppercase tracking-wide opacity-60",
|
|
2246
|
+
currencyAsSubscript ? "text-[10px] relative top-[0.35em]" : "text-xs"
|
|
2247
|
+
),
|
|
2248
|
+
children: code
|
|
2249
|
+
}
|
|
2250
|
+
)
|
|
2251
|
+
] })
|
|
2252
|
+
] });
|
|
2143
2253
|
}
|
|
2144
|
-
var
|
|
2145
|
-
xs:
|
|
2146
|
-
|
|
2147
|
-
|
|
2148
|
-
|
|
2149
|
-
|
|
2254
|
+
var progressSizes = {
|
|
2255
|
+
xs: {
|
|
2256
|
+
track: "h-1",
|
|
2257
|
+
text: "text-[10px]"
|
|
2258
|
+
},
|
|
2259
|
+
sm: {
|
|
2260
|
+
track: "h-2",
|
|
2261
|
+
text: "text-xs"
|
|
2262
|
+
},
|
|
2263
|
+
md: {
|
|
2264
|
+
track: "h-3",
|
|
2265
|
+
text: "text-sm"
|
|
2266
|
+
},
|
|
2267
|
+
lg: {
|
|
2268
|
+
track: "h-4",
|
|
2269
|
+
text: "text-sm"
|
|
2270
|
+
},
|
|
2271
|
+
xl: {
|
|
2272
|
+
track: "h-5",
|
|
2273
|
+
text: "text-base"
|
|
2274
|
+
}
|
|
2150
2275
|
};
|
|
2151
|
-
|
|
2276
|
+
function ProgressBar({
|
|
2152
2277
|
value,
|
|
2278
|
+
min = 0,
|
|
2279
|
+
max = 100,
|
|
2153
2280
|
variant = "success",
|
|
2154
|
-
|
|
2281
|
+
appearance = "solid",
|
|
2282
|
+
size = "md",
|
|
2283
|
+
shape,
|
|
2284
|
+
striped = false,
|
|
2285
|
+
animated = true,
|
|
2155
2286
|
showLabel = true,
|
|
2156
|
-
label,
|
|
2287
|
+
label = "Progress",
|
|
2157
2288
|
labelPlacement = "top",
|
|
2289
|
+
showPercentage = true,
|
|
2290
|
+
startContent,
|
|
2291
|
+
endContent,
|
|
2292
|
+
trackClassName,
|
|
2293
|
+
barClassName,
|
|
2158
2294
|
className,
|
|
2159
2295
|
...rest
|
|
2160
|
-
})
|
|
2161
|
-
const
|
|
2296
|
+
}) {
|
|
2297
|
+
const eui = useEUIConfig();
|
|
2298
|
+
const resolvedShape = shape ?? eui?.config?.global?.shape ?? "roundedSquare";
|
|
2299
|
+
const clampedValue = Math.min(max, Math.max(min, value));
|
|
2300
|
+
const percentage = (clampedValue - min) / (max - min) * 100;
|
|
2301
|
+
const variantStyles = resolveAppearanceStyles({
|
|
2302
|
+
appearance,
|
|
2303
|
+
variant,
|
|
2304
|
+
solid: variantsSolid,
|
|
2305
|
+
lite: variantsLite,
|
|
2306
|
+
ghost: variantsGhost
|
|
2307
|
+
});
|
|
2308
|
+
const sizeStyles = progressSizes[size];
|
|
2309
|
+
const hasTopLabel = showLabel && labelPlacement === "top";
|
|
2310
|
+
const hasBottomLabel = showLabel && labelPlacement === "bottom";
|
|
2311
|
+
const labelNode = /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2312
|
+
"div",
|
|
2313
|
+
{
|
|
2314
|
+
className: cn(
|
|
2315
|
+
"flex items-center justify-between gap-3",
|
|
2316
|
+
sizeStyles.text,
|
|
2317
|
+
"text-gray-600 dark:text-gray-300"
|
|
2318
|
+
),
|
|
2319
|
+
children: [
|
|
2320
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
2321
|
+
startContent,
|
|
2322
|
+
showLabel && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-medium", children: label })
|
|
2323
|
+
] }),
|
|
2324
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
2325
|
+
endContent,
|
|
2326
|
+
showPercentage && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "tabular-nums opacity-80", children: [
|
|
2327
|
+
Math.round(percentage),
|
|
2328
|
+
"%"
|
|
2329
|
+
] })
|
|
2330
|
+
] })
|
|
2331
|
+
]
|
|
2332
|
+
}
|
|
2333
|
+
);
|
|
2162
2334
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ...rest, className: cn("w-full", className), children: [
|
|
2163
|
-
|
|
2164
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { children: label ?? "Progress" }),
|
|
2165
|
-
/* @__PURE__ */ jsxRuntime.jsxs("span", { children: [
|
|
2166
|
-
clampedValue,
|
|
2167
|
-
"%"
|
|
2168
|
-
] })
|
|
2169
|
-
] }),
|
|
2335
|
+
hasTopLabel && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-2", children: labelNode }),
|
|
2170
2336
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
2171
2337
|
"div",
|
|
2172
2338
|
{
|
|
2173
2339
|
className: cn(
|
|
2174
|
-
"relative
|
|
2175
|
-
|
|
2340
|
+
"relative overflow-hidden",
|
|
2341
|
+
"bg-gray-200 dark:bg-neutral-800",
|
|
2342
|
+
"border border-gray-300 dark:border-neutral-700",
|
|
2343
|
+
"shadow-inner",
|
|
2344
|
+
sizeStyles.track,
|
|
2345
|
+
shapes[resolvedShape],
|
|
2346
|
+
trackClassName
|
|
2176
2347
|
),
|
|
2348
|
+
role: "progressbar",
|
|
2349
|
+
"aria-valuemin": min,
|
|
2350
|
+
"aria-valuemax": max,
|
|
2351
|
+
"aria-valuenow": clampedValue,
|
|
2177
2352
|
children: [
|
|
2178
2353
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2179
2354
|
"div",
|
|
2180
2355
|
{
|
|
2181
2356
|
className: cn(
|
|
2182
|
-
"h-full
|
|
2183
|
-
|
|
2357
|
+
"relative h-full",
|
|
2358
|
+
animated && "transition-all duration-500 ease-out",
|
|
2359
|
+
"before:absolute before:inset-0",
|
|
2360
|
+
"before:bg-white/10 dark:before:bg-white/5",
|
|
2361
|
+
"border-r border-white/10 dark:border-white/5",
|
|
2362
|
+
striped && [
|
|
2363
|
+
"bg-[length:40px_40px]",
|
|
2364
|
+
"bg-[linear-gradient(135deg,rgba(255,255,255,0.15)_25%,transparent_25%,transparent_50%,rgba(255,255,255,0.15)_50%,rgba(255,255,255,0.15)_75%,transparent_75%,transparent)]",
|
|
2365
|
+
animated && "animate-eui-progress-stripes"
|
|
2366
|
+
],
|
|
2367
|
+
variantStyles,
|
|
2368
|
+
barClassName
|
|
2184
2369
|
),
|
|
2185
|
-
style: {
|
|
2370
|
+
style: {
|
|
2371
|
+
width: `${percentage}%`
|
|
2372
|
+
}
|
|
2186
2373
|
}
|
|
2187
2374
|
),
|
|
2188
|
-
|
|
2189
|
-
|
|
2190
|
-
|
|
2191
|
-
|
|
2192
|
-
|
|
2193
|
-
|
|
2375
|
+
labelPlacement === "overlay" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
2376
|
+
"div",
|
|
2377
|
+
{
|
|
2378
|
+
className: cn(
|
|
2379
|
+
"absolute inset-0",
|
|
2380
|
+
"flex items-center justify-center",
|
|
2381
|
+
"font-medium",
|
|
2382
|
+
"text-white",
|
|
2383
|
+
sizeStyles.text,
|
|
2384
|
+
"pointer-events-none"
|
|
2385
|
+
),
|
|
2386
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "inline-flex items-center gap-2", children: [
|
|
2387
|
+
showLabel && /* @__PURE__ */ jsxRuntime.jsx("span", { children: label }),
|
|
2388
|
+
showPercentage && /* @__PURE__ */ jsxRuntime.jsxs("span", { children: [
|
|
2389
|
+
Math.round(percentage),
|
|
2390
|
+
"%"
|
|
2391
|
+
] })
|
|
2392
|
+
] })
|
|
2393
|
+
}
|
|
2394
|
+
)
|
|
2194
2395
|
]
|
|
2195
2396
|
}
|
|
2196
|
-
)
|
|
2397
|
+
),
|
|
2398
|
+
hasBottomLabel && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-2", children: labelNode })
|
|
2197
2399
|
] });
|
|
2400
|
+
}
|
|
2401
|
+
var sizes = {
|
|
2402
|
+
xs: "text-[10px]",
|
|
2403
|
+
sm: "text-xs",
|
|
2404
|
+
md: "text-sm",
|
|
2405
|
+
lg: "text-base",
|
|
2406
|
+
xl: "text-lg"
|
|
2198
2407
|
};
|
|
2199
2408
|
function StarRating({
|
|
2200
2409
|
rating,
|
|
2201
|
-
|
|
2202
|
-
|
|
2203
|
-
|
|
2410
|
+
max = 5,
|
|
2411
|
+
size = "md",
|
|
2412
|
+
showValue = false,
|
|
2413
|
+
valuePosition = "start",
|
|
2414
|
+
iconClassName,
|
|
2204
2415
|
className,
|
|
2205
2416
|
...rest
|
|
2206
2417
|
}) {
|
|
2207
|
-
const
|
|
2208
|
-
const
|
|
2209
|
-
const
|
|
2210
|
-
const
|
|
2211
|
-
const
|
|
2212
|
-
|
|
2213
|
-
|
|
2214
|
-
isNumericRatingEnabled && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-yellow-700 font-semibold text-[14px]", children: rating.toFixed(1) }),
|
|
2418
|
+
const normalizedRating = Math.max(0, Math.min(max, rating));
|
|
2419
|
+
const fullStars = Math.floor(normalizedRating);
|
|
2420
|
+
const hasHalfStar = normalizedRating % 1 >= 0.5;
|
|
2421
|
+
const emptyStars = max - fullStars - (hasHalfStar ? 1 : 0);
|
|
2422
|
+
const ratingValue = /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-semibold text-yellow-600 dark:text-yellow-400", children: normalizedRating.toFixed(1) });
|
|
2423
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ...rest, className: cn("inline-flex items-center gap-2", className), children: [
|
|
2424
|
+
showValue && valuePosition === "start" && ratingValue,
|
|
2215
2425
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
2216
2426
|
"div",
|
|
2217
2427
|
{
|
|
2218
2428
|
className: cn(
|
|
2219
|
-
"flex
|
|
2220
|
-
|
|
2429
|
+
"inline-flex items-center gap-[2px]",
|
|
2430
|
+
"text-yellow-500 dark:text-yellow-400",
|
|
2431
|
+
sizes[size],
|
|
2432
|
+
iconClassName
|
|
2221
2433
|
),
|
|
2222
2434
|
children: [
|
|
2223
|
-
[...Array(fullStars)].map((_, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2224
|
-
|
|
2225
|
-
[...Array(emptyStars)].map((_, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2435
|
+
[...Array(fullStars)].map((_, index) => /* @__PURE__ */ jsxRuntime.jsx(bs.BsStarFill, {}, index)),
|
|
2436
|
+
hasHalfStar && /* @__PURE__ */ jsxRuntime.jsx(bs.BsStarHalf, {}),
|
|
2437
|
+
[...Array(emptyStars)].map((_, index) => /* @__PURE__ */ jsxRuntime.jsx(bs.BsStar, { className: "opacity-40" }, index + fullStars))
|
|
2226
2438
|
]
|
|
2227
2439
|
}
|
|
2228
2440
|
),
|
|
2229
|
-
|
|
2230
|
-
"(",
|
|
2231
|
-
reviewAmount,
|
|
2232
|
-
")"
|
|
2233
|
-
] })
|
|
2441
|
+
showValue && valuePosition === "end" && ratingValue
|
|
2234
2442
|
] });
|
|
2235
2443
|
}
|
|
2236
2444
|
var StarRating_default = StarRating;
|
|
2237
|
-
var
|
|
2238
|
-
|
|
2239
|
-
|
|
2240
|
-
|
|
2241
|
-
|
|
2242
|
-
|
|
2243
|
-
|
|
2244
|
-
|
|
2245
|
-
|
|
2445
|
+
var sizes2 = {
|
|
2446
|
+
xs: {
|
|
2447
|
+
value: "text-2xl",
|
|
2448
|
+
review: "text-xs"
|
|
2449
|
+
},
|
|
2450
|
+
sm: {
|
|
2451
|
+
value: "text-3xl",
|
|
2452
|
+
review: "text-xs"
|
|
2453
|
+
},
|
|
2454
|
+
md: {
|
|
2455
|
+
value: "text-5xl",
|
|
2456
|
+
review: "text-sm"
|
|
2457
|
+
},
|
|
2458
|
+
lg: {
|
|
2459
|
+
value: "text-6xl",
|
|
2460
|
+
review: "text-base"
|
|
2461
|
+
},
|
|
2462
|
+
xl: {
|
|
2463
|
+
value: "text-7xl",
|
|
2464
|
+
review: "text-lg"
|
|
2465
|
+
}
|
|
2246
2466
|
};
|
|
2247
|
-
|
|
2248
|
-
|
|
2249
|
-
|
|
2250
|
-
|
|
2251
|
-
|
|
2467
|
+
function NumericRating({
|
|
2468
|
+
rating,
|
|
2469
|
+
totalReviews,
|
|
2470
|
+
size = "md",
|
|
2471
|
+
showStars = true,
|
|
2472
|
+
showReviewCount = true,
|
|
2473
|
+
reviewLabel = "reviews",
|
|
2474
|
+
className,
|
|
2475
|
+
...rest
|
|
2476
|
+
}) {
|
|
2477
|
+
const sizeStyles = sizes2[size];
|
|
2478
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2479
|
+
"div",
|
|
2480
|
+
{
|
|
2481
|
+
...rest,
|
|
2482
|
+
className: cn(
|
|
2483
|
+
"flex flex-col items-center justify-center",
|
|
2484
|
+
"min-w-[120px]",
|
|
2485
|
+
className
|
|
2486
|
+
),
|
|
2487
|
+
children: [
|
|
2488
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2489
|
+
"div",
|
|
2490
|
+
{
|
|
2491
|
+
className: cn(
|
|
2492
|
+
"font-bold leading-none",
|
|
2493
|
+
"text-gray-900 dark:text-gray-100",
|
|
2494
|
+
sizeStyles.value
|
|
2495
|
+
),
|
|
2496
|
+
children: rating.toFixed(1)
|
|
2497
|
+
}
|
|
2498
|
+
),
|
|
2499
|
+
showStars && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-2", children: /* @__PURE__ */ jsxRuntime.jsx(StarRating_default, { rating, size }) }),
|
|
2500
|
+
showReviewCount && totalReviews !== void 0 && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2501
|
+
"div",
|
|
2502
|
+
{
|
|
2503
|
+
className: cn(
|
|
2504
|
+
"mt-1 text-gray-500 dark:text-gray-400",
|
|
2505
|
+
sizeStyles.review
|
|
2506
|
+
),
|
|
2507
|
+
children: [
|
|
2508
|
+
totalReviews,
|
|
2509
|
+
" ",
|
|
2510
|
+
reviewLabel
|
|
2511
|
+
]
|
|
2512
|
+
}
|
|
2513
|
+
)
|
|
2514
|
+
]
|
|
2515
|
+
}
|
|
2516
|
+
);
|
|
2517
|
+
}
|
|
2518
|
+
var NumericRating_default = NumericRating;
|
|
2519
|
+
function ProgressBarRating({
|
|
2520
|
+
star,
|
|
2521
|
+
percentage,
|
|
2522
|
+
variant = "warning",
|
|
2523
|
+
appearance = "solid",
|
|
2524
|
+
shape = "roundedSquare",
|
|
2525
|
+
size = "sm",
|
|
2526
|
+
animated = true,
|
|
2527
|
+
striped = false,
|
|
2528
|
+
className,
|
|
2529
|
+
...rest
|
|
2530
|
+
}) {
|
|
2531
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ...rest, className: cn("flex items-center gap-3 w-full", className), children: [
|
|
2532
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-5 text-sm font-medium text-gray-700 dark:text-gray-300", children: star }),
|
|
2533
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-1", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2534
|
+
ProgressBar,
|
|
2252
2535
|
{
|
|
2253
|
-
|
|
2254
|
-
|
|
2536
|
+
value: percentage,
|
|
2537
|
+
variant,
|
|
2538
|
+
appearance,
|
|
2539
|
+
shape,
|
|
2540
|
+
size,
|
|
2541
|
+
animated,
|
|
2542
|
+
striped,
|
|
2543
|
+
showLabel: false,
|
|
2544
|
+
showPercentage: false
|
|
2255
2545
|
}
|
|
2256
2546
|
) }),
|
|
2257
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "text-xs text-gray-500
|
|
2547
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "w-[52px] text-right text-xs tabular-nums text-gray-500 dark:text-gray-400", children: [
|
|
2258
2548
|
percentage.toFixed(1),
|
|
2259
2549
|
"%"
|
|
2260
2550
|
] })
|
|
2261
2551
|
] });
|
|
2262
|
-
};
|
|
2263
|
-
var ProgressBarsRating = ({
|
|
2264
|
-
ratingDistribution
|
|
2265
|
-
}) => {
|
|
2266
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col gap-2 w-full max-w-md", children: ratingDistribution.map((item) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2267
|
-
ProgressBarRating,
|
|
2268
|
-
{
|
|
2269
|
-
star: item.star,
|
|
2270
|
-
percentage: item.percentage
|
|
2271
|
-
},
|
|
2272
|
-
item.star
|
|
2273
|
-
)) });
|
|
2274
|
-
};
|
|
2275
|
-
function StarRatingDistribution({
|
|
2276
|
-
numericRating = true,
|
|
2277
|
-
progressBarsRating = true,
|
|
2278
|
-
ratingDistribution = [
|
|
2279
|
-
{ star: 5, count: 0 },
|
|
2280
|
-
{ star: 4, count: 0 },
|
|
2281
|
-
{ star: 3, count: 0 },
|
|
2282
|
-
{ star: 2, count: 0 },
|
|
2283
|
-
{ star: 1, count: 0 }
|
|
2284
|
-
]
|
|
2285
|
-
}) {
|
|
2286
|
-
const totalReviews = ratingDistribution.reduce(
|
|
2287
|
-
(acc, item) => acc + item.count,
|
|
2288
|
-
0
|
|
2289
|
-
);
|
|
2290
|
-
const averageRating = totalReviews > 0 ? ratingDistribution.reduce(
|
|
2291
|
-
(acc, item) => acc + item.star * item.count,
|
|
2292
|
-
0
|
|
2293
|
-
) / totalReviews : 0;
|
|
2294
|
-
const ratingDistributionWithPercentage = ratingDistribution.map((item) => ({
|
|
2295
|
-
star: item.star,
|
|
2296
|
-
percentage: totalReviews > 0 ? item.count / totalReviews * 100 : 0
|
|
2297
|
-
}));
|
|
2298
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-row items-center justify-center gap-10 p-5 bg-gray-800 bg-opacity-50 border border-gray-800 rounded-md shadow-sm", children: [
|
|
2299
|
-
numericRating && /* @__PURE__ */ jsxRuntime.jsx(
|
|
2300
|
-
NumericRating,
|
|
2301
|
-
{
|
|
2302
|
-
averageRating,
|
|
2303
|
-
totalReviews
|
|
2304
|
-
}
|
|
2305
|
-
),
|
|
2306
|
-
progressBarsRating && /* @__PURE__ */ jsxRuntime.jsx(
|
|
2307
|
-
ProgressBarsRating,
|
|
2308
|
-
{
|
|
2309
|
-
ratingDistribution: ratingDistributionWithPercentage
|
|
2310
|
-
}
|
|
2311
|
-
)
|
|
2312
|
-
] });
|
|
2313
2552
|
}
|
|
2314
|
-
var
|
|
2553
|
+
var ProgressBarRating_default = ProgressBarRating;
|
|
2315
2554
|
function Table({
|
|
2316
2555
|
title,
|
|
2317
2556
|
columns,
|
|
@@ -2619,7 +2858,7 @@ var Form = ({
|
|
|
2619
2858
|
/* @__PURE__ */ jsxRuntime.jsx(UnsavedChangesGuard_default, { formik: formik$1, enabled: warnOnUnsavedChanges }),
|
|
2620
2859
|
/* @__PURE__ */ jsxRuntime.jsx(DirtyObserver_default, { formik: formik$1, onDirtyChange }),
|
|
2621
2860
|
/* @__PURE__ */ jsxRuntime.jsx(FormObserver_default, { formik: formik$1, onChange }),
|
|
2622
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
2861
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: classNames16__default.default(styles), children })
|
|
2623
2862
|
] })
|
|
2624
2863
|
}
|
|
2625
2864
|
);
|
|
@@ -2628,7 +2867,7 @@ var Backdrop = ({ children, styles }) => {
|
|
|
2628
2867
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
2629
2868
|
"div",
|
|
2630
2869
|
{
|
|
2631
|
-
className:
|
|
2870
|
+
className: classNames16__default.default({
|
|
2632
2871
|
"bg-black/75 top-0 bottom-0 left-0 right-0 z-50 fixed inset-0 flex items-center justify-center overflow-hidden": true,
|
|
2633
2872
|
[`${styles}`]: styles
|
|
2634
2873
|
}),
|
|
@@ -2722,7 +2961,7 @@ var Transition4 = {
|
|
|
2722
2961
|
TransitionDropdown: TransitionDropdown_default,
|
|
2723
2962
|
TransitionFadeIn: TransitionFadeIn_default
|
|
2724
2963
|
};
|
|
2725
|
-
var
|
|
2964
|
+
var sizes3 = {
|
|
2726
2965
|
xs: "px-2 py-1 text-xs",
|
|
2727
2966
|
sm: "px-3 py-2 text-sm",
|
|
2728
2967
|
md: "px-4 py-2 text-base",
|
|
@@ -2739,11 +2978,11 @@ function FormResponse({
|
|
|
2739
2978
|
return /* @__PURE__ */ jsxRuntime.jsx(Transition4.TransitionDropdown, { visibility: text ? true : false, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2740
2979
|
"div",
|
|
2741
2980
|
{
|
|
2742
|
-
className:
|
|
2981
|
+
className: classNames16__default.default({
|
|
2743
2982
|
"font-poppins font-light text-sm": true,
|
|
2744
2983
|
[`${variantsLite[variant]}`]: variant,
|
|
2745
2984
|
[`${shapes[shape]}`]: shape,
|
|
2746
|
-
[`${
|
|
2985
|
+
[`${sizes3[size]}`]: size,
|
|
2747
2986
|
[`${styles}`]: styles
|
|
2748
2987
|
}),
|
|
2749
2988
|
children: text
|
|
@@ -2856,7 +3095,7 @@ var ThemeSwitch = () => {
|
|
|
2856
3095
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2857
3096
|
"div",
|
|
2858
3097
|
{
|
|
2859
|
-
className:
|
|
3098
|
+
className: classNames16__default.default(
|
|
2860
3099
|
"w-6 h-6 bg-white dark:bg-gray-600 rounded-full shadow-md transition-transform duration-300",
|
|
2861
3100
|
theme === "dark" ? "translate-x-8" : "translate-x-0"
|
|
2862
3101
|
)
|
|
@@ -2893,7 +3132,7 @@ var ShapeSwitch = () => {
|
|
|
2893
3132
|
{
|
|
2894
3133
|
value: currentShape,
|
|
2895
3134
|
onChange: handleChange,
|
|
2896
|
-
className: "\n px-3 py-2 rounded-md border border-gray-300\n bg-white dark:bg-gray-800\n text-sm shadow-sm\n focus:outline-none\n ",
|
|
3135
|
+
className: "\r\n px-3 py-2 rounded-md border border-gray-300\r\n bg-white dark:bg-gray-800\r\n text-sm shadow-sm\r\n focus:outline-none\r\n ",
|
|
2897
3136
|
children: Object.keys(Shape).map((shape) => /* @__PURE__ */ jsxRuntime.jsx("option", { value: shape, children: shape }, shape))
|
|
2898
3137
|
}
|
|
2899
3138
|
) });
|
|
@@ -14318,31 +14557,39 @@ function WorldMap({
|
|
|
14318
14557
|
/* @__PURE__ */ jsxRuntime.jsx(Tooltip4, { show: showTooltip, children: tooltipContent })
|
|
14319
14558
|
] });
|
|
14320
14559
|
}
|
|
14321
|
-
var
|
|
14560
|
+
var sizes4 = {
|
|
14322
14561
|
xs: "px-2 py-1 text-xs",
|
|
14323
14562
|
sm: "px-3 py-1.5 text-sm",
|
|
14324
14563
|
md: "px-4 py-2 text-base",
|
|
14325
14564
|
lg: "px-5 py-3 text-lg",
|
|
14326
14565
|
xl: "px-6 py-4 text-xl"
|
|
14327
14566
|
};
|
|
14328
|
-
|
|
14567
|
+
function Button({
|
|
14329
14568
|
type = "button",
|
|
14330
14569
|
icon,
|
|
14331
14570
|
text,
|
|
14332
14571
|
children,
|
|
14333
|
-
loading,
|
|
14334
|
-
disabled,
|
|
14335
|
-
|
|
14336
|
-
block,
|
|
14572
|
+
loading = false,
|
|
14573
|
+
disabled = false,
|
|
14574
|
+
block = false,
|
|
14337
14575
|
variant = "success",
|
|
14576
|
+
appearance = "solid",
|
|
14338
14577
|
shape,
|
|
14339
14578
|
size = "md",
|
|
14340
|
-
|
|
14341
|
-
|
|
14342
|
-
|
|
14579
|
+
className,
|
|
14580
|
+
onMouseMove,
|
|
14581
|
+
...rest
|
|
14582
|
+
}) {
|
|
14343
14583
|
const eui = useEUIConfig();
|
|
14344
14584
|
const resolvedShape = shape ?? eui?.config?.global?.shape ?? "square";
|
|
14345
14585
|
const btnRef = React4.useRef(null);
|
|
14586
|
+
const variantStyles = resolveAppearanceStyles({
|
|
14587
|
+
appearance,
|
|
14588
|
+
variant,
|
|
14589
|
+
solid: variantsSolid,
|
|
14590
|
+
lite: variantsLite,
|
|
14591
|
+
ghost: variantsGhost
|
|
14592
|
+
});
|
|
14346
14593
|
const handleMouseMove = (e) => {
|
|
14347
14594
|
const btn = btnRef.current;
|
|
14348
14595
|
if (!btn) return;
|
|
@@ -14351,38 +14598,36 @@ var Button = ({
|
|
|
14351
14598
|
const y = e.clientY - rect.top;
|
|
14352
14599
|
btn.style.setProperty("--glow-x", `${x}px`);
|
|
14353
14600
|
btn.style.setProperty("--glow-y", `${y}px`);
|
|
14601
|
+
onMouseMove?.(e);
|
|
14354
14602
|
};
|
|
14355
14603
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
14356
14604
|
"button",
|
|
14357
14605
|
{
|
|
14606
|
+
...rest,
|
|
14358
14607
|
ref: btnRef,
|
|
14359
14608
|
type,
|
|
14360
|
-
onClick,
|
|
14361
|
-
onMouseMove: handleMouseMove,
|
|
14362
14609
|
disabled: disabled || loading,
|
|
14363
|
-
|
|
14364
|
-
|
|
14365
|
-
"
|
|
14366
|
-
|
|
14367
|
-
[
|
|
14368
|
-
[
|
|
14369
|
-
|
|
14370
|
-
"
|
|
14371
|
-
|
|
14372
|
-
|
|
14373
|
-
|
|
14374
|
-
[`${styles}`]: styles
|
|
14375
|
-
}),
|
|
14610
|
+
onMouseMove: handleMouseMove,
|
|
14611
|
+
className: cn(
|
|
14612
|
+
"relative overflow-hidden group inline-flex items-center justify-center gap-2 transition-all duration-300",
|
|
14613
|
+
variantStyles,
|
|
14614
|
+
shapes[resolvedShape],
|
|
14615
|
+
sizes4[size],
|
|
14616
|
+
block && "w-full",
|
|
14617
|
+
(loading || disabled) && "brightness-75 grayscale cursor-not-allowed",
|
|
14618
|
+
!loading && !disabled && "hover:cursor-pointer",
|
|
14619
|
+
className
|
|
14620
|
+
),
|
|
14376
14621
|
children: [
|
|
14377
14622
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
14378
14623
|
"span",
|
|
14379
14624
|
{
|
|
14380
|
-
className: "
|
|
14625
|
+
className: "pointer-events-none absolute inset-0 opacity-0 group-hover:opacity-100 transition-opacity duration-300",
|
|
14381
14626
|
style: {
|
|
14382
14627
|
background: `
|
|
14383
14628
|
radial-gradient(
|
|
14384
14629
|
200px circle at var(--glow-x) var(--glow-y),
|
|
14385
|
-
rgba(
|
|
14630
|
+
rgba(255,255,255,0.18),
|
|
14386
14631
|
transparent 50%
|
|
14387
14632
|
)
|
|
14388
14633
|
`
|
|
@@ -14390,13 +14635,14 @@ var Button = ({
|
|
|
14390
14635
|
}
|
|
14391
14636
|
),
|
|
14392
14637
|
loading && /* @__PURE__ */ jsxRuntime.jsx(ai.AiOutlineLoading, { className: "animate-spin z-10" }),
|
|
14393
|
-
icon && /* @__PURE__ */ jsxRuntime.jsx("
|
|
14394
|
-
text && /* @__PURE__ */ jsxRuntime.jsx("
|
|
14395
|
-
children && /* @__PURE__ */ jsxRuntime.jsx("
|
|
14638
|
+
icon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "z-10", children: icon }),
|
|
14639
|
+
text && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "z-10", children: text }),
|
|
14640
|
+
children && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "z-10", children })
|
|
14396
14641
|
]
|
|
14397
14642
|
}
|
|
14398
14643
|
);
|
|
14399
|
-
}
|
|
14644
|
+
}
|
|
14645
|
+
var Button_default = Button;
|
|
14400
14646
|
function InputResponse({
|
|
14401
14647
|
name,
|
|
14402
14648
|
visibility,
|
|
@@ -14406,7 +14652,7 @@ function InputResponse({
|
|
|
14406
14652
|
return /* @__PURE__ */ jsxRuntime.jsx(Transition4.TransitionDropdown, { visibility, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
14407
14653
|
"div",
|
|
14408
14654
|
{
|
|
14409
|
-
className:
|
|
14655
|
+
className: classNames16__default.default({
|
|
14410
14656
|
"font-medium text-sm py-1 px-2": true,
|
|
14411
14657
|
[`${textVariants[variant]}`]: variant,
|
|
14412
14658
|
"transition-all ease-in-out": true,
|
|
@@ -14421,7 +14667,7 @@ function InputLabel({ text, children, styles }) {
|
|
|
14421
14667
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
14422
14668
|
"label",
|
|
14423
14669
|
{
|
|
14424
|
-
className:
|
|
14670
|
+
className: classNames16__default.default({
|
|
14425
14671
|
"px-0 eui-text-sm text-[13.5px] pointer-events-none select-none": true,
|
|
14426
14672
|
"transition-all ease-in-out": true,
|
|
14427
14673
|
[`${styles}`]: styles
|
|
@@ -14473,7 +14719,7 @@ var Input = ({
|
|
|
14473
14719
|
...field,
|
|
14474
14720
|
...props,
|
|
14475
14721
|
placeholder,
|
|
14476
|
-
className:
|
|
14722
|
+
className: classNames16__default.default({
|
|
14477
14723
|
"border peer w-full bg-eui-primary-300/10 pt-5 px-3 pb-2 text-md eui-text-md placeholder-transparent placeholder-shown:p-3 focus:outline-none h-[50px]": true,
|
|
14478
14724
|
"border-eui-primary-400 focus:border-eui-secondary-500": !(meta.touched && meta.error),
|
|
14479
14725
|
"border-eui-danger-500": meta.touched && meta.error,
|
|
@@ -14518,7 +14764,7 @@ var InputFile = ({
|
|
|
14518
14764
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
14519
14765
|
"div",
|
|
14520
14766
|
{
|
|
14521
|
-
className:
|
|
14767
|
+
className: classNames16__default.default(
|
|
14522
14768
|
"border rounded-sm bg-eui-primary-300/10 px-3 pt-3 text-md text-eui-dark-100 cursor-pointer h-[50px] flex items-center",
|
|
14523
14769
|
{
|
|
14524
14770
|
"border-eui-primary-400 focus:border-eui-secondary-500": !(meta.touched && meta.error),
|
|
@@ -14544,7 +14790,7 @@ var InputFile = ({
|
|
|
14544
14790
|
InputLabel_default,
|
|
14545
14791
|
{
|
|
14546
14792
|
text: placeholder,
|
|
14547
|
-
styles:
|
|
14793
|
+
styles: classNames16__default.default({
|
|
14548
14794
|
"absolute left-2 eui-text-sm peer-placeholder-shown:text-base peer-placeholder-shown:top-3 pointer-events-none": true,
|
|
14549
14795
|
"top-[0.7px]": showFloatingLabel,
|
|
14550
14796
|
"top-[13px] text-base": !showFloatingLabel
|
|
@@ -14570,7 +14816,7 @@ var InputList = ({ name, placeholder, shape }) => {
|
|
|
14570
14816
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-2", children: /* @__PURE__ */ jsxRuntime.jsx(formik.FieldArray, { name, children: ({ push, remove, move }) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
14571
14817
|
"div",
|
|
14572
14818
|
{
|
|
14573
|
-
className:
|
|
14819
|
+
className: classNames16__default.default({
|
|
14574
14820
|
"flex flex-col space-y-2 w-full bg-eui-primary-300/10": true,
|
|
14575
14821
|
[`${shapes[resolvedShape]}`]: true
|
|
14576
14822
|
}),
|
|
@@ -14601,7 +14847,7 @@ var InputList = ({ name, placeholder, shape }) => {
|
|
|
14601
14847
|
{
|
|
14602
14848
|
name: `${name}[${index}]`,
|
|
14603
14849
|
placeholder: `Item ${index + 1}`,
|
|
14604
|
-
className:
|
|
14850
|
+
className: classNames16__default.default(
|
|
14605
14851
|
"border peer w-full bg-eui-primary-300/10 pt-5 px-3 pb-2 text-md eui-text-md placeholder-transparent placeholder-shown:p-3 focus:outline-none h-[50px]",
|
|
14606
14852
|
[`${shapes[resolvedShape]}`],
|
|
14607
14853
|
errors[name]?.[index] ? "border-eui-danger-500" : "border-eui-primary-400 focus:border-eui-secondary-500"
|
|
@@ -14669,7 +14915,7 @@ var InputListGroup = ({
|
|
|
14669
14915
|
values[name]?.map((group, groupIndex) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
14670
14916
|
"div",
|
|
14671
14917
|
{
|
|
14672
|
-
className:
|
|
14918
|
+
className: classNames16__default.default({
|
|
14673
14919
|
"flex flex-col gap-2 bg-eui-primary-300/10 p-3": true,
|
|
14674
14920
|
[`${shapes[resolvedShape]}`]: true
|
|
14675
14921
|
}),
|
|
@@ -14681,7 +14927,7 @@ var InputListGroup = ({
|
|
|
14681
14927
|
{
|
|
14682
14928
|
name: `${name}[${groupIndex}].name`,
|
|
14683
14929
|
placeholder: `Group ${groupIndex + 1}`,
|
|
14684
|
-
className:
|
|
14930
|
+
className: classNames16__default.default(
|
|
14685
14931
|
"border w-full bg-eui-primary-300/10 px-3 py-2 text-md focus:outline-none h-[40px]",
|
|
14686
14932
|
[`${shapes[resolvedShape]}`],
|
|
14687
14933
|
"border-eui-primary-400 focus:border-eui-secondary-500"
|
|
@@ -14723,7 +14969,7 @@ var InputListGroup = ({
|
|
|
14723
14969
|
{
|
|
14724
14970
|
ref: provided.innerRef,
|
|
14725
14971
|
...provided.droppableProps,
|
|
14726
|
-
className:
|
|
14972
|
+
className: classNames16__default.default({
|
|
14727
14973
|
"space-y-2 bg-eui-primary-300/10 p-2": true,
|
|
14728
14974
|
[`${shapes[resolvedShape]}`]: true
|
|
14729
14975
|
}),
|
|
@@ -14738,7 +14984,7 @@ var InputListGroup = ({
|
|
|
14738
14984
|
{
|
|
14739
14985
|
ref: provided2.innerRef,
|
|
14740
14986
|
...provided2.draggableProps,
|
|
14741
|
-
className:
|
|
14987
|
+
className: classNames16__default.default({
|
|
14742
14988
|
"flex items-center gap-2 bg-eui-primary-300/10 p-2": true,
|
|
14743
14989
|
[`${shapes[resolvedShape]}`]: true
|
|
14744
14990
|
}),
|
|
@@ -14749,7 +14995,7 @@ var InputListGroup = ({
|
|
|
14749
14995
|
{
|
|
14750
14996
|
name: `${name}[${groupIndex}].items[${itemIndex}]`,
|
|
14751
14997
|
placeholder: `Item ${itemIndex + 1}`,
|
|
14752
|
-
className:
|
|
14998
|
+
className: classNames16__default.default(
|
|
14753
14999
|
"border w-full bg-eui-primary-300/10 px-3 py-2 text-md focus:outline-none h-[40px]",
|
|
14754
15000
|
[`${shapes[resolvedShape]}`],
|
|
14755
15001
|
"border-eui-primary-400 focus:border-eui-secondary-500"
|
|
@@ -14822,43 +15068,76 @@ var InputListGroup = ({
|
|
|
14822
15068
|
function isMultiCheckbox(props) {
|
|
14823
15069
|
return Array.isArray(props.options);
|
|
14824
15070
|
}
|
|
14825
|
-
|
|
14826
|
-
|
|
15071
|
+
function Checkbox({
|
|
15072
|
+
placeholder,
|
|
15073
|
+
variant = "primary",
|
|
15074
|
+
shape = "roundedSquare",
|
|
15075
|
+
className,
|
|
15076
|
+
...props
|
|
15077
|
+
}) {
|
|
14827
15078
|
const isMulti = isMultiCheckbox(props);
|
|
14828
|
-
const [
|
|
14829
|
-
|
|
15079
|
+
const [multiField, multiMeta, multiHelpers] = formik.useField(
|
|
15080
|
+
props
|
|
15081
|
+
);
|
|
15082
|
+
const [singleField, singleMeta, singleHelpers] = formik.useField(
|
|
15083
|
+
props
|
|
15084
|
+
);
|
|
15085
|
+
const field = isMulti ? multiField : singleField;
|
|
15086
|
+
const meta = isMulti ? multiMeta : singleMeta;
|
|
15087
|
+
const checkboxClass = cn(
|
|
15088
|
+
// Base
|
|
14830
15089
|
"appearance-none cursor-pointer transition-all duration-300",
|
|
14831
15090
|
"w-5 h-5 min-w-[1.25rem] min-h-[1.25rem]",
|
|
14832
|
-
"flex-shrink-0",
|
|
14833
|
-
|
|
14834
|
-
"
|
|
14835
|
-
"
|
|
15091
|
+
"flex-shrink-0 relative",
|
|
15092
|
+
// Unchecked state
|
|
15093
|
+
"bg-white border-2 border-gray-300",
|
|
15094
|
+
"hover:border-gray-400",
|
|
15095
|
+
// Dark mode
|
|
15096
|
+
"dark:bg-neutral-900",
|
|
15097
|
+
"dark:border-neutral-600",
|
|
15098
|
+
"dark:hover:border-neutral-500",
|
|
15099
|
+
// Focus state
|
|
15100
|
+
"focus:outline-none focus:ring-2",
|
|
15101
|
+
"focus:ring-eui-primary-500/30",
|
|
15102
|
+
// Checked variant styles
|
|
15103
|
+
checkboxVariants[variant],
|
|
15104
|
+
// Check icon
|
|
15105
|
+
"checked:before:content-['\u2713']",
|
|
15106
|
+
"checked:before:absolute checked:before:inset-0",
|
|
14836
15107
|
"checked:before:flex checked:before:items-center checked:before:justify-center",
|
|
14837
|
-
"checked:before:text-white checked:before:font-bold checked:before:text-sm"
|
|
15108
|
+
"checked:before:text-white checked:before:font-bold checked:before:text-sm",
|
|
15109
|
+
// Disabled state
|
|
15110
|
+
"disabled:opacity-50 disabled:cursor-not-allowed",
|
|
15111
|
+
// Shape
|
|
15112
|
+
shapes[shape],
|
|
15113
|
+
className
|
|
14838
15114
|
);
|
|
14839
15115
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
14840
15116
|
!isMulti && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-row gap-3 items-start", children: [
|
|
14841
15117
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
14842
15118
|
"input",
|
|
14843
15119
|
{
|
|
14844
|
-
id:
|
|
15120
|
+
id: singleField.name,
|
|
14845
15121
|
type: "checkbox",
|
|
14846
|
-
checked: Boolean(
|
|
14847
|
-
onChange: (e) =>
|
|
15122
|
+
checked: Boolean(singleField.value),
|
|
15123
|
+
onChange: (e) => singleHelpers.setValue(e.target.checked),
|
|
14848
15124
|
className: checkboxClass
|
|
14849
15125
|
}
|
|
14850
15126
|
),
|
|
14851
15127
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
14852
15128
|
"label",
|
|
14853
15129
|
{
|
|
14854
|
-
htmlFor:
|
|
14855
|
-
className:
|
|
15130
|
+
htmlFor: singleField.name,
|
|
15131
|
+
className: cn(
|
|
15132
|
+
"text-sm leading-relaxed cursor-pointer select-none",
|
|
15133
|
+
"text-gray-800 dark:text-gray-200"
|
|
15134
|
+
),
|
|
14856
15135
|
children: placeholder
|
|
14857
15136
|
}
|
|
14858
15137
|
)
|
|
14859
15138
|
] }),
|
|
14860
15139
|
isMulti && props.options.map((option) => {
|
|
14861
|
-
const values =
|
|
15140
|
+
const values = multiField.value ?? [];
|
|
14862
15141
|
const checked = values.includes(option.value);
|
|
14863
15142
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
14864
15143
|
"div",
|
|
@@ -14872,7 +15151,7 @@ var Checkbox = (props) => {
|
|
|
14872
15151
|
type: "checkbox",
|
|
14873
15152
|
checked,
|
|
14874
15153
|
onChange: () => {
|
|
14875
|
-
|
|
15154
|
+
multiHelpers.setValue(
|
|
14876
15155
|
checked ? values.filter((v) => v !== option.value) : [...values, option.value]
|
|
14877
15156
|
);
|
|
14878
15157
|
},
|
|
@@ -14883,7 +15162,10 @@ var Checkbox = (props) => {
|
|
|
14883
15162
|
"label",
|
|
14884
15163
|
{
|
|
14885
15164
|
htmlFor: option.value,
|
|
14886
|
-
className:
|
|
15165
|
+
className: cn(
|
|
15166
|
+
"text-sm leading-relaxed cursor-pointer select-none",
|
|
15167
|
+
"text-gray-800 dark:text-gray-200"
|
|
15168
|
+
),
|
|
14887
15169
|
children: option.label
|
|
14888
15170
|
}
|
|
14889
15171
|
)
|
|
@@ -14901,7 +15183,7 @@ var Checkbox = (props) => {
|
|
|
14901
15183
|
}
|
|
14902
15184
|
)
|
|
14903
15185
|
] });
|
|
14904
|
-
}
|
|
15186
|
+
}
|
|
14905
15187
|
var Checkbox_default = Checkbox;
|
|
14906
15188
|
var DateSelector = ({
|
|
14907
15189
|
placeholder,
|
|
@@ -14927,7 +15209,7 @@ var DateSelector = ({
|
|
|
14927
15209
|
...field,
|
|
14928
15210
|
...props,
|
|
14929
15211
|
placeholder,
|
|
14930
|
-
className:
|
|
15212
|
+
className: classNames16__default.default({
|
|
14931
15213
|
"border border-eui-primary-400 peer w-full bg-eui-primary-300/10 pt-5 px-3 pb-2 text-md eui-text-md placeholder-transparent placeholder-shown:p-3 focus:border-eui-secondary-500 focus:outline-none h-[50px]": true,
|
|
14932
15214
|
"border-eui-danger-500": meta.touched && meta.error,
|
|
14933
15215
|
"transition-all ease-in-out": true,
|
|
@@ -15036,7 +15318,7 @@ var ImageInput = React4.forwardRef(
|
|
|
15036
15318
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
15037
15319
|
"label",
|
|
15038
15320
|
{
|
|
15039
|
-
className:
|
|
15321
|
+
className: classNames16__default.default({
|
|
15040
15322
|
"border-2 border-dashed border-gray-700 bg-gray-900 h-[200px] w-[300px] flex flex-col gap-2 items-center justify-center group": true,
|
|
15041
15323
|
"hover:cursor-pointer hover:border-solid hover:border-gray-600 hover:bg-gray-900/80": true,
|
|
15042
15324
|
"transition-all ease-in-out duration-150": true
|
|
@@ -15153,7 +15435,7 @@ function Radio({
|
|
|
15153
15435
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
15154
15436
|
"div",
|
|
15155
15437
|
{
|
|
15156
|
-
className:
|
|
15438
|
+
className: classNames16__default.default({
|
|
15157
15439
|
"flex flex-row gap-2 items-center mx-1 my-2": true
|
|
15158
15440
|
}),
|
|
15159
15441
|
children: [
|
|
@@ -15166,7 +15448,7 @@ function Radio({
|
|
|
15166
15448
|
...props,
|
|
15167
15449
|
value: option.value,
|
|
15168
15450
|
checked: field2.value === option.value,
|
|
15169
|
-
className:
|
|
15451
|
+
className: classNames16__default.default({
|
|
15170
15452
|
"appearance-none w-4 h-4 border-2 border-eui-primary-400 rounded-full cursor-pointer transition-all duration-300": true,
|
|
15171
15453
|
// base radio button styles
|
|
15172
15454
|
"checked:bg-eui-secondary-700 checked:border-eui-primary-400": field2.value === option.value
|
|
@@ -15178,7 +15460,7 @@ function Radio({
|
|
|
15178
15460
|
"label",
|
|
15179
15461
|
{
|
|
15180
15462
|
htmlFor: option.value,
|
|
15181
|
-
className:
|
|
15463
|
+
className: classNames16__default.default({
|
|
15182
15464
|
"eui-text-md text-sm": true
|
|
15183
15465
|
}),
|
|
15184
15466
|
children: option.label
|
|
@@ -15221,7 +15503,7 @@ function StarRatingInput({
|
|
|
15221
15503
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
15222
15504
|
"div",
|
|
15223
15505
|
{
|
|
15224
|
-
className:
|
|
15506
|
+
className: classNames16__default.default({
|
|
15225
15507
|
"inline-flex gap-[4px] text-[20px]": true,
|
|
15226
15508
|
[`${styles}`]: styles
|
|
15227
15509
|
}),
|
|
@@ -15234,7 +15516,7 @@ function StarRatingInput({
|
|
|
15234
15516
|
onClick: () => handleOnClick(index),
|
|
15235
15517
|
onMouseEnter: () => setHover(index),
|
|
15236
15518
|
onMouseLeave: () => setHover(null),
|
|
15237
|
-
className:
|
|
15519
|
+
className: classNames16__default.default({
|
|
15238
15520
|
"text-yellow-600": index <= (hover ?? rating - 1),
|
|
15239
15521
|
"text-gray-400": index > (hover ?? rating - 1)
|
|
15240
15522
|
}),
|
|
@@ -15278,7 +15560,7 @@ function Select({
|
|
|
15278
15560
|
{
|
|
15279
15561
|
as: "select",
|
|
15280
15562
|
...props,
|
|
15281
|
-
className:
|
|
15563
|
+
className: classNames16__default.default({
|
|
15282
15564
|
"border peer w-full bg-eui-primary-300/10 pt-5 px-3 pb-2 text-md eui-text-md placeholder-transparent placeholder-shown:p-3 focus:border-eui-secondary-500 focus:outline-none h-[50px]": true,
|
|
15283
15565
|
"border-eui-primary-400": !(meta.touched && meta.error),
|
|
15284
15566
|
"border-red-500": meta.touched && meta.error,
|
|
@@ -15330,7 +15612,7 @@ function Switch({
|
|
|
15330
15612
|
"div",
|
|
15331
15613
|
{
|
|
15332
15614
|
onClick: () => helpers.setValue(!field.value),
|
|
15333
|
-
className:
|
|
15615
|
+
className: classNames16__default.default(
|
|
15334
15616
|
"w-11 h-6 bg-gray-200 peer-focus:outline-none rounded-full peer dark:bg-eui-dark-100",
|
|
15335
15617
|
"peer-checked:after:translate-x-full peer-checked:after:border-white",
|
|
15336
15618
|
"after:content-[''] after:absolute after:top-[2px] after:left-[2px] after:bg-white",
|
|
@@ -15387,7 +15669,7 @@ function Tags({
|
|
|
15387
15669
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
15388
15670
|
"div",
|
|
15389
15671
|
{
|
|
15390
|
-
className:
|
|
15672
|
+
className: classNames16__default.default(
|
|
15391
15673
|
"border rounded-sm flex flex-wrap items-center gap-2 px-2 pt-2 pb-6 min-h-[3rem]",
|
|
15392
15674
|
{
|
|
15393
15675
|
"bg-eui-primary-300/10 eui-text-md": true,
|
|
@@ -15435,7 +15717,7 @@ function Tags({
|
|
|
15435
15717
|
InputLabel_default,
|
|
15436
15718
|
{
|
|
15437
15719
|
text: placeholder,
|
|
15438
|
-
styles:
|
|
15720
|
+
styles: classNames16__default.default(
|
|
15439
15721
|
"absolute left-2 transition-all pointer-events-none text-eui-dark-200",
|
|
15440
15722
|
input.length > 0 || field.value.length > 0 ? "top-[2px] text-[13.5px]" : "top-3 text-base"
|
|
15441
15723
|
)
|
|
@@ -15460,7 +15742,7 @@ function Tags({
|
|
|
15460
15742
|
var Tags_default = Tags;
|
|
15461
15743
|
function TextArea({
|
|
15462
15744
|
placeholder,
|
|
15463
|
-
limit,
|
|
15745
|
+
limit = 1e3,
|
|
15464
15746
|
styles,
|
|
15465
15747
|
shape,
|
|
15466
15748
|
...props
|
|
@@ -15476,7 +15758,7 @@ function TextArea({
|
|
|
15476
15758
|
as: "textarea",
|
|
15477
15759
|
...field,
|
|
15478
15760
|
...props,
|
|
15479
|
-
className:
|
|
15761
|
+
className: classNames16__default.default({
|
|
15480
15762
|
"border peer w-full bg-eui-primary-300/10 eui-text-md outline-none px-3 py-5 resize-none focus:resize-none focus:outline-none": true,
|
|
15481
15763
|
"transition-all ease-in-out": true,
|
|
15482
15764
|
"border-eui-primary-400 focus:border-eui-secondary-500": !(meta.touched && meta.error),
|
|
@@ -15490,7 +15772,7 @@ function TextArea({
|
|
|
15490
15772
|
InputLabel_default,
|
|
15491
15773
|
{
|
|
15492
15774
|
text: placeholder,
|
|
15493
|
-
styles:
|
|
15775
|
+
styles: classNames16__default.default(
|
|
15494
15776
|
"absolute left-2 transition-all pointer-events-none text-eui-dark-200",
|
|
15495
15777
|
field.value ? "top-[2px] text-[13.5px]" : "top-3 text-base"
|
|
15496
15778
|
)
|
|
@@ -15521,7 +15803,7 @@ function ContentArea({
|
|
|
15521
15803
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
15522
15804
|
"div",
|
|
15523
15805
|
{
|
|
15524
|
-
className:
|
|
15806
|
+
className: classNames16__default.default({
|
|
15525
15807
|
"min-h-screen h-full w-full py-3 px-5": true,
|
|
15526
15808
|
"py-3 px-5": !enablePadding,
|
|
15527
15809
|
"py-3 px-5 lg:px-[150px]": enablePadding,
|
|
@@ -15537,7 +15819,7 @@ function FlexCol({ children, gap = 3, styles }) {
|
|
|
15537
15819
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
15538
15820
|
"div",
|
|
15539
15821
|
{
|
|
15540
|
-
className:
|
|
15822
|
+
className: classNames16__default.default({
|
|
15541
15823
|
[`flex flex-col gap-${gap}`]: true,
|
|
15542
15824
|
[`${styles}`]: styles
|
|
15543
15825
|
}),
|
|
@@ -15550,7 +15832,7 @@ function FlexRow({ children, gap = 3, styles }) {
|
|
|
15550
15832
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
15551
15833
|
"div",
|
|
15552
15834
|
{
|
|
15553
|
-
className:
|
|
15835
|
+
className: classNames16__default.default({
|
|
15554
15836
|
[`flex flex-row gap-${gap}`]: true,
|
|
15555
15837
|
[`${styles}`]: styles
|
|
15556
15838
|
}),
|
|
@@ -15569,7 +15851,7 @@ function Grid({ children, styles }) {
|
|
|
15569
15851
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
15570
15852
|
"div",
|
|
15571
15853
|
{
|
|
15572
|
-
className:
|
|
15854
|
+
className: classNames16__default.default({
|
|
15573
15855
|
[`grid`]: true,
|
|
15574
15856
|
[`${styles}`]: styles
|
|
15575
15857
|
}),
|
|
@@ -15586,7 +15868,7 @@ var Layout = ({
|
|
|
15586
15868
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
15587
15869
|
"div",
|
|
15588
15870
|
{
|
|
15589
|
-
className:
|
|
15871
|
+
className: classNames16__default.default({
|
|
15590
15872
|
// "flex h-full w-screen bg-gray-100 overflow-auto": true,
|
|
15591
15873
|
"flex bg-eui-light-600": true,
|
|
15592
15874
|
"flex-col": flexDirection === "vertical",
|
|
@@ -15605,7 +15887,7 @@ var Header = ({
|
|
|
15605
15887
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
15606
15888
|
"div",
|
|
15607
15889
|
{
|
|
15608
|
-
className:
|
|
15890
|
+
className: classNames16__default.default({
|
|
15609
15891
|
static: position === "static",
|
|
15610
15892
|
fixed: position === "fixed",
|
|
15611
15893
|
sticky: position === "sticky",
|
|
@@ -15645,7 +15927,7 @@ var Content = ({
|
|
|
15645
15927
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
15646
15928
|
"div",
|
|
15647
15929
|
{
|
|
15648
|
-
className:
|
|
15930
|
+
className: classNames16__default.default({
|
|
15649
15931
|
"w-full min-h-screen transition-all duration-200 eui-bg-sm": true,
|
|
15650
15932
|
"md:pl-[300px]": !overlayedSidebar && sidebarVisible && !isMobile,
|
|
15651
15933
|
// Shift when sidebar is open (desktop)
|
|
@@ -15661,7 +15943,7 @@ var Footer = ({ children, styles }) => {
|
|
|
15661
15943
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
15662
15944
|
"div",
|
|
15663
15945
|
{
|
|
15664
|
-
className:
|
|
15946
|
+
className: classNames16__default.default({
|
|
15665
15947
|
"bottom-0 w-full h-fit": true,
|
|
15666
15948
|
"border-t border-eui-dark-500/40 dark:border-eui-secondary-800 eui-bg-md": !styles,
|
|
15667
15949
|
[`${styles}`]: styles
|
|
@@ -15749,7 +16031,7 @@ function MarkdownEditor({
|
|
|
15749
16031
|
const [field, meta, helpers] = formik.useField(props);
|
|
15750
16032
|
const { theme } = useTheme_default();
|
|
15751
16033
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative", children: [
|
|
15752
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
16034
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: classNames16__default.default(theme === "dark" ? "dark" : "", styles), children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
15753
16035
|
editor.MDXEditor,
|
|
15754
16036
|
{
|
|
15755
16037
|
markdown: field.value,
|
|
@@ -15844,7 +16126,7 @@ function MarkdownTOC({ title = "Table of Contents" }) {
|
|
|
15844
16126
|
/* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
15845
16127
|
"h2",
|
|
15846
16128
|
{
|
|
15847
|
-
className: "\n text-sm\n font-semibold\n uppercase\n tracking-wide\n text-gray-900\n dark:text-gray-100\n ",
|
|
16129
|
+
className: "\r\n text-sm\r\n font-semibold\r\n uppercase\r\n tracking-wide\r\n text-gray-900\r\n dark:text-gray-100\r\n ",
|
|
15848
16130
|
children: title
|
|
15849
16131
|
}
|
|
15850
16132
|
) }),
|
|
@@ -15852,7 +16134,7 @@ function MarkdownTOC({ title = "Table of Contents" }) {
|
|
|
15852
16134
|
"button",
|
|
15853
16135
|
{
|
|
15854
16136
|
onClick: () => scrollToHeading(heading.id),
|
|
15855
|
-
className:
|
|
16137
|
+
className: classNames16__default.default(
|
|
15856
16138
|
"block w-full text-left text-sm transition-all ease-in-out duration-150",
|
|
15857
16139
|
"hover:text-primary",
|
|
15858
16140
|
activeHeading === heading.id ? "text-primary font-semibold underline" : "text-gray-500 dark:text-gray-400"
|
|
@@ -16008,7 +16290,7 @@ function BreadcrumbItem({
|
|
|
16008
16290
|
{
|
|
16009
16291
|
href,
|
|
16010
16292
|
onClick,
|
|
16011
|
-
className:
|
|
16293
|
+
className: classNames16__default.default({
|
|
16012
16294
|
"text-lg font-semibold": true,
|
|
16013
16295
|
"text-gray-400 hover:text-gray-600 cursor-pointer": !active,
|
|
16014
16296
|
"text-eui-light-800": active,
|
|
@@ -16085,7 +16367,7 @@ var Breadcrumb = ({
|
|
|
16085
16367
|
index < resolvedData.length - 1 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
16086
16368
|
"span",
|
|
16087
16369
|
{
|
|
16088
|
-
className:
|
|
16370
|
+
className: classNames16__default.default({
|
|
16089
16371
|
"text-lg font-semibold text-gray-500": true,
|
|
16090
16372
|
[`px-${gap}`]: gap
|
|
16091
16373
|
}),
|
|
@@ -16099,7 +16381,7 @@ var Breadcrumb = ({
|
|
|
16099
16381
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
16100
16382
|
"div",
|
|
16101
16383
|
{
|
|
16102
|
-
className:
|
|
16384
|
+
className: classNames16__default.default({
|
|
16103
16385
|
"inline-flex": true,
|
|
16104
16386
|
[`${styles}`]: styles
|
|
16105
16387
|
}),
|
|
@@ -16129,7 +16411,7 @@ var Drawer = ({
|
|
|
16129
16411
|
{
|
|
16130
16412
|
show: visibility,
|
|
16131
16413
|
enter: "transform transition duration-200 ease-out",
|
|
16132
|
-
enterFrom:
|
|
16414
|
+
enterFrom: classNames16__default.default({
|
|
16133
16415
|
"-translate-x-full": side === "left",
|
|
16134
16416
|
"translate-x-full": side === "right",
|
|
16135
16417
|
"-translate-y-full": side === "top",
|
|
@@ -16138,7 +16420,7 @@ var Drawer = ({
|
|
|
16138
16420
|
enterTo: "translate-x-0 translate-y-0",
|
|
16139
16421
|
leave: "transform transition duration-200 ease-in",
|
|
16140
16422
|
leaveFrom: "translate-x-0 translate-y-0",
|
|
16141
|
-
leaveTo:
|
|
16423
|
+
leaveTo: classNames16__default.default({
|
|
16142
16424
|
"-translate-x-full": side === "left",
|
|
16143
16425
|
"translate-x-full": side === "right",
|
|
16144
16426
|
"-translate-y-full": side === "top",
|
|
@@ -16147,7 +16429,7 @@ var Drawer = ({
|
|
|
16147
16429
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
16148
16430
|
"div",
|
|
16149
16431
|
{
|
|
16150
|
-
className:
|
|
16432
|
+
className: classNames16__default.default(
|
|
16151
16433
|
"fixed shadow-lg z-50",
|
|
16152
16434
|
{
|
|
16153
16435
|
"h-full w-[300px]": isHorizontal,
|
|
@@ -16179,7 +16461,7 @@ function DrawerToggler({
|
|
|
16179
16461
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
16180
16462
|
"div",
|
|
16181
16463
|
{
|
|
16182
|
-
className:
|
|
16464
|
+
className: classNames16__default.default({
|
|
16183
16465
|
"text-xl p-3 cursor-pointer": true,
|
|
16184
16466
|
"transition-all ease-in-out": true,
|
|
16185
16467
|
"text-eui-dark-500 dark:text-eui-secondary-600": !styles,
|
|
@@ -16227,7 +16509,7 @@ function FooterNav({ data = [], styles }) {
|
|
|
16227
16509
|
childrenContent = /* @__PURE__ */ jsxRuntime.jsx(
|
|
16228
16510
|
"div",
|
|
16229
16511
|
{
|
|
16230
|
-
className:
|
|
16512
|
+
className: classNames16__default.default({
|
|
16231
16513
|
"grid w-full": true,
|
|
16232
16514
|
"grid-cols-1": isMobile,
|
|
16233
16515
|
"grid-cols-3": !isMobile,
|
|
@@ -16240,7 +16522,7 @@ function FooterNav({ data = [], styles }) {
|
|
|
16240
16522
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
16241
16523
|
"div",
|
|
16242
16524
|
{
|
|
16243
|
-
className:
|
|
16525
|
+
className: classNames16__default.default({
|
|
16244
16526
|
[`${styles}`]: styles
|
|
16245
16527
|
}),
|
|
16246
16528
|
children: childrenContent
|
|
@@ -16281,7 +16563,7 @@ var FooterNavGroup = ({
|
|
|
16281
16563
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
16282
16564
|
"div",
|
|
16283
16565
|
{
|
|
16284
|
-
className:
|
|
16566
|
+
className: classNames16__default.default({
|
|
16285
16567
|
"": true,
|
|
16286
16568
|
"py-2 font-semibold eui-text-lg": !styles,
|
|
16287
16569
|
[`${styles}`]: styles
|
|
@@ -16326,7 +16608,7 @@ var FooterNavItem = ({
|
|
|
16326
16608
|
"div",
|
|
16327
16609
|
{
|
|
16328
16610
|
onClick: handleNavigation,
|
|
16329
|
-
className:
|
|
16611
|
+
className: classNames16__default.default({
|
|
16330
16612
|
"flex flex-row items-center gap-3 cursor-pointer p-1 w-full": true,
|
|
16331
16613
|
"transition-all duration-200 ease-in-out": true,
|
|
16332
16614
|
"text-sm eui-text-sm": !styles,
|
|
@@ -16355,7 +16637,7 @@ var FooterNavItemTitle = ({
|
|
|
16355
16637
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
16356
16638
|
"div",
|
|
16357
16639
|
{
|
|
16358
|
-
className:
|
|
16640
|
+
className: classNames16__default.default({
|
|
16359
16641
|
"": true,
|
|
16360
16642
|
"py-2 font-thin eui-text-md": !styles,
|
|
16361
16643
|
[`${styles}`]: styles
|
|
@@ -16408,7 +16690,7 @@ function HeaderNav({ data = [], styles }) {
|
|
|
16408
16690
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
16409
16691
|
"div",
|
|
16410
16692
|
{
|
|
16411
|
-
className:
|
|
16693
|
+
className: classNames16__default.default({
|
|
16412
16694
|
[`${styles}`]: styles
|
|
16413
16695
|
}),
|
|
16414
16696
|
children: childrenContent
|
|
@@ -16470,7 +16752,7 @@ var HeaderNavGroup = ({
|
|
|
16470
16752
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
16471
16753
|
"div",
|
|
16472
16754
|
{
|
|
16473
|
-
className:
|
|
16755
|
+
className: classNames16__default.default({
|
|
16474
16756
|
"flex flex-row gap-2 items-center justify-between cursor-pointer p-3 w-full": true,
|
|
16475
16757
|
"transition-all duration-300 ease-in-out": true,
|
|
16476
16758
|
"eui-text-md bg-gradient-to-t from-eui-dark-500/10 dark:from-green-700/10": !styles,
|
|
@@ -16498,7 +16780,7 @@ var HeaderNavGroup = ({
|
|
|
16498
16780
|
children && /* @__PURE__ */ jsxRuntime.jsx(
|
|
16499
16781
|
bs.BsChevronDown,
|
|
16500
16782
|
{
|
|
16501
|
-
className:
|
|
16783
|
+
className: classNames16__default.default({
|
|
16502
16784
|
"text-md": true,
|
|
16503
16785
|
"transition-all ease-in-out duration-300": true,
|
|
16504
16786
|
"rotate-180": !collapsed
|
|
@@ -16511,7 +16793,7 @@ var HeaderNavGroup = ({
|
|
|
16511
16793
|
!collapsed && children && /* @__PURE__ */ jsxRuntime.jsx(
|
|
16512
16794
|
"div",
|
|
16513
16795
|
{
|
|
16514
|
-
className:
|
|
16796
|
+
className: classNames16__default.default({
|
|
16515
16797
|
"absolute min-w-80 left-0 top-full mt-1 border border-eui-dark-300/10 dark:border-eui-dark-300/50 shadow-lg eui-shadow-lg z-50 w-full eui-bg-md": true,
|
|
16516
16798
|
"transition-all duration-300 ease-in-out": true
|
|
16517
16799
|
}),
|
|
@@ -16541,7 +16823,7 @@ var HeaderNavItem = ({
|
|
|
16541
16823
|
"div",
|
|
16542
16824
|
{
|
|
16543
16825
|
onClick: handleNavigation,
|
|
16544
|
-
className:
|
|
16826
|
+
className: classNames16__default.default({
|
|
16545
16827
|
"flex flex-row items-center gap-3 cursor-pointer p-3 w-full": true,
|
|
16546
16828
|
"transition-all duration-200 ease-in-out": true,
|
|
16547
16829
|
"eui-text-md border-b border-eui-dark-500/20 dark:border-eui-secondary-900/20 bg-gradient-to-r from-eui-dark-500/10 dark:from-eui-secondary-900/10": !styles,
|
|
@@ -16570,7 +16852,7 @@ var HeaderNavItemTitle = ({
|
|
|
16570
16852
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
16571
16853
|
"div",
|
|
16572
16854
|
{
|
|
16573
|
-
className:
|
|
16855
|
+
className: classNames16__default.default({
|
|
16574
16856
|
"p-3 font-thin": true,
|
|
16575
16857
|
"eui-text-md": !styles,
|
|
16576
16858
|
[`${styles}`]: styles
|
|
@@ -16610,7 +16892,7 @@ var Link = ({
|
|
|
16610
16892
|
href: href || "#",
|
|
16611
16893
|
target: targets[target],
|
|
16612
16894
|
onClick: handleClick,
|
|
16613
|
-
className:
|
|
16895
|
+
className: classNames16__default.default({
|
|
16614
16896
|
[`${textVariants[variant]}`]: variant,
|
|
16615
16897
|
[`${decorations[decoration]}`]: decoration,
|
|
16616
16898
|
"font-bold": bold,
|
|
@@ -17075,7 +17357,7 @@ function Modal({
|
|
|
17075
17357
|
"div",
|
|
17076
17358
|
{
|
|
17077
17359
|
ref: modalRef,
|
|
17078
|
-
className:
|
|
17360
|
+
className: classNames16__default.default({
|
|
17079
17361
|
"eui-bg-md eui-shadow-lg border border-gray-700/80 w-fit h-fit": true,
|
|
17080
17362
|
[`${shapes[resolvedShape]}`]: true,
|
|
17081
17363
|
[`${styles}`]: styles
|
|
@@ -17086,7 +17368,7 @@ function Modal({
|
|
|
17086
17368
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
17087
17369
|
"div",
|
|
17088
17370
|
{
|
|
17089
|
-
className:
|
|
17371
|
+
className: classNames16__default.default({
|
|
17090
17372
|
"w-[60px] h-[60px] flex items-center justify-center transition-standard-fast": true,
|
|
17091
17373
|
"hover:cursor-pointer hover:bg-eui-dark-500": true
|
|
17092
17374
|
}),
|
|
@@ -17173,7 +17455,7 @@ var GlowWrapper = ({
|
|
|
17173
17455
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
17174
17456
|
"span",
|
|
17175
17457
|
{
|
|
17176
|
-
className: "\n pointer-events-none absolute inset-0 opacity-0 \n group-hover:opacity-100 transition-opacity duration-300\n ",
|
|
17458
|
+
className: "\r\n pointer-events-none absolute inset-0 opacity-0 \r\n group-hover:opacity-100 transition-opacity duration-300\r\n ",
|
|
17177
17459
|
style: { background: "var(--glow-bg)" }
|
|
17178
17460
|
}
|
|
17179
17461
|
),
|
|
@@ -17192,7 +17474,7 @@ function ShowMore({ text, limit }) {
|
|
|
17192
17474
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
17193
17475
|
"div",
|
|
17194
17476
|
{
|
|
17195
|
-
className:
|
|
17477
|
+
className: classNames16__default.default({
|
|
17196
17478
|
"text-blue-300 px-1 pb-1 mt-1": true,
|
|
17197
17479
|
"bg-slate-900/70": !showMore,
|
|
17198
17480
|
"bg-gradient-to-t from-slate-900/50 to-transparent": showMore
|
|
@@ -17204,6 +17486,436 @@ function ShowMore({ text, limit }) {
|
|
|
17204
17486
|
] });
|
|
17205
17487
|
}
|
|
17206
17488
|
var ShowMore_default = ShowMore;
|
|
17489
|
+
function CommentComposer({
|
|
17490
|
+
placeholder = "Add a comment...",
|
|
17491
|
+
submitLabel = "Comment",
|
|
17492
|
+
onSubmit
|
|
17493
|
+
}) {
|
|
17494
|
+
const [value, setValue] = React4.useState("");
|
|
17495
|
+
const [focused, setFocused] = React4.useState(false);
|
|
17496
|
+
async function handleSubmit() {
|
|
17497
|
+
if (!value.trim()) return;
|
|
17498
|
+
await onSubmit?.(value);
|
|
17499
|
+
setValue("");
|
|
17500
|
+
setFocused(false);
|
|
17501
|
+
}
|
|
17502
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-4", children: [
|
|
17503
|
+
/* @__PURE__ */ jsxRuntime.jsx(Avatar, { size: "md" }),
|
|
17504
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-1 flex flex-col gap-3", children: [
|
|
17505
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
17506
|
+
"textarea",
|
|
17507
|
+
{
|
|
17508
|
+
value,
|
|
17509
|
+
placeholder,
|
|
17510
|
+
onFocus: () => setFocused(true),
|
|
17511
|
+
onChange: (e) => setValue(e.target.value),
|
|
17512
|
+
className: "w-full min-h-[48px] bg-transparent border-b border-gray-300 dark:border-neutral-700 outline-none resize-none pb-2 text-sm"
|
|
17513
|
+
}
|
|
17514
|
+
),
|
|
17515
|
+
(focused || value.length > 0) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-end gap-2", children: [
|
|
17516
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
17517
|
+
Button_default,
|
|
17518
|
+
{
|
|
17519
|
+
variant: "secondary",
|
|
17520
|
+
appearance: "ghost",
|
|
17521
|
+
text: "Cancel",
|
|
17522
|
+
onClick: () => {
|
|
17523
|
+
setValue("");
|
|
17524
|
+
setFocused(false);
|
|
17525
|
+
}
|
|
17526
|
+
}
|
|
17527
|
+
),
|
|
17528
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
17529
|
+
Button_default,
|
|
17530
|
+
{
|
|
17531
|
+
variant: "primary",
|
|
17532
|
+
text: submitLabel,
|
|
17533
|
+
onClick: handleSubmit
|
|
17534
|
+
}
|
|
17535
|
+
)
|
|
17536
|
+
] })
|
|
17537
|
+
] })
|
|
17538
|
+
] });
|
|
17539
|
+
}
|
|
17540
|
+
var CommentComposer_default = CommentComposer;
|
|
17541
|
+
|
|
17542
|
+
// src/compositions/comment-thread/utils/formatCommentDate.ts
|
|
17543
|
+
function formatCommentDate(date) {
|
|
17544
|
+
const now = /* @__PURE__ */ new Date();
|
|
17545
|
+
const target = new Date(date);
|
|
17546
|
+
const seconds = Math.floor((now.getTime() - target.getTime()) / 1e3);
|
|
17547
|
+
const intervals = [
|
|
17548
|
+
{ label: "year", seconds: 31536e3 },
|
|
17549
|
+
{ label: "month", seconds: 2592e3 },
|
|
17550
|
+
{ label: "day", seconds: 86400 },
|
|
17551
|
+
{ label: "hour", seconds: 3600 },
|
|
17552
|
+
{ label: "minute", seconds: 60 }
|
|
17553
|
+
];
|
|
17554
|
+
for (const interval of intervals) {
|
|
17555
|
+
const count = Math.floor(seconds / interval.seconds);
|
|
17556
|
+
if (count >= 1) {
|
|
17557
|
+
return `${count} ${interval.label}${count > 1 ? "s" : ""} ago`;
|
|
17558
|
+
}
|
|
17559
|
+
}
|
|
17560
|
+
return "Just now";
|
|
17561
|
+
}
|
|
17562
|
+
function CommentHeader({
|
|
17563
|
+
avatar,
|
|
17564
|
+
username,
|
|
17565
|
+
createdAt,
|
|
17566
|
+
edited
|
|
17567
|
+
}) {
|
|
17568
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-3 min-w-0", children: [
|
|
17569
|
+
/* @__PURE__ */ jsxRuntime.jsx(Avatar, { src: avatar, size: "sm" }),
|
|
17570
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2 text-sm flex-wrap", children: [
|
|
17571
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: "font-semibold text-gray-900 dark:text-gray-100", children: [
|
|
17572
|
+
"@",
|
|
17573
|
+
username
|
|
17574
|
+
] }),
|
|
17575
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-gray-500 dark:text-gray-400", children: formatCommentDate(createdAt) }),
|
|
17576
|
+
edited && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs text-gray-400", children: "edited" })
|
|
17577
|
+
] })
|
|
17578
|
+
] });
|
|
17579
|
+
}
|
|
17580
|
+
var CommentHeader_default = CommentHeader;
|
|
17581
|
+
function CommentContent({ content }) {
|
|
17582
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm leading-relaxed whitespace-pre-wrap text-gray-700 dark:text-gray-300", children: content });
|
|
17583
|
+
}
|
|
17584
|
+
var CommentContent_default = CommentContent;
|
|
17585
|
+
function CommentActions({
|
|
17586
|
+
likes = 0,
|
|
17587
|
+
dislikes = 0,
|
|
17588
|
+
onLike,
|
|
17589
|
+
onDislike,
|
|
17590
|
+
onReply
|
|
17591
|
+
}) {
|
|
17592
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-5 text-sm text-gray-500 dark:text-gray-400", children: [
|
|
17593
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
17594
|
+
"button",
|
|
17595
|
+
{
|
|
17596
|
+
onClick: onLike,
|
|
17597
|
+
className: "inline-flex items-center gap-1 hover:text-gray-900 dark:hover:text-gray-100 transition-colors",
|
|
17598
|
+
children: [
|
|
17599
|
+
/* @__PURE__ */ jsxRuntime.jsx(bi.BiLike, { size: 18 }),
|
|
17600
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: likes })
|
|
17601
|
+
]
|
|
17602
|
+
}
|
|
17603
|
+
),
|
|
17604
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
17605
|
+
"button",
|
|
17606
|
+
{
|
|
17607
|
+
onClick: onDislike,
|
|
17608
|
+
className: "inline-flex items-center gap-1 hover:text-gray-900 dark:hover:text-gray-100 transition-colors",
|
|
17609
|
+
children: [
|
|
17610
|
+
/* @__PURE__ */ jsxRuntime.jsx(bi.BiDislike, { size: 18 }),
|
|
17611
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: dislikes })
|
|
17612
|
+
]
|
|
17613
|
+
}
|
|
17614
|
+
),
|
|
17615
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
17616
|
+
"button",
|
|
17617
|
+
{
|
|
17618
|
+
onClick: onReply,
|
|
17619
|
+
className: "font-medium hover:text-gray-900 dark:hover:text-gray-100 transition-colors",
|
|
17620
|
+
children: "Reply"
|
|
17621
|
+
}
|
|
17622
|
+
)
|
|
17623
|
+
] });
|
|
17624
|
+
}
|
|
17625
|
+
var CommentActions_default = CommentActions;
|
|
17626
|
+
function CommentMenu({
|
|
17627
|
+
canEdit,
|
|
17628
|
+
canDelete,
|
|
17629
|
+
canReport,
|
|
17630
|
+
onEdit,
|
|
17631
|
+
onDelete,
|
|
17632
|
+
onReport
|
|
17633
|
+
}) {
|
|
17634
|
+
const [open, setOpen] = React4.useState(false);
|
|
17635
|
+
const ref = React4.useRef(null);
|
|
17636
|
+
React4.useEffect(() => {
|
|
17637
|
+
function handleOutsideClick(event) {
|
|
17638
|
+
if (ref.current && !ref.current.contains(event.target)) {
|
|
17639
|
+
setOpen(false);
|
|
17640
|
+
}
|
|
17641
|
+
}
|
|
17642
|
+
document.addEventListener("mousedown", handleOutsideClick);
|
|
17643
|
+
return () => document.removeEventListener("mousedown", handleOutsideClick);
|
|
17644
|
+
}, []);
|
|
17645
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ref, className: "relative", children: [
|
|
17646
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
17647
|
+
"button",
|
|
17648
|
+
{
|
|
17649
|
+
onClick: () => setOpen((prev) => !prev),
|
|
17650
|
+
className: "text-gray-500 hover:text-gray-900 dark:hover:text-gray-100 transition-colors",
|
|
17651
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(bi.BiDotsVerticalRounded, { size: 18 })
|
|
17652
|
+
}
|
|
17653
|
+
),
|
|
17654
|
+
open && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
17655
|
+
"div",
|
|
17656
|
+
{
|
|
17657
|
+
className: "\r\n absolute\r\n right-0\r\n top-full\r\n mt-2\r\n min-w-[160px]\r\n overflow-hidden\r\n rounded-xl\r\n border\r\n border-gray-200\r\n dark:border-neutral-800\r\n bg-white\r\n dark:bg-neutral-900\r\n shadow-xl\r\n z-50\r\n ",
|
|
17658
|
+
children: [
|
|
17659
|
+
canEdit && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
17660
|
+
"button",
|
|
17661
|
+
{
|
|
17662
|
+
onClick: () => {
|
|
17663
|
+
setOpen(false);
|
|
17664
|
+
onEdit?.();
|
|
17665
|
+
},
|
|
17666
|
+
className: "w-full flex items-center gap-2 px-4 py-3 text-sm hover:bg-gray-100 dark:hover:bg-neutral-800",
|
|
17667
|
+
children: [
|
|
17668
|
+
/* @__PURE__ */ jsxRuntime.jsx(bi.BiEdit, {}),
|
|
17669
|
+
"Edit"
|
|
17670
|
+
]
|
|
17671
|
+
}
|
|
17672
|
+
),
|
|
17673
|
+
canDelete && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
17674
|
+
"button",
|
|
17675
|
+
{
|
|
17676
|
+
onClick: () => {
|
|
17677
|
+
setOpen(false);
|
|
17678
|
+
onDelete?.();
|
|
17679
|
+
},
|
|
17680
|
+
className: "w-full flex items-center gap-2 px-4 py-3 text-sm hover:bg-gray-100 dark:hover:bg-neutral-800",
|
|
17681
|
+
children: [
|
|
17682
|
+
/* @__PURE__ */ jsxRuntime.jsx(bi.BiTrash, {}),
|
|
17683
|
+
"Delete"
|
|
17684
|
+
]
|
|
17685
|
+
}
|
|
17686
|
+
),
|
|
17687
|
+
canReport && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
17688
|
+
"button",
|
|
17689
|
+
{
|
|
17690
|
+
onClick: () => {
|
|
17691
|
+
setOpen(false);
|
|
17692
|
+
onReport?.();
|
|
17693
|
+
},
|
|
17694
|
+
className: "w-full flex items-center gap-2 px-4 py-3 text-sm hover:bg-gray-100 dark:hover:bg-neutral-800",
|
|
17695
|
+
children: [
|
|
17696
|
+
/* @__PURE__ */ jsxRuntime.jsx(bi.BiFlag, {}),
|
|
17697
|
+
"Report"
|
|
17698
|
+
]
|
|
17699
|
+
}
|
|
17700
|
+
)
|
|
17701
|
+
]
|
|
17702
|
+
}
|
|
17703
|
+
)
|
|
17704
|
+
] });
|
|
17705
|
+
}
|
|
17706
|
+
var CommentMenu_default = CommentMenu;
|
|
17707
|
+
function CommentRepliesToggle({
|
|
17708
|
+
repliesCount,
|
|
17709
|
+
collapsed,
|
|
17710
|
+
onToggle
|
|
17711
|
+
}) {
|
|
17712
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
17713
|
+
"button",
|
|
17714
|
+
{
|
|
17715
|
+
onClick: onToggle,
|
|
17716
|
+
className: "inline-flex items-center gap-1 text-sm font-medium text-blue-500 hover:text-blue-400 transition-colors w-fit",
|
|
17717
|
+
children: [
|
|
17718
|
+
collapsed ? /* @__PURE__ */ jsxRuntime.jsx(bi.BiChevronDown, { size: 18 }) : /* @__PURE__ */ jsxRuntime.jsx(bi.BiChevronUp, { size: 18 }),
|
|
17719
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: collapsed ? `View ${repliesCount} repl${repliesCount > 1 ? "ies" : "y"}` : "Hide replies" })
|
|
17720
|
+
]
|
|
17721
|
+
}
|
|
17722
|
+
);
|
|
17723
|
+
}
|
|
17724
|
+
var CommentRepliesToggle_default = CommentRepliesToggle;
|
|
17725
|
+
function ReplyComposer({ username, onSubmit }) {
|
|
17726
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pt-2", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
17727
|
+
CommentComposer_default,
|
|
17728
|
+
{
|
|
17729
|
+
placeholder: `Reply to @${username}`,
|
|
17730
|
+
submitLabel: "Reply",
|
|
17731
|
+
onSubmit
|
|
17732
|
+
}
|
|
17733
|
+
) });
|
|
17734
|
+
}
|
|
17735
|
+
var ReplyComposer_default = ReplyComposer;
|
|
17736
|
+
|
|
17737
|
+
// src/compositions/comment-thread/constants/comment.constants.ts
|
|
17738
|
+
var MAX_COMMENT_DEPTH = 5;
|
|
17739
|
+
var COMMENT_INDENTATION = 0;
|
|
17740
|
+
function CommentItem({
|
|
17741
|
+
comment,
|
|
17742
|
+
depth = 0,
|
|
17743
|
+
onLike,
|
|
17744
|
+
onDislike,
|
|
17745
|
+
onReply,
|
|
17746
|
+
onEdit,
|
|
17747
|
+
onDelete,
|
|
17748
|
+
onReport
|
|
17749
|
+
}) {
|
|
17750
|
+
const [collapsed, setCollapsed] = React4.useState(false);
|
|
17751
|
+
const [isReplying, setIsReplying] = React4.useState(false);
|
|
17752
|
+
const resolvedDepth = Math.min(depth, MAX_COMMENT_DEPTH);
|
|
17753
|
+
async function handleReply(content) {
|
|
17754
|
+
console.log(content);
|
|
17755
|
+
setIsReplying(false);
|
|
17756
|
+
}
|
|
17757
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
17758
|
+
"div",
|
|
17759
|
+
{
|
|
17760
|
+
className: "flex flex-col gap-4",
|
|
17761
|
+
style: {
|
|
17762
|
+
paddingLeft: `${resolvedDepth * COMMENT_INDENTATION}px`
|
|
17763
|
+
},
|
|
17764
|
+
children: [
|
|
17765
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex gap-3", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-1 flex flex-col gap-3 min-w-0", children: [
|
|
17766
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-start justify-between gap-3", children: [
|
|
17767
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
17768
|
+
CommentHeader_default,
|
|
17769
|
+
{
|
|
17770
|
+
avatar: comment.author.avatar,
|
|
17771
|
+
username: comment.author.username,
|
|
17772
|
+
createdAt: comment.createdAt,
|
|
17773
|
+
edited: comment.edited
|
|
17774
|
+
}
|
|
17775
|
+
),
|
|
17776
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
17777
|
+
CommentMenu_default,
|
|
17778
|
+
{
|
|
17779
|
+
canEdit: comment.permissions?.canEdit,
|
|
17780
|
+
canDelete: comment.permissions?.canDelete,
|
|
17781
|
+
canReport: comment.permissions?.canReport,
|
|
17782
|
+
onEdit: () => onEdit?.(comment),
|
|
17783
|
+
onDelete: () => onDelete?.(comment),
|
|
17784
|
+
onReport: () => onReport?.(comment)
|
|
17785
|
+
}
|
|
17786
|
+
)
|
|
17787
|
+
] }),
|
|
17788
|
+
/* @__PURE__ */ jsxRuntime.jsx(CommentContent_default, { content: comment.content }),
|
|
17789
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
17790
|
+
CommentActions_default,
|
|
17791
|
+
{
|
|
17792
|
+
likes: comment.likes,
|
|
17793
|
+
dislikes: comment.dislikes,
|
|
17794
|
+
onLike: () => onLike?.(comment),
|
|
17795
|
+
onDislike: () => onDislike?.(comment),
|
|
17796
|
+
onReply: () => {
|
|
17797
|
+
setIsReplying((prev) => !prev);
|
|
17798
|
+
onReply?.(comment);
|
|
17799
|
+
}
|
|
17800
|
+
}
|
|
17801
|
+
),
|
|
17802
|
+
isReplying && /* @__PURE__ */ jsxRuntime.jsx(
|
|
17803
|
+
ReplyComposer_default,
|
|
17804
|
+
{
|
|
17805
|
+
username: comment.author.username,
|
|
17806
|
+
onSubmit: handleReply
|
|
17807
|
+
}
|
|
17808
|
+
),
|
|
17809
|
+
!!comment.replies?.length && /* @__PURE__ */ jsxRuntime.jsx(
|
|
17810
|
+
CommentRepliesToggle_default,
|
|
17811
|
+
{
|
|
17812
|
+
collapsed,
|
|
17813
|
+
repliesCount: comment.replies.length,
|
|
17814
|
+
onToggle: () => setCollapsed((prev) => !prev)
|
|
17815
|
+
}
|
|
17816
|
+
)
|
|
17817
|
+
] }) }),
|
|
17818
|
+
!collapsed && !!comment.replies?.length && /* @__PURE__ */ jsxRuntime.jsx(
|
|
17819
|
+
"div",
|
|
17820
|
+
{
|
|
17821
|
+
className: cn(
|
|
17822
|
+
"border-l border-gray-200 dark:border-neutral-800",
|
|
17823
|
+
"pl-4 ml-5"
|
|
17824
|
+
),
|
|
17825
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
17826
|
+
CommentList_default,
|
|
17827
|
+
{
|
|
17828
|
+
comments: comment.replies,
|
|
17829
|
+
depth: depth + 1,
|
|
17830
|
+
onLike,
|
|
17831
|
+
onDislike,
|
|
17832
|
+
onReply,
|
|
17833
|
+
onEdit,
|
|
17834
|
+
onDelete,
|
|
17835
|
+
onReport
|
|
17836
|
+
}
|
|
17837
|
+
)
|
|
17838
|
+
}
|
|
17839
|
+
)
|
|
17840
|
+
]
|
|
17841
|
+
}
|
|
17842
|
+
);
|
|
17843
|
+
}
|
|
17844
|
+
var CommentItem_default = CommentItem;
|
|
17845
|
+
function CommentList({
|
|
17846
|
+
comments,
|
|
17847
|
+
depth = 0,
|
|
17848
|
+
onLike,
|
|
17849
|
+
onDislike,
|
|
17850
|
+
onReply,
|
|
17851
|
+
onEdit,
|
|
17852
|
+
onDelete,
|
|
17853
|
+
onReport
|
|
17854
|
+
}) {
|
|
17855
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col gap-8", children: comments.map((comment) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
17856
|
+
CommentItem_default,
|
|
17857
|
+
{
|
|
17858
|
+
comment,
|
|
17859
|
+
depth,
|
|
17860
|
+
onLike,
|
|
17861
|
+
onDislike,
|
|
17862
|
+
onReply,
|
|
17863
|
+
onEdit,
|
|
17864
|
+
onDelete,
|
|
17865
|
+
onReport
|
|
17866
|
+
},
|
|
17867
|
+
comment.id
|
|
17868
|
+
)) });
|
|
17869
|
+
}
|
|
17870
|
+
var CommentList_default = CommentList;
|
|
17871
|
+
var CommentThreadContext = React4.createContext(null);
|
|
17872
|
+
function useCommentThread(initialComments) {
|
|
17873
|
+
const [comments, setComments] = React4.useState(initialComments);
|
|
17874
|
+
return {
|
|
17875
|
+
comments,
|
|
17876
|
+
setComments
|
|
17877
|
+
};
|
|
17878
|
+
}
|
|
17879
|
+
function CommentThread({
|
|
17880
|
+
comments: initialComments = [],
|
|
17881
|
+
onCommentCreate,
|
|
17882
|
+
onLike,
|
|
17883
|
+
onDislike,
|
|
17884
|
+
onReply,
|
|
17885
|
+
onEdit,
|
|
17886
|
+
onDelete,
|
|
17887
|
+
onReport
|
|
17888
|
+
}) {
|
|
17889
|
+
const { comments, setComments } = useCommentThread(initialComments);
|
|
17890
|
+
async function handleCreateComment(content) {
|
|
17891
|
+
await onCommentCreate?.(content);
|
|
17892
|
+
}
|
|
17893
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
17894
|
+
CommentThreadContext.Provider,
|
|
17895
|
+
{
|
|
17896
|
+
value: {
|
|
17897
|
+
comments,
|
|
17898
|
+
setComments
|
|
17899
|
+
},
|
|
17900
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-8 w-full", children: [
|
|
17901
|
+
/* @__PURE__ */ jsxRuntime.jsx(CommentComposer_default, { onSubmit: handleCreateComment }),
|
|
17902
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
17903
|
+
CommentList_default,
|
|
17904
|
+
{
|
|
17905
|
+
comments,
|
|
17906
|
+
onLike,
|
|
17907
|
+
onDislike,
|
|
17908
|
+
onReply,
|
|
17909
|
+
onEdit,
|
|
17910
|
+
onDelete,
|
|
17911
|
+
onReport
|
|
17912
|
+
}
|
|
17913
|
+
)
|
|
17914
|
+
] })
|
|
17915
|
+
}
|
|
17916
|
+
);
|
|
17917
|
+
}
|
|
17918
|
+
var CommentThread_default = CommentThread;
|
|
17207
17919
|
function DataViewTable({
|
|
17208
17920
|
title,
|
|
17209
17921
|
columns,
|
|
@@ -17347,6 +18059,80 @@ function Slider({ isLoading, isSuccess, coverArt, screenshots }) {
|
|
|
17347
18059
|
] }) });
|
|
17348
18060
|
}
|
|
17349
18061
|
var Slider_default = Slider;
|
|
18062
|
+
function StarRatingDistribution({
|
|
18063
|
+
numericRating = true,
|
|
18064
|
+
progressBarsRating = true,
|
|
18065
|
+
ratingDistribution = [
|
|
18066
|
+
{ star: 5, count: 0 },
|
|
18067
|
+
{ star: 4, count: 0 },
|
|
18068
|
+
{ star: 3, count: 0 },
|
|
18069
|
+
{ star: 2, count: 0 },
|
|
18070
|
+
{ star: 1, count: 0 }
|
|
18071
|
+
],
|
|
18072
|
+
variant = "warning",
|
|
18073
|
+
appearance = "solid",
|
|
18074
|
+
shape = "roundedSquare",
|
|
18075
|
+
size = "sm",
|
|
18076
|
+
animated = true,
|
|
18077
|
+
striped = false,
|
|
18078
|
+
showReviewCount = true,
|
|
18079
|
+
className,
|
|
18080
|
+
...rest
|
|
18081
|
+
}) {
|
|
18082
|
+
const totalReviews = ratingDistribution.reduce(
|
|
18083
|
+
(acc, item) => acc + item.count,
|
|
18084
|
+
0
|
|
18085
|
+
);
|
|
18086
|
+
const averageRating = totalReviews > 0 ? ratingDistribution.reduce(
|
|
18087
|
+
(acc, item) => acc + item.star * item.count,
|
|
18088
|
+
0
|
|
18089
|
+
) / totalReviews : 0;
|
|
18090
|
+
const ratingDistributionWithPercentage = ratingDistribution.map((item) => ({
|
|
18091
|
+
star: item.star,
|
|
18092
|
+
percentage: totalReviews > 0 ? item.count / totalReviews * 100 : 0
|
|
18093
|
+
}));
|
|
18094
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
18095
|
+
"div",
|
|
18096
|
+
{
|
|
18097
|
+
...rest,
|
|
18098
|
+
className: cn(
|
|
18099
|
+
"flex flex-col md:flex-row items-center gap-8",
|
|
18100
|
+
"p-6",
|
|
18101
|
+
"bg-white dark:bg-neutral-900",
|
|
18102
|
+
"border border-gray-200 dark:border-neutral-800",
|
|
18103
|
+
"rounded-2xl shadow-sm",
|
|
18104
|
+
className
|
|
18105
|
+
),
|
|
18106
|
+
children: [
|
|
18107
|
+
numericRating && /* @__PURE__ */ jsxRuntime.jsx(
|
|
18108
|
+
NumericRating_default,
|
|
18109
|
+
{
|
|
18110
|
+
rating: averageRating,
|
|
18111
|
+
totalReviews,
|
|
18112
|
+
size: "md",
|
|
18113
|
+
showStars: true,
|
|
18114
|
+
showReviewCount
|
|
18115
|
+
}
|
|
18116
|
+
),
|
|
18117
|
+
progressBarsRating && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col gap-3 w-full min-w-[260px]", children: ratingDistributionWithPercentage.map((item) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
18118
|
+
ProgressBarRating_default,
|
|
18119
|
+
{
|
|
18120
|
+
star: item.star,
|
|
18121
|
+
percentage: item.percentage,
|
|
18122
|
+
variant,
|
|
18123
|
+
appearance,
|
|
18124
|
+
shape,
|
|
18125
|
+
size,
|
|
18126
|
+
animated,
|
|
18127
|
+
striped
|
|
18128
|
+
},
|
|
18129
|
+
item.star
|
|
18130
|
+
)) })
|
|
18131
|
+
]
|
|
18132
|
+
}
|
|
18133
|
+
);
|
|
18134
|
+
}
|
|
18135
|
+
var StarRatingDistribution_default = StarRatingDistribution;
|
|
17350
18136
|
function WorldMapCountryTable({
|
|
17351
18137
|
title = "Country Breakdown",
|
|
17352
18138
|
data
|
|
@@ -17443,7 +18229,7 @@ function BoxNavItem({ icon, name, to, selected, onClick }) {
|
|
|
17443
18229
|
type: "button",
|
|
17444
18230
|
onClick: handleClick,
|
|
17445
18231
|
"aria-current": selected ? "page" : void 0,
|
|
17446
|
-
className:
|
|
18232
|
+
className: classNames16__default.default(
|
|
17447
18233
|
"w-full min-w-[80px] flex flex-col items-center justify-center py-3 text-center",
|
|
17448
18234
|
"hover:text-secondary-700 hover:bg-gray-300/10 hover:cursor-pointer",
|
|
17449
18235
|
selected ? "text-eui-secondary-700 bg-gray-300/10" : "text-gray-400",
|
|
@@ -17833,7 +18619,7 @@ function GenericLayout({
|
|
|
17833
18619
|
return /* @__PURE__ */ jsxRuntime.jsx(ThemeProvider, { defaultTheme, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
17834
18620
|
"div",
|
|
17835
18621
|
{
|
|
17836
|
-
className:
|
|
18622
|
+
className: classNames16__default.default({
|
|
17837
18623
|
[`${styles}`]: styles
|
|
17838
18624
|
}),
|
|
17839
18625
|
children
|
|
@@ -17882,7 +18668,7 @@ function SidemenuLayout({ data, children }) {
|
|
|
17882
18668
|
return /* @__PURE__ */ jsxRuntime.jsx(DefaultLayout_default, { children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
17883
18669
|
"div",
|
|
17884
18670
|
{
|
|
17885
|
-
className:
|
|
18671
|
+
className: classNames16__default.default({
|
|
17886
18672
|
grid: true,
|
|
17887
18673
|
"grid-cols-7 gap-10": !isMobile,
|
|
17888
18674
|
"grid-cols-1 gap-": isMobile
|
|
@@ -17954,7 +18740,7 @@ exports.BoxNavItem = BoxNavItem_default;
|
|
|
17954
18740
|
exports.Brand = Brand_default;
|
|
17955
18741
|
exports.Breadcrumb = Breadcrumb;
|
|
17956
18742
|
exports.BreadcrumbItem = BreadcrumbItem_default;
|
|
17957
|
-
exports.Button =
|
|
18743
|
+
exports.Button = Button_default;
|
|
17958
18744
|
exports.Caption = Caption;
|
|
17959
18745
|
exports.Card = Card_default;
|
|
17960
18746
|
exports.CardContent = CardContent_default;
|
|
@@ -17967,6 +18753,7 @@ exports.CloudinaryImage = CloudinaryImage_default;
|
|
|
17967
18753
|
exports.CloudinaryProvider = CloudinaryProvider;
|
|
17968
18754
|
exports.CloudinaryVideo = CloudinaryVideo_default;
|
|
17969
18755
|
exports.Code = Code;
|
|
18756
|
+
exports.CommentThread = CommentThread_default;
|
|
17970
18757
|
exports.Content = Content;
|
|
17971
18758
|
exports.ContentArea = ContentArea_default;
|
|
17972
18759
|
exports.DataView = DataView;
|
|
@@ -18032,11 +18819,13 @@ exports.MenuItemTitle = MenuItemTitle;
|
|
|
18032
18819
|
exports.Modal = Modal_default;
|
|
18033
18820
|
exports.MotionSurface = MotionSurface_default;
|
|
18034
18821
|
exports.MultiImageInput = MultiImageInput_default;
|
|
18822
|
+
exports.NumericRating = NumericRating_default;
|
|
18035
18823
|
exports.Overline = Overline;
|
|
18036
18824
|
exports.Paragraph = Paragraph;
|
|
18037
18825
|
exports.PieChart = PieChart_default;
|
|
18038
18826
|
exports.PriceTag = PriceTag;
|
|
18039
18827
|
exports.ProgressBar = ProgressBar;
|
|
18828
|
+
exports.ProgressBarRating = ProgressBarRating_default;
|
|
18040
18829
|
exports.Quote = Quote;
|
|
18041
18830
|
exports.Radio = Radio_default;
|
|
18042
18831
|
exports.RouteTab = RouteTab_default;
|
|
@@ -18090,6 +18879,7 @@ exports.isMatch = isMatch;
|
|
|
18090
18879
|
exports.isRenderFn = isRenderFn;
|
|
18091
18880
|
exports.normalize = normalize;
|
|
18092
18881
|
exports.registerLayout = registerLayout;
|
|
18882
|
+
exports.resolveAppearanceStyles = resolveAppearanceStyles;
|
|
18093
18883
|
exports.resolveWithGlobal = resolveWithGlobal;
|
|
18094
18884
|
exports.sendToast = sendToast;
|
|
18095
18885
|
exports.useClickOutside = useClickOutside;
|