@openshift-assisted/ui-lib 2.50.1 → 2.51.1

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 (292) hide show
  1. package/build/@types/cim/components/Agent/BMHStatusInfo.d.ts.map +1 -1
  2. package/build/@types/cim/components/Agent/MinimalHWRequirements.d.ts.map +1 -1
  3. package/build/@types/cim/components/ClusterDeployment/use-networking-formik.d.ts +1 -1
  4. package/build/@types/cim/components/ClusterDeployment/wizardTransition.d.ts +1 -1
  5. package/build/@types/cim/components/ClusterDeployment/wizardTransition.d.ts.map +1 -1
  6. package/build/@types/cim/components/Hypershift/DetailsPage/ConditionsTable.d.ts.map +1 -1
  7. package/build/@types/cim/components/Hypershift/DetailsPage/HostedClusterProgress.d.ts.map +1 -1
  8. package/build/@types/cim/components/Hypershift/DetailsPage/NodePoolsProgress.d.ts.map +1 -1
  9. package/build/@types/cim/components/Hypershift/utils/status.d.ts +2 -2
  10. package/build/@types/cim/components/Hypershift/utils/status.d.ts.map +1 -1
  11. package/build/@types/cim/components/InfraEnv/EnvironmentDetails.d.ts.map +1 -1
  12. package/build/@types/cim/components/InfraEnv/InfraEnvHostsTabAgentsWarning.d.ts.map +1 -1
  13. package/build/@types/cim/components/helpers/agentStatus.d.ts +1 -1
  14. package/build/@types/cim/components/helpers/agentStatus.d.ts.map +1 -1
  15. package/build/@types/cim/components/modals/MassDeleteAgentModal.d.ts.map +1 -1
  16. package/build/@types/common/components/clusterConfiguration/DiscoveryTroubleshootingModal.d.ts.map +1 -1
  17. package/build/@types/common/components/clusterDetail/FinalizingProgress.d.ts +1 -1
  18. package/build/@types/common/components/clusterDetail/FinalizingProgress.d.ts.map +1 -1
  19. package/build/@types/common/components/clusterDetail/OperatorsProgressItem.d.ts.map +1 -1
  20. package/build/@types/common/components/clusterDetail/ProgressBarTexts.d.ts.map +1 -1
  21. package/build/@types/common/components/clusterWizard/ReviewValidations.d.ts.map +1 -1
  22. package/build/@types/common/components/clusterWizard/networkingSteps/StackTypeControlGroup.d.ts.map +1 -1
  23. package/build/@types/common/components/clusterWizard/networkingSteps/VirtualIPControlGroup.d.ts.map +1 -1
  24. package/build/@types/common/components/hosts/HostPropertyValidationPopover.d.ts.map +1 -1
  25. package/build/@types/common/components/hosts/HostStatus.d.ts.map +1 -1
  26. package/build/@types/common/components/hosts/HostValidationGroups.d.ts.map +1 -1
  27. package/build/@types/common/components/hosts/Hostname.d.ts.map +1 -1
  28. package/build/@types/common/components/hosts/MassChangeHostnameModal.d.ts.map +1 -1
  29. package/build/@types/common/components/hosts/VMRebootConfigurationInfo.d.ts.map +1 -1
  30. package/build/@types/common/components/hosts/status.d.ts.map +1 -1
  31. package/build/@types/common/components/storage/DisksTable.d.ts.map +1 -1
  32. package/build/@types/common/components/storage/StorageUtils.d.ts +1 -1
  33. package/build/@types/common/components/storage/StorageUtils.d.ts.map +1 -1
  34. package/build/@types/common/components/ui/WizardNavItem.d.ts.map +1 -1
  35. package/build/@types/common/components/ui/formik/RemovableField.d.ts.map +1 -1
  36. package/build/@types/common/components/ui/formik/RichInputField.d.ts.map +1 -1
  37. package/build/@types/common/components/ui/index.d.ts +0 -1
  38. package/build/@types/common/components/ui/index.d.ts.map +1 -1
  39. package/build/@types/common/config/constants.d.ts +2 -2
  40. package/build/@types/common/config/constants.d.ts.map +1 -1
  41. package/build/@types/common/config/docs_links.d.ts +1 -0
  42. package/build/@types/common/config/docs_links.d.ts.map +1 -1
  43. package/build/@types/common/types/index.d.ts +1 -0
  44. package/build/@types/common/types/index.d.ts.map +1 -1
  45. package/build/@types/common/types/networkType.d.ts +12 -0
  46. package/build/@types/common/types/networkType.d.ts.map +1 -0
  47. package/build/@types/common/types/ui-settings.d.ts +0 -1
  48. package/build/@types/common/types/ui-settings.d.ts.map +1 -1
  49. package/build/@types/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.d.ts.map +1 -1
  50. package/build/@types/ocm/components/clusterConfiguration/OcmOperatorProgressItem.d.ts.map +1 -1
  51. package/build/@types/ocm/components/clusterConfiguration/OpenshiftVersionHelperText.d.ts.map +1 -1
  52. package/build/@types/ocm/components/clusterConfiguration/manifestsConfiguration/CustomManifestsPage.d.ts.map +1 -1
  53. package/build/@types/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifestsArray.d.ts.map +1 -1
  54. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfiguration.d.ts.map +1 -1
  55. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/NetworkTypeDropdown.d.ts +8 -0
  56. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/NetworkTypeDropdown.d.ts.map +1 -0
  57. package/build/@types/ocm/components/clusterConfiguration/platformIntegration/PlatformIntegrationNote.d.ts.map +1 -1
  58. package/build/@types/ocm/components/clusterConfiguration/review/ReviewNetworkingTable.d.ts.map +1 -1
  59. package/build/@types/ocm/components/clusterConfiguration/review/ReviewPreflightChecks.d.ts.map +1 -1
  60. package/build/@types/ocm/components/clusterDetail/ClusterProperties.d.ts.map +1 -1
  61. package/build/@types/ocm/components/clusterDetail/HostInventoryExpandable.d.ts +1 -1
  62. package/build/@types/ocm/components/clusterDetail/HostInventoryExpandable.d.ts.map +1 -1
  63. package/build/@types/ocm/components/clusterDetail/OpenShiftVersionDetail.d.ts.map +1 -1
  64. package/build/@types/ocm/components/clusterDetail/ResetClusterModal.d.ts.map +1 -1
  65. package/build/@types/ocm/components/clusterWizard/ClusterDetails.d.ts.map +1 -1
  66. package/build/@types/ocm/components/clusterWizard/ClusterDetailsForm.d.ts +2 -2
  67. package/build/@types/ocm/components/clusterWizard/ClusterDetailsForm.d.ts.map +1 -1
  68. package/build/@types/ocm/components/clusterWizard/ClusterWizardContext.d.ts +0 -2
  69. package/build/@types/ocm/components/clusterWizard/ClusterWizardContext.d.ts.map +1 -1
  70. package/build/@types/ocm/components/clusterWizard/ClusterWizardContextProvider.d.ts.map +1 -1
  71. package/build/@types/ocm/components/clusterWizard/constants.d.ts.map +1 -1
  72. package/build/@types/ocm/components/clusterWizard/disconnected/BasicStep.d.ts.map +1 -1
  73. package/build/@types/ocm/components/clusterWizard/wizardTransition.d.ts +1 -1
  74. package/build/@types/ocm/components/clusterWizard/wizardTransition.d.ts.map +1 -1
  75. package/build/@types/ocm/components/clusters/ClusterStatus.d.ts.map +1 -1
  76. package/build/@types/ocm/components/featureSupportLevels/ReviewClusterFeatureSupportLevels.d.ts.map +1 -1
  77. package/build/@types/ocm/components/featureSupportLevels/featureStateUtils.d.ts.map +1 -1
  78. package/build/@types/ocm/components/ui/InfoLinkWithModal.d.ts.map +1 -1
  79. package/build/@types/ocm/hooks/useUISettings.d.ts.map +1 -1
  80. package/build/@types/ocm/services/ClusterDetailsService.d.ts +1 -2
  81. package/build/@types/ocm/services/ClusterDetailsService.d.ts.map +1 -1
  82. package/build/@types/ocm/services/types.d.ts +0 -1
  83. package/build/@types/ocm/services/types.d.ts.map +1 -1
  84. package/build/@types/ocm/store/slices/clusters/selectors.d.ts +1 -2
  85. package/build/@types/ocm/store/slices/clusters/selectors.d.ts.map +1 -1
  86. package/build/@types/ocm/store/slices/current-cluster/slice.d.ts +3 -3
  87. package/build/cjs/cim/components/Agent/BMHStatusInfo.js +4 -4
  88. package/build/cjs/cim/components/Agent/BMHStatusInfo.js.map +1 -1
  89. package/build/cjs/cim/components/Agent/MinimalHWRequirements.js +2 -2
  90. package/build/cjs/cim/components/Agent/MinimalHWRequirements.js.map +1 -1
  91. package/build/cjs/cim/components/ClusterDeployment/networkConfigurationValidation.js +3 -3
  92. package/build/cjs/cim/components/ClusterDeployment/networkConfigurationValidation.js.map +1 -1
  93. package/build/cjs/cim/components/Hypershift/DetailsPage/ConditionsTable.js +7 -6
  94. package/build/cjs/cim/components/Hypershift/DetailsPage/ConditionsTable.js.map +1 -1
  95. package/build/cjs/cim/components/Hypershift/DetailsPage/HostedClusterProgress.js +3 -2
  96. package/build/cjs/cim/components/Hypershift/DetailsPage/HostedClusterProgress.js.map +1 -1
  97. package/build/cjs/cim/components/Hypershift/DetailsPage/NodePoolsProgress.js +2 -2
  98. package/build/cjs/cim/components/Hypershift/DetailsPage/NodePoolsProgress.js.map +1 -1
  99. package/build/cjs/cim/components/Hypershift/utils/status.js +8 -7
  100. package/build/cjs/cim/components/Hypershift/utils/status.js.map +1 -1
  101. package/build/cjs/cim/components/InfraEnv/EnvironmentDetails.js +4 -4
  102. package/build/cjs/cim/components/InfraEnv/EnvironmentDetails.js.map +1 -1
  103. package/build/cjs/cim/components/InfraEnv/InfraEnvHostsTabAgentsWarning.js +3 -3
  104. package/build/cjs/cim/components/InfraEnv/InfraEnvHostsTabAgentsWarning.js.map +1 -1
  105. package/build/cjs/cim/components/helpers/agentStatus.js +3 -2
  106. package/build/cjs/cim/components/helpers/agentStatus.js.map +1 -1
  107. package/build/cjs/cim/components/modals/MassDeleteAgentModal.js +2 -2
  108. package/build/cjs/cim/components/modals/MassDeleteAgentModal.js.map +1 -1
  109. package/build/cjs/common/components/clusterConfiguration/DiscoveryTroubleshootingModal.js +2 -1
  110. package/build/cjs/common/components/clusterConfiguration/DiscoveryTroubleshootingModal.js.map +1 -1
  111. package/build/cjs/common/components/clusterDetail/FinalizingProgress.js +8 -7
  112. package/build/cjs/common/components/clusterDetail/FinalizingProgress.js.map +1 -1
  113. package/build/cjs/common/components/clusterDetail/OperatorsProgressItem.js +4 -4
  114. package/build/cjs/common/components/clusterDetail/OperatorsProgressItem.js.map +1 -1
  115. package/build/cjs/common/components/clusterDetail/ProgressBarTexts.js +5 -4
  116. package/build/cjs/common/components/clusterDetail/ProgressBarTexts.js.map +1 -1
  117. package/build/cjs/common/components/clusterWizard/ReviewValidations.js +7 -6
  118. package/build/cjs/common/components/clusterWizard/ReviewValidations.js.map +1 -1
  119. package/build/cjs/common/components/clusterWizard/networkingSteps/NetworkTypeControlGroup.js +3 -3
  120. package/build/cjs/common/components/clusterWizard/networkingSteps/NetworkTypeControlGroup.js.map +1 -1
  121. package/build/cjs/common/components/clusterWizard/networkingSteps/StackTypeControlGroup.js +3 -2
  122. package/build/cjs/common/components/clusterWizard/networkingSteps/StackTypeControlGroup.js.map +1 -1
  123. package/build/cjs/common/components/clusterWizard/networkingSteps/VirtualIPControlGroup.js +2 -1
  124. package/build/cjs/common/components/clusterWizard/networkingSteps/VirtualIPControlGroup.js.map +1 -1
  125. package/build/cjs/common/components/hosts/HostPropertyValidationPopover.js +6 -6
  126. package/build/cjs/common/components/hosts/HostPropertyValidationPopover.js.map +1 -1
  127. package/build/cjs/common/components/hosts/HostStatus.js +2 -1
  128. package/build/cjs/common/components/hosts/HostStatus.js.map +1 -1
  129. package/build/cjs/common/components/hosts/HostValidationGroups.js +6 -6
  130. package/build/cjs/common/components/hosts/HostValidationGroups.js.map +1 -1
  131. package/build/cjs/common/components/hosts/Hostname.js +4 -3
  132. package/build/cjs/common/components/hosts/Hostname.js.map +1 -1
  133. package/build/cjs/common/components/hosts/MassChangeHostnameModal.js +2 -2
  134. package/build/cjs/common/components/hosts/MassChangeHostnameModal.js.map +1 -1
  135. package/build/cjs/common/components/hosts/VMRebootConfigurationInfo.js +2 -1
  136. package/build/cjs/common/components/hosts/VMRebootConfigurationInfo.js.map +1 -1
  137. package/build/cjs/common/components/hosts/status.js +19 -13
  138. package/build/cjs/common/components/hosts/status.js.map +1 -1
  139. package/build/cjs/common/components/storage/DisksTable.js +4 -2
  140. package/build/cjs/common/components/storage/DisksTable.js.map +1 -1
  141. package/build/cjs/common/components/storage/StorageUtils.js +3 -2
  142. package/build/cjs/common/components/storage/StorageUtils.js.map +1 -1
  143. package/build/cjs/common/components/ui/WizardNavItem.js +2 -2
  144. package/build/cjs/common/components/ui/WizardNavItem.js.map +1 -1
  145. package/build/cjs/common/components/ui/formik/RemovableField.js +3 -3
  146. package/build/cjs/common/components/ui/formik/RemovableField.js.map +1 -1
  147. package/build/cjs/common/components/ui/formik/RichInputField.js +4 -4
  148. package/build/cjs/common/components/ui/formik/RichInputField.js.map +1 -1
  149. package/build/cjs/common/components/ui/formik/TextAreaField.js +1 -1
  150. package/build/cjs/common/components/ui/formik/TextAreaField.js.map +1 -1
  151. package/build/cjs/common/components/ui/index.js +1 -3
  152. package/build/cjs/common/components/ui/index.js.map +1 -1
  153. package/build/cjs/common/config/constants.js +3 -4
  154. package/build/cjs/common/config/constants.js.map +1 -1
  155. package/build/cjs/common/config/docs_links.js +3 -2
  156. package/build/cjs/common/config/docs_links.js.map +1 -1
  157. package/build/cjs/common/types/index.js +1 -0
  158. package/build/cjs/common/types/index.js.map +1 -1
  159. package/build/cjs/common/types/networkType.js +28 -0
  160. package/build/cjs/common/types/networkType.js.map +1 -0
  161. package/build/cjs/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.js +1 -7
  162. package/build/cjs/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.js.map +1 -1
  163. package/build/cjs/ocm/components/clusterConfiguration/OcmOperatorProgressItem.js +4 -4
  164. package/build/cjs/ocm/components/clusterConfiguration/OcmOperatorProgressItem.js.map +1 -1
  165. package/build/cjs/ocm/components/clusterConfiguration/OpenshiftVersionHelperText.js +5 -2
  166. package/build/cjs/ocm/components/clusterConfiguration/OpenshiftVersionHelperText.js.map +1 -1
  167. package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/CustomManifestsPage.js +92 -6
  168. package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/CustomManifestsPage.js.map +1 -1
  169. package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifestsArray.js +4 -1
  170. package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifestsArray.js.map +1 -1
  171. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfiguration.js +3 -6
  172. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfiguration.js.map +1 -1
  173. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkTypeDropdown.js +61 -0
  174. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkTypeDropdown.js.map +1 -0
  175. package/build/cjs/ocm/components/clusterConfiguration/platformIntegration/PlatformIntegrationNote.js +5 -3
  176. package/build/cjs/ocm/components/clusterConfiguration/platformIntegration/PlatformIntegrationNote.js.map +1 -1
  177. package/build/cjs/ocm/components/clusterConfiguration/review/ReviewNetworkingTable.js +1 -1
  178. package/build/cjs/ocm/components/clusterConfiguration/review/ReviewNetworkingTable.js.map +1 -1
  179. package/build/cjs/ocm/components/clusterConfiguration/review/ReviewPreflightChecks.js +11 -7
  180. package/build/cjs/ocm/components/clusterConfiguration/review/ReviewPreflightChecks.js.map +1 -1
  181. package/build/cjs/ocm/components/clusterDetail/ClusterProperties.js +1 -5
  182. package/build/cjs/ocm/components/clusterDetail/ClusterProperties.js.map +1 -1
  183. package/build/cjs/ocm/components/clusterDetail/HostInventoryExpandable.js +5 -4
  184. package/build/cjs/ocm/components/clusterDetail/HostInventoryExpandable.js.map +1 -1
  185. package/build/cjs/ocm/components/clusterDetail/OpenShiftVersionDetail.js +4 -3
  186. package/build/cjs/ocm/components/clusterDetail/OpenShiftVersionDetail.js.map +1 -1
  187. package/build/cjs/ocm/components/clusterDetail/ResetClusterModal.js +4 -2
  188. package/build/cjs/ocm/components/clusterDetail/ResetClusterModal.js.map +1 -1
  189. package/build/cjs/ocm/components/clusterWizard/ClusterDetails.js +16 -9
  190. package/build/cjs/ocm/components/clusterWizard/ClusterDetails.js.map +1 -1
  191. package/build/cjs/ocm/components/clusterWizard/ClusterDetailsForm.js +5 -7
  192. package/build/cjs/ocm/components/clusterWizard/ClusterDetailsForm.js.map +1 -1
  193. package/build/cjs/ocm/components/clusterWizard/ClusterWizardContext.js.map +1 -1
  194. package/build/cjs/ocm/components/clusterWizard/ClusterWizardContextProvider.js +13 -24
  195. package/build/cjs/ocm/components/clusterWizard/ClusterWizardContextProvider.js.map +1 -1
  196. package/build/cjs/ocm/components/clusterWizard/constants.js +1 -0
  197. package/build/cjs/ocm/components/clusterWizard/constants.js.map +1 -1
  198. package/build/cjs/ocm/components/clusterWizard/disconnected/BasicStep.js +7 -6
  199. package/build/cjs/ocm/components/clusterWizard/disconnected/BasicStep.js.map +1 -1
  200. package/build/cjs/ocm/components/clusterWizard/wizardTransition.js +9 -1
  201. package/build/cjs/ocm/components/clusterWizard/wizardTransition.js.map +1 -1
  202. package/build/cjs/ocm/components/clusters/ClusterStatus.js +13 -7
  203. package/build/cjs/ocm/components/clusters/ClusterStatus.js.map +1 -1
  204. package/build/cjs/ocm/components/featureSupportLevels/ReviewClusterFeatureSupportLevels.js +7 -6
  205. package/build/cjs/ocm/components/featureSupportLevels/ReviewClusterFeatureSupportLevels.js.map +1 -1
  206. package/build/cjs/ocm/components/featureSupportLevels/featureStateUtils.js +15 -0
  207. package/build/cjs/ocm/components/featureSupportLevels/featureStateUtils.js.map +1 -1
  208. package/build/cjs/ocm/components/ui/InfoLinkWithModal.js +2 -2
  209. package/build/cjs/ocm/components/ui/InfoLinkWithModal.js.map +1 -1
  210. package/build/cjs/ocm/hooks/useUISettings.js +0 -1
  211. package/build/cjs/ocm/hooks/useUISettings.js.map +1 -1
  212. package/build/cjs/ocm/services/ClusterDetailsService.js +2 -2
  213. package/build/cjs/ocm/services/ClusterDetailsService.js.map +1 -1
  214. package/build/cjs/ocm/store/slices/clusters/selectors.js.map +1 -1
  215. package/lib/cim/components/Agent/BMHStatusInfo.tsx +12 -4
  216. package/lib/cim/components/Agent/MinimalHWRequirements.tsx +4 -2
  217. package/lib/cim/components/ClusterDeployment/networkConfigurationValidation.ts +1 -1
  218. package/lib/cim/components/Hypershift/DetailsPage/ConditionsTable.tsx +13 -7
  219. package/lib/cim/components/Hypershift/DetailsPage/HostedClusterProgress.tsx +8 -4
  220. package/lib/cim/components/Hypershift/DetailsPage/NodePoolsProgress.tsx +6 -2
  221. package/lib/cim/components/Hypershift/utils/status.tsx +20 -9
  222. package/lib/cim/components/InfraEnv/EnvironmentDetails.tsx +11 -4
  223. package/lib/cim/components/InfraEnv/InfraEnvHostsTabAgentsWarning.tsx +4 -6
  224. package/lib/cim/components/helpers/agentStatus.tsx +7 -3
  225. package/lib/cim/components/modals/MassDeleteAgentModal.tsx +12 -5
  226. package/lib/common/components/clusterConfiguration/DiscoveryTroubleshootingModal.tsx +5 -2
  227. package/lib/common/components/clusterDetail/FinalizingProgress.tsx +21 -10
  228. package/lib/common/components/clusterDetail/OperatorsProgressItem.tsx +11 -5
  229. package/lib/common/components/clusterDetail/ProgressBarTexts.tsx +17 -5
  230. package/lib/common/components/clusterWizard/ReviewValidations.tsx +15 -6
  231. package/lib/common/components/clusterWizard/networkingSteps/NetworkTypeControlGroup.tsx +1 -1
  232. package/lib/common/components/clusterWizard/networkingSteps/StackTypeControlGroup.tsx +5 -6
  233. package/lib/common/components/clusterWizard/networkingSteps/VirtualIPControlGroup.tsx +2 -2
  234. package/lib/common/components/hosts/HostPropertyValidationPopover.tsx +9 -5
  235. package/lib/common/components/hosts/HostStatus.tsx +14 -3
  236. package/lib/common/components/hosts/HostValidationGroups.tsx +9 -5
  237. package/lib/common/components/hosts/Hostname.tsx +7 -4
  238. package/lib/common/components/hosts/MassChangeHostnameModal.tsx +6 -2
  239. package/lib/common/components/hosts/VMRebootConfigurationInfo.tsx +12 -3
  240. package/lib/common/components/hosts/status.tsx +46 -13
  241. package/lib/common/components/storage/DisksTable.tsx +15 -4
  242. package/lib/common/components/storage/StorageUtils.tsx +6 -4
  243. package/lib/common/components/ui/WizardNavItem.tsx +4 -7
  244. package/lib/common/components/ui/formik/RemovableField.tsx +8 -4
  245. package/lib/common/components/ui/formik/RichInputField.tsx +10 -6
  246. package/lib/common/components/ui/formik/TextAreaField.tsx +1 -1
  247. package/lib/common/components/ui/index.ts +0 -2
  248. package/lib/common/config/constants.ts +1 -3
  249. package/lib/common/config/docs_links.ts +2 -0
  250. package/lib/common/types/index.ts +1 -0
  251. package/lib/common/types/networkType.ts +37 -0
  252. package/lib/common/types/ui-settings.ts +0 -1
  253. package/lib/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.tsx +1 -8
  254. package/lib/ocm/components/clusterConfiguration/OcmOperatorProgressItem.tsx +11 -5
  255. package/lib/ocm/components/clusterConfiguration/OpenshiftVersionHelperText.tsx +8 -7
  256. package/lib/ocm/components/clusterConfiguration/manifestsConfiguration/CustomManifestsPage.tsx +160 -20
  257. package/lib/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifestsArray.tsx +5 -1
  258. package/lib/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfiguration.tsx +7 -10
  259. package/lib/ocm/components/clusterConfiguration/networkConfiguration/NetworkTypeDropdown.tsx +142 -0
  260. package/lib/ocm/components/clusterConfiguration/platformIntegration/PlatformIntegrationNote.tsx +6 -3
  261. package/lib/ocm/components/clusterConfiguration/review/ReviewNetworkingTable.tsx +3 -7
  262. package/lib/ocm/components/clusterConfiguration/review/ReviewPreflightChecks.tsx +28 -15
  263. package/lib/ocm/components/clusterDetail/ClusterProperties.tsx +2 -6
  264. package/lib/ocm/components/clusterDetail/HostInventoryExpandable.tsx +11 -5
  265. package/lib/ocm/components/clusterDetail/OpenShiftVersionDetail.tsx +8 -5
  266. package/lib/ocm/components/clusterDetail/ResetClusterModal.tsx +6 -3
  267. package/lib/ocm/components/clusterWizard/ClusterDetails.tsx +17 -13
  268. package/lib/ocm/components/clusterWizard/ClusterDetailsForm.tsx +7 -8
  269. package/lib/ocm/components/clusterWizard/ClusterWizardContext.tsx +0 -2
  270. package/lib/ocm/components/clusterWizard/ClusterWizardContextProvider.tsx +20 -42
  271. package/lib/ocm/components/clusterWizard/constants.ts +1 -0
  272. package/lib/ocm/components/clusterWizard/disconnected/BasicStep.tsx +12 -11
  273. package/lib/ocm/components/clusterWizard/wizardTransition.ts +9 -1
  274. package/lib/ocm/components/clusters/ClusterStatus.tsx +30 -8
  275. package/lib/ocm/components/featureSupportLevels/ReviewClusterFeatureSupportLevels.tsx +12 -8
  276. package/lib/ocm/components/featureSupportLevels/featureStateUtils.ts +17 -0
  277. package/lib/ocm/components/ui/InfoLinkWithModal.tsx +4 -2
  278. package/lib/ocm/hooks/useUISettings.ts +0 -1
  279. package/lib/ocm/services/ClusterDetailsService.ts +0 -3
  280. package/lib/ocm/services/types.ts +0 -1
  281. package/lib/ocm/store/slices/clusters/selectors.tsx +2 -1
  282. package/package.json +4 -4
  283. package/build/@types/common/components/ui/UiIcon.d.ts +0 -11
  284. package/build/@types/common/components/ui/UiIcon.d.ts.map +0 -1
  285. package/build/@types/ocm/components/clusterConfiguration/CustomManifestCheckbox.d.ts +0 -8
  286. package/build/@types/ocm/components/clusterConfiguration/CustomManifestCheckbox.d.ts.map +0 -1
  287. package/build/cjs/common/components/ui/UiIcon.js +0 -11
  288. package/build/cjs/common/components/ui/UiIcon.js.map +0 -1
  289. package/build/cjs/ocm/components/clusterConfiguration/CustomManifestCheckbox.js +0 -58
  290. package/build/cjs/ocm/components/clusterConfiguration/CustomManifestCheckbox.js.map +0 -1
  291. package/lib/common/components/ui/UiIcon.tsx +0 -21
  292. package/lib/ocm/components/clusterConfiguration/CustomManifestCheckbox.tsx +0 -114
