react-luminus-components 1.3.85 → 1.3.87

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 (71) hide show
  1. package/README.md +349 -349
  2. package/dist/.vite/manifest.json +89 -62
  3. package/dist/FullScreenContainer-Ce-nK_6a.js +27 -0
  4. package/dist/FullScreenContainer-ST-Zqpvr.cjs +1 -0
  5. package/dist/{Loading-x8qNuFvn.js → Loading-CiGaVvoO.js} +1 -1
  6. package/dist/Loading-DiAp8L6X.cjs +1 -0
  7. package/dist/SimpleTooltip-Bi03GT58.js +5 -0
  8. package/dist/SimpleTooltip-CsQYpO-x.cjs +1 -0
  9. package/dist/components/Flexmonster/Flexmonster.d.ts +15 -0
  10. package/dist/components/Flexmonster/ReportPage.d.ts +16 -0
  11. package/dist/components/Flexmonster/components/ReportSharingModal/ReportSharingModal.d.ts +12 -0
  12. package/dist/components/Flexmonster/components/ReportSharingModal/hooks/useReportSharingApi.d.ts +6 -0
  13. package/dist/components/Flexmonster/components/index.d.ts +1 -0
  14. package/dist/components/Flexmonster/hooks/useReportMappings.d.ts +4 -0
  15. package/dist/components/Flexmonster/hooks/useReportVersionApi.d.ts +10 -0
  16. package/dist/components/Flexmonster/index.d.ts +2 -0
  17. package/dist/components/Flexmonster/types/api/ReportModel.d.ts +7 -0
  18. package/dist/components/Flexmonster/types/api/ReportRestrictItem.d.ts +4 -0
  19. package/dist/components/Flexmonster/types/api/ReportRestrictModel.d.ts +6 -0
  20. package/dist/components/Flexmonster/types/api/ReportVersionModel.d.ts +15 -0
  21. package/dist/components/Flexmonster/types/api/ReportVersionUserModel.d.ts +7 -0
  22. package/dist/components/Flexmonster/types/ui/ReportSettings.d.ts +5 -0
  23. package/dist/components/Flexmonster/utils/flexMonsterUtils.d.ts +12 -0
  24. package/dist/components/ResponsiveContextDropdown/ResponsiveContextDropdown.d.ts +13 -0
  25. package/dist/components/ResponsiveContextDropdown/components/ResponsiveContextDropdownItem/ResponsiveContextDropdownItem.d.ts +22 -0
  26. package/dist/components/ResponsiveContextDropdown/components/index.d.ts +1 -0
  27. package/dist/components/ResponsiveContextDropdown/index.d.ts +2 -0
  28. package/dist/components/ResponsiveContextDropdown/utils/responsiveContextDropdownUtils.d.ts +5 -0
  29. package/dist/contexts.cjs.js +1 -1
  30. package/dist/contexts.es.js +84 -82
  31. package/dist/hooks.cjs.js +1 -1
  32. package/dist/hooks.es.js +14 -13
  33. package/dist/layout.cjs.js +1 -1
  34. package/dist/layout.es.js +88 -99
  35. package/dist/main.cjs.js +2 -2
  36. package/dist/main.d.ts +3 -2
  37. package/dist/main.es.js +3013 -3214
  38. package/dist/models/index.d.ts +3 -0
  39. package/dist/models/texts/ComponentsContextTexts.d.ts +2 -0
  40. package/dist/models/texts/ReportsTexts.d.ts +30 -0
  41. package/dist/models/types/common/NullsOptional.d.ts +12 -0
  42. package/dist/models/types/common/RequireAtLeastOne.d.ts +4 -0
  43. package/dist/models/types/common/SharedProperties.d.ts +33 -0
  44. package/dist/{Documents-CzClGlh6.js → nivo-pie.es-DcNHbK3t.js} +10969 -9953
  45. package/dist/nivo-pie.es-plr8yBAX.cjs +279 -0
  46. package/dist/searchUtils-CjdE19He.cjs +1 -0
  47. package/dist/{searchUtils-B6o7cy_z.js → searchUtils-TyScKjjN.js} +1 -1
  48. package/dist/style.css +1 -1
  49. package/dist/useClipboard-9hyuQ25B.cjs +1 -0
  50. package/dist/{useClipboard-C486DVki.js → useClipboard-BaVnqM5C.js} +27 -26
  51. package/dist/useGetApiData-BgW3pCEg.js +52 -0
  52. package/dist/useGetApiData-D79g-CfI.cjs +1 -0
  53. package/dist/useLocalStorageState-BFc8Gc8H.cjs +1 -0
  54. package/dist/useLocalStorageState-Bt99kkCr.js +17 -0
  55. package/dist/usePermissions-B2wkyp2u.cjs +1 -0
  56. package/dist/usePermissions-Ds6FiFo2.js +20 -0
  57. package/dist/utils/file/fileUtils.d.ts +3 -0
  58. package/dist/utils.cjs.js +1 -1
  59. package/dist/utils.es.js +46 -45
  60. package/dist/variables.scss +171 -171
  61. package/package.json +114 -111
  62. package/dist/Documents-mIwY2bxk.cjs +0 -279
  63. package/dist/Loading-BIqRmexM.cjs +0 -1
  64. package/dist/SimpleTooltip-D8C4rVDt.js +0 -5
  65. package/dist/SimpleTooltip-DRnGNt95.cjs +0 -1
  66. package/dist/searchUtils-g3EU5pX0.cjs +0 -1
  67. package/dist/useClipboard-hmFG7eo3.cjs +0 -1
  68. package/dist/useLocalStorageState-Bpqgro8I.js +0 -64
  69. package/dist/useLocalStorageState-DWEObjgl.cjs +0 -1
  70. package/dist/usePermissions-B1hOk-Cv.js +0 -19
  71. package/dist/usePermissions-Dd6PAXto.cjs +0 -1
