@krosoft/react 0.0.77 → 0.0.79

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. package/dist/{LoadingState-CqRLmkxn.js → LoadingState-DQjGcT2l.js} +5 -5
  2. package/dist/MetricCard-4VI9Ki0g.js +83 -0
  3. package/dist/SearchInput-Cf5NHhnz.js +698 -0
  4. package/dist/TableFilter-DgChe4aX.js +406 -0
  5. package/dist/TableSettings-4YLJSh4G.js +2064 -0
  6. package/dist/{ThemeSelector-sTd9T2OD.js → ThemeSelector-MqD5QvHl.js} +8 -8
  7. package/dist/{Topbar-BqC05zWP.js → Topbar-DifQ00kV.js} +26 -27
  8. package/dist/{badge-kADcbb2Y.js → badge-Bw-aBz_H.js} +1 -1
  9. package/dist/components/core/cards/KpiCard.d.ts +1 -1
  10. package/dist/components/core/cards/KpiCard.d.ts.map +1 -1
  11. package/dist/components/core/cards/MetricCard.d.ts +20 -8
  12. package/dist/components/core/cards/MetricCard.d.ts.map +1 -1
  13. package/dist/components/core/cards/index.js +1 -1
  14. package/dist/components/core/filters/ActiveFilters.d.ts +10 -0
  15. package/dist/components/core/filters/ActiveFilters.d.ts.map +1 -0
  16. package/dist/components/core/filters/AdvancedFilters.d.ts +11 -0
  17. package/dist/components/core/filters/AdvancedFilters.d.ts.map +1 -0
  18. package/dist/components/core/filters/FilterField.d.ts +11 -0
  19. package/dist/components/core/filters/FilterField.d.ts.map +1 -0
  20. package/dist/components/core/filters/SearchableFilterPill.d.ts +15 -0
  21. package/dist/components/core/filters/SearchableFilterPill.d.ts.map +1 -0
  22. package/dist/components/core/filters/TableFilter.d.ts +17 -0
  23. package/dist/components/core/filters/TableFilter.d.ts.map +1 -0
  24. package/dist/components/core/filters/index.d.ts +5 -0
  25. package/dist/components/core/filters/index.d.ts.map +1 -0
  26. package/dist/components/core/filters/index.js +7 -0
  27. package/dist/components/core/index.d.ts +2 -0
  28. package/dist/components/core/index.d.ts.map +1 -1
  29. package/dist/components/core/index.js +34 -26
  30. package/dist/components/core/inputs/DatePicker.d.ts +9 -0
  31. package/dist/components/core/inputs/DatePicker.d.ts.map +1 -0
  32. package/dist/components/core/inputs/MultiSelect.d.ts +17 -0
  33. package/dist/components/core/inputs/MultiSelect.d.ts.map +1 -0
  34. package/dist/components/core/inputs/SearchInput.d.ts.map +1 -1
  35. package/dist/components/core/inputs/SearchableSelect.d.ts +14 -0
  36. package/dist/components/core/inputs/SearchableSelect.d.ts.map +1 -0
  37. package/dist/components/core/inputs/index.d.ts +3 -1
  38. package/dist/components/core/inputs/index.d.ts.map +1 -1
  39. package/dist/components/core/inputs/index.js +6 -3
  40. package/dist/components/core/navbar/index.js +1 -1
  41. package/dist/components/core/states/index.js +1 -1
  42. package/dist/components/core/table/DataTable.d.ts +17 -2
  43. package/dist/components/core/table/DataTable.d.ts.map +1 -1
  44. package/dist/components/core/table/TableBody.d.ts +2 -2
  45. package/dist/components/core/table/TableBody.d.ts.map +1 -1
  46. package/dist/components/core/table/TableHeader.d.ts +1 -1
  47. package/dist/components/core/table/TableHeader.d.ts.map +1 -1
  48. package/dist/components/core/table/index.d.ts +1 -3
  49. package/dist/components/core/table/index.d.ts.map +1 -1
  50. package/dist/components/core/table/index.js +9 -9
  51. package/dist/components/core/theme/ThemeSelector.d.ts +2 -1
  52. package/dist/components/core/theme/ThemeSelector.d.ts.map +1 -1
  53. package/dist/components/core/theme/index.js +1 -1
  54. package/dist/components/index.js +86 -63
  55. package/dist/components/ui/badge.d.ts +1 -1
  56. package/dist/components/ui/badge.d.ts.map +1 -1
  57. package/dist/components/ui/button.d.ts.map +1 -1
  58. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  59. package/dist/components/ui/index.d.ts +4 -1
  60. package/dist/components/ui/index.d.ts.map +1 -1
  61. package/dist/components/ui/index.js +50 -35
  62. package/dist/components/ui/label.d.ts +6 -0
  63. package/dist/components/ui/label.d.ts.map +1 -0
  64. package/dist/components/ui/select.d.ts +1 -1
  65. package/dist/components/ui/select.d.ts.map +1 -1
  66. package/dist/components/ui/sheet.d.ts.map +1 -1
  67. package/dist/components/ui/toast.d.ts +1 -1
  68. package/dist/components/ui/toast.d.ts.map +1 -1
  69. package/dist/{floating-ui.react-dom-BPCyLQfI.js → floating-ui.react-dom-BIcsGc3t.js} +553 -526
  70. package/dist/hooks/index.js +1 -1
  71. package/dist/hooks/ui/useDataTable.d.ts +1 -1
  72. package/dist/hooks/ui/useDataTable.d.ts.map +1 -1
  73. package/dist/hooks/ui/useToast.d.ts +5 -13
  74. package/dist/hooks/ui/useToast.d.ts.map +1 -1
  75. package/dist/popover-UjRQmYGN.js +5889 -0
  76. package/dist/select-CtU681LB.js +2070 -0
  77. package/dist/tailwind/index.d.ts.map +1 -1
  78. package/dist/tooltip-DzQngJZK.js +828 -0
  79. package/dist/types/FilterFieldConfig.d.ts +16 -0
  80. package/dist/types/FilterFieldConfig.d.ts.map +1 -0
  81. package/dist/types/FilterSection.d.ts +6 -0
  82. package/dist/types/FilterSection.d.ts.map +1 -0
  83. package/dist/types/index.d.ts +0 -1
  84. package/dist/types/index.d.ts.map +1 -1
  85. package/dist/{useTheme-D__o7mLN.js → useTheme-DsHPKCDp.js} +24 -18
  86. package/package.json +5 -3
  87. package/dist/Combination-CzdDhqdB.js +0 -564
  88. package/dist/DataTable-CjFA9p4V.js +0 -2216
  89. package/dist/DateRangePicker-rrXXEYz8.js +0 -1240
  90. package/dist/MetricCard-88djqC4o.js +0 -66
  91. package/dist/calendar-BMReToKR.js +0 -3911
  92. package/dist/checkbox-BI6Lm_p-.js +0 -358
  93. package/dist/chevron-down-ki5-dwtL.js +0 -11
  94. package/dist/select-B-hcmC3K.js +0 -1468
  95. package/dist/tooltip-gI1Mp9DG.js +0 -779
  96. package/dist/types/DataTableProps.d.ts +0 -19
  97. package/dist/types/DataTableProps.d.ts.map +0 -1
