Skip to content

Commit

Permalink
how it works and user manual link added in the card (#1570)
Browse files Browse the repository at this point in the history
* how it works and user manual link added in the card

* typo

* removed icons hardcoding and message name logic change
  • Loading branch information
mithunhegde-egov authored Oct 19, 2024
1 parent ec8808a commit b43f9b6
Showing 1 changed file with 70 additions and 14 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -69,17 +69,7 @@ export const RoleBasedEmployeeHome = ({ modules, additionalComponent }) => {
acc[module].links.push({
// link: linkUrl,
link: linkUrl,
icon: linkUrl.includes("create")
? "Person"
: linkUrl.includes("inbox")
? "AllInbox"
: linkUrl.includes("search")
? "Search"
: linkUrl.includes("edit")
? "Edit"
: linkUrl.includes("dss")
? "Dashboard"
: "PhonelinkSetup",
icon: item.leftIcon,
// link: queryParamIndex === -1 ? linkUrl : linkUrl.substring(0, queryParamIndex),
queryParams: queryParamIndex === -1 ? null : linkUrl.substring(queryParamIndex),
label: t(Digit.Utils.locale.getTransformedLocale(`${module}_LINK_${item.displayName}`)),
Expand Down Expand Up @@ -137,15 +127,72 @@ export const RoleBasedEmployeeHome = ({ modules, additionalComponent }) => {
sortedConfigEmployeesSidebar = configEmployeeSideBar;
}

const getHowItWorksLink = (moduleData) => {
return moduleData?.links?.find((item) => {
if (moduleData.module === "PGR") {
return item?.displayName === "HOW_IT_WORKS_PGR";
} else if (moduleData.module === "HRMS") {
return item?.displayName === "HOW_IT_WORKS_HRMS";
} else {
return false;
}
});
};

const getUserManualLink = (moduleData) => {
return moduleData?.links?.find((item) => {
if (moduleData.module === "PGR") {
return item?.displayName === "PGR_INFO_LINK";
} else if (moduleData.module === "HRMS") {
return item?.displayName === "HRMS_INFO_LINK";
} else {
return false; // No match for other modules
}
});
};

const getFilteredLinks = (moduleData) => {
return moduleData.links?.filter((item) => {
const displayName = item.displayName;
const isPGR = moduleData.module === "PGR";
const isHRMS = moduleData.module === "HRMS";
const isNotConfigureMaster = displayName !== "Configure_master";
const isNotHowItWorksPGR = !(isPGR && displayName === "HOW_IT_WORKS_PGR");
const isNotHRMSInfoLink = !(isHRMS && displayName === "HRMS_INFO_LINK");
const isNotHowItWorksHRMS = !(isHRMS && displayName === "HOW_IT_WORKS_HRMS");
const isNotPGRInfoLink = !(isPGR && displayName === "PGR_INFO_LINK");

return (
isNotConfigureMaster &&
isNotHowItWorksPGR &&
isNotHRMSInfoLink &&
isNotHowItWorksHRMS &&
isNotPGRInfoLink
);
});
};

const children = Object.keys(sortedConfigEmployeesSidebar)?.map((current, index) => {
const moduleData = sortedConfigEmployeesSidebar?.[current];
const configureData = moduleData?.links?.find((item) => item?.label === "Configure");
const configureData = moduleData?.links?.find((item) => item?.displayName === "Configure_master");
const howItWorks = getHowItWorksLink(moduleData);
const userManual = getUserManualLink(moduleData);
const propsForModuleCard = {
icon: "SupervisorAccount",
moduleName: t(moduleData?.label),
metrics: [],
links: Digit.Utils.getMultiRootTenant() ? moduleData.links?.filter((item) => item.label !== "Configure") : moduleData.links,
centreChildren: [<div>{t(Digit.Utils.locale.getTransformedLocale(`MODULE_CARD_DESC_${current}`))}</div>],
links: Digit.Utils.getMultiRootTenant()? getFilteredLinks(moduleData): moduleData.links,
centreChildren: [<div>{t(Digit.Utils.locale.getTransformedLocale(`MODULE_CARD_DESC_${current}`))}</div>,
<Button
variation="teritiary"
label={userManual?.label}
icon={userManual?.icon}
type="button"
size={"medium"}
onClick={() => window.open(userManual?.link, "_blank")}
style={{ padding: "0px" }}
/>,
],
endChildren: Digit.Utils.getMultiRootTenant()
? [
<Button
Expand All @@ -157,6 +204,15 @@ export const RoleBasedEmployeeHome = ({ modules, additionalComponent }) => {
onClick={() => history?.push(configureData?.link)}
style={{ padding: "0px" }}
/>,
<Button
variation="teritiary"
label={howItWorks?.label}
icon={howItWorks?.icon}
type="button"
size={"medium"}
onClick={() => window.open(howItWorks?.link, "_blank")}
style={{ padding: "0px" }}
/>,
]
: null,
};
Expand Down

0 comments on commit b43f9b6

Please sign in to comment.