@argusoft/medplat-core 1.0.24 → 1.0.25

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 (34) hide show
  1. package/dist/{AddFeatures-CTVs_Gr9.js → AddFeatures-CqE3v0BN.js} +2 -2
  2. package/dist/{AddFeatures-CTVs_Gr9.js.map → AddFeatures-CqE3v0BN.js.map} +1 -1
  3. package/dist/AddMenuConfiguration-BSQLl88V.js +6570 -0
  4. package/dist/AddMenuConfiguration-BSQLl88V.js.map +1 -0
  5. package/dist/{ChangePasswordModalCore-Czu7OZe6.js → ChangePasswordModalCore-DTYWRTa-.js} +3 -3
  6. package/dist/{ChangePasswordModalCore-Czu7OZe6.js.map → ChangePasswordModalCore-DTYWRTa-.js.map} +1 -1
  7. package/dist/{ConditionConfig-BECSbvY2.js → ConditionConfig-DSsgGEXS.js} +2 -2
  8. package/dist/{ConditionConfig-BECSbvY2.js.map → ConditionConfig-DSsgGEXS.js.map} +1 -1
  9. package/dist/{ManageEventConfiguration-CBi2KMB1.js → ManageEventConfiguration-DV3I5POA.js} +4 -4
  10. package/dist/{ManageEventConfiguration-CBi2KMB1.js.map → ManageEventConfiguration-DV3I5POA.js.map} +1 -1
  11. package/dist/{ManageRole-CZAk-IlM.js → ManageRole-B9bs_T00.js} +116 -116
  12. package/dist/ManageRole-B9bs_T00.js.map +1 -0
  13. package/dist/{ManageUser-BnEPFSPT.js → ManageUser-AB3_Vfp_.js} +34 -33
  14. package/dist/{ManageUser-BnEPFSPT.js.map → ManageUser-AB3_Vfp_.js.map} +1 -1
  15. package/dist/{MobileTypeEventConfigModal-C34AN-IJ.js → MobileTypeEventConfigModal-BxLympIO.js} +2 -2
  16. package/dist/{MobileTypeEventConfigModal-C34AN-IJ.js.map → MobileTypeEventConfigModal-BxLympIO.js.map} +1 -1
  17. package/dist/{OtherTypeEventConfigModal-BYjMFl0-.js → OtherTypeEventConfigModal-BeG1GrUi.js} +3 -2
  18. package/dist/{OtherTypeEventConfigModal-BYjMFl0-.js.map → OtherTypeEventConfigModal-BeG1GrUi.js.map} +1 -1
  19. package/dist/{RoleManagement-B9WgZGEj.js → RoleManagement-BIiW9uTq.js} +2 -2
  20. package/dist/{RoleManagement-B9WgZGEj.js.map → RoleManagement-BIiW9uTq.js.map} +1 -1
  21. package/dist/{TypeConfiguration-Bs5WkIa2.js → TypeConfiguration-37wp-gsl.js} +2 -2
  22. package/dist/{TypeConfiguration-Bs5WkIa2.js.map → TypeConfiguration-37wp-gsl.js.map} +1 -1
  23. package/dist/{UserList-BzHsbYel.js → UserList-2gGuDgNa.js} +38 -37
  24. package/dist/{UserList-BzHsbYel.js.map → UserList-2gGuDgNa.js.map} +1 -1
  25. package/dist/{UserListSkeleton-DhIJ5X3y.js → UserListSkeleton-BMKANCtW.js} +57 -93
  26. package/dist/UserListSkeleton-BMKANCtW.js.map +1 -0
  27. package/dist/Users-CsJ08Kjm.js +40 -0
  28. package/dist/Users-CsJ08Kjm.js.map +1 -0
  29. package/dist/index.js +4 -4
  30. package/package.json +1 -1
  31. package/dist/AddMenuConfiguration-m3R8FDhj.js +0 -5570
  32. package/dist/AddMenuConfiguration-m3R8FDhj.js.map +0 -1
  33. package/dist/ManageRole-CZAk-IlM.js.map +0 -1
  34. package/dist/UserListSkeleton-DhIJ5X3y.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ManageRole-B9bs_T00.js","sources":["../src/views/Roles/Skeletons/ManageRoleSkeleton.jsx","../src/views/Roles/ManageRole.jsx"],"sourcesContent":["import PropTypes from \"prop-types\";\nimport React from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { getUseSkeleton } from \"@/store/reducers/SkeletonReducer\";\n\nconst ManageRoleSkeleton = ({ children, isLoading }) => {\n const useSkeleton = useSelector(getUseSkeleton);\n if (!useSkeleton) {\n return children;\n }\n if (!isLoading) return children;\n\n return (\n <div className=\"pt-6 h-[88vh]\">\n {/* Header Skeleton */}\n <div className=\"px-8 pt-2 pb-4 flex items-center justify-between\">\n <div className=\"bg-gray-300 animate-pulse rounded-md w-32 h-8\"></div>\n <div className=\"bg-gray-300 animate-pulse rounded-full w-10 h-10\"></div>\n </div>\n\n {/* Form Content Skeleton */}\n <div className=\"px-8 pb-8 space-y-6 overflow-y-auto max-h-[80vh]\">\n {/* Top Grid: Role Name, Max Position, Max Health Infra */}\n <div className=\"grid grid-cols-1 md:grid-cols-3 gap-4\">\n {[1, 2, 3].map((i) => (\n <div key={i} className=\"space-y-1.5\">\n <div className=\"h-4 bg-gray-300 rounded w-1/3 mb-2 animate-pulse\"></div>\n <div className=\"h-10 bg-gray-300 rounded animate-pulse w-full\"></div>\n </div>\n ))}\n </div>\n\n {/* Location Required Toggle */}\n <div className=\"flex items-center gap-6 w-full\">\n <div className=\"w-full\">\n <div className=\"h-4 bg-gray-300 rounded w-1/4 mb-2 animate-pulse\"></div>\n <div className=\"h-8 bg-gray-300 rounded-full w-16 animate-pulse\"></div>\n </div>\n </div>\n\n {/* Location Select (Conditional placeholder) & Manage Role */}\n <div className=\"space-y-4\">\n {[1, 2].map((i) => (\n <div key={i} className=\"space-y-1.5\">\n <div className=\"h-4 bg-gray-300 rounded w-1/4 mb-2 animate-pulse\"></div>\n <div className=\"h-10 bg-gray-300 rounded animate-pulse w-full\"></div>\n </div>\n ))}\n\n {/* Middle Grid: Role Type & Manage Team */}\n <div className=\"grid grid-cols-1 md:grid-cols-2 gap-4\">\n {[1, 2].map((i) => (\n <div key={i} className=\"space-y-1.5\">\n <div className=\"h-4 bg-gray-300 rounded w-1/3 mb-2 animate-pulse\"></div>\n <div className=\"h-10 bg-gray-300 rounded animate-pulse w-full\"></div>\n </div>\n ))}\n </div>\n\n {/* Health Infra & Category */}\n {[1, 2].map((i) => (\n <div key={i} className=\"space-y-1.5\">\n <div className=\"h-4 bg-gray-300 rounded w-1/3 mb-2 animate-pulse\"></div>\n <div className=\"h-10 bg-gray-300 rounded animate-pulse w-full\"></div>\n </div>\n ))}\n </div>\n\n {/* Bottom Section: Bank Details & Self Manage */}\n <div className=\"flex items-center gap-6\">\n {/* Bank Details (Toggle style) */}\n <div className=\"w-[60%]\">\n <div className=\"h-4 bg-gray-300 rounded w-1/3 mb-2 animate-pulse\"></div>\n <div className=\"h-8 bg-gray-300 rounded-full w-16 animate-pulse\"></div>\n </div>\n {/* Self Manage (Checkbox style) */}\n <div className=\"w-[40%] flex items-center gap-2\">\n <div className=\"h-5 w-5 bg-gray-300 rounded animate-pulse\"></div>\n <div className=\"h-4 bg-gray-300 rounded w-1/3 animate-pulse\"></div>\n </div>\n </div>\n\n {/* Mandatory Fields Checkboxes */}\n <div className=\"space-y-2\">\n <div className=\"h-4 bg-gray-300 rounded w-1/4 mb-2 animate-pulse\"></div>\n <div className=\"flex flex-wrap gap-4\">\n {[1, 2, 3, 4].map((i) => (\n <div key={i} className=\"flex items-center gap-2\">\n <div className=\"h-5 w-5 bg-gray-300 rounded animate-pulse\"></div>\n <div className=\"h-4 w-16 bg-gray-300 rounded animate-pulse\"></div>\n </div>\n ))}\n </div>\n </div>\n </div>\n\n {/* Footer Buttons */}\n <div className=\"flex items-center justify-end gap-3 pt-6 px-8 pb-4 border-t border-slate-100\">\n <div className=\"h-9 w-20 bg-gray-300 rounded animate-pulse\"></div>\n <div className=\"h-9 w-24 bg-gray-300 rounded animate-pulse\"></div>\n </div>\n </div>\n );\n};\n\nexport default ManageRoleSkeleton;\n\nManageRoleSkeleton.propTypes = {\n children: PropTypes.any,\n isLoading: PropTypes.any,\n};\n","import { useState, useEffect, useRef } from \"react\";\nimport {\n Box,\n Modal,\n Button,\n FormControl,\n FormGroup,\n IconButton,\n // Tooltip,\n // Typography,\n} from \"@mui/material\";\nimport useTrackEvent from \"@/hooks/useTrackEvent\";\nimport { postRole, putRole, getRoleById } from \"../../services/Roles\";\nimport {\n getLocationTypes,\n execute,\n getRoleList,\n} from \"@/common/services/GlobalApis\";\nimport { showToast } from \"@/common/toaster/toaster\";\nimport { useForm } from \"react-hook-form\";\nimport { yupResolver } from \"@hookform/resolvers/yup\";\nimport \"@/assets/scss/scrollBar.scss\";\n\nimport { FormItem } from \"@/views/custom-components/FormItem.jsx\";\nimport * as Yup from \"yup\";\nimport CustomTextField from \"@/views/custom-components/CustomTextField\";\nimport CustomDropdown from \"@/views/custom-components/CustomDropdown\";\nimport CustomCheckBox from \"@/views/custom-components/CustomCheckBox\";\n// import CustomRadioGroup from \"@/views/custom-components/CustomRadioComponent\";\nimport CustomAutocomplete from \"@/views/custom-components/CustomAutoComplete\";\nimport { useTranslateProvider } from \"@/common/languageTranslator/TranslationContext\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faXmark } from \"@fortawesome/free-solid-svg-icons\";\nimport GeneralUtil from \"@/common/services/util/GeneralUtil\";\nimport implementationConfig from \"@/common/config/implementationConfig\";\nimport PropTypes from \"prop-types\";\nimport CustomToggleSwitch from \"@/views/custom-components/CustomToggleSwitch\";\nimport ManageRoleSkeleton from \"./Skeletons/ManageRoleSkeleton.jsx\";\n\nconst roleTypes = [{ name: \"WEB\" }, { name: \"MOBILE\" }, { name: \"BOTH\" }];\n\n// Two-factor authentication method. Any TOTP authenticator app works (Google, Microsoft, Authy, ...).\nconst twoFactorTypes = [\n { label: \"Authenticator App\", value: \"AUTHENTICATOR_APP\" },\n];\n\n/**\n * ManageRole Component\n * @module ManageRole\n * @param {Object} props - The component props.\n * @param {function} props.setData - A function to update the role data in the parent component.\n * @param {string} props.selectedId - The ID of the currently selected role, used for updates.\n * @param {boolean} props.isUpdate - A flag indicating whether the component is in update mode (true) or create mode (false).\n * @returns {JSX.Element} - The rendered component for managing roles.\n */\n\nconst ManageRole = ({\n selectedId,\n isUpdate,\n open,\n setOpen,\n isRoleListModified,\n}) => {\n const formRef = useRef(null);\n const submitRef = useRef(false);\n const trackEvent = useTrackEvent();\n const [formData, setFormData] = useState({});\n const [isLoading, setIsLoading] = useState(false);\n const validationSchema = Yup.object().shape({\n name: Yup.string().required(\"Enter Role Name\"),\n locationTypes: Yup.array().when(\"isLocationRequired\", {\n is: true,\n then: (schema) =>\n schema.min(1, \"Select Location Type\").required(\"Select Location Type\"),\n otherwise: (schema) => schema.notRequired(),\n }),\n roleType: implementationConfig.role.showRoleType\n ? Yup.string().required(\"Select Role Type\")\n : Yup.string().notRequired(),\n isBankDetailsRequired:\n implementationConfig.role.showBankDetailsRequired\n ? Yup.boolean().nullable().defined(\"Please Select a Value\")\n : Yup.boolean().notRequired(),\n healthInfrastructureIds: Yup.array().when(\"isHealthInfraMandatory\", {\n is: true,\n then: (schema) =>\n schema\n .min(1, \"Select Health Infrastructure Type\")\n .required(\"Select Health Infrastructure Type\"),\n otherwise: (schema) => schema.notRequired(),\n }),\n twoFactorType: Yup.string().when(\"isTwoFactorEnabled\", {\n is: true,\n then: (schema) => schema.required(\"Select Authentication Method\"),\n otherwise: (schema) => schema.notRequired().nullable(),\n }),\n });\n\n const {\n control,\n handleSubmit,\n formState: { errors, isSubmitting },\n setValue,\n // getValues,\n watch,\n reset,\n } = useForm({\n defaultValues: {\n name: \"\",\n locationTypes: [],\n maxPosition: \"\",\n maxHealthInfra: \"\",\n roleType: \"\",\n isLastNameMandatory: false,\n isAadharNumMandatory: false,\n isEmailMandatory: false,\n isContactNumMandatory: false,\n isConvoxIdMandatory: false,\n isHealthInfraMandatory: false,\n isGeolocationMandatory: false,\n roleIds: [],\n canManageRoleIds: [],\n manageByTeamTypeIds: [],\n canSelfManage: false,\n healthInfrastructureIds: [],\n categoryIds: [],\n isBankDetailsRequired: false,\n isBankDetailsMandatory: false,\n isTwoFactorEnabled: false,\n twoFactorType: \"\",\n id: \"\",\n code: \"\",\n description: \"\",\n createdBy: \"\",\n state: \"\",\n createdOn: \"\",\n assignedFeatureList: \"\",\n assignedFeatures: \"\",\n isSmagTrainedMandatory: \"\",\n isLocationRequired: true,\n isNodalMandatory: false,\n },\n resolver: yupResolver(validationSchema),\n mode: \"onChange\",\n shouldUnregister: false,\n });\n\n const bankDetails = watch(\"isBankDetailsRequired\");\n const isTwoFactorEnabled = watch(\"isTwoFactorEnabled\");\n const roleType = watch(\"roleType\");\n // 2FA (Google Authenticator) only applies to web logins, so it is offered for WEB and BOTH role types.\n const showTwoFactorSetting = roleType === \"WEB\" || roleType === \"BOTH\";\n const locTypes = watch(\"locationTypes\");\n const { translate } = useTranslateProvider();\n const locationDetailsWatcher = watch(\"isLocationRequired\");\n const isHealthInfraMandatory = watch(\"isHealthInfraMandatory\");\n\n const mandatoryFields = [\n { label: \"Email\", value: \"isEmailMandatory\" },\n { label: \"Aadhar Number\", value: \"isAadharNumMandatory\" },\n { label: \"Contact Number\", value: \"isContactNumMandatory\" },\n { label: \"Convox Id\", value: \"isConvoxIdMandatory\" },\n { label: \"Last Name\", value: \"isLastNameMandatory\" },\n { label: \"Health Infrastructure\", value: \"isHealthInfraMandatory\" },\n { label: \"GeoLocation\", value: \"isGeolocationMandatory\" },\n { label: \"Smag Trained\", value: \"isSmagTrainedMandatory\" },\n { label: \"Nodal\", value: \"isNodalMandatory\" },\n ].filter((field) => {\n if (implementationConfig.role.mandatoryFieldsToExclude?.length > 0) {\n return !implementationConfig.role.mandatoryFieldsToExclude.includes(field.value);\n }\n return true;\n });\n /**\n * Closes the form modal and optionally resets the form.\n * @method handleClose\n * @returns {void}\n */\n\n const handleClose = () => {\n setOpen(0);\n reset();\n trackEvent(\"conversion_event\", {\n form: formRef.current,\n form_name: \"Manage Role\",\n submit: submitRef.current,\n });\n trackEvent(\"button_click\", {\n button_name: \"add role close button\",\n button_type: \"cancel\",\n button_id: \"managerole-close-button\",\n });\n };\n\n /**\n * Adds a new field value to the current list of values for a given field.\n * @method handleAddFields\n * @param {Object} value - The new value to be added to the field.\n * @param {string} name - The name of the field to which the new value should be added.\n * @returns {void}\n */\n\n const handleAddFields = (e, value, name) => {\n setValue(name, value);\n };\n\n /**\n * Handles the submission of role data by sending a POST request to create or update a role.\n *\n * @async\n * @function onSubmit\n * @param {Object} params - The role data to be submitted.\n * @param {string} [params.id] - The unique identifier of the role (to be deleted if not an update).\n * @param {string} [params.state] - The state of the role (to be deleted if not an update).\n * @param {string} [params.createdOn] - The creation timestamp of the role (to be deleted if not an update).\n * @param {string} [params.createdBy] - The creator of the role (to be deleted if not an update).\n * @param {string} [params.code] - The code associated with the role (to be deleted if not an update).\n * @param {string} [params.description] - The description of the role (to be deleted if not an update).\n * @param {boolean} [params.assignedFeatures] - Whether features are assigned (to be deleted if not an update).\n * @param {boolean} [params.isSmagTrainedMandatory] - Whether SMAG training is mandatory (to be deleted if not an update).\n * @param {boolean} [params.isBankDetailsRequired] - Whether bank details are required (to be deleted if not an update).\n * @param {boolean} [params.isBankDetailsMandatory] - Whether bank details are mandatory (to be deleted if not an update).\n * @param {Array<Object>} params.roleIds - List of role IDs.\n * @param {Array<Object>} params.manageByTeamTypeIds - List of team type IDs for management.\n * @param {Array<Object>} params.healthInfrastructureIds - List of health infrastructure IDs.\n * @param {Array<Object>} params.categoryIds - List of category IDs.\n *\n * @throws {Error} Throws an error if the role cannot be added.\n *\n * @returns {Promise<void>} - A Promise that resolves when the role has been successfully submitted.\n */\n\n const onSubmit = async (params) => {\n try {\n trackEvent(\"button_click\", {\n button_name: isUpdate ? \"update role button\" : \"add role button\",\n button_type: \"submit\",\n button_id: \"managerole-add-button\",\n });\n\n delete params.bankDetailsRequired;\n delete params.bankDetailsMandatory;\n\n // 2FA only applies to web (WEB/BOTH); a MOBILE-only role must never carry 2FA settings.\n if (params.roleType !== \"WEB\" && params.roleType !== \"BOTH\") {\n params.isTwoFactorEnabled = false;\n }\n // When 2FA is turned off, don't send a stale type selection.\n if (!params.isTwoFactorEnabled) {\n params.twoFactorType = null;\n } else if (!params.twoFactorType) {\n // Only one 2FA method exists (authenticator app); default it when 2FA is enabled.\n params.twoFactorType = \"AUTHENTICATOR_APP\";\n }\n\n if (!isUpdate) {\n delete params.id;\n delete params.state;\n delete params.createdOn;\n delete params.createdBy;\n delete params.code;\n delete params.description;\n delete params.assignedFeatures;\n\n // delete params.isSmagTrainedMandatory;\n delete params.assignedFeatureList;\n }\n params.roleIds = params.roleIds.map((item) => item?.id);\n params.canManageRoleIds = params.canManageRoleIds.map((item) => item?.id);\n params.manageByTeamTypeIds = params.manageByTeamTypeIds.map(\n (item) => item?.id,\n );\n params.healthInfrastructureIds = params.healthInfrastructureIds.map(\n (item) => item?.id,\n );\n // params.maxHealthInfra = parseInt(params.maxHealthInfra) || null;\n // params.maxPosition = parseInt(params.maxPosition) || null;\n params.categoryIds = params.categoryIds.map((item) => item?.id);\n params.locationTypes =\n params.isLocationRequired === true ? params.locationTypes : [];\n delete params.isLocationRequired;\n params.manageByRoleIds = params.roleIds;\n isUpdate ? await putRole(params) : await postRole(params);\n showToast({\n type: \"success\",\n message: `Role ${isUpdate ? \"Updated\" : \"Added\"} Successfully`,\n });\n submitRef.current = true;\n handleClose();\n isRoleListModified();\n } catch (error) {\n showToast({\n type: \"error\",\n message: `Role Cannot be added: ${error?.response?.data?.message}`,\n });\n }\n };\n\n /**\n * Fetches and updates form data based on the selected role ID and initializes additional data needed for the form.\n *\n * This effect runs when the `selectedId` dependency changes. It retrieves role data by ID, updates the form fields\n * with the fetched role data, and sets additional data such as roles, location types, manage team types,\n * categories, and health infrastructure types.\n *\n * @async\n * @function useEffect\n */\n\n useEffect(() => {\n const fetchData = async () => {\n try {\n setIsLoading((cur) => !cur);\n\n const env = GeneralUtil.getEnv();\n\n if (open !== 0) {\n const [roles, locationData, manageTeam, category, healthInfraType] =\n await Promise.all([\n getRoleList(),\n getLocationTypes(),\n execute({\n code: \"team_all_types_for_roles\",\n parameters: {},\n }),\n execute({\n code: \"retrieve_field_values_for_form_field\",\n parameters: {\n form: \"WEB\",\n fieldKey: \"role_catg\",\n },\n }),\n execute({\n code: \"retrieve_field_values_for_form_field\",\n parameters: {\n form: \"WEB\",\n fieldKey: \"infra_type\",\n },\n }),\n ]);\n\n setFormData((cur) => {\n return {\n ...cur,\n roles: roles.data,\n locationData: locationData.data,\n manageTeam: manageTeam?.data?.result,\n category: category?.data?.result,\n healthInfraType: healthInfraType?.data?.result,\n };\n });\n\n if (selectedId) {\n const { data: roleData } = await getRoleById(selectedId);\n setFormData((cur) => {\n return { ...cur, roleData, env };\n });\n Object.keys(roleData).map((key) => setValue(key, roleData[key]));\n setValue(\"isBankDetailsRequired\", roleData.isBankDetailsRequired);\n setValue(\"isBankDetailsMandatory\", roleData.isBankDetailsMandatory);\n const {\n manageByTeamTypeIds,\n healthInfrastructureIds,\n roleIds,\n categoryIds,\n } = roleData;\n setValue(\n \"manageByTeamTypeIds\",\n manageByTeamTypeIds\n ? manageByTeamTypeIds.map((item) =>\n manageTeam.data.result?.find((cur) => cur?.id === item),\n )\n : [],\n );\n setValue(\n \"healthInfrastructureIds\",\n healthInfrastructureIds\n ? healthInfrastructureIds\n .map((item) =>\n healthInfraType.data.result?.find(\n (cur) => cur?.id === item,\n ),\n )\n .filter((item) => item !== undefined)\n : [],\n );\n setValue(\n \"categoryIds\",\n categoryIds\n ? categoryIds.map((item) =>\n category.data.result?.find((cur) => cur?.id === item),\n )\n : [],\n );\n setValue(\n \"roleIds\",\n roleIds\n ? roleIds\n .map((item) => roles.data?.find((cur) => cur?.id === item))\n .filter((role) => role !== undefined)\n : [],\n );\n setValue(\n \"canManageRoleIds\",\n roleData.canManageRoleIds\n ? roleData.canManageRoleIds\n .map((item) => roles.data?.find((cur) => cur?.id === item))\n .filter((role) => role !== undefined)\n : [],\n );\n if (roleData.locationTypes.length > 0) {\n setValue(\"isLocationRequired\", true);\n } else {\n setValue(\"isLocationRequired\", false);\n }\n }\n }\n\n setIsLoading((cur) => !cur);\n } catch (error) {\n showToast({\n message: `Error in manage role :${error?.message}`,\n type: \"error\",\n });\n setIsLoading((cur) => !cur);\n }\n };\n fetchData();\n }, [selectedId, open]);\n\n return (\n <Modal\n open={open !== 0}\n onClose={handleClose}\n data-testid=\"managerole-modal\"\n >\n <div className=\"mt-10 fixed inset-0 z-[100] flex items-center justify-center p-4 animate-in fade-in duration-200\">\n <Box\n className=\"w-full max-w-2xl rounded-[2.5rem] shadow-2xl shadow-blue-900/10 overflow-hidden flex flex-col animate-in zoom-in-95 duration-300\"\n sx={{ bgcolor: (theme) => theme.palette.custom.customBackground }}\n >\n <ManageRoleSkeleton isLoading={isLoading}>\n <div className=\"px-8 pt-8 pb-4 flex items-center justify-between\">\n <div>\n <Box\n component=\"h2\"\n className=\"text-2xl font-bold text-customBlue\"\n sx={{ color: \"text.primary\" }}\n >\n {!isUpdate ? \"Add New Role\" : \"Update Role\"}\n </Box>\n </div>\n <IconButton\n size=\"small\"\n onClick={handleClose}\n className=\"w-10 h-10 rounded-full bg-slate-100 flex items-center justify-center text-slate-400 hover:bg-slate-200 hover:text-slate-600 transition-all\"\n data-testid=\"managerole-close-icon\"\n >\n <FontAwesomeIcon icon={faXmark} size=\"lg\" />\n </IconButton>\n </div>\n <form\n onSubmit={handleSubmit(onSubmit)}\n ref={formRef}\n className=\"px-8 pb-8 space-y-6 overflow-y-auto max-h-[80vh]\"\n >\n <div className=\"grid grid-cols-1 md:grid-cols-3 gap-4\">\n <FormControl variant=\"outlined\">\n <div className=\"space-y-1.5\">\n <FormItem label=\"Role Name\">\n <CustomTextField\n placeholder={\"Role Name\"}\n name=\"name\"\n id=\"name\"\n errors={errors}\n control={control}\n dataTestId=\"managerole-role-name-field\"\n />\n </FormItem>\n </div>\n </FormControl>\n <FormControl variant=\"outlined\">\n <div className=\"space-y-1.5\">\n <FormItem\n label=\"Max Position\"\n tooltip=\"This is the maximum no of users that can be created at one location of this role type\"\n >\n <CustomTextField\n name=\"maxPosition\"\n id=\"maxPosition\"\n errors={errors}\n control={control}\n rules={{\n maxLength: 3,\n pattern: /^\\d{1,3}$/,\n }}\n inputProps={{\n maxLength: 3,\n inputMode: \"numeric\",\n pattern: \"[0-9]*\",\n onInput: (e) => {\n e.target.value = e.target.value.replace(/\\D/g, \"\");\n },\n }}\n dataTestId=\"managerole-max-position-field\"\n />\n </FormItem>\n </div>\n </FormControl>\n {implementationConfig.role.showMaxHealthData && (\n <FormControl variant=\"outlined\">\n <div className=\"space-y-1.5\">\n <FormItem label=\"Max Health Infrastructure\">\n <CustomTextField\n name=\"maxHealthInfra\"\n id=\"maxHealthInfra\"\n control={control}\n errors={errors}\n rules={{\n maxLength: 3,\n pattern: /^\\d{1,3}$/,\n }}\n inputProps={{\n maxLength: 3,\n inputMode: \"numeric\",\n pattern: \"[0-9]*\",\n onInput: (e) => {\n e.target.value = e.target.value.replace(\n /\\D/g,\n \"\",\n );\n },\n }}\n dataTestId=\"managerole-max-health-infra-field\"\n />\n </FormItem>\n </div>\n </FormControl>\n )}\n </div>\n <div className=\"flex items-center gap-6 w-full\">\n <FormControl\n variant=\"outlined\"\n className=\"flex flex-row items-center w-full \"\n >\n <FormItem\n label=\"Location Required\"\n required={true}\n direction={\"row\"}\n >\n <CustomToggleSwitch\n control={control}\n name=\"isLocationRequired\"\n options={[\n { label: \"Yes\", value: true },\n { label: \"No\", value: false },\n ]}\n errors={errors}\n />\n {/* <CustomRadioGroup\n name=\"isLocationRequired\"\n errors={errors}\n control={control}\n options={[\n { label: \"Yes\", value: true },\n { label: \"No\", value: false },\n ]}\n direction=\"row\"\n dataTestId=\"managerole-location-details-radio\"\n className={\"m-0\"}\n /> */}\n </FormItem>\n </FormControl>\n </div>\n <div className=\"space-y-4\">\n {(locationDetailsWatcher === true || isSubmitting) && (\n <>\n <div className=\"space-y-1.5\">\n <FormItem\n label=\"Location\"\n required={true}\n tooltip=\"The OU level where users of this role perform their job function\"\n >\n <CustomAutocomplete\n id=\"locationTypes\"\n control={control}\n name=\"locationTypes\"\n options={formData.locationData}\n value={locTypes?.map((locationType) =>\n formData.locationData?.find(\n (location) =>\n location.type === locationType?.type,\n ),\n )}\n errors={errors}\n getOptionLabel={(option) => option?.name}\n dataTestId=\"managerole-location-type-select\"\n checkEquality=\"type\"\n onChange={(e, val) =>\n handleAddFields(e, val, \"locationTypes\")\n }\n />\n </FormItem>\n </div>\n </>\n )}\n <div className=\"space-y-1.5\">\n <FormItem\n label=\"Can Manage Role\"\n tooltip=\"Please select the roles that shall be managed by this role\"\n >\n <CustomAutocomplete\n name=\"roleIds\"\n id=\"roleIds\"\n errors={errors}\n control={control}\n dataTestId=\"managerole-manage-role-select\"\n options={formData.roles}\n onChange={(e, val) => handleAddFields(e, val, \"roleIds\")}\n getOptionLabel={(options) => options?.name}\n />\n </FormItem>\n </div>\n {implementationConfig.role.showManagedFrom && (\n <div className=\"space-y-1.5\">\n <FormItem\n label=\"Managed From\"\n tooltip=\"Please select the roles that can manage this role\"\n >\n <CustomAutocomplete\n name=\"canManageRoleIds\"\n id=\"canManageRoleIds\"\n errors={errors}\n control={control}\n dataTestId=\"managerole-managed-by-role-select\"\n options={formData.roles}\n onChange={(e, val) =>\n handleAddFields(e, val, \"canManageRoleIds\")\n }\n getOptionLabel={(options) => options?.name}\n />\n </FormItem>\n </div>\n )}\n <div className=\"grid grid-cols-1 md:grid-cols-2 gap-4\">\n {implementationConfig.role.showRoleType && (\n <div className=\"space-y-1.5\">\n <FormItem\n label=\"Role Type\"\n tooltip=\"Please select Role Type\"\n required={true}\n >\n <CustomDropdown\n control={control}\n id=\"roleType\"\n name=\"roleType\"\n options={roleTypes}\n displayName=\"name\"\n optionValue=\"name\"\n errors={errors}\n dataTestId=\"managerole-role-type-dropdown\"\n />\n </FormItem>\n </div>\n )}\n {implementationConfig.role.showCanManageTeam && (\n <div className=\"space-y-1.5\">\n <FormItem\n label=\"Can Manage Team\"\n tooltip=\"Please select the teams that shall be managed by this role\"\n >\n <CustomAutocomplete\n control={control}\n name=\"manageByTeamTypeIds\"\n id=\"manageByTeamTypeIds\"\n errors={errors}\n options={formData.manageTeam}\n dataTestId=\"managerole-manage-team-select\"\n onChange={(e, val) =>\n handleAddFields(e, val, \"manageByTeamTypeIds\")\n }\n getOptionLabel={(options) => options?.type}\n />\n </FormItem>\n </div>\n )}\n </div>\n <div className=\"space-y-4\">\n <div className=\"space-y-1.5\">\n <FormItem\n label=\"Select Health Infrastructure type\"\n tooltip=\"Please select the institute to be associated with the role\"\n required={isHealthInfraMandatory}\n >\n <CustomAutocomplete\n options={formData.healthInfraType}\n errors={errors}\n name=\"healthInfrastructureIds\"\n id=\"healthInfrastructureIds\"\n dataTestId=\"managerole-health-infrastructure-select\"\n control={control}\n onChange={(e, val) =>\n handleAddFields(e, val, \"healthInfrastructureIds\")\n }\n getOptionLabel={(option) => option?.value}\n />\n </FormItem>\n </div>\n </div>\n {implementationConfig.role.showCategoryIds && (\n <>\n <div className=\"space-y-4\">\n <div className=\"space-y-1.5\">\n <FormItem\n label=\"Category\"\n tooltip=\"Please select the category to be associated with the role\"\n >\n <CustomAutocomplete\n id=\"categoryIds\"\n name=\"categoryIds\"\n errors={errors}\n options={formData.category}\n dataTestId=\"managerole-role-category-select\"\n control={control}\n onChange={(e, val) =>\n handleAddFields(e, val, \"categoryIds\")\n }\n getOptionLabel={(option) => option?.value}\n />\n </FormItem>\n </div>\n </div>\n </>\n )}\n </div>\n <div className=\"flex items-center gap-6\">\n {implementationConfig.role.showBankDetailsRequired && (\n <FormControl\n variant=\"outlined\"\n className=\"flex flex-row items-center w-[60%] \"\n >\n <FormItem\n label=\"Bank Details Required\"\n tooltip=\"Select if bank details are required for this role\"\n required={true}\n labelWidth=\"50%\"\n childrenWidth=\"50%\"\n direction=\"row\"\n >\n <CustomToggleSwitch\n control={control}\n name=\"isBankDetailsRequired\"\n options={[\n { label: \"Yes\", value: true },\n { label: \"No\", value: false },\n ]}\n errors={errors}\n />\n </FormItem>\n </FormControl>\n )}\n {!isUpdate && (\n <>\n <FormControl variant=\"outlined \" className=\"w-[40%]\">\n <div className=\"flex items-center gap-2\">\n <label className=\"text-sm font-medium text-gray-700\">\n Self Manage\n </label>\n <CustomCheckBox\n name=\"canSelfManage\"\n control={control}\n isFullWidth={false}\n data-testid=\"managerole-self-manage-checkbox\"\n />\n </div>\n </FormControl>\n </>\n )}\n </div>\n {showTwoFactorSetting && (\n <div className=\"flex items-center gap-6 w-full\">\n <FormControl\n variant=\"outlined\"\n className=\"flex flex-row items-center w-[50%]\"\n >\n <FormItem\n label=\"Two-Factor Authentication\"\n tooltip=\"Require users of this role to use a two-factor authentication app\"\n labelWidth=\"60%\"\n childrenWidth=\"40%\"\n direction=\"row\"\n >\n <CustomToggleSwitch\n control={control}\n name=\"isTwoFactorEnabled\"\n options={[\n { label: \"Yes\", value: true },\n { label: \"No\", value: false },\n ]}\n errors={errors}\n />\n </FormItem>\n </FormControl>\n {isTwoFactorEnabled === true && (\n <FormControl variant=\"outlined\" className=\"w-[50%]\">\n <FormItem\n label=\"Authentication Method\"\n tooltip=\"Select which authentication method users of this role will use\"\n required={true}\n >\n <CustomDropdown\n control={control}\n id=\"twoFactorType\"\n name=\"twoFactorType\"\n options={twoFactorTypes}\n displayName=\"label\"\n optionValue=\"value\"\n errors={errors}\n dataTestId=\"managerole-two-factor-type-dropdown\"\n />\n </FormItem>\n </FormControl>\n )}\n </div>\n )}\n <div className=\"flex items-center gap-6\">\n <FormControl\n variant=\"outlined\"\n className=\"flex flex-col items-start justify-between\"\n >\n <FormItem\n label=\"Mandatory Fields\"\n tooltip=\"These fields are Mandatory when creating users of this role type\"\n >\n <FormGroup row>\n {mandatoryFields?.map((field) => (\n <CustomCheckBox\n key={field.value}\n control={control}\n name={field.value}\n label={field.label}\n isFullWidth={false}\n data-testid={`managerole-mandatory-field-${field.value}`}\n />\n ))}\n {bankDetails === true && (\n <CustomCheckBox\n name=\"isBankDetailsMandatory\"\n control={control}\n label=\"Bank Details\"\n isFullWidth={false}\n data-testid=\"managerole-bank-details-mandatory-checkbox\"\n />\n )}\n </FormGroup>\n </FormItem>\n </FormControl>\n </div>\n <Box\n className=\"flex items-center justify-end gap-3 pt-6 border-t\"\n sx={{ borderColor: \"divider\" }}\n >\n <Button\n variant=\"contained\"\n color=\"secondary\"\n size=\"small\"\n onClick={handleClose}\n data-testid=\"managerole-close-button\"\n >\n {translate(\"Close\")}\n </Button>\n <Button\n variant=\"contained\"\n color=\"primary\"\n size=\"small\"\n type=\"submit\"\n data-testid=\"managerole-submit-button\"\n >\n {!isUpdate\n ? `${translate(\"Add Role\")}`\n : `${translate(\"Update Role\")}`}\n </Button>\n </Box>\n </form>\n </ManageRoleSkeleton>\n </Box>\n </div>\n </Modal>\n );\n};\n\nexport default ManageRole;\n\nManageRole.propTypes = {\n isUpdate: PropTypes.bool,\n role: PropTypes.object,\n onClose: PropTypes.func,\n open: PropTypes.bool,\n setOpen: PropTypes.func,\n selectedId: PropTypes.string,\n isRoleListModified: PropTypes.bool,\n};\n"],"names":["ManageRoleSkeleton","children","isLoading","useSelector","getUseSkeleton","jsxs","jsx","i","PropTypes","roleTypes","twoFactorTypes","ManageRole","selectedId","isUpdate","open","setOpen","isRoleListModified","formRef","useRef","submitRef","trackEvent","useTrackEvent","formData","setFormData","useState","setIsLoading","validationSchema","Yup","schema","implementationConfig","control","handleSubmit","errors","isSubmitting","setValue","watch","reset","useForm","yupResolver","bankDetails","isTwoFactorEnabled","roleType","showTwoFactorSetting","locTypes","translate","useTranslateProvider","locationDetailsWatcher","isHealthInfraMandatory","mandatoryFields","field","_a","handleClose","handleAddFields","value","name","onSubmit","params","item","putRole","postRole","showToast","error","_b","useEffect","cur","env","GeneralUtil","roles","locationData","manageTeam","category","healthInfraType","getRoleList","getLocationTypes","execute","_c","roleData","getRoleById","key","manageByTeamTypeIds","healthInfrastructureIds","roleIds","categoryIds","role","Modal","Box","theme","IconButton","FontAwesomeIcon","faXmark","FormControl","FormItem","CustomTextField","CustomToggleSwitch","Fragment","CustomAutocomplete","locationType","location","option","val","options","CustomDropdown","CustomCheckBox","FormGroup","Button"],"mappings":"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"}
