@openshift-assisted/ui-lib 2.50.0 → 2.51.0

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 (296) 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/VirtualIPControlGroup.d.ts.map +1 -1
  23. package/build/@types/common/components/hosts/HostPropertyValidationPopover.d.ts.map +1 -1
  24. package/build/@types/common/components/hosts/HostStatus.d.ts.map +1 -1
  25. package/build/@types/common/components/hosts/HostValidationGroups.d.ts.map +1 -1
  26. package/build/@types/common/components/hosts/Hostname.d.ts.map +1 -1
  27. package/build/@types/common/components/hosts/MassChangeHostnameModal.d.ts.map +1 -1
  28. package/build/@types/common/components/hosts/VMRebootConfigurationInfo.d.ts.map +1 -1
  29. package/build/@types/common/components/hosts/status.d.ts.map +1 -1
  30. package/build/@types/common/components/storage/DisksTable.d.ts.map +1 -1
  31. package/build/@types/common/components/storage/StorageUtils.d.ts +1 -1
  32. package/build/@types/common/components/storage/StorageUtils.d.ts.map +1 -1
  33. package/build/@types/common/components/ui/WizardNavItem.d.ts.map +1 -1
  34. package/build/@types/common/components/ui/formik/RemovableField.d.ts.map +1 -1
  35. package/build/@types/common/components/ui/formik/RichInputField.d.ts.map +1 -1
  36. package/build/@types/common/components/ui/index.d.ts +0 -1
  37. package/build/@types/common/components/ui/index.d.ts.map +1 -1
  38. package/build/@types/common/config/constants.d.ts +7 -0
  39. package/build/@types/common/config/constants.d.ts.map +1 -1
  40. package/build/@types/common/config/docs_links.d.ts +1 -0
  41. package/build/@types/common/config/docs_links.d.ts.map +1 -1
  42. package/build/@types/common/types/ui-settings.d.ts +0 -1
  43. package/build/@types/common/types/ui-settings.d.ts.map +1 -1
  44. package/build/@types/common/validationSchemas/addressValidation.d.ts.map +1 -1
  45. package/build/@types/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.d.ts.map +1 -1
  46. package/build/@types/ocm/components/clusterConfiguration/OcmOperatorProgressItem.d.ts.map +1 -1
  47. package/build/@types/ocm/components/clusterConfiguration/OpenshiftVersionHelperText.d.ts.map +1 -1
  48. package/build/@types/ocm/components/clusterConfiguration/manifestsConfiguration/CustomManifestsPage.d.ts.map +1 -1
  49. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfiguration.d.ts.map +1 -1
  50. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationForm.d.ts.map +1 -1
  51. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/NetworkTypeDropdown.d.ts +9 -0
  52. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/NetworkTypeDropdown.d.ts.map +1 -0
  53. package/build/@types/ocm/components/clusterConfiguration/platformIntegration/PlatformIntegrationNote.d.ts.map +1 -1
  54. package/build/@types/ocm/components/clusterConfiguration/review/ReviewNetworkingTable.d.ts.map +1 -1
  55. package/build/@types/ocm/components/clusterConfiguration/review/ReviewPreflightChecks.d.ts.map +1 -1
  56. package/build/@types/ocm/components/clusterConfiguration/staticIp/commonValidationSchemas.d.ts.map +1 -1
  57. package/build/@types/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/FormViewHostsFields.d.ts.map +1 -1
  58. package/build/@types/ocm/components/clusterConfiguration/staticIp/components/FormViewNetworkWide/formViewNetworkWideValidationSchema.d.ts +22 -0
  59. package/build/@types/ocm/components/clusterConfiguration/staticIp/components/FormViewNetworkWide/formViewNetworkWideValidationSchema.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 -8
  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/OptionalConfigurationsStep.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/components/utils.d.ts +1 -0
  80. package/build/@types/ocm/components/utils.d.ts.map +1 -1
  81. package/build/@types/ocm/hooks/useUISettings.d.ts.map +1 -1
  82. package/build/@types/ocm/services/ClusterDetailsService.d.ts +1 -2
  83. package/build/@types/ocm/services/ClusterDetailsService.d.ts.map +1 -1
  84. package/build/@types/ocm/services/types.d.ts +0 -1
  85. package/build/@types/ocm/services/types.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/Hypershift/DetailsPage/ConditionsTable.js +7 -6
  92. package/build/cjs/cim/components/Hypershift/DetailsPage/ConditionsTable.js.map +1 -1
  93. package/build/cjs/cim/components/Hypershift/DetailsPage/HostedClusterProgress.js +3 -2
  94. package/build/cjs/cim/components/Hypershift/DetailsPage/HostedClusterProgress.js.map +1 -1
  95. package/build/cjs/cim/components/Hypershift/DetailsPage/NodePoolsProgress.js +2 -2
  96. package/build/cjs/cim/components/Hypershift/DetailsPage/NodePoolsProgress.js.map +1 -1
  97. package/build/cjs/cim/components/Hypershift/utils/status.js +8 -7
  98. package/build/cjs/cim/components/Hypershift/utils/status.js.map +1 -1
  99. package/build/cjs/cim/components/InfraEnv/EnvironmentDetails.js +4 -4
  100. package/build/cjs/cim/components/InfraEnv/EnvironmentDetails.js.map +1 -1
  101. package/build/cjs/cim/components/InfraEnv/InfraEnvHostsTabAgentsWarning.js +3 -3
  102. package/build/cjs/cim/components/InfraEnv/InfraEnvHostsTabAgentsWarning.js.map +1 -1
  103. package/build/cjs/cim/components/helpers/agentStatus.js +3 -2
  104. package/build/cjs/cim/components/helpers/agentStatus.js.map +1 -1
  105. package/build/cjs/cim/components/modals/MassDeleteAgentModal.js +2 -2
  106. package/build/cjs/cim/components/modals/MassDeleteAgentModal.js.map +1 -1
  107. package/build/cjs/common/components/clusterConfiguration/DiscoveryTroubleshootingModal.js +2 -1
  108. package/build/cjs/common/components/clusterConfiguration/DiscoveryTroubleshootingModal.js.map +1 -1
  109. package/build/cjs/common/components/clusterDetail/FinalizingProgress.js +8 -7
  110. package/build/cjs/common/components/clusterDetail/FinalizingProgress.js.map +1 -1
  111. package/build/cjs/common/components/clusterDetail/OperatorsProgressItem.js +4 -4
  112. package/build/cjs/common/components/clusterDetail/OperatorsProgressItem.js.map +1 -1
  113. package/build/cjs/common/components/clusterDetail/ProgressBarTexts.js +5 -4
  114. package/build/cjs/common/components/clusterDetail/ProgressBarTexts.js.map +1 -1
  115. package/build/cjs/common/components/clusterWizard/ReviewValidations.js +7 -6
  116. package/build/cjs/common/components/clusterWizard/ReviewValidations.js.map +1 -1
  117. package/build/cjs/common/components/clusterWizard/networkingSteps/VirtualIPControlGroup.js +2 -2
  118. package/build/cjs/common/components/clusterWizard/networkingSteps/VirtualIPControlGroup.js.map +1 -1
  119. package/build/cjs/common/components/hosts/HostPropertyValidationPopover.js +6 -6
  120. package/build/cjs/common/components/hosts/HostPropertyValidationPopover.js.map +1 -1
  121. package/build/cjs/common/components/hosts/HostStatus.js +2 -1
  122. package/build/cjs/common/components/hosts/HostStatus.js.map +1 -1
  123. package/build/cjs/common/components/hosts/HostValidationGroups.js +6 -6
  124. package/build/cjs/common/components/hosts/HostValidationGroups.js.map +1 -1
  125. package/build/cjs/common/components/hosts/Hostname.js +4 -3
  126. package/build/cjs/common/components/hosts/Hostname.js.map +1 -1
  127. package/build/cjs/common/components/hosts/MassChangeHostnameModal.js +2 -2
  128. package/build/cjs/common/components/hosts/MassChangeHostnameModal.js.map +1 -1
  129. package/build/cjs/common/components/hosts/VMRebootConfigurationInfo.js +2 -1
  130. package/build/cjs/common/components/hosts/VMRebootConfigurationInfo.js.map +1 -1
  131. package/build/cjs/common/components/hosts/status.js +19 -13
  132. package/build/cjs/common/components/hosts/status.js.map +1 -1
  133. package/build/cjs/common/components/storage/DisksTable.js +4 -2
  134. package/build/cjs/common/components/storage/DisksTable.js.map +1 -1
  135. package/build/cjs/common/components/storage/StorageUtils.js +3 -2
  136. package/build/cjs/common/components/storage/StorageUtils.js.map +1 -1
  137. package/build/cjs/common/components/ui/WizardNavItem.js +2 -2
  138. package/build/cjs/common/components/ui/WizardNavItem.js.map +1 -1
  139. package/build/cjs/common/components/ui/formik/RemovableField.js +3 -3
  140. package/build/cjs/common/components/ui/formik/RemovableField.js.map +1 -1
  141. package/build/cjs/common/components/ui/formik/RichInputField.js +4 -4
  142. package/build/cjs/common/components/ui/formik/RichInputField.js.map +1 -1
  143. package/build/cjs/common/components/ui/formik/TextAreaField.js +1 -1
  144. package/build/cjs/common/components/ui/formik/TextAreaField.js.map +1 -1
  145. package/build/cjs/common/components/ui/index.js +1 -3
  146. package/build/cjs/common/components/ui/index.js.map +1 -1
  147. package/build/cjs/common/config/constants.js +19 -2
  148. package/build/cjs/common/config/constants.js.map +1 -1
  149. package/build/cjs/common/config/docs_links.js +3 -2
  150. package/build/cjs/common/config/docs_links.js.map +1 -1
  151. package/build/cjs/common/validationSchemas/addressValidation.js +19 -5
  152. package/build/cjs/common/validationSchemas/addressValidation.js.map +1 -1
  153. package/build/cjs/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.js +1 -7
  154. package/build/cjs/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.js.map +1 -1
  155. package/build/cjs/ocm/components/clusterConfiguration/OcmOperatorProgressItem.js +4 -4
  156. package/build/cjs/ocm/components/clusterConfiguration/OcmOperatorProgressItem.js.map +1 -1
  157. package/build/cjs/ocm/components/clusterConfiguration/OpenshiftVersionHelperText.js +5 -2
  158. package/build/cjs/ocm/components/clusterConfiguration/OpenshiftVersionHelperText.js.map +1 -1
  159. package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/CustomManifestsPage.js +90 -6
  160. package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/CustomManifestsPage.js.map +1 -1
  161. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfiguration.js +3 -3
  162. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfiguration.js.map +1 -1
  163. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationForm.js +5 -2
  164. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationForm.js.map +1 -1
  165. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkTypeDropdown.js +68 -0
  166. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkTypeDropdown.js.map +1 -0
  167. package/build/cjs/ocm/components/clusterConfiguration/platformIntegration/PlatformIntegrationNote.js +5 -3
  168. package/build/cjs/ocm/components/clusterConfiguration/platformIntegration/PlatformIntegrationNote.js.map +1 -1
  169. package/build/cjs/ocm/components/clusterConfiguration/review/ReviewNetworkingTable.js +1 -1
  170. package/build/cjs/ocm/components/clusterConfiguration/review/ReviewNetworkingTable.js.map +1 -1
  171. package/build/cjs/ocm/components/clusterConfiguration/review/ReviewPreflightChecks.js +11 -7
  172. package/build/cjs/ocm/components/clusterConfiguration/review/ReviewPreflightChecks.js.map +1 -1
  173. package/build/cjs/ocm/components/clusterConfiguration/staticIp/commonValidationSchemas.js +5 -2
  174. package/build/cjs/ocm/components/clusterConfiguration/staticIp/commonValidationSchemas.js.map +1 -1
  175. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/FormViewHostsFields.js +1 -1
  176. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/FormViewHostsFields.js.map +1 -1
  177. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/FormViewNetworkWide/FormViewNetworkWide.js +1 -1
  178. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/FormViewNetworkWide/FormViewNetworkWide.js.map +1 -1
  179. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/FormViewNetworkWide/formViewNetworkWideValidationSchema.js +31 -3
  180. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/FormViewNetworkWide/formViewNetworkWideValidationSchema.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 +18 -10
  190. package/build/cjs/ocm/components/clusterWizard/ClusterDetails.js.map +1 -1
  191. package/build/cjs/ocm/components/clusterWizard/ClusterDetailsForm.js +4 -5
  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 -31
  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/OptionalConfigurationsStep.js +24 -46
  199. package/build/cjs/ocm/components/clusterWizard/disconnected/OptionalConfigurationsStep.js.map +1 -1
  200. package/build/cjs/ocm/components/clusterWizard/disconnected/ReviewStep.js +1 -1
  201. package/build/cjs/ocm/components/clusterWizard/disconnected/ReviewStep.js.map +1 -1
  202. package/build/cjs/ocm/components/clusterWizard/wizardTransition.js +9 -1
  203. package/build/cjs/ocm/components/clusterWizard/wizardTransition.js.map +1 -1
  204. package/build/cjs/ocm/components/clusters/ClusterStatus.js +13 -7
  205. package/build/cjs/ocm/components/clusters/ClusterStatus.js.map +1 -1
  206. package/build/cjs/ocm/components/featureSupportLevels/ReviewClusterFeatureSupportLevels.js +7 -6
  207. package/build/cjs/ocm/components/featureSupportLevels/ReviewClusterFeatureSupportLevels.js.map +1 -1
  208. package/build/cjs/ocm/components/featureSupportLevels/featureStateUtils.js +6 -0
  209. package/build/cjs/ocm/components/featureSupportLevels/featureStateUtils.js.map +1 -1
  210. package/build/cjs/ocm/components/ui/InfoLinkWithModal.js +2 -2
  211. package/build/cjs/ocm/components/ui/InfoLinkWithModal.js.map +1 -1
  212. package/build/cjs/ocm/components/utils.js +4 -1
  213. package/build/cjs/ocm/components/utils.js.map +1 -1
  214. package/build/cjs/ocm/hooks/useUISettings.js +0 -1
  215. package/build/cjs/ocm/hooks/useUISettings.js.map +1 -1
  216. package/build/cjs/ocm/services/ClusterDetailsService.js +2 -2
  217. package/build/cjs/ocm/services/ClusterDetailsService.js.map +1 -1
  218. package/lib/cim/components/Agent/BMHStatusInfo.tsx +12 -4
  219. package/lib/cim/components/Agent/MinimalHWRequirements.tsx +4 -2
  220. package/lib/cim/components/Hypershift/DetailsPage/ConditionsTable.tsx +13 -7
  221. package/lib/cim/components/Hypershift/DetailsPage/HostedClusterProgress.tsx +8 -4
  222. package/lib/cim/components/Hypershift/DetailsPage/NodePoolsProgress.tsx +6 -2
  223. package/lib/cim/components/Hypershift/utils/status.tsx +20 -9
  224. package/lib/cim/components/InfraEnv/EnvironmentDetails.tsx +11 -4
  225. package/lib/cim/components/InfraEnv/InfraEnvHostsTabAgentsWarning.tsx +4 -6
  226. package/lib/cim/components/helpers/agentStatus.tsx +7 -3
  227. package/lib/cim/components/modals/MassDeleteAgentModal.tsx +12 -5
  228. package/lib/common/components/clusterConfiguration/DiscoveryTroubleshootingModal.tsx +5 -2
  229. package/lib/common/components/clusterDetail/FinalizingProgress.tsx +21 -10
  230. package/lib/common/components/clusterDetail/OperatorsProgressItem.tsx +11 -5
  231. package/lib/common/components/clusterDetail/ProgressBarTexts.tsx +17 -5
  232. package/lib/common/components/clusterWizard/ReviewValidations.tsx +15 -6
  233. package/lib/common/components/clusterWizard/networkingSteps/VirtualIPControlGroup.tsx +0 -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 +18 -0
  249. package/lib/common/config/docs_links.ts +2 -0
  250. package/lib/common/types/ui-settings.ts +0 -1
  251. package/lib/common/validationSchemas/addressValidation.tsx +20 -12
  252. package/lib/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.tsx +1 -8
  253. package/lib/ocm/components/clusterConfiguration/OcmOperatorProgressItem.tsx +11 -5
  254. package/lib/ocm/components/clusterConfiguration/OpenshiftVersionHelperText.tsx +8 -7
  255. package/lib/ocm/components/clusterConfiguration/manifestsConfiguration/CustomManifestsPage.tsx +155 -20
  256. package/lib/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfiguration.tsx +8 -6
  257. package/lib/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationForm.tsx +6 -3
  258. package/lib/ocm/components/clusterConfiguration/networkConfiguration/NetworkTypeDropdown.tsx +157 -0
  259. package/lib/ocm/components/clusterConfiguration/platformIntegration/PlatformIntegrationNote.tsx +6 -3
  260. package/lib/ocm/components/clusterConfiguration/review/ReviewNetworkingTable.tsx +3 -7
  261. package/lib/ocm/components/clusterConfiguration/review/ReviewPreflightChecks.tsx +28 -15
  262. package/lib/ocm/components/clusterConfiguration/staticIp/commonValidationSchemas.tsx +8 -2
  263. package/lib/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/FormViewHostsFields.tsx +1 -0
  264. package/lib/ocm/components/clusterConfiguration/staticIp/components/FormViewNetworkWide/FormViewNetworkWide.tsx +2 -2
  265. package/lib/ocm/components/clusterConfiguration/staticIp/components/FormViewNetworkWide/formViewNetworkWideValidationSchema.tsx +63 -24
  266. package/lib/ocm/components/clusterDetail/ClusterProperties.tsx +2 -6
  267. package/lib/ocm/components/clusterDetail/HostInventoryExpandable.tsx +11 -5
  268. package/lib/ocm/components/clusterDetail/OpenShiftVersionDetail.tsx +8 -5
  269. package/lib/ocm/components/clusterDetail/ResetClusterModal.tsx +6 -3
  270. package/lib/ocm/components/clusterWizard/ClusterDetails.tsx +19 -14
  271. package/lib/ocm/components/clusterWizard/ClusterDetailsForm.tsx +5 -7
  272. package/lib/ocm/components/clusterWizard/ClusterWizardContext.tsx +0 -8
  273. package/lib/ocm/components/clusterWizard/ClusterWizardContextProvider.tsx +14 -54
  274. package/lib/ocm/components/clusterWizard/constants.ts +1 -0
  275. package/lib/ocm/components/clusterWizard/disconnected/OptionalConfigurationsStep.tsx +27 -65
  276. package/lib/ocm/components/clusterWizard/disconnected/ReviewStep.tsx +1 -1
  277. package/lib/ocm/components/clusterWizard/wizardTransition.ts +9 -1
  278. package/lib/ocm/components/clusters/ClusterStatus.tsx +30 -8
  279. package/lib/ocm/components/featureSupportLevels/ReviewClusterFeatureSupportLevels.tsx +12 -8
  280. package/lib/ocm/components/featureSupportLevels/featureStateUtils.ts +6 -0
  281. package/lib/ocm/components/ui/InfoLinkWithModal.tsx +4 -2
  282. package/lib/ocm/components/utils.ts +4 -0
  283. package/lib/ocm/hooks/useUISettings.ts +0 -1
  284. package/lib/ocm/services/ClusterDetailsService.ts +0 -3
  285. package/lib/ocm/services/types.ts +0 -1
  286. package/package.json +4 -4
  287. package/build/@types/common/components/ui/UiIcon.d.ts +0 -11
  288. package/build/@types/common/components/ui/UiIcon.d.ts.map +0 -1
  289. package/build/@types/ocm/components/clusterConfiguration/CustomManifestCheckbox.d.ts +0 -8
  290. package/build/@types/ocm/components/clusterConfiguration/CustomManifestCheckbox.d.ts.map +0 -1
  291. package/build/cjs/common/components/ui/UiIcon.js +0 -11
  292. package/build/cjs/common/components/ui/UiIcon.js.map +0 -1
  293. package/build/cjs/ocm/components/clusterConfiguration/CustomManifestCheckbox.js +0 -58
  294. package/build/cjs/ocm/components/clusterConfiguration/CustomManifestCheckbox.js.map +0 -1
  295. package/lib/common/components/ui/UiIcon.tsx +0 -21
  296. package/lib/ocm/components/clusterConfiguration/CustomManifestCheckbox.tsx +0 -114
