@devtron-labs/devtron-fe-common-lib 0.1.18 → 0.1.19-beta-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/dist/Common/Api.d.ts +5 -5
  2. package/dist/Common/AppStatus/constants.d.ts +5 -0
  3. package/dist/Common/CIPipeline.Types.d.ts +4 -1
  4. package/dist/Common/Constants.d.ts +2 -0
  5. package/dist/Common/CustomInput/Types.d.ts +2 -2
  6. package/dist/Common/Modals/VisibleModal.d.ts +1 -1
  7. package/dist/Common/Modals/VisibleModal2.d.ts +1 -1
  8. package/dist/Common/MultiSelectCustomization.d.ts +1 -1
  9. package/dist/Common/Types.d.ts +4 -3
  10. package/dist/Shared/Components/DetectBottom/DetectBottom.component.d.ts +2 -1
  11. package/dist/Shared/Components/EditImageFormField/EditImageFormField.d.ts +19 -0
  12. package/dist/Shared/Components/EditImageFormField/constants.d.ts +7 -0
  13. package/dist/Shared/Components/EditImageFormField/index.d.ts +2 -0
  14. package/dist/Shared/Components/EditImageFormField/types.d.ts +41 -0
  15. package/dist/Shared/Components/Header/types.d.ts +1 -12
  16. package/dist/Shared/Components/Plugin/service.d.ts +4 -2
  17. package/dist/Shared/Components/Plugin/types.d.ts +11 -3
  18. package/dist/Shared/Components/Plugin/utils.d.ts +3 -0
  19. package/dist/Shared/Components/SelectPicker/SelectPicker.component.d.ts +1 -1
  20. package/dist/Shared/Components/SelectPicker/type.d.ts +10 -1
  21. package/dist/Shared/Components/index.d.ts +1 -0
  22. package/dist/Shared/constants.d.ts +27 -1
  23. package/dist/Shared/types.d.ts +9 -1
  24. package/dist/Shared/validations.d.ts +11 -0
  25. package/dist/assets/index.css +1 -1
  26. package/dist/{cssMode-3aac14c5.js → cssMode-a009bf29.js} +1 -1
  27. package/dist/{freemarker2-15835773.js → freemarker2-802b12b0.js} +1 -1
  28. package/dist/{handlebars-de4f713a.js → handlebars-4f0420f1.js} +1 -1
  29. package/dist/{html-2fac152a.js → html-21a9a478.js} +1 -1
  30. package/dist/{htmlMode-7dcbd742.js → htmlMode-610c4063.js} +1 -1
  31. package/dist/{index-d88afc22.js → index-a20388fd.js} +20775 -20575
  32. package/dist/index.d.ts +2 -1
  33. package/dist/index.js +475 -467
  34. package/dist/{javascript-17951f16.js → javascript-5feedefd.js} +1 -1
  35. package/dist/{jsonMode-d76d5933.js → jsonMode-8f6a8950.js} +1 -1
  36. package/dist/{liquid-07f2aca3.js → liquid-60cf834d.js} +1 -1
  37. package/dist/{mdx-bd3403fa.js → mdx-26791043.js} +1 -1
  38. package/dist/{python-ebb2f21a.js → python-b4d2da5f.js} +1 -1
  39. package/dist/{razor-1c88cdce.js → razor-cb4e4bb2.js} +1 -1
  40. package/dist/{tsMode-004e9209.js → tsMode-e8f57108.js} +1 -1
  41. package/dist/{typescript-e7103b4a.js → typescript-7efe1a8a.js} +1 -1
  42. package/dist/{xml-bedff5fa.js → xml-3b59718c.js} +1 -1
  43. package/dist/{yaml-06c7609a.js → yaml-6d6e34a8.js} +1 -1
  44. package/package.json +1 -1
  45. package/dist/Shared/Components/Header/HeaderWithCreateButton/constants.d.ts +0 -22
@@ -1,11 +1,11 @@
1
1
  import { MutableRefObject } from 'react';
2
2
  import { ResponseType, APIOptions } from './Types';
