@hortiview/shared-components 2.10.1 → 2.11.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.
Files changed (64) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/README.md +29 -13
  3. package/dist/assets/GenericTable.css +1 -1
  4. package/dist/assets/stepper.css +1 -1
  5. package/dist/components/AlertBanner/AlertBanner.test.js +1 -1
  6. package/dist/components/AlertBanner/LinkBanner.test.js +1 -1
  7. package/dist/components/BaseView/BaseView.test.js +1 -1
  8. package/dist/components/BasicHeading/BasicHeading.js +27 -27
  9. package/dist/components/BasicHeading/BasicHeading.test.js +1 -1
  10. package/dist/components/BlockView/BlockView.test.js +1 -1
  11. package/dist/components/ChipCard/ChipCard.test.js +1 -1
  12. package/dist/components/ContextMenu/ContextMenu.test.js +1 -1
  13. package/dist/components/DeleteModal/DeleteModal.test.js +1 -1
  14. package/dist/components/Disclaimer/Disclaimer.test.js +1 -1
  15. package/dist/components/EmptyView/EmptyView.test.js +1 -1
  16. package/dist/components/Filter/Filter.test.js +1 -1
  17. package/dist/components/FormComponents/FormCheckBox/FormCheckBox.test.js +1 -1
  18. package/dist/components/FormComponents/FormDatePicker/FormDatePicker.test.js +1 -1
  19. package/dist/components/FormComponents/FormNumber/FormNumber.test.js +1 -1
  20. package/dist/components/FormComponents/FormRadio/FormRadio.test.js +1 -1
  21. package/dist/components/FormComponents/FormSelect/FormSelect.test.js +2 -2
  22. package/dist/components/FormComponents/FormSlider/FormSlider.test.js +1 -1
  23. package/dist/components/FormComponents/FormText/FormText.test.js +1 -1
  24. package/dist/components/FormComponents/FormToggle/FormToggle.test.js +1 -1
  25. package/dist/components/GenericTable/GenericTable.js +1 -1
  26. package/dist/components/GenericTable/GenericTable.test.js +1 -1
  27. package/dist/components/GenericTable/GenericTableService.js +37 -31
  28. package/dist/components/GenericTable/Mobile/GenericCard.test.js +1 -1
  29. package/dist/components/GenericTable/Mobile/GenericCardList.test.js +1 -1
  30. package/dist/components/HashTabView/HashTabView.test.js +1 -1
  31. package/dist/components/HeaderFilter/HeaderFilter.test.js +1 -1
  32. package/dist/components/Iconify/Iconify.test.js +1 -1
  33. package/dist/components/InfoCard/InfoCard.test.js +1 -1
  34. package/dist/components/InfoGroup/InfoGroup.test.js +1 -1
  35. package/dist/components/ListArea/ListArea.test.js +1 -1
  36. package/dist/components/LoadingSpinner/Big/BigLoadingSpinner.test.js +1 -1
  37. package/dist/components/LoadingSpinner/Default/LoadingSpinner.test.js +1 -1
  38. package/dist/components/Modal/Modal.d.ts +3 -1
  39. package/dist/components/Modal/Modal.js +111 -110
  40. package/dist/components/ModulePadding/ModulePadding.test.js +1 -1
  41. package/dist/components/OfflineView/OfflineView.test.js +1 -1
  42. package/dist/components/OnboardingBanner/OnboardingBanner.test.js +1 -1
  43. package/dist/components/OverflowTooltip/OverflowTooltip.test.js +2 -2
  44. package/dist/components/SafeForm/SafeForm.test.js +2 -2
  45. package/dist/components/Scrollbar/scrollbar.test.js +1 -1
  46. package/dist/components/SearchBar/SearchBar.test.js +1 -1
  47. package/dist/components/Select/Select.test.js +1 -1
  48. package/dist/components/Stepper/Stepper.d.ts +7 -3
  49. package/dist/components/Stepper/Stepper.js +30 -20
  50. package/dist/components/Stepper/Stepper.test.js +127 -38
  51. package/dist/components/Stepper/components/StepperButton.d.ts +6 -2
  52. package/dist/components/Stepper/components/StepperButton.js +60 -46
  53. package/dist/components/Stepper/components/StepperHeader.d.ts +8 -2
  54. package/dist/components/Stepper/components/StepperHeader.js +60 -14
  55. package/dist/components/Stepper/components/StepperIndicator.js +1 -1
  56. package/dist/components/Stepper/stepperTypes.d.ts +35 -5
  57. package/dist/components/VerticalDivider/VerticalDivider.test.js +1 -1
  58. package/dist/hooks/useBreakpoints.test.js +1 -1
  59. package/dist/{index-I7uTh4Tr.js → index-CkZYDkGd.js} +1 -1
  60. package/dist/{react.esm-CX1WJ2Pp.js → react.esm-BbMrgZCM.js} +3 -2
  61. package/dist/stepper.module-c-CWmpkt.js +15 -0
  62. package/dist/types/GenericTable.d.ts +6 -1
  63. package/package.json +1 -1
  64. package/dist/stepper.module-HuqmDJPj.js +0 -12
@@ -1,11 +1,11 @@
1
1
  import { jsxs as Yt, jsx as E, Fragment as Jt } from "react/jsx-runtime";
2
- import { G as Y } from "../../index.es-DsGuBR0Z.js";
3
- import { I as Pt } from "../../index.es-BzdG6flH.js";
2
+ import { G as J } from "../../index.es-DsGuBR0Z.js";
3
+ import { I as Ht } from "../../index.es-BzdG6flH.js";
4
4
  import { _ as Qt, a as Xt, c as x, P as l } from "../../index-Cpb-8cAN.js";
5
- import { _ as Lt } from "../../slicedToArray-uk6yv91z.js";
6
- import u, { forwardRef as Zt, useRef as Rt, useImperativeHandle as te, useState as wt, useEffect as _, useCallback as J, useMemo as Z, Fragment as ee } from "react";
7
- import { w as kt, r as ne, c as D, a as oe } from "../../index.es-BjvSa9Z-.js";
8
- import { b as Ht, c as Mt, d as ie } from "../../tslib.es6-BDCynO9F.js";
5
+ import { _ as Rt } from "../../slicedToArray-uk6yv91z.js";
6
+ import m, { forwardRef as Zt, useRef as wt, useImperativeHandle as te, useState as kt, useEffect as _, useCallback as Q, useMemo as tt, Fragment as ee } from "react";
7
+ import { w as Mt, r as ne, c as D, a as oe } from "../../index.es-BjvSa9Z-.js";
8
+ import { b as xt, c as Pt, d as ie } from "../../tslib.es6-BDCynO9F.js";
9
9
  import { M as ae, a as re } from "../../component-neHBNHRu.js";
