@base-framework/ui 1.0.286 → 1.0.287

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.
@@ -1,12 +1,12 @@
1
- import { Div as n, H5 as J, P as m, I as p, Li as U, Span as i, Ul as R, Button as f, OnState as v, Label as V, H2 as C, Form as K, Header as I, Footer as A, A as q, H3 as Q, Checkbox as X, Input as x, Img as Z, Nav as ee, UseParent as H, IfState as te, Time as se, Dialog as oe } from "@base-framework/atoms";
2
- import { Atom as c, Component as w, Html as L, Dom as ne, base as le, Data as $, Builder as Y, Jot as k, Events as re, DateTime as F } from "@base-framework/base";
3
- import { P as S, b as ae, R as ie } from "./range-calendar-DW0cMOJy.js";
1
+ import { Div as n, H5 as Q, P as m, I as p, Li as V, Span as a, Ul as q, Button as f, OnState as A, Label as H, H2 as v, Form as X, Header as D, Footer as L, A as Y, H3 as Z, Checkbox as ee, Input as x, Img as te, Nav as se, UseParent as _, OnStateOpen as P, Time as oe, Dialog as ne } from "@base-framework/atoms";
2
+ import { Atom as c, Component as w, Html as M, Dom as le, base as re, Data as I, Builder as W, Jot as C, Events as $, DateTime as F } from "@base-framework/base";
3
+ import { P as k, b as ie, R as ae } from "./range-calendar-DW0cMOJy.js";
4
4
  import { C as ce, F as ue, a as y } from "./veil-tVDPinrr.js";
5
5
  import { B as h, I as g } from "./buttons-BKLL4I6r.js";
6
6
  import { Icons as d } from "./icons.es.js";
7
7
  import { Timer as de, List as he, DynamicTime as fe } from "@base-framework/organisms";
