react-luminus-components 1.4.11 → 1.4.13

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.
@@ -14758,8 +14758,8 @@ const Yx = (e) => {
14758
14758
  }, c8 = ({ children: e }) => {
14759
14759
  const { getProcessedChildren: t } = s8(), n = Ed({ maxWidth: 768 }), r = Ed({ minWidth: 769, maxWidth: 1200 }), i = Ed({ minWidth: 1201 }), a = [n, r, i].indexOf(!0), { buttons: o, dropdownItems: s } = t(e, a);
14760
14760
  return /* @__PURE__ */ g.jsxs("div", { className: "d-flex gap-1", children: [
14761
- /* @__PURE__ */ g.jsx(g.Fragment, { children: o.map((c) => c) }),
14762
- s.length > 0 ? /* @__PURE__ */ g.jsx(Fx, { toggle: /* @__PURE__ */ g.jsx(Lx, { as: Nx }), children: s.map((c) => c) }) : null
14761
+ /* @__PURE__ */ g.jsx(g.Fragment, { children: o }),
14762
+ s.length > 0 ? /* @__PURE__ */ g.jsx(Fx, { toggle: /* @__PURE__ */ g.jsx(Lx, { as: Nx }), children: s }) : null
14763
14763
  ] });
14764
14764
  };
14765
14765
  c8.Item = qx;
@@ -25093,58 +25093,58 @@ const LJ = "_side-content-bar_7crz7_1", FJ = "_mobile_7crz7_12", BJ = "_expanded
25093
25093
  resizer: UJ,
25094
25094
  expander: WJ,
25095
25095
  icon: zJ
