@argusoft/medplat-core 1.0.14 → 1.0.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AccessRights-Bvd5Bm5K.js +1259 -0
- package/dist/AccessRights-Bvd5Bm5K.js.map +1 -0
- package/dist/{AddEditQueryBuilder-7JRplV5J.js → AddEditQueryBuilder-Bcjl5mXE.js} +2 -2
- package/dist/{AddEditQueryBuilder-7JRplV5J.js.map → AddEditQueryBuilder-Bcjl5mXE.js.map} +1 -1
- package/dist/{AddFeatures-CkTu7sOI.js → AddFeatures-CE5rBxEG.js} +2 -2
- package/dist/{AddFeatures-CkTu7sOI.js.map → AddFeatures-CE5rBxEG.js.map} +1 -1
- package/dist/{AddLabelModal-DE3ploGD.js → AddLabelModal-CB8E8cYG.js} +2 -2
- package/dist/{AddLabelModal-DE3ploGD.js.map → AddLabelModal-CB8E8cYG.js.map} +1 -1
- package/dist/{AddRoleDrawer-ZK1eejxI.js → AddRoleDrawer-SvntLdRu.js} +44 -43
- package/dist/AddRoleDrawer-SvntLdRu.js.map +1 -0
- package/dist/{AppModal-BgZyfrd-.js → AppModal-BKgIwe1h.js} +2 -2
- package/dist/{AppModal-BgZyfrd-.js.map → AppModal-BKgIwe1h.js.map} +1 -1
- package/dist/{ChangePasswordModalCore-DIe4rzW-.js → ChangePasswordModalCore-CTGy8Ttf.js} +2 -2
- package/dist/{ChangePasswordModalCore-DIe4rzW-.js.map → ChangePasswordModalCore-CTGy8Ttf.js.map} +1 -1
- package/dist/{ConditionConfig-GDCXIg3C.js → ConditionConfig-DB0FqwgG.js} +2 -2
- package/dist/{ConditionConfig-GDCXIg3C.js.map → ConditionConfig-DB0FqwgG.js.map} +1 -1
- package/dist/{EntityManagement-D-x6Qzal.js → EntityManagement-DQKXnEzz.js} +2 -2
- package/dist/{EntityManagement-D-x6Qzal.js.map → EntityManagement-DQKXnEzz.js.map} +1 -1
- package/dist/EventConfigurations-DZvSJ5EZ.js +395 -0
- package/dist/EventConfigurations-DZvSJ5EZ.js.map +1 -0
- package/dist/{EventsExceptionModal-BF6E1Np7.js → EventsExceptionModal-DsvngLi8.js} +2 -2
- package/dist/{EventsExceptionModal-BF6E1Np7.js.map → EventsExceptionModal-DsvngLi8.js.map} +1 -1
- package/dist/EventsSkeleton-DCXwwPbb.js +76 -0
- package/dist/EventsSkeleton-DCXwwPbb.js.map +1 -0
- package/dist/FeatureMenu-CLX8VNZ-.js +265 -0
- package/dist/FeatureMenu-CLX8VNZ-.js.map +1 -0
- package/dist/Features-Cpf1PDx0.js +13 -0
- package/dist/Features-Cpf1PDx0.js.map +1 -0
- package/dist/FileSaver.min-CN9EpL2h.js.map +1 -1
- package/dist/ImmunizationConfigurationsList-K2ddBpPJ.js +345 -0
- package/dist/ImmunizationConfigurationsList-K2ddBpPJ.js.map +1 -0
- package/dist/ImmunizationSkeleton-D2tdv5k-.js.map +1 -1
- package/dist/{LanguagesModal-rk6IGQwY.js → LanguagesModal-CX3oS8rk.js} +2 -2
- package/dist/{LanguagesModal-rk6IGQwY.js.map → LanguagesModal-CX3oS8rk.js.map} +1 -1
- package/dist/{ManageDynamicFeature-C2I7Ho7i.js → ManageDynamicFeature-CsIett5x.js} +2 -2
- package/dist/{ManageDynamicFeature-C2I7Ho7i.js.map → ManageDynamicFeature-CsIett5x.js.map} +1 -1
- package/dist/{ManageEventConfiguration-BJxS2Su0.js → ManageEventConfiguration-0YBDaxOI.js} +60 -60
- package/dist/ManageEventConfiguration-0YBDaxOI.js.map +1 -0
- package/dist/{ManageNotification-DMN2szWy.js → ManageNotification-EQgnOO0U.js} +632 -632
- package/dist/ManageNotification-EQgnOO0U.js.map +1 -0
- package/dist/{ManageRole-CuXmWQyp.js → ManageRole-Cbs9dUhc.js} +244 -191
- package/dist/ManageRole-Cbs9dUhc.js.map +1 -0
- package/dist/ManageTranslation-D9IScGhk.js +625 -0
- package/dist/ManageTranslation-D9IScGhk.js.map +1 -0
- package/dist/{ManageUser-Dr3ptCYp.js → ManageUser-C9uMe9av.js} +744 -735
- package/dist/ManageUser-C9uMe9av.js.map +1 -0
- package/dist/{MobileTypeEventConfigModal-ChhO_A4f.js → MobileTypeEventConfigModal-Ltm529jG.js} +2 -2
- package/dist/{MobileTypeEventConfigModal-ChhO_A4f.js.map → MobileTypeEventConfigModal-Ltm529jG.js.map} +1 -1
- package/dist/NotificationList-BZwvgsf6.js +402 -0
- package/dist/NotificationList-BZwvgsf6.js.map +1 -0
- package/dist/{OtherTypeEventConfigModal-ZnCGWm9v.js → OtherTypeEventConfigModal-dXt2qDg_.js} +2 -2
- package/dist/OtherTypeEventConfigModal-dXt2qDg_.js.map +1 -0
- package/dist/{QueryBuilder-BPfavHH9.js → QueryBuilder-DXexUIe8.js} +154 -148
- package/dist/QueryBuilder-DXexUIe8.js.map +1 -0
- package/dist/{QueryManagement-DXA73N2j.js → QueryManagement-BpIRH8hI.js} +228 -214
- package/dist/QueryManagement-BpIRH8hI.js.map +1 -0
- package/dist/RoleManagement-BThAL5LO.js +422 -0
- package/dist/RoleManagement-BThAL5LO.js.map +1 -0
- package/dist/SubMenu-BGznOP2a.js +191 -0
- package/dist/SubMenu-BGznOP2a.js.map +1 -0
- package/dist/TableDetails-DztbjsIA.js +2069 -0
- package/dist/TableDetails-DztbjsIA.js.map +1 -0
- package/dist/TableList-DYwotUDO.js +1425 -0
- package/dist/TableList-DYwotUDO.js.map +1 -0
- package/dist/{TypeConfiguration-C-lk8Szs.js → TypeConfiguration-DYbBG_hZ.js} +2 -2
- package/dist/{TypeConfiguration-C-lk8Szs.js.map → TypeConfiguration-DYbBG_hZ.js.map} +1 -1
- package/dist/{UserList-S5Q76wO7.js → UserList-BH6OpZvq.js} +410 -400
- package/dist/UserList-BH6OpZvq.js.map +1 -0
- package/dist/UserListSkeleton-cglK2SaU.js.map +1 -1
- package/dist/WidgetList-D-fIf3N2.js +200 -0
- package/dist/WidgetList-D-fIf3N2.js.map +1 -0
- package/dist/i18next-CTOWN_jH.js.map +1 -1
- package/dist/index.css +1 -1
- package/dist/index.js +13 -13
- package/dist/xlsx.min-D1LFqt_b.js.map +1 -1
- package/package.json +1 -1
- package/dist/AccessRights-BMRM1u9S.js +0 -1228
- package/dist/AccessRights-BMRM1u9S.js.map +0 -1
- package/dist/AddRoleDrawer-ZK1eejxI.js.map +0 -1
- package/dist/EventConfigurations-jGCJ4LqP.js +0 -384
- package/dist/EventConfigurations-jGCJ4LqP.js.map +0 -1
- package/dist/EventsSkeleton-BN7_0IGs.js +0 -74
- package/dist/EventsSkeleton-BN7_0IGs.js.map +0 -1
- package/dist/FeatureMenu-Ds6lFg4w.js +0 -249
- package/dist/FeatureMenu-Ds6lFg4w.js.map +0 -1
- package/dist/Features-Cshdl06N.js +0 -12
- package/dist/Features-Cshdl06N.js.map +0 -1
- package/dist/ImmunizationConfigurationsList-CQnxWa09.js +0 -335
- package/dist/ImmunizationConfigurationsList-CQnxWa09.js.map +0 -1
- package/dist/ManageEventConfiguration-BJxS2Su0.js.map +0 -1
- package/dist/ManageNotification-DMN2szWy.js.map +0 -1
- package/dist/ManageRole-CuXmWQyp.js.map +0 -1
- package/dist/ManageTranslation-BTxvSYKb.js +0 -616
- package/dist/ManageTranslation-BTxvSYKb.js.map +0 -1
- package/dist/ManageUser-Dr3ptCYp.js.map +0 -1
- package/dist/NotificationList-BqibwMaM.js +0 -400
- package/dist/NotificationList-BqibwMaM.js.map +0 -1
- package/dist/OtherTypeEventConfigModal-ZnCGWm9v.js.map +0 -1
- package/dist/QueryBuilder-BPfavHH9.js.map +0 -1
- package/dist/QueryManagement-DXA73N2j.js.map +0 -1
- package/dist/RoleManagement-C0feJCuq.js +0 -410
- package/dist/RoleManagement-C0feJCuq.js.map +0 -1
- package/dist/SubMenu-DAfZC9Xi.js +0 -188
- package/dist/SubMenu-DAfZC9Xi.js.map +0 -1
- package/dist/TableDetails-DzREeJkm.js +0 -1508
- package/dist/TableDetails-DzREeJkm.js.map +0 -1
- package/dist/TableList-B9hr05Hs.js +0 -428
- package/dist/TableList-B9hr05Hs.js.map +0 -1
- package/dist/UserList-S5Q76wO7.js.map +0 -1
- package/dist/WidgetList-BSApErov.js +0 -188
- package/dist/WidgetList-BSApErov.js.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as e, jsxs as l } from "react/jsx-runtime";
|
|
2
|
-
import { Drawer as he, Typography as m, Button as x, Table as L, TableHead as z, TableRow as N, TableCell as
|
|
2
|
+
import { Drawer as he, Typography as m, Button as x, Table as L, TableHead as z, TableRow as N, TableCell as i, TableBody as j, Divider as be } from "@mui/material";
|
|
3
3
|
import { Grid as h, Box as ye, Stack as ge } from "@mui/system";
|
|
4
4
|
import S from "prop-types";
|
|
5
5
|
import Q from "@/views/custom-components/CustomTextField";
|
|
@@ -11,15 +11,16 @@ import Z from "@/views/custom-components/CustomConfirmationModal";
|
|
|
11
11
|
import { showToast as W } from "@/common/toaster/toaster";
|
|
12
12
|
import Ce from "@/views/custom-components/CustomCheckBox";
|
|
13
13
|
import { api as Ae } from "@/common/interceptors/AxiosInterceptor";
|
|
14
|
-
import Te from "@/
|
|
14
|
+
import Te from "@/common/services/util/GeneralUtil";
|
|
15
|
+
import Re from "@/hooks/useTrackEvent";
|
|
15
16
|
import D from "@/views/custom-components/CustomAutoComplete";
|
|
16
|
-
import { useTranslateProvider as
|
|
17
|
+
import { useTranslateProvider as Pe } from "@/common/languageTranslator/TranslationContext";
|
|
17
18
|
import { faTrash as ee } from "@fortawesome/free-solid-svg-icons";
|
|
18
19
|
import { FontAwesomeIcon as re } from "@fortawesome/react-fontawesome";
|
|
19
|
-
const
|
|
20
|
-
function
|
|
21
|
-
var
|
|
22
|
-
const P = Y(null), F = Y(!1), [O, $] = E([]), [g, U] = E(null), [
|
|
20
|
+
const Ie = (R) => Ae.post(Te.isTecho ? "/notificationtype/update" : "/notificationtype", R);
|
|
21
|
+
function ke({ open: R, handleClose: _, data: f, roleData: y }) {
|
|
22
|
+
var q, H;
|
|
23
|
+
const P = Y(null), F = Y(!1), [O, $] = E([]), [g, U] = E(null), [G, v] = E(0), [oe, te] = E(null), { translate: n } = Pe(), ae = X.object().shape({
|
|
23
24
|
name: X.string().required("Enter Name")
|
|
24
25
|
});
|
|
25
26
|
B(() => {
|
|
@@ -46,7 +47,7 @@ function Ie({ open: R, handleClose: _, data: f, roleData: y }) {
|
|
|
46
47
|
defaultValues: { selectedPerformer: [] },
|
|
47
48
|
mode: "onChange",
|
|
48
49
|
resolver: ve(ae)
|
|
49
|
-
}),
|
|
50
|
+
}), c = de();
|
|
50
51
|
B(() => {
|
|
51
52
|
var o;
|
|
52
53
|
p("name", f.notificationName), (o = f == null ? void 0 : f.roles) != null && o.length && p(
|
|
@@ -57,24 +58,24 @@ function Ie({ open: R, handleClose: _, data: f, roleData: y }) {
|
|
|
57
58
|
const ne = (o, r) => {
|
|
58
59
|
const t = o == null ? void 0 : o.map((a) => a.id);
|
|
59
60
|
p(`selectedPerformer[${r}].roles`, t);
|
|
60
|
-
},
|
|
61
|
+
}, ie = (o, r, t) => {
|
|
61
62
|
const a = w("escalationLevels");
|
|
62
63
|
a[r].performAction[t] = o, p("escalationLevels", a);
|
|
63
|
-
},
|
|
64
|
-
const o =
|
|
64
|
+
}, ce = () => {
|
|
65
|
+
const o = c.roles || [], r = [...o];
|
|
65
66
|
O.forEach((t) => {
|
|
66
67
|
o.some((d) => d.id === t.id) || r.push(t);
|
|
67
68
|
}), p("roles", r), $([]);
|
|
68
69
|
};
|
|
69
70
|
B(() => {
|
|
70
|
-
const o = w("selectedPerformer"), r = (
|
|
71
|
+
const o = w("selectedPerformer"), r = (c == null ? void 0 : c.roles) || [], t = o.map((a) => {
|
|
71
72
|
const d = ((a == null ? void 0 : a.roles) || []).filter(
|
|
72
73
|
(u) => r.some((A) => A.id === u)
|
|
73
74
|
);
|
|
74
75
|
return { ...a, roles: d };
|
|
75
76
|
});
|
|
76
77
|
p("selectedPerformer", t, { shouldValidate: !0 });
|
|
77
|
-
}, [
|
|
78
|
+
}, [c.roles]);
|
|
78
79
|
const me = (o, r) => {
|
|
79
80
|
const t = w("escalationLevels"), a = w("selectedPerformer");
|
|
80
81
|
t[r].roles = [
|
|
@@ -116,7 +117,7 @@ function Ie({ open: R, handleClose: _, data: f, roleData: y }) {
|
|
|
116
117
|
} catch (t) {
|
|
117
118
|
W({ message: t, type: "error" });
|
|
118
119
|
}
|
|
119
|
-
}, M =
|
|
120
|
+
}, M = Re(), fe = async (o) => {
|
|
120
121
|
try {
|
|
121
122
|
M("button_click", {
|
|
122
123
|
button_name: f ? "update widget button" : "add widget button",
|
|
@@ -124,7 +125,7 @@ function Ie({ open: R, handleClose: _, data: f, roleData: y }) {
|
|
|
124
125
|
button_id: "addroledrawer-button-submit"
|
|
125
126
|
});
|
|
126
127
|
const { roles: r = [], escalationLevels: t } = o, a = r.map((u) => u.id), d = { ...f, escalationLevels: t, roles: a };
|
|
127
|
-
await
|
|
128
|
+
await Ie(d).catch((u) => {
|
|
128
129
|
console.error("error in updating notification", u);
|
|
129
130
|
}), W({ message: "Widget Updated Successfully", type: "success" }), F.current = !0, _(!0);
|
|
130
131
|
} catch (r) {
|
|
@@ -206,7 +207,7 @@ function Ie({ open: R, handleClose: _, data: f, roleData: y }) {
|
|
|
206
207
|
variant: "contained",
|
|
207
208
|
size: "small",
|
|
208
209
|
disabled: !O.length,
|
|
209
|
-
onClick:
|
|
210
|
+
onClick: ce,
|
|
210
211
|
"data-testid": "addroledrawer-button-add",
|
|
211
212
|
children: n("Assign")
|
|
212
213
|
}
|
|
@@ -220,16 +221,16 @@ function Ie({ open: R, handleClose: _, data: f, roleData: y }) {
|
|
|
220
221
|
className: "border border-gray-300",
|
|
221
222
|
children: [
|
|
222
223
|
/* @__PURE__ */ e(z, { children: /* @__PURE__ */ l(N, { children: [
|
|
223
|
-
/* @__PURE__ */ e(
|
|
224
|
-
/* @__PURE__ */ e(
|
|
224
|
+
/* @__PURE__ */ e(i, { className: "border-r border-gray-300 p-2", children: /* @__PURE__ */ e(m, { variant: "body2", className: "font-bold", children: `${n("Role")}${n("name")} (${n("Assigned to")})` }) }),
|
|
225
|
+
/* @__PURE__ */ e(i, { className: "p-2", children: /* @__PURE__ */ e(m, { variant: "body2", className: "font-bold", children: n("Delete") }) })
|
|
225
226
|
] }) }),
|
|
226
|
-
/* @__PURE__ */ e(j, { children: (
|
|
227
|
+
/* @__PURE__ */ e(j, { children: (q = c == null ? void 0 : c.roles) == null ? void 0 : q.map((o, r) => /* @__PURE__ */ l(
|
|
227
228
|
N,
|
|
228
229
|
{
|
|
229
230
|
"data-testid": "addroledrawer-tablerow-roles",
|
|
230
231
|
children: [
|
|
231
|
-
/* @__PURE__ */ e(
|
|
232
|
-
/* @__PURE__ */ l(
|
|
232
|
+
/* @__PURE__ */ e(i, { className: "border border-gray-300 p-2", children: /* @__PURE__ */ e(m, { variant: "caption", children: o.name }) }),
|
|
233
|
+
/* @__PURE__ */ l(i, { className: "p-2", children: [
|
|
233
234
|
/* @__PURE__ */ e(
|
|
234
235
|
re,
|
|
235
236
|
{
|
|
@@ -244,7 +245,7 @@ function Ie({ open: R, handleClose: _, data: f, roleData: y }) {
|
|
|
244
245
|
/* @__PURE__ */ e(
|
|
245
246
|
Z,
|
|
246
247
|
{
|
|
247
|
-
open:
|
|
248
|
+
open: G === 1 && g === o.id,
|
|
248
249
|
handleClose: () => v(0),
|
|
249
250
|
handleClick: (t) => pe(),
|
|
250
251
|
title: "CONFIRM ACTION",
|
|
@@ -260,17 +261,17 @@ function Ie({ open: R, handleClose: _, data: f, roleData: y }) {
|
|
|
260
261
|
]
|
|
261
262
|
}
|
|
262
263
|
) }),
|
|
263
|
-
(H =
|
|
264
|
+
(H = c.escalationLevels) == null ? void 0 : H.map((o, r) => {
|
|
264
265
|
var t, a, d, u, A, k, V, J;
|
|
265
266
|
return /* @__PURE__ */ l(Ne.Fragment, { children: [
|
|
266
267
|
/* @__PURE__ */ e(h, { "data-testid": "addroledrawer-grid-escalationlevel", children: /* @__PURE__ */ l(L, { className: "border border-gray-300", children: [
|
|
267
268
|
/* @__PURE__ */ e(z, { children: /* @__PURE__ */ l(N, { children: [
|
|
268
|
-
/* @__PURE__ */ e(
|
|
269
|
-
/* @__PURE__ */ e(
|
|
270
|
-
/* @__PURE__ */ e(
|
|
269
|
+
/* @__PURE__ */ e(i, { className: "border-r border-gray-300 p-2 w-80", children: /* @__PURE__ */ e(m, { variant: "body2", className: "font-bold", children: n("Escalation Level") }) }),
|
|
270
|
+
/* @__PURE__ */ e(i, { className: "border-r border-gray-300 p-2 w-60", children: /* @__PURE__ */ e(m, { variant: "body2", className: "font-bold", children: n("Performer") }) }),
|
|
271
|
+
/* @__PURE__ */ e(i, { className: "p-2 w-40 ", children: /* @__PURE__ */ e(m, { variant: "body2", className: "font-bold", children: n("Action") }) })
|
|
271
272
|
] }) }),
|
|
272
273
|
/* @__PURE__ */ e(j, { children: /* @__PURE__ */ l(N, { "data-testid": "addroledrawer-tablerow-escalationperformer", children: [
|
|
273
|
-
/* @__PURE__ */ e(
|
|
274
|
+
/* @__PURE__ */ e(i, { className: "border-r border-gray-300 p-2", children: /* @__PURE__ */ e(
|
|
274
275
|
Q,
|
|
275
276
|
{
|
|
276
277
|
id: "escalationLevel",
|
|
@@ -282,15 +283,15 @@ function Ie({ open: R, handleClose: _, data: f, roleData: y }) {
|
|
|
282
283
|
dataTestId: "addroledrawer-textfield-escalationlevel"
|
|
283
284
|
}
|
|
284
285
|
) }),
|
|
285
|
-
/* @__PURE__ */ e(
|
|
286
|
+
/* @__PURE__ */ e(i, { className: "border-r border-gray-300 p-2", children: /* @__PURE__ */ e(
|
|
286
287
|
D,
|
|
287
288
|
{
|
|
288
289
|
control: C,
|
|
289
|
-
value: (a = (t =
|
|
290
|
+
value: (a = (t = c.selectedPerformer) == null ? void 0 : t[r]) != null && a.roles ? (u = (d = c.selectedPerformer[r]) == null ? void 0 : d.roles) == null ? void 0 : u.map(
|
|
290
291
|
(s) => y.find((b) => b.id === s)
|
|
291
292
|
) : [],
|
|
292
293
|
name: `selectedPerformer[${r}].roles`,
|
|
293
|
-
options: (A =
|
|
294
|
+
options: (A = c == null ? void 0 : c.roles) == null ? void 0 : A.map(
|
|
294
295
|
(s) => y.find((b) => b.id === s.id)
|
|
295
296
|
),
|
|
296
297
|
getOptionLabel: (s) => s == null ? void 0 : s.name,
|
|
@@ -299,12 +300,12 @@ function Ie({ open: R, handleClose: _, data: f, roleData: y }) {
|
|
|
299
300
|
errors: I
|
|
300
301
|
}
|
|
301
302
|
) }),
|
|
302
|
-
/* @__PURE__ */ e(
|
|
303
|
+
/* @__PURE__ */ e(i, { children: /* @__PURE__ */ e(
|
|
303
304
|
x,
|
|
304
305
|
{
|
|
305
306
|
variant: "contained",
|
|
306
307
|
size: "small",
|
|
307
|
-
disabled: !((V = (k =
|
|
308
|
+
disabled: !((V = (k = c.selectedPerformer[r]) == null ? void 0 : k.roles) != null && V.length),
|
|
308
309
|
onClick: (s) => me(s, r),
|
|
309
310
|
"data-testid": "addroledrawer-button-addperformer",
|
|
310
311
|
children: n("Add")
|
|
@@ -319,9 +320,9 @@ function Ie({ open: R, handleClose: _, data: f, roleData: y }) {
|
|
|
319
320
|
"data-testid": "addroledrawer-table-performactionroles",
|
|
320
321
|
children: [
|
|
321
322
|
/* @__PURE__ */ e(z, { children: /* @__PURE__ */ l(N, { children: [
|
|
322
|
-
/* @__PURE__ */ e(
|
|
323
|
-
/* @__PURE__ */ e(
|
|
324
|
-
/* @__PURE__ */ e(
|
|
323
|
+
/* @__PURE__ */ e(i, { className: "border border-gray-300 p-2", children: /* @__PURE__ */ e(m, { variant: "body2", className: "font-bold", children: n("Name") }) }),
|
|
324
|
+
/* @__PURE__ */ e(i, { className: "border border-gray-300 p-2", children: /* @__PURE__ */ e(m, { variant: "body2", className: "font-bold", children: n("Roles with perform action") }) }),
|
|
325
|
+
/* @__PURE__ */ e(i, { className: "p-2", children: /* @__PURE__ */ e(m, { variant: "body2", className: "font-bold", children: n("Delete") }) })
|
|
325
326
|
] }) }),
|
|
326
327
|
/* @__PURE__ */ e(j, { children: (J = o.roles) == null ? void 0 : J.filter(
|
|
327
328
|
(s) => y.find((b) => b.id === s)
|
|
@@ -333,14 +334,14 @@ function Ie({ open: R, handleClose: _, data: f, roleData: y }) {
|
|
|
333
334
|
"data-testid": "addroledrawer-tablerow-roleactions",
|
|
334
335
|
children: [
|
|
335
336
|
b === 0 && /* @__PURE__ */ e(
|
|
336
|
-
|
|
337
|
+
i,
|
|
337
338
|
{
|
|
338
339
|
className: "border border-gray-300 p-2",
|
|
339
340
|
rowSpan: o.roles.length,
|
|
340
341
|
children: o.name
|
|
341
342
|
}
|
|
342
343
|
),
|
|
343
|
-
/* @__PURE__ */ e(
|
|
344
|
+
/* @__PURE__ */ e(i, { className: "border border-gray-300 p-2", children: /* @__PURE__ */ l(ye, { className: "flex items-center", children: [
|
|
344
345
|
/* @__PURE__ */ e(
|
|
345
346
|
Ce,
|
|
346
347
|
{
|
|
@@ -348,13 +349,13 @@ function Ie({ open: R, handleClose: _, data: f, roleData: y }) {
|
|
|
348
349
|
control: C,
|
|
349
350
|
isFullWidth: !1,
|
|
350
351
|
checked: o.performAction[s],
|
|
351
|
-
onChange: (T) =>
|
|
352
|
+
onChange: (T) => ie(T, r, s),
|
|
352
353
|
"data-testid": "addroledrawer-checkbox-performaction"
|
|
353
354
|
}
|
|
354
355
|
),
|
|
355
356
|
/* @__PURE__ */ e(m, { variant: "caption", children: (K = y.find((T) => T.id === s)) == null ? void 0 : K.name })
|
|
356
357
|
] }) }),
|
|
357
|
-
/* @__PURE__ */ l(
|
|
358
|
+
/* @__PURE__ */ l(i, { className: "border border-gray-300 p-2", children: [
|
|
358
359
|
/* @__PURE__ */ e(
|
|
359
360
|
re,
|
|
360
361
|
{
|
|
@@ -369,7 +370,7 @@ function Ie({ open: R, handleClose: _, data: f, roleData: y }) {
|
|
|
369
370
|
/* @__PURE__ */ e(
|
|
370
371
|
Z,
|
|
371
372
|
{
|
|
372
|
-
open:
|
|
373
|
+
open: G === 2 && g === s && oe === r,
|
|
373
374
|
handleClose: () => v(0),
|
|
374
375
|
handleClick: (T) => {
|
|
375
376
|
ue(T, r);
|
|
@@ -441,13 +442,13 @@ function Ie({ open: R, handleClose: _, data: f, roleData: y }) {
|
|
|
441
442
|
}
|
|
442
443
|
);
|
|
443
444
|
}
|
|
444
|
-
|
|
445
|
+
ke.propTypes = {
|
|
445
446
|
open: S.any,
|
|
446
447
|
handleClose: S.func,
|
|
447
448
|
data: S.any,
|
|
448
449
|
roleData: S.any
|
|
449
450
|
};
|
|
450
451
|
export {
|
|
451
|
-
|
|
452
|
+
ke as default
|
|
452
453
|
};
|
|
453
|
-
//# sourceMappingURL=AddRoleDrawer-
|
|
454
|
+
//# sourceMappingURL=AddRoleDrawer-SvntLdRu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddRoleDrawer-SvntLdRu.js","sources":["../src/services/Widgets.js","../src/views/Widgets/AddRoleDrawer.jsx"],"sourcesContent":["import { api } from \"@/common/interceptors/AxiosInterceptor\";\nimport GeneralUtil from \"@/common/services/util/GeneralUtil\";\n\nexport const retrieveAllNotifications = (isActive) =>\n api.get(`/notificationtype`, { is_active: isActive });\n\nexport const updateNotification = (data) => api.post(GeneralUtil.isTecho? \"/notificationtype/update\" : \"/notificationtype\", data);\n","import {\n Button,\n Divider,\n Drawer,\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableRow,\n Typography,\n} from \"@mui/material\";\nimport { Box, Grid, Stack } from \"@mui/system\";\nimport PropTypes from \"prop-types\";\nimport CustomTextField from \"@/views/custom-components/CustomTextField\";\nimport { useForm } from \"react-hook-form\";\nimport * as yup from \"yup\";\nimport { yupResolver } from \"@hookform/resolvers/yup\";\nimport React, { useEffect, useState, useRef } from \"react\";\nimport CustomConfirmationModal from \"@/views/custom-components/CustomConfirmationModal\";\nimport { showToast } from \"@/common/toaster/toaster\";\nimport CustomCheckBox from \"@/views/custom-components/CustomCheckBox\";\nimport { updateNotification } from \"../../services/Widgets\";\nimport useTrackEvent from \"@/hooks/useTrackEvent\";\nimport CustomAutocomplete from \"@/views/custom-components/CustomAutoComplete\";\nimport { useTranslateProvider } from \"@/common/languageTranslator/TranslationContext\";\nimport { faTrash } from \"@fortawesome/free-solid-svg-icons\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\n\nexport default function AddRoleDrawer({ open, handleClose, data, roleData }) {\n const formRef = useRef(null);\n const submitRef = useRef(false);\n const [selectedData, setSelectedData] = useState([]);\n const [deleteId, setDeleteId] = useState(null);\n const [openModal, setOpenModal] = useState(0);\n const [DOMIndex, setDOMIndex] = useState(null);\n const { translate } = useTranslateProvider();\n\n const validationSchema = yup.object().shape({\n name: yup.string().required(\"Enter Name\"),\n });\n useEffect(() => {\n if (formRef.current) {\n let form = formRef.current;\n\n return () => {\n trackEvent(\"conversion_event\", {\n form,\n form_name: \"Add Widget Role\",\n submit: submitRef.current,\n }); // Use the current ref value\n };\n }\n }, [formRef.current]);\n const {\n control,\n formState: { errors },\n handleSubmit,\n setValue,\n getValues,\n watch,\n reset,\n } = useForm({\n defaultValues: { selectedPerformer: [] },\n mode: \"onChange\",\n resolver: yupResolver(validationSchema),\n });\n\n const watchFields = watch();\n\n useEffect(() => {\n setValue(\"name\", data.notificationName);\n data?.roles?.length &&\n setValue(\n \"roles\",\n data.roles\n ? data.roles\n .map((role) => roleData?.find((cur) => cur.name === role))\n .filter((role) => role !== undefined)\n : []\n );\n if (!data.escalationLevels) data.escalationLevels = [];\n setValue(\"escalationLevels\", data.escalationLevels);\n }, [open]);\n\n /**\n * Adds a role to the selected performer at the specified index.\n * @param {Object} val - The role object to be added, containing at least an `id` property.\n * @param {number} index - The index of the performer in the `selectedPerformer` array to which the role should be added.\n *\n * @returns {void}\n */\n\n const addPerformer = (values, index) => {\n const ids = values?.map((value) => value.id);\n setValue(`selectedPerformer[${index}].roles`, ids);\n };\n\n /**\n * Handles the perform action change for a specific role in the escalation levels.\n *\n * @param {boolean} e - The new value indicating whether the action is performed (checked state of the checkbox).\n * @param {number} index - The index of the escalation level in the escalation levels array.\n * @param {number} roleId - The ID of the role whose action status is being updated.\n *\n * @returns {void}\n */\n\n const handlePerformAction = (e, index, roleId) => {\n const previousEscalationValues = getValues(\"escalationLevels\");\n previousEscalationValues[index].performAction[roleId] = e;\n setValue(\"escalationLevels\", previousEscalationValues);\n };\n\n /**\n * Handles adding selected roles to the existing roles table.\n *\n * @description This function checks if the selected roles already exist in the current roles. If they do not exist, it adds them to the roles array and updates the form value. It also clears the `selectedData` after adding the roles.\n *\n * @returns {void}\n */\n const handleAddTable = () => {\n const previousRoleValues = watchFields.roles || [];\n const updatedRoles = [...previousRoleValues];\n selectedData.forEach((role) => {\n const exists = previousRoleValues.some((item) => item.id === role.id);\n if (!exists) {\n updatedRoles.push(role);\n }\n });\n\n setValue(\"roles\", updatedRoles);\n setSelectedData([]);\n };\n\n useEffect(() => {\n const currentSelected = getValues(\"selectedPerformer\");\n const validRoles = watchFields?.roles || [];\n\n const updatedSelected = currentSelected.map((performer) => {\n const filteredRoles = (performer?.roles || []).filter((roleId) =>\n validRoles.some((role) => role.id === roleId)\n );\n\n return { ...performer, roles: filteredRoles };\n });\n\n setValue(\"selectedPerformer\", updatedSelected, { shouldValidate: true });\n }, [watchFields.roles]);\n\n /**\n * Handles adding selected roles to the escalation levels for a specified performer.\n *\n * @description This function retrieves the current escalation levels and the selected performers.\n * It updates the roles of the performer at the given index by merging the selected roles with the\n * existing roles.\n * @param {Event} e - The event object representing the triggering event (e.g., a button click).\n * @param {number} index - The index of the performer whose roles are being updated in the escalation levels table.\n *\n * @returns {void}\n */\n\n const addPerformerInTable = (e, index) => {\n const previousEscalationValues = getValues(\"escalationLevels\");\n const selectedPerformer = getValues(\"selectedPerformer\");\n previousEscalationValues[index].roles = [\n ...new Set([\n ...previousEscalationValues[index].roles,\n ...selectedPerformer[index].roles,\n ]),\n ];\n\n selectedPerformer[index].roles.forEach((role) => {\n previousEscalationValues[index].performAction[role] =\n previousEscalationValues[index].performAction[role] || false;\n });\n selectedPerformer[index].roles = [];\n\n setValue(\"escalationLevels\", previousEscalationValues);\n setValue(\"selectedPerformer\", selectedPerformer);\n };\n\n /**\n * Handles the deletion of a role feature from the roles and escalation levels.\n *\n * @returns {void}\n */\n\n const handleDeleteRoleFeature = () => {\n try {\n const prevValue = getValues(\"roles\");\n const updatedValue = prevValue.filter((role) => role.id !== deleteId);\n setValue(\"roles\", [...updatedValue]);\n\n const previousEscalationValues = getValues(\"escalationLevels\");\n\n const updatedEscalationValues = previousEscalationValues.map(\n (escalationLevel) => {\n // Remove the role from the roles array\n const updatedRoles = escalationLevel.roles.filter(\n (roleId) => roleId !== deleteId\n );\n // Remove the role from the performAction object\n // eslint-disable-next-line no-unused-vars\n const { [deleteId]: _, ...updatedPerformAction } =\n escalationLevel.performAction;\n\n return {\n ...escalationLevel,\n roles: updatedRoles,\n performAction: updatedPerformAction,\n };\n }\n );\n\n setValue(\"escalationLevels\", updatedEscalationValues);\n setOpenModal(0);\n } catch (error) {\n showToast({ message: error, type: \"error\" });\n }\n };\n\n /**\n * Deletes a role from the escalation levels at the specified index.\n * @param {string} value - The value associated with the role being deleted (not currently used in the function).\n * @param {number} index - The index of the escalation level from which the role should be deleted.\n *\n * @returns {void}\n */\n const DeleteRolesWithActions = (value, index) => {\n try {\n const prevValue = getValues(\"escalationLevels\");\n prevValue[index].roles = prevValue[index].roles.filter(\n (role) => role !== deleteId\n );\n\n // eslint-disable-next-line no-unused-vars\n const { [deleteId]: _, ...updatedPerformAction } =\n prevValue[index].performAction;\n prevValue[index].performAction = updatedPerformAction;\n setValue(\"escalationValues\", [...prevValue]);\n\n setOpenModal(0);\n } catch (error) {\n showToast({ message: error, type: \"error\" });\n }\n };\n\n /**\n * Handles the form submission by updating notification data with the provided values.\n * @param {Object} values - The submitted form values.\n * @param {Array} values.roles - The list of roles, each containing an `id`.\n * @param {Array} values.escalationLevels - The updated escalation levels.\n *\n * @returns {Promise<void>} - A promise that resolves when the submission is complete.\n */\n const trackEvent = useTrackEvent();\n\n const onSubmit = async (values) => {\n try {\n trackEvent(\"button_click\", {\n button_name: data ? \"update widget button\" : \"add widget button\",\n button_type: \"submit\",\n button_id: \"addroledrawer-button-submit\",\n });\n\n const { roles = [], escalationLevels } = values;\n const roleIds = roles.map((role) => role.id);\n const updatedData = { ...data, escalationLevels, roles: roleIds };\n await updateNotification(updatedData).catch((e) => {\n console.error(\"error in updating notification\", e);\n });\n showToast({ message: \"Widget Updated Successfully\", type: \"success\" });\n submitRef.current = true;\n handleClose(true);\n } catch (error) {\n console.error(error);\n }\n };\n\n return (\n <Drawer\n open={open}\n anchor=\"right\"\n onClose={handleClose}\n className=\"z-[1300]\"\n data-testid=\"addroledrawer-drawer-container\"\n >\n <Grid\n container\n className=\"flex flex-col w-full md:w-[600px] \"\n ref={formRef}\n >\n <Grid\n p={1}\n alignContent={\"flex-start\"}\n className=\"p-2.5 px-5 flex border-b font-medium text-lg\"\n data-testid=\"addroledrawer-grid-header uppercase\"\n >\n {translate(\"Assign Role\")}\n </Grid>\n <Grid\n container\n display={\"flex\"}\n flexDirection={\"column\"}\n p={1}\n data-testid=\"addroledrawer-grid-content\"\n >\n <Grid data-testid=\"addroledrawer-grid-name\">\n <Typography variant=\"body2\">\n {translate(\"Name\")}\n <span className=\"text-red-500 ml-1\">*</span>\n </Typography>\n <CustomTextField\n id={\"name\"}\n control={control}\n name={\"name\"}\n errors={errors}\n InputProps={{\n readOnly: true,\n }}\n dataTestId=\"addroledrawer-textfield-name\"\n />\n </Grid>\n <Grid data-testid=\"addroledrawer-grid-actionby\">\n <Typography variant=\"body2\" mt={1}>\n {translate(\"Select Role\")}\n </Typography>\n <Grid container display={\"flex\"} flexDirection={\"row\"}>\n <Grid width={\"70%\"} mr={2}>\n <CustomAutocomplete\n name=\"role\"\n control={control}\n value={selectedData}\n options={roleData}\n getOptionLabel={(option) => option.name}\n errors={errors}\n dataTestId=\"addroledrawer-select-roles\"\n onChange={(e, val) => setSelectedData(val)}\n />\n </Grid>\n <Grid className=\"pt-2\">\n <Button\n variant=\"contained\"\n size=\"small\"\n disabled={!selectedData.length}\n onClick={handleAddTable}\n data-testid=\"addroledrawer-button-add\"\n >\n {translate(\"Assign\")}\n </Button>\n </Grid>\n </Grid>\n </Grid>\n <Grid data-testid=\"addroledrawer-grid-table\">\n <Table\n data-testid=\"addroledrawer-table\"\n className=\"border border-gray-300\"\n >\n <TableHead>\n <TableRow>\n <TableCell className=\"border-r border-gray-300 p-2\">\n <Typography variant=\"body2\" className=\"font-bold\">\n {`${translate(\"Role\")}${translate(\"name\")} (${translate(\"Assigned to\")})`}\n </Typography>\n </TableCell>\n <TableCell className=\"p-2\">\n <Typography variant=\"body2\" className=\"font-bold\">\n {translate(\"Delete\")}\n </Typography>\n </TableCell>\n </TableRow>\n </TableHead>\n <TableBody>\n {watchFields?.roles?.map((item, index) => (\n <TableRow\n key={item.id}\n data-testid=\"addroledrawer-tablerow-roles\"\n >\n <TableCell className=\"border border-gray-300 p-2\">\n <Typography variant=\"caption\">{item.name}</Typography>\n </TableCell>\n <TableCell className=\"p-2\">\n <FontAwesomeIcon\n icon={faTrash}\n className=\"text-[18px] text-[var(--color-error)]\"\n onClick={() => {\n setOpenModal(1);\n setDeleteId(item.id);\n }}\n data-testid=\"addroledrawer-icon-delete\"\n />\n <CustomConfirmationModal\n open={openModal === 1 && deleteId === item.id}\n handleClose={() => setOpenModal(0)}\n handleClick={(e) => handleDeleteRoleFeature(e, index)}\n title={\"CONFIRM ACTION\"}\n description={\n \"Are you sure you want to delete this role? It will also delete role from each escalation level.\"\n }\n dataTestId=\"addroledrawer-modal-confirmdelete\"\n />\n </TableCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </Grid>\n {watchFields.escalationLevels?.map((escalationLevelData, index) => (\n <React.Fragment key={escalationLevelData.id}>\n <Grid data-testid=\"addroledrawer-grid-escalationlevel\">\n <Table className=\"border border-gray-300\">\n <TableHead>\n <TableRow>\n <TableCell className=\"border-r border-gray-300 p-2 w-80\">\n <Typography variant=\"body2\" className=\"font-bold\">\n {translate(\"Escalation Level\")}\n </Typography>\n </TableCell>\n <TableCell className=\"border-r border-gray-300 p-2 w-60\">\n <Typography variant=\"body2\" className=\"font-bold\">\n {translate(\"Performer\")}\n </Typography>\n </TableCell>\n <TableCell className=\"p-2 w-40 \">\n <Typography variant=\"body2\" className=\"font-bold\">\n {translate(\"Action\")}\n </Typography>\n </TableCell>\n </TableRow>\n </TableHead>\n <TableBody>\n <TableRow data-testid=\"addroledrawer-tablerow-escalationperformer\">\n <TableCell className=\"border-r border-gray-300 p-2\">\n <CustomTextField\n id={\"escalationLevel\"}\n control={control}\n name={`escalationLevelData[${index}].name`}\n defaultValue={escalationLevelData?.name}\n errors={errors}\n disabled={true}\n dataTestId=\"addroledrawer-textfield-escalationlevel\"\n />\n </TableCell>\n <TableCell className=\"border-r border-gray-300 p-2\">\n <CustomAutocomplete\n control={control}\n value={\n watchFields.selectedPerformer?.[index]?.roles\n ? watchFields.selectedPerformer[\n index\n ]?.roles?.map((role) =>\n roleData.find((item) => item.id === role)\n )\n : []\n }\n name={`selectedPerformer[${index}].roles`}\n options={watchFields?.roles?.map((role) =>\n roleData.find((item) => item.id === role.id)\n )}\n getOptionLabel={(option) => option?.name}\n onChange={(e, val) => addPerformer(val, index)}\n dataTestId=\"addroledrawer-select-performer\"\n errors={errors}\n />\n </TableCell>\n <TableCell>\n <Button\n variant=\"contained\"\n size=\"small\"\n disabled={\n !watchFields.selectedPerformer[index]?.roles?.length\n }\n onClick={(e) => addPerformerInTable(e, index)}\n data-testid=\"addroledrawer-button-addperformer\"\n >\n {translate(\"Add\")}\n </Button>\n </TableCell>\n </TableRow>\n </TableBody>\n </Table>\n </Grid>\n <Grid>\n {escalationLevelData.roles.length ? (\n <Table\n className=\"border border-gray-300\"\n data-testid=\"addroledrawer-table-performactionroles\"\n >\n <TableHead>\n <TableRow>\n <TableCell className=\"border border-gray-300 p-2\">\n <Typography variant=\"body2\" className=\"font-bold\">\n {translate(\"Name\")}\n </Typography>\n </TableCell>\n <TableCell className=\"border border-gray-300 p-2\">\n <Typography variant=\"body2\" className=\"font-bold\">\n {translate(\"Roles with perform action\")}\n </Typography>\n </TableCell>\n <TableCell className=\"p-2\">\n <Typography variant=\"body2\" className=\"font-bold\">\n {translate(\"Delete\")}\n </Typography>\n </TableCell>\n </TableRow>\n </TableHead>\n <TableBody>\n {escalationLevelData.roles\n ?.filter((item) =>\n roleData.find((role) => role.id === item)\n ) // Filter first\n .map((item, roleIndex) => (\n <TableRow\n key={item}\n data-testid=\"addroledrawer-tablerow-roleactions\"\n >\n {roleIndex === 0 && (\n <TableCell\n className=\"border border-gray-300 p-2\"\n rowSpan={escalationLevelData.roles.length}\n >\n {escalationLevelData.name}\n </TableCell>\n )}\n <TableCell className=\"border border-gray-300 p-2\">\n <Box className=\"flex items-center\">\n <CustomCheckBox\n name={`${index}-${roleIndex}`}\n control={control}\n isFullWidth={false}\n checked={\n escalationLevelData.performAction[item]\n }\n onChange={(e) =>\n handlePerformAction(e, index, item)\n }\n data-testid=\"addroledrawer-checkbox-performaction\"\n />\n <Typography variant=\"caption\">\n {\n roleData.find((role) => role.id === item)\n ?.name\n }\n </Typography>\n </Box>\n </TableCell>\n <TableCell className=\"border border-gray-300 p-2\">\n <FontAwesomeIcon\n icon={faTrash}\n className=\"text-[18px] text-[var(--color-error)]\"\n onClick={() => {\n setOpenModal(2);\n setDeleteId(item);\n setDOMIndex(index);\n }}\n data-testid=\"addroledrawer-icon-deleterole\"\n />\n <CustomConfirmationModal\n open={\n openModal === 2 &&\n deleteId === item &&\n DOMIndex === index\n }\n handleClose={() => setOpenModal(0)}\n handleClick={(e) => {\n DeleteRolesWithActions(e, index);\n }}\n title={\"CONFIRM ACTION\"}\n description={\n \"Are you sure you want to delete this role?\"\n }\n dataTestId=\"addroledrawer-modal-confirmdeleterole\"\n />\n </TableCell>\n </TableRow>\n ))}\n </TableBody>\n </Table>\n ) : null}\n </Grid>\n </React.Fragment>\n ))}\n </Grid>\n <Divider data-testid=\"addroledrawer-divider\" />\n <Stack\n direction=\"row\"\n spacing={2}\n justifyContent=\"flex-end\"\n mt={2}\n mb={1.5}\n >\n <Button\n variant=\"contained\"\n color=\"secondary\"\n size=\"small\"\n onClick={() => {\n trackEvent(\"button_click\", {\n button_name: \"cancel widget button\",\n button_type: \"cancel\",\n button_id: \"addroledrawer-button-close\",\n });\n reset();\n setSelectedData([]);\n handleClose();\n }}\n data-testid=\"addroledrawer-button-close\"\n >\n <Typography variant=\"caption\">{`${translate(\"Close\")}`}</Typography>\n </Button>\n <Button\n variant=\"contained\"\n color=\"primary\"\n className=\"mr-2\"\n size=\"small\"\n onClick={handleSubmit(onSubmit)}\n data-testid=\"addroledrawer-button-submit\"\n >\n {translate(\"Update\")}\n </Button>\n </Stack>\n </Grid>\n </Drawer>\n );\n}\nAddRoleDrawer.propTypes = {\n open: PropTypes.any,\n handleClose: PropTypes.func,\n data: PropTypes.any,\n roleData: PropTypes.any,\n};\n"],"names":["updateNotification","data","api","GeneralUtil","AddRoleDrawer","open","handleClose","roleData","formRef","useRef","submitRef","selectedData","setSelectedData","useState","deleteId","setDeleteId","openModal","setOpenModal","DOMIndex","setDOMIndex","translate","useTranslateProvider","validationSchema","yup","useEffect","form","trackEvent","control","errors","handleSubmit","setValue","getValues","watch","reset","useForm","yupResolver","watchFields","_a","role","cur","addPerformer","values","index","ids","value","handlePerformAction","e","roleId","previousEscalationValues","handleAddTable","previousRoleValues","updatedRoles","item","currentSelected","validRoles","updatedSelected","performer","filteredRoles","addPerformerInTable","selectedPerformer","handleDeleteRoleFeature","updatedValue","updatedEscalationValues","escalationLevel","_","updatedPerformAction","error","showToast","DeleteRolesWithActions","prevValue","useTrackEvent","onSubmit","roles","escalationLevels","roleIds","updatedData","jsx","Drawer","jsxs","Grid","Typography","CustomTextField","CustomAutocomplete","option","val","Button","Table","TableHead","TableRow","TableCell","TableBody","FontAwesomeIcon","faTrash","CustomConfirmationModal","_b","escalationLevelData","React","_d","_c","_e","_g","_f","_h","roleIndex","Box","CustomCheckBox","Divider","Stack","PropTypes"],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ import * as v from "yup";
|
|
|
8
8
|
import { Modal as me, Typography as ue, IconButton as fe, Button as x, FormControl as B, Box as r } from "@mui/material";
|
|
9
9
|
import D from "@/views/custom-components/CustomTextField";
|
|
10
10
|
import { showToast as d } from "@/common/toaster/toaster";
|
|
11
|
-
import { g as he, A as ye, u as F, c as ge } from "./ManageTranslation-
|
|
11
|
+
import { g as he, A as ye, u as F, c as ge } from "./ManageTranslation-D9IScGhk.js";
|
|
12
12
|
import be from "@/views/custom-components/CustomConfirmationModal";
|
|
13
13
|
import ve from "@/hooks/useTrackEvent";
|
|
14
14
|
import { useTranslateProvider as xe } from "@/common/languageTranslator/TranslationContext";
|
|
@@ -425,4 +425,4 @@ we.propTypes = {
|
|
|
425
425
|
export {
|
|
426
426
|
we as default
|
|
427
427
|
};
|
|
428
|
-
//# sourceMappingURL=AppModal-
|
|
428
|
+
//# sourceMappingURL=AppModal-BKgIwe1h.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppModal-BgZyfrd-.js","sources":["../src/views/Translation/AppModal.jsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { useForm } from \"react-hook-form\";\nimport { yupResolver } from \"@hookform/resolvers/yup\";\nimport Grid from \"@mui/material/Grid2\";\nimport * as Yup from \"yup\";\nimport {\n Button,\n IconButton,\n Modal,\n Box,\n FormControl,\n Typography,\n} from \"@mui/material\";\nimport CustomTextField from \"@/views/custom-components/CustomTextField\";\nimport { showToast } from \"@/common/toaster/toaster\";\nimport {\n createApp,\n getAllApps,\n updateApp,\n} from \"../../services/TranslationService\";\nimport CustomConfirmationModal from \"@/views/custom-components/CustomConfirmationModal\";\nimport useTrackEvent from \"@/hooks/useTrackEvent\";\nimport { useTranslateProvider } from \"@/common/languageTranslator/TranslationContext\";\nimport { faBars, faPen, faXmark } from \"@fortawesome/free-solid-svg-icons\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport CustomizedTable from \"@/views/custom-components/CustomizedTable/CustomizedTableV2\";\nimport { AppModalSkeleton } from \"./Skeletons/ManageTranslationSkeleton\";\n// Define the validation schema using Yup\n\n/**\n * Modal component for configuring mobile type event notifications.\n * @module appModal\n * @param {Object} props - The props for the component.\n * @param {boolean} props.open - Whether the modal is open or not.\n * @param {Function} props.handleClose - Function to close the modal.\n * @param {Array} props.languages - List of language objects for language-specific data.\n *\n * @returns {JSX.Element} The rendered modal component.\n *\n */\nconst AppModal = ({\n open,\n handleClose,\n languages,\n refresh,\n refetch,\n selectedApp,\n setSelectedApp,\n}) => {\n const formRef = useRef(null);\n const trackEvent = useTrackEvent();\n const [tableData, setTableData] = useState([]);\n const [apps, setApps] = useState([]);\n const [showForm, setShowForm] = useState(false);\n const [isEdit, setIsEdit] = useState(false);\n const { translate } = useTranslateProvider();\n\n const [toggleOpen, setToggleOpen] = useState(false);\n\n const [isActiveLabel, setIsActiveLabel] = useState(\"\");\n const [isActiveDescription, setIsActiveDescription] = useState(\"\");\n const [clickedRow, setClickedRow] = useState({});\n const [loading, setLoading] = useState(false);\n\n const validationSchema = Yup.object().shape({\n appValue: Yup.string().required(\"Select App Value\"),\n appKey: Yup.string().required(\"Enter App key\"),\n });\n\n const {\n control,\n handleSubmit,\n reset,\n setValue,\n formState: { errors },\n } = useForm({\n defaultValues: {},\n resolver: yupResolver(validationSchema),\n mode: \"onChange\",\n });\n\n const cols = [\n { field: \"Sr. No.\", label: `Sr.No`, align: \"left\" },\n { field: \"appValue\", label: \"App\", align: \"left\" },\n { field: \"stateValue\", label: \"State\", align: \"left\" },\n { field: \"Actions\", label: \"Actions\" },\n ];\n\n /**\n * Handles editing an existing app.\n * @method handleEdit\n * @param {Object} row - The row object containing app data to be edited.\n */\n const handleEdit = (row) => {\n setValue(\"appKey\", row?.appKey);\n setValue(\"appValue\", row?.appValue);\n setValue(\"id\", row?.id);\n setValue(\"isActive\", row?.isActive);\n setIsEdit(true);\n setShowForm(true);\n };\n\n /**\n * Toggles the state option for an app.\n * @method handleToggleOption\n * @param {Object} data - The data related to the app state.\n */\n const handleToggleOption = (data) => {\n setIsActiveLabel(\n data?.stateValue === \"Active\" ? \"Mark as Inactive\" : \"Mark as Active\",\n );\n setIsActiveDescription(\n data?.stateValue === \"Active\"\n ? \"Are you sure you want to change the state from active to inactive?\"\n : \"Are you sure you want to change the state from inactive to active?\",\n );\n setClickedRow(data);\n };\n\n /**\n * Toggles the visibility of the state change confirmation modal.\n * @method handleToggle\n */\n const handleToggle = () => {\n setToggleOpen((curr) => !curr);\n };\n\n /**\n * Handles the toggling of the app state (active/inactive).\n * @method handleToggleState\n */\n const handleToggleState = async () => {\n try {\n clickedRow.isActive = !clickedRow.isActive;\n await updateApp(clickedRow);\n init();\n if (selectedApp === clickedRow?.id) {\n setSelectedApp(null);\n }\n await refresh();\n refetch();\n\n setToggleOpen((cur) => !cur);\n } catch (error) {\n console.error(error);\n showToast({ message: \"Error in Toggle State\", type: \"error\" });\n }\n };\n\n const menuItems = [\n { label: translate(isActiveLabel), onClick: handleToggle },\n ];\n\n const actions = [\n {\n label: \"\",\n icon: <FontAwesomeIcon icon={faPen} />,\n onClick: handleEdit,\n dataTestId: \"app-modal-edit-icon\",\n },\n {\n label: \"\",\n icon: <FontAwesomeIcon icon={faBars} />,\n menuClick: handleToggleOption,\n menuItems: menuItems,\n dataTestId: \"app-modal-menu-icon\",\n },\n ];\n\n /**\n * Initializes the modal by resetting values and setting up state.\n * @method addApp\n */\n const addApp = () => {\n reset();\n setIsEdit(false);\n setShowForm(true);\n };\n\n useEffect(() => {\n if (apps) {\n const data = [];\n apps?.forEach((element) => {\n let newElement = { ...element };\n if (element?.isActive) {\n newElement.stateValue = \"Active\";\n } else {\n newElement.stateValue = \"Inactive\";\n }\n languages?.forEach((lang) => {\n if (element.language === lang.id) {\n newElement.languagevalue = lang.languageValue;\n }\n });\n\n data.push(newElement);\n });\n setTableData(data);\n }\n }, [apps]);\n\n useEffect(() => {\n init();\n }, []);\n const init = async () => {\n setLoading((cur) => !cur);\n try {\n const res = await getAllApps();\n setApps(res?.data);\n } catch (error) {\n console.error(error);\n showToast({ message: \"Error in loading apps\", type: \"error\" });\n } finally {\n setLoading((cur) => !cur);\n }\n };\n const close = () => {\n handleClose();\n };\n const onSubmit = async (data) => {\n try {\n trackEvent(\"button_click\", {\n button_name: \"add-app-add-button\",\n button_type: \"submit\",\n button_id: \"add-app-submit-button\",\n });\n let appDto = { ...data };\n if (isEdit) {\n await updateApp(appDto);\n showToast({ message: \"App Updated Succesfully\", type: \"success\" });\n } else {\n appDto.isActive = true;\n await createApp(appDto);\n showToast({ message: \"App added Succesfully\", type: \"success\" });\n }\n\n trackEvent(\"conversion_event\", {\n form: formRef.current,\n form_name: \"Add app Configuration\",\n submit: true,\n });\n\n init();\n\n await refresh();\n refetch();\n setShowForm(false);\n } catch (error) {\n console.error(error);\n showToast({ message: \"Error in Adding App\", type: \"error\" });\n }\n };\n\n return (\n <Modal\n data-testid=\"appModal-modal\"\n open={open}\n onClose={() => {\n close();\n reset();\n }}\n className=\"translation-modal\"\n >\n <Grid\n container\n sx={{\n display: \"flex\",\n flexDirection: \"column\",\n position: \"absolute\",\n top: 20,\n left: \"50%\",\n transform: \"translateX(-50%)\",\n width: \"95%\",\n maxW: \"100%\",\n maxWidth: { sm: 600, md: 700, lg: 800 },\n bgcolor: \"background.paper\",\n boxShadow: 24,\n border: 1,\n borderColor: \"divider\",\n borderRadius: 0.5,\n }}\n >\n <CustomConfirmationModal\n description={isActiveDescription}\n title={\"CONFIRM ACTION\"}\n handleClick={handleToggleState}\n open={toggleOpen}\n handleClose={() => {\n setToggleOpen((cur) => !cur);\n }}\n data-testid=\"app-modal-customconfirmation\"\n />\n\n <Grid\n sx={{\n p: 1.25,\n px: 3,\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n borderBottom: 1,\n borderColor: \"divider\",\n flexWrap: \"wrap\",\n gap: 1,\n }}\n data-testid=\"appModal-header\"\n >\n <Typography\n variant=\"body1\"\n className=\"text-customBlue\"\n sx={{ fontWeight: \"medium\", fontSize: \"1.125rem\" }}\n >\n {translate(\"Manage Apps\")}\n </Typography>\n <IconButton\n size=\"small\"\n onClick={() => {\n close();\n }}\n data-testid=\"appModal-close-button\"\n >\n <FontAwesomeIcon icon={faXmark} />\n </IconButton>\n </Grid>\n\n <Grid\n item\n sx={{\n overflowY: \"auto\",\n maxHeight: \"80vh\",\n width: \"100%\",\n overflowX: \"auto\",\n }}\n >\n <Grid\n sx={{\n p: 1.25,\n px: 3,\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n borderBottom: 1,\n borderColor: \"divider\",\n flexWrap: \"wrap\",\n gap: 1,\n }}\n >\n <Grid item className=\"w-full\">\n {!showForm && (\n <Grid container justifyContent=\"flex-end\" className=\"pb-[10px]\">\n <AppModalSkeleton isLoading={loading}>\n <Grid item>\n <Button\n size=\"small\"\n variant=\"contained\"\n data-testid=\"add-app-button\"\n color=\"primary\"\n onClick={addApp}\n >\n {translate(\"Add\")} {translate(\"App\")}\n </Button>\n </Grid>\n </AppModalSkeleton>\n </Grid>\n )}\n\n {showForm && (\n <Grid container justifyContent=\"flex-start\" sx={{ pb: 1.25 }}>\n <form onSubmit={handleSubmit(onSubmit)} className=\"w-full\">\n <Grid item className=\"pb-[5px]\">\n <FormControl\n variant=\"outlined\"\n className=\"w-full\"\n data-testid=\"app-value-field\"\n >\n <Box\n sx={{\n display: \"flex\",\n alignItems: \"center\",\n gap: 2,\n mb: 1,\n width: \"100%\",\n }}\n >\n <Box sx={{ width: \"100%\" }}>\n {translate(\"App\")}\n <Box\n component=\"span\"\n sx={{ color: \"error.main\", ml: 0.5 }}\n >\n *\n </Box>\n </Box>\n <CustomTextField\n control={control}\n id=\"appValue\"\n name=\"appValue\"\n errors={errors}\n label=\"\"\n size=\"small\"\n className=\"w-full\"\n data-testid=\"app-value-input\"\n />\n </Box>\n </FormControl>\n </Grid>\n\n <Grid item className=\"pb-[5px]\">\n <FormControl\n variant=\"outlined\"\n className=\"w-full\"\n data-testid=\"app-key-field\"\n >\n <Box\n sx={{\n display: \"flex\",\n alignItems: \"center\",\n gap: 2,\n mb: 1,\n width: \"100%\",\n }}\n >\n <Box sx={{ width: \"100%\" }}>\n {translate(\"App\")} {translate(\"Key\")}\n <Box\n component=\"span\"\n sx={{ color: \"error.main\", ml: 0.5 }}\n >\n *\n </Box>\n </Box>\n <CustomTextField\n control={control}\n id=\"appKey\"\n name=\"appKey\"\n errors={errors}\n label=\"\"\n size=\"small\"\n className=\"w-full\"\n data-testid=\"app-key-input\"\n />\n </Box>\n </FormControl>\n </Grid>\n\n <Grid\n item\n sx={{\n pb: 0.625,\n display: \"flex\",\n justifyContent: \"flex-end\",\n width: \"100%\",\n }}\n >\n <Box\n sx={{\n display: \"flex\",\n flexDirection: { xs: \"column\", sm: \"row\" },\n gap: 1,\n width: { xs: \"100%\", sm: \"auto\" },\n justifyContent: \"flex-end\",\n }}\n >\n <Button\n size=\"small\"\n variant=\"contained\"\n data-testid=\"add-app-cancel\"\n color=\"secondary\"\n onClick={() => {\n setShowForm(false);\n trackEvent(\"conversion_event\", {\n form: formRef.current,\n form_name: \"Add App Configuration\",\n submit: false,\n });\n }}\n >\n {translate(\"Cancel\")}\n </Button>\n <Button\n type=\"submit\"\n size=\"small\"\n variant=\"contained\"\n data-testid=\"add-app-save\"\n color=\"primary\"\n >\n {translate(\"Save\")}\n </Button>\n </Box>\n </Grid>\n </form>\n </Grid>\n )}\n <Grid className=\"w-full block\">\n <CustomizedTable\n columns={cols}\n tableData={tableData}\n actions={actions}\n paginationConfig={{ pagination: false }}\n styleConfig={{ tableStyle: { maxHeight: 120 } }}\n isLoading={loading}\n />\n </Grid>\n </Grid>\n </Grid>\n </Grid>\n </Grid>\n </Modal>\n );\n};\n\nAppModal.propTypes = {\n open: PropTypes.any,\n handleClose: PropTypes.any,\n languages: PropTypes.any,\n refresh: PropTypes.any,\n refetch: PropTypes.any,\n selectedApp: PropTypes.any,\n setSelectedApp: PropTypes.any,\n};\n\nexport default AppModal;\n"],"names":["AppModal","open","handleClose","languages","refresh","refetch","selectedApp","setSelectedApp","formRef","useRef","trackEvent","useTrackEvent","tableData","setTableData","useState","apps","setApps","showForm","setShowForm","isEdit","setIsEdit","translate","useTranslateProvider","toggleOpen","setToggleOpen","isActiveLabel","setIsActiveLabel","isActiveDescription","setIsActiveDescription","clickedRow","setClickedRow","loading","setLoading","validationSchema","Yup","control","handleSubmit","reset","setValue","errors","useForm","yupResolver","cols","handleEdit","row","handleToggleOption","data","handleToggle","curr","handleToggleState","updateApp","init","cur","error","showToast","menuItems","actions","jsx","FontAwesomeIcon","faPen","faBars","addApp","useEffect","element","newElement","lang","res","getAllApps","close","onSubmit","appDto","createApp","Modal","jsxs","Grid","CustomConfirmationModal","Typography","IconButton","faXmark","AppModalSkeleton","Button","FormControl","Box","CustomTextField","CustomizedTable","PropTypes"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AppModal-BKgIwe1h.js","sources":["../src/views/Translation/AppModal.jsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { useForm } from \"react-hook-form\";\nimport { yupResolver } from \"@hookform/resolvers/yup\";\nimport Grid from \"@mui/material/Grid2\";\nimport * as Yup from \"yup\";\nimport {\n Button,\n IconButton,\n Modal,\n Box,\n FormControl,\n Typography,\n} from \"@mui/material\";\nimport CustomTextField from \"@/views/custom-components/CustomTextField\";\nimport { showToast } from \"@/common/toaster/toaster\";\nimport {\n createApp,\n getAllApps,\n updateApp,\n} from \"../../services/TranslationService\";\nimport CustomConfirmationModal from \"@/views/custom-components/CustomConfirmationModal\";\nimport useTrackEvent from \"@/hooks/useTrackEvent\";\nimport { useTranslateProvider } from \"@/common/languageTranslator/TranslationContext\";\nimport { faBars, faPen, faXmark } from \"@fortawesome/free-solid-svg-icons\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport CustomizedTable from \"@/views/custom-components/CustomizedTable/CustomizedTableV2\";\nimport { AppModalSkeleton } from \"./Skeletons/ManageTranslationSkeleton\";\n// Define the validation schema using Yup\n\n/**\n * Modal component for configuring mobile type event notifications.\n * @module appModal\n * @param {Object} props - The props for the component.\n * @param {boolean} props.open - Whether the modal is open or not.\n * @param {Function} props.handleClose - Function to close the modal.\n * @param {Array} props.languages - List of language objects for language-specific data.\n *\n * @returns {JSX.Element} The rendered modal component.\n *\n */\nconst AppModal = ({\n open,\n handleClose,\n languages,\n refresh,\n refetch,\n selectedApp,\n setSelectedApp,\n}) => {\n const formRef = useRef(null);\n const trackEvent = useTrackEvent();\n const [tableData, setTableData] = useState([]);\n const [apps, setApps] = useState([]);\n const [showForm, setShowForm] = useState(false);\n const [isEdit, setIsEdit] = useState(false);\n const { translate } = useTranslateProvider();\n\n const [toggleOpen, setToggleOpen] = useState(false);\n\n const [isActiveLabel, setIsActiveLabel] = useState(\"\");\n const [isActiveDescription, setIsActiveDescription] = useState(\"\");\n const [clickedRow, setClickedRow] = useState({});\n const [loading, setLoading] = useState(false);\n\n const validationSchema = Yup.object().shape({\n appValue: Yup.string().required(\"Select App Value\"),\n appKey: Yup.string().required(\"Enter App key\"),\n });\n\n const {\n control,\n handleSubmit,\n reset,\n setValue,\n formState: { errors },\n } = useForm({\n defaultValues: {},\n resolver: yupResolver(validationSchema),\n mode: \"onChange\",\n });\n\n const cols = [\n { field: \"Sr. No.\", label: `Sr.No`, align: \"left\" },\n { field: \"appValue\", label: \"App\", align: \"left\" },\n { field: \"stateValue\", label: \"State\", align: \"left\" },\n { field: \"Actions\", label: \"Actions\" },\n ];\n\n /**\n * Handles editing an existing app.\n * @method handleEdit\n * @param {Object} row - The row object containing app data to be edited.\n */\n const handleEdit = (row) => {\n setValue(\"appKey\", row?.appKey);\n setValue(\"appValue\", row?.appValue);\n setValue(\"id\", row?.id);\n setValue(\"isActive\", row?.isActive);\n setIsEdit(true);\n setShowForm(true);\n };\n\n /**\n * Toggles the state option for an app.\n * @method handleToggleOption\n * @param {Object} data - The data related to the app state.\n */\n const handleToggleOption = (data) => {\n setIsActiveLabel(\n data?.stateValue === \"Active\" ? \"Mark as Inactive\" : \"Mark as Active\",\n );\n setIsActiveDescription(\n data?.stateValue === \"Active\"\n ? \"Are you sure you want to change the state from active to inactive?\"\n : \"Are you sure you want to change the state from inactive to active?\",\n );\n setClickedRow(data);\n };\n\n /**\n * Toggles the visibility of the state change confirmation modal.\n * @method handleToggle\n */\n const handleToggle = () => {\n setToggleOpen((curr) => !curr);\n };\n\n /**\n * Handles the toggling of the app state (active/inactive).\n * @method handleToggleState\n */\n const handleToggleState = async () => {\n try {\n clickedRow.isActive = !clickedRow.isActive;\n await updateApp(clickedRow);\n init();\n if (selectedApp === clickedRow?.id) {\n setSelectedApp(null);\n }\n await refresh();\n refetch();\n\n setToggleOpen((cur) => !cur);\n } catch (error) {\n console.error(error);\n showToast({ message: \"Error in Toggle State\", type: \"error\" });\n }\n };\n\n const menuItems = [\n { label: translate(isActiveLabel), onClick: handleToggle },\n ];\n\n const actions = [\n {\n label: \"\",\n icon: <FontAwesomeIcon icon={faPen} />,\n onClick: handleEdit,\n dataTestId: \"app-modal-edit-icon\",\n },\n {\n label: \"\",\n icon: <FontAwesomeIcon icon={faBars} />,\n menuClick: handleToggleOption,\n menuItems: menuItems,\n dataTestId: \"app-modal-menu-icon\",\n },\n ];\n\n /**\n * Initializes the modal by resetting values and setting up state.\n * @method addApp\n */\n const addApp = () => {\n reset();\n setIsEdit(false);\n setShowForm(true);\n };\n\n useEffect(() => {\n if (apps) {\n const data = [];\n apps?.forEach((element) => {\n let newElement = { ...element };\n if (element?.isActive) {\n newElement.stateValue = \"Active\";\n } else {\n newElement.stateValue = \"Inactive\";\n }\n languages?.forEach((lang) => {\n if (element.language === lang.id) {\n newElement.languagevalue = lang.languageValue;\n }\n });\n\n data.push(newElement);\n });\n setTableData(data);\n }\n }, [apps]);\n\n useEffect(() => {\n init();\n }, []);\n const init = async () => {\n setLoading((cur) => !cur);\n try {\n const res = await getAllApps();\n setApps(res?.data);\n } catch (error) {\n console.error(error);\n showToast({ message: \"Error in loading apps\", type: \"error\" });\n } finally {\n setLoading((cur) => !cur);\n }\n };\n const close = () => {\n handleClose();\n };\n const onSubmit = async (data) => {\n try {\n trackEvent(\"button_click\", {\n button_name: \"add-app-add-button\",\n button_type: \"submit\",\n button_id: \"add-app-submit-button\",\n });\n let appDto = { ...data };\n if (isEdit) {\n await updateApp(appDto);\n showToast({ message: \"App Updated Succesfully\", type: \"success\" });\n } else {\n appDto.isActive = true;\n await createApp(appDto);\n showToast({ message: \"App added Succesfully\", type: \"success\" });\n }\n\n trackEvent(\"conversion_event\", {\n form: formRef.current,\n form_name: \"Add app Configuration\",\n submit: true,\n });\n\n init();\n\n await refresh();\n refetch();\n setShowForm(false);\n } catch (error) {\n console.error(error);\n showToast({ message: \"Error in Adding App\", type: \"error\" });\n }\n };\n\n return (\n <Modal\n data-testid=\"appModal-modal\"\n open={open}\n onClose={() => {\n close();\n reset();\n }}\n className=\"translation-modal\"\n >\n <Grid\n container\n sx={{\n display: \"flex\",\n flexDirection: \"column\",\n position: \"absolute\",\n top: 20,\n left: \"50%\",\n transform: \"translateX(-50%)\",\n width: \"95%\",\n maxW: \"100%\",\n maxWidth: { sm: 600, md: 700, lg: 800 },\n bgcolor: \"background.paper\",\n boxShadow: 24,\n border: 1,\n borderColor: \"divider\",\n borderRadius: 0.5,\n }}\n >\n <CustomConfirmationModal\n description={isActiveDescription}\n title={\"CONFIRM ACTION\"}\n handleClick={handleToggleState}\n open={toggleOpen}\n handleClose={() => {\n setToggleOpen((cur) => !cur);\n }}\n data-testid=\"app-modal-customconfirmation\"\n />\n\n <Grid\n sx={{\n p: 1.25,\n px: 3,\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n borderBottom: 1,\n borderColor: \"divider\",\n flexWrap: \"wrap\",\n gap: 1,\n }}\n data-testid=\"appModal-header\"\n >\n <Typography\n variant=\"body1\"\n className=\"text-customBlue\"\n sx={{ fontWeight: \"medium\", fontSize: \"1.125rem\" }}\n >\n {translate(\"Manage Apps\")}\n </Typography>\n <IconButton\n size=\"small\"\n onClick={() => {\n close();\n }}\n data-testid=\"appModal-close-button\"\n >\n <FontAwesomeIcon icon={faXmark} />\n </IconButton>\n </Grid>\n\n <Grid\n item\n sx={{\n overflowY: \"auto\",\n maxHeight: \"80vh\",\n width: \"100%\",\n overflowX: \"auto\",\n }}\n >\n <Grid\n sx={{\n p: 1.25,\n px: 3,\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n borderBottom: 1,\n borderColor: \"divider\",\n flexWrap: \"wrap\",\n gap: 1,\n }}\n >\n <Grid item className=\"w-full\">\n {!showForm && (\n <Grid container justifyContent=\"flex-end\" className=\"pb-[10px]\">\n <AppModalSkeleton isLoading={loading}>\n <Grid item>\n <Button\n size=\"small\"\n variant=\"contained\"\n data-testid=\"add-app-button\"\n color=\"primary\"\n onClick={addApp}\n >\n {translate(\"Add\")} {translate(\"App\")}\n </Button>\n </Grid>\n </AppModalSkeleton>\n </Grid>\n )}\n\n {showForm && (\n <Grid container justifyContent=\"flex-start\" sx={{ pb: 1.25 }}>\n <form onSubmit={handleSubmit(onSubmit)} className=\"w-full\">\n <Grid item className=\"pb-[5px]\">\n <FormControl\n variant=\"outlined\"\n className=\"w-full\"\n data-testid=\"app-value-field\"\n >\n <Box\n sx={{\n display: \"flex\",\n alignItems: \"center\",\n gap: 2,\n mb: 1,\n width: \"100%\",\n }}\n >\n <Box sx={{ width: \"100%\" }}>\n {translate(\"App\")}\n <Box\n component=\"span\"\n sx={{ color: \"error.main\", ml: 0.5 }}\n >\n *\n </Box>\n </Box>\n <CustomTextField\n control={control}\n id=\"appValue\"\n name=\"appValue\"\n errors={errors}\n label=\"\"\n size=\"small\"\n className=\"w-full\"\n data-testid=\"app-value-input\"\n />\n </Box>\n </FormControl>\n </Grid>\n\n <Grid item className=\"pb-[5px]\">\n <FormControl\n variant=\"outlined\"\n className=\"w-full\"\n data-testid=\"app-key-field\"\n >\n <Box\n sx={{\n display: \"flex\",\n alignItems: \"center\",\n gap: 2,\n mb: 1,\n width: \"100%\",\n }}\n >\n <Box sx={{ width: \"100%\" }}>\n {translate(\"App\")} {translate(\"Key\")}\n <Box\n component=\"span\"\n sx={{ color: \"error.main\", ml: 0.5 }}\n >\n *\n </Box>\n </Box>\n <CustomTextField\n control={control}\n id=\"appKey\"\n name=\"appKey\"\n errors={errors}\n label=\"\"\n size=\"small\"\n className=\"w-full\"\n data-testid=\"app-key-input\"\n />\n </Box>\n </FormControl>\n </Grid>\n\n <Grid\n item\n sx={{\n pb: 0.625,\n display: \"flex\",\n justifyContent: \"flex-end\",\n width: \"100%\",\n }}\n >\n <Box\n sx={{\n display: \"flex\",\n flexDirection: { xs: \"column\", sm: \"row\" },\n gap: 1,\n width: { xs: \"100%\", sm: \"auto\" },\n justifyContent: \"flex-end\",\n }}\n >\n <Button\n size=\"small\"\n variant=\"contained\"\n data-testid=\"add-app-cancel\"\n color=\"secondary\"\n onClick={() => {\n setShowForm(false);\n trackEvent(\"conversion_event\", {\n form: formRef.current,\n form_name: \"Add App Configuration\",\n submit: false,\n });\n }}\n >\n {translate(\"Cancel\")}\n </Button>\n <Button\n type=\"submit\"\n size=\"small\"\n variant=\"contained\"\n data-testid=\"add-app-save\"\n color=\"primary\"\n >\n {translate(\"Save\")}\n </Button>\n </Box>\n </Grid>\n </form>\n </Grid>\n )}\n <Grid className=\"w-full block\">\n <CustomizedTable\n columns={cols}\n tableData={tableData}\n actions={actions}\n paginationConfig={{ pagination: false }}\n styleConfig={{ tableStyle: { maxHeight: 120 } }}\n isLoading={loading}\n />\n </Grid>\n </Grid>\n </Grid>\n </Grid>\n </Grid>\n </Modal>\n );\n};\n\nAppModal.propTypes = {\n open: PropTypes.any,\n handleClose: PropTypes.any,\n languages: PropTypes.any,\n refresh: PropTypes.any,\n refetch: PropTypes.any,\n selectedApp: PropTypes.any,\n setSelectedApp: PropTypes.any,\n};\n\nexport default AppModal;\n"],"names":["AppModal","open","handleClose","languages","refresh","refetch","selectedApp","setSelectedApp","formRef","useRef","trackEvent","useTrackEvent","tableData","setTableData","useState","apps","setApps","showForm","setShowForm","isEdit","setIsEdit","translate","useTranslateProvider","toggleOpen","setToggleOpen","isActiveLabel","setIsActiveLabel","isActiveDescription","setIsActiveDescription","clickedRow","setClickedRow","loading","setLoading","validationSchema","Yup","control","handleSubmit","reset","setValue","errors","useForm","yupResolver","cols","handleEdit","row","handleToggleOption","data","handleToggle","curr","handleToggleState","updateApp","init","cur","error","showToast","menuItems","actions","jsx","FontAwesomeIcon","faPen","faBars","addApp","useEffect","element","newElement","lang","res","getAllApps","close","onSubmit","appDto","createApp","Modal","jsxs","Grid","CustomConfirmationModal","Typography","IconButton","faXmark","AppModalSkeleton","Button","FormControl","Box","CustomTextField","CustomizedTable","PropTypes"],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import s from "@mui/material/Grid2";
|
|
|
6
6
|
import * as n from "yup";
|
|
7
7
|
import { useRef as y, useEffect as F } from "react";
|
|
8
8
|
import { useForm as I } from "react-hook-form";
|
|
9
|
-
import { P, a as M } from "./ManageUser-
|
|
9
|
+
import { P, a as M } from "./ManageUser-C9uMe9av.js";
|
|
10
10
|
import W from "@/hooks/useAESEncryption.js";
|
|
11
11
|
import { o as _ } from "./UserListSkeleton-cglK2SaU.js";
|
|
12
12
|
import { showToast as b } from "@/common/toaster/toaster.jsx";
|
|
@@ -173,4 +173,4 @@ O.propTypes = {
|
|
|
173
173
|
export {
|
|
174
174
|
O as default
|
|
175
175
|
};
|
|
176
|
-
//# sourceMappingURL=ChangePasswordModalCore-
|
|
176
|
+
//# sourceMappingURL=ChangePasswordModalCore-CTGy8Ttf.js.map
|
package/dist/{ChangePasswordModalCore-DIe4rzW-.js.map → ChangePasswordModalCore-CTGy8Ttf.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChangePasswordModalCore-DIe4rzW-.js","sources":["../src/views/Users/ChangePasswordModalCore.jsx"],"sourcesContent":["import { yupResolver } from \"@hookform/resolvers/yup\";\nimport PropTypes from \"prop-types\";\nimport {\n Button,\n Card,\n CardContent,\n CardHeader,\n Modal,\n Paper,\n Typography,\n} from \"@mui/material\";\nimport Grid from \"@mui/material/Grid2\";\nimport * as yup from \"yup\";\nimport React, { useEffect, useRef } from \"react\";\nimport { useForm } from \"react-hook-form\";\nimport PasswordStrengthBar from \"react-password-strength-bar\";\nimport useAESEncryption from \"@/hooks/useAESEncryption.js\";\nimport { changePassword } from \"../../services/Users.js\";\nimport { showToast } from \"@/common/toaster/toaster.jsx\";\n\nimport useTrackEvent from \"@/hooks/useTrackEvent\";\nimport { useTranslateProvider } from \"@/common/languageTranslator/TranslationContext\";\nimport { PasswordField } from \"./PasswordField\";\n\nconst validationSchema = yup.object().shape({\n password: yup\n .string()\n .required(\"Password is required\")\n .matches(\n /^(?=.*[a-z])(?=.*[A-Z])(?=.*[@$!%*?&#]).{8,}$/,\n \"Password must be at least 8 characters long with one uppercase letter and one special character\"\n ),\n confirmPassword: yup\n .string()\n .required(\"Confirm Password is required\")\n .oneOf([yup.ref(\"password\"), null], \"Passwords do not match\"),\n});\n\n/**\n * A modal component for changing the password of a user.\n * @module ChangePasswordModal\n * @param {Object} props - The component props.\n * @param {boolean} props.open - A boolean that controls whether the modal is open or closed.\n * @param {Function} props.onClose - A function that is called to close the modal.\n * @param {string} props.userId - The ID of the user whose password is being changed.\n *\n * @returns {JSX.Element} The rendered modal component.\n */\n\nconst ChangePasswordModal = ({ open, onClose, userId, ...props }) => {\n const {\n control,\n formState: { errors },\n handleSubmit,\n watch,\n } = useForm({ resolver: yupResolver(validationSchema), mode: \"onChange\" });\n const formRef = useRef(null);\n const submitRef = useRef(false);\n const trackEvent = useTrackEvent();\n const AESEncryption = useAESEncryption();\n const { translate } = useTranslateProvider();\n\n /**\n * Handles the process of changing a user's password.\n * @function handleChangePassword\n * @param {Object} params - The parameters for changing the password.\n * @param {string} params.password - The new password to be set.\n * @returns {Promise<void>} A promise that resolves when the password change operation is complete.\n */\n\n const handleChangePassword = async ({ password }) => {\n try {\n const encryptedPassword = await AESEncryption.encrypt(password);\n try {\n await changePassword({\n oldPassword: encryptedPassword,\n userId,\n });\n onClose();\n showToast({\n message: \"Password Changed Successfully\",\n type: \"success\",\n });\n submitRef.current = true;\n } catch (error) {\n console.error(error);\n showToast({\n message: error?.response?.data?.message || \"Something Went Wrong\",\n type: \"error\",\n });\n }\n } catch (error) {\n console.error(error);\n }\n };\n\n useEffect(() => {\n let form = formRef.current;\n\n return () => {\n if (form) {\n trackEvent(\"conversion_event\", {\n form: form,\n form_name: \"Change Password\",\n submit: submitRef.current,\n });\n }\n };\n }, [formRef.current]);\n return (\n <Modal open={open} onClose={onClose} {...props}>\n <Paper className=\"absolute mt-[12rem] top-[10%] left-1/2 transform -translate-x-1/2 -translate-y-1/2 w-[90%] md:w-[60%]\">\n <Card\n className=\"m-0\"\n elevation={5}\n component=\"form\"\n ref={formRef}\n onSubmit={handleSubmit(handleChangePassword)}\n noValidate\n >\n <CardHeader\n className=\"\"\n subheader={\n <Typography className=\"subheader-style text-customBlue text-lg\">\n {translate(\"Change Password\")}{\" \"}\n </Typography>\n }\n data-testid=\"changepasswordmodal-cardheader-subheader\"\n />\n <CardContent>\n <Grid container spacing={2} alignItems=\"space-between\">\n <Grid size={{ xs: 10 }}>\n <Typography variant=\"body1\" className=\"flex items-center\">\n {translate(\"New Password\")}{\" \"}\n <span className=\"text-red-500 ml-1\">*</span>\n </Typography>\n </Grid>\n\n <Grid\n size={{ xs: 12 }}\n data-testid=\"changepasswordmodal-grid-newpasswordfield\"\n >\n <PasswordField\n control={control}\n name=\"password\"\n errors={errors}\n />\n </Grid>\n <Grid\n size={{ xs: 12 }}\n data-testid=\"changepasswordmodal-grid-passwordstrengthbar\"\n >\n <PasswordStrengthBar password={watch(\"password\")} />\n </Grid>\n <Grid\n size={{ xs: 12 }}\n data-testid=\"changepasswordmodal-grid-confirmpasswordlabel\"\n >\n <Typography variant=\"body1\" className=\"flex items-center\">\n {translate(\"Confirm Password\")}{\" \"}\n <span className=\"text-red-500 ml-1\">*</span>\n </Typography>\n </Grid>\n <Grid\n size={{ xs: 12 }}\n data-testid=\"changepaConfirm Passwordsswordmodal-grid-confirmpasswordfield\"\n >\n <PasswordField\n control={control}\n name=\"confirmPassword\"\n errors={errors}\n />\n </Grid>\n </Grid>\n <Grid container wrap=\"nowrap\" gap={1} justifyContent=\"flex-end\">\n <Button\n type=\"submit\"\n variant=\"contained\"\n size=\"small\"\n color=\"primary\"\n className=\"mt-[1rem]\"\n data-testid=\"changepasswordmodal-button-submit\"\n >\n {translate(\"Change Password\")}\n </Button>\n <Button\n variant=\"contained\"\n onClick={onClose}\n className=\"mt-[1rem]\"\n color=\"secondary\"\n size=\"small\"\n data-testid=\"changepasswordmodal-button-cancel\"\n >\n {translate(\"Cancel\")}\n </Button>\n </Grid>\n </CardContent>\n </Card>\n </Paper>\n </Modal>\n );\n};\n\nexport default ChangePasswordModal;\n\nChangePasswordModal.propTypes = {\n open: PropTypes.any,\n onClose: PropTypes.any,\n userId: PropTypes.any,\n};\n"],"names":["validationSchema","yup","ChangePasswordModal","open","onClose","userId","props","control","errors","handleSubmit","watch","useForm","yupResolver","formRef","useRef","submitRef","trackEvent","useTrackEvent","AESEncryption","useAESEncryption","translate","useTranslateProvider","handleChangePassword","password","encryptedPassword","changePassword","showToast","error","_b","_a","useEffect","form","jsx","Modal","Paper","jsxs","Card","CardHeader","Typography","CardContent","Grid","PasswordField","PasswordStrengthBar","Button","PropTypes"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ChangePasswordModalCore-CTGy8Ttf.js","sources":["../src/views/Users/ChangePasswordModalCore.jsx"],"sourcesContent":["import { yupResolver } from \"@hookform/resolvers/yup\";\nimport PropTypes from \"prop-types\";\nimport {\n Button,\n Card,\n CardContent,\n CardHeader,\n Modal,\n Paper,\n Typography,\n} from \"@mui/material\";\nimport Grid from \"@mui/material/Grid2\";\nimport * as yup from \"yup\";\nimport React, { useEffect, useRef } from \"react\";\nimport { useForm } from \"react-hook-form\";\nimport PasswordStrengthBar from \"react-password-strength-bar\";\nimport useAESEncryption from \"@/hooks/useAESEncryption.js\";\nimport { changePassword } from \"../../services/Users.js\";\nimport { showToast } from \"@/common/toaster/toaster.jsx\";\n\nimport useTrackEvent from \"@/hooks/useTrackEvent\";\nimport { useTranslateProvider } from \"@/common/languageTranslator/TranslationContext\";\nimport { PasswordField } from \"./PasswordField\";\n\nconst validationSchema = yup.object().shape({\n password: yup\n .string()\n .required(\"Password is required\")\n .matches(\n /^(?=.*[a-z])(?=.*[A-Z])(?=.*[@$!%*?&#]).{8,}$/,\n \"Password must be at least 8 characters long with one uppercase letter and one special character\"\n ),\n confirmPassword: yup\n .string()\n .required(\"Confirm Password is required\")\n .oneOf([yup.ref(\"password\"), null], \"Passwords do not match\"),\n});\n\n/**\n * A modal component for changing the password of a user.\n * @module ChangePasswordModal\n * @param {Object} props - The component props.\n * @param {boolean} props.open - A boolean that controls whether the modal is open or closed.\n * @param {Function} props.onClose - A function that is called to close the modal.\n * @param {string} props.userId - The ID of the user whose password is being changed.\n *\n * @returns {JSX.Element} The rendered modal component.\n */\n\nconst ChangePasswordModal = ({ open, onClose, userId, ...props }) => {\n const {\n control,\n formState: { errors },\n handleSubmit,\n watch,\n } = useForm({ resolver: yupResolver(validationSchema), mode: \"onChange\" });\n const formRef = useRef(null);\n const submitRef = useRef(false);\n const trackEvent = useTrackEvent();\n const AESEncryption = useAESEncryption();\n const { translate } = useTranslateProvider();\n\n /**\n * Handles the process of changing a user's password.\n * @function handleChangePassword\n * @param {Object} params - The parameters for changing the password.\n * @param {string} params.password - The new password to be set.\n * @returns {Promise<void>} A promise that resolves when the password change operation is complete.\n */\n\n const handleChangePassword = async ({ password }) => {\n try {\n const encryptedPassword = await AESEncryption.encrypt(password);\n try {\n await changePassword({\n oldPassword: encryptedPassword,\n userId,\n });\n onClose();\n showToast({\n message: \"Password Changed Successfully\",\n type: \"success\",\n });\n submitRef.current = true;\n } catch (error) {\n console.error(error);\n showToast({\n message: error?.response?.data?.message || \"Something Went Wrong\",\n type: \"error\",\n });\n }\n } catch (error) {\n console.error(error);\n }\n };\n\n useEffect(() => {\n let form = formRef.current;\n\n return () => {\n if (form) {\n trackEvent(\"conversion_event\", {\n form: form,\n form_name: \"Change Password\",\n submit: submitRef.current,\n });\n }\n };\n }, [formRef.current]);\n return (\n <Modal open={open} onClose={onClose} {...props}>\n <Paper className=\"absolute mt-[12rem] top-[10%] left-1/2 transform -translate-x-1/2 -translate-y-1/2 w-[90%] md:w-[60%]\">\n <Card\n className=\"m-0\"\n elevation={5}\n component=\"form\"\n ref={formRef}\n onSubmit={handleSubmit(handleChangePassword)}\n noValidate\n >\n <CardHeader\n className=\"\"\n subheader={\n <Typography className=\"subheader-style text-customBlue text-lg\">\n {translate(\"Change Password\")}{\" \"}\n </Typography>\n }\n data-testid=\"changepasswordmodal-cardheader-subheader\"\n />\n <CardContent>\n <Grid container spacing={2} alignItems=\"space-between\">\n <Grid size={{ xs: 10 }}>\n <Typography variant=\"body1\" className=\"flex items-center\">\n {translate(\"New Password\")}{\" \"}\n <span className=\"text-red-500 ml-1\">*</span>\n </Typography>\n </Grid>\n\n <Grid\n size={{ xs: 12 }}\n data-testid=\"changepasswordmodal-grid-newpasswordfield\"\n >\n <PasswordField\n control={control}\n name=\"password\"\n errors={errors}\n />\n </Grid>\n <Grid\n size={{ xs: 12 }}\n data-testid=\"changepasswordmodal-grid-passwordstrengthbar\"\n >\n <PasswordStrengthBar password={watch(\"password\")} />\n </Grid>\n <Grid\n size={{ xs: 12 }}\n data-testid=\"changepasswordmodal-grid-confirmpasswordlabel\"\n >\n <Typography variant=\"body1\" className=\"flex items-center\">\n {translate(\"Confirm Password\")}{\" \"}\n <span className=\"text-red-500 ml-1\">*</span>\n </Typography>\n </Grid>\n <Grid\n size={{ xs: 12 }}\n data-testid=\"changepaConfirm Passwordsswordmodal-grid-confirmpasswordfield\"\n >\n <PasswordField\n control={control}\n name=\"confirmPassword\"\n errors={errors}\n />\n </Grid>\n </Grid>\n <Grid container wrap=\"nowrap\" gap={1} justifyContent=\"flex-end\">\n <Button\n type=\"submit\"\n variant=\"contained\"\n size=\"small\"\n color=\"primary\"\n className=\"mt-[1rem]\"\n data-testid=\"changepasswordmodal-button-submit\"\n >\n {translate(\"Change Password\")}\n </Button>\n <Button\n variant=\"contained\"\n onClick={onClose}\n className=\"mt-[1rem]\"\n color=\"secondary\"\n size=\"small\"\n data-testid=\"changepasswordmodal-button-cancel\"\n >\n {translate(\"Cancel\")}\n </Button>\n </Grid>\n </CardContent>\n </Card>\n </Paper>\n </Modal>\n );\n};\n\nexport default ChangePasswordModal;\n\nChangePasswordModal.propTypes = {\n open: PropTypes.any,\n onClose: PropTypes.any,\n userId: PropTypes.any,\n};\n"],"names":["validationSchema","yup","ChangePasswordModal","open","onClose","userId","props","control","errors","handleSubmit","watch","useForm","yupResolver","formRef","useRef","submitRef","trackEvent","useTrackEvent","AESEncryption","useAESEncryption","translate","useTranslateProvider","handleChangePassword","password","encryptedPassword","changePassword","showToast","error","_b","_a","useEffect","form","jsx","Modal","Paper","jsxs","Card","CardHeader","Typography","CardContent","Grid","PasswordField","PasswordStrengthBar","Button","PropTypes"],"mappings":"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"}
|