@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
@@ -0,0 +1,87 @@
1
+ import React from 'react';
2
+ import {
3
+ Modal,
4
+ ModalVariant,
5
+ ModalHeader,
6
+ ModalBody,
7
+ Content,
8
+ ContentVariants,
9
+ } from '@patternfly/react-core';
10
+ import { Table, Thead, Tr, Th, Tbody, Td, InnerScrollContainer } from '@patternfly/react-table';
11
+ import { getHumanizedDateTime, LoadingState, useTranslation } from '../../../common';
12
+ import { useEvents } from '../../hooks';
13
+
14
+ export const BMHEventsModal = ({
15
+ isOpen,
16
+ onClose,
17
+ namespace,
18
+ bmhName,
19
+ }: {
20
+ isOpen: boolean;
21
+ onClose: () => void;
22
+ namespace: string;
23
+ bmhName: string;
24
+ }) => {
25
+ const { t } = useTranslation();
26
+ const [events, loaded, error] = useEvents({
27
+ namespace: namespace,
28
+ isList: true,
29
+ fieldSelector: `involvedObject.name=${bmhName}`,
30
+ });
31
+
32
+ let modalBody: React.ReactNode;
33
+ if (!loaded) {
34
+ modalBody = <LoadingState />;
35
+ } else if (error) {
36
+ modalBody = <Content component={ContentVariants.p}>{error as string}</Content>;
37
+ } else if (!events.length) {
38
+ modalBody = <Content component={ContentVariants.p}>{t('ai:No BMH events found.')}</Content>;
39
+ } else {
40
+ modalBody = (
41
+ <div style={{ height: '400px' }}>
42
+ <InnerScrollContainer>
43
+ <Table
44
+ variant="compact"
45
+ borders={false}
46
+ className="pf-v6-u-mb-sm"
47
+ gridBreakPoint=""
48
+ isStickyHeader
49
+ >
50
+ <Thead>
51
+ <Tr>
52
+ <Th width={25}>{t('ai:Time')}</Th>
53
+ <Th>{t('ai:Type')}</Th>
54
+ <Th>{t('ai:Message')}</Th>
55
+ </Tr>
56
+ </Thead>
57
+ <Tbody>
58
+ {events
59
+ .sort(
60
+ (a, b) =>
61
+ b.metadata?.creationTimestamp?.localeCompare(
62
+ a.metadata?.creationTimestamp || '',
63
+ ) || 0,
64
+ )
65
+ .map((e, i) => (
66
+ <Tr key={`bmc-event-${i}`}>
67
+ <Td className="pf-v6-u-font-weight-bold">
68
+ {getHumanizedDateTime(e.metadata?.creationTimestamp)}
69
+ </Td>
70
+ <Td>{e.type}</Td>
71
+ <Td>{e.message}</Td>
72
+ </Tr>
73
+ ))}
74
+ </Tbody>
75
+ </Table>
76
+ </InnerScrollContainer>
77
+ </div>
78
+ );
79
+ }
80
+
81
+ return (
82
+ <Modal isOpen={isOpen} onClose={onClose} variant={ModalVariant.medium}>
83
+ <ModalHeader title={t('ai:Bare metal host events')} />
84
+ <ModalBody>{modalBody}</ModalBody>
85
+ </Modal>
86
+ );
87
+ };
@@ -1,27 +1,27 @@
1
1
  import { Button, Popover } from '@patternfly/react-core';
2
2
  import * as React from 'react';
3
3
  import { getBMHStatus } from '../helpers/status';
4
+ import { BareMetalHostK8sResource } from '../../types';
5
+ import { BMHStatusInfo } from './BMHStatusInfo';
4
6
 
5
7
  type BMHStatusProps = {
6
8
  bmhStatus: ReturnType<typeof getBMHStatus>;
9
+ bmh: BareMetalHostK8sResource;
7
10
  };
8
11
 
