@devtron-labs/devtron-fe-common-lib 0.1.14-beta-1 → 0.1.14-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 (56) hide show
  1. package/dist/Common/CIPipeline.Types.d.ts +0 -10
  2. package/dist/Common/Constants.d.ts +3 -0
  3. package/dist/Common/Policy.Types.d.ts +8 -0
  4. package/dist/Common/SearchBar/SearchBar.component.d.ts +1 -1
  5. package/dist/Common/SearchBar/types.d.ts +8 -1
  6. package/dist/Common/SearchBar/utils.d.ts +3 -0
  7. package/dist/Pages/GlobalConfigurations/Authorization/index.d.ts +1 -1
  8. package/dist/Pages/GlobalConfigurations/Authorization/types.d.ts +1 -19
  9. package/dist/Pages/ResourceBrowser/ResourceBrowser.Types.d.ts +1 -2
  10. package/dist/Shared/Components/CICDHistory/LogStageAccordion.d.ts +4 -0
  11. package/dist/Shared/Components/CICDHistory/constants.d.ts +2 -0
  12. package/dist/Shared/Components/CICDHistory/index.d.ts +0 -1
  13. package/dist/Shared/Components/CICDHistory/types.d.ts +31 -0
  14. package/dist/Shared/Components/CICDHistory/utils.d.ts +2 -1
  15. package/dist/Shared/Components/DetectBottom/DetectBottom.component.d.ts +5 -0
  16. package/dist/Shared/Components/DetectBottom/index.d.ts +1 -0
  17. package/dist/Shared/Components/FilterChips/FilterChips.component.d.ts +1 -1
  18. package/dist/Shared/Components/FilterChips/types.d.ts +7 -2
  19. package/dist/Shared/Components/Plugin/PluginCard.d.ts +4 -0
  20. package/dist/Shared/Components/Plugin/PluginCardSkeletonList.d.ts +4 -0
  21. package/dist/Shared/Components/Plugin/PluginImageContainer.d.ts +4 -0
  22. package/dist/Shared/Components/Plugin/PluginList.d.ts +4 -0
  23. package/dist/Shared/Components/Plugin/PluginListContainer.d.ts +4 -0
  24. package/dist/Shared/Components/Plugin/PluginTagSelect.d.ts +4 -0
  25. package/dist/Shared/Components/Plugin/PluginTagsContainer.d.ts +4 -0
  26. package/dist/Shared/Components/Plugin/constants.d.ts +5 -0
  27. package/dist/Shared/Components/Plugin/index.d.ts +7 -0
  28. package/dist/Shared/Components/Plugin/service.d.ts +5 -0
  29. package/dist/Shared/Components/Plugin/types.d.ts +180 -0
  30. package/dist/Shared/Components/Plugin/utils.d.ts +20 -0
  31. package/dist/Shared/Components/ReactSelect/utils.d.ts +5 -1
  32. package/dist/Shared/Components/index.d.ts +2 -0
  33. package/dist/Shared/Helpers.d.ts +2 -0
  34. package/dist/Shared/constants.d.ts +1 -0
  35. package/dist/Shared/types.d.ts +19 -1
  36. package/dist/assets/index.css +1 -1
  37. package/dist/{cssMode-cbedd8a5.js → cssMode-1a5fa0a2.js} +1 -1
  38. package/dist/{freemarker2-42e8940d.js → freemarker2-a74f0d20.js} +1 -1
  39. package/dist/{handlebars-21c8b0f1.js → handlebars-3bd3c224.js} +1 -1
  40. package/dist/{html-e6718bb8.js → html-a79d84df.js} +1 -1
  41. package/dist/{htmlMode-b99bd6a6.js → htmlMode-a9da4b11.js} +1 -1
  42. package/dist/{index-004e0b53.js → index-0c92e1fb.js} +29566 -28740
  43. package/dist/index.d.ts +1 -0
  44. package/dist/index.js +467 -448
  45. package/dist/{javascript-40bcb93e.js → javascript-692ccc23.js} +1 -1
  46. package/dist/{jsonMode-22ab6975.js → jsonMode-68c1772e.js} +1 -1
  47. package/dist/{liquid-d1a76932.js → liquid-1c1f95ee.js} +1 -1
  48. package/dist/{mdx-1b4f7156.js → mdx-06f3004b.js} +1 -1
  49. package/dist/{python-74bc3a8b.js → python-3fc14037.js} +1 -1
  50. package/dist/{razor-8ce699c5.js → razor-0ab97d76.js} +1 -1
  51. package/dist/{tsMode-0a290944.js → tsMode-42e9e293.js} +1 -1
  52. package/dist/{typescript-cd8838e3.js → typescript-66469124.js} +1 -1
  53. package/dist/{xml-15b56de5.js → xml-7f3ad51f.js} +1 -1
  54. package/dist/{yaml-8821186a.js → yaml-44557f82.js} +1 -1
  55. package/package.json +1 -1
  56. package/dist/Shared/Components/CICDHistory/DetectBottom.d.ts +0 -4
