@tedi-design-system/react 17.2.0-rc.1 → 18.0.0-rc.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundle-stats.html +1 -1
- package/external/@floating-ui/core/dist/floating-ui.core.cjs.js +1 -1
- package/external/@floating-ui/core/dist/floating-ui.core.es.js +275 -271
- package/external/@floating-ui/dom/dist/floating-ui.dom.cjs.js +1 -1
- package/external/@floating-ui/dom/dist/floating-ui.dom.es.js +189 -188
- package/external/@floating-ui/react/dist/floating-ui.react.cjs.js +1 -1
- package/external/@floating-ui/react/dist/floating-ui.react.es.js +1419 -1538
- package/external/@floating-ui/react/dist/floating-ui.react.utils.cjs.js +1 -1
- package/external/@floating-ui/react/dist/floating-ui.react.utils.es.js +348 -81
- package/external/@floating-ui/react-dom/dist/floating-ui.react-dom.cjs.js +1 -1
- package/external/@floating-ui/react-dom/dist/floating-ui.react-dom.es.js +113 -93
- package/external/@floating-ui/utils/dist/floating-ui.utils.cjs.js +1 -1
- package/external/@floating-ui/utils/dist/floating-ui.utils.dom.cjs.js +1 -1
- package/external/@floating-ui/utils/dist/floating-ui.utils.dom.es.js +97 -97
- package/external/@floating-ui/utils/dist/floating-ui.utils.es.js +66 -68
- package/external/lodash-es/_baseUnset.cjs.js +1 -1
- package/external/lodash-es/_baseUnset.es.js +12 -19
- package/external/tabbable/dist/index.esm.cjs.js +1 -1
- package/external/tabbable/dist/index.esm.es.js +72 -63
- package/index.css +1 -1
- package/package.json +4 -4
- package/src/community/components/form/pickers/calendar/calendar.d.ts +6 -0
- package/src/community/components/form/pickers/datepicker/datepicker.d.ts +6 -0
- package/src/community/components/form/pickers/datetimepicker/datetimepicker.d.ts +6 -0
- package/src/community/components/form/pickers/timepicker/timepicker.d.ts +6 -0
- package/src/community/components/modal/modal-closer.d.ts +6 -0
- package/src/community/components/modal/modal-provider.d.ts +6 -0
- package/src/community/components/modal/modal-trigger.d.ts +6 -0
- package/src/community/components/modal/modal.d.ts +6 -0
- package/src/tedi/components/buttons/button-group/button-group.cjs.js +1 -1
- package/src/tedi/components/buttons/button-group/button-group.es.js +4 -4
- package/src/tedi/components/buttons/collapse/collapse.cjs.js +1 -1
- package/src/tedi/components/buttons/collapse/collapse.d.ts +23 -0
- package/src/tedi/components/buttons/collapse/collapse.es.js +62 -59
- package/src/tedi/components/buttons/collapse/collapse.module.scss.cjs.js +1 -1
- package/src/tedi/components/buttons/collapse/collapse.module.scss.es.js +2 -1
- package/src/tedi/components/content/calendar/calendar-grid.cjs.js +1 -1
- package/src/tedi/components/content/calendar/calendar-grid.es.js +7 -6
- package/src/tedi/components/content/calendar/calendar.cjs.js +1 -1
- package/src/tedi/components/content/calendar/calendar.d.ts +9 -1
- package/src/tedi/components/content/calendar/calendar.es.js +72 -71
- package/src/tedi/components/content/calendar/calendar.module.scss.cjs.js +1 -1
- package/src/tedi/components/content/calendar/calendar.module.scss.es.js +3 -2
- package/src/tedi/components/content/calendar/components/calendar-header/calendar-header.cjs.js +1 -1
- package/src/tedi/components/content/calendar/components/calendar-header/calendar-header.es.js +99 -79
- package/src/tedi/components/content/table/index.d.ts +6 -0
- package/src/tedi/components/content/table/table-columns-menu/table-columns-menu.cjs.js +1 -0
- package/src/tedi/components/content/table/table-columns-menu/table-columns-menu.d.ts +15 -0
- package/src/tedi/components/content/table/table-columns-menu/table-columns-menu.es.js +37 -0
- package/src/tedi/components/content/table/table-context.cjs.js +1 -0
- package/src/tedi/components/content/table/table-context.d.ts +3 -0
- package/src/tedi/components/content/table/table-context.es.js +11 -0
- package/src/tedi/components/content/table/table-header-button/table-header-button.cjs.js +1 -0
- package/src/tedi/components/content/table/table-header-button/table-header-button.d.ts +51 -0
- package/src/tedi/components/content/table/table-header-button/table-header-button.es.js +42 -0
- package/src/tedi/components/content/table/table-header-button/table-header-button.module.scss.cjs.js +1 -0
- package/src/tedi/components/content/table/table-header-button/table-header-button.module.scss.es.js +7 -0
- package/src/tedi/components/content/table/table-toolbar/table-toolbar.cjs.js +1 -0
- package/src/tedi/components/content/table/table-toolbar/table-toolbar.d.ts +21 -0
- package/src/tedi/components/content/table/table-toolbar/table-toolbar.es.js +9 -0
- package/src/tedi/components/content/table/table.cjs.js +1 -0
- package/src/tedi/components/content/table/table.d.ts +519 -0
- package/src/tedi/components/content/table/table.es.js +856 -0
- package/src/tedi/components/content/table/table.module.scss.cjs.js +1 -0
- package/src/tedi/components/content/table/table.module.scss.es.js +54 -0
- package/src/tedi/components/content/table/use-table-persistence.cjs.js +1 -0
- package/src/tedi/components/content/table/use-table-persistence.d.ts +13 -0
- package/src/tedi/components/content/table/use-table-persistence.es.js +53 -0
- package/src/tedi/components/filter/filter/filter-group-context.cjs.js +1 -0
- package/src/tedi/components/filter/filter/filter-group-context.d.ts +8 -0
- package/src/tedi/components/filter/filter/filter-group-context.es.js +5 -0
- package/src/tedi/components/filter/filter/filter-group.cjs.js +1 -0
- package/src/tedi/components/filter/filter/filter-group.d.ts +94 -0
- package/src/tedi/components/filter/filter/filter-group.es.js +64 -0
- package/src/tedi/components/filter/filter/filter.cjs.js +1 -0
- package/src/tedi/components/filter/filter/filter.d.ts +98 -0
- package/src/tedi/components/filter/filter/filter.es.js +236 -0
- package/src/tedi/components/filter/filter/filter.module.scss.cjs.js +1 -0
- package/src/tedi/components/filter/filter/filter.module.scss.es.js +21 -0
- package/src/tedi/components/filter/filter/index.d.ts +3 -0
- package/src/tedi/components/form/date-field/date-field-helpers.cjs.js +1 -0
- package/src/tedi/components/form/date-field/date-field-helpers.d.ts +66 -0
- package/src/tedi/components/form/date-field/date-field-helpers.es.js +28 -0
- package/src/tedi/components/form/date-field/date-field.cjs.js +1 -1
- package/src/tedi/components/form/date-field/date-field.d.ts +22 -0
- package/src/tedi/components/form/date-field/date-field.es.js +248 -212
- package/src/tedi/components/form/date-time-field/date-time-field.cjs.js +1 -0
- package/src/tedi/components/form/date-time-field/date-time-field.d.ts +207 -0
- package/src/tedi/components/form/date-time-field/date-time-field.es.js +376 -0
- package/src/tedi/components/form/date-time-field/date-time-field.module.scss.cjs.js +1 -0
- package/src/tedi/components/form/date-time-field/date-time-field.module.scss.es.js +30 -0
- package/src/tedi/components/form/number-field/number-field.cjs.js +1 -1
- package/src/tedi/components/form/number-field/number-field.d.ts +16 -3
- package/src/tedi/components/form/number-field/number-field.es.js +121 -97
- package/src/tedi/components/form/search/search.cjs.js +1 -1
- package/src/tedi/components/form/search/search.es.js +22 -20
- package/src/tedi/components/form/time-field/time-field.cjs.js +1 -1
- package/src/tedi/components/form/time-field/time-field.d.ts +9 -0
- package/src/tedi/components/form/time-field/time-field.es.js +80 -78
- package/src/tedi/components/layout/mobile-nav/components/mobile-nav-toggle/mobile-nav-toggle.cjs.js +1 -0
- package/src/tedi/components/layout/mobile-nav/components/mobile-nav-toggle/mobile-nav-toggle.d.ts +52 -0
- package/src/tedi/components/layout/mobile-nav/components/mobile-nav-toggle/mobile-nav-toggle.es.js +68 -0
- package/src/tedi/components/layout/mobile-nav/components/mobile-nav-toggle/mobile-nav-toggle.module.scss.cjs.js +1 -0
- package/src/tedi/components/layout/mobile-nav/components/mobile-nav-toggle/mobile-nav-toggle.module.scss.es.js +9 -0
- package/src/tedi/components/layout/mobile-nav/index.d.ts +2 -0
- package/src/tedi/components/layout/mobile-nav/mobile-nav.cjs.js +1 -0
- package/src/tedi/components/layout/mobile-nav/mobile-nav.d.ts +20 -0
- package/src/tedi/components/layout/{sidenav/components/sidenav-mobile/sidenav-mobile.es.js → mobile-nav/mobile-nav.es.js} +21 -20
- package/src/tedi/components/layout/sidenav/index.d.ts +2 -2
- package/src/tedi/components/layout/sidenav/sidenav.cjs.js +1 -1
- package/src/tedi/components/layout/sidenav/sidenav.d.ts +2 -11
- package/src/tedi/components/layout/sidenav/sidenav.es.js +27 -27
- package/src/tedi/components/layout/top-nav/components/top-nav-group/top-nav-group.cjs.js +1 -0
- package/src/tedi/components/layout/top-nav/components/top-nav-group/top-nav-group.d.ts +34 -0
- package/src/tedi/components/layout/top-nav/components/top-nav-group/top-nav-group.es.js +33 -0
- package/src/tedi/components/layout/top-nav/components/top-nav-item/top-nav-item.cjs.js +1 -0
- package/src/tedi/components/layout/top-nav/components/top-nav-item/top-nav-item.d.ts +66 -0
- package/src/tedi/components/layout/top-nav/components/top-nav-item/top-nav-item.es.js +101 -0
- package/src/tedi/components/layout/top-nav/components/top-nav-separator/top-nav-separator.cjs.js +1 -0
- package/src/tedi/components/layout/top-nav/components/top-nav-separator/top-nav-separator.d.ts +11 -0
- package/src/tedi/components/layout/top-nav/components/top-nav-separator/top-nav-separator.es.js +9 -0
- package/src/tedi/components/layout/top-nav/components/top-nav-subitem/top-nav-subitem.cjs.js +1 -0
- package/src/tedi/components/layout/top-nav/components/top-nav-subitem/top-nav-subitem.d.ts +28 -0
- package/src/tedi/components/layout/top-nav/components/top-nav-subitem/top-nav-subitem.es.js +30 -0
- package/src/tedi/components/layout/top-nav/index.d.ts +5 -0
- package/src/tedi/components/layout/top-nav/top-nav-context.cjs.js +1 -0
- package/src/tedi/components/layout/top-nav/top-nav-context.d.ts +11 -0
- package/src/tedi/components/layout/top-nav/top-nav-context.es.js +6 -0
- package/src/tedi/components/layout/top-nav/top-nav.cjs.js +1 -0
- package/src/tedi/components/layout/top-nav/top-nav.d.ts +91 -0
- package/src/tedi/components/layout/top-nav/top-nav.es.js +171 -0
- package/src/tedi/components/layout/top-nav/top-nav.module.scss.cjs.js +1 -0
- package/src/tedi/components/layout/top-nav/top-nav.module.scss.es.js +28 -0
- package/src/tedi/components/navigation/pagination/index.d.ts +1 -0
- package/src/tedi/components/navigation/pagination/pagination-mobile-modal/pagination-mobile-modal.cjs.js +1 -0
- package/src/tedi/components/navigation/pagination/pagination-mobile-modal/pagination-mobile-modal.d.ts +36 -0
- package/src/tedi/components/navigation/pagination/pagination-mobile-modal/pagination-mobile-modal.es.js +65 -0
- package/src/tedi/components/navigation/pagination/pagination-mobile-modal/pagination-mobile-modal.module.scss.cjs.js +1 -0
- package/src/tedi/components/navigation/pagination/pagination-mobile-modal/pagination-mobile-modal.module.scss.es.js +13 -0
- package/src/tedi/components/navigation/pagination/pagination.cjs.js +1 -1
- package/src/tedi/components/navigation/pagination/pagination.d.ts +115 -13
- package/src/tedi/components/navigation/pagination/pagination.es.js +244 -96
- package/src/tedi/components/navigation/pagination/pagination.module.scss.cjs.js +1 -1
- package/src/tedi/components/navigation/pagination/pagination.module.scss.es.js +18 -1
- package/src/tedi/components/notifications/alert/alert.cjs.js +1 -1
- package/src/tedi/components/notifications/alert/alert.d.ts +14 -1
- package/src/tedi/components/notifications/alert/alert.es.js +45 -42
- package/src/tedi/components/notifications/alert/alert.module.scss.cjs.js +1 -1
- package/src/tedi/components/notifications/alert/alert.module.scss.es.js +2 -1
- package/src/tedi/components/overlays/dropdown/dropdown.es.js +0 -3
- package/src/tedi/components/overlays/modal/index.d.ts +8 -0
- package/src/tedi/components/overlays/modal/modal-body/modal-body.cjs.js +1 -0
- package/src/tedi/components/overlays/modal/modal-body/modal-body.d.ts +22 -0
- package/src/tedi/components/overlays/modal/modal-body/modal-body.es.js +21 -0
- package/src/tedi/components/overlays/modal/modal-closer/modal-closer.cjs.js +1 -0
- package/src/tedi/components/overlays/modal/modal-closer/modal-closer.d.ts +15 -0
- package/src/tedi/components/overlays/modal/modal-closer/modal-closer.es.js +16 -0
- package/src/tedi/components/overlays/modal/modal-content/modal-content.cjs.js +1 -0
- package/src/tedi/components/overlays/modal/modal-content/modal-content.d.ts +108 -0
- package/src/tedi/components/overlays/modal/modal-content/modal-content.es.js +81 -0
- package/src/tedi/components/overlays/modal/modal-context.cjs.js +1 -0
- package/src/tedi/components/overlays/modal/modal-context.d.ts +59 -0
- package/src/tedi/components/overlays/modal/modal-context.es.js +15 -0
- package/src/tedi/components/overlays/modal/modal-footer/modal-footer.cjs.js +1 -0
- package/src/tedi/components/overlays/modal/modal-footer/modal-footer.d.ts +22 -0
- package/src/tedi/components/overlays/modal/modal-footer/modal-footer.es.js +25 -0
- package/src/tedi/components/overlays/modal/modal-header/modal-header.cjs.js +1 -0
- package/src/tedi/components/overlays/modal/modal-header/modal-header.d.ts +58 -0
- package/src/tedi/components/overlays/modal/modal-header/modal-header.es.js +25 -0
- package/src/tedi/components/overlays/modal/modal-trigger/modal-trigger.cjs.js +1 -0
- package/src/tedi/components/overlays/modal/modal-trigger/modal-trigger.d.ts +13 -0
- package/src/tedi/components/overlays/modal/modal-trigger/modal-trigger.es.js +14 -0
- package/src/tedi/components/overlays/modal/modal.cjs.js +1 -0
- package/src/tedi/components/overlays/modal/modal.d.ts +68 -0
- package/src/tedi/components/overlays/modal/modal.es.js +76 -0
- package/src/tedi/components/overlays/modal/modal.module.scss.cjs.js +1 -0
- package/src/tedi/components/overlays/modal/modal.module.scss.es.js +37 -0
- package/src/tedi/components/overlays/overlay/overlay-content.cjs.js +1 -1
- package/src/tedi/components/overlays/overlay/overlay-content.es.js +35 -32
- package/src/tedi/components/overlays/tooltip/tooltip.cjs.js +1 -1
- package/src/tedi/components/overlays/tooltip/tooltip.es.js +14 -6
- package/src/tedi/helpers/hooks/use-breakpoint.cjs.js +1 -1
- package/src/tedi/helpers/hooks/use-breakpoint.d.ts +7 -0
- package/src/tedi/helpers/hooks/use-breakpoint.es.js +22 -14
- package/src/tedi/helpers/hooks/use-sidenav-state.d.ts +1 -1
- package/src/tedi/index.d.ts +6 -0
- package/src/tedi/providers/label-provider/label-provider.d.ts +5 -0
- package/src/tedi/providers/label-provider/labels-map.cjs.js +1 -1
- package/src/tedi/providers/label-provider/labels-map.d.ts +174 -6
- package/src/tedi/providers/label-provider/labels-map.es.js +234 -57
- package/tedi.cjs.js +1 -1
- package/tedi.es.js +257 -202
- package/src/tedi/components/layout/sidenav/components/sidenav-mobile/sidenav-mobile.cjs.js +0 -1
- package/src/tedi/components/layout/sidenav/components/sidenav-mobile/sidenav-mobile.d.ts +0 -14
- package/src/tedi/components/layout/sidenav/components/sidenav-toggle/sidenav-toggle.cjs.js +0 -1
- package/src/tedi/components/layout/sidenav/components/sidenav-toggle/sidenav-toggle.d.ts +0 -31
- package/src/tedi/components/layout/sidenav/components/sidenav-toggle/sidenav-toggle.es.js +0 -48
- package/src/tedi/components/layout/sidenav/components/sidenav-toggle/sidenav-toggle.module.scss.cjs.js +0 -1
- package/src/tedi/components/layout/sidenav/components/sidenav-toggle/sidenav-toggle.module.scss.es.js +0 -8
|
@@ -1,59 +1,60 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { useFloating as
|
|
1
|
+
import { jsxs as V, jsx as i, Fragment as ne } from "react/jsx-runtime";
|
|
2
|
+
import { useFloating as oe, useClick as re, useDismiss as le, useRole as se, useInteractions as ae, FloatingPortal as de, FloatingFocusManager as ce } from "../../../../../external/@floating-ui/react/dist/floating-ui.react.es.js";
|
|
3
3
|
import C from "../../../../../external/classnames/index.es.js";
|
|
4
|
-
import
|
|
5
|
-
import { TextField as
|
|
6
|
-
import { TimePicker as
|
|
4
|
+
import fe, { useState as E, useEffect as U } from "react";
|
|
5
|
+
import { TextField as D } from "../textfield/textfield.es.js";
|
|
6
|
+
import { TimePicker as me } from "../time-picker/time-picker.es.js";
|
|
7
7
|
import l from "./time-field.module.scss.es.js";
|
|
8
|
-
import {
|
|
9
|
-
import { autoUpdate as
|
|
10
|
-
import { offset as
|
|
11
|
-
import { useBreakpointProps as
|
|
8
|
+
import { normalizeTime as ue, TIMEPICKER_OFFSET as pe } from "./time-field-helpers.es.js";
|
|
9
|
+
import { autoUpdate as ge } from "../../../../../external/@floating-ui/dom/dist/floating-ui.dom.es.js";
|
|
10
|
+
import { offset as he, flip as ke, shift as ve } from "../../../../../external/@floating-ui/react-dom/dist/floating-ui.react-dom.es.js";
|
|
11
|
+
import { useBreakpointProps as be } from "../../../helpers/hooks/use-breakpoint-props.es.js";
|
|
12
12
|
import { Dropdown as h } from "../../overlays/dropdown/dropdown.es.js";
|
|
13
|
-
const
|
|
14
|
-
const { getCurrentBreakpointProps:
|
|
15
|
-
id:
|
|
16
|
-
label:
|
|
13
|
+
const xe = (k) => {
|
|
14
|
+
const { getCurrentBreakpointProps: M } = be(k.defaultServerBreakpoint), {
|
|
15
|
+
id: S,
|
|
16
|
+
label: j,
|
|
17
17
|
value: c,
|
|
18
|
-
defaultValue:
|
|
18
|
+
defaultValue: q,
|
|
19
19
|
onChange: v,
|
|
20
|
-
readOnly:
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
readOnly: I = !1,
|
|
21
|
+
disabled: s = !1,
|
|
22
|
+
required: z,
|
|
23
|
+
placeholder: A,
|
|
23
24
|
inputProps: t,
|
|
24
|
-
stepMinutes:
|
|
25
|
-
className:
|
|
26
|
-
availableTimes:
|
|
25
|
+
stepMinutes: K = 1,
|
|
26
|
+
className: w,
|
|
27
|
+
availableTimes: a
|
|
27
28
|
} = k, {
|
|
28
|
-
useNativePicker:
|
|
29
|
-
timePickerTrigger:
|
|
30
|
-
showPicker:
|
|
31
|
-
availableTimesVariant:
|
|
32
|
-
} =
|
|
33
|
-
open:
|
|
34
|
-
onOpenChange:
|
|
35
|
-
placement:
|
|
36
|
-
middleware: [pe
|
|
37
|
-
whileElementsMounted:
|
|
38
|
-
}), { refs:
|
|
29
|
+
useNativePicker: G = !1,
|
|
30
|
+
timePickerTrigger: T = "button",
|
|
31
|
+
showPicker: d = !0,
|
|
32
|
+
availableTimesVariant: N = "grid-buttons"
|
|
33
|
+
} = M(k), y = c !== void 0, [H, P] = E(c ?? q ?? ""), m = y ? c : H, [b, x] = E(!1), _ = T === "input", o = G, J = oe({
|
|
34
|
+
open: b,
|
|
35
|
+
onOpenChange: x,
|
|
36
|
+
placement: _ ? "bottom-start" : "bottom-end",
|
|
37
|
+
middleware: [he(pe), ke(), ve()],
|
|
38
|
+
whileElementsMounted: ge
|
|
39
|
+
}), { refs: F, context: u, x: L, y: Q, strategy: W } = J, X = re(u), Y = le(u), Z = se(u, { role: "listbox" }), R = d && _ && !I && !s && !o, B = ae([...R ? [X] : [], Y, Z]), p = (e) => {
|
|
39
40
|
const n = e.trim();
|
|
40
|
-
|
|
41
|
-
},
|
|
41
|
+
y || P(n), v == null || v(n);
|
|
42
|
+
}, $ = (e) => {
|
|
42
43
|
var g;
|
|
43
44
|
const n = e.target.value ?? "";
|
|
44
45
|
(g = t == null ? void 0 : t.onBlur) == null || g.call(t, e);
|
|
45
46
|
const r = ue(n);
|
|
46
47
|
r !== null && r !== n && p(r);
|
|
47
48
|
};
|
|
48
|
-
|
|
49
|
-
c !== void 0 &&
|
|
49
|
+
U(() => {
|
|
50
|
+
c !== void 0 && P(c);
|
|
50
51
|
}, [c]);
|
|
51
|
-
const f =
|
|
52
|
-
|
|
52
|
+
const f = fe.useRef(null);
|
|
53
|
+
U(() => {
|
|
53
54
|
var e;
|
|
54
|
-
(e = f.current) != null && e.inner &&
|
|
55
|
-
}, [
|
|
56
|
-
const
|
|
55
|
+
(e = f.current) != null && e.inner && F.setReference(f.current.inner);
|
|
56
|
+
}, [F]);
|
|
57
|
+
const ee = () => {
|
|
57
58
|
var n;
|
|
58
59
|
const e = (n = f.current) == null ? void 0 : n.input;
|
|
59
60
|
if (e) {
|
|
@@ -63,25 +64,26 @@ const ve = (k) => {
|
|
|
63
64
|
}
|
|
64
65
|
e.focus();
|
|
65
66
|
}
|
|
66
|
-
},
|
|
67
|
+
}, te = () => x((e) => !e), ie = () => {
|
|
68
|
+
!d || s || (o ? ee() : T === "button" && te());
|
|
69
|
+
}, O = {
|
|
67
70
|
...t,
|
|
68
|
-
id:
|
|
69
|
-
label:
|
|
70
|
-
value:
|
|
71
|
-
placeholder:
|
|
72
|
-
readOnly:
|
|
71
|
+
id: S,
|
|
72
|
+
label: j,
|
|
73
|
+
value: m,
|
|
74
|
+
placeholder: A,
|
|
75
|
+
readOnly: I || !o && _,
|
|
76
|
+
disabled: s || (t == null ? void 0 : t.disabled),
|
|
73
77
|
icon: "schedule",
|
|
74
78
|
isClearable: !0,
|
|
75
|
-
required:
|
|
76
|
-
onIconClick:
|
|
77
|
-
d || !a || (o ? $() : w === "button" && ee());
|
|
78
|
-
},
|
|
79
|
+
required: z,
|
|
80
|
+
onIconClick: ie,
|
|
79
81
|
onChange: p,
|
|
80
|
-
onBlur:
|
|
82
|
+
onBlur: $,
|
|
81
83
|
className: C(
|
|
82
84
|
l["tedi-time-field__textfield"],
|
|
83
|
-
{ [l["tedi-time-field__icon--disabled"]]: !
|
|
84
|
-
{ [l["tedi-time-field__textfield--disabled"]]: t == null ? void 0 : t.disabled },
|
|
85
|
+
{ [l["tedi-time-field__icon--disabled"]]: !d || s },
|
|
86
|
+
{ [l["tedi-time-field__textfield--disabled"]]: s || (t == null ? void 0 : t.disabled) },
|
|
85
87
|
{ [l["tedi-time-field--native"]]: o }
|
|
86
88
|
),
|
|
87
89
|
input: {
|
|
@@ -89,53 +91,53 @@ const ve = (k) => {
|
|
|
89
91
|
...o && { type: "time" }
|
|
90
92
|
}
|
|
91
93
|
};
|
|
92
|
-
if (!o &&
|
|
93
|
-
const e =
|
|
94
|
-
return /* @__PURE__ */
|
|
94
|
+
if (!o && d && !s && N === "dropdown" && !!(a != null && a.length)) {
|
|
95
|
+
const e = a.indexOf(m), n = e >= 0 ? e : 0;
|
|
96
|
+
return /* @__PURE__ */ V(h, { width: "trigger", defaultActiveIndex: n, children: [
|
|
95
97
|
/* @__PURE__ */ i(h.Trigger, { children: /* @__PURE__ */ i(
|
|
96
98
|
"div",
|
|
97
99
|
{
|
|
98
|
-
className: C(l["tedi-time-field__container"],
|
|
100
|
+
className: C(l["tedi-time-field__container"], w, {
|
|
99
101
|
[l["tedi-time-field__container--native"]]: o
|
|
100
102
|
}),
|
|
101
|
-
children: /* @__PURE__ */ i(
|
|
103
|
+
children: /* @__PURE__ */ i(D, { ref: f, ...O })
|
|
102
104
|
}
|
|
103
105
|
) }),
|
|
104
|
-
/* @__PURE__ */ i(h.Content, { children:
|
|
106
|
+
/* @__PURE__ */ i(h.Content, { children: a.map((r, g) => /* @__PURE__ */ i(h.Item, { index: g, active: r === m, onClick: () => p(r), children: r }, r)) })
|
|
105
107
|
] });
|
|
106
108
|
}
|
|
107
|
-
return /* @__PURE__ */
|
|
109
|
+
return /* @__PURE__ */ V(ne, { children: [
|
|
108
110
|
/* @__PURE__ */ i(
|
|
109
111
|
"div",
|
|
110
112
|
{
|
|
111
|
-
className: C(l["tedi-time-field__container"],
|
|
112
|
-
...
|
|
113
|
-
"aria-haspopup":
|
|
113
|
+
className: C(l["tedi-time-field__container"], w),
|
|
114
|
+
...R ? B.getReferenceProps() : {},
|
|
115
|
+
"aria-haspopup": d ? "listbox" : void 0,
|
|
114
116
|
tabIndex: -1,
|
|
115
|
-
children: /* @__PURE__ */ i(
|
|
117
|
+
children: /* @__PURE__ */ i(D, { ref: f, "aria-expanded": d ? b : void 0, ...O })
|
|
116
118
|
}
|
|
117
119
|
),
|
|
118
|
-
!o &&
|
|
120
|
+
!o && d && !s && /* @__PURE__ */ i(de, { children: b && /* @__PURE__ */ i(ce, { context: u, modal: !1, initialFocus: -1, children: /* @__PURE__ */ i(
|
|
119
121
|
"div",
|
|
120
122
|
{
|
|
121
|
-
ref:
|
|
122
|
-
...
|
|
123
|
+
ref: F.setFloating,
|
|
124
|
+
...B.getFloatingProps({
|
|
123
125
|
style: {
|
|
124
|
-
position:
|
|
125
|
-
top:
|
|
126
|
-
left:
|
|
126
|
+
position: W,
|
|
127
|
+
top: Q ?? 0,
|
|
128
|
+
left: L ?? 0
|
|
127
129
|
}
|
|
128
130
|
}),
|
|
129
131
|
children: /* @__PURE__ */ i(
|
|
130
|
-
|
|
132
|
+
me,
|
|
131
133
|
{
|
|
132
|
-
value:
|
|
133
|
-
stepMinutes:
|
|
134
|
-
availableTimes:
|
|
134
|
+
value: m,
|
|
135
|
+
stepMinutes: K,
|
|
136
|
+
availableTimes: a,
|
|
135
137
|
onChange: (e) => {
|
|
136
|
-
p(e),
|
|
138
|
+
p(e), a && x(!1);
|
|
137
139
|
},
|
|
138
|
-
gridVariant:
|
|
140
|
+
gridVariant: N === "grid-radio" ? "radio" : "button",
|
|
139
141
|
className: l["tedi-time-field__picker-wrapper"]
|
|
140
142
|
}
|
|
141
143
|
)
|
|
@@ -143,7 +145,7 @@ const ve = (k) => {
|
|
|
143
145
|
) }) })
|
|
144
146
|
] });
|
|
145
147
|
};
|
|
146
|
-
|
|
148
|
+
xe.displayName = "TimeField";
|
|
147
149
|
export {
|
|
148
|
-
|
|
150
|
+
xe as TimeField
|
|
149
151
|
};
|
package/src/tedi/components/layout/mobile-nav/components/mobile-nav-toggle/mobile-nav-toggle.cjs.js
ADDED
|
@@ -0,0 +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;
|
package/src/tedi/components/layout/mobile-nav/components/mobile-nav-toggle/mobile-nav-toggle.d.ts
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { UnknownType } from '../../../../../types/commonTypes';
|
|
3
|
+
export type MobileNavToggleVariant = 'mobile' | 'collapse';
|
|
4
|
+
export type MobileNavToggleProps = {
|
|
5
|
+
/**
|
|
6
|
+
* Is the menu open (for mobile) or expanded (for collapse)
|
|
7
|
+
*/
|
|
8
|
+
menuOpen: boolean;
|
|
9
|
+
/**
|
|
10
|
+
* Toggle open/collapse state
|
|
11
|
+
*/
|
|
12
|
+
toggleMenu: (open: boolean) => void;
|
|
13
|
+
/**
|
|
14
|
+
* Optional ref to attach to button (for floating UI etc.)
|
|
15
|
+
*/
|
|
16
|
+
referenceRef?: React.Ref<UnknownType>;
|
|
17
|
+
/**
|
|
18
|
+
* Optional props passed from floating UI
|
|
19
|
+
*/
|
|
20
|
+
getReferenceProps?: () => UnknownType;
|
|
21
|
+
/**
|
|
22
|
+
* Variant of toggle (mobile overlay or collapse control)
|
|
23
|
+
*/
|
|
24
|
+
variant?: MobileNavToggleVariant;
|
|
25
|
+
/**
|
|
26
|
+
* Show the open/close label visibly below the icon (mobile variant only).
|
|
27
|
+
* The label text comes from the `header.toggle` i18n key by default — pass
|
|
28
|
+
* `label` to override it. When `false` (default), the button renders
|
|
29
|
+
* icon-only and the label is still exposed as accessible text.
|
|
30
|
+
* @default false
|
|
31
|
+
*/
|
|
32
|
+
showLabel?: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Override the toggle's label text. Accepts a static `ReactNode` (used for
|
|
35
|
+
* both states) or a function that returns a `ReactNode` for the current
|
|
36
|
+
* `menuOpen` state (e.g. `(open) => open ? 'Sulge' : 'Menüü'`). When
|
|
37
|
+
* omitted, the label falls back to the `header.toggle` i18n value.
|
|
38
|
+
*/
|
|
39
|
+
label?: React.ReactNode | ((menuOpen: boolean) => React.ReactNode);
|
|
40
|
+
/**
|
|
41
|
+
* Add custom class to override styles
|
|
42
|
+
*/
|
|
43
|
+
className?: string;
|
|
44
|
+
};
|
|
45
|
+
export declare const MobileNavToggle: ({ menuOpen, toggleMenu, referenceRef, getReferenceProps, variant, showLabel, label, className, }: MobileNavToggleProps) => import("react/jsx-runtime").JSX.Element;
|
|
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;
|
|
48
|
+
/** @deprecated Use `MobileNavToggleProps`. */
|
|
49
|
+
export type SidenavToggleProps = MobileNavToggleProps;
|
|
50
|
+
/** @deprecated Use `MobileNavToggleVariant`. */
|
|
51
|
+
export type SidenavToggleVariant = MobileNavToggleVariant;
|
|
52
|
+
export default MobileNavToggle;
|
package/src/tedi/components/layout/mobile-nav/components/mobile-nav-toggle/mobile-nav-toggle.es.js
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
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";
|
|
6
|
+
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 = ({
|
|
9
|
+
menuOpen: o,
|
|
10
|
+
toggleMenu: s,
|
|
11
|
+
referenceRef: c,
|
|
12
|
+
getReferenceProps: n = () => ({}),
|
|
13
|
+
variant: e = "mobile",
|
|
14
|
+
showLabel: b = !1,
|
|
15
|
+
label: t,
|
|
16
|
+
className: f
|
|
17
|
+
}) => {
|
|
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
|
+
l["tedi-mobile-nav-toggle"],
|
|
20
|
+
{
|
|
21
|
+
[l["tedi-mobile-nav-toggle--open"]]: o,
|
|
22
|
+
[l[`tedi-mobile-nav-toggle--${e}`]]: !0,
|
|
23
|
+
[l["tedi-mobile-nav-toggle--with-label"]]: g
|
|
24
|
+
},
|
|
25
|
+
f
|
|
26
|
+
), p = (i) => {
|
|
27
|
+
(i.key === "Enter" || i.key === " ") && (i.preventDefault(), s(!o));
|
|
28
|
+
};
|
|
29
|
+
return g ? /* @__PURE__ */ _(
|
|
30
|
+
"button",
|
|
31
|
+
{
|
|
32
|
+
...n(),
|
|
33
|
+
ref: c,
|
|
34
|
+
type: "button",
|
|
35
|
+
"aria-expanded": o,
|
|
36
|
+
className: d,
|
|
37
|
+
onClick: () => s(!o),
|
|
38
|
+
onKeyDown: p,
|
|
39
|
+
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 })
|
|
42
|
+
]
|
|
43
|
+
}
|
|
44
|
+
) : /* @__PURE__ */ a(
|
|
45
|
+
e === "collapse" ? v : u,
|
|
46
|
+
{
|
|
47
|
+
...n(),
|
|
48
|
+
ref: c,
|
|
49
|
+
icon: {
|
|
50
|
+
name: r,
|
|
51
|
+
className: l["tedi-mobile-nav-toggle__icon"],
|
|
52
|
+
size: e === "collapse" ? 18 : 24
|
|
53
|
+
},
|
|
54
|
+
visualType: e === "collapse" ? "secondary" : "primary",
|
|
55
|
+
className: d,
|
|
56
|
+
onClick: () => s(!o),
|
|
57
|
+
onKeyDown: p,
|
|
58
|
+
position: e === "collapse" ? "absolute" : "static",
|
|
59
|
+
size: e === "collapse" ? "small" : "",
|
|
60
|
+
children: m
|
|
61
|
+
}
|
|
62
|
+
);
|
|
63
|
+
}, j = k;
|
|
64
|
+
export {
|
|
65
|
+
k as MobileNavToggle,
|
|
66
|
+
j as SidenavToggle,
|
|
67
|
+
k as default
|
|
68
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e={"tedi-mobile-nav-toggle":"tedi-mobile-nav-toggle-923946d1","tedi-mobile-nav-toggle--collapse":"tedi-mobile-nav-toggle--collapse-4434a2d6","tedi-mobile-nav-toggle--with-label":"tedi-mobile-nav-toggle--with-label-703a307f","tedi-mobile-nav-toggle__label":"tedi-mobile-nav-toggle__label-9cd8a16e"};exports.default=e;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
const e = {
|
|
2
|
+
"tedi-mobile-nav-toggle": "tedi-mobile-nav-toggle-923946d1",
|
|
3
|
+
"tedi-mobile-nav-toggle--collapse": "tedi-mobile-nav-toggle--collapse-4434a2d6",
|
|
4
|
+
"tedi-mobile-nav-toggle--with-label": "tedi-mobile-nav-toggle--with-label-703a307f",
|
|
5
|
+
"tedi-mobile-nav-toggle__label": "tedi-mobile-nav-toggle__label-9cd8a16e"
|
|
6
|
+
};
|
|
7
|
+
export {
|
|
8
|
+
e as default
|
|
9
|
+
};
|
|
@@ -0,0 +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;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { SideNavItemProps } from '../sidenav/components/sidenav-item/sidenav-item';
|
|
3
|
+
export type MobileNavProps<C extends React.ElementType = 'a'> = {
|
|
4
|
+
navItems: SideNavItemProps<C>[];
|
|
5
|
+
ariaLabel: string;
|
|
6
|
+
linkAs?: C;
|
|
7
|
+
isOpen: boolean;
|
|
8
|
+
onClose: () => void;
|
|
9
|
+
showOverlay?: boolean;
|
|
10
|
+
id?: string;
|
|
11
|
+
className?: string;
|
|
12
|
+
};
|
|
13
|
+
export declare const MobileNav: <C extends React.ElementType = "a">({ navItems, ariaLabel, linkAs, isOpen, onClose, showOverlay, id, className, }: MobileNavProps<C>) => import("react/jsx-runtime").JSX.Element | null;
|
|
14
|
+
/**
|
|
15
|
+
* @deprecated Use `MobileNav` (same component, vendor-neutral name). Kept for
|
|
16
|
+
* backward compatibility with the `SideNav.Mobile` sub-component alias.
|
|
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;
|
|
19
|
+
/** @deprecated Use `MobileNavProps`. */
|
|
20
|
+
export type SideNavMobileProps<C extends React.ElementType = 'a'> = MobileNavProps<C>;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { jsxs as r, jsx as i } from "react/jsx-runtime";
|
|
2
|
-
import { FloatingOverlay as q } from "
|
|
3
|
-
import l from "
|
|
2
|
+
import { FloatingOverlay as q } from "../../../../../external/@floating-ui/react/dist/floating-ui.react.es.js";
|
|
3
|
+
import l from "../../../../../external/classnames/index.es.js";
|
|
4
4
|
import D, { useState as J, useEffect as K } from "react";
|
|
5
|
-
import { Icon as d } from "
|
|
6
|
-
import { Button as v } from "
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import { useLabels as Q } from "
|
|
10
|
-
const
|
|
5
|
+
import { Icon as d } from "../../base/icon/icon.es.js";
|
|
6
|
+
import { Button as v } from "../../buttons/button/button.es.js";
|
|
7
|
+
import { SideNavItem as w } from "../sidenav/components/sidenav-item/sidenav-item.es.js";
|
|
8
|
+
import n from "../sidenav/sidenav.module.scss.es.js";
|
|
9
|
+
import { useLabels as Q } from "../../../providers/label-provider/use-labels.es.js";
|
|
10
|
+
const U = ({
|
|
11
11
|
navItems: _,
|
|
12
12
|
ariaLabel: x,
|
|
13
13
|
linkAs: b,
|
|
@@ -17,12 +17,12 @@ const ne = ({
|
|
|
17
17
|
id: R,
|
|
18
18
|
className: B
|
|
19
19
|
}) => {
|
|
20
|
-
var f, I, C, L, S, y,
|
|
20
|
+
var f, I, C, L, S, y, M;
|
|
21
21
|
const { getLabel: p } = Q(), [s, c] = J([{ items: _ }]);
|
|
22
22
|
K(() => {
|
|
23
23
|
c([{ items: _ }]);
|
|
24
24
|
}, [_]);
|
|
25
|
-
const t = s[s.length - 1], j = s.length === 1,
|
|
25
|
+
const t = s[s.length - 1], j = s.length === 1, N = (e) => {
|
|
26
26
|
var u;
|
|
27
27
|
const a = !!(e.subItems || e.subItemGroups), m = !!(e.href || e.to);
|
|
28
28
|
if (!a) {
|
|
@@ -42,8 +42,8 @@ const ne = ({
|
|
|
42
42
|
c(s.slice(0, -1));
|
|
43
43
|
}, F = () => {
|
|
44
44
|
c([s[0]]);
|
|
45
|
-
}, T = ((I = (f = t.parent) == null ? void 0 : f.subItems) == null ? void 0 : I.length) ?? ((L = (C = t.parent) == null ? void 0 : C.subItemGroups) == null ? void 0 : L.length), E = s.length > 1 && !(t.renderParentLink && T),
|
|
46
|
-
|
|
45
|
+
}, T = ((I = (f = t.parent) == null ? void 0 : f.subItems) == null ? void 0 : I.length) ?? ((L = (C = t.parent) == null ? void 0 : C.subItemGroups) == null ? void 0 : L.length), E = s.length > 1 && !(t.renderParentLink && T), k = (e, a) => a === 1 ? !(e.subItems || e.subItemGroups) ? /* @__PURE__ */ i(
|
|
46
|
+
w,
|
|
47
47
|
{
|
|
48
48
|
...e,
|
|
49
49
|
as: b,
|
|
@@ -51,7 +51,7 @@ const ne = ({
|
|
|
51
51
|
onItemClick: o,
|
|
52
52
|
className: l(n["tedi-sidenav__item--mobile"], e.className)
|
|
53
53
|
}
|
|
54
|
-
) : /* @__PURE__ */ i("li", { className: l(n["tedi-sidenav__item"], n["tedi-sidenav__item--mobile"]), children: /* @__PURE__ */ r("button", { onClick: () =>
|
|
54
|
+
) : /* @__PURE__ */ i("li", { className: l(n["tedi-sidenav__item"], n["tedi-sidenav__item--mobile"]), children: /* @__PURE__ */ r("button", { onClick: () => N(e), className: n["tedi-sidenav__link"], children: [
|
|
55
55
|
e.icon && /* @__PURE__ */ i(
|
|
56
56
|
d,
|
|
57
57
|
{
|
|
@@ -65,7 +65,7 @@ const ne = ({
|
|
|
65
65
|
] }) }) : H(e, a), H = (e, a) => {
|
|
66
66
|
const m = !!(e.href || e.to), h = !!(e.subItems || e.subItemGroups);
|
|
67
67
|
return m ? /* @__PURE__ */ i(
|
|
68
|
-
|
|
68
|
+
w,
|
|
69
69
|
{
|
|
70
70
|
...e,
|
|
71
71
|
as: b,
|
|
@@ -78,7 +78,7 @@ const ne = ({
|
|
|
78
78
|
v,
|
|
79
79
|
{
|
|
80
80
|
noStyle: !0,
|
|
81
|
-
onClick: () => h ?
|
|
81
|
+
onClick: () => h ? N(e) : o(),
|
|
82
82
|
className: n["tedi-sidenav__link"],
|
|
83
83
|
children: [
|
|
84
84
|
/* @__PURE__ */ i("span", { className: n["tedi-sidenav__title"], children: e.children }),
|
|
@@ -120,10 +120,10 @@ const ne = ({
|
|
|
120
120
|
}
|
|
121
121
|
)
|
|
122
122
|
] }) }),
|
|
123
|
-
E && /* @__PURE__ */ i("div", { className: l(n["tedi-sidenav__subheading"], n["tedi-sidenav__subheading--mobile"]), children: (
|
|
123
|
+
E && /* @__PURE__ */ i("div", { className: l(n["tedi-sidenav__subheading"], n["tedi-sidenav__subheading--mobile"]), children: (M = t.parent) == null ? void 0 : M.children }),
|
|
124
124
|
/* @__PURE__ */ r("ul", { className: n["tedi-sidenav__list"], role: "menubar", children: [
|
|
125
|
-
t.renderParentLink && t.parent && /* @__PURE__ */ i("li", { className: n["tedi-sidenav__list-item"], children: /* @__PURE__ */ i("div", { className: l(n["tedi-sidenav__collapse"]), children:
|
|
126
|
-
!t.renderParentLink && t.items.map((e, a) => /* @__PURE__ */ i(D.Fragment, { children:
|
|
125
|
+
t.renderParentLink && t.parent && /* @__PURE__ */ i("li", { className: n["tedi-sidenav__list-item"], children: /* @__PURE__ */ i("div", { className: l(n["tedi-sidenav__collapse"]), children: k(t.parent, s.length) }) }),
|
|
126
|
+
!t.renderParentLink && t.items.map((e, a) => /* @__PURE__ */ i(D.Fragment, { children: k(e, s.length) }, e.id || a))
|
|
127
127
|
] })
|
|
128
128
|
]
|
|
129
129
|
}
|
|
@@ -140,7 +140,8 @@ const ne = ({
|
|
|
140
140
|
children: g
|
|
141
141
|
}
|
|
142
142
|
) : g : null;
|
|
143
|
-
};
|
|
143
|
+
}, ie = U;
|
|
144
144
|
export {
|
|
145
|
-
|
|
145
|
+
U as MobileNav,
|
|
146
|
+
ie as SideNavMobile
|
|
146
147
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export * from './sidenav';
|
|
2
2
|
export * from './components/sidenav-dropdown/sidenav-dropdown';
|
|
3
3
|
export * from './components/sidenav-item/sidenav-item';
|
|
4
|
-
export * from '
|
|
5
|
-
export * from '
|
|
4
|
+
export * from '../mobile-nav/components/mobile-nav-toggle/mobile-nav-toggle';
|
|
5
|
+
export * from '../mobile-nav/mobile-nav';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const i=require("react/jsx-runtime"),n=require("react"),L=require("../../../../../external/classnames/index.cjs.js"),V=require("../../misc/print/print.cjs.js"),O=require("../mobile-nav/components/mobile-nav-toggle/mobile-nav-toggle.cjs.js"),S=require("../mobile-nav/mobile-nav.cjs.js"),F=require("./components/sidenav-dropdown/sidenav-dropdown.cjs.js"),q=require("./components/sidenav-item/sidenav-item.cjs.js"),l=require("./sidenav.module.scss.cjs.js"),C=require("../../../helpers/hooks/use-breakpoint.cjs.js"),G=o=>{const{navItems:u,ariaLabel:r,linkAs:v,showDividers:h=!0,className:p,mobileBreakpoint:j="tablet",showMobileOverlay:k=!0,isMobileOpen:m,isCollapsed:w=!1,onMenuToggle:d,onCollapseToggle:c,sideNavItemSize:x="default",...b}=o,B=e=>({mobile:"md",tablet:"lg"})[e],_=C.useBreakpoint(),s=C.isBreakpointBelow(_,B(j)),t=m!==void 0,[y,f]=n.useState(!s),N=t?m:y,[D,T]=n.useState(w),a=s?!1:D,E="isCollapsed"in o;n.useEffect(()=>{t||f(!s)},[s,t]);const P=e=>{T(e),c==null||c(e)},R=()=>{P(!a)},g=e=>{t||f(e),d==null||d(e)},z=()=>{g(!N)},A=L.default(l.default["tedi-sidenav"],p,{[l.default["tedi-sidenav--has-dividers"]]:h,[l.default["tedi-sidenav--collapsed"]]:a});return s?i.jsx(S.MobileNav,{navItems:u,ariaLabel:r,linkAs:v,isOpen:N,onClose:()=>g(!1),showOverlay:k,className:p,...b}):i.jsx(V.Print,{visibility:"hide",children:i.jsxs("nav",{id:o.id,"data-name":"sidenav",...b,className:A,"aria-label":r,children:[E&&i.jsx(O.MobileNavToggle,{menuOpen:!a,toggleMenu:R,variant:"collapse"}),i.jsx("ul",{className:l.default["tedi-sidenav__list"],role:"menubar","aria-label":r,children:u.map((e,M)=>n.createElement(q.SideNavItem,{as:v,...e,key:M,onItemClick:z,isCollapsed:a,sideNavItemSize:x}))})]})})},I=Object.assign(G,{Toggle:O.MobileNavToggle,Item:q.SideNavItem,Dropdown:F.SideNavDropdown,Mobile:S.MobileNav});exports.SideNav=I;exports.default=I;
|
|
@@ -80,7 +80,7 @@ export type SideNavProps<C extends React.ElementType = 'a'> = ConditionalTypes<C
|
|
|
80
80
|
sideNavItemSize?: SideNavItemSize;
|
|
81
81
|
};
|
|
82
82
|
export declare const SideNav: (<C extends React.ElementType = "a">(props: SideNavProps<C>) => React.ReactElement | null) & {
|
|
83
|
-
Toggle: ({ menuOpen, toggleMenu, referenceRef, getReferenceProps, variant, className, }: import('
|
|
83
|
+
Toggle: ({ menuOpen, toggleMenu, referenceRef, getReferenceProps, variant, showLabel, label, className, }: import('../mobile-nav/components/mobile-nav-toggle/mobile-nav-toggle').MobileNavToggleProps) => import("react/jsx-runtime").JSX.Element;
|
|
84
84
|
Item: <C extends React.ElementType = "a">(props: SideNavItemProps<C> & {
|
|
85
85
|
onItemClick?: () => void;
|
|
86
86
|
level?: number;
|
|
@@ -95,15 +95,6 @@ export declare const SideNav: (<C extends React.ElementType = "a">(props: SideNa
|
|
|
95
95
|
onOpenChange?: (isOpen: boolean) => void;
|
|
96
96
|
as?: C | undefined;
|
|
97
97
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
98
|
-
Mobile: <C extends React.ElementType = "a">({ navItems, ariaLabel, linkAs, isOpen, onClose, showOverlay, id, className, }:
|
|
99
|
-
navItems: SideNavItemProps<C>[];
|
|
100
|
-
ariaLabel: string;
|
|
101
|
-
linkAs?: C | undefined;
|
|
102
|
-
isOpen: boolean;
|
|
103
|
-
onClose: () => void;
|
|
104
|
-
showOverlay?: boolean;
|
|
105
|
-
id?: string;
|
|
106
|
-
className?: string;
|
|
107
|
-
}) => import("react/jsx-runtime").JSX.Element | null;
|
|
98
|
+
Mobile: <C extends React.ElementType = "a">({ navItems, ariaLabel, linkAs, isOpen, onClose, showOverlay, id, className, }: import('../mobile-nav/mobile-nav').MobileNavProps<C>) => import("react/jsx-runtime").JSX.Element | null;
|
|
108
99
|
};
|
|
109
100
|
export default SideNav;
|