25096
- }, HJ = ({ width: e, children: t, isExpandedOnMobileState: [n, r], onResize: i }) => {
25097
- const { ProjectIconComponent: a } = ce(qt), { isMobile: o } = Vl(), s = Gx({
25098
- onSwipedRight: (u) => {
25099
- u.velocity > 0.8 && r(!1);
25096
+ }, HJ = ({ width: e, children: t, isExpandedOnMobileState: [n, r], resizeable: i = !0, onResize: a }) => {
25097
+ const { ProjectIconComponent: o } = ce(qt), { isMobile: s } = Vl(), c = Gx({
25098
+ onSwipedRight: (d) => {
25099
+ d.velocity > 0.8 && r(!1);
25100
25100
  },
25101
25101
  delta: 100
25102
- }), [c, l] = Te(null);
25102
+ }), [l, u] = Te(null);
25103
25103
  return /* @__PURE__ */ g.jsxs(g.Fragment, { children: [
25104
25104
  /* @__PURE__ */ g.jsxs("section", { className: J("luminus-side-content-bar shadow", Ur.sideContentBar, {
25105
- [Ur.mobile]: o
25105
+ [Ur.mobile]: s
25106
25106
  }, {
25107
25107
  [Ur.expanded]: n
25108
25108
  }), style: {
25109
25109
  width: `${e}px`
25110
- }, ...s, children: [
25111
- o ? null : /* @__PURE__ */ g.jsx("div", { role: "button", className: J(Ur.resizer, "luminus-side-content-bar-resizer", "shadow"), draggable: !0, onDragStart: (u) => l({ startX: u.clientX, widthStart: e }), onDrag: (u) => i(((c == null ? void 0 : c.widthStart) ?? 0) + (((c == null ? void 0 : c.startX) ?? 0) - u.clientX)), onDragEnd: () => l(null), children: /* @__PURE__ */ g.jsx(a, { className: Ur.icon, icon: "resizer-horizontal" }) }),
25110
+ }, ...c, children: [
25111
+ i && !s ? /* @__PURE__ */ g.jsx("div", { role: "button", className: J(Ur.resizer, "luminus-side-content-bar-resizer", "shadow"), draggable: !0, onDragStart: (d) => u({ startX: d.clientX, widthStart: e }), onDrag: (d) => a(((l == null ? void 0 : l.widthStart) ?? 0) + (((l == null ? void 0 : l.startX) ?? 0) - d.clientX)), onDragEnd: () => u(null), children: /* @__PURE__ */ g.jsx(o, { className: Ur.icon, icon: "resizer-horizontal" }) }) : null,
25112
25112
  t
25113
25113
  ] }),
25114
- o ? /* @__PURE__ */ g.jsx("div", { role: "button", onClick: () => r(!n), className: J(Ur.expander, { [Ur.expanded]: n }, "luminus-side-content-bar-expander", "shadow"), children: /* @__PURE__ */ g.jsx(a, { className: Ur.icon, icon: "chevron-left" }) }) : null
25114
+ s ? /* @__PURE__ */ g.jsx("div", { role: "button", onClick: () => r(!n), className: J(Ur.expander, { [Ur.expanded]: n }, "luminus-side-content-bar-expander", "shadow"), children: /* @__PURE__ */ g.jsx(o, { className: Ur.icon, icon: "chevron-left" }) }) : null
25115
25115
  ] });
25116
25116
  }, VJ = ({ title: e }) => /* @__PURE__ */ g.jsx("div", { className: "mb-3", children: typeof e == "string" ? /* @__PURE__ */ g.jsx(kn, { variant: "h3", children: e }) : e }), qJ = "_full-screen-container_1rm4r_1", WT = {
25117
25117
  "full-screen-container": "_full-screen-container_1rm4r_1",
25118
25118
  fullScreenContainer: qJ
25119
- }, YJ = J("overflow-hidden luminus-full-screen-container", WT.fullScreenContainer), GJ = "container-fluid", lne = ({ title: e, children: t, sideContent: n, sideContentWidth: r = 250, noPadding: i, className: a, variant: o = "main", helmet: s, unavailableOnMobile: c }) => {
25120
- const { addHelmet: l, removeHelmet: u } = ce(PE), { texts: { container: d } } = ce(qt), [f, h] = Te(r), [m, p] = Te(!1), v = Q(() => {
25121
- switch (o) {
25119
+ }, YJ = J("overflow-hidden luminus-full-screen-container", WT.fullScreenContainer), GJ = "container-fluid", lne = ({ title: e, children: t, sideContent: n, sideContentWidth: r = 250, sideContentResizeable: i = !0, noPadding: a, className: o, variant: s = "main", helmet: c, unavailableOnMobile: l }) => {
25120
+ const { addHelmet: u, removeHelmet: d } = ce(PE), { texts: { container: f } } = ce(qt), [h, m] = Te(r), [p, v] = Te(!1), b = Q(() => {
25121
+ switch (s) {
25122
25122
  case "fullScreen":
25123
25123
  return YJ;
25124
25124
  case "main":
25125
25125
  return GJ;
25126
25126
  default:
25127
- throw new Error(`PageContainer got incorrect variant type: ${o}`);
25127
+ throw new Error(`PageContainer got incorrect variant type: ${s}`);
25128
25128
  }
25129
- }, [o]);
25130
- we(() => (s ? l(s) : typeof e == "string" && e && l(e), () => u()), [s, l, u, e]);
25131
- const b = Gx({
25132
- onSwipedLeft: (w) => {
25133
- w.velocity > 0.8 && p(!0);
25129
+ }, [s]);
25130
+ we(() => (c ? u(c) : typeof e == "string" && e && u(e), () => d()), [c, u, d, e]);
25131
+ const x = Gx({
25132
+ onSwipedLeft: (_) => {
25133
+ _.velocity > 0.8 && v(!0);
25134
25134
  },
25135
25135
  delta: 100
25136
- }), { isMobile: x } = Vl(), y = Q(() => x && c, [x, c]);
25136
+ }), { isMobile: y } = Vl(), w = Q(() => y && l, [y, l]);
25137
25137
  return we(() => {
25138
- h(r);
25138
+ m(r);
25139
25139
  }, [r]), /* @__PURE__ */ g.jsxs(g.Fragment, { children: [
25140
- /* @__PURE__ */ g.jsx("div", { className: J(v, i ? "p-0" : "p-3", a), style: o === "fullScreen" ? { width: n ? `calc(100% - ${f}px)` : "100%" } : void 0, ...b, children: /* @__PURE__ */ g.jsx("div", { className: o === "fullScreen" ? WT.fullScreenContainer : void 0, style: o === "main" ? { paddingRight: n ? `${f}px` : void 0 } : { height: "100%", width: "100%" }, children: y ? /* @__PURE__ */ g.jsx(Zx, { variant: "warning", children: d.unavailableOnMobile }) : /* @__PURE__ */ g.jsxs(g.Fragment, { children: [
25140
+ /* @__PURE__ */ g.jsx("div", { className: J(b, a ? "p-0" : "p-3", o), style: s === "fullScreen" ? { width: n ? `calc(100% - ${h}px)` : "100%" } : void 0, ...x, children: /* @__PURE__ */ g.jsx("div", { className: s === "fullScreen" ? WT.fullScreenContainer : void 0, style: s === "main" ? { paddingRight: n ? `${h}px` : void 0 } : { height: "100%", width: "100%" }, children: w ? /* @__PURE__ */ g.jsx(Zx, { variant: "warning", children: f.unavailableOnMobile }) : /* @__PURE__ */ g.jsxs(g.Fragment, { children: [
25141
25141
  e ? /* @__PURE__ */ g.jsx(VJ, { title: e }) : null,
25142
25142
  t
25143
25143
  ] }) }) }),
25144
- n && !y ? /* @__PURE__ */ g.jsx(HJ, { width: f, isExpandedOnMobileState: [
25145
- m,
25146
- p
25147
- ], onResize: (w) => h(w), children: n }) : null
25144
+ n && !w ? /* @__PURE__ */ g.jsx(HJ, { width: h, isExpandedOnMobileState: [
25145
+ p,
25146
+ v
25147
+ ], onResize: (_) => i ? m(_) : {}, children: n }) : null
25148
25148
  ] });
25149
25149
  }, qm = ({ InputContainer: e = Yl, formField: t, label: n, resetsFields: r, options: i, isNumber: a, size: o, showClearIcon: s, clearValue: c, noSortOptions: l, required: u, hidden: d, disabled: f, withoutLabel: h, hint: m, className: p }) => {
25150
25150
  const { register: v, formState: b, getValues: x, setValue: y, watch: w } = $h(), _ = pp({ falseIfNotInit: !0 });
@@ -4,6 +4,7 @@ import { default as PathParamsObject } from '../../../../models/ui/routes/PathPa
4
4
  import { default as RouteInfo } from '../../../../models/ui/routes/RouteInfo';
5
5
  import { ComponentProps, ReactNode } from 'react';
6
6
  import { DropdownItem } from 'react-bootstrap';
7
+ import { Link } from 'react-router-dom';
7
8
 
8
9
  export type ResponsiveContextDropdownItemProps<SpecificRouteInfo extends RouteInfo = RouteInfo> = Omit<SharedProperties<ComponentProps<typeof ContextButton>, ComponentProps<typeof DropdownItem>>, 'as' | 'onCopy'> & {
9
10
  /**
@@ -23,6 +24,7 @@ export type ResponsiveContextDropdownItemProps<SpecificRouteInfo extends RouteIn
23
24
  * If to or toRoute provided, makes item behave as Link.
24
25
  */
25
26
  toRoute?: Readonly<SpecificRouteInfo>;
27
+ target?: ComponentProps<typeof Link>['target'];
26
28
  pathParams?: PathParamsObject<SpecificRouteInfo['route']>;
27
29
  disabled?: boolean;
28
30
  };
@@ -1 +1 @@
1
- "use strict";var le=Object.defineProperty;var ue=(e,t,r)=>t in e?le(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var C=(e,t,r)=>ue(e,typeof t!="symbol"?t+"":t,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./ShortcutLinksContext-DQUAaAAE.cjs"),u=require("react"),F=require("@azure/msal-browser"),ce=require("@azure/msal-react");require("react-router-dom");require("react-dom");require("react-hook-form");require("react-flexmonster");const X=require("./FormDisabledProvider-CzIIP5iK.cjs"),fe=require("./useGetApiData-Du9VtAkX.cjs"),de=require("./useLocalStorageState-BFc8Gc8H.cjs");function me(e){const t=o.toDate(e);return t.setHours(23,59,59,999),t}function pe(){return me(Date.now())}function he(e,t){const r=+o.toDate(e),[n,s]=[+o.toDate(t.start),+o.toDate(t.end)].sort((a,f)=>a-f);return r>=n&&r<=s}function xe(){return o.startOfDay(Date.now())}const ye=({children:e})=>{const[t,r]=u.useState(!1),[n,s]=u.useState(""),[a,f]=u.useState(void 0),l=u.useCallback((d,m)=>{r(!0),s(d),f(m)},[]),c=u.useCallback(()=>{r(!1)},[]),i=u.useMemo(()=>({show:t,text:n,showConfirm:l,hideConfirm:c,textSm:a}),[t,n,l,c,a]);return o.jsxRuntimeExports.jsxs(o.ConfirmContext.Provider,{value:i,children:[o.jsxRuntimeExports.jsx(Xe,{}),e]})},ge=()=>{const{texts:{confirm:e}}=u.useContext(o.LuminusComponentsContext),{isShown:t,text:r,onFinish:n}=o.usePrompt(),{options:s}=u.useContext(o.PromptContext),[a,f]=u.useState(s.defaultValue??""),l=u.useCallback(()=>{n(null)},[n]),c=u.useCallback(d=>{d.preventDefault(),!(s.required&&!a)&&n(a)},[n,s.required,a]);u.useEffect(()=>{t===!0&&f(s.defaultValue??"")},[t,s.defaultValue]);const i=u.useMemo(()=>({value:a,onChange:d=>f(d.currentTarget.value),className:"w-100",autoFocus:!0,tabIndex:0}),[a]);return o.jsxRuntimeExports.jsxs(o.Modal,{show:t,size:"sm",centered:!0,onHide:l,children:[o.jsxRuntimeExports.jsx(o.Modal.Header,{className:"justify-content-center",children:o.jsxRuntimeExports.jsx(o.Modal.Title,{children:r})}),o.jsxRuntimeExports.jsxs("form",{onSubmit:c,children:[o.jsxRuntimeExports.jsxs(o.Modal.Body,{children:[s.input==="textarea"?o.jsxRuntimeExports.jsx("textarea",{...i,rows:5}):void 0,s.input==="input"?o.jsxRuntimeExports.jsx(o.FormControl,{...i,type:s.type}):void 0]}),o.jsxRuntimeExports.jsxs(o.Modal.Footer,{className:"w-100 d-flex gap-5",children:[o.jsxRuntimeExports.jsx(o.PrimaryButton,{variant:"outlined",color:"secondary",onClick:l,className:"flex-grow-1",children:e.cancel}),o.jsxRuntimeExports.jsx(o.PrimaryButton,{color:"primary",disabled:s.required&&!a,type:"submit",className:"flex-grow-1",children:e.confirm})]})]})]})},ve=({children:e})=>{const[t,r]=u.useState(!1),[n,s]=u.useState(""),[a,f]=u.useState({input:"textarea",type:"text"}),l=u.useRef(()=>{}),c=u.useCallback(m=>{s(m),r(!0)},[]),i=u.useCallback(()=>{r(!1)},[]),d=u.useMemo(()=>({isShown:t,text:n,showPrompt:c,hidePrompt:i,resolveRef:l,options:a,setOptions:f}),[t,n,c,i,a]);return o.jsxRuntimeExports.jsxs(o.PromptContext.Provider,{value:d,children:[e,o.jsxRuntimeExports.jsx(ge,{})]})},Te=({cookieDomain:e,axiosOptions:t,language:r,texts:n,ProjectIconComponent:s,localizationContext:a,chartColorPalette:f,children:l})=>{const c=u.useMemo(()=>({axiosOptions:t,cookieDomain:e,language:r,texts:n,ProjectIconComponent:s,localizationContext:a,chartColorPalette:f}),[t,e,r,s,a,n,f]);return o.jsxRuntimeExports.jsx(o.LuminusComponentsContext.Provider,{value:c,children:o.jsxRuntimeExports.jsx(ye,{children:o.jsxRuntimeExports.jsxs(ve,{children:[o.jsxRuntimeExports.jsx(o.Ie,{}),l]})})})},Ce=({children:e})=>{const[t,r]=u.useState(!1),[n]=u.useState(new Set),s=u.useCallback(l=>{n.add(l),r(!0)},[n]),a=u.useCallback(l=>{n.delete(l),n.size===0&&r(!1)},[n]),f=u.useMemo(()=>({isLoading:t,startLoading:s,stopLoading:a}),[t,s,a]);return o.jsxRuntimeExports.jsxs(o.LoadingContext.Provider,{value:f,children:[t&&o.jsxRuntimeExports.jsx(X.Loading,{}),e]})},Ee=({children:e})=>{const t=o.useAxios(),{msalInstance:r}=u.useContext(o.AuthContext),{delegation:n,setDelegation:s,setAvailableDelegations:a,refreshAvailableDelegations:f}=u.useContext(o.DelegationContext),{getToken:l}=o.useAuth(),[c,i]=u.useState(null),d=u.useCallback(async()=>{const x=await l();x&&i(x.token)},[l]);u.useEffect(()=>{d()},[d]);const h=u.useCallback(()=>{const x=localStorage.getItem("user")??null;return x?JSON.parse(x??""):null},[])(),[p,y]=u.useState({state:h?o.LoginState.LOGGED_IN:o.LoginState.LOGGING_IN,user:h}),D=u.useCallback(async x=>{let v=null;return await t.get("/user/detail",x?{headers:{Authorization:`Bearer ${x}`}}:void 0).then(M=>{v=M.data}).catch(()=>{v=null}),v},[t]),S=u.useCallback(()=>{localStorage.removeItem("user"),y({state:o.LoginState.LOGGED_OUT,user:null}),s(null),a(null)},[a,s]),E=u.useCallback(async x=>{y({state:o.LoginState.LOGGING_IN,user:null});const v=await D(x);return v?(y({state:o.LoginState.LOGGED_IN,user:v}),localStorage.setItem("user",JSON.stringify(v)),await f(),!0):(y({state:o.LoginState.LOGIN_FAILED,user:null}),!1)},[D,f]),b=u.useCallback(()=>{S()},[S]);u.useEffect(()=>{if(r){const x=r.addEventCallback(v=>{if(v.eventType===F.EventType.LOGIN_SUCCESS&&v.payload){const M=v.payload;i(M.accessToken)}});return()=>{x&&r.removeEventCallback(x)}}return()=>{}},[r,E,b]);const B=u.useCallback(async x=>{x&&await E(x).catch(()=>{b(),s(null)})},[E,b,s]);u.useEffect(()=>{B(c)},[c,n==null?void 0:n.id,B]);const ie=u.useMemo(()=>({user:p.user,userLoginState:p,loginUser:E,logoutUser:b}),[p,E,b]);return o.jsxRuntimeExports.jsx(o.UserContext.Provider,{value:ie,children:e})},Se=({...e})=>{const{cookieDomain:t}=u.useContext(o.LuminusComponentsContext),[,r]=o.useCookies(["Authorization"]),n=u.useMemo(()=>({useMsal:e.useMsal??!1,msalInstance:e.useMsal?e.msalInstance??null:null,msalScopes:e.useMsal?e.msalScopes??[]:[],msalExtraScopes:e.useMsal?e.msalExtraScopes??[]:[]}),[e]);return u.useEffect(()=>{if(e.useMsal){const s=e.msalInstance.addEventCallback(a=>{if(a.eventType===F.EventType.LOGIN_SUCCESS||a.eventType===F.EventType.ACQUIRE_TOKEN_SUCCESS&&a.payload){const f=a.payload,l=f.account;e.msalInstance.setActiveAccount(l);const c=f.accessToken,i=f.expiresOn;r("Authorization",c,{path:"/",secure:!0,sameSite:"none",domain:t,expires:i??void 0})}a.error&&console.error("AuthProvider MSAL Error",a)});return()=>{s&&e.msalInstance.removeEventCallback(s)}}return()=>{}},[e,r,t]),o.jsxRuntimeExports.jsx(o.AuthContext.Provider,{value:n,children:e.useMsal?o.jsxRuntimeExports.jsx(ce.MsalProvider,{instance:e.msalInstance,children:e.children}):e.children})},be=({children:e,relativeEndpoint:t})=>{const[r,n,s]=de.useLocalStorageState("user-delegation",null),a=u.useMemo(()=>{if(!r)return null;const m=r.from?o.parseISO(r.from):xe(),h=r.to?o.parseISO(r.to):pe();return he(new Date(Date.now()),{start:m,end:h})?r:(n(null),null)},[r,n]),{data:f,setData:l,reloadData:c}=fe.useGetApiData(t,{nullStateBeforeLoad:!1,nullStateOnFail:!0}),i=u.useRef(null);u.useEffect(()=>{const m=()=>{c(),i.current=window.setTimeout(m,o.msToStartOfNextDay()+5e3)};return m(),()=>{i.current!==null&&window.clearTimeout(i.current)}},[c]),u.useEffect(()=>{const m=()=>{s()};return window.addEventListener("focus",m),()=>{window.removeEventListener("focus",m)}},[s,c]);const d=u.useMemo(()=>({delegation:a,setDelegation:n,availableDelegations:f,setAvailableDelegations:l,refreshAvailableDelegations:c}),[a,n,f,l,c]);return o.jsxRuntimeExports.jsx(o.DelegationContext.Provider,{value:d,children:e})};var Ae=typeof Element<"u",je=typeof Map=="function",Oe=typeof Set=="function",we=typeof ArrayBuffer=="function"&&!!ArrayBuffer.isView;function I(e,t){if(e===t)return!0;if(e&&t&&typeof e=="object"&&typeof t=="object"){if(e.constructor!==t.constructor)return!1;var r,n,s;if(Array.isArray(e)){if(r=e.length,r!=t.length)return!1;for(n=r;n--!==0;)if(!I(e[n],t[n]))return!1;return!0}var a;if(je&&e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(a=e.entries();!(n=a.next()).done;)if(!t.has(n.value[0]))return!1;for(a=e.entries();!(n=a.next()).done;)if(!I(n.value[1],t.get(n.value[0])))return!1;return!0}if(Oe&&e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(a=e.entries();!(n=a.next()).done;)if(!t.has(n.value[0]))return!1;return!0}if(we&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(t)){if(r=e.length,r!=t.length)return!1;for(n=r;n--!==0;)if(e[n]!==t[n])return!1;return!0}if(e.constructor===RegExp)return e.source===t.source&&e.flags===t.flags;if(e.valueOf!==Object.prototype.valueOf&&typeof e.valueOf=="function"&&typeof t.valueOf=="function")return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString&&typeof e.toString=="function"&&typeof t.toString=="function")return e.toString()===t.toString();if(s=Object.keys(e),r=s.length,r!==Object.keys(t).length)return!1;for(n=r;n--!==0;)if(!Object.prototype.hasOwnProperty.call(t,s[n]))return!1;if(Ae&&e instanceof Element)return!1;for(n=r;n--!==0;)if(!((s[n]==="_owner"||s[n]==="__v"||s[n]==="__o")&&e.$$typeof)&&!I(e[s[n]],t[s[n]]))return!1;return!0}return e!==e&&t!==t}var De=function(t,r){try{return I(t,r)}catch(n){if((n.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw n}};const Pe=o.getDefaultExportFromCjs(De);var ke=function(t,r,n,s){var a=n?n.call(s,t,r):void 0;if(a!==void 0)return!!a;if(t===r)return!0;if(typeof t!="object"||!t||typeof r!="object"||!r)return!1;var f=Object.keys(t),l=Object.keys(r);if(f.length!==l.length)return!1;for(var c=Object.prototype.hasOwnProperty.bind(r),i=0;i<f.length;i++){var d=f[i];if(!c(d))return!1;var m=t[d],h=r[d];if(a=n?n.call(s,m,h,d):void 0,a===!1||a===void 0&&m!==h)return!1}return!0};const Re=o.getDefaultExportFromCjs(ke);var ee=(e=>(e.BASE="base",e.BODY="body",e.HEAD="head",e.HTML="html",e.LINK="link",e.META="meta",e.NOSCRIPT="noscript",e.SCRIPT="script",e.STYLE="style",e.TITLE="title",e.FRAGMENT="Symbol(react.fragment)",e))(ee||{}),H={link:{rel:["amphtml","canonical","alternate"]},script:{type:["application/ld+json"]},meta:{charset:"",name:["generator","robots","description"],property:["og:type","og:title","og:url","og:image","og:image:alt","og:description","twitter:url","twitter:title","twitter:description","twitter:image","twitter:image:alt","twitter:card","twitter:site"]}},V=Object.values(ee),K={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},Ie=Object.entries(K).reduce((e,[t,r])=>(e[r]=t,e),{}),T="data-rh",O={DEFAULT_TITLE:"defaultTitle",DEFER:"defer",ENCODE_SPECIAL_CHARACTERS:"encodeSpecialCharacters",ON_CHANGE_CLIENT_STATE:"onChangeClientState",TITLE_TEMPLATE:"titleTemplate",PRIORITIZE_SEO_TAGS:"prioritizeSeoTags"},w=(e,t)=>{for(let r=e.length-1;r>=0;r-=1){const n=e[r];if(Object.prototype.hasOwnProperty.call(n,t))return n[t]}return null},Le=e=>{let t=w(e,"title");const r=w(e,O.TITLE_TEMPLATE);if(Array.isArray(t)&&(t=t.join("")),r&&t)return r.replace(/%s/g,()=>t);const n=w(e,O.DEFAULT_TITLE);return t||n||void 0},Me=e=>w(e,O.ON_CHANGE_CLIENT_STATE)||(()=>{}),_=(e,t)=>t.filter(r=>typeof r[e]<"u").map(r=>r[e]).reduce((r,n)=>({...r,...n}),{}),He=(e,t)=>t.filter(r=>typeof r.base<"u").map(r=>r.base).reverse().reduce((r,n)=>{if(!r.length){const s=Object.keys(n);for(let a=0;a<s.length;a+=1){const l=s[a].toLowerCase();if(e.indexOf(l)!==-1&&n[l])return r.concat(n)}}return r},[]),_e=e=>console&&typeof console.warn=="function"&&console.warn(e),P=(e,t,r)=>{const n={};return r.filter(s=>Array.isArray(s[e])?!0:(typeof s[e]<"u"&&_e(`Helmet: ${e} should be of type "Array". Instead found type "${typeof s[e]}"`),!1)).map(s=>s[e]).reverse().reduce((s,a)=>{const f={};a.filter(c=>{let i;const d=Object.keys(c);for(let h=0;h<d.length;h+=1){const p=d[h],y=p.toLowerCase();t.indexOf(y)!==-1&&!(i==="rel"&&c[i].toLowerCase()==="canonical")&&!(y==="rel"&&c[y].toLowerCase()==="stylesheet")&&(i=y),t.indexOf(p)!==-1&&(p==="innerHTML"||p==="cssText"||p==="itemprop")&&(i=p)}if(!i||!c[i])return!1;const m=c[i].toLowerCase();return n[i]||(n[i]={}),f[i]||(f[i]={}),n[i][m]?!1:(f[i][m]=!0,!0)}).reverse().forEach(c=>s.push(c));const l=Object.keys(f);for(let c=0;c<l.length;c+=1){const i=l[c],d={...n[i],...f[i]};n[i]=d}return s},[]).reverse()},$e=(e,t)=>{if(Array.isArray(e)&&e.length){for(let r=0;r<e.length;r+=1)if(e[r][t])return!0}return!1},Ue=e=>({baseTag:He(["href"],e),bodyAttributes:_("bodyAttributes",e),defer:w(e,O.DEFER),encode:w(e,O.ENCODE_SPECIAL_CHARACTERS),htmlAttributes:_("htmlAttributes",e),linkTags:P("link",["rel","href"],e),metaTags:P("meta",["name","charset","http-equiv","property","itemprop"],e),noscriptTags:P("noscript",["innerHTML"],e),onChangeClientState:Me(e),scriptTags:P("script",["src","innerHTML"],e),styleTags:P("style",["cssText"],e),title:Le(e),titleAttributes:_("titleAttributes",e),prioritizeSeoTags:$e(e,O.PRIORITIZE_SEO_TAGS)}),te=e=>Array.isArray(e)?e.join(""):e,Fe=(e,t)=>{const r=Object.keys(e);for(let n=0;n<r.length;n+=1)if(t[r[n]]&&t[r[n]].includes(e[r[n]]))return!0;return!1},$=(e,t)=>Array.isArray(e)?e.reduce((r,n)=>(Fe(n,t)?r.priority.push(n):r.default.push(n),r),{priority:[],default:[]}):{default:e,priority:[]},Y=(e,t)=>({...e,[t]:void 0}),Ne=["noscript","script","style"],N=(e,t=!0)=>t===!1?String(e):String(e).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;"),re=e=>Object.keys(e).reduce((t,r)=>{const n=typeof e[r]<"u"?`${r}="${e[r]}"`:`${r}`;return t?`${t} ${n}`:n},""),qe=(e,t,r,n)=>{const s=re(r),a=te(t);return s?`<${e} ${T}="true" ${s}>${N(a,n)}</${e}>`:`<${e} ${T}="true">${N(a,n)}</${e}>`},Ge=(e,t,r=!0)=>t.reduce((n,s)=>{const a=s,f=Object.keys(a).filter(i=>!(i==="innerHTML"||i==="cssText")).reduce((i,d)=>{const m=typeof a[d]>"u"?d:`${d}="${N(a[d],r)}"`;return i?`${i} ${m}`:m},""),l=a.innerHTML||a.cssText||"",c=Ne.indexOf(e)===-1;return`${n}<${e} ${T}="true" ${f}${c?"/>":`>${l}</${e}>`}`},""),ne=(e,t={})=>Object.keys(e).reduce((r,n)=>{const s=K[n];return r[s||n]=e[n],r},t),ze=(e,t,r)=>{const n={key:t,[T]:!0},s=ne(r,n);return[u.createElement("title",s,t)]},L=(e,t)=>t.map((r,n)=>{const s={key:n,[T]:!0};return Object.keys(r).forEach(a=>{const l=K[a]||a;if(l==="innerHTML"||l==="cssText"){const c=r.innerHTML||r.cssText;s.dangerouslySetInnerHTML={__html:c}}else s[l]=r[a]}),u.createElement(e,s)}),g=(e,t,r=!0)=>{switch(e){case"title":return{toComponent:()=>ze(e,t.title,t.titleAttributes),toString:()=>qe(e,t.title,t.titleAttributes,r)};case"bodyAttributes":case"htmlAttributes":return{toComponent:()=>ne(t),toString:()=>re(t)};default:return{toComponent:()=>L(e,t),toString:()=>Ge(e,t,r)}}},Ke=({metaTags:e,linkTags:t,scriptTags:r,encode:n})=>{const s=$(e,H.meta),a=$(t,H.link),f=$(r,H.script);return{priorityMethods:{toComponent:()=>[...L("meta",s.priority),...L("link",a.priority),...L("script",f.priority)],toString:()=>`${g("meta",s.priority,n)} ${g("link",a.priority,n)} ${g("script",f.priority,n)}`},metaTags:s.default,linkTags:a.default,scriptTags:f.default}},Be=e=>{const{baseTag:t,bodyAttributes:r,encode:n=!0,htmlAttributes:s,noscriptTags:a,styleTags:f,title:l="",titleAttributes:c,prioritizeSeoTags:i}=e;let{linkTags:d,metaTags:m,scriptTags:h}=e,p={toComponent:()=>{},toString:()=>""};return i&&({priorityMethods:p,linkTags:d,metaTags:m,scriptTags:h}=Ke(e)),{priority:p,base:g("base",t,n),bodyAttributes:g("bodyAttributes",r,n),htmlAttributes:g("htmlAttributes",s,n),link:g("link",d,n),meta:g("meta",m,n),noscript:g("noscript",a,n),script:g("script",h,n),style:g("style",f,n),title:g("title",{title:l,titleAttributes:c},n)}},q=Be,R=[],se=!!(typeof window<"u"&&window.document&&window.document.createElement),G=class{constructor(e,t){C(this,"instances",[]);C(this,"canUseDOM",se);C(this,"context");C(this,"value",{setHelmet:e=>{this.context.helmet=e},helmetInstances:{get:()=>this.canUseDOM?R:this.instances,add:e=>{(this.canUseDOM?R:this.instances).push(e)},remove:e=>{const t=(this.canUseDOM?R:this.instances).indexOf(e);(this.canUseDOM?R:this.instances).splice(t,1)}}});this.context=e,this.canUseDOM=t||!1,t||(e.helmet=q({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}}))}},Ve={},oe=u.createContext(Ve),A,ae=(A=class extends u.Component{constructor(r){super(r);C(this,"helmetData");this.helmetData=new G(this.props.context||{},A.canUseDOM)}render(){return u.createElement(oe.Provider,{value:this.helmetData.value},this.props.children)}},C(A,"canUseDOM",se),A),j=(e,t)=>{const r=document.head||document.querySelector("head"),n=r.querySelectorAll(`${e}[${T}]`),s=[].slice.call(n),a=[];let f;return t&&t.length&&t.forEach(l=>{const c=document.createElement(e);for(const i in l)if(Object.prototype.hasOwnProperty.call(l,i))if(i==="innerHTML")c.innerHTML=l.innerHTML;else if(i==="cssText")c.styleSheet?c.styleSheet.cssText=l.cssText:c.appendChild(document.createTextNode(l.cssText));else{const d=i,m=typeof l[d]>"u"?"":l[d];c.setAttribute(i,m)}c.setAttribute(T,"true"),s.some((i,d)=>(f=d,c.isEqualNode(i)))?s.splice(f,1):a.push(c)}),s.forEach(l=>{var c;return(c=l.parentNode)==null?void 0:c.removeChild(l)}),a.forEach(l=>r.appendChild(l)),{oldTags:s,newTags:a}},z=(e,t)=>{const r=document.getElementsByTagName(e)[0];if(!r)return;const n=r.getAttribute(T),s=n?n.split(","):[],a=[...s],f=Object.keys(t);for(const l of f){const c=t[l]||"";r.getAttribute(l)!==c&&r.setAttribute(l,c),s.indexOf(l)===-1&&s.push(l);const i=a.indexOf(l);i!==-1&&a.splice(i,1)}for(let l=a.length-1;l>=0;l-=1)r.removeAttribute(a[l]);s.length===a.length?r.removeAttribute(T):r.getAttribute(T)!==f.join(",")&&r.setAttribute(T,f.join(","))},Ye=(e,t)=>{typeof e<"u"&&document.title!==e&&(document.title=te(e)),z("title",t)},W=(e,t)=>{const{baseTag:r,bodyAttributes:n,htmlAttributes:s,linkTags:a,metaTags:f,noscriptTags:l,onChangeClientState:c,scriptTags:i,styleTags:d,title:m,titleAttributes:h}=e;z("body",n),z("html",s),Ye(m,h);const p={baseTag:j("base",r),linkTags:j("link",a),metaTags:j("meta",f),noscriptTags:j("noscript",l),scriptTags:j("script",i),styleTags:j("style",d)},y={},D={};Object.keys(p).forEach(S=>{const{newTags:E,oldTags:b}=p[S];E.length&&(y[S]=E),b.length&&(D[S]=p[S].oldTags)}),t&&t(),c(e,y,D)},k=null,We=e=>{k&&cancelAnimationFrame(k),e.defer?k=requestAnimationFrame(()=>{W(e,()=>{k=null})}):(W(e),k=null)},Je=We,J=class extends u.Component{constructor(){super(...arguments);C(this,"rendered",!1)}shouldComponentUpdate(t){return!Re(t,this.props)}componentDidUpdate(){this.emitChange()}componentWillUnmount(){const{helmetInstances:t}=this.props.context;t.remove(this),this.emitChange()}emitChange(){const{helmetInstances:t,setHelmet:r}=this.props.context;let n=null;const s=Ue(t.get().map(a=>{const f={...a.props};return delete f.context,f}));ae.canUseDOM?Je(s):q&&(n=q(s)),r(n)}init(){if(this.rendered)return;this.rendered=!0;const{helmetInstances:t}=this.props.context;t.add(this),this.emitChange()}render(){return this.init(),null}},U,Ze=(U=class extends u.Component{shouldComponentUpdate(e){return!Pe(Y(this.props,"helmetData"),Y(e,"helmetData"))}mapNestedChildrenToProps(e,t){if(!t)return null;switch(e.type){case"script":case"noscript":return{innerHTML:t};case"style":return{cssText:t};default:throw new Error(`<${e.type} /> elements are self-closing and can not contain children. Refer to our API for more information.`)}}flattenArrayTypeChildren(e,t,r,n){return{...t,[e.type]:[...t[e.type]||[],{...r,...this.mapNestedChildrenToProps(e,n)}]}}mapObjectTypeChildren(e,t,r,n){switch(e.type){case"title":return{...t,[e.type]:n,titleAttributes:{...r}};case"body":return{...t,bodyAttributes:{...r}};case"html":return{...t,htmlAttributes:{...r}};default:return{...t,[e.type]:{...r}}}}mapArrayTypeChildrenToProps(e,t){let r={...t};return Object.keys(e).forEach(n=>{r={...r,[n]:e[n]}}),r}warnOnInvalidChildren(e,t){return o.invariant(V.some(r=>e.type===r),typeof e.type=="function"?"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.":`Only elements types ${V.join(", ")} are allowed. Helmet does not support rendering <${e.type}> elements. Refer to our API for more information.`),o.invariant(!t||typeof t=="string"||Array.isArray(t)&&!t.some(r=>typeof r!="string"),`Helmet expects a string as a child of <${e.type}>. Did you forget to wrap your children in braces? ( <${e.type}>{\`\`}</${e.type}> ) Refer to our API for more information.`),!0}mapChildrenToProps(e,t){let r={};return u.Children.forEach(e,n=>{if(!n||!n.props)return;const{children:s,...a}=n.props,f=Object.keys(a).reduce((c,i)=>(c[Ie[i]||i]=a[i],c),{});let{type:l}=n;switch(typeof l=="symbol"?l=l.toString():this.warnOnInvalidChildren(n,s),l){case"Symbol(react.fragment)":t=this.mapChildrenToProps(s,t);break;case"link":case"meta":case"noscript":case"script":case"style":r=this.flattenArrayTypeChildren(n,r,f,s);break;default:t=this.mapObjectTypeChildren(n,t,f,s);break}}),this.mapArrayTypeChildrenToProps(r,t)}render(){const{children:e,...t}=this.props;let r={...t},{helmetData:n}=t;if(e&&(r=this.mapChildrenToProps(e,r)),n&&!(n instanceof G)){const s=n;n=new G(s.context,!0),delete r.helmetData}return n?u.createElement(J,{...r,context:n.value}):u.createElement(oe.Consumer,null,s=>u.createElement(J,{...r,context:s}))}},C(U,"defaultProps",{defer:!0,encodeSpecialCharacters:!0,prioritizeSeoTags:!1}),U);const Z=(e,t)=>e?`${e} | ${t}`:t,Qe=({defaultHelmet:e,children:t,helmetPrefix:r})=>{const[n,s]=u.useState([Z(r??"",e)]),a=u.useCallback(i=>{s(d=>[...d,Z(r??"",i)])},[r]),f=u.useCallback(()=>{s(i=>i.length>1?i.slice(0,-1):i)},[s]),l=u.useMemo(()=>n.at(-1)??"",[n]),c=u.useMemo(()=>({addHelmet:a,removeHelmet:f}),[a,f]);return o.jsxRuntimeExports.jsx(o.HelmetContext.Provider,{value:c,children:o.jsxRuntimeExports.jsxs(ae,{children:[o.jsxRuntimeExports.jsx(Ze,{defer:!1,children:o.jsxRuntimeExports.jsx("title",{children:l})}),t]})})},Q=50,Xe=()=>{const{texts:{confirm:e}}=u.useContext(o.LuminusComponentsContext),{onConfirm:t,onCancel:r,text:n,show:s,textSm:a}=o.useConfirm(),f=u.useMemo(()=>a===void 0?n.length>Q:a,[n,a]),l=u.useMemo(()=>n.length>Q,[n]),c=u.useCallback(i=>{if(s)switch(i.key){case"Enter":i.preventDefault(),i.stopPropagation(),t();break;case"Escape":i.preventDefault(),i.stopPropagation(),r();break}},[t,r,s]);return o.useKeyPress(c),o.jsxRuntimeExports.jsxs(o.Modal,{show:s,size:l?void 0:"sm",centered:!0,onHide:r,children:[o.jsxRuntimeExports.jsx(o.Modal.Header,{className:"justify-content-center",children:f?o.jsxRuntimeExports.jsx(o.Typography,{variant:"body",children:n}):o.jsxRuntimeExports.jsx(o.Modal.Title,{children:n})}),o.jsxRuntimeExports.jsx(o.Modal.Body,{children:o.jsxRuntimeExports.jsxs("div",{className:"w-100 d-flex gap-5",children:[o.jsxRuntimeExports.jsx(o.PrimaryButton,{type:"button",variant:"outlined",color:"secondary",className:"w-100",onClick:r,children:e.no}),o.jsxRuntimeExports.jsx(o.PrimaryButton,{type:"button",color:"primary",onClick:t,className:"w-100 ml",children:e.yes})]})})]})};exports.AuthContext=o.AuthContext;exports.DelegationContext=o.DelegationContext;exports.FormDisabledContext=o.FormDisabledContext;exports.HelmetContext=o.HelmetContext;exports.LoadingContext=o.LoadingContext;exports.LuminusComponentsContext=o.LuminusComponentsContext;exports.UserContext=o.UserContext;exports.useFormDisabledContext=o.useFormDisabledContext;exports.FormDisabledProvider=X.FormDisabledProvider;exports.AuthProvider=Se;exports.DelegationProvider=be;exports.HelmetProvider=Qe;exports.LoadingProvider=Ce;exports.LuminusComponentsProvider=Te;exports.UserProvider=Ee;
1
+ "use strict";var le=Object.defineProperty;var ue=(e,t,r)=>t in e?le(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var C=(e,t,r)=>ue(e,typeof t!="symbol"?t+"":t,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./ShortcutLinksContext-BtI3NfVP.cjs"),u=require("react"),F=require("@azure/msal-browser"),ce=require("@azure/msal-react");require("react-router-dom");require("react-dom");require("react-hook-form");require("react-flexmonster");const X=require("./FormDisabledProvider-obA9soBx.cjs"),fe=require("./useGetApiData-2ImsUo6s.cjs"),de=require("./useLocalStorageState-BFc8Gc8H.cjs");function me(e){const t=o.toDate(e);return t.setHours(23,59,59,999),t}function pe(){return me(Date.now())}function he(e,t){const r=+o.toDate(e),[n,s]=[+o.toDate(t.start),+o.toDate(t.end)].sort((a,f)=>a-f);return r>=n&&r<=s}function xe(){return o.startOfDay(Date.now())}const ye=({children:e})=>{const[t,r]=u.useState(!1),[n,s]=u.useState(""),[a,f]=u.useState(void 0),l=u.useCallback((d,m)=>{r(!0),s(d),f(m)},[]),c=u.useCallback(()=>{r(!1)},[]),i=u.useMemo(()=>({show:t,text:n,showConfirm:l,hideConfirm:c,textSm:a}),[t,n,l,c,a]);return o.jsxRuntimeExports.jsxs(o.ConfirmContext.Provider,{value:i,children:[o.jsxRuntimeExports.jsx(Xe,{}),e]})},ge=()=>{const{texts:{confirm:e}}=u.useContext(o.LuminusComponentsContext),{isShown:t,text:r,onFinish:n}=o.usePrompt(),{options:s}=u.useContext(o.PromptContext),[a,f]=u.useState(s.defaultValue??""),l=u.useCallback(()=>{n(null)},[n]),c=u.useCallback(d=>{d.preventDefault(),!(s.required&&!a)&&n(a)},[n,s.required,a]);u.useEffect(()=>{t===!0&&f(s.defaultValue??"")},[t,s.defaultValue]);const i=u.useMemo(()=>({value:a,onChange:d=>f(d.currentTarget.value),className:"w-100",autoFocus:!0,tabIndex:0}),[a]);return o.jsxRuntimeExports.jsxs(o.Modal,{show:t,size:"sm",centered:!0,onHide:l,children:[o.jsxRuntimeExports.jsx(o.Modal.Header,{className:"justify-content-center",children:o.jsxRuntimeExports.jsx(o.Modal.Title,{children:r})}),o.jsxRuntimeExports.jsxs("form",{onSubmit:c,children:[o.jsxRuntimeExports.jsxs(o.Modal.Body,{children:[s.input==="textarea"?o.jsxRuntimeExports.jsx("textarea",{...i,rows:5}):void 0,s.input==="input"?o.jsxRuntimeExports.jsx(o.FormControl,{...i,type:s.type}):void 0]}),o.jsxRuntimeExports.jsxs(o.Modal.Footer,{className:"w-100 d-flex gap-5",children:[o.jsxRuntimeExports.jsx(o.PrimaryButton,{variant:"outlined",color:"secondary",onClick:l,className:"flex-grow-1",children:e.cancel}),o.jsxRuntimeExports.jsx(o.PrimaryButton,{color:"primary",disabled:s.required&&!a,type:"submit",className:"flex-grow-1",children:e.confirm})]})]})]})},ve=({children:e})=>{const[t,r]=u.useState(!1),[n,s]=u.useState(""),[a,f]=u.useState({input:"textarea",type:"text"}),l=u.useRef(()=>{}),c=u.useCallback(m=>{s(m),r(!0)},[]),i=u.useCallback(()=>{r(!1)},[]),d=u.useMemo(()=>({isShown:t,text:n,showPrompt:c,hidePrompt:i,resolveRef:l,options:a,setOptions:f}),[t,n,c,i,a]);return o.jsxRuntimeExports.jsxs(o.PromptContext.Provider,{value:d,children:[e,o.jsxRuntimeExports.jsx(ge,{})]})},Te=({cookieDomain:e,axiosOptions:t,language:r,texts:n,ProjectIconComponent:s,localizationContext:a,chartColorPalette:f,children:l})=>{const c=u.useMemo(()=>({axiosOptions:t,cookieDomain:e,language:r,texts:n,ProjectIconComponent:s,localizationContext:a,chartColorPalette:f}),[t,e,r,s,a,n,f]);return o.jsxRuntimeExports.jsx(o.LuminusComponentsContext.Provider,{value:c,children:o.jsxRuntimeExports.jsx(ye,{children:o.jsxRuntimeExports.jsxs(ve,{children:[o.jsxRuntimeExports.jsx(o.Ie,{}),l]})})})},Ce=({children:e})=>{const[t,r]=u.useState(!1),[n]=u.useState(new Set),s=u.useCallback(l=>{n.add(l),r(!0)},[n]),a=u.useCallback(l=>{n.delete(l),n.size===0&&r(!1)},[n]),f=u.useMemo(()=>({isLoading:t,startLoading:s,stopLoading:a}),[t,s,a]);return o.jsxRuntimeExports.jsxs(o.LoadingContext.Provider,{value:f,children:[t&&o.jsxRuntimeExports.jsx(X.Loading,{}),e]})},Ee=({children:e})=>{const t=o.useAxios(),{msalInstance:r}=u.useContext(o.AuthContext),{delegation:n,setDelegation:s,setAvailableDelegations:a,refreshAvailableDelegations:f}=u.useContext(o.DelegationContext),{getToken:l}=o.useAuth(),[c,i]=u.useState(null),d=u.useCallback(async()=>{const x=await l();x&&i(x.token)},[l]);u.useEffect(()=>{d()},[d]);const h=u.useCallback(()=>{const x=localStorage.getItem("user")??null;return x?JSON.parse(x??""):null},[])(),[p,y]=u.useState({state:h?o.LoginState.LOGGED_IN:o.LoginState.LOGGING_IN,user:h}),D=u.useCallback(async x=>{let v=null;return await t.get("/user/detail",x?{headers:{Authorization:`Bearer ${x}`}}:void 0).then(M=>{v=M.data}).catch(()=>{v=null}),v},[t]),S=u.useCallback(()=>{localStorage.removeItem("user"),y({state:o.LoginState.LOGGED_OUT,user:null}),s(null),a(null)},[a,s]),E=u.useCallback(async x=>{y({state:o.LoginState.LOGGING_IN,user:null});const v=await D(x);return v?(y({state:o.LoginState.LOGGED_IN,user:v}),localStorage.setItem("user",JSON.stringify(v)),await f(),!0):(y({state:o.LoginState.LOGIN_FAILED,user:null}),!1)},[D,f]),b=u.useCallback(()=>{S()},[S]);u.useEffect(()=>{if(r){const x=r.addEventCallback(v=>{if(v.eventType===F.EventType.LOGIN_SUCCESS&&v.payload){const M=v.payload;i(M.accessToken)}});return()=>{x&&r.removeEventCallback(x)}}return()=>{}},[r,E,b]);const B=u.useCallback(async x=>{x&&await E(x).catch(()=>{b(),s(null)})},[E,b,s]);u.useEffect(()=>{B(c)},[c,n==null?void 0:n.id,B]);const ie=u.useMemo(()=>({user:p.user,userLoginState:p,loginUser:E,logoutUser:b}),[p,E,b]);return o.jsxRuntimeExports.jsx(o.UserContext.Provider,{value:ie,children:e})},Se=({...e})=>{const{cookieDomain:t}=u.useContext(o.LuminusComponentsContext),[,r]=o.useCookies(["Authorization"]),n=u.useMemo(()=>({useMsal:e.useMsal??!1,msalInstance:e.useMsal?e.msalInstance??null:null,msalScopes:e.useMsal?e.msalScopes??[]:[],msalExtraScopes:e.useMsal?e.msalExtraScopes??[]:[]}),[e]);return u.useEffect(()=>{if(e.useMsal){const s=e.msalInstance.addEventCallback(a=>{if(a.eventType===F.EventType.LOGIN_SUCCESS||a.eventType===F.EventType.ACQUIRE_TOKEN_SUCCESS&&a.payload){const f=a.payload,l=f.account;e.msalInstance.setActiveAccount(l);const c=f.accessToken,i=f.expiresOn;r("Authorization",c,{path:"/",secure:!0,sameSite:"none",domain:t,expires:i??void 0})}a.error&&console.error("AuthProvider MSAL Error",a)});return()=>{s&&e.msalInstance.removeEventCallback(s)}}return()=>{}},[e,r,t]),o.jsxRuntimeExports.jsx(o.AuthContext.Provider,{value:n,children:e.useMsal?o.jsxRuntimeExports.jsx(ce.MsalProvider,{instance:e.msalInstance,children:e.children}):e.children})},be=({children:e,relativeEndpoint:t})=>{const[r,n,s]=de.useLocalStorageState("user-delegation",null),a=u.useMemo(()=>{if(!r)return null;const m=r.from?o.parseISO(r.from):xe(),h=r.to?o.parseISO(r.to):pe();return he(new Date(Date.now()),{start:m,end:h})?r:(n(null),null)},[r,n]),{data:f,setData:l,reloadData:c}=fe.useGetApiData(t,{nullStateBeforeLoad:!1,nullStateOnFail:!0}),i=u.useRef(null);u.useEffect(()=>{const m=()=>{c(),i.current=window.setTimeout(m,o.msToStartOfNextDay()+5e3)};return m(),()=>{i.current!==null&&window.clearTimeout(i.current)}},[c]),u.useEffect(()=>{const m=()=>{s()};return window.addEventListener("focus",m),()=>{window.removeEventListener("focus",m)}},[s,c]);const d=u.useMemo(()=>({delegation:a,setDelegation:n,availableDelegations:f,setAvailableDelegations:l,refreshAvailableDelegations:c}),[a,n,f,l,c]);return o.jsxRuntimeExports.jsx(o.DelegationContext.Provider,{value:d,children:e})};var Ae=typeof Element<"u",je=typeof Map=="function",Oe=typeof Set=="function",we=typeof ArrayBuffer=="function"&&!!ArrayBuffer.isView;function I(e,t){if(e===t)return!0;if(e&&t&&typeof e=="object"&&typeof t=="object"){if(e.constructor!==t.constructor)return!1;var r,n,s;if(Array.isArray(e)){if(r=e.length,r!=t.length)return!1;for(n=r;n--!==0;)if(!I(e[n],t[n]))return!1;return!0}var a;if(je&&e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(a=e.entries();!(n=a.next()).done;)if(!t.has(n.value[0]))return!1;for(a=e.entries();!(n=a.next()).done;)if(!I(n.value[1],t.get(n.value[0])))return!1;return!0}if(Oe&&e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(a=e.entries();!(n=a.next()).done;)if(!t.has(n.value[0]))return!1;return!0}if(we&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(t)){if(r=e.length,r!=t.length)return!1;for(n=r;n--!==0;)if(e[n]!==t[n])return!1;return!0}if(e.constructor===RegExp)return e.source===t.source&&e.flags===t.flags;if(e.valueOf!==Object.prototype.valueOf&&typeof e.valueOf=="function"&&typeof t.valueOf=="function")return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString&&typeof e.toString=="function"&&typeof t.toString=="function")return e.toString()===t.toString();if(s=Object.keys(e),r=s.length,r!==Object.keys(t).length)return!1;for(n=r;n--!==0;)if(!Object.prototype.hasOwnProperty.call(t,s[n]))return!1;if(Ae&&e instanceof Element)return!1;for(n=r;n--!==0;)if(!((s[n]==="_owner"||s[n]==="__v"||s[n]==="__o")&&e.$$typeof)&&!I(e[s[n]],t[s[n]]))return!1;return!0}return e!==e&&t!==t}var De=function(t,r){try{return I(t,r)}catch(n){if((n.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw n}};const Pe=o.getDefaultExportFromCjs(De);var ke=function(t,r,n,s){var a=n?n.call(s,t,r):void 0;if(a!==void 0)return!!a;if(t===r)return!0;if(typeof t!="object"||!t||typeof r!="object"||!r)return!1;var f=Object.keys(t),l=Object.keys(r);if(f.length!==l.length)return!1;for(var c=Object.prototype.hasOwnProperty.bind(r),i=0;i<f.length;i++){var d=f[i];if(!c(d))return!1;var m=t[d],h=r[d];if(a=n?n.call(s,m,h,d):void 0,a===!1||a===void 0&&m!==h)return!1}return!0};const Re=o.getDefaultExportFromCjs(ke);var ee=(e=>(e.BASE="base",e.BODY="body",e.HEAD="head",e.HTML="html",e.LINK="link",e.META="meta",e.NOSCRIPT="noscript",e.SCRIPT="script",e.STYLE="style",e.TITLE="title",e.FRAGMENT="Symbol(react.fragment)",e))(ee||{}),H={link:{rel:["amphtml","canonical","alternate"]},script:{type:["application/ld+json"]},meta:{charset:"",name:["generator","robots","description"],property:["og:type","og:title","og:url","og:image","og:image:alt","og:description","twitter:url","twitter:title","twitter:description","twitter:image","twitter:image:alt","twitter:card","twitter:site"]}},V=Object.values(ee),K={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},Ie=Object.entries(K).reduce((e,[t,r])=>(e[r]=t,e),{}),T="data-rh",O={DEFAULT_TITLE:"defaultTitle",DEFER:"defer",ENCODE_SPECIAL_CHARACTERS:"encodeSpecialCharacters",ON_CHANGE_CLIENT_STATE:"onChangeClientState",TITLE_TEMPLATE:"titleTemplate",PRIORITIZE_SEO_TAGS:"prioritizeSeoTags"},w=(e,t)=>{for(let r=e.length-1;r>=0;r-=1){const n=e[r];if(Object.prototype.hasOwnProperty.call(n,t))return n[t]}return null},Le=e=>{let t=w(e,"title");const r=w(e,O.TITLE_TEMPLATE);if(Array.isArray(t)&&(t=t.join("")),r&&t)return r.replace(/%s/g,()=>t);const n=w(e,O.DEFAULT_TITLE);return t||n||void 0},Me=e=>w(e,O.ON_CHANGE_CLIENT_STATE)||(()=>{}),_=(e,t)=>t.filter(r=>typeof r[e]<"u").map(r=>r[e]).reduce((r,n)=>({...r,...n}),{}),He=(e,t)=>t.filter(r=>typeof r.base<"u").map(r=>r.base).reverse().reduce((r,n)=>{if(!r.length){const s=Object.keys(n);for(let a=0;a<s.length;a+=1){const l=s[a].toLowerCase();if(e.indexOf(l)!==-1&&n[l])return r.concat(n)}}return r},[]),_e=e=>console&&typeof console.warn=="function"&&console.warn(e),P=(e,t,r)=>{const n={};return r.filter(s=>Array.isArray(s[e])?!0:(typeof s[e]<"u"&&_e(`Helmet: ${e} should be of type "Array". Instead found type "${typeof s[e]}"`),!1)).map(s=>s[e]).reverse().reduce((s,a)=>{const f={};a.filter(c=>{let i;const d=Object.keys(c);for(let h=0;h<d.length;h+=1){const p=d[h],y=p.toLowerCase();t.indexOf(y)!==-1&&!(i==="rel"&&c[i].toLowerCase()==="canonical")&&!(y==="rel"&&c[y].toLowerCase()==="stylesheet")&&(i=y),t.indexOf(p)!==-1&&(p==="innerHTML"||p==="cssText"||p==="itemprop")&&(i=p)}if(!i||!c[i])return!1;const m=c[i].toLowerCase();return n[i]||(n[i]={}),f[i]||(f[i]={}),n[i][m]?!1:(f[i][m]=!0,!0)}).reverse().forEach(c=>s.push(c));const l=Object.keys(f);for(let c=0;c<l.length;c+=1){const i=l[c],d={...n[i],...f[i]};n[i]=d}return s},[]).reverse()},$e=(e,t)=>{if(Array.isArray(e)&&e.length){for(let r=0;r<e.length;r+=1)if(e[r][t])return!0}return!1},Ue=e=>({baseTag:He(["href"],e),bodyAttributes:_("bodyAttributes",e),defer:w(e,O.DEFER),encode:w(e,O.ENCODE_SPECIAL_CHARACTERS),htmlAttributes:_("htmlAttributes",e),linkTags:P("link",["rel","href"],e),metaTags:P("meta",["name","charset","http-equiv","property","itemprop"],e),noscriptTags:P("noscript",["innerHTML"],e),onChangeClientState:Me(e),scriptTags:P("script",["src","innerHTML"],e),styleTags:P("style",["cssText"],e),title:Le(e),titleAttributes:_("titleAttributes",e),prioritizeSeoTags:$e(e,O.PRIORITIZE_SEO_TAGS)}),te=e=>Array.isArray(e)?e.join(""):e,Fe=(e,t)=>{const r=Object.keys(e);for(let n=0;n<r.length;n+=1)if(t[r[n]]&&t[r[n]].includes(e[r[n]]))return!0;return!1},$=(e,t)=>Array.isArray(e)?e.reduce((r,n)=>(Fe(n,t)?r.priority.push(n):r.default.push(n),r),{priority:[],default:[]}):{default:e,priority:[]},Y=(e,t)=>({...e,[t]:void 0}),Ne=["noscript","script","style"],N=(e,t=!0)=>t===!1?String(e):String(e).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;"),re=e=>Object.keys(e).reduce((t,r)=>{const n=typeof e[r]<"u"?`${r}="${e[r]}"`:`${r}`;return t?`${t} ${n}`:n},""),qe=(e,t,r,n)=>{const s=re(r),a=te(t);return s?`<${e} ${T}="true" ${s}>${N(a,n)}</${e}>`:`<${e} ${T}="true">${N(a,n)}</${e}>`},Ge=(e,t,r=!0)=>t.reduce((n,s)=>{const a=s,f=Object.keys(a).filter(i=>!(i==="innerHTML"||i==="cssText")).reduce((i,d)=>{const m=typeof a[d]>"u"?d:`${d}="${N(a[d],r)}"`;return i?`${i} ${m}`:m},""),l=a.innerHTML||a.cssText||"",c=Ne.indexOf(e)===-1;return`${n}<${e} ${T}="true" ${f}${c?"/>":`>${l}</${e}>`}`},""),ne=(e,t={})=>Object.keys(e).reduce((r,n)=>{const s=K[n];return r[s||n]=e[n],r},t),ze=(e,t,r)=>{const n={key:t,[T]:!0},s=ne(r,n);return[u.createElement("title",s,t)]},L=(e,t)=>t.map((r,n)=>{const s={key:n,[T]:!0};return Object.keys(r).forEach(a=>{const l=K[a]||a;if(l==="innerHTML"||l==="cssText"){const c=r.innerHTML||r.cssText;s.dangerouslySetInnerHTML={__html:c}}else s[l]=r[a]}),u.createElement(e,s)}),g=(e,t,r=!0)=>{switch(e){case"title":return{toComponent:()=>ze(e,t.title,t.titleAttributes),toString:()=>qe(e,t.title,t.titleAttributes,r)};case"bodyAttributes":case"htmlAttributes":return{toComponent:()=>ne(t),toString:()=>re(t)};default:return{toComponent:()=>L(e,t),toString:()=>Ge(e,t,r)}}},Ke=({metaTags:e,linkTags:t,scriptTags:r,encode:n})=>{const s=$(e,H.meta),a=$(t,H.link),f=$(r,H.script);return{priorityMethods:{toComponent:()=>[...L("meta",s.priority),...L("link",a.priority),...L("script",f.priority)],toString:()=>`${g("meta",s.priority,n)} ${g("link",a.priority,n)} ${g("script",f.priority,n)}`},metaTags:s.default,linkTags:a.default,scriptTags:f.default}},Be=e=>{const{baseTag:t,bodyAttributes:r,encode:n=!0,htmlAttributes:s,noscriptTags:a,styleTags:f,title:l="",titleAttributes:c,prioritizeSeoTags:i}=e;let{linkTags:d,metaTags:m,scriptTags:h}=e,p={toComponent:()=>{},toString:()=>""};return i&&({priorityMethods:p,linkTags:d,metaTags:m,scriptTags:h}=Ke(e)),{priority:p,base:g("base",t,n),bodyAttributes:g("bodyAttributes",r,n),htmlAttributes:g("htmlAttributes",s,n),link:g("link",d,n),meta:g("meta",m,n),noscript:g("noscript",a,n),script:g("script",h,n),style:g("style",f,n),title:g("title",{title:l,titleAttributes:c},n)}},q=Be,R=[],se=!!(typeof window<"u"&&window.document&&window.document.createElement),G=class{constructor(e,t){C(this,"instances",[]);C(this,"canUseDOM",se);C(this,"context");C(this,"value",{setHelmet:e=>{this.context.helmet=e},helmetInstances:{get:()=>this.canUseDOM?R:this.instances,add:e=>{(this.canUseDOM?R:this.instances).push(e)},remove:e=>{const t=(this.canUseDOM?R:this.instances).indexOf(e);(this.canUseDOM?R:this.instances).splice(t,1)}}});this.context=e,this.canUseDOM=t||!1,t||(e.helmet=q({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}}))}},Ve={},oe=u.createContext(Ve),A,ae=(A=class extends u.Component{constructor(r){super(r);C(this,"helmetData");this.helmetData=new G(this.props.context||{},A.canUseDOM)}render(){return u.createElement(oe.Provider,{value:this.helmetData.value},this.props.children)}},C(A,"canUseDOM",se),A),j=(e,t)=>{const r=document.head||document.querySelector("head"),n=r.querySelectorAll(`${e}[${T}]`),s=[].slice.call(n),a=[];let f;return t&&t.length&&t.forEach(l=>{const c=document.createElement(e);for(const i in l)if(Object.prototype.hasOwnProperty.call(l,i))if(i==="innerHTML")c.innerHTML=l.innerHTML;else if(i==="cssText")c.styleSheet?c.styleSheet.cssText=l.cssText:c.appendChild(document.createTextNode(l.cssText));else{const d=i,m=typeof l[d]>"u"?"":l[d];c.setAttribute(i,m)}c.setAttribute(T,"true"),s.some((i,d)=>(f=d,c.isEqualNode(i)))?s.splice(f,1):a.push(c)}),s.forEach(l=>{var c;return(c=l.parentNode)==null?void 0:c.removeChild(l)}),a.forEach(l=>r.appendChild(l)),{oldTags:s,newTags:a}},z=(e,t)=>{const r=document.getElementsByTagName(e)[0];if(!r)return;const n=r.getAttribute(T),s=n?n.split(","):[],a=[...s],f=Object.keys(t);for(const l of f){const c=t[l]||"";r.getAttribute(l)!==c&&r.setAttribute(l,c),s.indexOf(l)===-1&&s.push(l);const i=a.indexOf(l);i!==-1&&a.splice(i,1)}for(let l=a.length-1;l>=0;l-=1)r.removeAttribute(a[l]);s.length===a.length?r.removeAttribute(T):r.getAttribute(T)!==f.join(",")&&r.setAttribute(T,f.join(","))},Ye=(e,t)=>{typeof e<"u"&&document.title!==e&&(document.title=te(e)),z("title",t)},W=(e,t)=>{const{baseTag:r,bodyAttributes:n,htmlAttributes:s,linkTags:a,metaTags:f,noscriptTags:l,onChangeClientState:c,scriptTags:i,styleTags:d,title:m,titleAttributes:h}=e;z("body",n),z("html",s),Ye(m,h);const p={baseTag:j("base",r),linkTags:j("link",a),metaTags:j("meta",f),noscriptTags:j("noscript",l),scriptTags:j("script",i),styleTags:j("style",d)},y={},D={};Object.keys(p).forEach(S=>{const{newTags:E,oldTags:b}=p[S];E.length&&(y[S]=E),b.length&&(D[S]=p[S].oldTags)}),t&&t(),c(e,y,D)},k=null,We=e=>{k&&cancelAnimationFrame(k),e.defer?k=requestAnimationFrame(()=>{W(e,()=>{k=null})}):(W(e),k=null)},Je=We,J=class extends u.Component{constructor(){super(...arguments);C(this,"rendered",!1)}shouldComponentUpdate(t){return!Re(t,this.props)}componentDidUpdate(){this.emitChange()}componentWillUnmount(){const{helmetInstances:t}=this.props.context;t.remove(this),this.emitChange()}emitChange(){const{helmetInstances:t,setHelmet:r}=this.props.context;let n=null;const s=Ue(t.get().map(a=>{const f={...a.props};return delete f.context,f}));ae.canUseDOM?Je(s):q&&(n=q(s)),r(n)}init(){if(this.rendered)return;this.rendered=!0;const{helmetInstances:t}=this.props.context;t.add(this),this.emitChange()}render(){return this.init(),null}},U,Ze=(U=class extends u.Component{shouldComponentUpdate(e){return!Pe(Y(this.props,"helmetData"),Y(e,"helmetData"))}mapNestedChildrenToProps(e,t){if(!t)return null;switch(e.type){case"script":case"noscript":return{innerHTML:t};case"style":return{cssText:t};default:throw new Error(`<${e.type} /> elements are self-closing and can not contain children. Refer to our API for more information.`)}}flattenArrayTypeChildren(e,t,r,n){return{...t,[e.type]:[...t[e.type]||[],{...r,...this.mapNestedChildrenToProps(e,n)}]}}mapObjectTypeChildren(e,t,r,n){switch(e.type){case"title":return{...t,[e.type]:n,titleAttributes:{...r}};case"body":return{...t,bodyAttributes:{...r}};case"html":return{...t,htmlAttributes:{...r}};default:return{...t,[e.type]:{...r}}}}mapArrayTypeChildrenToProps(e,t){let r={...t};return Object.keys(e).forEach(n=>{r={...r,[n]:e[n]}}),r}warnOnInvalidChildren(e,t){return o.invariant(V.some(r=>e.type===r),typeof e.type=="function"?"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.":`Only elements types ${V.join(", ")} are allowed. Helmet does not support rendering <${e.type}> elements. Refer to our API for more information.`),o.invariant(!t||typeof t=="string"||Array.isArray(t)&&!t.some(r=>typeof r!="string"),`Helmet expects a string as a child of <${e.type}>. Did you forget to wrap your children in braces? ( <${e.type}>{\`\`}</${e.type}> ) Refer to our API for more information.`),!0}mapChildrenToProps(e,t){let r={};return u.Children.forEach(e,n=>{if(!n||!n.props)return;const{children:s,...a}=n.props,f=Object.keys(a).reduce((c,i)=>(c[Ie[i]||i]=a[i],c),{});let{type:l}=n;switch(typeof l=="symbol"?l=l.toString():this.warnOnInvalidChildren(n,s),l){case"Symbol(react.fragment)":t=this.mapChildrenToProps(s,t);break;case"link":case"meta":case"noscript":case"script":case"style":r=this.flattenArrayTypeChildren(n,r,f,s);break;default:t=this.mapObjectTypeChildren(n,t,f,s);break}}),this.mapArrayTypeChildrenToProps(r,t)}render(){const{children:e,...t}=this.props;let r={...t},{helmetData:n}=t;if(e&&(r=this.mapChildrenToProps(e,r)),n&&!(n instanceof G)){const s=n;n=new G(s.context,!0),delete r.helmetData}return n?u.createElement(J,{...r,context:n.value}):u.createElement(oe.Consumer,null,s=>u.createElement(J,{...r,context:s}))}},C(U,"defaultProps",{defer:!0,encodeSpecialCharacters:!0,prioritizeSeoTags:!1}),U);const Z=(e,t)=>e?`${e} | ${t}`:t,Qe=({defaultHelmet:e,children:t,helmetPrefix:r})=>{const[n,s]=u.useState([Z(r??"",e)]),a=u.useCallback(i=>{s(d=>[...d,Z(r??"",i)])},[r]),f=u.useCallback(()=>{s(i=>i.length>1?i.slice(0,-1):i)},[s]),l=u.useMemo(()=>n.at(-1)??"",[n]),c=u.useMemo(()=>({addHelmet:a,removeHelmet:f}),[a,f]);return o.jsxRuntimeExports.jsx(o.HelmetContext.Provider,{value:c,children:o.jsxRuntimeExports.jsxs(ae,{children:[o.jsxRuntimeExports.jsx(Ze,{defer:!1,children:o.jsxRuntimeExports.jsx("title",{children:l})}),t]})})},Q=50,Xe=()=>{const{texts:{confirm:e}}=u.useContext(o.LuminusComponentsContext),{onConfirm:t,onCancel:r,text:n,show:s,textSm:a}=o.useConfirm(),f=u.useMemo(()=>a===void 0?n.length>Q:a,[n,a]),l=u.useMemo(()=>n.length>Q,[n]),c=u.useCallback(i=>{if(s)switch(i.key){case"Enter":i.preventDefault(),i.stopPropagation(),t();break;case"Escape":i.preventDefault(),i.stopPropagation(),r();break}},[t,r,s]);return o.useKeyPress(c),o.jsxRuntimeExports.jsxs(o.Modal,{show:s,size:l?void 0:"sm",centered:!0,onHide:r,children:[o.jsxRuntimeExports.jsx(o.Modal.Header,{className:"justify-content-center",children:f?o.jsxRuntimeExports.jsx(o.Typography,{variant:"body",children:n}):o.jsxRuntimeExports.jsx(o.Modal.Title,{children:n})}),o.jsxRuntimeExports.jsx(o.Modal.Body,{children:o.jsxRuntimeExports.jsxs("div",{className:"w-100 d-flex gap-5",children:[o.jsxRuntimeExports.jsx(o.PrimaryButton,{type:"button",variant:"outlined",color:"secondary",className:"w-100",onClick:r,children:e.no}),o.jsxRuntimeExports.jsx(o.PrimaryButton,{type:"button",color:"primary",onClick:t,className:"w-100 ml",children:e.yes})]})})]})};exports.AuthContext=o.AuthContext;exports.DelegationContext=o.DelegationContext;exports.FormDisabledContext=o.FormDisabledContext;exports.HelmetContext=o.HelmetContext;exports.LoadingContext=o.LoadingContext;exports.LuminusComponentsContext=o.LuminusComponentsContext;exports.UserContext=o.UserContext;exports.useFormDisabledContext=o.useFormDisabledContext;exports.FormDisabledProvider=X.FormDisabledProvider;exports.AuthProvider=Se;exports.DelegationProvider=be;exports.HelmetProvider=Qe;exports.LoadingProvider=Ce;exports.LuminusComponentsProvider=Te;exports.UserProvider=Ee;
@@ -1,8 +1,8 @@
1
1
  var Ee = Object.defineProperty;
2
2
  var Oe = (e, t, r) => t in e ? Ee(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r;
3
3
  var S = (e, t, r) => Oe(e, typeof t != "symbol" ? t + "" : t, r);
4
- import { t as F, bA as we, j as f, bB as Ie, P as z, bo as De, bC as de, a1 as A, bh as Pe, Q as q, bD as je, a_ as ke, ai as Le, aC as me, bj as pe, aD as He, aF as j, aE as _e, bE as $e, aW as se, bF as Me, an as he, bG as oe, bH as Re, b0 as Ue, ar as Fe, a3 as Ne } from "./ShortcutLinksContext-NemA5txI.js";
5
- import { bI as Vt, bf as Wt } from "./ShortcutLinksContext-NemA5txI.js";
4
+ import { t as F, bA as we, j as f, bB as Ie, P as z, bo as De, bC as de, a1 as A, bh as Pe, Q as q, bD as je, a_ as ke, ai as Le, aC as me, bj as pe, aD as He, aF as j, aE as _e, bE as $e, aW as se, bF as Me, an as he, bG as oe, bH as Re, b0 as Ue, ar as Fe, a3 as Ne } from "./ShortcutLinksContext-b-GyjKck.js";
5
+ import { bI as Vt, bf as Wt } from "./ShortcutLinksContext-b-GyjKck.js";
6
6
  import O, { useState as x, useCallback as m, useMemo as g, useContext as _, useEffect as P, useRef as ye, Component as te } from "react";
7
7
  import { EventType as J } from "@azure/msal-browser";
8
8
  import { MsalProvider as Ge } from "@azure/msal-react";
@@ -10,9 +10,9 @@ import "react-router-dom";
10
10
  import "react-dom";
11
11
  import "react-hook-form";
12
12
  import "react-flexmonster";
13
- import { L as qe } from "./FormDisabledProvider-wjVU-UDj.js";
14
- import { F as Jt } from "./FormDisabledProvider-wjVU-UDj.js";
15
- import { u as ze } from "./useGetApiData-DiyaoMek.js";
13
+ import { L as qe } from "./FormDisabledProvider-M9P4Qmd7.js";
14
+ import { F as Jt } from "./FormDisabledProvider-M9P4Qmd7.js";
15
+ import { u as ze } from "./useGetApiData-DJmqCWl6.js";
16
16
  import { u as Ke } from "./useLocalStorageState-Bt99kkCr.js";
17
17
  function Be(e) {
18
18
  const t = F(e);
package/dist/hooks.cjs.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./ShortcutLinksContext-DQUAaAAE.cjs"),q=require("./useGetApiData-Du9VtAkX.cjs"),c=require("react"),x=require("./useLocalStorageState-BFc8Gc8H.cjs"),f=require("./useRenderDraggableInPortal-QPCaw-E_.cjs");require("react-router-dom");require("react-dom");require("react-hook-form");require("react-flexmonster");require("@azure/msal-browser");require("@azure/msal-react");const T=r=>{let t="pending",u;const s=r.then(a=>{t="success",u=a},a=>{t="error",u=a});return()=>{switch(t){case"pending":throw s;case"success":return u;case"error":throw u;default:throw new Error("Unknown status")}}};function L(r,t){const u=e.useAxios({silent:!0,differentBaseUrl:t==null?void 0:t.customBaseUrl,customToken:t==null?void 0:t.customToken}),[s,a]=c.useState(null);return c.useEffect(()=>{(async()=>{const n=u.get(r).then(o=>o.data);a(T(n))})()},[u,r]),s}const G=(r,t,u)=>{let s="pending",a;const i=r.then(n=>{s="success",a=n},n=>{const o=n==null?void 0:n.response;(o==null?void 0:o.status)===404&&u?(s="error-404",a=n):(s="error",a=n)});return()=>{switch(s){case"pending":throw i;case"success":return a;case"error":return null;case"error-404":throw new Error("404");default:throw new Error("Unknown status")}}},l={loadOnInit:!0,silent:!1,enabled:!0,nullStateBeforeLoad:!0,nullStateOnFail:!1},B=(r,{loadOnInit:t=l.loadOnInit,enabled:u=l.enabled,silent:s=l.silent,nullStateBeforeLoad:a=l.nullStateBeforeLoad,nullStateOnFail:i=l.nullStateOnFail,customApiUrl:n,customBearerToken:o,dataTransformer:h,errorBoundaryOn404:S}=l)=>{const p=e.useAxios({silent:s,customToken:o,differentBaseUrl:n,noToastOnStatus:S?[404]:void 0}),{startLoading:D,stopLoading:w}=c.useContext(e.LoadingContext),P=c.useRef(0),{isAuthenticated:y}=e.useAuth(),[b,g]=c.useState(null),m=c.useCallback(async(d,A)=>{if(!y()||u===!1)return;!s&&D(`loadData-${r}-${A}`),a&&g(null);const k=p.get(r,{signal:d}).then(C=>h?h(C.data):C.data).finally(()=>!s&&w(`loadData-${r}-${A}`));g(G(k,i??!1,S??!1))},[y,u,s,D,r,a,p,h,w,i,S]);return c.useEffect(()=>{if(t===!1)return;const d=new AbortController;return m(d.signal,++P.current),()=>{d.abort()}},[m,t]),{data:b,setData:g,reloadData:m}};exports.cancelToken=e.cancelToken;exports.useAuth=e.useAuth;exports.useAxios=e.useAxios;exports.useClickOutside=e.useClickOutside;exports.useClipboard=e.useClipboard;exports.useConfirm=e.useConfirm;exports.useFormControlType=e.useFormControlType;exports.useKeyPress=e.useKeyPress;exports.useNotifications=e.useNotifications;exports.usePermissions=e.usePermissions;exports.usePrompt=e.usePrompt;exports.useWindowSize=e.useWindowSize;exports.useZodSchemaTypes=e.useZodSchemaTypes;exports.useGetApiData=q.useGetApiData;exports.useLocalStorageState=x.useLocalStorageState;exports.useEmployeePhotoPath=f.useEmployeePhotoPath;exports.useRenderDraggableInPortal=f.useRenderDraggableInPortal;exports.useSearchQuery=f.useSearchQuery;exports.useSearchQueryState=f.useSearchQueryState;exports.useGetApiDataBound=B;exports.useGetDataBound=L;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./ShortcutLinksContext-BtI3NfVP.cjs"),q=require("./useGetApiData-2ImsUo6s.cjs"),c=require("react"),x=require("./useLocalStorageState-BFc8Gc8H.cjs"),f=require("./useRenderDraggableInPortal-QPCaw-E_.cjs");require("react-router-dom");require("react-dom");require("react-hook-form");require("react-flexmonster");require("@azure/msal-browser");require("@azure/msal-react");const T=r=>{let t="pending",u;const s=r.then(a=>{t="success",u=a},a=>{t="error",u=a});return()=>{switch(t){case"pending":throw s;case"success":return u;case"error":throw u;default:throw new Error("Unknown status")}}};function L(r,t){const u=e.useAxios({silent:!0,differentBaseUrl:t==null?void 0:t.customBaseUrl,customToken:t==null?void 0:t.customToken}),[s,a]=c.useState(null);return c.useEffect(()=>{(async()=>{const n=u.get(r).then(o=>o.data);a(T(n))})()},[u,r]),s}const G=(r,t,u)=>{let s="pending",a;const i=r.then(n=>{s="success",a=n},n=>{const o=n==null?void 0:n.response;(o==null?void 0:o.status)===404&&u?(s="error-404",a=n):(s="error",a=n)});return()=>{switch(s){case"pending":throw i;case"success":return a;case"error":return null;case"error-404":throw new Error("404");default:throw new Error("Unknown status")}}},l={loadOnInit:!0,silent:!1,enabled:!0,nullStateBeforeLoad:!0,nullStateOnFail:!1},B=(r,{loadOnInit:t=l.loadOnInit,enabled:u=l.enabled,silent:s=l.silent,nullStateBeforeLoad:a=l.nullStateBeforeLoad,nullStateOnFail:i=l.nullStateOnFail,customApiUrl:n,customBearerToken:o,dataTransformer:h,errorBoundaryOn404:S}=l)=>{const p=e.useAxios({silent:s,customToken:o,differentBaseUrl:n,noToastOnStatus:S?[404]:void 0}),{startLoading:D,stopLoading:w}=c.useContext(e.LoadingContext),P=c.useRef(0),{isAuthenticated:y}=e.useAuth(),[b,g]=c.useState(null),m=c.useCallback(async(d,A)=>{if(!y()||u===!1)return;!s&&D(`loadData-${r}-${A}`),a&&g(null);const k=p.get(r,{signal:d}).then(C=>h?h(C.data):C.data).finally(()=>!s&&w(`loadData-${r}-${A}`));g(G(k,i??!1,S??!1))},[y,u,s,D,r,a,p,h,w,i,S]);return c.useEffect(()=>{if(t===!1)return;const d=new AbortController;return m(d.signal,++P.current),()=>{d.abort()}},[m,t]),{data:b,setData:g,reloadData:m}};exports.cancelToken=e.cancelToken;exports.useAuth=e.useAuth;exports.useAxios=e.useAxios;exports.useClickOutside=e.useClickOutside;exports.useClipboard=e.useClipboard;exports.useConfirm=e.useConfirm;exports.useFormControlType=e.useFormControlType;exports.useKeyPress=e.useKeyPress;exports.useNotifications=e.useNotifications;exports.usePermissions=e.usePermissions;exports.usePrompt=e.usePrompt;exports.useWindowSize=e.useWindowSize;exports.useZodSchemaTypes=e.useZodSchemaTypes;exports.useGetApiData=q.useGetApiData;exports.useLocalStorageState=x.useLocalStorageState;exports.useEmployeePhotoPath=f.useEmployeePhotoPath;exports.useRenderDraggableInPortal=f.useRenderDraggableInPortal;exports.useSearchQuery=f.useSearchQuery;exports.useSearchQueryState=f.useSearchQueryState;exports.useGetApiDataBound=B;exports.useGetDataBound=L;
package/dist/hooks.es.js CHANGED
@@ -1,6 +1,6 @@
1
- import { ai as S, a_ as L, aD as P } from "./ShortcutLinksContext-NemA5txI.js";
2
- import { bJ as _, af as j, bL as q, b0 as H, bK as M, ar as V, a$ as X, bd as Y, bo as ee, a4 as te, bi as se } from "./ShortcutLinksContext-NemA5txI.js";
3
- import { u as oe } from "./useGetApiData-DiyaoMek.js";
1
+ import { ai as S, a_ as L, aD as P } from "./ShortcutLinksContext-b-GyjKck.js";
2
+ import { bJ as _, af as j, bL as q, b0 as H, bK as M, ar as V, a$ as X, bd as Y, bo as ee, a4 as te, bi as se } from "./ShortcutLinksContext-b-GyjKck.js";
3
+ import { u as oe } from "./useGetApiData-DJmqCWl6.js";
4
4
  import { useState as x, useEffect as C, useContext as $, useRef as T, useCallback as U } from "react";
5
5
  import { u as ne } from "./useLocalStorageState-Bt99kkCr.js";
6
6
  import { c as ce, u as le, a as ie, b as fe } from "./useRenderDraggableInPortal-D0OLp7Qb.js";
@@ -1,4 +1,4 @@
1
1
  import { default as PageContainerProps } from '../../models/prop-types/PageContainerProps';
2
2
 
3
- declare const PageContainer: ({ title, children, sideContent, sideContentWidth: sideContentWidthProp, noPadding, className, variant, helmet, unavailableOnMobile, }: PageContainerProps) => import("react").JSX.Element;
3
+ declare const PageContainer: ({ title, children, sideContent, sideContentWidth: sideContentWidthProp, sideContentResizeable, noPadding, className, variant, helmet, unavailableOnMobile, }: PageContainerProps) => import("react").JSX.Element;
4
4
  export default PageContainer;
@@ -4,7 +4,8 @@ type Props = {
4
4
  width: number;
5
5
  children?: ReactNode;
6
6
  isExpandedOnMobileState: [boolean, Dispatch<SetStateAction<boolean>>];
7
+ resizeable?: boolean;
7
8
  onResize: (amount: number) => void;
8
9
  };
9
- declare const SideContentBar: ({ width, children, isExpandedOnMobileState: [isExpandedOnMobile, setIsExpandedOnMobile], onResize, }: Props) => import("react").JSX.Element;
10
+ declare const SideContentBar: ({ width, children, isExpandedOnMobileState: [isExpandedOnMobile, setIsExpandedOnMobile], resizeable, onResize, }: Props) => import("react").JSX.Element;
10
11
  export default SideContentBar;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./ShortcutLinksContext-DQUAaAAE.cjs"),x=require("react"),g=require("react-router-dom");require("react-hook-form");require("react-flexmonster");require("@azure/msal-browser");require("@azure/msal-react");require("react-dom");const B="_side-menu-item_o72rm_1",P="_disabled_o72rm_6",f="_hidden_o72rm_10",w="_nav-button_o72rm_13",S="_child_o72rm_21",I="_text_o72rm_26",L="_icon_o72rm_36",T="_collapse-icon_o72rm_42",O="_collapsed_o72rm_52",$="_collapse-icon-mini_o72rm_55",A="_expanded_o72rm_86",K="_children-container_o72rm_92",D="_visible_o72rm_100",F="_children_o72rm_92",z="_mobile_o72rm_112",n={"side-menu-item":"_side-menu-item_o72rm_1",sideMenuItem:B,disabled:P,hidden:f,"nav-button":"_nav-button_o72rm_13",navButton:w,child:S,text:I,icon:L,"collapse-icon":"_collapse-icon_o72rm_42",collapseIcon:T,collapsed:O,"collapse-icon-mini":"_collapse-icon-mini_o72rm_55",collapseIconMini:$,expanded:A,"children-container":"_children-container_o72rm_92",childrenContainer:K,visible:D,children:F,mobile:z},U=({item:s,menuExpanded:i,useTooltips:l,children:c})=>s.tooltip&&!i&&l?e.jsxRuntimeExports.jsx(e.SimpleTooltip,{text:s.tooltip,placement:"top",delay:{show:1e3,hide:0},children:e.jsxRuntimeExports.jsx("div",{children:c})}):c,C=({item:s,menuExpanded:i,collapsed:l,onCollapse:c,currentPath:_,useHover:r,useTooltips:p,isMobile:E,disableMode:a})=>{var q,y,v,N;const[M,b]=x.useState(!1),[j]=_.split("?"),R=s.linkTo===j||((q=s.children)==null?void 0:q.some(o=>o.linkTo===j)),m=x.useRef(null);return e.useClickOutside([m],()=>l&&c()),e.jsxRuntimeExports.jsxs("li",{ref:m,className:e.classNames("luminus-side-menu-item",n.sideMenuItem,{[n.mobile]:E},{[n.expanded]:i},{active:M||R},{open:l&&s.children},{[a==="disable"?n.disabled:n.hidden]:s.disabled||s.notPermitted||((y=s.children)==null?void 0:y.every(o=>o.notPermitted||o.disabled))},{[a==="disable"?"disabled":"hidden"]:s.disabled||s.notPermitted||((v=s.children)==null?void 0:v.every(o=>o.notPermitted||o.disabled))}),onMouseEnter:()=>b(!0),onMouseLeave:()=>b(!1),children:[e.jsxRuntimeExports.jsx(U,{item:s,menuExpanded:i,useTooltips:p,children:s.children?e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsxs("button",{type:"button",className:e.classNames("nav-link",n.navButton),onClick:()=>{c()},children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("icon",n.icon),children:s.icon}),!r&&!i&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("collapse-icon-mini rounded",n.collapseIconMini,{[n.collapsed]:l}),children:e.jsxRuntimeExports.jsx(e.MdOutlineKeyboardArrowRight,{})}),i&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("text",n.text,"text-nowrap"),children:s.title}),i&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("collapse-icon",n.collapseIcon,{[n.collapsed]:l}),children:e.jsxRuntimeExports.jsx(e.MdOutlineKeyboardArrowRight,{})})]})}):e.jsxRuntimeExports.jsxs(g.Link,{to:s.disabled||s.notPermitted?"/":s.linkTo??"/",className:e.classNames("nav-link",n.navButton),children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("icon",n.icon),children:s.icon}),i&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("text",n.text,"text-nowrap"),children:s.title})]})}),e.jsxRuntimeExports.jsx("div",{className:e.classNames("children-container",n.childrenContainer,{[n.visible]:l}),children:e.jsxRuntimeExports.jsx("div",{className:e.classNames("shadow rounded children",n.children),children:(N=s.children)==null?void 0:N.map(o=>e.jsxRuntimeExports.jsx(g.Link,{to:o.disabled||o.notPermitted?"/":o.linkTo??"/",className:e.classNames("nav-link child rounded",n.navButton,n.child,{[a==="disable"?n.disabled:n.hidden]:o.disabled||o.notPermitted},{[a==="disable"?"disabled":"hidden"]:o.disabled||o.notPermitted}),onClick:c,children:e.jsxRuntimeExports.jsx("div",{className:e.classNames("text",n.text,"text-nowrap"),children:o.title})},o.linkTo))})})]})},W="_side-menu_1q9oh_1",G="_sidebar-header_1q9oh_15",J="_side-menu-content_1q9oh_22",Q="_expand_1q9oh_27",V="_only-logo_1q9oh_31",X="_mobile_1q9oh_34",Y="_divider_1q9oh_49",u={"side-menu":"_side-menu_1q9oh_1",sideMenu:W,"sidebar-header":"_sidebar-header_1q9oh_15",sidebarHeader:G,"side-menu-content":"_side-menu-content_1q9oh_22",sideMenuContent:J,expand:Q,"only-logo":"_only-logo_1q9oh_31",onlyLogo:V,mobile:X,divider:Y},Z=({headerItem:s,searchItem:i,shortcutsItem:l,mainItems:c,secondaryItems:_,expanded:r,setExpanded:p,currentPath:E,useHover:a,useTooltips:M,disableMode:b="disable"})=>{const[j,R]=x.useState(-1),{checkUserHasPermissions:m}=e.usePermissions(),q=x.useMemo(()=>c.map(t=>{var d;return{...t,notPermitted:!m(t.permissions??[],"any"),children:(d=t.children)==null?void 0:d.map(h=>({...h,notPermitted:!m(h.permissions??[],"any"),disabled:t.disabled||h.disabled}))}}),[c,m]),y=x.useMemo(()=>_.map(t=>{var d;return{...t,notPermitted:!m(t.permissions??[],"any"),children:(d=t.children)==null?void 0:d.map(h=>({...h,notPermitted:!m(h.permissions??[],"any")}))}}),[_,m]),v=t=>{R(t===j?-1:t)};x.useEffect(()=>{r||R(-1)},[r]);const N=x.useRef(null);e.useClickOutside([N],()=>p(!1));const{isMobile:o}=e.useWindowSize();return e.jsxRuntimeExports.jsxs("section",{ref:N,className:e.classNames("luminus-side-menu shadow",u.sideMenu,{[u.mobile]:o},{[u.expand]:r},{expand:r}),onMouseEnter:()=>a&&p(!0),onMouseLeave:()=>a&&p(!1),children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("sidebar-header",u.sidebarHeader,{[u.onlyLogo]:a}),role:a?void 0:"button",onClick:a?void 0:()=>p(!r),children:a?s:r?e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(e.MdOutlineKeyboardDoubleArrowLeft,{}),s]}):e.jsxRuntimeExports.jsx(e.MdOutlineMenu,{})}),r&&(i||l)?e.jsxRuntimeExports.jsxs("div",{className:"mb-3 d-flex flex-column gap-3",children:[l&&r?l:null,i&&r?i:null]}):null,e.jsxRuntimeExports.jsxs("ul",{className:u.sideMenuContent,children:[q.map((t,d)=>e.jsxRuntimeExports.jsx(C,{item:t,menuExpanded:r,collapsed:d===j,onCollapse:()=>v(d),currentPath:E,useHover:a,useTooltips:M,isMobile:o,disableMode:b},t.title)),e.jsxRuntimeExports.jsx("hr",{className:e.classNames("divider",u.divider)}),y.map((t,d)=>e.jsxRuntimeExports.jsx(C,{item:t,menuExpanded:r,collapsed:d===j,onCollapse:()=>v(d),currentPath:E,useHover:a,useTooltips:M,isMobile:o,disableMode:b},t.title))]})]})},H="_top-bar_lnmq0_1",ee="_top-bar-brand_lnmq0_12",k={"top-bar":"_top-bar_lnmq0_1",topBar:H,"top-bar-brand":"_top-bar-brand_lnmq0_12",topBarBrand:ee},se=({appName:s,leftOffset:i,leftContent:l,centerContent:c,rightContent:_})=>e.jsxRuntimeExports.jsx("nav",{className:e.classNames("luminus-top-bar shadow",k.topBar),style:{width:i?`calc(100% - ${i}px)`:void 0,left:i?`${i}px`:void 0},children:e.jsxRuntimeExports.jsxs("div",{className:"w-100 row g-0",children:[e.jsxRuntimeExports.jsxs("div",{className:"col-4 d-flex gap-3 align-items-center",children:[e.jsxRuntimeExports.jsx(g.Link,{to:"/",className:e.classNames("luminus-top-bar-brand",k.topBarBrand),children:s}),l]}),e.jsxRuntimeExports.jsx("div",{className:"col-4 d-flex align-items-center",children:c??null}),e.jsxRuntimeExports.jsx("div",{className:"col-4 d-flex justify-content-end align-items-center",children:_??null})]})});exports.PageContainer=e.PageContainer;exports.SideContentBar=e.SideContentBar;exports.SideMenu=Z;exports.TopBar=se;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./ShortcutLinksContext-BtI3NfVP.cjs"),x=require("react"),g=require("react-router-dom");require("react-hook-form");require("react-flexmonster");require("@azure/msal-browser");require("@azure/msal-react");require("react-dom");const B="_side-menu-item_o72rm_1",P="_disabled_o72rm_6",f="_hidden_o72rm_10",w="_nav-button_o72rm_13",S="_child_o72rm_21",I="_text_o72rm_26",L="_icon_o72rm_36",T="_collapse-icon_o72rm_42",O="_collapsed_o72rm_52",$="_collapse-icon-mini_o72rm_55",A="_expanded_o72rm_86",K="_children-container_o72rm_92",D="_visible_o72rm_100",F="_children_o72rm_92",z="_mobile_o72rm_112",n={"side-menu-item":"_side-menu-item_o72rm_1",sideMenuItem:B,disabled:P,hidden:f,"nav-button":"_nav-button_o72rm_13",navButton:w,child:S,text:I,icon:L,"collapse-icon":"_collapse-icon_o72rm_42",collapseIcon:T,collapsed:O,"collapse-icon-mini":"_collapse-icon-mini_o72rm_55",collapseIconMini:$,expanded:A,"children-container":"_children-container_o72rm_92",childrenContainer:K,visible:D,children:F,mobile:z},U=({item:s,menuExpanded:i,useTooltips:l,children:c})=>s.tooltip&&!i&&l?e.jsxRuntimeExports.jsx(e.SimpleTooltip,{text:s.tooltip,placement:"top",delay:{show:1e3,hide:0},children:e.jsxRuntimeExports.jsx("div",{children:c})}):c,C=({item:s,menuExpanded:i,collapsed:l,onCollapse:c,currentPath:_,useHover:r,useTooltips:p,isMobile:E,disableMode:a})=>{var q,y,v,N;const[M,b]=x.useState(!1),[j]=_.split("?"),R=s.linkTo===j||((q=s.children)==null?void 0:q.some(o=>o.linkTo===j)),m=x.useRef(null);return e.useClickOutside([m],()=>l&&c()),e.jsxRuntimeExports.jsxs("li",{ref:m,className:e.classNames("luminus-side-menu-item",n.sideMenuItem,{[n.mobile]:E},{[n.expanded]:i},{active:M||R},{open:l&&s.children},{[a==="disable"?n.disabled:n.hidden]:s.disabled||s.notPermitted||((y=s.children)==null?void 0:y.every(o=>o.notPermitted||o.disabled))},{[a==="disable"?"disabled":"hidden"]:s.disabled||s.notPermitted||((v=s.children)==null?void 0:v.every(o=>o.notPermitted||o.disabled))}),onMouseEnter:()=>b(!0),onMouseLeave:()=>b(!1),children:[e.jsxRuntimeExports.jsx(U,{item:s,menuExpanded:i,useTooltips:p,children:s.children?e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsxs("button",{type:"button",className:e.classNames("nav-link",n.navButton),onClick:()=>{c()},children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("icon",n.icon),children:s.icon}),!r&&!i&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("collapse-icon-mini rounded",n.collapseIconMini,{[n.collapsed]:l}),children:e.jsxRuntimeExports.jsx(e.MdOutlineKeyboardArrowRight,{})}),i&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("text",n.text,"text-nowrap"),children:s.title}),i&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("collapse-icon",n.collapseIcon,{[n.collapsed]:l}),children:e.jsxRuntimeExports.jsx(e.MdOutlineKeyboardArrowRight,{})})]})}):e.jsxRuntimeExports.jsxs(g.Link,{to:s.disabled||s.notPermitted?"/":s.linkTo??"/",className:e.classNames("nav-link",n.navButton),children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("icon",n.icon),children:s.icon}),i&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("text",n.text,"text-nowrap"),children:s.title})]})}),e.jsxRuntimeExports.jsx("div",{className:e.classNames("children-container",n.childrenContainer,{[n.visible]:l}),children:e.jsxRuntimeExports.jsx("div",{className:e.classNames("shadow rounded children",n.children),children:(N=s.children)==null?void 0:N.map(o=>e.jsxRuntimeExports.jsx(g.Link,{to:o.disabled||o.notPermitted?"/":o.linkTo??"/",className:e.classNames("nav-link child rounded",n.navButton,n.child,{[a==="disable"?n.disabled:n.hidden]:o.disabled||o.notPermitted},{[a==="disable"?"disabled":"hidden"]:o.disabled||o.notPermitted}),onClick:c,children:e.jsxRuntimeExports.jsx("div",{className:e.classNames("text",n.text,"text-nowrap"),children:o.title})},o.linkTo))})})]})},W="_side-menu_1q9oh_1",G="_sidebar-header_1q9oh_15",J="_side-menu-content_1q9oh_22",Q="_expand_1q9oh_27",V="_only-logo_1q9oh_31",X="_mobile_1q9oh_34",Y="_divider_1q9oh_49",u={"side-menu":"_side-menu_1q9oh_1",sideMenu:W,"sidebar-header":"_sidebar-header_1q9oh_15",sidebarHeader:G,"side-menu-content":"_side-menu-content_1q9oh_22",sideMenuContent:J,expand:Q,"only-logo":"_only-logo_1q9oh_31",onlyLogo:V,mobile:X,divider:Y},Z=({headerItem:s,searchItem:i,shortcutsItem:l,mainItems:c,secondaryItems:_,expanded:r,setExpanded:p,currentPath:E,useHover:a,useTooltips:M,disableMode:b="disable"})=>{const[j,R]=x.useState(-1),{checkUserHasPermissions:m}=e.usePermissions(),q=x.useMemo(()=>c.map(t=>{var d;return{...t,notPermitted:!m(t.permissions??[],"any"),children:(d=t.children)==null?void 0:d.map(h=>({...h,notPermitted:!m(h.permissions??[],"any"),disabled:t.disabled||h.disabled}))}}),[c,m]),y=x.useMemo(()=>_.map(t=>{var d;return{...t,notPermitted:!m(t.permissions??[],"any"),children:(d=t.children)==null?void 0:d.map(h=>({...h,notPermitted:!m(h.permissions??[],"any")}))}}),[_,m]),v=t=>{R(t===j?-1:t)};x.useEffect(()=>{r||R(-1)},[r]);const N=x.useRef(null);e.useClickOutside([N],()=>p(!1));const{isMobile:o}=e.useWindowSize();return e.jsxRuntimeExports.jsxs("section",{ref:N,className:e.classNames("luminus-side-menu shadow",u.sideMenu,{[u.mobile]:o},{[u.expand]:r},{expand:r}),onMouseEnter:()=>a&&p(!0),onMouseLeave:()=>a&&p(!1),children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("sidebar-header",u.sidebarHeader,{[u.onlyLogo]:a}),role:a?void 0:"button",onClick:a?void 0:()=>p(!r),children:a?s:r?e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(e.MdOutlineKeyboardDoubleArrowLeft,{}),s]}):e.jsxRuntimeExports.jsx(e.MdOutlineMenu,{})}),r&&(i||l)?e.jsxRuntimeExports.jsxs("div",{className:"mb-3 d-flex flex-column gap-3",children:[l&&r?l:null,i&&r?i:null]}):null,e.jsxRuntimeExports.jsxs("ul",{className:u.sideMenuContent,children:[q.map((t,d)=>e.jsxRuntimeExports.jsx(C,{item:t,menuExpanded:r,collapsed:d===j,onCollapse:()=>v(d),currentPath:E,useHover:a,useTooltips:M,isMobile:o,disableMode:b},t.title)),e.jsxRuntimeExports.jsx("hr",{className:e.classNames("divider",u.divider)}),y.map((t,d)=>e.jsxRuntimeExports.jsx(C,{item:t,menuExpanded:r,collapsed:d===j,onCollapse:()=>v(d),currentPath:E,useHover:a,useTooltips:M,isMobile:o,disableMode:b},t.title))]})]})},H="_top-bar_lnmq0_1",ee="_top-bar-brand_lnmq0_12",k={"top-bar":"_top-bar_lnmq0_1",topBar:H,"top-bar-brand":"_top-bar-brand_lnmq0_12",topBarBrand:ee},se=({appName:s,leftOffset:i,leftContent:l,centerContent:c,rightContent:_})=>e.jsxRuntimeExports.jsx("nav",{className:e.classNames("luminus-top-bar shadow",k.topBar),style:{width:i?`calc(100% - ${i}px)`:void 0,left:i?`${i}px`:void 0},children:e.jsxRuntimeExports.jsxs("div",{className:"w-100 row g-0",children:[e.jsxRuntimeExports.jsxs("div",{className:"col-4 d-flex gap-3 align-items-center",children:[e.jsxRuntimeExports.jsx(g.Link,{to:"/",className:e.classNames("luminus-top-bar-brand",k.topBarBrand),children:s}),l]}),e.jsxRuntimeExports.jsx("div",{className:"col-4 d-flex align-items-center",children:c??null}),e.jsxRuntimeExports.jsx("div",{className:"col-4 d-flex justify-content-end align-items-center",children:_??null})]})});exports.PageContainer=e.PageContainer;exports.SideContentBar=e.SideContentBar;exports.SideMenu=Z;exports.TopBar=se;
package/dist/layout.es.js CHANGED
@@ -1,5 +1,5 @@
1
- import { af as I, j as e, c as i, Z as C, aA as R, bd as S, a4 as $, bx as A, by as z } from "./ShortcutLinksContext-NemA5txI.js";
2
- import { bb as fe, bz as ge } from "./ShortcutLinksContext-NemA5txI.js";
1
+ import { af as I, j as e, c as i, Z as C, aA as R, bd as S, a4 as $, bx as A, by as z } from "./ShortcutLinksContext-b-GyjKck.js";
2
+ import { bb as fe, bz as ge } from "./ShortcutLinksContext-b-GyjKck.js";
3
3
  import { useState as L, useRef as T, useMemo as k, useEffect as F } from "react";
4
4
  import { Link as q } from "react-router-dom";
5
5
  import "react-hook-form";