@openshift-assisted/ui-lib 2.17.0-cim → 2.17.1-cim

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 (397) hide show
  1. package/build/@types/cim/components/Agent/AgentStatus.d.ts +1 -0
  2. package/build/@types/cim/components/Agent/AgentStatus.d.ts.map +1 -1
  3. package/build/@types/cim/components/Agent/AgentTable.d.ts.map +1 -1
  4. package/build/@types/cim/components/Agent/AgentsSelectionTable.d.ts.map +1 -1
  5. package/build/@types/cim/components/Agent/BMCForm.d.ts.map +1 -1
  6. package/build/@types/cim/components/Agent/BMHEventsModal.d.ts +8 -0
  7. package/build/@types/cim/components/Agent/BMHEventsModal.d.ts.map +1 -0
  8. package/build/@types/cim/components/Agent/BMHStatus.d.ts +2 -0
  9. package/build/@types/cim/components/Agent/BMHStatus.d.ts.map +1 -1
  10. package/build/@types/cim/components/Agent/BMHStatusInfo.d.ts +8 -0
  11. package/build/@types/cim/components/Agent/BMHStatusInfo.d.ts.map +1 -0
  12. package/build/@types/cim/components/Agent/MinimalHWRequirements.d.ts.map +1 -1
  13. package/build/@types/cim/components/Agent/index.d.ts +2 -0
  14. package/build/@types/cim/components/Agent/index.d.ts.map +1 -1
  15. package/build/@types/cim/components/Agent/tableColumns.d.ts +29 -0
  16. package/build/@types/cim/components/Agent/tableColumns.d.ts.map +1 -0
  17. package/build/@types/cim/components/Agent/tableUtils.d.ts +2 -22
  18. package/build/@types/cim/components/Agent/tableUtils.d.ts.map +1 -1
  19. package/build/@types/cim/components/ClusterDeployment/NetworkConfiguration.d.ts +1 -1
  20. package/build/@types/cim/components/ClusterDeployment/NetworkConfiguration.d.ts.map +1 -1
  21. package/build/@types/cim/components/ClusterDeployment/hostDiscovery/ClusterDeploymentHostDiscoveryTable.d.ts.map +1 -1
  22. package/build/@types/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostSelectionStep.d.ts.map +1 -1
  23. package/build/@types/cim/components/ClusterDeployment/networkConfigurationValidation.d.ts +1 -1
  24. package/build/@types/cim/components/ClusterDeployment/networkConfigurationValidation.d.ts.map +1 -1
  25. package/build/@types/cim/components/ClusterDeployment/networking/ClusterDeploymentHostsNetworkTable.d.ts.map +1 -1
  26. package/build/@types/cim/components/ClusterDeployment/review/ClusterDeploymentReviewStep.d.ts.map +1 -1
  27. package/build/@types/cim/components/ClusterDeployment/use-networking-formik.d.ts +9 -5
  28. package/build/@types/cim/components/ClusterDeployment/use-networking-formik.d.ts.map +1 -1
  29. package/build/@types/cim/components/Hypershift/HostedClusterWizard/NetworkStep/AdvancedNetworkFields.d.ts.map +1 -0
  30. package/build/@types/cim/components/Hypershift/modals/AddNodePoolModal.d.ts.map +1 -1
  31. package/build/@types/cim/components/Hypershift/modals/ManageHostsModal.d.ts.map +1 -1
  32. package/build/@types/cim/components/Hypershift/modals/RemoveNodePoolModal.d.ts.map +1 -1
  33. package/build/@types/cim/components/InfraEnv/EnvironmentDetails.d.ts.map +1 -1
  34. package/build/@types/cim/components/InfraEnv/EnvironmentErrors.d.ts +0 -1
  35. package/build/@types/cim/components/InfraEnv/EnvironmentErrors.d.ts.map +1 -1
  36. package/build/@types/cim/components/helpers/agentStatus.d.ts.map +1 -1
  37. package/build/@types/cim/components/modals/AddBmcHostModal.d.ts.map +1 -1
  38. package/build/@types/cim/components/modals/AddBmcHostYamlForm.d.ts.map +1 -1
  39. package/build/@types/cim/components/modals/AddBmcHostYamlModal.d.ts.map +1 -1
  40. package/build/@types/cim/components/modals/AddHostModal.d.ts.map +1 -1
  41. package/build/@types/cim/components/modals/CimConfiguration/CimConfigurationModal.d.ts.map +1 -1
  42. package/build/@types/cim/components/modals/EditBMHModal.d.ts.map +1 -1
  43. package/build/@types/cim/components/modals/EditNtpSourcesModal.d.ts.map +1 -1
  44. package/build/@types/cim/components/modals/EditProxyModal.d.ts.map +1 -1
  45. package/build/@types/cim/components/modals/EditPullSecretModal.d.ts.map +1 -1
  46. package/build/@types/cim/components/modals/EditSSHKeyModal.d.ts.map +1 -1
  47. package/build/@types/cim/components/modals/MassApproveAgentModal.d.ts.map +1 -1
  48. package/build/@types/cim/components/modals/ScaleUpModal.d.ts.map +1 -1
  49. package/build/@types/cim/hooks/index.d.ts +1 -0
  50. package/build/@types/cim/hooks/index.d.ts.map +1 -1
  51. package/build/@types/cim/hooks/types.d.ts +1 -1
  52. package/build/@types/cim/hooks/types.d.ts.map +1 -1
  53. package/build/@types/cim/hooks/useEvents.d.ts +4 -0
  54. package/build/@types/cim/hooks/useEvents.d.ts.map +1 -0
  55. package/build/@types/cim/types/fromOCP/k8sTypes.d.ts +12 -0
  56. package/build/@types/cim/types/fromOCP/k8sTypes.d.ts.map +1 -1
  57. package/build/@types/cim/types/k8s/agent-cluster-install.d.ts +4 -0
  58. package/build/@types/cim/types/k8s/agent-cluster-install.d.ts.map +1 -1
  59. package/build/@types/cim/types/k8s/bare-metal-host.d.ts +20 -0
  60. package/build/@types/cim/types/k8s/bare-metal-host.d.ts.map +1 -1
  61. package/build/@types/common/components/clusterConfiguration/DiscoveryTroubleshootingModal.d.ts.map +1 -1
  62. package/build/@types/common/components/clusterConfiguration/utils.d.ts +2 -2
  63. package/build/@types/common/components/clusterConfiguration/utils.d.ts.map +1 -1
  64. package/build/@types/common/components/clusterWizard/networkingSteps/AdvancedNetworkFields.d.ts +7 -0
  65. package/build/@types/common/components/clusterWizard/networkingSteps/AdvancedNetworkFields.d.ts.map +1 -0
  66. package/build/@types/common/components/clusterWizard/networkingSteps/AvailableSubnetsControl.d.ts +10 -6
  67. package/build/@types/common/components/clusterWizard/networkingSteps/AvailableSubnetsControl.d.ts.map +1 -1
  68. package/build/@types/common/components/clusterWizard/networkingSteps/StackTypeControlGroup.d.ts +13 -0
  69. package/build/@types/common/components/clusterWizard/networkingSteps/StackTypeControlGroup.d.ts.map +1 -0
  70. package/build/@types/{ocm/components/clusterConfiguration/networkConfiguration → common/components/clusterWizard/networkingSteps}/SubnetsDropdown.d.ts +1 -1
  71. package/build/@types/common/components/clusterWizard/networkingSteps/SubnetsDropdown.d.ts.map +1 -0
  72. package/build/@types/common/components/clusterWizard/networkingSteps/VirtualIPControlGroup.d.ts +4 -2
  73. package/build/@types/common/components/clusterWizard/networkingSteps/VirtualIPControlGroup.d.ts.map +1 -1
  74. package/build/@types/common/components/clusterWizard/networkingSteps/index.d.ts +7 -2
  75. package/build/@types/common/components/clusterWizard/networkingSteps/index.d.ts.map +1 -1
  76. package/build/@types/{ocm/components/clusterConfiguration/networkConfiguration → common/components/clusterWizard/networkingSteps}/reorderNetworks.d.ts +1 -1
  77. package/build/@types/common/components/clusterWizard/networkingSteps/reorderNetworks.d.ts.map +1 -0
  78. package/build/@types/common/components/hosts/HostStatus.d.ts.map +1 -1
  79. package/build/@types/common/components/hosts/HostValidationGroups.d.ts.map +1 -1
  80. package/build/@types/common/components/hosts/MassChangeHostnameModal.d.ts.map +1 -1
  81. package/build/@types/common/components/hosts/index.d.ts +2 -0
  82. package/build/@types/common/components/hosts/index.d.ts.map +1 -1
  83. package/build/@types/common/components/hosts/tableColumns.d.ts +21 -0
  84. package/build/@types/common/components/hosts/tableColumns.d.ts.map +1 -0
  85. package/build/@types/common/components/hosts/tableUtils.d.ts +3 -21
  86. package/build/@types/common/components/hosts/tableUtils.d.ts.map +1 -1
  87. package/build/@types/common/components/hosts/types.d.ts +1 -0
  88. package/build/@types/common/components/hosts/types.d.ts.map +1 -1
  89. package/build/@types/common/components/ui/EventsList.d.ts.map +1 -1
  90. package/build/@types/common/components/ui/PrismCode.d.ts +13 -11
  91. package/build/@types/common/components/ui/PrismCode.d.ts.map +1 -1
  92. package/build/@types/common/components/ui/formik/LabelField.d.ts +3 -11
  93. package/build/@types/common/components/ui/formik/LabelField.d.ts.map +1 -1
  94. package/build/@types/common/components/ui/formik/validationSchemas.d.ts +3 -5
  95. package/build/@types/common/components/ui/formik/validationSchemas.d.ts.map +1 -1
  96. package/build/@types/common/components/ui/index.d.ts +1 -1
  97. package/build/@types/common/components/ui/index.d.ts.map +1 -1
  98. package/build/@types/common/config/constants.d.ts +2 -1
  99. package/build/@types/common/config/constants.d.ts.map +1 -1
  100. package/build/@types/common/types/clusters.d.ts +0 -1
  101. package/build/@types/common/types/clusters.d.ts.map +1 -1
  102. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfiguration.d.ts +1 -1
  103. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfiguration.d.ts.map +1 -1
  104. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationTableBase.d.ts.map +1 -1
  105. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.d.ts.map +1 -1
  106. package/build/@types/ocm/components/clusterDetail/ResetClusterModal.d.ts.map +1 -1
  107. package/build/@types/ocm/components/hosts/ClusterHostsTable.d.ts.map +1 -1
  108. package/build/@types/ocm/components/hosts/HostsDiscoveryTable.d.ts.map +1 -1
  109. package/build/@types/ocm/components/hosts/HostsStorageTable.d.ts.map +1 -1
  110. package/build/@types/ocm/components/hosts/use-hosts-table.d.ts.map +1 -1
  111. package/build/cjs/cim/components/Agent/AgentStatus.js +2 -2
  112. package/build/cjs/cim/components/Agent/AgentStatus.js.map +1 -1
  113. package/build/cjs/cim/components/Agent/AgentTable.js +10 -9
  114. package/build/cjs/cim/components/Agent/AgentTable.js.map +1 -1
  115. package/build/cjs/cim/components/Agent/AgentsSelectionTable.js +9 -8
  116. package/build/cjs/cim/components/Agent/AgentsSelectionTable.js.map +1 -1
  117. package/build/cjs/cim/components/Agent/BMCForm.js +4 -5
  118. package/build/cjs/cim/components/Agent/BMCForm.js.map +1 -1
  119. package/build/cjs/cim/components/Agent/BMHEventsModal.js +54 -0
  120. package/build/cjs/cim/components/Agent/BMHEventsModal.js.map +1 -0
  121. package/build/cjs/cim/components/Agent/BMHStatus.js +3 -2
  122. package/build/cjs/cim/components/Agent/BMHStatus.js.map +1 -1
  123. package/build/cjs/cim/components/Agent/BMHStatusInfo.js +59 -0
  124. package/build/cjs/cim/components/Agent/BMHStatusInfo.js.map +1 -0
  125. package/build/cjs/cim/components/Agent/MinimalHWRequirements.js +6 -5
  126. package/build/cjs/cim/components/Agent/MinimalHWRequirements.js.map +1 -1
  127. package/build/cjs/cim/components/Agent/index.js +2 -0
  128. package/build/cjs/cim/components/Agent/index.js.map +1 -1
  129. package/build/cjs/cim/components/Agent/tableColumns.js +184 -0
  130. package/build/cjs/cim/components/Agent/tableColumns.js.map +1 -0
  131. package/build/cjs/cim/components/Agent/tableUtils.js +4 -174
  132. package/build/cjs/cim/components/Agent/tableUtils.js.map +1 -1
  133. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentDetailsTable.js +10 -10
  134. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentDetailsTable.js.map +1 -1
  135. package/build/cjs/cim/components/ClusterDeployment/LocationsSelector.js +2 -2
  136. package/build/cjs/cim/components/ClusterDeployment/LocationsSelector.js.map +1 -1
  137. package/build/cjs/cim/components/ClusterDeployment/NetworkConfiguration.js +28 -38
  138. package/build/cjs/cim/components/ClusterDeployment/NetworkConfiguration.js.map +1 -1
  139. package/build/cjs/cim/components/ClusterDeployment/clusterDetails/ClusterDetailsFormFields.js +1 -1
  140. package/build/cjs/cim/components/ClusterDeployment/clusterDetails/ClusterDetailsFormFields.js.map +1 -1
  141. package/build/cjs/cim/components/ClusterDeployment/hostDiscovery/ClusterDeploymentHostDiscoveryTable.js +13 -14
  142. package/build/cjs/cim/components/ClusterDeployment/hostDiscovery/ClusterDeploymentHostDiscoveryTable.js.map +1 -1
  143. package/build/cjs/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostSelectionStep.js +13 -10
  144. package/build/cjs/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostSelectionStep.js.map +1 -1
  145. package/build/cjs/cim/components/ClusterDeployment/networkConfigurationValidation.js +19 -18
  146. package/build/cjs/cim/components/ClusterDeployment/networkConfigurationValidation.js.map +1 -1
  147. package/build/cjs/cim/components/ClusterDeployment/networking/ClusterDeploymentHostsNetworkTable.js +9 -10
  148. package/build/cjs/cim/components/ClusterDeployment/networking/ClusterDeploymentHostsNetworkTable.js.map +1 -1
  149. package/build/cjs/cim/components/ClusterDeployment/networking/ClusterDeploymentNetworkingForm.js +2 -2
  150. package/build/cjs/cim/components/ClusterDeployment/networking/ClusterDeploymentNetworkingForm.js.map +1 -1
  151. package/build/cjs/cim/components/ClusterDeployment/networking/ClusterDeploymentNetworkingStep.js +12 -8
  152. package/build/cjs/cim/components/ClusterDeployment/networking/ClusterDeploymentNetworkingStep.js.map +1 -1
  153. package/build/cjs/cim/components/ClusterDeployment/review/ClusterDeploymentReviewStep.js +6 -4
  154. package/build/cjs/cim/components/ClusterDeployment/review/ClusterDeploymentReviewStep.js.map +1 -1
  155. package/build/cjs/cim/components/ClusterDeployment/use-networking-formik.js +15 -9
  156. package/build/cjs/cim/components/ClusterDeployment/use-networking-formik.js.map +1 -1
  157. package/build/cjs/cim/components/Hypershift/DetailsPage/NodePoolsTable.js +2 -2
  158. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/HostsStep/HostsForm.js +1 -1
  159. package/build/cjs/{common/components/clusterConfiguration → cim/components/Hypershift/HostedClusterWizard/NetworkStep}/AdvancedNetworkFields.js +3 -3
  160. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/NetworkStep/AdvancedNetworkFields.js.map +1 -0
  161. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/NetworkStep/NetworkForm.js +1 -1
  162. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/NetworkStep/NetworkForm.js.map +1 -1
  163. package/build/cjs/cim/components/Hypershift/modals/AddNodePoolModal.js +4 -4
  164. package/build/cjs/cim/components/Hypershift/modals/AddNodePoolModal.js.map +1 -1
  165. package/build/cjs/cim/components/Hypershift/modals/ManageHostsModal.js +4 -4
  166. package/build/cjs/cim/components/Hypershift/modals/ManageHostsModal.js.map +1 -1
  167. package/build/cjs/cim/components/Hypershift/modals/NodePoolForm.js +1 -1
  168. package/build/cjs/cim/components/Hypershift/modals/NodePoolForm.js.map +1 -1
  169. package/build/cjs/cim/components/Hypershift/modals/RemoveNodePoolModal.js +4 -4
  170. package/build/cjs/cim/components/Hypershift/modals/RemoveNodePoolModal.js.map +1 -1
  171. package/build/cjs/cim/components/InfraEnv/EnvironmentDetails.js +5 -2
  172. package/build/cjs/cim/components/InfraEnv/EnvironmentDetails.js.map +1 -1
  173. package/build/cjs/cim/components/InfraEnv/EnvironmentErrors.js +2 -4
  174. package/build/cjs/cim/components/InfraEnv/EnvironmentErrors.js.map +1 -1
  175. package/build/cjs/cim/components/InfraEnv/InfraEnvAgentTable.js +11 -11
  176. package/build/cjs/cim/components/InfraEnv/InfraEnvAgentTable.js.map +1 -1
  177. package/build/cjs/cim/components/common/ResourceAlerts.js +2 -4
  178. package/build/cjs/cim/components/common/ResourceAlerts.js.map +1 -1
  179. package/build/cjs/cim/components/helpers/agentStatus.js +5 -0
  180. package/build/cjs/cim/components/helpers/agentStatus.js.map +1 -1
  181. package/build/cjs/cim/components/helpers/toAssisted.js +28 -26
  182. package/build/cjs/cim/components/helpers/toAssisted.js.map +1 -1
  183. package/build/cjs/cim/components/modals/AddBmcHostModal.js +7 -5
  184. package/build/cjs/cim/components/modals/AddBmcHostModal.js.map +1 -1
  185. package/build/cjs/cim/components/modals/AddBmcHostYamlForm.js +2 -3
  186. package/build/cjs/cim/components/modals/AddBmcHostYamlForm.js.map +1 -1
  187. package/build/cjs/cim/components/modals/AddBmcHostYamlModal.js +7 -5
  188. package/build/cjs/cim/components/modals/AddBmcHostYamlModal.js.map +1 -1
  189. package/build/cjs/cim/components/modals/AddHostModal.js +9 -7
  190. package/build/cjs/cim/components/modals/AddHostModal.js.map +1 -1
  191. package/build/cjs/cim/components/modals/CimConfiguration/CimConfigurationModal.js +17 -22
  192. package/build/cjs/cim/components/modals/CimConfiguration/CimConfigurationModal.js.map +1 -1
  193. package/build/cjs/cim/components/modals/EditBMHModal.js +4 -2
  194. package/build/cjs/cim/components/modals/EditBMHModal.js.map +1 -1
  195. package/build/cjs/cim/components/modals/EditNtpSourcesModal.js +4 -4
  196. package/build/cjs/cim/components/modals/EditNtpSourcesModal.js.map +1 -1
  197. package/build/cjs/cim/components/modals/EditProxyModal.js +4 -4
  198. package/build/cjs/cim/components/modals/EditProxyModal.js.map +1 -1
  199. package/build/cjs/cim/components/modals/EditPullSecretModal.js +4 -4
  200. package/build/cjs/cim/components/modals/EditPullSecretModal.js.map +1 -1
  201. package/build/cjs/cim/components/modals/EditSSHKeyModal.js +5 -5
  202. package/build/cjs/cim/components/modals/EditSSHKeyModal.js.map +1 -1
  203. package/build/cjs/cim/components/modals/MassApproveAgentModal.js +4 -4
  204. package/build/cjs/cim/components/modals/MassApproveAgentModal.js.map +1 -1
  205. package/build/cjs/cim/components/modals/MassDeleteAgentModal.js +1 -1
  206. package/build/cjs/cim/components/modals/MassDeleteAgentModal.js.map +1 -1
  207. package/build/cjs/cim/components/modals/ScaleUpModal.js +4 -4
  208. package/build/cjs/cim/components/modals/ScaleUpModal.js.map +1 -1
  209. package/build/cjs/cim/hooks/index.js +1 -0
  210. package/build/cjs/cim/hooks/index.js.map +1 -1
  211. package/build/cjs/cim/hooks/useEvents.js +12 -0
  212. package/build/cjs/cim/hooks/useEvents.js.map +1 -0
  213. package/build/cjs/common/components/clusterConfiguration/DiscoveryInstructions.js +1 -1
  214. package/build/cjs/common/components/clusterConfiguration/DiscoveryInstructions.js.map +1 -1
  215. package/build/cjs/common/components/clusterConfiguration/DiscoveryTroubleshootingModal.js +9 -9
  216. package/build/cjs/common/components/clusterConfiguration/DiscoveryTroubleshootingModal.js.map +1 -1
  217. package/build/cjs/common/components/clusterConfiguration/ProxyFields.js +3 -3
  218. package/build/cjs/common/components/clusterConfiguration/ProxyFields.js.map +1 -1
  219. package/build/cjs/common/components/clusterConfiguration/utils.js +3 -4
  220. package/build/cjs/common/components/clusterConfiguration/utils.js.map +1 -1
  221. package/build/cjs/common/components/clusterWizard/networkingSteps/AdvancedNetworkFields.js +62 -0
  222. package/build/cjs/common/components/clusterWizard/networkingSteps/AdvancedNetworkFields.js.map +1 -0
  223. package/build/cjs/common/components/clusterWizard/networkingSteps/AvailableSubnetsControl.js +130 -46
  224. package/build/cjs/common/components/clusterWizard/networkingSteps/AvailableSubnetsControl.js.map +1 -1
  225. package/build/cjs/{ocm/components/clusterConfiguration/networkConfiguration/StackTypeControl.js → common/components/clusterWizard/networkingSteps/StackTypeControlGroup.js} +59 -38
  226. package/build/cjs/common/components/clusterWizard/networkingSteps/StackTypeControlGroup.js.map +1 -0
  227. package/build/cjs/{ocm/components/clusterConfiguration/networkConfiguration → common/components/clusterWizard/networkingSteps}/SubnetsDropdown.js +7 -5
  228. package/build/cjs/common/components/clusterWizard/networkingSteps/SubnetsDropdown.js.map +1 -0
  229. package/build/cjs/common/components/clusterWizard/networkingSteps/VirtualIPControlGroup.js +96 -38
  230. package/build/cjs/common/components/clusterWizard/networkingSteps/VirtualIPControlGroup.js.map +1 -1
  231. package/build/cjs/common/components/clusterWizard/networkingSteps/index.js +13 -3
  232. package/build/cjs/common/components/clusterWizard/networkingSteps/index.js.map +1 -1
  233. package/build/cjs/{ocm/components/clusterConfiguration/networkConfiguration → common/components/clusterWizard/networkingSteps}/reorderNetworks.js +2 -2
  234. package/build/cjs/common/components/clusterWizard/networkingSteps/reorderNetworks.js.map +1 -0
  235. package/build/cjs/common/components/hosts/HostStatus.js +8 -6
  236. package/build/cjs/common/components/hosts/HostStatus.js.map +1 -1
  237. package/build/cjs/common/components/hosts/HostValidationGroups.js +2 -3
  238. package/build/cjs/common/components/hosts/HostValidationGroups.js.map +1 -1
  239. package/build/cjs/common/components/hosts/MassChangeHostnameModal.js +7 -13
  240. package/build/cjs/common/components/hosts/MassChangeHostnameModal.js.map +1 -1
  241. package/build/cjs/common/components/hosts/index.js +2 -0
  242. package/build/cjs/common/components/hosts/index.js.map +1 -1
  243. package/build/cjs/common/components/hosts/tableColumns.js +336 -0
  244. package/build/cjs/common/components/hosts/tableColumns.js.map +1 -0
  245. package/build/cjs/common/components/hosts/tableUtils.js +1 -331
  246. package/build/cjs/common/components/hosts/tableUtils.js.map +1 -1
  247. package/build/cjs/common/components/ui/EventsList.js +1 -1
  248. package/build/cjs/common/components/ui/EventsList.js.map +1 -1
  249. package/build/cjs/common/components/ui/PrismCode.js +29 -20
  250. package/build/cjs/common/components/ui/PrismCode.js.map +1 -1
  251. package/build/cjs/common/components/ui/formik/LabelField.js +34 -26
  252. package/build/cjs/common/components/ui/formik/LabelField.js.map +1 -1
  253. package/build/cjs/common/components/ui/formik/validationSchemas.js +60 -78
  254. package/build/cjs/common/components/ui/formik/validationSchemas.js.map +1 -1
  255. package/build/cjs/common/components/ui/index.js +1 -2
  256. package/build/cjs/common/components/ui/index.js.map +1 -1
  257. package/build/cjs/common/config/constants.js +27 -4
  258. package/build/cjs/common/config/constants.js.map +1 -1
  259. package/build/cjs/common/types/clusters.js.map +1 -1
  260. package/build/cjs/ocm/components/clusterConfiguration/OcmBaseDomainField.js +1 -1
  261. package/build/cjs/ocm/components/clusterConfiguration/OcmBaseDomainField.js.map +1 -1
  262. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfiguration.js +6 -12
  263. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfiguration.js.map +1 -1
  264. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationTableBase.js +8 -9
  265. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationTableBase.js.map +1 -1
  266. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.js +6 -16
  267. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.js.map +1 -1
  268. package/build/cjs/ocm/components/clusterDetail/ResetClusterModal.js +1 -1
  269. package/build/cjs/ocm/components/clusterDetail/ResetClusterModal.js.map +1 -1
  270. package/build/cjs/ocm/components/clusterWizard/OperatorsSelect.js +1 -1
  271. package/build/cjs/ocm/components/clusterWizard/OperatorsSelect.js.map +1 -1
  272. package/build/cjs/ocm/components/hosts/ClusterHostsTable.js +7 -8
  273. package/build/cjs/ocm/components/hosts/ClusterHostsTable.js.map +1 -1
  274. package/build/cjs/ocm/components/hosts/HostsDiscoveryTable.js +7 -8
  275. package/build/cjs/ocm/components/hosts/HostsDiscoveryTable.js.map +1 -1
  276. package/build/cjs/ocm/components/hosts/HostsStorageTable.js +5 -6
  277. package/build/cjs/ocm/components/hosts/HostsStorageTable.js.map +1 -1
  278. package/build/cjs/ocm/components/hosts/use-hosts-table.js +2 -3
  279. package/build/cjs/ocm/components/hosts/use-hosts-table.js.map +1 -1
  280. package/lib/cim/components/Agent/AgentStatus.tsx +3 -0
  281. package/lib/cim/components/Agent/AgentTable.tsx +3 -2
  282. package/lib/cim/components/Agent/AgentsSelectionTable.tsx +3 -12
  283. package/lib/cim/components/Agent/BMCForm.tsx +8 -7
  284. package/lib/cim/components/Agent/BMHEventsModal.tsx +87 -0
  285. package/lib/cim/components/Agent/BMHStatus.tsx +17 -17
  286. package/lib/cim/components/Agent/BMHStatusInfo.tsx +94 -0
  287. package/lib/cim/components/Agent/MinimalHWRequirements.tsx +17 -12
  288. package/lib/cim/components/Agent/index.ts +2 -0
  289. package/lib/cim/components/Agent/tableColumns.tsx +257 -0
  290. package/lib/cim/components/Agent/tableUtils.tsx +4 -243
  291. package/lib/cim/components/ClusterDeployment/ClusterDeploymentDetailsTable.tsx +2 -2
  292. package/lib/cim/components/ClusterDeployment/LocationsSelector.tsx +2 -2
  293. package/lib/cim/components/ClusterDeployment/NetworkConfiguration.tsx +61 -44
  294. package/lib/cim/components/ClusterDeployment/clusterDetails/ClusterDetailsFormFields.tsx +2 -2
  295. package/lib/cim/components/ClusterDeployment/hostDiscovery/ClusterDeploymentHostDiscoveryTable.tsx +3 -5
  296. package/lib/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostSelectionStep.tsx +27 -28
  297. package/lib/cim/components/ClusterDeployment/networkConfigurationValidation.ts +30 -36
  298. package/lib/cim/components/ClusterDeployment/networking/ClusterDeploymentHostsNetworkTable.tsx +2 -7
  299. package/lib/cim/components/ClusterDeployment/networking/ClusterDeploymentNetworkingForm.tsx +3 -3
  300. package/lib/cim/components/ClusterDeployment/networking/ClusterDeploymentNetworkingStep.tsx +26 -26
  301. package/lib/cim/components/ClusterDeployment/review/ClusterDeploymentReviewStep.tsx +20 -6
  302. package/lib/cim/components/ClusterDeployment/use-networking-formik.ts +32 -12
  303. package/lib/cim/components/Hypershift/DetailsPage/NodePoolsTable.tsx +2 -2
  304. package/lib/cim/components/Hypershift/HostedClusterWizard/HostsStep/HostsForm.tsx +1 -1
  305. package/lib/{common/components/clusterConfiguration → cim/components/Hypershift/HostedClusterWizard/NetworkStep}/AdvancedNetworkFields.tsx +4 -4
  306. package/lib/cim/components/Hypershift/HostedClusterWizard/NetworkStep/NetworkForm.tsx +1 -1
  307. package/lib/cim/components/Hypershift/modals/AddNodePoolModal.tsx +15 -16
  308. package/lib/cim/components/Hypershift/modals/ManageHostsModal.tsx +15 -16
  309. package/lib/cim/components/Hypershift/modals/NodePoolForm.tsx +1 -1
  310. package/lib/cim/components/Hypershift/modals/RemoveNodePoolModal.tsx +14 -11
  311. package/lib/cim/components/InfraEnv/EnvironmentDetails.tsx +6 -3
  312. package/lib/cim/components/InfraEnv/EnvironmentErrors.tsx +1 -6
  313. package/lib/cim/components/InfraEnv/InfraEnvAgentTable.tsx +6 -6
  314. package/lib/cim/components/common/ResourceAlerts.tsx +4 -4
  315. package/lib/cim/components/helpers/agentStatus.tsx +5 -0
  316. package/lib/cim/components/helpers/toAssisted.ts +15 -15
  317. package/lib/cim/components/modals/AddBmcHostModal.tsx +14 -13
  318. package/lib/cim/components/modals/AddBmcHostYamlForm.tsx +6 -5
  319. package/lib/cim/components/modals/AddBmcHostYamlModal.tsx +8 -7
  320. package/lib/cim/components/modals/AddHostModal.tsx +22 -11
  321. package/lib/cim/components/modals/CimConfiguration/CimConfigurationModal.tsx +70 -66
  322. package/lib/cim/components/modals/EditBMHModal.tsx +2 -3
  323. package/lib/cim/components/modals/EditNtpSourcesModal.tsx +15 -10
  324. package/lib/cim/components/modals/EditProxyModal.tsx +16 -10
  325. package/lib/cim/components/modals/EditPullSecretModal.tsx +14 -10
  326. package/lib/cim/components/modals/EditSSHKeyModal.tsx +16 -13
  327. package/lib/cim/components/modals/MassApproveAgentModal.tsx +16 -8
  328. package/lib/cim/components/modals/MassDeleteAgentModal.tsx +1 -1
  329. package/lib/cim/components/modals/ScaleUpModal.tsx +9 -7
  330. package/lib/cim/hooks/index.tsx +1 -0
  331. package/lib/cim/hooks/types.tsx +4 -1
  332. package/lib/cim/hooks/useEvents.tsx +14 -0
  333. package/lib/cim/types/fromOCP/k8sTypes.ts +13 -0
  334. package/lib/cim/types/k8s/agent-cluster-install.ts +4 -0
  335. package/lib/cim/types/k8s/bare-metal-host.ts +20 -0
  336. package/lib/common/components/clusterConfiguration/DiscoveryInstructions.tsx +1 -1
  337. package/lib/common/components/clusterConfiguration/DiscoveryTroubleshootingModal.tsx +7 -10
  338. package/lib/common/components/clusterConfiguration/ProxyFields.tsx +3 -3
  339. package/lib/common/components/clusterConfiguration/utils.ts +22 -12
  340. package/lib/{ocm/components/clusterConfiguration/networkConfiguration → common/components/clusterWizard/networkingSteps}/AdvancedNetworkFields.tsx +54 -38
  341. package/lib/common/components/clusterWizard/networkingSteps/AvailableSubnetsControl.tsx +221 -53
  342. package/lib/{ocm/components/clusterConfiguration/networkConfiguration/StackTypeControl.tsx → common/components/clusterWizard/networkingSteps/StackTypeControlGroup.tsx} +64 -28
  343. package/lib/{ocm/components/clusterConfiguration/networkConfiguration → common/components/clusterWizard/networkingSteps}/SubnetsDropdown.tsx +4 -7
  344. package/lib/common/components/clusterWizard/networkingSteps/VirtualIPControlGroup.tsx +199 -80
  345. package/lib/common/components/clusterWizard/networkingSteps/index.ts +10 -2
  346. package/lib/{ocm/components/clusterConfiguration/networkConfiguration → common/components/clusterWizard/networkingSteps}/reorderNetworks.ts +2 -1
  347. package/lib/common/components/hosts/HostStatus.tsx +14 -3
  348. package/lib/common/components/hosts/HostValidationGroups.tsx +5 -4
  349. package/lib/common/components/hosts/MassChangeHostnameModal.tsx +44 -38
  350. package/lib/common/components/hosts/index.ts +2 -0
  351. package/lib/common/components/hosts/tableColumns.tsx +411 -0
  352. package/lib/common/components/hosts/tableUtils.tsx +4 -409
  353. package/lib/common/components/hosts/types.ts +1 -0
  354. package/lib/common/components/ui/EventsList.tsx +4 -2
  355. package/lib/common/components/ui/PrismCode.tsx +35 -22
  356. package/lib/common/components/ui/formik/LabelField.tsx +77 -60
  357. package/lib/common/components/ui/formik/validationSchemas.ts +64 -107
  358. package/lib/common/components/ui/index.ts +1 -1
  359. package/lib/common/config/constants.ts +33 -2
  360. package/lib/common/types/clusters.ts +0 -1
  361. package/lib/ocm/components/clusterConfiguration/OcmBaseDomainField.tsx +2 -2
  362. package/lib/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfiguration.tsx +12 -23
  363. package/lib/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationTableBase.tsx +3 -2
  364. package/lib/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.ts +10 -18
  365. package/lib/ocm/components/clusterDetail/ResetClusterModal.tsx +2 -1
  366. package/lib/ocm/components/clusterWizard/OperatorsSelect.tsx +2 -2
  367. package/lib/ocm/components/hosts/ClusterHostsTable.tsx +4 -3
  368. package/lib/ocm/components/hosts/HostsDiscoveryTable.tsx +2 -4
  369. package/lib/ocm/components/hosts/HostsStorageTable.tsx +5 -7
  370. package/lib/ocm/components/hosts/use-hosts-table.tsx +2 -1
  371. package/package.json +3 -3
  372. package/build/@types/common/components/clusterConfiguration/AdvancedNetworkFields.d.ts.map +0 -1
  373. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/AdvancedNetworkFields.d.ts +0 -4
  374. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/AdvancedNetworkFields.d.ts.map +0 -1
  375. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/AvailableSubnetsControl.d.ts +0 -12
  376. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/AvailableSubnetsControl.d.ts.map +0 -1
  377. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/StackTypeControl.d.ts +0 -11
  378. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/StackTypeControl.d.ts.map +0 -1
  379. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/SubnetsDropdown.d.ts.map +0 -1
  380. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/VirtualIPControlGroup.d.ts +0 -9
  381. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/VirtualIPControlGroup.d.ts.map +0 -1
  382. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/reorderNetworks.d.ts.map +0 -1
  383. package/build/cjs/common/components/clusterConfiguration/AdvancedNetworkFields.js.map +0 -1
  384. package/build/cjs/common/components/ui/formik/LabelField.css +0 -43
  385. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/AdvancedNetworkFields.js +0 -53
  386. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/AdvancedNetworkFields.js.map +0 -1
  387. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/AvailableSubnetsControl.js +0 -124
  388. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/AvailableSubnetsControl.js.map +0 -1
  389. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/StackTypeControl.js.map +0 -1
  390. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/SubnetsDropdown.js.map +0 -1
  391. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/VirtualIPControlGroup.js +0 -98
  392. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/VirtualIPControlGroup.js.map +0 -1
  393. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/reorderNetworks.js.map +0 -1
  394. package/lib/common/components/ui/formik/LabelField.css +0 -43
  395. package/lib/ocm/components/clusterConfiguration/networkConfiguration/AvailableSubnetsControl.tsx +0 -208
  396. package/lib/ocm/components/clusterConfiguration/networkConfiguration/VirtualIPControlGroup.tsx +0 -283
  397. /package/build/@types/{common/components/clusterConfiguration → cim/components/Hypershift/HostedClusterWizard/NetworkStep}/AdvancedNetworkFields.d.ts +0 -0
