loon-bulma-react 2026.0.40 → 2026.0.42

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.
@@ -114,7 +114,7 @@ type SelectInputProps<T extends number | string | string[]> = StrictOmit<InputPr
114
114
  * ..</Select.OptGroup>
115
115
  * </Select>
116
116
  */
117
- declare function Select<T extends number | string | string[] = string>({ value, id, name, label, grouped, required, showRequiredOnLabel, errorMessage, infoMessage, multiple, alignment: alignmentProp, size: sizeProp, direction: directionProp, options, children: nodes, helpTag, disabled, keyboardType, title, spellCheck, loading, autoComplete, autofocus, form, inputRef: ref, labelHidden, icon, iconOpen, iconClosed, infoData, useCssArrow, color, onBlur, onFocus, onChange, onKeyDown, onKeyUp, onValueChanged, }: SelectInputProps<T>): import("react/jsx-runtime").JSX.Element;
117
+ declare function Select<T extends number | string | string[] = string>({ value, id, name, label, grouped, required, showRequiredOnLabel, errorMessage, infoMessage, multiple, alignment: alignmentProp, size: sizeProp, direction: directionProp, options, children: nodes, helpTag, disabled, keyboardType, title, spellCheck, loading, autoComplete, autofocus, form, inputRef: ref, labelHidden, icon, infoData, useCssArrow, color, onBlur, onFocus, onChange, onKeyDown, onKeyUp, onValueChanged, }: SelectInputProps<T>): import("react/jsx-runtime").JSX.Element;
118
118
  declare namespace Select {
119
119
  var Option: ({ value, disabled, id, children }: {
120
120
  id?: string;
package/dist/index.js CHANGED
@@ -6100,43 +6100,43 @@ function qd(e, t, n) {
6100
6100
  }
6101
6101
  //#endregion
6102
6102
  //#region lib/internal_functions/createIconsInternal.tsx
6103
- function Jd({ icon: e, error: t, showInfo: n, infoData: r, inputId: i, helpTag: a = void 0, focused: o, hovered: s, disabled: c, loading: l, value: u, iconRight: d = "visible" }) {
6104
- let f, p, m = "control";
6105
- function h() {
6103
+ function Jd({ icon: e, error: t, showInfo: n, infoData: r, inputId: i, helpTag: a = void 0, focused: o, hovered: s, disabled: c, loading: l, value: u, iconRight: d = "visible", type: f = "input" }) {
6104
+ let p, m, h = "control";
6105
+ function g() {
6106
6106
  if (i) {
6107
6107
  let e = document.getElementById(i);
6108
6108
  e && e.focus();
6109
6109
  }
6110
6110
  }
6111
- if (e && typeof e == "string" ? f = /* @__PURE__ */ b("span", {
6111
+ if (e && typeof e == "string" ? p = /* @__PURE__ */ b("span", {
6112
6112
  className: "icon is-left",
6113
6113
  children: /* @__PURE__ */ b("i", {
6114
6114
  className: e,
6115
6115
  children: " "
6116
6116
  })
6117
- }) : e && typeof e != "string" && (f = /* @__PURE__ */ b("span", {
6117
+ }) : e && typeof e != "string" && (p = /* @__PURE__ */ b("span", {
6118
6118
  className: "icon is-left",
6119
6119
  children: /* @__PURE__ */ b(Eo, { icon: e })
6120
- })), e && (m += " has-icons-left"), d === "visible" || r) !n || !r ? p = t === "" ? void 0 : /* @__PURE__ */ b(Eo, { icon: _s }) : (n || r) && (p = Yd(r, h, a)), p &&= (m += " has-icons-right", /* @__PURE__ */ b("span", {
6120
+ })), e && (h += " has-icons-left"), d === "visible" || r) !n || !r ? m = f === "select" ? /* @__PURE__ */ b(Eo, { icon: ps }) : t === "" ? void 0 : /* @__PURE__ */ b(Eo, { icon: _s }) : (n || r) && (m = Yd(r, g, a)), m &&= (h += " has-icons-right", /* @__PURE__ */ b("span", {
6121
6121
  className: "icon is-right",
6122
- children: p
6122
+ children: m
6123
6123
  }));
6124
6124
  else if (typeof d == "function") {
6125
6125
  let e, t, n = "icon is-right";
6126
- [p, e, t = "i"] = d(u, s, c, l, o), e && (n += " is-clickable"), t && (n += Kd(t, !0).replace("is-", "has-text-")), p &&= (m += " has-icons-right", e ? /* @__PURE__ */ b("button", {
6126
+ [m, e, t = "i"] = d(u, s, c, l, o), e && (n += " is-clickable"), t && (n += Kd(t, !0).replace("is-", "has-text-")), m &&= (h += " has-icons-right", e ? /* @__PURE__ */ b("button", {
6127
6127
  onClick: e,
6128
6128
  className: n,
6129
6129
  type: "button",
6130
- children: p
6130
+ children: m
6131
6131
  }) : /* @__PURE__ */ b("span", {
6132
6132
  className: n,
6133
- children: p
6133
+ children: m
6134
6134
  }));
6135
6135
  }
6136
6136
  return [
6137
- m,
6138
- f,
6139
- p
6137
+ h,
6138
+ p,
6139
+ m
6140
6140
  ];
6141
6141
  }
6142
6142
  function Yd(e, t, n) {
@@ -10774,47 +10774,49 @@ function Sh({ children: e, controlClassName: t = "control", direction: n, showRe
10774
10774
  }
10775
10775
  //#endregion
10776
10776
  //#region lib/forms/Select/Select.tsx
10777
- function Ch({ value: e, id: n, name: r, label: i, grouped: a = !1, required: o = !1, showRequiredOnLabel: s = !1, errorMessage: c = "", infoMessage: l = "", multiple: u = !1, alignment: d, size: f, direction: p, options: m = [], children: h = void 0, helpTag: g, disabled: _ = !1, keyboardType: v = "text", title: y, spellCheck: S = !1, loading: C = !1, autoComplete: w = "off", autofocus: T = !1, form: E = void 0, inputRef: D, labelHidden: O, icon: k = Wo, iconOpen: A = zo, iconClosed: j = ps, infoData: M, useCssArrow: N = !1, color: P, onBlur: F, onFocus: I, onChange: L, onKeyDown: R, onKeyUp: ee, onValueChanged: z }) {
10778
- let [B, V] = t.useState(!1), [te, ne] = t.useState(!1), [H, re] = t.useState(!1), U = ve(m), { defaults: ie } = t.useContext(lh), { scheme: ae } = Ne(), oe = f ?? ie.input.size, se = p ?? ie.input.direction, ce = d ?? ie.input.alignment, le = typeof c == "string" ? c : c({
10777
+ function Ch({ value: e, id: n, name: r, label: i, grouped: a = !1, required: o = !1, showRequiredOnLabel: s = !1, errorMessage: c = "", infoMessage: l = "", multiple: u = !1, alignment: d, size: f, direction: p, options: m = [], children: h = void 0, helpTag: g, disabled: _ = !1, keyboardType: v = "text", title: y, spellCheck: S = !1, loading: C = !1, autoComplete: w = "off", autofocus: T = !1, form: E = void 0, inputRef: D, labelHidden: O, icon: k = Wo, infoData: A, useCssArrow: j = !1, color: M, onBlur: N, onFocus: P, onChange: F, onKeyDown: I, onKeyUp: L, onValueChanged: R }) {
10778
+ let [ee, z] = t.useState(!1), [B, V] = t.useState(!1), [te, ne] = t.useState(!1), H = he(m), { defaults: re } = t.useContext(lh), U = f ?? re.input.size, ie = p ?? re.input.direction, ae = d ?? re.input.alignment, oe = typeof c == "string" ? c : c({
10779
10779
  value: e,
10780
- touched: te,
10781
- focused: B,
10780
+ touched: B,
10781
+ focused: ee,
10782
10782
  required: o,
10783
10783
  disabled: _,
10784
10784
  readonly: !1
10785
- }), ue = typeof l == "string" ? l : l(e), de = "select";
10786
- P ? de += Kd(P, !1) : le.length > 0 && (de += " is-danger"), de += $d(oe), de += Zd(ce), u !== !1 && (de += " is-multiple"), C && (de += " is-loading"), N && (de += " has-css-arrow");
10787
- let [fe, pe, me] = Jd({
10785
+ }), se = typeof l == "string" ? l : l(e), ce = "select";
10786
+ M ? ce += Kd(M, !1) : oe.length > 0 && (ce += " is-danger"), ce += $d(U), ce += Zd(ae), u !== !1 && (ce += " is-multiple"), C && (ce += " is-loading"), j && (ce += " has-css-arrow");
10787
+ let [le, ue, de] = Jd({
10788
10788
  icon: k,
10789
- error: le,
10790
- showInfo: ph(B, H),
10789
+ iconRight: "visible",
10790
+ error: oe,
10791
+ showInfo: ph(ee, te),
10791
10792
  inputId: n ?? r,
10792
- infoData: M,
10793
+ infoData: A,
10793
10794
  helpTag: g,
10794
- hovered: H,
10795
+ hovered: te,
10795
10796
  loading: C,
10796
10797
  disabled: _,
10797
10798
  value: e,
10798
- focused: B
10799
+ focused: ee,
10800
+ type: "select"
10799
10801
  });
10800
- fe.includes("has-icons-right") || (fe += " has-icons-right");
10801
- function he(e) {
10802
- te || ne(!0), M ? setTimeout(() => {
10802
+ le.includes("has-icons-right") || (le += " has-icons-right");
10803
+ function fe(e) {
10804
+ B || V(!0), A ? setTimeout(() => {
10803
10805
  let t = document.getElementById(n ?? r);
10804
- document.activeElement !== t && (V(!1), F && F(e));
10805
- }, 333) : (F && F(e), V(!1));
10806
+ document.activeElement !== t && (z(!1), N && N(e));
10807
+ }, 333) : (N && N(e), z(!1));
10806
10808
  }
10807
- function ge(e) {
10808
- V(!0), I && I(e, g);
10809
+ function pe(e) {
10810
+ z(!0), P && P(e, g);
10809
10811
  }
10810
- function _e(t) {
10811
- if (te || ne(!0), L && L(t), u) {
10812
+ function me(t) {
10813
+ if (B || V(!0), F && F(t), u) {
10812
10814
  let e = t.target.selectedOptions, n = [];
10813
10815
  for (let t of e) n.push(t.value);
10814
- z && z(n);
10815
- } else typeof e == "number" && z ? z(+t.target.value) : z && z(t.target.value);
10816
+ R && R(n);
10817
+ } else typeof e == "number" && R ? R(+t.target.value) : R && R(t.target.value);
10816
10818
  }
10817
- function ve(e) {
10819
+ function he(e) {
10818
10820
  if (!e.some((e) => typeof e != "string" && typeof e != "number")) return e.map((e) => /* @__PURE__ */ b(Ch.Option, {
10819
10821
  value: e,
10820
10822
  children: e
@@ -10858,41 +10860,24 @@ function Ch({ value: e, id: n, name: r, label: i, grouped: a = !1, required: o =
10858
10860
  }
10859
10861
  });
10860
10862
  }
10861
- let ye = t.useMemo(() => {
10862
- if (u) return null;
10863
- let e = ae === "dark" ? "has-text-light" : "has-text-dark";
10864
- return P ? e = Kd(P, !0).replace("is-", "has-text-") : c && (e = "has-text-danger"), /* @__PURE__ */ b("span", {
10865
- className: `icon is-right ${oe === "m" || oe === "s" ? "mr-5" : "mr-6"} ${e}`,
10866
- children: /* @__PURE__ */ b(Eo, { icon: B ? A : j })
10867
- });
10868
- }, [
10869
- u,
10870
- B,
10871
- A,
10872
- j,
10873
- c,
10874
- oe,
10875
- P,
10876
- ae
10877
- ]);
10878
10863
  return /* @__PURE__ */ x(Sh, {
10879
10864
  inputId: n ?? r,
10880
10865
  label: i ?? r ?? n,
10881
- direction: se,
10866
+ direction: ie,
10882
10867
  required: o,
10883
- size: oe,
10868
+ size: U,
10884
10869
  labelHidden: O,
10885
- controlClassName: fe,
10870
+ controlClassName: le,
10886
10871
  showRequiredOnLabel: s,
10887
- setHovered: re,
10872
+ setHovered: ne,
10888
10873
  children: [
10889
10874
  /* @__PURE__ */ b("div", {
10890
- className: de,
10875
+ className: ce,
10891
10876
  children: /* @__PURE__ */ x("select", {
10892
10877
  multiple: u !== !1,
10893
10878
  size: u === !1 ? void 0 : u,
10894
10879
  value: e,
10895
- className: de,
10880
+ className: ce,
10896
10881
  id: n ?? r,
10897
10882
  ref: D,
10898
10883
  name: r,
@@ -10904,24 +10889,23 @@ function Ch({ value: e, id: n, name: r, label: i, grouped: a = !1, required: o =
10904
10889
  form: E,
10905
10890
  inputMode: v,
10906
10891
  disabled: _,
10907
- onFocus: ge,
10908
- onBlur: he,
10909
- onKeyDown: R,
10910
- onKeyUp: ee,
10911
- onChange: _e,
10912
- children: [h, U]
10892
+ onFocus: pe,
10893
+ onBlur: fe,
10894
+ onKeyDown: I,
10895
+ onKeyUp: L,
10896
+ onChange: me,
10897
+ children: [h, H]
10913
10898
  })
10914
10899
  }),
10915
- pe,
10916
- !N && ye,
10917
- me,
10918
- le.length > 0 && /* @__PURE__ */ b("p", {
10900
+ ue,
10901
+ !j && de,
10902
+ oe.length > 0 && /* @__PURE__ */ b("p", {
10919
10903
  className: "help is-danger",
10920
- children: le
10904
+ children: oe
10921
10905
  }),
10922
- ue.length > 0 && /* @__PURE__ */ b("p", {
10906
+ se.length > 0 && /* @__PURE__ */ b("p", {
10923
10907
  className: "help is-info",
10924
- children: ue
10908
+ children: se
10925
10909
  })
10926
10910
  ]
10927
10911
  });
@@ -10968,21 +10952,39 @@ function Th(e) {
10968
10952
  show: o
10969
10953
  };
10970
10954
  }
10971
- function Eh({ outerRef: e, children: t }) {
10972
- let { x: n, y: r, show: i } = Th(e);
10973
- if (e === null) return /* @__PURE__ */ b(y, {});
10974
- let a = i ? /* @__PURE__ */ b("div", {
10955
+ function Eh({ outerRef: e, children: n }) {
10956
+ let { x: r, y: i, show: a } = Th(e), o = t.useRef(null), [s, c] = t.useState({
10957
+ left: 0,
10958
+ top: 0
10959
+ });
10960
+ if (t.useLayoutEffect(() => {
10961
+ if (!a || !o.current) return;
10962
+ let e = Number.parseFloat(r), t = Number.parseFloat(i), n = Number.isFinite(e) ? e : 0, s = Number.isFinite(t) ? t : 0, l = o.current.offsetWidth, u = o.current.offsetHeight, d = Math.max(8, window.innerWidth - l - 8), f = Math.max(8, window.innerHeight - u - 8), p = Math.min(Math.max(n, 8), d), m = Math.min(Math.max(s, 8), f);
10963
+ c((e) => e.left === p && e.top === m ? e : {
10964
+ left: p,
10965
+ top: m
10966
+ });
10967
+ }, [
10968
+ a,
10969
+ r,
10970
+ i
10971
+ ]), e === null) return /* @__PURE__ */ b(y, {});
10972
+ let l = a ? /* @__PURE__ */ b("div", {
10973
+ ref: o,
10975
10974
  className: "context-menu",
10976
10975
  "data-lbr-context-menu": "true",
10977
10976
  style: {
10978
10977
  position: "fixed",
10979
- top: r,
10980
- left: n,
10981
- zIndex: 9999
10978
+ top: `${s.top}px`,
10979
+ left: `${s.left}px`,
10980
+ zIndex: 9999,
10981
+ maxWidth: "calc(100vw - 16px)",
10982
+ maxHeight: "calc(100vh - 16px)",
10983
+ overflow: "auto"
10982
10984
  },
10983
- children: typeof t == "function" ? t() : t
10985
+ children: typeof n == "function" ? n() : n
10984
10986
  }) : null;
10985
- return a ? C(a, document.body) : /* @__PURE__ */ b(y, {});
10987
+ return l ? C(l, document.body) : /* @__PURE__ */ b(y, {});
10986
10988
  }
10987
10989
  //#endregion
10988
10990
  //#region lib/hooks/useDebounced.hooks.ts
@@ -16639,7 +16641,7 @@ var Ly = 200, Ry = Object.freeze({
16639
16641
  ESCAPE_KEY: 27
16640
16642
  });
16641
16643
  function zy({ value: e, options: n, id: r, name: i, label: a, required: o = !1, showRequiredOnLabel: s = !1, errorMessage: c = "", infoMessage: l = "", alignment: u, size: d, direction: f, placeholder: p, helpTag: m, disabled: h = !1, loading: g = !1, autofocus: _ = !1, iconRight: v = "visible", labelHidden: S = !1, icon: C = Wo, infoData: w, className: T, color: E, onValueChanged: D, onChange: O, onFocus: k, onBlur: A, onKeyDown: j, onKeyUp: M, onSearch: N = (e, t) => e.toLowerCase().indexOf(JSON.stringify(t).toLowerCase()) !== -1, formatLabel: P = (e) => typeof e == "string" || typeof e == "number" || typeof e == "boolean" ? `${e}` : JSON.stringify(e), formatValue: F = (e) => /* @__PURE__ */ b(y, { children: typeof e == "string" || typeof e == "number" || typeof e == "boolean" ? `${e}` : JSON.stringify(e) }), formatOption: I = (e, t) => /* @__PURE__ */ b(y, { children: typeof e == "string" || typeof e == "number" || typeof e == "boolean" ? `${e}` : JSON.stringify(e) }) }) {
16642
- let [L, R] = t.useState(Te(n)), [ee, z] = t.useState(P(e)), [B, V] = t.useReducer(Vy, By), [te, ne] = t.useState(!1), [H, re] = t.useState(!1), [U, ie] = t.useState(-1), [ae, oe] = t.useState(!1), [se, ce] = t.useState(!1), { defaults: le } = t.useContext(lh), { scheme: ue } = Ne(), de = d ?? le.input.size, fe = f ?? le.input.direction, pe = u ?? le.input.alignment, me = typeof c == "string" ? c : c({
16644
+ let [L, R] = t.useState(we(n)), [ee, z] = t.useState(P(e)), [B, V] = t.useReducer(Vy, By), [te, ne] = t.useState(!1), [H, re] = t.useState(!1), [U, ie] = t.useState(-1), [ae, oe] = t.useState(!1), [se, ce] = t.useState(!1), { defaults: le } = t.useContext(lh), { scheme: ue } = Ne(), de = d ?? le.input.size, fe = f ?? le.input.direction, pe = u ?? le.input.alignment, me = typeof c == "string" ? c : c({
16643
16645
  value: ee,
16644
16646
  touched: ae,
16645
16647
  focused: B.focused,
@@ -16664,22 +16666,11 @@ function zy({ value: e, options: n, id: r, name: i, label: a, required: o = !1,
16664
16666
  loading: g,
16665
16667
  disabled: h,
16666
16668
  value: P(e),
16667
- focused: B.focused
16668
- }), Ce = t.useMemo(() => {
16669
- let e = ue === "dark" ? "has-text-light" : "has-text-dark";
16670
- return E ? e = Kd(E, !0).replace("is-", "has-text-") : c && (e = "has-text-danger"), /* @__PURE__ */ b("span", {
16671
- className: `icon is-right ${e}`,
16672
- style: { right: "1.5em" },
16673
- children: /* @__PURE__ */ b(Eo, { icon: B.focused ? zo : ps })
16674
- });
16675
- }, [
16676
- B.focused,
16677
- c,
16678
- E,
16679
- ue
16680
- ]);
16669
+ focused: B.focused,
16670
+ type: "select"
16671
+ });
16681
16672
  t.useEffect(() => {
16682
- R(Te(n));
16673
+ R(we(n));
16683
16674
  }, [n]), t.useEffect(() => {
16684
16675
  B.focused || z(P(e));
16685
16676
  let t = e ? L.findIndex((t) => t.key === P(e)) : -1;
@@ -16691,7 +16682,7 @@ function zy({ value: e, options: n, id: r, name: i, label: a, required: o = !1,
16691
16682
  let e = ge.current?.offsetParent?.getBoundingClientRect(), t = window.innerHeight - (e?.top ?? 0);
16692
16683
  re(Ly > t && (e?.top ?? 0) > t);
16693
16684
  }, [B.focused]);
16694
- let we = t.useMemo(() => ({
16685
+ let Ce = t.useMemo(() => ({
16695
16686
  position: "absolute",
16696
16687
  width: "100%",
16697
16688
  opacity: +!!B.focused,
@@ -16704,13 +16695,13 @@ function zy({ value: e, options: n, id: r, name: i, label: a, required: o = !1,
16704
16695
  marginBottom: H ? "5px" : void 0,
16705
16696
  marginTop: H ? void 0 : "5px"
16706
16697
  }), [H, B]);
16707
- function Te(e) {
16698
+ function we(e) {
16708
16699
  return e.map((e, t) => ({
16709
16700
  key: P(e),
16710
16701
  value: I(e, t)
16711
16702
  }));
16712
16703
  }
16713
- function Ee(t) {
16704
+ function Te(t) {
16714
16705
  z(P(e)), w && !te ? setTimeout(() => {
16715
16706
  let e = document.getElementById(r ?? i);
16716
16707
  document.activeElement !== e && (V({
@@ -16722,13 +16713,13 @@ function zy({ value: e, options: n, id: r, name: i, label: a, required: o = !1,
16722
16713
  isFocused: !1
16723
16714
  }));
16724
16715
  }
16725
- function De(e) {
16716
+ function Ee(e) {
16726
16717
  ae || oe(!0), k && k(e, m), V({
16727
16718
  type: "toggleFocus",
16728
16719
  isFocused: !0
16729
16720
  });
16730
16721
  }
16731
- function Oe() {
16722
+ function De() {
16732
16723
  n.forEach((e, t) => {
16733
16724
  let r = P(e);
16734
16725
  r === L[B.focusIndex]?.key && (V({
@@ -16737,13 +16728,13 @@ function zy({ value: e, options: n, id: r, name: i, label: a, required: o = !1,
16737
16728
  }), ie(t), z(r), D && n[t] && D(n[t]));
16738
16729
  });
16739
16730
  }
16740
- function ke() {
16731
+ function Oe() {
16741
16732
  V({
16742
16733
  type: "toggleFocus",
16743
16734
  isFocused: !1
16744
- }), R(L), Oe();
16735
+ }), R(L), De();
16745
16736
  }
16746
- function Ae(e) {
16737
+ function ke(e) {
16747
16738
  let t = ge.current, r = B.focusIndex;
16748
16739
  switch (e.keyCode) {
16749
16740
  case Ry.DOWN_ARROW:
@@ -16765,7 +16756,7 @@ function zy({ value: e, options: n, id: r, name: i, label: a, required: o = !1,
16765
16756
  }), ge.current = t;
16766
16757
  break;
16767
16758
  case Ry.ENTER_KEY:
16768
- e.preventDefault(), B.focusIndex > -1 && B.focusIndex < n.length && ke();
16759
+ e.preventDefault(), B.focusIndex > -1 && B.focusIndex < n.length && Oe();
16769
16760
  break;
16770
16761
  case Ry.ESCAPE_KEY:
16771
16762
  e.target.blur(), V({
@@ -16776,13 +16767,13 @@ function zy({ value: e, options: n, id: r, name: i, label: a, required: o = !1,
16776
16767
  }
16777
16768
  j && j(e);
16778
16769
  }
16779
- function je(e) {
16780
- e.length === 0 ? R(Te(n)) : R(Te(n.filter((t) => N(e, t))));
16770
+ function Ae(e) {
16771
+ e.length === 0 ? R(we(n)) : R(we(n.filter((t) => N(e, t))));
16781
16772
  }
16782
- function Me(e) {
16783
- ae || oe(!0), O && O(e), z(e.target.value), je(e.target.value);
16773
+ function je(e) {
16774
+ ae || oe(!0), O && O(e), z(e.target.value), Ae(e.target.value);
16784
16775
  }
16785
- function Pe() {
16776
+ function Me() {
16786
16777
  V({
16787
16778
  type: "toggleFocus",
16788
16779
  isFocused: !0
@@ -16791,7 +16782,7 @@ function zy({ value: e, options: n, id: r, name: i, label: a, required: o = !1,
16791
16782
  focusIndex: L.findIndex((e) => e.key === ee.toString())
16792
16783
  });
16793
16784
  }
16794
- function Fe(e) {
16785
+ function Pe(e) {
16795
16786
  V({
16796
16787
  type: "setFocusIndex",
16797
16788
  focusIndex: e
@@ -16819,12 +16810,12 @@ function zy({ value: e, options: n, id: r, name: i, label: a, required: o = !1,
16819
16810
  id: r ?? i,
16820
16811
  disabled: h,
16821
16812
  autoFocus: _,
16822
- onChange: Me,
16823
- onClick: Pe,
16813
+ onChange: je,
16814
+ onClick: Me,
16824
16815
  onKeyUp: M,
16825
- onKeyDown: Ae,
16826
- onFocus: De,
16827
- onBlur: Ee
16816
+ onKeyDown: ke,
16817
+ onFocus: Ee,
16818
+ onBlur: Te
16828
16819
  }),
16829
16820
  !B.focused && /* @__PURE__ */ b("output", {
16830
16821
  className: ye,
@@ -16835,7 +16826,7 @@ function zy({ value: e, options: n, id: r, name: i, label: a, required: o = !1,
16835
16826
  }),
16836
16827
  /* @__PURE__ */ b("div", {
16837
16828
  className: "bulma-box",
16838
- style: we,
16829
+ style: Ce,
16839
16830
  ref: ge,
16840
16831
  onMouseEnter: () => ne(!0),
16841
16832
  onMouseLeave: () => ne(!1),
@@ -16846,16 +16837,15 @@ function zy({ value: e, options: n, id: r, name: i, label: a, required: o = !1,
16846
16837
  let n = "combobox-listitem";
16847
16838
  return t === U && (n += " is-selected"), /* @__PURE__ */ b("li", {
16848
16839
  className: n,
16849
- onClick: () => ke(),
16840
+ onClick: () => Oe(),
16850
16841
  onMouseDown: (e) => e.preventDefault(),
16851
- onMouseEnter: () => Fe(t),
16842
+ onMouseEnter: () => Pe(t),
16852
16843
  children: e.value
16853
16844
  }, e.key);
16854
16845
  })
16855
16846
  })
16856
16847
  }),
16857
16848
  xe,
16858
- Ce,
16859
16849
  Se
16860
16850
  ] }),
16861
16851
  me.length > 0 && /* @__PURE__ */ b("p", {
@@ -16911,7 +16901,8 @@ function Uy({ value: e, options: n, id: r, name: i, label: a, required: o = !1,
16911
16901
  loading: g,
16912
16902
  disabled: h,
16913
16903
  value: M(e),
16914
- focused: F
16904
+ focused: F,
16905
+ type: "select"
16915
16906
  });
16916
16907
  t.useEffect(() => {
16917
16908
  let e = U.current?.offsetParent?.getBoundingClientRect(), t = window.innerHeight - (e?.top ?? 0);
@@ -16945,19 +16936,6 @@ function Uy({ value: e, options: n, id: r, name: i, label: a, required: o = !1,
16945
16936
  function xe(e) {
16946
16937
  L || R(!0), E && E(e, m), I(!0);
16947
16938
  }
16948
- let Se = t.useMemo(() => {
16949
- let e = ce === "dark" ? "has-text-light" : "has-text-dark";
16950
- return w ? e = Kd(w, !0).replace("is-", "has-text-") : c && (e = "has-text-danger"), /* @__PURE__ */ b("span", {
16951
- className: `icon is-right ${e}`,
16952
- style: { right: "1.5em" },
16953
- children: /* @__PURE__ */ b(Eo, { icon: F ? zo : ps })
16954
- });
16955
- }, [
16956
- F,
16957
- c,
16958
- w,
16959
- ce
16960
- ]);
16961
16939
  return /* @__PURE__ */ x(Sh, {
16962
16940
  inputId: r ?? i,
16963
16941
  label: a ?? i ?? r,
@@ -17021,7 +16999,6 @@ function Uy({ value: e, options: n, id: r, name: i, label: a, required: o = !1,
17021
16999
  className: "icon is-left",
17022
17000
  children: me
17023
17001
  }),
17024
- Se,
17025
17002
  he
17026
17003
  ] }),
17027
17004
  ae.length > 0 && /* @__PURE__ */ b("p", {
@@ -18919,7 +18896,7 @@ var tx = class e {
18919
18896
  ul: !0
18920
18897
  }, ax = 1, ox = 2, sx = 4;
18921
18898
  function cx(e, t, n) {
18922
- return t == null ? e && e.whitespace == "pre" ? ax | ox : n & ~sx : (t ? ax : 0) | (t === "full" ? ox : 0);
18899
+ return t == null ? e && e.whitespace == "pre" ? 3 : n & -5 : (t ? ax : 0) | (t === "full" ? ox : 0);
18923
18900
  }
18924
18901
  var lx = class {
18925
18902
  constructor(e, t, n, r, i, a) {
@@ -19335,10 +19312,10 @@ var Dx = 1, Ox = 2, kx = 4, Ax = 8, jx = class {
19335
19312
  return (this.delInfo & Ax) > 0;
19336
19313
  }
19337
19314
  get deletedBefore() {
19338
- return (this.delInfo & (Dx | kx)) > 0;
19315
+ return (this.delInfo & 5) > 0;
19339
19316
  }
19340
19317
  get deletedAfter() {
19341
- return (this.delInfo & (Ox | kx)) > 0;
19318
+ return (this.delInfo & 6) > 0;
19342
19319
  }
19343
19320
  get deletedAcross() {
19344
19321
  return (this.delInfo & kx) > 0;
@@ -20713,7 +20690,7 @@ var JS = 1, YS = 2, XS = 4, ZS = class extends PS {
20713
20690
  }
20714
20691
  setSelection(e) {
20715
20692
  if (e.$from.doc != this.doc) throw RangeError("Selection passed to setSelection must point at the current document");
20716
- return this.curSelection = e, this.curSelectionFor = this.steps.length, this.updated = (this.updated | JS) & ~YS, this.storedMarks = null, this;
20693
+ return this.curSelection = e, this.curSelectionFor = this.steps.length, this.updated = (this.updated | JS) & -3, this.storedMarks = null, this;
20717
20694
  }
20718
20695
  get selectionSet() {
20719
20696
  return (this.updated & JS) > 0;
@@ -20734,7 +20711,7 @@ var JS = 1, YS = 2, XS = 4, ZS = class extends PS {
20734
20711
  return (this.updated & YS) > 0;
20735
20712
  }
20736
20713
  addStep(e, t) {
20737
- super.addStep(e, t), this.updated &= ~YS, this.storedMarks = null;
20714
+ super.addStep(e, t), this.updated &= -3, this.storedMarks = null;
20738
20715
  }
20739
20716
  setTime(e) {
20740
20717
  return this.time = e, this;
@@ -13,6 +13,7 @@ type ParamType<T extends InputValueType = InputValueType> = {
13
13
  infoData?: React.ReactNode | (() => void) | undefined;
14
14
  inputId?: string | undefined;
15
15
  helpTag?: string | undefined;
16
+ type?: 'input' | 'select' | 'textarea' | 'checkbox' | 'radiobutton';
16
17
  /**
17
18
  * `hidden`: geen icon rechts
18
19
  * `visible`: standaard gedrag, een check of een error icoon, of een info icoon als showInfo/infoData is meegegeven
@@ -31,6 +32,6 @@ type ParamType<T extends InputValueType = InputValueType> = {
31
32
  /** functie voor inputs om de juiste icons te maken
32
33
  * INTERN GEBRUIK!
33
34
  */
34
- export declare function createInputIcons_INTERNAL<T extends InputValueType = InputValueType>({ icon, error, showInfo, infoData, inputId, helpTag, focused, hovered, disabled, loading, value, iconRight, }: ParamType<T>): [containerClass: string, iconLeft: React.ReactNode | undefined, iconRight: React.ReactNode | undefined];
35
+ export declare function createInputIcons_INTERNAL<T extends InputValueType = InputValueType>({ icon, error, showInfo, infoData, inputId, helpTag, focused, hovered, disabled, loading, value, iconRight, type, }: ParamType<T>): [containerClass: string, iconLeft: React.ReactNode | undefined, iconRight: React.ReactNode | undefined];
35
36
  export declare function createShowInfo_INTERNAL(infoData?: React.ReactNode | ((helpTag?: string) => void) | undefined, restoreFocus?: Function | undefined, helpTag?: string | undefined): React.ReactNode;
36
37
  export {};
@@ -402,7 +402,7 @@ h6,
402
402
  table.table tbody tr td,
403
403
  table.table tbody tr th,
404
404
  table.table thead tr th {
405
- vertical-align: middle;
405
+ vertical-align: top;
406
406
  }
407
407
 
408
408
  .modal-container {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "loon-bulma-react",
3
3
  "private": false,
4
- "version": "2026.0.40",
4
+ "version": "2026.0.42",
5
5
  "description": "Bulma &amp; React componenten voor Loon Salarissoftware",
6
6
  "type": "module",
7
7
  "license": "MIT",
@@ -56,54 +56,54 @@
56
56
  "@tiptap/extension-text-style": "^3.22.4",
57
57
  "@tiptap/extension-underline": "^3.22.4",
58
58
  "@tiptap/react": "^3.22.4",
59
- "@vitejs/plugin-react": "^6.0.1",
59
+ "@vitejs/plugin-react": "^6.0.2",
60
60
  "bulma": "^1.0.4",
61
- "date-fns": "^4.1.0",
62
- "npm": "^11.13.0",
61
+ "date-fns": "^4.3.0",
62
+ "npm": "^11.16.0",
63
63
  "rc-tooltip": "^6.4.0",
64
- "react-is": "^19.2.5",
64
+ "react-is": "^19.2.6",
65
65
  "react-syntax-highlighter": "^16.1.1"
66
66
  },
67
67
  "devDependencies": {
68
- "@eslint/compat": "^2.0.5",
68
+ "@eslint/compat": "^2.1.0",
69
69
  "@eslint/eslintrc": "^3.3.4",
70
70
  "@eslint/js": "^9.39.2",
71
71
  "@testing-library/jest-dom": "^6.9.1",
72
72
  "@testing-library/react": "^16.3.2",
73
73
  "@testing-library/user-event": "^14.6.1",
74
- "@types/node": "^25.6.0",
75
- "@types/react": "^19.2.14",
74
+ "@types/node": "^25.9.1",
75
+ "@types/react": "^19.2.15",
76
76
  "@types/react-dom": "^19.2.3",
77
77
  "@types/react-is": "^19.2.0",
78
78
  "@types/react-syntax-highlighter": "^15.5.13",
79
79
  "@typescript-eslint/parser": "^8.58.0",
80
- "@vitejs/plugin-react-swc": "^4.3.0",
81
- "@vitest/ui": "^4.1.5",
80
+ "@vitejs/plugin-react-swc": "^4.3.1",
81
+ "@vitest/ui": "^4.1.7",
82
82
  "esbuild": "^0.28.0",
83
83
  "eslint": "^9.39.2",
84
84
  "eslint-config-prettier": "^10.1.8",
85
85
  "eslint-plugin-import": "^2.32.0",
86
86
  "eslint-plugin-node": "^11.1.0",
87
- "eslint-plugin-prettier": "^5.5.5",
87
+ "eslint-plugin-prettier": "^5.5.6",
88
88
  "eslint-plugin-promise": "^7.3.0",
89
89
  "eslint-plugin-react": "^7.37.5",
90
90
  "eslint-plugin-react-hooks": "^7.1.1",
91
91
  "eslint-plugin-react-refresh": "^0.5.2",
92
92
  "eslint-plugin-standard": "^5.0.0",
93
93
  "eslint-plugin-testing-library": "^7.16.0",
94
- "globals": "^17.5.0",
94
+ "globals": "^17.6.0",
95
95
  "happy-dom": "^20.9.0",
96
96
  "prettier": "^3.8.3",
97
- "react": "^19.2.5",
98
- "react-dom": "^19.2.5",
97
+ "react": "^19.2.6",
98
+ "react-dom": "^19.2.6",
99
99
  "rollup-plugin-copy": "^3.5.0",
100
- "sass": "^1.99.0",
100
+ "sass": "^1.100.0",
101
101
  "typescript": "^6.0.3",
102
- "typescript-eslint": "^8.59.1",
103
- "vite": "^8.0.10",
102
+ "typescript-eslint": "^8.60.0",
103
+ "vite": "^8.0.14",
104
104
  "vite-plugin-lib-inject-css": "^2.2.2",
105
105
  "vite-tsconfig-paths": "^6.1.1",
106
- "vitest": "^4.1.5"
106
+ "vitest": "^4.1.7"
107
107
  },
108
108
  "peerDependencies": {
109
109
  "bulma": "^1.0.4",