9
- const BMHStatus: React.FC<BMHStatusProps> = ({ bmhStatus }) =>
10
- bmhStatus.errorMessage ? (
11
- <Popover
12
- headerContent="Error"
13
- bodyContent={bmhStatus.errorMessage}
14
- minWidth="30rem"
15
- maxWidth="50rem"
16
- hideOnOutsideClick
17
- zIndex={300}
18
- >
19
- <Button variant="link" isInline>
20
- {bmhStatus.state.title}
21
- </Button>
22
- </Popover>
23
- ) : (
24
- <>{bmhStatus.state.title}</>
25
- );
12
+ const BMHStatus: React.FC<BMHStatusProps> = ({ bmhStatus, bmh }) => (
13
+ <Popover
14
+ aria-label="Bare metal host status details"
15
+ bodyContent={<BMHStatusInfo bmhStatus={bmhStatus} bmh={bmh} />}
16
+ minWidth="30rem"
17
+ maxWidth="50rem"
18
+ hideOnOutsideClick
19
+ zIndex={300}
20
+ >
21
+ <Button variant="link" isInline>
22
+ {bmhStatus.state.title}
23
+ </Button>
24
+ </Popover>
25
+ );
26
26
 
27
27
  export default BMHStatus;
@@ -0,0 +1,94 @@
1
+ import React from 'react';
2
+ import {
3
+ Level,
4
+ LevelItem,
5
+ Alert,
6
+ AlertVariant,
7
+ Content,
8
+ ContentVariants,
9
+ Button,
10
+ ButtonVariant,
11
+ } from '@patternfly/react-core';
12
+ import { CheckCircleIcon } from '@patternfly/react-icons/dist/js/icons/check-circle-icon';
13
+ import { PendingIcon } from '@patternfly/react-icons/dist/js/icons/pending-icon';
14
+ import { ExclamationTriangleIcon } from '@patternfly/react-icons/dist/js/icons/exclamation-triangle-icon';
15
+ import { t_global_color_status_success_default as okColor } from '@patternfly/react-tokens/dist/js/t_global_color_status_success_default';
16
+ import { t_global_icon_color_status_warning_default as warningColor } from '@patternfly/react-tokens/dist/js/t_global_icon_color_status_warning_default';
17
+
18
+ import { getHumanizedDateTime, useTranslation } from '../../../common';
19
+ import { BareMetalHostK8sResource } from '../../types';
20
+ import { getBMHStatus } from '../helpers';
21
+ import { BMHEventsModal } from './BMHEventsModal';
22
+
23
+ export const BMHStatusInfo = ({
24
+ bmhStatus,
25
+ bmh,
26
+ }: {
27
+ bmhStatus: ReturnType<typeof getBMHStatus>;
28
+ bmh: BareMetalHostK8sResource;
29
+ }) => {
30
+ const { t } = useTranslation();
31
+ const [isModalOpen, setModalOpen] = React.useState(false);
32
+
33
+ let alertVariant = AlertVariant.warning;
34
+ if (!!bmh.status?.errorMessage) {
35
+ alertVariant = AlertVariant.danger;
36
+ } else if (
37
+ bmh.status?.provisioning?.state === 'provisioned' ||
38
+ bmh.status?.provisioning?.state === 'externally provisioned'
39
+ ) {
40
+ alertVariant = AlertVariant.success;
41
+ }
42
+
43
+ let icon: React.ReactNode;
44
+ switch (bmh.status?.operationalStatus) {
45
+ case 'OK':
46
+ case 'discovered':
47
+ icon = <CheckCircleIcon color={okColor.value} />;
48
+ break;
49
+ case 'error':
50
+ icon = <ExclamationTriangleIcon color={warningColor.value} />;
51
+ break;
52
+ default:
53
+ icon = <PendingIcon />;
54
+ break;
55
+ }
56
+
57
+ return (
58
+ <>
59
+ <Level>
60
+ <LevelItem className="pf-v6-u-font-weight-bold">{t('ai:Bare metal host')}</LevelItem>
61
+ <LevelItem>
62
+ {bmh.status?.operationalStatus} {icon}
63
+ </LevelItem>
64
+ </Level>
65
+ <Alert title={bmhStatus.state.title} variant={alertVariant} isInline>
66
+ {!!bmh.status?.errorMessage && (
67
+ <Content component={ContentVariants.p}>{bmh.status?.errorMessage}</Content>
68
+ )}
69
+
70
+ <Level hasGutter>
71
+ <LevelItem>
72
+ <Button variant={ButtonVariant.link} isInline onClick={() => setModalOpen(true)}>
73
+ {t('ai:View BMH events')}
74
+ </Button>
75
+ </LevelItem>
76
+ <LevelItem>
77
+ <Content component={ContentVariants.small}>
78
+ {t('ai:Last updated:')} {getHumanizedDateTime(bmh.status?.lastUpdated)}
79
+ </Content>
80
+ </LevelItem>
81
+ </Level>
82
+ </Alert>
83
+
84
+ {isModalOpen && (
85
+ <BMHEventsModal
86
+ isOpen={isModalOpen}
87
+ onClose={() => setModalOpen(false)}
88
+ namespace={bmh.metadata?.namespace || ''}
89
+ bmhName={bmh.metadata?.name || ''}
90
+ />
91
+ )}
92
+ </>
93
+ );
94
+ };
@@ -1,6 +1,13 @@
1
1
  import * as React from 'react';
