@tedi-design-system/react 19.1.0-rc.2 → 19.1.0-rc.20

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 (184) hide show
  1. package/DESIGN.md +308 -0
  2. package/README.md +28 -0
  3. package/_virtual/index.es13.js +2 -2
  4. package/_virtual/index.es14.js +2 -2
  5. package/bundle-stats.html +1 -1
  6. package/community.cjs.js +1 -1
  7. package/community.es.js +215 -223
  8. package/component.manifest.json +1234 -0
  9. package/external/@floating-ui/core/dist/floating-ui.core.es.js +1 -1
  10. package/external/@floating-ui/dom/dist/floating-ui.dom.es.js +2 -2
  11. package/external/@floating-ui/react-dom/dist/floating-ui.react-dom.es.js +5 -5
  12. package/external/@mui/x-date-pickers/DatePicker/shared.es.js +1 -1
  13. package/external/@mui/x-date-pickers/DateTimePicker/shared.es.js +1 -1
  14. package/external/hoist-non-react-statics/external/react-is/cjs/react-is.development.cjs.js +1 -1
  15. package/external/hoist-non-react-statics/external/react-is/cjs/react-is.development.es.js +1 -1
  16. package/external/hoist-non-react-statics/external/react-is/cjs/react-is.production.min.cjs.js +1 -1
  17. package/external/hoist-non-react-statics/external/react-is/cjs/react-is.production.min.es.js +1 -1
  18. package/external/hoist-non-react-statics/external/react-is/index.cjs.js +1 -1
  19. package/external/hoist-non-react-statics/external/react-is/index.es.js +1 -1
  20. package/external/prop-types/external/react-is/cjs/react-is.development.cjs.js +1 -1
  21. package/external/prop-types/external/react-is/cjs/react-is.development.es.js +1 -1
  22. package/external/prop-types/external/react-is/cjs/react-is.production.min.cjs.js +1 -1
  23. package/external/prop-types/external/react-is/cjs/react-is.production.min.es.js +1 -1
  24. package/external/prop-types/external/react-is/index.cjs.js +1 -1
  25. package/external/prop-types/external/react-is/index.es.js +1 -1
  26. package/external/react-is/index.cjs.js +1 -1
  27. package/external/react-is/index.es.js +1 -1
  28. package/external/toposort/index.cjs.js +1 -1
  29. package/external/toposort/index.es.js +1 -1
  30. package/index.css +1 -1
  31. package/package.json +3 -3
  32. package/src/community/components/accordion/accordion.cjs.js +1 -1
  33. package/src/community/components/accordion/accordion.es.js +14 -9
  34. package/src/community/components/card/card-notification/card-notification.cjs.js +1 -1
  35. package/src/community/components/card/card-notification/card-notification.es.js +10 -8
  36. package/src/community/components/dock-panel/dock-panel.cjs.js +2 -0
  37. package/src/community/components/dock-panel/dock-panel.d.ts +110 -0
  38. package/src/community/components/dock-panel/dock-panel.es.js +138 -0
  39. package/src/community/components/dock-panel/dock-panel.module.scss.cjs.js +1 -0
  40. package/src/community/components/dock-panel/dock-panel.module.scss.es.js +18 -0
  41. package/src/community/components/dropdown/dropdown.cjs.js +1 -1
  42. package/src/community/components/dropdown/dropdown.es.js +34 -32
  43. package/src/community/components/form/category-search/category-search.cjs.js +1 -0
  44. package/src/community/components/form/category-search/category-search.d.ts +9 -0
  45. package/src/community/components/form/category-search/category-search.es.js +297 -0
  46. package/src/community/components/form/category-search/category-search.module.scss.cjs.js +1 -0
  47. package/src/community/components/form/category-search/category-search.module.scss.es.js +21 -0
  48. package/src/community/components/form/category-search/category-search.types.d.ts +162 -0
  49. package/src/community/components/form/category-search/define-category-search-category.cjs.js +1 -0
  50. package/src/community/components/form/category-search/define-category-search-category.d.ts +7 -0
  51. package/src/community/components/form/category-search/define-category-search-category.es.js +25 -0
  52. package/src/community/components/form/category-search/index.d.ts +3 -0
  53. package/src/community/components/form/category-search/use-category-search.cjs.js +1 -0
  54. package/src/community/components/form/category-search/use-category-search.d.ts +17 -0
  55. package/src/community/components/form/category-search/use-category-search.es.js +64 -0
  56. package/src/community/components/form/file-upload/file-upload.cjs.js +1 -1
  57. package/src/community/components/form/file-upload/file-upload.es.js +43 -41
  58. package/src/community/components/form/pickers/calendar/calendar.cjs.js +1 -1
  59. package/src/community/components/form/pickers/calendar/calendar.es.js +41 -39
  60. package/src/community/components/form/pickers/timepicker/timepicker.cjs.js +1 -1
  61. package/src/community/components/form/pickers/timepicker/timepicker.es.js +33 -31
  62. package/src/community/components/form/toggle/toggle.cjs.js +1 -1
  63. package/src/community/components/form/toggle/toggle.es.js +30 -28
  64. package/src/community/components/map-components/base-map-selection/base-map-option.cjs.js +1 -1
  65. package/src/community/components/map-components/base-map-selection/base-map-option.d.ts +8 -5
  66. package/src/community/components/map-components/base-map-selection/base-map-option.es.js +63 -65
  67. package/src/community/components/map-components/base-map-selection/base-map-selection.cjs.js +1 -1
  68. package/src/community/components/map-components/base-map-selection/base-map-selection.d.ts +1 -4
  69. package/src/community/components/map-components/base-map-selection/base-map-selection.es.js +55 -55
  70. package/src/community/components/map-components/carousel/carousel.cjs.js +1 -1
  71. package/src/community/components/map-components/carousel/carousel.es.js +19 -17
  72. package/src/community/components/map-components/map-button/map-button.cjs.js +1 -1
  73. package/src/community/components/map-components/map-button/map-button.d.ts +12 -4
  74. package/src/community/components/map-components/map-button/map-button.es.js +43 -40
  75. package/src/community/components/map-components/map-dropdown/map-dropdown.cjs.js +1 -1
  76. package/src/community/components/map-components/map-dropdown/map-dropdown.es.js +51 -49
  77. package/src/community/components/status/status.cjs.js +1 -1
  78. package/src/community/components/status/status.es.js +14 -12
  79. package/src/community/components/stepper/stepper.cjs.js +1 -1
  80. package/src/community/components/stepper/stepper.es.js +33 -31
  81. package/src/community/components/table/table.cjs.js +1 -1
  82. package/src/community/components/table/table.es.js +9 -9
  83. package/src/community/components/table-of-contents/table-of-contents.cjs.js +1 -1
  84. package/src/community/components/table-of-contents/table-of-contents.es.js +21 -19
  85. package/src/community/components/tabs/tabs/tabs.cjs.js +1 -1
  86. package/src/community/components/tabs/tabs/tabs.es.js +29 -27
  87. package/src/community/components/vertical-stepper/vertical-stepper.cjs.js +1 -1
  88. package/src/community/components/vertical-stepper/vertical-stepper.es.js +8 -6
  89. package/src/community/deprecated-exports.cjs.js +1 -0
  90. package/src/community/deprecated-exports.d.ts +19 -0
  91. package/src/community/deprecated-exports.es.js +112 -0
  92. package/src/community/index.d.ts +3 -0
  93. package/src/tedi/components/content/card/card.d.ts +4 -0
  94. package/src/tedi/components/content/card/card.module.scss.cjs.js +1 -1
  95. package/src/tedi/components/content/card/card.module.scss.es.js +3 -2
  96. package/src/tedi/components/content/carousel/carousel.cjs.js +1 -1
  97. package/src/tedi/components/content/carousel/carousel.d.ts +5 -0
  98. package/src/tedi/components/content/carousel/carousel.es.js +20 -20
  99. package/src/tedi/components/content/carousel/use-carousel.cjs.js +1 -1
  100. package/src/tedi/components/content/carousel/use-carousel.d.ts +1 -1
  101. package/src/tedi/components/content/carousel/use-carousel.es.js +127 -127
  102. package/src/tedi/components/content/table-card/index.d.ts +1 -0
  103. package/src/tedi/components/content/table-card/table-card.cjs.js +1 -0
  104. package/src/tedi/components/content/table-card/table-card.d.ts +131 -0
  105. package/src/tedi/components/content/table-card/table-card.es.js +206 -0
  106. package/src/tedi/components/content/table-card/table-card.module.scss.cjs.js +1 -0
  107. package/src/tedi/components/content/table-card/table-card.module.scss.es.js +18 -0
  108. package/src/tedi/components/content/text-group/text-group-list/text-group-list.cjs.js +1 -1
  109. package/src/tedi/components/content/text-group/text-group-list/text-group-list.d.ts +42 -0
  110. package/src/tedi/components/content/text-group/text-group-list/text-group-list.es.js +41 -23
  111. package/src/tedi/components/content/text-group/text-group.cjs.js +1 -1
  112. package/src/tedi/components/content/text-group/text-group.d.ts +10 -0
  113. package/src/tedi/components/content/text-group/text-group.es.js +14 -13
  114. package/src/tedi/components/content/text-group/text-group.module.scss.cjs.js +1 -1
  115. package/src/tedi/components/content/text-group/text-group.module.scss.es.js +5 -1
  116. package/src/tedi/components/filter/filter/filter.cjs.js +1 -1
  117. package/src/tedi/components/filter/filter/filter.d.ts +5 -0
  118. package/src/tedi/components/filter/filter/filter.es.js +154 -144
  119. package/src/tedi/components/filter/filter/filter.module.scss.cjs.js +1 -1
  120. package/src/tedi/components/filter/filter/filter.module.scss.es.js +2 -1
  121. package/src/tedi/components/form/date-field/date-field-helpers.cjs.js +1 -1
  122. package/src/tedi/components/form/date-field/date-field-helpers.d.ts +12 -19
  123. package/src/tedi/components/form/date-field/date-field-helpers.es.js +27 -21
  124. package/src/tedi/components/form/date-field/date-field.cjs.js +1 -1
  125. package/src/tedi/components/form/date-field/date-field.d.ts +1 -1
  126. package/src/tedi/components/form/date-field/date-field.es.js +169 -164
  127. package/src/tedi/components/form/date-time-field/date-time-field.cjs.js +1 -1
  128. package/src/tedi/components/form/date-time-field/date-time-field.es.js +181 -176
  129. package/src/tedi/components/form/search/index.d.ts +1 -0
  130. package/src/tedi/components/form/search/search.cjs.js +1 -1
  131. package/src/tedi/components/form/search/search.d.ts +92 -1
  132. package/src/tedi/components/form/search/search.es.js +265 -69
  133. package/src/tedi/components/form/search/search.module.scss.cjs.js +1 -1
  134. package/src/tedi/components/form/search/search.module.scss.es.js +9 -1
  135. package/src/tedi/components/form/slider/slider.cjs.js +1 -1
  136. package/src/tedi/components/form/slider/slider.es.js +38 -38
  137. package/src/tedi/components/form/slider/slider.module.scss.cjs.js +1 -1
  138. package/src/tedi/components/form/slider/slider.module.scss.es.js +0 -1
  139. package/src/tedi/components/form/textfield/textfield.cjs.js +1 -1
  140. package/src/tedi/components/form/textfield/textfield.es.js +21 -21
  141. package/src/tedi/components/form/time-field/time-field.cjs.js +1 -1
  142. package/src/tedi/components/form/time-field/time-field.es.js +126 -124
  143. package/src/tedi/components/layout/mobile-nav/components/mobile-nav-toggle/mobile-nav-toggle.cjs.js +1 -1
  144. package/src/tedi/components/layout/mobile-nav/components/mobile-nav-toggle/mobile-nav-toggle.d.ts +1 -1
  145. package/src/tedi/components/layout/mobile-nav/components/mobile-nav-toggle/mobile-nav-toggle.es.js +28 -27
  146. package/src/tedi/components/layout/mobile-nav/mobile-nav.cjs.js +1 -1
  147. package/src/tedi/components/layout/mobile-nav/mobile-nav.d.ts +1 -1
  148. package/src/tedi/components/layout/mobile-nav/mobile-nav.es.js +124 -92
  149. package/src/tedi/components/layout/sidenav/sidenav.module.scss.cjs.js +1 -1
  150. package/src/tedi/components/layout/sidenav/sidenav.module.scss.es.js +1 -0
  151. package/src/tedi/components/misc/affix/affix.cjs.js +1 -1
  152. package/src/tedi/components/misc/affix/affix.es.js +20 -8
  153. package/src/tedi/components/navigation/table-of-contents/components/table-of-contents-collapsible/table-of-contents-collapsible.cjs.js +1 -1
  154. package/src/tedi/components/navigation/table-of-contents/components/table-of-contents-collapsible/table-of-contents-collapsible.d.ts +9 -1
  155. package/src/tedi/components/navigation/table-of-contents/components/table-of-contents-collapsible/table-of-contents-collapsible.es.js +78 -39
  156. package/src/tedi/components/navigation/table-of-contents/components/table-of-contents-item/table-of-contents-item.d.ts +6 -0
  157. package/src/tedi/components/navigation/table-of-contents/components/table-of-contents-row/table-of-contents-row.cjs.js +1 -1
  158. package/src/tedi/components/navigation/table-of-contents/components/table-of-contents-row/table-of-contents-row.es.js +23 -28
  159. package/src/tedi/components/navigation/table-of-contents/table-of-contents.cjs.js +1 -1
  160. package/src/tedi/components/navigation/table-of-contents/table-of-contents.d.ts +32 -21
  161. package/src/tedi/components/navigation/table-of-contents/table-of-contents.es.js +58 -55
  162. package/src/tedi/components/navigation/table-of-contents/table-of-contents.module.scss.cjs.js +1 -1
  163. package/src/tedi/components/navigation/table-of-contents/table-of-contents.module.scss.es.js +4 -1
  164. package/src/tedi/components/navigation/tabs/tabs-helpers.cjs.js +1 -1
  165. package/src/tedi/components/navigation/tabs/tabs-helpers.d.ts +5 -0
  166. package/src/tedi/components/navigation/tabs/tabs-helpers.es.js +7 -4
  167. package/src/tedi/components/navigation/tabs/tabs-trigger/tabs-trigger.cjs.js +1 -1
  168. package/src/tedi/components/navigation/tabs/tabs-trigger/tabs-trigger.es.js +17 -17
  169. package/src/tedi/components/overlays/dropdown/dropdown.cjs.js +1 -1
  170. package/src/tedi/components/overlays/dropdown/dropdown.d.ts +8 -0
  171. package/src/tedi/components/overlays/dropdown/dropdown.es.js +82 -72
  172. package/src/tedi/components/overlays/dropdown/dropdown.module.scss.cjs.js +1 -1
  173. package/src/tedi/components/overlays/dropdown/dropdown.module.scss.es.js +1 -0
  174. package/src/tedi/components/overlays/overlay/overlay-trigger.cjs.js +1 -1
  175. package/src/tedi/components/overlays/overlay/overlay-trigger.es.js +22 -21
  176. package/src/tedi/helpers/warn-deprecated/warn-deprecated.cjs.js +1 -0
  177. package/src/tedi/helpers/warn-deprecated/warn-deprecated.d.ts +12 -0
  178. package/src/tedi/helpers/warn-deprecated/warn-deprecated.es.js +11 -0
  179. package/src/tedi/index.d.ts +2 -1
  180. package/src/tedi/providers/label-provider/labels-map.cjs.js +1 -1
  181. package/src/tedi/providers/label-provider/labels-map.d.ts +44 -2
  182. package/src/tedi/providers/label-provider/labels-map.es.js +43 -1
  183. package/tedi.cjs.js +1 -1
  184. package/tedi.es.js +326 -324
