@argusoft/medplat-core 1.0.28 → 1.0.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (229) hide show
  1. package/dist/AccessRights-xrday-L1.js +1023 -0
  2. package/dist/AccessRights-xrday-L1.js.map +1 -0
  3. package/dist/AddEditQueryBuilder-D-iQiVIe.js +365 -0
  4. package/dist/AddEditQueryBuilder-D-iQiVIe.js.map +1 -0
  5. package/dist/{AddFeatures-C0Z29oSd.js → AddFeatures-D1sU8RjY.js} +2 -2
  6. package/dist/{AddFeatures-C0Z29oSd.js.map → AddFeatures-D1sU8RjY.js.map} +1 -1
  7. package/dist/AddLabelModal-Bq-wRqv9.js +631 -0
  8. package/dist/AddLabelModal-Bq-wRqv9.js.map +1 -0
  9. package/dist/AddMenuConfiguration-e5BVXhmw.js +8547 -0
  10. package/dist/AddMenuConfiguration-e5BVXhmw.js.map +1 -0
  11. package/dist/{AddRoleDrawer-CQdzQZLb.js → AddRoleDrawer-0gqAK8N0.js} +62 -63
  12. package/dist/AddRoleDrawer-0gqAK8N0.js.map +1 -0
  13. package/dist/AppModal-CCtrQ5Tr.js +394 -0
  14. package/dist/AppModal-CCtrQ5Tr.js.map +1 -0
  15. package/dist/BrandsPage-DmRW5bhm-Bk1szrjI.js +387 -0
  16. package/dist/BrandsPage-DmRW5bhm-Bk1szrjI.js.map +1 -0
  17. package/dist/CategoriesPage-BsS5IQh3-B03lWRY5.js +391 -0
  18. package/dist/CategoriesPage-BsS5IQh3-B03lWRY5.js.map +1 -0
  19. package/dist/{ChangePasswordModalCore-CDxkeIIM.js → ChangePasswordModalCore-BPsJquTS.js} +1606 -1611
  20. package/dist/ChangePasswordModalCore-BPsJquTS.js.map +1 -0
  21. package/dist/{ConditionConfig-DSsgGEXS.js → ConditionConfig-Ddz9halE.js} +2 -2
  22. package/dist/ConditionConfig-Ddz9halE.js.map +1 -0
  23. package/dist/DashboardPage-C3bKc5na-sBd9Yqbi.js +435 -0
  24. package/dist/DashboardPage-C3bKc5na-sBd9Yqbi.js.map +1 -0
  25. package/dist/{EntityManagement-GaYsBTvf.js → EntityManagement-CPQL6qBj.js} +2 -2
  26. package/dist/{EntityManagement-GaYsBTvf.js.map → EntityManagement-CPQL6qBj.js.map} +1 -1
  27. package/dist/EventConfig-BmLemzX3.js +26 -0
  28. package/dist/EventConfig-BmLemzX3.js.map +1 -0
  29. package/dist/{EventConfigurations-kNtAj_WM.js → EventConfigurations-Bzh1qWXU.js} +31 -30
  30. package/dist/{EventConfigurations-kNtAj_WM.js.map → EventConfigurations-Bzh1qWXU.js.map} +1 -1
  31. package/dist/{EventsExceptionModal-D4Bf1ilS.js → EventsExceptionModal-B2SRrnB1.js} +2 -2
  32. package/dist/{EventsExceptionModal-D4Bf1ilS.js.map → EventsExceptionModal-B2SRrnB1.js.map} +1 -1
  33. package/dist/EventsSkeleton-BIcPks4T.js +61 -0
  34. package/dist/EventsSkeleton-BIcPks4T.js.map +1 -0
  35. package/dist/FacilityPicker-BiZeupmP-CyPHmj6b.js +79 -0
  36. package/dist/FacilityPicker-BiZeupmP-CyPHmj6b.js.map +1 -0
  37. package/dist/FeatureMenu-DYJmDt7q.js +521 -0
  38. package/dist/FeatureMenu-DYJmDt7q.js.map +1 -0
  39. package/dist/Features-Dne21RWu.js +14 -0
  40. package/dist/Features-Dne21RWu.js.map +1 -0
  41. package/dist/{FhirServerList-Dkq7Kbes.js → FhirServerList-DuTwnngN.js} +19 -19
  42. package/dist/{FhirServerList-Dkq7Kbes.js.map → FhirServerList-DuTwnngN.js.map} +1 -1
  43. package/dist/{FhirServerWizard-Db6Hm4bQ.js → FhirServerWizard-DZI8Olku.js} +15 -15
  44. package/dist/{FhirServerWizard-Db6Hm4bQ.js.map → FhirServerWizard-DZI8Olku.js.map} +1 -1
  45. package/dist/FlywayQuery-CQygj51V.js +179 -0
  46. package/dist/FlywayQuery-CQygj51V.js.map +1 -0
  47. package/dist/{ManageNotification-CaBAOhji.js → Google-DQxMfbaL.js} +1725 -2652
  48. package/dist/{ManageNotification-CaBAOhji.js.map → Google-DQxMfbaL.js.map} +1 -1
  49. package/dist/GrantPermissionModal-BDN66Atn.js +236 -0
  50. package/dist/GrantPermissionModal-BDN66Atn.js.map +1 -0
  51. package/dist/ImmunizationConfigurationBase-Di1KO3oW.js +7639 -0
  52. package/dist/ImmunizationConfigurationBase-Di1KO3oW.js.map +1 -0
  53. package/dist/ImmunizationConfigurationBase.css +1 -1
  54. package/dist/ImmunizationConfigurationsList-TZcLDEci.js +369 -0
  55. package/dist/ImmunizationConfigurationsList-TZcLDEci.js.map +1 -0
  56. package/dist/InventoryPage-C_AxSy7A-QLvlL4rE.js +665 -0
  57. package/dist/InventoryPage-C_AxSy7A-QLvlL4rE.js.map +1 -0
  58. package/dist/LanguagesModal-B3NTebYT.js +352 -0
  59. package/dist/LanguagesModal-B3NTebYT.js.map +1 -0
  60. package/dist/ManageDynamicFeature-BU0I45dd.js +4475 -0
  61. package/dist/ManageDynamicFeature-BU0I45dd.js.map +1 -0
  62. package/dist/{ManageEventConfiguration-DV3I5POA.js → ManageEventConfiguration-CoYcpjR9.js} +465 -397
  63. package/dist/ManageEventConfiguration-CoYcpjR9.js.map +1 -0
  64. package/dist/ManageNotification-C5MhV77Q.js +934 -0
  65. package/dist/ManageNotification-C5MhV77Q.js.map +1 -0
  66. package/dist/{ManageRole-CGYfglpo.js → ManageRole-CNZBRKGU.js} +32 -30
  67. package/dist/ManageRole-CNZBRKGU.js.map +1 -0
  68. package/dist/ManageTranslation-vRiptUAP.js +833 -0
  69. package/dist/ManageTranslation-vRiptUAP.js.map +1 -0
  70. package/dist/ManageTranslation.css +1 -1
  71. package/dist/{ManageUser-AY1EUDLI.js → ManageUser-DCFkUMV9.js} +1722 -1586
  72. package/dist/ManageUser-DCFkUMV9.js.map +1 -0
  73. package/dist/MemberProfileCard-BdUNgHRB-VywqQdFF.js +272 -0
  74. package/dist/MemberProfileCard-BdUNgHRB-VywqQdFF.js.map +1 -0
  75. package/dist/MobileAnalytics-pQoE8cG1.js +16888 -0
  76. package/dist/MobileAnalytics-pQoE8cG1.js.map +1 -0
  77. package/dist/MobileMenuManagement-Cf8IZlla.js +108 -0
  78. package/dist/MobileMenuManagement-Cf8IZlla.js.map +1 -0
  79. package/dist/{MobileTypeEventConfigModal-BxLympIO.js → MobileTypeEventConfigModal-BeveaX0C.js} +2 -2
  80. package/dist/MobileTypeEventConfigModal-BeveaX0C.js.map +1 -0
  81. package/dist/NotificationFlywayQuery-BAHVjf6N.js +247 -0
  82. package/dist/NotificationFlywayQuery-BAHVjf6N.js.map +1 -0
  83. package/dist/{NotificationList-C3Vb_jKU.js → NotificationList-DEyRZEuM.js} +109 -110
  84. package/dist/NotificationList-DEyRZEuM.js.map +1 -0
  85. package/dist/{OtherTypeEventConfigModal-BeG1GrUi.js → OtherTypeEventConfigModal-CM6VkdmY.js} +570 -478
  86. package/dist/OtherTypeEventConfigModal-CM6VkdmY.js.map +1 -0
  87. package/dist/PaymentCreatePage-CIVe0P0p-25BQVpOX.js +482 -0
  88. package/dist/PaymentCreatePage-CIVe0P0p-25BQVpOX.js.map +1 -0
  89. package/dist/PaymentsPage-BvPe5Q9F-D2gfziwW.js +157 -0
  90. package/dist/PaymentsPage-BvPe5Q9F-D2gfziwW.js.map +1 -0
  91. package/dist/PermissionsModal-CCYkcKlC.js +151 -0
  92. package/dist/PermissionsModal-CCYkcKlC.js.map +1 -0
  93. package/dist/PickupBatchLinesEditor-DHmcAG23-DL2p6IKJ.js +119 -0
  94. package/dist/PickupBatchLinesEditor-DHmcAG23-DL2p6IKJ.js.map +1 -0
  95. package/dist/PickupCreatePage-CB0Sl0Hb-Mmj7zESG.js +783 -0
  96. package/dist/PickupCreatePage-CB0Sl0Hb-Mmj7zESG.js.map +1 -0
  97. package/dist/PickupsPage-Ctpghavs-CUp4uIZq.js +818 -0
  98. package/dist/PickupsPage-Ctpghavs-CUp4uIZq.js.map +1 -0
  99. package/dist/PmGuard-b10TGXEi-G3N0G_Wg.js +599 -0
  100. package/dist/PmGuard-b10TGXEi-G3N0G_Wg.js.map +1 -0
  101. package/dist/ProductEditPage-C1thoKHu-URQaZ6st.js +1302 -0
  102. package/dist/ProductEditPage-C1thoKHu-URQaZ6st.js.map +1 -0
  103. package/dist/ProductsPage-CupVmOD4-D45a_hf-.js +252 -0
  104. package/dist/ProductsPage-CupVmOD4-D45a_hf-.js.map +1 -0
  105. package/dist/PurchaseCreatePage-YD3NmhPQ-2j4etSjM.js +648 -0
  106. package/dist/PurchaseCreatePage-YD3NmhPQ-2j4etSjM.js.map +1 -0
  107. package/dist/PurchaseRequestDetailPage-Dg_MRY_N-D1bgTEAn.js +1577 -0
  108. package/dist/PurchaseRequestDetailPage-Dg_MRY_N-D1bgTEAn.js.map +1 -0
  109. package/dist/PurchaseRequestsPage-DPAPzpmm-mDH2IrTl.js +279 -0
  110. package/dist/PurchaseRequestsPage-DPAPzpmm-mDH2IrTl.js.map +1 -0
  111. package/dist/PurchasesPage-It1GHiXl-eH4IsF_U.js +293 -0
  112. package/dist/PurchasesPage-It1GHiXl-eH4IsF_U.js.map +1 -0
  113. package/dist/QueryBuilder-CXaBe6sr.js +478 -0
  114. package/dist/QueryBuilder-CXaBe6sr.js.map +1 -0
  115. package/dist/{RoleManagement-BPl2cE27.js → RoleManagement-s8iNx2Mu.js} +131 -142
  116. package/dist/RoleManagement-s8iNx2Mu.js.map +1 -0
  117. package/dist/Roles-BIyiic67.js +14 -0
  118. package/dist/Roles-BIyiic67.js.map +1 -0
  119. package/dist/SaleCreatePage-C9kFmTvm-B3Y0o4CX.js +544 -0
  120. package/dist/SaleCreatePage-C9kFmTvm-B3Y0o4CX.js.map +1 -0
  121. package/dist/SalesPage-D18DCseD-BxktGDRQ.js +315 -0
  122. package/dist/SalesPage-D18DCseD-BxktGDRQ.js.map +1 -0
  123. package/dist/{ServerSyncModal-D_oFpv3C.js → ServerSyncModal-92U3xtqI.js} +84 -85
  124. package/dist/ServerSyncModal-92U3xtqI.js.map +1 -0
  125. package/dist/SettingsPage-VsxI-ano-DcmtUUEj.js +747 -0
  126. package/dist/SettingsPage-VsxI-ano-DcmtUUEj.js.map +1 -0
  127. package/dist/ShowFlywayQuery-D10Olk5Z.js +154 -0
  128. package/dist/ShowFlywayQuery-D10Olk5Z.js.map +1 -0
  129. package/dist/{ShowFlywayQuery-DVRCd384.js → ShowFlywayQuery-D1y_4A1u.js} +161 -121
  130. package/dist/ShowFlywayQuery-D1y_4A1u.js.map +1 -0
  131. package/dist/ShowQueryHistory-DRBKYDKk.js +313 -0
  132. package/dist/ShowQueryHistory-DRBKYDKk.js.map +1 -0
  133. package/dist/StorageUnitsPage-7EqwuMOI-BwUso1Th.js +721 -0
  134. package/dist/StorageUnitsPage-7EqwuMOI-BwUso1Th.js.map +1 -0
  135. package/dist/SubMenu-eEDhZUvh.js +317 -0
  136. package/dist/SubMenu-eEDhZUvh.js.map +1 -0
  137. package/dist/{TableDetails-Cf_YfnY2.js → TableDetails-BtafRxXb.js} +1069 -831
  138. package/dist/TableDetails-BtafRxXb.js.map +1 -0
  139. package/dist/{TableList-D6jnIbnz.js → TableList-Dpo6dO7S.js} +2 -2
  140. package/dist/{TableList-D6jnIbnz.js.map → TableList-Dpo6dO7S.js.map} +1 -1
  141. package/dist/TransactionsPage-DrH53pVS-BkhIGB6C.js +746 -0
  142. package/dist/TransactionsPage-DrH53pVS-BkhIGB6C.js.map +1 -0
  143. package/dist/TransferCreatePage-CuvoMrYH-DTTfHjz-.js +315 -0
  144. package/dist/TransferCreatePage-CuvoMrYH-DTTfHjz-.js.map +1 -0
  145. package/dist/TransfersPage-Cf701t8s-BBbN7cBf.js +476 -0
  146. package/dist/TransfersPage-Cf701t8s-BBbN7cBf.js.map +1 -0
  147. package/dist/{TypeConfiguration-37wp-gsl.js → TypeConfiguration-3O6ABrK-.js} +2 -2
  148. package/dist/{TypeConfiguration-37wp-gsl.js.map → TypeConfiguration-3O6ABrK-.js.map} +1 -1
  149. package/dist/{UserList-Bc8gYxRL.js → UserList-DgPxsnj2.js} +253 -236
  150. package/dist/{UserList-Bc8gYxRL.js.map → UserList-DgPxsnj2.js.map} +1 -1
  151. package/dist/Users-Bpc4Sazd.js +41 -0
  152. package/dist/Users-Bpc4Sazd.js.map +1 -0
  153. package/dist/VialsPage-8oAc1yFv-Cl3FUXBJ.js +321 -0
  154. package/dist/VialsPage-8oAc1yFv-Cl3FUXBJ.js.map +1 -0
  155. package/dist/{WidgetList-Dw_FmbbE.js → WidgetList-D7YuWfDD.js} +2 -2
  156. package/dist/{WidgetList-Dw_FmbbE.js.map → WidgetList-D7YuWfDD.js.map} +1 -1
  157. package/dist/constants-ClZJY2x1-MkSWn6TZ.js +434 -0
  158. package/dist/constants-ClZJY2x1-MkSWn6TZ.js.map +1 -0
  159. package/dist/dashboardLayoutUtils-D1xCAxp3.js +405 -0
  160. package/dist/dashboardLayoutUtils-D1xCAxp3.js.map +1 -0
  161. package/dist/format-UOyOu75i-D0GyylyQ.js +63 -0
  162. package/dist/format-UOyOu75i-D0GyylyQ.js.map +1 -0
  163. package/dist/index.css +1 -1
  164. package/dist/index.js +4 -752
  165. package/dist/index.js.map +1 -1
  166. package/dist/index.lib-Dn8PMkeD.js +862 -0
  167. package/dist/index.lib-Dn8PMkeD.js.map +1 -0
  168. package/dist/useFieldErrors-hDG8ox_x-DbSAzrGo.js +28 -0
  169. package/dist/useFieldErrors-hDG8ox_x-DbSAzrGo.js.map +1 -0
  170. package/dist/validation-BzlHnL-r-CCJm2utQ.js +125 -0
  171. package/dist/validation-BzlHnL-r-CCJm2utQ.js.map +1 -0
  172. package/package.json +5 -4
  173. package/dist/AccessRights-CHu27ZOw.js +0 -1262
  174. package/dist/AccessRights-CHu27ZOw.js.map +0 -1
  175. package/dist/AddEditQueryBuilder-Brdnm6rQ.js +0 -313
  176. package/dist/AddEditQueryBuilder-Brdnm6rQ.js.map +0 -1
  177. package/dist/AddLabelModal-DFllBVcd.js +0 -734
  178. package/dist/AddLabelModal-DFllBVcd.js.map +0 -1
  179. package/dist/AddMenuConfiguration-BSQLl88V.js +0 -6570
  180. package/dist/AddMenuConfiguration-BSQLl88V.js.map +0 -1
  181. package/dist/AddRoleDrawer-CQdzQZLb.js.map +0 -1
  182. package/dist/AppModal-CtG2GjD_.js +0 -428
  183. package/dist/AppModal-CtG2GjD_.js.map +0 -1
  184. package/dist/ChangePasswordModalCore-CDxkeIIM.js.map +0 -1
  185. package/dist/ConditionConfig-DSsgGEXS.js.map +0 -1
  186. package/dist/EventsSkeleton-8iiETGcf.js +0 -76
  187. package/dist/EventsSkeleton-8iiETGcf.js.map +0 -1
  188. package/dist/FeatureMenu-jl7-Tk6y.js +0 -265
  189. package/dist/FeatureMenu-jl7-Tk6y.js.map +0 -1
  190. package/dist/Features-CObdzJp_.js +0 -13
  191. package/dist/Features-CObdzJp_.js.map +0 -1
  192. package/dist/FlywayQuery-Cx2sly6g.js +0 -169
  193. package/dist/FlywayQuery-Cx2sly6g.js.map +0 -1
  194. package/dist/ImmunizationConfigurationBase-DZGqwda2.js +0 -5910
  195. package/dist/ImmunizationConfigurationBase-DZGqwda2.js.map +0 -1
  196. package/dist/ImmunizationConfigurationsList-DdSZicTP.js +0 -344
  197. package/dist/ImmunizationConfigurationsList-DdSZicTP.js.map +0 -1
  198. package/dist/LanguagesModal-D6VfaGrl.js +0 -394
  199. package/dist/LanguagesModal-D6VfaGrl.js.map +0 -1
  200. package/dist/ManageDynamicFeature-BhONvfC_.js +0 -4189
  201. package/dist/ManageDynamicFeature-BhONvfC_.js.map +0 -1
  202. package/dist/ManageEventConfiguration-DV3I5POA.js.map +0 -1
  203. package/dist/ManageRole-CGYfglpo.js.map +0 -1
  204. package/dist/ManageTranslation-B4C9-lWD.js +0 -625
  205. package/dist/ManageTranslation-B4C9-lWD.js.map +0 -1
  206. package/dist/ManageUser-AY1EUDLI.js.map +0 -1
  207. package/dist/MobileMenuManagement-CVAKyKDa.js +0 -112
  208. package/dist/MobileMenuManagement-CVAKyKDa.js.map +0 -1
  209. package/dist/MobileTypeEventConfigModal-BxLympIO.js.map +0 -1
  210. package/dist/NotificationFlywayQuery-BY8Zzml_.js +0 -244
  211. package/dist/NotificationFlywayQuery-BY8Zzml_.js.map +0 -1
  212. package/dist/NotificationList-C3Vb_jKU.js.map +0 -1
  213. package/dist/OtherTypeEventConfigModal-BeG1GrUi.js.map +0 -1
  214. package/dist/QueryBuilder-z7eqfd7D.js +0 -383
  215. package/dist/QueryBuilder-z7eqfd7D.js.map +0 -1
  216. package/dist/RoleManagement-BPl2cE27.js.map +0 -1
  217. package/dist/ServerSyncModal-D_oFpv3C.js.map +0 -1
  218. package/dist/ShowFlywayQuery-DVRCd384.js.map +0 -1
  219. package/dist/ShowFlywayQuery-tj42YQAS.js +0 -130
  220. package/dist/ShowFlywayQuery-tj42YQAS.js.map +0 -1
  221. package/dist/ShowQueryHistory-BDN0tzHg.js +0 -190
  222. package/dist/ShowQueryHistory-BDN0tzHg.js.map +0 -1
  223. package/dist/SubMenu-DYxAPH2Z.js +0 -191
  224. package/dist/SubMenu-DYxAPH2Z.js.map +0 -1
  225. package/dist/TableDetails-Cf_YfnY2.js.map +0 -1
  226. package/dist/Users-CsJ08Kjm.js +0 -40
  227. package/dist/Users-CsJ08Kjm.js.map +0 -1
  228. package/dist/dashboardLayoutUtils-Bt5HA96J.js +0 -265
  229. package/dist/dashboardLayoutUtils-Bt5HA96J.js.map +0 -1
