florixui 1.7.0 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -2,7 +2,7 @@ import { clsx as e } from "clsx";
2
2
  import { twMerge as t } from "tailwind-merge";
3
3
  import * as n from "react";
4
4
  import { createContext as r, forwardRef as i, useCallback as a, useContext as o, useEffect as s, useId as c, useImperativeHandle as l, useMemo as u, useRef as d, useState as f } from "react";
5
- import { AlertCircleIcon as p, AlertTriangle as m, ArrowLeftIcon as h, Calendar as g, Check as _, CheckIcon as v, ChevronDown as y, ChevronDownIcon as b, ChevronLeftIcon as x, ChevronRightIcon as S, ChevronUpIcon as C, ChevronsLeftIcon as w, ChevronsRightIcon as T, CircleCheckIcon as E, CircleDotIcon as ee, CircleXIcon as D, Clock as O, Eye as k, EyeOff as te, FileArchiveIcon as A, FileIcon as j, FileSpreadsheetIcon as M, FileTextIcon as N, HeadphonesIcon as P, HomeIcon as F, ImageIcon as I, ImageUpIcon as ne, InboxIcon as L, InfoIcon as R, Layers as z, Loader2 as re, Loader2Icon as B, LoaderCircleIcon as ie, Locate as ae, Maximize as V, Minus as oe, MoreVertical as H, OctagonXIcon as se, PaintBucketIcon as ce, Plus as le, PlusCircleIcon as ue, PlusIcon as de, RefreshCwIcon as fe, SearchIcon as pe, Trash2Icon as me, TrendingDownIcon as he, TrendingUpIcon as ge, TriangleAlertIcon as _e, UploadIcon as ve, VideoIcon as ye, X as be, XIcon as U } from "lucide-react";
5
+ import { AlertCircleIcon as p, AlertTriangle as m, ArrowLeftIcon as h, Calendar as g, Check as _, CheckIcon as v, ChevronDown as y, ChevronDownIcon as b, ChevronLeftIcon as x, ChevronRightIcon as S, ChevronUpIcon as C, ChevronsLeftIcon as w, ChevronsRightIcon as T, CircleCheckIcon as E, CircleDotIcon as D, CircleXIcon as O, Clock as k, Eye as A, EyeOff as ee, FileArchiveIcon as j, FileIcon as M, FileSpreadsheetIcon as N, FileTextIcon as P, HeadphonesIcon as F, HomeIcon as I, ImageIcon as L, ImageUpIcon as te, InboxIcon as R, InfoIcon as ne, Layers as z, Loader2 as re, Loader2Icon as B, LoaderCircleIcon as ie, Locate as ae, Maximize as V, Minus as oe, MoreVertical as H, OctagonXIcon as se, PaintBucketIcon as ce, Plus as le, PlusCircleIcon as ue, PlusIcon as de, RefreshCwIcon as fe, SearchIcon as pe, Trash2Icon as me, TrendingDownIcon as he, TrendingUpIcon as ge, TriangleAlertIcon as _e, UploadIcon as ve, VideoIcon as ye, X as be, XIcon as U } from "lucide-react";
6
6
  import { cva as W } from "class-variance-authority";
7
7
  import { AlertDialog as G, Checkbox as xe, Dialog as K, DropdownMenu as q, HoverCard as Se, Label as Ce, Popover as we, Progress as Te, RadioGroup as Ee, Select as J, Separator as De, Slider as Oe, Slot as ke, Switch as Ae, Tabs as je, Toggle as Me, ToggleGroup as Ne, Tooltip as Pe } from "radix-ui";
8
8
  import { Fragment as Y, jsx as X, jsxs as Z } from "react/jsx-runtime";
@@ -551,11 +551,11 @@ function Dt({ error: e, errorMessage: t, helperText: n, errorId: r, helperId: i
551
551
  });
552
552
  }