@@ -1,67 +1,68 @@
1
- import { jsxs as q, jsx as i, Fragment as me } from "react/jsx-runtime";
2
- import { useFloating as ue, useClick as pe, useDismiss as ge, useRole as he, useInteractions as ke, FloatingPortal as ve, FloatingFocusManager as be } from "../../../../../external/@floating-ui/react/dist/floating-ui.react.es.js";
3
- import y from "../../../../../external/classnames/index.es.js";
4
- import Ce, { useState as N, useEffect as z } from "react";
5
- import { TextField as A } from "../textfield/textfield.es.js";
6
- import { TimePicker as xe } from "../time-picker/time-picker.es.js";
1
+ import { jsxs as G, jsx as i, Fragment as xe } from "react/jsx-runtime";
2
+ import { useFloating as ve, useClick as Ce, useDismiss as _e, useRole as Fe, useInteractions as Pe, FloatingPortal as Ie, FloatingFocusManager as Te } from "../../../../../external/@floating-ui/react/dist/floating-ui.react.es.js";
3
+ import O from "../../../../../external/classnames/index.es.js";
4
+ import we, { useState as M, useEffect as H } from "react";
5
+ import { TextField as J } from "../textfield/textfield.es.js";
6
+ import { TimePicker as Be } from "../time-picker/time-picker.es.js";
7
7
  import d from "./time-field.module.scss.es.js";