@@ -1,28 +1,29 @@
1
1
  import { jsx as i, jsxs as $, Fragment as de } from "react/jsx-runtime";
2
2
  import Ga, { useState as U, useRef as We, useEffect as Me, useCallback as ja, Suspense as xa, lazy as Ta } from "react";
3
- import { g as Ya, f as Da, h as qa, i as _a, j as Ha, M as Za, v as ba, k as Ia, l as Ka, m as Wa, u as Ja, n as Xa } from "./UserListSkeleton-DhIJ5X3y.js";
3
+ import { g as Ya, c as Da, d as qa, e as _a, f as Ha, v as ba, h as Ia, i as Za, j as Ka, u as Wa, k as Ja } from "./Users-CsJ08Kjm.js";
4
4
  import { showToast as ve } from "@/common/toaster/toaster";
5
5
  import { FormItem as G } from "@/views/custom-components/FormItem.jsx";
6
- import { getAssignedFeatures as Qa } from "@/utils/feature";
7
- import Va from "@/views/custom-components/CustomAutoComplete";
6
+ import { getAssignedFeatures as Xa } from "@/utils/feature";
7
+ import Qa from "@/views/custom-components/CustomAutoComplete";
8
8
  import ya from "@/views/custom-components/CustomConfirmationModal";
