react-luminus-components 1.3.203 → 1.3.204

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/dist/.vite/manifest.json +58 -58
  2. package/dist/{Loading-CgVipx1p.cjs → Loading-74l0p5M0.cjs} +1 -1
  3. package/dist/{Loading-xjqgdxQw.js → Loading-CTiNUYCJ.js} +1 -1
  4. package/dist/{ShortcutLinksContext-CtT9qbGN.cjs → ShortcutLinksContext-D6SOjqrB.cjs} +23 -23
  5. package/dist/{ShortcutLinksContext-CDA4_y4H.js → ShortcutLinksContext-DjWgKFrF.js} +102 -98
  6. package/dist/components/common/PhotoLibrary/PhotoLibrary.d.ts +2 -1
  7. package/dist/components/common/PhotoLightbox/PhotoLightbox.d.ts +2 -1
  8. package/dist/components/common/StrictModeDroppable/StrictModeDroppable.d.ts +5 -0
  9. package/dist/components/common/index.d.ts +1 -0
  10. package/dist/contexts.cjs.js +1 -1
  11. package/dist/contexts.es.js +57 -56
  12. package/dist/hooks/index.d.ts +1 -0
  13. package/dist/hooks/useRenderDraggableInPortal/useRenderDraggableInPortal.d.ts +2 -0
  14. package/dist/hooks.cjs.js +1 -1
  15. package/dist/hooks.es.js +62 -60
  16. package/dist/layout.cjs.js +1 -1
  17. package/dist/layout.es.js +10 -9
  18. package/dist/main.cjs.js +184 -7
  19. package/dist/main.es.js +9314 -3070
  20. package/dist/models/types/PhotoAction.d.ts +1 -1
  21. package/dist/{searchUtils-B6MFKz3h.cjs → searchUtils-D1Q5ffaA.cjs} +1 -1
  22. package/dist/{searchUtils-CmuWMIMp.js → searchUtils-Dn39KADP.js} +1 -1
  23. package/dist/style.css +1 -1
  24. package/dist/useGetApiData-BiGeqiNF.cjs +1 -0
  25. package/dist/{useGetApiData-yPRYMljx.js → useGetApiData-Dng3v-c1.js} +14 -13
  26. package/dist/{usePermissions-BJHLPP0j.js → usePermissions-DH1EcMcR.js} +4 -3
  27. package/dist/usePermissions-DpJaM3Pd.cjs +1 -0
  28. package/dist/useRenderDraggableInPortal-DIQFNh3P.cjs +1 -0
  29. package/dist/useRenderDraggableInPortal-DhdgZl3K.js +99 -0
  30. package/dist/utils.cjs.js +1 -1
  31. package/dist/utils.es.js +52 -51
  32. package/package.json +4 -1
  33. package/dist/useClipboard-B6o3_c4j.js +0 -86
  34. package/dist/useClipboard-BDAZwNR9.cjs +0 -1
  35. package/dist/useGetApiData-CRj_Oj2M.cjs +0 -1
  36. package/dist/usePermissions-BND9X9_G.cjs +0 -1
@@ -1,15 +1,16 @@
1
1
  var Se = Object.defineProperty;