@@ -1,12 +1,11 @@
1
1
  import * as React from 'react';
2
- import { Formik, useFormikContext } from 'formik';
2
+ import { Formik } from 'formik';
3
3
  import { TFunction } from 'i18next';
4
4
  import * as Yup from 'yup';
5
5
  import {
6
6
  ClusterWizardStep,
7
7
  TechnologyPreview,
8
8
  sshPublicKeyValidationSchema,
9
- pullSecretValidationSchema,
10
9
  getFormikErrorFields,
11
10
  httpProxyValidationSchema,
12
11
  noProxyValidationSchema,
@@ -15,16 +14,17 @@ import {
15
14
  CheckboxField,
16
15
  AdditionalNTPSourcesField,
17
16
  ProxyFieldsType,
17
+ PullSecret,
18
+ pullSecretValidationSchema,
18
19
  } from '../../../../common';
19
- import { Split, SplitItem, Grid, GridItem, Form, Content, Checkbox } from '@patternfly/react-core';
20
+ import { Split, SplitItem, Grid, GridItem, Form, Content } from '@patternfly/react-core';
20
21
  import { useClusterWizardContext } from '../ClusterWizardContext';
21
22
  import ClusterWizardFooter from '../ClusterWizardFooter';
22
23
  import ClusterWizardNavigation from '../ClusterWizardNavigation';
23
24
  import { WithErrorBoundary } from '../../../../common/components/ErrorHandling/WithErrorBoundary';
24
25
  import UploadSSH from '../../../../common/components/clusterConfiguration/UploadSSH';
25
- import PullSecretField from '../../../../common/components/ui/formik/PullSecretField';
26
26
  import { ProxyInputFields } from '../../../../common/components/clusterConfiguration/ProxyFields';
27
- import { isInOcm, handleApiError, getApiErrorMessage } from '../../../../common/api';
27
+ import { handleApiError, getApiErrorMessage } from '../../../../common/api';
28
28
  import { useAlerts } from '../../../../common/components/AlertsContextProvider';
29
29
  import { AlertVariant } from '@patternfly/react-core';
30
30
  import InfraEnvsService from '../../../services/InfraEnvsService';
@@ -43,22 +43,22 @@ import { HostsNetworkConfigurationType } from '../../../services/types';
43
43
  import { useTranslation } from '../../../../common/hooks/use-translation-wrapper';
44
44
  import { getDummyInfraEnvField } from '../../clusterConfiguration/staticIp/data/dummyData';
45
45
  import { ntpSourceValidationSchema } from '../../../../common/validationSchemas/ntpValidation';
46
+ import { isInOcm } from '../../../../common/api';
46
47
 
47
48
  const DEFAULT_CPU_ARCHITECTURE = 'x86_64' as const;
48
49
  const DISCONNECTED_IMAGE_TYPE = 'disconnected-iso' as const;
49
50
 
50
51
  type OptionalConfigurationsFormValues = ProxyFieldsType & {
51
52
  sshPublicKey?: string;
52
- pullSecret: string;
53
53
  enableNtpSources: boolean;
54
54
  additionalNtpSources?: string;
55
55
  hostsNetworkConfigurationType: HostsNetworkConfigurationType;
56
56
  rendezvousIp?: string;
57
+ pullSecret?: string;
57
58
  };
58
59
 
59
60
  const DEFAULT_INITIAL_VALUES: OptionalConfigurationsFormValues = {
60
61
  sshPublicKey: '',
61
- pullSecret: '',
62
62
  enableProxy: false,
63
63
  httpProxy: '',
64
64
  httpsProxy: '',
@@ -67,18 +67,15 @@ const DEFAULT_INITIAL_VALUES: OptionalConfigurationsFormValues = {
67
67
  additionalNtpSources: '',
68
68
  hostsNetworkConfigurationType: HostsNetworkConfigurationType.DHCP,
69
69
  rendezvousIp: '',
70
+ pullSecret: '',
70
71
  };
71
72
 
72
73
  /**
73
- * Rehydrate form values from infraEnv and optional stored pull secret (API does not return pull secret).
74
+ * Rehydrate form values from infraEnv when navigating back to this step.
74
75
  */
75
- const infraEnvToFormValues = (
76
- infraEnv: InfraEnv,
77
- storedPullSecret?: string,
78
- ): OptionalConfigurationsFormValues => ({
76
+ const infraEnvToFormValues = (infraEnv: InfraEnv): OptionalConfigurationsFormValues => ({
79
77
  ...DEFAULT_INITIAL_VALUES,
80
78
  sshPublicKey: infraEnv.sshAuthorizedKey ?? '',
81
- pullSecret: storedPullSecret ?? '',
82
79
  enableProxy: !!(infraEnv.proxy?.httpProxy || infraEnv.proxy?.httpsProxy),
83
80
  httpProxy: infraEnv.proxy?.httpProxy ?? '',
84
81
  httpsProxy: infraEnv.proxy?.httpsProxy ?? '',
@@ -86,7 +83,7 @@ const infraEnvToFormValues = (
86
83
  enableNtpSources: !!infraEnv.additionalNtpSources,
87
84
  additionalNtpSources: infraEnv.additionalNtpSources ?? '',
88
85
  hostsNetworkConfigurationType:
89
- infraEnv.hostsNetworkConfigurationType === 'static'
86
+ (infraEnv.staticNetworkConfig?.length ?? 0) > 0
90
87
  ? HostsNetworkConfigurationType.STATIC
91
88
  : HostsNetworkConfigurationType.DHCP,
92
89
  rendezvousIp: infraEnv.rendezvousIp ?? '',
@@ -105,7 +102,6 @@ const buildInfraEnvParams = (values: OptionalConfigurationsFormValues) => {
105
102
  const hasProxy = Object.keys(proxy).length > 0;
106
103
 
107
104
  return {
108
- pullSecret: values.pullSecret,
109
105
  ...(values.sshPublicKey && { sshAuthorizedKey: values.sshPublicKey }),
110
106
  ...(hasProxy && { proxy }),
111
107
  ...(values.additionalNtpSources && {
@@ -120,11 +116,10 @@ const buildInfraEnvParams = (values: OptionalConfigurationsFormValues) => {
120
116
  };
121
117
  };
122
118
 
123
- const getValidationSchema = (t: TFunction) =>
119
+ const getValidationSchema = (t: TFunction, requirePullSecret: boolean) =>
124
120
  Yup.lazy((values: OptionalConfigurationsFormValues) =>
125
121
  Yup.object().shape({
126
122
  sshPublicKey: sshPublicKeyValidationSchema(t),
127
- pullSecret: pullSecretValidationSchema(t).required('Required field'),
128
123
  enableProxy: Yup.boolean().required(),
129
124
  httpProxy: httpProxyValidationSchema({
130
125
  values,
@@ -151,40 +146,20 @@ const getValidationSchema = (t: TFunction) =>
151
146
  'Not a valid IP address',
152
147
  (value) => !value || ipValidationSchema(t).isValidSync(value),
153
148
  ),
149
+ ...(requirePullSecret && {
150
+ pullSecret: pullSecretValidationSchema(t).required(t('ai:Required field')),
151
+ }),
154
152
  }),
155
153
  );
156
154
 
157
- const PullSecretSync = () => {
158
- const defaultPullSecret = usePullSecret();
159
- const {
160
- setFieldValue,
161
- values: { pullSecret },
162
- } = useFormikContext<OptionalConfigurationsFormValues>();
163
-
164
- React.useEffect(() => {
165
- if (defaultPullSecret !== undefined && pullSecret === '') {
166
- setFieldValue('pullSecret', defaultPullSecret);
167
- }
168
- }, [defaultPullSecret, pullSecret, setFieldValue]);
169
-
170
- return null;
171
- };
172
-
173
155
  const OptionalConfigurationsStep = () => {
174
156
  const { clusterId } = useParams<{ clusterId: string }>();
175
157
  const [cluster, setCluster] = React.useState<Cluster | null>(null);
176
158
  const { t } = useTranslation();
159
+ const defaultPullSecret = usePullSecret();
177
160
 
178
- const {
179
- moveNext,
180
- moveBack,
181
- setDisconnectedInfraEnv,
182
- disconnectedInfraEnv,
183
- disconnectedFormPullSecret,
184
- setDisconnectedFormPullSecret,
185
- disconnectedFormEditPullSecret,
186
- setDisconnectedFormEditPullSecret,
187
- } = useClusterWizardContext();
161
+ const { moveNext, moveBack, setDisconnectedInfraEnv, disconnectedInfraEnv } =
162
+ useClusterWizardContext();
188
163
  const { addAlert, clearAlerts } = useAlerts();
189
164
 
190
165
  React.useEffect(() => {
@@ -209,14 +184,14 @@ const OptionalConfigurationsStep = () => {
209
184
  }, [clusterId, addAlert, t]);
210
185
 
211
186
  const initialValues: OptionalConfigurationsFormValues = disconnectedInfraEnv
212
- ? infraEnvToFormValues(disconnectedInfraEnv, disconnectedFormPullSecret)
187
+ ? infraEnvToFormValues(disconnectedInfraEnv)
213
188
  : DEFAULT_INITIAL_VALUES;
214
189
 
215
190
  return (
216
191
  <Formik
217
192
  initialValues={initialValues}
218
193
  validateOnMount
219
- validationSchema={getValidationSchema(t)}
194
+ validationSchema={getValidationSchema(t, !isInOcm)}
220
195
  onSubmit={async (values) => {
221
196
  clearAlerts();
222
197
  if (!cluster?.id) {
@@ -229,6 +204,8 @@ const OptionalConfigurationsStep = () => {
229
204
  }
230
205
 
231
206
  const commonParams = buildInfraEnvParams(values);
207
+ // Default pull secret only exists in OCM; when !isInOcm the user must provide it via the field
208
+ const pullSecretToUse = isInOcm ? defaultPullSecret : values.pullSecret;
232
209
 
233
210
  try {
234
211
  if (disconnectedInfraEnv?.id) {
@@ -236,15 +213,12 @@ const OptionalConfigurationsStep = () => {
236
213
  const updateParams: InfraEnvUpdateParams = {
237
214
  ...commonParams,
238
215
  imageType: DISCONNECTED_IMAGE_TYPE,
216
+ pullSecret: pullSecretToUse,
239
217
  };
240
218
  const { data: updatedInfraEnv } = await InfraEnvsAPI.update(
241
219
  disconnectedInfraEnv.id,
242
220
  updateParams,
243
221
  );
244
- setDisconnectedFormPullSecret(values.pullSecret);
245
- setDisconnectedFormEditPullSecret(
246
- disconnectedFormEditPullSecret ?? !!disconnectedInfraEnv?.pullSecretSet,
247
- );
248
222
  setDisconnectedInfraEnv({
249
223
  ...updatedInfraEnv,
250
224
  // infraEnv does not return the whole OCP version
@@ -258,13 +232,10 @@ const OptionalConfigurationsStep = () => {
258
232
  openshiftVersion: cluster.openshiftVersion,
259
233
  cpuArchitecture: DEFAULT_CPU_ARCHITECTURE,
260
234
  imageType: DISCONNECTED_IMAGE_TYPE,
235
+ pullSecret: pullSecretToUse ?? '',
261
236
  ...commonParams,
262
237
  };
263
238
  const createdInfraEnv = await InfraEnvsService.create(createParams);
264
- setDisconnectedFormPullSecret(values.pullSecret);
265
- setDisconnectedFormEditPullSecret(
266
- disconnectedFormEditPullSecret ?? !!disconnectedInfraEnv?.pullSecretSet,
267
- );
268
239
  setDisconnectedInfraEnv({
269
240
  ...createdInfraEnv,
270
241
  // infraEnv does not return the whole OCP version
@@ -306,7 +277,6 @@ const OptionalConfigurationsStep = () => {
306
277
  }
307
278
  >
308
279
  <WithErrorBoundary title="Failed to load Optional Configurations step">
309
- <PullSecretSync />
310
280
  <Grid hasGutter>
311
281
  <GridItem>
312
282
  <Split>
@@ -320,6 +290,9 @@ const OptionalConfigurationsStep = () => {
320
290
  </GridItem>
321
291
  <GridItem>
322
292
  <Form id="wizard-cluster-optional-configurations__form">
293
+ {/* Pull secret (!OCM only) */}
294
+ {!isInOcm && <PullSecret defaultPullSecret={defaultPullSecret} isOcm={false} />}
295
+
323
296
  {/* Rendezvous IP */}
324
297
  <InputField
325
298
  label={t('ai:Rendezvous IP')}
@@ -332,17 +305,6 @@ const OptionalConfigurationsStep = () => {
332
305
  />
333
306
 
334
307
  <UploadSSH />
335
- <Checkbox
336
- label={t('ai:Edit pull secret')}
337
- isChecked={
338
- disconnectedFormEditPullSecret ?? !!disconnectedInfraEnv?.pullSecretSet
339
- }
340
- onChange={(_, checked) => setDisconnectedFormEditPullSecret(checked)}
341
- id="edit-pull-secret-checkbox"
342
- />
343
- {(disconnectedFormEditPullSecret ?? !!disconnectedInfraEnv?.pullSecretSet) && (
344
- <PullSecretField isOcm={isInOcm} />
345
- )}
346
308
 
347
309
  {/* Proxy Settings */}
348
310
  <CheckboxField
@@ -116,7 +116,7 @@ const ReviewStep = () => {
116
116
  </DescriptionListGroup>
117
117
  <DescriptionListGroup>
118
118
  <DescriptionListTerm>ISO size</DescriptionListTerm>
119
- <DescriptionListDescription>approx. 43.5GB</DescriptionListDescription>
119
+ <DescriptionListDescription>approx. 50 GB</DescriptionListDescription>
120
120
  </DescriptionListGroup>
121
121
  </DescriptionList>
122
122
  </Grid>
@@ -102,6 +102,9 @@ export const getClusterWizardFirstStep = (
102
102
  case 'pending-for-input':
103
103
  case 'adding-hosts':
104
104
  case 'insufficient':
105
+ if (customManifestsStepNeedsToBeFilled) {
106
+ return 'custom-manifests';
107
+ }
105
108
  return getStepForFailingHostValidations(hosts);
106
109
  default:
107
110
  return 'cluster-details';
@@ -241,7 +244,12 @@ const networkingStepValidationsMap: WizardStepValidationMap = {
241
244
  // Alternatively we would have to whitelist network validations instead of using group
242
245
  // TODO(mlibra): remove that container-images-available from soft validations and let backend drive it via disabling it.
243
246
  // Depends on: https://issues.redhat.com/browse/MGMT-5265
244
- softValidationIds: ['ntp-synced', 'container-images-available', 'mtu-valid'],
247
+ softValidationIds: [
248
+ 'ntp-synced',
249
+ 'container-images-available',
250
+ 'mtu-valid',
251
+ 'custom-manifests-requirements-satisfied',
252
+ ],
245
253
  };
246
254
 
247
255
  const reviewStepValidationsMap: WizardStepValidationMap = {
@@ -1,15 +1,15 @@
1
1
  import React from 'react';
2
- import { t_global_color_status_success_default as okColor } from '@patternfly/react-tokens/dist/js/t_global_color_status_success_default';
3
2
  import { ExclamationCircleIcon } from '@patternfly/react-icons/dist/js/icons/exclamation-circle-icon';
4
3
  import { ExclamationTriangleIcon } from '@patternfly/react-icons/dist/js/icons/exclamation-triangle-icon';
5
4
  import { FileAltIcon } from '@patternfly/react-icons/dist/js/icons/file-alt-icon';
6
5
  import { CheckCircleIcon } from '@patternfly/react-icons/dist/js/icons/check-circle-icon';
7
6
  import { InProgressIcon } from '@patternfly/react-icons/dist/js/icons/in-progress-icon';
8
7
  import { BanIcon } from '@patternfly/react-icons/dist/js/icons/ban-icon';
9
- import { clusterStatusLabels, UiIcon, WithTestID } from '../../../common';
8
+ import { clusterStatusLabels, WithTestID } from '../../../common';
10
9
  import { useTranslation } from '../../../common/hooks/use-translation-wrapper';
11
10
  import { TFunction } from 'i18next';
12
11
  import { Cluster } from '@openshift-assisted/types/assisted-installer-service';
12
+ import { Icon } from '@patternfly/react-core';
13
13
 
14
14
  type ClusterStatusProps = {
15
15
  status: Cluster['status'];
@@ -24,25 +24,47 @@ type ClusterStatusIconProps = {
24
24
  export const ClusterStatusIcon: React.FC<ClusterStatusIconProps> = ({ status, ...extraProps }) => {
25
25
  switch (status) {
26
26
  case 'cancelled':
27
- return <UiIcon size="sm" icon={<BanIcon {...extraProps} />} />;
27
+ return (
28
+ <Icon size="sm">
29
+ <BanIcon {...extraProps} />
30
+ </Icon>
31
+ );
28
32
  case 'insufficient':
29
33
  case 'pending-for-input':
30
34
  case 'ready':
31
- return <UiIcon size="sm" icon={<FileAltIcon {...extraProps} />} />;
35
+ return (
36
+ <Icon size="sm">
37
+ <FileAltIcon {...extraProps} />
38
+ </Icon>
39
+ );
32
40
  case 'error':
33
- return <UiIcon size="sm" status="danger" icon={<ExclamationCircleIcon {...extraProps} />} />;
41
+ return (
42
+ <Icon size="sm" status="danger">
43
+ <ExclamationCircleIcon {...extraProps} />
44
+ </Icon>
45
+ );
34
46
  case 'installed':
35
- return <UiIcon size="sm" icon={<CheckCircleIcon color={okColor.value} {...extraProps} />} />;
47
+ return (
48
+ <Icon status="success" size="sm">
49
+ <CheckCircleIcon {...extraProps} />
50
+ </Icon>
51
+ );
36
52
  case 'installing-pending-user-action':
37
53
  return (
38
- <UiIcon size="sm" status="warning" icon={<ExclamationTriangleIcon {...extraProps} />} />
54
+ <Icon size="sm" status="warning">
55
+ <ExclamationTriangleIcon {...extraProps} />
56
+ </Icon>
39
57
  );
40
58
 
41
59
  case 'preparing-for-installation':
42
60
  case 'installing':
43
61
  case 'finalizing':
44
62
  case 'adding-hosts':
45
- return <UiIcon size="sm" icon={<InProgressIcon {...extraProps} />} />;
63
+ return (
64
+ <Icon size="sm">
65
+ <InProgressIcon {...extraProps} />
66
+ </Icon>
67
+ );
46
68
  default:
47
69
  return <></>;
48
70
  }
@@ -1,9 +1,7 @@
1
+ import React from 'react';
1
2
  import { CheckCircleIcon } from '@patternfly/react-icons/dist/js/icons/check-circle-icon';
2
3
  import { InfoCircleIcon } from '@patternfly/react-icons/dist/js/icons/info-circle-icon';
3
- import React from 'react';
4
- import { t_global_color_status_success_default as okColor } from '@patternfly/react-tokens/dist/js/t_global_color_status_success_default';
5
- import { t_global_color_status_info_100 as infoColor } from '@patternfly/react-tokens/dist/js/t_global_color_status_info_100';
6
- import { Content } from '@patternfly/react-core';
4
+ import { Content, Icon } from '@patternfly/react-core';
7
5
  import {
8
6
  FeatureId,
9
7
  FeatureIdToSupportLevel,
@@ -13,7 +11,7 @@ import {
13
11
  import { TECH_SUPPORT_LEVEL_LINK } from '../../../common/config/docs_links';
14
12
  import ExternalLink from '../../../common/components/ui/ExternalLink';
15
13
  import { Cluster } from '@openshift-assisted/types/assisted-installer-service';
16
- import { DetailItem, UiIcon } from '../../../common';
14
+ import { DetailItem } from '../../../common';
17
15
  import { getLimitedFeatureSupportLevels } from '../../../common/components/newFeatureSupportLevels/utils';
18
16
  import { WithErrorBoundary } from '../../../common/components/ErrorHandling/WithErrorBoundary';
19
17
  import { useTranslation } from '../../../common/hooks/use-translation-wrapper';
@@ -90,13 +88,17 @@ export const LimitedSupportedCluster = ({
90
88
  <>
91
89
  {showVersionWarning && (
92
90
  <Content component="p">
93
- <UiIcon size="sm" icon={<InfoCircleIcon color={infoColor.var} />} />
91
+ <Icon status="info" size="sm">
92
+ <InfoCircleIcon />
93
+ </Icon>
94
94
  &nbsp;The installed OpenShift version is not production-ready
95
95
  </Content>
96
96
  )}
97
97
  {Object.keys(clusterFeatureSupportLevels).length > 0 && (
98
98
  <>
99
- <UiIcon size="sm" icon={<InfoCircleIcon color={infoColor.var} />} />
99
+ <Icon status="info" size="sm">
100
+ <InfoCircleIcon />
101
+ </Icon>
100
102
  &nbsp;Your cluster will be subject to support limitations because it includes:
101
103
  <Content component="ul">{getPreviewFeatureList(clusterFeatureSupportLevels)}</Content>
102
104
  </>
@@ -106,7 +108,9 @@ export const LimitedSupportedCluster = ({
106
108
 
107
109
  export const FullySupportedCluster = () => (
108
110
  <>
109
- <CheckCircleIcon color={okColor.value} />
111
+ <Icon status="success">
112
+ <CheckCircleIcon />
113
+ </Icon>
110
114
  &nbsp;Your installed cluster will be fully supported
111
115
  </>
112
116
  );
@@ -181,6 +181,12 @@ export const getNewFeatureDisabledReason = (
181
181
  case 'OSC': {
182
182
  return getOscDisabledReason(cluster, activeFeatureConfiguration, isSupported);
183
183
  }
184
+ case 'SDN_NETWORK_TYPE': {
185
+ if (!isSupported) {
186
+ return 'SDN is not available for the selected configuration.';
187
+ }
188
+ return undefined;
189
+ }
184
190
  case 'NETWORK_TYPE_SELECTION': {
185
191
  return getNetworkTypeSelectionDisabledReason(cluster);
186
192
  }
@@ -2,6 +2,7 @@ import React from 'react';
2
2
  import {
3
3
  Button,
4
4
  ButtonVariant,
5
+ Icon,
5
6
  IconComponentProps,
6
7
  Modal,
7
8
  ModalBody,
@@ -10,7 +11,6 @@ import {
10
11
  ModalProps,
11
12
  } from '@patternfly/react-core';
12
13
  import { InfoCircleIcon } from '@patternfly/react-icons/dist/js/icons/info-circle-icon';
13
- import { UiIcon } from '../../../common';
14
14
 
15
15
  export interface InfoLinkWithModalProps {
16
16
  linkText: string;
@@ -43,7 +43,9 @@ const InfoLinkWithModal = ({
43
43
  <Button id={linkId} variant={ButtonVariant.link} onClick={handleLinkClick} isInline>
44
44
  {!isInline && (
45
45
  <>
46
- <UiIcon size={infoCircleSize} icon={<InfoCircleIcon />} />
46
+ <Icon size={infoCircleSize}>
47
+ <InfoCircleIcon />
48
+ </Icon>
47
49
  &nbsp;
48
50
  </>
49
51
  )}
@@ -1,7 +1,11 @@
1
1
  import { Cluster } from '@openshift-assisted/types/./assisted-installer-service';
2
+ import { NETWORK_TYPE_OVN, NETWORK_TYPE_SDN } from '../../common/config';
2
3
 
3
4
  export const isOciPlatformType = (cluster: Cluster): boolean => {
4
5
  return (
5
6
  cluster.platform?.type === 'external' && cluster.platform?.external?.platformName === 'oci'
6
7
  );
7
8
  };
9
+
10
+ export const isThirdPartyCNI = (networkType: Cluster['networkType']): boolean =>
11
+ !!networkType && networkType !== NETWORK_TYPE_OVN && networkType !== NETWORK_TYPE_SDN;
@@ -31,7 +31,6 @@ const useUISettings = (clusterId?: Cluster['id']) => {
31
31
  const { data: customManifests } = await ClustersAPI.getManifests(clusterId);
32
32
 
33
33
  const mockUISettings: UISettingsValues = {
34
- addCustomManifests: !!customManifests.length,
35
34
  customManifestsAdded: !!customManifests.length,
36
35
  };
37
36
 
@@ -105,7 +105,6 @@ const ClusterDetailsService = {
105
105
  cluster,
106
106
  infraEnv,
107
107
  urlSearchParams,
108
- addCustomManifests,
109
108
  ...args
110
109
  }: {
111
110
  cluster?: Cluster;
@@ -114,7 +113,6 @@ const ClusterDetailsService = {
114
113
  managedDomains: ManagedDomain[];
115
114
  ocpVersions: OpenshiftVersionOptionType[];
116
115
  urlSearchParams: string;
117
- addCustomManifests?: boolean;
118
116
  }): OcmClusterDetailsValues {
119
117
  const values = getClusterDetailsInitialValues({
120
118
  cluster,
@@ -133,7 +131,6 @@ const ClusterDetailsService = {
133
131
  ...values,
134
132
  cpuArchitecture,
135
133
  hostsNetworkConfigurationType,
136
- addCustomManifest: !!addCustomManifests,
137
134
  isCMNSupported: true,
138
135
  isSNODevPreview: false,
139
136
  };
@@ -21,7 +21,6 @@ export enum HostsNetworkConfigurationType {
21
21
 
22
22
  export type OcmClusterDetailsValues = ClusterDetailsValues & {
23
23
  hostsNetworkConfigurationType: HostsNetworkConfigurationType;
24
- addCustomManifest: boolean;
25
24
  isCMNSupported: boolean;
26
25
  isSNODevPreview: boolean;
27
26
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "dependencies": {
3
- "@openshift-assisted/locales": "2.50.0",
4
- "@openshift-assisted/types": "2.50.0",
3
+ "@openshift-assisted/locales": "2.51.0",
4
+ "@openshift-assisted/types": "2.51.0",
5
5
  "@openshift-console/dynamic-plugin-sdk": "1.0.0",
6
6
  "@patternfly/patternfly": "6.4.0",
7
7
  "@patternfly/react-code-editor": "6.4.0",
@@ -99,7 +99,7 @@
99
99
  "react-i18next": ">11.7.3",
100
100
  "react-monaco-editor": "^0.55.0",
101
101
  "react-redux": "^8.0.5",
102
- "react-router-dom-v5-compat": "^6.21.2",
102
+ "react-router-dom-v5-compat": "^6.30.3",
103
103
  "redux": "^4",
104
104
  "uuid": "^8.1",
105
105
  "yup": "^1.4.0"
@@ -136,5 +136,5 @@
136
136
  ]
137
137
  }
138
138
  },
139
- "version": "2.50.0"
139
+ "version": "2.51.0"
140
140
  }
@@ -1,11 +0,0 @@
1
- import React, { ReactElement } from 'react';
2
- import { IconComponentProps } from '@patternfly/react-core';
3
- export type UiIconProps = {
4
- size?: IconComponentProps['size'];
5
- status?: IconComponentProps['status'] | undefined;
6
- icon?: ReactElement;
7
- className?: string;
8
- };
9
- declare const UiIcon: React.FC<UiIconProps>;
10
- export default UiIcon;
11
- //# sourceMappingURL=UiIcon.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UiIcon.d.ts","sourceRoot":"","sources":["../../../../../lib/common/components/ui/UiIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAQ,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAElE,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,CAAC,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,CAAC,EAAE,kBAAkB,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;IAClD,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,QAAA,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAQjC,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -1,8 +0,0 @@
1
- import * as React from 'react';
2
- type CustomManifestCheckboxProps = {
3
- clusterId: string;
4
- isDisabled: boolean;
5
- };
6
- declare const CustomManifestCheckbox: ({ clusterId, isDisabled }: CustomManifestCheckboxProps) => React.JSX.Element;
7
- export default CustomManifestCheckbox;
8
- //# sourceMappingURL=CustomManifestCheckbox.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CustomManifestCheckbox.d.ts","sourceRoot":"","sources":["../../../../../lib/ocm/components/clusterConfiguration/CustomManifestCheckbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAgC/B,KAAK,2BAA2B,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CAAC;AAE9E,QAAA,MAAM,sBAAsB,8BAA+B,2BAA2B,sBA6ErF,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const react_1 = tslib_1.__importDefault(require("react"));
5
- const react_core_1 = require("@patternfly/react-core");
6
- const UiIcon = (props) => {
7
- return (react_1.default.createElement(react_1.default.Fragment, null,
8
- react_1.default.createElement(react_core_1.Icon, { size: props.size ? props.size : 'md', status: props.status, className: props.className }, props.icon)));
9
- };
10
- exports.default = UiIcon;
11
- //# sourceMappingURL=UiIcon.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UiIcon.js","sourceRoot":"","sources":["../../../../../lib/common/components/ui/UiIcon.tsx"],"names":[],"mappings":";;;AAAA,0DAA4C;AAC5C,uDAAkE;AASlE,MAAM,MAAM,GAA0B,CAAC,KAAK,EAAE,EAAE;IAC9C,OAAO,CACL;QACE,8BAAC,iBAAI,IAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,IACzF,KAAK,CAAC,IAAI,CACN,CACN,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,MAAM,CAAC"}
@@ -1,58 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const React = tslib_1.__importStar(require("react"));
5
- const react_core_1 = require("@patternfly/react-core");
6
- const formik_1 = require("formik");
7
- const common_1 = require("../../../common");
8
- const OcmFormFields_1 = require("../ui/OcmFormFields");
9
- const ClusterWizardContext_1 = require("../clusterWizard/ClusterWizardContext");
10
- const DeleteCustomManifestModal_1 = tslib_1.__importDefault(require("./manifestsConfiguration/DeleteCustomManifestModal"));
11
- const services_1 = require("../../services");
12
- const apis_1 = require("../../services/apis");
13
- const Label = () => {
14
- return (React.createElement(React.Fragment, null,
15
- "Include custom manifests",
16
- ' ',
17
- React.createElement(common_1.PopoverIcon, { noVerticalAlign: true, bodyContent: React.createElement("p", null, "Incorporate third-party manifests that are not supported in Assisted Installer and APIs.") })));
18
- };
19
- const CustomManifestCheckbox = ({ clusterId, isDisabled }) => {
20
- const [{ name }, { value }, { setValue }] = (0, formik_1.useField)('addCustomManifest');
21
- const fieldId = (0, common_1.getFieldId)(name, 'input');
22
- const clusterWizardContext = (0, ClusterWizardContext_1.useClusterWizardContext)();
23
- const [isDeleteCustomManifestsOpen, setDeleteCustomManifestsOpen] = React.useState(false);
24
- const cleanCustomManifests = React.useCallback(() => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
25
- const { data: manifests } = yield apis_1.ClustersAPI.getManifests(clusterId);
26
- void services_1.ClustersService.removeClusterManifests(manifests, clusterId);
27
- setValue(false);
28
- clusterWizardContext.setCustomManifestsStep(false);
29
- setDeleteCustomManifestsOpen(false);
30
- yield clusterWizardContext.updateUISettings({
31
- addCustomManifests: false,
32
- customManifestsAdded: false,
33
- });
34
- }), [clusterWizardContext, setValue, clusterId]);
35
- const onChange = React.useCallback((checked) => {
36
- var _a;
37
- if (!checked && ((_a = clusterWizardContext.uiSettings) === null || _a === void 0 ? void 0 : _a.customManifestsAdded)) {
38
- setDeleteCustomManifestsOpen(true);
39
- }
40
- setValue(checked);
41
- clusterWizardContext.setCustomManifestsStep(checked);
42
- }, [setValue, clusterWizardContext, setDeleteCustomManifestsOpen]);
43
- const onClose = React.useCallback(() => {
44
- setValue(true);
45
- clusterWizardContext.setCustomManifestsStep(true);
46
- setDeleteCustomManifestsOpen(false);
47
- }, [clusterWizardContext, setValue]);
48
- return (React.createElement(React.Fragment, null,
49
- React.createElement(react_core_1.FormGroup, { id: `form-control__${fieldId}`, isInline: true, fieldId: fieldId },
50
- React.createElement(OcmFormFields_1.OcmCheckbox, { id: fieldId, name: name, label: React.createElement(Label, null), "aria-describedby": `${fieldId}-helper`, description: React.createElement(react_core_1.FormGroup, null,
51
- React.createElement(react_core_1.FormHelperText, null,
52
- React.createElement(react_core_1.HelperText, { id: fieldId },
53
- React.createElement(react_core_1.HelperTextItem, { "data-testid": `input-custommanifestcheckbox-${fieldId}-helper-text` }, "Additional manifests will be applied at the install time for advanced configuration of the cluster.")))), onChange: (_event, value) => onChange(value), className: "with-tooltip", isChecked: value, isDisabled: isDisabled }),
54
- React.createElement(DeleteCustomManifestModal_1.default, { isOpen: isDeleteCustomManifestsOpen, onClose: onClose, onDelete: () => void cleanCustomManifests() })),
55
- value && (React.createElement(react_core_1.Alert, { isInline: true, variant: "info", title: 'This is an advanced configuration feature.' }, "Custom manifests will be added to the wizard as a new step."))));
56
- };
57
- exports.default = CustomManifestCheckbox;
58
- //# sourceMappingURL=CustomManifestCheckbox.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CustomManifestCheckbox.js","sourceRoot":"","sources":["../../../../../lib/ocm/components/clusterConfiguration/CustomManifestCheckbox.tsx"],"names":[],"mappings":";;;AAAA,qDAA+B;AAC/B,uDAMgC;AAChC,mCAAkC;AAClC,4CAA0D;AAC1D,uDAAkD;AAClD,gFAAgF;AAChF,2HAA2F;AAC3F,6CAAiD;AACjD,8CAAkD;AAElD,MAAM,KAAK,GAAG,GAAG,EAAE;IACjB,OAAO,CACL;;QAC2B,GAAG;QAC5B,oBAAC,oBAAW,IACV,eAAe,QACf,WAAW,EACT,0HAEI,GAEN,CACD,CACJ,CAAC;AACJ,CAAC,CAAC;AAIF,MAAM,sBAAsB,GAAG,CAAC,EAAE,SAAS,EAAE,UAAU,EAA+B,EAAE,EAAE;IACxF,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAA,iBAAQ,EAAU,mBAAmB,CAAC,CAAC;IACnF,MAAM,OAAO,GAAG,IAAA,mBAAU,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1C,MAAM,oBAAoB,GAAG,IAAA,8CAAuB,GAAE,CAAC;IACvD,MAAM,CAAC,2BAA2B,EAAE,4BAA4B,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE1F,MAAM,oBAAoB,GAAG,KAAK,CAAC,WAAW,CAAC,GAAS,EAAE;QACxD,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,kBAAW,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACtE,KAAK,0BAAe,CAAC,sBAAsB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAElE,QAAQ,CAAC,KAAK,CAAC,CAAC;QAChB,oBAAoB,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;QACnD,4BAA4B,CAAC,KAAK,CAAC,CAAC;QACpC,MAAM,oBAAoB,CAAC,gBAAgB,CAAC;YAC1C,kBAAkB,EAAE,KAAK;YACzB,oBAAoB,EAAE,KAAK;SAC5B,CAAC,CAAC;IACL,CAAC,CAAA,EAAE,CAAC,oBAAoB,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;IAEhD,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAChC,CAAC,OAAgB,EAAE,EAAE;;QACnB,IAAI,CAAC,OAAO,KAAI,MAAA,oBAAoB,CAAC,UAAU,0CAAE,oBAAoB,CAAA,EAAE,CAAC;YACtE,4BAA4B,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;QAED,QAAQ,CAAC,OAAO,CAAC,CAAC;QAClB,oBAAoB,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC,EACD,CAAC,QAAQ,EAAE,oBAAoB,EAAE,4BAA4B,CAAC,CAC/D,CAAC;IAEF,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACrC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,oBAAoB,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAClD,4BAA4B,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC,EAAE,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC,CAAC;IAErC,OAAO,CACL;QACE,oBAAC,sBAAS,IAAC,EAAE,EAAE,iBAAiB,OAAO,EAAE,EAAE,QAAQ,QAAC,OAAO,EAAE,OAAO;YAClE,oBAAC,2BAAW,IACV,EAAE,EAAE,OAAO,EACX,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,oBAAC,KAAK,OAAG,sBACE,GAAG,OAAO,SAAS,EACrC,WAAW,EACT,oBAAC,sBAAS;oBACR,oBAAC,2BAAc;wBACb,oBAAC,uBAAU,IAAC,EAAE,EAAE,OAAO;4BACrB,oBAAC,2BAAc,mBACA,gCAAgC,OAAO,cAAc,0GAInD,CACN,CACE,CACP,EAEd,QAAQ,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC5C,SAAS,EAAC,cAAc,EACxB,SAAS,EAAE,KAAK,EAChB,UAAU,EAAE,UAAU,GACtB;YACF,oBAAC,mCAAyB,IACxB,MAAM,EAAE,2BAA2B,EACnC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,oBAAoB,EAAE,GAC3C,CACQ;QACX,KAAK,IAAI,CACR,oBAAC,kBAAK,IAAC,QAAQ,QAAC,OAAO,EAAC,MAAM,EAAC,KAAK,EAAE,4CAA4C,kEAE1E,CACT,CACA,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,sBAAsB,CAAC"}