@@ -1,8 +1,8 @@
1
1
  import { jsxs as a, jsx as e } from "react/jsx-runtime";
2
- import { C as s, d, a as n } from "./card-7XPLAra3.js";
2
+ import { C as d, d as s, a as n } from "./card-7XPLAra3.js";
3
3
  import { L as i } from "./loader-circle-BhJXKs31.js";
4
- const l = () => /* @__PURE__ */ a(s, { className: "animate-pulse", children: [
5
- /* @__PURE__ */ e(d, { children: /* @__PURE__ */ e("div", { className: "h-6 bg-muted rounded w-1/4" }) }),
4
+ const l = () => /* @__PURE__ */ a(d, { className: "animate-pulse", children: [
5
+ /* @__PURE__ */ e(s, { children: /* @__PURE__ */ e("div", { className: "h-6 bg-muted rounded w-1/4" }) }),
6
6
  /* @__PURE__ */ e(n, { children: /* @__PURE__ */ a("div", { className: "space-y-2", children: [
7
7
  /* @__PURE__ */ e("div", { className: "h-4 bg-muted rounded" }),
8
8
  /* @__PURE__ */ e("div", { className: "h-4 bg-muted rounded w-3/4" })
@@ -16,10 +16,10 @@ const l = () => /* @__PURE__ */ a(s, { className: "animate-pulse", children: [
16
16
  }
17
17
  ), h = ({ message: r }) => /* @__PURE__ */ a("div", { className: "p-6 border border-destructive bg-destructive/10 text-destructive rounded-md animate-fade-in", children: [
18
18
  /* @__PURE__ */ e("p", { className: "font-semibold mb-2", children: "Une erreur est survenue." }),
19
- r ? /* @__PURE__ */ e("p", { className: "text-sm opacity-80", children: r }) : null
19
+ r !== void 0 && r !== "" ? /* @__PURE__ */ e("p", { className: "text-sm opacity-80", children: r }) : null
20
20
  ] }), f = ({ message: r }) => /* @__PURE__ */ a("div", { className: "flex flex-col items-center justify-center p-12 text-muted-foreground animate-fade-in", children: [
21
21
  /* @__PURE__ */ e(i, { className: "size-8 animate-spin mb-4 text-primary" }),
22
- r ? /* @__PURE__ */ e("p", { className: "font-semibold text-sm", children: r }) : null
22
+ r !== void 0 && r !== "" ? /* @__PURE__ */ e("p", { className: "font-semibold text-sm", children: r }) : null
23
23
  ] });
24
24
  export {
25
25
  l as C,
@@ -0,0 +1,83 @@
1
+ import { jsxs as s, jsx as e } from "react/jsx-runtime";
2
+ import { formatNumber as h } from "@krosoft/core/helpers";
3
+ import { useTranslation as b } from "react-i18next";
4
+ import { c as d } from "./index-gWiv5-6R.js";
5
+ import "./popover-UjRQmYGN.js";
6
+ import "./floating-ui.react-dom-BIcsGc3t.js";
7
+ import { C as x, d as N, e as g, a as f } from "./card-7XPLAra3.js";
8
+ import "./select-CtU681LB.js";
9
+ const v = ({
10
+ titleKey: r,
11
+ value: t,
12
+ valueClassName: n,
13
+ icon: a,
14
+ iconClassName: c,
15
+ description: l,
16
+ descriptionClassName: i,
17
+ onClick: o
18
+ }) => {
19
+ const { t: m } = b();
20
+ return /* @__PURE__ */ s(x, { className: d(o !== void 0 ? "hover:border-primary cursor-pointer" : ""), onClick: o, children: [
21
+ /* @__PURE__ */ s(N, { className: "flex flex-row items-center justify-between space-y-0 pb-2", children: [
22
+ /* @__PURE__ */ e(g, { className: "text-sm font-medium", children: m(r) }),
23
+ /* @__PURE__ */ e(a, { className: d("size-6 text-muted-foreground", c) })
24
+ ] }),
25
+ /* @__PURE__ */ s(f, { children: [
26
+ /* @__PURE__ */ e("div", { className: d("text-2xl font-bold", n), children: h(t) }),
27
+ /* @__PURE__ */ e("p", { className: d("text-xs text-muted-foreground", i), children: l })
28
+ ] })
29
+ ] });
30
+ }, H = ({ stats: r }) => /* @__PURE__ */ e("div", { className: "grid gap-6 md:grid-cols-2 lg:grid-cols-4", children: r.map((t) => /* @__PURE__ */ e(
31
+ v,
32
+ {
33
+ titleKey: t.titleKey,
34
+ value: t.value,
35
+ valueClassName: t.valueClassName,
36
+ icon: t.icon,
37
+ iconClassName: t.iconClassName,
38
+ description: t.description,
39
+ descriptionClassName: t.descriptionClassName,
40
+ onClick: t.onClick
41
+ },
42
+ t.titleKey
43
+ )) }), C = {
44
+ blue: "bg-gradient-to-br from-blue-500 to-cyan-500 text-white",
45
+ green: "bg-gradient-to-br from-green-500 to-emerald-500 text-white",
46
+ orange: "bg-gradient-to-br from-orange-500 to-yellow-500 text-white",
47
+ red: "bg-gradient-to-br from-red-500 to-pink-500 text-white",
48
+ purple: "bg-gradient-to-br from-purple-500 to-indigo-500 text-white",
49
+ accent: "bg-accent/10 text-accent",
50
+ success: "bg-success/10 text-success",
51
+ info: "bg-info/10 text-info",
52
+ warning: "bg-warning/10 text-warning",
53
+ destructive: "bg-destructive/10 text-destructive"
54
+ }, w = {
55
+ sm: "size-4",
56
+ md: "size-5",
57
+ lg: "size-6"
58
+ }, y = (r) => r === "up" ? "↑" : r === "down" ? "↓" : "", K = (r) => r === "up" ? "text-green-600" : r === "down" ? "text-red-600" : "text-muted-foreground", S = ({ title: r, value: t, unit: n, subtitle: a, icon: c, iconSize: l = "md", trend: i, trendValue: o, color: m = "blue", children: u }) => {
59
+ const p = c;
60
+ return /* @__PURE__ */ e(x, { className: "relative overflow-hidden bg-card border shadow-lg hover:shadow-xl transition-all duration-300", children: /* @__PURE__ */ s(f, { className: "pt-6", children: [
61
+ /* @__PURE__ */ s("div", { className: "flex items-start justify-between", children: [
62
+ /* @__PURE__ */ s("div", { children: [
63
+ /* @__PURE__ */ e(g, { className: "text-sm font-medium text-muted-foreground", children: r }),
64
+ /* @__PURE__ */ s("div", { className: "flex items-baseline space-x-2 mt-1", children: [
65
+ /* @__PURE__ */ e("div", { className: "text-2xl font-bold text-card-foreground", children: typeof t == "number" ? t.toFixed(1) : t }),
66
+ n && /* @__PURE__ */ e("div", { className: "text-sm text-muted-foreground font-medium", children: n })
67
+ ] }),
68
+ a && /* @__PURE__ */ e("div", { className: "mt-1 text-xs text-muted-foreground", children: a }),
69
+ i && o && /* @__PURE__ */ s("div", { className: `flex items-center space-x-1 mt-2 text-xs ${K(i)}`, children: [
70
+ /* @__PURE__ */ e("span", { children: y(i) }),
71
+ /* @__PURE__ */ e("span", { children: o })
72
+ ] })
73
+ ] }),
74
+ /* @__PURE__ */ e("div", { className: `p-2 rounded-lg ${C[m]} shadow-lg`, children: /* @__PURE__ */ e(p, { className: w[l] }) })
75
+ ] }),
76
+ u && /* @__PURE__ */ e("div", { className: "mt-4", children: u })
77
+ ] }) });
78
+ };
79
+ export {
80
+ v as K,
81
+ S as M,
82
+ H as a
83
+ };