@devtron-labs/devtron-fe-common-lib 0.0.50-beta-2 → 0.0.51-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 (457) hide show
  1. package/.eslintrc.js +41 -0
  2. package/.github/workflows/release-package.yml +49 -0
  3. package/.prettierrc.js +7 -0
  4. package/dist/Common/AddCDButton/AddCDButton.d.ts +3 -0
  5. package/dist/Common/AddCDButton/index.d.ts +2 -0
  6. package/dist/Common/AddCDButton/types.d.ts +26 -0
  7. package/dist/Common/AddCDButton/utils.d.ts +2 -0
  8. package/dist/Common/Api.d.ts +5 -5
  9. package/dist/Common/AppStatus/AppStatus.d.ts +3 -3
  10. package/dist/Common/AppStatus/constants.d.ts +51 -51
  11. package/dist/Common/AppStatus/index.d.ts +1 -1
  12. package/dist/Common/AppStatus/types.d.ts +12 -12
  13. package/dist/Common/AppStatus/utils.d.ts +1 -1
  14. package/dist/Common/BreadCrumb/BreadCrumb.d.ts +5 -5
  15. package/dist/Common/BreadCrumb/BreadcrumbStore.d.ts +17 -17
  16. package/dist/Common/BreadCrumb/Types.d.ts +28 -28
  17. package/dist/Common/CIPipeline.Types.d.ts +265 -265
  18. package/dist/Common/ChartVersionAndTypeSelector.d.ts +4 -0
  19. package/dist/Common/Checkbox.d.ts +5 -5
  20. package/dist/Common/ClipboardButton/ClipboardButton.d.ts +10 -10
  21. package/dist/Common/ClipboardButton/types.d.ts +8 -8
  22. package/dist/Common/Common.service.d.ts +20 -19
  23. package/dist/Common/Constants.d.ts +67 -71
  24. package/dist/Common/CustomInput/CustomInput.d.ts +3 -0
  25. package/dist/Common/CustomInput/Types.d.ts +29 -0
  26. package/dist/Common/CustomInput/index.d.ts +2 -0
  27. package/dist/Common/CustomTagSelector/PropagateTagInfo.d.ts +4 -4
  28. package/dist/Common/CustomTagSelector/ResizableTagTextArea.d.ts +3 -3
  29. package/dist/Common/CustomTagSelector/TagDetails.d.ts +3 -2
  30. package/dist/Common/CustomTagSelector/TagLabelSelect.d.ts +3 -2
  31. package/dist/Common/CustomTagSelector/TagLabelValueSelector.d.ts +3 -2
  32. package/dist/Common/CustomTagSelector/TagSelector.utils.d.ts +12 -12
  33. package/dist/Common/CustomTagSelector/Types.d.ts +68 -68
  34. package/dist/Common/CustomTagSelector/ValidationRules.d.ts +10 -10
  35. package/dist/Common/CustomTagSelector/index.d.ts +6 -6
  36. package/dist/Common/DebouncedSearch/DebouncedSearch.d.ts +15 -15
  37. package/dist/Common/DebouncedSearch/Types.d.ts +14 -14
  38. package/dist/Common/DebouncedSearch/Utils.d.ts +1 -1
  39. package/dist/Common/DeleteComponentModal/DeleteComponent.d.ts +4 -4
  40. package/dist/Common/DeleteComponentModal/types.d.ts +15 -15
  41. package/dist/Common/DevtronProgressing/DevtronProgressing.d.ts +3 -0
  42. package/dist/Common/DevtronProgressing/index.d.ts +1 -0
  43. package/dist/Common/DevtronProgressing/types.d.ts +4 -0
  44. package/dist/Common/Dialogs/ConfirmationDialog.d.ts +9 -9
  45. package/dist/Common/Dialogs/DeleteDialog.d.ts +5 -5
  46. package/dist/Common/Dialogs/DialogForm.d.ts +14 -14
  47. package/dist/Common/Dialogs/ForceDeleteDialog.d.ts +3 -3
  48. package/dist/Common/Dialogs/Types.d.ts +45 -44
  49. package/dist/Common/Dialogs/index.d.ts +4 -4
  50. package/dist/Common/DraggableWrapper/DraggableButton.d.ts +3 -0
  51. package/dist/Common/DraggableWrapper/DraggableWrapper.d.ts +9 -0
  52. package/dist/Common/DraggableWrapper/index.d.ts +3 -0
  53. package/dist/Common/DraggableWrapper/types.d.ts +19 -0
  54. package/dist/Common/Drawer/Drawer.d.ts +16 -14
  55. package/dist/Common/EmptyState/EmptyState.d.ts +25 -24
  56. package/dist/Common/EmptyState/GenericEmptyState.d.ts +5 -4
  57. package/dist/Common/Error.d.ts +17 -17
  58. package/dist/Common/ErrorScreenNotFound.d.ts +3 -3
  59. package/dist/Common/Grid/Grid.d.ts +3 -3
  60. package/dist/Common/Grid/types.d.ts +10 -10
  61. package/dist/Common/Helper.d.ts +60 -57
  62. package/dist/Common/Hooks/UseClickOutside/UseClickOutside.d.ts +1 -1
  63. package/dist/Common/Hooks/UseSuperAdmin/UseSuperAdmin.d.ts +6 -6
  64. package/dist/Common/Hooks/UseSuperAdmin/types.d.ts +3 -3
  65. package/dist/Common/{UseWindowSize.d.ts → Hooks/UseWindowSize/UseWindowSize.d.ts} +4 -4
  66. package/dist/Common/Hooks/index.d.ts +3 -2
  67. package/dist/Common/ImageTags.Types.d.ts +40 -40
  68. package/dist/Common/ImageTags.d.ts +4 -3
  69. package/dist/Common/InfoColorBar/InfoColourbar.d.ts +5 -4
  70. package/dist/Common/Modals/Modal.d.ts +3 -3
  71. package/dist/Common/Modals/OpaqueModal.d.ts +12 -12
  72. package/dist/Common/Modals/VisibleModal.d.ts +15 -15
  73. package/dist/Common/Modals/VisibleModal2.d.ts +12 -12
  74. package/dist/Common/MultiSelectCustomization.d.ts +37 -37
  75. package/dist/Common/Policy.Types.d.ts +56 -56
  76. package/dist/Common/PopupMenu.d.ts +8 -8
  77. package/dist/Common/Progressing.d.ts +4 -4
  78. package/dist/Common/RJSF/Form.d.ts +4 -0
  79. package/dist/Common/RJSF/common/FieldRow.d.ts +6 -0
  80. package/dist/Common/RJSF/common/types.d.ts +8 -0
  81. package/dist/Common/RJSF/config.d.ts +4 -0
  82. package/dist/Common/RJSF/constants.d.ts +7 -0
  83. package/dist/Common/RJSF/index.d.ts +3 -0
  84. package/dist/Common/RJSF/templates/ArrayFieldItemTemplate.d.ts +3 -0
  85. package/dist/Common/RJSF/templates/ArrayFieldTemplate.d.ts +3 -0
  86. package/dist/Common/RJSF/templates/BaseInput.d.ts +3 -0
  87. package/dist/Common/RJSF/templates/ButtonTemplates/AddButton.d.ts +3 -0
  88. package/dist/Common/RJSF/templates/ButtonTemplates/RemoveButton.d.ts +3 -0
  89. package/dist/Common/RJSF/templates/ButtonTemplates/SubmitButton.d.ts +3 -0
  90. package/dist/Common/RJSF/templates/ButtonTemplates/index.d.ts +3 -0
  91. package/dist/Common/RJSF/templates/Description.d.ts +3 -0
  92. package/dist/Common/RJSF/templates/Field.d.ts +3 -0
  93. package/dist/Common/RJSF/templates/FieldErrorTemplate.d.ts +3 -0
  94. package/dist/Common/RJSF/templates/ObjectFieldTemplate.d.ts +3 -0
  95. package/dist/Common/RJSF/templates/TitleField.d.ts +3 -0
  96. package/dist/Common/RJSF/templates/WrapIfAdditionalTemplate.d.ts +3 -0
  97. package/dist/Common/RJSF/templates/index.d.ts +10 -0
  98. package/dist/Common/RJSF/types.d.ts +3 -0
  99. package/dist/Common/RJSF/utils.d.ts +26 -0
  100. package/dist/Common/RJSF/widgets/Checkbox.d.ts +3 -0
  101. package/dist/Common/RJSF/widgets/Select.d.ts +3 -0
  102. package/dist/Common/RJSF/widgets/index.d.ts +2 -0
  103. package/dist/Common/RadioGroup/RadioGroup.d.ts +17 -16
  104. package/dist/Common/RadioGroup.d.ts +8 -8
  105. package/dist/Common/Reload.d.ts +3 -3
  106. package/dist/Common/ResizableTextarea.d.ts +3 -3
  107. package/dist/Common/Security/ScanVulnerabilitiesTable.d.ts +4 -3
  108. package/dist/Common/ServerError.d.ts +15 -15
  109. package/dist/Common/TippyCustomized.d.ts +4 -3
  110. package/dist/Common/ToastBody.d.ts +23 -23
  111. package/dist/Common/Toggle/Toggle.d.ts +14 -12
  112. package/dist/Common/Types.d.ts +677 -566
  113. package/dist/Common/index.d.ts +48 -44
  114. package/dist/index.d.ts +1 -1
  115. package/dist/index.js +28627 -184
  116. package/package.json +28 -46
  117. package/rollup.config.js +31 -0
  118. package/src/Assets/Icon/ic-add.svg +3 -0
  119. package/src/Assets/Icon/ic-appstatus-cancelled.svg +6 -0
  120. package/src/Assets/Icon/ic-arrow-counter-clockwise.svg +5 -0
  121. package/src/Assets/Icon/ic-check.svg +5 -0
  122. package/src/Assets/Icon/ic-chevron-down.svg +5 -0
  123. package/src/Assets/Icon/ic-copy.svg +3 -0
  124. package/src/Assets/Icon/ic-cross.svg +3 -0
  125. package/src/Assets/Icon/ic-drag.svg +8 -0
  126. package/src/Assets/Icon/ic-enter.svg +3 -0
  127. package/src/Assets/Icon/ic-error-cross.svg +8 -0
  128. package/src/Assets/Icon/ic-error-exclamation.svg +6 -0
  129. package/src/Assets/Icon/ic-error-medium.svg +6 -0
  130. package/src/Assets/Icon/ic-help-outline.svg +3 -0
  131. package/src/Assets/Icon/ic-help.svg +3 -0
  132. package/src/Assets/Icon/ic-info-filled.svg +7 -0
  133. package/src/Assets/Icon/ic-info-outlined.svg +13 -0
  134. package/src/Assets/Icon/ic-minus.svg +3 -0
  135. package/src/Assets/Icon/ic-pencil.svg +3 -0
  136. package/src/Assets/Icon/ic-progressing.svg +6 -0
  137. package/src/Assets/Icon/ic-rotate-devtron.svg +103 -0
  138. package/src/Assets/Icon/ic-warning.svg +7 -0
  139. package/src/Assets/Icon/inject-tag.svg +5 -0
  140. package/src/Assets/Img/app-not-deployed.png +0 -0
  141. package/src/Assets/Img/delete-medium.svg +15 -0
  142. package/src/Assets/Img/ic-empty-error@2x.png +0 -0
  143. package/src/Assets/Img/ic-loading-failure.png +0 -0
  144. package/src/Assets/Img/ic-not-authorized.svg +62 -0
  145. package/src/Common/AddCDButton/AddCDButton.tsx +68 -0
  146. package/src/Common/AddCDButton/index.ts +2 -0
  147. package/src/Common/AddCDButton/types.ts +38 -0
  148. package/src/Common/AddCDButton/utils.tsx +35 -0
  149. package/src/Common/Api.ts +230 -0
  150. package/src/Common/AppStatus/AppStatus.tsx +64 -0
  151. package/src/Common/AppStatus/constants.ts +53 -0
  152. package/src/Common/AppStatus/index.ts +1 -0
  153. package/src/Common/AppStatus/types.ts +12 -0
  154. package/src/Common/AppStatus/utils.ts +14 -0
  155. package/src/Common/BreadCrumb/BreadCrumb.tsx +105 -0
  156. package/src/Common/BreadCrumb/BreadcrumbStore.tsx +25 -0
  157. package/src/Common/BreadCrumb/Types.ts +30 -0
  158. package/src/Common/CIPipeline.Types.ts +277 -0
  159. package/src/Common/ChartVersionAndTypeSelector.tsx +78 -0
  160. package/src/Common/Checkbox.tsx +36 -0
  161. package/src/Common/ClipboardButton/ClipboardButton.tsx +61 -0
  162. package/src/Common/ClipboardButton/__tests__/ClipboardButton.test.tsx +43 -0
  163. package/src/Common/ClipboardButton/types.ts +7 -0
  164. package/src/Common/Common.service.ts +315 -0
  165. package/src/Common/Constants.ts +245 -0
  166. package/src/Common/CustomInput/CustomInput.tsx +131 -0
  167. package/src/Common/CustomInput/Types.ts +30 -0
  168. package/src/Common/CustomInput/index.ts +2 -0
  169. package/src/Common/CustomTagSelector/PropagateTagInfo.tsx +46 -0
  170. package/src/Common/CustomTagSelector/ResizableTagTextArea.tsx +84 -0
  171. package/src/Common/CustomTagSelector/TagDetails.tsx +76 -0
  172. package/src/Common/CustomTagSelector/TagLabelSelect.tsx +61 -0
  173. package/src/Common/CustomTagSelector/TagLabelValueSelector.tsx +198 -0
  174. package/src/Common/CustomTagSelector/TagSelector.utils.ts +71 -0
  175. package/src/Common/CustomTagSelector/Types.ts +72 -0
  176. package/src/Common/CustomTagSelector/ValidationRules.ts +58 -0
  177. package/src/Common/CustomTagSelector/index.ts +6 -0
  178. package/src/Common/DebouncedSearch/DebouncedSearch.tsx +76 -0
  179. package/src/Common/DebouncedSearch/Types.ts +13 -0
  180. package/src/Common/DebouncedSearch/Utils.ts +19 -0
  181. package/src/Common/DebouncedSearch/__tests__/DebouncedSearch.test.tsx +61 -0
  182. package/src/Common/DeleteComponentModal/DeleteComponent.tsx +95 -0
  183. package/src/Common/DeleteComponentModal/types.ts +15 -0
  184. package/src/Common/DevtronProgressing/DevtronProgressing.tsx +11 -0
  185. package/src/Common/DevtronProgressing/index.ts +1 -0
  186. package/src/Common/DevtronProgressing/types.ts +4 -0
  187. package/src/Common/Dialogs/ConfirmationDialog.tsx +34 -0
  188. package/src/Common/Dialogs/DeleteDialog.tsx +69 -0
  189. package/src/Common/Dialogs/DialogForm.tsx +86 -0
  190. package/src/Common/Dialogs/ForceDeleteDialog.tsx +19 -0
  191. package/src/Common/Dialogs/Types.ts +47 -0
  192. package/src/Common/Dialogs/index.ts +4 -0
  193. package/src/Common/DraggableWrapper/DraggableButton.tsx +11 -0
  194. package/src/Common/DraggableWrapper/DraggableWrapper.tsx +109 -0
  195. package/src/Common/DraggableWrapper/index.ts +3 -0
  196. package/src/Common/DraggableWrapper/types.ts +22 -0
  197. package/src/Common/Drawer/Drawer.scss +40 -0
  198. package/src/Common/Drawer/Drawer.tsx +49 -0
  199. package/src/Common/EmptyState/EmptyState.tsx +42 -0
  200. package/src/Common/EmptyState/GenericEmptyState.tsx +49 -0
  201. package/src/Common/EmptyState/emptyState.scss +74 -0
  202. package/src/Common/Error.tsx +61 -0
  203. package/src/Common/ErrorScreenNotFound.tsx +31 -0
  204. package/src/Common/Grid/Grid.tsx +44 -0
  205. package/src/Common/Grid/types.ts +11 -0
  206. package/src/Common/Helper.tsx +561 -0
  207. package/src/Common/Hooks/UseClickOutside/UseClickOutside.tsx +15 -0
  208. package/src/Common/Hooks/UseSuperAdmin/UseSuperAdmin.tsx +24 -0
  209. package/src/Common/Hooks/UseSuperAdmin/types.ts +3 -0
  210. package/src/Common/Hooks/UseWindowSize/UseWindowSize.tsx +30 -0
  211. package/src/Common/Hooks/index.ts +3 -0
  212. package/src/Common/ImageTags.Types.ts +44 -0
  213. package/src/Common/ImageTags.tsx +586 -0
  214. package/src/Common/InfoColorBar/InfoColourbar.tsx +80 -0
  215. package/src/Common/InfoColorBar/infoColourBar.scss +28 -0
  216. package/src/Common/Modals/Modal.tsx +68 -0
  217. package/src/Common/Modals/OpaqueModal.tsx +36 -0
  218. package/src/Common/Modals/VisibleModal.tsx +55 -0
  219. package/src/Common/Modals/VisibleModal2.tsx +35 -0
  220. package/src/Common/MultiSelectCustomization.tsx +148 -0
  221. package/src/Common/Policy.Types.ts +63 -0
  222. package/src/Common/PopupMenu.tsx +199 -0
  223. package/src/Common/Progressing.tsx +53 -0
  224. package/src/Common/RJSF/Form.tsx +29 -0
  225. package/src/Common/RJSF/common/FieldRow.tsx +35 -0
  226. package/src/Common/RJSF/common/types.ts +9 -0
  227. package/src/Common/RJSF/config.ts +37 -0
  228. package/src/Common/RJSF/constants.ts +10 -0
  229. package/src/Common/RJSF/index.ts +3 -0
  230. package/src/Common/RJSF/rjsfForm.scss +18 -0
  231. package/src/Common/RJSF/templates/ArrayFieldItemTemplate.tsx +31 -0
  232. package/src/Common/RJSF/templates/ArrayFieldTemplate.tsx +78 -0
  233. package/src/Common/RJSF/templates/BaseInput.tsx +16 -0
  234. package/src/Common/RJSF/templates/ButtonTemplates/AddButton.tsx +18 -0
  235. package/src/Common/RJSF/templates/ButtonTemplates/RemoveButton.tsx +10 -0
  236. package/src/Common/RJSF/templates/ButtonTemplates/SubmitButton.tsx +18 -0
  237. package/src/Common/RJSF/templates/ButtonTemplates/index.ts +3 -0
  238. package/src/Common/RJSF/templates/Description.tsx +12 -0
  239. package/src/Common/RJSF/templates/Field.tsx +30 -0
  240. package/src/Common/RJSF/templates/FieldErrorTemplate.tsx +25 -0
  241. package/src/Common/RJSF/templates/ObjectFieldTemplate.tsx +105 -0
  242. package/src/Common/RJSF/templates/TitleField.tsx +9 -0
  243. package/src/Common/RJSF/templates/WrapIfAdditionalTemplate.tsx +51 -0
  244. package/src/Common/RJSF/templates/index.ts +10 -0
  245. package/src/Common/RJSF/types.ts +4 -0
  246. package/src/Common/RJSF/utils.ts +123 -0
  247. package/src/Common/RJSF/widgets/Checkbox.tsx +44 -0
  248. package/src/Common/RJSF/widgets/Select.tsx +77 -0
  249. package/src/Common/RJSF/widgets/index.ts +2 -0
  250. package/src/Common/RadioGroup/RadioGroup.tsx +105 -0
  251. package/src/Common/RadioGroup/radioGroup.scss +46 -0
  252. package/src/Common/RadioGroup.tsx +53 -0
  253. package/src/Common/Reload.tsx +23 -0
  254. package/src/Common/ResizableTextarea.tsx +73 -0
  255. package/src/Common/Security/ScanVulnerabilitiesTable.tsx +55 -0
  256. package/src/Common/Security/scanVulnerabilities.css +69 -0
  257. package/src/Common/ServerError.ts +31 -0
  258. package/src/Common/TippyCustomized.tsx +172 -0
  259. package/src/Common/ToastBody.tsx +62 -0
  260. package/src/Common/Toggle/Toggle.scss +78 -0
  261. package/src/Common/Toggle/Toggle.tsx +50 -0
  262. package/src/Common/Types.ts +750 -0
  263. package/src/Common/index.ts +48 -0
  264. package/src/custom.d.ts +13 -0
  265. package/src/index.ts +1 -0
  266. package/tsconfig.json +40 -0
  267. package/dist/CodeEditor-d59fc867.js +0 -103675
  268. package/dist/Common/Api.js +0 -167
  269. package/dist/Common/AppStatus/AppStatus.js +0 -37
  270. package/dist/Common/AppStatus/constants.js +0 -37
  271. package/dist/Common/AppStatus/index.js +0 -4
  272. package/dist/Common/AppStatus/types.js +0 -1
  273. package/dist/Common/AppStatus/utils.js +0 -8
  274. package/dist/Common/BreadCrumb/BreadCrumb.js +0 -71
  275. package/dist/Common/BreadCrumb/BreadcrumbStore.js +0 -22
  276. package/dist/Common/BreadCrumb/Types.js +0 -1
  277. package/dist/Common/CIPipeline.Types.js +0 -10
  278. package/dist/Common/Checkbox.js +0 -28
  279. package/dist/Common/ClipboardButton/ClipboardButton.js +0 -40
  280. package/dist/Common/ClipboardButton/__tests__/ClipboardButton.test.d.ts +0 -1
  281. package/dist/Common/ClipboardButton/__tests__/ClipboardButton.test.js +0 -27
  282. package/dist/Common/ClipboardButton/types.js +0 -1
  283. package/dist/Common/CodeEditor/CodeEditor.d.ts +0 -47
  284. package/dist/Common/CodeEditor/CodeEditor.js +0 -14
  285. package/dist/Common/Common.service.js +0 -187
  286. package/dist/Common/Constants.js +0 -231
  287. package/dist/Common/CustomTagSelector/PropagateTagInfo.js +0 -43
  288. package/dist/Common/CustomTagSelector/ResizableTagTextArea.js +0 -58
  289. package/dist/Common/CustomTagSelector/TagDetails.js +0 -65
  290. package/dist/Common/CustomTagSelector/TagLabelSelect.js +0 -50
  291. package/dist/Common/CustomTagSelector/TagLabelValueSelector.js +0 -121
  292. package/dist/Common/CustomTagSelector/TagSelector.utils.js +0 -61
  293. package/dist/Common/CustomTagSelector/Types.js +0 -1
  294. package/dist/Common/CustomTagSelector/ValidationRules.js +0 -35
  295. package/dist/Common/CustomTagSelector/index.js +0 -12
  296. package/dist/Common/DebouncedSearch/DebouncedSearch.js +0 -7
  297. package/dist/Common/DebouncedSearch/Types.js +0 -1
  298. package/dist/Common/DebouncedSearch/Utils.js +0 -19
  299. package/dist/Common/DebouncedSearch/__tests__/DebouncedSearch.test.d.ts +0 -1
  300. package/dist/Common/DebouncedSearch/__tests__/DebouncedSearch.test.js +0 -33
  301. package/dist/Common/DeleteComponentModal/DeleteComponent.js +0 -63
  302. package/dist/Common/DeleteComponentModal/types.js +0 -1
  303. package/dist/Common/Dialogs/ConfirmationDialog.js +0 -24
  304. package/dist/Common/Dialogs/DeleteDialog.js +0 -49
  305. package/dist/Common/Dialogs/DialogForm.js +0 -63
  306. package/dist/Common/Dialogs/ForceDeleteDialog.js +0 -23
  307. package/dist/Common/Dialogs/Types.js +0 -1
  308. package/dist/Common/Dialogs/index.js +0 -11
  309. package/dist/Common/Drawer/Drawer.js +0 -22
  310. package/dist/Common/EmptyState/EmptyState.js +0 -32
  311. package/dist/Common/EmptyState/GenericEmptyState.js +0 -52
  312. package/dist/Common/Error.js +0 -49
  313. package/dist/Common/ErrorScreenNotFound.js +0 -23
  314. package/dist/Common/Grid/Grid.js +0 -22
  315. package/dist/Common/Grid/types.js +0 -1
  316. package/dist/Common/Helper.js +0 -33
  317. package/dist/Common/Hooks/UseClickOutside/UseClickOutside.js +0 -14
  318. package/dist/Common/Hooks/UseSuperAdmin/UseSuperAdmin.js +0 -16
  319. package/dist/Common/Hooks/UseSuperAdmin/types.js +0 -1
  320. package/dist/Common/Hooks/index.js +0 -6
  321. package/dist/Common/ImageTags.Types.js +0 -1
  322. package/dist/Common/ImageTags.js +0 -380
  323. package/dist/Common/InfoColorBar/InfoColourbar.js +0 -65
  324. package/dist/Common/Modals/Modal.js +0 -48
  325. package/dist/Common/Modals/OpaqueModal.js +0 -32
  326. package/dist/Common/Modals/VisibleModal.js +0 -31
  327. package/dist/Common/Modals/VisibleModal2.js +0 -31
  328. package/dist/Common/MultiSelectCustomization.js +0 -4250
  329. package/dist/Common/Policy.Types.js +0 -6
  330. package/dist/Common/PopupMenu.js +0 -148
  331. package/dist/Common/Progressing.js +0 -52
  332. package/dist/Common/RadioGroup/RadioGroup.js +0 -76
  333. package/dist/Common/RadioGroup.js +0 -47
  334. package/dist/Common/Reload.js +0 -16
  335. package/dist/Common/ResizableTextarea.js +0 -60
  336. package/dist/Common/Security/ScanVulnerabilitiesTable.js +0 -49
  337. package/dist/Common/Select/Select.d.ts +0 -4
  338. package/dist/Common/Select/Select.js +0 -131
  339. package/dist/Common/Select/types.d.ts +0 -29
  340. package/dist/Common/Select/types.js +0 -1
  341. package/dist/Common/ServerError.js +0 -26
  342. package/dist/Common/TippyCustomized.js +0 -10
  343. package/dist/Common/ToastBody.js +0 -41
  344. package/dist/Common/Toggle/Toggle.js +0 -40
  345. package/dist/Common/Types.js +0 -20
  346. package/dist/Common/UseWindowSize.js +0 -20
  347. package/dist/Common/index.js +0 -185
  348. package/dist/DebouncedSearch-065f3ac2.js +0 -58
  349. package/dist/Helper-4dc38bc2.js +0 -8882
  350. package/dist/TippyCustomized-549ebfaf.js +0 -124
  351. package/dist/abap-9f67f57a.js +0 -1314
  352. package/dist/apex-ff62e532.js +0 -315
  353. package/dist/assets/CodeEditor.css +0 -1
  354. package/dist/assets/Drawer.css +0 -1
  355. package/dist/assets/InfoColourbar.css +0 -1
  356. package/dist/assets/RadioGroup.css +0 -1
  357. package/dist/assets/ScanVulnerabilitiesTable.css +0 -1
  358. package/dist/assets/Select.css +0 -1
  359. package/dist/assets/TippyCustomized.css +0 -1
  360. package/dist/assets/Toggle.css +0 -1
  361. package/dist/assets/editor.worker-d26000ef.js +0 -9
  362. package/dist/assets/emptyState.css +0 -1
  363. package/dist/assets/json.worker-f23a4654.js +0 -40
  364. package/dist/assets/yaml.worker-64fecd27.js +0 -463
  365. package/dist/azcli-31e64a7f.js +0 -74
  366. package/dist/bat-0ffe897e.js +0 -95
  367. package/dist/bicep-3414a2b1.js +0 -108
  368. package/dist/cameligo-df1f3f25.js +0 -168
  369. package/dist/clojure-65b0f010.js +0 -754
  370. package/dist/coffee-437f0fba.js +0 -228
  371. package/dist/cpp-66843dd5.js +0 -390
  372. package/dist/csharp-621d9a49.js +0 -320
  373. package/dist/csp-de0d5244.js +0 -57
  374. package/dist/css-7cd5ed4c.js +0 -186
  375. package/dist/cssMode-518d7b58.js +0 -1446
  376. package/dist/cypher-70ad96fe.js +0 -262
  377. package/dist/dart-33ae3739.js +0 -270
  378. package/dist/dockerfile-f2274a50.js +0 -132
  379. package/dist/ecl-3b8294a3.js +0 -454
  380. package/dist/elixir-b9dcc73a.js +0 -489
  381. package/dist/extends-70f3d2a3.js +0 -13
  382. package/dist/flow9-bdde8316.js +0 -141
  383. package/dist/freemarker2-ec19a832.js +0 -643
  384. package/dist/fsharp-eac2e449.js +0 -210
  385. package/dist/go-d12ed8d4.js +0 -208
  386. package/dist/graphql-c7356b69.js +0 -141
  387. package/dist/handlebars-06e29571.js +0 -391
  388. package/dist/hcl-e883a0d4.js +0 -177
  389. package/dist/html-10fc18eb.js +0 -281
  390. package/dist/htmlMode-5f032666.js +0 -1456
  391. package/dist/ic-add-4787ded5.js +0 -5
  392. package/dist/ic-copy-118b83dc.js +0 -5
  393. package/dist/ic-cross-0e71861d.js +0 -6
  394. package/dist/ic-error-exclamation-5f9af461.js +0 -5
  395. package/dist/ic-info-filled-31a15add.js +0 -6
  396. package/dist/ic-info-outlined-8fa45e87.js +0 -5
  397. package/dist/index-ad700600.js +0 -17444
  398. package/dist/ini-425ab711.js +0 -68
  399. package/dist/inject-tag-824bf92c.js +0 -5
  400. package/dist/java-2bc0fd68.js +0 -221
  401. package/dist/javascript-2e90f5e7.js +0 -75
  402. package/dist/jsonMode-36a94a3e.js +0 -1867
  403. package/dist/julia-1c932615.js +0 -496
  404. package/dist/kotlin-1ab839c8.js +0 -245
  405. package/dist/less-6fe856f5.js +0 -168
  406. package/dist/lexon-4955ac52.js +0 -151
  407. package/dist/liquid-57b08f3e.js +0 -238
  408. package/dist/lua-3cca0047.js +0 -157
  409. package/dist/m3-132e9cb6.js +0 -210
  410. package/dist/markdown-ea59a0c1.js +0 -202
  411. package/dist/mips-19811f4b.js +0 -194
  412. package/dist/msdax-69954a10.js +0 -377
  413. package/dist/mysql-82088e5d.js +0 -876
  414. package/dist/objective-c-1976eccc.js +0 -188
  415. package/dist/pascal-8ef177cb.js +0 -245
  416. package/dist/pascaligo-bc517b9e.js +0 -158
  417. package/dist/perl-8b93582c.js +0 -599
  418. package/dist/pgsql-00c11a6d.js +0 -847
  419. package/dist/php-4c8c276f.js +0 -471
  420. package/dist/pla-e9b4ffb1.js +0 -131
  421. package/dist/postiats-2071af8c.js +0 -544
  422. package/dist/powerquery-8e388ceb.js +0 -890
  423. package/dist/powershell-e35db398.js +0 -233
  424. package/dist/protobuf-a24b9176.js +0 -422
  425. package/dist/pug-2c94d9b8.js +0 -393
  426. package/dist/python-761b1908.js +0 -259
  427. package/dist/qsharp-d730d7fe.js +0 -282
  428. package/dist/r-be193556.js +0 -245
  429. package/dist/razor-9cd536c2.js +0 -512
  430. package/dist/react-toastify.esm-9a31d2e1.js +0 -792
  431. package/dist/react.esm-a0625832.js +0 -13149
  432. package/dist/redis-9690c6ac.js +0 -298
  433. package/dist/redshift-6bdcdeaa.js +0 -806
  434. package/dist/restructuredtext-a08c1d20.js +0 -162
  435. package/dist/ruby-2247692b.js +0 -444
  436. package/dist/rust-1dffb4d5.js +0 -337
  437. package/dist/sb-136598e9.js +0 -110
  438. package/dist/scala-b1100fed.js +0 -353
  439. package/dist/scheme-038c8094.js +0 -114
  440. package/dist/scss-700d1b52.js +0 -244
  441. package/dist/shell-86c16e0f.js +0 -224
  442. package/dist/solidity-c05fdf3c.js +0 -1351
  443. package/dist/sophia-cd645d71.js +0 -190
  444. package/dist/sparql-01d9ec9c.js +0 -193
  445. package/dist/sql-4c33df41.js +0 -818
  446. package/dist/st-52cf1408.js +0 -414
  447. package/dist/swift-13c792ba.js +0 -315
  448. package/dist/systemverilog-0bd8b730.js +0 -556
  449. package/dist/tcl-463d7c75.js +0 -232
  450. package/dist/tippy-react.esm-3be2e905.js +0 -2018
  451. package/dist/tsMode-d9dd8508.js +0 -811
  452. package/dist/twig-0d98f5ec.js +0 -323
  453. package/dist/typescript-08c1d7b6.js +0 -328
  454. package/dist/vb-3a2b0a51.js +0 -364
  455. package/dist/wgsl-b2ddb3e4.js +0 -420
  456. package/dist/xml-69527c9c.js +0 -95
  457. package/dist/yaml-eb80879d.js +0 -184
