@devtron-labs/devtron-fe-common-lib 1.2.2-beta-1 → 1.2.2-beta-3

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.
@@ -2,7 +2,7 @@ import { j as n, J as A } from "./@vendor-RU8AW1bK.js";
2
2
  import E, { forwardRef as $ } from "react";
3
3
  import L, { getDefaultRegistry as k } from "@rjsf/core";
4
4
  import D from "@rjsf/validator-ajv8";
5
- import { T as y, c as H, a as J, d as w } from "./@code-editor-Dnez6SNz.js";
5
+ import { T as y, c as H, a as J, d as w } from "./@code-editor-DiCzooMi.js";
6
6
  import M, { components as O } from "react-select";
7
7
  import { getUiOptions as B, getTemplate as I, getSubmitButtonOptions as U, ADDITIONAL_PROPERTY_FLAG as P, errorId as W, englishStringTranslator as V, TranslatableString as q, titleId as K, canExpand as Y, deepEquals as z } from "@rjsf/utils";
8
8
  import { ReactComponent as G } from "./assets/ic-chevron-down.fc70d7a7.svg";
@@ -12,7 +12,6 @@ export declare const DOCUMENTATION: {
12
12
  GLOBAL_CONFIG_BUILD_INFRA: string;
13
13
  };
14
14
  export declare const PATTERNS: {
15
- STRING: RegExp;
16
15
  KUBERNETES_KEY_PREFIX: RegExp;
17
16
  KUBERNETES_KEY_NAME: RegExp;
18
17
  START_END_ALPHANUMERIC: RegExp;
@@ -5,16 +5,6 @@ export interface SuggestedTagOptionType extends OptionType {
5
5
  description: string;
6
6
  propagate: boolean;
7
7
  }
8
- export declare enum DeploymentPolicy {
9
- ALLOW = "allow",
10
- BLOCK = "block",
11
- BLOCK_PROD = "block-prod",
12
- BLOCK_NON_PROD = "block-non-prod"
13
- }
14
- export interface VariableValueConstraintTypes {
15
- choices?: string[];
16
- blockCustomValue?: boolean;
17
- }
18
8
  export interface TagType {
19
9
  id?: number;
20
10
  key: string;
@@ -26,8 +16,6 @@ export interface TagType {
26
16
  isInvalidValue?: boolean;
27
17
  isSuggested?: boolean;
28
18
  isPropagateDisabled?: boolean;
29
- deploymentPolicy?: DeploymentPolicy;
30
- valueConstraint?: VariableValueConstraintTypes;
31
19
  }
32
20
  export interface TagErrorType {
33
21
  isValid: boolean;
@@ -1,6 +1,6 @@
1
1
  import { default as React, SyntheticEvent } from 'react';
2
2
  import { JSONPathOptions } from 'jsonpath-plus';
3
- import { AsyncOptions, DeploymentNodeType, UseSearchString } from './Types';
3
+ import { AsyncOptions, UseSearchString } from './Types';
4
4
  import { scrollableInterface } from '../Shared';
5
5
  export declare function showError(serverError: any, showToastOnUnknownError?: boolean, hideAccessError?: boolean): void;
6
6
  interface ConditionalWrapper<T> {
@@ -133,5 +133,4 @@ export declare const getSanitizedIframe: (iframeString: string) => string;
133
133
  * This method adds default attributes to iframe - title, loading ="lazy", width="100%", height="100%"
134
134
  */
135
135
  export declare const getIframeWithDefaultAttributes: (iframeString: string, defaultName?: string) => string;
136
- export declare const getStageTitle: (stageType: DeploymentNodeType) => string;
137
136
  export {};
@@ -3,7 +3,7 @@ import { TippyProps } from '@tippyjs/react';
3
3
  import { Placement } from 'tippy.js';
4
4
  import { UserGroupDTO } from '../Pages/GlobalConfigurations';
5
5
  import { ImageComment, ReleaseTag } from './ImageTags.Types';
6
- import { MandatoryPluginBaseStateType, PolicyBlockInfo, RegistryType, RuntimeParamsListItemType, Severity } from '../Shared';
6
+ import { MandatoryPluginBaseStateType, RegistryType, RuntimeParamsListItemType, Severity } from '../Shared';
7
7
  import { ACTION_STATE, DEPLOYMENT_WINDOW_TYPE, DockerConfigOverrideType, SortingOrder, TaskErrorObj } from '.';
8
8
  /**
9
9
  * Generic response type object with support for overriding the result type
@@ -432,10 +432,6 @@ export interface CDMaterialType {
432
432
  * Would currently only be received in case of release
433
433
  */
434
434
  appWorkflowId: number;
435
- /**
436
- * Denotes trigger blocking due to mandatory tags, (might be used for plugins and other features in future)
437
- */
438
- deploymentBlockedState?: PolicyBlockInfo;
439
435
  }
440
436
  export declare enum CDMaterialServiceEnum {
441
437
  ROLLBACK = "rollback",
@@ -472,14 +468,6 @@ export interface DownstreamNodesEnvironmentsType {
472
468
  environmentId: number;
473
469
  environmentName: string;
474
470
  }
475
- export declare enum TriggerBlockType {
476
- MANDATORY_TAG = "mandatory-tags",
477
- MANDATORY_PLUGIN = "mandatory-plugins"
478
- }
479
- export interface TriggerBlockedInfo {
480
- blockedBy: TriggerBlockType;
481
- blockedReason?: string;
482
- }
483
471
  export interface CommonNodeAttr extends Pick<MandatoryPluginBaseStateType, 'isTriggerBlocked' | 'pluginBlockState'> {
484
472
  connectingCiPipelineId?: number;
485
473
  parents: string | number[] | string[];
@@ -542,7 +530,6 @@ export interface CommonNodeAttr extends Pick<MandatoryPluginBaseStateType, 'isTr
542
530
  downstreamEnvironments?: DownstreamNodesEnvironmentsType[];
543
531
  cipipelineId?: number;
544
532
  isDeploymentBlocked?: boolean;
545
- triggerBlockedInfo?: TriggerBlockedInfo;
546
533
  }
547
534
  export declare enum DeploymentAppTypes {
548
535
  HELM = "helm",
@@ -606,7 +593,6 @@ export interface CDMaterialsMetaInfo {
606
593
  */
607
594
  requestedUserId: number;
608
595
  runtimeParams: RuntimeParamsListItemType[];
609
- deploymentBlockedState?: PolicyBlockInfo;
610
596
  }
611
597
  export interface ImagePromotionMaterialInfo {
612
598
  isApprovalPendingForPromotion: boolean;
@@ -700,7 +686,6 @@ export interface PrePostDeployStageType extends MandatoryPluginBaseStateType {
700
686
  triggerType: string;
701
687
  name: string;
702
688
  status: string;
703
- triggerBlockedInfo?: TriggerBlockedInfo;
704
689
  }
705
690
  export interface CdPipeline {
706
691
  id: number;
@@ -734,8 +719,6 @@ export interface CdPipeline {
734
719
  isProdEnv?: boolean;
735
720
  isGitOpsRepoNotConfigured?: boolean;
736
721
  isDeploymentBlocked?: boolean;
737
- isTriggerBlocked?: boolean;
738
- triggerBlockedInfo?: TriggerBlockedInfo;
739
722
  }
740
723
  export interface ExternalCiConfig {
741
724
  id: number;
@@ -1,2 +1,2 @@
1
1
  import { DynamicDataTableProps } from './types';
2
- export declare const DynamicDataTable: <K extends string>({ headers, ...props }: DynamicDataTableProps<K>) => JSX.Element;
2
+ export declare const DynamicDataTable: <K extends string, CustomStateType = Record<string, unknown>>({ headers, ...props }: DynamicDataTableProps<K, CustomStateType>) => JSX.Element;
@@ -1,2 +1,2 @@
1
1
  import { DynamicDataTableHeaderProps } from './types';
2
- export declare const DynamicDataTableHeader: <K extends string>({ headers, rows, sortingConfig, onRowAdd, readOnly, isAdditionNotAllowed, isDeletionNotAllowed, headerComponent, actionButtonConfig, }: DynamicDataTableHeaderProps<K>) => JSX.Element;
2
+ export declare const DynamicDataTableHeader: <K extends string, CustomStateType = Record<string, unknown>>({ headers, rows, sortingConfig, onRowAdd, readOnly, isAdditionNotAllowed, isDeletionNotAllowed, headerComponent, actionButtonConfig, }: DynamicDataTableHeaderProps<K, CustomStateType>) => JSX.Element;
@@ -1,2 +1,2 @@
1
1
  import { DynamicDataTableRowProps } from './types';
2
- export declare const DynamicDataTableRow: <K extends string>({ rows, headers, maskValue, readOnly, isAdditionNotAllowed, isDeletionNotAllowed, validationSchema, showError, actionButtonConfig, onRowEdit, onRowDelete, leadingCellIcon, trailingCellIcon, }: DynamicDataTableRowProps<K>) => JSX.Element;
2
+ export declare const DynamicDataTableRow: <K extends string, CustomStateType = Record<string, unknown>>({ rows, headers, maskValue, readOnly, isAdditionNotAllowed, isDeletionNotAllowed, validationSchema, showError, actionButtonConfig, onRowEdit, onRowDelete, leadingCellIcon, trailingCellIcon, buttonCellWrapComponent, }: DynamicDataTableRowProps<K, CustomStateType>) => JSX.Element;
@@ -1,9 +1,9 @@
1
- import { DetailedHTMLProps, ReactNode } from 'react';
1
+ import { DetailedHTMLProps, ReactElement, ReactNode } from 'react';
2
2
  import { SortingOrder } from '../../../Common/Constants';
3
3
  import { ResizableTagTextAreaProps } from '../../../Common/CustomTagSelector';
4
- import { InfoIconTippyProps } from '../../../Common/Types';
5
4
  import { SelectPickerOptionType, SelectPickerProps } from '../SelectPicker';
6
5
  import { SelectTextAreaProps } from '../SelectTextArea';
6
+ import { FileUploadProps } from '../FileUpload';
7
7
  /**
8
8
  * Interface representing header for a dynamic data table.
9
9
  * @template K - A string representing the key type.
@@ -19,14 +19,13 @@ export type DynamicDataTableHeaderType<K extends string> = {
19
19
  isSortable?: boolean;
20
20
  /** An optional boolean to control the visibility of the column. */
21
21
  isHidden?: boolean;
22
- /** An optional boolean to show the column */
23
- renderHelpTextForHeader?: () => ReactNode;
24
22
  };
25
23
  export declare enum DynamicDataTableRowDataType {
26
24
  TEXT = "text",
27
25
  DROPDOWN = "dropdown",
28
26
  SELECT_TEXT = "select-text",
29
- BUTTON = "button"
27
+ BUTTON = "button",
28
+ FILE_UPLOAD = "file-upload"
30
29
  }
31
30
  export type DynamicDataTableCellPropsMap = {
32
31
  [DynamicDataTableRowDataType.TEXT]: Omit<ResizableTagTextAreaProps, 'className' | 'minHeight' | 'maxHeight' | 'value' | 'onChange' | 'disabled' | 'disableOnBlurResizeToMinHeight' | 'refVar' | 'dependentRef'>;
@@ -38,26 +37,12 @@ export type DynamicDataTableCellPropsMap = {
38
37
  icon?: ReactNode;
39
38
  text: string;
40
39
  };
41
- };
42
- type DynamicDataTableCellExtendedPropsMap = {
43
- [DynamicDataTableRowDataType.TEXT]: {};
44
- [DynamicDataTableRowDataType.DROPDOWN]: {};
45
- [DynamicDataTableRowDataType.SELECT_TEXT]: {};
46
- [DynamicDataTableRowDataType.BUTTON]: {
47
- wrap: true;
48
- wrapRenderer: (props: {
49
- children: JSX.Element;
50
- customState?: Record<string, any>;
51
- }) => JSX.Element;
52
- } | {
53
- wrap?: false;
54
- wrapRenderer?: never;
55
- };
40
+ [DynamicDataTableRowDataType.FILE_UPLOAD]: Omit<FileUploadProps, 'className' | 'fileName' | 'onUpload' | 'multiple'>;
56
41
  };
57
42
  type DynamicDataTableCellData<T extends keyof DynamicDataTableCellPropsMap = keyof DynamicDataTableCellPropsMap> = T extends keyof DynamicDataTableCellPropsMap ? {
58
43
  type: T;
59
44
  props: DynamicDataTableCellPropsMap[T];
60
- } & DynamicDataTableCellExtendedPropsMap[T] : never;
45
+ } : never;
61
46
  /**
62
47
  * Type representing a key-value row.
63
48
  * @template K - A string representing the key type.
@@ -78,14 +63,14 @@ export type DynamicDataTableRowType<K extends string, CustomStateType = Record<s
78
63
  type DynamicDataTableMask<K extends string> = {
79
64
  [key in K]?: boolean;
80
65
  };
81
- type DynamicDataTableCellIcon<K extends string> = {
82
- [key in K]?: (row: DynamicDataTableRowType<K>) => ReactNode;
66
+ type DynamicDataTableCellIcon<K extends string, CustomStateType = Record<string, unknown>> = {
67
+ [key in K]?: (row: DynamicDataTableRowType<K, CustomStateType>) => ReactNode;
83
68
  };
84
69
  /**
85
70
  * Interface representing the properties for the dynamic data table component.
86
71
  * @template K - A string representing the key type.
87
72
  */
88
- export type DynamicDataTableProps<K extends string> = {
73
+ export type DynamicDataTableProps<K extends string, CustomStateType = Record<string, unknown>> = {
89
74
  /**
90
75
  * An array containing the headers for the data table. \
91
76
  * Each header defines a column with its label, key, width, and optional settings.
@@ -94,7 +79,7 @@ export type DynamicDataTableProps<K extends string> = {
94
79
  /**
95
80
  * An array of rows where each row contains data corresponding to the table headers.
96
81
  */
97
- rows: DynamicDataTableRowType<K>[];
82
+ rows: DynamicDataTableRowType<K, CustomStateType>[];
98
83
  /** Optional configuration for sorting the table. */
99
84
  sortingConfig?: {
100
85
  sortBy: K;
@@ -104,9 +89,11 @@ export type DynamicDataTableProps<K extends string> = {
104
89
  /** An optional mask to hide the values of the cell. */
105
90
  maskValue?: DynamicDataTableMask<K>;
106
91
  /** Optional configuration for displaying an icon in the leading position of a cell. */
107
- leadingCellIcon?: DynamicDataTableCellIcon<K>;
92
+ leadingCellIcon?: DynamicDataTableCellIcon<K, CustomStateType>;
108
93
  /** Optional configuration for displaying an icon in the trailing position of a cell. */
109
- trailingCellIcon?: DynamicDataTableCellIcon<K>;
94
+ trailingCellIcon?: DynamicDataTableCellIcon<K, CustomStateType>;
95
+ /** An optional function to render a custom wrapper component for the type `DynamicDataTableRowDataType.BUTTON`. */
96
+ buttonCellWrapComponent?: (row: DynamicDataTableRowType<K, CustomStateType>) => ReactElement;
110
97
  /** An optional React node for a custom header component. */
111
98
  headerComponent?: ReactNode;
112
99
  /** When true, data addition field will not be shown. */
@@ -124,14 +111,15 @@ export type DynamicDataTableProps<K extends string> = {
124
111
  * @param value - The value of the cell.
125
112
  * @param extraData - Additional data, such as a selected value for dropdowns.
126
113
  */
127
- onRowEdit: (row: DynamicDataTableRowType<K>, headerKey: K, value: string, extraData: {
114
+ onRowEdit: (row: DynamicDataTableRowType<K, CustomStateType>, headerKey: K, value: string, extraData: {
115
+ files?: File[];
128
116
  selectedValue?: SelectPickerOptionType<string>;
129
117
  }) => void;
130
118
  /**
131
119
  * Function to handle row deletions.
132
120
  * @param row - The row that was deleted.
133
121
  */
134
- onRowDelete: (row: DynamicDataTableRowType<K>) => void;
122
+ onRowDelete: (row: DynamicDataTableRowType<K, CustomStateType>) => void;
135
123
  /** Optional configuration for rendering a custom action button in a row. */
136
124
  actionButtonConfig?: {
137
125
  /**
@@ -139,7 +127,7 @@ export type DynamicDataTableProps<K extends string> = {
139
127
  * @param row - The current row being rendered.
140
128
  * @returns A React node representing the action button.
141
129
  */
142
- renderer: (row: DynamicDataTableRowType<K>) => ReactNode;
130
+ renderer: (row: DynamicDataTableRowType<K, CustomStateType>) => ReactNode;
143
131
  /**
144
132
  * This represents under which header key the action button will be rendered.
145
133
  */
@@ -166,13 +154,13 @@ export type DynamicDataTableProps<K extends string> = {
166
154
  * @param row - The row containing the cell.
167
155
  * @returns An object with a boolean indicating validity and an array of error messages.
168
156
  */
169
- validationSchema?: (value: string, key: K, row: DynamicDataTableRowType<K>) => {
157
+ validationSchema?: (value: string, key: K, row: DynamicDataTableRowType<K, CustomStateType>) => {
170
158
  isValid: boolean;
171
159
  errorMessages: string[];
172
160
  };
173
161
  };
174
- export interface DynamicDataTableHeaderProps<K extends string> extends Pick<DynamicDataTableProps<K>, 'headers' | 'rows' | 'headerComponent' | 'sortingConfig' | 'onRowAdd' | 'readOnly' | 'isAdditionNotAllowed' | 'isDeletionNotAllowed' | 'actionButtonConfig'>, Pick<InfoIconTippyProps, 'heading' | 'additionalContent'> {
162
+ export interface DynamicDataTableHeaderProps<K extends string, CustomStateType = Record<string, unknown>> extends Pick<DynamicDataTableProps<K, CustomStateType>, 'headers' | 'rows' | 'headerComponent' | 'sortingConfig' | 'onRowAdd' | 'readOnly' | 'isAdditionNotAllowed' | 'isDeletionNotAllowed' | 'actionButtonConfig'> {
175
163
  }
176
- export interface DynamicDataTableRowProps<K extends string> extends Pick<DynamicDataTableProps<K>, 'rows' | 'headers' | 'maskValue' | 'isAdditionNotAllowed' | 'isDeletionNotAllowed' | 'readOnly' | 'onRowEdit' | 'onRowDelete' | 'actionButtonConfig' | 'showError' | 'validationSchema' | 'leadingCellIcon' | 'trailingCellIcon'> {
164
+ export interface DynamicDataTableRowProps<K extends string, CustomStateType = Record<string, unknown>> extends Pick<DynamicDataTableProps<K, CustomStateType>, 'rows' | 'headers' | 'maskValue' | 'isAdditionNotAllowed' | 'isDeletionNotAllowed' | 'readOnly' | 'onRowEdit' | 'onRowDelete' | 'actionButtonConfig' | 'showError' | 'validationSchema' | 'leadingCellIcon' | 'trailingCellIcon' | 'buttonCellWrapComponent'> {
177
165
  }
178
166
  export {};
@@ -1,5 +1,5 @@
1
1
  import { DynamicDataTableHeaderType, DynamicDataTableProps, DynamicDataTableRowDataType } from './types';
2
- export declare const getActionButtonPosition: <K extends string>({ headers, actionButtonConfig, }: Pick<DynamicDataTableProps<K>, "headers" | "actionButtonConfig">) => number;
3
- export declare const getHeaderGridTemplateColumn: <K extends string>(headers: DynamicDataTableHeaderType<K>[], actionButtonConfig: DynamicDataTableProps<K>["actionButtonConfig"], noDeleteBtn: boolean) => string;
4
- export declare const getRowGridTemplateColumn: <K extends string>(headers: DynamicDataTableHeaderType<K>[], actionButtonConfig: DynamicDataTableProps<K>["actionButtonConfig"], noDeleteBtn: boolean) => string;
2
+ export declare const getActionButtonPosition: <K extends string, CustomStateType = Record<string, unknown>>({ headers, actionButtonConfig, }: Pick<DynamicDataTableProps<K, CustomStateType>, "headers" | "actionButtonConfig">) => number;
3
+ export declare const getHeaderGridTemplateColumn: <K extends string, CustomStateType = Record<string, unknown>>(headers: DynamicDataTableHeaderType<K>[], actionButtonConfig: DynamicDataTableProps<K, CustomStateType>["actionButtonConfig"], noDeleteBtn: boolean) => string;
4
+ export declare const getRowGridTemplateColumn: <K extends string, CustomStateType = Record<string, unknown>>(headers: DynamicDataTableHeaderType<K>[], actionButtonConfig: DynamicDataTableProps<K, CustomStateType>["actionButtonConfig"], noDeleteBtn: boolean) => string;
5
5
  export declare const rowTypeHasInputField: (type: DynamicDataTableRowDataType) => boolean;
@@ -0,0 +1,2 @@
1
+ import { FileUploadProps } from './types';
2
+ export declare const FileUpload: ({ label, fileName, multiple, fileTypes, className, onUpload, }: FileUploadProps) => JSX.Element;
@@ -0,0 +1,2 @@
1
+ export * from './FileUpload';
2
+ export * from './types';
@@ -0,0 +1,8 @@
1
+ export interface FileUploadProps {
2
+ fileName: string;
3
+ onUpload: (files: File[]) => void;
4
+ multiple?: boolean;
5
+ label?: string;
6
+ className?: string;
7
+ fileTypes?: string[];
8
+ }
@@ -44,3 +44,4 @@ export * from './InvalidYAMLTippy';
44
44
  export * from './ConfirmationModal';
45
45
  export * from './DiffViewer';
46
46
  export * from './DynamicDataTable';
47
+ export * from './FileUpload';
@@ -1,5 +1,5 @@
1
1
  import { Dayjs } from 'dayjs';
2
- import { OptionType, CommonNodeAttr, ResponseType, UserApprovalConfigType, VulnerabilityType, DeploymentAppTypes, ServerErrors, SortingParams, TriggerBlockType } from '../Common';
2
+ import { OptionType, CommonNodeAttr, ResponseType, UserApprovalConfigType, VulnerabilityType, DeploymentAppTypes, ServerErrors, SortingParams } from '../Common';
3
3
  import { KeyValueListType } from './Components';
4
4
  import { EnvironmentTypeEnum, PatchOperationType } from './constants';
5
5
  export declare enum EnvType {
@@ -739,22 +739,4 @@ export interface PreventOutsideFocusProps {
739
739
  identifier: string;
740
740
  preventFocus: boolean;
741
741
  }
742
- export interface PolicyBlockInfo {
743
- isBlocked: boolean;
744
- blockedBy: TriggerBlockType;
745
- reason: string;
746
- }
747
- export interface PipelineStageBlockInfo {
748
- node: PolicyBlockInfo;
749
- pre: PolicyBlockInfo;
750
- post: PolicyBlockInfo;
751
- }
752
- export interface PolicyConsequencesDTO {
753
- cd: PipelineStageBlockInfo;
754
- ci: PipelineStageBlockInfo;
755
- }
756
- export interface GetPolicyConsequencesProps {
757
- appId: number;
758
- envId: number;
759
- }
760
742
  export {};