1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-01-11 00:08:30 +01:00
unleash.unleash/frontend/src/interfaces/uiConfig.ts
Fredrik Strand Oseberg 3b2d6a4cbf
feat: DORA metrics lead time to production (#4589)
* Adds initial support for estimating dora metric lead time for changes
per feature toggle
2023-08-30 14:39:43 +02:00

83 lines
2.0 KiB
TypeScript

import { ReactNode } from 'react';
import { Variant } from 'utils/variants';
export interface IUiConfig {
authenticationType?: string;
baseUriPath?: string;
flags: IFlags;
name: string;
slogan: string;
environment?: string;
unleashUrl?: string;
version: string;
versionInfo?: IVersionInfo;
links: ILinks[];
disablePasswordAuth?: boolean;
emailEnabled?: boolean;
networkViewEnabled: boolean;
maintenanceMode?: boolean;
toast?: IProclamationToast;
segmentValuesLimit?: number;
strategySegmentsLimit?: number;
frontendApiOrigins?: string[];
}
export interface IProclamationToast {
message: string;
id: string;
severity: 'success' | 'info' | 'warning' | 'error';
link: string;
}
export interface IFlags {
P: boolean;
RE: boolean;
EEA?: boolean;
SE?: boolean;
T?: boolean;
UNLEASH_CLOUD?: boolean;
UG?: boolean;
embedProxyFrontend?: boolean;
maintenanceMode?: boolean;
messageBanner?: Variant;
featuresExportImport?: boolean;
caseInsensitiveInOperators?: boolean;
proPlanAutoCharge?: boolean;
notifications?: boolean;
personalAccessTokensKillSwitch?: boolean;
demo?: boolean;
googleAuthEnabled?: boolean;
disableBulkToggle?: boolean;
disableNotifications?: boolean;
advancedPlayground?: boolean;
customRootRolesKillSwitch?: boolean;
strategyVariant?: boolean;
segmentChangeRequests?: boolean;
changeRequestReject?: boolean;
lastSeenByEnvironment?: boolean;
newApplicationList?: boolean;
integrationsRework?: boolean;
multipleRoles?: boolean;
doraMetrics?: boolean;
[key: string]: boolean | Variant | undefined;
}
export interface IVersionInfo {
instanceId: string;
isLatest: boolean;
latest: Partial<IVersion>;
current: IVersion;
}
export interface IVersion {
oss: string;
enterprise: string;
}
export interface ILinks {
value: string;
icon: ReactNode;
href: string;
title: string;
}