react-luminus-components 1.3.103 → 1.3.104

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.
@@ -63,18 +63,26 @@
63
63
  "_ResponsiveContextDropdown-BTWYs_5c.js"
64
64
  ]
65
65
  },
66
- "_useClipboard-DNxOQ9MP.cjs": {
67
- "file": "useClipboard-DNxOQ9MP.cjs",
66
+ "_useClickOutside-BmlXg38T.js": {
67
+ "file": "useClickOutside-BmlXg38T.js",
68
+ "name": "useClickOutside"
69
+ },
70
+ "_useClickOutside-D0505nsm.cjs": {
71
+ "file": "useClickOutside-D0505nsm.cjs",
72
+ "name": "useClickOutside"
73
+ },
74
+ "_useClipboard-CPpcsAUr.js": {
75
+ "file": "useClipboard-CPpcsAUr.js",
68
76
  "name": "useClipboard",
69
77
  "imports": [
70
- "_ResponsiveContextDropdown-DJHED0fJ.cjs"
78
+ "_ResponsiveContextDropdown-BTWYs_5c.js"
71
79
  ]
72
80
  },
73
- "_useClipboard-joutXacR.js": {
74
- "file": "useClipboard-joutXacR.js",
81
+ "_useClipboard-DO4Wt5yn.cjs": {
82
+ "file": "useClipboard-DO4Wt5yn.cjs",
75
83
  "name": "useClipboard",
76
84
  "imports": [
77
- "_ResponsiveContextDropdown-BTWYs_5c.js"
85
+ "_ResponsiveContextDropdown-DJHED0fJ.cjs"
78
86
  ]
79
87
  },
80
88
  "_useGetApiData-DZI3UwZY.cjs": {
@@ -132,8 +140,9 @@
132
140
  "isEntry": true,
133
141
  "imports": [
134
142
  "_ResponsiveContextDropdown-DJHED0fJ.cjs",
135
- "_useClipboard-DNxOQ9MP.cjs",
143
+ "_useClickOutside-D0505nsm.cjs",
136
144
  "_usePermissions-Bv3PjjAi.cjs",
145
+ "_useClipboard-DO4Wt5yn.cjs",
137
146
  "_useGetApiData-DZI3UwZY.cjs",
138
147
  "_useLocalStorageState-BFc8Gc8H.cjs"
139
148
  ]
@@ -146,6 +155,7 @@
146
155
  "imports": [
147
156
  "_ResponsiveContextDropdown-DJHED0fJ.cjs",
148
157
  "_SimpleTooltip-DUaCV_sl.cjs",
158
+ "_useClickOutside-D0505nsm.cjs",
149
159
  "_usePermissions-Bv3PjjAi.cjs",
150
160
  "_FullScreenContainer-PAUPFvDa.cjs"
151
161
  ]
@@ -159,7 +169,8 @@
159
169
  "_ResponsiveContextDropdown-DJHED0fJ.cjs",
160
170
  "_Loading-xgF6OsXz.cjs",
161
171
  "_SimpleTooltip-DUaCV_sl.cjs",
162
- "_useClipboard-DNxOQ9MP.cjs",
172
+ "_useClickOutside-D0505nsm.cjs",
173
+ "_useClipboard-DO4Wt5yn.cjs",
163
174
  "_searchUtils-Duo7lkt3.cjs",
164
175
  "_useGetApiData-DZI3UwZY.cjs",
165
176
  "_FullScreenContainer-PAUPFvDa.cjs"
package/dist/hooks.cjs.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("./ResponsiveContextDropdown-DJHED0fJ.cjs"),u=require("./useClipboard-DNxOQ9MP.cjs"),l=require("./usePermissions-Bv3PjjAi.cjs"),m=require("./useGetApiData-DZI3UwZY.cjs"),c=require("react"),d=require("./useLocalStorageState-BFc8Gc8H.cjs"),h=a=>{let e="pending",t;const o=a.then(r=>{e="success",t=r},r=>{e="error",t=r});return()=>{switch(e){case"pending":throw o;case"success":return t;case"error":throw t;default:throw new Error("Unknown status")}}};function S(a,e){const t=s.useAxios({silent:!0,differentBaseUrl:e==null?void 0:e.customBaseUrl,customToken:e==null?void 0:e.customToken}),[o,r]=c.useState(null);return c.useEffect(()=>{(async()=>{const n=t.get(a).then(i=>i.data);r(h(n))})()},[t,a]),o}exports.cancelToken=s.cancelToken;exports.useAuth=s.useAuth;exports.useAxios=s.useAxios;exports.useConfirm=s.useConfirm;exports.useFormControlType=s.useFormControlType;exports.useNotifications=s.useNotifications;exports.usePrompt=s.usePrompt;exports.useZodSchemaTypes=s.useZodSchemaTypes;exports.useClickOutside=u.useClickOutside;exports.useClipboard=u.useClipboard;exports.useEmployeePhotoPath=u.useEmployeePhotoPath;exports.useKeyPress=u.useKeyPress;exports.useSearchQuery=u.useSearchQuery;exports.useSearchQueryState=u.useSearchQueryState;exports.usePermissions=l.usePermissions;exports.useGetApiData=m.useGetApiData;exports.useLocalStorageState=d.useLocalStorageState;exports.useGetDataBound=S;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("./ResponsiveContextDropdown-DJHED0fJ.cjs"),l=require("./useClickOutside-D0505nsm.cjs"),d=require("./usePermissions-Bv3PjjAi.cjs"),r=require("./useClipboard-DO4Wt5yn.cjs"),m=require("./useGetApiData-DZI3UwZY.cjs"),c=require("react"),h=require("./useLocalStorageState-BFc8Gc8H.cjs"),S=a=>{let e="pending",t;const o=a.then(u=>{e="success",t=u},u=>{e="error",t=u});return()=>{switch(e){case"pending":throw o;case"success":return t;case"error":throw t;default:throw new Error("Unknown status")}}};function y(a,e){const t=s.useAxios({silent:!0,differentBaseUrl:e==null?void 0:e.customBaseUrl,customToken:e==null?void 0:e.customToken}),[o,u]=c.useState(null);return c.useEffect(()=>{(async()=>{const n=t.get(a).then(i=>i.data);u(S(n))})()},[t,a]),o}exports.cancelToken=s.cancelToken;exports.useAuth=s.useAuth;exports.useAxios=s.useAxios;exports.useConfirm=s.useConfirm;exports.useFormControlType=s.useFormControlType;exports.useNotifications=s.useNotifications;exports.usePrompt=s.usePrompt;exports.useZodSchemaTypes=s.useZodSchemaTypes;exports.useClickOutside=l.useClickOutside;exports.usePermissions=d.usePermissions;exports.useClipboard=r.useClipboard;exports.useEmployeePhotoPath=r.useEmployeePhotoPath;exports.useKeyPress=r.useKeyPress;exports.useSearchQuery=r.useSearchQuery;exports.useSearchQueryState=r.useSearchQueryState;exports.useGetApiData=m.useGetApiData;exports.useLocalStorageState=h.useLocalStorageState;exports.useGetDataBound=y;
package/dist/hooks.es.js CHANGED
@@ -1,10 +1,11 @@
1
1
  import { as as c } from "./ResponsiveContextDropdown-BTWYs_5c.js";
2
2
  import { bi as S, az as y, aS as g, aF as w, aR as k, a_ as D, bj as P } from "./ResponsiveContextDropdown-BTWYs_5c.js";
3
- import { b, u as C, e as A, a as B, c as E, d as U } from "./useClipboard-joutXacR.js";
4
- import { u as G } from "./usePermissions-Xt0Kg7pS.js";
5
- import { u as j } from "./useGetApiData-DlXJYhhW.js";
3
+ import { u as b } from "./useClickOutside-BmlXg38T.js";
4
+ import { u as A } from "./usePermissions-Xt0Kg7pS.js";
5
+ import { u as E, d as U, a as F, b as G, c as Q } from "./useClipboard-CPpcsAUr.js";
6
+ import { u as z } from "./useGetApiData-DlXJYhhW.js";
6
7
  import { useState as n, useEffect as m } from "react";
7
- import { u as K } from "./useLocalStorageState-Bt99kkCr.js";
8
+ import { u as L } from "./useLocalStorageState-Bt99kkCr.js";
8
9
  const f = (t) => {
9
10
  let e = "pending", s;
10
11
  const r = t.then((a) => {
@@ -25,7 +26,7 @@ const f = (t) => {
25
26
  }
26
27
  };
27
28
  };
28
- function d(t, e) {
29
+ function p(t, e) {
29
30
  const s = c({
30
31
  silent: !0,
31
32
  differentBaseUrl: e == null ? void 0 : e.customBaseUrl,
@@ -43,18 +44,18 @@ export {
43
44
  y as useAuth,
44
45
  c as useAxios,
45
46
  b as useClickOutside,
46
- C as useClipboard,
47
+ E as useClipboard,
47
48
  g as useConfirm,
48
- A as useEmployeePhotoPath,
49
+ U as useEmployeePhotoPath,
49
50
  w as useFormControlType,
50
- j as useGetApiData,
51
- d as useGetDataBound,
52
- B as useKeyPress,
53
- K as useLocalStorageState,
51
+ z as useGetApiData,
52
+ p as useGetDataBound,
53
+ F as useKeyPress,
54
+ L as useLocalStorageState,
54
55
  k as useNotifications,
55
- G as usePermissions,
56
+ A as usePermissions,
56
57
  D as usePrompt,
57
- E as useSearchQuery,
58
- U as useSearchQueryState,
58
+ G as useSearchQuery,
59
+ Q as useSearchQueryState,
59
60
  P as useZodSchemaTypes
60
61
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./ResponsiveContextDropdown-DJHED0fJ.cjs"),h=require("react"),q=require("react-router-dom");require("react-hook-form");require("react-flexmonster");const y=require("./SimpleTooltip-DUaCV_sl.cjs");require("@azure/msal-browser");require("@azure/msal-react");const B=require("./usePermissions-Bv3PjjAi.cjs"),N=require("./FullScreenContainer-PAUPFvDa.cjs"),k="_side-menu-item_ql22m_1",g="_disabled_ql22m_6",C="_nav-button_ql22m_10",P="_child_ql22m_18",I="_text_ql22m_23",S="_icon_ql22m_30",w="_collapse-icon_ql22m_36",T="_collapsed_ql22m_46",L="_collapse-icon-mini_ql22m_49",F="_expanded_ql22m_80",$="_children-container_ql22m_86",f="_visible_ql22m_94",A="_children_ql22m_86",i={"side-menu-item":"_side-menu-item_ql22m_1",sideMenuItem:k,disabled:g,"nav-button":"_nav-button_ql22m_10",navButton:C,child:P,text:I,icon:S,"collapse-icon":"_collapse-icon_ql22m_36",collapseIcon:w,collapsed:T,"collapse-icon-mini":"_collapse-icon-mini_ql22m_49",collapseIconMini:L,expanded:F,"children-container":"_children-container_ql22m_86",childrenContainer:$,visible:f,children:A},O=({item:s,menuExpanded:o,useTooltips:a,children:l})=>s.tooltip&&!o&&a?e.jsxRuntimeExports.jsx(y.SimpleTooltip,{text:s.tooltip,placement:"right",children:l}):l,E=({item:s,menuExpanded:o,collapsed:a,onCollapse:l,currentPath:d,useHover:m,useTooltips:r})=>{var v,R,j,t;const[b,x]=h.useState(!1),[u]=d.split("?"),c=s.linkTo===u||((v=s.children)==null?void 0:v.some(n=>n.linkTo===u));return e.jsxRuntimeExports.jsxs("li",{className:e.classNames("luminus-side-menu-item",i.sideMenuItem,{[i.expanded]:o},{active:b||c},{open:a&&s.children},{[i.disabled]:s.disabled||s.notPermitted||((R=s.children)==null?void 0:R.every(n=>n.notPermitted||n.disabled))},{disabled:s.disabled||s.notPermitted||((j=s.children)==null?void 0:j.every(n=>n.notPermitted||n.disabled))}),onMouseEnter:()=>x(!0),onMouseLeave:()=>x(!1),children:[e.jsxRuntimeExports.jsx(O,{item:s,menuExpanded:o,useTooltips:r,children:s.children?e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsxs("button",{type:"button",className:e.classNames("nav-link",i.navButton),onClick:()=>{l()},children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("icon",i.icon),children:s.icon}),!m&&!o&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("collapse-icon-mini rounded",i.collapseIconMini,{[i.collapsed]:a}),children:e.jsxRuntimeExports.jsx(e.MdOutlineKeyboardArrowRight,{})}),o&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("text",i.text,"text-nowrap"),children:s.title}),o&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("collapse-icon",i.collapseIcon,{[i.collapsed]:a}),children:e.jsxRuntimeExports.jsx(e.MdOutlineKeyboardArrowRight,{})})]})}):e.jsxRuntimeExports.jsxs(q.Link,{to:s.disabled||s.notPermitted?"/":s.linkTo??"/",className:e.classNames("nav-link",i.navButton),children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("icon",i.icon),children:s.icon}),o&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("text",i.text,"text-nowrap"),children:s.title})]})}),e.jsxRuntimeExports.jsx("div",{className:e.classNames("children-container",i.childrenContainer,{[i.visible]:a}),children:e.jsxRuntimeExports.jsx("div",{className:e.classNames("shadow rounded children",i.children),children:(t=s.children)==null?void 0:t.map(n=>e.jsxRuntimeExports.jsx(q.Link,{to:n.disabled||n.notPermitted?"/":n.linkTo??"/",className:e.classNames("nav-link child rounded",i.navButton,i.child,{[i.disabled]:n.disabled||n.notPermitted},{disabled:n.disabled||n.notPermitted}),children:e.jsxRuntimeExports.jsx("div",{className:e.classNames("text",i.text,"text-nowrap"),children:n.title})},n.linkTo))})})]})},D="_side-menu_1deqc_1",K="_sidebar-header_1deqc_13",U="_side-menu-content_1deqc_20",z="_expand_1deqc_24",G="_only-logo_1deqc_28",J="_divider_1deqc_31",_={"side-menu":"_side-menu_1deqc_1",sideMenu:D,"sidebar-header":"_sidebar-header_1deqc_13",sidebarHeader:K,"side-menu-content":"_side-menu-content_1deqc_20",sideMenuContent:U,expand:z,"only-logo":"_only-logo_1deqc_28",onlyLogo:G,divider:J},Q=({headerItem:s,mainItems:o,secondaryItems:a,expanded:l,setExpanded:d,currentPath:m,useHover:r,useTooltips:b})=>{const[x,u]=h.useState(-1),{checkUserHasPermissions:c}=B.usePermissions(),v=h.useMemo(()=>o.map(t=>{var n;return{...t,notPermitted:!c(t.permissions??[],"any"),children:(n=t.children)==null?void 0:n.map(p=>({...p,notPermitted:!c(p.permissions??[],"any"),disabled:t.disabled||p.disabled}))}}),[o,c]),R=h.useMemo(()=>a.map(t=>{var n;return{...t,notPermitted:!c(t.permissions??[],"any"),children:(n=t.children)==null?void 0:n.map(p=>({...p,notPermitted:!c(p.permissions??[],"any")}))}}),[a,c]),j=t=>{u(t===x?-1:t)};return h.useEffect(()=>{l||u(-1)},[l]),e.jsxRuntimeExports.jsxs("section",{className:e.classNames("luminus-side-menu shadow",_.sideMenu,{[_.expand]:l},{expand:l}),onMouseEnter:()=>r&&d(!0),onMouseLeave:()=>r&&d(!1),children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("sidebar-header",_.sidebarHeader,{[_.onlyLogo]:r}),role:r?void 0:"button",onClick:r?void 0:()=>d(!l),children:r?s:l?e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(e.MdOutlineArrowBack,{}),s]}):e.jsxRuntimeExports.jsx(e.MdOutlineMenu,{})}),e.jsxRuntimeExports.jsxs("ul",{className:_.sideMenuContent,children:[v.map((t,n)=>e.jsxRuntimeExports.jsx(E,{item:t,menuExpanded:l,collapsed:n===x,onCollapse:()=>j(n),currentPath:m,useHover:r,useTooltips:b},t.title)),e.jsxRuntimeExports.jsx("hr",{className:e.classNames("divider",_.divider)}),R.map((t,n)=>e.jsxRuntimeExports.jsx(E,{item:t,menuExpanded:l,collapsed:n===x,onCollapse:()=>j(n),currentPath:m,useHover:r,useTooltips:b},t.title))]})]})},V="_top-bar_1lk80_1",X="_top-bar-brand_1lk80_14",M={"top-bar":"_top-bar_1lk80_1",topBar:V,"top-bar-brand":"_top-bar-brand_1lk80_14",topBarBrand:X},Y=({appName:s,leftOffset:o,centerContent:a,rightContent:l})=>e.jsxRuntimeExports.jsxs("nav",{className:e.classNames("luminus-top-bar shadow",M.topBar),style:{width:o?`calc(100% - ${o}px)`:void 0,left:o?`${o}px`:void 0},children:[e.jsxRuntimeExports.jsx(q.Link,{to:"/",className:e.classNames("luminus-top-bar-brand",M.topBarBrand),children:s}),a&&e.jsxRuntimeExports.jsx("div",{children:a}),e.jsxRuntimeExports.jsx("div",{className:"d-flex justify-content-end align-items-center gap-2",children:l??null})]}),Z=({title:s,children:o,sideContent:a,sideContentWidth:l=250,noPadding:d,className:m})=>e.jsxRuntimeExports.jsxs("div",{className:e.classNames("container-fluid",d?"p-0":"p-3",m),children:[e.jsxRuntimeExports.jsxs("div",{style:{paddingRight:a?`${l}px`:void 0},children:[s?e.jsxRuntimeExports.jsx(N.PageTitle,{title:s}):null,o]}),a&&e.jsxRuntimeExports.jsx(N.SideContentBar,{width:l,children:a})]});exports.FullScreenContainer=N.FullScreenContainer;exports.SideContentBar=N.SideContentBar;exports.MainContainer=Z;exports.SideMenu=Q;exports.TopBar=Y;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./ResponsiveContextDropdown-DJHED0fJ.cjs"),j=require("react"),q=require("react-router-dom");require("react-hook-form");require("react-flexmonster");const k=require("./SimpleTooltip-DUaCV_sl.cjs");require("@azure/msal-browser");require("@azure/msal-react");const y=require("./useClickOutside-D0505nsm.cjs"),B=require("./usePermissions-Bv3PjjAi.cjs"),N=require("./FullScreenContainer-PAUPFvDa.cjs"),C="_side-menu-item_ql22m_1",g="_disabled_ql22m_6",P="_nav-button_ql22m_10",I="_child_ql22m_18",S="_text_ql22m_23",w="_icon_ql22m_30",T="_collapse-icon_ql22m_36",L="_collapsed_ql22m_46",f="_collapse-icon-mini_ql22m_49",F="_expanded_ql22m_80",O="_children-container_ql22m_86",$="_visible_ql22m_94",A="_children_ql22m_86",o={"side-menu-item":"_side-menu-item_ql22m_1",sideMenuItem:C,disabled:g,"nav-button":"_nav-button_ql22m_10",navButton:P,child:I,text:S,icon:w,"collapse-icon":"_collapse-icon_ql22m_36",collapseIcon:T,collapsed:L,"collapse-icon-mini":"_collapse-icon-mini_ql22m_49",collapseIconMini:f,expanded:F,"children-container":"_children-container_ql22m_86",childrenContainer:O,visible:$,children:A},D=({item:s,menuExpanded:l,useTooltips:r,children:t})=>s.tooltip&&!l&&r?e.jsxRuntimeExports.jsx(k.SimpleTooltip,{text:s.tooltip,placement:"right",children:t}):t,E=({item:s,menuExpanded:l,collapsed:r,onCollapse:t,currentPath:m,useHover:u,useTooltips:c})=>{var v,h,i,a;const[b,x]=j.useState(!1),[p]=m.split("?"),d=s.linkTo===p||((v=s.children)==null?void 0:v.some(n=>n.linkTo===p)),R=j.useRef(null);return y.useClickOutside([R],()=>r&&t()),e.jsxRuntimeExports.jsxs("li",{ref:R,className:e.classNames("luminus-side-menu-item",o.sideMenuItem,{[o.expanded]:l},{active:b||d},{open:r&&s.children},{[o.disabled]:s.disabled||s.notPermitted||((h=s.children)==null?void 0:h.every(n=>n.notPermitted||n.disabled))},{disabled:s.disabled||s.notPermitted||((i=s.children)==null?void 0:i.every(n=>n.notPermitted||n.disabled))}),onMouseEnter:()=>x(!0),onMouseLeave:()=>x(!1),children:[e.jsxRuntimeExports.jsx(D,{item:s,menuExpanded:l,useTooltips:c,children:s.children?e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsxs("button",{type:"button",className:e.classNames("nav-link",o.navButton),onClick:()=>{t()},children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("icon",o.icon),children:s.icon}),!u&&!l&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("collapse-icon-mini rounded",o.collapseIconMini,{[o.collapsed]:r}),children:e.jsxRuntimeExports.jsx(e.MdOutlineKeyboardArrowRight,{})}),l&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("text",o.text,"text-nowrap"),children:s.title}),l&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("collapse-icon",o.collapseIcon,{[o.collapsed]:r}),children:e.jsxRuntimeExports.jsx(e.MdOutlineKeyboardArrowRight,{})})]})}):e.jsxRuntimeExports.jsxs(q.Link,{to:s.disabled||s.notPermitted?"/":s.linkTo??"/",className:e.classNames("nav-link",o.navButton),children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("icon",o.icon),children:s.icon}),l&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("text",o.text,"text-nowrap"),children:s.title})]})}),e.jsxRuntimeExports.jsx("div",{className:e.classNames("children-container",o.childrenContainer,{[o.visible]:r}),children:e.jsxRuntimeExports.jsx("div",{className:e.classNames("shadow rounded children",o.children),children:(a=s.children)==null?void 0:a.map(n=>e.jsxRuntimeExports.jsx(q.Link,{to:n.disabled||n.notPermitted?"/":n.linkTo??"/",className:e.classNames("nav-link child rounded",o.navButton,o.child,{[o.disabled]:n.disabled||n.notPermitted},{disabled:n.disabled||n.notPermitted}),onClick:t,children:e.jsxRuntimeExports.jsx("div",{className:e.classNames("text",o.text,"text-nowrap"),children:n.title})},n.linkTo))})})]})},K="_side-menu_1deqc_1",U="_sidebar-header_1deqc_13",z="_side-menu-content_1deqc_20",G="_expand_1deqc_24",J="_only-logo_1deqc_28",Q="_divider_1deqc_31",_={"side-menu":"_side-menu_1deqc_1",sideMenu:K,"sidebar-header":"_sidebar-header_1deqc_13",sidebarHeader:U,"side-menu-content":"_side-menu-content_1deqc_20",sideMenuContent:z,expand:G,"only-logo":"_only-logo_1deqc_28",onlyLogo:J,divider:Q},V=({headerItem:s,mainItems:l,secondaryItems:r,expanded:t,setExpanded:m,currentPath:u,useHover:c,useTooltips:b})=>{const[x,p]=j.useState(-1),{checkUserHasPermissions:d}=B.usePermissions(),R=j.useMemo(()=>l.map(i=>{var a;return{...i,notPermitted:!d(i.permissions??[],"any"),children:(a=i.children)==null?void 0:a.map(n=>({...n,notPermitted:!d(n.permissions??[],"any"),disabled:i.disabled||n.disabled}))}}),[l,d]),v=j.useMemo(()=>r.map(i=>{var a;return{...i,notPermitted:!d(i.permissions??[],"any"),children:(a=i.children)==null?void 0:a.map(n=>({...n,notPermitted:!d(n.permissions??[],"any")}))}}),[r,d]),h=i=>{p(i===x?-1:i)};return j.useEffect(()=>{t||p(-1)},[t]),e.jsxRuntimeExports.jsxs("section",{className:e.classNames("luminus-side-menu shadow",_.sideMenu,{[_.expand]:t},{expand:t}),onMouseEnter:()=>c&&m(!0),onMouseLeave:()=>c&&m(!1),children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("sidebar-header",_.sidebarHeader,{[_.onlyLogo]:c}),role:c?void 0:"button",onClick:c?void 0:()=>m(!t),children:c?s:t?e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(e.MdOutlineArrowBack,{}),s]}):e.jsxRuntimeExports.jsx(e.MdOutlineMenu,{})}),e.jsxRuntimeExports.jsxs("ul",{className:_.sideMenuContent,children:[R.map((i,a)=>e.jsxRuntimeExports.jsx(E,{item:i,menuExpanded:t,collapsed:a===x,onCollapse:()=>h(a),currentPath:u,useHover:c,useTooltips:b},i.title)),e.jsxRuntimeExports.jsx("hr",{className:e.classNames("divider",_.divider)}),v.map((i,a)=>e.jsxRuntimeExports.jsx(E,{item:i,menuExpanded:t,collapsed:a===x,onCollapse:()=>h(a),currentPath:u,useHover:c,useTooltips:b},i.title))]})]})},X="_top-bar_1lk80_1",Y="_top-bar-brand_1lk80_14",M={"top-bar":"_top-bar_1lk80_1",topBar:X,"top-bar-brand":"_top-bar-brand_1lk80_14",topBarBrand:Y},Z=({appName:s,leftOffset:l,centerContent:r,rightContent:t})=>e.jsxRuntimeExports.jsxs("nav",{className:e.classNames("luminus-top-bar shadow",M.topBar),style:{width:l?`calc(100% - ${l}px)`:void 0,left:l?`${l}px`:void 0},children:[e.jsxRuntimeExports.jsx(q.Link,{to:"/",className:e.classNames("luminus-top-bar-brand",M.topBarBrand),children:s}),r&&e.jsxRuntimeExports.jsx("div",{children:r}),e.jsxRuntimeExports.jsx("div",{className:"d-flex justify-content-end align-items-center gap-2",children:t??null})]}),H=({title:s,children:l,sideContent:r,sideContentWidth:t=250,noPadding:m,className:u})=>e.jsxRuntimeExports.jsxs("div",{className:e.classNames("container-fluid",m?"p-0":"p-3",u),children:[e.jsxRuntimeExports.jsxs("div",{style:{paddingRight:r?`${t}px`:void 0},children:[s?e.jsxRuntimeExports.jsx(N.PageTitle,{title:s}):null,l]}),r&&e.jsxRuntimeExports.jsx(N.SideContentBar,{width:t,children:r})]});exports.FullScreenContainer=N.FullScreenContainer;exports.SideContentBar=N.SideContentBar;exports.MainContainer=H;exports.SideMenu=V;exports.TopBar=Z;
package/dist/layout.es.js CHANGED
@@ -1,138 +1,139 @@
1
- import { j as e, c as l, ad as N, b9 as P, ba as I } from "./ResponsiveContextDropdown-BTWYs_5c.js";
2
- import { useState as g, useMemo as k, useEffect as C } from "react";
1
+ import { j as e, c as t, ad as N, b9 as P, ba as f } from "./ResponsiveContextDropdown-BTWYs_5c.js";
2
+ import { useState as g, useRef as I, useMemo as k, useEffect as C } from "react";
3
3
  import { Link as M } from "react-router-dom";