9
9
  import Je from "@/views/custom-components/CustomDropdown";
10
10
  import se from "@/views/custom-components/CustomTextField";
11
- import { faEyeSlash as ei, faEye as ai } from "@fortawesome/free-solid-svg-icons";
11
+ import { faEyeSlash as Va, faEye as ei } from "@fortawesome/free-solid-svg-icons";
12
12
  import { FontAwesomeIcon as Na } from "@fortawesome/react-fontawesome";
13
- import { InputAdornment as ii, IconButton as ri, Box as ca, Card as ka, Typography as ze, CardHeader as ni, Button as Xe, CardContent as si, FormControl as da, RadioGroup as ma, FormControlLabel as me, Radio as ue, FormLabel as oi, Divider as fa, Chip as ti } from "@mui/material";
14
- import li from "@/views/custom-components/CustomTextField.jsx";
13
+ import { InputAdornment as ai, IconButton as ii, Box as ca, Card as ka, Typography as ze, CardHeader as ri, Button as Xe, CardContent as ni, FormControl as da, RadioGroup as ma, FormControlLabel as me, Radio as ue, FormLabel as si, Divider as fa, Chip as oi } from "@mui/material";
14
+ import ti from "@/views/custom-components/CustomTextField.jsx";
15
15
  import je from "prop-types";
