@devtron-labs/devtron-fe-common-lib 1.5.8-beta-1 → 1.5.8-beta-2

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 (58) hide show
  1. package/dist/@code-editor-D4gh0SB7.js +22914 -0
  2. package/dist/{@common-rjsf-Bsv_ydI_.js → @common-rjsf-eTOLTqJt.js} +3 -3
  3. package/dist/{@framer-motion-CpA7HTl-.js → @framer-motion-CbfcgbXI.js} +70 -70
  4. package/dist/@monaco-editor-CVagbUeH.js +138960 -0
  5. package/dist/{@react-dates-CaRoxjcN.js → @react-dates-CHLhA4kl.js} +14 -14
  6. package/dist/{@react-select-D4CIuOAx.js → @react-select-CgLj7C5f.js} +1 -1
  7. package/dist/{@react-virtualized-sticky-tree-CZZtnJ_O.js → @react-virtualized-sticky-tree-Cj8etBAu.js} +1 -1
  8. package/dist/@vendor-ROKJESOw.js +22734 -0
  9. package/dist/Common/CodeEditor/CodeEditor.d.ts +3 -13
  10. package/dist/Common/CodeEditor/CodeEditor.reducer.d.ts +47 -3
  11. package/dist/Common/CodeEditor/index.d.ts +1 -1
  12. package/dist/Common/CodeEditor/types.d.ts +76 -71
  13. package/dist/Common/CodeEditor/utils.d.ts +3 -13
  14. package/dist/Common/Types.d.ts +0 -13
  15. package/dist/Common/index.d.ts +0 -1
  16. package/dist/Shared/Components/Button/constants.d.ts +0 -1
  17. package/dist/Shared/Components/CICDHistory/DeploymentHistoryConfigDiff/DeploymentHistoryDiffView.d.ts +1 -1
  18. package/dist/Shared/Components/CICDHistory/types.d.ts +1 -0
  19. package/dist/Shared/Components/Collapse/Collapse.d.ts +1 -0
  20. package/dist/Shared/Components/EditableTextArea/types.d.ts +0 -1
  21. package/dist/Shared/Components/FormFieldWrapper/FormFieldInfo.d.ts +3 -0
  22. package/dist/Shared/Components/FormFieldWrapper/FormFieldLabel.d.ts +3 -0
  23. package/dist/Shared/Components/FormFieldWrapper/FormFieldWrapper.d.ts +3 -0
  24. package/dist/Shared/Components/FormFieldWrapper/index.d.ts +3 -0
  25. package/dist/Shared/Components/FormFieldWrapper/types.d.ts +75 -0
  26. package/dist/Shared/Components/FormFieldWrapper/utils.d.ts +18 -0
  27. package/dist/Shared/Components/SelectPicker/SelectPicker.component.d.ts +1 -1
  28. package/dist/Shared/Components/SelectPicker/type.d.ts +2 -13
  29. package/dist/Shared/Components/Textarea/Textarea.component.d.ts +3 -0
  30. package/dist/Shared/Components/Textarea/constants.d.ts +4 -0
  31. package/dist/Shared/Components/Textarea/index.d.ts +2 -0
  32. package/dist/Shared/Components/Textarea/types.d.ts +17 -0
  33. package/dist/Shared/Components/ThemeSwitcher/index.d.ts +1 -0
  34. package/dist/Shared/Components/index.d.ts +2 -0
  35. package/dist/Shared/constants.d.ts +3 -1
  36. package/dist/Shared/types.d.ts +0 -8
  37. package/dist/assets/@code-editor.css +1 -1
  38. package/dist/assets/@monaco-editor.css +1 -0
  39. package/dist/assets/codicon.ecfbfe4b.ttf +0 -0
  40. package/dist/assets/{ic-warning.10bcf8bd.svg → ic-warning.a842ba2a.svg} +1 -1
  41. package/dist/index.js +679 -673
  42. package/package.json +7 -14
  43. package/dist/@code-editor-Bc2JVhOX.js +0 -41517
  44. package/dist/@vendor-CKSERKp7.js +0 -42519
  45. package/dist/Common/ClipboardButton/index.d.ts +0 -1
  46. package/dist/Common/CodeEditor/CodeEditor.components.d.ts +0 -11
  47. package/dist/Common/CodeEditor/CodeEditor.constants.d.ts +0 -7
  48. package/dist/Common/CodeEditor/CodeEditor.context.d.ts +0 -3
  49. package/dist/Common/CodeEditor/CodeEditor.theme.d.ts +0 -1
  50. package/dist/Common/CodeEditor/Extensions/findAndReplace.d.ts +0 -2
  51. package/dist/Common/CodeEditor/Extensions/index.d.ts +0 -3
  52. package/dist/Common/CodeEditor/Extensions/readOnlyTooltip.d.ts +0 -6
  53. package/dist/Common/CodeEditor/Extensions/yamlParseLinter.d.ts +0 -3
  54. package/dist/Common/ResizableTextarea.d.ts +0 -3
  55. package/dist/assets/ic-match-case.702186fe.svg +0 -3
  56. package/dist/assets/ic-match-word.991dea5a.svg +0 -3
  57. package/dist/assets/ic-replace-all-text.7ebbab01.svg +0 -3
  58. package/dist/assets/ic-replace-text.5de817d2.svg +0 -3
