refactor: remove repository info from common project
This MR is a preparation for creating a common project definition shared between WebIDE and Workflow.
The GitLabProject
class contained many specific-purpose properties and this MR moved them into a different interface to make sure that only heavily-used properties are a part of this central class.
This is the final GraphQL response we are using to represent GitLab project everywhere:
interface GqlGroup {
id: string;
}
export interface GqlProject {
id: string;
name: string;
description: string;
fullPath: string;
webUrl: string;
group: GqlGroup;
}
I'm planning on removing the GqlGroup
in a follow up.
The MR might be easiest to review commit-by-commit.
Partially implements Use the same GitLab project entity in WebIDE and Workflow
Edited by Tomas Vik (OOO back on 2024-09-23)