@@ -0,0 +1,1023 @@
1
+ import { jsxs as R, jsx as o, Fragment as gs } from "react/jsx-runtime";
2
+ import { Box as A, Autocomplete as Is, TextField as Me, Button as xs, InputAdornment as Ue, IconButton as me, Typography as ne, Accordion as Ss, AccordionSummary as Ns, Chip as bs, Tooltip as pe, AccordionDetails as Cs, FormControlLabel as ks, Checkbox as vs, Menu as Os, MenuItem as Ds } from "@mui/material";
3
+ import x from "prop-types";
4
+ import Js from "@/views/custom-components/CustomConfirmationModal";
5
+ import As from "@/views/custom-components/DebouncedSearchInput";
6
+ import { useState as c, useMemo as re, useEffect as ae, createElement as $e, useRef as ie, useCallback as Be, Suspense as Ps, lazy as je } from "react";
7
+ import { a as V, d as _s, b as Ce, c as Ts, p as Rs, e as Es, f as Ls } from "./Features-Dne21RWu.js";
8
+ import { execute as oe, getRoleList as Fs } from "@/common/services/GlobalApis.js";
9
+ import "@/assets/scss/scrollBar.scss";
10
+ import { useForm as we, Controller as zs } from "react-hook-form";
11
+ import { showToast as v } from "@/common/toaster/toaster";
12
+ import Ms from "@/hooks/useTrackEvent";
13
+ import { useTranslateProvider as Us } from "@/common/languageTranslator/TranslationContext";
14
+ import j from "@/common/fontAwesomeIcons/FontAwesomeIcons";
15
+ import { execute as $s } from "@/common/services/GlobalApis";
16
+ import { alpha as Bs } from "@mui/material/styles";
17
+ import Ws, { VirtualListbox as js } from "@/views/custom-components/CustomAutoComplete";
18
+ import Ge from "@/hooks/useCaching";
19
+ import ke from "@/common/services/util/GeneralUtil";
20
+ import { A as ws } from "./FeatureMenu-DYJmDt7q.js";
21
+ const We = 200;
22
+ function He({
23
+ translate: a,
24
+ onSubmit: K,
25
+ roleList: w,
26
+ featureData: O
27
+ }) {
28
+ const [P, X] = c(""), [U, G] = c(""), [L, k] = c([]), { control: y, handleSubmit: $, reset: H } = we({}), { getCachedData: T } = Ge(), F = re(() => {
29
+ const d = /* @__PURE__ */ new Set(), _ = /* @__PURE__ */ new Set();
30
+ return (O || []).forEach((S) => {
31
+ S != null && S.designationId && d.add(S.designationId), S != null && S.userId && _.add(S.userId);
32
+ }), { roles: d, users: _ };
33
+ }, [O]), ee = re(
34
+ () => w.filter((d) => !F.roles.has(d == null ? void 0 : d.id)),
35
+ [w, F]
36
+ );
37
+ ae(() => {
38
+ const d = setTimeout(() => {
39
+ G(P);
40
+ }, 300);
41
+ return () => clearTimeout(d);
42
+ }, [P]), ae(() => {
43
+ U !== "" && B(U);
44
+ }, [U]), ae(() => {
45
+ B("");
46
+ }, []);
47
+ const B = async (d, _ = O) => {
48
+ try {
49
+ const S = async (m) => {
50
+ const { data: z } = await $s({
51
+ code: "user_search_for_selectize",
52
+ parameters: { searchString: m }
53
+ });
54
+ return z;
55
+ }, g = d ? await S(d) : await T({
56
+ cacheKey: ["user_search_for_selectize", ""],
57
+ fetchFn: () => S(""),
58
+ staleTime: 3e5,
59
+ cacheTime: 18e5
60
+ }), b = _ === O ? F.users : new Set(
61
+ (_ || []).map((m) => m == null ? void 0 : m.userId).filter(Boolean)
62
+ ), I = ((g == null ? void 0 : g.result) || []).filter((m) => (m == null ? void 0 : m.id) && !b.has(m.id)).map((m) => ({
63
+ ...m,
64
+ displayName: `${m.firstName || ""} ${m.lastName || ""} (${m.userName || ""})`.trim()
65
+ }));
66
+ k(I);
67
+ } catch (S) {
68
+ console.error(S);
69
+ }
70
+ };
71
+ return /* @__PURE__ */ R(
72
+ A,
73
+ {
74
+ sx: {
75
+ display: "flex",
76
+ flexDirection: { xs: "column", md: "row" },
77
+ alignItems: { xs: "stretch", md: "flex-start" },
78
+ gap: 1.5,
79
+ flex: 1,
80
+ minWidth: 0
81
+ },
82
+ children: [
83
+ /* @__PURE__ */ o(A, { sx: { flex: 1, minWidth: 0 }, children: /* @__PURE__ */ o(
84
+ zs,
85
+ {
86
+ name: "roles",
87
+ id: "roles",
88
+ control: y,
89
+ defaultValue: null,
90
+ render: ({ field: { onChange: d, value: _, ref: S } }) => /* @__PURE__ */ o(
91
+ Is,
92
+ {
93
+ options: L,
94
+ size: "small",
95
+ slots: {
96
+ listbox: L.length > We ? js : void 0
97
+ },
98
+ getOptionLabel: (g) => g.displayName || "",
99
+ isOptionEqualToValue: (g, b) => g.id === (b == null ? void 0 : b.id),
100
+ value: _ || null,
101
+ onChange: (g, b, I) => {
102
+ I === "clear" && B(""), d(b);
103
+ },
104
+ onInputChange: (g, b, I) => {
105
+ I === "input" && X(b);
106
+ },
107
+ renderOption: (g, b) => {
108
+ const I = b.displayName || "", m = P.trim(), z = I.toLowerCase().indexOf(m.toLowerCase());
109
+ if (z === -1)
110
+ return /* @__PURE__ */ $e(
111
+ "li",
112
+ {
113
+ ...g,
114
+ key: b.id,
115
+ style: { lineHeight: 1.5, fontSize: "14px" }
116
+ },
117
+ I
118
+ );
119
+ const Z = I.substring(0, z), he = I.substring(z, z + m.length), se = I.substring(z + m.length);
120
+ return /* @__PURE__ */ $e(
121
+ "li",
122
+ {
123
+ ...g,
124
+ key: b.id,
125
+ style: { lineHeight: 1.5, fontSize: "14px" }
126
+ },
127
+ /* @__PURE__ */ R("span", { children: [
128
+ Z,
129
+ /* @__PURE__ */ o(
130
+ A,
131
+ {
132
+ component: "span",
133
+ sx: {
134
+ fontWeight: 700,
135
+ borderRadius: "2px",
136
+ backgroundColor: (le) => Bs(le.palette.primary.main, 0.18)
137
+ },
138
+ children: he
139
+ }
140
+ ),
141
+ se
142
+ ] })
143
+ );
144
+ },
145
+ renderInput: (g) => /* @__PURE__ */ o(
146
+ Me,
147
+ {
148
+ ...g,
149
+ label: a("User"),
150
+ variant: "outlined",
151
+ size: "small",
152
+ inputRef: S
153
+ }
154
+ )
155
+ }
156
+ )
157
+ }
158
+ ) }),
159
+ /* @__PURE__ */ o(A, { sx: { flex: 1, minWidth: 0 }, children: /* @__PURE__ */ o(
160
+ Ws,
161
+ {
162
+ id: "selectedRoles",
163
+ name: "selectedRoles",
164
+ options: ee,
165
+ control: y,
166
+ isVirtualized: ee.length > We,
167
+ getOptionLabel: (d) => d == null ? void 0 : d.name,
168
+ dataTestId: "accessrights-select-role",
169
+ renderInput: (d) => /* @__PURE__ */ o(
170
+ Me,
171
+ {
172
+ ...d,
173
+ label: a("Role"),
174
+ variant: "outlined",
175
+ size: "small"
176
+ }
177
+ )
178
+ }
179
+ ) }),
180
+ /* @__PURE__ */ o(
181
+ xs,
182
+ {
183
+ variant: "contained",
184
+ size: "small",
185
+ "data-testid": "accessrights-add-button",
186
+ startIcon: /* @__PURE__ */ o(j, { iconName: "faPlus" }),
187
+ sx: { flexShrink: 0, alignSelf: { xs: "flex-end", md: "center" } },
188
+ onClick: $((d) => {
189
+ var _;
190
+ K(d), B("", [...O, { userId: (_ = d.roles) == null ? void 0 : _.id }]), H();
191
+ }),
192
+ children: a("add")
193
+ }
194
+ )
195
+ ]
196
+ }
197
+ );
198
+ }
199
+ He.propTypes = {
200
+ translate: x.any,
201
+ permissionDetailsList: x.any,
202
+ getPermissionDetails: x.any,
203
+ onSubmit: x.any,
204
+ permissionTypes: x.any,
205
+ roleList: x.any,
206
+ featureData: x.any
207
+ };
208
+ const Gs = je(() => import("./GrantPermissionModal-BDN66Atn.js")), Hs = je(() => import("./PermissionsModal-CCYkcKlC.js"));
209
+ function Ke({ config: a, row: K }) {
210
+ var L;
211
+ const [w, O] = c(null), P = !!w, X = (k) => {
212
+ k.stopPropagation(), O(k.currentTarget), typeof a.menuClick == "function" && a.menuClick(K);
213
+ }, U = (k) => {
214
+ k && k.stopPropagation(), O(null);
215
+ }, G = (k) => (y) => {
216
+ y.stopPropagation(), typeof k.onClick == "function" && k.onClick(K), O(null);
217
+ };
218
+ return /* @__PURE__ */ R(gs, { children: [
219
+ /* @__PURE__ */ o(pe, { title: a.tooltip, children: /* @__PURE__ */ o(
220
+ me,
221
+ {
222
+ size: "small",
223
+ "aria-label": a.tooltip,
224
+ onClick: X,
225
+ "data-testid": a.dataTestId,
226
+ children: a.icon
227
+ }
228
+ ) }),
229
+ /* @__PURE__ */ o(
230
+ Os,
231
+ {
232
+ anchorEl: w,
233
+ open: P,
234
+ onClose: U,
235
+ anchorOrigin: { vertical: "bottom", horizontal: "right" },
236
+ transformOrigin: { vertical: "top", horizontal: "right" },
237
+ children: (L = a.menuItems) == null ? void 0 : L.map((k, y) => /* @__PURE__ */ o(Ds, { onClick: G(k), children: k.label }, y))
238
+ }
239
+ )
240
+ ] });
241
+ }
242
+ Ke.propTypes = {
243
+ config: x.any,
244
+ row: x.any
245
+ };
246
+ function Ks({
247
+ subMenuId: a,
248
+ // subMenuGroupName,
249
+ subMenuFeatureVal: K,
250
+ // selectedTab,
251
+ parentLoading: w,
252
+ onNewAPIChange: O,
253
+ rights: P
254
+ }) {
255
+ const X = ie(null), U = ie(!1), G = Ms(), L = ie(!ke.isTecho), { getCachedData: k } = Ge(), [y, $] = c([]), [H, T] = c([]), [F, ee] = c([]), [B, d] = c([]), [_, S] = c([]), [g, b] = c(""), [I, m] = c({}), [z, Z] = c(!1), [he, se] = c(!1), [le, Xe] = c(""), [N, Ze] = c(null), [qe, Qe] = c({}), [Ye, q] = c(!1), [Q, ve] = c(!1), [Ve, ce] = c(null), [E, es] = c([]), [ss, ye] = c(0), [de, Oe] = c(""), { translate: p } = Us(), [ts, ge] = c(""), [ns, Ie] = c([]), [te, ue] = c(null), fe = ke.hasCheckRights(
256
+ P == null ? void 0 : P["update.manage.featurelist"]
257
+ ), is = ke.hasCheckRights(
258
+ P == null ? void 0 : P["delete.manage.featurelist"]
259
+ ), De = re(() => {
260
+ const e = /* @__PURE__ */ new Map();
261
+ return (E || []).forEach((n) => e.set(String(n.id), n)), e;
262
+ }, [E]), os = re(() => {
263
+ const e = /* @__PURE__ */ new Map();
264
+ return (y || []).forEach((n) => {
265
+ n != null && n.feature_name && e.set(n.feature_name, n.display_name);
266
+ }), e;
267
+ }, [y]), rs = () => {
268
+ var n;
269
+ if (!E || E.length === 0) return null;
270
+ const e = E.filter(
271
+ (i) => {
272
+ var t;
273
+ return (t = i == null ? void 0 : i.id) == null ? void 0 : t.startsWith("view");
274
+ }
275
+ );
276
+ if (e && e.length > 0) {
277
+ const i = e.find(
278
+ (s) => /^view\.report\.[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(s.id)
279
+ );
280
+ if (i) return i.id;
281
+ if (e.some((s) => s.id === "view.report")) return "view.report";
282
+ const t = e.filter((s) => s.id.split(".").length === 3);
283
+ if (t.length > 0)
284
+ return t[0].id;
285
+ }
286
+ return (n = E[0]) == null ? void 0 : n.id;
287
+ };
288
+ ae(() => {
289
+ let e = X.current;
290
+ return () => {
291
+ G("conversion_event", {
292
+ form: e,
293
+ form_name: "Access Rights",
294
+ submit: U.current
295
+ });
296
+ };
297
+ }, []);
298
+ const xe = (e) => {
299
+ var i;
300
+ let n;
301
+ return n = (i = e.userMenuItemDtos) == null ? void 0 : i.toSorted((t, s) => t.designationId !== void 0 && s.designationId !== void 0 ? t.designationId - s.designationId : t.designationId !== void 0 && s.designationId === void 0 ? -1 : t.designationId === void 0 && s.designationId !== void 0 ? 1 : t.userId !== void 0 && s.userId !== void 0 ? t.userId - s.userId : t.userId !== void 0 && s.userId === void 0 ? -1 : t.userId === void 0 && s.userId !== void 0 ? 1 : 0), n;
302
+ }, Se = (e) => (e == null || e.userMenuItemDtos.forEach((n) => {
303
+ n.featureJson = us(
304
+ JSON.parse(e.featureJson || "{}"),
305
+ JSON.parse(n.featureJson || "{}")
306
+ ), n.designationId ? (n.code = "Role", n.displayName = n.roleName) : (n.code = "User", n.displayName = n.fullName);
307
+ }), e), as = async () => {
308
+ var e, n;
309
+ try {
310
+ if (q((i) => !i), Q) {
311
+ const i = [];
312
+ Object.entries(JSON.parse(N == null ? void 0 : N.featureJson)).forEach(
313
+ ([t, s]) => {
314
+ s === !0 && i.push(t);
315
+ }
316
+ );
317
+ try {
318
+ await oe({
319
+ code: "delete_permissions",
320
+ parameters: {
321
+ permissionList: i,
322
+ roleId: parseInt(N == null ? void 0 : N.designationId),
323
+ userId: parseInt(N == null ? void 0 : N.userId)
324
+ }
325
+ }), v({
326
+ type: "success",
327
+ message: "Permission Deleted Successfully"
328
+ });
329
+ const { data: t } = await V(a);
330
+ Y(t);
331
+ } catch {
332
+ v({
333
+ type: "error",
334
+ message: "error occurred"
335
+ });
336
+ }
337
+ } else {
338
+ await _s(le);
339
+ let { data: i } = await Ce(a);
340
+ (i == null ? void 0 : i.userMenuItemDtos.length) > 0 && (i = Se(i)), T(i.userMenuItemDtos);
341
+ }
342
+ Z(!1), q((i) => !i);
343
+ } catch (i) {
344
+ v({
345
+ type: "error",
346
+ message: `Error Deleting data: ${(n = (e = i == null ? void 0 : i.response) == null ? void 0 : e.data) == null ? void 0 : n.message}`
347
+ }), q((t) => !t), Z(!1);
348
+ }
349
+ }, ls = (e, n) => {
350
+ const i = new Set(e.map((s) => s.id)), t = [];
351
+ return Object.entries(n).forEach(([s, r]) => {
352
+ r === !0 && !i.has(s) && t.push({ id: s, action: "grant" });
353
+ }), e.forEach((s) => {
354
+ n[s.id] || t.push({ id: s.id, action: "revoke" });
355
+ }), t;
356
+ }, { handleSubmit: cs } = we({}), Je = async (e) => {
357
+ var n, i, t, s, r, D;
358
+ try {
359
+ if (Q) {
360
+ e = { ...e, featureJson: JSON.parse(e == null ? void 0 : e.featureJson) };
361
+ const l = ls(
362
+ e.permissions,
363
+ e == null ? void 0 : e.featureJson
364
+ );
365
+ if (((n = l[0]) == null ? void 0 : n.action) === "grant")
366
+ ce({
367
+ ...e,
368
+ id: (i = l[0]) == null ? void 0 : i.id
369
+ }), ye(1);
370
+ else if (((t = l[0]) == null ? void 0 : t.action) === "revoke")
371
+ try {
372
+ await oe({
373
+ code: "revoke_permission",
374
+ parameters: {
375
+ featureName: (s = l[0]) == null ? void 0 : s.id,
376
+ roleId: parseInt(e == null ? void 0 : e.designationId),
377
+ userId: parseInt(e == null ? void 0 : e.userId)
378
+ }
379
+ }), v({
380
+ type: "success",
381
+ message: "Permission Revoked Successfully"
382
+ });
383
+ } catch {
384
+ v({
385
+ type: "error",
386
+ message: "Error in revoking permission"
387
+ });
388
+ }
389
+ const { data: u } = await V(a);
390
+ Y(u);
391
+ } else
392
+ await Ts(e);
393
+ } catch (l) {
394
+ v({
395
+ type: "error",
396
+ message: `Error Updating data: ${(D = (r = l == null ? void 0 : l.response) == null ? void 0 : r.data) == null ? void 0 : D.message}`
397
+ });
398
+ }
399
+ }, ds = async (e) => {
400
+ try {
401
+ if (e = {
402
+ ...e,
403
+ featureJson: JSON.parse(e == null ? void 0 : e.featureJson)
404
+ }, e != null && e.checkAll) {
405
+ const i = Object.keys(e == null ? void 0 : e.featureJson).filter((t) => (e == null ? void 0 : e.featureJson[t]) === !1).join(",");
406
+ await oe({
407
+ code: "grant_permission_bulk",
408
+ parameters: {
409
+ permission_id_list: i,
410
+ role_id: parseInt(e == null ? void 0 : e.designationId),
411
+ user_id: parseInt(e == null ? void 0 : e.userId)
412
+ }
413
+ }), v({
414
+ type: "success",
415
+ message: "Permission granted Successfully"
416
+ });
417
+ }
418
+ const { data: n } = await V(a);
419
+ Y(n);
420
+ } catch (n) {
421
+ console.error(n);
422
+ }
423
+ }, Ae = async (e) => {
424
+ var n, i, t, s;
425
+ if (!(e != null && e.roles || e != null && e.selectedRoles)) {
426
+ v({
427
+ message: "Please select either user or role !!",
428
+ type: "info"
429
+ });
430
+ return;
431
+ }
432
+ if (Q && y.length < 1) {
433
+ v({
434
+ message: "Please add permissions first for this feature !!",
435
+ type: "info"
436
+ });
437
+ return;
438
+ }
439
+ try {
440
+ const r = ((n = e == null ? void 0 : e.selectedRoles) == null ? void 0 : n.map((h) => h == null ? void 0 : h.id)) || [], D = I != null && I.id ? H.some((h) => (h == null ? void 0 : h.userId) === (I == null ? void 0 : I.id)) : !1, l = (r == null ? void 0 : r.length) > 0 ? H.some(
441
+ (h) => r.includes(h == null ? void 0 : h.designationId)
442
+ ) : !1;
443
+ if (D || l)
444
+ v({
445
+ message: "Selected User Already found please select another id",
446
+ type: "warning"
447
+ });
448
+ else {
449
+ const h = r == null ? void 0 : r.join(","), W = {
450
+ userId: (i = e == null ? void 0 : e.roles) == null ? void 0 : i.id,
451
+ designationId: h || null
452
+ }, C = E.filter(
453
+ (f) => {
454
+ var M;
455
+ return (M = f == null ? void 0 : f.id) == null ? void 0 : M.startsWith("view");
456
+ }
457
+ );
458
+ if (Q) {
459
+ const f = (t = C.find(
460
+ (J) => /^view\.report\.[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(J.id)
461
+ )) == null ? void 0 : t.id;
462
+ f ? ce({
463
+ ...W,
464
+ id: f
465
+ }) : C.some((J) => J.id === "view.report") ? ce({
466
+ ...W,
467
+ id: "view.report"
468
+ }) : ce({
469
+ ...W,
470
+ id: (C == null ? void 0 : C.filter((J) => J.id.split(".").length === 3).map((J) => J.id)[0]) || ((s = E[0]) == null ? void 0 : s.id)
471
+ }), ye(1);
472
+ const { data: M } = await V(a);
473
+ Y(M);
474
+ } else {
475
+ await Rs(a, W);
476
+ let { data: f } = await Ce(a);
477
+ (f == null ? void 0 : f.userMenuItemDtos.length) > 0 && (f == null ? void 0 : f.userMenuItemDtos.length) > 0 && (f = Se(f)), b(f == null ? void 0 : f.featureJson);
478
+ const M = xe(f);
479
+ T(M);
480
+ const J = f.featureJson ? Object.keys(JSON.parse(f.featureJson)) : [];
481
+ if (J.length > 0) {
482
+ const { data: Ne } = await oe({
483
+ code: "retrieve_display_name_for_feature",
484
+ parameters: {
485
+ menu_id: a,
486
+ feature_name_list: J
487
+ }
488
+ });
489
+ $(Ne.result);
490
+ } else
491
+ $([]);
492
+ v({
493
+ message: "menu item added successfully",
494
+ type: "success"
495
+ });
496
+ }
497
+ U.current = !0, m({});
498
+ }
499
+ } catch (r) {
500
+ console.error(r), v({
501
+ message: "cannot add menu item",
502
+ type: "error"
503
+ });
504
+ }
505
+ }, Pe = Be(
506
+ (e) => {
507
+ const n = (e || "").toLowerCase();
508
+ if (Oe(n), !n) {
509
+ T(F);
510
+ return;
511
+ }
512
+ const i = F == null ? void 0 : F.filter(
513
+ (t) => {
514
+ var s, r;
515
+ return t != null && t.designationId ? (s = t.roleName) == null ? void 0 : s.toLowerCase().includes(n) : (r = t.fullName) == null ? void 0 : r.toLowerCase().includes(n);
516
+ }
517
+ );
518
+ G("search_tracking", {
519
+ searchTerm: n,
520
+ results_count: i.length,
521
+ search_type: "Page Search"
522
+ }), T(i);
523
+ },
524
+ [F, G]
525
+ ), us = (e, n = {}) => {
526
+ const i = {};
527
+ return Object.keys(e).forEach((t) => {
528
+ Object.prototype.hasOwnProperty.call(n, t) ? i[t] = n[t] : i[t] = e[t];
529
+ }), JSON.stringify(i);
530
+ }, _e = (e, n) => {
531
+ const i = new Set(n.map((s) => s.id)), t = {};
532
+ return e.forEach((s) => {
533
+ t[s.id] = i.has(s.id);
534
+ }), JSON.stringify(t);
535
+ }, Y = (e) => {
536
+ e == null || e.userMenuItemDtos.forEach((t) => {
537
+ t.id = (t == null ? void 0 : t.designationId) || (t == null ? void 0 : t.userId), t.featureJson = _e(
538
+ e == null ? void 0 : e.permissions,
539
+ t == null ? void 0 : t.permissions
540
+ ), t.designationId ? (t.code = "Role", t.displayName = t.roleName) : (t.code = "User", t.displayName = t.fullName);
541
+ });
542
+ const n = [
543
+ ...new Set(e.permissions.map((t) => t.id))
544
+ ];
545
+ $(n), es(e == null ? void 0 : e.permissions);
546
+ const i = xe(e);
547
+ T(i), ee(i);
548
+ };
549
+ ae(() => {
550
+ (async () => {
551
+ var n, i, t;
552
+ try {
553
+ if (a) {
554
+ ue(null), Te(!1), q((u) => !u), Oe("");
555
+ let s, r;
556
+ if (K) {
557
+ if (L.current)
558
+ s = (await V(a)).data;
559
+ else
560
+ try {
561
+ s = (await Es(a)).data;
562
+ } catch (u) {
563
+ console.error("configtypesV2/summary unavailable, falling back to full bundle", u), L.current = !0, s = (await V(a)).data;
564
+ }
565
+ r = !0, ve(!0), O({ id: a, val: !0 });
566
+ } else
567
+ s = (await Ce(a)).data, r = !1, ve(!1), O({ id: a, val: !1 });
568
+ if (r)
569
+ Y(s);
570
+ else {
571
+ (s == null ? void 0 : s.userMenuItemDtos.length) > 0 && (s = Se(s)), b(s == null ? void 0 : s.featureJson);
572
+ const u = xe(s);
573
+ T(u), ee(u);
574
+ }
575
+ let D = _;
576
+ if (!B || B.length === 0) {
577
+ const u = await k({
578
+ cacheKey: ["roleList"],
579
+ fetchFn: async () => (await Fs()).data,
580
+ staleTime: 3e5,
581
+ cacheTime: 18e5
582
+ });
583
+ S(u), D = u;
584
+ }
585
+ let l;
586
+ if (r)
587
+ l = s.permissions.map((u) => u.id), $(l);
588
+ else if (l = s.featureJson ? Object.keys(JSON.parse(s.featureJson)) : [], l.length > 0) {
589
+ const [u] = await Promise.all([
590
+ await oe({
591
+ code: "retrieve_display_name_for_feature",
592
+ parameters: {
593
+ menu_id: a,
594
+ feature_name_list: l
595
+ }
596
+ })
597
+ ]);
598
+ $((n = u.data) == null ? void 0 : n.result);
599
+ } else
600
+ $([]);
601
+ if (D && D.length > 0)
602
+ if (s.isDynamicFeature) {
603
+ const h = JSON.parse(JSON.stringify(D)).filter((W) => {
604
+ const C = W.roleType;
605
+ return C === null || s != null && s.isMobileFeature && (s != null && s.isWebFeature) ? !0 : s.isMobileFeature ? C === "MOBILE" || C === "BOTH" : s.isWebFeature ? C === "WEB" || C === "BOTH" : !1;
606
+ });
607
+ d(h);
608
+ } else
609
+ d(D);
610
+ q((u) => !u);
611
+ }
612
+ } catch (s) {
613
+ v({
614
+ type: "error",
615
+ message: `Error loading initial data: ${(t = (i = s == null ? void 0 : s.response) == null ? void 0 : i.data) == null ? void 0 : t.message}`
616
+ }), q((r) => !r);
617
+ }
618
+ })();
619
+ }, [a, O]);
620
+ const fs = Be(
621
+ (e) => De.get(String(e)) || null,
622
+ [De]
623
+ ), ms = re(
624
+ () => rs(),
625
+ [E]
626
+ ), [ps, Te] = c(!1), hs = (e) => async (n, i) => {
627
+ const t = `panel${e == null ? void 0 : e.id}`;
628
+ if (Te(i ? t : !1), i && Q && e && !e._permissionsLoaded && !L.current)
629
+ try {
630
+ const { data: s } = await Ls(a, {
631
+ userId: e.userId,
632
+ roleId: e.designationId
633
+ });
634
+ e.permissions = s, e.featureJson = _e(E, s), e._permissionsLoaded = !0, T((r) => [...r]);
635
+ } catch (s) {
636
+ console.error(s), v({ type: "error", message: "Error loading permissions for row" });
637
+ }
638
+ }, Re = ({
639
+ row: e,
640
+ featureState: n,
641
+ featureKey: i,
642
+ lookupKey: t,
643
+ index: s,
644
+ withModal: r
645
+ }) => {
646
+ var M;
647
+ const D = n[i] || !1, l = fs(t), u = (((M = l == null ? void 0 : l.child) == null ? void 0 : M.length) || 0) > 0, h = i === ms, W = !fe || h, C = (te == null ? void 0 : te.id) === (l == null ? void 0 : l.id), f = /* @__PURE__ */ o(
648
+ ks,
649
+ {
650
+ sx: { mr: 0, minWidth: 0, flex: 1 },
651
+ control: /* @__PURE__ */ o(
652
+ vs,
653
+ {
654
+ size: "small",
655
+ disabled: W,
656
+ checked: D,
657
+ name: i,
658
+ onClick: () => {
659
+ const J = {
660
+ ...n,
661
+ [i]: !D
662
+ };
663
+ T(
664
+ (Ne) => Ne.map(
665
+ (be) => be.id === e.id ? {
666
+ ...be,
667
+ featureJson: JSON.stringify(J)
668
+ } : be
669
+ )
670
+ ), Je({
671
+ ...e,
672
+ featureJson: JSON.stringify(J),
673
+ code: e.designationId ? "Role" : "User",
674
+ menuConfigId: a,
675
+ displayName: e.designationId ? e.roleName : e.fullName
676
+ });
677
+ }
678
+ }
679
+ ),
680
+ label: /* @__PURE__ */ o(ne, { variant: "body2", children: l ? l.name : t })
681
+ }
682
+ );
683
+ return /* @__PURE__ */ R(
684
+ A,
685
+ {
686
+ sx: { display: "flex", alignItems: "center", gap: 0.5, minWidth: 0 },
687
+ children: [
688
+ h && fe ? /* @__PURE__ */ o(
689
+ pe,
690
+ {
691
+ title: p(
692
+ "This is the base right for the sub menu and cannot be changed here."
693
+ ),
694
+ children: /* @__PURE__ */ o("span", { style: { display: "flex", flex: 1, minWidth: 0 }, children: f })
695
+ }
696
+ ) : f,
697
+ u && /* @__PURE__ */ o(
698
+ pe,
699
+ {
700
+ title: p(C ? "Close Permissions" : "View Permissions"),
701
+ children: /* @__PURE__ */ o(
702
+ me,
703
+ {
704
+ size: "small",
705
+ color: "primary",
706
+ "aria-label": p(C ? "Close Permissions" : "View Permissions"),
707
+ onClick: () => {
708
+ if (C) {
709
+ ue(null), r && (se(!1), ge(""), Ie([]));
710
+ return;
711
+ }
712
+ r && (ge(i), Ie(n), se(!0)), ue(l);
713
+ },
714
+ children: /* @__PURE__ */ o(
715
+ j,
716
+ {
717
+ iconName: C ? "faEyeSlash" : "faEye",
718
+ size: "sm"
719
+ }
720
+ )
721
+ }
722
+ )
723
+ }
724
+ )
725
+ ]
726
+ },
727
+ `featureName-${s}`
728
+ );
729
+ }, ys = y.length > 0 || Object.keys(JSON.parse(g || "{}")).length > 0, Ee = !!(he && te), Le = ss === 1, Fe = ie(!1), ze = ie(!1);
730
+ return Ee && (Fe.current = !0), Le && (ze.current = !0), /* @__PURE__ */ o(ws, { isLoading: Ye || w, children: /* @__PURE__ */ R(A, { sx: { width: "100%" }, children: [
731
+ /* @__PURE__ */ o(
732
+ Js,
733
+ {
734
+ description: N != null && N.displayName ? `Remove all access to this sub menu for ${N.code === "Role" ? "the role" : ""} ${N.displayName}? Every right listed below will be revoked.` : "Remove all access to this sub menu? Every right listed below will be revoked.",
735
+ title: p("Remove access"),
736
+ open: z && le === (N == null ? void 0 : N.id),
737
+ handleClick: as,
738
+ handleClose: () => Z((e) => !e),
739
+ dataTestId: "accessrights-delete-modal"
740
+ }
741
+ ),
742
+ /* @__PURE__ */ R(Ps, { fallback: null, children: [
743
+ Fe.current && /* @__PURE__ */ o(
744
+ Hs,
745
+ {
746
+ isOpen: Ee,
747
+ onClose: () => {
748
+ se((e) => !e), ue(null), ge(""), Ie([]);
749
+ },
750
+ featureState: ns,
751
+ featureName: ts,
752
+ permissions: te
753
+ }
754
+ ),
755
+ ze.current && /* @__PURE__ */ o(
756
+ Gs,
757
+ {
758
+ isOpen: Le,
759
+ onClose: () => ye(0),
760
+ pendingGrant: Ve,
761
+ subMenuId: a,
762
+ newApiData: Y
763
+ }
764
+ )
765
+ ] }),
766
+ /* @__PURE__ */ o("form", { ref: X, onSubmit: cs(Ae), children: /* @__PURE__ */ R(
767
+ A,
768
+ {
769
+ sx: {
770
+ display: "flex",
771
+ flexDirection: { xs: "column", lg: "row" },
772
+ alignItems: { xs: "stretch", lg: "center" },
773
+ gap: 2,
774
+ px: 2,
775
+ py: 1.5,
776
+ borderBottom: "1px solid",
777
+ borderColor: "divider"
778
+ },
779
+ children: [
780
+ /* @__PURE__ */ o(
781
+ As,
782
+ {
783
+ value: de,
784
+ onChange: Pe,
785
+ placeholder: p("Search roles and users"),
786
+ autoFocus: !1,
787
+ "data-testid": "access-rights-textfield-search",
788
+ sx: { width: { xs: "100%", lg: 240 }, flexShrink: 0 },
789
+ slotProps: {
790
+ htmlInput: {
791
+ "aria-label": p("Search roles and users")
792
+ }
793
+ },
794
+ inputProps: {
795
+ startAdornment: /* @__PURE__ */ o(Ue, { position: "start", children: /* @__PURE__ */ o(A, { sx: { color: "text.disabled", display: "flex" }, children: /* @__PURE__ */ o(j, { iconName: "faMagnifyingGlass", size: "sm" }) }) }),
796
+ endAdornment: de ? /* @__PURE__ */ o(Ue, { position: "end", children: /* @__PURE__ */ o(
797
+ me,
798
+ {
799
+ size: "small",
800
+ "aria-label": p("Clear search"),
801
+ onClick: () => Pe(""),
802
+ children: /* @__PURE__ */ o(j, { iconName: "faXmark", size: "sm" })
803
+ }
804
+ ) }) : null
805
+ }
806
+ }
807
+ ),
808
+ fe && /* @__PURE__ */ o(
809
+ He,
810
+ {
811
+ translate: p,
812
+ onSubmit: Ae,
813
+ roleList: B,
814
+ featureData: H
815
+ }
816
+ )
817
+ ]
818
+ }
819
+ ) }),
820
+ H.length === 0 ? /* @__PURE__ */ R(
821
+ A,
822
+ {
823
+ "data-testid": "accessrights-empty-state",
824
+ sx: {
825
+ display: "flex",
826
+ flexDirection: "column",
827
+ alignItems: "center",
828
+ justifyContent: "center",
829
+ textAlign: "center",
830
+ gap: 1,
831
+ px: 3,
832
+ py: 6
833
+ },
834
+ children: [
835
+ /* @__PURE__ */ o(A, { sx: { color: "text.disabled" }, children: /* @__PURE__ */ o(j, { iconName: "faUserShield", size: "2x" }) }),
836
+ /* @__PURE__ */ o(ne, { variant: "subtitle1", sx: { fontWeight: 700 }, children: p(de ? "No roles or users match your search" : "No access granted yet") }),
837
+ /* @__PURE__ */ o(ne, { variant: "body2", color: "text.secondary", children: p(de ? "Clear the search to see everyone with access." : "Pick a user or a role above and select Add to grant access to this sub menu.") })
838
+ ]
839
+ }
840
+ ) : /* @__PURE__ */ o(A, { children: H.map((e) => /* @__PURE__ */ R(
841
+ Ss,
842
+ {
843
+ expanded: ps === `panel${e == null ? void 0 : e.id}`,
844
+ onChange: hs(e),
845
+ slotProps: { transition: { unmountOnExit: !0 } },
846
+ children: [
847
+ /* @__PURE__ */ R(
848
+ Ns,
849
+ {
850
+ expandIcon: /* @__PURE__ */ o(j, { iconName: "faAngleDown" }),
851
+ "aria-controls": `accessrights-panel-${e == null ? void 0 : e.id}-content`,
852
+ id: `accessrights-panel-${e == null ? void 0 : e.id}-header`,
853
+ sx: {
854
+ "& .MuiAccordionSummary-content": {
855
+ alignItems: "center",
856
+ gap: 1.5,
857
+ minWidth: 0
858
+ }
859
+ },
860
+ children: [
861
+ /* @__PURE__ */ o(
862
+ bs,
863
+ {
864
+ size: "small",
865
+ label: p(e.code),
866
+ color: e.code === "Role" ? "primary" : "default",
867
+ variant: "outlined"
868
+ }
869
+ ),
870
+ /* @__PURE__ */ o(
871
+ ne,
872
+ {
873
+ variant: "body2",
874
+ noWrap: !0,
875
+ sx: { fontWeight: 600, minWidth: 0 },
876
+ children: e.displayName
877
+ }
878
+ ),
879
+ /* @__PURE__ */ R(
880
+ A,
881
+ {
882
+ sx: {
883
+ ml: "auto",
884
+ mr: 1,
885
+ display: "flex",
886
+ alignItems: "center",
887
+ gap: 0.5
888
+ },
889
+ children: [
890
+ is && /* @__PURE__ */ o(pe, { title: p("Remove access"), children: /* @__PURE__ */ o(
891
+ me,
892
+ {
893
+ size: "small",
894
+ color: "error",
895
+ "aria-label": `${p("Remove access")}: ${e.displayName}`,
896
+ "data-testid": "accessrights-delete-icon",
897
+ onClick: (n) => {
898
+ n.stopPropagation(), n.preventDefault(), Z(!0), Xe(e.id), Ze(e);
899
+ },
900
+ children: /* @__PURE__ */ o(j, { iconName: "faTrash", size: "sm" })
901
+ }
902
+ ) }),
903
+ fe && /* @__PURE__ */ o(
904
+ Ke,
905
+ {
906
+ config: {
907
+ tooltip: p("Bulk actions"),
908
+ icon: /* @__PURE__ */ o(j, { iconName: "faPen", size: "sm" }),
909
+ dataTestId: "accessrights-edit-icon",
910
+ menuClick: (n) => {
911
+ Qe(() => ({
912
+ ...n,
913
+ code: n.designationId ? "Role" : "User",
914
+ menuConfigId: a,
915
+ displayName: n.designationId ? n.roleName : n.fullName
916
+ }));
917
+ },
918
+ menuItems: [
919
+ {
920
+ label: "Check All",
921
+ onClick: (n) => {
922
+ if (Q)
923
+ ds({
924
+ ...n,
925
+ checkAll: !0
926
+ });
927
+ else {
928
+ let i = JSON.parse(g);
929
+ const t = (y == null ? void 0 : y.length) > 0 ? y.reduce(
930
+ (s, { feature_name: r }) => (s[r] = !0, s),
931
+ {}
932
+ ) : Object.keys(i).reduce((s, r) => (s[r] = !0, s), {});
933
+ T(
934
+ (s) => s.map(
935
+ (r) => r.id === n.id ? {
936
+ ...r,
937
+ featureJson: JSON.stringify(t)
938
+ } : r
939
+ )
940
+ ), Je({
941
+ ...qe,
942
+ featureJson: JSON.stringify(t)
943
+ });
944
+ }
945
+ }
946
+ }
947
+ ]
948
+ },
949
+ row: e
950
+ }
951
+ )
952
+ ]
953
+ }
954
+ )
955
+ ]
956
+ }
957
+ ),
958
+ /* @__PURE__ */ o(Cs, { id: `accessrights-panel-${e == null ? void 0 : e.id}-content`, children: ys ? /* @__PURE__ */ o(
959
+ A,
960
+ {
961
+ sx: {
962
+ display: "grid",
963
+ gridTemplateColumns: {
964
+ xs: "1fr",
965
+ sm: "repeat(2, minmax(0, 1fr))",
966
+ lg: "repeat(3, minmax(0, 1fr))"
967
+ },
968
+ columnGap: 2,
969
+ rowGap: 0.5
970
+ },
971
+ children: (() => {
972
+ const n = JSON.parse(e.featureJson || "{}");
973
+ return (y == null ? void 0 : y.length) > 0 ? Object.keys(n).map(
974
+ (i, t) => Re({
975
+ row: e,
976
+ featureState: n,
977
+ featureKey: i,
978
+ lookupKey: os.get(i) || i,
979
+ index: t,
980
+ withModal: !0
981
+ })
982
+ ) : Object.keys(JSON.parse(g || "{}")).map(
983
+ (i, t) => Re({
984
+ row: e,
985
+ featureState: n,
986
+ featureKey: i,
987
+ lookupKey: i,
988
+ index: t,
989
+ withModal: !1
990
+ })
991
+ );
992
+ })()
993
+ }
994
+ ) : /* @__PURE__ */ o(
995
+ ne,
996
+ {
997
+ variant: "body2",
998
+ color: "text.secondary",
999
+ sx: { fontStyle: "italic", px: 1, py: 0.5 },
1000
+ children: p("No rights configured for this sub menu yet")
1001
+ }
1002
+ ) })
1003
+ ]
1004
+ },
1005
+ e == null ? void 0 : e.id
1006
+ )) })
1007
+ ] }) });
1008
+ }
1009
+ Ks.propTypes = {
1010
+ subMenuId: x.any,
1011
+ subMenuGroupName: x.any,
1012
+ selectedTab: x.any,
1013
+ parentLoading: x.any,
1014
+ isNewApi: x.any,
1015
+ setIsNewApi: x.any,
1016
+ onNewAPIChange: x.any,
1017
+ subMenuFeatureVal: x.any,
1018
+ rights: x.any
1019
+ };
1020
+ export {
1021
+ Ks as default
1022
+ };
1023
+ //# sourceMappingURL=AccessRights-xrday-L1.js.map