@devtron-labs/devtron-fe-common-lib 0.0.50-beta-2 → 0.0.51

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 (447) 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 +66 -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/Drawer/Drawer.d.ts +16 -14
  51. package/dist/Common/EmptyState/EmptyState.d.ts +25 -24
  52. package/dist/Common/EmptyState/GenericEmptyState.d.ts +5 -4
  53. package/dist/Common/Error.d.ts +17 -17
  54. package/dist/Common/ErrorScreenNotFound.d.ts +3 -3
  55. package/dist/Common/Grid/Grid.d.ts +3 -3
  56. package/dist/Common/Grid/types.d.ts +10 -10
  57. package/dist/Common/Helper.d.ts +60 -57
  58. package/dist/Common/Hooks/UseClickOutside/UseClickOutside.d.ts +1 -1
  59. package/dist/Common/Hooks/UseSuperAdmin/UseSuperAdmin.d.ts +6 -6
  60. package/dist/Common/Hooks/UseSuperAdmin/types.d.ts +3 -3
  61. package/dist/Common/Hooks/index.d.ts +2 -2
  62. package/dist/Common/ImageTags.Types.d.ts +40 -40
  63. package/dist/Common/ImageTags.d.ts +4 -3
  64. package/dist/Common/InfoColorBar/InfoColourbar.d.ts +5 -4
  65. package/dist/Common/Modals/Modal.d.ts +3 -3
  66. package/dist/Common/Modals/OpaqueModal.d.ts +12 -12
  67. package/dist/Common/Modals/VisibleModal.d.ts +15 -15
  68. package/dist/Common/Modals/VisibleModal2.d.ts +12 -12
  69. package/dist/Common/MultiSelectCustomization.d.ts +37 -37
  70. package/dist/Common/Policy.Types.d.ts +56 -56
  71. package/dist/Common/PopupMenu.d.ts +8 -8
  72. package/dist/Common/Progressing.d.ts +4 -4
  73. package/dist/Common/RJSF/Form.d.ts +4 -0
  74. package/dist/Common/RJSF/common/FieldRow.d.ts +6 -0
  75. package/dist/Common/RJSF/common/types.d.ts +8 -0
  76. package/dist/Common/RJSF/config.d.ts +4 -0
  77. package/dist/Common/RJSF/constants.d.ts +7 -0
  78. package/dist/Common/RJSF/index.d.ts +3 -0
  79. package/dist/Common/RJSF/templates/ArrayFieldItemTemplate.d.ts +3 -0
  80. package/dist/Common/RJSF/templates/ArrayFieldTemplate.d.ts +3 -0
  81. package/dist/Common/RJSF/templates/BaseInput.d.ts +3 -0
  82. package/dist/Common/RJSF/templates/ButtonTemplates/AddButton.d.ts +3 -0
  83. package/dist/Common/RJSF/templates/ButtonTemplates/RemoveButton.d.ts +3 -0
  84. package/dist/Common/RJSF/templates/ButtonTemplates/SubmitButton.d.ts +3 -0
  85. package/dist/Common/RJSF/templates/ButtonTemplates/index.d.ts +3 -0
  86. package/dist/Common/RJSF/templates/Description.d.ts +3 -0
  87. package/dist/Common/RJSF/templates/Field.d.ts +3 -0
  88. package/dist/Common/RJSF/templates/FieldErrorTemplate.d.ts +3 -0
  89. package/dist/Common/RJSF/templates/ObjectFieldTemplate.d.ts +3 -0
  90. package/dist/Common/RJSF/templates/TitleField.d.ts +3 -0
  91. package/dist/Common/RJSF/templates/WrapIfAdditionalTemplate.d.ts +3 -0
  92. package/dist/Common/RJSF/templates/index.d.ts +10 -0
  93. package/dist/Common/RJSF/types.d.ts +3 -0
  94. package/dist/Common/RJSF/utils.d.ts +26 -0
  95. package/dist/Common/RJSF/widgets/Checkbox.d.ts +3 -0
  96. package/dist/Common/RJSF/widgets/Select.d.ts +3 -0
  97. package/dist/Common/RJSF/widgets/index.d.ts +2 -0
  98. package/dist/Common/RadioGroup/RadioGroup.d.ts +17 -16
  99. package/dist/Common/RadioGroup.d.ts +8 -8
  100. package/dist/Common/Reload.d.ts +3 -3
  101. package/dist/Common/ResizableTextarea.d.ts +3 -3
  102. package/dist/Common/Security/ScanVulnerabilitiesTable.d.ts +4 -3
  103. package/dist/Common/ServerError.d.ts +15 -15
  104. package/dist/Common/TippyCustomized.d.ts +4 -3
  105. package/dist/Common/ToastBody.d.ts +23 -23
  106. package/dist/Common/Toggle/Toggle.d.ts +14 -12
  107. package/dist/Common/Types.d.ts +677 -566
  108. package/dist/Common/index.d.ts +47 -44
  109. package/dist/index.d.ts +1 -1
  110. package/dist/index.js +28498 -184
  111. package/package.json +26 -45
  112. package/rollup.config.js +31 -0
  113. package/src/Assets/Icon/ic-add.svg +3 -0
  114. package/src/Assets/Icon/ic-appstatus-cancelled.svg +6 -0
  115. package/src/Assets/Icon/ic-arrow-counter-clockwise.svg +5 -0
  116. package/src/Assets/Icon/ic-check.svg +5 -0
  117. package/src/Assets/Icon/ic-chevron-down.svg +5 -0
  118. package/src/Assets/Icon/ic-copy.svg +3 -0
  119. package/src/Assets/Icon/ic-cross.svg +3 -0
  120. package/src/Assets/Icon/ic-enter.svg +3 -0
  121. package/src/Assets/Icon/ic-error-cross.svg +8 -0
  122. package/src/Assets/Icon/ic-error-exclamation.svg +6 -0
  123. package/src/Assets/Icon/ic-error-medium.svg +6 -0
  124. package/src/Assets/Icon/ic-help-outline.svg +3 -0
  125. package/src/Assets/Icon/ic-help.svg +3 -0
  126. package/src/Assets/Icon/ic-info-filled.svg +7 -0
  127. package/src/Assets/Icon/ic-info-outlined.svg +13 -0
  128. package/src/Assets/Icon/ic-minus.svg +3 -0
  129. package/src/Assets/Icon/ic-pencil.svg +3 -0
  130. package/src/Assets/Icon/ic-progressing.svg +6 -0
  131. package/src/Assets/Icon/ic-rotate-devtron.svg +103 -0
  132. package/src/Assets/Icon/ic-warning.svg +7 -0
  133. package/src/Assets/Icon/inject-tag.svg +5 -0
  134. package/src/Assets/Img/app-not-deployed.png +0 -0
  135. package/src/Assets/Img/delete-medium.svg +15 -0
  136. package/src/Assets/Img/ic-empty-error@2x.png +0 -0
  137. package/src/Assets/Img/ic-loading-failure.png +0 -0
  138. package/src/Assets/Img/ic-not-authorized.svg +62 -0
  139. package/src/Common/AddCDButton/AddCDButton.tsx +68 -0
  140. package/src/Common/AddCDButton/index.ts +2 -0
  141. package/src/Common/AddCDButton/types.ts +38 -0
  142. package/src/Common/AddCDButton/utils.tsx +35 -0
  143. package/src/Common/Api.ts +230 -0
  144. package/src/Common/AppStatus/AppStatus.tsx +64 -0
  145. package/src/Common/AppStatus/constants.ts +53 -0
  146. package/src/Common/AppStatus/index.ts +1 -0
  147. package/src/Common/AppStatus/types.ts +12 -0
  148. package/src/Common/AppStatus/utils.ts +14 -0
  149. package/src/Common/BreadCrumb/BreadCrumb.tsx +105 -0
  150. package/src/Common/BreadCrumb/BreadcrumbStore.tsx +25 -0
  151. package/src/Common/BreadCrumb/Types.ts +30 -0
  152. package/src/Common/CIPipeline.Types.ts +277 -0
  153. package/src/Common/ChartVersionAndTypeSelector.tsx +78 -0
  154. package/src/Common/Checkbox.tsx +36 -0
  155. package/src/Common/ClipboardButton/ClipboardButton.tsx +61 -0
  156. package/src/Common/ClipboardButton/__tests__/ClipboardButton.test.tsx +43 -0
  157. package/src/Common/ClipboardButton/types.ts +7 -0
  158. package/src/Common/Common.service.ts +315 -0
  159. package/src/Common/Constants.ts +243 -0
  160. package/src/Common/CustomInput/CustomInput.tsx +131 -0
  161. package/src/Common/CustomInput/Types.ts +30 -0
  162. package/src/Common/CustomInput/index.ts +2 -0
  163. package/src/Common/CustomTagSelector/PropagateTagInfo.tsx +46 -0
  164. package/src/Common/CustomTagSelector/ResizableTagTextArea.tsx +84 -0
  165. package/src/Common/CustomTagSelector/TagDetails.tsx +76 -0
  166. package/src/Common/CustomTagSelector/TagLabelSelect.tsx +61 -0
  167. package/src/Common/CustomTagSelector/TagLabelValueSelector.tsx +198 -0
  168. package/src/Common/CustomTagSelector/TagSelector.utils.ts +71 -0
  169. package/src/Common/CustomTagSelector/Types.ts +72 -0
  170. package/src/Common/CustomTagSelector/ValidationRules.ts +58 -0
  171. package/src/Common/CustomTagSelector/index.ts +6 -0
  172. package/src/Common/DebouncedSearch/DebouncedSearch.tsx +76 -0
  173. package/src/Common/DebouncedSearch/Types.ts +13 -0
  174. package/src/Common/DebouncedSearch/Utils.ts +19 -0
  175. package/src/Common/DebouncedSearch/__tests__/DebouncedSearch.test.tsx +61 -0
  176. package/src/Common/DeleteComponentModal/DeleteComponent.tsx +95 -0
  177. package/src/Common/DeleteComponentModal/types.ts +15 -0
  178. package/src/Common/DevtronProgressing/DevtronProgressing.tsx +11 -0
  179. package/src/Common/DevtronProgressing/index.ts +1 -0
  180. package/src/Common/DevtronProgressing/types.ts +4 -0
  181. package/src/Common/Dialogs/ConfirmationDialog.tsx +34 -0
  182. package/src/Common/Dialogs/DeleteDialog.tsx +69 -0
  183. package/src/Common/Dialogs/DialogForm.tsx +86 -0
  184. package/src/Common/Dialogs/ForceDeleteDialog.tsx +19 -0
  185. package/src/Common/Dialogs/Types.ts +47 -0
  186. package/src/Common/Dialogs/index.ts +4 -0
  187. package/src/Common/Drawer/Drawer.scss +40 -0
  188. package/src/Common/Drawer/Drawer.tsx +49 -0
  189. package/src/Common/EmptyState/EmptyState.tsx +42 -0
  190. package/src/Common/EmptyState/GenericEmptyState.tsx +49 -0
  191. package/src/Common/EmptyState/emptyState.scss +74 -0
  192. package/src/Common/Error.tsx +61 -0
  193. package/src/Common/ErrorScreenNotFound.tsx +31 -0
  194. package/src/Common/Grid/Grid.tsx +39 -0
  195. package/src/Common/Grid/types.ts +9 -0
  196. package/src/Common/Helper.tsx +561 -0
  197. package/src/Common/Hooks/UseClickOutside/UseClickOutside.tsx +15 -0
  198. package/src/Common/Hooks/UseSuperAdmin/UseSuperAdmin.tsx +24 -0
  199. package/src/Common/Hooks/UseSuperAdmin/types.ts +3 -0
  200. package/src/Common/Hooks/index.ts +2 -0
  201. package/src/Common/ImageTags.Types.ts +44 -0
  202. package/src/Common/ImageTags.tsx +586 -0
  203. package/src/Common/InfoColorBar/InfoColourbar.tsx +80 -0
  204. package/src/Common/InfoColorBar/infoColourBar.scss +28 -0
  205. package/src/Common/Modals/Modal.tsx +68 -0
  206. package/src/Common/Modals/OpaqueModal.tsx +36 -0
  207. package/src/Common/Modals/VisibleModal.tsx +55 -0
  208. package/src/Common/Modals/VisibleModal2.tsx +35 -0
  209. package/src/Common/MultiSelectCustomization.tsx +148 -0
  210. package/src/Common/Policy.Types.ts +63 -0
  211. package/src/Common/PopupMenu.tsx +199 -0
  212. package/src/Common/Progressing.tsx +53 -0
  213. package/src/Common/RJSF/Form.tsx +29 -0
  214. package/src/Common/RJSF/common/FieldRow.tsx +35 -0
  215. package/src/Common/RJSF/common/types.ts +9 -0
  216. package/src/Common/RJSF/config.ts +37 -0
  217. package/src/Common/RJSF/constants.ts +10 -0
  218. package/src/Common/RJSF/index.ts +3 -0
  219. package/src/Common/RJSF/rjsfForm.scss +18 -0
  220. package/src/Common/RJSF/templates/ArrayFieldItemTemplate.tsx +31 -0
  221. package/src/Common/RJSF/templates/ArrayFieldTemplate.tsx +78 -0
  222. package/src/Common/RJSF/templates/BaseInput.tsx +16 -0
  223. package/src/Common/RJSF/templates/ButtonTemplates/AddButton.tsx +18 -0
  224. package/src/Common/RJSF/templates/ButtonTemplates/RemoveButton.tsx +10 -0
  225. package/src/Common/RJSF/templates/ButtonTemplates/SubmitButton.tsx +18 -0
  226. package/src/Common/RJSF/templates/ButtonTemplates/index.ts +3 -0
  227. package/src/Common/RJSF/templates/Description.tsx +12 -0
  228. package/src/Common/RJSF/templates/Field.tsx +30 -0
  229. package/src/Common/RJSF/templates/FieldErrorTemplate.tsx +25 -0
  230. package/src/Common/RJSF/templates/ObjectFieldTemplate.tsx +105 -0
  231. package/src/Common/RJSF/templates/TitleField.tsx +9 -0
  232. package/src/Common/RJSF/templates/WrapIfAdditionalTemplate.tsx +51 -0
  233. package/src/Common/RJSF/templates/index.ts +10 -0
  234. package/src/Common/RJSF/types.ts +4 -0
  235. package/src/Common/RJSF/utils.ts +123 -0
  236. package/src/Common/RJSF/widgets/Checkbox.tsx +44 -0
  237. package/src/Common/RJSF/widgets/Select.tsx +77 -0
  238. package/src/Common/RJSF/widgets/index.ts +2 -0
  239. package/src/Common/RadioGroup/RadioGroup.tsx +105 -0
  240. package/src/Common/RadioGroup/radioGroup.scss +46 -0
  241. package/src/Common/RadioGroup.tsx +53 -0
  242. package/src/Common/Reload.tsx +23 -0
  243. package/src/Common/ResizableTextarea.tsx +73 -0
  244. package/src/Common/Security/ScanVulnerabilitiesTable.tsx +55 -0
  245. package/src/Common/Security/scanVulnerabilities.css +69 -0
  246. package/src/Common/ServerError.ts +31 -0
  247. package/src/Common/TippyCustomized.tsx +172 -0
  248. package/src/Common/ToastBody.tsx +62 -0
  249. package/src/Common/Toggle/Toggle.scss +78 -0
  250. package/src/Common/Toggle/Toggle.tsx +50 -0
  251. package/src/Common/Types.ts +750 -0
  252. package/src/Common/index.ts +47 -0
  253. package/src/custom.d.ts +13 -0
  254. package/src/index.ts +1 -0
  255. package/tsconfig.json +40 -0
  256. package/dist/CodeEditor-d59fc867.js +0 -103675
  257. package/dist/Common/Api.js +0 -167
  258. package/dist/Common/AppStatus/AppStatus.js +0 -37
  259. package/dist/Common/AppStatus/constants.js +0 -37
  260. package/dist/Common/AppStatus/index.js +0 -4
  261. package/dist/Common/AppStatus/types.js +0 -1
  262. package/dist/Common/AppStatus/utils.js +0 -8
  263. package/dist/Common/BreadCrumb/BreadCrumb.js +0 -71
  264. package/dist/Common/BreadCrumb/BreadcrumbStore.js +0 -22
  265. package/dist/Common/BreadCrumb/Types.js +0 -1
  266. package/dist/Common/CIPipeline.Types.js +0 -10
  267. package/dist/Common/Checkbox.js +0 -28
  268. package/dist/Common/ClipboardButton/ClipboardButton.js +0 -40
  269. package/dist/Common/ClipboardButton/__tests__/ClipboardButton.test.d.ts +0 -1
  270. package/dist/Common/ClipboardButton/__tests__/ClipboardButton.test.js +0 -27
  271. package/dist/Common/ClipboardButton/types.js +0 -1
  272. package/dist/Common/CodeEditor/CodeEditor.d.ts +0 -47
  273. package/dist/Common/CodeEditor/CodeEditor.js +0 -14
  274. package/dist/Common/Common.service.js +0 -187
  275. package/dist/Common/Constants.js +0 -231
  276. package/dist/Common/CustomTagSelector/PropagateTagInfo.js +0 -43
  277. package/dist/Common/CustomTagSelector/ResizableTagTextArea.js +0 -58
  278. package/dist/Common/CustomTagSelector/TagDetails.js +0 -65
  279. package/dist/Common/CustomTagSelector/TagLabelSelect.js +0 -50
  280. package/dist/Common/CustomTagSelector/TagLabelValueSelector.js +0 -121
  281. package/dist/Common/CustomTagSelector/TagSelector.utils.js +0 -61
  282. package/dist/Common/CustomTagSelector/Types.js +0 -1
  283. package/dist/Common/CustomTagSelector/ValidationRules.js +0 -35
  284. package/dist/Common/CustomTagSelector/index.js +0 -12
  285. package/dist/Common/DebouncedSearch/DebouncedSearch.js +0 -7
  286. package/dist/Common/DebouncedSearch/Types.js +0 -1
  287. package/dist/Common/DebouncedSearch/Utils.js +0 -19
  288. package/dist/Common/DebouncedSearch/__tests__/DebouncedSearch.test.d.ts +0 -1
  289. package/dist/Common/DebouncedSearch/__tests__/DebouncedSearch.test.js +0 -33
  290. package/dist/Common/DeleteComponentModal/DeleteComponent.js +0 -63
  291. package/dist/Common/DeleteComponentModal/types.js +0 -1
  292. package/dist/Common/Dialogs/ConfirmationDialog.js +0 -24
  293. package/dist/Common/Dialogs/DeleteDialog.js +0 -49
  294. package/dist/Common/Dialogs/DialogForm.js +0 -63
  295. package/dist/Common/Dialogs/ForceDeleteDialog.js +0 -23
  296. package/dist/Common/Dialogs/Types.js +0 -1
  297. package/dist/Common/Dialogs/index.js +0 -11
  298. package/dist/Common/Drawer/Drawer.js +0 -22
  299. package/dist/Common/EmptyState/EmptyState.js +0 -32
  300. package/dist/Common/EmptyState/GenericEmptyState.js +0 -52
  301. package/dist/Common/Error.js +0 -49
  302. package/dist/Common/ErrorScreenNotFound.js +0 -23
  303. package/dist/Common/Grid/Grid.js +0 -22
  304. package/dist/Common/Grid/types.js +0 -1
  305. package/dist/Common/Helper.js +0 -33
  306. package/dist/Common/Hooks/UseClickOutside/UseClickOutside.js +0 -14
  307. package/dist/Common/Hooks/UseSuperAdmin/UseSuperAdmin.js +0 -16
  308. package/dist/Common/Hooks/UseSuperAdmin/types.js +0 -1
  309. package/dist/Common/Hooks/index.js +0 -6
  310. package/dist/Common/ImageTags.Types.js +0 -1
  311. package/dist/Common/ImageTags.js +0 -380
  312. package/dist/Common/InfoColorBar/InfoColourbar.js +0 -65
  313. package/dist/Common/Modals/Modal.js +0 -48
  314. package/dist/Common/Modals/OpaqueModal.js +0 -32
  315. package/dist/Common/Modals/VisibleModal.js +0 -31
  316. package/dist/Common/Modals/VisibleModal2.js +0 -31
  317. package/dist/Common/MultiSelectCustomization.js +0 -4250
  318. package/dist/Common/Policy.Types.js +0 -6
  319. package/dist/Common/PopupMenu.js +0 -148
  320. package/dist/Common/Progressing.js +0 -52
  321. package/dist/Common/RadioGroup/RadioGroup.js +0 -76
  322. package/dist/Common/RadioGroup.js +0 -47
  323. package/dist/Common/Reload.js +0 -16
  324. package/dist/Common/ResizableTextarea.js +0 -60
  325. package/dist/Common/Security/ScanVulnerabilitiesTable.js +0 -49
  326. package/dist/Common/Select/Select.d.ts +0 -4
  327. package/dist/Common/Select/Select.js +0 -131
  328. package/dist/Common/Select/types.d.ts +0 -29
  329. package/dist/Common/Select/types.js +0 -1
  330. package/dist/Common/ServerError.js +0 -26
  331. package/dist/Common/TippyCustomized.js +0 -10
  332. package/dist/Common/ToastBody.js +0 -41
  333. package/dist/Common/Toggle/Toggle.js +0 -40
  334. package/dist/Common/Types.js +0 -20
  335. package/dist/Common/UseWindowSize.d.ts +0 -4
  336. package/dist/Common/UseWindowSize.js +0 -20
  337. package/dist/Common/index.js +0 -185
  338. package/dist/DebouncedSearch-065f3ac2.js +0 -58
  339. package/dist/Helper-4dc38bc2.js +0 -8882
  340. package/dist/TippyCustomized-549ebfaf.js +0 -124
  341. package/dist/abap-9f67f57a.js +0 -1314
  342. package/dist/apex-ff62e532.js +0 -315
  343. package/dist/assets/CodeEditor.css +0 -1
  344. package/dist/assets/Drawer.css +0 -1
  345. package/dist/assets/InfoColourbar.css +0 -1
  346. package/dist/assets/RadioGroup.css +0 -1
  347. package/dist/assets/ScanVulnerabilitiesTable.css +0 -1
  348. package/dist/assets/Select.css +0 -1
  349. package/dist/assets/TippyCustomized.css +0 -1
  350. package/dist/assets/Toggle.css +0 -1
  351. package/dist/assets/editor.worker-d26000ef.js +0 -9
  352. package/dist/assets/emptyState.css +0 -1
  353. package/dist/assets/json.worker-f23a4654.js +0 -40
  354. package/dist/assets/yaml.worker-64fecd27.js +0 -463
  355. package/dist/azcli-31e64a7f.js +0 -74
  356. package/dist/bat-0ffe897e.js +0 -95
  357. package/dist/bicep-3414a2b1.js +0 -108
  358. package/dist/cameligo-df1f3f25.js +0 -168
  359. package/dist/clojure-65b0f010.js +0 -754
  360. package/dist/coffee-437f0fba.js +0 -228
  361. package/dist/cpp-66843dd5.js +0 -390
  362. package/dist/csharp-621d9a49.js +0 -320
  363. package/dist/csp-de0d5244.js +0 -57
  364. package/dist/css-7cd5ed4c.js +0 -186
  365. package/dist/cssMode-518d7b58.js +0 -1446
  366. package/dist/cypher-70ad96fe.js +0 -262
  367. package/dist/dart-33ae3739.js +0 -270
  368. package/dist/dockerfile-f2274a50.js +0 -132
  369. package/dist/ecl-3b8294a3.js +0 -454
  370. package/dist/elixir-b9dcc73a.js +0 -489
  371. package/dist/extends-70f3d2a3.js +0 -13
  372. package/dist/flow9-bdde8316.js +0 -141
  373. package/dist/freemarker2-ec19a832.js +0 -643
  374. package/dist/fsharp-eac2e449.js +0 -210
  375. package/dist/go-d12ed8d4.js +0 -208
  376. package/dist/graphql-c7356b69.js +0 -141
  377. package/dist/handlebars-06e29571.js +0 -391
  378. package/dist/hcl-e883a0d4.js +0 -177
  379. package/dist/html-10fc18eb.js +0 -281
  380. package/dist/htmlMode-5f032666.js +0 -1456
  381. package/dist/ic-add-4787ded5.js +0 -5
  382. package/dist/ic-copy-118b83dc.js +0 -5
  383. package/dist/ic-cross-0e71861d.js +0 -6
  384. package/dist/ic-error-exclamation-5f9af461.js +0 -5
  385. package/dist/ic-info-filled-31a15add.js +0 -6
  386. package/dist/ic-info-outlined-8fa45e87.js +0 -5
  387. package/dist/index-ad700600.js +0 -17444
  388. package/dist/ini-425ab711.js +0 -68
  389. package/dist/inject-tag-824bf92c.js +0 -5
  390. package/dist/java-2bc0fd68.js +0 -221
  391. package/dist/javascript-2e90f5e7.js +0 -75
  392. package/dist/jsonMode-36a94a3e.js +0 -1867
  393. package/dist/julia-1c932615.js +0 -496
  394. package/dist/kotlin-1ab839c8.js +0 -245
  395. package/dist/less-6fe856f5.js +0 -168
  396. package/dist/lexon-4955ac52.js +0 -151
  397. package/dist/liquid-57b08f3e.js +0 -238
  398. package/dist/lua-3cca0047.js +0 -157
  399. package/dist/m3-132e9cb6.js +0 -210
  400. package/dist/markdown-ea59a0c1.js +0 -202
  401. package/dist/mips-19811f4b.js +0 -194
  402. package/dist/msdax-69954a10.js +0 -377
  403. package/dist/mysql-82088e5d.js +0 -876
  404. package/dist/objective-c-1976eccc.js +0 -188
  405. package/dist/pascal-8ef177cb.js +0 -245
  406. package/dist/pascaligo-bc517b9e.js +0 -158
  407. package/dist/perl-8b93582c.js +0 -599
  408. package/dist/pgsql-00c11a6d.js +0 -847
  409. package/dist/php-4c8c276f.js +0 -471
  410. package/dist/pla-e9b4ffb1.js +0 -131
  411. package/dist/postiats-2071af8c.js +0 -544
  412. package/dist/powerquery-8e388ceb.js +0 -890
  413. package/dist/powershell-e35db398.js +0 -233
  414. package/dist/protobuf-a24b9176.js +0 -422
  415. package/dist/pug-2c94d9b8.js +0 -393
  416. package/dist/python-761b1908.js +0 -259
  417. package/dist/qsharp-d730d7fe.js +0 -282
  418. package/dist/r-be193556.js +0 -245
  419. package/dist/razor-9cd536c2.js +0 -512
  420. package/dist/react-toastify.esm-9a31d2e1.js +0 -792
  421. package/dist/react.esm-a0625832.js +0 -13149
  422. package/dist/redis-9690c6ac.js +0 -298
  423. package/dist/redshift-6bdcdeaa.js +0 -806
  424. package/dist/restructuredtext-a08c1d20.js +0 -162
  425. package/dist/ruby-2247692b.js +0 -444
  426. package/dist/rust-1dffb4d5.js +0 -337
  427. package/dist/sb-136598e9.js +0 -110
  428. package/dist/scala-b1100fed.js +0 -353
  429. package/dist/scheme-038c8094.js +0 -114
  430. package/dist/scss-700d1b52.js +0 -244
  431. package/dist/shell-86c16e0f.js +0 -224
  432. package/dist/solidity-c05fdf3c.js +0 -1351
  433. package/dist/sophia-cd645d71.js +0 -190
  434. package/dist/sparql-01d9ec9c.js +0 -193
  435. package/dist/sql-4c33df41.js +0 -818
  436. package/dist/st-52cf1408.js +0 -414
  437. package/dist/swift-13c792ba.js +0 -315
  438. package/dist/systemverilog-0bd8b730.js +0 -556
  439. package/dist/tcl-463d7c75.js +0 -232
  440. package/dist/tippy-react.esm-3be2e905.js +0 -2018
  441. package/dist/tsMode-d9dd8508.js +0 -811
  442. package/dist/twig-0d98f5ec.js +0 -323
  443. package/dist/typescript-08c1d7b6.js +0 -328
  444. package/dist/vb-3a2b0a51.js +0 -364
  445. package/dist/wgsl-b2ddb3e4.js +0 -420
  446. package/dist/xml-69527c9c.js +0 -95
  447. package/dist/yaml-eb80879d.js +0 -184