2
- import { Button, ButtonVariant } from '@patternfly/react-core';
3
- import { Modal, ModalVariant } from '@patternfly/react-core/deprecated';
2
+ import {
3
+ Button,
4
+ ButtonVariant,
5
+ Modal,
6
+ ModalBody,
7
+ ModalFooter,
8
+ ModalHeader,
9
+ ModalVariant,
10
+ } from '@patternfly/react-core';
4
11
  import { InfoCircleIcon } from '@patternfly/react-icons/dist/js/icons/info-circle-icon';
5
12
 
6
13
  import { ConfigMapK8sResource } from '../../types';
@@ -100,18 +107,16 @@ export const MinimalHWRequirementsModal = ({
100
107
  }: MinimalHWRequirementsModalProps) => {
101
108
  const { t } = useTranslation();
102
109
  return (
103
- <Modal
104
- title={t('ai:Minimum hardware requirements')}
105
- isOpen={isOpen}
106
- actions={[
110
+ <Modal isOpen={isOpen} onClose={onClose} variant={ModalVariant.medium}>
111
+ <ModalHeader title={t('ai:Minimum hardware requirements')} />
112
+ <ModalBody>
113
+ <HostRequirements {...getHWRequirements(aiConfigMap)} isSNOCluster={isSNOCluster} />
114
+ </ModalBody>
115
+ <ModalFooter>
107
116
  <Button key="close" variant={ButtonVariant.primary} onClick={onClose}>
108
117
  {t('ai:Close')}
109
- </Button>,
110
- ]}
111
- onClose={onClose}
112
- variant={ModalVariant.medium}
113
- >
114
- <HostRequirements {...getHWRequirements(aiConfigMap)} isSNOCluster={isSNOCluster} />
118
+ </Button>
119
+ </ModalFooter>
115
120
  </Modal>
116
121
  );
117
122
  };
@@ -1,3 +1,5 @@
1
1
  export { default as AgentTable } from './AgentTable';
2
2
  export { default as BMCForm } from './BMCForm';
3
3
  export * from './types';