@@ -3,14 +3,11 @@ import { Address4, Address6 } from 'ip-address';
3
3
  import isCIDR from 'is-cidr';
4
4
  import { isInSubnet } from 'is-in-subnet';
5
5
  import * as Yup from 'yup';
6
- import { head } from 'lodash-es';
7
6
  import parseUrl from 'parse-url';
8
7
 
9
8
  import { TFunction } from 'i18next';
10
9
  import {
11
- ApiVip,
12
10
  ClusterNetwork,
13
- IngressVip,
14
11
  MachineNetwork,
15
12
  ServiceNetwork,
16
13
  } from '@openshift-assisted/types/assisted-installer-service';
@@ -29,7 +26,6 @@ import {
29
26
  } from './constants';
30
27
  import { allSubnetsIPv4, getAddress, trimCommaSeparatedList, trimSshPublicKey } from './utils';
31
28
  import { isMajorMinorVersionEqualOrGreater } from '../../../utils';
32
- import { selectApiVip, selectIngressVip } from '../../../selectors';
33
29
  import { ClusterDetailsValues } from '../../clusterWizard/types';
34
30
 
35
31
  const ALPHANUMERIC_REGEX = /^[a-zA-Z0-9]+$/;
@@ -197,7 +193,7 @@ export const macAddressValidationSchema = Yup.string().matches(MAC_REGEX, {
197
193
 
198
194
  export const vipRangeValidationSchema = (
199
195
  hostSubnets: HostSubnets,
200
- { machineNetworks, hostSubnet }: NetworkConfigurationValues,
196
+ { machineNetworks }: NetworkConfigurationValues,
201
197
  allowSuffix: boolean,
202
198
  ) =>
203
199
  Yup.string().test('vip-validation', 'IP Address is outside of selected subnet', (value) => {
@@ -211,17 +207,11 @@ export const vipRangeValidationSchema = (
211
207
  } catch (err) {
212
208
  return true;
213
209
  }
214
- const foundHostSubnets = [];
215
- if (machineNetworks) {
216
- const cidrs = machineNetworks?.map((network) => network.cidr);
217
- foundHostSubnets.push(...hostSubnets.filter((hn) => cidrs?.includes(hn.subnet)));
218
- } else {
219
- const subnet = hostSubnets.find((hn) => hn.subnet === hostSubnet);
220
- if (subnet) {
221
- foundHostSubnets.push(subnet);
222
- }
223
- }
224
- for (const hostSubnet of foundHostSubnets) {
210
+ // Find host subnets that match the selected machine networks
211
+ const cidrs = machineNetworks?.map((network) => network.cidr) ?? [];
212
+ const matchingSubnets = hostSubnets.filter((hostSubnet) => cidrs.includes(hostSubnet.subnet));
213
+
214
+ for (const hostSubnet of matchingSubnets) {
225
215
  if (hostSubnet?.subnet) {
226
216
  // Workaround for bug in CIM backend. hostIDs are empty
227
217
  if (!hostSubnet.hostIDs.length) {
@@ -234,77 +224,59 @@ export const vipRangeValidationSchema = (
234
224
  return false;
235
225
  });
236
226
 
237
- const vipUniqueValidationSchema = (
238
- { ingressVips, apiVips, apiVip, ingressVip }: NetworkConfigurationValues,
239
- useIPArray: boolean,
240
- ) =>
241
- Yup.string().test(
242
- 'vip-uniqueness-validation',
243
- 'The Ingress and API IP addresses cannot be the same.',
244
- (value) => {
245
- if (useIPArray) {
246
- if (!value || ingressVips?.length === 0 || apiVips?.length === 0) {
247
- return true;
248
- }
249
- return selectApiVip({ apiVips }) !== selectIngressVip({ ingressVips });
250
- } else {
251
- if (!value) {
252
- return true;
253
- }
254
- return apiVip !== ingressVip;
255
- }
256
- },
257
- );
258
-
259
227
  const vipBroadcastValidationSchema = ({ machineNetworks }: NetworkConfigurationValues) =>
260
228
  Yup.string().test(
261
229
  'vip-no-broadcast',
262
230
  'The IP address cannot be a network or broadcast address',
263
- (value?: string) => {
264
- const vipAddress = getAddress(value || '')?.address;
265
- const machineNetwork = getAddress((machineNetworks?.length && machineNetworks[0].cidr) || '');
231
+ function (value?: string) {
232
+ if (!value) {
233
+ return true;
234
+ }
235
+
236
+ const vipAddress = getAddress(value)?.address;
237
+ if (!vipAddress) {
238
+ return true;
239
+ }
240
+
241
+ const index = getArrayIndexFromPath(this.path || '');
242
+ const machineNetworkCidr = machineNetworks?.[index]?.cidr ?? machineNetworks?.[0]?.cidr ?? '';
243
+ if (!machineNetworkCidr) {
244
+ return true;
245
+ }
266
246
 
267
- const machineNetworkBroadcast = machineNetwork?.endAddress().address;
268
- const machineNetworkAddress = machineNetwork?.startAddress().address;
247
+ const machineNetwork = getAddress(machineNetworkCidr);
248
+ if (!machineNetwork) {
249
+ return true;
250
+ }
251
+
252
+ const machineNetworkBroadcast = machineNetwork.endAddress().address;
253
+ const machineNetworkAddress = machineNetwork.startAddress().address;
269
254
 
270
255
  return vipAddress !== machineNetworkBroadcast && vipAddress !== machineNetworkAddress;
271
256
  },
272
257
  );
273
258
 
274
- // like .required() but passes for initially empty field
275
- const requiredOnceSet = (initialValue?: string, message?: string) =>
259
+ const alwaysRequired = (message?: string) =>
276
260
  Yup.string().test(
277
- 'required-once-set',
261
+ 'always-required',
278
262
  message || 'The value is required.',
279
- (value?: string): boolean => !!value || !initialValue,
263
+ (value?: string): boolean => !!value,
280
264
  );
281
265
 
266
+ const getArrayIndexFromPath = (path: string): number => {
267
+ const match = path.match(/\[(\d+)\][^\[]*$/); // Prefer the last [...] occurrence for nested array paths like "foo[0].bar[1].ip"
268
+ return match ? parseInt(match[1], 10) : NaN;
269
+ };
270
+
282
271
  export const hostSubnetValidationSchema = Yup.string().when(['managedNetworkingType'], {
283
272
  is: (managedNetworkingType: NetworkConfigurationValues['managedNetworkingType']) =>
284
273
  managedNetworkingType === 'clusterManaged',
285
274
  then: () => Yup.string().notOneOf([NO_SUBNET_SET], 'Host subnet must be selected.'),
286
275
  });
287
276
 
288
- export const vipValidationSchema = (
289
- hostSubnets: HostSubnets,
290
- values: NetworkConfigurationValues,
291
- initialValue?: string,
292
- ) =>
293
- Yup.mixed().when(['vipDhcpAllocation', 'managedNetworkingType'], {
294
- is: (
295
- vipDhcpAllocation: NetworkConfigurationValues['vipDhcpAllocation'],
296
- managedNetworkingType: NetworkConfigurationValues['managedNetworkingType'],
297
- ) => !vipDhcpAllocation && managedNetworkingType !== 'userManaged',
298
- then: () =>
299
- requiredOnceSet(initialValue, 'Required. Please provide an IP address')
300
- .concat(vipRangeValidationSchema(hostSubnets, values, true))
301
- .concat(vipUniqueValidationSchema(values, false)),
302
- });
303
-
304
277
  export const vipNoSuffixValidationSchema = (
305
278
  hostSubnets: HostSubnets,
306
279
  values: NetworkConfigurationValues,
307
- initialValues?: ApiVip[] | IngressVip[],
308
280
  ) =>
309
281
  Yup.mixed().when(['vipDhcpAllocation', 'managedNetworkingType'], {
310
282
  is: (
@@ -326,10 +298,7 @@ export const vipNoSuffixValidationSchema = (
326
298
  if (!value) {
327
299
  return true;
328
300
  }
329
- // this.path looks like: "apiVips[0].ip" or "ingressVips[1].ip"
330
- const path = this.path || '';
331
- const match = path.match(/\[(\d+)\]/);
332
- const index = match ? parseInt(match[1], 10) : NaN;
301
+ const index = getArrayIndexFromPath(this.path || '');
333
302
  if (Number.isNaN(index)) {
334
303
  return true;
335
304
  }
@@ -348,62 +317,50 @@ export const vipNoSuffixValidationSchema = (
348
317
  return mnIsV4 ? ipIsV4 : ipIsV6;
349
318
  },
350
319
  );
320
+ // Ensure API and Ingress VIPs at the same index are not the same
321
+ const vipUniqueSchema = Yup.string().test('vip-uniqueness', function (value?: string) {
322
+ if (!value) {
323
+ return true;
324
+ }
325
+ const index = getArrayIndexFromPath(this.path || '');
326
+ if (Number.isNaN(index)) {
327
+ return true;
328
+ }
329
+ const apiVip = values.apiVips?.[index]?.ip;
330
+ const ingressVip = values.ingressVips?.[index]?.ip;
331
+ if (!apiVip || !ingressVip) {
332
+ return true;
333
+ }
334
+ if (apiVip === ingressVip) {
335
+ const label = index === 0 ? 'primary' : 'secondary';
336
+ return this.createError({
337
+ message: `The ${label} Ingress and API IP addresses cannot be the same.`,
338
+ });
339
+ }
340
+ return true;
341
+ });
351
342
 
352
- return requiredOnceSet(head(initialValues)?.ip, 'Required. Please provide an IP address')
343
+ return alwaysRequired('Required. Please provide an IP address')
353
344
  .concat(ipNoSuffixValidationSchema)
354
345
  .concat(vipFamilyMatchSchema)
355
346
  .concat(vipRangeValidationSchema(hostSubnets, values, false))
356
347
  .concat(vipBroadcastValidationSchema(values))
357
- .concat(vipUniqueValidationSchema(values, true));
348
+ .concat(vipUniqueSchema);
358
349
  },
359
350
  });
360
351
 
361
352
  export const vipArrayValidationSchema = <T extends Yup.Maybe<Yup.AnyObject>>(
362
353
  hostSubnets: HostSubnets,
363
354
  values: NetworkConfigurationValues,
364
- initialValues?: ApiVip[] | IngressVip[],
365
355
  ) =>
366
- (values.managedNetworkingType === 'clusterManaged'
356
+ values.managedNetworkingType === 'clusterManaged'
367
357
  ? Yup.array<T>().of(
368
358
  Yup.object({
369
359
  clusterId: Yup.string(),
370
- ip: vipNoSuffixValidationSchema(hostSubnets, values, initialValues),
360
+ ip: vipNoSuffixValidationSchema(hostSubnets, values),
371
361
  }),
372
362
  )
373
- : Yup.array<T>()
374
- )
375
- .test(
376
- 'vips-length',
377
- 'Both API and ingress APIs must be provided.',
378
- (_value) => values.apiVips?.length === values.ingressVips?.length,
379
- )
380
- .test(
381
- 'vips-match-machine-networks',
382
- 'Primary API and Ingress IPs must match the primary machine network family; secondary must match the secondary machine network family.',
383
- (_vips?: { ip?: string }[]) => {
384
- const machineNetworks = values.machineNetworks || [];
385
- const validateIndex = (idx: number) => {
386
- const cidr = machineNetworks[idx]?.cidr || '';
387
- const mIsIpv4 = isCIDR.v4(cidr);
388
- const mIsIpv6 = isCIDR.v6(cidr);
389
- if (!mIsIpv4 && !mIsIpv6) {
390
- return true;
391
- }
392
- const api = values.apiVips?.[idx]?.ip || '';
393
- const ing = values.ingressVips?.[idx]?.ip || '';
394
- if (!api || !ing) {
395
- return true;
396
- }
397
- const apiOk = mIsIpv4 ? isIPv4Address(api) : isIPv6Address(api);
398
- const ingOk = mIsIpv4 ? isIPv4Address(ing) : isIPv6Address(ing);
399
- return apiOk && ingOk;
400
- };
401
-
402
- const primaryOk = validateIndex(0);
403
- const secondaryOk = validateIndex(1);
404
- return primaryOk && secondaryOk;
405
- },
406
- );
363
+ : Yup.array<T>();
407
364
 
408
365
  export const ipBlockValidationSchema = (reservedCidrs: string | string[] | undefined) =>
409
366
  Yup.string()
@@ -21,7 +21,7 @@ export { default as PopoverIcon } from './PopoverIcon';
21
21
  export { default as WizardNavItem } from './WizardNavItem';
22
22
  export { default as Alerts } from './Alerts';
23
23
  export { default as ExternalLink } from './ExternalLink';
24
- export { default as PrismCode, SimpleAIPrismTheme } from './PrismCode';
24
+ export { default as PrismCode } from './PrismCode';
25
25
  export { default as GridGap } from './GridGap';
26
26
  export { default as EventsList } from './EventsList';
27
27
  export { default as ClusterEventsToolbar } from './ClusterEventsToolbar';
@@ -2,6 +2,7 @@ import { TFunction } from 'i18next';
2
2
  import { ValidationsInfo, HostRole } from '../types/hosts';
3
3
  import {
4
4
  Cluster,
5
+ ClusterDefaultConfig,
5
6
  ClusterValidationId,
6
7
  DiskRole,
7
8
  Event,
@@ -278,9 +279,39 @@ export const CLUSTER_DEFAULT_NETWORK_SETTINGS_IPV4 = {
278
279
  };
279
280
 
280
281
  export const CLUSTER_DEFAULT_NETWORK_SETTINGS_IPV6 = {
281
- clusterNetworkCidr: '2002:db8::/53',
282
+ clusterNetworkCidr: 'fd01::/48',
282
283
  clusterNetworkHostPrefix: 64,
283
- serviceNetworkCidr: '2003:db8::/112',
284
+ serviceNetworkCidr: 'fd02::/112',
285
+ };
286
+
287
+ export const CLUSTER_DEFAULT_NETWORK_SETTINGS: Pick<
288
+ ClusterDefaultConfig,
289
+ | 'clusterNetworksIpv4'
290
+ | 'clusterNetworksDualstack'
291
+ | 'serviceNetworksIpv4'
292
+ | 'serviceNetworksDualstack'
293
+ > = {
294
+ clusterNetworksIpv4: [
295
+ {
296
+ cidr: CLUSTER_DEFAULT_NETWORK_SETTINGS_IPV4.clusterNetworkCidr,
297
+ hostPrefix: CLUSTER_DEFAULT_NETWORK_SETTINGS_IPV4.clusterNetworkHostPrefix,
298
+ },
299
+ ],
300
+ clusterNetworksDualstack: [
301
+ {
302
+ cidr: CLUSTER_DEFAULT_NETWORK_SETTINGS_IPV4.clusterNetworkCidr,
303
+ hostPrefix: CLUSTER_DEFAULT_NETWORK_SETTINGS_IPV4.clusterNetworkHostPrefix,
304
+ },
305
+ {
306
+ cidr: CLUSTER_DEFAULT_NETWORK_SETTINGS_IPV6.clusterNetworkCidr,
307
+ hostPrefix: CLUSTER_DEFAULT_NETWORK_SETTINGS_IPV6.clusterNetworkHostPrefix,
308
+ },
309
+ ],
310
+ serviceNetworksIpv4: [{ cidr: CLUSTER_DEFAULT_NETWORK_SETTINGS_IPV4.serviceNetworkCidr }],
311
+ serviceNetworksDualstack: [
312
+ { cidr: CLUSTER_DEFAULT_NETWORK_SETTINGS_IPV4.serviceNetworkCidr },
313
+ { cidr: CLUSTER_DEFAULT_NETWORK_SETTINGS_IPV6.serviceNetworkCidr },
314
+ ],
284
315
  };
285
316
 
286
317
  /**
@@ -45,7 +45,6 @@ export type NetworkConfigurationValues = Pick<
45
45
  | 'clusterNetworks'
46
46
  | 'serviceNetworks'
47
47
  > & {
48
- hostSubnet?: string;
49
48
  managedNetworkingType: 'userManaged' | 'clusterManaged';
50
49
  stackType?: 'singleStack' | 'dualStack';
51
50
  apiVip?: string;
@@ -36,9 +36,9 @@ export const BaseDnsHelperText = ({
36
36
  Enter the name of your domain [domainname] or [domainname.com]. This cannot be changed after
37
37
  cluster installed. All DNS records must include the cluster name and be subdomains of the
38
38
  base you enter. The full cluster address will be: <br />
39
- <strong>
39
+ <span className="pf-v6-u-font-weight-bold">
40
40
  {name || '[Cluster Name]'}.{baseDnsDomain || '[domainname.com]'}
41
- </strong>
41
+ </span>
42
42
  </HelperTextItem>
43
43
  </HelperText>
44
44
  </FormHelperText>
@@ -2,27 +2,27 @@ import React from 'react';
2
2
  import { useFormikContext } from 'formik';
3
3
  import { useSelector } from 'react-redux';
4
4
  import { Stack, StackItem, Tooltip } from '@patternfly/react-core';
5
- import { VirtualIPControlGroup, VirtualIPControlGroupProps } from './VirtualIPControlGroup';
6
5
  import {
7
6
  canBeDualStack,
8
7
  canSelectNetworkTypeSDN,
9
- clusterNetworksEqual,
10
8
  CpuArchitecture,
11
9
  DUAL_STACK,
12
10
  HostSubnets,
11
+ isAdvNetworkConf,
13
12
  isSNO,
14
13
  NetworkConfigurationValues,
15
14
  selectApiVip,
16
15
  selectIngressVip,
17
- serviceNetworksEqual,
18
16
  } from '../../../../common';
19
17
  import {
20
18
  ManagedNetworkingControlGroup,
21
19
  UserManagedNetworkingTextContent,
20
+ StackTypeControlGroup,
21
+ AvailableSubnetsControl,
22
+ VirtualIPControlGroup,
23
+ VirtualIPControlGroupProps,
24
+ AdvancedNetworkFields,
22
25
  } from '../../../../common/components/clusterWizard/networkingSteps';
23
- import { StackTypeControlGroup } from './StackTypeControl';
24
- import { AvailableSubnetsControl } from './AvailableSubnetsControl';
25
- import AdvancedNetworkFields from './AdvancedNetworkFields';
26
26
  import { selectCurrentClusterPermissionsState } from '../../../store/slices/current-cluster/selectors';
27
27
  import { OcmCheckbox } from '../../ui/OcmFormFields';
28
28
  import { NetworkTypeControlGroup } from '../../../../common/components/clusterWizard/networkingSteps/NetworkTypeControlGroup';
@@ -32,7 +32,6 @@ import {
32
32
  useNewFeatureSupportLevel,
33
33
  } from '../../../../common/components/newFeatureSupportLevels';
34
34
  import {
35
- Cluster,
36
35
  ClusterDefaultConfig,
37
36
  PlatformType,
38
37
  } from '@openshift-assisted/types/assisted-installer-service';
@@ -50,21 +49,6 @@ export type NetworkConfigurationProps = VirtualIPControlGroupProps & {
50
49
  >;
51
50
  };
52
51
 
53
- const isAdvNetworkConf = (
54
- cluster: Cluster,
55
- defaultNetworkValues: Pick<ClusterDefaultConfig, 'clusterNetworksIpv4' | 'serviceNetworksIpv4'>,
56
- ) =>
57
- !(
58
- serviceNetworksEqual(
59
- cluster.serviceNetworks || [],
60
- defaultNetworkValues.serviceNetworksIpv4 || [],
61
- ) &&
62
- clusterNetworksEqual(
63
- cluster.clusterNetworks || [],
64
- defaultNetworkValues.clusterNetworksIpv4 || [],
65
- )
66
- );
67
-
68
52
  const getManagedNetworkingDisabledReason = (
69
53
  isDualStack: boolean,
70
54
  isOracleCloudInfrastructure: boolean,
@@ -270,6 +254,8 @@ const NetworkConfiguration = ({
270
254
  clusterId={cluster.id}
271
255
  isDualStackSelectable={isDualStackSelectable}
272
256
  hostSubnets={hostSubnets}
257
+ defaultNetworkValues={defaultNetworkSettings}
258
+ isViewerMode={isViewerMode}
273
259
  />
274
260
  </StackItem>
275
261
  )}
@@ -293,6 +279,7 @@ const NetworkConfiguration = ({
293
279
  false
294
280
  }
295
281
  openshiftVersion={cluster.openshiftVersion}
282
+ isViewerMode={isViewerMode}
296
283
  />
297
284
  </StackItem>
298
285
  )}
@@ -301,8 +288,10 @@ const NetworkConfiguration = ({
301
288
  <StackItem>
302
289
  <VirtualIPControlGroup
303
290
  cluster={cluster}
291
+ hostSubnets={hostSubnets}
304
292
  isVipDhcpAllocationDisabled={isVipDhcpAllocationDisabled || !isSDNSupported}
305
293
  supportLevel={featureSupportLevelContext.getFeatureSupportLevel('VIP_AUTO_ALLOC')}
294
+ isViewerMode={isViewerMode}
306
295
  />
307
296
  </StackItem>
308
297
  )}
@@ -324,7 +313,7 @@ const NetworkConfiguration = ({
324
313
  </StackItem>
325
314
  {isAdvanced && (
326
315
  <StackItem>
327
- <AdvancedNetworkFields />
316
+ <AdvancedNetworkFields isDisabled={isViewerMode} />
328
317
  </StackItem>
329
318
  )}
330
319
  </Stack>
@@ -1,8 +1,9 @@
1
1
  import * as React from 'react';
2
- import { HostsTableActions, selectSchedulableMasters } from '../../../../common';
3
2
  import NetworkingStatus from '../../hosts/NetworkingStatus';
4
3
  import { useTranslation } from '../../../../common/hooks/use-translation-wrapper';
5
4
  import {
5
+ HostsTableActions,
6
+ selectSchedulableMasters,
6
7
  hostnameColumn,
7
8
  roleColumn,
8
9
  activeNICColumn,
@@ -10,7 +11,7 @@ import {
10
11
  ipv6Column,
11
12
  macAddressColumn,
12
13
  countColumn,
13
- } from '../../../../common/components/hosts/tableUtils';
14
+ } from '../../../../common';
14
15
  import { ActionsResolver, TableRow } from '../../../../common/components/hosts/AITable';
15
16
  import { usePagination } from '../../../../common/components/hosts/usePagination';
16
17
  import { HostDetail } from '../../../../common/components/hosts/HostRowDetail';
@@ -56,7 +56,7 @@ export const getNetworkInitialValues = (
56
56
  ? defaultNetworkValues.clusterNetworksDualstack
57
57
  : defaultNetworkValues.clusterNetworksIpv4?.map((network) => ({
58
58
  ...network,
59
- clusterId: cluster.id,
59
+ clusterId: cluster?.id,
60
60
  }))),
61
61
  serviceNetworks:
62
62
  cluster.serviceNetworks ||
@@ -64,7 +64,7 @@ export const getNetworkInitialValues = (
64
64
  ? defaultNetworkValues.serviceNetworksDualstack
65
65
  : defaultNetworkValues.serviceNetworksIpv4?.map((network) => ({
66
66
  ...network,
67
- clusterId: cluster.id,
67
+ clusterId: cluster?.id,
68
68
  }))),
69
69
  };
70
70
  };
@@ -76,12 +76,8 @@ export const getNetworkConfigurationValidationSchema = (
76
76
  ) =>
77
77
  Yup.lazy((values: NetworkConfigurationValues) =>
78
78
  Yup.object<NetworkConfigurationValues>().shape({
79
- apiVips: vipArrayValidationSchema<ApiVip>(hostSubnets, values, initialValues.apiVips),
80
- ingressVips: vipArrayValidationSchema<IngressVip>(
81
- hostSubnets,
82
- values,
83
- initialValues.ingressVips,
84
- ),
79
+ apiVips: vipArrayValidationSchema<ApiVip>(hostSubnets, values),
80
+ ingressVips: vipArrayValidationSchema<IngressVip>(hostSubnets, values),
85
81
  sshPublicKey: sshPublicKeyValidationSchema,
86
82
  machineNetworks:
87
83
  values.managedNetworkingType === 'userManaged'
@@ -100,21 +96,17 @@ export const getNetworkConfigurationValidationSchema = (
100
96
  is: (stackType: NetworkConfigurationValues['stackType']) => stackType === IPV4_STACK,
101
97
  then: () => clusterNetworksValidationSchema.concat(IPv4ValidationSchema),
102
98
  otherwise: () =>
103
- values.clusterNetworks && values.clusterNetworks?.length >= 2
104
- ? clusterNetworksValidationSchema.concat(
105
- dualStackValidationSchema('cluster network', openshiftVersion),
106
- )
107
- : Yup.array(),
99
+ clusterNetworksValidationSchema.concat(
100
+ dualStackValidationSchema('cluster network', openshiftVersion),
101
+ ),
108
102
  }),
109
103
  serviceNetworks: serviceNetworkValidationSchema.when('stackType', {
110
104
  is: (stackType: NetworkConfigurationValues['stackType']) => stackType === IPV4_STACK,
111
105
  then: () => serviceNetworkValidationSchema.concat(IPv4ValidationSchema),
112
106
  otherwise: () =>
113
- values.serviceNetworks && values.serviceNetworks?.length >= 2
114
- ? serviceNetworkValidationSchema.concat(
115
- dualStackValidationSchema('service network', openshiftVersion),
116
- )
117
- : Yup.array(),
107
+ serviceNetworkValidationSchema.concat(
108
+ dualStackValidationSchema('service network', openshiftVersion),
109
+ ),
118
110
  }),
119
111
  }),
120
112
  );
@@ -79,7 +79,8 @@ const ResetClusterModal: React.FC = () => {
79
79
  </Content>
80
80
 
81
81
  <Content component="p">
82
- <strong>Download the installation logs</strong> to troubleshoot or report a bug.
82
+ <span className="pf-v6-u-font-weight-bold">Download the installation logs</span> to
83
+ troubleshoot or report a bug.
83
84
  <br />
84
85
  Currently, {collectedLogsPercentage}% of the installation logs were collected and are
85
86
  ready for download.
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { ExpandableSection, Stack, StackItem } from '@patternfly/react-core';
2
+ import { Content, ExpandableSection, Stack, StackItem } from '@patternfly/react-core';
3
3
  import {
4
4
  Bundle,
5
5
  Cluster,
@@ -106,7 +106,7 @@ const OperatorsSelect = ({
106
106
  return (
107
107
  <React.Fragment key={categoryName}>
108
108
  <StackItem>
109
- <strong>{categoryName}</strong>
109
+ <Content className="pf-v6-u-font-weight-bold">{categoryName}</Content>
110
110
  </StackItem>
111
111
  {categoryOperators.map((spec) => (
112
112
  <StackItem key={spec.operatorKey}>
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
- import { selectSchedulableMasters, isSNO } from '../../../common';
3
- import { AdditionalNTPSourcesDialogToggle } from './AdditionaNTPSourceDialogToggle';
4
2
  import {
3
+ selectSchedulableMasters,
4
+ isSNO,
5
5
  discoveredAtColumn,
6
6
  disksColumn,
7
7
  hostnameColumn,
@@ -9,7 +9,8 @@ import {
9
9
  roleColumn,
10
10
  statusColumn,
11
11
  cpuCoresColumn,
12
- } from '../../../common/components/hosts/tableUtils';
12
+ } from '../../../common';
13
+ import { AdditionalNTPSourcesDialogToggle } from './AdditionaNTPSourceDialogToggle';
13
14
  import { usePagination } from '../../../common/components/hosts/usePagination';
14
15
  import { useHostsTable, HostsTableModals } from './use-hosts-table';
15
16
  import HostsTable from '../../../common/components/hosts/HostsTable';
@@ -6,9 +6,6 @@ import {
6
6
  isSNO,
7
7
  DeleteHostAction,
8
8
  TableToolbar,
9
- } from '../../../common';
10
- import { HostsTableModals, useHostsTable } from './use-hosts-table';
11
- import {
12
9
  countColumn,
13
10
  cpuCoresColumn,
14
11
  discoveredAtColumn,
@@ -16,7 +13,8 @@ import {
16
13
  hostnameColumn,
17
14
  memoryColumn,
18
15
  roleColumn,
19
- } from '../../../common/components/hosts/tableUtils';
16
+ } from '../../../common';
17
+ import { HostsTableModals, useHostsTable } from './use-hosts-table';
20
18
  import HostsTable from '../../../common/components/hosts/HostsTable';
21
19
  import { HostDetail } from '../../../common/components/hosts/HostRowDetail';
22
20
  import { ExpandComponentProps } from '../../../common/components/hosts/AITable';
@@ -5,18 +5,16 @@ import {
5
5
  disksColumn,
6
6
  hostnameColumn,
7
7
  roleColumn,
8
- } from '../../../common/components/hosts/tableUtils';
9
- import {
10
- numberOfDisksColumn,
11
- odfUsageColumn,
12
- } from '../../../common/components/storage/StorageUtils';
13
- import { useTranslation } from '../../../common/hooks/use-translation-wrapper';
14
- import {
15
8
  hasEnabledOperators,
16
9
  isCompact,
17
10
  selectSchedulableMasters,
18
11
  OPERATOR_NAME_ODF,
19
12
  } from '../../../common';
13
+ import {
14
+ numberOfDisksColumn,
15
+ odfUsageColumn,
16
+ } from '../../../common/components/storage/StorageUtils';
17
+ import { useTranslation } from '../../../common/hooks/use-translation-wrapper';
20
18
  import { usePagination } from '../../../common/components/hosts/usePagination';
21
19
  import { ExpandComponentProps } from '../../../common/components/hosts/AITable';
22
20
  import CommonStorageTable from '../../../common/components/storage/StorageTable';
@@ -9,6 +9,8 @@ import {
9
9
  MassDeleteHostModal,
10
10
  isSNO,
11
11
  ResourceUIState,
12
+ hostnameColumn,
13
+ hostActionResolver,
12
14
  } from '../../../common';
13
15
  import {
14
16
  AdditionalNTPSourcesDialog,
@@ -38,7 +40,6 @@ import {
38
40
  EditHostFormValues,
39
41
  } from '../../../common/components/hosts';
40
42
  import HostsTable from '../../../common/components/hosts/HostsTable';
41
- import { hostActionResolver, hostnameColumn } from '../../../common/components/hosts/tableUtils';
42
43
  import ResetHostModal from './ResetHostModal';
43
44
  import DeleteHostModal from './DeleteHostModal';
44
45
  import { onFetchEvents } from '../fetching/fetchEvents';
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "dependencies": {
3
- "@openshift-assisted/locales": "2.17.0-cim",
4
- "@openshift-assisted/types": "2.17.0-cim",
3
+ "@openshift-assisted/locales": "2.17.1-cim",
4
+ "@openshift-assisted/types": "2.17.1-cim",
5
5
  "@openshift-console/dynamic-plugin-sdk": "1.0.0",
6
6
  "@patternfly/patternfly": "6.2.3",
7
7
  "@patternfly/react-code-editor": "6.2.2",
@@ -140,5 +140,5 @@
140
140
  ]
141
141
  }
142
142
  },
143
- "version": "2.17.0-cim"
143
+ "version": "2.17.1-cim"
144
144
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"AdvancedNetworkFields.d.ts","sourceRoot":"","sources":["../../../../../lib/common/components/clusterConfiguration/AdvancedNetworkFields.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,KAAK,0BAA0B,GAAG;IAChC,iBAAiB,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,QAAA,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,0BAA0B,CAgD/D,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
@@ -1,4 +0,0 @@
1
- import React from 'react';
2
- declare const AdvancedNetworkFields: () => React.JSX.Element;
3
- export default AdvancedNetworkFields;
4
- //# sourceMappingURL=AdvancedNetworkFields.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AdvancedNetworkFields.d.ts","sourceRoot":"","sources":["../../../../../../lib/ocm/components/clusterConfiguration/networkConfiguration/AdvancedNetworkFields.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAiC1B,QAAA,MAAM,qBAAqB,yBAiH1B,CAAC;AAEF,eAAe,qBAAqB,CAAC"}