@argusoft/medplat-core 1.0.9 → 1.0.11
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/index-D6bNg8bx.js +66 -0
- package/dist/index-D6bNg8bx.js.map +1 -0
- package/dist/index.css +1 -1
- package/dist/index.js +99455 -445
- package/dist/index.js.map +1 -1
- package/package.json +4 -1
- package/dist/AccessRights-sgIhYR30.js +0 -1238
- package/dist/AccessRights-sgIhYR30.js.map +0 -1
- package/dist/AddEditQueryBuilder-BaZxS2Cm.js +0 -289
- package/dist/AddEditQueryBuilder-BaZxS2Cm.js.map +0 -1
- package/dist/AddEditQueryBuilder.css +0 -1
- package/dist/AddFeatures-DLbjDGei.js +0 -212
- package/dist/AddFeatures-DLbjDGei.js.map +0 -1
- package/dist/AddLabelModal-DE3ploGD.js +0 -734
- package/dist/AddLabelModal-DE3ploGD.js.map +0 -1
- package/dist/AddMenuConfiguration-QWfpcnuP.js +0 -2237
- package/dist/AddMenuConfiguration-QWfpcnuP.js.map +0 -1
- package/dist/AddMenuConfiguration.css +0 -1
- package/dist/AddRoleDrawer-ZK1eejxI.js +0 -453
- package/dist/AddRoleDrawer-ZK1eejxI.js.map +0 -1
- package/dist/AppModal-BgZyfrd-.js +0 -428
- package/dist/AppModal-BgZyfrd-.js.map +0 -1
- package/dist/ChangePasswordModal-MV7g8tkA.js +0 -176
- package/dist/ChangePasswordModal-MV7g8tkA.js.map +0 -1
- package/dist/ConditionConfig-GDCXIg3C.js +0 -395
- package/dist/ConditionConfig-GDCXIg3C.js.map +0 -1
- package/dist/ConditionConfig.css +0 -1
- package/dist/EntityManagement-D-x6Qzal.js +0 -50
- package/dist/EntityManagement-D-x6Qzal.js.map +0 -1
- package/dist/EventConfigurations-jGCJ4LqP.js +0 -384
- package/dist/EventConfigurations-jGCJ4LqP.js.map +0 -1
- package/dist/EventConfigurations.css +0 -1
- package/dist/EventsExceptionModal-BF6E1Np7.js +0 -200
- package/dist/EventsExceptionModal-BF6E1Np7.js.map +0 -1
- package/dist/EventsSkeleton-BN7_0IGs.js +0 -74
- package/dist/EventsSkeleton-BN7_0IGs.js.map +0 -1
- package/dist/FeatureMenu-BYSRoNm0.js +0 -249
- package/dist/FeatureMenu-BYSRoNm0.js.map +0 -1
- package/dist/Features-CKMmuqcs.js +0 -11
- package/dist/Features-CKMmuqcs.js.map +0 -1
- package/dist/FlywayQuery-Cx2sly6g.js +0 -169
- package/dist/FlywayQuery-Cx2sly6g.js.map +0 -1
- package/dist/ImmunizationConfigurationBase-DZ8EqXlF.js +0 -5166
- package/dist/ImmunizationConfigurationBase-DZ8EqXlF.js.map +0 -1
- package/dist/ImmunizationConfigurationBase.css +0 -1
- package/dist/ImmunizationConfigurationsList-CQnxWa09.js +0 -335
- package/dist/ImmunizationConfigurationsList-CQnxWa09.js.map +0 -1
- package/dist/ImmunizationSkeleton-D2tdv5k-.js +0 -186
- package/dist/ImmunizationSkeleton-D2tdv5k-.js.map +0 -1
- package/dist/LanguagesModal-rk6IGQwY.js +0 -394
- package/dist/LanguagesModal-rk6IGQwY.js.map +0 -1
- package/dist/ManageDynamicFeature-BKkCnQvF.js +0 -4189
- package/dist/ManageDynamicFeature-BKkCnQvF.js.map +0 -1
- package/dist/ManageEventConfiguration-BJxS2Su0.js +0 -1017
- package/dist/ManageEventConfiguration-BJxS2Su0.js.map +0 -1
- package/dist/ManageEventConfiguration.css +0 -1
- package/dist/ManageNotification-B4prX-9Z.js +0 -6819
- package/dist/ManageNotification-B4prX-9Z.js.map +0 -1
- package/dist/ManageRole-BjIIXAlK.js +0 -728
- package/dist/ManageRole-BjIIXAlK.js.map +0 -1
- package/dist/ManageTranslation-BTxvSYKb.js +0 -616
- package/dist/ManageTranslation-BTxvSYKb.js.map +0 -1
- package/dist/ManageTranslation.css +0 -1
- package/dist/ManageUser-PHiTNyF8.js +0 -2160
- package/dist/ManageUser-PHiTNyF8.js.map +0 -1
- package/dist/ManageUser.css +0 -1
- package/dist/MobileMenuManagement-DmQU5TTo.js +0 -108
- package/dist/MobileMenuManagement-DmQU5TTo.js.map +0 -1
- package/dist/MobileTypeEventConfigModal-ChhO_A4f.js +0 -783
- package/dist/MobileTypeEventConfigModal-ChhO_A4f.js.map +0 -1
- package/dist/NewServerManagement-5YcAtF-g.js +0 -1002
- package/dist/NewServerManagement-5YcAtF-g.js.map +0 -1
- package/dist/NotificationFlywayQuery-BY8Zzml_.js +0 -244
- package/dist/NotificationFlywayQuery-BY8Zzml_.js.map +0 -1
- package/dist/NotificationList-BkpOrCpM.js +0 -400
- package/dist/NotificationList-BkpOrCpM.js.map +0 -1
- package/dist/OtherTypeEventConfigModal-ZnCGWm9v.js +0 -1953
- package/dist/OtherTypeEventConfigModal-ZnCGWm9v.js.map +0 -1
- package/dist/QueryBuilder-Cus_mRwZ.js +0 -378
- package/dist/QueryBuilder-Cus_mRwZ.js.map +0 -1
- package/dist/QueryBuilder.css +0 -1
- package/dist/QueryManagement-DXA73N2j.js +0 -671
- package/dist/QueryManagement-DXA73N2j.js.map +0 -1
- package/dist/QueryManagement.css +0 -1
- package/dist/RoleManagement-v5Nyp1vr.js +0 -416
- package/dist/RoleManagement-v5Nyp1vr.js.map +0 -1
- package/dist/ServerSyncModal-uNjGCQJz.js +0 -869
- package/dist/ServerSyncModal-uNjGCQJz.js.map +0 -1
- package/dist/ShowFlywayQuery-DMsAbtOW.js +0 -130
- package/dist/ShowFlywayQuery-DMsAbtOW.js.map +0 -1
- package/dist/ShowFlywayQuery-DVRCd384.js +0 -259
- package/dist/ShowFlywayQuery-DVRCd384.js.map +0 -1
- package/dist/ShowQueryHistory-BDN0tzHg.js +0 -190
- package/dist/ShowQueryHistory-BDN0tzHg.js.map +0 -1
- package/dist/SubMenu-BHcSNSUF.js +0 -187
- package/dist/SubMenu-BHcSNSUF.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/TypeConfiguration-C-lk8Szs.js +0 -117
- package/dist/TypeConfiguration-C-lk8Szs.js.map +0 -1
- package/dist/UserList-BxB1tCwM.js +0 -13042
- package/dist/UserList-BxB1tCwM.js.map +0 -1
- package/dist/UserList.css +0 -1
- package/dist/UserListSkeleton-cglK2SaU.js +0 -184
- package/dist/UserListSkeleton-cglK2SaU.js.map +0 -1
- package/dist/WidgetList-BSApErov.js +0 -188
- package/dist/WidgetList-BSApErov.js.map +0 -1
- package/dist/_commonjsHelpers-BItOPCY9.js +0 -29
- package/dist/_commonjsHelpers-BItOPCY9.js.map +0 -1
- package/dist/i18next-CTOWN_jH.js +0 -1394
- package/dist/i18next-CTOWN_jH.js.map +0 -1
- package/dist/manageImmunization-B4swS745.js +0 -1204
- package/dist/manageImmunization-B4swS745.js.map +0 -1
- package/dist/manageImmunization.css +0 -1
|
@@ -1,453 +0,0 @@
|
|
|
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 c, TableBody as j, Divider as be } from "@mui/material";
|
|
3
|
-
import { Grid as h, Box as ye, Stack as ge } from "@mui/system";
|
|
4
|
-
import S from "prop-types";
|
|
5
|
-
import Q from "@/views/custom-components/CustomTextField";
|
|
6
|
-
import { useForm as we } from "react-hook-form";
|
|
7
|
-
import * as X from "yup";
|
|
8
|
-
import { yupResolver as ve } from "@hookform/resolvers/yup";
|
|
9
|
-
import Ne, { useRef as Y, useState as E, useEffect as B } from "react";
|
|
10
|
-
import Z from "@/views/custom-components/CustomConfirmationModal";
|
|
11
|
-
import { showToast as W } from "@/common/toaster/toaster";
|
|
12
|
-
import Ce from "@/views/custom-components/CustomCheckBox";
|
|
13
|
-
import { api as Ae } from "@/common/interceptors/AxiosInterceptor";
|
|
14
|
-
import Te from "@/hooks/useTrackEvent";
|
|
15
|
-
import D from "@/views/custom-components/CustomAutoComplete";
|
|
16
|
-
import { useTranslateProvider as Re } from "@/common/languageTranslator/TranslationContext";
|
|
17
|
-
import { faTrash as ee } from "@fortawesome/free-solid-svg-icons";
|
|
18
|
-
import { FontAwesomeIcon as re } from "@fortawesome/react-fontawesome";
|
|
19
|
-
const Pe = (R) => Ae.post("/notificationtype", R);
|
|
20
|
-
function Ie({ open: R, handleClose: _, data: f, roleData: y }) {
|
|
21
|
-
var G, H;
|
|
22
|
-
const P = Y(null), F = Y(!1), [O, $] = E([]), [g, U] = E(null), [q, v] = E(0), [oe, te] = E(null), { translate: n } = Re(), ae = X.object().shape({
|
|
23
|
-
name: X.string().required("Enter Name")
|
|
24
|
-
});
|
|
25
|
-
B(() => {
|
|
26
|
-
if (P.current) {
|
|
27
|
-
let o = P.current;
|
|
28
|
-
return () => {
|
|
29
|
-
M("conversion_event", {
|
|
30
|
-
form: o,
|
|
31
|
-
form_name: "Add Widget Role",
|
|
32
|
-
submit: F.current
|
|
33
|
-
});
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
}, [P.current]);
|
|
37
|
-
const {
|
|
38
|
-
control: C,
|
|
39
|
-
formState: { errors: I },
|
|
40
|
-
handleSubmit: le,
|
|
41
|
-
setValue: p,
|
|
42
|
-
getValues: w,
|
|
43
|
-
watch: de,
|
|
44
|
-
reset: se
|
|
45
|
-
} = we({
|
|
46
|
-
defaultValues: { selectedPerformer: [] },
|
|
47
|
-
mode: "onChange",
|
|
48
|
-
resolver: ve(ae)
|
|
49
|
-
}), i = de();
|
|
50
|
-
B(() => {
|
|
51
|
-
var o;
|
|
52
|
-
p("name", f.notificationName), (o = f == null ? void 0 : f.roles) != null && o.length && p(
|
|
53
|
-
"roles",
|
|
54
|
-
f.roles ? f.roles.map((r) => y == null ? void 0 : y.find((t) => t.name === r)).filter((r) => r !== void 0) : []
|
|
55
|
-
), f.escalationLevels || (f.escalationLevels = []), p("escalationLevels", f.escalationLevels);
|
|
56
|
-
}, [R]);
|
|
57
|
-
const ne = (o, r) => {
|
|
58
|
-
const t = o == null ? void 0 : o.map((a) => a.id);
|
|
59
|
-
p(`selectedPerformer[${r}].roles`, t);
|
|
60
|
-
}, ce = (o, r, t) => {
|
|
61
|
-
const a = w("escalationLevels");
|
|
62
|
-
a[r].performAction[t] = o, p("escalationLevels", a);
|
|
63
|
-
}, ie = () => {
|
|
64
|
-
const o = i.roles || [], r = [...o];
|
|
65
|
-
O.forEach((t) => {
|
|
66
|
-
o.some((d) => d.id === t.id) || r.push(t);
|
|
67
|
-
}), p("roles", r), $([]);
|
|
68
|
-
};
|
|
69
|
-
B(() => {
|
|
70
|
-
const o = w("selectedPerformer"), r = (i == null ? void 0 : i.roles) || [], t = o.map((a) => {
|
|
71
|
-
const d = ((a == null ? void 0 : a.roles) || []).filter(
|
|
72
|
-
(u) => r.some((A) => A.id === u)
|
|
73
|
-
);
|
|
74
|
-
return { ...a, roles: d };
|
|
75
|
-
});
|
|
76
|
-
p("selectedPerformer", t, { shouldValidate: !0 });
|
|
77
|
-
}, [i.roles]);
|
|
78
|
-
const me = (o, r) => {
|
|
79
|
-
const t = w("escalationLevels"), a = w("selectedPerformer");
|
|
80
|
-
t[r].roles = [
|
|
81
|
-
.../* @__PURE__ */ new Set([
|
|
82
|
-
...t[r].roles,
|
|
83
|
-
...a[r].roles
|
|
84
|
-
])
|
|
85
|
-
], a[r].roles.forEach((d) => {
|
|
86
|
-
t[r].performAction[d] = t[r].performAction[d] || !1;
|
|
87
|
-
}), a[r].roles = [], p("escalationLevels", t), p("selectedPerformer", a);
|
|
88
|
-
}, pe = () => {
|
|
89
|
-
try {
|
|
90
|
-
const r = w("roles").filter((d) => d.id !== g);
|
|
91
|
-
p("roles", [...r]);
|
|
92
|
-
const a = w("escalationLevels").map(
|
|
93
|
-
(d) => {
|
|
94
|
-
const u = d.roles.filter(
|
|
95
|
-
(V) => V !== g
|
|
96
|
-
), { [g]: A, ...k } = d.performAction;
|
|
97
|
-
return {
|
|
98
|
-
...d,
|
|
99
|
-
roles: u,
|
|
100
|
-
performAction: k
|
|
101
|
-
};
|
|
102
|
-
}
|
|
103
|
-
);
|
|
104
|
-
p("escalationLevels", a), v(0);
|
|
105
|
-
} catch (o) {
|
|
106
|
-
W({ message: o, type: "error" });
|
|
107
|
-
}
|
|
108
|
-
}, ue = (o, r) => {
|
|
109
|
-
try {
|
|
110
|
-
const t = w("escalationLevels");
|
|
111
|
-
t[r].roles = t[r].roles.filter(
|
|
112
|
-
(u) => u !== g
|
|
113
|
-
);
|
|
114
|
-
const { [g]: a, ...d } = t[r].performAction;
|
|
115
|
-
t[r].performAction = d, p("escalationValues", [...t]), v(0);
|
|
116
|
-
} catch (t) {
|
|
117
|
-
W({ message: t, type: "error" });
|
|
118
|
-
}
|
|
119
|
-
}, M = Te(), fe = async (o) => {
|
|
120
|
-
try {
|
|
121
|
-
M("button_click", {
|
|
122
|
-
button_name: f ? "update widget button" : "add widget button",
|
|
123
|
-
button_type: "submit",
|
|
124
|
-
button_id: "addroledrawer-button-submit"
|
|
125
|
-
});
|
|
126
|
-
const { roles: r = [], escalationLevels: t } = o, a = r.map((u) => u.id), d = { ...f, escalationLevels: t, roles: a };
|
|
127
|
-
await Pe(d).catch((u) => {
|
|
128
|
-
console.error("error in updating notification", u);
|
|
129
|
-
}), W({ message: "Widget Updated Successfully", type: "success" }), F.current = !0, _(!0);
|
|
130
|
-
} catch (r) {
|
|
131
|
-
console.error(r);
|
|
132
|
-
}
|
|
133
|
-
};
|
|
134
|
-
return /* @__PURE__ */ e(
|
|
135
|
-
he,
|
|
136
|
-
{
|
|
137
|
-
open: R,
|
|
138
|
-
anchor: "right",
|
|
139
|
-
onClose: _,
|
|
140
|
-
className: "z-[1300]",
|
|
141
|
-
"data-testid": "addroledrawer-drawer-container",
|
|
142
|
-
children: /* @__PURE__ */ l(
|
|
143
|
-
h,
|
|
144
|
-
{
|
|
145
|
-
container: !0,
|
|
146
|
-
className: "flex flex-col w-full md:w-[600px] ",
|
|
147
|
-
ref: P,
|
|
148
|
-
children: [
|
|
149
|
-
/* @__PURE__ */ e(
|
|
150
|
-
h,
|
|
151
|
-
{
|
|
152
|
-
p: 1,
|
|
153
|
-
alignContent: "flex-start",
|
|
154
|
-
className: "p-2.5 px-5 flex border-b font-medium text-lg",
|
|
155
|
-
"data-testid": "addroledrawer-grid-header uppercase",
|
|
156
|
-
children: n("Assign Role")
|
|
157
|
-
}
|
|
158
|
-
),
|
|
159
|
-
/* @__PURE__ */ l(
|
|
160
|
-
h,
|
|
161
|
-
{
|
|
162
|
-
container: !0,
|
|
163
|
-
display: "flex",
|
|
164
|
-
flexDirection: "column",
|
|
165
|
-
p: 1,
|
|
166
|
-
"data-testid": "addroledrawer-grid-content",
|
|
167
|
-
children: [
|
|
168
|
-
/* @__PURE__ */ l(h, { "data-testid": "addroledrawer-grid-name", children: [
|
|
169
|
-
/* @__PURE__ */ l(m, { variant: "body2", children: [
|
|
170
|
-
n("Name"),
|
|
171
|
-
/* @__PURE__ */ e("span", { className: "text-red-500 ml-1", children: "*" })
|
|
172
|
-
] }),
|
|
173
|
-
/* @__PURE__ */ e(
|
|
174
|
-
Q,
|
|
175
|
-
{
|
|
176
|
-
id: "name",
|
|
177
|
-
control: C,
|
|
178
|
-
name: "name",
|
|
179
|
-
errors: I,
|
|
180
|
-
InputProps: {
|
|
181
|
-
readOnly: !0
|
|
182
|
-
},
|
|
183
|
-
dataTestId: "addroledrawer-textfield-name"
|
|
184
|
-
}
|
|
185
|
-
)
|
|
186
|
-
] }),
|
|
187
|
-
/* @__PURE__ */ l(h, { "data-testid": "addroledrawer-grid-actionby", children: [
|
|
188
|
-
/* @__PURE__ */ e(m, { variant: "body2", mt: 1, children: n("Select Role") }),
|
|
189
|
-
/* @__PURE__ */ l(h, { container: !0, display: "flex", flexDirection: "row", children: [
|
|
190
|
-
/* @__PURE__ */ e(h, { width: "70%", mr: 2, children: /* @__PURE__ */ e(
|
|
191
|
-
D,
|
|
192
|
-
{
|
|
193
|
-
name: "role",
|
|
194
|
-
control: C,
|
|
195
|
-
value: O,
|
|
196
|
-
options: y,
|
|
197
|
-
getOptionLabel: (o) => o.name,
|
|
198
|
-
errors: I,
|
|
199
|
-
dataTestId: "addroledrawer-select-roles",
|
|
200
|
-
onChange: (o, r) => $(r)
|
|
201
|
-
}
|
|
202
|
-
) }),
|
|
203
|
-
/* @__PURE__ */ e(h, { className: "pt-2", children: /* @__PURE__ */ e(
|
|
204
|
-
x,
|
|
205
|
-
{
|
|
206
|
-
variant: "contained",
|
|
207
|
-
size: "small",
|
|
208
|
-
disabled: !O.length,
|
|
209
|
-
onClick: ie,
|
|
210
|
-
"data-testid": "addroledrawer-button-add",
|
|
211
|
-
children: n("Assign")
|
|
212
|
-
}
|
|
213
|
-
) })
|
|
214
|
-
] })
|
|
215
|
-
] }),
|
|
216
|
-
/* @__PURE__ */ e(h, { "data-testid": "addroledrawer-grid-table", children: /* @__PURE__ */ l(
|
|
217
|
-
L,
|
|
218
|
-
{
|
|
219
|
-
"data-testid": "addroledrawer-table",
|
|
220
|
-
className: "border border-gray-300",
|
|
221
|
-
children: [
|
|
222
|
-
/* @__PURE__ */ e(z, { children: /* @__PURE__ */ l(N, { children: [
|
|
223
|
-
/* @__PURE__ */ e(c, { 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")})` }) }),
|
|
224
|
-
/* @__PURE__ */ e(c, { className: "p-2", children: /* @__PURE__ */ e(m, { variant: "body2", className: "font-bold", children: n("Delete") }) })
|
|
225
|
-
] }) }),
|
|
226
|
-
/* @__PURE__ */ e(j, { children: (G = i == null ? void 0 : i.roles) == null ? void 0 : G.map((o, r) => /* @__PURE__ */ l(
|
|
227
|
-
N,
|
|
228
|
-
{
|
|
229
|
-
"data-testid": "addroledrawer-tablerow-roles",
|
|
230
|
-
children: [
|
|
231
|
-
/* @__PURE__ */ e(c, { className: "border border-gray-300 p-2", children: /* @__PURE__ */ e(m, { variant: "caption", children: o.name }) }),
|
|
232
|
-
/* @__PURE__ */ l(c, { className: "p-2", children: [
|
|
233
|
-
/* @__PURE__ */ e(
|
|
234
|
-
re,
|
|
235
|
-
{
|
|
236
|
-
icon: ee,
|
|
237
|
-
className: "text-[18px] text-[var(--color-error)]",
|
|
238
|
-
onClick: () => {
|
|
239
|
-
v(1), U(o.id);
|
|
240
|
-
},
|
|
241
|
-
"data-testid": "addroledrawer-icon-delete"
|
|
242
|
-
}
|
|
243
|
-
),
|
|
244
|
-
/* @__PURE__ */ e(
|
|
245
|
-
Z,
|
|
246
|
-
{
|
|
247
|
-
open: q === 1 && g === o.id,
|
|
248
|
-
handleClose: () => v(0),
|
|
249
|
-
handleClick: (t) => pe(),
|
|
250
|
-
title: "CONFIRM ACTION",
|
|
251
|
-
description: "Are you sure you want to delete this role? It will also delete role from each escalation level.",
|
|
252
|
-
dataTestId: "addroledrawer-modal-confirmdelete"
|
|
253
|
-
}
|
|
254
|
-
)
|
|
255
|
-
] })
|
|
256
|
-
]
|
|
257
|
-
},
|
|
258
|
-
o.id
|
|
259
|
-
)) })
|
|
260
|
-
]
|
|
261
|
-
}
|
|
262
|
-
) }),
|
|
263
|
-
(H = i.escalationLevels) == null ? void 0 : H.map((o, r) => {
|
|
264
|
-
var t, a, d, u, A, k, V, J;
|
|
265
|
-
return /* @__PURE__ */ l(Ne.Fragment, { children: [
|
|
266
|
-
/* @__PURE__ */ e(h, { "data-testid": "addroledrawer-grid-escalationlevel", children: /* @__PURE__ */ l(L, { className: "border border-gray-300", children: [
|
|
267
|
-
/* @__PURE__ */ e(z, { children: /* @__PURE__ */ l(N, { children: [
|
|
268
|
-
/* @__PURE__ */ e(c, { className: "border-r border-gray-300 p-2 w-80", children: /* @__PURE__ */ e(m, { variant: "body2", className: "font-bold", children: n("Escalation Level") }) }),
|
|
269
|
-
/* @__PURE__ */ e(c, { className: "border-r border-gray-300 p-2 w-60", children: /* @__PURE__ */ e(m, { variant: "body2", className: "font-bold", children: n("Performer") }) }),
|
|
270
|
-
/* @__PURE__ */ e(c, { className: "p-2 w-40 ", children: /* @__PURE__ */ e(m, { variant: "body2", className: "font-bold", children: n("Action") }) })
|
|
271
|
-
] }) }),
|
|
272
|
-
/* @__PURE__ */ e(j, { children: /* @__PURE__ */ l(N, { "data-testid": "addroledrawer-tablerow-escalationperformer", children: [
|
|
273
|
-
/* @__PURE__ */ e(c, { className: "border-r border-gray-300 p-2", children: /* @__PURE__ */ e(
|
|
274
|
-
Q,
|
|
275
|
-
{
|
|
276
|
-
id: "escalationLevel",
|
|
277
|
-
control: C,
|
|
278
|
-
name: `escalationLevelData[${r}].name`,
|
|
279
|
-
defaultValue: o == null ? void 0 : o.name,
|
|
280
|
-
errors: I,
|
|
281
|
-
disabled: !0,
|
|
282
|
-
dataTestId: "addroledrawer-textfield-escalationlevel"
|
|
283
|
-
}
|
|
284
|
-
) }),
|
|
285
|
-
/* @__PURE__ */ e(c, { className: "border-r border-gray-300 p-2", children: /* @__PURE__ */ e(
|
|
286
|
-
D,
|
|
287
|
-
{
|
|
288
|
-
control: C,
|
|
289
|
-
value: (a = (t = i.selectedPerformer) == null ? void 0 : t[r]) != null && a.roles ? (u = (d = i.selectedPerformer[r]) == null ? void 0 : d.roles) == null ? void 0 : u.map(
|
|
290
|
-
(s) => y.find((b) => b.id === s)
|
|
291
|
-
) : [],
|
|
292
|
-
name: `selectedPerformer[${r}].roles`,
|
|
293
|
-
options: (A = i == null ? void 0 : i.roles) == null ? void 0 : A.map(
|
|
294
|
-
(s) => y.find((b) => b.id === s.id)
|
|
295
|
-
),
|
|
296
|
-
getOptionLabel: (s) => s == null ? void 0 : s.name,
|
|
297
|
-
onChange: (s, b) => ne(b, r),
|
|
298
|
-
dataTestId: "addroledrawer-select-performer",
|
|
299
|
-
errors: I
|
|
300
|
-
}
|
|
301
|
-
) }),
|
|
302
|
-
/* @__PURE__ */ e(c, { children: /* @__PURE__ */ e(
|
|
303
|
-
x,
|
|
304
|
-
{
|
|
305
|
-
variant: "contained",
|
|
306
|
-
size: "small",
|
|
307
|
-
disabled: !((V = (k = i.selectedPerformer[r]) == null ? void 0 : k.roles) != null && V.length),
|
|
308
|
-
onClick: (s) => me(s, r),
|
|
309
|
-
"data-testid": "addroledrawer-button-addperformer",
|
|
310
|
-
children: n("Add")
|
|
311
|
-
}
|
|
312
|
-
) })
|
|
313
|
-
] }) })
|
|
314
|
-
] }) }),
|
|
315
|
-
/* @__PURE__ */ e(h, { children: o.roles.length ? /* @__PURE__ */ l(
|
|
316
|
-
L,
|
|
317
|
-
{
|
|
318
|
-
className: "border border-gray-300",
|
|
319
|
-
"data-testid": "addroledrawer-table-performactionroles",
|
|
320
|
-
children: [
|
|
321
|
-
/* @__PURE__ */ e(z, { children: /* @__PURE__ */ l(N, { children: [
|
|
322
|
-
/* @__PURE__ */ e(c, { className: "border border-gray-300 p-2", children: /* @__PURE__ */ e(m, { variant: "body2", className: "font-bold", children: n("Name") }) }),
|
|
323
|
-
/* @__PURE__ */ e(c, { className: "border border-gray-300 p-2", children: /* @__PURE__ */ e(m, { variant: "body2", className: "font-bold", children: n("Roles with perform action") }) }),
|
|
324
|
-
/* @__PURE__ */ e(c, { className: "p-2", children: /* @__PURE__ */ e(m, { variant: "body2", className: "font-bold", children: n("Delete") }) })
|
|
325
|
-
] }) }),
|
|
326
|
-
/* @__PURE__ */ e(j, { children: (J = o.roles) == null ? void 0 : J.filter(
|
|
327
|
-
(s) => y.find((b) => b.id === s)
|
|
328
|
-
).map((s, b) => {
|
|
329
|
-
var K;
|
|
330
|
-
return /* @__PURE__ */ l(
|
|
331
|
-
N,
|
|
332
|
-
{
|
|
333
|
-
"data-testid": "addroledrawer-tablerow-roleactions",
|
|
334
|
-
children: [
|
|
335
|
-
b === 0 && /* @__PURE__ */ e(
|
|
336
|
-
c,
|
|
337
|
-
{
|
|
338
|
-
className: "border border-gray-300 p-2",
|
|
339
|
-
rowSpan: o.roles.length,
|
|
340
|
-
children: o.name
|
|
341
|
-
}
|
|
342
|
-
),
|
|
343
|
-
/* @__PURE__ */ e(c, { className: "border border-gray-300 p-2", children: /* @__PURE__ */ l(ye, { className: "flex items-center", children: [
|
|
344
|
-
/* @__PURE__ */ e(
|
|
345
|
-
Ce,
|
|
346
|
-
{
|
|
347
|
-
name: `${r}-${b}`,
|
|
348
|
-
control: C,
|
|
349
|
-
isFullWidth: !1,
|
|
350
|
-
checked: o.performAction[s],
|
|
351
|
-
onChange: (T) => ce(T, r, s),
|
|
352
|
-
"data-testid": "addroledrawer-checkbox-performaction"
|
|
353
|
-
}
|
|
354
|
-
),
|
|
355
|
-
/* @__PURE__ */ e(m, { variant: "caption", children: (K = y.find((T) => T.id === s)) == null ? void 0 : K.name })
|
|
356
|
-
] }) }),
|
|
357
|
-
/* @__PURE__ */ l(c, { className: "border border-gray-300 p-2", children: [
|
|
358
|
-
/* @__PURE__ */ e(
|
|
359
|
-
re,
|
|
360
|
-
{
|
|
361
|
-
icon: ee,
|
|
362
|
-
className: "text-[18px] text-[var(--color-error)]",
|
|
363
|
-
onClick: () => {
|
|
364
|
-
v(2), U(s), te(r);
|
|
365
|
-
},
|
|
366
|
-
"data-testid": "addroledrawer-icon-deleterole"
|
|
367
|
-
}
|
|
368
|
-
),
|
|
369
|
-
/* @__PURE__ */ e(
|
|
370
|
-
Z,
|
|
371
|
-
{
|
|
372
|
-
open: q === 2 && g === s && oe === r,
|
|
373
|
-
handleClose: () => v(0),
|
|
374
|
-
handleClick: (T) => {
|
|
375
|
-
ue(T, r);
|
|
376
|
-
},
|
|
377
|
-
title: "CONFIRM ACTION",
|
|
378
|
-
description: "Are you sure you want to delete this role?",
|
|
379
|
-
dataTestId: "addroledrawer-modal-confirmdeleterole"
|
|
380
|
-
}
|
|
381
|
-
)
|
|
382
|
-
] })
|
|
383
|
-
]
|
|
384
|
-
},
|
|
385
|
-
s
|
|
386
|
-
);
|
|
387
|
-
}) })
|
|
388
|
-
]
|
|
389
|
-
}
|
|
390
|
-
) : null })
|
|
391
|
-
] }, o.id);
|
|
392
|
-
})
|
|
393
|
-
]
|
|
394
|
-
}
|
|
395
|
-
),
|
|
396
|
-
/* @__PURE__ */ e(be, { "data-testid": "addroledrawer-divider" }),
|
|
397
|
-
/* @__PURE__ */ l(
|
|
398
|
-
ge,
|
|
399
|
-
{
|
|
400
|
-
direction: "row",
|
|
401
|
-
spacing: 2,
|
|
402
|
-
justifyContent: "flex-end",
|
|
403
|
-
mt: 2,
|
|
404
|
-
mb: 1.5,
|
|
405
|
-
children: [
|
|
406
|
-
/* @__PURE__ */ e(
|
|
407
|
-
x,
|
|
408
|
-
{
|
|
409
|
-
variant: "contained",
|
|
410
|
-
color: "secondary",
|
|
411
|
-
size: "small",
|
|
412
|
-
onClick: () => {
|
|
413
|
-
M("button_click", {
|
|
414
|
-
button_name: "cancel widget button",
|
|
415
|
-
button_type: "cancel",
|
|
416
|
-
button_id: "addroledrawer-button-close"
|
|
417
|
-
}), se(), $([]), _();
|
|
418
|
-
},
|
|
419
|
-
"data-testid": "addroledrawer-button-close",
|
|
420
|
-
children: /* @__PURE__ */ e(m, { variant: "caption", children: `${n("Close")}` })
|
|
421
|
-
}
|
|
422
|
-
),
|
|
423
|
-
/* @__PURE__ */ e(
|
|
424
|
-
x,
|
|
425
|
-
{
|
|
426
|
-
variant: "contained",
|
|
427
|
-
color: "primary",
|
|
428
|
-
className: "mr-2",
|
|
429
|
-
size: "small",
|
|
430
|
-
onClick: le(fe),
|
|
431
|
-
"data-testid": "addroledrawer-button-submit",
|
|
432
|
-
children: n("Update")
|
|
433
|
-
}
|
|
434
|
-
)
|
|
435
|
-
]
|
|
436
|
-
}
|
|
437
|
-
)
|
|
438
|
-
]
|
|
439
|
-
}
|
|
440
|
-
)
|
|
441
|
-
}
|
|
442
|
-
);
|
|
443
|
-
}
|
|
444
|
-
Ie.propTypes = {
|
|
445
|
-
open: S.any,
|
|
446
|
-
handleClose: S.func,
|
|
447
|
-
data: S.any,
|
|
448
|
-
roleData: S.any
|
|
449
|
-
};
|
|
450
|
-
export {
|
|
451
|
-
Ie as default
|
|
452
|
-
};
|
|
453
|
-
//# sourceMappingURL=AddRoleDrawer-ZK1eejxI.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AddRoleDrawer-ZK1eejxI.js","sources":["../src/services/Widgets.js","../src/views/Widgets/AddRoleDrawer.jsx"],"sourcesContent":["import { api } from \"@/common/interceptors/AxiosInterceptor\";\n\nexport const retrieveAllNotifications = (isActive) =>\n api.get(`/notificationtype`, { is_active: isActive });\n\nexport const updateNotification = (data) => api.post(\"/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","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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"}
|