@@ -1,9 +1,6 @@
1
1
  import * as React from 'react';
2
- import {
3
- OPENSHIFT_LIFE_CYCLE_DATES_LINK,
4
- OpenshiftVersionOptionType,
5
- UiIcon,
6
- } from '../../../common';
2
+ import { Icon } from '@patternfly/react-core';
3
+ import { OPENSHIFT_LIFE_CYCLE_DATES_LINK, OpenshiftVersionOptionType } from '../../../common';
7
4
  import { TFunction } from 'i18next';
8
5
  import { ExclamationCircleIcon } from '@patternfly/react-icons/dist/js/icons/exclamation-circle-icon';
9
6
  import { ExclamationTriangleIcon } from '@patternfly/react-icons/dist/js/icons/exclamation-triangle-icon';
@@ -29,7 +26,9 @@ export const getOpenshiftVersionHelperText = (
29
26
  if (!versions.length && !isModal) {
30
27
  return (
31
28
  <>
32
- <UiIcon status="danger" size="sm" icon={<ExclamationCircleIcon />} />
29
+ <Icon status="danger" size="sm">
30
+ <ExclamationCircleIcon />
31
+ </Icon>
33
32
  &nbsp; {t('ai:No release image is available.')}
34
33
  </>
35
34
  );
@@ -50,7 +49,9 @@ export const getOpenshiftVersionHelperText = (
50
49
  }
51
50
  return (
52
51
  <>
53
- <UiIcon status="warning" icon={<ExclamationTriangleIcon />} />
52
+ <Icon status="warning">
53
+ <ExclamationTriangleIcon />
54
+ </Icon>
54
55
  &nbsp;
55
56
  {messageSelectedVersion}&nbsp;
56
57
  <OpenShiftLifeCycleDatesLink />
@@ -1,10 +1,26 @@
1
1
  import React from 'react';
2
- import { Content, ContentVariants, Alert, Grid } from '@patternfly/react-core';
2
+ import {
3
+ Content,
4
+ ContentVariants,
5
+ Alert,
6
+ AlertVariant,
7
+ Grid,
8
+ FormGroup,
9
+ Switch,
10
+ Tooltip,
11
+ Stack,
12
+ StackItem,
13
+ } from '@patternfly/react-core';
3
14
 
4
15
  import { CustomManifests } from './components/CustomManifests';
5
16
  import { Cluster } from '@openshift-assisted/types/assisted-installer-service';
6
17
  import { CustomManifestFormState } from './components/propTypes';
7
- import { ClusterWizardStepHeader } from '../../../../common';
18
+ import { ClustersAPI, ClusterWizardStepHeader, isThirdPartyCNI } from '../../../../common';
19
+ import { getFieldId } from '../../../../common/components/ui/formik';
20
+ import { isOciPlatformType } from '../../utils';
21
+ import DeleteCustomManifestModal from './DeleteCustomManifestModal';
22
+ import { ClustersService } from '../../../services';
23
+ import { useClusterWizardContext } from '../../clusterWizard/ClusterWizardContext';
8
24
 
9
25
  export const CustomManifestsPage = ({
10
26
  cluster,
@@ -12,22 +28,146 @@ export const CustomManifestsPage = ({
12
28
  }: {
13
29
  cluster: Cluster;
14
30
  onFormStateChange(formState: CustomManifestFormState): void;
15
- }) => (
16
- <Grid hasGutter>
17
- <Content>
18
- <ClusterWizardStepHeader>Custom manifests</ClusterWizardStepHeader>
19
- <Content component={ContentVariants.small}>
20
- Upload additional manifests that will be applied at the install time for advanced
21
- configuration of the cluster.
22
- </Content>
23
- </Content>
24
- <Alert
25
- isInline
26
- variant="warning"
27
- title={
28
- 'No validation is performed for the custom manifest contents. Only include resources that are necessary for initial setup to reduce the chance of installation failures.'
31
+ }) => {
32
+ const clusterWizardContext = useClusterWizardContext();
33
+ const isRequired = isThirdPartyCNI(cluster.networkType) || isOciPlatformType(cluster);
34
+ const [useCustomManifests, setUseCustomManifests] = React.useState(isRequired);
35
+ const [isDeleteModalOpen, setDeleteModalOpen] = React.useState(false);
36
+
37
+ React.useEffect(() => {
38
+ if (isRequired || clusterWizardContext.uiSettings?.customManifestsAdded) {
39
+ setUseCustomManifests(true);
40
+ }
41
+ }, [isRequired, clusterWizardContext]);
42
+
43
+ // The form unmounts when the switch is off, but its last state persists in the parent.
44
+ React.useEffect(() => {
45
+ if (!useCustomManifests) {
46
+ onFormStateChange({
47
+ isValid: true,
48
+ isSubmitting: false,
49
+ isAutoSaveRunning: false,
50
+ errors: {},
51
+ touched: {},
52
+ isEmpty: true,
53
+ });
54
+ }
55
+ }, [useCustomManifests, onFormStateChange]);
56
+
57
+ const handleSwitchChange = React.useCallback(
58
+ (_event: React.FormEvent<HTMLInputElement>, on: boolean) => {
59
+ if (!on && clusterWizardContext.uiSettings?.customManifestsAdded) {
60
+ setDeleteModalOpen(true);
61
+ } else {
62
+ setUseCustomManifests(on);
63
+ if (!on) {
64
+ void clusterWizardContext.updateUISettings({ customManifestsAdded: false });
65
+ }
29
66
  }
30
- />
31
- <CustomManifests cluster={cluster} onFormStateChange={onFormStateChange} />
32
- </Grid>
33
- );
67
+ },
68
+ [clusterWizardContext],
69
+ );
70
+
71
+ const handleCloseDeleteModal = React.useCallback(() => {
72
+ setDeleteModalOpen(false);
73
+ }, []);
74
+
75
+ const cleanCustomManifests = React.useCallback(async () => {
76
+ if (!clusterWizardContext.uiSettings?.customManifestsAdded || !cluster.id) return;
77
+ const { data: manifests } = await ClustersAPI.getManifests(cluster.id);
78
+ await ClustersService.removeClusterManifests(manifests, cluster.id);
79
+ setUseCustomManifests(false);
80
+ setDeleteModalOpen(false);
81
+ await clusterWizardContext.updateUISettings({ customManifestsAdded: false });
82
+ }, [cluster.id, clusterWizardContext]);
83
+
84
+ const fieldId = getFieldId('use-custom-manifests', 'switch');
85
+
86
+ const tooltipWhenDisabled = isRequired
87
+ ? 'Custom manifests are required when using a third-party CNI or Oracle Cloud Infrastructure.'
88
+ : '';
89
+
90
+ const showExternalPlatformReminder = isOciPlatformType(cluster);
91
+ const showThirdPartyCnIReminder = isThirdPartyCNI(cluster.networkType);
92
+ const showCombinedReminder = showExternalPlatformReminder && showThirdPartyCnIReminder;
93
+ let reminderAlerts: React.ReactNode = null;
94
+ if (showCombinedReminder) {
95
+ reminderAlerts = (
96
+ <Stack>
97
+ <StackItem>
98
+ <Alert
99
+ variant={AlertVariant.info}
100
+ isInline
101
+ title="You're using an external platform and a third-party CNI"
102
+ >
103
+ Make sure to upload the required custom and CNI manifests in this step.
104
+ </Alert>
105
+ </StackItem>
106
+ </Stack>
107
+ );
108
+ } else if (showExternalPlatformReminder) {
109
+ reminderAlerts = (
110
+ <Stack>
111
+ <StackItem>
112
+ <Alert variant={AlertVariant.info} isInline title="You're using an external platform">
113
+ Make sure to upload the required custom manifests in this step.
114
+ </Alert>
115
+ </StackItem>
116
+ </Stack>
117
+ );
118
+ } else if (showThirdPartyCnIReminder) {
119
+ reminderAlerts = (
120
+ <Stack>
121
+ <StackItem>
122
+ <Alert variant={AlertVariant.info} isInline title="You're using a third-party CNI">
123
+ Make sure to upload the required CNI manifests in this step.
124
+ </Alert>
125
+ </StackItem>
126
+ </Stack>
127
+ );
128
+ }
129
+
130
+ return (
131
+ <Grid hasGutter>
132
+ <Content>
133
+ <ClusterWizardStepHeader>Custom manifests</ClusterWizardStepHeader>
134
+ <Content component={ContentVariants.small}>
135
+ Upload additional manifests that will be applied at the install time for advanced
136
+ configuration of the cluster.
137
+ </Content>
138
+ </Content>
139
+ <FormGroup fieldId={fieldId} label="">
140
+ <Tooltip content={tooltipWhenDisabled} hidden={!isRequired}>
141
+ <span style={{ display: 'inline-block', cursor: isRequired ? 'not-allowed' : undefined }}>
142
+ <Switch
143
+ id={fieldId}
144
+ data-testid={fieldId}
145
+ data-checked={useCustomManifests}
146
+ isChecked={useCustomManifests}
147
+ isDisabled={isRequired}
148
+ onChange={handleSwitchChange}
149
+ label="Use custom manifests"
150
+ />
151
+ </span>
152
+ </Tooltip>
153
+ </FormGroup>
154
+ {!useCustomManifests && <div style={{ minHeight: '250px' }} aria-hidden="true" />}
155
+ {useCustomManifests && (
156
+ <>
157
+ {reminderAlerts}
158
+ <Alert
159
+ isInline
160
+ variant="warning"
161
+ title="No validation is performed for the custom manifest contents. Only include resources that are necessary for initial setup to reduce the chance of installation failures."
162
+ />
163
+ <CustomManifests cluster={cluster} onFormStateChange={onFormStateChange} />
164
+ </>
165
+ )}
166
+ <DeleteCustomManifestModal
167
+ isOpen={isDeleteModalOpen}
168
+ onClose={handleCloseDeleteModal}
169
+ onDelete={() => void cleanCustomManifests()}
170
+ />
171
+ </Grid>
172
+ );
173
+ };
@@ -12,6 +12,7 @@ import { CustomManifest } from './CustomManifest';
12
12
  import { getEmptyManifest, getManifestName } from './utils';
13
13
  import { CustomManifestValues } from '../data/dataTypes';
14
14
  import { selectCurrentClusterPermissionsState } from '../../../../store/slices/current-cluster/selectors';
15
+ import { useClusterWizardContext } from '../../../clusterWizard/ClusterWizardContext';
15
16
 
16
17
  const fieldName = 'manifests';
17
18
 
@@ -40,6 +41,8 @@ export const CustomManifestsArray = ({
40
41
  clusterId,
41
42
  ...props
42
43
  }: CustomManifestsArrayProps) => {
44
+ const { updateUISettings } = useClusterWizardContext();
45
+
43
46
  const [field, { error }] = useField<CustomManifestValues[]>({
44
47
  name: fieldName,
45
48
  });
@@ -67,6 +70,7 @@ export const CustomManifestsArray = ({
67
70
  manifestToRemove['folder'] as string,
68
71
  manifestToRemove['filename'],
69
72
  );
73
+ await updateUISettings({ customManifestsUpdated: true });
70
74
  } catch (e) {
71
75
  handleApiError(e, () =>
72
76
  addAlert({
@@ -77,7 +81,7 @@ export const CustomManifestsArray = ({
77
81
  }
78
82
  }
79
83
  },
80
- [addAlert, field.value],
84
+ [addAlert, field.value, updateUISettings],
81
85
  );
82
86
 
83
87
  const onConfirm = React.useCallback(async (): Promise<void> => {
@@ -4,7 +4,6 @@ import { useSelector } from 'react-redux';
4
4
  import { Stack, StackItem, Tooltip } from '@patternfly/react-core';
5
5
  import {
6
6
  canBeDualStack,
7
- canSelectNetworkTypeSDN,
8
7
  CpuArchitecture,
9
8
  DUAL_STACK,
10
9
  HostSubnets,
@@ -23,9 +22,9 @@ import {
23
22
  VirtualIPControlGroupProps,
24
23
  AdvancedNetworkFields,
25
24
  } from '../../../../common/components/clusterWizard/networkingSteps';
25
+ import { NetworkTypeDropDown } from './NetworkTypeDropdown';
26
26
  import { selectCurrentClusterPermissionsState } from '../../../store/slices/current-cluster/selectors';
27
27
  import { OcmCheckbox } from '../../ui/OcmFormFields';
28
- import { NetworkTypeControlGroup } from '../../../../common/components/clusterWizard/networkingSteps/NetworkTypeControlGroup';
29
28
  import {
30
29
  NewFeatureSupportLevelData,
31
30
  NewFeatureSupportLevelMap,
@@ -144,9 +143,6 @@ const NetworkConfiguration = ({
144
143
  const isDualStack = values.stackType === DUAL_STACK;
145
144
 
146
145
  const isDualStackSelectable = React.useMemo(() => canBeDualStack(hostSubnets), [hostSubnets]);
147
- const isSDNSelectable = React.useMemo(() => {
148
- return canSelectNetworkTypeSDN(isSNOCluster, isDualStack);
149
- }, [isSNOCluster, isDualStack]);
150
146
 
151
147
  const [isAdvanced, setAdvanced] = React.useState(
152
148
  isDualStack || isAdvNetworkConf(cluster, defaultNetworkSettings),
@@ -259,11 +255,12 @@ const NetworkConfiguration = ({
259
255
  />
260
256
  </StackItem>
261
257
  )}
262
- {isSDNSupported && (
263
- <StackItem>
264
- <NetworkTypeControlGroup isDisabled={isViewerMode} isSDNSelectable={isSDNSelectable} />
265
- </StackItem>
266
- )}
258
+ <StackItem>
259
+ <NetworkTypeDropDown
260
+ isDisabled={isViewerMode}
261
+ featureSupportLevelData={featureSupportLevelData}
262
+ />
263
+ </StackItem>
267
264
 
268
265
  {!(isUserManagedNetworking && !isSNOCluster) && (
269
266
  <StackItem>
@@ -0,0 +1,142 @@
1
+ import React from 'react';
2
+ import { useField, useFormikContext } from 'formik';
3
+ import {
4
+ Alert,
5
+ AlertVariant,
6
+ Dropdown,
7
+ DropdownItem,
8
+ FormGroup,
9
+ MenuToggle,
10
+ MenuToggleElement,
11
+ Stack,
12
+ StackItem,
13
+ Tooltip,
14
+ } from '@patternfly/react-core';
15
+ import { getFieldId, ExternalLink } from '../../../../common/components/ui';
16
+ import {
17
+ NewFeatureSupportLevelMap,
18
+ useNewFeatureSupportLevel,
19
+ } from '../../../../common/components/newFeatureSupportLevels';
20
+ import NewFeatureSupportLevelBadge from '../../../../common/components/newFeatureSupportLevels/NewFeatureSupportLevelBadge';
21
+ import type { NetworkConfigurationValues } from '../../../../common/types/clusters';
22
+ import {
23
+ NETWORK_TYPE_OVN,
24
+ NETWORK_TYPE_LABELS,
25
+ NETWORK_TYPE_FEATURE_IDS,
26
+ isThirdPartyCNI,
27
+ } from '../../../../common/types/networkType';
28
+ import { RED_HAT_CNI_SUPPORT_MATRIX_LINK } from '../../../../common/config/docs_links';
29
+
30
+ export interface NetworkTypeDropDownProps {
31
+ isDisabled?: boolean;
32
+ featureSupportLevelData: NewFeatureSupportLevelMap | null;
33
+ }
34
+
35
+ export const NetworkTypeDropDown = ({
36
+ isDisabled = false,
37
+ featureSupportLevelData,
38
+ }: NetworkTypeDropDownProps) => {
39
+ const [field, , { setValue }] = useField<string>('networkType');
40
+ const [isOpen, setOpen] = React.useState(false);
41
+ const { values } = useFormikContext<NetworkConfigurationValues>();
42
+ const { getFeatureDisabledReason, getFeatureSupportLevel } = useNewFeatureSupportLevel();
43
+ const fieldId = getFieldId('networkType', 'input');
44
+ const showThirdPartyBanner = isThirdPartyCNI(values.networkType);
45
+
46
+ React.useEffect(() => {
47
+ if (
48
+ getFeatureDisabledReason(
49
+ NETWORK_TYPE_FEATURE_IDS[field.value],
50
+ featureSupportLevelData ?? undefined,
51
+ ) !== undefined
52
+ ) {
53
+ setValue(NETWORK_TYPE_OVN);
54
+ }
55
+ }, [field.value, setValue, featureSupportLevelData, getFeatureDisabledReason]);
56
+
57
+ const currentDisplayValue = NETWORK_TYPE_LABELS[field.value];
58
+
59
+ const dropdownItems = Object.entries(NETWORK_TYPE_LABELS).map(([value, label]) => {
60
+ const disabledReason = getFeatureDisabledReason(
61
+ NETWORK_TYPE_FEATURE_IDS[value],
62
+ featureSupportLevelData ?? undefined,
63
+ );
64
+ const featureId = NETWORK_TYPE_FEATURE_IDS[value];
65
+ const supportLevel = featureId
66
+ ? getFeatureSupportLevel(featureId, featureSupportLevelData ?? undefined)
67
+ : undefined;
68
+ const shouldDisable =
69
+ supportLevel === 'unavailable' ||
70
+ supportLevel === 'unsupported' ||
71
+ disabledReason !== undefined;
72
+ return (
73
+ <DropdownItem key={value} id={value} value={value} isAriaDisabled={shouldDisable}>
74
+ <Tooltip hidden={!disabledReason} content={disabledReason} position="top">
75
+ <div>
76
+ {label}
77
+ <span onClick={(event) => event.stopPropagation()}>
78
+ <NewFeatureSupportLevelBadge featureId={featureId} supportLevel={supportLevel} />
79
+ </span>
80
+ </div>
81
+ </Tooltip>
82
+ </DropdownItem>
83
+ );
84
+ });
85
+
86
+ const onSelect = (event?: React.MouseEvent<Element, MouseEvent>, nextValue?: string): void => {
87
+ if (nextValue) {
88
+ setValue(nextValue);
89
+ }
90
+ setOpen(false);
91
+ };
92
+
93
+ const toggle = (toggleRef: React.Ref<MenuToggleElement>) => (
94
+ <MenuToggle
95
+ ref={toggleRef}
96
+ onClick={() => setOpen(!isOpen)}
97
+ isExpanded={isOpen}
98
+ isDisabled={isDisabled}
99
+ id={fieldId}
100
+ className="pf-v6-u-w-100"
101
+ style={{ minWidth: '100%' }}
102
+ >
103
+ {currentDisplayValue}
104
+ </MenuToggle>
105
+ );
106
+
107
+ return (
108
+ <Stack hasGutter>
109
+ <StackItem>
110
+ <FormGroup fieldId={fieldId} label="Network type" id={`form-control__${fieldId}`}>
111
+ <Dropdown
112
+ id={`${fieldId}-dropdown`}
113
+ onOpenChange={(open: boolean) => setOpen(open)}
114
+ onSelect={onSelect}
115
+ toggle={toggle}
116
+ isOpen={isOpen}
117
+ >
118
+ {dropdownItems}
119
+ </Dropdown>
120
+ </FormGroup>
121
+ </StackItem>
122
+ {showThirdPartyBanner && (
123
+ <StackItem>
124
+ <Alert variant={AlertVariant.warning} isInline title="Third-party CNI">
125
+ <Stack hasGutter>
126
+ <StackItem>
127
+ Third-party CNIs require uploading CNI manifests. Please verify you have the
128
+ required manifests and that the chosen CNI is compatible with your platform and
129
+ OpenShift version.
130
+ </StackItem>
131
+ <StackItem>
132
+ <ExternalLink href={RED_HAT_CNI_SUPPORT_MATRIX_LINK}>
133
+ Red Hat CNI Support Matrix
134
+ </ExternalLink>
135
+ </StackItem>
136
+ </Stack>
137
+ </Alert>
138
+ </StackItem>
139
+ )}
140
+ </Stack>
141
+ );
142
+ };
@@ -1,14 +1,17 @@
1
1
  import React from 'react';
2
+ import { Icon } from '@patternfly/react-core';
2
3
  import { ExclamationTriangleIcon } from '@patternfly/react-icons/dist/js/icons/exclamation-triangle-icon';
3
- import { UiIcon, SupportedPlatformType } from '../../../../common';
4
+ import { SupportedPlatformType } from '../../../../common';
4
5
  import { ExternalPlatformLinks } from './constants';
5
6
 
6
7
  const PlatformIntegrationNote = ({ platformType }: { platformType: SupportedPlatformType }) => {
7
8
  const integrationPlatformLink = ExternalPlatformLinks[platformType];
8
9
  return (
9
10
  <p>
10
- <UiIcon status="warning" icon={<ExclamationTriangleIcon />} /> You will need to modify your
11
- platform configuration after cluster installation is completed.{' '}
11
+ <Icon status="warning">
12
+ <ExclamationTriangleIcon />
13
+ </Icon>{' '}
14
+ You will need to modify your platform configuration after cluster installation is completed.{' '}
12
15
  {!!integrationPlatformLink && (
13
16
  <a
14
17
  href={integrationPlatformLink || ''}
@@ -1,12 +1,8 @@
1
1
  import { Title } from '@patternfly/react-core';
2
2
  import { Table, TableVariant, Tbody, Td, Tr } from '@patternfly/react-table';
3
3
  import React from 'react';
4
- import { genericTableRowKey, isDualStack } from '../../../../common';
5
- import {
6
- getManagementType,
7
- getStackTypeLabel,
8
- getNetworkType,
9
- } from '../../clusterDetail/ClusterProperties';
4
+ import { genericTableRowKey, isDualStack, NETWORK_TYPE_LABELS } from '../../../../common';
5
+ import { getManagementType, getStackTypeLabel } from '../../clusterDetail/ClusterProperties';
10
6
  import { Cluster } from '@openshift-assisted/types/assisted-installer-service';
11
7
 
12
8
  type ReviewTableRowsType = {
@@ -201,7 +197,7 @@ export const ReviewNetworkingTable = ({ cluster }: { cluster: Cluster }) => {
201
197
  cells: [
202
198
  { title: 'Networking type' },
203
199
  {
204
- title: getNetworkType(cluster.networkType),
200
+ title: cluster.networkType ? NETWORK_TYPE_LABELS[cluster.networkType] : '-',
205
201
  props: { 'data-testid': 'networking-type', colSpan: 2 },
206
202
  },
207
203
  ],
@@ -6,20 +6,13 @@ import {
6
6
  Grid,
7
7
  GridItem,
8
8
  gridSpans,
9
+ Icon,
9
10
  } from '@patternfly/react-core';
10
11
  import { CheckCircleIcon } from '@patternfly/react-icons/dist/js/icons/check-circle-icon';
11
12
  import { ExclamationCircleIcon } from '@patternfly/react-icons/dist/js/icons/exclamation-circle-icon';
12
13
  import { ExclamationTriangleIcon } from '@patternfly/react-icons/dist/js/icons/exclamation-triangle-icon';
13
14
  import { InfoCircleIcon } from '@patternfly/react-icons/dist/js/icons/info-circle-icon';
14
- import { t_global_color_status_success_default as okColor } from '@patternfly/react-tokens/dist/js/t_global_color_status_success_default';
15
- import { t_global_color_status_info_100 as infoColor } from '@patternfly/react-tokens/dist/js/t_global_color_status_info_100';
16
- import {
17
- ClusterValidations,
18
- DetailItem,
19
- DetailList,
20
- HostsValidations,
21
- UiIcon,
22
- } from '../../../../common';
15
+ import { ClusterValidations, DetailItem, DetailList, HostsValidations } from '../../../../common';
23
16
  import { useClusterWizardContext } from '../../clusterWizard/ClusterWizardContext';
24
17
  import { useOpenShiftVersionsContext } from '../../clusterWizard/OpenShiftVersionsContext';
25
18
  import { wizardStepNames } from '../../clusterWizard/constants';
@@ -102,13 +95,29 @@ const PreflightCheckInfo = ({
102
95
 
103
96
  const getCheckIcon = (validationStatuses: string[]) => {
104
97
  if (validationStatuses.includes('failure') || validationStatuses.includes('error')) {
105
- return <UiIcon size="sm" status="danger" icon={<ExclamationCircleIcon />} />;
98
+ return (
99
+ <Icon size="sm" status="danger">
100
+ <ExclamationCircleIcon />
101
+ </Icon>
102
+ );
106
103
  } else if (validationStatuses.includes('warning')) {
107
- return <UiIcon size="sm" status="warning" icon={<ExclamationTriangleIcon />} />;
104
+ return (
105
+ <Icon size="sm" status="warning">
106
+ <ExclamationTriangleIcon />
107
+ </Icon>
108
+ );
108
109
  } else if (validationStatuses.includes('pending')) {
109
- return <UiIcon size="sm" status="info" icon={<InfoCircleIcon />} />;
110
+ return (
111
+ <Icon size="sm" status="info">
112
+ <InfoCircleIcon />
113
+ </Icon>
114
+ );
110
115
  }
111
- return <UiIcon size="sm" icon={<CheckCircleIcon color={okColor.value} />} />;
116
+ return (
117
+ <Icon status="success" size="sm">
118
+ <CheckCircleIcon />
119
+ </Icon>
120
+ );
112
121
  };
113
122
 
114
123
  const PreflightChecksDetailCollapsed = ({ cluster }: { cluster: Cluster }) => {
@@ -122,9 +131,13 @@ const PreflightChecksDetailCollapsed = ({ cluster }: { cluster: Cluster }) => {
122
131
  );
123
132
 
124
133
  const supportLevelIcon = isFullySupported ? (
125
- <UiIcon size="sm" icon={<CheckCircleIcon color={okColor.value} />} />
134
+ <Icon status="success" size="sm">
135
+ <CheckCircleIcon />
136
+ </Icon>
126
137
  ) : (
127
- <UiIcon size="sm" icon={<InfoCircleIcon color={infoColor.value} />} />
138
+ <Icon status="info" size="sm">
139
+ <InfoCircleIcon />
140
+ </Icon>
128
141
  );
129
142
 
130
143
  const clusterValidations = React.useMemo(
@@ -5,7 +5,7 @@ import {
5
5
  DetailList,
6
6
  getDefaultCpuArchitecture,
7
7
  isDualStack,
8
- NETWORK_TYPE_SDN,
8
+ NETWORK_TYPE_LABELS,
9
9
  selectApiVip,
10
10
  selectIngressVip,
11
11
  selectIpv4Cidr,
@@ -25,11 +25,7 @@ type ClusterPropertiesProps = {
25
25
  };
26
26
 
27
27
  export const getNetworkType = (clusterNetworkType: Cluster['networkType']): string => {
28
- let networkType: string;
29
- clusterNetworkType === NETWORK_TYPE_SDN
30
- ? (networkType = 'Software-Defined Networking (SDN)')
31
- : (networkType = 'Open Virtual Network (OVN)');
32
- return networkType;
28
+ return NETWORK_TYPE_LABELS[clusterNetworkType || ''];
33
29
  };
34
30
 
35
31
  export const getManagementType = ({ userManagedNetworking }: Cluster): string => {
@@ -1,12 +1,14 @@
1
1
  import React, { useState } from 'react';
2
- import { UiIcon, hostStatus } from '../../../common';
2
+ import { ExpandableSection, Icon } from '@patternfly/react-core';
3
+ import ExclamationTriangleIcon from '@patternfly/react-icons/dist/js/icons/exclamation-triangle-icon';
4
+
5
+ import { hostStatus } from '../../../common';
3
6
  import ClusterHostsTable from '../hosts/ClusterHostsTable';
4
7
  import { getHostsWithTimeout, getMostSevereHostStatus } from './utils';
5
- import { ExpandableSection } from '@patternfly/react-core';
6
- import './HostInventoryExpandable.css';
7
8
  import { Cluster } from '@openshift-assisted/types/assisted-installer-service';
8
9
  import { useTranslation } from '../../../common/hooks/use-translation-wrapper';
9
- import ExclamationTriangleIcon from '@patternfly/react-icons/dist/js/icons/exclamation-triangle-icon';
10
+
11
+ import './HostInventoryExpandable.css';
10
12
 
11
13
  type HostInventoryExpandableProps = {
12
14
  cluster: Cluster;
@@ -33,7 +35,11 @@ const HostInventoryExpandable = ({ cluster }: HostInventoryExpandableProps) => {
33
35
  const mostSevereHostStatus = getMostSevereHostStatus(hosts);
34
36
  const hostStatusDef = mostSevereHostStatus ? hostStatus(t)[mostSevereHostStatus] : null;
35
37
  const someHostHasTimeout = getHostsWithTimeout(hosts);
36
- const warningIcon = <UiIcon size="sm" status="warning" icon={<ExclamationTriangleIcon />} />;
38
+ const warningIcon = (
39
+ <Icon size="sm" status="warning">
40
+ <ExclamationTriangleIcon />
41
+ </Icon>
42
+ );
37
43
  return (
38
44
  <ExpandableSection
39
45
  toggleContent={
@@ -1,10 +1,11 @@
1
1
  import React from 'react';
2
- import { UiIcon, getOpenshiftVersionText } from '../../../common';
3
- import { useOpenShiftVersionsContext } from '../clusterWizard/OpenShiftVersionsContext';
2
+ import { Popover, Content, ContentVariants, Icon } from '@patternfly/react-core';
4
3
  import { ExclamationTriangleIcon } from '@patternfly/react-icons/dist/js/icons/exclamation-triangle-icon';
5
- import { Popover, Content, ContentVariants } from '@patternfly/react-core';
6
- import { useTranslation } from '../../../common/hooks/use-translation-wrapper';
4
+
7
5
  import { Cluster } from '@openshift-assisted/types/assisted-installer-service';
6
+ import { getOpenshiftVersionText } from '../../../common';
7
+ import { useOpenShiftVersionsContext } from '../clusterWizard/OpenShiftVersionsContext';
8
+ import { useTranslation } from '../../../common/hooks/use-translation-wrapper';
8
9
 
9
10
  const UnsupportedVersion = ({ version }: { version: string }) => {
10
11
  const { t } = useTranslation();
@@ -18,7 +19,9 @@ const UnsupportedVersion = ({ version }: { version: string }) => {
18
19
  <Content component="p">
19
20
  {version} &nbsp;
20
21
  <Popover bodyContent={hint}>
21
- <UiIcon size="sm" status="warning" icon={<ExclamationTriangleIcon />} />
22
+ <Icon size="sm" status="warning">
23
+ <ExclamationTriangleIcon />
24
+ </Icon>
22
25
  </Popover>
23
26
  </Content>
24
27
  );