@tedi-design-system/react 15.0.0-rc.10 → 15.0.0-rc.12

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tedi-design-system/react",
3
- "version": "15.0.0-rc.10",
3
+ "version": "15.0.0-rc.12",
4
4
  "type": "module",
5
5
  "sideEffects": false,
6
6
  "exports": {
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("react/jsx-runtime"),s=require("../../../../../external/classnames/index.cjs.js"),O=require("react"),R=require("../../base/icon/icon.cjs.js"),q=require("../../loaders/spinner/spinner.cjs.js"),$=require("../../misc/print/print.cjs.js"),t=require("./button-content.module.scss.cjs.js"),y=O.forwardRef(({children:c,as:B,text:A,className:b,visualType:p="primary",color:h="default",size:r,icon:d,iconLeft:i,iconRight:u,underline:I=!1,isHovered:k,isActive:M,isLoading:e=!1,noStyle:m,renderWrapperElement:D,fullWidth:_,onClick:x,...N},P)=>{const w=B||"button",j=d||i||u,E=m?s.default(t.default["tedi-btn--no-style"],{[t.default["tedi-btn--full-width"]]:_},b):s.default(t.default["tedi-btn"],t.default[`tedi-btn--${p}`],t.default[`tedi-btn--${h}`],{[t.default[`tedi-btn--${r}`]]:r},{[t.default["tedi-btn--underline"]]:I},{[t.default["tedi-btn--is-hovered"]]:k},{[t.default["tedi-btn--is-active"]]:M},{[t.default["tedi-btn--is-loading"]]:e},{[t.default["tedi-btn--icon-only"]]:d},{[t.default["tedi-btn--icon"]]:j},{[t.default["tedi-btn--full-width"]]:_},b),o=(l,a)=>{const H=s.default(t.default["tedi-btn__icon"],t.default[`tedi-btn__icon--${l}`],{[t.default["tedi-btn__spinner"]]:e}),f={size:r==="large"?24:18,className:H,...p==="link"?{display:"inline"}:{}},C=typeof a=="string"?{...f,name:a}:{...f,...a,className:s.default(f.className,a==null?void 0:a.className)};return e?n.jsx(q.Spinner,{className:C.className,size:18}):n.jsx(R.Icon,{...C})},S=()=>{const l=e?n.jsx(q.Spinner,{position:j?void 0:"absolute",className:s.default(t.default["tedi-btn__spinner"],t.default["tedi-btn__spinner--left"]),size:18}):i?o("left",i):d?o("center",d):null;return n.jsxs("span",{className:t.default["tedi-btn__inner"],children:[l,n.jsx("span",{className:t.default["tedi-btn__text"],children:c}),!e&&u&&o("right",u)]})},z=l=>{x&&!e&&x(l)};return n.jsx($.Print,{visibility:"hide",children:n.jsx(w,{"data-name":"button-content",...N,"aria-disabled":e||N["aria-disabled"],"aria-busy":e||void 0,onClick:z,ref:P,className:E,children:m?c:S()})})});y.displayName="ButtonContent";const v=y;exports.ButtonContent=v;exports.default=v;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("react/jsx-runtime"),r=require("../../../../../external/classnames/index.cjs.js"),D=require("react"),F=require("../../base/icon/icon.cjs.js"),v=require("../../loaders/spinner/spinner.cjs.js"),G=require("../../misc/print/print.cjs.js"),t=require("./button-content.module.scss.cjs.js"),b=require("../../overlays/tooltip/tooltip.cjs.js"),T=D.forwardRef(({children:o,as:g,_text:J,className:p,visualType:m="primary",color:h="default",size:i,icon:l,iconLeft:d,iconRight:u,underline:k=!1,isHovered:E,isActive:M,isLoading:a=!1,noStyle:_,_renderWrapperElement:K,fullWidth:x,onClick:j,showTooltip:P=!1,...y},w)=>{const S=g||"button",C=l||d||u,A=_?r.default(t.default["tedi-btn--no-style"],{[t.default["tedi-btn--full-width"]]:x},p):r.default(t.default["tedi-btn"],t.default[`tedi-btn--${m}`],t.default[`tedi-btn--${h}`],{[t.default[`tedi-btn--${i}`]]:i},{[t.default["tedi-btn--underline"]]:k},{[t.default["tedi-btn--is-hovered"]]:E},{[t.default["tedi-btn--is-active"]]:M},{[t.default["tedi-btn--is-loading"]]:a},{[t.default["tedi-btn--icon-only"]]:l},{[t.default["tedi-btn--icon"]]:C},{[t.default["tedi-btn--full-width"]]:x},p),f=(e,s)=>{const R=r.default(t.default["tedi-btn__icon"],t.default[`tedi-btn__icon--${e}`],{[t.default["tedi-btn__spinner"]]:a}),c={size:i==="large"?24:18,className:R,...m==="link"?{display:"inline"}:{}},q=typeof s=="string"?{...c,name:s}:{...c,...s,className:r.default(c.className,s==null?void 0:s.className)};return a?n.jsx(v.Spinner,{className:q.className,size:18}):n.jsx(F.Icon,{...q})},O=()=>{const e=a?n.jsx(v.Spinner,{position:C?void 0:"absolute",className:r.default(t.default["tedi-btn__spinner"],t.default["tedi-btn__spinner--left"]),size:18}):d?f("left",d):l?f("center",l):null;return n.jsxs("span",{className:t.default["tedi-btn__inner"],children:[e,n.jsx("span",{className:t.default["tedi-btn__text"],children:o}),!a&&u&&f("right",u)]})},z=e=>{j&&!a&&j(e)},H=!!l,N=(e=>{if(typeof e=="string")return e;if(Array.isArray(e))return e.map(s=>typeof s=="string"?s:"").join("").trim()})(o),B=n.jsx(S,{"data-name":"button-content",...y,"aria-disabled":a||y["aria-disabled"],"aria-busy":a||void 0,onClick:z,ref:w,className:A,children:_?o:O()});return n.jsx(G.Print,{visibility:"hide",children:P&&H&&N?n.jsxs(b.Tooltip,{children:[n.jsx(b.Tooltip.Trigger,{children:B}),n.jsx(b.Tooltip.Content,{children:N})]}):B})});T.displayName="ButtonContent";const I=T;exports.ButtonContent=I;exports.default=I;
@@ -67,9 +67,14 @@ export type ButtonContentProps<C extends React.ElementType, P extends Record<str
67
67
  */
68
68
  noStyle?: boolean;
69
69
  /**
70
- *
70
+ * Internal use only
71
71
  */
72
72
  renderWrapperElement?: unknown;
73
+ /**
74
+ * Automatically show tooltip for icon-only buttons.
75
+ * @default true
76
+ */
77
+ showTooltip?: boolean;
73
78
  } & P>;