@@ -1,14 +1,4 @@
1
- import { CodeEditorProps } from './types';
2
- declare const CodeEditor: {
3
- <DiffView extends boolean = false>({ theme, value: propValue, originalValue, modifiedValue, isOriginalModifiable, mode, noParsing, children, tabSize, height, shebang, onChange, onOriginalValueChange, onModifiedValueChange, readOnly, placeholder, diffView, loading, customLoader, validatorSchema, schemaURI, cleanData, onBlur, onFocus, autoFocus, disableSearch, }: CodeEditorProps<DiffView>): JSX.Element;
4
- Clipboard: () => JSX.Element;
5
- Header: ({ children, className, hideDefaultSplitHeader }: import('./types').CodeEditorHeaderProps) => JSX.Element;
6
- Warning: ({ className, text, children }: import('./types').CodeEditorStatusBarProps) => JSX.Element;
7
- ErrorBar: ({ className, text, children }: import('./types').CodeEditorStatusBarProps) => JSX.Element;
8
- Information: ({ className, children, text }: import('./types').CodeEditorStatusBarProps) => JSX.Element;
9
- Container: ({ children, flexExpand }: {
10
- children: import('react').ReactNode;
11
- flexExpand?: boolean;
12
- }) => JSX.Element;
13
- };
1
+ import { default as React } from 'react';
2
+ import { CodeEditorComposition, CodeEditorInterface } from './types';
3
+ declare const CodeEditor: React.FC<CodeEditorInterface> & CodeEditorComposition;
14
4
  export default CodeEditor;
@@ -1,4 +1,48 @@
1
- import { CodeEditorPayloadType, CodeEditorInitialValueType, CodeEditorState } from './types';
2
- export declare const CodeEditorReducer: (state: CodeEditorState, action: CodeEditorPayloadType) => CodeEditorState;
1
+ import { MODES } from '../Constants';
2
+ import { Action, CodeEditorInitialValueType, CodeEditorState } from './types';
3
+ export declare const CodeEditorReducer: (state: CodeEditorState, action: Action) => {
4
+ mode: any;
5
+ diffMode: boolean;
6
+ theme: import('./types').CodeEditorThemesKeys;
7
+ code: string;
8
+ defaultCode: string;
9
+ noParsing: boolean;
10
+ } | {
11
+ diffMode: any;
12
+ mode: MODES;
13
+ theme: import('./types').CodeEditorThemesKeys;
14
+ code: string;
15
+ defaultCode: string;
16
+ noParsing: boolean;
17
+ } | {
18
+ theme: any;
19
+ mode: MODES;
20
+ diffMode: boolean;
21
+ code: string;
22
+ defaultCode: string;
23
+ noParsing: boolean;
24
+ } | {
25
+ code: any;
26
+ mode: MODES;
27
+ diffMode: boolean;
28
+ theme: import('./types').CodeEditorThemesKeys;
29
+ defaultCode: string;
30
+ noParsing: boolean;
31
+ } | {
32
+ defaultCode: any;
33
+ mode: MODES;
34
+ diffMode: boolean;
35
+ theme: import('./types').CodeEditorThemesKeys;
36
+ code: string;
37
+ noParsing: boolean;
38
+ } | {
39
+ height: any;
40
+ mode: MODES;
41
+ diffMode: boolean;
42
+ theme: import('./types').CodeEditorThemesKeys;
43
+ code: string;
44
+ defaultCode: string;
45
+ noParsing: boolean;
46
+ };
3
47
  export declare const parseValueToCode: (value: string, mode: string, tabSize: number) => string;
4
- export declare const initialState: ({ mode, value, lhsValue, diffView, noParsing, tabSize, }: CodeEditorInitialValueType) => CodeEditorState;
48
+ export declare const initialState: ({ mode, theme, value, defaultValue, diffView, noParsing, tabSize, appTheme, }: CodeEditorInitialValueType) => CodeEditorState;
@@ -1,2 +1,2 @@
1
1
  export { default as CodeEditor } from './CodeEditor';