16
- import { yupResolver as ci } from "@hookform/resolvers/yup";
16
+ import { yupResolver as li } from "@hookform/resolvers/yup";
17
17
  import Qe from "dayjs";
18
18
  import x from "@mui/material/Grid2";
19
- import { useForm as di, FormProvider as mi, Controller as ua } from "react-hook-form";
20
- import { g as ui } from "./_commonjsHelpers-B4e78b8K.js";
21
- import { useNavigate as hi, useParams as gi } from "react-router";
22
- import pi from "@/hooks/useTrackEvent";
19
+ import { useForm as ci, FormProvider as di, Controller as ua } from "react-hook-form";
20
+ import { g as mi } from "./_commonjsHelpers-B4e78b8K.js";
21
+ import { useNavigate as ui, useParams as hi } from "react-router";
22
+ import gi from "@/hooks/useTrackEvent";
23
23
  import * as I from "yup";
24
24
  import Aa from "@/views/custom-components/CustomDatePicker";
25
- import { useTranslateProvider as bi } from "@/common/languageTranslator/TranslationContext";
25
+ import { useTranslateProvider as pi } from "@/common/languageTranslator/TranslationContext";
26
+ import { M as bi } from "./UserListSkeleton-BMKANCtW.js";
26
27
  import { execute as he } from "@/common/services/GlobalApis";