3
3
 
4
- export declare const post: (url: string, data: object, options?: APIOptions, isMultipartRequest?: boolean) => Promise<ResponseType>;
5
- export declare const put: (url: string, data: object, options?: APIOptions) => Promise<ResponseType>;
6
- export declare const patch: (url: string, data: object, options?: APIOptions) => Promise<ResponseType>;
7
- export declare const get: (url: string, options?: APIOptions) => Promise<ResponseType>;
8
- export declare const trash: (url: string, data?: object, options?: APIOptions) => Promise<ResponseType>;
4
+ export declare const post: <T = any, K = object>(url: string, data: K, options?: APIOptions, isMultipartRequest?: boolean) => Promise<ResponseType<T>>;
5
+ export declare const put: <T = any, K = object>(url: string, data: K, options?: APIOptions) => Promise<ResponseType<T>>;
6
+ export declare const patch: <T = any, K = object>(url: string, data: K, options?: APIOptions) => Promise<ResponseType<T>>;
7
+ export declare const get: <T = any>(url: string, options?: APIOptions) => Promise<ResponseType<T>>;
8
+ export declare const trash: <T = any, K = object>(url: string, data?: K, options?: APIOptions) => Promise<ResponseType<T>>;
9
9
  /**
10
10
  * Aborts the previous request before triggering next request
11
11
  */
@@ -4,6 +4,11 @@ export declare const StatusConstants: {
4
4
  normalCase: string;
5
5
  lowerCase: string;
6
6
  };