2
- export type { CodeEditorProps } from './types';
2
+ export * from './types';
@@ -1,95 +1,100 @@
1
- import { Dispatch, FunctionComponent, ReactNode, SVGProps } from 'react';
2
- import { JSONSchema7 } from 'json-schema';
3
- import { EditorView, ReactCodeMirrorProps } from '@uiw/react-codemirror';
4
- import { SearchQuery } from '@codemirror/search';
5
- import { MODES } from '../Constants';
6
- import { Never } from '../../Shared/types';
7
1
  import { AppThemeType } from '../../Shared/Providers';
8
- export interface CodeEditorStatusBarProps {
2
+ import { MODES } from '../Constants';
3
+ export interface InformationBarProps {
9
4
  text: string;
10
5
  className?: string;
11
- children?: ReactNode;
6
+ children?: React.ReactNode;
12
7
  }
13
- export interface CodeEditorHeaderProps {
14
- className?: string;
15
- hideDefaultSplitHeader?: boolean;
16
- children?: ReactNode;
8
+ export declare enum CodeEditorThemesKeys {
9
+ vsDarkDT = "vs-dark--dt",
10
+ vs = "vs",
11
+ networkStatusInterface = "network-status-interface"
17
12
  }
18
- type CodeEditorBaseProps = Pick<ReactCodeMirrorProps, 'onBlur' | 'onFocus' | 'autoFocus'> & {
19
- value?: ReactCodeMirrorProps['value'];
20
- onChange?: (value: string) => void;
21
- shebang?: string | JSX.Element;
22
- validatorSchema?: JSONSchema7;
23
- schemaURI?: string;
24
- };
25
- type CodeEditorDiffBaseProps = {
26
- onOriginalValueChange?: (originalValue: string) => void;
27
- onModifiedValueChange?: (modifiedValue: string) => void;
28
- originalValue?: ReactCodeMirrorProps['value'];
29
- modifiedValue?: ReactCodeMirrorProps['value'];
30
- isOriginalModifiable?: boolean;
31
- };
32
- type CodeEditorPropsBasedOnDiffView<DiffView extends boolean> = DiffView extends true ? CodeEditorDiffBaseProps & Never<CodeEditorBaseProps> : CodeEditorBaseProps & Never<CodeEditorDiffBaseProps>;
33
- export type CodeEditorProps<DiffView extends boolean = false> = {
34
- /**
35
- * @default 450
36
- */
37
- height?: 'auto' | '100%' | 'fitToParent' | number;
38
- children?: ReactNode;
39
- mode?: MODES;
13
+ interface CodeEditorBaseInterface {
14
+ value?: string;
15
+ lineDecorationsWidth?: number;
16
+ responseType?: string;
17
+ onChange?: (value: string, defaultValue: string) => void;
18
+ onBlur?: () => void;
19
+ onFocus?: () => void;
20
+ children?: any;
21
+ defaultValue?: string;
22
+ mode?: MODES | string;
40
23
  tabSize?: number;
41
24
  readOnly?: boolean;
42
- placeholder?: string;
43
25
  noParsing?: boolean;
26
+ inline?: boolean;
27
+ shebang?: string | JSX.Element;
28
+ diffView?: boolean;
44
29
  loading?: boolean;
45
30
  customLoader?: JSX.Element;
31
+ theme?: CodeEditorThemesKeys;
32
+ original?: string;
33
+ focus?: boolean;
34
+ validatorSchema?: any;
35
+ isKubernetes?: boolean;
46
36
  cleanData?: boolean;
37
+ schemaURI?: string;
47
38
  /**
48
- * If true, disables the in-built search
39
+ * If true, disable the in-built search of monaco editor
49
40
  * @default false
50
41
  */
51
42
  disableSearch?: boolean;
52
- diffView?: DiffView;
53
- theme?: AppThemeType;
54
- } & CodeEditorPropsBasedOnDiffView<DiffView>;
55
- export interface GetCodeEditorHeightReturnType {
56
- codeEditorParentClassName: string;
57
- codeEditorClassName: string;
58
- codeEditorHeight: string;
59
43
  }
60
- export type HoverTexts = {
61
- message: string;
62
- typeInfo: string;
63
- };
64
- export type FindReplaceQuery = Partial<Pick<SearchQuery, 'search' | 'wholeWord' | 'regexp' | 'replace' | 'caseSensitive'>>;
65
- export interface FindReplaceProps {
66
- view: EditorView;
67
- defaultQuery: SearchQuery;
44
+ export type CodeEditorInterface = CodeEditorBaseInterface & ({
45
+ adjustEditorHeightToContent?: boolean;
46
+ height?: never;
47
+ } | {
48
+ adjustEditorHeightToContent?: never;
49
+ height?: number | string;
50
+ });
51
+ export interface CodeEditorHeaderInterface {
52
+ children?: any;
53
+ className?: string;
54
+ hideDefaultSplitHeader?: boolean;
55
+ }
56
+ export interface CodeEditorComposition {
57
+ Header?: React.FC<any>;
58
+ LanguageChanger?: React.FC<any>;
59
+ ThemeChanger?: React.FC<any>;
60
+ ValidationError?: React.FC<any>;
61
+ Clipboard?: React.FC<any>;
62
+ Warning?: React.FC<InformationBarProps>;
63
+ ErrorBar?: React.FC<InformationBarProps>;
64
+ Information?: React.FC<InformationBarProps>;
65
+ }
66
+ export interface CodeEditorHeaderComposition {
67
+ LanguageChanger?: React.FC<any>;
68
+ ThemeChanger?: React.FC<any>;
69
+ ValidationError?: React.FC<any>;
70
+ Clipboard?: React.FC<any>;
68
71
  }
69
- export type CodeEditorActionTypes = 'setDiff' | 'setCode' | 'setLhsCode';
70
- export interface CodeEditorPayloadType {
71
- type: CodeEditorActionTypes;
72
+ export type ActionTypes = 'changeLanguage' | 'setDiff' | 'setTheme' | 'setCode' | 'setDefaultCode' | 'setHeight';
73
+ export interface Action {
74
+ type: ActionTypes;
72
75
  value: any;
73
76
  }
74
- export interface CodeEditorInitialValueType extends Pick<CodeEditorProps, 'value' | 'noParsing' | 'tabSize' | 'mode'> {
75
- lhsValue: ReactCodeMirrorProps['value'];
77
+ export interface CodeEditorInitialValueType extends Pick<CodeEditorBaseInterface, 'theme'> {
78
+ mode: string;
76
79
  diffView: boolean;
80
+ value: string;
81
+ defaultValue: string;
82
+ noParsing?: boolean;
83
+ tabSize: number;
84
+ appTheme: AppThemeType;
77
85
  }
78
- export interface CodeEditorState extends Pick<CodeEditorProps, 'noParsing'> {
79
- code: CodeEditorProps['value'];
80
- lhsCode: CodeEditorProps<true>['originalValue'];
81
- diffMode: CodeEditorProps<boolean>['diffView'];
82
- }
83
- export interface CodeEditorContextProps extends Pick<CodeEditorProps, 'readOnly' | 'height'> {
84
- state: CodeEditorState;
85
- hasCodeEditorContainer: boolean;
86
- dispatch: Dispatch<CodeEditorPayloadType>;
86
+ export interface CodeEditorState {
87
+ mode: MODES;
88
+ diffMode: boolean;
89
+ theme: CodeEditorThemesKeys;
90
+ code: string;
91
+ defaultCode: string;
92
+ noParsing: boolean;
87
93
  }
88
- export interface FindReplaceToggleButtonProps {
89
- isChecked: boolean;
90
- Icon: FunctionComponent<SVGProps<SVGSVGElement>>;
91
- onChange: (isChecked: boolean) => void;
92
- iconType?: 'stroke' | 'fill';
93
- tooltipText: string;
94
+ export declare enum CodeEditorActionTypes {
95
+ reInit = "reInit",
96
+ submitLoading = "submitLoading",
97
+ overrideLoading = "overrideLoading",
98
+ success = "success"
94
99
  }
95
100
  export {};
@@ -1,13 +1,3 @@
1
- import { SearchQuery } from '@codemirror/search';
2
- import { EditorView, Extension } from '@uiw/react-codemirror';
3
- import { CodeEditorProps, FindReplaceToggleButtonProps, GetCodeEditorHeightReturnType } from './types';
4
- export declare const getCodeEditorHeight: (height: CodeEditorProps["height"]) => GetCodeEditorHeightReturnType;
5
- export declare const getFindReplaceToggleButtonIconClass: ({ iconType, isChecked, }: Pick<FindReplaceToggleButtonProps, "iconType" | "isChecked">) => "scb-5" | "scn-7" | "fcb-5" | "fcn-7";
6
- export declare const getUpdatedSearchMatchesCount: (newQuery: SearchQuery, view: EditorView) => {
7
- count: number;
8
- current: number;
9
- };
10
- export declare const getFoldGutterElement: (open: boolean) => HTMLSpanElement;
11
- export declare const getReadOnlyElement: () => HTMLDivElement;
12
- export declare const getLanguageExtension: (mode: CodeEditorProps["mode"]) => Extension;
13
- export declare const getValidationSchema: ({ mode, validatorSchema, schemaURI, }: Pick<CodeEditorProps, "schemaURI" | "validatorSchema" | "mode">) => Extension[];
1
+ import { AppThemeType } from '../../Shared/Providers';
2
+ import { CodeEditorInterface } from './types';
3
+ export declare const getCodeEditorThemeFromAppTheme: (editorTheme: CodeEditorInterface["theme"], appTheme: AppThemeType) => CodeEditorInterface["theme"];
@@ -673,19 +673,6 @@ export interface UseSearchString {
673
673
  [key: string]: string;
674
674
  };
675
675
  }
676
- export interface ResizableTextareaProps {
677
- minHeight?: number;
678
- maxHeight?: number;
679
- value?: string;
680
- onChange?: (e: any) => void;
681
- onBlur?: (e: any) => void;
682
- onFocus?: (e: any) => void;
683
- className?: string;
684
- placeholder?: string;
685
- disabled?: boolean;
686
- name?: string;
687
- dataTestId?: string;
688
- }
689
676
  export interface AsyncState<T> {
690
677
  loading: boolean;
691
678
  result: T;
@@ -34,7 +34,6 @@ export * from './Policy.Types';
34
34
  export { default as DeleteComponent } from './DeleteComponentModal/DeleteComponent';
35
35
  export * from './ImageTags';
36
36
  export * from './ImageTags.Types';
37
- export * from './ResizableTextarea';
38
37
  export { default as DebouncedSearch } from './DebouncedSearch/DebouncedSearch';
39
38
  export { default as Grid } from './Grid/Grid';
40
39
  export { default as Select } from './Select/Select';
@@ -2,5 +2,4 @@ import { ProgressingProps } from '../../../Common/Types';
2
2
  import { ButtonProps } from './types';
3
3
  export declare const BUTTON_SIZE_TO_CLASS_NAME_MAP: Record<ButtonProps['size'], string>;
4
4
  export declare const ICON_BUTTON_SIZE_TO_CLASS_NAME_MAP: Record<ButtonProps['size'], string>;
5
- export declare const BUTTON_SIZE_TO_ICON_SIZE_MAP: Record<ButtonProps['size'], ProgressingProps['size']>;
6
5
  export declare const ICON_BUTTON_SIZE_TO_ICON_SIZE_MAP: Record<ButtonProps['size'], ProgressingProps['size']>;
@@ -1,3 +1,3 @@
1
1
  import { DeploymentTemplateHistoryType } from '../types';
2
- declare const DeploymentHistoryDiffView: ({ currentConfiguration, baseTemplateConfiguration, previousConfigAvailable, rootClassName, }: DeploymentTemplateHistoryType) => JSX.Element;
2
+ declare const DeploymentHistoryDiffView: ({ currentConfiguration, baseTemplateConfiguration, previousConfigAvailable, rootClassName, codeEditorKey, }: DeploymentTemplateHistoryType) => JSX.Element;
3
3
  export default DeploymentHistoryDiffView;
@@ -423,6 +423,7 @@ export interface DeploymentTemplateHistoryType {
423
423
  baseTemplateConfiguration: DeploymentHistoryDetail;
424
424
  previousConfigAvailable: boolean;
425
425
  rootClassName?: string;
426
+ codeEditorKey?: React.Key;
426
427
  }
427
428
  export interface DeploymentHistoryDetailRes extends ResponseType {
428
429
  result?: DeploymentHistoryDetail;
@@ -1,6 +1,7 @@
1
1
  import { CollapseProps } from './types';
2
2
  /**
3
3
  * Collapse component for smoothly expanding or collapsing its content.
4
+ * Dynamically calculates the content height and applies smooth transitions.
4
5
  * It also supports a callback when the transition ends.
5
6
  */
6
7
  export declare const Collapse: ({ expand, onTransitionEnd, children }: CollapseProps) => JSX.Element;
@@ -10,7 +10,6 @@ interface ValidationRule<T> {
10
10
  }
11
11
  export interface EditableTextAreaProps {
12
12
  placeholder?: string;
13
- rows: number;
14
13
  updateContent: (value: string) => Promise<void>;
15
14
  initialText?: string;
16
15
  validations?: {
@@ -0,0 +1,3 @@
1
+ import { FormFieldInfoProps } from './types';
2
+ declare const FormFieldInfo: ({ error, helperText, warningText, inputId }: FormFieldInfoProps) => JSX.Element;
3
+ export default FormFieldInfo;
@@ -0,0 +1,3 @@
1
+ import { FormFieldLabelProps } from './types';
2
+ declare const FormFieldLabel: ({ label, inputId, required, layout }: FormFieldLabelProps) => JSX.Element;
3
+ export default FormFieldLabel;
@@ -0,0 +1,3 @@
1
+ import { FormFieldWrapperProps } from './types';
2
+ declare const FormFieldWrapper: ({ layout, fullWidth, label, inputId, error, helperText, warningText, required, children, }: Required<FormFieldWrapperProps>) => JSX.Element;
3
+ export default FormFieldWrapper;
@@ -0,0 +1,3 @@
1
+ export { default as FormFieldWrapper } from './FormFieldWrapper';
2
+ export type { FormFieldWrapperProps } from './types';
3
+ export { getFormFieldAriaAttributes } from './utils';
@@ -0,0 +1,75 @@
1
+ import { ReactElement, ReactNode } from 'react';
2
+ export type LabelOrAriaLabelType = {
3
+ label: ReactNode;
4
+ ariaLabel?: never;
5
+ } | {
6
+ label?: never;
7
+ ariaLabel: string;
8
+ };
9
+ export type FormFieldLabelProps = LabelOrAriaLabelType & {
10
+ /**
11
+ * If true, the field is required and * is shown with the label
12
+ */
13
+ required?: boolean;
14
+ /**
15
+ * Id of the input element
16
+ */
17
+ inputId: string;
18
+ /**
19
+ * Layout of the field
20
+ */
21
+ layout?: 'row' | 'column';
22
+ };
23
+ export interface FormFieldInfoProps extends Pick<FormFieldLabelProps, 'inputId'> {
24
+ /**
25
+ * Error message for the field
26
+ */
27
+ error?: ReactNode;
28
+ /**
29
+ * Helper text for the field
30
+ */
31
+ helperText?: ReactNode;
32
+ /**
33
+ * Warning message for the field
34
+ */
35
+ warningText?: ReactNode;
36
+ }
37
+ export interface FormInfoItemProps {
38
+ id: FormFieldLabelProps['inputId'];
39
+ text: FormFieldInfoProps['error'];
40
+ textClass: string;
41
+ icon: ReactElement;
42
+ }
43
+ export interface FormFieldWrapperProps extends Pick<FormFieldLabelProps, 'label' | 'required' | 'ariaLabel' | 'layout'>, FormFieldInfoProps {
44
+ /**
45
+ * If true, the field takes the full width of the parent
46
+ */
47
+ fullWidth?: boolean;
48
+ children: ReactElement;
49
+ borderRadiusConfig?: {
50
+ /**
51
+ * If false, the top border radius is not applied
52
+ *
53
+ * @default true
54
+ */
55
+ top?: boolean;
56
+ /**
57
+ * If false, the right border radius is not applied
58
+ *
59
+ * @default true
60
+ */
61
+ right?: boolean;
62
+ /**
63
+ * If false, the bottom border radius is not applied
64
+ *
65
+ * @default true
66
+ */
67
+ bottom?: boolean;
68
+ /**
69
+ * If false, the left border radius is not applied
70
+ *
71
+ * @default true
72
+ */
73
+ left?: boolean;
74
+ };
75
+ }
@@ -0,0 +1,18 @@
1
+ import { FormFieldInfoProps, FormFieldLabelProps, FormFieldWrapperProps } from './types';
2
+ export declare const getFormErrorElementId: (inputId: FormFieldLabelProps["inputId"]) => string;
3
+ export declare const getFormLabelElementId: (inputId: FormFieldLabelProps["inputId"]) => string;
4
+ export declare const getFormHelperTextElementId: (inputId: FormFieldLabelProps["inputId"]) => string;
5
+ export declare const getFormFieldAriaAttributes: ({ inputId, label, ariaLabel, required, error, helperText, }: Required<Pick<FormFieldLabelProps, "label" | "ariaLabel" | "required" | "inputId"> & Pick<FormFieldInfoProps, "error" | "helperText">>) => {
6
+ 'aria-labelledby': string;
7
+ 'aria-errormessage'?: string;
8
+ 'aria-invalid'?: boolean;
9
+ 'aria-describedby'?: string;
10
+ 'aria-required': boolean;
11
+ } | {
12
+ 'aria-label': string;
13
+ 'aria-errormessage'?: string;
14
+ 'aria-invalid'?: boolean;
15
+ 'aria-describedby'?: string;
16
+ 'aria-required': boolean;
17
+ };
18
+ export declare const getFormFieldBorderClassName: (borderRadiusConfig?: FormFieldWrapperProps["borderRadiusConfig"]) => string;
@@ -134,5 +134,5 @@ import { SelectPickerProps } from './type';
134
134
  * />
135
135
  * ```
136
136
  */
137
- declare const SelectPicker: <OptionValue, IsMulti extends boolean>({ error, icon, helperText, placeholder, label, showSelectedOptionIcon, size, disabledTippyContent, showSelectedOptionsCount, menuSize, optionListError, reloadOptionList, menuPosition, variant, disableDescriptionEllipsis, multiSelectProps, isMulti, name, classNamePrefix, shouldRenderCustomOptions, isSearchable, selectRef, shouldMenuAlignRight, fullWidth, customSelectedOptionsCount, renderMenuListFooter, isCreatable, onCreateOption, closeMenuOnSelect, shouldShowNoOptionsMessage, shouldRenderTextArea, onKeyDown, shouldHideMenu, ...props }: SelectPickerProps<OptionValue, IsMulti>) => JSX.Element;
137
+ declare const SelectPicker: <OptionValue, IsMulti extends boolean>({ error, icon, helperText, placeholder, label, showSelectedOptionIcon, size, disabledTippyContent, showSelectedOptionsCount, menuSize, optionListError, reloadOptionList, menuPosition, variant, disableDescriptionEllipsis, multiSelectProps, isMulti, name, classNamePrefix, shouldRenderCustomOptions, isSearchable, selectRef, shouldMenuAlignRight, fullWidth, customSelectedOptionsCount, renderMenuListFooter, isCreatable, onCreateOption, closeMenuOnSelect, shouldShowNoOptionsMessage, shouldRenderTextArea, onKeyDown, shouldHideMenu, warningText, layout, ariaLabel, borderRadiusConfig, ...props }: SelectPickerProps<OptionValue, IsMulti>) => JSX.Element;
138
138
  export default SelectPicker;
@@ -6,6 +6,7 @@ import { GroupBase, GroupHeadingProps, Props as ReactSelectProps, SelectInstance
6
6
  import { CreatableProps } from 'react-select/creatable';
7
7
  import { TooltipProps } from '@Common/Tooltip/types';
8
8
  import { ResizableTagTextAreaProps } from '../../../Common/CustomTagSelector';
9
+ import { FormFieldWrapperProps } from '../FormFieldWrapper/types';
9
10
  export interface SelectPickerOptionType<OptionValue = string | number> extends OptionType<OptionValue, ReactNode> {
10
11
  /**
11
12
  * Description to be displayed for the option
@@ -79,19 +80,7 @@ export declare enum SelectPickerVariantType {
79
80
  DEFAULT = "default",
80
81
  BORDER_LESS = "border-less"
81
82
  }
82
- export type SelectPickerProps<OptionValue = number | string, IsMulti extends boolean = false> = Pick<SelectProps<OptionValue, IsMulti>, 'name' | 'classNamePrefix' | 'options' | 'value' | 'onChange' | 'isSearchable' | 'isClearable' | 'hideSelectedOptions' | 'controlShouldRenderValue' | 'closeMenuOnSelect' | 'isDisabled' | 'isLoading' | 'required' | 'isOptionDisabled' | 'placeholder' | 'menuPosition' | 'getOptionLabel' | 'getOptionValue' | 'isOptionSelected' | 'menuIsOpen' | 'onMenuOpen' | 'onMenuClose' | 'autoFocus' | 'onBlur' | 'onKeyDown' | 'formatOptionLabel' | 'onInputChange' | 'inputValue' | 'filterOption'> & Partial<Pick<SelectProps<OptionValue, IsMulti>, 'renderMenuListFooter' | 'shouldRenderCustomOptions' | 'renderCustomOptions' | 'icon' | 'showSelectedOptionIcon' | 'renderOptionsFooter' | 'shouldRenderTextArea'>> & Required<Pick<SelectProps<OptionValue, IsMulti>, 'inputId'>> & Partial<Pick<CreatableProps<SelectPickerOptionType<OptionValue>, IsMulti, GroupBase<SelectPickerOptionType<OptionValue>>>, 'onCreateOption' | 'formatCreateLabel' | 'menuPortalTarget'>> & {
83
- /**
84
- * Error message for the select
85
- */
86
- error?: ReactNode;
87
- /**
88
- * Info text for the select, if any
89
- */
90
- helperText?: ReactNode;
91
- /**
92
- * Label for the select. if required is added, the corresponding * is also added
93
- */
94
- label?: ReactNode;
83
+ export type SelectPickerProps<OptionValue = number | string, IsMulti extends boolean = false> = Pick<SelectProps<OptionValue, IsMulti>, 'name' | 'classNamePrefix' | 'options' | 'value' | 'onChange' | 'isSearchable' | 'isClearable' | 'hideSelectedOptions' | 'controlShouldRenderValue' | 'closeMenuOnSelect' | 'isDisabled' | 'isLoading' | 'required' | 'isOptionDisabled' | 'placeholder' | 'menuPosition' | 'getOptionLabel' | 'getOptionValue' | 'isOptionSelected' | 'menuIsOpen' | 'onMenuOpen' | 'onMenuClose' | 'autoFocus' | 'onBlur' | 'onKeyDown' | 'formatOptionLabel' | 'onInputChange' | 'inputValue' | 'filterOption'> & Partial<Pick<SelectProps<OptionValue, IsMulti>, 'renderMenuListFooter' | 'shouldRenderCustomOptions' | 'renderCustomOptions' | 'icon' | 'showSelectedOptionIcon' | 'renderOptionsFooter' | 'shouldRenderTextArea'>> & Required<Pick<SelectProps<OptionValue, IsMulti>, 'inputId'>> & Partial<Pick<CreatableProps<SelectPickerOptionType<OptionValue>, IsMulti, GroupBase<SelectPickerOptionType<OptionValue>>>, 'onCreateOption' | 'formatCreateLabel' | 'menuPortalTarget'>> & Omit<FormFieldWrapperProps, 'children'> & {
95
84
  /**
96
85
  * Custom selected options count for use cases like filters
97
86
  */
@@ -0,0 +1,3 @@
1
+ import { TextareaProps } from './types';
2
+ declare const Textarea: ({ name, label, fullWidth, error, helperText, warningText, layout, required, onBlur, shouldTrim, size, ariaLabel, borderRadiusConfig, ...props }: TextareaProps) => JSX.Element;
3
+ export default Textarea;
@@ -0,0 +1,4 @@
1
+ export declare const TEXTAREA_CONSTRAINTS: {
2
+ MIN_HEIGHT: number;
3
+ AUTO_EXPANSION_MAX_HEIGHT: number;
4
+ };
@@ -0,0 +1,2 @@
1
+ export { default as Textarea } from './Textarea.component';
2
+ export type { TextareaProps } from './types';
@@ -0,0 +1,17 @@
1
+ import { TextareaHTMLAttributes } from 'react';
2
+ import { ComponentSizeType } from '../../constants';
3
+ import { FormFieldWrapperProps } from '../FormFieldWrapper';
4
+ export interface TextareaProps extends Omit<FormFieldWrapperProps, 'children' | 'inputId'>, Pick<TextareaHTMLAttributes<HTMLTextAreaElement>, 'onBlur' | 'disabled' | 'autoFocus' | 'onFocus'>, Required<Pick<TextareaHTMLAttributes<HTMLTextAreaElement>, 'placeholder' | 'onChange' | 'value' | 'name'>> {
5
+ /**
6
+ * If false, the input is not trimmed on blur
7
+ *
8
+ * @default true
9
+ */
10
+ shouldTrim?: boolean;
11
+ /**
12
+ * Size of the textarea
13
+ *
14
+ * @default ComponentSizeType.large
15
+ */
16
+ size?: Extract<ComponentSizeType, ComponentSizeType.medium | ComponentSizeType.large>;
17
+ }
@@ -1 +1,2 @@
1
1
  export { default as ThemeSwitcher } from './ThemeSwitcher.component';
2
+ export type { ThemeSwitcherProps } from './types';
@@ -55,6 +55,8 @@ export * from './ToggleResolveScopedVariables';
55
55
  export * from './BulkOperations';
56
56
  export * from './WorkflowOptionsModal';
57
57
  export * from './VirtualizedList';
58
+ export * from './Textarea';
59
+ export * from './ThemeSwitcher';
58
60
  export * from './TargetPlatforms';
59
61
  export * from './UnsavedChanges';
60
62
  export * from './UnsavedChangesDialog';
@@ -393,13 +393,15 @@ export declare const ANSI_UP_REGEX: RegExp;
393
393
  * Size variants for components
394
394
  */
395
395
  export declare enum ComponentSizeType {
396
- xxs = "xxs",
397
396
  xs = "xs",
398
397
  small = "small",
399
398
  medium = "medium",
400
399
  large = "large",
401
400
  xl = "xl"
402
401
  }
402
+ export declare const COMPONENT_SIZE_TYPE_TO_FONT_AND_BLOCK_PADDING_MAP: Record<ComponentSizeType, string>;
403
+ export declare const COMPONENT_SIZE_TYPE_TO_INLINE_PADDING_MAP: Record<ComponentSizeType, string>;
404
+ export declare const COMPONENT_SIZE_TYPE_TO_ICON_SIZE_MAP: Record<ComponentSizeType, number>;
403
405
  export declare const POP_UP_MENU_MODAL_ID = "popup";
404
406
  /**
405
407
  * Identifiers for grouped / all resources
@@ -782,14 +782,6 @@ export interface UploadFileProps {
782
782
  allowedExtensions?: string[];
783
783
  maxUploadSize?: number;
784
784
  }
785
- /**
786
- * A utility type that transforms all properties of a given type `T` to be optional and of type `never`. \
787
- * This can be useful for scenarios where you want to explicitly mark that certain properties should not exist.
788
- * @template T - The type whose properties will be transformed.
789
- */
790
- export type Never<T> = {
791
- [K in keyof T]?: never;
792
- };
793
785
  export interface TargetPlatformItemDTO {
794
786
  name: string;
795
787
  }