553
553
  var Ot = n.forwardRef(function(e, t) {
554
- let { className: r, wrapperClassName: i, label: a, description: o, errorMessage: s, helperText: c, required: l = !1, size: u = "default", variant: d = "default", leftIcon: f, rightIcon: p, disabled: m, startItem: h, endItem: g, loading: _ = !1, as: v = "input", id: y, error: b, ...x } = e, S = b ?? !!s, C = n.useId(), w = y || C, [T, E] = n.useState(!1), ee = `${w}-error`, D = `${w}-helper`, O = `${w}-description`, A = [
555
- S && s ? ee : null,
556
- !S && c ? D : null,
557
- o ? O : null
558
- ].filter(Boolean).join(" ") || void 0, j = d === "alt" ? "bg-muted" : "bg-transparent dark:bg-input/30", M = l ? /* @__PURE__ */ X("span", {
554
+ let { className: r, wrapperClassName: i, label: a, description: o, errorMessage: s, helperText: c, required: l = !1, size: u = "default", variant: d = "default", leftIcon: f, rightIcon: p, disabled: m, startItem: h, endItem: g, loading: _ = !1, as: v = "input", id: y, error: b, ...x } = e, S = b ?? !!s, C = n.useId(), w = y || C, [T, E] = n.useState(!1), D = `${w}-error`, O = `${w}-helper`, k = `${w}-description`, j = [
555
+ S && s ? D : null,
556
+ !S && c ? O : null,
557
+ o ? k : null
558
+ ].filter(Boolean).join(" ") || void 0, M = d === "alt" ? "bg-muted" : "bg-transparent dark:bg-input/30", N = l ? /* @__PURE__ */ X("span", {
559
559
  "aria-hidden": !0,
560
560
  className: "ml-0.5 text-destructive",
561
561
  children: "*"
@@ -568,50 +568,50 @@ var Ot = n.forwardRef(function(e, t) {
568
568
  a && /* @__PURE__ */ Z(St, {
569
569
  htmlFor: w,
570
570
  className: Q(m && "text-muted-foreground"),
571
- children: [a, M]
571
+ children: [a, N]
572
572
  }),
573
573
  /* @__PURE__ */ X("textarea", {
574
574
  id: w,
575
575
  ref: t,
576
576
  disabled: m,
577
577
  "aria-invalid": S,
578
- "aria-describedby": A,
579
- className: Q("flex min-h-20 w-full rounded-lg border border-input px-3 py-2 text-base outline-none transition-colors placeholder:text-muted-foreground md:text-sm", j, "focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50", "disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50", "aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40", r),
578
+ "aria-describedby": j,
579
+ className: Q("flex min-h-20 w-full rounded-lg border border-input px-3 py-2 text-base outline-none transition-colors placeholder:text-muted-foreground md:text-sm", M, "focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50", "disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50", "aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40", r),
580
580
  ...e
581
581
  }),
582
582
  /* @__PURE__ */ X(Dt, {
583
583
  error: S,
584
584
  errorMessage: s,
585
585
  helperText: c,
586
- errorId: ee,
587
- helperId: D
586
+ errorId: D,
587
+ helperId: O
588
588
  }),
589
589
  o && /* @__PURE__ */ X(wt, {
590
- id: O,
590
+ id: k,
591
591
  children: o
592
592
  })
593
593
  ]
594
594
  });
595
595
  }
596
- let { type: N, onFocus: P, ...F } = x, I = N ?? "text", ne = I === "password", L = ne && T ? "text" : I, R = ne ? /* @__PURE__ */ X("button", {
596
+ let { type: P, onFocus: F, ...I } = x, L = P ?? "text", te = L === "password", R = te && T ? "text" : L, ne = te ? /* @__PURE__ */ X("button", {
597
597
  type: "button",
598
598
  onClick: () => E((e) => !e),
599
599
  "aria-label": T ? "Hide password" : "Show password",
600
600
  className: "cursor-pointer text-muted-foreground transition-colors hover:text-foreground",
601
601
  tabIndex: -1,
602
- children: X(T ? te : k, { className: "size-4" })
603
- }) : null, z = _ ? /* @__PURE__ */ X(re, { className: "size-4 animate-spin text-muted-foreground" }) : f, B = ne ? R : p, ie = (e) => {
604
- L === "number" && e.target.select(), P?.(e);
602
+ children: X(T ? ee : A, { className: "size-4" })
603
+ }) : null, z = _ ? /* @__PURE__ */ X(re, { className: "size-4 animate-spin text-muted-foreground" }) : f, B = te ? ne : p, ie = (e) => {
604
+ R === "number" && e.target.select(), F?.(e);
605
605
  }, ae = !!(h || g), V = /* @__PURE__ */ X("input", {
606
606
  id: w,
607
- type: L,
607
+ type: R,
608
608
  ref: t,
609
609
  disabled: m,
610
610
  "aria-invalid": S,
611
- "aria-describedby": A,
611
+ "aria-describedby": j,
612
612
  onFocus: ie,
613
- className: Q("w-full min-w-0 bg-transparent text-base text-foreground outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed md:text-sm", ae ? "h-full border-0 py-1 focus-visible:ring-0" : Q("rounded-lg border border-input px-3 py-1 transition-colors", j, u === "default" ? "h-9" : "h-8", "focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50", "disabled:opacity-50", "aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40", z && "pl-9", B && "pr-9"), ae && Q(h ? "pl-0" : "pl-3", g ? "pr-0" : "pr-3"), ae && z && !h && "pl-9", ae && B && !g && "pr-9", r),
614
- ...F
613
+ className: Q("w-full min-w-0 bg-transparent text-base text-foreground outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed md:text-sm", ae ? "h-full border-0 py-1 focus-visible:ring-0" : Q("rounded-lg border border-input px-3 py-1 transition-colors", M, u === "default" ? "h-9" : "h-8", "focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50", "disabled:opacity-50", "aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40", z && "pl-9", B && "pr-9"), ae && Q(h ? "pl-0" : "pl-3", g ? "pr-0" : "pr-3"), ae && z && !h && "pl-9", ae && B && !g && "pr-9", r),
614
+ ...I
615
615
  });
616
616
  return /* @__PURE__ */ Z("div", {
617
617
  className: Q("space-y-1.5", i),
@@ -619,11 +619,11 @@ var Ot = n.forwardRef(function(e, t) {
619
619
  a && /* @__PURE__ */ Z(St, {
620
620
  htmlFor: w,
621
621
  className: Q(m && "text-muted-foreground"),
622
- children: [a, M]
622
+ children: [a, N]
623
623
  }),
624
624
  ae ? /* @__PURE__ */ Z("div", {
625
625
  "aria-invalid": S,
626
- className: Q("flex items-center overflow-hidden rounded-lg border border-input transition-colors", j, u === "default" ? "h-9" : "h-8", "focus-within:border-ring focus-within:ring-3 focus-within:ring-ring/50", "aria-[invalid=true]:border-destructive aria-[invalid=true]:ring-3 aria-[invalid=true]:ring-destructive/20 dark:aria-[invalid=true]:ring-destructive/40", m && "cursor-not-allowed opacity-50"),
626
+ className: Q("flex items-center overflow-hidden rounded-lg border border-input transition-colors", M, u === "default" ? "h-9" : "h-8", "focus-within:border-ring focus-within:ring-3 focus-within:ring-ring/50", "aria-[invalid=true]:border-destructive aria-[invalid=true]:ring-3 aria-[invalid=true]:ring-destructive/20 dark:aria-[invalid=true]:ring-destructive/40", m && "cursor-not-allowed opacity-50"),
627
627
  children: [
628
628
  h && /* @__PURE__ */ X("div", {
629
629
  className: "flex h-full shrink-0 items-center justify-center border-r border-input bg-muted/40 px-3 text-sm text-muted-foreground [&_svg]:size-4",
@@ -666,11 +666,11 @@ var Ot = n.forwardRef(function(e, t) {
666
666
  error: S,
667
667
  errorMessage: s,
668
668
  helperText: c,
669
- errorId: ee,
670
- helperId: D
669
+ errorId: D,
670
+ helperId: O
671
671
  }),
672
672
  o && /* @__PURE__ */ X(wt, {
673
- id: O,
673
+ id: k,
674
674
  children: o
675
675
  })
676
676
  ]
@@ -708,7 +708,7 @@ function At({ className: e, variant: t = "default", asChild: n = !1, ...r }) {
708
708
  //#region src/components/custom/alert-card.tsx
709
709
  var jt = {
710
710
  info: {
711
- icon: R,
711
+ icon: ne,
712
712
  badge: "blue",
713
713
  filled: "border-blue/30 bg-blue/10 text-blue",
714
714
  iconBox: "bg-blue/10 text-blue",
@@ -722,7 +722,7 @@ var jt = {
722
722
  actionBtn: "bg-orange text-white hover:bg-orange/90"
723
723
  },
724
724
  error: {
725
- icon: D,
725
+ icon: O,
726
726
  badge: "red",
727
727
  filled: "border-red/30 bg-red/10 text-red",
728
728
  iconBox: "bg-red/10 text-red",
@@ -818,23 +818,23 @@ function Nt({ severity: e = "info", className: t, ...n }) {
818
818
  var Pt = [
819
819
  {
820
820
  match: (e, t) => e.includes("zip") || e.includes("archive") || t.endsWith(".zip") || t.endsWith(".rar"),
821
- Icon: A
821
+ Icon: j
822
822
  },
823
823
  {
824
824
  match: (e) => e.includes("audio/"),
825
- Icon: P
825
+ Icon: F
826
826
  },
827
827
  {
828
828
  match: (e, t) => e.includes("excel") || t.endsWith(".xls") || t.endsWith(".xlsx"),
829
- Icon: M
829
+ Icon: N
830
830
  },
831
831
  {
832
832
  match: (e) => e.startsWith("image/"),
833
- Icon: I
833
+ Icon: L
834
834
  },
835
835
  {
836
836
  match: (e, t) => e.includes("pdf") || t.endsWith(".pdf") || e.includes("word") || t.endsWith(".doc") || t.endsWith(".docx"),
837
- Icon: N
837
+ Icon: P
838
838
  },
839
839
  {
840
840
  match: (e) => e.includes("video/"),
@@ -843,7 +843,7 @@ var Pt = [
843
843
  ];
844
844
  function Ft(e) {
845
845
  for (let { match: t, Icon: n } of Pt) if (t(e.type, e.name)) return /* @__PURE__ */ X(n, { className: "size-5 opacity-60" });
846
- return /* @__PURE__ */ X(j, { className: "size-5 opacity-60" });
846
+ return /* @__PURE__ */ X(M, { className: "size-5 opacity-60" });
847
847
  }
848
848
  function It({ entry: e }) {
849
849
  let { file: t } = e;
@@ -902,7 +902,7 @@ function Lt({ variant: e = "image", accept: t = "image/*", maxSize: n = 5 * 1024
902
902
  /* @__PURE__ */ X("div", {
903
903
  "aria-hidden": "true",
904
904
  className: "mb-2 flex size-11 shrink-0 items-center justify-center rounded-full border bg-background",
905
- children: /* @__PURE__ */ X(ne, { className: "size-4 opacity-60" })
905
+ children: /* @__PURE__ */ X(te, { className: "size-4 opacity-60" })
906
906
  }),
907
907
  /* @__PURE__ */ X("p", {
908
908
  className: "mb-1.5 font-medium text-sm",
@@ -1009,7 +1009,7 @@ function Lt({ variant: e = "image", accept: t = "image/*", maxSize: n = 5 * 1024
1009
1009
  /* @__PURE__ */ X("div", {
1010
1010
  "aria-hidden": "true",
1011
1011
  className: "mb-2 flex size-11 shrink-0 items-center justify-center rounded-full border bg-background",
1012
- children: /* @__PURE__ */ X(I, { className: "size-4 opacity-60" })
1012
+ children: /* @__PURE__ */ X(L, { className: "size-4 opacity-60" })
1013
1013
  }),
1014
1014
  /* @__PURE__ */ X("p", {
1015
1015
  className: "mb-1.5 font-medium text-sm",
@@ -1349,15 +1349,15 @@ function bn({ className: e, ...t }) {
1349
1349
  function xn(e) {
1350
1350
  return typeof e == "object" && !!e && "value" in e && "label" in e;
1351
1351
  }
1352
- function Sn({ options: e = [], groups: t = [], value: r, onValueChange: i, placeholder: a = "Select option", disabled: o = !1, error: s = !1, errorMessage: c, multiple: l = !1, className: u, size: d = "default", variant: f = "default", searchable: p = !1, clearable: m = !1, getOptionLabel: h, getOptionValue: g, renderOptionLabel: _, label: y, description: x, required: S = !1, onCreateNew: C, createNewLabel: w = "New item", loading: T = !1, compactMultiple: E = !1, formatCompactDisplay: ee, startItem: D, endItem: O, maxSelections: k, defaultOpen: te = !1, onOpenChange: A, onLoadMore: j, hasNextPage: M = !1, isFetchingNextPage: N = !1, allowEmpty: P = !1, showSelectAll: F = !1, readOnly: I = !1, popoverClassName: ne }) {
1353
- let [L, R] = n.useState(te), z = n.useRef(!1), B = n.useRef(null), ie = n.useId(), ae = n.useCallback((e) => {
1354
- I && e || (R(e), A?.(e), e && (z.current = !1));
1355
- }, [A, I]), [V, oe] = n.useState(l ? Array.isArray(r) ? r : r ? [r] : [] : []);
1352
+ function Sn({ options: e = [], groups: t = [], value: r, onValueChange: i, placeholder: a = "Select option", disabled: o = !1, error: s = !1, errorMessage: c, multiple: l = !1, className: u, size: d = "default", variant: f = "default", searchable: p = !1, clearable: m = !1, getOptionLabel: h, getOptionValue: g, renderOptionLabel: _, label: y, description: x, required: S = !1, onCreateNew: C, createNewLabel: w = "New item", loading: T = !1, compactMultiple: E = !1, formatCompactDisplay: D, startItem: O, endItem: k, maxSelections: A, defaultOpen: ee = !1, onOpenChange: j, onLoadMore: M, hasNextPage: N = !1, isFetchingNextPage: P = !1, allowEmpty: F = !1, showSelectAll: I = !1, readOnly: L = !1, popoverClassName: te }) {
1353
+ let [R, ne] = n.useState(ee), z = n.useRef(!1), B = n.useRef(null), ie = n.useId(), ae = n.useCallback((e) => {
1354
+ L && e || (ne(e), j?.(e), e && (z.current = !1));
1355
+ }, [j, L]), [V, oe] = n.useState(l ? Array.isArray(r) ? r : r ? [r] : [] : []);
1356
1356
  n.useEffect(() => {
1357
1357
  l && oe(Array.isArray(r) ? r : r ? [r] : []);
1358
1358
  }, [l, r]), n.useEffect(() => {
1359
- N || (z.current = !1);
1360
- }, [N]);
1359
+ P || (z.current = !1);
1360
+ }, [P]);
1361
1361
  let H = n.useCallback((e) => typeof e == "string" ? e : g ? g(e) : xn(e) ? e.value : String(e), [g]), se = n.useCallback((n) => {
1362
1362
  if (typeof n == "string") {
1363
1363
  for (let e of t) {
@@ -1402,38 +1402,38 @@ function Sn({ options: e = [], groups: t = [], value: r, onValueChange: i, place
1402
1402
  }
1403
1403
  if (l) {
1404
1404
  let e = V.some((e) => H(e) === n);
1405
- if (!e && k && V.length >= k || e && V.length === 1 && !P) return;
1405
+ if (!e && A && V.length >= A || e && V.length === 1 && !F) return;
1406
1406
  let t = e ? V.filter((e) => H(e) !== n) : [...V, r];
1407
1407
  oe(t), i?.(t);
1408
- } else i?.(r), R(!1);
1408
+ } else i?.(r), ne(!1);
1409
1409
  }, me = l && fe.length > 0 && fe.length === V.length, he = () => {
1410
1410
  if (l) {
1411
1411
  if (me) {
1412
- P && (oe([]), i?.([]));
1412
+ F && (oe([]), i?.([]));
1413
1413
  return;
1414
1414
  }
1415
- k && fe.length > k || (oe(fe), i?.(fe));
1415
+ A && fe.length > A || (oe(fe), i?.(fe));
1416
1416
  }
1417
1417
  }, ge = (e) => {
1418
1418
  e.stopPropagation(), l ? (oe([]), i?.([])) : i?.("");
1419
1419
  }, _e = (e, t) => {
1420
- if (e.stopPropagation(), V.length === 1 && !P) return;
1420
+ if (e.stopPropagation(), V.length === 1 && !F) return;
1421
1421
  let n = V.filter((e) => H(e) !== H(t));
1422
1422
  oe(n), i?.(n);
1423
1423
  }, ve = n.useCallback((e) => {
1424
1424
  let t = e.currentTarget;
1425
- t.scrollHeight - t.scrollTop - t.clientHeight < 100 && j && M && !N && !z.current && (z.current = !0, j());
1425
+ t.scrollHeight - t.scrollTop - t.clientHeight < 100 && M && N && !P && !z.current && (z.current = !0, M());
1426
1426
  }, [
1427
- j,
1428
1427
  M,
1429
- N
1428
+ N,
1429
+ P
1430
1430
  ]), ye = l ? V.length > 0 : !!ce, be = () => l ? null : fe.find((e) => e.value === ce)?.label || a, W = () => {
1431
- !o && !I && (B.current?.focus(), R(!0));
1432
- }, G = !!(D || O), xe = l && !E, K = xe ? d === "default" ? "min-h-9" : "min-h-7" : d === "default" ? "h-9" : "h-7", q = f === "alt" ? "bg-muted" : "bg-transparent dark:bg-input/30", Se = /* @__PURE__ */ X("div", {
1431
+ !o && !L && (B.current?.focus(), ne(!0));
1432
+ }, G = !!(O || k), xe = l && !E, K = xe ? d === "default" ? "min-h-9" : "min-h-7" : d === "default" ? "h-9" : "h-7", q = f === "alt" ? "bg-muted" : "bg-transparent dark:bg-input/30", Se = /* @__PURE__ */ X("div", {
1433
1433
  className: Q("flex min-w-0 flex-1 items-center gap-1.5", xe ? "py-1" : "overflow-hidden"),
1434
1434
  children: l && V.length > 0 ? E ? /* @__PURE__ */ X("span", {
1435
1435
  className: "min-w-0 truncate",
1436
- children: ee ? ee(V) : `${V.length} selected`
1436
+ children: D ? D(V) : `${V.length} selected`
1437
1437
  }) : /* @__PURE__ */ X("div", {
1438
1438
  className: "flex flex-wrap items-center gap-1.5",
1439
1439
  children: V.map((e, t) => /* @__PURE__ */ Z("span", {
@@ -1514,7 +1514,7 @@ function Sn({ options: e = [], groups: t = [], value: r, onValueChange: i, place
1514
1514
  ]
1515
1515
  }, e.value);
1516
1516
  }, Te = /* @__PURE__ */ X(gn, {
1517
- className: Q("w-(--radix-popper-anchor-width) min-w-(--radix-popper-anchor-width) p-0", ne),
1517
+ className: Q("w-(--radix-popper-anchor-width) min-w-(--radix-popper-anchor-width) p-0", te),
1518
1518
  align: "start",
1519
1519
  onOpenAutoFocus: (e) => {
1520
1520
  p || e.preventDefault();
@@ -1529,7 +1529,7 @@ function Sn({ options: e = [], groups: t = [], value: r, onValueChange: i, place
1529
1529
  className: "flex items-center justify-center py-6",
1530
1530
  children: /* @__PURE__ */ X(re, { className: "size-5 animate-spin text-muted-foreground" })
1531
1531
  }) : /* @__PURE__ */ Z(Y, { children: [
1532
- l && F && fe.length > 0 && /* @__PURE__ */ Z(Y, { children: [/* @__PURE__ */ X(un, { children: /* @__PURE__ */ Z(fn, {
1532
+ l && I && fe.length > 0 && /* @__PURE__ */ Z(Y, { children: [/* @__PURE__ */ X(un, { children: /* @__PURE__ */ Z(fn, {
1533
1533
  value: "__select_all__",
1534
1534
  onSelect: he,
1535
1535
  className: "font-medium",
@@ -1550,7 +1550,7 @@ function Sn({ options: e = [], groups: t = [], value: r, onValueChange: i, place
1550
1550
  variant: "ghost",
1551
1551
  className: "w-full justify-start font-normal",
1552
1552
  onClick: () => {
1553
- C(), R(!1);
1553
+ C(), ne(!1);
1554
1554
  },
1555
1555
  children: [/* @__PURE__ */ X(de, {
1556
1556
  size: 16,
@@ -1558,7 +1558,7 @@ function Sn({ options: e = [], groups: t = [], value: r, onValueChange: i, place
1558
1558
  "aria-hidden": !0
1559
1559
  }), w]
1560
1560
  }) })] }),
1561
- N && /* @__PURE__ */ X("div", {
1561
+ P && /* @__PURE__ */ X("div", {
1562
1562
  className: "flex items-center justify-center py-3",
1563
1563
  children: /* @__PURE__ */ X(re, { className: "size-4 animate-spin text-muted-foreground" })
1564
1564
  })
@@ -1579,18 +1579,18 @@ function Sn({ options: e = [], groups: t = [], value: r, onValueChange: i, place
1579
1579
  children: [y, Ee]
1580
1580
  }),
1581
1581
  G ? /* @__PURE__ */ Z(mn, {
1582
- open: L,
1582
+ open: R,
1583
1583
  onOpenChange: ae,
1584
1584
  modal: !1,
1585
1585
  children: [/* @__PURE__ */ X(hn, {
1586
1586
  asChild: !0,
1587
1587
  children: /* @__PURE__ */ Z("div", {
1588
1588
  "aria-invalid": s,
1589
- className: Q("flex rounded-md border border-input transition-colors", xe ? "items-stretch" : "items-center overflow-hidden", q, K, L && "border-ring ring-3 ring-ring/50", "aria-[invalid=true]:border-destructive aria-[invalid=true]:ring-3 aria-[invalid=true]:ring-destructive/20", o && "pointer-events-none cursor-not-allowed opacity-50"),
1589
+ className: Q("flex rounded-md border border-input transition-colors", xe ? "items-stretch" : "items-center overflow-hidden", q, K, R && "border-ring ring-3 ring-ring/50", "aria-[invalid=true]:border-destructive aria-[invalid=true]:ring-3 aria-[invalid=true]:ring-destructive/20", o && "pointer-events-none cursor-not-allowed opacity-50"),
1590
1590
  children: [
1591
- D && /* @__PURE__ */ X("div", {
1591
+ O && /* @__PURE__ */ X("div", {
1592
1592
  className: "flex h-full shrink-0 items-center justify-center border-r border-input bg-muted/40 px-3 text-sm text-muted-foreground [&_svg]:size-4",
1593
- children: D
1593
+ children: O
1594
1594
  }),
1595
1595
  /* @__PURE__ */ Z($, {
1596
1596
  id: ie,
@@ -1599,22 +1599,22 @@ function Sn({ options: e = [], groups: t = [], value: r, onValueChange: i, place
1599
1599
  ref: B,
1600
1600
  variant: "ghost",
1601
1601
  role: "combobox",
1602
- "aria-expanded": L,
1602
+ "aria-expanded": R,
1603
1603
  onClick: (e) => {
1604
- I && (e.preventDefault(), e.stopPropagation());
1604
+ L && (e.preventDefault(), e.stopPropagation());
1605
1605
  },
1606
1606
  className: Q("h-full flex-1 justify-between rounded-none border-0 px-3 py-1 font-normal text-foreground shadow-none hover:bg-transparent focus-visible:ring-0", xe ? "items-start" : "items-center", u),
1607
1607
  children: [Se, Ce]
1608
1608
  }),
1609
- O && /* @__PURE__ */ X("div", {
1609
+ k && /* @__PURE__ */ X("div", {
1610
1610
  className: "flex h-full shrink-0 items-center justify-center border-l border-input bg-muted/40 px-3 text-sm text-foreground [&_svg]:size-4",
1611
- children: O
1611
+ children: k
1612
1612
  })
1613
1613
  ]
1614
1614
  })
1615
1615
  }), Te]
1616
1616
  }) : /* @__PURE__ */ Z(mn, {
1617
- open: L,
1617
+ open: R,
1618
1618
  onOpenChange: ae,
1619
1619
  modal: !1,
1620
1620
  children: [/* @__PURE__ */ X(hn, {
@@ -1626,12 +1626,12 @@ function Sn({ options: e = [], groups: t = [], value: r, onValueChange: i, place
1626
1626
  ref: B,
1627
1627
  variant: "outline",
1628
1628
  role: "combobox",
1629
- "aria-expanded": L,
1629
+ "aria-expanded": R,
1630
1630
  "aria-invalid": s,
1631
1631
  onClick: (e) => {
1632
- I && (e.preventDefault(), e.stopPropagation());
1632
+ L && (e.preventDefault(), e.stopPropagation());
1633
1633
  },
1634
- className: Q("h-auto w-full justify-between px-3 py-1 font-normal text-foreground", K, xe ? "items-start" : "items-center", q, L && "border-ring ring-3 ring-ring/50", u),
1634
+ className: Q("h-auto w-full justify-between px-3 py-1 font-normal text-foreground", K, xe ? "items-start" : "items-center", q, R && "border-ring ring-3 ring-ring/50", u),
1635
1635
  children: [Se, Ce]
1636
1636
  })
1637
1637
  }), Te]
@@ -1733,22 +1733,22 @@ function Nn({ columns: e, data: t, getRowId: r = (e, t) => String(t), selectable
1733
1733
  100,
1734
1734
  200
1735
1735
  ], striped: p = !0, stickyHeader: m = !1, maxHeight: h, fillHeight: g = !1, onRowClick: _, className: v }) {
1736
- let y = n.useMemo(() => t.map((e, t) => r(e, t)), [t, r]), [b, C] = n.useState([]), E = a ?? b, ee = (e) => {
1736
+ let y = n.useMemo(() => t.map((e, t) => r(e, t)), [t, r]), [b, C] = n.useState([]), E = a ?? b, D = (e) => {
1737
1737
  a === void 0 && C(e), o?.(e);
1738
- }, D = y.length > 0 && y.every((e) => E.includes(e)), O = E.length > 0 && !D, k = () => ee(D ? [] : y), te = (e) => ee(E.includes(e) ? E.filter((t) => t !== e) : [...E, e]), A = e.length + +!!i + +!!s, [j, M] = n.useState(d), [N, P] = n.useState(0), F = u ? Math.max(1, Math.ceil(t.length / j)) : 1, I = Math.min(N, F - 1), ne = n.useMemo(() => {
1738
+ }, O = y.length > 0 && y.every((e) => E.includes(e)), k = E.length > 0 && !O, A = () => D(O ? [] : y), ee = (e) => D(E.includes(e) ? E.filter((t) => t !== e) : [...E, e]), j = e.length + +!!i + +!!s, [M, N] = n.useState(d), [P, F] = n.useState(0), I = u ? Math.max(1, Math.ceil(t.length / M)) : 1, L = Math.min(P, I - 1), te = n.useMemo(() => {
1739
1739
  let e = t.map((e, t) => ({
1740
1740
  row: e,
1741
1741
  index: t
1742
1742
  }));
1743
1743
  if (!u) return e;
1744
- let n = I * j;
1745
- return e.slice(n, n + j);
1744
+ let n = L * M;
1745
+ return e.slice(n, n + M);
1746
1746
  }, [
1747
1747
  t,
1748
1748
  u,
1749
- I,
1750
- j
1751
- ]), L = "px-4 py-3 first:pl-5 last:pr-5", R = "px-4 first:pl-5 last:pr-5", z = !g && h !== void 0 ? typeof h == "number" ? `${h}px` : h : void 0;
1749
+ L,
1750
+ M
1751
+ ]), R = "px-4 py-3 first:pl-5 last:pr-5", ne = "px-4 first:pl-5 last:pr-5", z = !g && h !== void 0 ? typeof h == "number" ? `${h}px` : h : void 0;
1752
1752
  return /* @__PURE__ */ Z("div", {
1753
1753
  className: Q("overflow-hidden rounded-lg border", u && "rounded-b-none border-b-0", (g || h !== void 0) && "flex min-h-0 flex-col [&_[data-slot=table-container]]:overflow-y-auto", g && "min-h-0 flex-1 [&_[data-slot=table-container]]:min-h-0 [&_[data-slot=table-container]]:flex-1", !g && h !== void 0 && "[&_[data-slot=table-container]]:max-h-(--dt-max-h)", v),
1754
1754
  style: z ? { "--dt-max-h": z } : void 0,
@@ -1758,16 +1758,16 @@ function Nn({ columns: e, data: t, getRowId: r = (e, t) => String(t), selectable
1758
1758
  className: "hover:bg-transparent",
1759
1759
  children: [
1760
1760
  i && /* @__PURE__ */ X(kn, {
1761
- className: Q("w-10", R),
1761
+ className: Q("w-10", ne),
1762
1762
  children: /* @__PURE__ */ X(Cn, {
1763
1763
  "aria-label": "Select all rows",
1764
- checked: D ? !0 : O ? "indeterminate" : !1,
1765
- onCheckedChange: k
1764
+ checked: O ? !0 : k ? "indeterminate" : !1,
1765
+ onCheckedChange: A
1766
1766
  })
1767
1767
  }),
1768
1768
  e.map((e) => /* @__PURE__ */ X(kn, {
1769
1769
  style: e.width ? { width: e.width } : void 0,
1770
- className: Q("h-11 text-xs font-semibold tracking-wide text-foreground uppercase", R, e.align && Mn[e.align], e.className, e.headerClassName),
1770
+ className: Q("h-11 text-xs font-semibold tracking-wide text-foreground uppercase", ne, e.align && Mn[e.align], e.className, e.headerClassName),
1771
1771
  children: e.header
1772
1772
  }, e.key)),
1773
1773
  s && /* @__PURE__ */ X(kn, { className: "w-12" })
@@ -1776,7 +1776,7 @@ function Nn({ columns: e, data: t, getRowId: r = (e, t) => String(t), selectable
1776
1776
  }), /* @__PURE__ */ X(En, { children: c ? /* @__PURE__ */ X(On, {
1777
1777
  className: "hover:bg-transparent",
1778
1778
  children: /* @__PURE__ */ X(An, {
1779
- colSpan: A,
1779
+ colSpan: j,
1780
1780
  className: "h-28 text-center",
1781
1781
  children: /* @__PURE__ */ Z("span", {
1782
1782
  className: "inline-flex items-center gap-2 text-muted-foreground",
@@ -1786,11 +1786,11 @@ function Nn({ columns: e, data: t, getRowId: r = (e, t) => String(t), selectable
1786
1786
  }) : t.length === 0 ? /* @__PURE__ */ X(On, {
1787
1787
  className: "hover:bg-transparent",
1788
1788
  children: /* @__PURE__ */ X(An, {
1789
- colSpan: A,
1789
+ colSpan: j,
1790
1790
  className: "h-28 text-center text-muted-foreground",
1791
1791
  children: l
1792
1792
  })
1793
- }) : ne.map(({ row: t, index: n }) => {
1793
+ }) : te.map(({ row: t, index: n }) => {
1794
1794
  let r = y[n], a = E.includes(r);
1795
1795
  return /* @__PURE__ */ Z(On, {
1796
1796
  "data-state": a ? "selected" : void 0,
@@ -1798,17 +1798,17 @@ function Nn({ columns: e, data: t, getRowId: r = (e, t) => String(t), selectable
1798
1798
  className: Q(p && !a && "odd:bg-muted/40", a && "bg-primary/10 shadow-[inset_3px_0_0_0_var(--primary)] hover:bg-primary/15", _ && "cursor-pointer"),
1799
1799
  children: [
1800
1800
  i && /* @__PURE__ */ X(An, {
1801
- className: Q("w-10", L),
1801
+ className: Q("w-10", R),
1802
1802
  onClick: (e) => e.stopPropagation(),
1803
1803
  children: /* @__PURE__ */ X(Cn, {
1804
1804
  "aria-label": "Select row",
1805
1805
  checked: a,
1806
- onCheckedChange: () => te(r)
1806
+ onCheckedChange: () => ee(r)
1807
1807
  })
1808
1808
  }),
1809
1809
  e.map((e) => /* @__PURE__ */ X(An, {
1810
1810
  style: e.width ? { width: e.width } : void 0,
1811
- className: Q(L, e.align && Mn[e.align], e.className),
1811
+ className: Q(R, e.align && Mn[e.align], e.className),
1812
1812
  children: e.cell ? e.cell(t, n) : String(t[e.key] ?? "")
1813
1813
  }, e.key)),
1814
1814
  s && /* @__PURE__ */ X(An, {
@@ -1824,9 +1824,9 @@ function Nn({ columns: e, data: t, getRowId: r = (e, t) => String(t), selectable
1824
1824
  className: "text-muted-foreground",
1825
1825
  children: [
1826
1826
  "Page ",
1827
- t.length === 0 ? 0 : I + 1,
1827
+ t.length === 0 ? 0 : L + 1,
1828
1828
  " of ",
1829
- F,
1829
+ I,
1830
1830
  " (",
1831
1831
  t.length,
1832
1832
  " total ",
@@ -1843,10 +1843,10 @@ function Nn({ columns: e, data: t, getRowId: r = (e, t) => String(t), selectable
1843
1843
  }), /* @__PURE__ */ X(Sn, {
1844
1844
  size: "sm",
1845
1845
  className: "w-20",
1846
- value: String(j),
1846
+ value: String(M),
1847
1847
  onValueChange: (e) => {
1848
1848
  let t = typeof e == "object" && e && "value" in e ? e.value : e;
1849
- M(Number(t)), P(0);
1849
+ N(Number(t)), F(0);
1850
1850
  },
1851
1851
  options: f.map((e) => ({
1852
1852
  value: String(e),
@@ -1860,32 +1860,32 @@ function Nn({ columns: e, data: t, getRowId: r = (e, t) => String(t), selectable
1860
1860
  variant: "outline",
1861
1861
  size: "icon-sm",
1862
1862
  "aria-label": "First page",
1863
- disabled: I <= 0,
1864
- onClick: () => P(0),
1863
+ disabled: L <= 0,
1864
+ onClick: () => F(0),
1865
1865
  children: /* @__PURE__ */ X(w, {})
1866
1866
  }),
1867
1867
  /* @__PURE__ */ X($, {
1868
1868
  variant: "outline",
1869
1869
  size: "icon-sm",
1870
1870
  "aria-label": "Previous page",
1871
- disabled: I <= 0,
1872
- onClick: () => P(Math.max(0, I - 1)),
1871
+ disabled: L <= 0,
1872
+ onClick: () => F(Math.max(0, L - 1)),
1873
1873
  children: /* @__PURE__ */ X(x, {})
1874
1874
  }),
1875
1875
  /* @__PURE__ */ X($, {
1876
1876
  variant: "outline",
1877
1877
  size: "icon-sm",
1878
1878
  "aria-label": "Next page",
1879
- disabled: I >= F - 1,
1880
- onClick: () => P(Math.min(F - 1, I + 1)),
1879
+ disabled: L >= I - 1,
1880
+ onClick: () => F(Math.min(I - 1, L + 1)),
1881
1881
  children: /* @__PURE__ */ X(S, {})
1882
1882
  }),
1883
1883
  /* @__PURE__ */ X($, {
1884
1884
  variant: "outline",
1885
1885
  size: "icon-sm",
1886
1886
  "aria-label": "Last page",
1887
- disabled: I >= F - 1,
1888
- onClick: () => P(F - 1),
1887
+ disabled: L >= I - 1,
1888
+ onClick: () => F(I - 1),
1889
1889
  children: /* @__PURE__ */ X(T, {})
1890
1890
  })
1891
1891
  ]
@@ -2412,7 +2412,7 @@ function ur({ className: e, ...t }) {
2412
2412
  }
2413
2413
  //#endregion
2414
2414
  //#region src/components/custom/empty-state.tsx
2415
- function dr({ icon: e = /* @__PURE__ */ X(L, {}), mediaVariant: t = "icon", title: n = "No data", description: r, actions: i, ...a }) {
2415
+ function dr({ icon: e = /* @__PURE__ */ X(R, {}), mediaVariant: t = "icon", title: n = "No data", description: r, actions: i, ...a }) {
2416
2416
  return /* @__PURE__ */ Z(ir, {
2417
2417
  ...a,
2418
2418
  children: [/* @__PURE__ */ Z(ar, { children: [
@@ -2708,7 +2708,7 @@ function yr({ code: e = "404", title: t = "Page Not Found", description: n = "So
2708
2708
  asChild: !0,
2709
2709
  children: /* @__PURE__ */ Z("a", {
2710
2710
  href: a,
2711
- children: [/* @__PURE__ */ X(F, {}), o]
2711
+ children: [/* @__PURE__ */ X(I, {}), o]
2712
2712
  })
2713
2713
  }),
2714
2714
  s
@@ -2825,7 +2825,7 @@ var kr = {
2825
2825
  }
2826
2826
  };
2827
2827
  function Ar({ icon: e, mode: t, description: n, value: r, showAccent: i = !1, colorVariant: a = "primary", accentColorVariant: o, valueColorVariant: s, showPercentSign: c = !0, unit: l, stackedLayout: u = !1, variant: d = "default", onClick: f, onValueClick: p, className: m }) {
2828
- let h = kr[a], g = kr[o ?? a], _ = s ? kr[s].text : "text-foreground", v = u ? "size-10" : "size-5", y = e ?? (t?.toLowerCase() === "auto" ? /* @__PURE__ */ X(fe, { className: Q(v, h.text) }) : /* @__PURE__ */ X(ee, { className: Q(v, h.text) })), b = /* @__PURE__ */ Z(Y, { children: [u ? /* @__PURE__ */ Z("div", {
2828
+ let h = kr[a], g = kr[o ?? a], _ = s ? kr[s].text : "text-foreground", v = u ? "size-10" : "size-5", y = e ?? (t?.toLowerCase() === "auto" ? /* @__PURE__ */ X(fe, { className: Q(v, h.text) }) : /* @__PURE__ */ X(D, { className: Q(v, h.text) })), b = /* @__PURE__ */ Z(Y, { children: [u ? /* @__PURE__ */ Z("div", {
2829
2829
  className: "flex items-center gap-3",
2830
2830
  children: [y, /* @__PURE__ */ Z("div", {
2831
2831
  className: "flex flex-col",
@@ -3523,7 +3523,7 @@ function ci(e, t) {
3523
3523
  return "Select range";
3524
3524
  }
3525
3525
  //#endregion
3526
- //#region src/components/custom/date-time-range-picker.tsx
3526
+ //#region src/components/custom/date-time-picker.tsx
3527
3527
  function li({ value: e, max: t, onChange: r }) {
3528
3528
  let [i, a] = n.useState(e);
3529
3529
  n.useEffect(() => {
@@ -3549,54 +3549,57 @@ function li({ value: e, max: t, onChange: r }) {
3549
3549
  className: Q("h-8 w-12 rounded-md border border-input bg-transparent text-center text-sm font-medium dark:bg-input/30", "focus:border-ring focus:ring-3 focus:ring-ring/50 focus:outline-none", "[appearance:textfield] [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none")
3550
3550
  });
3551
3551
  }
3552
- function ui({ isoValue: e, onChange: t, label: r, placeholder: i = "Select date & time", timezone: a, minDate: o, maxDate: s }) {
3553
- let [c, l] = n.useState(!1), u = a || "UTC", d = ri(e, u), [f, p] = n.useState(d?.h ?? "00"), [m, h] = n.useState(d?.m ?? "00"), [_, v] = n.useState(d?.s ?? "00");
3552
+ function ui({ value: e, onChange: t, label: r, placeholder: i = "Select date & time", showTime: a = !0, timezone: o, minDate: s, maxDate: c, disabled: l, className: u }) {
3553
+ let [d, f] = n.useState(!1), p = o || "UTC", m = ri(e, p), [h, _] = n.useState(m?.h ?? "00"), [v, y] = n.useState(m?.m ?? "00"), [b, x] = n.useState(m?.s ?? "00");
3554
3554
  n.useEffect(() => {
3555
- let t = ri(e, u);
3556
- p(t?.h ?? "00"), h(t?.m ?? "00"), v(t?.s ?? "00");
3557
- }, [e, u]);
3558
- let y = d ? new Date(d.year, d.month, d.day) : void 0, b = (e, n, r, i, a, o) => t(ii(e, n, r, i, a, o, u)), x = (e) => {
3559
- e && b(e.getFullYear(), e.getMonth(), e.getDate(), f, m, _);
3560
- }, S = (e, t) => {
3561
- let n = e === "h" ? t : f, r = e === "m" ? t : m, i = e === "s" ? t : _;
3562
- e === "h" && p(t), e === "m" && h(t), e === "s" && v(t), d && b(d.year, d.month, d.day, n, r, i);
3563
- }, C = (e) => {
3564
- if (o) {
3565
- let t = new Date(o);
3566
- if (t.setHours(0, 0, 0, 0), e < t) return !0;
3567
- }
3555
+ let t = ri(e, p);
3556
+ _(t?.h ?? "00"), y(t?.m ?? "00"), x(t?.s ?? "00");
3557
+ }, [e, p]);
3558
+ let S = m ? new Date(m.year, m.month, m.day) : void 0, C = (e, n, r, i, a, o) => t(ii(e, n, r, i, a, o, p)), w = (e) => {
3559
+ e && (C(e.getFullYear(), e.getMonth(), e.getDate(), a ? h : "00", a ? v : "00", a ? b : "00"), a || f(!1));
3560
+ }, T = (e, t) => {
3561
+ let n = e === "h" ? t : h, r = e === "m" ? t : v, i = e === "s" ? t : b;
3562
+ e === "h" && _(t), e === "m" && y(t), e === "s" && x(t), m && C(m.year, m.month, m.day, n, r, i);
3563
+ }, E = (e) => {
3568
3564
  if (s) {
3569
3565
  let t = new Date(s);
3566
+ if (t.setHours(0, 0, 0, 0), e < t) return !0;
3567
+ }
3568
+ if (c) {
3569
+ let t = new Date(c);
3570
3570
  if (t.setHours(23, 59, 59, 999), e > t) return !0;
3571
3571
  }
3572
3572
  return !1;
3573
- }, w = d ? new Date(e).toLocaleString("en-US", {
3573
+ }, D = m ? new Date(e).toLocaleString("en-US", {
3574
3574
  year: "numeric",
3575
3575
  month: "short",
3576
3576
  day: "2-digit",
3577
- hour: "2-digit",
3578
- minute: "2-digit",
3579
- second: "2-digit",
3580
- hour12: !1,
3581
- timeZone: u
3577
+ ...a ? {
3578
+ hour: "2-digit",
3579
+ minute: "2-digit",
3580
+ second: "2-digit",
3581
+ hour12: !1
3582
+ } : {},
3583
+ timeZone: p
3582
3584
  }) : i;
3583
3585
  return /* @__PURE__ */ Z("div", {
3584
- className: "flex flex-col gap-1",
3585
- children: [/* @__PURE__ */ X("label", {
3586
+ className: Q("flex flex-col gap-1", u),
3587
+ children: [r != null && /* @__PURE__ */ X("label", {
3586
3588
  className: "px-0.5 text-xs text-muted-foreground",
3587
3589
  children: r
3588
3590
  }), /* @__PURE__ */ Z(mn, {
3589
- open: c,
3590
- onOpenChange: l,
3591
+ open: d,
3592
+ onOpenChange: f,
3591
3593
  modal: !1,
3592
3594
  children: [/* @__PURE__ */ X(hn, {
3593
3595
  asChild: !0,
3594
3596
  children: /* @__PURE__ */ Z("button", {
3595
3597
  type: "button",
3596
- className: Q("flex h-8 w-full items-center justify-between gap-2 rounded-md border border-input bg-transparent px-3 py-1 text-sm transition-colors outline-none dark:bg-input/30", "hover:bg-accent/50 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50", c && "border-ring ring-3 ring-ring/50", !d && "text-muted-foreground"),
3598
+ disabled: l,
3599
+ className: Q("flex h-8 w-full items-center justify-between gap-2 rounded-md border border-input bg-transparent px-3 py-1 text-sm transition-colors outline-none dark:bg-input/30", "hover:bg-accent/50 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50", d && "border-ring ring-3 ring-ring/50", !m && "text-muted-foreground", "disabled:pointer-events-none disabled:opacity-50"),
3597
3600
  children: [/* @__PURE__ */ X("span", {
3598
3601
  className: "truncate",
3599
- children: w
3602
+ children: D
3600
3603
  }), /* @__PURE__ */ X(g, { className: "size-3.5 shrink-0 opacity-60" })]
3601
3604
  })
3602
3605
  }), /* @__PURE__ */ Z(gn, {
@@ -3605,37 +3608,37 @@ function ui({ isoValue: e, onChange: t, label: r, placeholder: i = "Select date
3605
3608
  sideOffset: 4,
3606
3609
  children: [/* @__PURE__ */ X(ei, {
3607
3610
  mode: "single",
3608
- selected: y,
3609
- onSelect: x,
3610
- disabled: C,
3611
- defaultMonth: y,
3611
+ selected: S,
3612
+ onSelect: w,
3613
+ disabled: E,
3614
+ defaultMonth: S,
3612
3615
  autoFocus: !0
3613
- }), /* @__PURE__ */ Z("div", {
3616
+ }), a && /* @__PURE__ */ Z("div", {
3614
3617
  className: "flex items-center gap-2 border-t px-3 py-2.5",
3615
3618
  children: [
3616
- /* @__PURE__ */ X(O, { className: "size-4 shrink-0 text-muted-foreground" }),
3619
+ /* @__PURE__ */ X(k, { className: "size-4 shrink-0 text-muted-foreground" }),
3617
3620
  /* @__PURE__ */ X(li, {
3618
- value: f,
3621
+ value: h,
3619
3622
  max: 23,
3620
- onChange: (e) => S("h", e)
3623
+ onChange: (e) => T("h", e)
3621
3624
  }),
3622
3625
  /* @__PURE__ */ X("span", {
3623
3626
  className: "text-sm font-medium text-muted-foreground",
3624
3627
  children: ":"
3625
3628
  }),
3626
3629
  /* @__PURE__ */ X(li, {
3627
- value: m,
3630
+ value: v,
3628
3631
  max: 59,
3629
- onChange: (e) => S("m", e)
3632
+ onChange: (e) => T("m", e)
3630
3633
  }),
3631
3634
  /* @__PURE__ */ X("span", {
3632
3635
  className: "text-sm font-medium text-muted-foreground",
3633
3636
  children: ":"
3634
3637
  }),
3635
3638
  /* @__PURE__ */ X(li, {
3636
- value: _,
3639
+ value: b,
3637
3640
  max: 59,
3638
- onChange: (e) => S("s", e)
3641
+ onChange: (e) => T("s", e)
3639
3642
  })
3640
3643
  ]
3641
3644
  })]
@@ -3643,6 +3646,8 @@ function ui({ isoValue: e, onChange: t, label: r, placeholder: i = "Select date
3643
3646
  })]
3644
3647
  });
3645
3648
  }
3649
+ //#endregion
3650
+ //#region src/components/custom/date-time-range-picker.tsx
3646
3651
  var di = n.forwardRef(function({ value: e, onChange: t, className: r, timezone: i, presets: a, maxRangeDays: o }, s) {
3647
3652
  let c = a ?? ai, [l, u] = n.useState(!1), [d, f] = n.useState(e.from), [p, m] = n.useState(e.to);
3648
3653
  n.useEffect(() => {
@@ -3706,7 +3711,7 @@ var di = n.forwardRef(function({ value: e, onChange: t, className: r, timezone:
3706
3711
  children: "Custom range"
3707
3712
  }),
3708
3713
  /* @__PURE__ */ X(ui, {
3709
- isoValue: d,
3714
+ value: d,
3710
3715
  onChange: h,
3711
3716
  label: "From",
3712
3717
  placeholder: "Start date & time",
@@ -3714,7 +3719,7 @@ var di = n.forwardRef(function({ value: e, onChange: t, className: r, timezone:
3714
3719
  maxDate: (/* @__PURE__ */ new Date()).toISOString()
3715
3720
  }),
3716
3721
  /* @__PURE__ */ X(ui, {
3717
- isoValue: p,
3722
+ value: p,
3718
3723
  onChange: m,
3719
3724
  label: "To",
3720
3725
  placeholder: "End date & time",
@@ -4124,20 +4129,20 @@ function Qi(e) {
4124
4129
  };
4125
4130
  }
4126
4131
  var $i = i(function({ children: e, className: t, theme: n, styles: r, projection: i, viewport: o, onViewportChange: c, loading: p = !1, controls: m = !0, tiles: h = Ji, ...g }, _) {
4127
- let v = h === !1 ? [] : h, y = d(null), [b, x] = f(null), [S, C] = f(!1), [w, T] = f(!1), [E, ee] = f(0), D = d(null), O = d(null), k = d(!1), te = o !== void 0 && c !== void 0, A = d(c);
4128
- A.current = c;
4129
- let j = u(() => ({
4132
+ let v = h === !1 ? [] : h, y = d(null), [b, x] = f(null), [S, C] = f(!1), [w, T] = f(!1), [E, D] = f(0), O = d(null), k = d(null), A = d(!1), ee = o !== void 0 && c !== void 0, j = d(c);
4133
+ j.current = c;
4134
+ let M = u(() => ({
4130
4135
  dark: r?.dark ?? qi.dark,
4131
4136
  light: r?.light ?? qi.light
4132
4137
  }), [r]);
4133
4138
  l(_, () => b, [b]);
4134
- let M = a(() => {
4135
- O.current &&= (clearTimeout(O.current), null);
4139
+ let N = a(() => {
4140
+ k.current &&= (clearTimeout(k.current), null);
4136
4141
  }, []);
4137
4142
  s(() => {
4138
4143
  if (!y.current) return;
4139
- let e = v[0]?.url ?? j.light;
4140
- D.current = e;
4144
+ let e = v[0]?.url ?? M.light;
4145
+ O.current = e;
4141
4146
  let t = new He.Map({
4142
4147
  container: y.current,
4143
4148
  style: e,
@@ -4146,40 +4151,40 @@ var $i = i(function({ children: e, className: t, theme: n, styles: r, projection
4146
4151
  ...g,
4147
4152
  ...o
4148
4153
  }), n = () => {
4149
- M(), O.current = setTimeout(() => {
4154
+ N(), k.current = setTimeout(() => {
4150
4155
  T(!0), i && t.setProjection(i);
4151
4156
  }, 100);
4152
4157
  }, r = () => C(!0), a = () => {
4153
- k.current || A.current?.(Qi(t));
4158
+ A.current || j.current?.(Qi(t));
4154
4159
  };
4155
4160
  return t.on("load", r), t.on("styledata", n), t.on("move", a), x(t), () => {
4156
- M(), t.off("load", r), t.off("styledata", n), t.off("move", a), t.remove(), C(!1), T(!1), x(null);
4161
+ N(), t.off("load", r), t.off("styledata", n), t.off("move", a), t.remove(), C(!1), T(!1), x(null);
4157
4162
  };
4158
4163
  }, []), s(() => {
4159
- if (!b || !te || !o || b.isMoving()) return;
4164
+ if (!b || !ee || !o || b.isMoving()) return;
4160
4165
  let e = Qi(b), t = {
4161
4166
  center: o.center ?? e.center,
4162
4167
  zoom: o.zoom ?? e.zoom,
4163
4168
  bearing: o.bearing ?? e.bearing,
4164
4169
  pitch: o.pitch ?? e.pitch
4165
4170
  };
4166
- t.center[0] === e.center[0] && t.center[1] === e.center[1] && t.zoom === e.zoom && t.bearing === e.bearing && t.pitch === e.pitch || (k.current = !0, b.jumpTo(t), k.current = !1);
4171
+ t.center[0] === e.center[0] && t.center[1] === e.center[1] && t.zoom === e.zoom && t.bearing === e.bearing && t.pitch === e.pitch || (A.current = !0, b.jumpTo(t), A.current = !1);
4167
4172
  }, [
4168
4173
  b,
4169
- te,
4174
+ ee,
4170
4175
  o
4171
4176
  ]), s(() => {
4172
4177
  if (!b) return;
4173
- let e = v[E]?.url ?? (n === "dark" ? j.dark : j.light);
4174
- D.current !== e && (M(), D.current = e, T(!1), b.setStyle(e, { diff: !0 }));
4178
+ let e = v[E]?.url ?? (n === "dark" ? M.dark : M.light);
4179
+ O.current !== e && (N(), O.current = e, T(!1), b.setStyle(e, { diff: !0 }));
4175
4180
  }, [
4176
4181
  b,
4177
4182
  E,
4178
4183
  n,
4179
- j,
4180
- M
4184
+ M,
4185
+ N
4181
4186
  ]);
4182
- let N = u(() => ({
4187
+ let P = u(() => ({
4183
4188
  map: b,
4184
4189
  isLoaded: S && w
4185
4190
  }), [
@@ -4188,7 +4193,7 @@ var $i = i(function({ children: e, className: t, theme: n, styles: r, projection
4188
4193
  w
4189
4194
  ]);
4190
4195
  return /* @__PURE__ */ X(Yi.Provider, {
4191
- value: N,
4196
+ value: P,
4192
4197
  children: /* @__PURE__ */ Z("div", {
4193
4198
  ref: y,
4194
4199
  className: Q("relative h-full w-full", t),
@@ -4196,7 +4201,7 @@ var $i = i(function({ children: e, className: t, theme: n, styles: r, projection
4196
4201
  position: "top-right",
4197
4202
  tiles: v,
4198
4203
  tileIndex: E,
4199
- onTileChange: ee
4204
+ onTileChange: D
4200
4205
  }), e] })]
4201
4206
  })
4202
4207
  });
@@ -5065,7 +5070,7 @@ var za = ({ ...e }) => {
5065
5070
  className: "toaster group",
5066
5071
  icons: {
5067
5072
  success: /* @__PURE__ */ X(E, { className: "size-4" }),
5068
- info: /* @__PURE__ */ X(R, { className: "size-4" }),
5073
+ info: /* @__PURE__ */ X(ne, { className: "size-4" }),
5069
5074
  warning: /* @__PURE__ */ X(_e, { className: "size-4" }),
5070
5075
  error: /* @__PURE__ */ X(se, { className: "size-4" }),
5071
5076
  loading: /* @__PURE__ */ X(B, { className: "size-4 animate-spin" })
@@ -5426,6 +5431,6 @@ function So({ className: e, sideOffset: t = 0, children: n, ...r }) {
5426
5431
  }) });
5427
5432
  }
5428
5433
  //#endregion
5429
- export { pt as ActionsMenu, Ot as AdvancedInput, Sn as AdvancedSelect, pi as Alert, gi as AlertAction, Mt as AlertCard, Nt as AlertCardAction, hi as AlertDescription, Vn as AlertDialog, Zn as AlertDialogAction, Qn as AlertDialogCancel, Gn as AlertDialogContent, Xn as AlertDialogDescription, qn as AlertDialogFooter, Kn as AlertDialogHeader, Jn as AlertDialogMedia, Wn as AlertDialogOverlay, Un as AlertDialogPortal, Yn as AlertDialogTitle, Hn as AlertDialogTrigger, mi as AlertTitle, At as Badge, $ as Button, vi as ButtonGroup, bi as ButtonGroupSeparator, yi as ButtonGroupText, ei as Calendar, ti as CalendarDayButton, Sr as Card, Er as CardAction, Dr as CardContent, Tr as CardDescription, Or as CardFooter, Cr as CardHeader, Ln as CardRadioGroup, wr as CardTitle, Ti as ChartContainer, ki as ChartLegend, Ai as ChartLegendContent, Ei as ChartStyle, Di as ChartTooltip, Oi as ChartTooltipContent, Cn as Checkbox, Bn as ColorPicker, an as Command, on as CommandDialog, ln as CommandEmpty, un as CommandGroup, sn as CommandInput, fn as CommandItem, cn as CommandList, dn as CommandSeparator, pn as CommandShortcut, $n as ConfirmPrompt, er as CustomTabs, nr as DataCell, Nn as DataTable, di as DateTimeRangePicker, rr as DefRow, Rt as Dialog, Vt as DialogClose, Ut as DialogContent, qt as DialogDescription, Gt as DialogFooter, Wt as DialogHeader, Ht as DialogOverlay, Bt as DialogPortal, Kt as DialogTitle, zt as DialogTrigger, Xe as DropdownMenu, nt as DropdownMenuCheckboxItem, $e as DropdownMenuContent, et as DropdownMenuGroup, tt as DropdownMenuItem, at as DropdownMenuLabel, Ze as DropdownMenuPortal, rt as DropdownMenuRadioGroup, it as DropdownMenuRadioItem, ot as DropdownMenuSeparator, st as DropdownMenuShortcut, ct as DropdownMenuSub, ut as DropdownMenuSubContent, lt as DropdownMenuSubTrigger, Qe as DropdownMenuTrigger, ir as Empty, ur as EmptyContent, lr as EmptyDescription, ar as EmptyHeader, sr as EmptyMedia, dr as EmptyState, cr as EmptyTitle, fr as FacetedFilter, bt as Field, xt as FieldContent, wt as FieldDescription, Et as FieldError, vt as FieldGroup, St as FieldLabel, _t as FieldLegend, Tt as FieldSeparator, gt as FieldSet, Ct as FieldTitle, Lt as FileUpload, Pn as FormDialog, Mi as HoverCard, Pi as HoverCardContent, Ni as HoverCardTrigger, Jt as Input, Xt as InputGroup, Qt as InputGroupAddon, en as InputGroupButton, nn as InputGroupInput, tn as InputGroupText, rn as InputGroupTextarea, Ri as Item, Wi as ItemActions, Vi as ItemContent, Ui as ItemDescription, Ki as ItemFooter, Fi as ItemGroup, Gi as ItemHeader, Bi as ItemMedia, Ii as ItemSeparator, Hi as ItemTitle, mt as Label, hr as ListCard, mr as ListCardChip, _r as ListCardGrid, pr as ListCardPerson, $i as Map, Ta as MapArc, Ea as MapClusterLayer, pa as MapControls, na as MapMarker, vr as MapMarkerPin, ha as MapPopup, ga as MapRoute, ra as MarkerContent, ca as MarkerLabel, oa as MarkerPopup, sa as MarkerTooltip, yr as NotFound, mn as Popover, _n as PopoverAnchor, gn as PopoverContent, bn as PopoverDescription, vn as PopoverHeader, yn as PopoverTitle, hn as PopoverTrigger, Da as Progress, br as QuickStat, Fn as RadioGroup, In as RadioGroupItem, Oa as Select, Ma as SelectContent, ka as SelectGroup, Pa as SelectItem, Na as SelectLabel, La as SelectScrollDownButton, Ia as SelectScrollUpButton, Fa as SelectSeparator, ja as SelectTrigger, Aa as SelectValue, Ar as SensorCard, ht as Separator, jr as Sheet, Nr as SheetClose, Ir as SheetContent, Br as SheetDescription, Rr as SheetFooter, Lr as SheetHeader, zr as SheetTitle, Mr as SheetTrigger, Vr as SideSheet, Hr as SideSheetSection, Ra as Slider, Je as Spinner, Gr as StatCard, Xr as StatusAvatar, Yr as StatusIcon, Zr as StatusList, Qr as StatusListGroup, $r as StatusListItem, Wa as Stepper, Ya as StepperDescription, qa as StepperIndicator, Ga as StepperItem, Xa as StepperSeparator, Ja as StepperTitle, Ka as StepperTrigger, Za as Switch, wn as Table, En as TableBody, jn as TableCaption, An as TableCell, Dn as TableFooter, kn as TableHead, Tn as TableHeader, On as TableRow, Qa as Tabs, no as TabsContent, eo as TabsList, to as TabsTrigger, Yt as Textarea, ao as Timeline, oo as TimelineContent, so as TimelineDate, co as TimelineHeader, lo as TimelineIndicator, uo as TimelineItem, fo as TimelineSeparator, po as TimelineTitle, za as Toaster, ho as Toggle, _o as ToggleGroup, vo as ToggleGroupItem, bo as Tooltip, So as TooltipContent, yo as TooltipProvider, xo as TooltipTrigger, kt as badgeVariants, _i as buttonGroupVariants, Ye as buttonVariants, xr as cardVariants, Q as cn, Ke as formatBytes, si as navigateRange, oi as presetToRange, $a as tabsListVariants, mo as toggleVariants, qe as useFileUpload, Xi as useMap };
5434
+ export { pt as ActionsMenu, Ot as AdvancedInput, Sn as AdvancedSelect, pi as Alert, gi as AlertAction, Mt as AlertCard, Nt as AlertCardAction, hi as AlertDescription, Vn as AlertDialog, Zn as AlertDialogAction, Qn as AlertDialogCancel, Gn as AlertDialogContent, Xn as AlertDialogDescription, qn as AlertDialogFooter, Kn as AlertDialogHeader, Jn as AlertDialogMedia, Wn as AlertDialogOverlay, Un as AlertDialogPortal, Yn as AlertDialogTitle, Hn as AlertDialogTrigger, mi as AlertTitle, At as Badge, $ as Button, vi as ButtonGroup, bi as ButtonGroupSeparator, yi as ButtonGroupText, ei as Calendar, ti as CalendarDayButton, Sr as Card, Er as CardAction, Dr as CardContent, Tr as CardDescription, Or as CardFooter, Cr as CardHeader, Ln as CardRadioGroup, wr as CardTitle, Ti as ChartContainer, ki as ChartLegend, Ai as ChartLegendContent, Ei as ChartStyle, Di as ChartTooltip, Oi as ChartTooltipContent, Cn as Checkbox, Bn as ColorPicker, an as Command, on as CommandDialog, ln as CommandEmpty, un as CommandGroup, sn as CommandInput, fn as CommandItem, cn as CommandList, dn as CommandSeparator, pn as CommandShortcut, $n as ConfirmPrompt, er as CustomTabs, nr as DataCell, Nn as DataTable, ui as DateTimePicker, di as DateTimeRangePicker, rr as DefRow, Rt as Dialog, Vt as DialogClose, Ut as DialogContent, qt as DialogDescription, Gt as DialogFooter, Wt as DialogHeader, Ht as DialogOverlay, Bt as DialogPortal, Kt as DialogTitle, zt as DialogTrigger, Xe as DropdownMenu, nt as DropdownMenuCheckboxItem, $e as DropdownMenuContent, et as DropdownMenuGroup, tt as DropdownMenuItem, at as DropdownMenuLabel, Ze as DropdownMenuPortal, rt as DropdownMenuRadioGroup, it as DropdownMenuRadioItem, ot as DropdownMenuSeparator, st as DropdownMenuShortcut, ct as DropdownMenuSub, ut as DropdownMenuSubContent, lt as DropdownMenuSubTrigger, Qe as DropdownMenuTrigger, ir as Empty, ur as EmptyContent, lr as EmptyDescription, ar as EmptyHeader, sr as EmptyMedia, dr as EmptyState, cr as EmptyTitle, fr as FacetedFilter, bt as Field, xt as FieldContent, wt as FieldDescription, Et as FieldError, vt as FieldGroup, St as FieldLabel, _t as FieldLegend, Tt as FieldSeparator, gt as FieldSet, Ct as FieldTitle, Lt as FileUpload, Pn as FormDialog, Mi as HoverCard, Pi as HoverCardContent, Ni as HoverCardTrigger, Jt as Input, Xt as InputGroup, Qt as InputGroupAddon, en as InputGroupButton, nn as InputGroupInput, tn as InputGroupText, rn as InputGroupTextarea, Ri as Item, Wi as ItemActions, Vi as ItemContent, Ui as ItemDescription, Ki as ItemFooter, Fi as ItemGroup, Gi as ItemHeader, Bi as ItemMedia, Ii as ItemSeparator, Hi as ItemTitle, mt as Label, hr as ListCard, mr as ListCardChip, _r as ListCardGrid, pr as ListCardPerson, $i as Map, Ta as MapArc, Ea as MapClusterLayer, pa as MapControls, na as MapMarker, vr as MapMarkerPin, ha as MapPopup, ga as MapRoute, ra as MarkerContent, ca as MarkerLabel, oa as MarkerPopup, sa as MarkerTooltip, yr as NotFound, mn as Popover, _n as PopoverAnchor, gn as PopoverContent, bn as PopoverDescription, vn as PopoverHeader, yn as PopoverTitle, hn as PopoverTrigger, Da as Progress, br as QuickStat, Fn as RadioGroup, In as RadioGroupItem, Oa as Select, Ma as SelectContent, ka as SelectGroup, Pa as SelectItem, Na as SelectLabel, La as SelectScrollDownButton, Ia as SelectScrollUpButton, Fa as SelectSeparator, ja as SelectTrigger, Aa as SelectValue, Ar as SensorCard, ht as Separator, jr as Sheet, Nr as SheetClose, Ir as SheetContent, Br as SheetDescription, Rr as SheetFooter, Lr as SheetHeader, zr as SheetTitle, Mr as SheetTrigger, Vr as SideSheet, Hr as SideSheetSection, Ra as Slider, Je as Spinner, Gr as StatCard, Xr as StatusAvatar, Yr as StatusIcon, Zr as StatusList, Qr as StatusListGroup, $r as StatusListItem, Wa as Stepper, Ya as StepperDescription, qa as StepperIndicator, Ga as StepperItem, Xa as StepperSeparator, Ja as StepperTitle, Ka as StepperTrigger, Za as Switch, wn as Table, En as TableBody, jn as TableCaption, An as TableCell, Dn as TableFooter, kn as TableHead, Tn as TableHeader, On as TableRow, Qa as Tabs, no as TabsContent, eo as TabsList, to as TabsTrigger, Yt as Textarea, ao as Timeline, oo as TimelineContent, so as TimelineDate, co as TimelineHeader, lo as TimelineIndicator, uo as TimelineItem, fo as TimelineSeparator, po as TimelineTitle, za as Toaster, ho as Toggle, _o as ToggleGroup, vo as ToggleGroupItem, bo as Tooltip, So as TooltipContent, yo as TooltipProvider, xo as TooltipTrigger, kt as badgeVariants, _i as buttonGroupVariants, Ye as buttonVariants, xr as cardVariants, Q as cn, Ke as formatBytes, si as navigateRange, oi as presetToRange, $a as tabsListVariants, mo as toggleVariants, qe as useFileUpload, Xi as useMap };
5430
5435
 
5431
5436
  //# sourceMappingURL=index.js.map