7
+ NOT_READY: {
8
+ noSpaceLower: string;
9
+ normalCase: string;
10
+ lowerCase: string;
11
+ };
7
12
  APP_STATUS: {
8
13
  noSpaceLower: string;
9
14
  normalText: string;
@@ -77,6 +77,7 @@ export interface VariableType {
77
77
  format: string;
78
78
  description: string;
79
79
  defaultValue: string;
80
+ allowEmptyValue: boolean;
80
81
  variableType: RefVariableType;
81
82
  refVariableStepIndex: number;
82
83
  refVariableName: string;
@@ -98,7 +99,7 @@ interface ConditionDetails {
98
99
  conditionType: ConditionType;
99
100
  conditionalValue: string;
100
101
  }
101
- interface InlineStepDetailType {
102
+ export interface InlineStepDetailType {
102
103
  scriptType: ScriptType;
103
104
  isMountCustomScript?: boolean;
104
105
  script?: string;
@@ -117,6 +118,8 @@ interface InlineStepDetailType {
117
118
  inputVariables?: VariableType[];
118
119
  outputVariables?: VariableType[];
119
120
  conditionDetails: ConditionDetails[];
121
+ storeScriptAt?: string;
122
+ mountCodeToContainerPath?: string;
120
123
  }
121
124
  interface PluginRefStepDetailType {
122
125
  id: number;
@@ -78,6 +78,7 @@ export declare const ROUTES: {
78
78
  PLUGIN_GLOBAL_LIST_DETAIL_V2: string;
79
79
  PLUGIN_GLOBAL_LIST_V2: string;
80
80
  PLUGIN_GLOBAL_LIST_TAGS: string;
81
+ PLUGIN_LIST_MIN: string;
81
82
  };
82
83
  export declare enum KEY_VALUE {
83
84
  KEY = "key",
@@ -267,3 +268,4 @@ export declare const DATE_TIME_FORMATS: {
267
268
  DD_MMM_YYYY_HH_MM: string;
268
269
  DD_MMM_YYYY: string;
269
270
  };
271
+ export declare const SEMANTIC_VERSION_DOCUMENTATION_LINK = "https://semver.org/";
@@ -1,4 +1,4 @@
1
- import { default as React, HTMLInputTypeAttribute, InputHTMLAttributes } from 'react';
1
+ import { default as React, HTMLInputTypeAttribute, InputHTMLAttributes, ReactNode } from 'react';
2
2
 
3
3
  export interface CustomInputProps {
4
4
  name: string;
@@ -17,7 +17,7 @@ export interface CustomInputProps {
17
17
  autoFocus?: boolean;
18
18
  rootClassName?: string;
19
19
  error?: string[] | string;
20
- helperText?: string;
20
+ helperText?: ReactNode;
21
21
  handleOnBlur?: (e: any) => void;
22
22
  readOnly?: boolean;
23
23
  noTrim?: boolean;
@@ -1,7 +1,7 @@
1
1
  import { default as React, SyntheticEvent } from 'react';
2
2
 
3
3
  export declare class VisibleModal extends React.Component<{
4
- className: string;
4
+ className?: string;
5
5
  parentClassName?: string;
6
6
  noBackground?: boolean;
7
7
  close?: (e: any) => void;
@@ -1,7 +1,7 @@
1
1
  import { default as React, SyntheticEvent } from 'react';
2
2
 
3
3
  export declare class VisibleModal2 extends React.Component<{
4
- className: string;
4
+ className?: string;
5
5
  close?: (e: any) => void;
6
6
  }> {
7
7
  modalRef: HTMLElement;
@@ -4,7 +4,7 @@ export declare const Option: (props: any) => JSX.Element;
4
4
  export declare const SingleSelectOption: (props: any) => JSX.Element;
5
5
  /**
6
6
  * Multi value container
7
- */
7
+ */
8
8
  export declare const MultiValueContainer: (props: any) => JSX.Element;
9
9
  /**
10
10
  *
@@ -177,10 +177,10 @@ export interface RadioGroupItemProps {
177
177
  export interface RadioGroupInterface {
178
178
  name: string;
179
179
  onChange: any;
180
- className?: string;
181
180
  initialTab: string;
182
- disabled: boolean;
183
181
  children: ReactNode;
182
+ disabled?: boolean;
183
+ className?: string;
184
184
  }
185
185
  export interface RadioInterface {
186
186
  children: ReactNode;
@@ -488,7 +488,8 @@ export declare enum DeploymentAppTypes {
488
488
  HELM = "helm",
489
489
  GITOPS = "argo_cd",
490
490
  MANIFEST_DOWNLOAD = "manifest_download",
491
- MANIFEST_PUSH = "manifest_push"
491
+ MANIFEST_PUSH = "manifest_push",
492
+ FLUX = "flux"
492
493
  }
493
494
  export interface VulnerabilityType {
494
495
  name: string;
@@ -1,5 +1,6 @@
1
1
  interface DetectBottomProps {
2
2
  callback: () => void;
3
+ hasError?: boolean;
3
4
  }
4
- declare const DetectBottom: ({ callback }: DetectBottomProps) => JSX.Element;
5
+ declare const DetectBottom: ({ callback, hasError }: DetectBottomProps) => JSX.Element;
5
6
  export default DetectBottom;
@@ -0,0 +1,19 @@
1
+ import { EditImageFormFieldProps } from './types';
2
+
3
+ /**
4
+ * @example
5
+ * ```tsx
6
+ * <EditImageFormField
7
+ * url={icon}
8
+ * defaultIcon={<ICSampleIcon className="w-100 h-100 dc__opacity-1 p-5" />}
9
+ * errorMessage={formError.icon}
10
+ * handleError={handleError}
11
+ * handleURLChange={handleURLChange}
12
+ * ariaLabelPrefix="Edit icon url"
13
+ * dataTestIdPrefix="edit-icon-url"
14
+ * altText="Form icon"
15
+ * />
16
+ * ```
17
+ */
18
+ declare const EditImageFormField: ({ defaultIcon, errorMessage, handleError, url, handleURLChange, ariaLabelPrefix, dataTestIdPrefix, altText, }: EditImageFormFieldProps) => JSX.Element;
19
+ export default EditImageFormField;
@@ -0,0 +1,7 @@
1
+ export declare const DEFAULT_MAX_IMAGE_SIZE: number;
2
+ export declare const DEFAULT_IMAGE_DIMENSIONS: {
3
+ readonly width: 72;
4
+ readonly height: 72;
5
+ };
6
+ export declare const EMPTY_PREVIEW_URL_ERROR_MESSAGE = "Please provide image URL to preview";
7
+ export declare const BASE_IMAGE_CLASS = "edit-image-form-field__figure-container--base-image";
@@ -0,0 +1,2 @@
1
+ export { default as EditImageFormField } from './EditImageFormField';
2
+ export * from './types';
@@ -0,0 +1,41 @@
1
+ import { ReactElement } from 'react';
2
+
3
+ export interface EditImageFormFieldProps {
4
+ /**
5
+ * Fallback icon to be shown when image is not available
6
+ */
7
+ defaultIcon: ReactElement;
8
+ /**
9
+ * Would be shown below input, there are two types of error messages:
10
+ * External - Error message handled from state above and would propagate to parent through handleError
11
+ * Internal - Error message handled internally and would not propagate to parent, like empty preview URL
12
+ */
13
+ errorMessage: string;
14
+ /**
15
+ * Would be called when there is an error in the image URL during handleChange or handlePreviewImage
16
+ */
17
+ handleError: (error: string) => void;
18
+ /**
19
+ * The current value of input field
20
+ */
21
+ url: string;
22
+ /**
23
+ * Would be called when the URL is changed in the input field
24
+ */
25
+ handleURLChange: (url: string) => void;
26
+ /**
27
+ * The alt text for the image
28
+ */
29
+ altText: string;
30
+ /**
31
+ * Prefix for aria-label
32
+ */
33
+ ariaLabelPrefix: string;
34
+ /**
35
+ * Prefix for data-testid
36
+ */
37
+ dataTestIdPrefix: string;
38
+ }
39
+ export interface FallbackImageProps extends Pick<EditImageFormFieldProps, 'defaultIcon'> {
40
+ showEditIcon: boolean;
41
+ }
@@ -1,3 +1,4 @@
1
+ import { ModuleStatus } from '../../types';
1
2
  import { ResponseType, TippyCustomizedProps } from '../../../Common';
2
3
 
3
4
  export declare enum InstallationType {
@@ -5,18 +6,6 @@ export declare enum InstallationType {
5
6
  OSS_HELM = "oss_helm",
6
7
  ENTERPRISE = "enterprise"
7
8
  }
8
- export declare enum ModuleStatus {
9
- HEALTHY = "healthy",
10
- NONE = "none",
11
- UNKNOWN = "unknown",
12
- UPGRADING = "upgrading",
13
- UPGRADE_FAILED = "upgradeFailed",
14
- INSTALLED = "installed",
15
- INSTALLING = "installing",
16
- INSTALL_FAILED = "installFailed",
17
- NOT_INSTALLED = "notInstalled",
18
- TIMEOUT = "timeout"
19
- }
20
9
  export interface PageHeaderType {
21
10
  headerName?: string;
22
11
  showTabs?: boolean;
@@ -1,5 +1,7 @@
1
- import { GetPluginStoreDataReturnType, GetPluginStoreDataServiceParamsType, PluginDetailServiceParamsType } from './types';
1
+ import { ResponseType } from '../../../Common';
2
+ import { GetPluginStoreDataReturnType, GetPluginStoreDataServiceParamsType, MinParentPluginDTO, PluginDetailServiceParamsType } from './types';
2
3
 
3
- export declare const getPluginsDetail: ({ appId, parentPluginIds, pluginIds, shouldShowError, }: PluginDetailServiceParamsType) => Promise<Pick<GetPluginStoreDataReturnType, 'pluginStore'>>;
4
+ export declare const getPluginsDetail: ({ appId, parentPluginIds, pluginIds, signal, shouldShowError, }: PluginDetailServiceParamsType) => Promise<Pick<GetPluginStoreDataReturnType, 'pluginStore'>>;
4
5
  export declare const getPluginStoreData: ({ searchKey, selectedTags, appId, offset, signal, }: GetPluginStoreDataServiceParamsType) => Promise<GetPluginStoreDataReturnType>;
5
6
  export declare const getAvailablePluginTags: (appId: number) => Promise<string[]>;
7
+ export declare const getParentPluginList: (appId?: number) => Promise<ResponseType<MinParentPluginDTO[]>>;
@@ -8,9 +8,13 @@ export declare enum PluginCreationType {
8
8
  SHARED = "SHARED",
9
9
  PRESET = "PRESET"
10
10
  }
11
- export interface GetPluginTagsPayloadType {
11
+ export interface PluginAPIBaseQueryParamsType {
12
12
  appId: number;
13
13
  }
14
+ export interface GetPluginTagsPayloadType extends PluginAPIBaseQueryParamsType {
15
+ }
16
+ export interface GetParentPluginListPayloadType extends PluginAPIBaseQueryParamsType {
17
+ }
14
18
  export interface PluginTagNamesDTO {
15
19
  tagNames: string[];
16
20
  }
@@ -45,6 +49,9 @@ export interface ParentPluginDTO {
45
49
  type: PluginCreationType;
46
50
  icon: string;
47
51
  pluginVersions: PluginVersionsDTO;
52
+ pluginIdentifier: string;
53
+ }
54
+ export interface MinParentPluginDTO extends Pick<ParentPluginDTO, 'id' | 'name' | 'icon'> {
48
55
  }
49
56
  export interface PluginDetailDTO {
50
57
  parentPlugins: ParentPluginDTO[];
@@ -58,6 +65,7 @@ export interface PluginDetailServiceParamsType {
58
65
  * @default true
59
66
  */
60
67
  shouldShowError?: boolean;
68
+ signal?: AbortSignal;
61
69
  }
62
70
  export interface PluginDetailPayloadType extends Pick<PluginDetailServiceParamsType, 'appId'> {
63
71
  pluginId?: PluginDetailServiceParamsType['pluginIds'];
@@ -66,11 +74,11 @@ export interface PluginDetailPayloadType extends Pick<PluginDetailServiceParamsT
66
74
  export interface PluginListFiltersType extends Pick<BaseFilterQueryParams<unknown>, 'searchKey'> {
67
75
  selectedTags: string[];
68
76
  }
69
- interface ParentPluginType extends Pick<ParentPluginDTO, 'id' | 'name' | 'description' | 'type' | 'icon'> {
77
+ interface ParentPluginType extends Pick<ParentPluginDTO, 'id' | 'name' | 'description' | 'type' | 'icon' | 'pluginIdentifier'> {
70
78
  latestVersionId: MinimalPluginVersionDataDTO['id'];
71
79
  pluginVersions: MinimalPluginVersionDataDTO[];
72
80
  }
73
- interface DetailedPluginVersionType extends Pick<MinimalPluginVersionDataDTO, 'id' | 'description' | 'name' | 'pluginVersion'>, Pick<DetailedPluginVersionDTO, 'tags' | 'isLatest' | 'inputVariables' | 'outputVariables' | 'updatedBy' | 'docLink'>, Pick<ParentPluginType, 'icon' | 'type'> {
81
+ interface DetailedPluginVersionType extends Pick<MinimalPluginVersionDataDTO, 'id' | 'description' | 'name' | 'pluginVersion'>, Pick<DetailedPluginVersionDTO, 'tags' | 'isLatest' | 'inputVariables' | 'outputVariables' | 'updatedBy' | 'docLink'>, Pick<ParentPluginType, 'icon' | 'type' | 'pluginIdentifier'> {
74
82
  parentPluginId: ParentPluginType['id'];
75
83
  }
76
84
  export interface PluginDataStoreType {
@@ -1,3 +1,5 @@
1
+ import { OptionProps } from 'react-select';
2
+ import { OptionType } from '../../../Common/Types';
1
3
  import { ParentPluginDTO, PluginDataStoreType } from './types';
2
4
 
3
5
  export declare const parsePluginDetailsDTOIntoPluginStore: (pluginData: ParentPluginDTO[]) => PluginDataStoreType;
@@ -14,6 +16,7 @@ export declare const pluginTagSelectStyles: {
14
16
  group: (base: any) => any;
15
17
  groupHeading: (base: any) => any;
16
18
  };
19
+ export declare const PluginTagOption: (props: OptionProps<OptionType, true>) => JSX.Element;
17
20
  /**
18
21
  * @description This method takes the initial plugin data store and updates the keys with the target parent plugin store and plugin version store
19
22
  */
@@ -81,5 +81,5 @@ import { SelectPickerProps } from './type';
81
81
  * <SelectPicker ... showSelectedOptionsCount />
82
82
  * ```
83
83
  */
84
- declare const SelectPicker: ({ error, icon, renderMenuListFooter, helperText, placeholder, label, showSelectedOptionIcon, size, disabledTippyContent, showSelectedOptionsCount, menuSize, ...props }: SelectPickerProps) => JSX.Element;
84
+ declare const SelectPicker: ({ error, icon, renderMenuListFooter, helperText, placeholder, label, showSelectedOptionIcon, size, disabledTippyContent, showSelectedOptionsCount, menuSize, optionListError, reloadOptionList, ...props }: SelectPickerProps) => JSX.Element;
85
85
  export default SelectPicker;
@@ -1,3 +1,4 @@
1
+ import { ServerErrors } from '../../../Common/ServerError';
1
2
  import { OptionType } from '../../../Common/Types';
2
3
  import { ComponentSizeType } from '../../constants';
3
4
  import { ReactElement, ReactNode } from 'react';
@@ -18,7 +19,7 @@ export interface SelectPickerOptionType extends OptionType<number | string, Reac
18
19
  endIcon?: ReactElement;
19
20
  }
20
21
  type SelectProps = ReactSelectProps<SelectPickerOptionType>;
21
- export interface SelectPickerProps extends Pick<SelectProps, 'options' | 'value' | 'onChange' | 'isSearchable' | 'isClearable' | 'isLoading' | 'hideSelectedOptions' | 'controlShouldRenderValue' | 'closeMenuOnSelect' | 'isDisabled' | 'isLoading' | 'required' | 'isOptionDisabled' | 'placeholder'>, Required<Pick<SelectProps, 'classNamePrefix' | 'inputId' | 'name'>> {
22
+ export interface SelectPickerProps extends Pick<SelectProps, 'options' | 'value' | 'onChange' | 'isSearchable' | 'isClearable' | 'isLoading' | 'hideSelectedOptions' | 'controlShouldRenderValue' | 'closeMenuOnSelect' | 'isDisabled' | 'isLoading' | 'required' | 'isOptionDisabled' | 'placeholder' | 'autoFocus' | 'onKeyDown'>, Required<Pick<SelectProps, 'classNamePrefix' | 'inputId' | 'name'>> {
22
23
  /**
23
24
  * Icon to be rendered in the control
24
25
  */
@@ -70,5 +71,13 @@ export interface SelectPickerProps extends Pick<SelectProps, 'options' | 'value'
70
71
  * @default 'ComponentSizeType.small'
71
72
  */
72
73
  menuSize?: ComponentSizeType;
74
+ /**
75
+ * If truthy, would show generic section error state as no options message
76
+ */
77
+ optionListError?: ServerErrors;
78
+ /**
79
+ * Would reload the option list when called in case optionListError is present
80
+ */
81
+ reloadOptionList?: () => void;
73
82
  }
74
83
  export {};
@@ -34,3 +34,4 @@ export * from './Plugin';
34
34
  export * from './KeyValueTable';
35
35
  export * from './SelectPicker';
36
36
  export * from './DetectBottom';
37
+ export * from './EditImageFormField';
@@ -349,10 +349,35 @@ export declare const statusColor: {
349
349
  };
350
350
  export declare const APP_STATUS_HEADERS: string[];
351
351
  export declare const MATERIAL_EXCLUDE_TIPPY_TEXT = "Not available for build as this commit contains changes in excluded files or folders";
352
+ export declare const AppListConstants: {
353
+ SAMPLE_NODE_REPO_URL: string;
354
+ CREATE_DEVTRON_APP_URL: string;
355
+ AppTabs: {
356
+ DEVTRON_APPS: string;
357
+ HELM_APPS: string;
358
+ ARGO_APPS: string;
359
+ FLUX_APPS: string;
360
+ };
361
+ AppType: {
362
+ DEVTRON_APPS: string;
363
+ HELM_APPS: string;
364
+ ARGO_APPS: string;
365
+ FLUX_APPS: string;
366
+ };
367
+ FilterType: {
368
+ PROJECT: string;
369
+ CLUTSER: string;
370
+ NAMESPACE: string;
371
+ ENVIRONMENT: string;
372
+ APP_STATUS: string;
373
+ TEMPLATE_TYPE: string;
374
+ };
375
+ };
352
376
  export declare enum K8sResourcePayloadAppType {
353
377
  DEVTRON_APP = 0,
354
378
  HELM_APP = 1,
355
- EXTERNAL_ARGO_APP = 2
379
+ EXTERNAL_ARGO_APP = 2,
380
+ EXTERNAL_FLUX_APP = 3
356
381
  }
357
382
  export declare const ANSI_UP_REGEX: RegExp;
358
383
  /**
@@ -363,3 +388,4 @@ export declare enum ComponentSizeType {
363
388
  medium = "medium",
364
389
  large = "large"
365
390
  }
391
+ export declare const POP_UP_MENU_MODAL_ID = "popup";
@@ -124,7 +124,8 @@ export declare enum AppType {
124
124
  DEVTRON_APP = "devtron_app",
125
125
  DEVTRON_HELM_CHART = "devtron_helm_chart",
126
126
  EXTERNAL_HELM_CHART = "external_helm_chart",
127
- EXTERNAL_ARGO_APP = "external_argo_app"
127
+ EXTERNAL_ARGO_APP = "external_argo_app",
128
+ EXTERNAL_FLUX_APP = "external_flux_app"
128
129
  }
129
130
  export interface HelmReleaseStatus {
130
131
  status: string;
@@ -140,6 +141,11 @@ interface MaterialInfo {
140
141
  url: string;
141
142
  webhookData: string;
142
143
  }
144
+ export interface FluxAppStatusDetail {
145
+ status: string;
146
+ message: string;
147
+ reason: string;
148
+ }
143
149
  export interface AppDetails {
144
150
  appId?: number;
145
151
  appName: string;
@@ -181,6 +187,8 @@ export interface AppDetails {
181
187
  helmPackageName?: string;
182
188
  appStatus?: string;
183
189
  chartAvatar?: string;
190
+ fluxTemplateType?: string;
191
+ FluxAppStatusDetail?: FluxAppStatusDetail;
184
192
  }
185
193
  export declare enum RegistryType {
186
194
  GIT = "git",
@@ -12,6 +12,7 @@ export declare const MESSAGES: {
12
12
  VALID_POSITIVE_NUMBER: string;
13
13
  VALID_POSITIVE_INTEGER: string;
14
14
  MAX_SAFE_INTEGER: string;
15
+ INVALID_SEMANTIC_VERSION: string;
15
16
  };
16
17
  export declare const requiredField: (value: string) => ValidationResponseType;
17
18
  export declare const validateName: (name: string) => ValidationResponseType;
@@ -28,3 +29,13 @@ export declare const validateUniqueKeys: (keys: string[]) => {
28
29
  isValid: boolean;
29
30
  message: string;
30
31
  };
32
+ /**
33
+ * Rules for valid semantic version:
34
+ * 1. version.length < 128 and not empty
35
+ * 2. version should follow semantic versioning regex from https://semver.org/
36
+ */
37
+ export declare const validateSemanticVersioning: (version: string) => ValidationResponseType;
38
+ /**
39
+ * A valid display name should be between 3 and 50 characters
40
+ */
41
+ export declare const validateDisplayName: (name: string) => ValidationResponseType;