10
10
  import { M as se, c as le, m as ce } from "../../component-DsB0poTj.js";
11
11
  import { A as de } from "../../animationframe-EMBh6XeO.js";
@@ -75,7 +75,7 @@ function Ee(o) {
75
75
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
76
76
  * THE SOFTWARE.
77
77
  */
78
- var Q = "mdc-dom-focus-sentinel", ve = (
78
+ var X = "mdc-dom-focus-sentinel", ve = (
79
79
  /** @class */
80
80
  function() {
81
81
  function o(e, t) {
@@ -87,7 +87,7 @@ var Q = "mdc-dom-focus-sentinel", ve = (
87
87
  throw new Error("FocusTrap: Element must have at least one focusable child.");
88
88
  this.elFocusedBeforeTrapFocus = document.activeElement instanceof HTMLElement ? document.activeElement : null, this.wrapTabFocus(this.root), this.options.skipInitialFocus || this.focusInitialElement(e, this.options.initialFocusEl);
89
89
  }, o.prototype.releaseFocus = function() {
90
- [].slice.call(this.root.querySelectorAll("." + Q)).forEach(function(e) {
90
+ [].slice.call(this.root.querySelectorAll("." + X)).forEach(function(e) {
91
91
  e.parentElement.removeChild(e);
92
92
  }), !this.options.skipRestoreFocus && this.elFocusedBeforeTrapFocus && this.elFocusedBeforeTrapFocus.focus();
93
93
  }, o.prototype.wrapTabFocus = function(e) {
@@ -105,16 +105,16 @@ var Q = "mdc-dom-focus-sentinel", ve = (
105
105
  }, o.prototype.getFocusableElements = function(e) {
106
106
  var t = [].slice.call(e.querySelectorAll("[autofocus], [tabindex], a, input, textarea, select, button"));
107
107
  return t.filter(function(n) {
108
- var i = n.getAttribute("aria-disabled") === "true" || n.getAttribute("disabled") != null || n.getAttribute("hidden") != null || n.getAttribute("aria-hidden") === "true", a = n.tabIndex >= 0 && n.getBoundingClientRect().width > 0 && !n.classList.contains(Q) && !i, p = !1;
108
+ var i = n.getAttribute("aria-disabled") === "true" || n.getAttribute("disabled") != null || n.getAttribute("hidden") != null || n.getAttribute("aria-hidden") === "true", a = n.tabIndex >= 0 && n.getBoundingClientRect().width > 0 && !n.classList.contains(X) && !i, u = !1;
109
109
  if (a) {
110
110
  var h = getComputedStyle(n);
111
- p = h.display === "none" || h.visibility === "hidden";
111
+ u = h.display === "none" || h.visibility === "hidden";
112
112
  }
113
- return a && !p;
113
+ return a && !u;
114
114
  });
115
115
  }, o.prototype.createSentinel = function() {
116
116
  var e = document.createElement("div");
117
- return e.setAttribute("tabindex", "0"), e.setAttribute("aria-hidden", "true"), e.classList.add(Q), e;
117
+ return e.setAttribute("tabindex", "0"), e.setAttribute("aria-hidden", "true"), e.classList.add(X), e;
118
118
  }, o;
119
119
  }()
120
120
  );
@@ -193,7 +193,7 @@ var s = {
193
193
  ".mdc-menu .mdc-deprecated-list-item"
194
194
  ].join(", "),
195
195
  SURFACE_SELECTOR: ".mdc-dialog__surface"
196
- }, X = {
196
+ }, Z = {
197
197
  DIALOG_ANIMATION_CLOSE_TIME_MS: 75,
198
198
  DIALOG_ANIMATION_OPEN_TIME_MS: 150
199
199
  };
@@ -223,12 +223,12 @@ var $;
223
223
  (function(o) {
224
224
  o.POLL_SCROLL_POS = "poll_scroll_position", o.POLL_LAYOUT_CHANGE = "poll_layout_change";
225
225
  })($ || ($ = {}));
226
- var xt = (
226
+ var $t = (
227
227
  /** @class */
228
228
  function(o) {
229
- Ht(e, o);
229
+ xt(e, o);
230
230
  function e(t) {
231
- var n = o.call(this, Mt(Mt({}, e.defaultAdapter), t)) || this;
231
+ var n = o.call(this, Pt(Pt({}, e.defaultAdapter), t)) || this;
232
232
  return n.dialogOpen = !1, n.isFullscreen = !1, n.animationFrame = 0, n.animationTimer = 0, n.escapeKeyAction = O.CLOSE_ACTION, n.scrimClickAction = O.CLOSE_ACTION, n.autoStackButtons = !0, n.areButtonsStacked = !1, n.suppressDefaultPressSelector = O.SUPPRESS_DEFAULT_PRESS_SELECTOR, n.animFrame = new de(), n.contentScrollHandler = function() {
233
233
  n.handleScrollEvent();
234
234
  }, n.windowResizeHandler = function() {
@@ -251,7 +251,7 @@ var xt = (
251
251
  configurable: !0
252
252
  }), Object.defineProperty(e, "numbers", {
253
253
  get: function() {
254
- return X;
254
+ return Z;
255
255
  },
256
256
  enumerable: !1,
257
257
  configurable: !0
@@ -327,13 +327,13 @@ var xt = (
327
327
  this.dialogOpen = !0, this.adapter.notifyOpening(), this.adapter.addClass(s.OPENING), this.isFullscreen && this.adapter.registerContentEventHandler("scroll", this.contentScrollHandler), t && t.isAboveFullscreenDialog && this.adapter.addClass(s.SCRIM_HIDDEN), this.adapter.registerWindowEventHandler("resize", this.windowResizeHandler), this.adapter.registerWindowEventHandler("orientationchange", this.windowOrientationChangeHandler), this.runNextAnimationFrame(function() {
328
328
  n.adapter.addClass(s.OPEN), n.adapter.addBodyClass(s.SCROLL_LOCK), n.layout(), n.animationTimer = setTimeout(function() {
329
329
  n.handleAnimationTimerEnd(), n.adapter.trapFocus(n.adapter.getInitialFocusEl()), n.adapter.notifyOpened();
330
- }, X.DIALOG_ANIMATION_OPEN_TIME_MS);
330
+ }, Z.DIALOG_ANIMATION_OPEN_TIME_MS);
331
331
  });
332
332
  }, e.prototype.close = function(t) {
333
333
  var n = this;
334
334
  t === void 0 && (t = ""), this.dialogOpen && (this.dialogOpen = !1, this.adapter.notifyClosing(t), this.adapter.addClass(s.CLOSING), this.adapter.removeClass(s.OPEN), this.adapter.removeBodyClass(s.SCROLL_LOCK), this.isFullscreen && this.adapter.deregisterContentEventHandler("scroll", this.contentScrollHandler), this.adapter.deregisterWindowEventHandler("resize", this.windowResizeHandler), this.adapter.deregisterWindowEventHandler("orientationchange", this.windowOrientationChangeHandler), cancelAnimationFrame(this.animationFrame), this.animationFrame = 0, clearTimeout(this.animationTimer), this.animationTimer = setTimeout(function() {
335
335
  n.adapter.releaseFocus(), n.handleAnimationTimerEnd(), n.adapter.notifyClosed(t);
336
- }, X.DIALOG_ANIMATION_CLOSE_TIME_MS));
336
+ }, Z.DIALOG_ANIMATION_CLOSE_TIME_MS));
337
337
  }, e.prototype.showSurfaceScrim = function() {
338
338
  var t = this;
339
339
  this.adapter.addClass(s.SURFACE_SCRIM_SHOWING), this.runNextAnimationFrame(function() {
@@ -379,8 +379,8 @@ var xt = (
379
379
  if (n) {
380
380
  var i = this.adapter.getActionFromEvent(t);
381
381
  if (!i) {
382
- var a = t.composedPath ? t.composedPath()[0] : t.target, p = this.suppressDefaultPressSelector ? !this.adapter.eventTargetMatches(a, this.suppressDefaultPressSelector) : !0;
383
- n && p && this.adapter.clickDefaultButton();
382
+ var a = t.composedPath ? t.composedPath()[0] : t.target, u = this.suppressDefaultPressSelector ? !this.adapter.eventTargetMatches(a, this.suppressDefaultPressSelector) : !0;
383
+ n && u && this.adapter.clickDefaultButton();
384
384
  }
385
385
  }
386
386
  }, e.prototype.handleDocumentKeydown = function(t) {
@@ -435,10 +435,10 @@ var xt = (
435
435
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
436
436
  * THE SOFTWARE.
437
437
  */
438
- var m = xt.strings, Se = (
438
+ var f = $t.strings, Se = (
439
439
  /** @class */
440
440
  function(o) {
441
- Ht(e, o);
441
+ xt(e, o);
442
442
  function e() {
443
443
  return o !== null && o.apply(this, arguments) || this;
444
444
  }
@@ -479,23 +479,23 @@ var m = xt.strings, Se = (
479
479
  return new e(t);
480
480
  }, e.prototype.initialize = function(t) {
481
481
  var n, i;
482
- t === void 0 && (t = function(g, y) {
483
- return new ve(g, y);
482
+ t === void 0 && (t = function(g, S) {
483
+ return new ve(g, S);
484
484
  });
485
- var a = this.root.querySelector(m.CONTAINER_SELECTOR);
485
+ var a = this.root.querySelector(f.CONTAINER_SELECTOR);
486
486
  if (!a)
487
- throw new Error("Dialog component requires a " + m.CONTAINER_SELECTOR + " container element");
488
- this.container = a, this.content = this.root.querySelector(m.CONTENT_SELECTOR), this.buttons = [].slice.call(this.root.querySelectorAll(m.BUTTON_SELECTOR)), this.defaultButton = this.root.querySelector("[" + m.BUTTON_DEFAULT_ATTRIBUTE + "]"), this.focusTrapFactory = t, this.buttonRipples = [];
487
+ throw new Error("Dialog component requires a " + f.CONTAINER_SELECTOR + " container element");
488
+ this.container = a, this.content = this.root.querySelector(f.CONTENT_SELECTOR), this.buttons = [].slice.call(this.root.querySelectorAll(f.BUTTON_SELECTOR)), this.defaultButton = this.root.querySelector("[" + f.BUTTON_DEFAULT_ATTRIBUTE + "]"), this.focusTrapFactory = t, this.buttonRipples = [];
489
489
  try {
490
- for (var p = ie(this.buttons), h = p.next(); !h.done; h = p.next()) {
491
- var S = h.value;
492
- this.buttonRipples.push(new se(S));
490
+ for (var u = ie(this.buttons), h = u.next(); !h.done; h = u.next()) {
491
+ var y = h.value;
492
+ this.buttonRipples.push(new se(y));
493
493
  }
494
494
  } catch (g) {
495
495
  n = { error: g };
496
496
  } finally {
497
497
  try {
498
- h && !h.done && (i = p.return) && i.call(p);
498
+ h && !h.done && (i = u.return) && i.call(u);
499
499
  } finally {
500
500
  if (n) throw n.error;
501
501
  }
@@ -506,9 +506,9 @@ var m = xt.strings, Se = (
506
506
  document.addEventListener("keydown", t.handleDocumentKeydown);
507
507
  }, this.handleClosing = function() {
508
508
  document.removeEventListener("keydown", t.handleDocumentKeydown);
509
- }, this.listen("click", this.handleClick), this.listen("keydown", this.handleKeydown), this.listen(m.OPENING_EVENT, this.handleOpening), this.listen(m.CLOSING_EVENT, this.handleClosing);
509
+ }, this.listen("click", this.handleClick), this.listen("keydown", this.handleKeydown), this.listen(f.OPENING_EVENT, this.handleOpening), this.listen(f.CLOSING_EVENT, this.handleClosing);
510
510
  }, e.prototype.destroy = function() {
511
- this.unlisten("click", this.handleClick), this.unlisten("keydown", this.handleKeydown), this.unlisten(m.OPENING_EVENT, this.handleOpening), this.unlisten(m.CLOSING_EVENT, this.handleClosing), this.handleClosing(), this.buttonRipples.forEach(function(t) {
511
+ this.unlisten("click", this.handleClick), this.unlisten("keydown", this.handleKeydown), this.unlisten(f.OPENING_EVENT, this.handleOpening), this.unlisten(f.CLOSING_EVENT, this.handleClosing), this.handleClosing(), this.buttonRipples.forEach(function(t) {
512
512
  t.destroy();
513
513
  }), o.prototype.destroy.call(this);
514
514
  }, e.prototype.layout = function() {
@@ -537,8 +537,8 @@ var m = xt.strings, Se = (
537
537
  getActionFromEvent: function(i) {
538
538
  if (!i.target)
539
539
  return "";
540
- var a = le(i.target, "[" + m.ACTION_ATTRIBUTE + "]");
541
- return a && a.getAttribute(m.ACTION_ATTRIBUTE);
540
+ var a = le(i.target, "[" + f.ACTION_ATTRIBUTE + "]");
541
+ return a && a.getAttribute(f.ACTION_ATTRIBUTE);
542
542
  },
543
543
  getInitialFocusEl: function() {
544
544
  return t.getInitialFocusEl();
@@ -550,16 +550,16 @@ var m = xt.strings, Se = (
550
550
  return ge(t.content);
551
551
  },
552
552
  notifyClosed: function(i) {
553
- return t.emit(m.CLOSED_EVENT, i ? { action: i } : {});
553
+ return t.emit(f.CLOSED_EVENT, i ? { action: i } : {});
554
554
  },
555
555
  notifyClosing: function(i) {
556
- return t.emit(m.CLOSING_EVENT, i ? { action: i } : {});
556
+ return t.emit(f.CLOSING_EVENT, i ? { action: i } : {});
557
557
  },
558
558
  notifyOpened: function() {
559
- return t.emit(m.OPENED_EVENT, {});
559
+ return t.emit(f.OPENED_EVENT, {});
560
560
  },
561
561
  notifyOpening: function() {
562
- return t.emit(m.OPENING_EVENT, {});
562
+ return t.emit(f.OPENING_EVENT, {});
563
563
  },
564
564
  releaseFocus: function() {
565
565
  t.focusTrap.releaseFocus();
@@ -597,9 +597,9 @@ var m = xt.strings, Se = (
597
597
  window.removeEventListener(i, a);
598
598
  }
599
599
  };
600
- return new xt(n);
600
+ return new $t(n);
601
601
  }, e.prototype.getInitialFocusEl = function() {
602
- return this.root.querySelector("[" + m.INITIAL_FOCUS_ATTRIBUTE + "]");
602
+ return this.root.querySelector("[" + f.INITIAL_FOCUS_ATTRIBUTE + "]");
603
603
  }, e;
604
604
  }(re)
605
605
  ), ye = {
@@ -793,22 +793,22 @@ var m = xt.strings, Se = (
793
793
  returnFocusSelector: null,
794
794
  scrollable: !1,
795
795
  title: null
796
- }, Ae = ["actionButton", "actionIcons", "badge", "backButton", "children", "className", "content", "defaultButton", "dismissiveButton", "footerSupplemental", "headerActions", "hideCloseIcon", "indicator", "initialFocus", "mobileStackedButtons", "modalSize", "nextButton", "noActions", "onClose", "onClosed", "onOpen", "onOpened", "open", "preventClose", "preventPrimaryAccept", "primaryButton", "returnFocusSelector", "scrollable", "title"], r = Oe, tt = /* @__PURE__ */ Zt(function(o, e) {
797
- var t = o.actionButton, n = t === void 0 ? r.actionButton : t, i = o.actionIcons, a = i === void 0 ? r.actionIcons : i, p = o.badge, h = p === void 0 ? r.badge : p, S = o.backButton, g = S === void 0 ? r.backButton : S, y = o.children, v = y === void 0 ? r.children : y, B = o.className, $t = B === void 0 ? r.className : B, et = o.content, nt = et === void 0 ? r.content : et, ot = o.defaultButton, T = ot === void 0 ? r.defaultButton : ot, it = o.dismissiveButton, F = it === void 0 ? r.dismissiveButton : it, at = o.footerSupplemental, L = at === void 0 ? r.footerSupplemental : at, rt = o.headerActions, st = rt === void 0 ? r.headerActions : rt, lt = o.hideCloseIcon, U = lt === void 0 ? r.hideCloseIcon : lt, ct = o.indicator, Ut = ct === void 0 ? r.indicator : ct, dt = o.initialFocus, b = dt === void 0 ? r.initialFocus : dt, ut = o.mobileStackedButtons, G = ut === void 0 ? r.mobileStackedButtons : ut, mt = o.modalSize, C = mt === void 0 ? r.modalSize : mt, ft = o.nextButton, I = ft === void 0 ? r.nextButton : ft, pt = o.noActions, N = pt === void 0 ? r.noActions : pt, ht = o.onClose, K = ht === void 0 ? r.onClose : ht, gt = o.onClosed, W = gt === void 0 ? r.onClosed : gt, Ct = o.onOpen, R = Ct === void 0 ? r.onOpen : Ct, _t = o.onOpened, w = _t === void 0 ? r.onOpened : _t, Et = o.open, vt = Et === void 0 ? r.open : Et, St = o.preventClose, V = St === void 0 ? r.preventClose : St, yt = o.preventPrimaryAccept, Ot = yt === void 0 ? r.preventPrimaryAccept : yt, At = o.primaryButton, d = At === void 0 ? r.primaryButton : At, Tt = o.returnFocusSelector, z = Tt === void 0 ? r.returnFocusSelector : Tt, bt = o.scrollable, It = bt === void 0 ? r.scrollable : bt, Nt = o.title, Dt = Nt === void 0 ? r.title : Nt, Gt = Qt(o, Ae), k = Rt(), c = Rt();
796
+ }, Ae = ["actionButton", "actionIcons", "badge", "backButton", "children", "className", "content", "defaultButton", "dismissiveButton", "footerSupplemental", "headerActions", "hideCloseIcon", "indicator", "initialFocus", "mobileStackedButtons", "modalSize", "nextButton", "noActions", "onClose", "onClosed", "onOpen", "onOpened", "open", "preventClose", "preventPrimaryAccept", "primaryButton", "returnFocusSelector", "scrollable", "title"], r = Oe, et = /* @__PURE__ */ Zt(function(o, e) {
797
+ var t = o.actionButton, n = t === void 0 ? r.actionButton : t, i = o.actionIcons, a = i === void 0 ? r.actionIcons : i, u = o.badge, h = u === void 0 ? r.badge : u, y = o.backButton, g = y === void 0 ? r.backButton : y, S = o.children, B = S === void 0 ? r.children : S, v = o.className, U = v === void 0 ? r.className : v, nt = o.content, ot = nt === void 0 ? r.content : nt, it = o.defaultButton, T = it === void 0 ? r.defaultButton : it, at = o.dismissiveButton, F = at === void 0 ? r.dismissiveButton : at, rt = o.footerSupplemental, L = rt === void 0 ? r.footerSupplemental : rt, st = o.headerActions, lt = st === void 0 ? r.headerActions : st, ct = o.hideCloseIcon, G = ct === void 0 ? r.hideCloseIcon : ct, dt = o.indicator, Ut = dt === void 0 ? r.indicator : dt, ut = o.initialFocus, b = ut === void 0 ? r.initialFocus : ut, mt = o.mobileStackedButtons, K = mt === void 0 ? r.mobileStackedButtons : mt, ft = o.modalSize, C = ft === void 0 ? r.modalSize : ft, pt = o.nextButton, I = pt === void 0 ? r.nextButton : pt, ht = o.noActions, N = ht === void 0 ? r.noActions : ht, gt = o.onClose, W = gt === void 0 ? r.onClose : gt, Ct = o.onClosed, V = Ct === void 0 ? r.onClosed : Ct, _t = o.onOpen, R = _t === void 0 ? r.onOpen : _t, Et = o.onOpened, w = Et === void 0 ? r.onOpened : Et, vt = o.open, St = vt === void 0 ? r.open : vt, yt = o.preventClose, z = yt === void 0 ? r.preventClose : yt, Ot = o.preventPrimaryAccept, At = Ot === void 0 ? r.preventPrimaryAccept : Ot, Tt = o.primaryButton, d = Tt === void 0 ? r.primaryButton : Tt, bt = o.returnFocusSelector, j = bt === void 0 ? r.returnFocusSelector : bt, It = o.scrollable, Nt = It === void 0 ? r.scrollable : It, Dt = o.title, Bt = Dt === void 0 ? r.title : Dt, Gt = Qt(o, Ae), k = wt(), c = wt();
798
798
  te(e, function() {
799
799
  return k.current;
800
800
  }, []);
801
- var Kt = wt(), Bt = Lt(Kt, 2), j = Bt[0], Wt = Bt[1], Vt = wt(function() {
801
+ var Kt = kt(), Ft = Rt(Kt, 2), q = Ft[0], Wt = Ft[1], Vt = kt(function() {
802
802
  return I || g;
803
- }), Ft = Lt(Vt, 2), q = Ft[0], zt = Ft[1];
803
+ }), Lt = Rt(Vt, 2), Y = Lt[0], zt = Lt[1];
804
804
  _(function() {
805
805
  zt(I || g);
806
806
  }, [I, g]);
807
- var M = J(function() {
808
- kt() && Wt(window.innerWidth <= 600);
807
+ var M = Q(function() {
808
+ Mt() && Wt(window.innerWidth <= 600);
809
809
  }, []);
810
810
  _(function() {
811
- return kt() ? (M(), window.addEventListener("resize", M), function() {
811
+ return Mt() ? (M(), window.addEventListener("resize", M), function() {
812
812
  window.removeEventListener("resize", M);
813
813
  }) : function() {
814
814
  };
@@ -817,18 +817,18 @@ var m = xt.strings, Se = (
817
817
  c.current.destroy();
818
818
  };
819
819
  }, [c, k]), _(function() {
820
- c.current.foundation.setAutoStackButtons(G);
821
- }, [G]), _(function() {
820
+ c.current.foundation.setAutoStackButtons(K);
821
+ }, [K]), _(function() {
822
822
  N && (c.current.foundation.adapter.trapFocus = function() {
823
823
  });
824
824
  }, [N]), _(function() {
825
- c.current.scrimClickAction = V ? "" : "close", c.current.escapeKeyAction = V ? "" : "close";
826
- }, [V]);
827
- var P = J(function(f) {
828
- K && K(f);
829
- }, [K]), H = J(function(f) {
830
- z && ne(z), W && W(f);
831
- }, [z, W]);
825
+ c.current.scrimClickAction = z ? "" : "close", c.current.escapeKeyAction = z ? "" : "close";
826
+ }, [z]);
827
+ var P = Q(function(p) {
828
+ W && W(p);
829
+ }, [W]), H = Q(function(p) {
830
+ j && ne(j), V && V(p);
831
+ }, [j, V]);
832
832
  _(function() {
833
833
  return c.current.unlisten("MDCDialog: opening", R), c.current.listen("MDCDialog: opening", R), function() {
834
834
  c.current.unlisten("MDCDialog: opening", R);
@@ -846,75 +846,75 @@ var m = xt.strings, Se = (
846
846
  c.current.unlisten("MDCDialog:closed", H);
847
847
  };
848
848
  }, [c, H]), _(function() {
849
- vt ? c.current.open() : c.current.close();
850
- }, [c, vt]);
851
- var jt = Z(function() {
849
+ St ? c.current.open() : c.current.close();
850
+ }, [c, St]);
851
+ var jt = tt(function() {
852
852
  return function() {
853
- var f = {
853
+ var p = {
854
854
  className: "lmnt-modal__button mdc-dialog__button",
855
855
  elevation: n?.props.elevation !== "default" ? n?.props.elevation : "flat",
856
856
  variant: n?.props.variant || "filled"
857
857
  };
858
- return T === "action" && (f["data-mdc-dialog-button-default"] = !0), b === "action" && (f["data-mdc-dialog-initial-focus"] = !0), f;
858
+ return T === "action" && (p["data-mdc-dialog-button-default"] = !0), b === "action" && (p["data-mdc-dialog-initial-focus"] = !0), p;
859
859
  };
860
- }, [n?.props.elevation, n?.props.variant, T, b]), qt = Z(function() {
860
+ }, [n?.props.elevation, n?.props.variant, T, b]), qt = tt(function() {
861
861
  return function() {
862
- var f = {
862
+ var p = {
863
863
  className: "lmnt-modal__button mdc-dialog__button",
864
- "data-mdc-dialog-action": Ot ? "" : "accept",
864
+ "data-mdc-dialog-action": At ? "" : "accept",
865
865
  elevation: d?.props.elevation !== "default" ? d?.props.elevation : "flat",
866
866
  variant: d?.props.variant || "filled"
867
867
  };
868
- return T === "primary" && (f["data-mdc-dialog-button-default"] = !0), b === "primary" && (f["data-mdc-dialog-initial-focus"] = !0), f;
868
+ return T === "primary" && (p["data-mdc-dialog-button-default"] = !0), b === "primary" && (p["data-mdc-dialog-initial-focus"] = !0), p;
869
869
  };
870
- }, [Ot, T, b, d?.props.elevation, d?.props.variant]);
871
- return /* @__PURE__ */ u.createElement("aside", Xt({
870
+ }, [At, T, b, d?.props.elevation, d?.props.variant]);
871
+ return /* @__PURE__ */ m.createElement("aside", Xt({
872
872
  ref: k,
873
- className: x("lmnt", "lmnt-modal", "mdc-dialog", It && "lmnt-modal--scrollable mdc-dialog--scrollable", $t),
873
+ className: x("lmnt", "lmnt-modal", "mdc-dialog", Nt && "lmnt-modal--scrollable mdc-dialog--scrollable", U),
874
874
  role: "alertdialog"
875
- }, Gt), /* @__PURE__ */ u.createElement("div", {
876
- className: x("lmnt-modal__container", "mdc-dialog__container", C === "fullscreen" && "mdc-dialog--fullscreen", C === "max" && "lmnt-modal__max", C === "xlarge" && "lmnt-modal__xl", C === "large" && "lmnt-modal__lg", C === "medium" && "lmnt-modal__md", C === "small" && "lmnt-modal__sm", (C === "mobile" || j) && "lmnt-modal__mobile", C === "dialog" && "lmnt-modal__dialog", N && "lmnt-modal-no-actions")
877
- }, /* @__PURE__ */ u.createElement("div", {
875
+ }, Gt), /* @__PURE__ */ m.createElement("div", {
876
+ className: x("lmnt-modal__container", "mdc-dialog__container", C === "fullscreen" && "mdc-dialog--fullscreen", C === "max" && "lmnt-modal__max", C === "xlarge" && "lmnt-modal__xl", C === "large" && "lmnt-modal__lg", C === "medium" && "lmnt-modal__md", C === "small" && "lmnt-modal__sm", (C === "mobile" || q) && "lmnt-modal__mobile", C === "dialog" && "lmnt-modal__dialog", N && "lmnt-modal-no-actions")
877
+ }, /* @__PURE__ */ m.createElement("div", {
878
878
  className: "lmnt-modal__surface mdc-dialog__surface"
879
- }, /* @__PURE__ */ u.createElement("header", {
880
- className: x("lmnt-modal__title", "mdc-dialog__title", (C === "dialog" || U) && "lmnt-modal_title-hide-close-icon", a && "lmnt-modal_title-actionsIcons", It && "lmnt-modal__title-scrollable", (U || C === "dialog" || N) && "lmnt-modal--no-close-icon")
881
- }, !U && C !== "dialog" && !N && /* @__PURE__ */ u.createElement(Pt, {
879
+ }, /* @__PURE__ */ m.createElement("header", {
880
+ className: x("lmnt-modal__title", "mdc-dialog__title", (C === "dialog" || G) && "lmnt-modal_title-hide-close-icon", a && "lmnt-modal_title-actionsIcons", Nt && "lmnt-modal__title-scrollable", (G || C === "dialog" || N) && "lmnt-modal--no-close-icon")
881
+ }, !G && C !== "dialog" && !N && /* @__PURE__ */ m.createElement(Ht, {
882
882
  className: "mdc-icon-button material-icons mdc-dialog__close",
883
883
  "data-mdc-dialog-action": "close",
884
884
  icon: "clear"
885
- }), Dt && /* @__PURE__ */ u.createElement("div", null, Dt), st && /* @__PURE__ */ u.createElement("div", {
885
+ }), Bt && /* @__PURE__ */ m.createElement("div", null, Bt), lt && /* @__PURE__ */ m.createElement("div", {
886
886
  className: "lmnt-dialog__title-actions"
887
- }, st), h && /* @__PURE__ */ u.createElement("div", {
887
+ }, lt), h && /* @__PURE__ */ m.createElement("div", {
888
888
  className: "lmnt-badge--modal",
889
889
  style: {
890
890
  marginLeft: "0"
891
891
  }
892
- }, h)), (nt || v) && /* @__PURE__ */ u.createElement("section", {
892
+ }, h)), (ot || B) && /* @__PURE__ */ m.createElement("section", {
893
893
  className: "lmnt-modal__content mdc-dialog__content"
894
- }, nt || v), Ut, (n || g || F || I || d || L) && /* @__PURE__ */ u.createElement("footer", {
895
- className: x("lmnt-modal__actions", "mdc-dialog__actions", j && "lmnt-dialog__actions__mobile", L && "lmnt-modal__actions--supplemental-btn", j && G && "lmnt-modal_actions-mobile-stacked")
896
- }, !q && L && /* @__PURE__ */ u.createElement("div", {
894
+ }, ot || B), Ut, (n || g || F || I || d || L) && /* @__PURE__ */ m.createElement("footer", {
895
+ className: x("lmnt-modal__actions", "mdc-dialog__actions", q && "lmnt-dialog__actions__mobile", L && "lmnt-modal__actions--supplemental-btn", q && K && "lmnt-modal_actions-mobile-stacked")
896
+ }, !Y && L && /* @__PURE__ */ m.createElement("div", {
897
897
  className: "lmnt-dialog__actions__supplemental"
898
898
  }, D(L, function() {
899
- var f = {};
900
- return T === "footerSupplemental" && (f["data-mdc-dialog-button-default"] = !0), b === "footerSupplemental" && (f["data-mdc-dialog-initial-focus"] = !0), f;
901
- })), !q && (n || F || d) && /* @__PURE__ */ u.createElement("div", {
899
+ var p = {};
900
+ return T === "footerSupplemental" && (p["data-mdc-dialog-button-default"] = !0), b === "footerSupplemental" && (p["data-mdc-dialog-initial-focus"] = !0), p;
901
+ })), !Y && (n || F || d) && /* @__PURE__ */ m.createElement("div", {
902
902
  className: "lmnt-dialog__actions__right-align lmnt-modal_actions_button"
903
903
  }, F && D(F, {
904
904
  variant: "text",
905
905
  className: "lmnt-modal__button mdc-dialog__button",
906
906
  "data-mdc-dialog-action": "close"
907
- }), n && !d && D(n, jt), d && D(d, qt)), q && /* @__PURE__ */ u.createElement("div", {
907
+ }), n && !d && D(n, jt), d && D(d, qt)), Y && /* @__PURE__ */ m.createElement("div", {
908
908
  className: "lmnt-modal_actions_button lmnt-dialog__actions__directional"
909
- }, /* @__PURE__ */ u.createElement("div", null, oe(g, "lmnt-modal__button")), /* @__PURE__ */ u.createElement("div", null, D(I, {
909
+ }, /* @__PURE__ */ m.createElement("div", null, oe(g, "lmnt-modal__button")), /* @__PURE__ */ m.createElement("div", null, D(I, {
910
910
  className: "lmnt-modal__button",
911
911
  "data-mdc-dialog-initial-focus": !0
912
- })))))), /* @__PURE__ */ u.createElement("div", {
912
+ })))))), /* @__PURE__ */ m.createElement("div", {
913
913
  className: "mdc-dialog__scrim"
914
914
  }));
915
915
  });
916
- tt.displayName = "Modal";
917
- tt.propTypes = ye;
916
+ et.displayName = "Modal";
917
+ et.propTypes = ye;
918
918
  const Te = "_modal_95xon_1", be = "_gap_95xon_11", Ie = "_title_95xon_15", Ne = "_titleWithoutCloseIcon_95xon_27", De = "_closeButton_95xon_31", A = {
919
919
  modal: Te,
920
920
  gap: be,
@@ -927,37 +927,38 @@ const Te = "_modal_95xon_1", be = "_gap_95xon_11", Ie = "_title_95xon_15", Ne =
927
927
  headerActions: t,
928
928
  actionButton: n,
929
929
  hideCloseIcon: i,
930
- leadingIcon: a,
931
- isOnline: p = !0,
932
- offlineViewProps: h,
933
- children: S,
934
- ...g
930
+ closeIcon: a = "close",
931
+ leadingIcon: u,
932
+ isOnline: h = !0,
933
+ offlineViewProps: y,
934
+ children: g,
935
+ ...S
935
936
  }) => {
936
- const y = Z(() => {
937
+ const B = tt(() => {
937
938
  const v = {
938
939
  id: "base",
939
940
  action: /* @__PURE__ */ Yt(
940
- Y,
941
+ J,
941
942
  {
942
943
  primaryAlign: "center",
943
944
  secondaryAlign: "center",
944
945
  className: A.gap,
945
946
  children: [
946
947
  !i && /* @__PURE__ */ E(
947
- Pt,
948
+ Ht,
948
949
  {
949
- icon: "close",
950
+ icon: a,
950
951
  onClick: () => o?.(),
951
952
  type: "button",
952
953
  className: A.closeButton
953
954
  }
954
955
  ),
955
- a ? /* @__PURE__ */ E(ue, { customPadding: "0.25rem 0 0 0.75rem", children: /* @__PURE__ */ E(fe, { icon: a }) }) : /* @__PURE__ */ E(Jt, {}),
956
+ u ? /* @__PURE__ */ E(ue, { customPadding: "0.25rem 0 0 0.75rem", children: /* @__PURE__ */ E(fe, { icon: u }) }) : /* @__PURE__ */ E(Jt, {}),
956
957
  /* @__PURE__ */ E(
957
958
  me,
958
959
  {
959
960
  level: 6,
960
- className: i && !a ? A.titleWithoutCloseIcon : "",
961
+ className: i && !u ? A.titleWithoutCloseIcon : "",
961
962
  children: e
962
963
  }
963
964
  )
@@ -968,23 +969,23 @@ const Te = "_modal_95xon_1", be = "_gap_95xon_11", Ie = "_title_95xon_15", Ne =
968
969
  };
969
970
  if (!t) return [v];
970
971
  if (!Array.isArray(t)) return [v, { id: "action", action: t }];
971
- const B = {
972
+ const U = {
972
973
  id: "action-group",
973
- action: /* @__PURE__ */ E(Y, { className: A.gap, children: t }, "action-group")
974
+ action: /* @__PURE__ */ E(J, { className: A.gap, children: t }, "action-group")
974
975
  };
975
- return [v, B];
976
- }, [t, i, a, o, e]);
976
+ return [v, U];
977
+ }, [t, i, a, u, o, e]);
977
978
  return /* @__PURE__ */ E(
978
- tt,
979
+ et,
979
980
  {
980
- ...g,
981
+ ...S,
981
982
  "data-testid": "modal",
982
- className: `${A.modal} ${A.title} ${g.className ?? ""}`,
983
+ className: `${A.modal} ${A.title} ${S.className ?? ""}`,
983
984
  hideCloseIcon: !0,
984
985
  actionButton: n,
985
- headerActions: /* @__PURE__ */ E(Y, { primaryAlign: "space-between", secondaryAlign: "center", children: y.map((v) => /* @__PURE__ */ E(ee, { children: v.action }, v.id)) }, "header-group"),
986
+ headerActions: /* @__PURE__ */ E(J, { primaryAlign: "space-between", secondaryAlign: "center", children: B.map((v) => /* @__PURE__ */ E(ee, { children: v.action }, v.id)) }, "header-group"),
986
987
  preventClose: !0,
987
- children: p ? S : /* @__PURE__ */ E(pe, { ...h })
988
+ children: h ? g : /* @__PURE__ */ E(pe, { ...y })
988
989
  }
989
990
  );
990
991
  };
@@ -1,5 +1,5 @@
1
1
  import { jsx as t } from "react/jsx-runtime";
2
- import { a as o, s as e } from "../../react.esm-CX1WJ2Pp.js";
2
+ import { a as o, s as e } from "../../react.esm-BbMrgZCM.js";
3
3
  import { a } from "../../useBreakpoints-MzTZ0tCT.js";
4
4
  import { ModulePadding as d } from "./ModulePadding.js";
5
5
  import { d as r, t as i, a as n, g as s } from "../../vi.CjhMlMwf-CKxPQtd6.js";
@@ -1,5 +1,5 @@
1
1
  import { jsx as o } from "react/jsx-runtime";
2
- import { a as n, s as t, f as u } from "../../react.esm-CX1WJ2Pp.js";
2
+ import { a as n, s as t, f as u } from "../../react.esm-BbMrgZCM.js";
3
3
  import { s as r, O as i } from "../../OfflineView-D168VIXv.js";
4
4
  import { d as B, t as l, g as e, a as c } from "../../vi.CjhMlMwf-CKxPQtd6.js";
5
5
  B("OfflineView", () => {
@@ -1,5 +1,5 @@
1
1
  import { jsx as n, Fragment as d } from "react/jsx-runtime";
2
- import { a as o, s as e } from "../../react.esm-CX1WJ2Pp.js";
2
+ import { a as o, s as e } from "../../react.esm-BbMrgZCM.js";
3
3
  import { OnboardingBanner as i } from "./OnboardingBanner.js";
4
4
  import { d as a, t as s, a as r, g as t } from "../../vi.CjhMlMwf-CKxPQtd6.js";
5
5
  a("Onboarding Banner Test", () => {
@@ -1,7 +1,7 @@
1
1
  import { jsx as t } from "react/jsx-runtime";
2
2
  import { b as n } from "../../index.es-DCSgIiJH.js";
3
- import { a as i, s as e, w as s } from "../../react.esm-CX1WJ2Pp.js";
4
- import { u as a } from "../../index-I7uTh4Tr.js";
3
+ import { a as i, s as e, w as s } from "../../react.esm-BbMrgZCM.js";
4
+ import { u as a } from "../../index-CkZYDkGd.js";
5
5
  import { OverflowTooltip as c } from "./OverflowTooltip.js";
6
6
  import { d as u, t as p, g as r } from "../../vi.CjhMlMwf-CKxPQtd6.js";
7
7
  u("OverflowTooltip Test", () => {
@@ -1,6 +1,6 @@
1
1
  import { jsxs as a, jsx as t } from "react/jsx-runtime";
2
- import { a as u, s as i, f as r } from "../../react.esm-CX1WJ2Pp.js";
3
- import { u as y } from "../../index-I7uTh4Tr.js";
2
+ import { a as u, s as i, f as r } from "../../react.esm-BbMrgZCM.js";
3
+ import { u as y } from "../../index-CkZYDkGd.js";
4
4
  import { SafeForm as p } from "./SafeForm.js";
5
5
  import { d as b, t as c, g as s, v as l } from "../../vi.CjhMlMwf-CKxPQtd6.js";
6
6
  b("SafeForm", () => {
@@ -1,5 +1,5 @@
1
1
  import { jsx as s } from "react/jsx-runtime";
2
- import { a, s as e } from "../../react.esm-CX1WJ2Pp.js";
2
+ import { a, s as e } from "../../react.esm-BbMrgZCM.js";
3
3
  import { ScrollbarY as d, ScrollbarX as l } from "./Scrollbar.js";
4
4
  import { d as c, t, g as o } from "../../vi.CjhMlMwf-CKxPQtd6.js";
5
5
  c("Scrollbar", () => {
@@ -1,5 +1,5 @@
1
1
  import { jsx as a } from "react/jsx-runtime";
2
- import { a as r, s as t, f as h } from "../../react.esm-CX1WJ2Pp.js";
2
+ import { a as r, s as t, f as h } from "../../react.esm-BbMrgZCM.js";
3
3
  import { act as l } from "react";
4
4
  import { SearchBar as s } from "./SearchBar.js";
5
5
  import { d as m, t as o, a as n, g as e } from "../../vi.CjhMlMwf-CKxPQtd6.js";
@@ -1,5 +1,5 @@
1
1
  import { jsx as s } from "react/jsx-runtime";
2
- import { a, s as c } from "../../react.esm-CX1WJ2Pp.js";
2
+ import { a, s as c } from "../../react.esm-BbMrgZCM.js";
3
3
  import { Select as n } from "./Select.js";
4
4
  import { d as l, t as m, g as e } from "../../vi.CjhMlMwf-CKxPQtd6.js";
5
5
  l("Select", () => {
@@ -2,11 +2,15 @@ import { PropsWithChildren } from 'react';
2
2
  import { StepperProps } from './stepperTypes';
3
3
 
4
4
  /**
5
- * A component that displays a stepper with a header, content, and navigation buttons.
5
+ * A component that displays a stepper with a header, content, and navigation buttons.<br />
6
+ * Available in two display types: 'default' (dots) and 'description' (numerical with description).
6
7
  *
7
- * !! Be aware that the stepper is not a controlled component, so you need to manage the current step, content and loading state yourself.
8
+ * **!! Be aware that the stepper is not a controlled component, so you need to manage the current step, content and loading state yourself. !!**
9
+ *
10
+ * @param stepperType - The type of the stepper indicator. Defaults to 'default' (dots).
8
11
  * @param steps - An array of steps for the stepper.
9
12
  * @param currentStep - The current step index.
13
+ * @param customTotalSteps - A custom total number of steps to display in the stepper header. Only applicable for 'description' type.
10
14
  * @param children - The content to be displayed in the stepper.
11
15
  * @param isStepLoading - A boolean indicating if the current step is loading. If true, the next button will be disabled and show a loading state.
12
16
  * @param showStepperHeader - An indicator of whether to show the stepper header. Defaults to true.
@@ -14,4 +18,4 @@ import { StepperProps } from './stepperTypes';
14
18
  * @param showPreviousButtonOnFirstStep - A flag which indicates if the previous button should be shown on the first step. This can be useful for canceling the stepper. Defaults to false.
15
19
  * @returns
16
20
  */
17
- export declare const Stepper: ({ steps, currentStep, children, isStepLoading, showStepperHeader, stepperButtonAlignment, showPreviousButtonOnFirstStep, }: PropsWithChildren<StepperProps>) => import("react/jsx-runtime").JSX.Element;
21
+ export declare const Stepper: ({ stepperType, steps, currentStep, customTotalSteps, children, isStepLoading, showStepperHeader, stepperButtonAlignment, showPreviousButtonOnFirstStep, }: PropsWithChildren<StepperProps>) => import("react/jsx-runtime").JSX.Element;