Skip to content

Commit cd93b76

Browse files
committed
Merge branch 'feat/async-select-recent-option' of github.com:devtron-labs/devtron-fe-common-lib into feat/async-select-recent-option
2 parents a4c88eb + 9ab02ce commit cd93b76

File tree

3 files changed

+21
-10
lines changed

3 files changed

+21
-10
lines changed

src/Shared/Hooks/useUserPreferences/types.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,6 @@ export type UserPreferenceResourceProps = UserPathValueMapType & {
9999
export interface UserPreferenceRecentlyVisitedAppsTypes {
100100
appId: number
101101
appName: string
102-
isInvalidAppId?: boolean
103102
}
104103

105104
export interface UserPreferenceFilteredListTypes extends UserPreferenceRecentlyVisitedAppsTypes {

src/Shared/Hooks/useUserPreferences/useUserPrefrences.tsx

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,14 +33,15 @@ export const useUserPreferences = ({ migrateUserPreferences }: UseUserPreference
3333

3434
const { handleThemeSwitcherDialogVisibilityChange, handleThemePreferenceChange } = useTheme()
3535

36-
const fetchRecentlyVisitedParsedApps = async ({
37-
appId,
38-
appName,
39-
isInvalidAppId = false,
40-
}: UserPreferenceRecentlyVisitedAppsTypes) => {
36+
const fetchRecentlyVisitedParsedApps = async ({ appId, appName }: UserPreferenceRecentlyVisitedAppsTypes) => {
4137
const userPreferencesResponse = await getUserPreferences()
4238

43-
const uniqueFilteredApps = getFilteredUniqueAppList({ userPreferencesResponse, appId, appName, isInvalidAppId })
39+
const uniqueFilteredApps = getFilteredUniqueAppList({
40+
userPreferencesResponse,
41+
appId,
42+
appName,
43+
})
44+
4445
setUserPreferences((prev) => ({
4546
...prev,
4647
resources: {

src/Shared/Hooks/useUserPreferences/utils.tsx

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,19 +14,30 @@ export const getFilteredUniqueAppList = ({
1414
userPreferencesResponse,
1515
appId,
1616
appName,
17-
isInvalidAppId,
1817
}: UserPreferenceFilteredListTypes) => {
1918
const _recentApps =
2019
userPreferencesResponse?.resources?.[ResourceKindType.devtronApplication]?.[
2120
UserPreferenceResourceActions.RECENTLY_VISITED
2221
] || []
2322

24-
const validApps = _recentApps.filter((app) => app?.appId && app?.appName)
23+
const isInvalidApp = appId && !appName
24+
25+
const validApps = _recentApps.filter((app) => {
26+
if (!app?.appId || !app?.appName) {
27+
return false
28+
}
29+
30+
if (isInvalidApp) {
31+
return app.appId !== appId
32+
}
33+
34+
return true
35+
})
2536

2637
// Convert to a Map for uniqueness while maintaining stacking order
2738
const uniqueApps = (
2839
appId && appName ? [{ appId, appName }, ...validApps.filter((app) => app.appId !== appId)] : validApps
2940
).slice(0, 6) // Limit to 6 items
3041

31-
return isInvalidAppId ? uniqueApps.filter((app) => app.appId !== Number(appId)) : uniqueApps
42+
return uniqueApps
3243
}

0 commit comments

Comments
 (0)