74
79
  export type ButtonContentComponent = <C extends React.ElementType, P extends Record<string, UnknownType>, A>(props: ButtonContentProps<C, P, A>) => React.ReactNode;
75
80
  /**
@@ -1,89 +1,98 @@
1
- import { jsx as s, jsxs as q } from "react/jsx-runtime";
1
+ import { jsx as s, jsxs as h } from "react/jsx-runtime";
2
2
  import i from "../../../../../external/classnames/index.es.js";
3
- import { forwardRef as A } from "react";
4
- import { Icon as D } from "../../base/icon/icon.es.js";
5
- import { Spinner as x } from "../../loaders/spinner/spinner.es.js";
6
- import { Print as F } from "../../misc/print/print.es.js";
3
+ import { forwardRef as F } from "react";
4
+ import { Icon as G } from "../../base/icon/icon.es.js";
5
+ import { Spinner as k } from "../../loaders/spinner/spinner.es.js";
6
+ import { Print as J } from "../../misc/print/print.es.js";
7
7
  import t from "./button-content.module.scss.es.js";
8
- const B = A(
8
+ import { Tooltip as c } from "../../overlays/tooltip/tooltip.es.js";
9
+ const E = F(
9
10
  ({
10
- children: c,
11
- as: I,
12
- text: G,
13
- className: p,
14
- visualType: f = "primary",
15
- color: k = "default",
16
- size: o,
17
- icon: a,
18
- iconLeft: l,
19
- iconRight: d,
20
- underline: v = !1,
21
- isHovered: $,
22
- isActive: w,
23
- isLoading: e = !1,
24
- noStyle: u,
25
- renderWrapperElement: J,
26
- fullWidth: _,
11
+ children: a,
12
+ as: T,
13
+ _text: K,
14
+ className: f,
15
+ visualType: u = "primary",
16
+ color: $ = "default",
17
+ size: l,
18
+ icon: o,
19
+ iconLeft: d,
20
+ iconRight: m,
21
+ underline: j = !1,
22
+ isHovered: w,
23
+ isActive: P,
24
+ isLoading: r = !1,
25
+ noStyle: _,
26
+ _renderWrapperElement: Q,
27
+ fullWidth: y,
27
28
  onClick: N,
28
- ...y
29
- }, E) => {
30
- const P = I || "button", C = a || l || d, j = u ? i(t["tedi-btn--no-style"], { [t["tedi-btn--full-width"]]: _ }, p) : i(
29
+ showTooltip: g = !1,
30
+ ...x
31
+ }, A) => {
32
+ const M = T || "button", B = o || d || m, z = _ ? i(t["tedi-btn--no-style"], { [t["tedi-btn--full-width"]]: y }, f) : i(
31
33
  t["tedi-btn"],
32
- t[`tedi-btn--${f}`],
33
- t[`tedi-btn--${k}`],
34
- { [t[`tedi-btn--${o}`]]: o },
35
- { [t["tedi-btn--underline"]]: v },
36
- { [t["tedi-btn--is-hovered"]]: $ },
37
- { [t["tedi-btn--is-active"]]: w },
38
- { [t["tedi-btn--is-loading"]]: e },
39
- { [t["tedi-btn--icon-only"]]: a },
40
- { [t["tedi-btn--icon"]]: C },
41
- { [t["tedi-btn--full-width"]]: _ },
42
- p
43
- ), m = (r, n) => {
44
- const H = i(t["tedi-btn__icon"], t[`tedi-btn__icon--${r}`], {
45
- [t["tedi-btn__spinner"]]: e
46
- }), b = {
47
- size: o === "large" ? 24 : 18,
48
- className: H,
49
- ...f === "link" ? { display: "inline" } : {}
50
- }, h = typeof n == "string" ? { ...b, name: n } : { ...b, ...n, className: i(b.className, n == null ? void 0 : n.className) };
51
- return e ? /* @__PURE__ */ s(x, { className: h.className, size: 18 }) : /* @__PURE__ */ s(D, { ...h });
52
- }, M = () => {
53
- const r = e ? /* @__PURE__ */ s(
54
- x,
34
+ t[`tedi-btn--${u}`],
35
+ t[`tedi-btn--${$}`],
36
+ { [t[`tedi-btn--${l}`]]: l },
37
+ { [t["tedi-btn--underline"]]: j },
38
+ { [t["tedi-btn--is-hovered"]]: w },
39
+ { [t["tedi-btn--is-active"]]: P },
40
+ { [t["tedi-btn--is-loading"]]: r },
41
+ { [t["tedi-btn--icon-only"]]: o },
42
+ { [t["tedi-btn--icon"]]: B },
43
+ { [t["tedi-btn--full-width"]]: y },
44
+ f
45
+ ), b = (e, n) => {
46
+ const D = i(t["tedi-btn__icon"], t[`tedi-btn__icon--${e}`], {
47
+ [t["tedi-btn__spinner"]]: r
48
+ }), p = {
49
+ size: l === "large" ? 24 : 18,
50
+ className: D,
51
+ ...u === "link" ? { display: "inline" } : {}
52
+ }, v = typeof n == "string" ? { ...p, name: n } : { ...p, ...n, className: i(p.className, n == null ? void 0 : n.className) };
53
+ return r ? /* @__PURE__ */ s(k, { className: v.className, size: 18 }) : /* @__PURE__ */ s(G, { ...v });
54
+ }, H = () => {
55
+ const e = r ? /* @__PURE__ */ s(
56
+ k,
55
57
  {
56
- position: C ? void 0 : "absolute",
58
+ position: B ? void 0 : "absolute",
57
59
  className: i(t["tedi-btn__spinner"], t["tedi-btn__spinner--left"]),
58
60
  size: 18
59
61
  }
60
- ) : l ? m("left", l) : a ? m("center", a) : null;
61
- return /* @__PURE__ */ q("span", { className: t["tedi-btn__inner"], children: [
62
- r,
63
- /* @__PURE__ */ s("span", { className: t["tedi-btn__text"], children: c }),
64
- !e && d && m("right", d)
62
+ ) : d ? b("left", d) : o ? b("center", o) : null;
63
+ return /* @__PURE__ */ h("span", { className: t["tedi-btn__inner"], children: [
64
+ e,
65
+ /* @__PURE__ */ s("span", { className: t["tedi-btn__text"], children: a }),
66
+ !r && m && b("right", m)
65
67
  ] });
66
- }, z = (r) => {
67
- N && !e && N(r);
68
- };
69
- return /* @__PURE__ */ s(F, { visibility: "hide", children: /* @__PURE__ */ s(
70
- P,
68
+ }, O = (e) => {
69
+ N && !r && N(e);
70
+ }, q = !!o, C = ((e) => {
71
+ if (typeof e == "string") return e;
72
+ if (Array.isArray(e))
73
+ return e.map((n) => typeof n == "string" ? n : "").join("").trim();
74
+ })(a), I = /* @__PURE__ */ s(
75
+ M,
71
76
  {
72
77
  "data-name": "button-content",
73
- ...y,
74
- "aria-disabled": e || y["aria-disabled"],
75
- "aria-busy": e || void 0,
76
- onClick: z,
77
- ref: E,
78
- className: j,
79
- children: u ? c : M()
78
+ ...x,
79
+ "aria-disabled": r || x["aria-disabled"],
80
+ "aria-busy": r || void 0,
81
+ onClick: O,
82
+ ref: A,
83
+ className: z,
84
+ children: _ ? a : H()
80
85
  }
81
- ) });
86
+ );
87
+ return /* @__PURE__ */ s(J, { visibility: "hide", children: g && q && C ? /* @__PURE__ */ h(c, { children: [
88
+ /* @__PURE__ */ s(c.Trigger, { children: I }),
89
+ /* @__PURE__ */ s(c.Content, { children: C })
90
+ ] }) : I });
82
91
  }
83
92
  );