4
+ export * from './tableColumns';
5
+ export * from './tableUtils';
@@ -0,0 +1,257 @@
1
+ import * as React from 'react';
2
+ import { TFunction } from 'i18next';
3
+ import { Link } from 'react-router-dom-v5-compat';
4
+ import { Host } from '@openshift-assisted/types/assisted-installer-service';
5
+ import { HostsTableActions, getInventory, getHostname, Hostname } from '../../../common';
6
+ import { TableRow } from '../../../common/components/hosts/AITable';
7
+ import { HostStatus } from '../../../common/components/hosts/types';
8
+ import { AgentK8sResource, BareMetalHostK8sResource } from '../../types';
9
+ import { AgentTableActions, ClusterDeploymentWizardStepsType } from '../ClusterDeployment';
10
+ import { AGENT_BMH_NAME_LABEL_KEY } from '../common';
11
+ import {
12
+ getBMHStatus,
13
+ getWizardStepAgentStatus,
14
+ getAgentStatus,
15
+ getInfraEnvNameOfAgent,
16
+ } from '../helpers';
17
+ import { AgentMachineK8sResource } from '../Hypershift';
18
+ import AgentStatus from './AgentStatus';
19
+ import BMHStatus from './BMHStatus';
20
+ import { BMHStatusInfo } from './BMHStatusInfo';
21
+
22
+ export const agentHostnameColumn = (
23
+ t: TFunction,
24
+ hosts: Host[],
25
+ agents: AgentK8sResource[],
26
+ bareMetalHosts: BareMetalHostK8sResource[],
27
+ onEditHostname?: HostsTableActions['onEditHost'],
28
+ canEditHostname?: HostsTableActions['canEditHostname'],
29
+ canEditBMH?: HostsTableActions['canEditBMH'],
30
+ ): TableRow<Host> => ({
31
+ header: {
32
+ title: t<string>('ai:Hostname'),
33
+ props: {
34
+ id: 'col-header-hostname', // ACM jest tests require id over testId
35
+ modifier: 'breakWord',
36
+ },
37
+ sort: true,
38
+ },
39
+ cell: (host) => {
40
+ const inventory = getInventory(host);
41
+ const editHostname = onEditHostname ? () => onEditHostname(host) : undefined;
42
+ const computedHostname = getHostname(host, inventory);
43
+
44
+ let readonly = true;
45
+
46
+ const agent = agents.find((a) => a.metadata?.uid === host.id);
47
+ if (agent) {
48
+ readonly = canEditHostname ? !canEditHostname(host) : false;
49
+ } else {
50
+ const bmh = bareMetalHosts.find((bmh) => bmh.metadata?.uid === host.id);
51
+ if (bmh && canEditBMH) {
52
+ readonly = !canEditBMH(host);
53
+ }
54
+ }
55
+
56
+ return {
57
+ title: (
58
+ <Hostname
59
+ host={host}
60
+ inventory={inventory}
61
+ onEditHostname={editHostname}
62
+ hosts={hosts}
63
+ readonly={readonly}
64
+ />
65
+ ),
66
+ props: { 'data-testid': 'host-name' },
67
+ sortableValue: computedHostname || '',
68
+ };
69
+ },
70
+ });
71
+
72
+ export const discoveryTypeColumn = (
73
+ agents: AgentK8sResource[],
74
+ bareMetalHosts: BareMetalHostK8sResource[],
75
+ t: TFunction,
76
+ ): TableRow<Host> => {
77
+ return {
78
+ header: {
79
+ title: t<string>('ai:Discovery type'),
80
+ props: {
81
+ id: 'col-header-discovery-type',
82
+ },
83
+ sort: true,
84
+ },
85
+ cell: (host) => {
86
+ const agent = agents.find((a) => a.metadata?.uid === host.id);
87
+ let discoveryType = t<string>('ai:Unknown');
88
+ if (agent) {
89
+ // eslint-disable-next-line no-prototype-builtins
90
+ discoveryType = agent?.metadata?.labels?.hasOwnProperty(AGENT_BMH_NAME_LABEL_KEY)
91
+ ? t<string>('ai:BMC')
92
+ : t<string>('ai:Discovery ISO');
93
+ } else {
94
+ const bmh = bareMetalHosts.find((bmh) => bmh.metadata?.uid === host.id);
95
+ if (bmh) {
96
+ discoveryType = t<string>('ai:BMC');
97
+ }
98
+ }
99
+ return {
100
+ title: discoveryType,
101
+ props: { 'data-testid': 'discovery-type' },
102
+ sortableValue: discoveryType,
103
+ };
104
+ },
105
+ };
106
+ };
107
+
108
+ type AgentStatusColumnProps = {
109
+ agents: AgentK8sResource[];
110
+ agentStatuses: HostStatus<string>;
111
+ bareMetalHosts?: BareMetalHostK8sResource[];
112
+ bmhStatuses?: HostStatus<string>;
113
+ onEditHostname?: AgentTableActions['onEditHost'];
114
+ onApprove?: AgentTableActions['onApprove'];
115
+ wizardStepId?: ClusterDeploymentWizardStepsType;
116
+ t: TFunction;
117
+ isDay2?: boolean;
118
+ };
119
+
120
+ export const agentStatusColumn = ({
121
+ agents,
122
+ agentStatuses,
123
+ bareMetalHosts,
124
+ bmhStatuses,
125
+ onEditHostname,
126
+ onApprove,
127
+ wizardStepId,
128
+ t,
129
+ isDay2,
130
+ }: AgentStatusColumnProps): TableRow<Host> => {
131
+ return {
132
+ header: {
133
+ title: t<string>('ai:Status'),
134
+ props: {
135
+ id: 'col-header-infraenvstatus',
136
+ },
137
+ sort: true,
138
+ },
139
+ cell: (host) => {
140
+ const agent = agents.find((a) => a.metadata?.uid === host.id);
141
+ const bmh = bareMetalHosts?.find(
142
+ (b) =>
143
+ b.metadata?.annotations?.['bmac.agent-install.openshift.io/hostname'] ===
144
+ host.requestedHostname,
145
+ );
146
+
147
+ let bmhStatus;
148
+ let title: React.ReactNode = '--';
149
+ if (agent) {
150
+ const editHostname = onEditHostname ? () => onEditHostname(agent) : undefined;
151
+ title = (
152
+ <AgentStatus
153
+ agent={agent}
154
+ onApprove={onApprove}
155
+ onEditHostname={editHostname}
156
+ wizardStepId={wizardStepId}
157
+ isDay2={isDay2}
158
+ additionalBMHInfo={
159
+ bmh &&
160
+ bmhStatuses && <BMHStatusInfo bmhStatus={getBMHStatus(bmh, bmhStatuses)} bmh={bmh} />
161
+ }
162
+ />
163
+ );
164
+ } else if (bmh && bmhStatuses) {
165
+ bmhStatus = getBMHStatus(bmh, bmhStatuses);
166
+ title = <BMHStatus bmhStatus={bmhStatus} bmh={bmh} />;
167
+ }
168
+
169
+ return {
170
+ title,
171
+ props: { 'data-testid': 'host-status' },
172
+ sortableValue: agent
173
+ ? wizardStepId
174
+ ? getWizardStepAgentStatus(agent, wizardStepId, t).status.title
175
+ : getAgentStatus(agent, agentStatuses).status.title
176
+ : bmhStatus?.state.title || '',
177
+ };
178
+ },
179
+ };
180
+ };
181
+
182
+ export const clusterColumn = (
183
+ agents: AgentK8sResource[],
184
+ agentMachines: AgentMachineK8sResource[],
185
+ getClusterDeploymentLink: (cd: { name: string; namespace: string }) => string,
186
+ t: TFunction,
187
+ ): TableRow<Host> => {
188
+ return {
189
+ header: {
190
+ title: t<string>('ai:Cluster'),
191
+ props: {
192
+ id: 'col-header-cluster',
193
+ },
194
+ sort: true,
195
+ },
196
+ cell: (host) => {
197
+ const agent = agents.find((a) => a.metadata?.uid === host.id);
198
+ let cdLink: string | undefined = undefined;
199
+ if (agent?.spec?.clusterDeploymentName) {
200
+ //hypershift
201
+ const amNamespace = agent.metadata?.annotations?.['agentMachineRefNamespace'];
202
+ if (amNamespace) {
203
+ const am = agentMachines.find(
204
+ (am) =>
205
+ am.status?.agentRef?.name === agent.metadata?.name &&
206
+ am.status?.agentRef?.namespace === agent.metadata?.namespace,
207
+ );
208
+ const nodePool = am?.metadata?.annotations?.['hypershift.openshift.io/nodePool'];
209
+ if (nodePool) {
210
+ const hcNamespace = nodePool.split('/')[0];
211
+ const hcName = agent.spec.clusterDeploymentName.name;
212
+ cdLink = getClusterDeploymentLink({ name: hcName, namespace: hcNamespace });
213
+ }
214
+ } else {
215
+ cdLink = getClusterDeploymentLink(agent.spec.clusterDeploymentName);
216
+ }
217
+ }
218
+ return {
219
+ title: cdLink ? <Link to={cdLink}>{agent?.spec?.clusterDeploymentName?.name}</Link> : '--',
220
+ props: { 'data-testid': 'cluster' },
221
+ sortableValue: agent?.spec?.clusterDeploymentName?.name ?? '--',
222
+ };
223
+ },
224
+ };
225
+ };
226
+
227
+ export const infraEnvColumn = (agents: AgentK8sResource[], t: TFunction): TableRow<Host> => {
228
+ return {
229
+ header: {
230
+ title: t<string>('ai:Infrastructure env'),
231
+ props: {
232
+ id: 'col-header-infraenv',
233
+ },
234
+ sort: true,
235
+ },
236
+ cell: (host) => {
237
+ const agent = agents.find((a) => a.metadata?.uid === host.id);
238
+ const infraEnvName = getInfraEnvNameOfAgent(agent);
239
+ const title = infraEnvName ? (
240
+ <Link
241
+ to={`/multicloud/infrastructure/environments/details/${
242
+ agent?.metadata?.namespace || ''
243
+ }/${infraEnvName}/overview`}
244
+ >
245
+ {infraEnvName}
246
+ </Link>
247
+ ) : (
248
+ '--'
249
+ );
250
+ return {
251
+ title,
252
+ props: { 'data-testid': 'infra-env' },
253
+ sortableValue: infraEnvName,
254
+ };
255
+ },
256
+ };
257
+ };