2
- var Ee = (e, t, r) => t in e ? Se(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r;
3
- var A = (e, t, r) => Ee(e, typeof t != "symbol" ? t + "" : t, r);
4
- import { t as N, bl as Oe, j as f, bm as we, $ as z, b6 as Ie, bn as fe, ad as S, b5 as je, a0 as G, bo as De, aV as Pe, au as ke, aC as de, bp as me, aD as Le, aF as P, aE as He, bq as $e, aT as se, br as _e, bs as pe, bt as oe, bu as Me, aX as Re } from "./ShortcutLinksContext-CDA4_y4H.js";
5
- import O, { useState as C, useCallback as p, useMemo as b, useContext as $, useEffect as D, useRef as he, Component as te } from "react";
2
+ var Oe = (e, t, r) => t in e ? Se(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r;
3
+ var A = (e, t, r) => Oe(e, typeof t != "symbol" ? t + "" : t, r);
4
+ import { t as N, bq as Ee, j as f, br as we, $ as z, bb as Ie, bs as fe, ad as S, ba as je, a0 as G, bt as Pe, a_ as De, au as ke, aH as de, bu as me, aI as Le, aK as D, aJ as He, bv as _e, aY as se, bw as $e, ay as pe, bx as oe, by as Me, b0 as Re } from "./ShortcutLinksContext-DjWgKFrF.js";
5
+ import E, { useState as C, useCallback as p, useMemo as b, useContext as _, useEffect as P, useRef as he, Component as te } from "react";
6
6
  import { EventType as W } from "@azure/msal-browser";
7
7
  import { MsalProvider as Ue } from "@azure/msal-react";
8
8
  import "react-router-dom";
9
+ import "react-dom";
9
10
  import "react-hook-form";
10
11
  import "react-flexmonster";
11
- import { L as Ne } from "./Loading-xjqgdxQw.js";
12
- import { u as Fe } from "./useGetApiData-yPRYMljx.js";
12
+ import { L as Ne } from "./Loading-CTiNUYCJ.js";
13
+ import { u as Fe } from "./useGetApiData-Dng3v-c1.js";
13
14
  import { u as qe } from "./useLocalStorageState-Bt99kkCr.js";
14
15
  function Ge(e) {
15
16
  const t = N(e);
@@ -26,7 +27,7 @@ function Ke(e, t) {
26
27
  return r >= n && r <= s;
27
28
  }
28
29
  function Ve() {
29
- return Oe(Date.now());
30
+ return Ee(Date.now());
30
31
  }
31
32
  const Be = ({ children: e }) => {
32
33
  const [t, r] = C(!1), [n, s] = C(""), o = p((c) => {
@@ -39,12 +40,12 @@ const Be = ({ children: e }) => {
39
40
  e
40
41
  ] });
41
42
  }, Ye = () => {
42
- const { texts: { confirm: e } } = $(z), { isShown: t, text: r, onFinish: n } = Ie(), { options: s } = $(fe), [o, l] = C(s.defaultValue ?? ""), a = p(() => {
43
+ const { texts: { confirm: e } } = _(z), { isShown: t, text: r, onFinish: n } = Ie(), { options: s } = _(fe), [o, l] = C(s.defaultValue ?? ""), a = p(() => {
43
44
  n(null);
44
45
  }, [n]), c = p((u) => {
45
46
  u.preventDefault(), !(s.required && !o) && n(o);
46
47
  }, [n, s.required, o]);
47
- D(() => {
48
+ P(() => {
48
49
  t === !0 && l(s.defaultValue ?? "");
49
50
  }, [t, s.defaultValue]);
50
51
  const i = b(() => ({
@@ -105,34 +106,34 @@ const Be = ({ children: e }) => {
105
106
  l
106
107
  ]);
107
108
  return /* @__PURE__ */ f.jsx(z.Provider, { value: c, children: /* @__PURE__ */ f.jsx(Be, { children: /* @__PURE__ */ f.jsxs(Je, { children: [
108
- /* @__PURE__ */ f.jsx(De, {}),
109
+ /* @__PURE__ */ f.jsx(Pe, {}),
109
110
  a
110
111
  ] }) }) });
111
- }, _t = ({ children: e }) => {
112
+ }, Mt = ({ children: e }) => {
112
113
  const [t, r] = C(!1), [n] = C(/* @__PURE__ */ new Set()), s = p((a) => {
113
114
  n.add(a), r(!0);
114
115
  }, [n]), o = p((a) => {
115
116
  n.delete(a), n.size === 0 && r(!1);
116
117
  }, [n]), l = b(() => ({ isLoading: t, startLoading: s, stopLoading: o }), [t, s, o]);
117
- return /* @__PURE__ */ f.jsxs(Pe.Provider, { value: l, children: [
118
+ return /* @__PURE__ */ f.jsxs(De.Provider, { value: l, children: [
118
119
  t && /* @__PURE__ */ f.jsx(Ne, {}),
119
120
  e
120
121
  ] });
121
- }, Mt = ({ children: e }) => {
122
- const t = ke(), { msalInstance: r } = $(de), { delegation: n, setDelegation: s, setAvailableDelegations: o, refreshAvailableDelegations: l } = $(me), { getToken: a } = Le(), [c, i] = C(null), u = p(async () => {
122
+ }, Rt = ({ children: e }) => {
123
+ const t = ke(), { msalInstance: r } = _(de), { delegation: n, setDelegation: s, setAvailableDelegations: o, refreshAvailableDelegations: l } = _(me), { getToken: a } = Le(), [c, i] = C(null), u = p(async () => {
123
124
  const y = await a();
124
125
  y && i(y.token);
125
126
  }, [a]);
126
- D(() => {
127
+ P(() => {
127
128
  u();
128
129
  }, [u]);
129
130
  const h = p(() => {
130
131
  const y = localStorage.getItem("user") ?? null;
131
132
  return y ? JSON.parse(y ?? "") : null;
132
133
  }, [])(), [m, g] = C({
133
- state: h ? P.LOGGED_IN : P.LOGGING_IN,
134
+ state: h ? D.LOGGED_IN : D.LOGGING_IN,
134
135
  user: h
135
- }), _ = p(async (y) => {
136
+ }), $ = p(async (y) => {
136
137
  let v = null;
137
138
  return await t.get("/user/detail", y ? { headers: { Authorization: `Bearer ${y}` } } : void 0).then((K) => {
138
139
  v = K.data;
@@ -141,26 +142,26 @@ const Be = ({ children: e }) => {
141
142
  }), v;
142
143
  }, [t]), w = p(() => {
143
144
  localStorage.removeItem("user"), g({
144
- state: P.LOGGED_OUT,
145
+ state: D.LOGGED_OUT,
145
146
  user: null
146
147
  }), s(null), o(null);
147
- }, [o, s]), E = p(async (y) => {
148
+ }, [o, s]), O = p(async (y) => {
148
149
  g({
149
- state: P.LOGGING_IN,
150
+ state: D.LOGGING_IN,
150
151
  user: null
151
152
  });
152
- const v = await _(y);
153
+ const v = await $(y);
153
154
  return v ? (g({
154
- state: P.LOGGED_IN,
155
+ state: D.LOGGED_IN,
155
156
  user: v
156
157
  }), localStorage.setItem("user", JSON.stringify(v)), await l(), !0) : (g({
157
- state: P.LOGIN_FAILED,
158
+ state: D.LOGIN_FAILED,
158
159
  user: null
159
160
  }), !1);
160
- }, [_, l]), I = p(() => {
161
+ }, [$, l]), I = p(() => {
161
162
  w();
162
163
  }, [w]);
163
- D(() => {
164
+ P(() => {
164
165
  if (r) {
165
166
  const y = r.addEventCallback((v) => {
166
167
  if (v.eventType === W.LOGIN_SUCCESS && v.payload) {
@@ -174,30 +175,30 @@ const Be = ({ children: e }) => {
174
175
  }
175
176
  return () => {
176
177
  };
177
- }, [r, E, I]);
178
+ }, [r, O, I]);
178
179
  const ne = p(async (y) => {
179
- y && await E(y).catch(() => {
180
+ y && await O(y).catch(() => {
180
181
  I(), s(null);
181
182
  });
182
- }, [E, I, s]);
183
- D(() => {
183
+ }, [O, I, s]);
184
+ P(() => {
184
185
  ne(c);
185
186
  }, [c, n == null ? void 0 : n.id, ne]);
186
187
  const Ae = b(() => ({
187
188
  user: m.user,
188
189
  userLoginState: m,
189
- loginUser: E,
190
+ loginUser: O,
190
191
  logoutUser: I
191
- }), [m, E, I]);
192
+ }), [m, O, I]);
192
193
  return /* @__PURE__ */ f.jsx(He.Provider, { value: Ae, children: e });
193
- }, Rt = ({ ...e }) => {
194
- const { cookieDomain: t } = $(z), [, r] = $e(["Authorization"]), n = b(() => ({
194
+ }, Ut = ({ ...e }) => {
195
+ const { cookieDomain: t } = _(z), [, r] = _e(["Authorization"]), n = b(() => ({
195
196
  useMsal: e.useMsal ?? !1,
196
197
  msalInstance: e.useMsal ? e.msalInstance ?? null : null,
197
198
  msalScopes: e.useMsal ? e.msalScopes ?? [] : [],
198
199
  msalExtraScopes: e.useMsal ? e.msalExtraScopes ?? [] : []
199
200
  }), [e]);
200
- return D(() => {
201
+ return P(() => {
201
202
  if (e.useMsal) {
202
203
  const s = e.msalInstance.addEventCallback((o) => {
203
204
  if (o.eventType === W.LOGIN_SUCCESS || o.eventType === W.ACQUIRE_TOKEN_SUCCESS && o.payload) {
@@ -221,7 +222,7 @@ const Be = ({ children: e }) => {
221
222
  return () => {
222
223
  };
223
224
  }, [e, r, t]), /* @__PURE__ */ f.jsx(de.Provider, { value: n, children: e.useMsal ? /* @__PURE__ */ f.jsx(Ue, { instance: e.msalInstance, children: e.children }) : e.children });
224
- }, Ut = ({ children: e, relativeEndpoint: t }) => {
225
+ }, Nt = ({ children: e, relativeEndpoint: t }) => {
225
226
  const [r, n, s] = qe("user-delegation", null), o = b(() => {
226
227
  if (!r)
227
228
  return null;
@@ -231,14 +232,14 @@ const Be = ({ children: e }) => {
231
232
  nullStateBeforeLoad: !1,
232
233
  nullStateOnFail: !0
233
234
  }), i = he(null);
234
- D(() => {
235
+ P(() => {
235
236
  const d = () => {
236
- c(), i.current = window.setTimeout(d, _e() + 5e3);
237
+ c(), i.current = window.setTimeout(d, $e() + 5e3);
237
238
  };
238
239
  return d(), () => {
239
240
  i.current !== null && window.clearTimeout(i.current);
240
241
  };
241
- }, [c]), D(() => {
242
+ }, [c]), P(() => {
242
243
  const d = () => {
243
244
  s();
244
245
  };
@@ -541,7 +542,7 @@ var ye = /* @__PURE__ */ ((e) => (e.BASE = "base", e.BODY = "body", e.HEAD = "he
541
542
  key: t,
542
543
  [x]: !0
543
544
  }, s = ve(r, n);
544
- return [O.createElement("title", s, t)];
545
+ return [E.createElement("title", s, t)];
545
546
  }, q = (e, t) => t.map((r, n) => {
546
547
  const s = {
547
548
  key: n,
@@ -554,7 +555,7 @@ var ye = /* @__PURE__ */ ((e) => (e.BASE = "base", e.BODY = "body", e.HEAD = "he
554
555
  s.dangerouslySetInnerHTML = { __html: c };
555
556
  } else
556
557
  s[a] = r[o];
557
- }), O.createElement(e, s);
558
+ }), E.createElement(e, s);
558
559
  }), T = (e, t, r = !0) => {
559
560
  switch (e) {
560
561
  case "title":
@@ -659,14 +660,14 @@ var ye = /* @__PURE__ */ ((e) => (e.BASE = "base", e.BODY = "body", e.HEAD = "he
659
660
  titleAttributes: {}
660
661
  }));
661
662
  }
662
- }, Tt = {}, Ce = O.createContext(Tt), j, be = (j = class extends te {
663
+ }, Tt = {}, Ce = E.createContext(Tt), j, be = (j = class extends te {
663
664
  constructor(r) {
664
665
  super(r);
665
666
  A(this, "helmetData");
666
667
  this.helmetData = new X(this.props.context || {}, j.canUseDOM);
667
668
  }
668
669
  render() {
669
- return /* @__PURE__ */ O.createElement(Ce.Provider, { value: this.helmetData.value }, this.props.children);
670
+ return /* @__PURE__ */ E.createElement(Ce.Provider, { value: this.helmetData.value }, this.props.children);
670
671
  }
671
672
  }, A(j, "canUseDOM", xe), j), k = (e, t) => {
672
673
  const r = document.head || document.querySelector(
@@ -732,11 +733,11 @@ var ye = /* @__PURE__ */ ((e) => (e.BASE = "base", e.BODY = "body", e.HEAD = "he
732
733
  noscriptTags: k("noscript", a),
733
734
  scriptTags: k("script", i),
734
735
  styleTags: k("style", u)
735
- }, g = {}, _ = {};
736
+ }, g = {}, $ = {};
736
737
  Object.keys(m).forEach((w) => {
737
- const { newTags: E, oldTags: I } = m[w];
738
- E.length && (g[w] = E), I.length && (_[w] = m[w].oldTags);
739
- }), t && t(), c(e, g, _);
738
+ const { newTags: O, oldTags: I } = m[w];
739
+ O.length && (g[w] = O), I.length && ($[w] = m[w].oldTags);
740
+ }), t && t(), c(e, g, $);
740
741
  }, R = null, xt = (e) => {
741
742
  R && cancelAnimationFrame(R), e.defer ? R = requestAnimationFrame(() => {
742
743
  le(e, () => {
@@ -864,7 +865,7 @@ var ye = /* @__PURE__ */ ((e) => (e.BASE = "base", e.BODY = "body", e.HEAD = "he
864
865
  }
865
866
  mapChildrenToProps(e, t) {
866
867
  let r = {};
867
- return O.Children.forEach(e, (n) => {
868
+ return E.Children.forEach(e, (n) => {
868
869
  if (!n || !n.props)
869
870
  return;
870
871
  const { children: s, ...o } = n.props, l = Object.keys(o).reduce((c, i) => (c[st[i] || i] = o[i], c), {});
@@ -898,14 +899,14 @@ var ye = /* @__PURE__ */ ((e) => (e.BASE = "base", e.BODY = "body", e.HEAD = "he
898
899
  const s = n;
899
900
  n = new X(s.context, !0), delete r.helmetData;
900
901
  }
901
- return n ? /* @__PURE__ */ O.createElement(ce, { ...r, context: n.value }) : /* @__PURE__ */ O.createElement(Ce.Consumer, null, (s) => /* @__PURE__ */ O.createElement(ce, { ...r, context: s }));
902
+ return n ? /* @__PURE__ */ E.createElement(ce, { ...r, context: n.value }) : /* @__PURE__ */ E.createElement(Ce.Consumer, null, (s) => /* @__PURE__ */ E.createElement(ce, { ...r, context: s }));
902
903
  }
903
904
  }, A(J, "defaultProps", {
904
905
  defer: !0,
905
906
  encodeSpecialCharacters: !0,
906
907
  prioritizeSeoTags: !1
907
908
  }), J);
908
- const ue = (e, t) => e ? `${e} | ${t}` : t, Nt = ({ defaultHelmet: e, children: t, helmetPrefix: r }) => {
909
+ const ue = (e, t) => e ? `${e} | ${t}` : t, Ft = ({ defaultHelmet: e, children: t, helmetPrefix: r }) => {
909
910
  const [n, s] = C([
910
911
  ue(r ?? "", e)
911
912
  ]), o = p((i) => {
@@ -918,7 +919,7 @@ const ue = (e, t) => e ? `${e} | ${t}` : t, Nt = ({ defaultHelmet: e, children:
918
919
  t
919
920
  ] }) });
920
921
  }, At = () => {
921
- const { texts: { confirm: e } } = $(z), { onConfirm: t, onCancel: r, text: n, show: s } = Re();
922
+ const { texts: { confirm: e } } = _(z), { onConfirm: t, onCancel: r, text: n, show: s } = Re();
922
923
  return /* @__PURE__ */ f.jsxs(S, { show: s, size: "sm", centered: !0, onHide: r, children: [
923
924
  /* @__PURE__ */ f.jsx(S.Header, { className: "justify-content-center", children: /* @__PURE__ */ f.jsx(S.Title, { children: n }) }),
924
925
  /* @__PURE__ */ f.jsx(S.Body, { children: /* @__PURE__ */ f.jsxs("div", { className: "w-100 d-flex gap-5", children: [
@@ -929,15 +930,15 @@ const ue = (e, t) => e ? `${e} | ${t}` : t, Nt = ({ defaultHelmet: e, children:
929
930
  };
930
931
  export {
931
932
  de as AuthContext,
932
- Rt as AuthProvider,
933
+ Ut as AuthProvider,
933
934
  me as DelegationContext,
934
- Ut as DelegationProvider,
935
+ Nt as DelegationProvider,
935
936
  Me as HelmetContext,
936
- Nt as HelmetProvider,
937
- Pe as LoadingContext,
938
- _t as LoadingProvider,
937
+ Ft as HelmetProvider,
938
+ De as LoadingContext,
939
+ Mt as LoadingProvider,
939
940
  z as LuminusComponentsContext,
940
941
  $t as LuminusComponentsProvider,
941
942
  He as UserContext,
942
- Mt as UserProvider
943
+ Rt as UserProvider
943
944
  };
@@ -17,3 +17,4 @@ export { default as useEmployeePhotoPath } from './useEmployeePhotoPath/useEmplo
17
17
  export { default as useClipboard } from './useClipboard/useClipboard';
18
18
  export { default as useGetApiDataBound } from './useGetApiDataBound/useGetApiDataBound';
19
19
  export { default as useWindowSize } from './useWindowSize/useWindowSize';
20
+ export { default as useRenderDraggableInPortal } from './useRenderDraggableInPortal/useRenderDraggableInPortal';
@@ -0,0 +1,2 @@
1
+ declare const useRenderDraggableInPortal: () => (render: any) => (provided: any, ...args: any) => any;
2
+ export default useRenderDraggableInPortal;
package/dist/hooks.cjs.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("./ShortcutLinksContext-CtT9qbGN.cjs"),q=require("./useWindowSize-CE6DJWzn.cjs"),x=require("./usePermissions-BND9X9_G.cjs"),d=require("./useClipboard-BDAZwNR9.cjs"),T=require("./useGetApiData-CRj_Oj2M.cjs"),c=require("react"),L=require("./useLocalStorageState-BFc8Gc8H.cjs");require("react-router-dom");require("react-hook-form");require("react-flexmonster");require("@azure/msal-browser");require("@azure/msal-react");const G=r=>{let e="pending",a;const t=r.then(s=>{e="success",a=s},s=>{e="error",a=s});return()=>{switch(e){case"pending":throw t;case"success":return a;case"error":throw a;default:throw new Error("Unknown status")}}};function B(r,e){const a=u.useAxios({silent:!0,differentBaseUrl:e==null?void 0:e.customBaseUrl,customToken:e==null?void 0:e.customToken}),[t,s]=c.useState(null);return c.useEffect(()=>{(async()=>{const n=a.get(r).then(o=>o.data);s(G(n))})()},[a,r]),t}const E=(r,e,a)=>{let t="pending",s;const l=r.then(n=>{t="success",s=n},n=>{const o=n==null?void 0:n.response;(o==null?void 0:o.status)===404&&a?(t="error-404",s=n):(t="error",s=n)});return()=>{switch(t){case"pending":throw l;case"success":return s;case"error":return null;case"error-404":throw new Error("404");default:throw new Error("Unknown status")}}},i={loadOnInit:!0,silent:!1,enabled:!0,nullStateBeforeLoad:!0,nullStateOnFail:!1},O=(r,{loadOnInit:e=i.loadOnInit,enabled:a=i.enabled,silent:t=i.silent,nullStateBeforeLoad:s=i.nullStateBeforeLoad,nullStateOnFail:l=i.nullStateOnFail,customApiUrl:n,customBearerToken:o,dataTransformer:h,errorBoundaryOn404:S}=i)=>{const g=u.useAxios({silent:t,customToken:o,differentBaseUrl:n,noToastOnStatus:S?[404]:void 0}),{startLoading:w,stopLoading:D}=c.useContext(u.LoadingContext),P=c.useRef(0),{isAuthenticated:C}=u.useAuth(),[k,m]=c.useState(null),p=c.useCallback(async(f,y)=>{if(!C()||a===!1)return;!t&&w(`loadData-${r}-${y}`),s&&m(null);const b=g.get(r,{signal:f}).then(A=>h?h(A.data):A.data).finally(()=>!t&&D(`loadData-${r}-${y}`));m(E(b,l??!1,S??!1))},[C,a,t,w,r,s,g,h,D,l,S]);return c.useEffect(()=>{if(e===!1)return;const f=new AbortController;return p(f.signal,++P.current),()=>{f.abort()}},[p,e]),{data:k,setData:m,reloadData:p}};exports.cancelToken=u.cancelToken;exports.useAuth=u.useAuth;exports.useAxios=u.useAxios;exports.useConfirm=u.useConfirm;exports.useFormControlType=u.useFormControlType;exports.useNotifications=u.useNotifications;exports.usePrompt=u.usePrompt;exports.useZodSchemaTypes=u.useZodSchemaTypes;exports.useClickOutside=q.useClickOutside;exports.useWindowSize=q.useWindowSize;exports.usePermissions=x.usePermissions;exports.useClipboard=d.useClipboard;exports.useEmployeePhotoPath=d.useEmployeePhotoPath;exports.useKeyPress=d.useKeyPress;exports.useSearchQuery=d.useSearchQuery;exports.useSearchQueryState=d.useSearchQueryState;exports.useGetApiData=T.useGetApiData;exports.useLocalStorageState=L.useLocalStorageState;exports.useGetApiDataBound=O;exports.useGetDataBound=B;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("./ShortcutLinksContext-D6SOjqrB.cjs"),C=require("./useWindowSize-CE6DJWzn.cjs"),x=require("./usePermissions-DpJaM3Pd.cjs"),l=require("./useRenderDraggableInPortal-DIQFNh3P.cjs"),T=require("./useGetApiData-BiGeqiNF.cjs"),c=require("react"),L=require("./useLocalStorageState-BFc8Gc8H.cjs");require("react-router-dom");require("react-dom");require("react-hook-form");require("react-flexmonster");require("@azure/msal-browser");require("@azure/msal-react");const G=r=>{let e="pending",a;const t=r.then(s=>{e="success",a=s},s=>{e="error",a=s});return()=>{switch(e){case"pending":throw t;case"success":return a;case"error":throw a;default:throw new Error("Unknown status")}}};function B(r,e){const a=u.useAxios({silent:!0,differentBaseUrl:e==null?void 0:e.customBaseUrl,customToken:e==null?void 0:e.customToken}),[t,s]=c.useState(null);return c.useEffect(()=>{(async()=>{const n=a.get(r).then(o=>o.data);s(G(n))})()},[a,r]),t}const E=(r,e,a)=>{let t="pending",s;const d=r.then(n=>{t="success",s=n},n=>{const o=n==null?void 0:n.response;(o==null?void 0:o.status)===404&&a?(t="error-404",s=n):(t="error",s=n)});return()=>{switch(t){case"pending":throw d;case"success":return s;case"error":return null;case"error-404":throw new Error("404");default:throw new Error("Unknown status")}}},i={loadOnInit:!0,silent:!1,enabled:!0,nullStateBeforeLoad:!0,nullStateOnFail:!1},O=(r,{loadOnInit:e=i.loadOnInit,enabled:a=i.enabled,silent:t=i.silent,nullStateBeforeLoad:s=i.nullStateBeforeLoad,nullStateOnFail:d=i.nullStateOnFail,customApiUrl:n,customBearerToken:o,dataTransformer:h,errorBoundaryOn404:S}=i)=>{const p=u.useAxios({silent:t,customToken:o,differentBaseUrl:n,noToastOnStatus:S?[404]:void 0}),{startLoading:D,stopLoading:w}=c.useContext(u.LoadingContext),q=c.useRef(0),{isAuthenticated:P}=u.useAuth(),[b,g]=c.useState(null),m=c.useCallback(async(f,y)=>{if(!P()||a===!1)return;!t&&D(`loadData-${r}-${y}`),s&&g(null);const k=p.get(r,{signal:f}).then(A=>h?h(A.data):A.data).finally(()=>!t&&w(`loadData-${r}-${y}`));g(E(k,d??!1,S??!1))},[P,a,t,D,r,s,p,h,w,d,S]);return c.useEffect(()=>{if(e===!1)return;const f=new AbortController;return m(f.signal,++q.current),()=>{f.abort()}},[m,e]),{data:b,setData:g,reloadData:m}};exports.cancelToken=u.cancelToken;exports.useAuth=u.useAuth;exports.useAxios=u.useAxios;exports.useConfirm=u.useConfirm;exports.useFormControlType=u.useFormControlType;exports.useNotifications=u.useNotifications;exports.usePrompt=u.usePrompt;exports.useZodSchemaTypes=u.useZodSchemaTypes;exports.useClickOutside=C.useClickOutside;exports.useWindowSize=C.useWindowSize;exports.usePermissions=x.usePermissions;exports.useClipboard=l.useClipboard;exports.useEmployeePhotoPath=l.useEmployeePhotoPath;exports.useKeyPress=l.useKeyPress;exports.useRenderDraggableInPortal=l.useRenderDraggableInPortal;exports.useSearchQuery=l.useSearchQuery;exports.useSearchQueryState=l.useSearchQueryState;exports.useGetApiData=T.useGetApiData;exports.useLocalStorageState=L.useLocalStorageState;exports.useGetApiDataBound=O;exports.useGetDataBound=B;
package/dist/hooks.es.js CHANGED
@@ -1,27 +1,28 @@
1
- import { au as S, aV as L, aD as P } from "./ShortcutLinksContext-CDA4_y4H.js";
2
- import { bv as V, aX as X, aJ as Z, aW as j, b6 as q, bw as H } from "./ShortcutLinksContext-CDA4_y4H.js";
3
- import { a as Y, u as _ } from "./useWindowSize-OLYtjFv_.js";
4
- import { u as et } from "./usePermissions-BJHLPP0j.js";
5
- import { u as at, d as ot, a as rt, b as nt, c as ut } from "./useClipboard-B6o3_c4j.js";
6
- import { u as lt } from "./useGetApiData-yPRYMljx.js";
7
- import { useState as b, useEffect as C, useContext as T, useRef as U, useCallback as $ } from "react";
8
- import { u as ft } from "./useLocalStorageState-Bt99kkCr.js";
1
+ import { au as x, a_ as P, aI as $ } from "./ShortcutLinksContext-DjWgKFrF.js";
2
+ import { bz as j, b0 as q, aO as H, a$ as J, bb as M, bA as V } from "./ShortcutLinksContext-DjWgKFrF.js";
3
+ import { a as Y, u as ee } from "./useWindowSize-OLYtjFv_.js";
4
+ import { u as se } from "./usePermissions-DH1EcMcR.js";
5
+ import { u as oe, e as re, a as ne, b as ue, c as ce, d as le } from "./useRenderDraggableInPortal-DhdgZl3K.js";
6
+ import { u as fe } from "./useGetApiData-Dng3v-c1.js";
7
+ import { useState as S, useEffect as C, useContext as L, useRef as O, useCallback as T } from "react";
8
+ import { u as me } from "./useLocalStorageState-Bt99kkCr.js";
9
9
  import "react-router-dom";
10
+ import "react-dom";
10
11
  import "react-hook-form";
11
12
  import "react-flexmonster";
12
13
  import "@azure/msal-browser";
13
14
  import "@azure/msal-react";
14
- const B = (o) => {
15
- let t = "pending", a;
16
- const e = o.then((s) => {
17
- t = "success", a = s;
15
+ const U = (o) => {
16
+ let e = "pending", a;
17
+ const t = o.then((s) => {
18
+ e = "success", a = s;
18
19
  }, (s) => {
19
- t = "error", a = s;
20
+ e = "error", a = s;
20
21
  });
21
22
  return () => {
22
- switch (t) {
23
+ switch (e) {
23
24
  case "pending":
24
- throw e;
25
+ throw t;
25
26
  case "success":
26
27
  return a;
27
28
  case "error":
@@ -31,29 +32,29 @@ const B = (o) => {
31
32
  }
32
33
  };
33
34
  };
34
- function I(o, t) {
35
- const a = S({
35
+ function K(o, e) {
36
+ const a = x({
36
37
  silent: !0,
37
- differentBaseUrl: t == null ? void 0 : t.customBaseUrl,
38
- customToken: t == null ? void 0 : t.customToken
39
- }), [e, s] = b(null);
38
+ differentBaseUrl: e == null ? void 0 : e.customBaseUrl,
39
+ customToken: e == null ? void 0 : e.customToken
40
+ }), [t, s] = S(null);
40
41
  return C(() => {
41
42
  (async () => {
42
43
  const r = a.get(o).then((n) => n.data);
43
- s(B(r));
44
+ s(U(r));
44
45
  })();
45
- }, [a, o]), e;
46
+ }, [a, o]), t;
46
47
  }
47
- const E = (o, t, a) => {
48
- let e = "pending", s;
48
+ const B = (o, e, a) => {
49
+ let t = "pending", s;
49
50
  const c = o.then((r) => {
50
- e = "success", s = r;
51
+ t = "success", s = r;
51
52
  }, (r) => {
52
53
  const n = r == null ? void 0 : r.response;
53
- (n == null ? void 0 : n.status) === 404 && a ? (e = "error-404", s = r) : (e = "error", s = r);
54
+ (n == null ? void 0 : n.status) === 404 && a ? (t = "error-404", s = r) : (t = "error", s = r);
54
55
  });
55
56
  return () => {
56
- switch (e) {
57
+ switch (t) {
57
58
  case "pending":
58
59
  throw c;
59
60
  case "success":
@@ -72,61 +73,62 @@ const E = (o, t, a) => {
72
73
  enabled: !0,
73
74
  nullStateBeforeLoad: !0,
74
75
  nullStateOnFail: !1
75
- }, J = (o, { loadOnInit: t = u.loadOnInit, enabled: a = u.enabled, silent: e = u.silent, nullStateBeforeLoad: s = u.nullStateBeforeLoad, nullStateOnFail: c = u.nullStateOnFail, customApiUrl: r, customBearerToken: n, dataTransformer: i, errorBoundaryOn404: f } = u) => {
76
- const p = S({
77
- silent: e,
76
+ }, N = (o, { loadOnInit: e = u.loadOnInit, enabled: a = u.enabled, silent: t = u.silent, nullStateBeforeLoad: s = u.nullStateBeforeLoad, nullStateOnFail: c = u.nullStateOnFail, customApiUrl: r, customBearerToken: n, dataTransformer: i, errorBoundaryOn404: f } = u) => {
77
+ const p = x({
78
+ silent: t,
78
79
  customToken: n,
79
80
  differentBaseUrl: r,
80
81
  noToastOnStatus: f ? [404] : void 0
81
- }), { startLoading: h, stopLoading: w } = T(L), k = U(0), { isAuthenticated: D } = P(), [y, d] = b(null), m = $(async (l, g) => {
82
- if (!D() || a === !1)
82
+ }), { startLoading: h, stopLoading: g } = L(P), k = O(0), { isAuthenticated: w } = $(), [A, d] = S(null), m = T(async (l, D) => {
83
+ if (!w() || a === !1)
83
84
  return;
84
- !e && h(`loadData-${o}-${g}`), s && d(null);
85
- const A = p.get(o, {
85
+ !t && h(`loadData-${o}-${D}`), s && d(null);
86
+ const y = p.get(o, {
86
87
  signal: l
87
- }).then((x) => i ? i(x.data) : x.data).finally(() => !e && w(`loadData-${o}-${g}`));
88
- d(E(A, c ?? !1, f ?? !1));
88
+ }).then((b) => i ? i(b.data) : b.data).finally(() => !t && g(`loadData-${o}-${D}`));
89
+ d(B(y, c ?? !1, f ?? !1));
89
90
  }, [
90
- D,
91
+ w,
91
92
  a,
92
- e,
93
+ t,
93
94
  h,
94
95
  o,
95
96
  s,
96
97
  p,
97
98
  i,
98
- w,
99
+ g,
99
100
  c,
100
101
  f
101
102
  ]);
102
103
  return C(() => {
103
- if (t === !1)
104
+ if (e === !1)
104
105
  return;
105
106
  const l = new AbortController();
106
107
  return m(l.signal, ++k.current), () => {
107
108
  l.abort();
108
109
  };
109
- }, [m, t]), { data: y, setData: d, reloadData: m };
110
+ }, [m, e]), { data: A, setData: d, reloadData: m };
110
111
  };
111
112
  export {
112
- V as cancelToken,
113
- P as useAuth,
114
- S as useAxios,
113
+ j as cancelToken,
114
+ $ as useAuth,
115
+ x as useAxios,
115
116
  Y as useClickOutside,
116
- at as useClipboard,
117
- X as useConfirm,
118
- ot as useEmployeePhotoPath,
119
- Z as useFormControlType,
120
- lt as useGetApiData,
121
- J as useGetApiDataBound,
122
- I as useGetDataBound,
123
- rt as useKeyPress,
124
- ft as useLocalStorageState,
125
- j as useNotifications,
126
- et as usePermissions,
127
- q as usePrompt,
128
- nt as useSearchQuery,
129
- ut as useSearchQueryState,
130
- _ as useWindowSize,
131
- H as useZodSchemaTypes
117
+ oe as useClipboard,
118
+ q as useConfirm,
119
+ re as useEmployeePhotoPath,
120
+ H as useFormControlType,
121
+ fe as useGetApiData,
122
+ N as useGetApiDataBound,
123
+ K as useGetDataBound,
124
+ ne as useKeyPress,
125
+ me as useLocalStorageState,
126
+ J as useNotifications,
127
+ se as usePermissions,
128
+ M as usePrompt,
129
+ ue as useRenderDraggableInPortal,
130
+ ce as useSearchQuery,
131
+ le as useSearchQueryState,
132
+ ee as useWindowSize,
133
+ V as useZodSchemaTypes
132
134
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./ShortcutLinksContext-CtT9qbGN.cjs"),m=require("react"),y=require("react-router-dom");require("react-hook-form");require("react-flexmonster");require("@azure/msal-browser");require("@azure/msal-react");const g=require("./useWindowSize-CE6DJWzn.cjs"),C=require("./usePermissions-BND9X9_G.cjs"),P="_side-menu-item_1o1uo_1",w="_disabled_1o1uo_6",z="_nav-button_1o1uo_10",I="_child_1o1uo_18",f="_text_1o1uo_23",S="_icon_1o1uo_30",L="_collapse-icon_1o1uo_36",q="_collapsed_1o1uo_46",T="_collapse-icon-mini_1o1uo_49",O="_expanded_1o1uo_80",$="_children-container_1o1uo_86",A="_visible_1o1uo_94",K="_children_1o1uo_86",D="_mobile_1o1uo_106",o={"side-menu-item":"_side-menu-item_1o1uo_1",sideMenuItem:P,disabled:w,"nav-button":"_nav-button_1o1uo_10",navButton:z,child:I,text:f,icon:S,"collapse-icon":"_collapse-icon_1o1uo_36",collapseIcon:L,collapsed:q,"collapse-icon-mini":"_collapse-icon-mini_1o1uo_49",collapseIconMini:T,expanded:O,"children-container":"_children-container_1o1uo_86",childrenContainer:$,visible:A,children:K,mobile:D},F=({item:n,menuExpanded:t,useTooltips:i,children:a})=>n.tooltip&&!t&&i?e.jsxRuntimeExports.jsx(e.SimpleTooltip,{text:n.tooltip,placement:"top",delay:{show:1e3,hide:0},children:e.jsxRuntimeExports.jsx("div",{children:a})}):a,k=({item:n,menuExpanded:t,collapsed:i,onCollapse:a,currentPath:l,useHover:x,useTooltips:v,isMobile:c})=>{var M,h,R,j;const[N,_]=m.useState(!1),[p]=l.split("?"),d=n.linkTo===p||((M=n.children)==null?void 0:M.some(s=>s.linkTo===p)),E=m.useRef(null);return g.useClickOutside([E],()=>i&&a()),e.jsxRuntimeExports.jsxs("li",{ref:E,className:e.classNames("luminus-side-menu-item",o.sideMenuItem,{[o.mobile]:c},{[o.expanded]:t},{active:N||d},{open:i&&n.children},{[o.disabled]:n.disabled||n.notPermitted||((h=n.children)==null?void 0:h.every(s=>s.notPermitted||s.disabled))},{disabled:n.disabled||n.notPermitted||((R=n.children)==null?void 0:R.every(s=>s.notPermitted||s.disabled))}),onMouseEnter:()=>_(!0),onMouseLeave:()=>_(!1),children:[e.jsxRuntimeExports.jsx(F,{item:n,menuExpanded:t,useTooltips:v,children:n.children?e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsxs("button",{type:"button",className:e.classNames("nav-link",o.navButton),onClick:()=>{a()},children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("icon",o.icon),children:n.icon}),!x&&!t&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("collapse-icon-mini rounded",o.collapseIconMini,{[o.collapsed]:i}),children:e.jsxRuntimeExports.jsx(e.MdOutlineKeyboardArrowRight,{})}),t&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("text",o.text,"text-nowrap"),children:n.title}),t&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("collapse-icon",o.collapseIcon,{[o.collapsed]:i}),children:e.jsxRuntimeExports.jsx(e.MdOutlineKeyboardArrowRight,{})})]})}):e.jsxRuntimeExports.jsxs(y.Link,{to:n.disabled||n.notPermitted?"/":n.linkTo??"/",className:e.classNames("nav-link",o.navButton),children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("icon",o.icon),children:n.icon}),t&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("text",o.text,"text-nowrap"),children:n.title})]})}),e.jsxRuntimeExports.jsx("div",{className:e.classNames("children-container",o.childrenContainer,{[o.visible]:i}),children:e.jsxRuntimeExports.jsx("div",{className:e.classNames("shadow rounded children",o.children),children:(j=n.children)==null?void 0:j.map(s=>e.jsxRuntimeExports.jsx(y.Link,{to:s.disabled||s.notPermitted?"/":s.linkTo??"/",className:e.classNames("nav-link child rounded",o.navButton,o.child,{[o.disabled]:s.disabled||s.notPermitted},{disabled:s.disabled||s.notPermitted}),onClick:a,children:e.jsxRuntimeExports.jsx("div",{className:e.classNames("text",o.text,"text-nowrap"),children:s.title})},s.linkTo))})})]})},W="_side-menu_15z3o_1",U="_sidebar-header_15z3o_13",G="_side-menu-content_15z3o_20",J="_expand_15z3o_24",Q="_only-logo_15z3o_28",V="_mobile_15z3o_31",X="_divider_15z3o_45",u={"side-menu":"_side-menu_15z3o_1",sideMenu:W,"sidebar-header":"_sidebar-header_15z3o_13",sidebarHeader:U,"side-menu-content":"_side-menu-content_15z3o_20",sideMenuContent:G,expand:J,"only-logo":"_only-logo_15z3o_28",onlyLogo:Q,mobile:V,divider:X},Y=({headerItem:n,searchItem:t,mainItems:i,secondaryItems:a,expanded:l,setExpanded:x,currentPath:v,useHover:c,useTooltips:N})=>{const[_,p]=m.useState(-1),{checkUserHasPermissions:d}=C.usePermissions(),E=m.useMemo(()=>i.map(s=>{var r;return{...s,notPermitted:!d(s.permissions??[],"any"),children:(r=s.children)==null?void 0:r.map(b=>({...b,notPermitted:!d(b.permissions??[],"any"),disabled:s.disabled||b.disabled}))}}),[i,d]),M=m.useMemo(()=>a.map(s=>{var r;return{...s,notPermitted:!d(s.permissions??[],"any"),children:(r=s.children)==null?void 0:r.map(b=>({...b,notPermitted:!d(b.permissions??[],"any")}))}}),[a,d]),h=s=>{p(s===_?-1:s)};m.useEffect(()=>{l||p(-1)},[l]);const R=m.useRef(null);g.useClickOutside([R],()=>x(!1));const{isMobile:j}=g.useWindowSize();return e.jsxRuntimeExports.jsxs("section",{ref:R,className:e.classNames("luminus-side-menu shadow",u.sideMenu,{[u.mobile]:j},{[u.expand]:l},{expand:l}),onMouseEnter:()=>c&&x(!0),onMouseLeave:()=>c&&x(!1),children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("sidebar-header",u.sidebarHeader,{[u.onlyLogo]:c}),role:c?void 0:"button",onClick:c?void 0:()=>x(!l),children:c?n:l?e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(e.MdOutlineKeyboardDoubleArrowLeft,{}),n]}):e.jsxRuntimeExports.jsx(e.MdOutlineMenu,{})}),e.jsxRuntimeExports.jsxs("ul",{className:u.sideMenuContent,children:[t?e.jsxRuntimeExports.jsx("div",{className:"p-3",children:t}):null,E.map((s,r)=>e.jsxRuntimeExports.jsx(k,{item:s,menuExpanded:l,collapsed:r===_,onCollapse:()=>h(r),currentPath:v,useHover:c,useTooltips:N,isMobile:j},s.title)),e.jsxRuntimeExports.jsx("hr",{className:e.classNames("divider",u.divider)}),M.map((s,r)=>e.jsxRuntimeExports.jsx(k,{item:s,menuExpanded:l,collapsed:r===_,onCollapse:()=>h(r),currentPath:v,useHover:c,useTooltips:N,isMobile:j},s.title))]})]})},Z="_top-bar_1usoa_1",H="_top-bar-brand_1usoa_13",B={"top-bar":"_top-bar_1usoa_1",topBar:Z,"top-bar-brand":"_top-bar-brand_1usoa_13",topBarBrand:H},ee=({appName:n,leftOffset:t,leftContent:i,centerContent:a,rightContent:l})=>e.jsxRuntimeExports.jsxs("nav",{className:e.classNames("luminus-top-bar shadow gap-1 gap-lg-3",B.topBar),style:{width:t?`calc(100% - ${t}px)`:void 0,left:t?`${t}px`:void 0},children:[e.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-4 align-items-center",children:[e.jsxRuntimeExports.jsx(y.Link,{to:"/",className:e.classNames("luminus-top-bar-brand",B.topBarBrand),children:n}),i]}),a&&e.jsxRuntimeExports.jsx("div",{children:a}),e.jsxRuntimeExports.jsx("div",{className:"d-flex justify-content-end align-items-center",children:l??null})]});exports.PageContainer=e.PageContainer;exports.SideContentBar=e.SideContentBar;exports.SideMenu=Y;exports.TopBar=ee;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./ShortcutLinksContext-D6SOjqrB.cjs"),m=require("react"),y=require("react-router-dom");require("react-hook-form");require("react-flexmonster");require("@azure/msal-browser");require("@azure/msal-react");const g=require("./useWindowSize-CE6DJWzn.cjs");require("react-dom");const C=require("./usePermissions-DpJaM3Pd.cjs"),P="_side-menu-item_1o1uo_1",w="_disabled_1o1uo_6",z="_nav-button_1o1uo_10",I="_child_1o1uo_18",f="_text_1o1uo_23",S="_icon_1o1uo_30",q="_collapse-icon_1o1uo_36",L="_collapsed_1o1uo_46",T="_collapse-icon-mini_1o1uo_49",O="_expanded_1o1uo_80",$="_children-container_1o1uo_86",A="_visible_1o1uo_94",K="_children_1o1uo_86",D="_mobile_1o1uo_106",o={"side-menu-item":"_side-menu-item_1o1uo_1",sideMenuItem:P,disabled:w,"nav-button":"_nav-button_1o1uo_10",navButton:z,child:I,text:f,icon:S,"collapse-icon":"_collapse-icon_1o1uo_36",collapseIcon:q,collapsed:L,"collapse-icon-mini":"_collapse-icon-mini_1o1uo_49",collapseIconMini:T,expanded:O,"children-container":"_children-container_1o1uo_86",childrenContainer:$,visible:A,children:K,mobile:D},F=({item:n,menuExpanded:t,useTooltips:i,children:a})=>n.tooltip&&!t&&i?e.jsxRuntimeExports.jsx(e.SimpleTooltip,{text:n.tooltip,placement:"top",delay:{show:1e3,hide:0},children:e.jsxRuntimeExports.jsx("div",{children:a})}):a,k=({item:n,menuExpanded:t,collapsed:i,onCollapse:a,currentPath:l,useHover:x,useTooltips:v,isMobile:c})=>{var M,h,R,j;const[N,_]=m.useState(!1),[p]=l.split("?"),d=n.linkTo===p||((M=n.children)==null?void 0:M.some(s=>s.linkTo===p)),E=m.useRef(null);return g.useClickOutside([E],()=>i&&a()),e.jsxRuntimeExports.jsxs("li",{ref:E,className:e.classNames("luminus-side-menu-item",o.sideMenuItem,{[o.mobile]:c},{[o.expanded]:t},{active:N||d},{open:i&&n.children},{[o.disabled]:n.disabled||n.notPermitted||((h=n.children)==null?void 0:h.every(s=>s.notPermitted||s.disabled))},{disabled:n.disabled||n.notPermitted||((R=n.children)==null?void 0:R.every(s=>s.notPermitted||s.disabled))}),onMouseEnter:()=>_(!0),onMouseLeave:()=>_(!1),children:[e.jsxRuntimeExports.jsx(F,{item:n,menuExpanded:t,useTooltips:v,children:n.children?e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsxs("button",{type:"button",className:e.classNames("nav-link",o.navButton),onClick:()=>{a()},children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("icon",o.icon),children:n.icon}),!x&&!t&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("collapse-icon-mini rounded",o.collapseIconMini,{[o.collapsed]:i}),children:e.jsxRuntimeExports.jsx(e.MdOutlineKeyboardArrowRight,{})}),t&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("text",o.text,"text-nowrap"),children:n.title}),t&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("collapse-icon",o.collapseIcon,{[o.collapsed]:i}),children:e.jsxRuntimeExports.jsx(e.MdOutlineKeyboardArrowRight,{})})]})}):e.jsxRuntimeExports.jsxs(y.Link,{to:n.disabled||n.notPermitted?"/":n.linkTo??"/",className:e.classNames("nav-link",o.navButton),children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("icon",o.icon),children:n.icon}),t&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("text",o.text,"text-nowrap"),children:n.title})]})}),e.jsxRuntimeExports.jsx("div",{className:e.classNames("children-container",o.childrenContainer,{[o.visible]:i}),children:e.jsxRuntimeExports.jsx("div",{className:e.classNames("shadow rounded children",o.children),children:(j=n.children)==null?void 0:j.map(s=>e.jsxRuntimeExports.jsx(y.Link,{to:s.disabled||s.notPermitted?"/":s.linkTo??"/",className:e.classNames("nav-link child rounded",o.navButton,o.child,{[o.disabled]:s.disabled||s.notPermitted},{disabled:s.disabled||s.notPermitted}),onClick:a,children:e.jsxRuntimeExports.jsx("div",{className:e.classNames("text",o.text,"text-nowrap"),children:s.title})},s.linkTo))})})]})},W="_side-menu_15z3o_1",U="_sidebar-header_15z3o_13",G="_side-menu-content_15z3o_20",J="_expand_15z3o_24",Q="_only-logo_15z3o_28",V="_mobile_15z3o_31",X="_divider_15z3o_45",u={"side-menu":"_side-menu_15z3o_1",sideMenu:W,"sidebar-header":"_sidebar-header_15z3o_13",sidebarHeader:U,"side-menu-content":"_side-menu-content_15z3o_20",sideMenuContent:G,expand:J,"only-logo":"_only-logo_15z3o_28",onlyLogo:Q,mobile:V,divider:X},Y=({headerItem:n,searchItem:t,mainItems:i,secondaryItems:a,expanded:l,setExpanded:x,currentPath:v,useHover:c,useTooltips:N})=>{const[_,p]=m.useState(-1),{checkUserHasPermissions:d}=C.usePermissions(),E=m.useMemo(()=>i.map(s=>{var r;return{...s,notPermitted:!d(s.permissions??[],"any"),children:(r=s.children)==null?void 0:r.map(b=>({...b,notPermitted:!d(b.permissions??[],"any"),disabled:s.disabled||b.disabled}))}}),[i,d]),M=m.useMemo(()=>a.map(s=>{var r;return{...s,notPermitted:!d(s.permissions??[],"any"),children:(r=s.children)==null?void 0:r.map(b=>({...b,notPermitted:!d(b.permissions??[],"any")}))}}),[a,d]),h=s=>{p(s===_?-1:s)};m.useEffect(()=>{l||p(-1)},[l]);const R=m.useRef(null);g.useClickOutside([R],()=>x(!1));const{isMobile:j}=g.useWindowSize();return e.jsxRuntimeExports.jsxs("section",{ref:R,className:e.classNames("luminus-side-menu shadow",u.sideMenu,{[u.mobile]:j},{[u.expand]:l},{expand:l}),onMouseEnter:()=>c&&x(!0),onMouseLeave:()=>c&&x(!1),children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("sidebar-header",u.sidebarHeader,{[u.onlyLogo]:c}),role:c?void 0:"button",onClick:c?void 0:()=>x(!l),children:c?n:l?e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(e.MdOutlineKeyboardDoubleArrowLeft,{}),n]}):e.jsxRuntimeExports.jsx(e.MdOutlineMenu,{})}),e.jsxRuntimeExports.jsxs("ul",{className:u.sideMenuContent,children:[t?e.jsxRuntimeExports.jsx("div",{className:"p-3",children:t}):null,E.map((s,r)=>e.jsxRuntimeExports.jsx(k,{item:s,menuExpanded:l,collapsed:r===_,onCollapse:()=>h(r),currentPath:v,useHover:c,useTooltips:N,isMobile:j},s.title)),e.jsxRuntimeExports.jsx("hr",{className:e.classNames("divider",u.divider)}),M.map((s,r)=>e.jsxRuntimeExports.jsx(k,{item:s,menuExpanded:l,collapsed:r===_,onCollapse:()=>h(r),currentPath:v,useHover:c,useTooltips:N,isMobile:j},s.title))]})]})},Z="_top-bar_1usoa_1",H="_top-bar-brand_1usoa_13",B={"top-bar":"_top-bar_1usoa_1",topBar:Z,"top-bar-brand":"_top-bar-brand_1usoa_13",topBarBrand:H},ee=({appName:n,leftOffset:t,leftContent:i,centerContent:a,rightContent:l})=>e.jsxRuntimeExports.jsxs("nav",{className:e.classNames("luminus-top-bar shadow gap-1 gap-lg-3",B.topBar),style:{width:t?`calc(100% - ${t}px)`:void 0,left:t?`${t}px`:void 0},children:[e.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-4 align-items-center",children:[e.jsxRuntimeExports.jsx(y.Link,{to:"/",className:e.classNames("luminus-top-bar-brand",B.topBarBrand),children:n}),i]}),a&&e.jsxRuntimeExports.jsx("div",{children:a}),e.jsxRuntimeExports.jsx("div",{className:"d-flex justify-content-end align-items-center",children:l??null})]});exports.PageContainer=e.PageContainer;exports.SideContentBar=e.SideContentBar;exports.SideMenu=Y;exports.TopBar=ee;
package/dist/layout.es.js CHANGED
@@ -1,5 +1,5 @@
1
- import { j as e, c as i, aa as B, aA as L, bi as T, bj as R } from "./ShortcutLinksContext-CDA4_y4H.js";
2
- import { b2 as Ne, bk as ye } from "./ShortcutLinksContext-CDA4_y4H.js";
1
+ import { j as e, c as i, aa as B, aF as L, bn as T, bo as R } from "./ShortcutLinksContext-DjWgKFrF.js";
2
+ import { b7 as ye, bp as fe } from "./ShortcutLinksContext-DjWgKFrF.js";
3
3
  import { useState as I, useRef as z, useMemo as k, useEffect as S } from "react";
4
4
  import { Link as g } from "react-router-dom";
5
5
  import "react-hook-form";
@@ -7,7 +7,8 @@ import "react-flexmonster";
7
7
  import "@azure/msal-browser";
8
8
  import "@azure/msal-react";
9
9
  import { a as w, u as $ } from "./useWindowSize-OLYtjFv_.js";
10
- import { u as A } from "./usePermissions-BJHLPP0j.js";
10
+ import "react-dom";
11
+ import { u as A } from "./usePermissions-DH1EcMcR.js";
11
12
  const F = "_side-menu-item_1o1uo_1", K = "_disabled_1o1uo_6", O = "_nav-button_1o1uo_10", D = "_child_1o1uo_18", U = "_text_1o1uo_23", W = "_icon_1o1uo_30", q = "_collapse-icon_1o1uo_36", E = "_collapsed_1o1uo_46", G = "_collapse-icon-mini_1o1uo_49", J = "_expanded_1o1uo_80", Q = "_children-container_1o1uo_86", V = "_visible_1o1uo_94", X = "_children_1o1uo_86", Y = "_mobile_1o1uo_106", s = {
12
13
  "side-menu-item": "_side-menu-item_1o1uo_1",
13
14
  sideMenuItem: F,
@@ -69,7 +70,7 @@ const F = "_side-menu-item_1o1uo_1", K = "_disabled_1o1uo_6", O = "_nav-button_1
69
70
  onlyLogo: se,
70
71
  mobile: ie,
71
72
  divider: te
72
- }, he = ({ headerItem: n, searchItem: t, mainItems: l, secondaryItems: a, expanded: d, setExpanded: m, currentPath: M, useHover: r, useTooltips: N }) => {
73
+ }, ve = ({ headerItem: n, searchItem: t, mainItems: l, secondaryItems: a, expanded: d, setExpanded: m, currentPath: M, useHover: r, useTooltips: N }) => {
73
74
  const [p, b] = I(-1), { checkUserHasPermissions: _ } = A(), y = k(() => l.map((o) => {
74
75
  var c;
75
76
  return {
@@ -121,7 +122,7 @@ const F = "_side-menu-item_1o1uo_1", K = "_disabled_1o1uo_6", O = "_nav-button_1
121
122
  topBar: le,
122
123
  "top-bar-brand": "_top-bar-brand_1usoa_13",
123
124
  topBarBrand: ae
124
- }, ve = ({ appName: n, leftOffset: t, leftContent: l, centerContent: a, rightContent: d }) => /* @__PURE__ */ e.jsxs("nav", { className: i("luminus-top-bar shadow gap-1 gap-lg-3", P.topBar), style: {
125
+ }, je = ({ appName: n, leftOffset: t, leftContent: l, centerContent: a, rightContent: d }) => /* @__PURE__ */ e.jsxs("nav", { className: i("luminus-top-bar shadow gap-1 gap-lg-3", P.topBar), style: {
125
126
  width: t ? `calc(100% - ${t}px)` : void 0,
126
127
  left: t ? `${t}px` : void 0
127
128
  }, children: [
@@ -133,8 +134,8 @@ const F = "_side-menu-item_1o1uo_1", K = "_disabled_1o1uo_6", O = "_nav-button_1
133
134
  /* @__PURE__ */ e.jsx("div", { className: "d-flex justify-content-end align-items-center", children: d ?? null })
134
135
  ] });
135
136
  export {
136
- Ne as PageContainer,
137
- ye as SideContentBar,
138
- he as SideMenu,
139
- ve as TopBar
137
+ ye as PageContainer,
138
+ fe as SideContentBar,
139
+ ve as SideMenu,
140
+ je as TopBar
140
141
  };