@devtron-labs/devtron-fe-common-lib 0.0.59-beta-5 → 0.0.59-beta-6

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 (450) hide show
  1. package/.eslintignore +96 -0
  2. package/.eslintrc.js +109 -0
  3. package/.github/pull_request_template.md +25 -0
  4. package/.github/workflows/ci.yml +31 -0
  5. package/.github/workflows/release-package.yml +48 -0
  6. package/.husky/pre-commit +5 -0
  7. package/.lintstagedrc +3 -0
  8. package/.nvmrc +1 -0
  9. package/.prettierrc.js +7 -0
  10. package/dist/Common/AddCDButton/AddCDButton.d.ts +3 -3
  11. package/dist/Common/AddCDButton/index.d.ts +2 -2
  12. package/dist/Common/AddCDButton/types.d.ts +26 -26
  13. package/dist/Common/AddCDButton/utils.d.ts +2 -2
  14. package/dist/Common/Api.d.ts +14 -5
  15. package/dist/Common/AppStatus/AppStatus.d.ts +3 -3
  16. package/dist/Common/AppStatus/constants.d.ts +51 -51
  17. package/dist/Common/AppStatus/index.d.ts +1 -1
  18. package/dist/Common/AppStatus/types.d.ts +12 -12
  19. package/dist/Common/AppStatus/utils.d.ts +1 -1
  20. package/dist/Common/BreadCrumb/BreadCrumb.d.ts +5 -5
  21. package/dist/Common/BreadCrumb/BreadcrumbStore.d.ts +17 -17
  22. package/dist/Common/BreadCrumb/Types.d.ts +28 -28
  23. package/dist/Common/CIPipeline.Types.d.ts +265 -265
  24. package/dist/Common/ChartVersionAndTypeSelector.d.ts +4 -3
  25. package/dist/Common/Checkbox.d.ts +5 -5
  26. package/dist/Common/ClipboardButton/ClipboardButton.d.ts +10 -10
  27. package/dist/Common/ClipboardButton/types.d.ts +8 -8
  28. package/dist/Common/Common.service.d.ts +20 -20
  29. package/dist/Common/Constants.d.ts +76 -81
  30. package/dist/Common/CustomInput/CustomInput.d.ts +3 -2
  31. package/dist/Common/CustomInput/Types.d.ts +31 -31
  32. package/dist/Common/CustomInput/index.d.ts +2 -2
  33. package/dist/Common/CustomTagSelector/PropagateTagInfo.d.ts +4 -4
  34. package/dist/Common/CustomTagSelector/ResizableTagTextArea.d.ts +3 -2
  35. package/dist/Common/CustomTagSelector/TagDetails.d.ts +3 -2
  36. package/dist/Common/CustomTagSelector/TagLabelSelect.d.ts +3 -2
  37. package/dist/Common/CustomTagSelector/TagLabelValueSelector.d.ts +3 -2
  38. package/dist/Common/CustomTagSelector/TagSelector.utils.d.ts +12 -12
  39. package/dist/Common/CustomTagSelector/Types.d.ts +68 -68
  40. package/dist/Common/CustomTagSelector/ValidationRules.d.ts +10 -10
  41. package/dist/Common/CustomTagSelector/index.d.ts +6 -6
  42. package/dist/Common/DebouncedSearch/DebouncedSearch.d.ts +17 -17
  43. package/dist/Common/DebouncedSearch/Types.d.ts +14 -14
  44. package/dist/Common/DebouncedSearch/Utils.d.ts +1 -1
  45. package/dist/Common/DeleteComponentModal/DeleteComponent.d.ts +4 -3
  46. package/dist/Common/DeleteComponentModal/types.d.ts +15 -15
  47. package/dist/Common/DevtronProgressing/DevtronProgressing.d.ts +3 -2
  48. package/dist/Common/DevtronProgressing/index.d.ts +1 -1
  49. package/dist/Common/DevtronProgressing/types.d.ts +4 -4
  50. package/dist/Common/Dialogs/ConfirmationDialog.d.ts +9 -8
  51. package/dist/Common/Dialogs/DeleteDialog.d.ts +5 -5
  52. package/dist/Common/Dialogs/DialogForm.d.ts +14 -14
  53. package/dist/Common/Dialogs/ForceDeleteDialog.d.ts +3 -3
  54. package/dist/Common/Dialogs/Types.d.ts +45 -45
  55. package/dist/Common/Dialogs/index.d.ts +4 -4
  56. package/dist/Common/DraggableWrapper/DraggableButton.d.ts +3 -3
  57. package/dist/Common/DraggableWrapper/DraggableWrapper.d.ts +9 -9
  58. package/dist/Common/DraggableWrapper/index.d.ts +3 -3
  59. package/dist/Common/DraggableWrapper/types.d.ts +23 -23
  60. package/dist/Common/Drawer/Drawer.d.ts +16 -14
  61. package/dist/Common/EmptyState/EmptyState.d.ts +25 -0
  62. package/dist/Common/EmptyState/GenericEmptyState.d.ts +5 -3
  63. package/dist/Common/Error.d.ts +17 -17
  64. package/dist/Common/ErrorScreenNotFound.d.ts +3 -2
  65. package/dist/Common/Grid/Grid.d.ts +3 -3
  66. package/dist/Common/Grid/types.d.ts +10 -10
  67. package/dist/Common/Helper.d.ts +64 -65
  68. package/dist/Common/Hooks/UseClickOutside/UseClickOutside.d.ts +1 -1
  69. package/dist/Common/Hooks/UseSuperAdmin/UseSuperAdmin.d.ts +6 -6
  70. package/dist/Common/Hooks/UseSuperAdmin/types.d.ts +3 -3
  71. package/dist/Common/Hooks/UseWindowSize/UseWindowSize.d.ts +4 -4
  72. package/dist/Common/Hooks/index.d.ts +3 -3
  73. package/dist/Common/ImageTags.Types.d.ts +40 -40
  74. package/dist/Common/ImageTags.d.ts +4 -3
  75. package/dist/Common/InfoColorBar/InfoColourbar.d.ts +5 -3
  76. package/dist/Common/Modals/Modal.d.ts +3 -3
  77. package/dist/Common/Modals/OpaqueModal.d.ts +12 -12
  78. package/dist/Common/Modals/VisibleModal.d.ts +15 -15
  79. package/dist/Common/Modals/VisibleModal2.d.ts +12 -12
  80. package/dist/Common/MultiSelectCustomization.d.ts +37 -37
  81. package/dist/Common/Pagination/PageSizeSelector.d.ts +4 -3
  82. package/dist/Common/Pagination/Pagination.d.ts +5 -3
  83. package/dist/Common/Pagination/constants.d.ts +5 -5
  84. package/dist/Common/Pagination/index.d.ts +1 -1
  85. package/dist/Common/Pagination/types.d.ts +51 -51
  86. package/dist/Common/Pagination/utils.d.ts +6 -6
  87. package/dist/Common/Policy.Types.d.ts +56 -56
  88. package/dist/Common/PopupMenu.d.ts +8 -7
  89. package/dist/Common/Progressing.d.ts +4 -3
  90. package/dist/Common/RJSF/Form.d.ts +4 -2
  91. package/dist/Common/RJSF/common/FieldRow.d.ts +6 -5
  92. package/dist/Common/RJSF/common/types.d.ts +8 -8
  93. package/dist/Common/RJSF/config.d.ts +4 -4
  94. package/dist/Common/RJSF/constants.d.ts +7 -7
  95. package/dist/Common/RJSF/index.d.ts +3 -3
  96. package/dist/Common/RJSF/templates/ArrayFieldItemTemplate.d.ts +3 -2
  97. package/dist/Common/RJSF/templates/ArrayFieldTemplate.d.ts +3 -2
  98. package/dist/Common/RJSF/templates/BaseInput.d.ts +3 -2
  99. package/dist/Common/RJSF/templates/ButtonTemplates/AddButton.d.ts +3 -2
  100. package/dist/Common/RJSF/templates/ButtonTemplates/RemoveButton.d.ts +3 -2
  101. package/dist/Common/RJSF/templates/ButtonTemplates/SubmitButton.d.ts +3 -2
  102. package/dist/Common/RJSF/templates/ButtonTemplates/index.d.ts +3 -3
  103. package/dist/Common/RJSF/templates/Description.d.ts +3 -2
  104. package/dist/Common/RJSF/templates/Field.d.ts +3 -2
  105. package/dist/Common/RJSF/templates/FieldErrorTemplate.d.ts +3 -2
  106. package/dist/Common/RJSF/templates/ObjectFieldTemplate.d.ts +3 -2
  107. package/dist/Common/RJSF/templates/TitleField.d.ts +3 -2
  108. package/dist/Common/RJSF/templates/WrapIfAdditionalTemplate.d.ts +3 -2
  109. package/dist/Common/RJSF/templates/index.d.ts +10 -10
  110. package/dist/Common/RJSF/types.d.ts +3 -3
  111. package/dist/Common/RJSF/utils.d.ts +26 -25
  112. package/dist/Common/RJSF/widgets/Checkbox.d.ts +3 -2
  113. package/dist/Common/RJSF/widgets/Select.d.ts +3 -2
  114. package/dist/Common/RJSF/widgets/index.d.ts +2 -2
  115. package/dist/Common/RadioGroup/RadioGroup.d.ts +17 -16
  116. package/dist/Common/RadioGroup.d.ts +8 -8
  117. package/dist/Common/Reload.d.ts +3 -3
  118. package/dist/Common/ResizableTextarea.d.ts +3 -3
  119. package/dist/Common/SearchBar/SearchBar.component.d.ts +39 -37
  120. package/dist/Common/SearchBar/index.d.ts +2 -2
  121. package/dist/Common/SearchBar/types.d.ts +35 -35
  122. package/dist/Common/Security/ScanVulnerabilitiesTable.d.ts +4 -3
  123. package/dist/Common/ServerError.d.ts +15 -15
  124. package/dist/Common/TippyCustomized.d.ts +4 -2
  125. package/dist/Common/ToastBody.d.ts +23 -23
  126. package/dist/Common/Toggle/Toggle.d.ts +14 -12
  127. package/dist/Common/Types.d.ts +692 -691
  128. package/dist/Common/index.d.ts +50 -50
  129. package/dist/Pages/GlobalConfigurations/BuildInfra/BuildInfraConfigForm.d.ts +4 -0
  130. package/dist/Pages/GlobalConfigurations/BuildInfra/BuildInfraDescriptionField.d.ts +4 -0
  131. package/dist/Pages/GlobalConfigurations/BuildInfra/BuildInfraFormAction.d.ts +7 -0
  132. package/dist/Pages/GlobalConfigurations/BuildInfra/BuildInfraFormItem.d.ts +4 -0
  133. package/dist/Pages/GlobalConfigurations/BuildInfra/BuildInfraProfileNameField.d.ts +4 -0
  134. package/dist/Pages/GlobalConfigurations/BuildInfra/Descriptor.d.ts +4 -0
  135. package/dist/Pages/GlobalConfigurations/BuildInfra/Footer.d.ts +4 -0
  136. package/dist/Pages/GlobalConfigurations/BuildInfra/constants.d.ts +50 -0
  137. package/dist/Pages/GlobalConfigurations/BuildInfra/index.d.ts +7 -0
  138. package/dist/Pages/GlobalConfigurations/BuildInfra/services.d.ts +6 -0
  139. package/dist/Pages/GlobalConfigurations/BuildInfra/types.d.ts +286 -0
  140. package/dist/Pages/GlobalConfigurations/BuildInfra/utils.d.ts +12 -0
  141. package/dist/Pages/GlobalConfigurations/index.d.ts +1 -0
  142. package/dist/Pages/index.d.ts +1 -0
  143. package/dist/Shared/Components/APIResponseHandler/APIResponseHandler.d.ts +4 -0
  144. package/dist/Shared/Components/APIResponseHandler/constants.d.ts +4 -0
  145. package/dist/Shared/Components/APIResponseHandler/index.d.ts +2 -0
  146. package/dist/Shared/Components/APIResponseHandler/types.d.ts +37 -0
  147. package/dist/Shared/Components/BulkSelection/BulkSelection.d.ts +4 -0
  148. package/dist/Shared/Components/BulkSelection/BulkSelectionDropdownItems.d.ts +4 -0
  149. package/dist/Shared/Components/BulkSelection/UseBulkSelection.d.ts +3 -0
  150. package/dist/Shared/Components/BulkSelection/constants.d.ts +8 -0
  151. package/dist/Shared/Components/BulkSelection/index.d.ts +4 -0
  152. package/dist/Shared/Components/BulkSelection/types.d.ts +51 -0
  153. package/dist/Shared/Components/ReactSelect/index.d.ts +1 -0
  154. package/dist/Shared/Components/ReactSelect/utils.d.ts +12 -0
  155. package/dist/Shared/Components/index.d.ts +3 -0
  156. package/dist/Shared/Helpers.d.ts +16 -0
  157. package/dist/Shared/index.d.ts +3 -0
  158. package/dist/Shared/validations.d.ts +8 -0
  159. package/dist/index.d.ts +3 -7
  160. package/dist/index.js +30111 -162
  161. package/package.json +23 -34
  162. package/rollup.config.js +31 -0
  163. package/src/Assets/Icon/ic-add.svg +3 -0
  164. package/src/Assets/Icon/ic-appstatus-cancelled.svg +6 -0
  165. package/src/Assets/Icon/ic-arrow-counter-clockwise.svg +5 -0
  166. package/src/Assets/Icon/ic-check-all.svg +5 -0
  167. package/src/Assets/Icon/ic-check-square.svg +4 -0
  168. package/src/Assets/Icon/ic-check.svg +5 -0
  169. package/src/Assets/Icon/ic-chevron-down.svg +5 -0
  170. package/src/Assets/Icon/ic-copy.svg +3 -0
  171. package/src/Assets/Icon/ic-cpu.svg +4 -0
  172. package/src/Assets/Icon/ic-cross.svg +3 -0
  173. package/src/Assets/Icon/ic-drag.svg +8 -0
  174. package/src/Assets/Icon/ic-enter.svg +3 -0
  175. package/src/Assets/Icon/ic-error-cross.svg +8 -0
  176. package/src/Assets/Icon/ic-error-exclamation.svg +6 -0
  177. package/src/Assets/Icon/ic-error-medium.svg +6 -0
  178. package/src/Assets/Icon/ic-help-outline.svg +3 -0
  179. package/src/Assets/Icon/ic-help.svg +3 -0
  180. package/src/Assets/Icon/ic-info-filled.svg +7 -0
  181. package/src/Assets/Icon/ic-info-outlined.svg +13 -0
  182. package/src/Assets/Icon/ic-memory.svg +3 -0
  183. package/src/Assets/Icon/ic-minus.svg +3 -0
  184. package/src/Assets/Icon/ic-pencil.svg +3 -0
  185. package/src/Assets/Icon/ic-progressing.svg +6 -0
  186. package/src/Assets/Icon/ic-rotate-devtron.svg +103 -0
  187. package/src/Assets/Icon/ic-search.svg +6 -0
  188. package/src/Assets/Icon/ic-timer.svg +3 -0
  189. package/src/Assets/Icon/ic-warning.svg +7 -0
  190. package/src/Assets/Icon/inject-tag.svg +5 -0
  191. package/src/Assets/Img/app-not-deployed.png +0 -0
  192. package/src/Assets/Img/delete-medium.svg +15 -0
  193. package/src/Assets/Img/ic-empty-error@2x.png +0 -0
  194. package/src/Assets/Img/ic-loading-failure.png +0 -0
  195. package/src/Assets/Img/ic-not-authorized.svg +62 -0
  196. package/src/Common/AddCDButton/AddCDButton.tsx +68 -0
  197. package/src/Common/AddCDButton/index.ts +2 -0
  198. package/src/Common/AddCDButton/types.ts +38 -0
  199. package/src/Common/AddCDButton/utils.tsx +35 -0
  200. package/src/Common/Api.ts +251 -0
  201. package/src/Common/AppStatus/AppStatus.tsx +64 -0
  202. package/src/Common/AppStatus/constants.ts +53 -0
  203. package/src/Common/AppStatus/index.ts +1 -0
  204. package/src/Common/AppStatus/types.ts +12 -0
  205. package/src/Common/AppStatus/utils.ts +14 -0
  206. package/src/Common/BreadCrumb/BreadCrumb.tsx +105 -0
  207. package/src/Common/BreadCrumb/BreadcrumbStore.tsx +25 -0
  208. package/src/Common/BreadCrumb/Types.ts +29 -0
  209. package/src/Common/CIPipeline.Types.ts +277 -0
  210. package/src/Common/ChartVersionAndTypeSelector.tsx +78 -0
  211. package/src/Common/Checkbox.tsx +37 -0
  212. package/src/Common/ClipboardButton/ClipboardButton.tsx +61 -0
  213. package/src/Common/ClipboardButton/__tests__/ClipboardButton.test.tsx +43 -0
  214. package/src/Common/ClipboardButton/types.ts +7 -0
  215. package/src/Common/Common.service.ts +315 -0
  216. package/src/Common/Constants.ts +255 -0
  217. package/src/Common/CustomInput/CustomInput.tsx +135 -0
  218. package/src/Common/CustomInput/Types.ts +32 -0
  219. package/src/Common/CustomInput/index.ts +2 -0
  220. package/src/Common/CustomTagSelector/PropagateTagInfo.tsx +46 -0
  221. package/src/Common/CustomTagSelector/ResizableTagTextArea.tsx +84 -0
  222. package/src/Common/CustomTagSelector/TagDetails.tsx +76 -0
  223. package/src/Common/CustomTagSelector/TagLabelSelect.tsx +61 -0
  224. package/src/Common/CustomTagSelector/TagLabelValueSelector.tsx +198 -0
  225. package/src/Common/CustomTagSelector/TagSelector.utils.ts +71 -0
  226. package/src/Common/CustomTagSelector/Types.ts +72 -0
  227. package/src/Common/CustomTagSelector/ValidationRules.ts +58 -0
  228. package/src/Common/CustomTagSelector/index.ts +6 -0
  229. package/src/Common/DebouncedSearch/DebouncedSearch.tsx +78 -0
  230. package/src/Common/DebouncedSearch/Types.ts +13 -0
  231. package/src/Common/DebouncedSearch/Utils.ts +19 -0
  232. package/src/Common/DebouncedSearch/__tests__/DebouncedSearch.test.tsx +61 -0
  233. package/src/Common/DeleteComponentModal/DeleteComponent.tsx +95 -0
  234. package/src/Common/DeleteComponentModal/types.ts +15 -0
  235. package/src/Common/DevtronProgressing/DevtronProgressing.tsx +11 -0
  236. package/src/Common/DevtronProgressing/index.ts +1 -0
  237. package/src/Common/DevtronProgressing/types.ts +4 -0
  238. package/src/Common/Dialogs/ConfirmationDialog.tsx +34 -0
  239. package/src/Common/Dialogs/DeleteDialog.tsx +69 -0
  240. package/src/Common/Dialogs/DialogForm.tsx +86 -0
  241. package/src/Common/Dialogs/ForceDeleteDialog.tsx +19 -0
  242. package/src/Common/Dialogs/Types.ts +47 -0
  243. package/src/Common/Dialogs/index.ts +4 -0
  244. package/src/Common/DraggableWrapper/DraggableButton.tsx +14 -0
  245. package/src/Common/DraggableWrapper/DraggableWrapper.tsx +118 -0
  246. package/src/Common/DraggableWrapper/index.ts +3 -0
  247. package/src/Common/DraggableWrapper/types.ts +27 -0
  248. package/src/Common/Drawer/Drawer.scss +40 -0
  249. package/src/Common/Drawer/Drawer.tsx +49 -0
  250. package/src/Common/EmptyState/EmptyState.tsx +42 -0
  251. package/src/Common/EmptyState/GenericEmptyState.tsx +81 -0
  252. package/src/Common/EmptyState/emptyState.scss +74 -0
  253. package/src/Common/Error.tsx +61 -0
  254. package/src/Common/ErrorScreenNotFound.tsx +31 -0
  255. package/src/Common/Grid/Grid.tsx +44 -0
  256. package/src/Common/Grid/types.ts +11 -0
  257. package/src/Common/Helper.tsx +576 -0
  258. package/src/Common/Hooks/UseClickOutside/UseClickOutside.tsx +15 -0
  259. package/src/Common/Hooks/UseSuperAdmin/UseSuperAdmin.tsx +24 -0
  260. package/src/Common/Hooks/UseSuperAdmin/types.ts +3 -0
  261. package/src/Common/Hooks/UseWindowSize/UseWindowSize.tsx +31 -0
  262. package/src/Common/Hooks/index.ts +3 -0
  263. package/src/Common/ImageTags.Types.ts +44 -0
  264. package/src/Common/ImageTags.tsx +586 -0
  265. package/src/Common/InfoColorBar/InfoColourbar.tsx +80 -0
  266. package/src/Common/InfoColorBar/infoColourBar.scss +28 -0
  267. package/src/Common/Modals/Modal.tsx +68 -0
  268. package/src/Common/Modals/OpaqueModal.tsx +36 -0
  269. package/src/Common/Modals/VisibleModal.tsx +55 -0
  270. package/src/Common/Modals/VisibleModal2.tsx +35 -0
  271. package/src/Common/MultiSelectCustomization.tsx +148 -0
  272. package/src/Common/Pagination/PageSizeSelector.tsx +78 -0
  273. package/src/Common/Pagination/Pagination.tsx +127 -0
  274. package/src/Common/Pagination/constants.ts +6 -0
  275. package/src/Common/Pagination/index.tsx +3 -0
  276. package/src/Common/Pagination/pagination.scss +123 -0
  277. package/src/Common/Pagination/types.ts +55 -0
  278. package/src/Common/Pagination/utils.tsx +24 -0
  279. package/src/Common/Policy.Types.ts +63 -0
  280. package/src/Common/PopupMenu.tsx +199 -0
  281. package/src/Common/Progressing.tsx +53 -0
  282. package/src/Common/RJSF/Form.tsx +29 -0
  283. package/src/Common/RJSF/common/FieldRow.tsx +35 -0
  284. package/src/Common/RJSF/common/types.ts +9 -0
  285. package/src/Common/RJSF/config.ts +37 -0
  286. package/src/Common/RJSF/constants.ts +10 -0
  287. package/src/Common/RJSF/index.ts +3 -0
  288. package/src/Common/RJSF/rjsfForm.scss +18 -0
  289. package/src/Common/RJSF/templates/ArrayFieldItemTemplate.tsx +31 -0
  290. package/src/Common/RJSF/templates/ArrayFieldTemplate.tsx +78 -0
  291. package/src/Common/RJSF/templates/BaseInput.tsx +16 -0
  292. package/src/Common/RJSF/templates/ButtonTemplates/AddButton.tsx +18 -0
  293. package/src/Common/RJSF/templates/ButtonTemplates/RemoveButton.tsx +10 -0
  294. package/src/Common/RJSF/templates/ButtonTemplates/SubmitButton.tsx +18 -0
  295. package/src/Common/RJSF/templates/ButtonTemplates/index.ts +3 -0
  296. package/src/Common/RJSF/templates/Description.tsx +12 -0
  297. package/src/Common/RJSF/templates/Field.tsx +30 -0
  298. package/src/Common/RJSF/templates/FieldErrorTemplate.tsx +25 -0
  299. package/src/Common/RJSF/templates/ObjectFieldTemplate.tsx +105 -0
  300. package/src/Common/RJSF/templates/TitleField.tsx +9 -0
  301. package/src/Common/RJSF/templates/WrapIfAdditionalTemplate.tsx +51 -0
  302. package/src/Common/RJSF/templates/index.ts +10 -0
  303. package/src/Common/RJSF/types.ts +4 -0
  304. package/src/Common/RJSF/utils.ts +125 -0
  305. package/src/Common/RJSF/widgets/Checkbox.tsx +44 -0
  306. package/src/Common/RJSF/widgets/Select.tsx +77 -0
  307. package/src/Common/RJSF/widgets/index.ts +2 -0
  308. package/src/Common/RadioGroup/RadioGroup.tsx +105 -0
  309. package/src/Common/RadioGroup/radioGroup.scss +46 -0
  310. package/src/Common/RadioGroup.tsx +53 -0
  311. package/src/Common/Reload.tsx +23 -0
  312. package/src/Common/ResizableTextarea.tsx +73 -0
  313. package/src/Common/SearchBar/SearchBar.component.tsx +131 -0
  314. package/src/Common/SearchBar/index.ts +2 -0
  315. package/src/Common/SearchBar/searchBar.scss +31 -0
  316. package/src/Common/SearchBar/types.ts +34 -0
  317. package/src/Common/Security/ScanVulnerabilitiesTable.tsx +55 -0
  318. package/src/Common/Security/scanVulnerabilities.css +69 -0
  319. package/src/Common/ServerError.ts +31 -0
  320. package/src/Common/TippyCustomized.tsx +172 -0
  321. package/src/Common/ToastBody.tsx +62 -0
  322. package/src/Common/Toggle/Toggle.scss +78 -0
  323. package/src/Common/Toggle/Toggle.tsx +50 -0
  324. package/src/Common/Types.ts +766 -0
  325. package/src/Common/index.ts +50 -0
  326. package/src/Pages/GlobalConfigurations/BuildInfra/BuildInfraConfigForm.tsx +128 -0
  327. package/src/Pages/GlobalConfigurations/BuildInfra/BuildInfraDescriptionField.tsx +44 -0
  328. package/src/Pages/GlobalConfigurations/BuildInfra/BuildInfraFormAction.tsx +106 -0
  329. package/src/Pages/GlobalConfigurations/BuildInfra/BuildInfraFormItem.tsx +55 -0
  330. package/src/Pages/GlobalConfigurations/BuildInfra/BuildInfraProfileNameField.tsx +32 -0
  331. package/src/Pages/GlobalConfigurations/BuildInfra/Descriptor.tsx +45 -0
  332. package/src/Pages/GlobalConfigurations/BuildInfra/Footer.tsx +55 -0
  333. package/src/Pages/GlobalConfigurations/BuildInfra/Readme.md +4 -0
  334. package/src/Pages/GlobalConfigurations/BuildInfra/constants.tsx +138 -0
  335. package/src/Pages/GlobalConfigurations/BuildInfra/index.ts +7 -0
  336. package/src/Pages/GlobalConfigurations/BuildInfra/services.tsx +167 -0
  337. package/src/Pages/GlobalConfigurations/BuildInfra/types.tsx +339 -0
  338. package/src/Pages/GlobalConfigurations/BuildInfra/utils.tsx +509 -0
  339. package/src/Pages/GlobalConfigurations/index.ts +1 -0
  340. package/src/Pages/index.ts +1 -0
  341. package/src/Shared/Components/APIResponseHandler/APIResponseHandler.tsx +41 -0
  342. package/src/Shared/Components/APIResponseHandler/constants.tsx +5 -0
  343. package/src/Shared/Components/APIResponseHandler/index.ts +2 -0
  344. package/src/Shared/Components/APIResponseHandler/types.tsx +39 -0
  345. package/src/Shared/Components/BulkSelection/BulkSelection.tsx +81 -0
  346. package/src/Shared/Components/BulkSelection/BulkSelectionDropdownItems.tsx +31 -0
  347. package/src/Shared/Components/BulkSelection/UseBulkSelection.tsx +99 -0
  348. package/src/Shared/Components/BulkSelection/constants.tsx +12 -0
  349. package/src/Shared/Components/BulkSelection/index.ts +4 -0
  350. package/src/Shared/Components/BulkSelection/types.tsx +61 -0
  351. package/src/Shared/Components/ReactSelect/index.ts +1 -0
  352. package/src/Shared/Components/ReactSelect/utils.tsx +97 -0
  353. package/src/Shared/Components/index.ts +3 -0
  354. package/src/Shared/Helpers.tsx +29 -0
  355. package/src/Shared/index.ts +3 -0
  356. package/src/Shared/validations.tsx +130 -0
  357. package/src/custom.d.ts +13 -0
  358. package/src/index.ts +3 -0
  359. package/tsconfig.json +40 -0
  360. package/dist/Common/CodeEditor/CodeEditor.d.ts +0 -47
  361. package/dist/Common/Select/Select.d.ts +0 -4
  362. package/dist/Common/Select/types.d.ts +0 -29
  363. package/dist/abap-9f67f57a.js +0 -1314
  364. package/dist/apex-ff62e532.js +0 -315
  365. package/dist/assets/editor.worker-d26000ef.js +0 -9
  366. package/dist/assets/index.css +0 -1
  367. package/dist/assets/json.worker-f23a4654.js +0 -40
  368. package/dist/assets/yaml.worker-35ea3f9a.js +0 -467
  369. package/dist/azcli-31e64a7f.js +0 -74
  370. package/dist/bat-0ffe897e.js +0 -95
  371. package/dist/bicep-3414a2b1.js +0 -108
  372. package/dist/cameligo-df1f3f25.js +0 -168
  373. package/dist/clojure-65b0f010.js +0 -754
  374. package/dist/coffee-437f0fba.js +0 -228
  375. package/dist/cpp-66843dd5.js +0 -390
  376. package/dist/csharp-621d9a49.js +0 -320
  377. package/dist/csp-de0d5244.js +0 -57
  378. package/dist/css-7cd5ed4c.js +0 -186
  379. package/dist/cssMode-dc5f347f.js +0 -1446
  380. package/dist/cypher-70ad96fe.js +0 -262
  381. package/dist/dart-33ae3739.js +0 -270
  382. package/dist/dockerfile-f2274a50.js +0 -132
  383. package/dist/ecl-3b8294a3.js +0 -454
  384. package/dist/elixir-b9dcc73a.js +0 -489
  385. package/dist/flow9-bdde8316.js +0 -141
  386. package/dist/freemarker2-adb1a1bb.js +0 -643
  387. package/dist/fsharp-eac2e449.js +0 -210
  388. package/dist/go-d12ed8d4.js +0 -208
  389. package/dist/graphql-c7356b69.js +0 -141
  390. package/dist/handlebars-096fff05.js +0 -391
  391. package/dist/hcl-e883a0d4.js +0 -177
  392. package/dist/html-0cbfb620.js +0 -281
  393. package/dist/htmlMode-cb96e200.js +0 -1456
  394. package/dist/index-3e12a5d1.js +0 -126104
  395. package/dist/ini-425ab711.js +0 -68
  396. package/dist/java-2bc0fd68.js +0 -221
  397. package/dist/javascript-198e562f.js +0 -75
  398. package/dist/jsonMode-9c219fc6.js +0 -1867
  399. package/dist/julia-1c932615.js +0 -496
  400. package/dist/kotlin-1ab839c8.js +0 -245
  401. package/dist/less-6fe856f5.js +0 -168
  402. package/dist/lexon-4955ac52.js +0 -151
  403. package/dist/liquid-7405cc0a.js +0 -238
  404. package/dist/lua-3cca0047.js +0 -157
  405. package/dist/m3-132e9cb6.js +0 -210
  406. package/dist/markdown-ea59a0c1.js +0 -202
  407. package/dist/mips-19811f4b.js +0 -194
  408. package/dist/msdax-69954a10.js +0 -377
  409. package/dist/mysql-82088e5d.js +0 -876
  410. package/dist/objective-c-1976eccc.js +0 -188
  411. package/dist/pascal-8ef177cb.js +0 -245
  412. package/dist/pascaligo-bc517b9e.js +0 -158
  413. package/dist/perl-8b93582c.js +0 -599
  414. package/dist/pgsql-00c11a6d.js +0 -847
  415. package/dist/php-4c8c276f.js +0 -471
  416. package/dist/pla-e9b4ffb1.js +0 -131
  417. package/dist/postiats-2071af8c.js +0 -544
  418. package/dist/powerquery-8e388ceb.js +0 -890
  419. package/dist/powershell-e35db398.js +0 -233
  420. package/dist/protobuf-a24b9176.js +0 -422
  421. package/dist/pug-2c94d9b8.js +0 -393
  422. package/dist/python-2df08096.js +0 -259
  423. package/dist/qsharp-d730d7fe.js +0 -282
  424. package/dist/r-be193556.js +0 -245
  425. package/dist/razor-11eb7ebc.js +0 -512
  426. package/dist/redis-9690c6ac.js +0 -298
  427. package/dist/redshift-6bdcdeaa.js +0 -806
  428. package/dist/restructuredtext-a08c1d20.js +0 -162
  429. package/dist/ruby-2247692b.js +0 -444
  430. package/dist/rust-1dffb4d5.js +0 -337
  431. package/dist/sb-136598e9.js +0 -110
  432. package/dist/scala-b1100fed.js +0 -353
  433. package/dist/scheme-038c8094.js +0 -114
  434. package/dist/scss-700d1b52.js +0 -244
  435. package/dist/shell-86c16e0f.js +0 -224
  436. package/dist/solidity-c05fdf3c.js +0 -1351
  437. package/dist/sophia-cd645d71.js +0 -190
  438. package/dist/sparql-01d9ec9c.js +0 -193
  439. package/dist/sql-4c33df41.js +0 -818
  440. package/dist/st-52cf1408.js +0 -414
  441. package/dist/swift-13c792ba.js +0 -315
  442. package/dist/systemverilog-0bd8b730.js +0 -556
  443. package/dist/tcl-463d7c75.js +0 -232
  444. package/dist/tsMode-35934209.js +0 -811
  445. package/dist/twig-0d98f5ec.js +0 -323
  446. package/dist/typescript-999619a1.js +0 -328
  447. package/dist/vb-3a2b0a51.js +0 -364
  448. package/dist/wgsl-b2ddb3e4.js +0 -420
  449. package/dist/xml-ebd03a57.js +0 -95
  450. package/dist/yaml-d1cda485.js +0 -184
