2023-01-27 17:19:27 +01:00
|
|
|
import { ProjectStatsSchema } from 'openapi';
|
2021-07-07 11:04:36 +02:00
|
|
|
import { IFeatureToggleListItem } from './featureToggle';
|
2023-05-02 09:17:05 +02:00
|
|
|
import { ProjectEnvironmentType } from '../component/project/Project/ProjectFeatureToggles/hooks/useEnvironmentsRef';
|
2021-07-07 11:04:36 +02:00
|
|
|
|
|
|
|
export interface IProjectCard {
|
|
|
|
name: string;
|
|
|
|
id: string;
|
|
|
|
createdAt: string;
|
|
|
|
health: number;
|
|
|
|
description: string;
|
|
|
|
featureCount: number;
|
2022-05-04 15:39:50 +02:00
|
|
|
memberCount?: number;
|
2022-12-02 08:16:03 +01:00
|
|
|
favorite?: boolean;
|
2021-07-07 11:04:36 +02:00
|
|
|
}
|
|
|
|
|
2023-09-04 13:53:33 +02:00
|
|
|
export type FeatureNamingType = {
|
|
|
|
pattern: string;
|
|
|
|
example: string;
|
|
|
|
};
|
|
|
|
|
2021-07-07 11:04:36 +02:00
|
|
|
export interface IProject {
|
2022-02-25 10:55:39 +01:00
|
|
|
id?: string;
|
2021-07-07 11:04:36 +02:00
|
|
|
members: number;
|
|
|
|
version: string;
|
|
|
|
name: string;
|
2022-03-22 08:23:51 +01:00
|
|
|
description?: string;
|
2023-05-02 09:17:05 +02:00
|
|
|
environments: Array<ProjectEnvironmentType>;
|
2021-07-07 11:04:36 +02:00
|
|
|
health: number;
|
2023-01-27 17:19:27 +01:00
|
|
|
stats: ProjectStatsSchema;
|
2022-12-02 08:16:03 +01:00
|
|
|
favorite: boolean;
|
2021-07-07 11:04:36 +02:00
|
|
|
features: IFeatureToggleListItem[];
|
2023-03-16 15:29:52 +01:00
|
|
|
mode: 'open' | 'protected';
|
2023-04-12 15:22:13 +02:00
|
|
|
defaultStickiness: string;
|
2023-07-13 13:02:35 +02:00
|
|
|
featureLimit?: number;
|
2023-09-04 13:53:33 +02:00
|
|
|
featureNaming?: FeatureNamingType;
|
2021-07-07 11:04:36 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface IProjectHealthReport extends IProject {
|
|
|
|
staleCount: number;
|
|
|
|
potentiallyStaleCount: number;
|
|
|
|
activeCount: number;
|
2022-02-07 15:30:33 +01:00
|
|
|
updatedAt: string;
|
2021-07-07 11:04:36 +02:00
|
|
|
}
|
2023-08-17 09:43:43 +02:00
|
|
|
|
|
|
|
export interface IProjectRoleUsageCount {
|
|
|
|
project: string;
|
|
|
|
role: number;
|
|
|
|
userCount: number;
|
|
|
|
groupCount: number;
|
|
|
|
serviceAccountCount: number;
|
|
|
|
}
|