Skip to content

Commit 21c58db

Browse files
fix: display actual module type and fix workspace filtering
- Fix module filtering to use workspace reference instead of namespace - Add module type field to display "Helm", "Custom", etc. instead of hardcoded "SERVICE" - Add workspace field to Module type for proper filtering
1 parent 483e14b commit 21c58db

File tree

3 files changed

+10
-12
lines changed

3 files changed

+10
-12
lines changed

src/components/WorkspaceCard.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ export const WorkspaceCard: React.FC<WorkspaceCardProps> = ({
117117
</div>
118118
<div className="module-details">
119119
<div className="module-name">{module.name}</div>
120-
<div className="module-type">SERVICE</div>
120+
<div className="module-type">{module.type}</div>
121121
</div>
122122
</div>
123123
<div className="module-status-actions">

src/components/WorkspaceList.tsx

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -98,22 +98,19 @@ export const WorkspaceList: React.FC = () => {
9898
// Load all modules once
9999
const allModules = await apiService.listModules();
100100

101-
// Group workspaces by namespace and only show modules under the first workspace in each namespace
101+
// Group modules by workspace reference (not namespace)
102102
const modulesMap = new Map<string, Module[]>();
103-
const namespacesProcessed = new Set<string>();
104103

105104
workspacesData.forEach((workspace) => {
106105
const workspaceKey = `${workspace.namespace}-${workspace.name}`;
107106

108-
if (!namespacesProcessed.has(workspace.namespace)) {
109-
// This is the first workspace in this namespace, assign all modules from this namespace
110-
const namespaceModules = allModules.filter(module => module.namespace === workspace.namespace);
111-
modulesMap.set(workspaceKey, namespaceModules);
112-
namespacesProcessed.add(workspace.namespace);
113-
} else {
114-
// Not the first workspace in this namespace, no modules
115-
modulesMap.set(workspaceKey, []);
116-
}
107+
// Filter modules that reference this specific workspace
108+
const workspaceModules = allModules.filter(module =>
109+
module.workspace?.name === workspace.name &&
110+
module.workspace?.namespace === workspace.namespace
111+
);
112+
113+
modulesMap.set(workspaceKey, workspaceModules);
117114
});
118115

119116
setModulesByWorkspace(modulesMap);

src/types/module.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ export interface Module {
44
phase: ModulePhase;
55
message?: string;
66
hibernated: boolean;
7+
type: string;
78
workspace?: ModuleWorkspaceReference;
89
}
910

0 commit comments

Comments
 (0)