27
28
  import B from "@/common/services/util/GeneralUtil";
28
29
  import './ManageUser.css';const va = ({
@@ -37,7 +38,7 @@ import './ManageUser.css';const va = ({
37
38
  rules: Ae = null,
38
39
  ...ne
39
40
  }) => /* @__PURE__ */ i(
40
- li,
41
+ ti,
41
42
  {
42
43
  control: ce,
43
44
  id: xe,
@@ -49,7 +50,7 @@ import './ManageUser.css';const va = ({
49
50
  dataTestId: ge,
50
51
  onChange: oe,
51
52
  ...ne,
52
- endAdornment: te && /* @__PURE__ */ i(ii, { position: "end", children: /* @__PURE__ */ i(ri, { onClick: te, children: we ? /* @__PURE__ */ i(Na, { icon: ei, size: "xs", "data-testid": `${ge}-visibility-off-button` }) : /* @__PURE__ */ i(Na, { icon: ai, size: "xs", "data-testid": `${ge}-visibility-on-button` }) }) })
53
+ endAdornment: te && /* @__PURE__ */ i(ai, { position: "end", children: /* @__PURE__ */ i(ii, { onClick: te, children: we ? /* @__PURE__ */ i(Na, { icon: Va, size: "xs", "data-testid": `${ge}-visibility-off-button` }) : /* @__PURE__ */ i(Na, { icon: ei, size: "xs", "data-testid": `${ge}-visibility-on-button` }) }) })
53
54
  }
54
55
  );
55
56
  va.propTypes = {
@@ -481,7 +482,7 @@ function yi() {
481
482
  return ha.default = Ye, ha;
482
483
  }
483
484
  var ki = yi();
484
- const Sa = /* @__PURE__ */ ui(ki), fi = Ta(() => import("./ChangePasswordModalCore-Czu7OZe6.js")), vi = Sa.default || Sa, wi = Ta(
485
+ const Sa = /* @__PURE__ */ mi(ki), fi = Ta(() => import("./ChangePasswordModalCore-DTYWRTa-.js")), vi = Sa.default || Sa, wi = Ta(
485
486
  () => import("@/views/feature-components/LocationDirective/LocationDirectiveV2")
486
487
  ), Ca = I.object().shape({
487
488
  roleId: I.number().transform(
@@ -507,7 +508,7 @@ const Sa = /* @__PURE__ */ ui(ki), fi = Ta(() => import("./ChangePasswordModalCo
507
508
  }),
508
509
  prefferedLanguage: I.string().required("Preffered Language is required")
509
510
  }), zi = () => {
510
- const [ce, we] = U(Ca), te = We(null), Ie = We(!1), xe = pi(), Ne = hi(), { translate: oe } = bi(), [ge, Ae] = U([]), [ne, ie] = U(0), [C, pe] = U(), [Ve, ea] = U([]), [h, Pe] = U({}), [aa, ia] = U(!1), [ra, qe] = U("Add User"), { id: S } = gi(), [Ee, Oe] = U(!1), [na, sa] = U(!1), [K, be] = U([]), [Fe, le] = U([]), [ye, Re] = U([]), [c, oa] = U({}), ke = We(c);
511
+ const [ce, we] = U(Ca), te = We(null), Ie = We(!1), xe = gi(), Ne = ui(), { translate: oe } = pi(), [ge, Ae] = U([]), [ne, ie] = U(0), [C, pe] = U(), [Ve, ea] = U([]), [h, Pe] = U({}), [aa, ia] = U(!1), [ra, qe] = U("Add User"), { id: S } = hi(), [Ee, Oe] = U(!1), [na, sa] = U(!1), [K, be] = U([]), [Fe, le] = U([]), [ye, Re] = U([]), [c, oa] = U({}), ke = We(c);
511
512
  Me(() => {
512
513
  ke.current = c;
513
514
  }, [c]);
@@ -634,9 +635,9 @@ const Sa = /* @__PURE__ */ ui(ki), fi = Ta(() => import("./ChangePasswordModalCo
634
635
  })
635
636
  )), we(Ca.concat(s));
636
637
  }, [c, h, S]);
637
- const J = di({
638
+ const J = ci({
638
639
  mode: "onChange",
639
- resolver: ci(ce),
640
+ resolver: li(ce),
640
641
  context: { id: !!S, roleDetails: h },
641
642
  defaultValues: {
642
643
  infrastructureIds: [],
@@ -710,7 +711,7 @@ const Sa = /* @__PURE__ */ ui(ki), fi = Ta(() => import("./ChangePasswordModalCo
710
711
  K.length === 0 && (ee("areas"), Ce({})), S && ((j = C == null ? void 0 : C.addedLocations) != null && j.includes(s)) && r((R) => [...R, s]);
711
712
  const q = ye == null ? void 0 : ye.map(
712
713
  (_) => _.infraid
713
- ), { data: Y } = await Wa(
714
+ ), { data: Y } = await Ka(
714
715
  [...q],
715
716
  s.locationId
716
717
  );
@@ -765,7 +766,7 @@ const Sa = /* @__PURE__ */ ui(ki), fi = Ta(() => import("./ChangePasswordModalCo
765
766
  return;
766
767
  }
767
768
  try {
768
- await Ja(j) && (S ? ve({ message: "User Updated Successfully", type: "success" }) : ve({ message: "User Added Successfully", type: "success" }), h.name.toLowerCase() === "doctor" && (S ? await he({
769
+ await Wa(j) && (S ? ve({ message: "User Updated Successfully", type: "success" }) : ve({ message: "User Added Successfully", type: "success" }), h.name.toLowerCase() === "doctor" && (S ? await he({
769
770
  code: "UPDATE_DOCTOR_DETAILS",
770
771
  parameters: {
771
772
  userId: parseInt(S),
@@ -779,7 +780,7 @@ const Sa = /* @__PURE__ */ ui(ki), fi = Ta(() => import("./ChangePasswordModalCo
779
780
  specializationId: parseInt(s == null ? void 0 : s.specialization)
780
781
  // averageDuration: parseInt(formValues?.averageDuration),
781
782
  }
782
- }), re && await Xa(s == null ? void 0 : s.userName, re)), Ie.current = !0, Ne("/ui/medplat/manage/users", {
783
+ }), re && await Ja(s == null ? void 0 : s.userName, re)), Ie.current = !0, Ne("/ui/medplat/manage/users", {
783
784
  state: {
784
785
  fromManageUser: !0
785
786
  }
@@ -846,7 +847,7 @@ const Sa = /* @__PURE__ */ ui(ki), fi = Ta(() => import("./ChangePasswordModalCo
846
847
  if (Ce({}), Ye.length) {
847
848
  const ae = Ye.includes(
848
849
  (j = (s = fe == null ? void 0 : fe.finalSelected) == null ? void 0 : s.optionSelected) == null ? void 0 : j.type
849
- ), { data: Ze } = await Ka(), Ke = Ye.map(
850
+ ), { data: Ze } = await Za(), Ke = Ye.map(
850
851
  (Fa) => Ze.find(($a) => $a.type === Fa).name
851
852
  );
852
853
  if (!ae)
@@ -938,7 +939,7 @@ const Sa = /* @__PURE__ */ ui(ki), fi = Ta(() => import("./ChangePasswordModalCo
938
939
  l(!0);
939
940
  const [q, Y, D] = await Promise.all([
940
941
  Ya(),
941
- Qa("techo.manage.users"),
942
+ Xa("techo.manage.users"),
942
943
  Da()
943
944
  ]);
944
945
  Ae(q == null ? void 0 : q.data), oa(JSON.parse(Y == null ? void 0 : Y.data)), ea(D == null ? void 0 : D.data);
@@ -1073,7 +1074,7 @@ const Sa = /* @__PURE__ */ ui(ki), fi = Ta(() => import("./ChangePasswordModalCo
1073
1074
  dataTestId: "unlock-user-modal"
1074
1075
  }
1075
1076
  ),
1076
- /* @__PURE__ */ i(mi, { ...J, children: /* @__PURE__ */ i(
1077
+ /* @__PURE__ */ i(di, { ...J, children: /* @__PURE__ */ i(
1077
1078
  ka,
1078
1079
  {
1079
1080
  "data-testid": "ManageUserForm",
@@ -1095,9 +1096,9 @@ const Sa = /* @__PURE__ */ ui(ki), fi = Ta(() => import("./ChangePasswordModalCo
1095
1096
  A(Ma)(s);
1096
1097
  },
1097
1098
  noValidate: !0,
1098
- children: /* @__PURE__ */ $(Za, { isLoading: t, children: [
1099
+ children: /* @__PURE__ */ $(bi, { isLoading: t, children: [
1099
1100
  /* @__PURE__ */ i(x, { item: !0, container: !0, direction: "row", children: /* @__PURE__ */ i(x, { item: !0, size: { xs: 12 }, children: /* @__PURE__ */ i(
1100
- ni,
1101
+ ri,
1101
1102
  {
1102
1103
  className: "p-2.5 px-5 flex border-b",
1103
1104
  subheader: /* @__PURE__ */ $(
@@ -1150,7 +1151,7 @@ const Sa = /* @__PURE__ */ ui(ki), fi = Ta(() => import("./ChangePasswordModalCo
1150
1151
  }
1151
1152
  }
1152
1153
  ) }) }),
1153
- /* @__PURE__ */ i(si, { children: /* @__PURE__ */ $(x, { container: !0, size: { xs: 12 }, spacing: 2, direction: "row", children: [
1154
+ /* @__PURE__ */ i(ni, { children: /* @__PURE__ */ $(x, { container: !0, size: { xs: 12 }, spacing: 2, direction: "row", children: [
1154
1155
  /* @__PURE__ */ i(
1155
1156
  x,
1156
1157
  {
@@ -1799,7 +1800,7 @@ const Sa = /* @__PURE__ */ ui(ki), fi = Ta(() => import("./ChangePasswordModalCo
1799
1800
  }
1800
1801
  ) }) }),
1801
1802
  (h == null ? void 0 : h.isSmagTrainedMandatory) && /* @__PURE__ */ i(x, { item: !0, size: { xs: 12, sm: 12, md: 6 }, children: /* @__PURE__ */ $(da, { component: "fieldset", children: [
1802
- /* @__PURE__ */ i(oi, { component: "legend", children: oe(
1803
+ /* @__PURE__ */ i(si, { component: "legend", children: oe(
1803
1804
  "Is User SMAG Trained (Safe Motherhood Action Group)"
1804
1805
  ) }),
1805
1806
  /* @__PURE__ */ i(
@@ -1968,7 +1969,7 @@ const Sa = /* @__PURE__ */ ui(ki), fi = Ta(() => import("./ChangePasswordModalCo
1968
1969
  ref: T,
1969
1970
  className: `flex flex-wrap gap-2 border ${E.addedareas ? "border-red-500" : "border-gray-300"} rounded-4xl p-1.5 pl-3 pr-3 overflow-y-auto cursor-pointer min-h-9 max-h-[${d}] box-border`,
1970
1971
  children: K && K.length > 0 ? K.map((s, j) => /* @__PURE__ */ i(
1971
- ti,
1972
+ oi,
1972
1973
  {
1973
1974
  label: s == null ? void 0 : s.locationFullName,
1974
1975
  onDelete: () => He(s),
@@ -2007,7 +2008,7 @@ const Sa = /* @__PURE__ */ ui(ki), fi = Ta(() => import("./ChangePasswordModalCo
2007
2008
  }
2008
2009
  ),
2009
2010
  /* @__PURE__ */ i(
2010
- Va,
2011
+ Qa,
2011
2012
  {
2012
2013
  options: Fe,
2013
2014
  name: "healthInfrastructures",
@@ -2173,12 +2174,12 @@ const Sa = /* @__PURE__ */ ui(ki), fi = Ta(() => import("./ChangePasswordModalCo
2173
2174
  }
2174
2175
  ) })
2175
2176
  ] });
2176
- }, Wi = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2177
+ }, Ji = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2177
2178
  __proto__: null,
2178
2179
  default: zi
2179
2180
  }, Symbol.toStringTag, { value: "Module" }));
2180
2181
  export {
2181
- Wi as M,
2182
+ Ji as M,
2182
2183
  va as P
2183
2184
  };
2184
- //# sourceMappingURL=ManageUser-BnEPFSPT.js.map
2185
+ //# sourceMappingURL=ManageUser-AB3_Vfp_.js.map