diff --git a/src/components/sidebar/SideNavBar.tsx b/src/components/sidebar/SideNavBar.tsx index d984f822..eeedb355 100644 --- a/src/components/sidebar/SideNavBar.tsx +++ b/src/components/sidebar/SideNavBar.tsx @@ -73,7 +73,8 @@ function SideNavBar({ isDc97User, isHRCChatUser }: ISideNavbarProps) { isPincodeMappingVisible, isInternalTeamLead, fieldTLAndClusterAndZonalManagers, - isAmeyoUtilityVisible + isAmeyoUtilityVisible, + isAmeyoGeneratePasswordVisible } = useSelector((state: RootState) => ({ user: state.common.userData, isPerformanceDashboardVisible: state?.common?.isPerformanceDashboardVisible, @@ -82,7 +83,8 @@ function SideNavBar({ isDc97User, isHRCChatUser }: ISideNavbarProps) { isTeamLead: state?.common?.isTeamLead, isInternalTeamLead: state?.common?.isInternalTeamLead, fieldTLAndClusterAndZonalManagers: state?.common?.fieldTLAndClusterAndZonalManagers, - isAmeyoUtilityVisible: state?.common?.isAmeyoUtilityVisible + isAmeyoUtilityVisible: state?.common?.isAmeyoUtilityVisible, + isAmeyoGeneratePasswordVisible: state?.common?.isAmeyoGeneratePasswordVisible })); const newDashboard = user?.revampedDashboardViewAllowed; @@ -416,6 +418,21 @@ function SideNavBar({ isDc97User, isHRCChatUser }: ISideNavbarProps) { clickStreamEvent={CLICKSTREAM_EVENT_NAMES.LH_LEAVE_MANAGEMENT_PAGE_CLICKED} /> ) : null} + {!isAmeyoUtilityVisible && isAmeyoGeneratePasswordVisible ? ( + } + inActiveIcon={} + name={'Ameyo Password'} + route={APP_ROUTES.TL_GENERATE_AMEYO_PASSWORD.path} + linkClickHandler={linkClickHandler} + currentPathname={pathname} + currentSearch={search} + clickStreamEvent={ + CLICKSTREAM_EVENT_NAMES.LH_TL_GENERATE_AMEYO_PASSWORD_SidePanelIconClick + } + /> + ) : null} {isAmeyoUtilityVisible ? ( + }, + TL_GENERATE_AMEYO_PASSWORD: { + path: '/generate-ameyo-password', + element: , + exact: true } }; diff --git a/src/reducers/commonSlice.ts b/src/reducers/commonSlice.ts index 3fc04cda..5deff651 100644 --- a/src/reducers/commonSlice.ts +++ b/src/reducers/commonSlice.ts @@ -244,6 +244,7 @@ export interface CommonState { feedbackFilters: string; serverDate: Date | string; isAmeyoUtilityVisible?: boolean; + isAmeyoGeneratePasswordVisible?: boolean; } export const CHECK_LOGIN = 'CHECK_LOGIN'; @@ -283,6 +284,7 @@ const initialState = { isPerformanceDashboardVisible: false, isPincodeMappingVisible: false, isAmeyoUtilityVisible: false, + isAmeyoGeneratePasswordVisible: false, isIdCardApprovalVisible: false, humanReminderCustomerDetailsLoading: false, generateAmeyoPassword: { @@ -323,9 +325,12 @@ export const commonSlice = createSlice({ const isPincodeMappingVisible = action.payload?.featureFlags?.agencyServiceability ?? false; const isAmeyoUtilityVisible = action.payload?.featureFlags?.ameyoSelfServeFlag ?? false; + const isAmeyoGeneratePasswordVisible = + action.payload?.featureFlags?.ameyoGeneratePasswordFlag ?? false; state.isIdCardApprovalVisible = isIdCardApprovalVisible; state.isAmeyoUtilityVisible = isAmeyoUtilityVisible; + state.isAmeyoGeneratePasswordVisible = isAmeyoGeneratePasswordVisible; state.isPincodeMappingVisible = isPincodeMappingVisible; state.isCallingAgent = roles?.includes(Roles.ROLE_CALLING_AGENT); diff --git a/src/service/clickStream.constant.ts b/src/service/clickStream.constant.ts index 905a5a9e..0278e1c5 100644 --- a/src/service/clickStream.constant.ts +++ b/src/service/clickStream.constant.ts @@ -74,6 +74,10 @@ export const CLICKSTREAM_EVENT_NAMES = Object.freeze({ name: 'LH_AMEYO_UTILITY_PAGE_CLICKED', description: 'Click on Ameyo Utility option on Side Panel' }, + LH_TL_GENERATE_AMEYO_PASSWORD_SidePanelIconClick: { + name: 'LH_TL_GENERATE_AMEYO_PASSWORD_SidePanelIconClick', + description: 'Click on TL Generate ameyo password option on Side Panel' + }, LH_LEAVE_MANAGEMENT_PAGE_CLICKED: { name: 'LH_LEAVE_MANAGEMENT_PAGE_CLICKED', description: 'Click on leave management option on Side Panel'