@@ -0,0 +1,46 @@
1
+ .radio-group {
2
+ .label,
3
+ .radio,
4
+ .checkbox {
5
+ margin: 0;
6
+ }
7
+ height: 30px;
8
+ background: white;
9
+ display: flex;
10
+ justify-content: center;
11
+ align-items: center;
12
+ padding: 4px;
13
+ border-radius: 4px;
14
+ .radio {
15
+ height: 100%;
16
+ width: auto;
17
+ color: var(--N400);
18
+ display: flex;
19
+ align-items: center;
20
+ }
21
+ .radio+.radio {
22
+ margin-top: 0;
23
+ }
24
+ input[type=checkbox] {
25
+ display: contents;
26
+ overflow: hidden;
27
+ max-width: 0px;
28
+ height: 0;
29
+ opacity: 0;
30
+ margin: unset;
31
+ }
32
+ input+.radio__item-label {
33
+ padding: 4px 6px;
34
+ height: 100%;
35
+ width: 100%;
36
+ display: flex;
37
+ align-items: center;
38
+ transition: all 0.5s;
39
+ cursor: pointer;
40
+ }
41
+ input[type=checkbox]:checked+.radio__item-label {
42
+ background: #2c3354;
43
+ color: white;
44
+ border-radius: 4px;
45
+ }
46
+ }
@@ -0,0 +1,53 @@
1
+ import React, { Component, createContext } from 'react'
2
+ import { RadioGroupItemProps, RadioGroupProps } from './Types'
3
+ const RadioGroupContext = createContext({ name: '', value: '', disabled: false, onChange: (event) => {} })
4
+
5
+ export class RadioGroupItem extends Component<RadioGroupItemProps> {
6
+ render() {
7
+ return (
8
+ <RadioGroupContext.Consumer>
9
+ {(context) => {
10
+ return (
11
+ <>
12
+ <label className={(this.props.disabled || context.disabled) ? 'form__radio-item disabled' : 'form__radio-item'}>
13
+ <input
14
+ type="radio"
15
+ className="form__checkbox"
16
+ name={context.name}
17
+ disabled={context.disabled || this.props.disabled}
18
+ onChange={context.onChange}
19
+ value={this.props.value}
20
+ checked={context.value === this.props.value}
21
+ data-testid={this.props.dataTestId}
22
+ />
23
+ <span className="form__radio-item-content" data-testid={`${this.props.dataTestId}-span`}>
24
+ <span className="radio__button"></span>
25
+ <span className="radio__title">{this.props.children}</span>
26
+ </span>
27
+ </label>
28
+ </>
29
+ )
30
+ }}
31
+ </RadioGroupContext.Consumer>
32
+ )
33
+ }
34
+ }
35
+
36
+ export class RadioGroup extends Component<RadioGroupProps> {
37
+ render() {
38
+ return (
39
+ <div className={`form__radio-group ${this.props.className || ''}`}>
40
+ <RadioGroupContext.Provider
41
+ value={{
42
+ name: this.props.name,
43
+ value: this.props.value,
44
+ disabled: this.props.disabled,
45
+ onChange: this.props.onChange,
46
+ }}
47
+ >
48
+ {this.props.children}
49
+ </RadioGroupContext.Provider>
50
+ </div>
51
+ )
52
+ }
53
+ }
@@ -0,0 +1,23 @@
1
+ import React from 'react'
2
+ import loadingFailure from '../Assets/Img/ic-loading-failure.png'
3
+ import { ReloadType } from './Types'
4
+
5
+ export default function Reload({ reload, className = '' }: ReloadType) {
6
+ function refresh(e) {
7
+ window.location.reload()
8
+ }
9
+ return (
10
+ <article className={`flex w-100 h-100 ${className}`}>
11
+ <div className="flex column w-250 dc__align-center" data-testid="reload">
12
+ <img src={loadingFailure} style={{ height: 'auto' }} className="w-100 mb-12" alt="load-error" />
13
+ <h3 className="title dc__bold">Failed to load</h3>
14
+ <div className="dc__empty__subtitle mb-20">
15
+ We could not load this page. Please give us another try.
16
+ </div>
17
+ <button type="button" className="cta ghosted" onClick={typeof reload === 'function' ? reload : refresh}>
18
+ Retry
19
+ </button>
20
+ </div>
21
+ </article>
22
+ )
23
+ }
@@ -0,0 +1,73 @@
1
+ import React, { useState, useEffect, useRef } from 'react'
2
+ import { useThrottledEffect } from './Helper'
3
+ import { ResizableTextareaProps } from './Types'
4
+
5
+ export const ResizableTextarea: React.FC<ResizableTextareaProps> = ({
6
+ minHeight,
7
+ maxHeight,
8
+ value,
9
+ onChange = null,
10
+ onBlur = null,
11
+ onFocus = null,
12
+ className = '',
13
+ placeholder = 'Enter your text here..',
14
+ lineHeight = 14,
15
+ padding = 12,
16
+ disabled = false,
17
+ dataTestId,
18
+ ...props
19
+ }) => {
20
+ const [text, setText] = useState('')
21
+ const _textRef = useRef(null)
22
+
23
+ useEffect(() => {
24
+ setText(value)
25
+ }, [value])
26
+
27
+ function handleChange(e) {
28
+ e.persist()
29
+ setText(e.target.value)
30
+ if (typeof onChange === 'function') onChange(e)
31
+ }
32
+
33
+ function handleBlur(e) {
34
+ if (typeof onBlur === 'function') onBlur(e)
35
+ }
36
+
37
+ function handleFocus(e) {
38
+ if (typeof onFocus === 'function') onFocus(e)
39
+ }
40
+
41
+ useThrottledEffect(
42
+ () => {
43
+ _textRef.current.style.height = 'auto'
44
+ let nextHeight = _textRef.current.scrollHeight
45
+ if (minHeight && nextHeight < minHeight) {
46
+ nextHeight = minHeight
47
+ }
48
+ if (maxHeight && nextHeight > maxHeight) {
49
+ nextHeight = maxHeight
50
+ }
51
+ _textRef.current.style.height = nextHeight + 2 + 'px'
52
+ },
53
+ 500,
54
+ [text],
55
+ )
56
+
57
+ return (
58
+ <textarea
59
+ data-testid={dataTestId}
60
+ ref={(el) => (_textRef.current = el)}
61
+ value={text}
62
+ placeholder={placeholder}
63
+ className={`dc__resizable-textarea ${className}`}
64
+ onChange={handleChange}
65
+ onBlur={handleBlur}
66
+ onFocus={handleFocus}
67
+ style={{ lineHeight: `${lineHeight}px`, padding: `${padding}px` }}
68
+ spellCheck={false}
69
+ disabled={disabled}
70
+ {...props}
71
+ />
72
+ )
73
+ }
@@ -0,0 +1,131 @@
1
+ import { ChangeEvent, useCallback, useRef, useState, KeyboardEvent, useEffect } from 'react'
2
+ import { ReactComponent as Search } from '../../Assets/Icon/ic-search.svg'
3
+ import { ReactComponent as Clear } from '../../Assets/Icon/ic-error-cross.svg'
4
+ import { SearchBarProps } from './types'
5
+ import './searchBar.scss'
6
+ import { debounce } from '../Helper'
7
+
8
+ /**
9
+ * Generic search input component with support for enter based and debounced search
10
+ * Note: The component is uncontrolled
11
+ *
12
+ * @example Usage with default debounced search
13
+ * ```tsx
14
+ * <SearchBar handleSearchChange={triggerSearchApi} shouldDebounce />
15
+ * ```
16
+ *
17
+ * @example Initial search text
18
+ * ```tsx
19
+ * <SearchBar initialSearchText="Keyword" />
20
+ * ```
21
+ *
22
+ * @example Custom width
23
+ * ```tsx
24
+ * <SearchBar containerClassName="w-300" />
25
+ * ```
26
+ *
27
+ * @example Trigger search on enter key press
28
+ * ```tsx
29
+ * <SearchBar handleEnter={triggerSearchApi} />
30
+ * ```
31
+ *
32
+ * @example Custom timeout for debounced search
33
+ * ```tsx
34
+ * <SearchBar handleSearchChange={triggerSearchApi} shouldDebounce debounceTimeout={500} />
35
+ * ```
36
+ *
37
+ * @example Placeholder for the search
38
+ * ```tsx
39
+ * <SearchBar inputProps={{ placeholder: 'Enter search text' }} />
40
+ * ```
41
+ */
42
+ const SearchBar = ({
43
+ initialSearchText = '',
44
+ handleSearchChange = () => {},
45
+ handleEnter = () => {},
46
+ inputProps = {},
47
+ containerClassName,
48
+ shouldDebounce = false,
49
+ debounceTimeout = 300,
50
+ }: SearchBarProps) => {
51
+ const [showClearButton, setShowClearButton] = useState(!!initialSearchText)
52
+ const inputRef = useRef<HTMLInputElement>()
53
+ const debouncedSearchChange = useCallback(debounce(handleSearchChange, debounceTimeout), [
54
+ handleSearchChange,
55
+ debounceTimeout,
56
+ ])
57
+
58
+ // assuming initialSearchText will change if we are changing history otherwise will be constant and will not change
59
+ // since on changing history we expect to make api call using useAsync so not applying handleEnter
60
+ useEffect(() => {
61
+ inputRef.current.value = initialSearchText
62
+ setShowClearButton(!!initialSearchText)
63
+ }, [initialSearchText])
64
+
65
+ const _applySearch = (value: string) => {
66
+ handleSearchChange(value)
67
+ handleEnter(value)
68
+ }
69
+
70
+ const clearSearch = () => {
71
+ inputRef.current.value = ''
72
+ _applySearch('')
73
+ setShowClearButton(false)
74
+ }
75
+
76
+ const handleChange = (e: ChangeEvent<HTMLInputElement>) => {
77
+ const { value } = e.target
78
+ setShowClearButton(!!value)
79
+
80
+ if (shouldDebounce) {
81
+ debouncedSearchChange(value)
82
+ } else {
83
+ handleSearchChange(value)
84
+ }
85
+ }
86
+
87
+ const handleKeyDown = (e: KeyboardEvent<HTMLInputElement>) => {
88
+ const { key } = e
89
+
90
+ if (key === 'Enter') {
91
+ e.preventDefault()
92
+ const inputTarget = e.target as HTMLInputElement
93
+ const value = inputTarget.value.trim()
94
+ _applySearch(value)
95
+ }
96
+ }
97
+
98
+ return (
99
+ <div className={containerClassName}>
100
+ <div className="search-bar bc-n50 focus-within-border-b5 dc__hover-border-n300 dc__block w-100 min-w-200 dc__position-rel en-2 bw-1 br-4 h-32">
101
+ <Search className="search-bar__icon dc__position-abs icon-color-n6 icon-dim-16" />
102
+ <input
103
+ placeholder="Search"
104
+ data-testid="search-bar"
105
+ type="text"
106
+ {...inputProps}
107
+ defaultValue={initialSearchText}
108
+ className={`search-bar__input bc-n50 dc__position-abs w-100 h-100 br-4 dc__no-border pt-6 pr-10 pb-6 pl-30 fs-13 lh-20 fw-4 cn-9 placeholder-cn5 ${
109
+ showClearButton ? 'pr-30' : 'pr-10'
110
+ }`}
111
+ onChange={handleChange}
112
+ onKeyDown={handleKeyDown}
113
+ ref={inputRef}
114
+ />
115
+ {/* TODO: Sync with product since it should have ic-enter in case of not applied */}
116
+ {showClearButton && (
117
+ <button
118
+ className="flex search-bar__clear-button dc__position-abs dc__transparent mt-0 mb-0 mr-5 ml-5"
119
+ type="button"
120
+ onClick={clearSearch}
121
+ aria-label="Clear search"
122
+ >
123
+ <Clear className="icon-dim-16 icon-n4 dc__vertical-align-middle" />
124
+ </button>
125
+ )}
126
+ </div>
127
+ </div>
128
+ )
129
+ }
130
+
131
+ export default SearchBar
@@ -0,0 +1,2 @@
1
+ export { default as SearchBar } from './SearchBar.component'
2
+ export type { SearchBarProps } from './types'
@@ -0,0 +1,31 @@
1
+ .search-bar {
2
+
3
+ &:focus,
4
+ &:focus-within {
5
+ outline: none;
6
+ border: solid 1px var(--B500) !important;
7
+ }
8
+
9
+ &__input {
10
+
11
+ &:focus,
12
+ &:focus-visible {
13
+ border: none;
14
+ outline: none;
15
+ }
16
+ }
17
+
18
+ &__icon {
19
+ z-index: 1;
20
+ top: 50%;
21
+ left: 8px;
22
+ transform: translateY(-50%);
23
+ }
24
+
25
+ &__clear-button {
26
+ right: 0;
27
+ top: 50%;
28
+ transform: translateY(-50%);
29
+ z-index: 1;
30
+ }
31
+ }
@@ -0,0 +1,34 @@
1
+ export interface SearchBarProps {
2
+ /**
3
+ * Initial search text
4
+ *
5
+ * @default ''
6
+ */
7
+ initialSearchText?: string
8
+ /**
9
+ * Search handler for the search input
10
+ */
11
+ handleSearchChange?: (searchText: string) => void
12
+ /**
13
+ * Enter event handler for the search input
14
+ */
15
+ handleEnter?: (searchText: string) => void
16
+ /**
17
+ * Input props for the search input
18
+ */
19
+ inputProps?: React.InputHTMLAttributes<HTMLInputElement>
20
+ /**
21
+ * Class name for the container; can be used for handling width
22
+ */
23
+ containerClassName?: string
24
+ /**
25
+ * If true, the change handler would be triggered with debounce
26
+ *
27
+ * @default false
28
+ */
29
+ shouldDebounce?: boolean
30
+ /**
31
+ * Timeout for the debounce handler to be triggered
32
+ */
33
+ debounceTimeout?: number
34
+ }
@@ -0,0 +1,55 @@
1
+ import React from 'react'
2
+ import { ScanVulnerabilitiesTableProps, VulnerabilityType } from '../Types'
3
+ import './scanVulnerabilities.css'
4
+
5
+ export default function ScanVulnerabilitiesTable({ vulnerabilities }: ScanVulnerabilitiesTableProps) {
6
+ const renderRow = (vulnerability: VulnerabilityType) => {
7
+ return (
8
+ <tr
9
+ className="dc__security-tab__table-row cursor"
10
+ onClick={(e) => {
11
+ window.open(`https://cve.mitre.org/cgi-bin/cvename.cgi?name=${vulnerability.name}`, '_blank')
12
+ }}
13
+ >
14
+ <td className="security-tab__cell-cve dc__cve-cell">
15
+ <a
16
+ href={`https://cve.mitre.org/cgi-bin/cvename.cgi?name=${vulnerability.name}`}
17
+ rel="noopener noreferrer"
18
+ target="_blank"
19
+ >
20
+ {vulnerability.name}
21
+ </a>
22
+ </td>
23
+ <td className="security-tab__cell-severity">
24
+ <span className={`fill-${vulnerability.severity?.toLowerCase()}`}>{vulnerability.severity}</span>
25
+ </td>
26
+ <td className="security-tab__cell-package">{vulnerability.package}</td>
27
+ <td className="security-tab__cell-current-ver">{vulnerability.version}</td>
28
+ <td className="security-tab__cell-fixed-ver">{vulnerability.fixedVersion}</td>
29
+ <td
30
+ className={`security-tab__cell-policy security-tab__cell-policy--${vulnerability.policy?.toLowerCase()}`}
31
+ >
32
+ {vulnerability.policy?.toLowerCase()}
33
+ </td>
34
+ </tr>
35
+ )
36
+ }
37
+
38
+ return (
39
+ <table className="security-tab__table">
40
+ <tbody>
41
+ <tr className="security-tab__table-header">
42
+ <th className="security-cell-header security-tab__cell-cve">CVE</th>
43
+ <th className="security-cell-header security-tab__cell-severity">Severity</th>
44
+ <th className="security-cell-header security-tab__cell-package">Package</th>
45
+ <th className="security-cell-header security-tab__cell-current-ver">Current Version</th>
46
+ <th className="security-cell-header security-tab__cell-fixed-ver">Fixed In Version</th>
47
+ <th className="security-cell-header security-tab__cell-policy">Policy</th>
48
+ </tr>
49
+ {vulnerabilities.map((vulnerability) => {
50
+ return renderRow(vulnerability)
51
+ })}
52
+ </tbody>
53
+ </table>
54
+ )
55
+ }
@@ -0,0 +1,69 @@
1
+ .modal-body--scan-details {
2
+ position: fixed;
3
+ top: 0;
4
+ right: 0;
5
+ background: var(--N000);
6
+ width: 800px;
7
+ }
8
+
9
+ .security-tab__table {
10
+ width: 100%;
11
+ }
12
+
13
+ .security-tab__table-header {
14
+ border-bottom: solid 1px var(--N200);
15
+ }
16
+
17
+ .security-cell-header {
18
+ font-size: 12px;
19
+ font-weight: 600;
20
+ line-height: 1.5;
21
+ letter-spacing: normal;
22
+ text-transform: uppercase;
23
+ color: var(--N500);
24
+ }
25
+
26
+ .dc__security-tab__table-row {
27
+ font-size: 13px;
28
+ font-weight: normal;
29
+ line-height: 1.54;
30
+ letter-spacing: normal;
31
+ color: var(--N900);
32
+ box-shadow: inset 0 -1px 0 0 #f5f5f5;
33
+ }
34
+
35
+ .security-tab__cell-cve,
36
+ .security-tab__cell-severity,
37
+ .security-tab__cell-package,
38
+ .security-tab__cell-current-ver,
39
+ .security-tab__cell-fixed-ver,
40
+ .security-tab__cell-policy {
41
+ padding: 10px;
42
+ max-width: 120px;
43
+ word-wrap: break-word;
44
+ }
45
+
46
+ .security-tab__cell-cve {
47
+ padding-left: 0px;
48
+ text-align: left;
49
+ width: 20%;
50
+ }
51
+
52
+ .security-tab__cell-policy {
53
+ padding-right: 0px;
54
+ }
55
+
56
+ .security-tab__cell-policy--whitelist,
57
+ .security-tab__cell-policy--whitelisted {
58
+ color: var(--G500);
59
+ text-transform: capitalize;
60
+ }
61
+
62
+ .security-tab__cell-policy--block {
63
+ color: var(--R500);
64
+ text-transform: capitalize;
65
+ }
66
+
67
+ .scanned-object__results {
68
+ margin: 0 20px;
69
+ }
@@ -0,0 +1,31 @@
1
+ export class ServerError {
2
+ code: number
3
+ internalMessage: string | null
4
+ userMessage: string | null
5
+ moreInfo?: string | null
6
+
7
+ constructor(error) {
8
+ this.code = error.code || 0
9
+ this.userMessage = error.userMessage || ''
10
+ this.internalMessage = error.internalMessage || ''
11
+ this.moreInfo = error.moreInfo || ''
12
+ }
13
+ }
14
+
15
+ export class ServerErrors extends Error {
16
+ code: number
17
+ errors: ServerError[]
18
+
19
+ constructor(obj: { code: number; errors: ServerError[] }) {
20
+ super()
21
+ this.code = obj.code
22
+ let message = obj.errors.reduce((str: string, err: ServerError) => {
23
+ str += `${err.internalMessage || err.userMessage}`
24
+ return str
25
+ }, '')
26
+ this.name = `[${obj.code.toString()}]`
27
+ this.message = message
28
+ this.errors = obj.errors.map((err) => new ServerError(err))
29
+ Object.setPrototypeOf(this, ServerErrors.prototype)
30
+ }
31
+ }