@@ -0,0 +1,68 @@
1
+ import React, { useEffect } from 'react'
2
+ import ReactDOM from 'react-dom'
3
+ import { ModalType } from '../Types'
4
+
5
+ export const Modal = ({
6
+ style = {},
7
+ children,
8
+ modal = false,
9
+ rootClassName = '',
10
+ onClick = null,
11
+ callbackRef = null,
12
+ preventWheelDisable = false,
13
+ noBackDrop,
14
+ }: ModalType) => {
15
+ const innerRef = React.useRef(null)
16
+ function handleClick(e) {
17
+ if (typeof onClick !== 'function') return
18
+ if (innerRef && innerRef.current?.contains(e.target)) {
19
+ onClick(e, 'in')
20
+ } else {
21
+ onClick(e, 'out')
22
+ }
23
+ }
24
+
25
+ function disableWheel(e) {
26
+ if (!preventWheelDisable) {
27
+ if (innerRef?.current.contains(e.target)) {
28
+ if (innerRef.current.clientHeight === innerRef.current.scrollHeight) {
29
+ e.preventDefault()
30
+ }
31
+ } else {
32
+ e.preventDefault()
33
+ }
34
+ }
35
+ }
36
+ useEffect(() => {
37
+ document.addEventListener('click', handleClick)
38
+ let modal = document.getElementById('visible-modal')
39
+ if (modal) modal.classList.add('show')
40
+ if (noBackDrop) modal.classList.add('no-back-drop')
41
+ if (!preventWheelDisable) document.body.addEventListener('wheel', disableWheel, { passive: false })
42
+ return () => {
43
+ if (!preventWheelDisable) document.body.removeEventListener('wheel', disableWheel)
44
+ document.removeEventListener('click', handleClick)
45
+ if (modal) modal.classList.remove('show')
46
+ if (noBackDrop) modal.classList.remove('no-back-drop')
47
+ }
48
+ }, [])
49
+ return ReactDOM.createPortal(
50
+ <div
51
+ tabIndex={0}
52
+ onClick={onClick}
53
+ data-testid="common-modal"
54
+ ref={(el) => {
55
+ if (typeof callbackRef === 'function') {
56
+ callbackRef(el)
57
+ }
58
+ innerRef.current = el
59
+ }}
60
+ id="popup"
61
+ className={`${rootClassName} popup ${modal ? 'modal' : ''}`}
62
+ style={{ ...style }}
63
+ >
64
+ {children}
65
+ </div>,
66
+ document.getElementById('visible-modal'),
67
+ )
68
+ }
@@ -0,0 +1,36 @@
1
+ import React from 'react'
2
+ import ReactDOM from 'react-dom';
3
+ import closeIcon from '../../Assets/Icon/ic-cross.svg'
4
+
5
+ export interface OpaqueModalProps {
6
+ className?: string;
7
+ onHide?: any;
8
+ noBackground?: boolean;
9
+ }
10
+
11
+ export class OpaqueModal extends React.Component<OpaqueModalProps> {
12
+ modalRef = document.getElementById('full-screen-modal');
13
+
14
+ componentDidMount() {
15
+ if (this.props.noBackground)
16
+ this.modalRef.classList.add("show");
17
+ else this.modalRef.classList.add("show-with-bg");
18
+ }
19
+
20
+ componentWillUnmount() {
21
+ this.modalRef.classList.remove("show");
22
+ this.modalRef.classList.remove("show-with-bg");
23
+ }
24
+
25
+ render() {
26
+ const { className = "", onHide = null } = { ...this.props };
27
+
28
+ return ReactDOM.createPortal(
29
+ <div className={`full-screen-modal__body-container ${className}`}>
30
+ {this.props.children}
31
+ {typeof onHide === 'function' && <div className="close-btn icon-dim-24" onClick={e => onHide(false)} data-testid="opaque-modal-close">
32
+ <img className="close-img" src={closeIcon} alt="close" />
33
+ </div>}
34
+ </div>, document.getElementById('full-screen-modal'))
35
+ }
36
+ }
@@ -0,0 +1,55 @@
1
+ import React from 'react'
2
+ import ReactDOM from 'react-dom'
3
+
4
+ export class VisibleModal extends React.Component<{
5
+ className: string
6
+ parentClassName?: string
7
+ noBackground?: boolean
8
+ close?: (e) => void
9
+ onEscape?: (e) => void
10
+ }> {
11
+ modalRef = document.getElementById('visible-modal')
12
+
13
+ constructor(props) {
14
+ super(props)
15
+ this.escFunction = this.escFunction.bind(this)
16
+ }
17
+
18
+ escFunction(event) {
19
+ if (event.keyCode === 27 || event.key === 'Escape') {
20
+ if (this.props.onEscape) {
21
+ this.props.onEscape(event)
22
+ } else if (this.props.close) {
23
+ this.props.close(event)
24
+ }
25
+ }
26
+ }
27
+
28
+ componentDidMount() {
29
+ document.addEventListener('keydown', this.escFunction)
30
+ this.modalRef.classList.add(this.props.noBackground ? 'show' : 'show-with-bg')
31
+
32
+ if (this.props.parentClassName) {
33
+ this.modalRef.classList.add(this.props.parentClassName)
34
+ }
35
+ }
36
+
37
+ componentWillUnmount() {
38
+ document.removeEventListener('keydown', this.escFunction)
39
+ this.modalRef.classList.remove('show')
40
+ this.modalRef.classList.remove('show-with-bg')
41
+
42
+ if (this.props.parentClassName) {
43
+ this.modalRef.classList.remove(this.props.parentClassName)
44
+ }
45
+ }
46
+
47
+ render() {
48
+ return ReactDOM.createPortal(
49
+ <div className={`visible-modal__body ${this.props.className}`} onClick={this.props?.close} data-testid="visible-modal-close">
50
+ {this.props.children}
51
+ </div>,
52
+ document.getElementById('visible-modal'),
53
+ )
54
+ }
55
+ }
@@ -0,0 +1,35 @@
1
+ import React from 'react';
2
+ import ReactDOM from 'react-dom';
3
+
4
+ export class VisibleModal2 extends React.Component<{ className: string; close?: (e) => void; }> {
5
+
6
+ modalRef = document.getElementById('visible-modal-2');
7
+
8
+ constructor(props) {
9
+ super(props);
10
+ this.escFunction = this.escFunction.bind(this);
11
+ }
12
+
13
+ escFunction(event) {
14
+ if (event.keyCode === 27 && this.props.close) {
15
+ this.props.close(event);
16
+ }
17
+ }
18
+
19
+ componentDidMount() {
20
+ document.addEventListener("keydown", this.escFunction);
21
+ this.modalRef.classList.add("show-with-bg");
22
+ }
23
+
24
+ componentWillUnmount() {
25
+ document.removeEventListener("keydown", this.escFunction);
26
+ this.modalRef.classList.remove("show-with-bg");
27
+ }
28
+
29
+ render() {
30
+ return ReactDOM.createPortal(
31
+ <div className={`visible-modal__body ${this.props.className}`} onClick={this.props?.close} data-testid="visible-modal2-close">
32
+ {this.props.children}
33
+ </div>, document.getElementById('visible-modal-2'))
34
+ }
35
+ }
@@ -0,0 +1,148 @@
1
+ import React from 'react'
2
+ import Select, { components } from 'react-select'
3
+ import { ReactComponent as ClearIcon } from '../Assets/Icon/ic-appstatus-cancelled.svg'
4
+ import { ReactComponent as Check } from '../Assets/Icon/ic-check.svg'
5
+ import { ReactComponent as RedWarning } from '../Assets/Icon/ic-error-medium.svg'
6
+
7
+ export const Option = (props) => {
8
+ const { selectOption, data } = props
9
+ return (
10
+ <div className="flex left pl-12" style={{ background: props.isFocused ? 'var(--N100)' : 'transparent' }}>
11
+ <input
12
+ checked={props.isSelected}
13
+ disabled={props.isDisabled}
14
+ onChange={(e) => selectOption(data)}
15
+ type="checkbox"
16
+ style={{ height: '16px', width: '16px', flex: '0 0 16px' }}
17
+ className="mr-8"
18
+ />
19
+ <components.Option {...props} />
20
+ </div>
21
+ )
22
+ }
23
+
24
+ export const SingleSelectOption = (props) => {
25
+ const { selectOption, data } = props
26
+ const style = { height: '16px', width: '16px', flex: '0 0 16px' }
27
+ const onClick = (e) => selectOption(data)
28
+ return (
29
+ <div className="flex left pl-12" style={{ background: props.isFocused ? 'var(--N100)' : 'transparent' }}>
30
+ {props.isSelected ? (
31
+ <Check onClick={onClick} className="mr-8 icon-dim-16" style={style} />
32
+ ) : (
33
+ <span onClick={onClick} className="mr-8" style={style} />
34
+ )}
35
+ <components.Option {...props} />
36
+ </div>
37
+ )
38
+ }
39
+
40
+ export const MultiValueContainer = (props) => {
41
+ const { children, data, innerProps, selectProps } = props
42
+ const { label, value } = data
43
+ return (
44
+ <components.MultiValueContainer {...{ data, innerProps, selectProps }}>
45
+ <div className={`flex fs-12 ml-4 cn-9`}>{label}</div>
46
+ {children[1]}
47
+ </components.MultiValueContainer>
48
+ )
49
+ }
50
+
51
+ export const ClearIndicator = (props) => {
52
+ const {
53
+ children = <ClearIcon className="icon-dim-24" />,
54
+ getStyles,
55
+ innerProps: { ref, ...restInnerProps },
56
+ } = props
57
+ return (
58
+ <div {...restInnerProps} ref={ref} style={getStyles('clearIndicator', props)}>
59
+ <div className="flex pointer">{children}</div>
60
+ </div>
61
+ )
62
+ }
63
+
64
+ export const MultiValueRemove = (props) => {
65
+ const {
66
+ data,
67
+ innerProps: { onClick, onMouseDown },
68
+ selectProps,
69
+ } = props
70
+ return (
71
+ <components.MultiValueRemove {...props}>
72
+ <ClearIcon
73
+ {...{ onClick, onMouseDown }}
74
+ onClick={(e) => onClick(data)}
75
+ style={{ height: '18px', width: '18px' }}
76
+ />
77
+ </components.MultiValueRemove>
78
+ )
79
+ }
80
+
81
+ export const MultiValueChipContainer = ({ validator, isAllSelected = false, ...props }) => {
82
+ const { children, data, innerProps, selectProps } = props
83
+ const { label, value } = data
84
+ const isValidEmail = validator ? validator(value) : true
85
+
86
+ if (isAllSelected && value !== '*') return null
87
+
88
+ return (
89
+ <components.MultiValueContainer {...{ data, innerProps, selectProps }}>
90
+ <div className="flex left fs-12 pl-4 pr-4 dc__ellipsis-right">
91
+ {!isValidEmail && <RedWarning className="mr-4 icon-dim-16" />}
92
+ <div className={`dc__ellipsis-right ${isValidEmail ? 'cn-9' : 'cr-5'}`}>{label}</div>
93
+ </div>
94
+ {children[1]}
95
+ </components.MultiValueContainer>
96
+ )
97
+ }
98
+
99
+ export const multiSelectStyles = {
100
+ control: (base, state) => ({
101
+ ...base,
102
+ cursor: state.isDisabled ? 'not-allowed' : 'normal',
103
+ border: state.isFocused ? '1px solid #06c' : '1px solid #d6dbdf',
104
+ boxShadow: 'none',
105
+ }),
106
+ menu: (base, state) => ({
107
+ ...base,
108
+ }),
109
+ option: (base, state) => {
110
+ return {
111
+ ...base,
112
+ backgroundColor: state.isFocused ? 'var(--N100)' : 'white',
113
+ color: 'var(--N900)',
114
+ padding: '8px 12px',
115
+ }
116
+ },
117
+ container: (base, state) => ({
118
+ ...base,
119
+ cursor: state.isDisabled ? 'not-allowed' : 'pointer',
120
+ }),
121
+ valueContainer: (base, state) => ({
122
+ ...base,
123
+ color: state.selectProps.menuIsOpen ? 'var(--N500)' : base.color,
124
+ }),
125
+ }
126
+
127
+ export interface CustomSelect {
128
+ sortSelected?: boolean
129
+ options: any[]
130
+ onChange: (...args) => void
131
+ value?: any
132
+ name?: string
133
+ placeholder?: string
134
+ className?: string
135
+ classNamePrefix?: string
136
+ menuPortalTarget?: any
137
+ components?: object
138
+ styles?: object
139
+ isMulti?: boolean
140
+ isDisabled?: boolean
141
+ closeMenuOnSelect?: boolean
142
+ hideSelectedOptions?: boolean
143
+ formatOptionLabel?: (...args) => any
144
+ }
145
+
146
+ export const CustomSelect: React.FC<CustomSelect> = (props) => {
147
+ return <Select {...props} />
148
+ }
@@ -0,0 +1,63 @@
1
+ import { VariableType } from "./CIPipeline.Types"
2
+ import { ResponseType } from "./Types"
3
+
4
+ export enum ApplyPolicyToStage {
5
+ PRE_CI = 'PRE_CI',
6
+ POST_CI = 'POST_CI',
7
+ PRE_OR_POST_CI = 'PRE_OR_POST_CI',
8
+ }
9
+
10
+ export enum PluginRequiredStage {
11
+ PRE_CI = 'preBuildStage',
12
+ POST_CI = 'postBuildStage',
13
+ PRE_OR_POST_CI = 'PRE_OR_POST_CI',
14
+ }
15
+
16
+ export interface DefinitionSourceType {
17
+ projectName: string
18
+ isDueToProductionEnvironment: boolean
19
+ isDueToLinkedPipeline: boolean
20
+ policyName: string
21
+ appName?: string
22
+ clusterName?: string
23
+ environmentName?: string
24
+ branchNames?: string[]
25
+ ciPipelineName?: string
26
+ }
27
+ export interface MandatoryPluginDetailType {
28
+ id: number
29
+ icon: string
30
+ name: string
31
+ description?: string
32
+ requiredIn: PluginRequiredStage
33
+ applied?: boolean
34
+ inputVariables?: VariableType[]
35
+ outputVariables?: VariableType[]
36
+ definitionSources?: DefinitionSourceType[]
37
+ }
38
+ export interface MandatoryPluginDataType {
39
+ pluginData: MandatoryPluginDetailType[]
40
+ isValidPre: boolean
41
+ isValidPost: boolean
42
+ }
43
+
44
+ export enum ConsequenceAction {
45
+ BLOCK = 'BLOCK',
46
+ ALLOW_UNTIL_TIME = 'ALLOW_UNTIL_TIME',
47
+ ALLOW_FOREVER = 'ALLOW_FOREVER',
48
+ }
49
+
50
+ export interface ConsequenceType {
51
+ action: ConsequenceAction
52
+ metadataField: string
53
+ }
54
+
55
+ export interface BlockedStateData {
56
+ isOffendingMandatoryPlugin: boolean
57
+ isCITriggerBlocked: boolean
58
+ ciBlockState: ConsequenceType
59
+ }
60
+
61
+ export interface GetBlockedStateResponse extends ResponseType {
62
+ result?: BlockedStateData
63
+ }
@@ -0,0 +1,199 @@
1
+ import React, { useEffect } from 'react'
2
+ import { Modal } from './Modals/Modal'
3
+ import { PopupMenuBodyType, PopupMenuButtonType, PopupMenuType } from './Types'
4
+
5
+ const PopupContext = React.createContext(null)
6
+
7
+ function usePopupContext() {
8
+ const context = React.useContext(PopupContext)
9
+ if (!context) {
10
+ throw new Error(`Select compound components cannot be rendered outside popupmenup`)
11
+ }
12
+ return context
13
+ }
14
+
15
+ function PopupMenu({
16
+ children = null,
17
+ onToggleCallback = null,
18
+ autoClose = false,
19
+ autoPosition = false,
20
+ }: PopupMenuType) {
21
+ const [popupPosition, setPopupPosition] = React.useState(null)
22
+ const [opacity, setOpacity] = React.useState(0)
23
+ const observer = React.useRef<IntersectionObserver | null>(null)
24
+ const buttonRef = React.useRef(null)
25
+ const buttonWidth = React.useRef(null)
26
+
27
+ React.useEffect(() => {
28
+ observer.current = window.IntersectionObserver ? new IntersectionObserver(intersectionCallback, options) : null
29
+ return () => {
30
+ if (observer && observer.current && observer.current.disconnect) observer.current.disconnect()
31
+ }
32
+ }, [])
33
+
34
+ useEffect(() => {
35
+ if (typeof onToggleCallback === 'function') {
36
+ if (popupPosition) {
37
+ onToggleCallback(true)
38
+ } else {
39
+ onToggleCallback(false)
40
+ }
41
+ }
42
+ }, [popupPosition])
43
+
44
+ useEffect(() => {
45
+ if (buttonRef?.current && autoPosition && popupPosition) {
46
+ const { height, x, y } = buttonRef.current.getBoundingClientRect()
47
+ setPopupPosition({ left: x, top: y + height })
48
+ }
49
+ }, [buttonRef?.current?.clientHeight])
50
+
51
+ let options = {
52
+ root: null,
53
+ rootMargin: '0px',
54
+ threshold: 1.0,
55
+ }
56
+
57
+ if (!children) return children
58
+
59
+ function intersectionCallback(entries, observer) {
60
+ entries.forEach((entry) => {
61
+ if (entry.isIntersecting && entry.intersectionRatio >= 1) {
62
+ setOpacity(1)
63
+ } else {
64
+ const { boundingClientRect, rootBounds } = entry
65
+ const { x, y, height, width } = boundingClientRect
66
+ const {
67
+ x: buttonX,
68
+ y: buttonY,
69
+ height: buttonHeight,
70
+ width: buttonWidth,
71
+ left: buttonLeft,
72
+ right: buttonRight,
73
+ top: buttonTop,
74
+ bottom: buttonBottom,
75
+ } = buttonRef.current.getBoundingClientRect()
76
+ if (y + height > rootBounds.height) {
77
+ setPopupPosition({ left: buttonX, bottom: document.documentElement.clientHeight - buttonY })
78
+ setOpacity(1)
79
+ }
80
+ if (x + width > rootBounds.width) {
81
+ // setPopupPosition(position => ({ right: document.documentElement.clientWidth - buttonLeft,...position, left:'unset' }))
82
+ setPopupPosition((position) => ({ ...position, right: '20px', left: 'unset' }))
83
+ setOpacity(1)
84
+ }
85
+ }
86
+ })
87
+ }
88
+
89
+ const handleOpen = (e) => {
90
+ e.stopPropagation()
91
+ setOpacity(0)
92
+ const { height, x, y } = e.currentTarget.getBoundingClientRect()
93
+ setPopupPosition({ left: x, top: y + height })
94
+ }
95
+
96
+ const handleClose = (e, inOrOut) => {
97
+ if (autoClose || inOrOut === 'out') {
98
+ if (observer && observer.current && observer.current.disconnect) observer.current.disconnect()
99
+ setOpacity(0)
100
+ setPopupPosition(null)
101
+ } else {
102
+ e.stopPropagation()
103
+ }
104
+ }
105
+
106
+ function callbackRef(element) {
107
+ if (element && observer?.current?.observe) {
108
+ observer.current.observe(element)
109
+ } else observer.current.disconnect()
110
+ }
111
+
112
+ function initialiseButtonWidth(buttonEl) {
113
+ if (!buttonEl) return
114
+ buttonRef.current = buttonEl
115
+ const { bottom, height, left, right, top, width, x, y } = buttonEl.getBoundingClientRect()
116
+ buttonWidth.current = width
117
+ }
118
+
119
+ return (
120
+ <PopupContext.Provider
121
+ value={{
122
+ handleOpen,
123
+ popupPosition,
124
+ handleClose,
125
+ opacity,
126
+ setPopupPosition,
127
+ callbackRef,
128
+ buttonRef,
129
+ initialiseButtonWidth,
130
+ buttonWidth,
131
+ }}
132
+ >
133
+ {children}
134
+ </PopupContext.Provider>
135
+ )
136
+ }
137
+
138
+ function Button({
139
+ children = null,
140
+ disabled = false,
141
+ rootClassName = '',
142
+ tabIndex = 0,
143
+ onHover = false,
144
+ isKebab = false,
145
+ dataTestId = "",
146
+ }: PopupMenuButtonType) {
147
+ const { handleOpen, popupPosition, buttonRef, initialiseButtonWidth } = usePopupContext()
148
+ return (
149
+ <button
150
+ ref={initialiseButtonWidth}
151
+ type="button"
152
+ tabIndex={tabIndex}
153
+ disabled={disabled}
154
+ className={`${rootClassName} ${popupPosition ? 'focused' : ''} ${
155
+ isKebab ? 'popup-button-kebab' : 'popup-button'
156
+ }`}
157
+ onMouseEnter={onHover ? (disabled ? null : handleOpen) : () => {}}
158
+ onClick={disabled ? null : handleOpen}
159
+ data-testid={dataTestId}
160
+ >
161
+ {children}
162
+ </button>
163
+ )
164
+ }
165
+
166
+ function Body({
167
+ children = null,
168
+ rootClassName = '',
169
+ style = {},
170
+ autoWidth = false,
171
+ preventWheelDisable = false,
172
+ noBackDrop,
173
+ }: PopupMenuBodyType) {
174
+ const { handleClose, popupPosition, opacity, callbackRef, buttonWidth } = usePopupContext()
175
+ return popupPosition ? (
176
+ <Modal
177
+ callbackRef={callbackRef}
178
+ onClick={handleClose}
179
+ rootClassName={`${rootClassName} popup-body ${!children ? 'popup-body--empty' : ''} ${Object.keys(
180
+ popupPosition,
181
+ ).join(' ')}`}
182
+ style={{
183
+ ...popupPosition,
184
+ ...style,
185
+ ...(autoWidth ? { width: buttonWidth.current } : {}),
186
+ opacity: opacity,
187
+ }}
188
+ preventWheelDisable={preventWheelDisable}
189
+ noBackDrop={noBackDrop}
190
+ >
191
+ {children}
192
+ </Modal>
193
+ ) : null
194
+ }
195
+
196
+ PopupMenu.Button = Button
197
+ PopupMenu.Body = Body
198
+
199
+ export default PopupMenu
@@ -0,0 +1,53 @@
1
+ import React from 'react'
2
+ import { ProgressingProps } from './Types'
3
+
4
+ export function Progressing({ pageLoader, size, theme, styles, fillColor }: ProgressingProps): JSX.Element {
5
+ const loaderSize = size ? `${size}px` : pageLoader ? '48px' : '20px'
6
+ return (
7
+ <div className={`loader ${theme || 'default'}-background`} style={styles} data-testid="progressing">
8
+ <div style={{ width: loaderSize, height: loaderSize }}>
9
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" className="loader__svg">
10
+ <g fill="none" fillRule="evenodd" strokeLinecap="round">
11
+ <animateTransform
12
+ attributeName="transform"
13
+ attributeType="XML"
14
+ dur="0.5s"
15
+ from="0 12 12"
16
+ repeatCount="indefinite"
17
+ to="360 12 12"
18
+ type="rotate"
19
+ />
20
+ <path
21
+ fill={fillColor || '#06C'}
22
+ fillRule="nonzero"
23
+ d="M12 2.5A9.5 9.5 0 1 1 2.5 12a1.5 1.5 0 0 1 3 0A6.5 6.5 0 1 0 12 5.5a1.5 1.5 0 0 1 0-3z"
24
+ />
25
+ </g>
26
+ </svg>
27
+ </div>
28
+ </div>
29
+ )
30
+ }
31
+
32
+ export function DetailsProgressing({
33
+ loadingText,
34
+ size = 24,
35
+ fullHeight = false,
36
+ styles,
37
+ fillColor,
38
+ children,
39
+ }: ProgressingProps): JSX.Element {
40
+ return (
41
+ <div
42
+ className={`details-loader bcn-0 flex column fs-14 fw-6 ${fullHeight ? 'h-100' : 'details-loader-height'}`}
43
+ style={styles}
44
+ data-testid="details-progressing"
45
+ >
46
+ <span style={{ width: `${size}px`, height: `${size}px` }}>
47
+ <Progressing size={size} fillColor={fillColor} />
48
+ </span>
49
+ {loadingText && <span className="mt-10">{loadingText}</span>}
50
+ {children}
51
+ </div>
52
+ )
53
+ }
@@ -0,0 +1,29 @@
1
+ import React from 'react'
2
+ import RJSF from '@rjsf/core'
3
+ import RJSFValidator from '@rjsf/validator-ajv8'
4
+
5
+ import { templates, widgets } from './config'
6
+ import { FormProps } from './types'
7
+ import { translateString } from './utils'
8
+ import './rjsfForm.scss'
9
+
10
+ // Need to use this way because the default import was not working as expected
11
+ // The default import resolves to an object intead of a function
12
+ const Form = (RJSF as any).default as typeof RJSF
13
+ const validator = (RJSFValidator as any).default as typeof RJSFValidator
14
+
15
+ export const RJSFForm = (props: FormProps) => (
16
+ <Form
17
+ noHtml5Validate
18
+ showErrorList={false}
19
+ autoComplete="off"
20
+ {...props}
21
+ validator={validator}
22
+ templates={{
23
+ ...templates,
24
+ ...props.templates,
25
+ }}
26
+ widgets={{ ...widgets, ...props.widgets }}
27
+ translateString={translateString}
28
+ />
29
+ )