8
- import { F as P } from "./format-DnofNaaz.js";
9
- const M = {
8
+ import { F as N } from "./format-DnofNaaz.js";
9
+ const z = {
10
10
  info: {
11
11
  borderColor: "border-blue-500",
12
12
  bgColor: "bg-muted/10",
@@ -34,11 +34,11 @@ const M = {
34
34
  }
35
35
  }, me = (e, t) => n({ class: `flex items-center justify-center h-6 w-6 mr-3 ${t}` }, [
36
36
  p({ html: e })
37
- ]), pe = (e) => J({ class: "font-semibold" }, e), ge = (e) => m({ class: "text-sm text-muted-foreground" }, e), kt = c(({ title: e, description: t, icon: s, type: o = "default" }) => {
38
- const { borderColor: l, bgColor: r, iconColor: a } = M[o] || M.default;
37
+ ]), pe = (e) => Q({ class: "font-semibold" }, e), ge = (e) => m({ class: "text-sm text-muted-foreground" }, e), kt = c(({ title: e, description: t, icon: s, type: o = "default" }) => {
38
+ const { borderColor: l, bgColor: r, iconColor: i } = z[o] || z.default;
39
39
  return n({ class: `flex items-start p-4 border rounded-lg ${r} ${l}` }, [
40
40
  // Icon and content
41
- s && me(s, a),
41
+ s && me(s, i),
42
42
  n({ class: "flex flex-col" }, [
43
43
  pe(e),
44
44
  ge(t)
@@ -63,20 +63,20 @@ class St extends w {
63
63
  this.prepareDestroy(), this.removeContext();
64
64
  const t = this.panel, s = this.removingClass;
65
65
  if (!s) {
66
- L.removeElement(t);
66
+ M.removeElement(t);
67
67
  return;
68
68
  }
69
- ne.addClass(t, s), le.on("animationend", t, (o) => L.removeElement(t));
69
+ le.addClass(t, s), re.on("animationend", t, (o) => M.removeElement(t));
70
70
  }
71
71
  }
72
- const be = (e) => i({ class: "ml-auto text-xs tracking-widest opacity-60" }, e), xe = (e) => i({ class: "flex w-4 h-4", html: e }), we = (e) => i({ class: "flex-auto" }, e), ye = (e, t) => U({
72
+ const be = (e) => a({ class: "ml-auto text-xs tracking-widest opacity-60" }, e), xe = (e) => a({ class: "flex w-4 h-4", html: e }), we = (e) => a({ class: "flex-auto" }, e), ye = (e, t) => V({
73
73
  class: "relative flex cursor-pointer hover:bg-muted/50 select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",
74
74
  click: () => t(e)
75
75
  }, [
76
76
  e.icon && xe(e.icon),
77
77
  we(e.label),
78
78
  e.shortcut && be(e.shortcut)
79
- ]), ve = (e, t) => R({ class: "grid gap-2" }, [
79
+ ]), ve = (e, t) => q({ class: "grid gap-2" }, [
80
80
  e.map((s) => ye(s, t))
81
81
  ]), Ce = (e) => n({ class: "w-full z-10" }, [
82
82
  n({
@@ -90,12 +90,12 @@ const be = (e) => i({ class: "ml-auto text-xs tracking-widest opacity-60" }, e),
90
90
  focus:outline-none transition duration-150 ease-in-out`,
91
91
  click: s
92
92
  }, [
93
- e && i(e),
93
+ e && a(e),
94
94
  t && p({ html: t })
95
95
  ]), Se = ({ onSelect: e }) => n([
96
- v(
96
+ A(
97
97
  "open",
98
- (t, s, o) => t ? new S({
98
+ (t, s, o) => t ? new k({
99
99
  cache: "dropdown",
100
100
  parent: o,
101
101
  button: o.button
@@ -119,7 +119,7 @@ class Dt extends w {
119
119
  * @returns {Data}
120
120
  */
121
121
  setData() {
122
- return new $({
122
+ return new I({
123
123
  groups: this.groups || []
124
124
  });
125
125
  }
@@ -167,8 +167,8 @@ class Dt extends w {
167
167
  ]);
168
168
  }
169
169
  }
170
- const De = c((e, t) => n({ ...e, class: "flex flex-auto flex-col space-y-2" }, t)), Ie = c((e, t) => V({ ...e, class: "flex auto text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70" }, t)), $e = c((e, t) => m({ ...e, class: "text-sm text-muted-foreground italic" }, t)), Te = c((e, t) => m({ ...e, class: "text-sm text-destructive" }, t)), It = c((e, t = []) => ce({ class: "space-y-0", margin: "m-0", padding: "p-0" }, [
171
- e.title && C({ class: "text-lg font-semibold py-4 px-6" }, e.title),
170
+ const De = c((e, t) => n({ ...e, class: "flex flex-auto flex-col space-y-2" }, t)), Ie = c((e, t) => H({ ...e, class: "flex auto text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70" }, t)), $e = c((e, t) => m({ ...e, class: "text-sm text-muted-foreground italic" }, t)), Te = c((e, t) => m({ ...e, class: "text-sm text-destructive" }, t)), It = c((e, t = []) => ce({ class: "space-y-0", margin: "m-0", padding: "p-0" }, [
171
+ e.title && v({ class: "text-lg font-semibold py-4 px-6" }, e.title),
172
172
  e.description && m({ class: "text-sm text-muted-foreground pb-4 px-6 max-w-[700px]" }, e.description),
173
173
  ...t
174
174
  ])), $t = c((e, t = []) => ue({ label: e.label, description: e.description, class: "py-4 px-6", border: e.border }, [
@@ -176,7 +176,7 @@ const De = c((e, t) => n({ ...e, class: "flex flex-auto flex-col space-y-2" }, t
176
176
  ])), Tt = c((e, t = []) => {
177
177
  const s = e.border ? "border-t" : "";
178
178
  return n({ ...e, class: `flex flex-col pb-4 px-6 space-y-4 ${s} ${e.class || ""}` }, t);
179
- }), Be = (e) => e.tag === "input" || e.tag === "select" || e.tag === "textarea", _ = (e, t, s) => e.map((o) => !o || (o.children && o.children.length > 0 && (o.children = _(o.children, t, s)), !o.required) ? o : Be(o) ? {
179
+ }), Be = (e) => e.tag === "input" || e.tag === "select" || e.tag === "textarea", G = (e, t, s) => e.map((o) => !o || (o.children && o.children.length > 0 && (o.children = G(o.children, t, s)), !o.required) ? o : Be(o) ? {
180
180
  ...o,
181
181
  aria: {
182
182
  invalid: ["hasError"]
@@ -184,7 +184,7 @@ const De = c((e, t) => n({ ...e, class: "flex flex-auto flex-col space-y-2" }, t
184
184
  invalid: s,
185
185
  input: t
186
186
  } : o), Fe = c((e, t) => {
187
- const l = _(t, (r) => {
187
+ const l = G(t, (r) => {
188
188
  r.target.checkValidity() && e.setError(null);
189
189
  }, (r) => {
190
190
  e.setError(r.target.validationMessage);
@@ -234,22 +234,22 @@ const De = c((e, t) => n({ ...e, class: "flex flex-auto flex-col space-y-2" }, t
234
234
  }
235
235
  ), Ae = (e, t, s = null) => {
236
236
  e.target.checkValidity() && (e.preventDefault(), s && s(e, t));
237
- }, W = c(
238
- (e, t) => K({ ...e, submit: (s, o) => Ae(s, o, e.submit), class: `w-full ${e.class ?? ""}` }, t)
237
+ }, J = c(
238
+ (e, t) => X({ ...e, submit: (s, o) => Ae(s, o, e.submit), class: `w-full ${e.class ?? ""}` }, t)
239
239
  ), Ft = c((e, t) => n({ ...e, class: `space-y-6 p-4 md:p-6 divide-y ${e.class || ""}` }, t)), At = c((e, t = []) => n({ class: "space-y-3 py-4" }, [
240
- e.title && C({ class: "font-semibold" }, e.title),
240
+ e.title && v({ class: "font-semibold" }, e.title),
241
241
  ...t
242
242
  ])), Lt = (e, t) => n({ class: "flex justify-between" }, [
243
- i({ class: "text-muted-foreground" }, e),
244
- i(t)
243
+ a({ class: "text-muted-foreground" }, e),
244
+ a(t)
245
245
  ]), Pt = (e, t) => n({ class: "flex" }, [
246
- i({ class: "text-muted-foreground mr-8 w-24 truncate text-nowrap" }, e),
247
- i(t)
248
- ]), Le = ({ title: e, description: t, back: s, icon: o, options: l = [] }) => I({ class: "modal-header bg-background/80 backdrop-blur-md sticky flex flex-none items-center py-4 px-6 z-10" }, [
246
+ a({ class: "text-muted-foreground mr-8 w-24 truncate text-nowrap" }, e),
247
+ a(t)
248
+ ]), Le = ({ title: e, description: t, back: s, icon: o, options: l = [] }) => D({ class: "modal-header bg-background/80 backdrop-blur-md sticky flex flex-none items-center py-4 px-6 z-10" }, [
249
249
  /**
250
250
  * Back Button
251
251
  */
252
- s && h({ variant: "icon", icon: d.arrows.left, class: "mr-2 p-0 flex sm:hidden", click: (r, a) => a.close() }),
252
+ s && h({ variant: "icon", icon: d.arrows.left, class: "mr-2 p-0 flex sm:hidden", click: (r, i) => i.close() }),
253
253
  /**
254
254
  * Icon
255
255
  */
@@ -259,7 +259,7 @@ const De = c((e, t) => n({ ...e, class: "flex flex-auto flex-col space-y-2" }, t
259
259
  */
260
260
  n({ class: "flex flex-auto flex-row justify-between w-full ml-2 gap-2" }, [
261
261
  n({ class: "flex flex-auto flex-col" }, [
262
- C({ class: "text-lg font-semibold m-0 truncate" }, e),
262
+ v({ class: "text-lg font-semibold m-0 truncate" }, e),
263
263
  t && n({ class: "text-sm text-muted-foreground truncate" }, t)
264
264
  ]),
265
265
  ...l
@@ -271,12 +271,12 @@ const De = c((e, t) => n({ ...e, class: "flex flex-auto flex-col space-y-2" }, t
271
271
  s.target === o.panel && (s.preventDefault(), s.stopPropagation(), o.state.open = !1);
272
272
  }
273
273
  }, [
274
- W({ class: "modal-content relative bg-background z-[1] flex flex-auto flex-col space-y-4", submit: (s, o) => e.onSubmit && e.onSubmit(o) }, [
274
+ J({ class: "modal-content relative bg-background z-[1] flex flex-auto flex-col space-y-4", submit: (s, o) => e.onSubmit && e.onSubmit(o) }, [
275
275
  Le(e),
276
276
  n({ class: "modal-body flex flex-grow flex-col overflow-y-auto py-0 px-6 z-0" }, t),
277
- A({ class: "modal-footer sticky bg-background/80 backdrop-blur-md flex flex-none justify-between py-4 px-6 z-10" }, e.buttons)
277
+ L({ class: "modal-footer sticky bg-background/80 backdrop-blur-md flex flex-none justify-between py-4 px-6 z-10" }, e.buttons)
278
278
  ])
279
- ])), Me = (e) => Y.render(e, app.root);
279
+ ])), Me = (e) => W.render(e, app.root);
280
280
  class Mt extends w {
281
281
  /**
282
282
  * This will declare the props for the compiler.
@@ -437,7 +437,7 @@ class Mt extends w {
437
437
  this.panel.hidePopover(), this.state.open = !1, typeof this.onClose == "function" && this.onClose(this), document.documentElement.style.overflowY = "auto";
438
438
  }
439
439
  }
440
- const N = {
440
+ const E = {
441
441
  info: {
442
442
  bgColor: "bg-muted/10",
443
443
  borderColor: "border-blue-500",
@@ -463,9 +463,9 @@ const N = {
463
463
  borderColor: "border",
464
464
  iconColor: "text-muted-foreground"
465
465
  }
466
- }, Ne = (e) => I({ class: "flex justify-center" }, [
467
- Q({ class: "text-lg font-bold mb-0" }, e)
468
- ]), ze = c(({ href: e, class: t }, s) => q({
466
+ }, Ne = (e) => D({ class: "flex justify-center" }, [
467
+ Z({ class: "text-lg font-bold mb-0" }, e)
468
+ ]), ze = c(({ href: e, class: t }, s) => Y({
469
469
  class: `bg-popover text-popover-foreground relative flex flex-auto flex-col justify-start shadow-lg pointer-events-auto p-4 border rounded-md min-w-[340px] max-w-[450px] mt-4 ${t}`,
470
470
  href: e,
471
471
  animateIn: "pullRightIn",
@@ -526,7 +526,7 @@ class je extends w {
526
526
  */
527
527
  getTypeStyles() {
528
528
  const t = this.type || "default";
529
- return N[t] || N.default;
529
+ return E[t] || E.default;
530
530
  }
531
531
  /**
532
532
  * This will get the buttons for the notification.
@@ -556,7 +556,7 @@ class je extends w {
556
556
  this.title && Ne(this.title)
557
557
  ]),
558
558
  m({ class: "text-base text-muted-foreground m-0 pr-12" }, this.description),
559
- (this.primary || this.secondary) && A({ class: "margin-top-24 flex align-center" }, this.getButtons())
559
+ (this.primary || this.secondary) && L({ class: "margin-top-24 flex align-center" }, this.getButtons())
560
560
  ])
561
561
  ]),
562
562
  h({
@@ -613,7 +613,7 @@ class Nt extends w {
613
613
  this.list.delete(t.id);
614
614
  }
615
615
  }
616
- const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
616
+ const j = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
617
617
  class: 'text-sm gap-1 font-medium leading-none disabled:cursor-not-allowed disabled:opacity-70 flex flex-col items-center justify-between rounded-md border-2 bg-popover p-4 hover:bg-accent hover:text-accent-foreground data-[state="active"]:border-primary [&:has([data-state="active"])]:border-primary',
618
618
  onState: ["method", { active: e }],
619
619
  dataSet: ["method", ["state", e, "active"]],
@@ -622,17 +622,17 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
622
622
  }
623
623
  }, [
624
624
  g(s),
625
- i(t)
625
+ a(t)
626
626
  ])), Ue = (e) => {
627
627
  var o;
628
628
  const t = document.documentElement;
629
- if (e === "system" && (e = (o = globalThis.matchMedia) != null && o.call(globalThis, "(prefers-color-scheme: dark)").matches ? "dark" : "light"), z && !z("(prefers-color-scheme: " + e + ")").matches) {
629
+ if (e === "system" && (e = (o = globalThis.matchMedia) != null && o.call(globalThis, "(prefers-color-scheme: dark)").matches ? "dark" : "light"), j && !j("(prefers-color-scheme: " + e + ")").matches) {
630
630
  t.classList.add(e);
631
631
  return;
632
632
  }
633
633
  const s = e === "light" ? "dark" : "light";
634
634
  t.classList.remove(s);
635
- }, zt = k(
635
+ }, zt = C(
636
636
  {
637
637
  /**
638
638
  * This will render the component.
@@ -693,7 +693,7 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
693
693
  s.toggle("active"), this.checkbox.checked = s.active, this.change && this.change(s.active, t, this);
694
694
  }
695
695
  }, [
696
- X({
696
+ ee({
697
697
  cache: "checkbox",
698
698
  class: "opacity-0 absolute top-0 left-0 bottom-0 right-0 w-full h-full",
699
699
  /**
@@ -704,14 +704,14 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
704
704
  bind: this.bind,
705
705
  required: this.required
706
706
  }),
707
- i({
707
+ a({
708
708
  class: "absolute h-5 w-5 bg-background rounded-full shadow-md transform transition-transform",
709
709
  onState: ["active", { "translate-x-[22px]": !0, "translate-x-[2px]": !1 }]
710
710
  })
711
711
  ]);
712
712
  }
713
713
  }
714
- ), D = {
714
+ ), S = {
715
715
  ONLINE: "online",
716
716
  OFFLINE: "offline",
717
717
  BUSY: "busy",
@@ -726,12 +726,12 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
726
726
  }), Ot = ({ propName: e = "status" } = {}) => n({
727
727
  class: "absolute bottom-0 right-0 w-3 h-3 border-2 rounded-full",
728
728
  onSet: [e, {
729
- [b.ONLINE]: D.ONLINE,
730
- [b.OFFLINE]: D.OFFLINE,
731
- [b.BUSY]: D.BUSY,
732
- [b.AWAY]: D.AWAY
729
+ [b.ONLINE]: S.ONLINE,
730
+ [b.OFFLINE]: S.OFFLINE,
731
+ [b.BUSY]: S.BUSY,
732
+ [b.AWAY]: S.AWAY
733
733
  }]
734
- }), Ut = k(
734
+ }), Ut = C(
735
735
  {
736
736
  /**
737
737
  * Get the initial state for the component.
@@ -751,7 +751,7 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
751
751
  */
752
752
  openFileBrowse() {
753
753
  const e = this.input;
754
- e && (e.value = "", re.trigger("click", e));
754
+ e && (e.value = "", $.trigger("click", e));
755
755
  },
756
756
  /**
757
757
  * Get the URL for the uploaded file.
@@ -788,13 +788,13 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
788
788
  s.preventDefault(), s.stopPropagation(), this.openFileBrowse();
789
789
  }
790
790
  }, [
791
- v(
791
+ A(
792
792
  "loaded",
793
- (s) => s ? Z({
793
+ (s) => s ? te({
794
794
  // @ts-ignore
795
795
  src: this.src,
796
796
  class: "absolute inset-0 w-full h-full object-cover rounded-full"
797
- }) : V({
797
+ }) : H({
798
798
  htmlFor: e,
799
799
  class: "z-10 flex flex-col items-center justify-center text-sm text-muted-foreground group-hover:text-primary"
800
800
  }, [
@@ -806,22 +806,22 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
806
806
  ]);
807
807
  }
808
808
  }
809
- ), Ve = (e, t) => q(
809
+ ), Ve = (e, t) => Y(
810
810
  {
811
811
  href: e,
812
812
  "aria-current": t === "Breadcrumb" && "page",
813
813
  // Only set aria-current on the last item
814
814
  class: "text-muted-foreground font-medium hover:text-foreground"
815
815
  },
816
- [i(t)]
816
+ [a(t)]
817
817
  ), qe = () => g({
818
818
  class: "mx-3 text-muted-foreground",
819
819
  "aria-hidden": !0,
820
820
  size: "xs"
821
821
  }, d.chevron.single.right), He = (e) => n({ class: "flex items-center" }, [
822
- e.href ? Ve(e.href, e.label) : i(e.label),
822
+ e.href ? Ve(e.href, e.label) : a(e.label),
823
823
  e.separator && qe()
824
- ]), Rt = k(
824
+ ]), Rt = C(
825
825
  {
826
826
  /**
827
827
  * Set initial data
@@ -829,7 +829,7 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
829
829
  * @returns {Data}
830
830
  */
831
831
  setData() {
832
- return new $({
832
+ return new I({
833
833
  // @ts-ignore
834
834
  items: this.items || []
835
835
  });
@@ -841,7 +841,7 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
841
841
  */
842
842
  render() {
843
843
  const e = this.data.items.length - 1;
844
- return ee(
844
+ return se(
845
845
  {
846
846
  "aria-label": "Breadcrumb",
847
847
  class: "flex items-center space-x-1 text-sm"
@@ -860,7 +860,7 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
860
860
  );
861
861
  }
862
862
  }
863
- ), E = {
863
+ ), O = {
864
864
  xs: "h-1 w-1",
865
865
  sm: "h-2 w-2",
866
866
  md: "h-4 w-4",
@@ -869,8 +869,8 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
869
869
  "2xl": "h-16 w-16",
870
870
  "3xl": "h-24 w-24",
871
871
  default: "h-4 w-4"
872
- }, Ye = (e) => E[e] || E.default, _e = ({ index: e, size: t }) => n({ class: `${t} rounded-full bg-muted cursor-pointer` }, [
873
- i({
872
+ }, Ye = (e) => O[e] || O.default, _e = ({ index: e, size: t }) => n({ class: `${t} rounded-full bg-muted cursor-pointer` }, [
873
+ a({
874
874
  class: "block w-full h-full rounded-full transition-colors",
875
875
  onSet: ["activeIndex", {
876
876
  "bg-primary": e,
@@ -883,7 +883,7 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
883
883
  ]), We = (e, t) => Array.from({ length: e }, (s, o) => _e({
884
884
  index: o,
885
885
  size: t
886
- })), Vt = k(
886
+ })), Vt = C(
887
887
  {
888
888
  /**
889
889
  * Defines component data (props).
@@ -891,7 +891,7 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
891
891
  * @returns {Data}
892
892
  */
893
893
  setData() {
894
- return new $({
894
+ return new I({
895
895
  // @ts-ignore
896
896
  count: this.count || 4,
897
897
  // total dots
@@ -921,22 +921,22 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
921
921
  click: e
922
922
  },
923
923
  [
924
- i({ onState: ["selectedLabel", (t) => t || "Select item..."] }),
924
+ a({ onState: ["selectedLabel", (t) => t || "Select item..."] }),
925
925
  p({ html: d.chevron.upDown })
926
926
  ]
927
- ), Je = (e, t, s) => U({
927
+ ), Je = (e, t, s) => V({
928
928
  class: "flex flex-auto items-center cursor-pointer p-2 hover:bg-muted/50 rounded-sm",
929
929
  click: () => t(e),
930
930
  onState: [s, "selectedValue", { "bg-secondary": e.value }]
931
931
  }, [
932
- e.icon && i({ class: "mr-2 flex items-baseline" }, [g({ size: "xs" }, e.icon)]),
933
- i({ class: "text-base font-normal" }, e.label)
932
+ e.icon && a({ class: "mr-2 flex items-baseline" }, [g({ size: "xs" }, e.icon)]),
933
+ a({ class: "text-base font-normal" }, e.label)
934
934
  ]), Ke = (e, t) => n({ class: "w-full border rounded-md" }, [
935
- R({ class: "max-h-60 overflow-y-auto p-2 grid gap-1", for: ["items", (s) => Je(s, e, t)] })
935
+ q({ class: "max-h-60 overflow-y-auto p-2 grid gap-1", for: ["items", (s) => Je(s, e, t)] })
936
936
  ]), Qe = ({ onSelect: e, state: t }) => n({ class: "flex flex-auto flex-col" }, [
937
- v(
937
+ A(
938
938
  "open",
939
- (s, o, l) => s ? new S({
939
+ (s, o, l) => s ? new k({
940
940
  cache: "dropdown",
941
941
  parent: l,
942
942
  button: l.button
@@ -944,7 +944,7 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
944
944
  Ke(e, t)
945
945
  ]) : null
946
946
  )
947
- ]), qt = k(
947
+ ]), qt = C(
948
948
  {
949
949
  /**
950
950
  * This will set up the data.
@@ -952,7 +952,7 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
952
952
  * @returns {Data}
953
953
  */
954
954
  setData() {
955
- return new $({
955
+ return new I({
956
956
  // @ts-ignore
957
957
  items: this.items || []
958
958
  });
@@ -1046,26 +1046,26 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
1046
1046
  ]);
1047
1047
  }
1048
1048
  }
1049
- ), G = ({ icon: e, click: t, ariaLabel: s }) => h({
1049
+ ), K = ({ icon: e, click: t, ariaLabel: s }) => h({
1050
1050
  variant: "icon",
1051
1051
  class: "flex flex-none",
1052
1052
  click: t,
1053
1053
  icon: e,
1054
1054
  "aria-label": s
1055
- }), Xe = ({ click: e }) => G({
1055
+ }), Xe = ({ click: e }) => K({
1056
1056
  icon: d.circleMinus,
1057
1057
  click: e,
1058
1058
  ariaLabel: "Decrement"
1059
- }), Ze = ({ click: e }) => G({
1059
+ }), Ze = ({ click: e }) => K({
1060
1060
  icon: d.circlePlus,
1061
1061
  click: e,
1062
1062
  ariaLabel: "Increment"
1063
- }), et = ({ bind: e, min: t, max: s, readonly: o = !1 }) => H(({ state: l }) => x({
1063
+ }), et = ({ bind: e, min: t, max: s, readonly: o = !1 }) => _(({ state: l }) => x({
1064
1064
  value: ["[[count]]", l],
1065
1065
  bind: e,
1066
- blur: (r, { state: a }) => {
1066
+ blur: (r, { state: i }) => {
1067
1067
  let u = parseInt(r.target.value, 10);
1068
- isNaN(u) && (u = t ?? 0), t !== void 0 && (u = Math.max(u, t)), s !== void 0 && (u = Math.min(u, s)), a.count = u;
1068
+ isNaN(u) && (u = t ?? 0), t !== void 0 && (u = Math.max(u, t)), s !== void 0 && (u = Math.min(u, s)), i.count = u;
1069
1069
  },
1070
1070
  class: "flex flex-auto text-lg font-medium bg-input text-center border min-w-0",
1071
1071
  readonly: o,
@@ -1117,20 +1117,18 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
1117
1117
  click: s
1118
1118
  }, [
1119
1119
  tt({ bind: e, required: t }),
1120
- i({
1120
+ a({
1121
1121
  onState: ["selectedDate", (o) => o ? F.format("standard", o) : "Pick a date"]
1122
1122
  }),
1123
1123
  p({ html: d.calendar.days })
1124
- ]), ot = ({ handleDateSelect: e, blockPriorDates: t }) => te(
1125
- "open",
1126
- !0,
1127
- (s, o, l) => new S({
1124
+ ]), ot = ({ handleDateSelect: e, blockPriorDates: t }) => P(
1125
+ (s, o, l) => new k({
1128
1126
  cache: "dropdown",
1129
1127
  parent: l,
1130
1128
  button: l.panel,
1131
1129
  size: "fit"
1132
1130
  }, [
1133
- new ae({
1131
+ new ie({
1134
1132
  selectedDate: l.state.selectedDate,
1135
1133
  selectedCallBack: e,
1136
1134
  blockPriorDates: t
@@ -1165,7 +1163,7 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
1165
1163
  */
1166
1164
  render() {
1167
1165
  const e = (s, { state: o }) => o.toggle("open"), t = (s) => {
1168
- console.log(this, this.data), this.state.selectedDate = s, this.state.open = !1, this.input.value = s, typeof this.onChange == "function" && this.onChange(s);
1166
+ this.state.selectedDate = s, this.state.open = !1, this.input.value = s, $.trigger("change", this.input), typeof this.onChange == "function" && this.onChange(s);
1169
1167
  };
1170
1168
  return n({ class: "relative w-full max-w-[320px]" }, [
1171
1169
  st({
@@ -1190,28 +1188,25 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
1190
1188
  click: s
1191
1189
  }, [
1192
1190
  nt({ bind: e, required: t }),
1193
- H(({ state: o }) => [
1194
- i(P.date(["[[start]]", o], "Start Date")),
1195
- i(" - "),
1196
- i(P.date(["[[end]]", o], "End Date"))
1191
+ _(({ state: o }) => [
1192
+ a(N.date(["[[start]]", o], "Start Date")),
1193
+ a(" - "),
1194
+ a(N.date(["[[end]]", o], "End Date"))
1197
1195
  ]),
1198
1196
  p({ html: d.calendar.days })
1199
- ]), rt = ({ handleDateSelect: e, blockPriorDates: t }) => v(
1200
- "open",
1201
- (s, o, l) => s ? new S({
1202
- cache: "dropdown",
1203
- parent: l,
1204
- button: l.panel,
1205
- size: "xl"
1206
- }, [
1207
- new ie({
1208
- startDate: l.state.start,
1209
- endDate: l.state.end,
1210
- onRangeSelect: e,
1211
- blockPriorDates: t
1212
- })
1213
- ]) : null
1214
- ), _t = y(
1197
+ ]), rt = ({ handleDateSelect: e, blockPriorDates: t }) => P((s, o, l) => new k({
1198
+ cache: "dropdown",
1199
+ parent: l,
1200
+ button: l.panel,
1201
+ size: "xl"
1202
+ }, [
1203
+ new ae({
1204
+ startDate: l.state.start,
1205
+ endDate: l.state.end,
1206
+ onRangeSelect: e,
1207
+ blockPriorDates: t
1208
+ })
1209
+ ])), _t = y(
1215
1210
  {
1216
1211
  /**
1217
1212
  * The initial state of the DateRangePicker.
@@ -1244,7 +1239,7 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
1244
1239
  */
1245
1240
  render() {
1246
1241
  const e = (s, { state: o }) => o.toggle("open"), t = (s, o) => {
1247
- this.state.start = s, this.state.end = o, this.state.open = !1, this.input.value = `${s}-${o}`, typeof this.onChange == "function" && this.onChange({ start: s, end: o }, this.parent);
1242
+ this.state.start = s, this.state.end = o, this.state.open = !1, this.input.value = `${s}-${o}`, $.trigger("change", this.input), typeof this.onChange == "function" && this.onChange({ start: s, end: o }, this.parent);
1248
1243
  };
1249
1244
  return n({ class: "relative w-full max-w-[320px]" }, [
1250
1245
  lt({
@@ -1259,7 +1254,7 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
1259
1254
  ]);
1260
1255
  }
1261
1256
  }
1262
- ), Wt = ({ dateTime: e = "", remoteTimeZone: t = "America/Denver", filter: s = null }) => se([
1257
+ ), Wt = ({ dateTime: e = "", remoteTimeZone: t = "America/Denver", filter: s = null }) => oe([
1263
1258
  new fe({
1264
1259
  dateTime: e,
1265
1260
  filter: s || ((o) => {
@@ -1268,7 +1263,7 @@ const z = globalThis.matchMedia, T = c(({ value: e, label: t, icon: s }) => f({
1268
1263
  })
1269
1264
  })
1270
1265
  ]);
1271
- function at({ bind: e, required: t }) {
1266
+ function it({ bind: e, required: t }) {
1272
1267
  return x({
1273
1268
  cache: "input",
1274
1269
  class: "opacity-0 absolute top-0 left-0 w-full h-full pointer-events-none",
@@ -1276,15 +1271,15 @@ function at({ bind: e, required: t }) {
1276
1271
  required: t
1277
1272
  });
1278
1273
  }
1279
- function it({ bind: e, required: t, toggleOpen: s }) {
1274
+ function at({ bind: e, required: t, toggleOpen: s }) {
1280
1275
  return f(
1281
1276
  {
1282
1277
  class: "relative flex items-center gap-2 w-full justify-between border bg-input hover:bg-muted rounded-md h-10 px-4 py-2",
1283
1278
  click: s
1284
1279
  },
1285
1280
  [
1286
- at({ bind: e, required: t }),
1287
- i({
1281
+ it({ bind: e, required: t }),
1282
+ a({
1288
1283
  onState: ["selectedTime", (o) => o || "Pick a time"]
1289
1284
  }),
1290
1285
  p({ html: d.clock })
@@ -1295,20 +1290,19 @@ function B({ items: e, handleTimeSelect: t, state: s, stateValue: o, pad: l = !1
1295
1290
  return n(
1296
1291
  { class: "flex flex-col max-h-[200px] overflow-y-auto" },
1297
1292
  e.map((r) => {
1298
- let a = l ? r.toString().padStart(2, "0") : r.toString();
1293
+ let i = l ? r.toString().padStart(2, "0") : r.toString();
1299
1294
  return f({
1300
- text: a,
1295
+ text: i,
1301
1296
  class: "hover:bg-muted/50 rounded-md px-2 py-1",
1302
- click: () => t({ [o]: a }),
1303
- onState: [s, o, { "bg-muted": a }]
1297
+ click: () => t({ [o]: i }),
1298
+ onState: [s, o, { "bg-muted": i }]
1304
1299
  });
1305
1300
  })
1306
1301
  );
1307
1302
  }
1308
1303
  function ct({ handleTimeSelect: e }) {
1309
- return v(
1310
- "open",
1311
- (t, s, o) => t ? new S(
1304
+ return P(
1305
+ (t, s, o) => new k(
1312
1306
  {
1313
1307
  cache: "dropdown",
1314
1308
  parent: o,
@@ -1350,18 +1344,18 @@ function ct({ handleTimeSelect: e }) {
1350
1344
  ]
1351
1345
  )
1352
1346
  ]
1353
- ) : null
1347
+ )
1354
1348
  );
1355
1349
  }
1356
- function j(e) {
1350
+ function U(e) {
1357
1351
  if (!e)
1358
1352
  return { hour: null, minute: null, meridian: null };
1359
1353
  const t = /^(\d{1,2}):(\d{2})(?::(\d{2}))?\s?(AM|PM)?$/i, s = e.match(t);
1360
1354
  if (!s)
1361
1355
  return { hour: null, minute: null, meridian: null };
1362
- let [, o, l, , r] = s, a = parseInt(o, 10), u = parseInt(l, 10);
1363
- return a < 0 || a > 23 || u < 0 || u > 59 ? { hour: null, minute: null, meridian: null } : (r ? (r = r.toUpperCase(), r === "PM" && a < 12 ? a += 12 : r === "AM" && a === 12 && (a = 12)) : a === 0 ? (r = "AM", a = 12) : a < 12 ? r = "AM" : a === 12 ? r = "PM" : (r = "PM", a -= 12), {
1364
- hour: a.toString().padStart(2, "0"),
1356
+ let [, o, l, , r] = s, i = parseInt(o, 10), u = parseInt(l, 10);
1357
+ return i < 0 || i > 23 || u < 0 || u > 59 ? { hour: null, minute: null, meridian: null } : (r ? (r = r.toUpperCase(), r === "PM" && i < 12 ? i += 12 : r === "AM" && i === 12 && (i = 12)) : i === 0 ? (r = "AM", i = 12) : i < 12 ? r = "AM" : i === 12 ? r = "PM" : (r = "PM", i -= 12), {
1358
+ hour: i.toString().padStart(2, "0"),
1365
1359
  minute: u.toString().padStart(2, "0"),
1366
1360
  meridian: r
1367
1361
  });
@@ -1374,7 +1368,7 @@ const Gt = y(
1374
1368
  * @member {object} state
1375
1369
  */
1376
1370
  state() {
1377
- const e = this.selectedTime ?? null, { hour: t, minute: s, meridian: o } = j(e);
1371
+ const e = this.selectedTime ?? null, { hour: t, minute: s, meridian: o } = U(e);
1378
1372
  return {
1379
1373
  selectedTime: e,
1380
1374
  open: !1,
@@ -1390,7 +1384,7 @@ const Gt = y(
1390
1384
  */
1391
1385
  after() {
1392
1386
  if (this.input.value) {
1393
- const { hour: e, minute: t, meridian: s } = j(this.input.value);
1387
+ const { hour: e, minute: t, meridian: s } = U(this.input.value);
1394
1388
  this.state.set({
1395
1389
  hour: e,
1396
1390
  minute: t,
@@ -1408,13 +1402,13 @@ const Gt = y(
1408
1402
  const e = (s, { state: o }) => o.toggle("open"), t = ({ hour: s, minute: o, meridian: l }) => {
1409
1403
  if (s && (this.state.hour = s), o && (this.state.minute = o), l && (this.state.meridian = l), this.state.hour && this.state.minute && this.state.meridian) {
1410
1404
  const r = `${this.state.hour}:${this.state.minute} ${this.state.meridian}`;
1411
- this.state.selectedTime = r, this.state.open = !1, this.input.value = r, typeof this.change == "function" && this.change(r);
1405
+ this.state.selectedTime = r, this.state.open = !1, this.input.value = r, $.trigger("change", this.input), typeof this.change == "function" && this.change(r);
1412
1406
  }
1413
1407
  };
1414
1408
  return n(
1415
1409
  { class: "relative w-full max-w-[320px]" },
1416
1410
  [
1417
- it({
1411
+ at({
1418
1412
  toggleOpen: e,
1419
1413
  bind: this.bind,
1420
1414
  required: this.required
@@ -1428,9 +1422,9 @@ const Gt = y(
1428
1422
  }
1429
1423
  ), ut = (e, t) => n({ class: `hidden md:flex items-start justify-center w-6 h-6 mr-3 ${t}` }, [
1430
1424
  g({ size: "lg" }, e)
1431
- ]), dt = ({ title: e }) => I({ class: "flex flex-auto items-center" }, [
1432
- C({ class: "text-lg font-semibold" }, e)
1433
- ]), ht = c((e, t) => oe(
1425
+ ]), dt = ({ title: e }) => D({ class: "flex flex-auto items-center" }, [
1426
+ v({ class: "text-lg font-semibold" }, e)
1427
+ ]), ht = c((e, t) => ne(
1434
1428
  {
1435
1429
  class: `fixed pullUpIn z-30 w-[98%] border md:w-full max-w-lg bg-popover text-foreground shadow-lg duration-200
1436
1430
  rounded-lg flex flex-auto flex-col
@@ -1448,11 +1442,11 @@ const Gt = y(
1448
1442
  e.description && m({ class: "flex flex-auto flex-col text-sm text-muted-foreground" }, e.description),
1449
1443
  n({ class: "flex flex-auto flex-col text-sm text-muted-foreground" }, t)
1450
1444
  ]),
1451
- e.buttons && A({ class: "flex flex-col-reverse sm:flex-row sm:justify-end mt-6 gap-2 sm:gap-0 sm:space-x-2" }, e.buttons)
1445
+ e.buttons && L({ class: "flex flex-col-reverse sm:flex-row sm:justify-end mt-6 gap-2 sm:gap-0 sm:space-x-2" }, e.buttons)
1452
1446
  ])
1453
1447
  ])
1454
1448
  ]
1455
- )), ft = (e) => Y.render(e, app.root), O = {
1449
+ )), ft = (e) => W.render(e, app.root), R = {
1456
1450
  info: {
1457
1451
  borderColor: "border-blue-500",
1458
1452
  bgColor: "bg-muted/10",
@@ -1496,10 +1490,10 @@ class mt extends w {
1496
1490
  render() {
1497
1491
  const t = (u) => {
1498
1492
  u.target === this.panel && this.close();
1499
- }, { borderColor: s, bgColor: o, iconColor: l } = O[this.type] || O.default, r = `${this.getMainClass()} ${o} ${s}`, a = this.title || "Dialog Title";
1493
+ }, { borderColor: s, bgColor: o, iconColor: l } = R[this.type] || R.default, r = `${this.getMainClass()} ${o} ${s}`, i = this.title || "Dialog Title";
1500
1494
  return ht({
1501
1495
  class: r,
1502
- title: a,
1496
+ title: i,
1503
1497
  click: t,
1504
1498
  icon: this.icon,
1505
1499
  iconColor: l,
@@ -1583,15 +1577,15 @@ class Jt extends mt {
1583
1577
  }
1584
1578
  }
1585
1579
  const Kt = c((e, t = []) => n({ class: "w-full max-w-md p-6 m-auto" }, [
1586
- W({ class: "flex flex-auto flex-col" }, [
1580
+ J({ class: "flex flex-auto flex-col" }, [
1587
1581
  n({ class: "flex flex-auto flex-col space-y-4" }, [
1588
1582
  n({ class: "flex flex-auto items-center justify-center" }, [
1589
1583
  e.icon && n({ class: "w-16 h-16 mb-2 text-primary" }, [
1590
1584
  g(e.icon)
1591
1585
  ])
1592
1586
  ]),
1593
- I({ class: "py-4 text-center" }, [
1594
- C({ class: "text-xl font-bold" }, e.title),
1587
+ D({ class: "py-4 text-center" }, [
1588
+ v({ class: "text-xl font-bold" }, e.title),
1595
1589
  m({ class: "pb-8 text-muted-foreground" }, e.description || ""),
1596
1590
  ...t
1597
1591
  ])
@@ -1629,14 +1623,14 @@ export {
1629
1623
  Tt as i,
1630
1624
  Fe as j,
1631
1625
  Bt as k,
1632
- W as l,
1626
+ J as l,
1633
1627
  Ft as m,
1634
1628
  At as n,
1635
1629
  je as o,
1636
1630
  Et as p,
1637
1631
  jt as q,
1638
1632
  Ot as r,
1639
- D as s,
1633
+ S as s,
1640
1634
  b as t,
1641
1635
  Re as u,
1642
1636
  Vt as v,
package/dist/index.es.js CHANGED
@@ -3,7 +3,7 @@ import { B as d, I as g, L as C } from "./buttons-BKLL4I6r.js";
3
3
  import { C as T, F as D, V as I, a as b } from "./veil-tVDPinrr.js";
4
4
  import { C as F, d as P, D as B, c as k, E as M, F as f, H as x, I as N, M as v, N as y, P as h, R as L, T as W, a as H, b as A, U as R, W as w } from "./inputs-DYxmO1rQ.js";
5
5
  import { Icons as G } from "./icons.es.js";
6
- import { A as E, B as V, C as j, w as q, J, y as z, z as K, E as Q, G as _, D as X, m as Y, n as Z, O as $, K as aa, v as ea, c as sa, a as oa, b as ta, Q as ra, l as na, g as la, i as ia, h as pa, j as ma, e as ua, k as da, F as ga, d as Ca, f as ca, L as Ta, x as Da, M as Ia, o as ba, N as Sa, P as Fa, s as Pa, t as Ba, S as ka, q as Ma, r as fa, T as xa, H as Na, I as va, p as ya, u as ha } from "./empty-state-BcVcVLhU.js";
6
+ import { A as E, B as V, C as j, w as q, J, y as z, z as K, E as Q, G as _, D as X, m as Y, n as Z, O as $, K as aa, v as ea, c as sa, a as oa, b as ta, Q as ra, l as na, g as la, i as ia, h as pa, j as ma, e as ua, k as da, F as ga, d as Ca, f as ca, L as Ta, x as Da, M as Ia, o as ba, N as Sa, P as Fa, s as Pa, t as Ba, S as ka, q as Ma, r as fa, T as xa, H as Na, I as va, p as ya, u as ha } from "./empty-state-D09aUoDA.js";
7
7
  import { A as Wa, b as Ha, C as Aa, D as Ra, a as wa, F as Ua, M as Ga, P as Oa, R as Ea, c as Va, g as ja, p as qa } from "./range-calendar-DW0cMOJy.js";
8
8
  import { B as za, p as Ka, C as Qa, j as _a, D as Xa, m as Ya, k as Za, H as $a, I as ae, N as ee, O as se, P as oe, S as te, n as re, o as ne, t as le, s as ie, q as pe, r as me, T as ue, l as de, U as ge, W as Ce, f as ce, h as Te, i as De, c as Ie, d as be, b as Se, e as Fe, a as Pe, g as Be } from "./signature-panel-BEO99NlI.js";
9
9
  import { B as Me, I as fe, M as xe, d as Ne, e as ve, g as ye, N as he, b as Le, a as We, f as He, P as Ae, c as Re, S as we, T as Ue } from "./mobile-nav-wrapper-C7RyGC5a.js";
@@ -1,4 +1,4 @@
1
- import { A as s, B as t, C as r, w as e, J as i, y as n, z as m, E as l, G as C, D as d, m as S, n as p, O as u, K as D, v as c, c as g, a as F, b as T, Q as P, l as A, g as f, i as w, h as I, j as b, e as y, k as B, F as M, d as k, f as x, L, x as v, M as E, o as N, N as R, P as U, s as h, t as G, S as O, q as j, r as q, T as z, H, I as J, p as K, u as Q } from "./empty-state-BcVcVLhU.js";
1
+ import { A as s, B as t, C as r, w as e, J as i, y as n, z as m, E as l, G as C, D as d, m as S, n as p, O as u, K as D, v as c, c as g, a as F, b as T, Q as P, l as A, g as f, i as w, h as I, j as b, e as y, k as B, F as M, d as k, f as x, L, x as v, M as E, o as N, N as R, P as U, s as h, t as G, S as O, q as j, r as q, T as z, H, I as J, p as K, u as Q } from "./empty-state-D09aUoDA.js";
2
2
  import { A as V, P as W, g as X } from "./range-calendar-DW0cMOJy.js";
3
3
  export {
4
4
  s as Alert,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@base-framework/ui",
3
- "version": "1.0.286",
3
+ "version": "1.0.287",
4
4
  "description": "This is a UI package that adds components and atoms that use Tailwind CSS and a theme based on Shadcn.",
5
5
  "main": "./dist/index.es.js",
6
6
  "scripts": {