@devtron-labs/devtron-fe-common-lib 1.2.4-beta-10 → 1.2.4-beta-11

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 (167) hide show
  1. package/dist/{@code-editor-D1CIPdWh.js → @code-editor-Chu1vTHn.js} +6035 -5553
  2. package/dist/{@common-rjsf-Q8p7AZGM.js → @common-rjsf-BfhqMfwN.js} +1 -1
  3. package/dist/Common/CIPipeline.Types.d.ts +26 -1
  4. package/dist/Common/Constants.d.ts +1 -0
  5. package/dist/Common/CustomTagSelector/ResizableTagTextArea.d.ts +1 -1
  6. package/dist/Common/CustomTagSelector/Types.d.ts +8 -15
  7. package/dist/Common/Helper.d.ts +1 -2
  8. package/dist/Common/PopupMenu.d.ts +1 -1
  9. package/dist/Common/RJSF/Form.d.ts +1 -1
  10. package/dist/Common/Types.d.ts +5 -3
  11. package/dist/Pages/Applications/DevtronApps/Details/CDPipeline/index.d.ts +1 -0
  12. package/dist/Pages/Applications/DevtronApps/Details/CDPipeline/services.d.ts +7 -0
  13. package/dist/Pages/Applications/DevtronApps/Details/CIPipeline/index.d.ts +1 -0
  14. package/dist/Pages/Applications/DevtronApps/Details/CIPipeline/services.d.ts +11 -0
  15. package/dist/Pages/Applications/DevtronApps/Details/index.d.ts +1 -0
  16. package/dist/Shared/Components/DynamicDataTable/DynamicDataTable.d.ts +2 -0
  17. package/dist/Shared/Components/DynamicDataTable/DynamicDataTableHeader.d.ts +2 -0
  18. package/dist/Shared/Components/DynamicDataTable/DynamicDataTableRow.d.ts +2 -0
  19. package/dist/Shared/Components/DynamicDataTable/constants.d.ts +2 -0
  20. package/dist/Shared/Components/DynamicDataTable/index.d.ts +2 -0
  21. package/dist/Shared/Components/DynamicDataTable/types.d.ts +161 -0
  22. package/dist/Shared/Components/DynamicDataTable/utils.d.ts +5 -0
  23. package/dist/Shared/Components/FileUpload/FileUpload.d.ts +2 -0
  24. package/dist/Shared/Components/FileUpload/index.d.ts +2 -0
  25. package/dist/Shared/Components/FileUpload/types.d.ts +7 -0
  26. package/dist/Shared/Components/KeyValueTable/KeyValueTable.types.d.ts +1 -1
  27. package/dist/Shared/Components/SelectTextArea/SelectTextArea.d.ts +2 -0
  28. package/dist/Shared/Components/SelectTextArea/index.d.ts +2 -0
  29. package/dist/Shared/Components/SelectTextArea/types.d.ts +12 -0
  30. package/dist/Shared/Components/index.d.ts +2 -0
  31. package/dist/Shared/Store/IndexStore.d.ts +0 -1
  32. package/dist/Shared/types.d.ts +32 -2
  33. package/dist/assets/@code-editor.css +1 -1
  34. package/dist/assets/app-not-deployed.acdf0271.png +0 -0
  35. package/dist/assets/delete-medium.baa284da.svg +1 -26
  36. package/dist/assets/empty-noresult@2x.022ec87c.png +0 -0
  37. package/dist/assets/ic-abort.0d2773e9.svg +1 -34
  38. package/dist/assets/ic-aborted.e7288a6c.svg +1 -5
  39. package/dist/assets/ic-add.cfaa779b.svg +1 -19
  40. package/dist/assets/ic-appstatus-cancelled.05bb3352.svg +1 -22
  41. package/dist/assets/ic-arrow-backward.d951202a.svg +1 -19
  42. package/dist/assets/ic-arrow-counter-clockwise.01cbb0e1.svg +1 -21
  43. package/dist/assets/ic-arrow-down.18e5e332.svg +1 -19
  44. package/dist/assets/ic-arrow-forward.a2b8ab45.svg +1 -27
  45. package/dist/assets/ic-arrow-out.6aea09d0.svg +1 -19
  46. package/dist/assets/ic-arrow-right.f942ee03.svg +1 -7
  47. package/dist/assets/ic-arrow-square-out.1be837ac.svg +1 -19
  48. package/dist/assets/ic-arrow-up-down.945ee496.svg +1 -19
  49. package/dist/assets/ic-bold.2140b7c6.svg +1 -19
  50. package/dist/assets/ic-book-open.7cb94ee8.svg +1 -19
  51. package/dist/assets/ic-bot.f1d4abcc.svg +1 -23
  52. package/dist/assets/ic-branch.8db43d66.svg +1 -19
  53. package/dist/assets/ic-calendar.984accc5.svg +1 -19
  54. package/dist/assets/ic-calender-blank.963e3423.svg +1 -19
  55. package/dist/assets/ic-caret-down-small.2cc24039.svg +1 -3
  56. package/dist/assets/ic-caret-down.1666c029.svg +1 -19
  57. package/dist/assets/ic-caret-left-small.fe00c98d.svg +1 -19
  58. package/dist/assets/ic-charts.f41e185f.svg +1 -19
  59. package/dist/assets/ic-chat-circle-dots.e15514f8.svg +1 -23
  60. package/dist/assets/ic-check-all.0376437d.svg +1 -21
  61. package/dist/assets/ic-check-circle.ad80d835.svg +1 -25
  62. package/dist/assets/ic-check-grey.f556e371.svg +1 -21
  63. package/dist/assets/ic-check-square.2a3d3fb9.svg +1 -20
  64. package/dist/assets/ic-check.27c51fa1.svg +1 -21
  65. package/dist/assets/ic-checked-list.aba26c40.svg +1 -19
  66. package/dist/assets/ic-chevron-down.fc70d7a7.svg +1 -21
  67. package/dist/assets/ic-circle.05f86ff6.svg +1 -9
  68. package/dist/assets/ic-clair.ba79956f.svg +1 -21
  69. package/dist/assets/ic-clear-square.e60de021.svg +1 -0
  70. package/dist/assets/ic-clock.c21a2d14.svg +1 -19
  71. package/dist/assets/ic-close.43adc42a.svg +1 -25
  72. package/dist/assets/ic-cloud-upload.18066e05.svg +1 -0
  73. package/dist/assets/ic-code-commit.161a6b3c.svg +1 -19
  74. package/dist/assets/ic-code.1d1d4dd8.svg +1 -19
  75. package/dist/assets/ic-collapse-all.fd7b27b1.svg +1 -3
  76. package/dist/assets/ic-commit.e3113dd9.svg +1 -23
  77. package/dist/assets/ic-compare.0ee3e4cf.svg +1 -22
  78. package/dist/assets/ic-copy.94cee0fb.svg +1 -19
  79. package/dist/assets/ic-cpu.8be677ee.svg +1 -20
  80. package/dist/assets/ic-cross.01e03666.svg +1 -19
  81. package/dist/assets/ic-delete-interactive.304dd293.svg +1 -19
  82. package/dist/assets/ic-diff-file-added.0deb6763.svg +1 -10
  83. package/dist/assets/ic-diff-file-removed.2ed80281.svg +1 -10
  84. package/dist/assets/ic-diff-file-updated.c8740f72.svg +1 -10
  85. package/dist/assets/ic-disconnected.551d6161.svg +1 -29
  86. package/dist/assets/ic-discord-fill.1a1b291d.svg +1 -19
  87. package/dist/assets/ic-docker.48906f4d.svg +1 -19
  88. package/dist/assets/ic-download.c30437cd.svg +1 -21
  89. package/dist/assets/ic-drag.3f71e8aa.svg +1 -24
  90. package/dist/assets/ic-edit-file.a782640f.svg +1 -20
  91. package/dist/assets/ic-enter.cab07082.svg +1 -19
  92. package/dist/assets/ic-error-cross.bf21e563.svg +1 -24
  93. package/dist/assets/ic-error-exclamation.c224de09.svg +1 -22
  94. package/dist/assets/ic-error-medium.ea542259.svg +1 -22
  95. package/dist/assets/ic-error.a25d2f0d.svg +1 -4
  96. package/dist/assets/ic-errorInfo.d8d674b8.svg +1 -23
  97. package/dist/assets/ic-exit-fullscreen.1ae582d1.svg +1 -19
  98. package/dist/assets/ic-expand-all.a0744f9f.svg +1 -3
  99. package/dist/assets/ic-expand.ab992205.svg +1 -19
  100. package/dist/assets/ic-feedback.d32fa6b0.svg +1 -19
  101. package/dist/assets/ic-file-code.21a1f748.svg +1 -7
  102. package/dist/assets/ic-file-text.f9563710.svg +1 -19
  103. package/dist/assets/ic-files.fc290dee.svg +1 -19
  104. package/dist/assets/ic-filter-applied.9fc48d0f.svg +1 -20
  105. package/dist/assets/ic-filter.8f403d6f.svg +1 -19
  106. package/dist/assets/ic-folder.051cd30d.svg +1 -19
  107. package/dist/assets/ic-fullscreen-2.f138a5e8.svg +1 -19
  108. package/dist/assets/ic-fullscreen.b05e5087.svg +1 -19
  109. package/dist/assets/ic-hash.cd11c334.svg +1 -3
  110. package/dist/assets/ic-header.a91a9800.svg +1 -21
  111. package/dist/assets/ic-help-outline.9c012a0c.svg +1 -19
  112. package/dist/assets/ic-help.39c58c34.svg +1 -19
  113. package/dist/assets/ic-image.2a8ed117.svg +1 -20
  114. package/dist/assets/ic-in-progress.0598554b.svg +1 -10
  115. package/dist/assets/ic-info-filled-override.99e8094a.svg +1 -20
  116. package/dist/assets/ic-info-filled.4b0b46d1.svg +1 -20
  117. package/dist/assets/ic-info-outline.f4be8a1e.svg +1 -4
  118. package/dist/assets/ic-info-outlined.f4fa3224.svg +1 -29
  119. package/dist/assets/ic-italic.358ca070.svg +1 -19
  120. package/dist/assets/ic-k8s-job.f4414c10.svg +1 -19
  121. package/dist/assets/ic-lego-block.ee4b63f1.svg +1 -36
  122. package/dist/assets/ic-lines.395ef3db.svg +1 -3
  123. package/dist/assets/ic-link.8453e775.svg +1 -19
  124. package/dist/assets/ic-loading-failure.aa68693d.png +0 -0
  125. package/dist/assets/ic-locked.3b9eff02.svg +1 -5
  126. package/dist/assets/ic-mechanical-operation.08b38afd.svg +1 -84
  127. package/dist/assets/ic-medium-info.eee4a07b.svg +1 -5
  128. package/dist/assets/ic-megaphone.b9f9a901.svg +1 -19
  129. package/dist/assets/ic-memory.c4159f96.svg +1 -19
  130. package/dist/assets/ic-message.be6dba43.svg +1 -19
  131. package/dist/assets/ic-minus.df865aaf.svg +1 -19
  132. package/dist/assets/ic-nav-rocket.9e50bb61.svg +1 -19
  133. package/dist/assets/ic-not-authorized.2d8e208f.svg +1 -78
  134. package/dist/assets/ic-not-found.86f588bf.svg +1 -176
  135. package/dist/assets/ic-onboarding.c98f9ef9.svg +1 -19
  136. package/dist/assets/ic-open-in-new.6aea09d0.svg +1 -19
  137. package/dist/assets/ic-ordered-list.879dc7c8.svg +1 -19
  138. package/dist/assets/ic-page-not-found.da74a367.svg +1 -81
  139. package/dist/assets/ic-pencil.c75a6acc.svg +1 -19
  140. package/dist/assets/ic-person.f78738ac.svg +1 -22
  141. package/dist/assets/ic-pull-request.31d0c981.svg +1 -19
  142. package/dist/assets/ic-pulsate-status.9264740e.svg +1 -21
  143. package/dist/assets/ic-quote.10768489.svg +1 -19
  144. package/dist/assets/ic-regex.e14a4ea3.svg +1 -19
  145. package/dist/assets/ic-rocket-fail.874e54ce.svg +1 -20
  146. package/dist/assets/ic-rotate-devtron.200e165b.svg +1 -119
  147. package/dist/assets/ic-search.976327f1.svg +1 -22
  148. package/dist/assets/ic-sort-arrow-down.5cf54d08.svg +1 -19
  149. package/dist/assets/ic-stamp.8689f42d.svg +1 -9
  150. package/dist/assets/ic-strikethrough.a1652ad9.svg +1 -19
  151. package/dist/assets/ic-success.8c8fe69d.svg +1 -4
  152. package/dist/assets/ic-tag.1613fc59.svg +1 -19
  153. package/dist/assets/ic-timeout-red.5eda1010.svg +1 -21
  154. package/dist/assets/ic-timer.b62145ec.svg +1 -19
  155. package/dist/assets/ic-trivy.d5338454.svg +1 -25
  156. package/dist/assets/ic-unordered-list.42c1cbbc.svg +1 -22
  157. package/dist/assets/ic-view-variable-toggle.c335dfa0.svg +1 -24
  158. package/dist/assets/ic-vulnerability-not-found.d8a4d43c.svg +1 -65
  159. package/dist/assets/ic-warning-y5.2ad9d7f4.svg +1 -20
  160. package/dist/assets/ic-warning.10bcf8bd.svg +1 -23
  161. package/dist/assets/ic-webhook.d4431b07.svg +1 -31
  162. package/dist/assets/ic-world.1f6a5eaf.svg +1 -19
  163. package/dist/assets/inject-tag.28e72db6.svg +1 -21
  164. package/dist/assets/lifebuoy.7d8fdf27.png +0 -0
  165. package/dist/assets/no-artifact@2x.6afc74bc.png +0 -0
  166. package/dist/index.js +494 -488
  167. package/package.json +2 -3