84
- B.displayName = "ButtonContent";
85
- const Y = B;
93
+ E.displayName = "ButtonContent";
94
+ const et = E;
86
95
  export {
87
- Y as ButtonContent,
88
- Y as default
96
+ et as ButtonContent,
97
+ et as default
89
98
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),x=require("react"),o=require("../../../../../../../external/classnames/index.cjs.js"),D=require("../../../../base/icon/icon.cjs.js"),E=require("../../../../buttons/collapse/collapse.cjs.js"),C=require("../../../../navigation/link/link.cjs.js"),s=require("../../sidenav.module.scss.cjs.js"),W=require("../sidenav-dropdown/sidenav-dropdown.cjs.js"),g=require("../../../../overlays/tooltip/tooltip.cjs.js"),J=require("../../../../../providers/label-provider/use-labels.cjs.js"),M=O=>{const{icon:t,children:l,isActive:j,onClick:N,subItems:S,subItemGroups:P,as:T,onItemClick:p,className:B,level:r=1,isCollapsed:c=!1,isDefaultOpen:$=!1,sideNavItemSize:z="default",...u}=O,{getLabel:q}=J.useLabels(),[n,w]=x.useState($??!1),[y,F]=x.useState(!1),v=x.useId(),m=P??(S?[{subItems:S}]:null),d=!!m,H=o.default(s.default["tedi-sidenav__item"],s.default[`tedi-sidenav__item--${z}`],{[s.default[`tedi-sidenav__item--level-${r}`]]:r>1,[s.default["tedi-sidenav__item--current"]]:j,[s.default["tedi-sidenav__item--has-children"]]:d},B),_=a=>{const i={color:"white",className:o.default(s.default["tedi-sidenav__icon"])},h=typeof a=="string"?{...i,name:a}:{...i,...a,className:o.default(i.className,a==null?void 0:a.className)};return e.jsx(D.Icon,{...h})},K=a=>{N==null||N(a),d||p==null||p()},b=a=>{w(a)},A=a=>{(a.key==="Enter"||a.key===" ")&&(a.preventDefault(),w(f=>{const i=!f;return b(i),i}))},G=d&&(u.href||u.to),k={...u,as:T,onClick:K,className:o.default(s.default["tedi-sidenav__link"],G&&s.default["tedi-sidenav__link--has-children-link"]),noStyle:!0,role:"menuitem","aria-current":j?"page":void 0,"aria-label":c&&typeof l=="string"?l:void 0,...d?{"aria-haspopup":"true","aria-expanded":n,"aria-controls":v}:{}},I=()=>!c&&(m==null?void 0:m.map((a,f)=>{var i;return e.jsxs("div",{children:[(a==null?void 0:a.subHeading)&&e.jsx("div",{className:s.default["tedi-sidenav__subheading"],children:a.subHeading}),e.jsx("ul",{className:s.default["tedi-sidenav__list"],role:"menu",children:(i=a.subItems)==null?void 0:i.map((h,R)=>x.createElement(M,{as:T,...h,key:R,level:r+1,onItemClick:p,isCollapsed:c,className:o.default(s.default["tedi-sidenav__sub-item"],h.className)}))})]},f)})),L=e.jsx("li",{"data-name":"sidenav-item",className:H,children:d&&c?e.jsx(W.SideNavDropdown,{trigger:e.jsx(g.Tooltip.Trigger,{children:e.jsxs("span",{className:o.default(s.default["tedi-sidenav__link"],y&&s.default["tedi-sidenav__link--active"]),children:[t&&_(t),e.jsx(D.Icon,{name:y?"chevron_right":"expand_more",color:"white",className:s.default["tedi-sidenav__toggle-icon"],size:18}),e.jsx("span",{className:s.default["tedi-sidenav__title"],children:l})]})}),groups:m,onOpenChange:F}):d&&r===1?u.href||u.to?e.jsxs(e.Fragment,{children:[e.jsxs(C.Link,{...k,children:[t&&_(t),e.jsx("span",{className:s.default["tedi-sidenav__title"],children:l})]}),e.jsx("div",{className:s.default["tedi-sidenav__link-collapse-wrapper"],children:e.jsx(E.Collapse,{id:v,hideCollapseText:!0,open:n,onToggle:b,toggleLabel:q("sidenav.toggleSubmenuChildren",{isCollapsedInternal:n,children:l}),className:s.default["tedi-sidenav__collapse"],children:I()})})]}):e.jsx(E.Collapse,{id:v,hideCollapseText:!0,open:n,onToggle:b,className:s.default["tedi-sidenav__collapse"],toggleLabel:q("sidenav.toggleSubmenuChildren",{isCollapsedInternal:n,children:l}),title:e.jsxs("span",{className:o.default(s.default["tedi-sidenav__link"],n&&s.default["tedi-sidenav__link--active"]),role:"button","aria-expanded":n,"aria-controls":v,"aria-current":j?"page":void 0,onKeyDown:A,children:[t&&_(t),e.jsx("span",{className:s.default["tedi-sidenav__title"],children:l})]}),children:I()}):d?e.jsxs(e.Fragment,{children:[e.jsxs(C.Link,{...k,children:[t&&_(t),e.jsx("span",{className:s.default["tedi-sidenav__title"],children:l}),e.jsx("i",{className:s.default["tedi-sidenav__bullet"]})]}),I()]}):e.jsx(g.Tooltip.Trigger,{children:e.jsxs(C.Link,{...k,children:[t&&_(t),e.jsx("span",{className:s.default["tedi-sidenav__title"],children:l})]})})});return r===1&&c?e.jsxs(g.Tooltip,{placement:"right",focusManager:{order:["content"]},children:[e.jsx(g.Tooltip.Content,{maxWidth:"medium",children:l}),L]}):L};exports.SideNavItem=M;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),x=require("react"),o=require("../../../../../../../external/classnames/index.cjs.js"),D=require("../../../../base/icon/icon.cjs.js"),E=require("../../../../buttons/collapse/collapse.cjs.js"),C=require("../../../../navigation/link/link.cjs.js"),s=require("../../sidenav.module.scss.cjs.js"),W=require("../sidenav-dropdown/sidenav-dropdown.cjs.js"),J=require("../../../../../providers/label-provider/use-labels.cjs.js"),g=require("../../../../overlays/tooltip/tooltip.cjs.js"),M=O=>{const{icon:t,children:l,isActive:j,onClick:N,subItems:S,subItemGroups:P,as:T,onItemClick:p,className:B,level:r=1,isCollapsed:c=!1,isDefaultOpen:$=!1,sideNavItemSize:z="default",...u}=O,{getLabel:q}=J.useLabels(),[n,w]=x.useState($??!1),[y,F]=x.useState(!1),v=x.useId(),m=P??(S?[{subItems:S}]:null),d=!!m,H=o.default(s.default["tedi-sidenav__item"],s.default[`tedi-sidenav__item--${z}`],{[s.default[`tedi-sidenav__item--level-${r}`]]:r>1,[s.default["tedi-sidenav__item--current"]]:j,[s.default["tedi-sidenav__item--has-children"]]:d},B),_=a=>{const i={color:"white",className:o.default(s.default["tedi-sidenav__icon"])},h=typeof a=="string"?{...i,name:a}:{...i,...a,className:o.default(i.className,a==null?void 0:a.className)};return e.jsx(D.Icon,{...h})},K=a=>{N==null||N(a),d||p==null||p()},b=a=>{w(a)},A=a=>{(a.key==="Enter"||a.key===" ")&&(a.preventDefault(),w(f=>{const i=!f;return b(i),i}))},G=d&&(u.href||u.to),k={...u,as:T,onClick:K,className:o.default(s.default["tedi-sidenav__link"],G&&s.default["tedi-sidenav__link--has-children-link"]),noStyle:!0,role:"menuitem","aria-current":j?"page":void 0,"aria-label":c&&typeof l=="string"?l:void 0,...d?{"aria-haspopup":"true","aria-expanded":n,"aria-controls":v}:{}},I=()=>!c&&(m==null?void 0:m.map((a,f)=>{var i;return e.jsxs("div",{children:[(a==null?void 0:a.subHeading)&&e.jsx("div",{className:s.default["tedi-sidenav__subheading"],children:a.subHeading}),e.jsx("ul",{className:s.default["tedi-sidenav__list"],role:"menu",children:(i=a.subItems)==null?void 0:i.map((h,R)=>x.createElement(M,{as:T,...h,key:R,level:r+1,onItemClick:p,isCollapsed:c,className:o.default(s.default["tedi-sidenav__sub-item"],h.className)}))})]},f)})),L=e.jsx("li",{"data-name":"sidenav-item",className:H,children:d&&c?e.jsx(W.SideNavDropdown,{trigger:e.jsx(g.Tooltip.Trigger,{children:e.jsxs("span",{className:o.default(s.default["tedi-sidenav__link"],y&&s.default["tedi-sidenav__link--active"]),children:[t&&_(t),e.jsx(D.Icon,{name:y?"chevron_right":"expand_more",color:"white",className:s.default["tedi-sidenav__toggle-icon"],size:18}),e.jsx("span",{className:s.default["tedi-sidenav__title"],children:l})]})}),groups:m,onOpenChange:F}):d&&r===1?u.href||u.to?e.jsxs(e.Fragment,{children:[e.jsxs(C.Link,{...k,children:[t&&_(t),e.jsx("span",{className:s.default["tedi-sidenav__title"],children:l})]}),e.jsx("div",{className:s.default["tedi-sidenav__link-collapse-wrapper"],children:e.jsx(E.Collapse,{id:v,hideCollapseText:!0,open:n,onToggle:b,toggleLabel:q("sidenav.toggleSubmenuChildren",{isCollapsedInternal:n,children:l}),className:s.default["tedi-sidenav__collapse"],children:I()})})]}):e.jsx(E.Collapse,{id:v,hideCollapseText:!0,open:n,onToggle:b,className:s.default["tedi-sidenav__collapse"],toggleLabel:q("sidenav.toggleSubmenuChildren",{isCollapsedInternal:n,children:l}),title:e.jsxs("span",{className:o.default(s.default["tedi-sidenav__link"],n&&s.default["tedi-sidenav__link--active"]),role:"button","aria-expanded":n,"aria-controls":v,"aria-current":j?"page":void 0,onKeyDown:A,children:[t&&_(t),e.jsx("span",{className:s.default["tedi-sidenav__title"],children:l})]}),children:I()}):d?e.jsxs(e.Fragment,{children:[e.jsxs(C.Link,{...k,children:[t&&_(t),e.jsx("span",{className:s.default["tedi-sidenav__title"],children:l}),e.jsx("i",{className:s.default["tedi-sidenav__bullet"]})]}),I()]}):e.jsx(g.Tooltip.Trigger,{children:e.jsxs(C.Link,{...k,children:[t&&_(t),e.jsx("span",{className:s.default["tedi-sidenav__title"],children:l})]})})});return r===1&&c?e.jsxs(g.Tooltip,{placement:"right",focusManager:{order:["content"]},children:[e.jsx(g.Tooltip.Content,{maxWidth:"medium",children:l}),L]}):L};exports.SideNavItem=M;
@@ -6,8 +6,8 @@ import { Collapse as B } from "../../../../buttons/collapse/collapse.es.js";
6
6
  import { Link as w } from "../../../../navigation/link/link.es.js";