@@ -1,94 +1,116 @@
1
1
  {
2
- "_Documents-CzClGlh6.js": {
3
- "file": "Documents-CzClGlh6.js",
4
- "name": "Documents"
2
+ "_FullScreenContainer-Ce-nK_6a.js": {
3
+ "file": "FullScreenContainer-Ce-nK_6a.js",
4
+ "name": "FullScreenContainer",
5
+ "imports": [
6
+ "_nivo-pie.es-DcNHbK3t.js"
7
+ ]
5
8
  },
6
- "_Documents-mIwY2bxk.cjs": {
7
- "file": "Documents-mIwY2bxk.cjs",
8
- "name": "Documents"
9
+ "_FullScreenContainer-ST-Zqpvr.cjs": {
10
+ "file": "FullScreenContainer-ST-Zqpvr.cjs",
11
+ "name": "FullScreenContainer",
12
+ "imports": [
13
+ "_nivo-pie.es-plr8yBAX.cjs"
14
+ ]
9
15
  },
10
- "_Loading-BIqRmexM.cjs": {
11
- "file": "Loading-BIqRmexM.cjs",
16
+ "_Loading-CiGaVvoO.js": {
17
+ "file": "Loading-CiGaVvoO.js",
12
18
  "name": "Loading",
13
19
  "imports": [
14
- "_Documents-mIwY2bxk.cjs"
20
+ "_nivo-pie.es-DcNHbK3t.js"
15
21
  ]
16
22
  },
17
- "_Loading-x8qNuFvn.js": {
18
- "file": "Loading-x8qNuFvn.js",
23
+ "_Loading-DiAp8L6X.cjs": {
24
+ "file": "Loading-DiAp8L6X.cjs",
19
25
  "name": "Loading",
20
26
  "imports": [
21
- "_Documents-CzClGlh6.js"
27
+ "_nivo-pie.es-plr8yBAX.cjs"
22
28
  ]
23
29
  },
24
- "_SimpleTooltip-D8C4rVDt.js": {
25
- "file": "SimpleTooltip-D8C4rVDt.js",
30
+ "_SimpleTooltip-Bi03GT58.js": {
31
+ "file": "SimpleTooltip-Bi03GT58.js",
26
32
  "name": "SimpleTooltip",
27
33
  "imports": [
28
- "_Documents-CzClGlh6.js"
34
+ "_nivo-pie.es-DcNHbK3t.js"
29
35
  ]
30
36
  },
31
- "_SimpleTooltip-DRnGNt95.cjs": {
32
- "file": "SimpleTooltip-DRnGNt95.cjs",
37
+ "_SimpleTooltip-CsQYpO-x.cjs": {
38
+ "file": "SimpleTooltip-CsQYpO-x.cjs",
33
39
  "name": "SimpleTooltip",
34
40
  "imports": [
35
- "_Documents-mIwY2bxk.cjs"
41
+ "_nivo-pie.es-plr8yBAX.cjs"
36
42
  ]
37
43
  },
38
- "_searchUtils-B6o7cy_z.js": {
39
- "file": "searchUtils-B6o7cy_z.js",
44
+ "_nivo-pie.es-DcNHbK3t.js": {
45
+ "file": "nivo-pie.es-DcNHbK3t.js",
46
+ "name": "nivo-pie.es"
47
+ },
48
+ "_nivo-pie.es-plr8yBAX.cjs": {
49
+ "file": "nivo-pie.es-plr8yBAX.cjs",
50
+ "name": "nivo-pie.es"
51
+ },
52
+ "_searchUtils-CjdE19He.cjs": {
53
+ "file": "searchUtils-CjdE19He.cjs",
40
54
  "name": "searchUtils",
41
55
  "imports": [
42
- "_Documents-CzClGlh6.js"
56
+ "_nivo-pie.es-plr8yBAX.cjs"
43
57
  ]
44
58
  },
45
- "_searchUtils-g3EU5pX0.cjs": {
46
- "file": "searchUtils-g3EU5pX0.cjs",
59
+ "_searchUtils-TyScKjjN.js": {
60
+ "file": "searchUtils-TyScKjjN.js",
47
61
  "name": "searchUtils",
48
62
  "imports": [
49
- "_Documents-mIwY2bxk.cjs"
63
+ "_nivo-pie.es-DcNHbK3t.js"
50
64
  ]
51
65
  },
52
- "_useClipboard-C486DVki.js": {
53
- "file": "useClipboard-C486DVki.js",
66
+ "_useClipboard-9hyuQ25B.cjs": {
67
+ "file": "useClipboard-9hyuQ25B.cjs",
54
68
  "name": "useClipboard",
55
69
  "imports": [
56
- "_Documents-CzClGlh6.js"
70
+ "_nivo-pie.es-plr8yBAX.cjs"
57
71
  ]
58
72
  },
59
- "_useClipboard-hmFG7eo3.cjs": {
60
- "file": "useClipboard-hmFG7eo3.cjs",
73
+ "_useClipboard-BaVnqM5C.js": {
74
+ "file": "useClipboard-BaVnqM5C.js",
61
75
  "name": "useClipboard",
62
76
  "imports": [
63
- "_Documents-mIwY2bxk.cjs"
77
+ "_nivo-pie.es-DcNHbK3t.js"
64
78
  ]
65
79
  },
66
- "_useLocalStorageState-Bpqgro8I.js": {
67
- "file": "useLocalStorageState-Bpqgro8I.js",
68
- "name": "useLocalStorageState",
80
+ "_useGetApiData-BgW3pCEg.js": {
81
+ "file": "useGetApiData-BgW3pCEg.js",
82
+ "name": "useGetApiData",
69
83
  "imports": [
70
- "_Documents-CzClGlh6.js"
84
+ "_nivo-pie.es-DcNHbK3t.js"
71
85
  ]
72
86
  },
73
- "_useLocalStorageState-DWEObjgl.cjs": {
74
- "file": "useLocalStorageState-DWEObjgl.cjs",
75
- "name": "useLocalStorageState",
87
+ "_useGetApiData-D79g-CfI.cjs": {
88
+ "file": "useGetApiData-D79g-CfI.cjs",
89
+ "name": "useGetApiData",
76
90
  "imports": [
77
- "_Documents-mIwY2bxk.cjs"
91
+ "_nivo-pie.es-plr8yBAX.cjs"
78
92
  ]
79
93
  },
80
- "_usePermissions-B1hOk-Cv.js": {
81
- "file": "usePermissions-B1hOk-Cv.js",
94
+ "_useLocalStorageState-BFc8Gc8H.cjs": {
95
+ "file": "useLocalStorageState-BFc8Gc8H.cjs",
96
+ "name": "useLocalStorageState"
97
+ },
98
+ "_useLocalStorageState-Bt99kkCr.js": {
99
+ "file": "useLocalStorageState-Bt99kkCr.js",
100
+ "name": "useLocalStorageState"
101
+ },
102
+ "_usePermissions-B2wkyp2u.cjs": {
103
+ "file": "usePermissions-B2wkyp2u.cjs",
82
104
  "name": "usePermissions",
83
105
  "imports": [
84
- "_Documents-CzClGlh6.js"
106
+ "_nivo-pie.es-plr8yBAX.cjs"
85
107
  ]
86
108
  },
87
- "_usePermissions-Dd6PAXto.cjs": {
88
- "file": "usePermissions-Dd6PAXto.cjs",
109
+ "_usePermissions-Ds6FiFo2.js": {
110
+ "file": "usePermissions-Ds6FiFo2.js",
89
111
  "name": "usePermissions",
90
112
  "imports": [
91
- "_Documents-mIwY2bxk.cjs"
113
+ "_nivo-pie.es-DcNHbK3t.js"
92
114
  ]
93
115
  },
94
116
  "src/contexts/index.ts": {
@@ -97,9 +119,10 @@
97
119
  "src": "src/contexts/index.ts",
98
120
  "isEntry": true,
99
121
  "imports": [
100
- "_Documents-mIwY2bxk.cjs",
101
- "_Loading-BIqRmexM.cjs",
102
- "_useLocalStorageState-DWEObjgl.cjs"
122
+ "_nivo-pie.es-plr8yBAX.cjs",
123
+ "_Loading-DiAp8L6X.cjs",
124
+ "_useGetApiData-D79g-CfI.cjs",
125
+ "_useLocalStorageState-BFc8Gc8H.cjs"
103
126
  ]
104
127
  },
105
128
  "src/hooks/index.ts": {
@@ -108,10 +131,11 @@
108
131
  "src": "src/hooks/index.ts",
109
132
  "isEntry": true,
110
133
  "imports": [
111
- "_Documents-mIwY2bxk.cjs",
112
- "_useClipboard-hmFG7eo3.cjs",
113
- "_usePermissions-Dd6PAXto.cjs",
114
- "_useLocalStorageState-DWEObjgl.cjs"
134
+ "_nivo-pie.es-plr8yBAX.cjs",
135
+ "_useClipboard-9hyuQ25B.cjs",
136
+ "_usePermissions-B2wkyp2u.cjs",
137
+ "_useGetApiData-D79g-CfI.cjs",
138
+ "_useLocalStorageState-BFc8Gc8H.cjs"
115
139
  ]
116
140
  },
117
141
  "src/layout/index.ts": {
@@ -120,9 +144,10 @@
120
144
  "src": "src/layout/index.ts",
121
145
  "isEntry": true,
122
146
  "imports": [
123
- "_Documents-mIwY2bxk.cjs",
124
- "_usePermissions-Dd6PAXto.cjs",
125
- "_SimpleTooltip-DRnGNt95.cjs"
147
+ "_nivo-pie.es-plr8yBAX.cjs",
148
+ "_SimpleTooltip-CsQYpO-x.cjs",
149
+ "_usePermissions-B2wkyp2u.cjs",
150
+ "_FullScreenContainer-ST-Zqpvr.cjs"
126
151
  ]
127
152
  },
128
153
  "src/main.ts": {
@@ -131,11 +156,13 @@
131
156
  "src": "src/main.ts",
132
157
  "isEntry": true,
133
158
  "imports": [
134
- "_Documents-mIwY2bxk.cjs",
135
- "_Loading-BIqRmexM.cjs",
136
- "_SimpleTooltip-DRnGNt95.cjs",
137
- "_useClipboard-hmFG7eo3.cjs",
138
- "_searchUtils-g3EU5pX0.cjs"
159
+ "_nivo-pie.es-plr8yBAX.cjs",
160
+ "_Loading-DiAp8L6X.cjs",
161
+ "_SimpleTooltip-CsQYpO-x.cjs",
162
+ "_useClipboard-9hyuQ25B.cjs",
163
+ "_searchUtils-CjdE19He.cjs",
164
+ "_useGetApiData-D79g-CfI.cjs",
165
+ "_FullScreenContainer-ST-Zqpvr.cjs"
139
166
  ]
140
167
  },
141
168
  "src/utils/index.ts": {
@@ -144,9 +171,9 @@
144
171
  "src": "src/utils/index.ts",
145
172
  "isEntry": true,
146
173
  "imports": [
147
- "_Documents-mIwY2bxk.cjs",
148
- "_SimpleTooltip-DRnGNt95.cjs",
149
- "_searchUtils-g3EU5pX0.cjs"
174
+ "_nivo-pie.es-plr8yBAX.cjs",
175
+ "_SimpleTooltip-CsQYpO-x.cjs",
176
+ "_searchUtils-CjdE19He.cjs"
150
177
  ]
151
178
  },
152
179
  "style.css": {
@@ -0,0 +1,27 @@
1
+ import { j as e, c as a, a2 as i } from "./nivo-pie.es-DcNHbK3t.js";
2
+ import "react";
3
+ import "@azure/msal-browser";
4
+ import "@azure/msal-react";
5
+ import "react-router-dom";
6
+ import "react-hook-form";
7
+ import "react-flexmonster";
8
+ const l = "_side-content-bar_17kwd_1", d = {
9
+ "side-content-bar": "_side-content-bar_17kwd_1",
10
+ sideContentBar: l
11
+ }, m = ({ width: n, children: r }) => /* @__PURE__ */ e.jsx("section", { className: a("luminus-side-content-bar shadow", d.sideContentBar), style: {
12
+ width: `${n}px`
13
+ }, children: r }), u = ({ title: n }) => /* @__PURE__ */ e.jsx("div", { className: "mb-3", children: typeof n == "string" ? /* @__PURE__ */ e.jsx(i, { variant: "h3", children: n }) : n }), p = "_full-screen-container_1rm4r_1", x = {
14
+ "full-screen-container": "_full-screen-container_1rm4r_1",
15
+ fullScreenContainer: p
16
+ }, y = ({ title: n, children: r, sideContent: s, sideContentWidth: t = 250, noPadding: c, className: o }) => /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
17
+ /* @__PURE__ */ e.jsxs("div", { className: a("overflow-hidden luminus-full-screen-container", c ? "p-0" : "p-3", o, x.fullScreenContainer), style: { width: s ? `calc(100% - ${t}px)` : "100%" }, children: [
18
+ n ? /* @__PURE__ */ e.jsx(u, { title: n }) : null,
19
+ r
20
+ ] }),
21
+ s && /* @__PURE__ */ e.jsx(m, { width: t, children: s })
22
+ ] });
23
+ export {
24
+ y as F,
25
+ u as P,
26
+ m as S
27
+ };
@@ -0,0 +1 @@
1
+ "use strict";const e=require("./nivo-pie.es-plr8yBAX.cjs");require("react");require("@azure/msal-browser");require("@azure/msal-react");require("react-router-dom");require("react-hook-form");require("react-flexmonster");const l="_side-content-bar_17kwd_1",u={"side-content-bar":"_side-content-bar_17kwd_1",sideContentBar:l},i=({width:n,children:r})=>e.jsxRuntimeExports.jsx("section",{className:e.classNames("luminus-side-content-bar shadow",u.sideContentBar),style:{width:`${n}px`},children:r}),c=({title:n})=>e.jsxRuntimeExports.jsx("div",{className:"mb-3",children:typeof n=="string"?e.jsxRuntimeExports.jsx(e.Typography,{variant:"h3",children:n}):n}),x="_full-screen-container_1rm4r_1",d={"full-screen-container":"_full-screen-container_1rm4r_1",fullScreenContainer:x},m=({title:n,children:r,sideContent:s,sideContentWidth:t=250,noPadding:a,className:o})=>e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsxs("div",{className:e.classNames("overflow-hidden luminus-full-screen-container",a?"p-0":"p-3",o,d.fullScreenContainer),style:{width:s?`calc(100% - ${t}px)`:"100%"},children:[n?e.jsxRuntimeExports.jsx(c,{title:n}):null,r]}),s&&e.jsxRuntimeExports.jsx(i,{width:t,children:s})]});exports.FullScreenContainer=m;exports.PageTitle=c;exports.SideContentBar=i;
@@ -1,4 +1,4 @@
1
- import { j as r, c as n } from "./Documents-CzClGlh6.js";
1
+ import { j as r, c as n } from "./nivo-pie.es-DcNHbK3t.js";
2
2
  const o = "_loading_rgybp_1", i = "_spinner-grow_rgybp_10", e = "_second_rgybp_14", a = "_third_rgybp_17", t = "_loadingBlock_rgybp_21", s = {
3
3
  loading: o,
4
4
  "spinner-grow": "_spinner-grow_rgybp_10",
@@ -0,0 +1 @@
1
+ "use strict";const s=require("./nivo-pie.es-plr8yBAX.cjs"),r="_loading_rgybp_1",o="_spinner-grow_rgybp_10",e="_second_rgybp_14",i="_third_rgybp_17",t="_loadingBlock_rgybp_21",n={loading:r,"spinner-grow":"_spinner-grow_rgybp_10",spinnerGrow:o,second:e,third:i,loadingBlock:t},a=()=>s.jsxRuntimeExports.jsxs("div",{className:s.classNames("luminus-loading",n.loading),children:[s.jsxRuntimeExports.jsx("div",{className:s.classNames("spinner-grow",n.spinnerGrow,"text-primary"),role:"status"}),s.jsxRuntimeExports.jsx("div",{className:s.classNames("spinner-grow",n.spinnerGrow,"text-primary",n.second),role:"status"}),s.jsxRuntimeExports.jsx("div",{className:s.classNames("spinner-grow",n.spinnerGrow,"text-primary",n.third),role:"status"})]});exports.Loading=a;exports.classes=n;
@@ -0,0 +1,5 @@
1
+ import { j as o, a0 as a, bN as e } from "./nivo-pie.es-DcNHbK3t.js";
2
+ const l = ({ text: s, placement: r, children: t }) => /* @__PURE__ */ o.jsx(a, { placement: r, overlay: /* @__PURE__ */ o.jsx(e, { className: "luminus-tooltip", children: s }), children: t });
3
+ export {
4
+ l as S
5
+ };
@@ -0,0 +1 @@
1
+ "use strict";const e=require("./nivo-pie.es-plr8yBAX.cjs"),t=({text:i,placement:o,children:s})=>e.jsxRuntimeExports.jsx(e.OverlayTrigger,{placement:o,overlay:e.jsxRuntimeExports.jsx(e.Tooltip,{className:"luminus-tooltip",children:i}),children:s});exports.SimpleTooltip=t;
@@ -0,0 +1,15 @@
1
+ import { default as ReportSettings } from './types/ui/ReportSettings';
2
+ import { DataSource } from 'flexmonster';
3
+ import { RefObject } from 'react';
4
+ import { Pivot } from 'react-flexmonster';
5
+
6
+ type Props = {
7
+ dataSource: DataSource;
8
+ settings?: ReportSettings;
9
+ pivotRef?: RefObject<Pivot>;
10
+ enabled?: boolean;
11
+ localization: object;
12
+ licenseKey: string | string[] | undefined;
13
+ };
14
+ declare const Flexmonster: ({ dataSource, settings, pivotRef: pivotRefProp, localization, licenseKey, enabled, }: Props) => import("react").JSX.Element;
15
+ export default Flexmonster;
@@ -0,0 +1,16 @@
1
+ import { ReactNode } from 'react';
2
+
3
+ type ReportPageProps<ReportType> = {
4
+ data: object[] | null;
5
+ reportType: ReportType;
6
+ title: string;
7
+ filterElements?: ReactNode;
8
+ getReportRoute: (reportType: ReportType) => string;
9
+ localization: object;
10
+ licenseKey: string | string[] | undefined;
11
+ EmployeePicker: React.ElementType;
12
+ localizationJsonFile: Promise<any>;
13
+ localizationTransformer?: (jsonContent: any) => Record<string, string> | null;
14
+ };
15
+ declare const ReportPage: <ReportType extends string>({ reportType, title, data, filterElements, getReportRoute, localization, licenseKey, EmployeePicker, localizationJsonFile, localizationTransformer, }: ReportPageProps<ReportType>) => import("react").JSX.Element;
16
+ export default ReportPage;
@@ -0,0 +1,12 @@
1
+ import { default as ReportVersionUserModel } from '../../types/api/ReportVersionUserModel';
2
+
3
+ type ReportSharingModalProps = {
4
+ isOpen: boolean;
5
+ onHide: () => void;
6
+ usersData: ReportVersionUserModel[] | null;
7
+ setUsersData: (reportVersionId: number, newUsers: Array<ReportVersionUserModel>) => void;
8
+ reportVersionId: number;
9
+ EmployeePicker: React.ElementType;
10
+ };
11
+ declare const ReportSharingModal: ({ isOpen, onHide, usersData, setUsersData, reportVersionId, EmployeePicker, }: ReportSharingModalProps) => import("react").JSX.Element;
12
+ export default ReportSharingModal;
@@ -0,0 +1,6 @@
1
+ import { default as ReportVersionUserModel } from '../../../types/api/ReportVersionUserModel';
2
+
3
+ declare const useReportSharingApi: (reportVersionId: number) => {
4
+ changeEmployeeRights: (employeeId: number, haveRights: boolean) => Promise<ReportVersionUserModel[]>;
5
+ };
6
+ export default useReportSharingApi;
@@ -0,0 +1 @@
1
+ export { default as ReportSharingModal } from './ReportSharingModal/ReportSharingModal';
@@ -0,0 +1,4 @@
1
+ declare const useReportMappings: (localizationJsonFile: Promise<any>, customTransformer?: (jsonContent: any) => Record<string, string> | null) => {
2
+ mappings: Record<string, string> | null;
3
+ };
4
+ export default useReportMappings;
@@ -0,0 +1,10 @@
1
+ import { RefObject } from 'react';
2
+ import { Pivot } from 'react-flexmonster';
3
+
4
+ declare const useReportVersionApi: (reportType: string, pivotRef: RefObject<Pivot>, selectedReportVersion: number | null, afterSave: (versionId: number) => Promise<void>) => {
5
+ saveAs: () => Promise<void>;
6
+ save: () => Promise<void>;
7
+ archive: () => Promise<void>;
8
+ detach: () => Promise<void>;
9
+ };
10
+ export default useReportVersionApi;
@@ -0,0 +1,2 @@
1
+ export { default as Flexmonster } from './Flexmonster';
2
+ export { default as ReportPage } from './ReportPage';
@@ -0,0 +1,7 @@
1
+ import { default as ReportVersionModel } from './ReportVersionModel';
2
+
3
+ export default interface ReportModel {
4
+ reportId: number;
5
+ name: string;
6
+ reportVersions: Array<ReportVersionModel>;
7
+ }
@@ -0,0 +1,4 @@
1
+ export default interface ReportRestrictItem {
2
+ employeeId: number;
3
+ addRights: boolean;
4
+ }
@@ -0,0 +1,6 @@
1
+ import { default as ReportRestrictItem } from './ReportRestrictItem';
2
+
3
+ export default interface ReportRestrictModel {
4
+ reportVersionId: number;
5
+ userRestricts: Array<ReportRestrictItem>;
6
+ }
@@ -0,0 +1,15 @@
1
+ import { default as ReportVersionUserModel } from './ReportVersionUserModel';
2
+
3
+ export default interface ReportVersionModel {
4
+ reportSourceName: string;
5
+ reportVersionId: number;
6
+ name: string;
7
+ settings: string | null;
8
+ apiParameters: string | null;
9
+ isSystem: boolean;
10
+ isArchived: boolean;
11
+ ownerId: number;
12
+ lastModifiedBy: number;
13
+ lastModifiedDate: string | null;
14
+ users: Array<ReportVersionUserModel> | null;
15
+ }
@@ -0,0 +1,7 @@
1
+ export default interface ReportVersionUserModel {
2
+ id: number;
3
+ kid: string | null;
4
+ firstName: string | null;
5
+ lastName: string | null;
6
+ isReportOwner: boolean;
7
+ }
@@ -0,0 +1,5 @@
1
+ import { ReportSettingsProperties } from '../../utils/flexMonsterUtils';
2
+ import { Report } from 'flexmonster';
3
+
4
+ type ReportSettings = Pick<Report, ReportSettingsProperties>;
5
+ export default ReportSettings;
@@ -0,0 +1,12 @@
1
+ import { default as ReportVersionModel } from '../types/api/ReportVersionModel';
2
+ import { default as Flexmonster } from 'flexmonster';
3
+ import { RefObject } from 'react';
4
+ import { Pivot } from 'react-flexmonster';
5
+ import { default as ReportSettings } from '../types/ui/ReportSettings';
6
+
7
+ declare const savedProperties: readonly ["slice", "options", "formats", "conditions"];
8
+ export type ReportSettingsProperties = (typeof savedProperties)[number];
9
+ export declare const getSettingsStringFromRef: (pivotRef: RefObject<Pivot>) => string;
10
+ export declare const parseSettings: (reportVersion: ReportVersionModel) => Flexmonster.Report;
11
+ export declare const getFullSettingsObject: (settings: ReportSettings | undefined) => ReportSettings;
12
+ export {};
@@ -0,0 +1,13 @@
1
+ import { DropdownDivider } from '../Dropdown';
2
+ import { default as React, ComponentProps } from 'react';
3
+ import { ResponsiveContextDropdownItem } from './components';
4
+ import { ResponsiveContextDropdownItemProps } from './components/ResponsiveContextDropdownItem/ResponsiveContextDropdownItem';
5
+
6
+ type ResponsiveContextDropdownProps = {
7
+ children: Array<React.ReactElement<ResponsiveContextDropdownItemProps, typeof ResponsiveContextDropdownItem> | React.ReactElement<ComponentProps<typeof DropdownDivider>, typeof DropdownDivider>> | React.ReactElement<ResponsiveContextDropdownItemProps, typeof ResponsiveContextDropdownItem>;
8
+ };
9
+ declare const ResponsiveContextDropdown: {
10
+ ({ children }: ResponsiveContextDropdownProps): React.JSX.Element;
11
+ Item: React.FC<ResponsiveContextDropdownItemProps>;
12
+ };
13
+ export default ResponsiveContextDropdown;
@@ -0,0 +1,22 @@
1
+ import { ContextButton } from '../../../Buttons';
2
+ import { SharedProperties } from '../../../../models/index';
3
+ import { ComponentProps, ReactNode } from 'react';
4
+ import { DropdownItem } from 'react-bootstrap';
5
+
6
+ export type ResponsiveContextDropdownItemProps = Omit<SharedProperties<ComponentProps<typeof ContextButton>, ComponentProps<typeof DropdownItem>>, 'as' | 'onCopy'> & {
7
+ /**
8
+ * At whish screen size should the button hide to dropdown.
9
+ */
10
+ hideOn: 'sm' | 'md' | 'lg' | 'always';
11
+ children: ReactNode;
12
+ /**
13
+ * Unique identifier in that ResponsiveContextDropdown that is used as key.
14
+ */
15
+ cKey: number | string;
16
+ /**
17
+ * If provided, makes item behave as Link.
18
+ */
19
+ to?: string;
20
+ };
21
+ declare const ResponsiveContextDropdownItem: React.FC<ResponsiveContextDropdownItemProps>;
22
+ export default ResponsiveContextDropdownItem;
@@ -0,0 +1 @@
1
+ export { default as ResponsiveContextDropdownItem } from './ResponsiveContextDropdownItem/ResponsiveContextDropdownItem';
@@ -0,0 +1,2 @@
1
+ export { default as ResponsiveContextDropdown } from './ResponsiveContextDropdown';
2
+ export { ResponsiveContextDropdownItem } from './components';
@@ -0,0 +1,5 @@
1
+ import { ReactElement } from 'react';
2
+ import { default as ResponsiveContextDropdownItem, ResponsiveContextDropdownItemProps } from '../components/ResponsiveContextDropdownItem/ResponsiveContextDropdownItem';
3
+
4
+ export declare const responsiveContextDropdownItemDisplayName = "ResponsiveContextDropdownItem";
5
+ export declare const isResponsiveContextDropdownItem: (e: ReactElement) => e is ReactElement<ResponsiveContextDropdownItemProps, typeof ResponsiveContextDropdownItem>;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./Documents-mIwY2bxk.cjs"),t=require("react"),v=require("@azure/msal-browser"),b=require("@azure/msal-react");require("react-router-dom");require("react-hook-form");const k=require("./Loading-BIqRmexM.cjs"),D=require("./useLocalStorageState-DWEObjgl.cjs");function I(s){const u=e.toDate(s);return u.setHours(23,59,59,999),u}function P(){return I(Date.now())}function T(s,u){const n=+e.toDate(s),[o,r]=[+e.toDate(u.start),+e.toDate(u.end)].sort((a,i)=>a-i);return n>=o&&n<=r}function M(){return e.startOfDay(Date.now())}const A=({children:s})=>{const[u,n]=t.useState(!1),[o,r]=t.useState(""),a=t.useCallback(c=>{n(!0),r(c)},[]),i=t.useCallback(()=>{n(!1)},[]),l=t.useMemo(()=>({show:u,text:o,showConfirm:a,hideConfirm:i}),[u,o,a,i]);return e.jsxRuntimeExports.jsxs(e.ConfirmContext.Provider,{value:l,children:[e.jsxRuntimeExports.jsx(z,{}),s]})},O=()=>{const{texts:{confirm:s}}=t.useContext(e.LuminusComponentsContext),{isShown:u,text:n,onFinish:o}=e.usePrompt(),{options:r}=t.useContext(e.PromptContext),[a,i]=t.useState(r.defaultValue??""),l=t.useCallback(()=>{o(null)},[o]),c=t.useCallback(f=>{f.preventDefault(),!(r.required&&!a)&&o(a)},[o,r.required,a]);t.useEffect(()=>{u===!0&&i(r.defaultValue??"")},[u,r.defaultValue]);const d=t.useMemo(()=>({value:a,onChange:f=>i(f.currentTarget.value),className:"w-100",autoFocus:!0,tabIndex:0}),[a]);return e.jsxRuntimeExports.jsxs(e.Modal,{show:u,size:"sm",centered:!0,onHide:l,children:[e.jsxRuntimeExports.jsx(e.Modal.Header,{className:"justify-content-center",children:e.jsxRuntimeExports.jsx(e.Modal.Title,{children:n})}),e.jsxRuntimeExports.jsxs("form",{onSubmit:c,children:[e.jsxRuntimeExports.jsxs(e.Modal.Body,{children:[r.input==="textarea"?e.jsxRuntimeExports.jsx("textarea",{...d,rows:5}):void 0,r.input==="input"?e.jsxRuntimeExports.jsx(e.FormControl,{...d,type:r.type}):void 0]}),e.jsxRuntimeExports.jsxs(e.Modal.Footer,{className:"w-100 d-flex gap-5",children:[e.jsxRuntimeExports.jsx(e.PrimaryButton,{variant:"outlined",color:"secondary",onClick:l,className:"flex-grow-1",children:s.cancel}),e.jsxRuntimeExports.jsx(e.PrimaryButton,{color:"primary",disabled:r.required&&!a,type:"submit",className:"flex-grow-1",children:s.confirm})]})]})]})},N=({children:s})=>{const[u,n]=t.useState(!1),[o,r]=t.useState(""),[a,i]=t.useState({input:"textarea",type:"text"}),l=t.useRef(()=>{}),c=t.useCallback(C=>{r(C),n(!0)},[]),d=t.useCallback(()=>{n(!1)},[]),f=t.useMemo(()=>({isShown:u,text:o,showPrompt:c,hidePrompt:d,resolveRef:l,options:a,setOptions:i}),[u,o,c,d,a]);return e.jsxRuntimeExports.jsxs(e.PromptContext.Provider,{value:f,children:[s,e.jsxRuntimeExports.jsx(O,{})]})},U=({cookieDomain:s,axiosOptions:u,language:n,texts:o,ProjectIconComponent:r,localizationContext:a,chartColorPalette:i,children:l})=>{const c=t.useMemo(()=>({axiosOptions:u,cookieDomain:s,language:n,texts:o,ProjectIconComponent:r,localizationContext:a,chartColorPalette:i}),[u,s,n,r,a,o,i]);return e.jsxRuntimeExports.jsx(e.LuminusComponentsContext.Provider,{value:c,children:e.jsxRuntimeExports.jsx(A,{children:e.jsxRuntimeExports.jsxs(N,{children:[e.jsxRuntimeExports.jsx(e.Ie,{}),l]})})})},G=({children:s})=>{const[u,n]=t.useState(!1),[o]=t.useState(new Set),r=t.useCallback(l=>{o.add(l),n(!0)},[o]),a=t.useCallback(l=>{o.delete(l),o.size===0&&n(!1)},[o]),i=t.useMemo(()=>({isLoading:u,startLoading:r,stopLoading:a}),[u,r,a]);return e.jsxRuntimeExports.jsxs(e.LoadingContext.Provider,{value:i,children:[u&&e.jsxRuntimeExports.jsx(k.Loading,{}),s]})},q=({children:s})=>{const u=e.useAxios(),{msalInstance:n}=t.useContext(e.AuthContext),{delegation:o,setDelegation:r,setAvailableDelegations:a,refreshAvailableDelegations:i}=t.useContext(e.DelegationContext),{getToken:l}=e.useAuth(),[c,d]=t.useState(null),f=t.useCallback(async()=>{const x=await l();x&&d(x)},[l]);t.useEffect(()=>{f()},[f]);const p=t.useCallback(()=>{const x=localStorage.getItem("user")??null;return x?JSON.parse(x??""):null},[])(),[E,h]=t.useState({state:p?e.LoginState.LOGGED_IN:e.LoginState.LOGGING_IN,user:p}),L=t.useCallback(async x=>{let m=null;return await u.get("/user/detail",x?{headers:{Authorization:`Bearer ${x}`}}:void 0).then(S=>{m=S.data}).catch(()=>{m=null}),m},[u]),y=t.useCallback(()=>{localStorage.removeItem("user"),h({state:e.LoginState.LOGGED_OUT,user:null}),r(null),a(null)},[a,r]),j=t.useCallback(async x=>{h({state:e.LoginState.LOGGING_IN,user:null});const m=await L(x);return m?(h({state:e.LoginState.LOGGED_IN,user:m}),localStorage.setItem("user",JSON.stringify(m)),await i(),!0):(h({state:e.LoginState.LOGIN_FAILED,user:null}),!1)},[L,i]),g=t.useCallback(()=>{y()},[y]);t.useEffect(()=>{if(n){const x=n.addEventCallback(m=>{if(m.eventType===v.EventType.LOGIN_SUCCESS&&m.payload){const S=m.payload;d(S.accessToken)}});return()=>{x&&n.removeEventCallback(x)}}return()=>{}},[n,j,g]);const R=t.useCallback(async x=>{x&&await j(x).catch(()=>{g(),r(null)})},[j,g,r]);t.useEffect(()=>{R(c)},[c,o==null?void 0:o.id,R]);const w=t.useMemo(()=>({user:E.user,userLoginState:E,loginUser:j,logoutUser:g}),[E,j,g]);return e.jsxRuntimeExports.jsx(e.UserContext.Provider,{value:w,children:s})},_=({...s})=>{const{cookieDomain:u}=t.useContext(e.LuminusComponentsContext),[,n]=e.useCookies(["Authorization"]),o=t.useMemo(()=>({useMsal:s.useMsal??!1,msalInstance:s.useMsal?s.msalInstance??null:null,msalScopes:s.useMsal?s.msalScopes??[]:[]}),[s]);return t.useEffect(()=>{if(s.useMsal){const r=s.msalInstance.addEventCallback(a=>{if(a.eventType===v.EventType.LOGIN_SUCCESS||a.eventType===v.EventType.ACQUIRE_TOKEN_SUCCESS&&a.payload){const i=a.payload,l=i.account;s.msalInstance.setActiveAccount(l);const c=i.accessToken,d=i.expiresOn;n("Authorization",c,{path:"/",secure:!0,sameSite:"none",domain:u,expires:d??void 0})}a.error&&console.error("AuthProvider MSAL Error",a)});return()=>{r&&s.msalInstance.removeEventCallback(r)}}return()=>{}},[s,n,u]),e.jsxRuntimeExports.jsx(e.AuthContext.Provider,{value:o,children:s.useMsal?e.jsxRuntimeExports.jsx(b.MsalProvider,{instance:s.msalInstance,children:s.children}):s.children})},B=({children:s,relativeEndpoint:u})=>{const[n,o,r]=D.useLocalStorageState("user-delegation",null),a=t.useMemo(()=>{if(!n)return null;const C=n.from?e.parseISO(n.from):M(),p=n.to?e.parseISO(n.to):P();return T(new Date(Date.now()),{start:C,end:p})?n:(o(null),null)},[n,o]),{data:i,setData:l,reloadData:c}=D.useGetApiData(u,{nullStateBeforeLoad:!1,nullStateOnFail:!0}),d=t.useRef(null);t.useEffect(()=>{const C=()=>{c(),d.current=window.setTimeout(C,e.msToStartOfNextDay()+5e3)};return C(),()=>{d.current!==null&&window.clearTimeout(d.current)}},[c]),t.useEffect(()=>{const C=()=>{r()};return window.addEventListener("focus",C),()=>{window.removeEventListener("focus",C)}},[r,c]);const f=t.useMemo(()=>({delegation:a,setDelegation:o,availableDelegations:i,setAvailableDelegations:l,refreshAvailableDelegations:c}),[a,o,i,l,c]);return e.jsxRuntimeExports.jsx(e.DelegationContext.Provider,{value:f,children:s})},z=()=>{const{texts:{confirm:s}}=t.useContext(e.LuminusComponentsContext),{onConfirm:u,onCancel:n,text:o,show:r}=e.useConfirm();return e.jsxRuntimeExports.jsxs(e.Modal,{show:r,size:"sm",centered:!0,onHide:n,children:[e.jsxRuntimeExports.jsx(e.Modal.Header,{className:"justify-content-center",children:e.jsxRuntimeExports.jsx(e.Modal.Title,{children:o})}),e.jsxRuntimeExports.jsx(e.Modal.Body,{children:e.jsxRuntimeExports.jsxs("div",{className:"w-100 d-flex gap-5",children:[e.jsxRuntimeExports.jsx(e.PrimaryButton,{type:"button",variant:"outlined",color:"secondary",className:"w-100",onClick:n,children:s.no}),e.jsxRuntimeExports.jsx(e.PrimaryButton,{type:"button",color:"primary",onClick:u,className:"w-100 ml",children:s.yes})]})})]})};exports.AuthContext=e.AuthContext;exports.DelegationContext=e.DelegationContext;exports.LoadingContext=e.LoadingContext;exports.LuminusComponentsContext=e.LuminusComponentsContext;exports.UserContext=e.UserContext;exports.AuthProvider=_;exports.DelegationProvider=B;exports.LoadingProvider=G;exports.LuminusComponentsProvider=U;exports.UserProvider=q;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./nivo-pie.es-plr8yBAX.cjs"),t=require("react"),v=require("@azure/msal-browser"),w=require("@azure/msal-react");require("react-router-dom");require("react-hook-form");require("react-flexmonster");const b=require("./Loading-DiAp8L6X.cjs"),k=require("./useGetApiData-D79g-CfI.cjs"),P=require("./useLocalStorageState-BFc8Gc8H.cjs");function I(s){const u=e.toDate(s);return u.setHours(23,59,59,999),u}function T(){return I(Date.now())}function M(s,u){const n=+e.toDate(s),[o,r]=[+e.toDate(u.start),+e.toDate(u.end)].sort((a,i)=>a-i);return n>=o&&n<=r}function A(){return e.startOfDay(Date.now())}const O=({children:s})=>{const[u,n]=t.useState(!1),[o,r]=t.useState(""),a=t.useCallback(c=>{n(!0),r(c)},[]),i=t.useCallback(()=>{n(!1)},[]),l=t.useMemo(()=>({show:u,text:o,showConfirm:a,hideConfirm:i}),[u,o,a,i]);return e.jsxRuntimeExports.jsxs(e.ConfirmContext.Provider,{value:l,children:[e.jsxRuntimeExports.jsx(F,{}),s]})},N=()=>{const{texts:{confirm:s}}=t.useContext(e.LuminusComponentsContext),{isShown:u,text:n,onFinish:o}=e.usePrompt(),{options:r}=t.useContext(e.PromptContext),[a,i]=t.useState(r.defaultValue??""),l=t.useCallback(()=>{o(null)},[o]),c=t.useCallback(f=>{f.preventDefault(),!(r.required&&!a)&&o(a)},[o,r.required,a]);t.useEffect(()=>{u===!0&&i(r.defaultValue??"")},[u,r.defaultValue]);const d=t.useMemo(()=>({value:a,onChange:f=>i(f.currentTarget.value),className:"w-100",autoFocus:!0,tabIndex:0}),[a]);return e.jsxRuntimeExports.jsxs(e.Modal,{show:u,size:"sm",centered:!0,onHide:l,children:[e.jsxRuntimeExports.jsx(e.Modal.Header,{className:"justify-content-center",children:e.jsxRuntimeExports.jsx(e.Modal.Title,{children:n})}),e.jsxRuntimeExports.jsxs("form",{onSubmit:c,children:[e.jsxRuntimeExports.jsxs(e.Modal.Body,{children:[r.input==="textarea"?e.jsxRuntimeExports.jsx("textarea",{...d,rows:5}):void 0,r.input==="input"?e.jsxRuntimeExports.jsx(e.FormControl,{...d,type:r.type}):void 0]}),e.jsxRuntimeExports.jsxs(e.Modal.Footer,{className:"w-100 d-flex gap-5",children:[e.jsxRuntimeExports.jsx(e.PrimaryButton,{variant:"outlined",color:"secondary",onClick:l,className:"flex-grow-1",children:s.cancel}),e.jsxRuntimeExports.jsx(e.PrimaryButton,{color:"primary",disabled:r.required&&!a,type:"submit",className:"flex-grow-1",children:s.confirm})]})]})]})},U=({children:s})=>{const[u,n]=t.useState(!1),[o,r]=t.useState(""),[a,i]=t.useState({input:"textarea",type:"text"}),l=t.useRef(()=>{}),c=t.useCallback(C=>{r(C),n(!0)},[]),d=t.useCallback(()=>{n(!1)},[]),f=t.useMemo(()=>({isShown:u,text:o,showPrompt:c,hidePrompt:d,resolveRef:l,options:a,setOptions:i}),[u,o,c,d,a]);return e.jsxRuntimeExports.jsxs(e.PromptContext.Provider,{value:f,children:[s,e.jsxRuntimeExports.jsx(N,{})]})},G=({cookieDomain:s,axiosOptions:u,language:n,texts:o,ProjectIconComponent:r,localizationContext:a,chartColorPalette:i,children:l})=>{const c=t.useMemo(()=>({axiosOptions:u,cookieDomain:s,language:n,texts:o,ProjectIconComponent:r,localizationContext:a,chartColorPalette:i}),[u,s,n,r,a,o,i]);return e.jsxRuntimeExports.jsx(e.LuminusComponentsContext.Provider,{value:c,children:e.jsxRuntimeExports.jsx(O,{children:e.jsxRuntimeExports.jsxs(U,{children:[e.jsxRuntimeExports.jsx(e.Ie,{}),l]})})})},q=({children:s})=>{const[u,n]=t.useState(!1),[o]=t.useState(new Set),r=t.useCallback(l=>{o.add(l),n(!0)},[o]),a=t.useCallback(l=>{o.delete(l),o.size===0&&n(!1)},[o]),i=t.useMemo(()=>({isLoading:u,startLoading:r,stopLoading:a}),[u,r,a]);return e.jsxRuntimeExports.jsxs(e.LoadingContext.Provider,{value:i,children:[u&&e.jsxRuntimeExports.jsx(b.Loading,{}),s]})},_=({children:s})=>{const u=e.useAxios(),{msalInstance:n}=t.useContext(e.AuthContext),{delegation:o,setDelegation:r,setAvailableDelegations:a,refreshAvailableDelegations:i}=t.useContext(e.DelegationContext),{getToken:l}=e.useAuth(),[c,d]=t.useState(null),f=t.useCallback(async()=>{const x=await l();x&&d(x)},[l]);t.useEffect(()=>{f()},[f]);const p=t.useCallback(()=>{const x=localStorage.getItem("user")??null;return x?JSON.parse(x??""):null},[])(),[E,h]=t.useState({state:p?e.LoginState.LOGGED_IN:e.LoginState.LOGGING_IN,user:p}),L=t.useCallback(async x=>{let m=null;return await u.get("/user/detail",x?{headers:{Authorization:`Bearer ${x}`}}:void 0).then(S=>{m=S.data}).catch(()=>{m=null}),m},[u]),y=t.useCallback(()=>{localStorage.removeItem("user"),h({state:e.LoginState.LOGGED_OUT,user:null}),r(null),a(null)},[a,r]),j=t.useCallback(async x=>{h({state:e.LoginState.LOGGING_IN,user:null});const m=await L(x);return m?(h({state:e.LoginState.LOGGED_IN,user:m}),localStorage.setItem("user",JSON.stringify(m)),await i(),!0):(h({state:e.LoginState.LOGIN_FAILED,user:null}),!1)},[L,i]),g=t.useCallback(()=>{y()},[y]);t.useEffect(()=>{if(n){const x=n.addEventCallback(m=>{if(m.eventType===v.EventType.LOGIN_SUCCESS&&m.payload){const S=m.payload;d(S.accessToken)}});return()=>{x&&n.removeEventCallback(x)}}return()=>{}},[n,j,g]);const R=t.useCallback(async x=>{x&&await j(x).catch(()=>{g(),r(null)})},[j,g,r]);t.useEffect(()=>{R(c)},[c,o==null?void 0:o.id,R]);const D=t.useMemo(()=>({user:E.user,userLoginState:E,loginUser:j,logoutUser:g}),[E,j,g]);return e.jsxRuntimeExports.jsx(e.UserContext.Provider,{value:D,children:s})},B=({...s})=>{const{cookieDomain:u}=t.useContext(e.LuminusComponentsContext),[,n]=e.useCookies(["Authorization"]),o=t.useMemo(()=>({useMsal:s.useMsal??!1,msalInstance:s.useMsal?s.msalInstance??null:null,msalScopes:s.useMsal?s.msalScopes??[]:[]}),[s]);return t.useEffect(()=>{if(s.useMsal){const r=s.msalInstance.addEventCallback(a=>{if(a.eventType===v.EventType.LOGIN_SUCCESS||a.eventType===v.EventType.ACQUIRE_TOKEN_SUCCESS&&a.payload){const i=a.payload,l=i.account;s.msalInstance.setActiveAccount(l);const c=i.accessToken,d=i.expiresOn;n("Authorization",c,{path:"/",secure:!0,sameSite:"none",domain:u,expires:d??void 0})}a.error&&console.error("AuthProvider MSAL Error",a)});return()=>{r&&s.msalInstance.removeEventCallback(r)}}return()=>{}},[s,n,u]),e.jsxRuntimeExports.jsx(e.AuthContext.Provider,{value:o,children:s.useMsal?e.jsxRuntimeExports.jsx(w.MsalProvider,{instance:s.msalInstance,children:s.children}):s.children})},z=({children:s,relativeEndpoint:u})=>{const[n,o,r]=P.useLocalStorageState("user-delegation",null),a=t.useMemo(()=>{if(!n)return null;const C=n.from?e.parseISO(n.from):A(),p=n.to?e.parseISO(n.to):T();return M(new Date(Date.now()),{start:C,end:p})?n:(o(null),null)},[n,o]),{data:i,setData:l,reloadData:c}=k.useGetApiData(u,{nullStateBeforeLoad:!1,nullStateOnFail:!0}),d=t.useRef(null);t.useEffect(()=>{const C=()=>{c(),d.current=window.setTimeout(C,e.msToStartOfNextDay()+5e3)};return C(),()=>{d.current!==null&&window.clearTimeout(d.current)}},[c]),t.useEffect(()=>{const C=()=>{r()};return window.addEventListener("focus",C),()=>{window.removeEventListener("focus",C)}},[r,c]);const f=t.useMemo(()=>({delegation:a,setDelegation:o,availableDelegations:i,setAvailableDelegations:l,refreshAvailableDelegations:c}),[a,o,i,l,c]);return e.jsxRuntimeExports.jsx(e.DelegationContext.Provider,{value:f,children:s})},F=()=>{const{texts:{confirm:s}}=t.useContext(e.LuminusComponentsContext),{onConfirm:u,onCancel:n,text:o,show:r}=e.useConfirm();return e.jsxRuntimeExports.jsxs(e.Modal,{show:r,size:"sm",centered:!0,onHide:n,children:[e.jsxRuntimeExports.jsx(e.Modal.Header,{className:"justify-content-center",children:e.jsxRuntimeExports.jsx(e.Modal.Title,{children:o})}),e.jsxRuntimeExports.jsx(e.Modal.Body,{children:e.jsxRuntimeExports.jsxs("div",{className:"w-100 d-flex gap-5",children:[e.jsxRuntimeExports.jsx(e.PrimaryButton,{type:"button",variant:"outlined",color:"secondary",className:"w-100",onClick:n,children:s.no}),e.jsxRuntimeExports.jsx(e.PrimaryButton,{type:"button",color:"primary",onClick:u,className:"w-100 ml",children:s.yes})]})})]})};exports.AuthContext=e.AuthContext;exports.DelegationContext=e.DelegationContext;exports.LoadingContext=e.LoadingContext;exports.LuminusComponentsContext=e.LuminusComponentsContext;exports.UserContext=e.UserContext;exports.AuthProvider=B;exports.DelegationProvider=z;exports.LoadingProvider=q;exports.LuminusComponentsProvider=G;exports.UserProvider=_;