2024-03-18 13:58:05 +01:00
|
|
|
import type { ReactNode } from 'react';
|
|
|
|
import type { Variant } from 'utils/variants';
|
2022-06-02 10:58:55 +02:00
|
|
|
|
2021-07-16 15:41:54 +02:00
|
|
|
export interface IUiConfig {
|
2022-06-02 10:58:55 +02:00
|
|
|
authenticationType?: string;
|
|
|
|
baseUriPath?: string;
|
2023-12-29 12:19:08 +01:00
|
|
|
feedbackUriPath?: string;
|
2023-09-11 10:01:20 +02:00
|
|
|
/**
|
|
|
|
* @deprecated `useUiFlags` can be used instead
|
|
|
|
* @example
|
|
|
|
* ```ts
|
2023-09-15 12:31:48 +02:00
|
|
|
* const yourFlag = useUiFlag("yourFlag")
|
2023-09-11 10:01:20 +02:00
|
|
|
* ```
|
|
|
|
*/
|
|
|
|
flags: UiFlags;
|
2021-07-16 15:41:54 +02:00
|
|
|
name: string;
|
|
|
|
slogan: string;
|
2022-06-02 10:58:55 +02:00
|
|
|
environment?: string;
|
|
|
|
unleashUrl?: string;
|
2021-07-16 15:41:54 +02:00
|
|
|
version: string;
|
2022-06-02 10:58:55 +02:00
|
|
|
versionInfo?: IVersionInfo;
|
2021-07-16 15:41:54 +02:00
|
|
|
links: ILinks[];
|
2022-02-04 12:41:59 +01:00
|
|
|
disablePasswordAuth?: boolean;
|
2022-08-09 15:37:26 +02:00
|
|
|
emailEnabled?: boolean;
|
2023-02-15 16:24:57 +01:00
|
|
|
networkViewEnabled: boolean;
|
2022-12-21 12:23:44 +01:00
|
|
|
maintenanceMode?: boolean;
|
2022-02-18 09:51:10 +01:00
|
|
|
toast?: IProclamationToast;
|
2022-06-02 10:58:55 +02:00
|
|
|
segmentValuesLimit?: number;
|
|
|
|
strategySegmentsLimit?: number;
|
2022-08-23 14:04:09 +02:00
|
|
|
frontendApiOrigins?: string[];
|
2022-02-09 14:16:24 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface IProclamationToast {
|
|
|
|
message: string;
|
|
|
|
id: string;
|
|
|
|
severity: 'success' | 'info' | 'warning' | 'error';
|
|
|
|
link: string;
|
2021-07-16 15:41:54 +02:00
|
|
|
}
|
|
|
|
|
2023-09-11 10:01:20 +02:00
|
|
|
export type UiFlags = {
|
2021-07-16 15:41:54 +02:00
|
|
|
P: boolean;
|
2022-02-08 11:44:41 +01:00
|
|
|
RE: boolean;
|
2022-02-23 13:47:32 +01:00
|
|
|
EEA?: boolean;
|
2023-10-11 13:44:54 +02:00
|
|
|
SE?: boolean;
|
2022-05-06 14:04:09 +02:00
|
|
|
T?: boolean;
|
2022-05-25 23:26:05 +02:00
|
|
|
UNLEASH_CLOUD?: boolean;
|
2022-07-22 09:31:08 +02:00
|
|
|
UG?: boolean;
|
2022-08-26 15:16:29 +02:00
|
|
|
embedProxyFrontend?: boolean;
|
2023-01-11 13:56:55 +01:00
|
|
|
maintenanceMode?: boolean;
|
2023-05-18 10:38:59 +02:00
|
|
|
messageBanner?: Variant;
|
2023-10-19 14:18:25 +02:00
|
|
|
banner?: Variant;
|
2023-03-29 08:19:33 +02:00
|
|
|
featuresExportImport?: boolean;
|
2023-01-18 14:53:14 +01:00
|
|
|
caseInsensitiveInOperators?: boolean;
|
2023-02-24 11:31:37 +01:00
|
|
|
notifications?: boolean;
|
2023-04-05 10:20:50 +02:00
|
|
|
personalAccessTokensKillSwitch?: boolean;
|
2023-04-13 13:06:00 +02:00
|
|
|
demo?: boolean;
|
2023-04-26 10:55:55 +02:00
|
|
|
googleAuthEnabled?: boolean;
|
2023-05-22 13:31:31 +02:00
|
|
|
disableBulkToggle?: boolean;
|
2023-05-29 08:28:47 +02:00
|
|
|
disableNotifications?: boolean;
|
2023-06-12 11:01:52 +02:00
|
|
|
advancedPlayground?: boolean;
|
2023-07-11 09:21:01 +02:00
|
|
|
strategyVariant?: boolean;
|
2023-08-30 14:39:43 +02:00
|
|
|
doraMetrics?: boolean;
|
2023-09-22 11:26:45 +02:00
|
|
|
dependentFeatures?: boolean;
|
2023-12-11 12:23:18 +01:00
|
|
|
newStrategyConfiguration?: boolean;
|
2024-03-04 13:08:05 +01:00
|
|
|
signals?: boolean;
|
2024-01-22 18:31:04 +01:00
|
|
|
automatedActions?: boolean;
|
2023-12-21 08:42:28 +01:00
|
|
|
celebrateUnleash?: boolean;
|
2024-01-31 13:32:23 +01:00
|
|
|
featureSearchFeedback?: Variant;
|
2024-01-02 21:06:35 +01:00
|
|
|
enableLicense?: boolean;
|
2024-01-17 10:27:36 +01:00
|
|
|
adminTokenKillSwitch?: boolean;
|
2024-03-20 16:21:46 +01:00
|
|
|
executiveDashboardUI?: boolean;
|
2024-01-22 13:14:27 +01:00
|
|
|
feedbackComments?: Variant;
|
2024-01-24 15:22:48 +01:00
|
|
|
displayUpgradeEdgeBanner?: boolean;
|
2024-01-30 10:07:16 +01:00
|
|
|
showInactiveUsers?: boolean;
|
2024-02-02 14:39:29 +01:00
|
|
|
featureSearchFeedbackPosting?: boolean;
|
2024-02-16 14:31:33 +01:00
|
|
|
userAccessUIEnabled?: boolean;
|
2024-03-14 10:15:33 +01:00
|
|
|
outdatedSdksBanner?: boolean;
|
2024-03-18 12:38:59 +01:00
|
|
|
projectOverviewRefactor?: string;
|
2024-03-22 11:54:33 +01:00
|
|
|
collectTrafficDataUsage?: boolean;
|
2024-04-03 15:02:05 +02:00
|
|
|
disableShowContextFieldSelectionValues?: boolean;
|
2024-03-28 16:02:25 +01:00
|
|
|
variantDependencies?: boolean;
|
2024-04-03 13:55:12 +02:00
|
|
|
projectOverviewRefactorFeedback?: boolean;
|
2024-04-05 13:42:03 +02:00
|
|
|
featureLifecycle?: boolean;
|
2024-04-09 16:26:35 +02:00
|
|
|
scimApi?: boolean;
|
2024-04-10 14:40:50 +02:00
|
|
|
projectListFilterMyProjects?: boolean;
|
2023-09-11 10:01:20 +02:00
|
|
|
};
|
2021-07-16 15:41:54 +02:00
|
|
|
|
|
|
|
export interface IVersionInfo {
|
|
|
|
instanceId: string;
|
|
|
|
isLatest: boolean;
|
2022-02-02 12:32:30 +01:00
|
|
|
latest: Partial<IVersion>;
|
|
|
|
current: IVersion;
|
2021-07-16 15:41:54 +02:00
|
|
|
}
|
|
|
|
|
2022-02-02 12:32:30 +01:00
|
|
|
export interface IVersion {
|
2021-07-16 15:41:54 +02:00
|
|
|
oss: string;
|
|
|
|
enterprise: string;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface ILinks {
|
|
|
|
value: string;
|
2022-06-02 10:58:55 +02:00
|
|
|
icon: ReactNode;
|
2021-07-16 15:41:54 +02:00
|
|
|
href: string;
|
|
|
|
title: string;
|
|
|
|
}
|