@@ -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-D1CIPdWh.js";
5
+ import { T as y, c as H, a as J, d as w } from "./@code-editor-Chu1vTHn.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";
@@ -70,11 +70,30 @@ export declare enum RefVariableStageType {
70
70
  PRE_CI = "PRE_CI",
71
71
  POST_CI = "POST_CI"
72
72
  }
73
+ export interface FilePropertyType {
74
+ allowedExtensions: string[];
75
+ maxUploadSize: number;
76
+ }
77
+ export interface ConstraintType {
78
+ fileProperty: FilePropertyType;
79
+ }
80
+ export interface ValueConstraintType {
81
+ choices?: string[];
82
+ blockCustomValue?: boolean;
83
+ constraint?: ConstraintType;
84
+ }
85
+ export declare enum VariableTypeFormat {
86
+ STRING = "STRING",
87
+ NUMBER = "NUMBER",
88
+ BOOL = "BOOL",
89
+ DATE = "DATE",
90
+ FILE = "FILE"
91
+ }
73
92
  export interface VariableType {
74
93
  id: number;
75
94
  name: string;
76
95
  value: string;
77
- format: string;
96
+ format: VariableTypeFormat;
78
97
  description: string;
79
98
  defaultValue: string;
80
99
  allowEmptyValue: boolean;
@@ -83,6 +102,12 @@ export interface VariableType {
83
102
  refVariableName: string;
84
103
  refVariableStage?: RefVariableStageType;
85
104
  variableStepIndexInPlugin?: number;
105
+ fileMountDir: string;
106
+ fileReferenceId?: number;
107
+ valueConstraintId?: number;
108
+ valueConstraint?: ValueConstraintType;
109
+ isRuntimeArg: boolean;
110
+ refVariableUsed: boolean;
86
111
  }
87
112
  interface CommandArgsMap {
88
113
  command: string;
@@ -94,6 +94,7 @@ export declare const ROUTES: {
94
94
  USER_LIST_MIN: string;
95
95
  CONFIG_DATA: string;
96
96
  K8S_RESOURCE_LIST: string;
97
+ FILE_UPLOAD: string;
97
98
  };
98
99
  export declare enum KEY_VALUE {
99
100
  KEY = "key",
@@ -1,2 +1,2 @@
1
1
  import { ResizableTagTextAreaProps } from './Types';
2
- export declare const ResizableTagTextArea: ({ className, minHeight, maxHeight, value, onChange, onBlur, onFocus, placeholder, tabIndex, refVar, dependentRef, dataTestId, handleKeyDown, disabled, disableOnBlurResizeToMinHeight, }: ResizableTagTextAreaProps) => JSX.Element;
2
+ export declare const ResizableTagTextArea: ({ value, minHeight, maxHeight, onBlur, onFocus, refVar, dependentRef, dependentRefs, className, disableOnBlurResizeToMinHeight, id, ...restProps }: ResizableTagTextAreaProps) => JSX.Element;
@@ -1,3 +1,4 @@
1
+ import { DetailedHTMLProps, MutableRefObject, TextareaHTMLAttributes } from 'react';
1
2
  import { KEY_VALUE } from '../Constants';
2
3
  import { OptionType } from '../Types';
3
4
  export interface SuggestedTagOptionType extends OptionType {
@@ -48,24 +49,16 @@ export interface TagLabelValueSelectorType {
48
49
  tagInputType?: KEY_VALUE;
49
50
  placeholder?: string;
50
51
  tabIndex?: number;
51
- refVar?: React.MutableRefObject<HTMLTextAreaElement>;
52
- dependentRef?: React.MutableRefObject<HTMLTextAreaElement>;
52
+ refVar?: MutableRefObject<HTMLTextAreaElement>;
53
+ dependentRef?: MutableRefObject<HTMLTextAreaElement>;
53
54
  noBackDrop?: boolean;
54
55
  }
55
- export interface ResizableTagTextAreaProps {
56
- className?: string;
56
+ export interface ResizableTagTextAreaProps extends Omit<DetailedHTMLProps<TextareaHTMLAttributes<HTMLTextAreaElement>, HTMLTextAreaElement>, 'value'> {
57
57
  minHeight?: number;
58
58
  maxHeight?: number;
59
- value?: string;
60
- onChange?: (e: any) => void;
61
- onBlur?: (e: any) => void;
62
- onFocus?: (e: any) => void;
63
- placeholder?: string;
64
- tabIndex?: number;
65
- refVar?: React.MutableRefObject<HTMLTextAreaElement>;
66
- dependentRef?: React.MutableRefObject<HTMLTextAreaElement>;
67
- dataTestId?: string;
68
- handleKeyDown?: any;
69
- disabled?: boolean;
59
+ value: string;
60
+ refVar?: MutableRefObject<HTMLTextAreaElement>;
61
+ dependentRef?: MutableRefObject<HTMLTextAreaElement>;
62
+ dependentRefs?: Record<string | number, MutableRefObject<HTMLTextAreaElement>>;
70
63
  disableOnBlurResizeToMinHeight?: boolean;
71
64
  }
@@ -2,7 +2,6 @@ import { default as React, SyntheticEvent } from 'react';
2
2
  import { JSONPathOptions } from 'jsonpath-plus';
3
3
  import { AsyncOptions, UseSearchString } from './Types';
4
4
  import { scrollableInterface } from '../Shared';
5
- import * as Sentry from '@sentry/browser';
6
5
  export declare function showError(serverError: any, showToastOnUnknownError?: boolean, hideAccessError?: boolean): void;
7
6
  interface ConditionalWrapper<T> {
8
7
  condition: boolean;
@@ -46,7 +45,7 @@ export declare const getUrlWithSearchParams: <T extends string | number = string
46
45
  /**
47
46
  * Custom exception logger function for logging errors to sentry
48
47
  */
49
- export declare const logExceptionToSentry: typeof Sentry.captureException;
48
+ export declare const logExceptionToSentry: any;
50
49
  export declare const customStyles: {
51
50
  control: (base: any, state: any) => any;
52
51
  indicatorSeparator: (base: any, state: any) => any;
@@ -1,6 +1,6 @@
1
1
  import { PopupMenuBodyType, PopupMenuButtonType, PopupMenuType } from './Types';
2
2
  declare const PopupMenu: {
3
- ({ children, onToggleCallback, autoClose, autoPosition, shouldPreventDefault, }: PopupMenuType): any;
3
+ ({ children, onToggleCallback, autoClose, autoPosition, shouldPreventDefault, disableClose, }: PopupMenuType): any;
4
4
  Button: ({ children, disabled, rootClassName, tabIndex, onHover, isKebab, dataTestId, }: PopupMenuButtonType) => JSX.Element;
5
5
  Body: ({ children, rootClassName, style, autoWidth, preventWheelDisable, noBackDrop, }: PopupMenuBodyType) => JSX.Element;
6
6
  };
@@ -1,3 +1,3 @@
1
1
  import { default as RJSF } from '@rjsf/core';
2
2
  import { FormProps } from './types';
3
- export declare const RJSFForm: import('react').ForwardRefExoticComponent<Pick<FormProps, "name" | "children" | "className" | "disabled" | "id" | "onFocus" | "onBlur" | "onChange" | "onSubmit" | "onError" | "target" | "action" | "tagName" | "autoComplete" | "method" | "noValidate" | "readonly" | "schema" | "uiSchema" | "formContext" | "formData" | "idPrefix" | "idSeparator" | "fields" | "templates" | "widgets" | "translateString" | "acceptcharset" | "acceptCharset" | "enctype" | "customValidate" | "extraErrors" | "extraErrorsBlockSubmit" | "noHtml5Validate" | "liveValidate" | "liveOmit" | "omitExtraData" | "showErrorList" | "transformErrors" | "focusOnFirstError" | "experimental_defaultFormStateBehavior" | "_internalFormWrapper"> & import('react').RefAttributes<RJSF<unknown, import('json-schema').JSONSchema7, import('@rjsf/utils').GenericObjectType>>>;
3
+ export declare const RJSFForm: import('react').ForwardRefExoticComponent<Pick<FormProps, "name" | "id" | "children" | "className" | "disabled" | "onFocus" | "onBlur" | "onChange" | "onSubmit" | "onError" | "target" | "action" | "tagName" | "autoComplete" | "method" | "noValidate" | "readonly" | "schema" | "uiSchema" | "formContext" | "formData" | "idPrefix" | "idSeparator" | "fields" | "templates" | "widgets" | "translateString" | "acceptcharset" | "acceptCharset" | "enctype" | "customValidate" | "extraErrors" | "extraErrorsBlockSubmit" | "noHtml5Validate" | "liveValidate" | "liveOmit" | "omitExtraData" | "showErrorList" | "transformErrors" | "focusOnFirstError" | "experimental_defaultFormStateBehavior" | "_internalFormWrapper"> & import('react').RefAttributes<RJSF<unknown, import('json-schema').JSONSchema7, import('@rjsf/utils').GenericObjectType>>>;
@@ -1,8 +1,9 @@
1
1
  import { default as React, ReactNode, CSSProperties, ReactElement, MutableRefObject } from 'react';
2
+ import { TippyProps } from '@tippyjs/react';
2
3
  import { Placement } from 'tippy.js';
3
4
  import { UserGroupDTO } from '../Pages/GlobalConfigurations';
4
5
  import { ImageComment, ReleaseTag } from './ImageTags.Types';
5
- import { MandatoryPluginBaseStateType, RegistryType, RuntimeParamsListItemType, Severity } from '../Shared';
6
+ import { MandatoryPluginBaseStateType, RegistryType, RuntimePluginVariables, Severity } from '../Shared';
6
7
  import { ACTION_STATE, DEPLOYMENT_WINDOW_TYPE, DockerConfigOverrideType, SortingOrder, TaskErrorObj } from '.';
7
8
  /**
8
9
  * Generic response type object with support for overriding the result type
@@ -65,7 +66,7 @@ export interface CheckboxProps {
65
66
  id?: string;
66
67
  dataTestId?: string;
67
68
  }
68
- export interface TippyCustomizedProps {
69
+ export interface TippyCustomizedProps extends Pick<TippyProps, 'appendTo'> {
69
70
  theme: TippyTheme;
70
71
  visible?: boolean;
71
72
  heading?: ReactNode | string;
@@ -229,6 +230,7 @@ export interface PopupMenuType {
229
230
  autoClose?: boolean;
230
231
  autoPosition?: boolean;
231
232
  shouldPreventDefault?: boolean;
233
+ disableClose?: boolean;
232
234
  }
233
235
  export interface PopupMenuButtonType {
234
236
  children?: ReactNode;
@@ -591,7 +593,7 @@ export interface CDMaterialsMetaInfo {
591
593
  * This is the ID of user that has request the material
592
594
  */
593
595
  requestedUserId: number;
594
- runtimeParams: RuntimeParamsListItemType[];
596
+ runtimeParams: RuntimePluginVariables[];
595
597
  }
596
598
  export interface ImagePromotionMaterialInfo {
597
599
  isApprovalPendingForPromotion: boolean;
@@ -1 +1,2 @@
1
1
  export * from './types';
2
+ export * from './services';
@@ -0,0 +1,7 @@
1
+ import { MutableRefObject } from 'react';
2
+ import { UploadFileDTO, UploadFileProps } from '../../../../../Shared/types';
3
+ export declare const uploadCDPipelineFile: ({ file, appId, envId, allowedExtensions, maxUploadSize, abortControllerRef, }: UploadFileProps & {
4
+ appId: number;
5
+ envId: number;
6
+ abortControllerRef?: MutableRefObject<AbortController>;
7
+ }) => Promise<UploadFileDTO>;
@@ -0,0 +1 @@
1
+ export * from './services';
@@ -0,0 +1,11 @@
1
+ import { MutableRefObject } from 'react';
2
+ import { UploadFileDTO } from '../../../../../Shared/types';
3
+ export declare const uploadCIPipelineFile: ({ file, appId, ciPipelineId, envId, allowedExtensions, maxUploadSize, abortControllerRef, }: {
4
+ file: File[];
5
+ appId: number;
6
+ ciPipelineId: number;
7
+ envId?: number;
8
+ allowedExtensions?: string[];
9
+ maxUploadSize?: number;
10
+ abortControllerRef?: MutableRefObject<AbortController>;
11
+ }) => Promise<UploadFileDTO>;
@@ -1,2 +1,3 @@
1
1
  export * from './AppConfigurations';
2
2
  export * from './CDPipeline';
3
+ export * from './CIPipeline';
@@ -0,0 +1,2 @@
1
+ import { DynamicDataTableProps } from './types';
2
+ export declare const DynamicDataTable: <K extends string, CustomStateType = Record<string, unknown>>({ headers, ...props }: DynamicDataTableProps<K, CustomStateType>) => JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { DynamicDataTableHeaderProps } from './types';
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;
@@ -0,0 +1,2 @@
1
+ import { DynamicDataTableRowProps } from './types';
2
+ export declare const DynamicDataTableRow: <K extends string, CustomStateType = Record<string, unknown>>({ rows, headers, readOnly, isDeletionNotAllowed, validationSchema, showError, actionButtonConfig, onRowEdit, onRowDelete, leadingCellIcon, trailingCellIcon, buttonCellWrapComponent, }: DynamicDataTableRowProps<K, CustomStateType>) => JSX.Element;
@@ -0,0 +1,2 @@
1
+ export declare const ACTION_BUTTON_DEFAULT_WIDTH = "33px";
2
+ export declare const DELETE_BUTTON_WIDTH = "33px";
@@ -0,0 +1,2 @@
1
+ export * from './DynamicDataTable';
2
+ export * from './types';
@@ -0,0 +1,161 @@
1
+ import { DetailedHTMLProps, ReactElement, ReactNode } from 'react';
2
+ import { ResizableTagTextAreaProps } from '../../../Common/CustomTagSelector';
3
+ import { UseStateFiltersReturnType } from '../../../Common/Hooks';
4
+ import { SelectPickerOptionType, SelectPickerProps } from '../SelectPicker';
5
+ import { SelectTextAreaProps } from '../SelectTextArea';
6
+ import { FileUploadProps } from '../FileUpload';
7
+ /**
8
+ * Interface representing header for a dynamic data table.
9
+ * @template K - A string representing the key type.
10
+ */
11
+ export type DynamicDataTableHeaderType<K extends string> = {
12
+ /** The display label of the header, shown in the table's column header. */
13
+ label: string;
14
+ /** The unique key associated with the header, used to map the column to data fields. */
15
+ key: K;
16
+ /** The width of the column, defined as a CSS string (e.g., "100px", "10%", "1fr", or "auto"). */
17
+ width: string;
18
+ /** An optional boolean indicating whether the column is sortable. */
19
+ isSortable?: boolean;
20
+ /** An optional boolean to control the visibility of the column. */
21
+ isHidden?: boolean;
22
+ };
23
+ export declare enum DynamicDataTableRowDataType {
24
+ TEXT = "text",
25
+ DROPDOWN = "dropdown",
26
+ SELECT_TEXT = "select-text",
27
+ BUTTON = "button",
28
+ FILE_UPLOAD = "file-upload"
29
+ }
30
+ export type DynamicDataTableCellPropsMap = {
31
+ [DynamicDataTableRowDataType.TEXT]: Omit<ResizableTagTextAreaProps, 'id' | 'className' | 'minHeight' | 'maxHeight' | 'value' | 'onChange' | 'disabled' | 'disableOnBlurResizeToMinHeight' | 'refVar' | 'dependentRef'>;
32
+ [DynamicDataTableRowDataType.DROPDOWN]: Omit<SelectPickerProps<string, false>, 'inputId' | 'value' | 'onChange' | 'fullWidth' | 'isDisabled'>;
33
+ [DynamicDataTableRowDataType.SELECT_TEXT]: Omit<SelectTextAreaProps, 'value' | 'onChange' | 'inputId' | 'isDisabled' | 'dependentRef' | 'refVar' | 'textAreaProps'> & {
34
+ textAreaProps?: Omit<SelectTextAreaProps['textAreaProps'], 'className' | 'disableOnBlurResizeToMinHeight' | 'minHeight' | 'maxHeight'>;
35
+ };
36
+ [DynamicDataTableRowDataType.BUTTON]: Pick<DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, 'onClick'> & {
37
+ icon?: ReactNode;
38
+ text: string;
39
+ };
40
+ [DynamicDataTableRowDataType.FILE_UPLOAD]: Omit<FileUploadProps, 'className' | 'fileName' | 'onUpload' | 'multiple'>;
41
+ };
42
+ type DynamicDataTableCellData<T extends keyof DynamicDataTableCellPropsMap = keyof DynamicDataTableCellPropsMap> = T extends keyof DynamicDataTableCellPropsMap ? {
43
+ type: T;
44
+ props: DynamicDataTableCellPropsMap[T];
45
+ } : never;
46
+ /**
47
+ * Type representing a key-value row.
48
+ * @template K - A string representing the key type.
49
+ */
50
+ export type DynamicDataTableRowType<K extends string, CustomStateType = Record<string, unknown>> = {
51
+ data: {
52
+ [key in K]: {
53
+ value: string;
54
+ disabled?: boolean;
55
+ /** An optional boolean indicating if an asterisk should be shown. */
56
+ required?: boolean;
57
+ /** An optional tooltip text to show when hovering over cell. */
58
+ tooltipText?: string;
59
+ } & DynamicDataTableCellData;
60
+ };
61
+ id: string | number;
62
+ /** */
63
+ customState?: CustomStateType;
64
+ /** An optional boolean indicating if row deletion is disabled. */
65
+ disableDelete?: boolean;
66
+ };
67
+ type DynamicDataTableCellIcon<K extends string, CustomStateType = Record<string, unknown>> = {
68
+ [key in K]?: (row: DynamicDataTableRowType<K, CustomStateType>) => ReactNode;
69
+ };
70
+ /**
71
+ * Interface representing the properties for the dynamic data table component.
72
+ * @template K - A string representing the key type.
73
+ */
74
+ export type DynamicDataTableProps<K extends string, CustomStateType = Record<string, unknown>> = {
75
+ /**
76
+ * An array containing the headers for the data table. \
77
+ * Each header defines a column with its label, key, width, and optional settings.
78
+ */
79
+ headers: DynamicDataTableHeaderType<K>[];
80
+ /**
81
+ * An array of rows where each row contains data corresponding to the table headers.
82
+ */
83
+ rows: DynamicDataTableRowType<K, CustomStateType>[];
84
+ /** Optional configuration for sorting the table. */
85
+ sortingConfig?: Pick<UseStateFiltersReturnType<K>, 'sortBy' | 'sortOrder' | 'handleSorting'>;
86
+ /** Optional configuration for displaying an icon in the leading position of a cell. */
87
+ leadingCellIcon?: DynamicDataTableCellIcon<K, CustomStateType>;
88
+ /** Optional configuration for displaying an icon in the trailing position of a cell. */
89
+ trailingCellIcon?: DynamicDataTableCellIcon<K, CustomStateType>;
90
+ /** An optional function to render a custom wrapper component for the type `DynamicDataTableRowDataType.BUTTON`. */
91
+ buttonCellWrapComponent?: (row: DynamicDataTableRowType<K, CustomStateType>) => ReactElement;
92
+ /** An optional React node for a custom header component. */
93
+ headerComponent?: ReactNode;
94
+ /** When true, data addition field will not be shown. */
95
+ isAdditionNotAllowed?: boolean;
96
+ /** When true, data addition field will not be shown. */
97
+ isDeletionNotAllowed?: boolean;
98
+ /** When true, data add or update is disabled. */
99
+ readOnly?: boolean;
100
+ /** Function to handle the addition of a new row to the table. */
101
+ onRowAdd: () => void;
102
+ /**
103
+ * Function to handle changes in the table rows.
104
+ * @param row - The row that changed.
105
+ * @param headerKey - The key of the header that changed.
106
+ * @param value - The value of the cell.
107
+ * @param extraData - Additional data, such as a selected value for dropdowns.
108
+ */
109
+ onRowEdit: (row: DynamicDataTableRowType<K, CustomStateType>, headerKey: K, value: string, extraData: {
110
+ files?: File[];
111
+ selectedValue?: SelectPickerOptionType<string>;
112
+ }) => void;
113
+ /**
114
+ * Function to handle row deletions.
115
+ * @param row - The row that was deleted.
116
+ */
117
+ onRowDelete: (row: DynamicDataTableRowType<K, CustomStateType>) => void;
118
+ /** Optional configuration for rendering a custom action button in a row. */
119
+ actionButtonConfig?: {
120
+ /**
121
+ * Function to render the action button.
122
+ * @param row - The current row being rendered.
123
+ * @returns A React node representing the action button.
124
+ */
125
+ renderer: (row: DynamicDataTableRowType<K, CustomStateType>) => ReactNode;
126
+ /**
127
+ * This represents under which header key the action button will be rendered.
128
+ */
129
+ key: K;
130
+ /**
131
+ * The width of the action button.
132
+ * @default '33px'
133
+ */
134
+ width?: string;
135
+ /**
136
+ * The position of the action button under the header key.
137
+ * @default 'start'
138
+ */
139
+ position?: 'start' | 'end';
140
+ };
141
+ /**
142
+ * Indicates whether to show errors.
143
+ */
144
+ showError?: boolean;
145
+ /**
146
+ * Function to validate the value of a table cell.
147
+ * @param value - The value to validate.
148
+ * @param key - The column key of the cell.
149
+ * @param row - The row containing the cell.
150
+ * @returns An object with a boolean indicating validity and an array of error messages.
151
+ */
152
+ validationSchema?: (value: string, key: K, row: DynamicDataTableRowType<K, CustomStateType>) => {
153
+ isValid: boolean;
154
+ errorMessages: string[];
155
+ };
156
+ };
157
+ export interface DynamicDataTableHeaderProps<K extends string, CustomStateType = Record<string, unknown>> extends Pick<DynamicDataTableProps<K, CustomStateType>, 'headers' | 'rows' | 'headerComponent' | 'sortingConfig' | 'onRowAdd' | 'readOnly' | 'isAdditionNotAllowed' | 'isDeletionNotAllowed' | 'actionButtonConfig'> {
158
+ }
159
+ export interface DynamicDataTableRowProps<K extends string, CustomStateType = Record<string, unknown>> extends Pick<DynamicDataTableProps<K, CustomStateType>, 'rows' | 'headers' | 'isAdditionNotAllowed' | 'isDeletionNotAllowed' | 'readOnly' | 'onRowEdit' | 'onRowDelete' | 'actionButtonConfig' | 'showError' | 'validationSchema' | 'leadingCellIcon' | 'trailingCellIcon' | 'buttonCellWrapComponent'> {
160
+ }
161
+ export {};
@@ -0,0 +1,5 @@
1
+ import { DynamicDataTableHeaderType, DynamicDataTableProps, DynamicDataTableRowDataType } from './types';
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
+ 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, onUpload }: FileUploadProps) => JSX.Element;
@@ -0,0 +1,2 @@
1
+ export * from './FileUpload';
2
+ export * from './types';
@@ -0,0 +1,7 @@
1
+ export interface FileUploadProps {
2
+ fileName: string;
3
+ onUpload: (files: File[]) => void;
4
+ multiple?: boolean;
5
+ label?: string;
6
+ fileTypes?: string[];
7
+ }
@@ -18,7 +18,7 @@ export interface KeyValueHeader<K extends string> {
18
18
  */
19
19
  export type KeyValueRow<K extends string> = {
20
20
  data: {
21
- [key in K]: Pick<ResizableTagTextAreaProps, 'value' | 'dataTestId' | 'disabled' | 'tabIndex'> & {
21
+ [key in K]: Pick<ResizableTagTextAreaProps, 'value' | 'disabled' | 'tabIndex'> & {
22
22
  /** An optional boolean indicating if an asterisk should be shown. */
23
23
  required?: boolean;
24
24
  };
@@ -0,0 +1,2 @@
1
+ import { SelectTextAreaProps } from './types';
2
+ export declare const SelectTextArea: ({ value, Icon, onChange, options, inputId, placeholder, refVar, dependentRefs, disabled, selectPickerProps, textAreaProps, }: SelectTextAreaProps) => JSX.Element;
@@ -0,0 +1,2 @@
1
+ export * from './SelectTextArea';
2
+ export * from './types';
@@ -0,0 +1,12 @@
1
+ import { ReactElement } from 'react';
2
+ import { ResizableTagTextAreaProps } from '../../../Common/CustomTagSelector';
3
+ import { SelectPickerOptionType, SelectPickerProps } from '../SelectPicker';
4
+ export type SelectTextAreaProps = Pick<SelectPickerProps<string, false>, 'inputId' | 'options'> & Pick<ResizableTagTextAreaProps, 'refVar' | 'dependentRefs'> & {
5
+ value: string;
6
+ Icon?: ReactElement;
7
+ onChange?: (selectedValue: SelectPickerOptionType<string>) => void;
8
+ disabled?: boolean;
9
+ placeholder?: string;
10
+ textAreaProps?: Omit<ResizableTagTextAreaProps, 'refVar' | 'dependentRef' | 'id' | 'value' | 'onChange' | 'placeholder' | 'disabled'>;
11
+ selectPickerProps?: Omit<SelectPickerProps<string, false>, 'inputId' | 'options' | 'isDisabled' | 'onChange' | 'variant' | 'value' | 'placeholder' | 'fullWidth' | 'selectRef' | 'onCreateOption' | 'isMulti'>;
12
+ };
@@ -43,3 +43,5 @@ export * from './Button';
43
43
  export * from './InvalidYAMLTippy';
44
44
  export * from './ConfirmationModal';
45
45
  export * from './DiffViewer';
46
+ export * from './DynamicDataTable';
47
+ export * from './FileUpload';
@@ -9,7 +9,6 @@ export declare const IndexStore: {
9
9
  getEnvDetails: () => EnvDetails;
10
10
  getEnvDetailsObservable: () => import('rxjs').Observable<EnvDetails>;
11
11
  publishAppDetails: (data: AppDetails, appType: AppType) => void;
12
- clearAppDetails(): void;
13
12
  getAppDetails: () => AppDetails;
14
13
  getAppDetailsObservable: () => import('rxjs').Observable<AppDetails>;
15
14
  getAppDetailsNodes: () => Node[];
@@ -1,5 +1,5 @@
1
1
  import { Dayjs } from 'dayjs';
2
- import { OptionType, CommonNodeAttr, ResponseType, UserApprovalConfigType, VulnerabilityType, DeploymentAppTypes, ServerErrors, SortingParams } from '../Common';
2
+ import { OptionType, CommonNodeAttr, ResponseType, UserApprovalConfigType, VulnerabilityType, DeploymentAppTypes, ServerErrors, SortingParams, ValueConstraintType, VariableType, RefVariableType, PluginType } from '../Common';
3
3
  import { KeyValueListType } from './Components';
4
4
  import { EnvironmentTypeEnum, PatchOperationType } from './constants';
5
5
  export declare enum EnvType {
@@ -282,11 +282,29 @@ export interface GitTriggers {
282
282
  CiConfigureSourceType: string;
283
283
  CiConfigureSourceValue: string;
284
284
  }
285
+ export interface RuntimePluginVariables extends Pick<VariableType, 'name' | 'value' | 'format' | 'fileReferenceId' | 'fileMountDir'> {
286
+ variableStepScope: string;
287
+ valueConstraint: ValueConstraintType & {
288
+ id: number;
289
+ };
290
+ stepVariableId: number;
291
+ valueType: RefVariableType;
292
+ stepName: string;
293
+ stepType: PluginType;
294
+ isRequired: boolean;
295
+ pluginIcon?: string;
296
+ }
285
297
  export interface RuntimeParamsAPIResponseType {
286
298
  envVariables: Record<string, string>;
299
+ runtimePluginVariables: RuntimePluginVariables[];
287
300
  }
288
301
  export interface RuntimeParamsTriggerPayloadType {
289
- runtimeParams: RuntimeParamsAPIResponseType;
302
+ runtimeParams: Pick<RuntimeParamsAPIResponseType, 'envVariables'>;
303
+ }
304
+ export interface RuntimeParamsV2TriggerPayloadType {
305
+ runtimeParams: {
306
+ runtimePluginVariables: Pick<RuntimePluginVariables, 'name' | 'fileMountDir' | 'fileReferenceId' | 'value' | 'format' | 'variableStepScope'>[];
307
+ };
290
308
  }
291
309
  export declare enum CIMaterialSidebarType {
292
310
  CODE_SOURCE = "Code Source",
@@ -739,4 +757,16 @@ export interface PreventOutsideFocusProps {
739
757
  identifier: string;
740
758
  preventFocus: boolean;
741
759
  }
760
+ export interface UploadFileDTO {
761
+ id: number;
762
+ name: string;
763
+ size: number;
764
+ mimeType: string;
765
+ extension: string;
766
+ }
767
+ export interface UploadFileProps {
768
+ file: File[];
769
+ allowedExtensions?: string[];
770
+ maxUploadSize?: number;
771
+ }
742
772
  export {};