8
- import { normalizeTime as _e, TIMEPICKER_OFFSET as Fe } from "./time-field-helpers.es.js";
9
- import { TimePickerModal as Pe } from "./time-picker-modal/time-picker-modal.es.js";
10
- import { useBreakpointProps as Te } from "../../../helpers/hooks/use-breakpoint-props.es.js";
11
- import we, { isBreakpointBelow as Ie } from "../../../helpers/hooks/use-breakpoint.es.js";
12
- import { Dropdown as b } from "../../overlays/dropdown/dropdown.es.js";
13
- import { autoUpdate as ye } from "../../../../../external/@floating-ui/dom/dist/floating-ui.dom.es.js";
14
- import { offset as Ne, flip as Be, shift as Oe } from "../../../../../external/@floating-ui/react-dom/dist/floating-ui.react-dom.es.js";
15
- const Me = (C) => {
16
- const { getCurrentBreakpointProps: K } = Te(C.defaultServerBreakpoint), {
17
- id: G,
18
- label: H,
19
- value: c,
20
- defaultValue: J,
21
- onChange: x,
22
- readOnly: h = !1,
23
- disabled: s = !1,
24
- required: L,
25
- placeholder: Q,
8
+ import { normalizeTime as ye, TIMEPICKER_OFFSET as Ne } from "./time-field-helpers.es.js";
9
+ import { TimePickerModal as Oe } from "./time-picker-modal/time-picker-modal.es.js";
10
+ import { useBreakpointProps as Me } from "../../../helpers/hooks/use-breakpoint-props.es.js";
11
+ import { useLabels as Re } from "../../../providers/label-provider/use-labels.es.js";
12
+ import Ve, { isBreakpointBelow as Ee } from "../../../helpers/hooks/use-breakpoint.es.js";
13
+ import { Dropdown as v } from "../../overlays/dropdown/dropdown.es.js";
14
+ import { autoUpdate as Ue } from "../../../../../external/@floating-ui/dom/dist/floating-ui.dom.es.js";
15
+ import { offset as De, flip as Se, shift as je } from "../../../../../external/@floating-ui/react-dom/dist/floating-ui.react-dom.es.js";
16
+ const Le = (C) => {
17
+ const { getCurrentBreakpointProps: Q } = Me(C.defaultServerBreakpoint), { getLabel: W } = Re(), {
18
+ id: X,
19
+ label: Y,
20
+ value: m,
21
+ defaultValue: Z,
22
+ onChange: _,
23
+ readOnly: k = !1,
24
+ disabled: l = !1,
25
+ required: $,
26
+ placeholder: ee,
26
27
  inputProps: t,
27
- stepMinutes: B = 1,
28
- className: O,
29
- availableTimes: a,
30
- modal: _ = !1,
31
- modalProps: W
28
+ stepMinutes: R = 1,
29
+ className: V,
30
+ availableTimes: s,
31
+ modal: F = !1,
32
+ modalProps: te
32
33
  } = C, {
33
- useNativePicker: X = !1,
34
- timePickerTrigger: M = "button",
35
- showPicker: o = !0,
36
- availableTimesVariant: F = "grid-buttons",
37
- clearable: Y = !0
38
- } = K(C), R = c !== void 0, [Z, V] = N(c ?? J ?? ""), f = R ? c : Z, [P, T] = N(!1), [$, E] = N(!1), m = M === "input", l = X, ee = we(), u = !l && o && !h && !s && (_ === !0 || typeof _ == "string" && Ie(ee, _)), te = ue({
39
- open: P,
40
- onOpenChange: T,
41
- placement: m ? "bottom-start" : "bottom-end",
42
- middleware: [Ne(Fe), Be(), Oe()],
43
- whileElementsMounted: ye
44
- }), { refs: w, context: k, x: ie, y: oe, strategy: ne } = te, re = pe(k), le = ge(k), se = he(k, { role: "listbox" }), U = o && m && !h && !s && !l && !u, D = ke([...U ? [re] : [], le, se]), p = (e) => {
45
- const n = e.trim();
46
- R || V(n), x == null || x(n);
47
- }, ae = (e) => {
48
- var v;
49
- const n = e.target.value ?? "";
50
- (v = t == null ? void 0 : t.onBlur) == null || v.call(t, e);
51
- const r = _e(n);
52
- r !== null && r !== n && p(r);
34
+ useNativePicker: ie = !1,
35
+ timePickerTrigger: P = "button",
36
+ showPicker: n = !0,
37
+ availableTimesVariant: I = "grid-buttons",
38
+ clearable: oe = !0
39
+ } = Q(C), E = m !== void 0, [ne, U] = M(m ?? Z ?? ""), f = E ? m : ne, [T, w] = M(!1), [D, S] = M(!1), u = P === "input", o = ie, re = Ve(), c = !o && n && !k && !l && (F === !0 || typeof F == "string" && Ee(re, F)), ae = ve({
40
+ open: T,
41
+ onOpenChange: w,
42
+ placement: u ? "bottom-start" : "bottom-end",
43
+ middleware: [De(Ne), Se(), je()],
44
+ whileElementsMounted: Ue
45
+ }), { refs: B, context: b, x: le, y: se, strategy: ce } = ae, de = Ce(b), me = _e(b), ue = Fe(b, { role: "listbox" }), j = n && u && !k && !l && !o && !c, L = Pe([...j ? [de] : [], me, ue]), p = (e) => {
46
+ const r = e.trim();
47
+ E || U(r), _ == null || _(r);
48
+ }, fe = (e) => {
49
+ var x;
50
+ const r = e.target.value ?? "";
51
+ (x = t == null ? void 0 : t.onBlur) == null || x.call(t, e);
52
+ const a = ye(r);
53
+ a !== null && a !== r && p(a);
53
54
  };
54
- z(() => {
55
- c !== void 0 && V(c);
56
- }, [c]);
57
- const g = Ce.useRef(null);
58
- z(() => {
55
+ H(() => {
56
+ m !== void 0 && U(m);
57
+ }, [m]);
58
+ const g = we.useRef(null);
59
+ H(() => {
59
60
  var e;
60
- (e = g.current) != null && e.inner && w.setReference(g.current.inner);
61
- }, [w]);
62
- const de = () => {
63
- var n;
64
- const e = (n = g.current) == null ? void 0 : n.input;
61
+ (e = g.current) != null && e.inner && B.setReference(g.current.inner);
62
+ }, [B]);
63
+ const pe = () => {
64
+ var r;
65
+ const e = (r = g.current) == null ? void 0 : r.input;
65
66
  if (e) {
66
67
  if (typeof e.showPicker == "function") {
67
68
  e.showPicker();
@@ -69,108 +70,109 @@ const Me = (C) => {
69
70
  }
70
71
  e.focus();
71
72
  }
72
- }, ce = () => T((e) => !e), S = () => E(!0), fe = () => {
73
- !o || s || (l ? de() : u ? S() : M === "button" && ce());
74
- }, j = u && m && !h ? () => {
75
- S();
76
- } : void 0, I = {
73
+ }, ge = () => w((e) => !e), q = () => S(!0), he = () => {
74
+ !n || l || (o ? pe() : c ? q() : P === "button" && ge());
75
+ }, z = c && u && !k ? () => {
76
+ q();
77
+ } : void 0, y = !o && n && !l && I === "dropdown" && !!(s != null && s.length), A = c ? "dialog" : "listbox", K = c ? D : T, ke = n && !o && !y && (P === "button" || c), be = n && u && !o && !y, N = {
77
78
  ...t,
78
- id: G,
79
- label: H,
79
+ id: X,
80
+ label: Y,
80
81
  value: f,
81
- placeholder: Q,
82
- readOnly: h || !l && m,
83
- disabled: s || (t == null ? void 0 : t.disabled),
84
- icon: o ? "schedule" : { name: "schedule", color: "inherit" },
85
- isClearable: Y,
86
- required: L,
87
- onIconClick: o ? fe : void 0,
82
+ placeholder: ee,
83
+ readOnly: k || !o && u,
84
+ disabled: l || (t == null ? void 0 : t.disabled),
85
+ icon: n ? "schedule" : { name: "schedule", color: "inherit" },
86
+ isClearable: oe,
87
+ required: $,
88
+ onIconClick: n ? he : void 0,
89
+ iconButtonProps: {
90
+ "aria-label": W("time-field.open-picker"),
91
+ ...ke && { "aria-haspopup": A, "aria-expanded": K },
92
+ ...t == null ? void 0 : t.iconButtonProps
93
+ },
88
94
  onChange: p,
89
- onBlur: ae,
90
- className: y(
95
+ onBlur: fe,
96
+ className: O(
91
97
  d["tedi-time-field__textfield"],
92
- { [d["tedi-time-field__icon--disabled"]]: !o || s },
93
- { [d["tedi-time-field__textfield--disabled"]]: s || (t == null ? void 0 : t.disabled) },
94
- { [d["tedi-time-field--native"]]: l }
98
+ { [d["tedi-time-field__icon--disabled"]]: !n || l },
99
+ { [d["tedi-time-field__textfield--disabled"]]: l || (t == null ? void 0 : t.disabled) },
100
+ { [d["tedi-time-field--native"]]: o }
95
101
  ),
96
102
  input: {
97
103
  ...t == null ? void 0 : t.input,
98
- ...l && { type: "time" },
99
- ...j && { onClick: j }
104
+ ...o && { type: "time" },
105
+ ...z && { onClick: z },
106
+ ...be && { role: "combobox", "aria-haspopup": A, "aria-expanded": K }
100
107
  }
101
108
  };
102
- if (!l && o && !s && F === "dropdown" && !!(a != null && a.length)) {
103
- const e = a.indexOf(f), n = e >= 0 ? e : 0;
104
- return /* @__PURE__ */ q(b, { width: "trigger", defaultActiveIndex: n, children: [
105
- /* @__PURE__ */ i(b.Trigger, { children: /* @__PURE__ */ i(
109
+ if (y) {
110
+ const e = s.indexOf(f), r = e >= 0 ? e : 0;
111
+ return /* @__PURE__ */ G(v, { width: "trigger", defaultActiveIndex: r, children: [
112
+ /* @__PURE__ */ i(v.Trigger, { children: /* @__PURE__ */ i(
106
113
  "div",
107
114
  {
108
- className: y(d["tedi-time-field__container"], O, {
109
- [d["tedi-time-field__container--native"]]: l
115
+ role: "combobox",
116
+ className: O(d["tedi-time-field__container"], V, {
117
+ [d["tedi-time-field__container--native"]]: o
110
118
  }),
111
119
  children: /* @__PURE__ */ i(
112
- A,
120
+ J,
113
121
  {
114
122
  ref: g,
115
- ...I,
123
+ ...N,
116
124
  input: {
117
- ...I.input,
118
- ...!m && {
119
- onClick: (r) => r.stopPropagation()
125
+ ...N.input,
126
+ ...!u && {
127
+ onClick: (a) => a.stopPropagation()
120
128
  }
121
129
  }
122
130
  }
123
131
  )
124
132
  }
125
133
  ) }),
126
- /* @__PURE__ */ i(b.Content, { children: a.map((r, v) => /* @__PURE__ */ i(b.Item, { index: v, active: r === f, onClick: () => p(r), children: r }, r)) })
134
+ /* @__PURE__ */ i(v.Content, { children: s.map((a, x) => /* @__PURE__ */ i(v.Item, { index: x, active: a === f, onClick: () => p(a), children: a }, a)) })
127
135
  ] });
128
136
  }
129
- return /* @__PURE__ */ q(me, { children: [
130
- /* @__PURE__ */ i(
131
- "div",
132
- {
133
- className: y(d["tedi-time-field__container"], O),
134
- ...U ? D.getReferenceProps() : {},
135
- "aria-haspopup": o ? "listbox" : void 0,
136
- tabIndex: -1,
137
- children: /* @__PURE__ */ i(A, { ref: g, "aria-expanded": o ? P : void 0, ...I })
138
- }
139
- ),
140
- u && /* @__PURE__ */ i(
141
- Pe,
137
+ const h = {
138
+ ...j ? L.getReferenceProps() : {}
139
+ };
140
+ return delete h.role, delete h["aria-haspopup"], delete h["aria-expanded"], delete h["aria-controls"], /* @__PURE__ */ G(xe, { children: [
141
+ /* @__PURE__ */ i("div", { className: O(d["tedi-time-field__container"], V), ...h, tabIndex: -1, children: /* @__PURE__ */ i(J, { ref: g, ...N }) }),
142
+ c && /* @__PURE__ */ i(
143
+ Oe,
142
144
  {
143
- open: $,
144
- onOpenChange: E,
145
+ open: D,
146
+ onOpenChange: S,
145
147
  value: f,
146
148
  onConfirm: p,
147
- stepMinutes: B,
148
- availableTimes: a,
149
- gridVariant: F === "grid-radio" ? "radio" : "button",
150
- modalProps: W
149
+ stepMinutes: R,
150
+ availableTimes: s,
151
+ gridVariant: I === "grid-radio" ? "radio" : "button",
152
+ modalProps: te
151
153
  }
152
154
  ),
153
- !l && o && !s && !u && /* @__PURE__ */ i(ve, { children: P && /* @__PURE__ */ i(be, { context: k, modal: !1, initialFocus: -1, children: /* @__PURE__ */ i(
155
+ !o && n && !l && !c && /* @__PURE__ */ i(Ie, { children: T && /* @__PURE__ */ i(Te, { context: b, modal: !1, initialFocus: -1, children: /* @__PURE__ */ i(
154
156
  "div",
155
157
  {
156
- ref: w.setFloating,
157
- ...D.getFloatingProps({
158
+ ref: B.setFloating,
159
+ ...L.getFloatingProps({
158
160
  style: {
159
- position: ne,
160
- top: oe ?? 0,
161
- left: ie ?? 0
161
+ position: ce,
162
+ top: se ?? 0,
163
+ left: le ?? 0
162
164
  }
163
165
  }),
164
166
  children: /* @__PURE__ */ i(
165
- xe,
167
+ Be,
166
168
  {
167
169
  value: f,
168
- stepMinutes: B,
169
- availableTimes: a,
170
+ stepMinutes: R,
171
+ availableTimes: s,
170
172
  onChange: (e) => {
171
- p(e), a && T(!1);
173
+ p(e), s && w(!1);
172
174
  },
173
- gridVariant: F === "grid-radio" ? "radio" : "button",
175
+ gridVariant: I === "grid-radio" ? "radio" : "button",
174
176
  className: d["tedi-time-field__picker-wrapper"]
175
177
  }
176
178
  )
@@ -178,7 +180,7 @@ const Me = (C) => {
178
180
  ) }) })
179
181
  ] });
180
182
  };
181
- Me.displayName = "TimeField";
183
+ Le.displayName = "TimeField";
182
184
  export {
183
- Me as TimeField
185
+ Le as TimeField
184
186
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("react/jsx-runtime"),v=require("../../../../../../../external/classnames/index.cjs.js"),N=require("../../../../base/icon/icon.cjs.js"),h=require("../../../../buttons/button/button.cjs.js"),q=require("../../../../buttons/floating-button/floating-button.cjs.js"),l=require("./mobile-nav-toggle.module.scss.cjs.js"),x=require("../../../../../providers/label-provider/use-labels.cjs.js"),n=({menuOpen:e,toggleMenu:i,referenceRef:c,getReferenceProps:d=()=>({}),variant:o="mobile",showLabel:m=!1,label:t,className:_})=>{const{getLabel:y}=x.useLabels(),u=t!==void 0?typeof t=="function"?t(e):t:y("header.toggle",e),g=o==="collapse"?e?"right_panel_open":"left_panel_open":e?"close":"menu",r=m&&o==="mobile",b=v.default(l.default["tedi-mobile-nav-toggle"],{[l.default["tedi-mobile-nav-toggle--open"]]:e,[l.default[`tedi-mobile-nav-toggle--${o}`]]:!0,[l.default["tedi-mobile-nav-toggle--with-label"]]:r},_),f=a=>{(a.key==="Enter"||a.key===" ")&&(a.preventDefault(),i(!e))};if(r)return s.jsxs("button",{...d(),ref:c,type:"button","aria-expanded":e,className:b,onClick:()=>i(!e),onKeyDown:f,children:[s.jsx(N.Icon,{name:g,size:24,className:l.default["tedi-mobile-nav-toggle__icon"],color:"inherit"}),s.jsx("span",{className:l.default["tedi-mobile-nav-toggle__label"],children:u})]});const p=o==="collapse"?q.FloatingButton:h.Button;return s.jsx(p,{...d(),ref:c,icon:{name:g,className:l.default["tedi-mobile-nav-toggle__icon"],size:o==="collapse"?18:24},visualType:o==="collapse"?"secondary":"primary",className:b,onClick:()=>i(!e),onKeyDown:f,position:o==="collapse"?"absolute":"static",size:o==="collapse"?"small":"",children:u})},T=n;exports.MobileNavToggle=n;exports.SidenavToggle=T;exports.default=n;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),y=require("../../../../../../../external/classnames/index.cjs.js"),N=require("../../../../../helpers/warn-deprecated/warn-deprecated.cjs.js"),T=require("../../../../base/icon/icon.cjs.js"),h=require("../../../../buttons/button/button.cjs.js"),q=require("../../../../buttons/floating-button/floating-button.cjs.js"),l=require("./mobile-nav-toggle.module.scss.cjs.js"),x=require("../../../../../providers/label-provider/use-labels.cjs.js"),n=({menuOpen:e,toggleMenu:a,referenceRef:c,getReferenceProps:r=()=>({}),variant:o="mobile",showLabel:f=!1,label:s,className:p})=>{const{getLabel:v}=x.useLabels(),d=s!==void 0?typeof s=="function"?s(e):s:v("header.toggle",e),u=o==="collapse"?e?"right_panel_open":"left_panel_open":e?"close":"menu",g=f&&o==="mobile",b=y.default(l.default["tedi-mobile-nav-toggle"],{[l.default["tedi-mobile-nav-toggle--open"]]:e,[l.default[`tedi-mobile-nav-toggle--${o}`]]:!0,[l.default["tedi-mobile-nav-toggle--with-label"]]:g},p),m=i=>{(i.key==="Enter"||i.key===" ")&&(i.preventDefault(),a(!e))};if(g)return t.jsxs("button",{...r(),ref:c,type:"button","aria-expanded":e,className:b,onClick:()=>a(!e),onKeyDown:m,children:[t.jsx(T.Icon,{name:u,size:24,className:l.default["tedi-mobile-nav-toggle__icon"],color:"inherit"}),t.jsx("span",{className:l.default["tedi-mobile-nav-toggle__label"],children:d})]});const _=o==="collapse"?q.FloatingButton:h.Button;return t.jsx(_,{...r(),ref:c,icon:{name:u,className:l.default["tedi-mobile-nav-toggle__icon"],size:o==="collapse"?18:24},visualType:o==="collapse"?"secondary":"primary",className:b,onClick:()=>a(!e),onKeyDown:m,position:o==="collapse"?"absolute":"static",size:o==="collapse"?"small":"",children:d})},j=e=>(N.warnDeprecated("SidenavToggle","Use `MobileNavToggle` (same component, vendor-neutral name)."),t.jsx(n,{...e}));exports.MobileNavToggle=n;exports.SidenavToggle=j;exports.default=n;
@@ -44,7 +44,7 @@ export type MobileNavToggleProps = {
44
44
  };
45
45
  export declare const MobileNavToggle: ({ menuOpen, toggleMenu, referenceRef, getReferenceProps, variant, showLabel, label, className, }: MobileNavToggleProps) => import("react/jsx-runtime").JSX.Element;
46
46
  /** @deprecated Use `MobileNavToggle` — same component, vendor-neutral name. */
47
- export declare const SidenavToggle: ({ menuOpen, toggleMenu, referenceRef, getReferenceProps, variant, showLabel, label, className, }: MobileNavToggleProps) => import("react/jsx-runtime").JSX.Element;
47
+ export declare const SidenavToggle: (props: MobileNavToggleProps) => import("react/jsx-runtime").JSX.Element;
48
48
  /** @deprecated Use `MobileNavToggleProps`. */
49
49
  export type SidenavToggleProps = MobileNavToggleProps;
50
50
  /** @deprecated Use `MobileNavToggleVariant`. */
@@ -1,21 +1,22 @@
1
- import { jsxs as _, jsx as a } from "react/jsx-runtime";
2
- import h from "../../../../../../../external/classnames/index.es.js";
3
- import { Icon as N } from "../../../../base/icon/icon.es.js";
4
- import { Button as u } from "../../../../buttons/button/button.es.js";
5
- import { FloatingButton as v } from "../../../../buttons/floating-button/floating-button.es.js";
1
+ import { jsxs as _, jsx as s } from "react/jsx-runtime";
2
+ import N from "../../../../../../../external/classnames/index.es.js";
3
+ import { warnDeprecated as h } from "../../../../../helpers/warn-deprecated/warn-deprecated.es.js";
4
+ import { Icon as u } from "../../../../base/icon/icon.es.js";
5
+ import { Button as v } from "../../../../buttons/button/button.es.js";
6
+ import { FloatingButton as w } from "../../../../buttons/floating-button/floating-button.es.js";
6
7
  import l from "./mobile-nav-toggle.module.scss.es.js";
7
- import { useLabels as L } from "../../../../../providers/label-provider/use-labels.es.js";
8
- const k = ({
8
+ import { useLabels as D } from "../../../../../providers/label-provider/use-labels.es.js";
9
+ const L = ({
9
10
  menuOpen: o,
10
- toggleMenu: s,
11
- referenceRef: c,
12
- getReferenceProps: n = () => ({}),
11
+ toggleMenu: i,
12
+ referenceRef: n,
13
+ getReferenceProps: c = () => ({}),
13
14
  variant: e = "mobile",
14
15
  showLabel: b = !1,
15
16
  label: t,
16
17
  className: f
17
18
  }) => {
18
- const { getLabel: y } = L(), m = t !== void 0 ? typeof t == "function" ? t(o) : t : y("header.toggle", o), r = e === "collapse" ? o ? "right_panel_open" : "left_panel_open" : o ? "close" : "menu", g = b && e === "mobile", d = h(
19
+ const { getLabel: y } = D(), m = t !== void 0 ? typeof t == "function" ? t(o) : t : y("header.toggle", o), r = e === "collapse" ? o ? "right_panel_open" : "left_panel_open" : o ? "close" : "menu", g = b && e === "mobile", d = N(
19
20
  l["tedi-mobile-nav-toggle"],
20
21
  {
21
22
  [l["tedi-mobile-nav-toggle--open"]]: o,
@@ -23,29 +24,29 @@ const k = ({
23
24
  [l["tedi-mobile-nav-toggle--with-label"]]: g
24
25
  },
25
26
  f
26
- ), p = (i) => {
27
- (i.key === "Enter" || i.key === " ") && (i.preventDefault(), s(!o));
27
+ ), p = (a) => {
28
+ (a.key === "Enter" || a.key === " ") && (a.preventDefault(), i(!o));
28
29
  };
29
30
  return g ? /* @__PURE__ */ _(
30
31
  "button",
31
32
  {
32
- ...n(),
33
- ref: c,
33
+ ...c(),
34
+ ref: n,
34
35
  type: "button",
35
36
  "aria-expanded": o,
36
37
  className: d,
37
- onClick: () => s(!o),
38
+ onClick: () => i(!o),
38
39
  onKeyDown: p,
39
40
  children: [
40
- /* @__PURE__ */ a(N, { name: r, size: 24, className: l["tedi-mobile-nav-toggle__icon"], color: "inherit" }),
41
- /* @__PURE__ */ a("span", { className: l["tedi-mobile-nav-toggle__label"], children: m })
41
+ /* @__PURE__ */ s(u, { name: r, size: 24, className: l["tedi-mobile-nav-toggle__icon"], color: "inherit" }),
42
+ /* @__PURE__ */ s("span", { className: l["tedi-mobile-nav-toggle__label"], children: m })
42
43
  ]
43
44
  }
44
- ) : /* @__PURE__ */ a(
45
- e === "collapse" ? v : u,
45
+ ) : /* @__PURE__ */ s(
46
+ e === "collapse" ? w : v,
46
47
  {
47
- ...n(),
48
- ref: c,
48
+ ...c(),
49
+ ref: n,
49
50
  icon: {
50
51
  name: r,
51
52
  className: l["tedi-mobile-nav-toggle__icon"],
@@ -53,16 +54,16 @@ const k = ({
53
54
  },
54
55
  visualType: e === "collapse" ? "secondary" : "primary",
55
56
  className: d,
56
- onClick: () => s(!o),
57
+ onClick: () => i(!o),
57
58
  onKeyDown: p,
58
59
  position: e === "collapse" ? "absolute" : "static",
59
60
  size: e === "collapse" ? "small" : "",
60
61
  children: m
61
62
  }
62
63
  );
63
- }, j = k;
64
+ }, S = (o) => (h("SidenavToggle", "Use `MobileNavToggle` (same component, vendor-neutral name)."), /* @__PURE__ */ s(L, { ...o }));
64
65
  export {
65
- k as MobileNavToggle,
66
- j as SidenavToggle,
67
- k as default
66
+ L as MobileNavToggle,
67
+ S as SidenavToggle,
68
+ L as default
68
69
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),U=require("../../../../../external/@floating-ui/react/dist/floating-ui.react.cjs.js"),l=require("../../../../../external/classnames/index.cjs.js"),m=require("react"),d=require("../../base/icon/icon.cjs.js"),f=require("../../buttons/button/button.cjs.js"),M=require("../sidenav/components/sidenav-item/sidenav-item.cjs.js"),n=require("../sidenav/sidenav.module.scss.cjs.js"),D=require("../../../providers/label-provider/use-labels.cjs.js"),q=({navItems:h,ariaLabel:y,linkAs:v,isOpen:w,onClose:r,showOverlay:B=!0,id:G,className:P})=>{var k,g,p,I,S,C,L;const{getLabel:b}=D.useLabels(),[s,c]=m.useState([{items:h}]);m.useEffect(()=>{c([{items:h}])},[h]);const a=s[s.length-1],R=s.length===1,x=e=>{var _;const i=!!(e.subItems||e.subItemGroups),o=!!(e.href||e.to);if(!i){r();return}const u=((_=e.subItemGroups)==null?void 0:_.flatMap(H=>H.subItems))||e.subItems||[];c([...s,{items:u,parent:e,renderParentLink:o}])},T=()=>{c(s.slice(0,-1))},z=()=>{c([s[0]])},F=((g=(k=a.parent)==null?void 0:k.subItems)==null?void 0:g.length)??((I=(p=a.parent)==null?void 0:p.subItemGroups)==null?void 0:I.length),O=s.length>1&&!(a.renderParentLink&&F),N=(e,i)=>i===1?!(e.subItems||e.subItemGroups)?t.jsx(M.SideNavItem,{...e,as:v,level:i,onItemClick:r,className:l.default(n.default["tedi-sidenav__item--mobile"],e.className)}):t.jsx("li",{className:l.default(n.default["tedi-sidenav__item"],n.default["tedi-sidenav__item--mobile"]),children:t.jsxs("button",{onClick:()=>x(e),className:n.default["tedi-sidenav__link"],children:[e.icon&&t.jsx(d.Icon,{name:typeof e.icon=="string"?e.icon:e.icon.name,color:"white",className:n.default["tedi-sidenav__icon"]}),t.jsx("span",{className:n.default["tedi-sidenav__title"],children:e.children}),t.jsx(d.Icon,{name:"expand_more",color:"white",className:n.default["tedi-sidenav__toggle-icon"]})]})}):E(e,i),E=(e,i)=>{const o=!!(e.href||e.to),u=!!(e.subItems||e.subItemGroups);return o?t.jsx(M.SideNavItem,{...e,as:v,level:i,icon:void 0,onItemClick:r,className:l.default(n.default["tedi-sidenav__sub-item"],e.className)}):t.jsx("li",{className:l.default(n.default["tedi-sidenav__item"]),children:t.jsxs(f.Button,{noStyle:!0,onClick:()=>u?x(e):r(),className:n.default["tedi-sidenav__link"],children:[t.jsx("span",{className:n.default["tedi-sidenav__title"],children:e.children}),u?t.jsx(d.Icon,{name:"expand_more",color:"white",className:n.default["tedi-sidenav__toggle-icon"]}):null]})})},j=t.jsxs("nav",{"data-name":"mobile-sidenav",className:l.default(n.default["tedi-sidenav"],n.default["tedi-sidenav--mobile"],P),"aria-label":y,id:G,children:[t.jsx("div",{className:n.default["tedi-sidenav__list"],children:!R&&t.jsxs("div",{className:n.default["tedi-sidenav__back-buttons"],children:[s.length>1&&t.jsxs(f.Button,{noStyle:!0,onClick:z,className:l.default(n.default["tedi-sidenav__link"],n.default["tedi-sidenav__back-button"]),children:[t.jsx(d.Icon,{name:"arrow_back",size:16,color:"white"}),t.jsx("span",{children:b("sidenav.backToMainMenu")})]}),s.length>2&&t.jsxs(f.Button,{noStyle:!0,onClick:T,className:l.default(n.default["tedi-sidenav__link"],n.default["tedi-sidenav__back-button"]),children:[t.jsx(d.Icon,{name:"arrow_back",size:16,color:"white"}),t.jsx("span",{children:((C=(S=s[s.length-1])==null?void 0:S.parent)==null?void 0:C.children)+" "+b("sidenav.backtoMenu")})]})]})}),O&&t.jsx("div",{className:l.default(n.default["tedi-sidenav__subheading"],n.default["tedi-sidenav__subheading--mobile"]),children:(L=a.parent)==null?void 0:L.children}),t.jsxs("ul",{className:n.default["tedi-sidenav__list"],role:"menubar",children:[a.renderParentLink&&a.parent&&t.jsx("li",{className:n.default["tedi-sidenav__list-item"],children:t.jsx("div",{className:l.default(n.default["tedi-sidenav__collapse"]),children:N(a.parent,s.length)})}),!a.renderParentLink&&a.items.map((e,i)=>t.jsx(m.Fragment,{children:N(e,s.length)},e.id||i))]})]});return w?B?t.jsx(U.FloatingOverlay,{style:{top:"0",position:"relative",height:"100%"},className:n.default["tedi-sidenav__overlay"],children:j}):j:null},J=q;exports.MobileNav=q;exports.SideNavMobile=J;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),K=require("../../../../../external/@floating-ui/react/dist/floating-ui.react.cjs.js"),c=require("../../../../../external/classnames/index.cjs.js"),u=require("react"),Q=require("../../../helpers/warn-deprecated/warn-deprecated.cjs.js"),_=require("../../base/icon/icon.cjs.js"),g=require("../../buttons/button/button.cjs.js"),E=require("../sidenav/components/sidenav-item/sidenav-item.cjs.js"),n=require("../sidenav/sidenav.module.scss.cjs.js"),V=require("../../../providers/label-provider/use-labels.cjs.js"),W=typeof window<"u"?u.useLayoutEffect:u.useEffect,X=d=>{let f=(d==null?void 0:d.parentElement)??null;for(;f;){const l=getComputedStyle(f);if(l.transform!=="none"||l.perspective!=="none"||l.filter!==""&&l.filter!=="none"||/\b(transform|perspective|filter)\b/.test(l.willChange)||/\b(layout|paint|strict|content)\b/.test(l.contain))return f;f=f.parentElement}return null},B=({navItems:d,ariaLabel:f,linkAs:l,isOpen:h,onClose:v,showOverlay:m=!0,id:T,className:z})=>{var w,S,C,L,M,q,R;const{getLabel:x}=V.useLabels(),[a,p]=u.useState([{items:d}]),N=u.useRef(null),[G,k]=u.useState("var(--layout-header-height)");u.useEffect(()=>{p([{items:d}])},[d]),W(()=>{if(!h||!m||typeof document>"u")return;const e=X(N.current),s=(e??document).querySelector("header")??document.querySelector("header");if(!s){k("var(--layout-header-height)");return}const o=()=>{const b=e?e.getBoundingClientRect().top:0;k(`${Math.max(0,Math.round(s.getBoundingClientRect().bottom-b))}px`)};o(),window.addEventListener("resize",o);let i;return typeof ResizeObserver<"u"&&(i=new ResizeObserver(o),i.observe(s),e&&i.observe(e)),()=>{window.removeEventListener("resize",o),i==null||i.disconnect()}},[h,m]),u.useEffect(()=>{if(!h||!m||typeof document>"u")return;const{body:e}=document,s=e.style.overflow;return e.style.overflow="hidden",()=>{e.style.overflow=s}},[h,m]);const r=a[a.length-1],P=a.length===1,j=e=>{var b;const s=!!(e.subItems||e.subItemGroups),o=!!(e.href||e.to);if(!s){v();return}const i=((b=e.subItemGroups)==null?void 0:b.flatMap(J=>J.subItems))||e.subItems||[];p([...a,{items:i,parent:e,renderParentLink:o}])},D=()=>{p(a.slice(0,-1))},F=()=>{p([a[0]])},U=((S=(w=r.parent)==null?void 0:w.subItems)==null?void 0:S.length)??((L=(C=r.parent)==null?void 0:C.subItemGroups)==null?void 0:L.length),H=a.length>1&&!(r.renderParentLink&&U),y=(e,s)=>s===1?!(e.subItems||e.subItemGroups)?t.jsx(E.SideNavItem,{...e,as:l,level:s,onItemClick:v,className:c.default(n.default["tedi-sidenav__item--mobile"],e.className)}):t.jsx("li",{className:c.default(n.default["tedi-sidenav__item"],n.default["tedi-sidenav__item--mobile"]),children:t.jsxs("button",{onClick:()=>j(e),className:n.default["tedi-sidenav__link"],children:[e.icon&&t.jsx(_.Icon,{name:typeof e.icon=="string"?e.icon:e.icon.name,color:"white",className:n.default["tedi-sidenav__icon"]}),t.jsx("span",{className:n.default["tedi-sidenav__title"],children:e.children}),t.jsx(_.Icon,{name:"expand_more",color:"white",className:n.default["tedi-sidenav__toggle-icon"]})]})}):$(e,s),$=(e,s)=>{const o=!!(e.href||e.to),i=!!(e.subItems||e.subItemGroups);return o?t.jsx(E.SideNavItem,{...e,as:l,level:s,icon:void 0,onItemClick:v,className:c.default(n.default["tedi-sidenav__sub-item"],e.className)}):t.jsx("li",{className:c.default(n.default["tedi-sidenav__item"]),children:t.jsxs(g.Button,{noStyle:!0,onClick:()=>i?j(e):v(),className:n.default["tedi-sidenav__link"],children:[t.jsx("span",{className:n.default["tedi-sidenav__title"],children:e.children}),i?t.jsx(_.Icon,{name:"expand_more",color:"white",className:n.default["tedi-sidenav__toggle-icon"]}):null]})})},I=t.jsxs("nav",{"data-name":"mobile-sidenav",className:c.default(n.default["tedi-sidenav"],n.default["tedi-sidenav--mobile"],z),"aria-label":f,id:T,children:[t.jsx("div",{className:n.default["tedi-sidenav__list"],children:!P&&t.jsxs("div",{className:n.default["tedi-sidenav__back-buttons"],children:[a.length>1&&t.jsxs(g.Button,{noStyle:!0,onClick:F,className:c.default(n.default["tedi-sidenav__link"],n.default["tedi-sidenav__back-button"]),children:[t.jsx(_.Icon,{name:"arrow_back",size:16,color:"white"}),t.jsx("span",{children:x("sidenav.backToMainMenu")})]}),a.length>2&&t.jsxs(g.Button,{noStyle:!0,onClick:D,className:c.default(n.default["tedi-sidenav__link"],n.default["tedi-sidenav__back-button"]),children:[t.jsx(_.Icon,{name:"arrow_back",size:16,color:"white"}),t.jsx("span",{children:((q=(M=a[a.length-1])==null?void 0:M.parent)==null?void 0:q.children)+" "+x("sidenav.backtoMenu")})]})]})}),H&&t.jsx("div",{className:c.default(n.default["tedi-sidenav__subheading"],n.default["tedi-sidenav__subheading--mobile"]),children:(R=r.parent)==null?void 0:R.children}),t.jsxs("ul",{className:n.default["tedi-sidenav__list"],children:[r.renderParentLink&&r.parent&&t.jsx("li",{className:n.default["tedi-sidenav__list-item"],children:t.jsx("div",{className:c.default(n.default["tedi-sidenav__collapse"]),children:y(r.parent,a.length)})}),!r.renderParentLink&&r.items.map((e,s)=>t.jsx(u.Fragment,{children:y(e,a.length)},e.id||s))]})]});return h?m?t.jsx(K.FloatingOverlay,{ref:N,style:{top:G},className:n.default["tedi-sidenav__overlay"],onMouseDown:e=>{e.target===e.currentTarget&&v()},children:I}):I:null},Y=d=>(Q.warnDeprecated("SideNavMobile","Use `MobileNav` (same component, vendor-neutral name)."),t.jsx(B,{...d}));exports.MobileNav=B;exports.SideNavMobile=Y;
@@ -15,6 +15,6 @@ export declare const MobileNav: <C extends React.ElementType = "a">({ navItems,
15
15
  * @deprecated Use `MobileNav` (same component, vendor-neutral name). Kept for
16
16
  * backward compatibility with the `SideNav.Mobile` sub-component alias.
17
17
  */
18
- export declare const SideNavMobile: <C extends React.ElementType = "a">({ navItems, ariaLabel, linkAs, isOpen, onClose, showOverlay, id, className, }: MobileNavProps<C>) => import("react/jsx-runtime").JSX.Element | null;
18
+ export declare const SideNavMobile: <C extends React.ElementType = "a">(props: MobileNavProps<C>) => import("react/jsx-runtime").JSX.Element;
19
19
  /** @deprecated Use `MobileNavProps`. */
20
20
  export type SideNavMobileProps<C extends React.ElementType = 'a'> = MobileNavProps<C>;