7
7
  import e from "../../sidenav.module.scss.es.js";
8
8
  import { SideNavDropdown as U } from "../sidenav-dropdown/sidenav-dropdown.es.js";
9
- import { Tooltip as f } from "../../../../overlays/tooltip/tooltip.es.js";
10
9
  import { useLabels as V } from "../../../../../providers/label-provider/use-labels.es.js";
10
+ import { Tooltip as f } from "../../../../overlays/tooltip/tooltip.es.js";
11
11
  const X = (j) => {
12
12
  const {
13
13
  icon: i,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),U=require("../../../../../../../external/@floating-ui/react/dist/floating-ui.react.cjs.js"),l=require("../../../../../../../external/classnames/index.cjs.js"),C=require("react"),d=require("../../../../base/icon/icon.cjs.js"),_=require("../../../../buttons/button/button.cjs.js"),t=require("../../sidenav.module.scss.cjs.js"),L=require("../sidenav-item/sidenav-item.cjs.js"),D=require("../../../../../providers/label-provider/use-labels.cjs.js"),E=({navItems:q,ariaLabel:y,linkAs:m,isOpen:M,onClose:r,showOverlay:w=!0,id:B,className:G})=>{var N,j,k,g,p,I,S;const{getLabel:v}=D.useLabels(),[s,u]=C.useState([{items:q}]),a=s[s.length-1],P=s.length===1,f=e=>{var h;const i=!!(e.subItems||e.subItemGroups),c=!!(e.href||e.to);if(!i){r();return}const o=((h=e.subItemGroups)==null?void 0:h.flatMap(H=>H.subItems))||e.subItems||[];u([...s,{items:o,parent:e,renderParentLink:c}])},R=()=>{u(s.slice(0,-1))},T=()=>{u([s[0]])},z=((j=(N=a.parent)==null?void 0:N.subItems)==null?void 0:j.length)??((g=(k=a.parent)==null?void 0:k.subItemGroups)==null?void 0:g.length),F=s.length>1&&!(a.renderParentLink&&z),b=(e,i)=>i===1?!(e.subItems||e.subItemGroups)?n.jsx(L.SideNavItem,{...e,as:m,level:i,onItemClick:r,className:l.default(t.default["tedi-sidenav__item--mobile"],e.className)}):n.jsx("li",{className:l.default(t.default["tedi-sidenav__item"],t.default["tedi-sidenav__item--mobile"]),children:n.jsxs("button",{onClick:()=>f(e),className:t.default["tedi-sidenav__link"],children:[e.icon&&n.jsx(d.Icon,{name:typeof e.icon=="string"?e.icon:e.icon.name,color:"white",className:t.default["tedi-sidenav__icon"]}),n.jsx("span",{className:t.default["tedi-sidenav__title"],children:e.children}),n.jsx(d.Icon,{name:"expand_more",color:"white",className:t.default["tedi-sidenav__toggle-icon"]})]})}):O(e,i),O=(e,i)=>{const c=!!(e.href||e.to),o=!!(e.subItems||e.subItemGroups);return c?n.jsx(L.SideNavItem,{...e,as:m,level:i,icon:void 0,onItemClick:r,className:l.default(t.default["tedi-sidenav__sub-item"],e.className)}):n.jsx("li",{className:l.default(t.default["tedi-sidenav__item"]),children:n.jsxs(_.Button,{noStyle:!0,onClick:()=>o?f(e):r(),className:t.default["tedi-sidenav__link"],children:[n.jsx("span",{className:t.default["tedi-sidenav__title"],children:e.children}),o?n.jsx(d.Icon,{name:"expand_more",color:"white",className:t.default["tedi-sidenav__toggle-icon"]}):null]})})},x=n.jsxs("nav",{"data-name":"mobile-sidenav",className:l.default(t.default["tedi-sidenav"],t.default["tedi-sidenav--mobile"],G),"aria-label":y,id:B,children:[n.jsx("div",{className:t.default["tedi-sidenav__list"],children:!P&&n.jsxs("div",{className:t.default["tedi-sidenav__back-buttons"],children:[s.length>1&&n.jsxs(_.Button,{noStyle:!0,onClick:T,className:l.default(t.default["tedi-sidenav__link"],t.default["tedi-sidenav__back-button"]),children:[n.jsx(d.Icon,{name:"arrow_back",size:16,color:"white"}),n.jsx("span",{children:v("sidenav.backToMainMenu")})]}),s.length>2&&n.jsxs(_.Button,{noStyle:!0,onClick:R,className:l.default(t.default["tedi-sidenav__link"],t.default["tedi-sidenav__back-button"]),children:[n.jsx(d.Icon,{name:"arrow_back",size:16,color:"white"}),n.jsx("span",{children:((I=(p=s[s.length-1])==null?void 0:p.parent)==null?void 0:I.children)+" "+v("sidenav.backtoMenu")})]})]})}),F&&n.jsx("div",{className:l.default(t.default["tedi-sidenav__subheading"],t.default["tedi-sidenav__subheading--mobile"]),children:(S=a.parent)==null?void 0:S.children}),n.jsxs("ul",{className:t.default["tedi-sidenav__list"],role:"menubar",children:[a.renderParentLink&&a.parent&&n.jsx("li",{className:t.default["tedi-sidenav__list-item"],children:n.jsx("div",{className:l.default(t.default["tedi-sidenav__collapse"]),children:b(a.parent,s.length)})}),!a.renderParentLink&&a.items.map((e,i)=>n.jsx(C.Fragment,{children:b(e,s.length)},e.id||i))]})]});return M?w?n.jsx(U.FloatingOverlay,{style:{top:"0",position:"relative",height:"100%"},className:t.default["tedi-sidenav__overlay"],children:x}):x:null};exports.SideNavMobile=E;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),H=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"),n=require("../../sidenav.module.scss.cjs.js"),q=require("../sidenav-item/sidenav-item.cjs.js"),U=require("../../../../../providers/label-provider/use-labels.cjs.js"),D=({navItems:h,ariaLabel:y,linkAs:v,isOpen:M,onClose:r,showOverlay:w=!0,id:B,className:G})=>{var k,g,p,I,S,C,L;const{getLabel:b}=U.useLabels(),[s,c]=m.useState([{items:h}]);m.useEffect(()=>{c([{items:h}])},[h]);const a=s[s.length-1],P=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(E=>E.subItems))||e.subItems||[];c([...s,{items:u,parent:e,renderParentLink:o}])},R=()=>{c(s.slice(0,-1))},T=()=>{c([s[0]])},z=((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),F=s.length>1&&!(a.renderParentLink&&z),N=(e,i)=>i===1?!(e.subItems||e.subItemGroups)?t.jsx(q.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"]})]})}):O(e,i),O=(e,i)=>{const o=!!(e.href||e.to),u=!!(e.subItems||e.subItemGroups);return o?t.jsx(q.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"],G),"aria-label":y,id:B,children:[t.jsx("div",{className:n.default["tedi-sidenav__list"],children:!P&&t.jsxs("div",{className:n.default["tedi-sidenav__back-buttons"],children:[s.length>1&&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:b("sidenav.backToMainMenu")})]}),s.length>2&&t.jsxs(f.Button,{noStyle:!0,onClick:R,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")})]})]})}),F&&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 M?w?t.jsx(H.FloatingOverlay,{style:{top:"0",position:"relative",height:"100%"},className:n.default["tedi-sidenav__overlay"],children:j}):j:null};exports.SideNavMobile=D;