@@ -0,0 +1,315 @@
1
+ import moment from 'moment';
2
+ import {get, post} from './Api';
3
+ import { ROUTES } from './Constants'
4
+ import { sortCallback } from './Helper';
5
+ import {
6
+ TeamList,
7
+ ResponseType,
8
+ DeploymentNodeType,
9
+ CDModalTab,
10
+ FilterStates,
11
+ CDMaterialServiceEnum,
12
+ CDMaterialServiceQueryParams,
13
+ CDMaterialResponseType,
14
+ CDMaterialsMetaInfo,
15
+ CDMaterialsApprovalInfo,
16
+ CDMaterialFilterQuery,
17
+ } from './Types'
18
+
19
+ export const getTeamListMin = (): Promise<TeamList> => {
20
+ // ignore active field
21
+ const URL = `${ROUTES.PROJECT_LIST_MIN}`;
22
+ return get(URL).then(response => {
23
+ let list = [];
24
+ if (response && response.result && Array.isArray(response.result)) {
25
+ list = response.result;
26
+ }
27
+ list = list.sort((a, b) => {
28
+ return sortCallback('name', a, b);
29
+ });
30
+ return {
31
+ code: response.code,
32
+ status: response.status,
33
+ result: list,
34
+ };
35
+ });
36
+ };
37
+
38
+ interface UserRole extends ResponseType {
39
+ result?: {
40
+ roles: string[]
41
+ superAdmin: boolean
42
+ }
43
+ }
44
+
45
+ const stageMap = {
46
+ PRECD: 'PRE',
47
+ CD: 'DEPLOY',
48
+ POSTCD: 'POST',
49
+ APPROVAL: 'APPROVAL',
50
+ }
51
+
52
+ export const SourceTypeMap = {
53
+ BranchFixed: 'SOURCE_TYPE_BRANCH_FIXED',
54
+ WEBHOOK: 'WEBHOOK',
55
+ BranchRegex: 'SOURCE_TYPE_BRANCH_REGEX',
56
+ }
57
+
58
+ export function getUserRole(appName?: string): Promise<UserRole> {
59
+ return get(`${ROUTES.USER_CHECK_ROLE}${appName ? `?appName=${appName}` : ''}`)
60
+ }
61
+
62
+ export function setImageTags(request, pipelineId: number, artifactId: number){
63
+ return post(`${ROUTES.IMAGE_TAGGING}/${pipelineId}/${artifactId}`,request )
64
+ }
65
+
66
+ const processURL = (url: string, params: object) => {
67
+ const validParams = Object.keys(params).filter((key) => {
68
+ return params[key] != null
69
+ })
70
+
71
+ if (!validParams.length) {
72
+ return url
73
+ }
74
+
75
+ const queryString = validParams
76
+ .map((key) => {
77
+ if (Array.isArray(params[key])) {
78
+ return `${key}=${params[key].join(',')}`
79
+ }
80
+ return `${key}=${params[key]}`
81
+ })
82
+ .join('&')
83
+
84
+ return `${url}?${queryString}`
85
+ }
86
+
87
+ const cdMaterialListModal = (artifacts: any[], offset: number, artifactId?: number, artifactStatus?: string) => {
88
+ if (!artifacts || !artifacts.length) return []
89
+
90
+ const markFirstSelected = offset === 0
91
+ const startIndex = offset
92
+ let isImageMarked = false
93
+
94
+ const materials = artifacts.map((material, index) => {
95
+ let artifactStatusValue = ''
96
+ const filterState = material.filterState ?? FilterStates.ALLOWED
97
+
98
+ if (artifactId && artifactStatus && material.id === artifactId) {
99
+ artifactStatusValue = artifactStatus
100
+ }
101
+
102
+ const selectImage =
103
+ !isImageMarked && markFirstSelected && filterState === FilterStates.ALLOWED ? !material.vulnerable : false
104
+ if (selectImage) {
105
+ isImageMarked = true
106
+ }
107
+
108
+ return {
109
+ index: startIndex + index,
110
+ id: material.id,
111
+ deployedTime: material.deployed_time
112
+ ? moment(material.deployed_time).format('ddd, DD MMM YYYY, hh:mm A')
113
+ : 'Not Deployed',
114
+ deployedBy: material.deployedBy,
115
+ wfrId: material.wfrId,
116
+ tab: CDModalTab.Changes,
117
+ image: extractImage(material.image),
118
+ showChanges: false,
119
+ vulnerabilities: [],
120
+ buildTime: material.build_time || '',
121
+ isSelected: selectImage,
122
+ showSourceInfo: false,
123
+ deployed: material.deployed || false,
124
+ latest: material.latest || false,
125
+ vulnerabilitiesLoading: true,
126
+ scanned: material.scanned,
127
+ scanEnabled: material.scanEnabled,
128
+ vulnerable: material.vulnerable,
129
+ runningOnParentCd: material.runningOnParentCd,
130
+ artifactStatus: artifactStatusValue,
131
+ userApprovalMetadata: material.userApprovalMetadata,
132
+ triggeredBy: material.triggeredBy,
133
+ isVirtualEnvironment: material.isVirtualEnvironment,
134
+ imageComment: material.imageComment,
135
+ imageReleaseTags: material.imageReleaseTags,
136
+ // It is going to be null but required in type so can't remove
137
+ lastExecution: material.lastExecution,
138
+ materialInfo: material.material_info
139
+ ? material.material_info.map((mat) => {
140
+ return {
141
+ modifiedTime: mat.modifiedTime
142
+ ? moment(mat.modifiedTime).format('ddd, DD MMM YYYY, hh:mm A')
143
+ : '',
144
+ commitLink: createGitCommitUrl(mat.url, mat.revision),
145
+ author: mat.author || '',
146
+ message: mat.message || '',
147
+ revision: mat.revision || '',
148
+ tag: mat.tag || '',
149
+ webhookData: mat.webhookData || '',
150
+ url: mat.url || '',
151
+ branch:
152
+ (material.ciConfigureSourceType === SourceTypeMap.WEBHOOK
153
+ ? material.ciConfigureSourceValue
154
+ : mat.branch) || '',
155
+ type: material.ciConfigureSourceType || '',
156
+ }
157
+ })
158
+ : [],
159
+ filterState,
160
+ appliedFiltersTimestamp: material.appliedFiltersTimestamp ?? '',
161
+ appliedFilters: material.appliedFilters ?? [],
162
+ appliedFiltersState: material.appliedFiltersState ?? FilterStates.ALLOWED,
163
+ createdTime: material.createdTime ?? '',
164
+ dataSource: material.data_source ?? '',
165
+ registryType: material.registryType ?? '',
166
+ imagePath: material.image ?? '',
167
+ registryName: material.registryName ?? '',
168
+ }
169
+ })
170
+ return materials
171
+ }
172
+
173
+ const processCDMaterialsApprovalInfo = (enableApproval: boolean, cdMaterialsResult): CDMaterialsApprovalInfo => {
174
+ if (!enableApproval) {
175
+ return {
176
+ approvalUsers: [],
177
+ userApprovalConfig: null,
178
+ requestedUserId: 0,
179
+ }
180
+ }
181
+
182
+ return {
183
+ approvalUsers: cdMaterialsResult.approvalUsers,
184
+ userApprovalConfig: cdMaterialsResult.userApprovalConfig,
185
+ requestedUserId: cdMaterialsResult.requestedUserId,
186
+ }
187
+ }
188
+
189
+ const processCDMaterialsMetaInfo = (cdMaterialsResult): CDMaterialsMetaInfo => {
190
+ if (!cdMaterialsResult) {
191
+ return {
192
+ tagsEditable: false,
193
+ appReleaseTagNames: [],
194
+ hideImageTaggingHardDelete: false,
195
+ resourceFilters: [],
196
+ totalCount: 0,
197
+ canApproverDeploy: cdMaterialsResult.canApproverDeploy ?? false,
198
+ }
199
+ }
200
+
201
+ return {
202
+ appReleaseTagNames: cdMaterialsResult.appReleaseTagNames,
203
+ tagsEditable: cdMaterialsResult.tagsEditable,
204
+ hideImageTaggingHardDelete: cdMaterialsResult.hideImageTaggingHardDelete,
205
+ resourceFilters: cdMaterialsResult.resourceFilters ?? [],
206
+ totalCount: cdMaterialsResult.totalCount ?? 0,
207
+ canApproverDeploy: cdMaterialsResult.canApproverDeploy ?? false,
208
+ }
209
+ }
210
+
211
+ const processCDMaterialServiceResponse = (
212
+ cdMaterialsResult,
213
+ stage: DeploymentNodeType,
214
+ offset: number,
215
+ filter: CDMaterialFilterQuery,
216
+ ): CDMaterialResponseType => {
217
+ if (!cdMaterialsResult) {
218
+ return {
219
+ materials: [],
220
+ ...processCDMaterialsMetaInfo(cdMaterialsResult),
221
+ ...processCDMaterialsApprovalInfo(false, cdMaterialsResult),
222
+ }
223
+ }
224
+
225
+ const materials = cdMaterialListModal(
226
+ cdMaterialsResult.ci_artifacts,
227
+ offset ?? 0,
228
+ cdMaterialsResult.latest_wf_artifact_id,
229
+ cdMaterialsResult.latest_wf_artifact_status,
230
+ )
231
+ const approvalInfo = processCDMaterialsApprovalInfo(
232
+ stage === DeploymentNodeType.CD || stage === DeploymentNodeType.APPROVAL,
233
+ cdMaterialsResult,
234
+ )
235
+ const metaInfo = processCDMaterialsMetaInfo(cdMaterialsResult)
236
+
237
+ // TODO: On update of service would remove from here
238
+ const filteredMaterials =
239
+ filter && filter === CDMaterialFilterQuery.RESOURCE
240
+ ? materials.filter((material) => {
241
+ return material.filterState === FilterStates.ALLOWED
242
+ })
243
+ : materials
244
+
245
+ return {
246
+ materials: filteredMaterials,
247
+ ...approvalInfo,
248
+ ...metaInfo,
249
+ }
250
+ }
251
+
252
+ const getSanitizedQueryParams = (queryParams: CDMaterialServiceQueryParams): CDMaterialServiceQueryParams => {
253
+ const { filter, ...rest } = queryParams
254
+ return rest
255
+ }
256
+
257
+ export const genericCDMaterialsService = (
258
+ serviceType: CDMaterialServiceEnum,
259
+ cdMaterialID: number,
260
+ stage: DeploymentNodeType,
261
+ signal: AbortSignal,
262
+ queryParams: CDMaterialServiceQueryParams = {},
263
+ ): Promise<CDMaterialResponseType> => {
264
+ // TODO: On update of service would remove from here
265
+ const manipulatedParams = getSanitizedQueryParams(queryParams)
266
+
267
+ let URL
268
+ switch (serviceType) {
269
+ case CDMaterialServiceEnum.ROLLBACK:
270
+ URL = processURL(`${ROUTES.CD_MATERIAL_GET}/${cdMaterialID}/material/rollback`, manipulatedParams)
271
+ break
272
+
273
+ // Meant for handling getCDMaterialList
274
+ default:
275
+ URL = processURL(`${ROUTES.CD_MATERIAL_GET}/${cdMaterialID}/material`, { ...manipulatedParams, stage: stageMap[stage] })
276
+ break
277
+ }
278
+
279
+ return get(URL, { signal }).then((response) => {
280
+ return processCDMaterialServiceResponse(response.result, stage, queryParams.offset, queryParams.filter)
281
+ })
282
+ }
283
+
284
+ export function extractImage(image: string): string {
285
+ return image ? image.split(':').pop() : ''
286
+ }
287
+
288
+ export function createGitCommitUrl(url: string, revision: string): string {
289
+ if (!url || !revision) {
290
+ return "NA"
291
+ }
292
+ if (url.indexOf("gitlab") > 0 || url.indexOf("github") > 0 || url.indexOf("azure") > 0) {
293
+ let urlpart = url.split("@")
294
+ if (urlpart.length > 1) {
295
+ return "https://" + urlpart[1].split(".git")[0] + "/commit/" + revision
296
+ }
297
+ if (urlpart.length == 1) {
298
+ return urlpart[0].split(".git")[0] + "/commit/" + revision
299
+ }
300
+ }
301
+ if (url.indexOf("bitbucket") > 0) {
302
+ let urlpart = url.split("@")
303
+ if (urlpart.length > 1) {
304
+ return "https://" + urlpart[1].split(".git")[0] + "/commits/" + revision
305
+ }
306
+ if (urlpart.length == 1) {
307
+ return urlpart[0].split(".git")[0] + "/commits/" + revision
308
+ }
309
+ }
310
+ return "NA"
311
+ }
312
+
313
+ export function fetchChartTemplateVersions() {
314
+ return get(`${ROUTES.DEPLOYMENT_TEMPLATE_LIST}?appId=-1&envId=-1`)
315
+ }
@@ -0,0 +1,245 @@
1
+ import { RegistryTypeDetailType } from "./Types"
2
+
3
+ export const FALLBACK_REQUEST_TIMEOUT = 60000
4
+ export const Host = process.env.REACT_APP_ORCHESTRATOR_ROOT
5
+
6
+ export const DOCUMENTATION_HOME_PAGE = 'https://docs.devtron.ai'
7
+ export const DOCUMENTATION = {
8
+ APP_TAGS: `${DOCUMENTATION_HOME_PAGE}/v/v0.6/usage/applications/create-application#tags`,
9
+ APP_OVERVIEW_TAGS: `${DOCUMENTATION_HOME_PAGE}/v/v0.6/usage/applications/overview#manage-tags`,
10
+ }
11
+
12
+ export const PATTERNS = {
13
+ KUBERNETES_KEY_PREFIX: /^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$/,
14
+ KUBERNETES_KEY_NAME: /^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$/,
15
+ START_END_ALPHANUMERIC: /^([Az09].*[A-Za-z0-9])$|[A-Za-z0-9]$/,
16
+ ALPHANUMERIC_WITH_SPECIAL_CHAR: /^[A-Za-z0-9._-]+$/, // allow alphanumeric,(.) ,(-),(_)
17
+ }
18
+
19
+ export const URLS = {
20
+ LOGIN_SSO: '/login/sso',
21
+ }
22
+
23
+ export const ROUTES = {
24
+ PROJECT_LIST_MIN: 'team/autocomplete',
25
+ USER_CHECK_ROLE: 'user/check/roles',
26
+ IMAGE_TAGGING:'app/image-tagging',
27
+ CD_MATERIAL_GET: 'app/cd-pipeline',
28
+ DEPLOYMENT_TEMPLATE_LIST: 'app/template/list'
29
+ }
30
+
31
+ export enum KEY_VALUE {
32
+ KEY = 'key',
33
+ VALUE = 'value',
34
+ }
35
+
36
+ export const DEFAULT_TAG_DATA = {
37
+ key: '',
38
+ value: '',
39
+ propagate: false,
40
+ isInvalidKey: false,
41
+ isInvalidValue: false,
42
+ isSuggested: true,
43
+ }
44
+
45
+ export const TOAST_ACCESS_DENIED = {
46
+ TITLE: 'Access denied',
47
+ SUBTITLE: 'You do not have required access to perform this action',
48
+ }
49
+
50
+ // Empty state messgaes
51
+ export const ERROR_EMPTY_SCREEN = {
52
+ PAGE_NOT_FOUND: 'We could not find this page',
53
+ PAGE_NOT_EXIST: 'This page doesn’t exist or was removed. We suggest you go back to home',
54
+ TAKE_BACK_HOME: 'Take me home',
55
+ ONLY_FOR_SUPERADMIN: 'Information on this page is available only to superadmin users.',
56
+ NOT_AUTHORIZED: 'Not authorized',
57
+ UNAUTHORIZED: 'unauthorized',
58
+ FORBIDDEN: 'forbidden',
59
+ REQUIRED_MANAGER_ACCESS:
60
+ 'Looks like you don’t have access to information on this page. Please contact your manager to request access.',
61
+ }
62
+ export const TOKEN_COOKIE_NAME = 'argocd.token'
63
+ export const TriggerTypeMap = {
64
+ automatic: 'Auto',
65
+ manual: 'Manual',
66
+ }
67
+
68
+ export const BuildStageVariable = {
69
+ PreBuild: 'preBuildStage',
70
+ Build: 'buildStage',
71
+ PostBuild: 'postBuildStage',
72
+ }
73
+
74
+ export const REGISTRY_TYPE_MAP: Record<string, RegistryTypeDetailType> = {
75
+ ecr: {
76
+ value: 'ecr',
77
+ label: 'ECR',
78
+ desiredFormat: '(desired format: repo-name)',
79
+ placeholderText: 'Eg. repo_name',
80
+ gettingStartedLink: 'https://docs.aws.amazon.com/AmazonECR/latest/userguide/get-set-up-for-amazon-ecr.html',
81
+ defaultRegistryURL: '',
82
+ registryURL: {
83
+ label: 'Registry URL',
84
+ defaultValue: '',
85
+ placeholder: 'Eg. xxxxxxxxxxxx.dkr.ecr.region.amazonaws.com',
86
+ },
87
+ id: {
88
+ label: 'Access key ID',
89
+ defaultValue: '',
90
+ placeholder: '',
91
+ },
92
+ password: {
93
+ label: 'Secret access key',
94
+ defaultValue: '',
95
+ placeholder: '',
96
+ },
97
+ },
98
+ 'docker-hub': {
99
+ value: 'docker-hub',
100
+ label: 'Docker',
101
+ desiredFormat: '(desired format: username/repo-name)',
102
+ placeholderText: 'Eg. username/repo_name',
103
+ gettingStartedLink: 'https://docs.docker.com/docker-hub/',
104
+ defaultRegistryURL: 'docker.io',
105
+ registryURL: {
106
+ label: 'Registry URL',
107
+ defaultValue: '',
108
+ placeholder: '',
109
+ },
110
+ id: {
111
+ label: 'Username',
112
+ defaultValue: '',
113
+ placeholder: '',
114
+ },
115
+ password: {
116
+ label: 'Password/Token (Recommended: Token)',
117
+ defaultValue: '',
118
+ placeholder: '',
119
+ },
120
+ },
121
+ acr: {
122
+ value: 'acr',
123
+ label: 'Azure',
124
+ desiredFormat: '(desired format: repo-name)',
125
+ placeholderText: 'Eg. repo_name',
126
+ gettingStartedLink:
127
+ 'https://docs.microsoft.com/en-us/azure/container-registry/container-registry-get-started-portal',
128
+ defaultRegistryURL: '',
129
+ registryURL: {
130
+ label: 'Registry URL/Login Server',
131
+ defaultValue: '',
132
+ placeholder: 'Eg. xxx.azurecr.io',
133
+ },
134
+ id: {
135
+ label: 'Username/Registry Name',
136
+ defaultValue: '',
137
+ placeholder: '',
138
+ },
139
+ password: {
140
+ label: 'Password',
141
+ defaultValue: '',
142
+ placeholder: '',
143
+ },
144
+ },
145
+ 'artifact-registry': {
146
+ value: 'artifact-registry',
147
+ label: 'Artifact Registry (GCP)',
148
+ desiredFormat: '(desired format: project-id/artifacts-repo/repo-name)',
149
+ placeholderText: 'Eg. project-id/artifacts-repo/repo-name',
150
+ gettingStartedLink: 'https://cloud.google.com/artifact-registry/docs/manage-repos?hl=en_US',
151
+ defaultRegistryURL: '',
152
+ registryURL: {
153
+ label: 'Registry URL',
154
+ defaultValue: '',
155
+ placeholder: 'Eg. region-docker.pkg.dev',
156
+ },
157
+ id: {
158
+ label: 'Username',
159
+ defaultValue: '_json_key',
160
+ placeholder: '',
161
+ },
162
+ password: {
163
+ label: 'Service Account JSON File',
164
+ defaultValue: '',
165
+ placeholder: 'Paste json file content here',
166
+ },
167
+ },
168
+ gcr: {
169
+ value: 'gcr',
170
+ label: 'GCR',
171
+ desiredFormat: '(desired format: project-id/repo-name)',
172
+ placeholderText: 'Eg. project-id/repo_name',
173
+ gettingStartedLink: 'https://cloud.google.com/container-registry/docs/quickstart',
174
+ defaultRegistryURL: 'gcr.io',
175
+ registryURL: {
176
+ label: 'Registry URL',
177
+ defaultValue: 'gcr.io',
178
+ placeholder: '',
179
+ },
180
+ id: {
181
+ label: 'Username',
182
+ defaultValue: '_json_key',
183
+ placeholder: '',
184
+ },
185
+ password: {
186
+ label: 'Service Account JSON File',
187
+ defaultValue: '',
188
+ placeholder: 'Paste json file content here',
189
+ },
190
+ },
191
+ quay: {
192
+ value: 'quay',
193
+ label: 'Quay',
194
+ desiredFormat: '(desired format: username/repo-name)',
195
+ placeholderText: 'Eg. username/repo_name',
196
+ gettingStartedLink: '',
197
+ defaultRegistryURL: 'quay.io',
198
+ registryURL: {
199
+ label: 'Registry URL',
200
+ defaultValue: '',
201
+ placeholder: '',
202
+ },
203
+ id: {
204
+ label: 'Username',
205
+ defaultValue: '',
206
+ placeholder: '',
207
+ },
208
+ password: {
209
+ label: 'Token',
210
+ defaultValue: '',
211
+ placeholder: '',
212
+ },
213
+ },
214
+ other: {
215
+ value: 'other',
216
+ label: 'Other',
217
+ desiredFormat: '',
218
+ placeholderText: '',
219
+ gettingStartedLink: '',
220
+ defaultRegistryURL: '',
221
+ registryURL: {
222
+ label: 'Registry URL',
223
+ defaultValue: '',
224
+ placeholder: '',
225
+ },
226
+ id: {
227
+ label: 'Username',
228
+ defaultValue: '',
229
+ placeholder: '',
230
+ },
231
+ password: {
232
+ label: 'Password/Token',
233
+ defaultValue: '',
234
+ placeholder: '',
235
+ },
236
+ },
237
+ }
238
+
239
+ export const RepositoryAction = {
240
+ CONTAINER: "CONTAINER",
241
+ CHART_PULL: "CHART_PULL",
242
+ CHART_PUSH: "CHART_PUSH"
243
+ }
244
+
245
+ export const MAX_Z_INDEX = 2147483647
@@ -0,0 +1,131 @@
1
+ import { CustomInputProps } from './Types'
2
+ import { ReactComponent as Info } from '../../Assets/Icon/ic-info-filled.svg'
3
+ import { ReactComponent as ErrorIcon } from '../../Assets/Icon/ic-warning.svg'
4
+
5
+ export function CustomInput({
6
+ name,
7
+ value,
8
+ error,
9
+ onChange,
10
+ onFocus = (e) => {},
11
+ label,
12
+ type = 'text',
13
+ disabled = false,
14
+ labelClassName = '',
15
+ placeholder = '',
16
+ tabIndex = 1,
17
+ dataTestid = '',
18
+ isRequiredField = false,
19
+ autoFocus = false,
20
+ rootClassName = '',
21
+ autoComplete = 'off',
22
+ helperText = '',
23
+ handleOnBlur,
24
+ readOnly = false,
25
+ noTrim = false,
26
+ ref,
27
+ onKeyPress,
28
+ defaultValue,
29
+ onKeyDown,
30
+ required,
31
+ additionalErrorInfo
32
+ }: CustomInputProps) {
33
+
34
+ function handleError(error: any): any[] {
35
+ if (!Array.isArray(error)) {
36
+ return [error]
37
+ }
38
+ return error
39
+ }
40
+
41
+ const onBlur = (event) => {
42
+ //NOTE: This is to prevent the input from being trimmed when the user do not want to trim the input
43
+ if (!noTrim) {
44
+ event.stopPropagation()
45
+ event.target.value = event.target.value?.trim()
46
+ onChange(event)
47
+ }
48
+ if (typeof handleOnBlur === 'function') {
49
+ handleOnBlur(event)
50
+ }
51
+ }
52
+
53
+ const renderFormErrorWithIcon = (error: string) => {
54
+ return (
55
+ <div className="form__error" key={error}>
56
+ <ErrorIcon className="form__icon form__icon--error" />
57
+ {error}
58
+ {typeof additionalErrorInfo === 'function' && additionalErrorInfo()}
59
+ </div>
60
+ )
61
+ }
62
+
63
+ const getInputError = () => {
64
+ if (!error?.length) {
65
+ return null
66
+ } else {
67
+ if (typeof error === 'object') {
68
+ return handleError(error).map((err: string) => renderFormErrorWithIcon(err))
69
+ }
70
+ return renderFormErrorWithIcon(error)
71
+ }
72
+ }
73
+
74
+ const renderInputLabelConditionally = () => {
75
+ if (typeof label === 'string') {
76
+ return <span className={`${isRequiredField ? 'dc__required-field' : ''}`}>{label}</span>
77
+ } else {
78
+ return label
79
+ }
80
+ }
81
+
82
+ const renderInputLabel = () => {
83
+ if (!label) {
84
+ return null
85
+ } else {
86
+ return (
87
+ <label className={`form__label ${labelClassName}`} data-testid={`label-${dataTestid}`}>
88
+ {renderInputLabelConditionally()}
89
+ </label>
90
+ )
91
+ }
92
+ }
93
+
94
+ return (
95
+ <div className="flex column left top">
96
+ {renderInputLabel()}
97
+ <input
98
+ data-testid={dataTestid}
99
+ type={type}
100
+ name={name}
101
+ autoComplete={autoComplete}
102
+ className={`form__input ${rootClassName}`}
103
+ onChange={(e) => {
104
+ e.persist()
105
+ onChange(e)
106
+ }}
107
+ onBlur={onBlur}
108
+ onFocus={onFocus}
109
+ placeholder={placeholder}
110
+ value={value}
111
+ disabled={disabled}
112
+ tabIndex={tabIndex}
113
+ autoFocus={autoFocus}
114
+ readOnly={readOnly}
115
+ ref={ref}
116
+ onKeyPress={onKeyPress}
117
+ defaultValue={defaultValue}
118
+ onKeyDown={onKeyDown}
119
+ required={required}
120
+ />
121
+
122
+ {getInputError()}
123
+ {helperText && (
124
+ <div className="form__text-field-info">
125
+ <Info className="form__icon form__icon--info" />
126
+ <p className="sentence-case">{helperText}</p>
127
+ </div>
128
+ )}
129
+ </div>
130
+ )
131
+ }