4
4
  import "react-hook-form";
5
5
  import "react-flexmonster";
6
- import { S as f } from "./SimpleTooltip-CZBF7c7i.js";
6
+ import { S as w } from "./SimpleTooltip-CZBF7c7i.js";
7
7
  import "@azure/msal-browser";
8
8
  import "@azure/msal-react";
9
- import { u as w } from "./usePermissions-Xt0Kg7pS.js";
10
- import { P as S, S as T } from "./FullScreenContainer-BJprjc0-.js";
11
- import { F as be } from "./FullScreenContainer-BJprjc0-.js";
12
- const L = "_side-menu-item_ql22m_1", $ = "_disabled_ql22m_6", F = "_nav-button_ql22m_10", A = "_child_ql22m_18", R = "_text_ql22m_23", E = "_icon_ql22m_30", K = "_collapse-icon_ql22m_36", O = "_collapsed_ql22m_46", U = "_collapse-icon-mini_ql22m_49", z = "_expanded_ql22m_80", D = "_children-container_ql22m_86", G = "_visible_ql22m_94", J = "_children_ql22m_86", i = {
9
+ import { u as S } from "./useClickOutside-BmlXg38T.js";
10
+ import { u as T } from "./usePermissions-Xt0Kg7pS.js";
11
+ import { P as L, S as R } from "./FullScreenContainer-BJprjc0-.js";
12
+ import { F as qe } from "./FullScreenContainer-BJprjc0-.js";
13
+ const $ = "_side-menu-item_ql22m_1", F = "_disabled_ql22m_6", A = "_nav-button_ql22m_10", O = "_child_ql22m_18", E = "_text_ql22m_23", K = "_icon_ql22m_30", U = "_collapse-icon_ql22m_36", z = "_collapsed_ql22m_46", D = "_collapse-icon-mini_ql22m_49", G = "_expanded_ql22m_80", J = "_children-container_ql22m_86", Q = "_visible_ql22m_94", V = "_children_ql22m_86", l = {
13
14
  "side-menu-item": "_side-menu-item_ql22m_1",
14
- sideMenuItem: L,
15
- disabled: $,
15
+ sideMenuItem: $,
16
+ disabled: F,
16
17
  "nav-button": "_nav-button_ql22m_10",
17
- navButton: F,
18
- child: A,
19
- text: R,
20
- icon: E,
18
+ navButton: A,
19
+ child: O,
20
+ text: E,
21
+ icon: K,
21
22
  "collapse-icon": "_collapse-icon_ql22m_36",
22
- collapseIcon: K,
23
- collapsed: O,
23
+ collapseIcon: U,
24
+ collapsed: z,
24
25
  "collapse-icon-mini": "_collapse-icon-mini_ql22m_49",
25
- collapseIconMini: U,
26
- expanded: z,
26
+ collapseIconMini: D,
27
+ expanded: G,
27
28
  "children-container": "_children-container_ql22m_86",
28
- childrenContainer: D,
29
- visible: G,
30
- children: J
31
- }, Q = ({ item: n, menuExpanded: t, useTooltips: d, children: a }) => n.tooltip && !t && d ? /* @__PURE__ */ e.jsx(f, { text: n.tooltip, placement: "right", children: a }) : a, y = ({ item: n, menuExpanded: t, collapsed: d, onCollapse: a, currentPath: _, useHover: m, useTooltips: c }) => {
32
- var j, q, b, o;
33
- const [v, p] = g(!1), [u] = _.split("?"), r = n.linkTo === u || ((j = n.children) == null ? void 0 : j.some((s) => s.linkTo === u));
34
- return /* @__PURE__ */ e.jsxs("li", { className: l("luminus-side-menu-item", i.sideMenuItem, {
35
- [i.expanded]: t
36
- }, { active: v || r }, { open: d && n.children }, {
37
- [i.disabled]: n.disabled || n.notPermitted || ((q = n.children) == null ? void 0 : q.every((s) => s.notPermitted || s.disabled))
29
+ childrenContainer: J,
30
+ visible: Q,
31
+ children: V
32
+ }, X = ({ item: n, menuExpanded: a, useTooltips: d, children: i }) => n.tooltip && !a && d ? /* @__PURE__ */ e.jsx(w, { text: n.tooltip, placement: "right", children: i }) : i, y = ({ item: n, menuExpanded: a, collapsed: d, onCollapse: i, currentPath: m, useHover: p, useTooltips: r }) => {
33
+ var q, b, o, c;
34
+ const [v, u] = g(!1), [x] = m.split("?"), _ = n.linkTo === x || ((q = n.children) == null ? void 0 : q.some((s) => s.linkTo === x)), j = I(null);
35
+ return S([j], () => d && i()), /* @__PURE__ */ e.jsxs("li", { ref: j, className: t("luminus-side-menu-item", l.sideMenuItem, {
36
+ [l.expanded]: a
37
+ }, { active: v || _ }, { open: d && n.children }, {
38
+ [l.disabled]: n.disabled || n.notPermitted || ((b = n.children) == null ? void 0 : b.every((s) => s.notPermitted || s.disabled))
38
39
  }, {
39
- disabled: n.disabled || n.notPermitted || ((b = n.children) == null ? void 0 : b.every((s) => s.notPermitted || s.disabled))
40
- }), onMouseEnter: () => p(!0), onMouseLeave: () => p(!1), children: [
41
- /* @__PURE__ */ e.jsx(Q, { item: n, menuExpanded: t, useTooltips: c, children: n.children ? /* @__PURE__ */ e.jsx(e.Fragment, { children: /* @__PURE__ */ e.jsxs("button", { type: "button", className: l("nav-link", i.navButton), onClick: () => {
42
- a();
40
+ disabled: n.disabled || n.notPermitted || ((o = n.children) == null ? void 0 : o.every((s) => s.notPermitted || s.disabled))
41
+ }), onMouseEnter: () => u(!0), onMouseLeave: () => u(!1), children: [
42
+ /* @__PURE__ */ e.jsx(X, { item: n, menuExpanded: a, useTooltips: r, children: n.children ? /* @__PURE__ */ e.jsx(e.Fragment, { children: /* @__PURE__ */ e.jsxs("button", { type: "button", className: t("nav-link", l.navButton), onClick: () => {
43
+ i();
43
44
  }, children: [
44
- /* @__PURE__ */ e.jsx("div", { className: l("icon", i.icon), children: n.icon }),
45
- !m && !t && /* @__PURE__ */ e.jsx("div", { className: l("collapse-icon-mini rounded", i.collapseIconMini, {
46
- [i.collapsed]: d
45
+ /* @__PURE__ */ e.jsx("div", { className: t("icon", l.icon), children: n.icon }),
46
+ !p && !a && /* @__PURE__ */ e.jsx("div", { className: t("collapse-icon-mini rounded", l.collapseIconMini, {
47
+ [l.collapsed]: d
47
48
  }), children: /* @__PURE__ */ e.jsx(N, {}) }),
48
- t && /* @__PURE__ */ e.jsx("div", { className: l("text", i.text, "text-nowrap"), children: n.title }),
49
- t && /* @__PURE__ */ e.jsx("div", { className: l("collapse-icon", i.collapseIcon, {
50
- [i.collapsed]: d
49
+ a && /* @__PURE__ */ e.jsx("div", { className: t("text", l.text, "text-nowrap"), children: n.title }),
50
+ a && /* @__PURE__ */ e.jsx("div", { className: t("collapse-icon", l.collapseIcon, {
51
+ [l.collapsed]: d
51
52
  }), children: /* @__PURE__ */ e.jsx(N, {}) })
52
- ] }) }) : /* @__PURE__ */ e.jsxs(M, { to: n.disabled || n.notPermitted ? "/" : n.linkTo ?? "/", className: l("nav-link", i.navButton), children: [
53
- /* @__PURE__ */ e.jsx("div", { className: l("icon", i.icon), children: n.icon }),
54
- t && /* @__PURE__ */ e.jsx("div", { className: l("text", i.text, "text-nowrap"), children: n.title })
53
+ ] }) }) : /* @__PURE__ */ e.jsxs(M, { to: n.disabled || n.notPermitted ? "/" : n.linkTo ?? "/", className: t("nav-link", l.navButton), children: [
54
+ /* @__PURE__ */ e.jsx("div", { className: t("icon", l.icon), children: n.icon }),
55
+ a && /* @__PURE__ */ e.jsx("div", { className: t("text", l.text, "text-nowrap"), children: n.title })
55
56
  ] }) }),
56
- /* @__PURE__ */ e.jsx("div", { className: l("children-container", i.childrenContainer, {
57
- [i.visible]: d
58
- }), children: /* @__PURE__ */ e.jsx("div", { className: l("shadow rounded children", i.children), children: (o = n.children) == null ? void 0 : o.map((s) => /* @__PURE__ */ e.jsx(M, { to: s.disabled || s.notPermitted ? "/" : s.linkTo ?? "/", className: l("nav-link child rounded", i.navButton, i.child, { [i.disabled]: s.disabled || s.notPermitted }, { disabled: s.disabled || s.notPermitted }), children: /* @__PURE__ */ e.jsx("div", { className: l("text", i.text, "text-nowrap"), children: s.title }) }, s.linkTo)) }) })
57
+ /* @__PURE__ */ e.jsx("div", { className: t("children-container", l.childrenContainer, {
58
+ [l.visible]: d
59
+ }), children: /* @__PURE__ */ e.jsx("div", { className: t("shadow rounded children", l.children), children: (c = n.children) == null ? void 0 : c.map((s) => /* @__PURE__ */ e.jsx(M, { to: s.disabled || s.notPermitted ? "/" : s.linkTo ?? "/", className: t("nav-link child rounded", l.navButton, l.child, { [l.disabled]: s.disabled || s.notPermitted }, { disabled: s.disabled || s.notPermitted }), onClick: i, children: /* @__PURE__ */ e.jsx("div", { className: t("text", l.text, "text-nowrap"), children: s.title }) }, s.linkTo)) }) })
59
60
  ] });
60
- }, V = "_side-menu_1deqc_1", X = "_sidebar-header_1deqc_13", Y = "_side-menu-content_1deqc_20", Z = "_expand_1deqc_24", H = "_only-logo_1deqc_28", W = "_divider_1deqc_31", h = {
61
+ }, Y = "_side-menu_1deqc_1", Z = "_sidebar-header_1deqc_13", H = "_side-menu-content_1deqc_20", W = "_expand_1deqc_24", ee = "_only-logo_1deqc_28", ne = "_divider_1deqc_31", h = {
61
62
  "side-menu": "_side-menu_1deqc_1",
62
- sideMenu: V,
63
+ sideMenu: Y,
63
64
  "sidebar-header": "_sidebar-header_1deqc_13",
64
- sidebarHeader: X,
65
+ sidebarHeader: Z,
65
66
  "side-menu-content": "_side-menu-content_1deqc_20",
66
- sideMenuContent: Y,
67
- expand: Z,
67
+ sideMenuContent: H,
68
+ expand: W,
68
69
  "only-logo": "_only-logo_1deqc_28",
69
- onlyLogo: H,
70
- divider: W
71
- }, me = ({ headerItem: n, mainItems: t, secondaryItems: d, expanded: a, setExpanded: _, currentPath: m, useHover: c, useTooltips: v }) => {
72
- const [p, u] = g(-1), { checkUserHasPermissions: r } = w(), j = k(() => t.map((o) => {
73
- var s;
70
+ onlyLogo: ee,
71
+ divider: ne
72
+ }, xe = ({ headerItem: n, mainItems: a, secondaryItems: d, expanded: i, setExpanded: m, currentPath: p, useHover: r, useTooltips: v }) => {
73
+ const [u, x] = g(-1), { checkUserHasPermissions: _ } = T(), j = k(() => a.map((o) => {
74
+ var c;
74
75
  return {
75
76
  ...o,
76
- notPermitted: !r(o.permissions ?? [], "any"),
77
- children: (s = o.children) == null ? void 0 : s.map((x) => ({
78
- ...x,
79
- notPermitted: !r(x.permissions ?? [], "any"),
80
- disabled: o.disabled || x.disabled
77
+ notPermitted: !_(o.permissions ?? [], "any"),
78
+ children: (c = o.children) == null ? void 0 : c.map((s) => ({
79
+ ...s,
80
+ notPermitted: !_(s.permissions ?? [], "any"),
81
+ disabled: o.disabled || s.disabled
81
82
  }))
82
83
  };
83
- }), [t, r]), q = k(() => d.map((o) => {
84
- var s;
84
+ }), [a, _]), q = k(() => d.map((o) => {
85
+ var c;
85
86
  return {
86
87
  ...o,
87
- notPermitted: !r(o.permissions ?? [], "any"),
88
- children: (s = o.children) == null ? void 0 : s.map((x) => ({
89
- ...x,
90
- notPermitted: !r(x.permissions ?? [], "any")
88
+ notPermitted: !_(o.permissions ?? [], "any"),
89
+ children: (c = o.children) == null ? void 0 : c.map((s) => ({
90
+ ...s,
91
+ notPermitted: !_(s.permissions ?? [], "any")
91
92
  }))
92
93
  };
93
- }), [d, r]), b = (o) => {
94
- u(o === p ? -1 : o);
94
+ }), [d, _]), b = (o) => {
95
+ x(o === u ? -1 : o);
95
96
  };
96
97
  return C(() => {
97
- a || u(-1);
98
- }, [a]), /* @__PURE__ */ e.jsxs("section", { className: l("luminus-side-menu shadow", h.sideMenu, {
99
- [h.expand]: a
100
- }, { expand: a }), onMouseEnter: () => c && _(!0), onMouseLeave: () => c && _(!1), children: [
101
- /* @__PURE__ */ e.jsx("div", { className: l("sidebar-header", h.sidebarHeader, {
102
- [h.onlyLogo]: c
103
- }), role: c ? void 0 : "button", onClick: c ? void 0 : () => _(!a), children: c ? n : a ? /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
98
+ i || x(-1);
99
+ }, [i]), /* @__PURE__ */ e.jsxs("section", { className: t("luminus-side-menu shadow", h.sideMenu, {
100
+ [h.expand]: i
101
+ }, { expand: i }), onMouseEnter: () => r && m(!0), onMouseLeave: () => r && m(!1), children: [
102
+ /* @__PURE__ */ e.jsx("div", { className: t("sidebar-header", h.sidebarHeader, {
103
+ [h.onlyLogo]: r
104
+ }), role: r ? void 0 : "button", onClick: r ? void 0 : () => m(!i), children: r ? n : i ? /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
104
105
  /* @__PURE__ */ e.jsx(P, {}),
105
106
  n
106
- ] }) : /* @__PURE__ */ e.jsx(I, {}) }),
107
+ ] }) : /* @__PURE__ */ e.jsx(f, {}) }),
107
108
  /* @__PURE__ */ e.jsxs("ul", { className: h.sideMenuContent, children: [
108
- j.map((o, s) => /* @__PURE__ */ e.jsx(y, { item: o, menuExpanded: a, collapsed: s === p, onCollapse: () => b(s), currentPath: m, useHover: c, useTooltips: v }, o.title)),
109
- /* @__PURE__ */ e.jsx("hr", { className: l("divider", h.divider) }),
110
- q.map((o, s) => /* @__PURE__ */ e.jsx(y, { item: o, menuExpanded: a, collapsed: s === p, onCollapse: () => b(s), currentPath: m, useHover: c, useTooltips: v }, o.title))
109
+ j.map((o, c) => /* @__PURE__ */ e.jsx(y, { item: o, menuExpanded: i, collapsed: c === u, onCollapse: () => b(c), currentPath: p, useHover: r, useTooltips: v }, o.title)),
110
+ /* @__PURE__ */ e.jsx("hr", { className: t("divider", h.divider) }),
111
+ q.map((o, c) => /* @__PURE__ */ e.jsx(y, { item: o, menuExpanded: i, collapsed: c === u, onCollapse: () => b(c), currentPath: p, useHover: r, useTooltips: v }, o.title))
111
112
  ] })
112
113
  ] });
113
- }, ee = "_top-bar_1lk80_1", ne = "_top-bar-brand_1lk80_14", B = {
114
+ }, se = "_top-bar_1lk80_1", ie = "_top-bar-brand_1lk80_14", B = {
114
115
  "top-bar": "_top-bar_1lk80_1",
115
- topBar: ee,
116
+ topBar: se,
116
117
  "top-bar-brand": "_top-bar-brand_1lk80_14",
117
- topBarBrand: ne
118
- }, pe = ({ appName: n, leftOffset: t, centerContent: d, rightContent: a }) => /* @__PURE__ */ e.jsxs("nav", { className: l("luminus-top-bar shadow", B.topBar), style: {
119
- width: t ? `calc(100% - ${t}px)` : void 0,
120
- left: t ? `${t}px` : void 0
118
+ topBarBrand: ie
119
+ }, he = ({ appName: n, leftOffset: a, centerContent: d, rightContent: i }) => /* @__PURE__ */ e.jsxs("nav", { className: t("luminus-top-bar shadow", B.topBar), style: {
120
+ width: a ? `calc(100% - ${a}px)` : void 0,
121
+ left: a ? `${a}px` : void 0
121
122
  }, children: [
122
- /* @__PURE__ */ e.jsx(M, { to: "/", className: l("luminus-top-bar-brand", B.topBarBrand), children: n }),
123
+ /* @__PURE__ */ e.jsx(M, { to: "/", className: t("luminus-top-bar-brand", B.topBarBrand), children: n }),
123
124
  d && /* @__PURE__ */ e.jsx("div", { children: d }),
124
- /* @__PURE__ */ e.jsx("div", { className: "d-flex justify-content-end align-items-center gap-2", children: a ?? null })
125
- ] }), ue = ({ title: n, children: t, sideContent: d, sideContentWidth: a = 250, noPadding: _, className: m }) => /* @__PURE__ */ e.jsxs("div", { className: l("container-fluid", _ ? "p-0" : "p-3", m), children: [
126
- /* @__PURE__ */ e.jsxs("div", { style: { paddingRight: d ? `${a}px` : void 0 }, children: [
127
- n ? /* @__PURE__ */ e.jsx(S, { title: n }) : null,
128
- t
125
+ /* @__PURE__ */ e.jsx("div", { className: "d-flex justify-content-end align-items-center gap-2", children: i ?? null })
126
+ ] }), be = ({ title: n, children: a, sideContent: d, sideContentWidth: i = 250, noPadding: m, className: p }) => /* @__PURE__ */ e.jsxs("div", { className: t("container-fluid", m ? "p-0" : "p-3", p), children: [
127
+ /* @__PURE__ */ e.jsxs("div", { style: { paddingRight: d ? `${i}px` : void 0 }, children: [
128
+ n ? /* @__PURE__ */ e.jsx(L, { title: n }) : null,
129
+ a
129
130
  ] }),
130
- d && /* @__PURE__ */ e.jsx(T, { width: a, children: d })
131
+ d && /* @__PURE__ */ e.jsx(R, { width: i, children: d })
131
132
  ] });
132
133
  export {
133
- be as FullScreenContainer,
134
- ue as MainContainer,
135
- T as SideContentBar,
136
- me as SideMenu,
137
- pe as TopBar
134
+ qe as FullScreenContainer,
135
+ be as MainContainer,
136
+ R as SideContentBar,
137
+ xe as SideMenu,
138
+ he as TopBar
138
139
  };