@@ -252,14 +252,4 @@ export interface FormErrorObjectType {
252
252
  steps: TaskErrorObj[];
253
253
  };
254
254
  }
255
- export interface PluginDetailType {
256
- id: number;
257
- name: string;
258
- type: string;
259
- description: string;
260
- icon: string;
261
- tags: string[];
262
- inputVariables?: VariableType[];
263
- outputVariables?: VariableType[];
264
- }
265
255
  export {};
@@ -75,6 +75,9 @@ export declare const ROUTES: {
75
75
  CONFIG_CD_PIPELINE: string;
76
76
  MODULE_CONFIGURED: string;
77
77
  RESOURCE_HISTORY_DEPLOYMENT: string;
78
+ PLUGIN_GLOBAL_LIST_DETAIL_V2: string;
79
+ PLUGIN_GLOBAL_LIST_V2: string;
80
+ PLUGIN_GLOBAL_LIST_TAGS: string;
78
81
  };
79
82
  export declare enum KEY_VALUE {
80
83
  KEY = "key",
@@ -1,4 +1,6 @@
1
+ import { PluginDataStoreType } from '../Shared';
1
2
  import { VariableType } from './CIPipeline.Types';
3
+ import { ServerErrors } from './ServerError';
2
4
  import { ResponseType } from './Types';
3
5
 
4
6
  export declare enum ApplyPolicyToStage {
@@ -24,6 +26,7 @@ export interface DefinitionSourceType {
24
26
  }
25
27
  export interface MandatoryPluginDetailType {
26
28
  id: number;
29
+ parentPluginId: number;
27
30
  icon: string;
28
31
  name: string;
29
32
  description?: string;
@@ -38,6 +41,11 @@ export interface MandatoryPluginDataType {
38
41
  isValidPre: boolean;
39
42
  isValidPost: boolean;
40
43
  }
44
+ export interface ProcessPluginDataReturnType {
45
+ mandatoryPluginData: MandatoryPluginDataType;
46
+ pluginDataStore: PluginDataStoreType;
47
+ mandatoryPluginsError?: ServerErrors;
48
+ }
41
49
  export declare enum ConsequenceAction {
42
50
  BLOCK = "BLOCK",
43
51
  ALLOW_UNTIL_TIME = "ALLOW_UNTIL_TIME",
@@ -34,5 +34,5 @@ import { SearchBarProps } from './types';
34
34
  * <SearchBar inputProps={{ placeholder: 'Enter search text' }} />
35
35
  * ```
36
36
  */
37
- declare const SearchBar: ({ initialSearchText, handleSearchChange, handleEnter, inputProps, containerClassName, shouldDebounce, debounceTimeout, dataTestId, noBackgroundAndBorder, }: SearchBarProps) => JSX.Element;
37
+ declare const SearchBar: ({ initialSearchText, handleSearchChange, handleEnter, inputProps, containerClassName, shouldDebounce, debounceTimeout, dataTestId, noBackgroundAndBorder, size, }: SearchBarProps) => JSX.Element;
38
38
  export default SearchBar;
@@ -1,4 +1,5 @@
1
- /// <reference types="react" />
1
+ import { ComponentSizeType } from '../../Shared/constants';
2
+
2
3
  export interface SearchBarProps {
3
4
  /**
4
5
  * Initial search text
@@ -40,4 +41,10 @@ export interface SearchBarProps {
40
41
  * Hide the background and border of the search
41
42
  */
42
43
  noBackgroundAndBorder?: boolean;
44
+ /**
45
+ * Height of the searchbar
46
+ *
47
+ * @default 'ComponentSizeType.medium'
48
+ */
49
+ size?: ComponentSizeType.medium | ComponentSizeType.large;
43
50
  }
@@ -0,0 +1,3 @@
1
+ import { SearchBarProps } from './types';
2
+
3
+ export declare const getSearchBarHeightFromSize: (size: SearchBarProps['size']) => string;
@@ -1,3 +1,3 @@
1
1
  export * from './constants';
2
- export type { UserListFilterParams, BaseFilterQueryParams, UserRoleGroup } from './types';
2
+ export type { UserListFilterParams, UserRoleGroup } from './types';
3
3
  export * from './shared';
@@ -1,24 +1,6 @@
1
- import { SortingParams } from '../../../Common/Types';
1
+ import { BaseFilterQueryParams } from '../../../Shared';
2
2
  import { UserListSortableKeys, UserStatus } from './constants';
3
3
 
4
- export type BaseFilterQueryParams<T> = {
5
- /**
6
- * Offset for the list result
7
- */
8
- offset?: number;
9
- /**
10
- * Number of items required in the list
11
- */
12
- size?: number;
13
- /**
14
- * Search string (if any)
15
- */
16
- searchKey?: string;
17
- /**
18
- * If true, all items are returned with any search / filtering applied without pagination
19
- */
20
- showAll?: boolean;
21
- } & SortingParams<T>;
22
4
  export type UserListFilterParams = BaseFilterQueryParams<UserListSortableKeys> & {
23
5
  /**
24
6
  * Selected statuses (if any)
@@ -4,9 +4,8 @@ export interface GVKType {
4
4
  Group: string;
5
5
  Version: string;
6
6
  Kind: Nodes | NodeType;
7
- shortNames?: string[] | null;
8
7
  }
9
- export interface ApiResourceGroupType extends Pick<GVKType, 'shortNames'> {
8
+ export interface ApiResourceGroupType {
10
9
  gvk: GVKType;
11
10
  namespaced: boolean;
12
11
  isGrouped?: boolean;
@@ -0,0 +1,4 @@
1
+ import { LogStageAccordionProps } from './types';
2
+
3
+ declare const LogStageAccordion: ({ stage, isOpen, logs, endTime, startTime, status, handleStageClose, handleStageOpen, stageIndex, isLoading, }: LogStageAccordionProps) => JSX.Element;
4
+ export default LogStageAccordion;
@@ -43,3 +43,5 @@ export declare const DEFAULT_ENV = "devtron-ci";
43
43
  export declare const LOGS_RETRY_COUNT = 3;
44
44
  export declare const DEPLOYMENT_STATUS_QUERY_PARAM = "deployment-status";
45
45
  export declare const MANIFEST_STATUS_HEADERS: string[];
46
+ export declare const LOGS_STAGE_IDENTIFIER = "STAGE_INFO";
47
+ export declare const LOGS_STAGE_STREAM_SEPARATOR = "|";
@@ -5,7 +5,6 @@ export { default as CDEmptyState } from './CDEmptyState';
5
5
  export { default as DeploymentStatusDetailBreakdown } from './DeploymentStatusBreakdown';
6
6
  export { default as AppStatusDetailsChart } from './AppStatusDetailsChart';
7
7
  export { default as DeploymentDetailSteps } from './DeploymentDetailSteps';
8
- export { default as DetectBottom } from './DetectBottom';
9
8
  export * from './types';
10
9
  export * from './service';
11
10
  export * from './History.components';
@@ -584,6 +584,37 @@ export interface TriggerHistoryFilterCriteriaProps {
584
584
  releaseId: number;
585
585
  showCurrentReleaseDeployments: boolean;
586
586
  }
587
+ export declare enum StageStatusType {
588
+ SUCCESS = "Success",
589
+ FAILURE = "Failure",
590
+ /**
591
+ * Not given in API response
592
+ */
593
+ PROGRESSING = "Progressing"
594
+ }
595
+ export interface StageInfoDTO {
596
+ stage: string;
597
+ startTime: string;
598
+ endTime?: string;
599
+ status?: StageStatusType;
600
+ }
601
+ export interface StageDetailType extends Pick<StageInfoDTO, 'stage' | 'startTime' | 'endTime' | 'status'> {
602
+ logs: string[];
603
+ isOpen: boolean;
604
+ }
605
+ export interface LogStageAccordionProps extends StageDetailType {
606
+ handleStageClose: (index: number) => void;
607
+ handleStageOpen: (index: number) => void;
608
+ stageIndex: number;
609
+ /**
610
+ * A stage is loading if it is last in current stage list and event is not closed
611
+ */
612
+ isLoading: boolean;
613
+ }
614
+ export interface CreateMarkupReturnType {
615
+ __html: string;
616
+ isSearchKeyPresent: boolean;
617
+ }
587
618
  export type TriggerHistoryFilterCriteriaType = `${string}|${string}|${string}`[];
588
619
  export declare const terminalStatus: Set<string>;
589
620
  export declare const statusSet: Set<string>;
@@ -1,6 +1,7 @@
1
- import { TriggerHistoryFilterCriteriaProps, DeploymentHistoryResultObject, TriggerHistoryFilterCriteriaType } from './types';
1
+ import { TriggerHistoryFilterCriteriaProps, DeploymentHistoryResultObject, TriggerHistoryFilterCriteriaType, StageStatusType } from './types';
2
2
 
3
3
  export declare const getTriggerHistoryFilterCriteria: ({ appId, envId, releaseId, showCurrentReleaseDeployments, }: TriggerHistoryFilterCriteriaProps) => TriggerHistoryFilterCriteriaType;
4
4
  export declare const getParsedTriggerHistory: (result: any) => DeploymentHistoryResultObject;
5
5
  export declare const buildHoverHtmlForWebhook: (eventName: any, condition: any, selectors: any) => JSX.Element;
6
6
  export declare const renderIcon: (iconState: string) => JSX.Element;
7
+ export declare const getStageStatusIcon: (status: StageStatusType) => JSX.Element;
@@ -0,0 +1,5 @@
1
+ interface DetectBottomProps {
2
+ callback: () => void;
3
+ }
4
+ declare const DetectBottom: ({ callback }: DetectBottomProps) => JSX.Element;
5
+ export default DetectBottom;
@@ -0,0 +1 @@
1
+ export { default as DetectBottom } from './DetectBottom.component';
@@ -3,5 +3,5 @@ import { FilterChipsProps } from './types';
3
3
  /**
4
4
  * Component for rendering the applied filter chips
5
5
  */
6
- declare const FilterChips: <T = Record<string, unknown>>({ filterConfig, clearFilters, onRemoveFilter, getFormattedLabel, getFormattedValue, className, clearButtonClassName, }: FilterChipsProps<T>) => JSX.Element;
6
+ declare const FilterChips: <T = Record<string, unknown>>({ filterConfig, clearFilters, onRemoveFilter, getFormattedLabel, getFormattedValue, className, clearButtonClassName, shouldHideLabel, }: FilterChipsProps<T>) => JSX.Element;
7
7
  export default FilterChips;
@@ -4,7 +4,7 @@ export interface FilterChipProps {
4
4
  /**
5
5
  * Filter label
6
6
  */
7
- label: string;
7
+ label?: string;
8
8
  /**
9
9
  * Corresponding value of the filter
10
10
  */
@@ -21,8 +21,13 @@ export interface FilterChipProps {
21
21
  * If passed, the label will be formatted accordingly
22
22
  */
23
23
  getFormattedValue?: (filterKey: string, filterValue: unknown) => ReactNode;
24
+ /**
25
+ * If true, would hide the label
26
+ * @default false
27
+ */
28
+ shouldHideLabel?: boolean;
24
29
  }
25
- export interface FilterChipsProps<T = Record<string, unknown>> extends Pick<FilterChipProps, 'getFormattedLabel' | 'getFormattedValue'> {
30
+ export interface FilterChipsProps<T = Record<string, unknown>> extends Pick<FilterChipProps, 'getFormattedLabel' | 'getFormattedValue' | 'shouldHideLabel'> {
26
31
  /**
27
32
  * Current filter configuration
28
33
  */
@@ -0,0 +1,4 @@
1
+ import { PluginCardProps } from './types';
2
+
3
+ declare const PluginCard: ({ isSelectable, pluginDataStore, handlePluginSelection, parentPluginId, isSelected, showCardBorder, }: PluginCardProps) => JSX.Element;
4
+ export default PluginCard;
@@ -0,0 +1,4 @@
1
+ import { PluginCardSkeletonListProps } from './types';
2
+
3
+ declare const PluginCardSkeletonList: ({ count }: PluginCardSkeletonListProps) => JSX.Element;
4
+ export default PluginCardSkeletonList;
@@ -0,0 +1,4 @@
1
+ import { PluginImageContainerProps } from './types';
2
+
3
+ declare const PluginImageContainer: ({ imageProps, fallbackImageClassName }: PluginImageContainerProps) => JSX.Element;
4
+ export default PluginImageContainer;
@@ -0,0 +1,4 @@
1
+ import { PluginListProps } from './types';
2
+
3
+ declare const PluginList: ({ pluginDataStore, pluginList, totalCount, handleDataUpdateForPluginResponse, filters: { selectedTags, searchKey }, handlePluginSelection, selectedPluginsMap, isSelectable, handleClearFilters, showCardBorder, getPluginStoreRef, }: PluginListProps) => JSX.Element;
4
+ export default PluginList;
@@ -0,0 +1,4 @@
1
+ import { PluginListContainerProps } from './types';
2
+
3
+ declare const PluginListContainer: ({ availableTags, handleUpdateAvailableTags, pluginDataStore, handlePluginDataStoreUpdate, handlePluginSelection, isSelectable, selectedPluginsMap, persistFilters, parentPluginList, handleParentPluginListUpdate, parentTotalCount, handleParentTotalCount, parentFilters, handleUpdateParentFilters, rootClassName, showCardBorder, }: Readonly<PluginListContainerProps>) => JSX.Element;
4
+ export default PluginListContainer;
@@ -0,0 +1,4 @@
1
+ import { PluginTagSelectProps } from './types';
2
+
3
+ declare const PluginTagSelect: ({ availableTags, handleUpdateSelectedTags, selectedTags, isLoading, hasError, reloadTags, }: PluginTagSelectProps) => JSX.Element;
4
+ export default PluginTagSelect;
@@ -0,0 +1,4 @@
1
+ import { PluginTagsContainerProps } from './types';
2
+
3
+ declare const PluginTagsContainer: ({ tags, rootClassName }: PluginTagsContainerProps) => JSX.Element;
4
+ export default PluginTagsContainer;
@@ -0,0 +1,5 @@
1
+ import { PluginDataStoreType, PluginListFiltersType } from './types';
2
+
3
+ export declare const DEFAULT_PLUGIN_DATA_STORE: PluginDataStoreType;
4
+ export declare const DEFAULT_PLUGIN_LIST_FILTERS: PluginListFiltersType;
5
+ export declare const DEFAULT_PLUGIN_CREATED_BY = "Devtron";
@@ -0,0 +1,7 @@
1
+ export * from './types';
2
+ export * from './service';
3
+ export * from './utils';
4
+ export * from './constants';
5
+ export { default as PluginListContainer } from './PluginListContainer';
6
+ export { default as PluginTagsContainer } from './PluginTagsContainer';
7
+ export { default as PluginImageContainer } from './PluginImageContainer';
@@ -0,0 +1,5 @@
1
+ import { GetPluginStoreDataReturnType, GetPluginStoreDataServiceParamsType, PluginDetailServiceParamsType } from './types';
2
+
3
+ export declare const getPluginsDetail: ({ appId, parentPluginIds, pluginIds, shouldShowError, }: PluginDetailServiceParamsType) => Promise<Pick<GetPluginStoreDataReturnType, 'pluginStore'>>;
4
+ export declare const getPluginStoreData: ({ searchKey, selectedTags, appId, offset, signal, }: GetPluginStoreDataServiceParamsType) => Promise<GetPluginStoreDataReturnType>;
5
+ export declare const getAvailablePluginTags: (appId: number) => Promise<string[]>;
@@ -0,0 +1,180 @@
1
+ import { MutableRefObject } from 'react';
2
+ import { VariableType } from '../../../Common';
3
+ import { BaseFilterQueryParams } from '../../types';
4
+ import { ImageWithFallbackProps } from '../ImageWithFallback';
5
+ import { getPluginStoreData } from './service';
6
+
7
+ export declare enum PluginCreationType {
8
+ SHARED = "SHARED",
9
+ PRESET = "PRESET"
10
+ }
11
+ export interface GetPluginTagsPayloadType {
12
+ appId: number;
13
+ }
14
+ export interface PluginTagNamesDTO {
15
+ tagNames: string[];
16
+ }
17
+ /**
18
+ * Minimal data of child plugins
19
+ */
20
+ interface MinimalPluginVersionDataDTO {
21
+ id: number;
22
+ name: string;
23
+ description: string;
24
+ pluginVersion: string;
25
+ isLatest: boolean;
26
+ }
27
+ interface DetailedPluginVersionDTO extends MinimalPluginVersionDataDTO {
28
+ tags: string[];
29
+ inputVariables: VariableType[];
30
+ outputVariables: VariableType[];
31
+ /**
32
+ * Present in case of shared plugin
33
+ */
34
+ updatedBy?: string;
35
+ docLink?: string;
36
+ }
37
+ interface PluginVersionsDTO {
38
+ detailedPluginVersionData: DetailedPluginVersionDTO[];
39
+ minimalPluginVersionData: MinimalPluginVersionDataDTO[];
40
+ }
41
+ export interface ParentPluginDTO {
42
+ id: number;
43
+ name: string;
44
+ description: string;
45
+ type: PluginCreationType;
46
+ icon: string;
47
+ pluginVersions: PluginVersionsDTO;
48
+ }
49
+ export interface PluginDetailDTO {
50
+ parentPlugins: ParentPluginDTO[];
51
+ totalCount: number;
52
+ }
53
+ export interface PluginDetailServiceParamsType {
54
+ appId: number;
55
+ pluginIds?: number[];
56
+ parentPluginIds?: number[];
57
+ /**
58
+ * @default true
59
+ */
60
+ shouldShowError?: boolean;
61
+ }
62
+ export interface PluginDetailPayloadType extends Pick<PluginDetailServiceParamsType, 'appId'> {
63
+ pluginId?: PluginDetailServiceParamsType['pluginIds'];
64
+ parentPluginId?: PluginDetailServiceParamsType['parentPluginIds'];
65
+ }
66
+ export interface PluginListFiltersType extends Pick<BaseFilterQueryParams<unknown>, 'searchKey'> {
67
+ selectedTags: string[];
68
+ }
69
+ interface ParentPluginType extends Pick<ParentPluginDTO, 'id' | 'name' | 'description' | 'type' | 'icon'> {
70
+ latestVersionId: MinimalPluginVersionDataDTO['id'];
71
+ pluginVersions: MinimalPluginVersionDataDTO[];
72
+ }
73
+ interface DetailedPluginVersionType extends Pick<MinimalPluginVersionDataDTO, 'id' | 'description' | 'name' | 'pluginVersion'>, Pick<DetailedPluginVersionDTO, 'tags' | 'isLatest' | 'inputVariables' | 'outputVariables' | 'updatedBy' | 'docLink'>, Pick<ParentPluginType, 'icon' | 'type'> {
74
+ parentPluginId: ParentPluginType['id'];
75
+ }
76
+ export interface PluginDataStoreType {
77
+ parentPluginStore: Record<number, ParentPluginType>;
78
+ pluginVersionStore: Record<number, DetailedPluginVersionType>;
79
+ }
80
+ export interface PluginDetailType extends DetailedPluginVersionType {
81
+ }
82
+ export type PluginListItemType = Pick<PluginDetailType, 'parentPluginId'>;
83
+ interface BasePluginListContainerProps {
84
+ availableTags: string[];
85
+ handleUpdateAvailableTags: (tags: string[]) => void;
86
+ handlePluginSelection: (parentPluginId: PluginDetailType['parentPluginId']) => void;
87
+ pluginDataStore: PluginDataStoreType;
88
+ handlePluginDataStoreUpdate: (pluginStore: PluginDataStoreType) => void;
89
+ rootClassName?: string;
90
+ showCardBorder?: boolean;
91
+ }
92
+ type PluginListType = {
93
+ persistFilters: true;
94
+ parentPluginList: PluginListItemType[];
95
+ handleParentPluginListUpdate: (pluginList: PluginListItemType[]) => void;
96
+ parentTotalCount: number;
97
+ handleParentTotalCount: (totalCount: number) => void;
98
+ parentFilters: PluginListFiltersType;
99
+ handleUpdateParentFilters: (filters: PluginListFiltersType) => void;
100
+ } | {
101
+ persistFilters: false;
102
+ parentPluginList?: never;
103
+ handleParentPluginListUpdate?: never;
104
+ parentTotalCount?: never;
105
+ handleParentTotalCount?: never;
106
+ parentFilters?: never;
107
+ handleUpdateParentFilters?: never;
108
+ };
109
+ export type PluginListContainerProps = BasePluginListContainerProps & PluginListType & ({
110
+ /**
111
+ * Would be used to identify the case where we are selecting plugins like mandatory plugin list
112
+ */
113
+ isSelectable: false;
114
+ selectedPluginsMap?: never;
115
+ } | {
116
+ isSelectable: true;
117
+ /**
118
+ * Map of parentId to boolean
119
+ */
120
+ selectedPluginsMap: Record<number, true>;
121
+ });
122
+ export interface GetPluginStoreDataServiceParamsType extends Pick<PluginListFiltersType, 'searchKey' | 'selectedTags'> {
123
+ signal: AbortSignal;
124
+ appId: number;
125
+ offset?: number;
126
+ }
127
+ export interface GetPluginListPayloadType extends Pick<GetPluginStoreDataServiceParamsType, 'searchKey' | 'offset' | 'appId'> {
128
+ tag: PluginListFiltersType['selectedTags'];
129
+ size: number;
130
+ }
131
+ export interface GetPluginStoreDataReturnType {
132
+ totalCount: number;
133
+ pluginStore: PluginDataStoreType;
134
+ /**
135
+ * Sorted on the basis of name of latest version of parent plugin
136
+ */
137
+ parentPluginIdList: number[];
138
+ }
139
+ export interface PluginListParamsType {
140
+ appId?: string;
141
+ }
142
+ export interface PluginTagSelectProps extends Pick<BasePluginListContainerProps, 'availableTags'> {
143
+ selectedTags: PluginListContainerProps['parentFilters']['selectedTags'];
144
+ isLoading: boolean;
145
+ hasError: boolean;
146
+ reloadTags: () => void;
147
+ handleUpdateSelectedTags: (tags: string[]) => void;
148
+ }
149
+ export interface PluginListProps extends Pick<PluginListContainerProps, 'pluginDataStore' | 'handlePluginSelection' | 'selectedPluginsMap' | 'isSelectable' | 'showCardBorder'> {
150
+ handleDataUpdateForPluginResponse: (pluginResponse: Awaited<ReturnType<typeof getPluginStoreData>>,
151
+ /**
152
+ * If true, the response would be appended to the existing data
153
+ * if false, the existing data would be replaced with the new data
154
+ * @default false
155
+ */
156
+ appendResponse?: boolean) => void;
157
+ handleClearFilters: () => void;
158
+ pluginList: PluginListContainerProps['parentPluginList'];
159
+ totalCount: PluginListContainerProps['parentTotalCount'];
160
+ filters: PluginListContainerProps['parentFilters'];
161
+ getPluginStoreRef: MutableRefObject<AbortController>;
162
+ }
163
+ export interface PluginCardProps extends Pick<PluginListProps, 'isSelectable' | 'pluginDataStore' | 'handlePluginSelection' | 'showCardBorder'> {
164
+ parentPluginId: PluginDetailType['parentPluginId'];
165
+ isSelected: boolean;
166
+ }
167
+ export interface PluginCardSkeletonListProps {
168
+ /**
169
+ * @default 3
170
+ */
171
+ count?: number;
172
+ }
173
+ export interface PluginTagsContainerProps {
174
+ tags: string[];
175
+ rootClassName?: string;
176
+ }
177
+ export interface PluginImageContainerProps extends Pick<ImageWithFallbackProps, 'imageProps'> {
178
+ fallbackImageClassName?: string;
179
+ }
180
+ export {};
@@ -0,0 +1,20 @@
1
+ import { ParentPluginDTO, PluginDataStoreType } from './types';
2
+
3
+ export declare const parsePluginDetailsDTOIntoPluginStore: (pluginData: ParentPluginDTO[]) => PluginDataStoreType;
4
+ export declare const pluginTagSelectStyles: {
5
+ option: (base: any, state: any) => any;
6
+ container: (base: any, state: any) => any;
7
+ menuList: (base: any) => any;
8
+ control: (base: any, state: any) => any;
9
+ dropdownIndicator: (base: any, state: any) => any;
10
+ valueContainer: (base: any) => any;
11
+ loadingMessage: (base: any) => any;
12
+ noOptionsMessage: (base: any) => any;
13
+ placeholder: (base: any) => any;
14
+ group: (base: any) => any;
15
+ groupHeading: (base: any) => any;
16
+ };
17
+ /**
18
+ * @description This method takes the initial plugin data store and updates the keys with the target parent plugin store and plugin version store
19
+ */
20
+ export declare const getUpdatedPluginStore: (initialPluginDataStore: PluginDataStoreType, targetParentPluginStore: PluginDataStoreType['parentPluginStore'], targetPluginVersionStore: PluginDataStoreType['pluginVersionStore']) => PluginDataStoreType;
@@ -1,4 +1,5 @@
1
- import { MenuListProps } from 'react-select';
1
+ import { MenuListProps, ValueContainerProps } from 'react-select';
2
+ import { OptionType } from '../../../Common';
2
3
 
3
4
  export declare const getCommonSelectStyle: (styleOverrides?: {}) => {
4
5
  container: (base: any, state: any) => any;
@@ -33,3 +34,6 @@ export declare const commonSelectStyles: {
33
34
  export declare const MenuListWithApplyButton: ({ handleApplyFilter, ...props }: MenuListProps<unknown, boolean, import('react-select').GroupBase<unknown>> & {
34
35
  handleApplyFilter: () => void;
35
36
  }) => JSX.Element;
37
+ export declare const MultiSelectValueContainer: ({ title, ...props }: ValueContainerProps<OptionType<string, string>, true, import('react-select').GroupBase<OptionType<string, string>>> & {
38
+ title: string;
39
+ }) => JSX.Element;
@@ -30,5 +30,7 @@ export * from './ImageChipCell';
30
30
  export * from './ArtifactInfoModal';
31
31
  export * from './MaterialHistory';
32
32
  export * from './IframeContainer';
33
+ export * from './Plugin';
33
34
  export * from './KeyValueTable';
34
35
  export * from './SelectPicker';
36
+ export * from './DetectBottom';
@@ -32,5 +32,7 @@ export declare const renderValidInputButtonTippy: (children: ReactElement) => JS
32
32
  export declare const processDeploymentStatusDetailsData: (data?: DeploymentStatusDetailsType) => DeploymentStatusDetailsBreakdownDataType;
33
33
  export declare function aggregateNodes(nodes: any[], podMetadata: PodMetadatum[]): AggregatedNodes;
34
34
  export declare const decode: (data: any, isEncoded?: boolean) => {};
35
+ export declare const isTimeStringAvailable: (time: string) => boolean;
36
+ export declare const getTimeDifference: (startTime: string, endTime: string) => string;
35
37
  export declare const getFileNameFromHeaders: (headers: Headers) => string;
36
38
  export {};
@@ -354,6 +354,7 @@ export declare enum K8sResourcePayloadAppType {
354
354
  HELM_APP = 1,
355
355
  EXTERNAL_ARGO_APP = 2
356
356
  }
357
+ export declare const ANSI_UP_REGEX: RegExp;
357
358
  /**
358
359
  * Size variants for components
359
360
  */
@@ -1,4 +1,4 @@
1
- import { OptionType, CommonNodeAttr, ResponseType, UserApprovalConfigType, VulnerabilityType, DeploymentAppTypes, ServerErrors } from '../Common';
1
+ import { OptionType, CommonNodeAttr, ResponseType, UserApprovalConfigType, VulnerabilityType, DeploymentAppTypes, ServerErrors, SortingParams } from '../Common';
2
2
  import { EnvironmentTypeEnum, PatchOperationType } from './constants';
3
3
 
4
4
  export declare enum EnvType {
@@ -522,4 +522,22 @@ export interface BatchConfigType {
522
522
  export interface scrollableInterface {
523
523
  autoBottomScroll: boolean;
524
524
  }
525
+ export type BaseFilterQueryParams<T> = {
526
+ /**
527
+ * Offset for the list result
528
+ */
529
+ offset?: number;
530
+ /**
531
+ * Number of items required in the list
532
+ */
533
+ size?: number;
534
+ /**
535
+ * Search string (if any)
536
+ */
537
+ searchKey?: string;
538
+ /**
539
+ * If true, all items are returned with any search / filtering applied without pagination
540
+ */
541
+ showAll?: boolean;
542
+ } & SortingParams<T>;
525
543
  export {};