@@ -1,53 +1,57 @@
1
1
  import { jsxs as r, jsx as i } from "react/jsx-runtime";
2
- import { FloatingOverlay as D } from "../../../../../../../external/@floating-ui/react/dist/floating-ui.react.es.js";
2
+ import { FloatingOverlay as q } from "../../../../../../../external/@floating-ui/react/dist/floating-ui.react.es.js";
3
3
  import l from "../../../../../../../external/classnames/index.es.js";
4
- import E, { useState as J } from "react";
4
+ import D, { useState as J, useEffect as K } from "react";
5
5
  import { Icon as d } from "../../../../base/icon/icon.es.js";
6
- import { Button as u } from "../../../../buttons/button/button.es.js";
6
+ import { Button as v } from "../../../../buttons/button/button.es.js";
7
7
  import n from "../../sidenav.module.scss.es.js";
8
- import { SideNavItem as w } from "../sidenav-item/sidenav-item.es.js";
9
- import { useLabels as K } from "../../../../../providers/label-provider/use-labels.es.js";
10
- const ee = ({
11
- navItems: M,
8
+ import { SideNavItem as M } from "../sidenav-item/sidenav-item.es.js";
9
+ import { useLabels as Q } from "../../../../../providers/label-provider/use-labels.es.js";
10
+ const ne = ({
11
+ navItems: _,
12
12
  ariaLabel: x,
13
- linkAs: v,
13
+ linkAs: b,
14
14
  isOpen: G,
15
15
  onClose: o,
16
16
  showOverlay: P = !0,
17
17
  id: R,
18
18
  className: B
19
19
  }) => {
20
- var g, f, I, C, L, S, y;
21
- const { getLabel: b } = K(), [s, h] = J([{ items: M }]), t = s[s.length - 1], j = s.length === 1, p = (e) => {
22
- var _;
23
- const a = !!(e.subItems || e.subItemGroups), c = !!(e.href || e.to);
20
+ var f, I, C, L, S, y, w;
21
+ const { getLabel: p } = Q(), [s, c] = J([{ items: _ }]);
22
+ K(() => {
23
+ c([{ items: _ }]);
24
+ }, [_]);
25
+ const t = s[s.length - 1], j = s.length === 1, k = (e) => {
26
+ var u;
27
+ const a = !!(e.subItems || e.subItemGroups), m = !!(e.href || e.to);
24
28
  if (!a) {
25
29
  o();
26
30
  return;
27
31
  }
28
- const m = ((_ = e.subItemGroups) == null ? void 0 : _.flatMap((q) => q.subItems)) || e.subItems || [];
29
- h([
32
+ const h = ((u = e.subItemGroups) == null ? void 0 : u.flatMap((O) => O.subItems)) || e.subItems || [];
33
+ c([
30
34
  ...s,
31
35
  {
32
- items: m,
36
+ items: h,
33
37
  parent: e,
34
- renderParentLink: c
38
+ renderParentLink: m
35
39
  }
36
40
  ]);
37
41
  }, z = () => {
38
- h(s.slice(0, -1));
42
+ c(s.slice(0, -1));
39
43
  }, F = () => {
40
- h([s[0]]);
41
- }, T = ((f = (g = t.parent) == null ? void 0 : g.subItems) == null ? void 0 : f.length) ?? ((C = (I = t.parent) == null ? void 0 : I.subItemGroups) == null ? void 0 : C.length), H = s.length > 1 && !(t.renderParentLink && T), k = (e, a) => a === 1 ? !(e.subItems || e.subItemGroups) ? /* @__PURE__ */ i(
42
- w,
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), N = (e, a) => a === 1 ? !(e.subItems || e.subItemGroups) ? /* @__PURE__ */ i(
46
+ M,
43
47
  {
44
48
  ...e,
45
- as: v,
49
+ as: b,
46
50
  level: a,
47
51
  onItemClick: o,
48
52
  className: l(n["tedi-sidenav__item--mobile"], e.className)
49
53
  }
50
- ) : /* @__PURE__ */ i("li", { className: l(n["tedi-sidenav__item"], n["tedi-sidenav__item--mobile"]), children: /* @__PURE__ */ r("button", { onClick: () => p(e), className: n["tedi-sidenav__link"], children: [
54
+ ) : /* @__PURE__ */ i("li", { className: l(n["tedi-sidenav__item"], n["tedi-sidenav__item--mobile"]), children: /* @__PURE__ */ r("button", { onClick: () => k(e), className: n["tedi-sidenav__link"], children: [
51
55
  e.icon && /* @__PURE__ */ i(
52
56
  d,
53
57
  {
@@ -58,31 +62,31 @@ const ee = ({
58
62
  ),
59
63
  /* @__PURE__ */ i("span", { className: n["tedi-sidenav__title"], children: e.children }),
60
64
  /* @__PURE__ */ i(d, { name: "expand_more", color: "white", className: n["tedi-sidenav__toggle-icon"] })
61
- ] }) }) : O(e, a), O = (e, a) => {
62
- const c = !!(e.href || e.to), m = !!(e.subItems || e.subItemGroups);
63
- return c ? /* @__PURE__ */ i(
64
- w,
65
+ ] }) }) : H(e, a), H = (e, a) => {
66
+ const m = !!(e.href || e.to), h = !!(e.subItems || e.subItemGroups);
67
+ return m ? /* @__PURE__ */ i(
68
+ M,
65
69
  {
66
70
  ...e,
67
- as: v,
71
+ as: b,
68
72
  level: a,
69
73
  icon: void 0,
70
74
  onItemClick: o,
71
75
  className: l(n["tedi-sidenav__sub-item"], e.className)
72
76
  }
73
77
  ) : /* @__PURE__ */ i("li", { className: l(n["tedi-sidenav__item"]), children: /* @__PURE__ */ r(
74
- u,
78
+ v,
75
79
  {
76
80
  noStyle: !0,
77
- onClick: () => m ? p(e) : o(),
81
+ onClick: () => h ? k(e) : o(),
78
82
  className: n["tedi-sidenav__link"],
79
83
  children: [
80
84
  /* @__PURE__ */ i("span", { className: n["tedi-sidenav__title"], children: e.children }),
81
- m ? /* @__PURE__ */ i(d, { name: "expand_more", color: "white", className: n["tedi-sidenav__toggle-icon"] }) : null
85
+ h ? /* @__PURE__ */ i(d, { name: "expand_more", color: "white", className: n["tedi-sidenav__toggle-icon"] }) : null
82
86
  ]
83
87
  }
84
88
  ) });
85
- }, N = /* @__PURE__ */ r(
89
+ }, g = /* @__PURE__ */ r(
86
90
  "nav",
87
91
  {
88
92
  "data-name": "mobile-sidenav",
@@ -92,40 +96,40 @@ const ee = ({
92
96
  children: [
93
97
  /* @__PURE__ */ i("div", { className: n["tedi-sidenav__list"], children: !j && /* @__PURE__ */ r("div", { className: n["tedi-sidenav__back-buttons"], children: [
94
98
  s.length > 1 && /* @__PURE__ */ r(
95
- u,
99
+ v,
96
100
  {
97
101
  noStyle: !0,
98
102
  onClick: F,
99
103
  className: l(n["tedi-sidenav__link"], n["tedi-sidenav__back-button"]),
100
104
  children: [
101
105
  /* @__PURE__ */ i(d, { name: "arrow_back", size: 16, color: "white" }),
102
- /* @__PURE__ */ i("span", { children: b("sidenav.backToMainMenu") })
106
+ /* @__PURE__ */ i("span", { children: p("sidenav.backToMainMenu") })
103
107
  ]
104
108
  }
105
109
  ),
106
110
  s.length > 2 && /* @__PURE__ */ r(
107
- u,
111
+ v,
108
112
  {
109
113
  noStyle: !0,
110
114
  onClick: z,
111
115
  className: l(n["tedi-sidenav__link"], n["tedi-sidenav__back-button"]),
112
116
  children: [
113
117
  /* @__PURE__ */ i(d, { name: "arrow_back", size: 16, color: "white" }),
114
- /* @__PURE__ */ i("span", { children: ((S = (L = s[s.length - 1]) == null ? void 0 : L.parent) == null ? void 0 : S.children) + " " + b("sidenav.backtoMenu") })
118
+ /* @__PURE__ */ i("span", { children: ((y = (S = s[s.length - 1]) == null ? void 0 : S.parent) == null ? void 0 : y.children) + " " + p("sidenav.backtoMenu") })
115
119
  ]
116
120
  }
117
121
  )
118
122
  ] }) }),
119
- H && /* @__PURE__ */ i("div", { className: l(n["tedi-sidenav__subheading"], n["tedi-sidenav__subheading--mobile"]), children: (y = t.parent) == null ? void 0 : y.children }),
123
+ E && /* @__PURE__ */ i("div", { className: l(n["tedi-sidenav__subheading"], n["tedi-sidenav__subheading--mobile"]), children: (w = t.parent) == null ? void 0 : w.children }),
120
124
  /* @__PURE__ */ r("ul", { className: n["tedi-sidenav__list"], role: "menubar", children: [
121
- 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) }) }),
122
- !t.renderParentLink && t.items.map((e, a) => /* @__PURE__ */ i(E.Fragment, { children: k(e, s.length) }, e.id || a))
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: N(t.parent, s.length) }) }),
126
+ !t.renderParentLink && t.items.map((e, a) => /* @__PURE__ */ i(D.Fragment, { children: N(e, s.length) }, e.id || a))
123
127
  ] })
124
128
  ]
125
129
  }
126
130
  );
127
131
  return G ? P ? /* @__PURE__ */ i(
128
- D,
132
+ q,
129
133
  {
130
134
  style: {
131
135
  top: "0",
@@ -133,10 +137,10 @@ const ee = ({
133
137
  height: "100%"
134
138
  },
135
139
  className: n["tedi-sidenav__overlay"],
136
- children: N
140
+ children: g
137
141
  }
138
- ) : N : null;
142
+ ) : g : null;
139
143
  };
140
144
  export {
141
- ee as SideNavMobile
145
+ ne as SideNavMobile
142
146
  };