@openshift-assisted/ui-lib 2.17.0-cim → 2.17.3-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 (562) 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/clusterDetails/ClusterDeploymentDetailsForm.d.ts.map +1 -1
  22. package/build/@types/cim/components/ClusterDeployment/clusterDetails/ClusterDetailsFormFields.d.ts +0 -1
  23. package/build/@types/cim/components/ClusterDeployment/clusterDetails/ClusterDetailsFormFields.d.ts.map +1 -1
  24. package/build/@types/cim/components/ClusterDeployment/hostDiscovery/ClusterDeploymentHostDiscoveryTable.d.ts.map +1 -1
  25. package/build/@types/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostSelectionStep.d.ts.map +1 -1
  26. package/build/@types/cim/components/ClusterDeployment/networkConfigurationValidation.d.ts +1 -1
  27. package/build/@types/cim/components/ClusterDeployment/networkConfigurationValidation.d.ts.map +1 -1
  28. package/build/@types/cim/components/ClusterDeployment/networking/ClusterDeploymentHostsNetworkTable.d.ts.map +1 -1
  29. package/build/@types/cim/components/ClusterDeployment/review/ClusterDeploymentReviewStep.d.ts.map +1 -1
  30. package/build/@types/cim/components/ClusterDeployment/use-networking-formik.d.ts +9 -5
  31. package/build/@types/cim/components/ClusterDeployment/use-networking-formik.d.ts.map +1 -1
  32. package/build/@types/cim/components/Hypershift/HostedClusterWizard/HostsStep/HostsStep.d.ts.map +1 -1
  33. package/build/@types/cim/components/Hypershift/HostedClusterWizard/NetworkStep/AdvancedNetworkFields.d.ts.map +1 -0
  34. package/build/@types/cim/components/Hypershift/modals/AddNodePoolModal.d.ts.map +1 -1
  35. package/build/@types/cim/components/Hypershift/modals/ManageHostsModal.d.ts.map +1 -1
  36. package/build/@types/cim/components/Hypershift/modals/RemoveNodePoolModal.d.ts.map +1 -1
  37. package/build/@types/cim/components/InfraEnv/EnvironmentDetails.d.ts.map +1 -1
  38. package/build/@types/cim/components/InfraEnv/EnvironmentErrors.d.ts +0 -1
  39. package/build/@types/cim/components/InfraEnv/EnvironmentErrors.d.ts.map +1 -1
  40. package/build/@types/cim/components/InfraEnv/InfraEnvFormPage.d.ts.map +1 -1
  41. package/build/@types/cim/components/helpers/agentStatus.d.ts.map +1 -1
  42. package/build/@types/cim/components/helpers/versions.d.ts +1 -1
  43. package/build/@types/cim/components/helpers/versions.d.ts.map +1 -1
  44. package/build/@types/cim/components/modals/AddBmcHostModal.d.ts.map +1 -1
  45. package/build/@types/cim/components/modals/AddBmcHostYamlForm.d.ts.map +1 -1
  46. package/build/@types/cim/components/modals/AddBmcHostYamlModal.d.ts.map +1 -1
  47. package/build/@types/cim/components/modals/AddHostModal.d.ts.map +1 -1
  48. package/build/@types/cim/components/modals/CimConfiguration/CimConfigurationModal.d.ts.map +1 -1
  49. package/build/@types/cim/components/modals/EditBMHModal.d.ts.map +1 -1
  50. package/build/@types/cim/components/modals/EditNtpSourcesModal.d.ts.map +1 -1
  51. package/build/@types/cim/components/modals/EditProxyModal.d.ts.map +1 -1
  52. package/build/@types/cim/components/modals/EditPullSecretModal.d.ts.map +1 -1
  53. package/build/@types/cim/components/modals/EditSSHKeyModal.d.ts.map +1 -1
  54. package/build/@types/cim/components/modals/MassApproveAgentModal.d.ts.map +1 -1
  55. package/build/@types/cim/components/modals/ScaleUpModal.d.ts.map +1 -1
  56. package/build/@types/cim/hooks/index.d.ts +1 -0
  57. package/build/@types/cim/hooks/index.d.ts.map +1 -1
  58. package/build/@types/cim/hooks/types.d.ts +1 -1
  59. package/build/@types/cim/hooks/types.d.ts.map +1 -1
  60. package/build/@types/cim/hooks/useEvents.d.ts +4 -0
  61. package/build/@types/cim/hooks/useEvents.d.ts.map +1 -0
  62. package/build/@types/cim/types/fromOCP/k8sTypes.d.ts +12 -0
  63. package/build/@types/cim/types/fromOCP/k8sTypes.d.ts.map +1 -1
  64. package/build/@types/cim/types/k8s/agent-cluster-install.d.ts +4 -0
  65. package/build/@types/cim/types/k8s/agent-cluster-install.d.ts.map +1 -1
  66. package/build/@types/cim/types/k8s/bare-metal-host.d.ts +20 -0
  67. package/build/@types/cim/types/k8s/bare-metal-host.d.ts.map +1 -1
  68. package/build/@types/common/components/clusterConfiguration/DiscoveryImageConfigForm.d.ts.map +1 -1
  69. package/build/@types/common/components/clusterConfiguration/DiscoveryTroubleshootingModal.d.ts.map +1 -1
  70. package/build/@types/common/components/clusterConfiguration/utils.d.ts +2 -2
  71. package/build/@types/common/components/clusterConfiguration/utils.d.ts.map +1 -1
  72. package/build/@types/common/components/clusterWizard/clusterDetailsValidation.d.ts.map +1 -1
  73. package/build/@types/common/components/clusterWizard/networkingSteps/AdvancedNetworkFields.d.ts +7 -0
  74. package/build/@types/common/components/clusterWizard/networkingSteps/AdvancedNetworkFields.d.ts.map +1 -0
  75. package/build/@types/common/components/clusterWizard/networkingSteps/AvailableSubnetsControl.d.ts +10 -6
  76. package/build/@types/common/components/clusterWizard/networkingSteps/AvailableSubnetsControl.d.ts.map +1 -1
  77. package/build/@types/common/components/clusterWizard/networkingSteps/StackTypeControlGroup.d.ts +13 -0
  78. package/build/@types/common/components/clusterWizard/networkingSteps/StackTypeControlGroup.d.ts.map +1 -0
  79. package/build/@types/{ocm/components/clusterConfiguration/networkConfiguration → common/components/clusterWizard/networkingSteps}/SubnetsDropdown.d.ts +1 -1
  80. package/build/@types/common/components/clusterWizard/networkingSteps/SubnetsDropdown.d.ts.map +1 -0
  81. package/build/@types/common/components/clusterWizard/networkingSteps/VirtualIPControlGroup.d.ts +4 -2
  82. package/build/@types/common/components/clusterWizard/networkingSteps/VirtualIPControlGroup.d.ts.map +1 -1
  83. package/build/@types/common/components/clusterWizard/networkingSteps/index.d.ts +7 -2
  84. package/build/@types/common/components/clusterWizard/networkingSteps/index.d.ts.map +1 -1
  85. package/build/@types/{ocm/components/clusterConfiguration/networkConfiguration → common/components/clusterWizard/networkingSteps}/reorderNetworks.d.ts +1 -1
  86. package/build/@types/common/components/clusterWizard/networkingSteps/reorderNetworks.d.ts.map +1 -0
  87. package/build/@types/common/components/hosts/AdditionalNTPSourcesDialog.d.ts.map +1 -1
  88. package/build/@types/common/components/hosts/EditHostForm.d.ts.map +1 -1
  89. package/build/@types/common/components/hosts/HostStatus.d.ts.map +1 -1
  90. package/build/@types/common/components/hosts/HostValidationGroups.d.ts.map +1 -1
  91. package/build/@types/common/components/hosts/MassChangeHostnameModal.d.ts.map +1 -1
  92. package/build/@types/common/components/hosts/index.d.ts +2 -0
  93. package/build/@types/common/components/hosts/index.d.ts.map +1 -1
  94. package/build/@types/common/components/hosts/tableColumns.d.ts +21 -0
  95. package/build/@types/common/components/hosts/tableColumns.d.ts.map +1 -0
  96. package/build/@types/common/components/hosts/tableUtils.d.ts +3 -21
  97. package/build/@types/common/components/hosts/tableUtils.d.ts.map +1 -1
  98. package/build/@types/common/components/hosts/types.d.ts +1 -0
  99. package/build/@types/common/components/hosts/types.d.ts.map +1 -1
  100. package/build/@types/common/components/ui/EventsList.d.ts.map +1 -1
  101. package/build/@types/common/components/ui/PrismCode.d.ts +13 -11
  102. package/build/@types/common/components/ui/PrismCode.d.ts.map +1 -1
  103. package/build/@types/common/components/ui/formik/LabelField.d.ts +3 -11
  104. package/build/@types/common/components/ui/formik/LabelField.d.ts.map +1 -1
  105. package/build/@types/common/components/ui/formik/index.d.ts +0 -2
  106. package/build/@types/common/components/ui/formik/index.d.ts.map +1 -1
  107. package/build/@types/common/components/ui/index.d.ts +1 -1
  108. package/build/@types/common/components/ui/index.d.ts.map +1 -1
  109. package/build/@types/common/config/constants.d.ts +2 -1
  110. package/build/@types/common/config/constants.d.ts.map +1 -1
  111. package/build/@types/common/index.d.ts +1 -0
  112. package/build/@types/common/index.d.ts.map +1 -1
  113. package/build/@types/common/types/clusters.d.ts +0 -1
  114. package/build/@types/common/types/clusters.d.ts.map +1 -1
  115. package/build/@types/common/utils.d.ts +2 -2
  116. package/build/@types/common/utils.d.ts.map +1 -1
  117. package/build/@types/common/validationSchemas/addressValidation.d.ts +18 -0
  118. package/build/@types/common/validationSchemas/addressValidation.d.ts.map +1 -0
  119. package/build/@types/common/validationSchemas/clusterDetailsValidation.d.ts +8 -0
  120. package/build/@types/common/validationSchemas/clusterDetailsValidation.d.ts.map +1 -0
  121. package/build/@types/common/{components/ui/formik → validationSchemas}/constants.d.ts +1 -3
  122. package/build/@types/common/validationSchemas/constants.d.ts.map +1 -0
  123. package/build/@types/common/validationSchemas/hostnameValidation.d.ts +4 -0
  124. package/build/@types/common/validationSchemas/hostnameValidation.d.ts.map +1 -0
  125. package/build/@types/common/validationSchemas/index.d.ts +11 -0
  126. package/build/@types/common/validationSchemas/index.d.ts.map +1 -0
  127. package/build/@types/common/validationSchemas/networkingValidation.d.ts +18 -0
  128. package/build/@types/common/validationSchemas/networkingValidation.d.ts.map +1 -0
  129. package/build/@types/common/validationSchemas/ntpValidation.d.ts +4 -0
  130. package/build/@types/common/validationSchemas/ntpValidation.d.ts.map +1 -0
  131. package/build/@types/common/validationSchemas/proxyValidation.d.ts +11 -0
  132. package/build/@types/common/validationSchemas/proxyValidation.d.ts.map +1 -0
  133. package/build/@types/common/validationSchemas/pullSecretValidation.d.ts +4 -0
  134. package/build/@types/common/validationSchemas/pullSecretValidation.d.ts.map +1 -0
  135. package/build/@types/common/validationSchemas/regexes.d.ts +14 -0
  136. package/build/@types/common/validationSchemas/regexes.d.ts.map +1 -0
  137. package/build/@types/common/validationSchemas/sshValidation.d.ts +5 -0
  138. package/build/@types/common/validationSchemas/sshValidation.d.ts.map +1 -0
  139. package/build/@types/common/validationSchemas/utils.d.ts +7 -0
  140. package/build/@types/common/validationSchemas/utils.d.ts.map +1 -0
  141. package/build/@types/ocm/components/clusterConfiguration/OcmDiscoveryImageConfigForm.d.ts.map +1 -1
  142. package/build/@types/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifests.d.ts.map +1 -1
  143. package/build/@types/ocm/components/clusterConfiguration/manifestsConfiguration/components/customManifestsValidationSchema.d.ts +2 -1
  144. package/build/@types/ocm/components/clusterConfiguration/manifestsConfiguration/components/customManifestsValidationSchema.d.ts.map +1 -1
  145. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfiguration.d.ts +1 -1
  146. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfiguration.d.ts.map +1 -1
  147. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationForm.d.ts.map +1 -1
  148. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationTableBase.d.ts.map +1 -1
  149. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.d.ts +2 -1
  150. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.d.ts.map +1 -1
  151. package/build/@types/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/FormViewHosts.d.ts.map +1 -1
  152. package/build/@types/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/formViewHostsValidationSchema.d.ts +2 -1
  153. package/build/@types/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/formViewHostsValidationSchema.d.ts.map +1 -1
  154. package/build/@types/ocm/components/clusterConfiguration/staticIp/components/YamlView/YamlView.d.ts.map +1 -1
  155. package/build/@types/ocm/components/clusterConfiguration/staticIp/components/YamlView/yamlViewValidationSchema.d.ts +2 -1
  156. package/build/@types/ocm/components/clusterConfiguration/staticIp/components/YamlView/yamlViewValidationSchema.d.ts.map +1 -1
  157. package/build/@types/ocm/components/clusterDetail/ResetClusterModal.d.ts.map +1 -1
  158. package/build/@types/ocm/components/clusterWizard/disconnected/OptionalConfigurationsStep.d.ts.map +1 -1
  159. package/build/@types/ocm/components/hosts/ClusterHostsTable.d.ts.map +1 -1
  160. package/build/@types/ocm/components/hosts/HostsDiscoveryTable.d.ts.map +1 -1
  161. package/build/@types/ocm/components/hosts/HostsStorageTable.d.ts.map +1 -1
  162. package/build/@types/ocm/components/hosts/UpdateDay2ApiVipForm.d.ts.map +1 -1
  163. package/build/@types/ocm/components/hosts/use-hosts-table.d.ts.map +1 -1
  164. package/build/cjs/cim/components/Agent/AgentStatus.js +2 -2
  165. package/build/cjs/cim/components/Agent/AgentStatus.js.map +1 -1
  166. package/build/cjs/cim/components/Agent/AgentTable.js +10 -9
  167. package/build/cjs/cim/components/Agent/AgentTable.js.map +1 -1
  168. package/build/cjs/cim/components/Agent/AgentsSelectionTable.js +9 -8
  169. package/build/cjs/cim/components/Agent/AgentsSelectionTable.js.map +1 -1
  170. package/build/cjs/cim/components/Agent/BMCForm.js +7 -8
  171. package/build/cjs/cim/components/Agent/BMCForm.js.map +1 -1
  172. package/build/cjs/cim/components/Agent/BMHEventsModal.js +54 -0
  173. package/build/cjs/cim/components/Agent/BMHEventsModal.js.map +1 -0
  174. package/build/cjs/cim/components/Agent/BMHStatus.js +3 -2
  175. package/build/cjs/cim/components/Agent/BMHStatus.js.map +1 -1
  176. package/build/cjs/cim/components/Agent/BMHStatusInfo.js +59 -0
  177. package/build/cjs/cim/components/Agent/BMHStatusInfo.js.map +1 -0
  178. package/build/cjs/cim/components/Agent/MinimalHWRequirements.js +6 -5
  179. package/build/cjs/cim/components/Agent/MinimalHWRequirements.js.map +1 -1
  180. package/build/cjs/cim/components/Agent/index.js +2 -0
  181. package/build/cjs/cim/components/Agent/index.js.map +1 -1
  182. package/build/cjs/cim/components/Agent/tableColumns.js +184 -0
  183. package/build/cjs/cim/components/Agent/tableColumns.js.map +1 -0
  184. package/build/cjs/cim/components/Agent/tableUtils.js +4 -174
  185. package/build/cjs/cim/components/Agent/tableUtils.js.map +1 -1
  186. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentDetailsTable.js +10 -10
  187. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentDetailsTable.js.map +1 -1
  188. package/build/cjs/cim/components/ClusterDeployment/LocationsSelector.js +2 -2
  189. package/build/cjs/cim/components/ClusterDeployment/LocationsSelector.js.map +1 -1
  190. package/build/cjs/cim/components/ClusterDeployment/NetworkConfiguration.js +28 -38
  191. package/build/cjs/cim/components/ClusterDeployment/NetworkConfiguration.js.map +1 -1
  192. package/build/cjs/cim/components/ClusterDeployment/clusterDetails/ClusterDeploymentDetailsForm.js +9 -15
  193. package/build/cjs/cim/components/ClusterDeployment/clusterDetails/ClusterDeploymentDetailsForm.js.map +1 -1
  194. package/build/cjs/cim/components/ClusterDeployment/clusterDetails/ClusterDetailsFormFields.js +9 -7
  195. package/build/cjs/cim/components/ClusterDeployment/clusterDetails/ClusterDetailsFormFields.js.map +1 -1
  196. package/build/cjs/cim/components/ClusterDeployment/hostDiscovery/ClusterDeploymentHostDiscoveryTable.js +13 -14
  197. package/build/cjs/cim/components/ClusterDeployment/hostDiscovery/ClusterDeploymentHostDiscoveryTable.js.map +1 -1
  198. package/build/cjs/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostSelectionStep.js +14 -13
  199. package/build/cjs/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostSelectionStep.js.map +1 -1
  200. package/build/cjs/cim/components/ClusterDeployment/networkConfigurationValidation.js +19 -18
  201. package/build/cjs/cim/components/ClusterDeployment/networkConfigurationValidation.js.map +1 -1
  202. package/build/cjs/cim/components/ClusterDeployment/networking/ClusterDeploymentHostsNetworkTable.js +9 -10
  203. package/build/cjs/cim/components/ClusterDeployment/networking/ClusterDeploymentHostsNetworkTable.js.map +1 -1
  204. package/build/cjs/cim/components/ClusterDeployment/networking/ClusterDeploymentNetworkingForm.js +2 -2
  205. package/build/cjs/cim/components/ClusterDeployment/networking/ClusterDeploymentNetworkingForm.js.map +1 -1
  206. package/build/cjs/cim/components/ClusterDeployment/networking/ClusterDeploymentNetworkingStep.js +12 -8
  207. package/build/cjs/cim/components/ClusterDeployment/networking/ClusterDeploymentNetworkingStep.js.map +1 -1
  208. package/build/cjs/cim/components/ClusterDeployment/review/ClusterDeploymentReviewStep.js +6 -4
  209. package/build/cjs/cim/components/ClusterDeployment/review/ClusterDeploymentReviewStep.js.map +1 -1
  210. package/build/cjs/cim/components/ClusterDeployment/use-networking-formik.js +21 -14
  211. package/build/cjs/cim/components/ClusterDeployment/use-networking-formik.js.map +1 -1
  212. package/build/cjs/cim/components/Hypershift/DetailsPage/NodePoolsTable.js +2 -2
  213. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/DetailsStep/DetailsStep.js +2 -2
  214. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/DetailsStep/DetailsStep.js.map +1 -1
  215. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/HostsStep/HostsForm.js +1 -1
  216. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/HostsStep/HostsStep.js +2 -11
  217. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/HostsStep/HostsStep.js.map +1 -1
  218. package/build/cjs/{common/components/clusterConfiguration → cim/components/Hypershift/HostedClusterWizard/NetworkStep}/AdvancedNetworkFields.js +3 -3
  219. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/NetworkStep/AdvancedNetworkFields.js.map +1 -0
  220. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/NetworkStep/NetworkForm.js +1 -1
  221. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/NetworkStep/NetworkForm.js.map +1 -1
  222. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/NetworkStep/NetworkStep.js +8 -8
  223. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/NetworkStep/NetworkStep.js.map +1 -1
  224. package/build/cjs/cim/components/Hypershift/modals/AddNodePoolModal.js +4 -4
  225. package/build/cjs/cim/components/Hypershift/modals/AddNodePoolModal.js.map +1 -1
  226. package/build/cjs/cim/components/Hypershift/modals/ManageHostsModal.js +4 -4
  227. package/build/cjs/cim/components/Hypershift/modals/ManageHostsModal.js.map +1 -1
  228. package/build/cjs/cim/components/Hypershift/modals/NodePoolForm.js +1 -1
  229. package/build/cjs/cim/components/Hypershift/modals/NodePoolForm.js.map +1 -1
  230. package/build/cjs/cim/components/Hypershift/modals/RemoveNodePoolModal.js +4 -4
  231. package/build/cjs/cim/components/Hypershift/modals/RemoveNodePoolModal.js.map +1 -1
  232. package/build/cjs/cim/components/InfraEnv/EnvironmentDetails.js +5 -2
  233. package/build/cjs/cim/components/InfraEnv/EnvironmentDetails.js.map +1 -1
  234. package/build/cjs/cim/components/InfraEnv/EnvironmentErrors.js +2 -4
  235. package/build/cjs/cim/components/InfraEnv/EnvironmentErrors.js.map +1 -1
  236. package/build/cjs/cim/components/InfraEnv/InfraEnvAgentTable.js +11 -11
  237. package/build/cjs/cim/components/InfraEnv/InfraEnvAgentTable.js.map +1 -1
  238. package/build/cjs/cim/components/InfraEnv/InfraEnvFormPage.js +8 -6
  239. package/build/cjs/cim/components/InfraEnv/InfraEnvFormPage.js.map +1 -1
  240. package/build/cjs/cim/components/common/ResourceAlerts.js +2 -4
  241. package/build/cjs/cim/components/common/ResourceAlerts.js.map +1 -1
  242. package/build/cjs/cim/components/helpers/agentStatus.js +5 -0
  243. package/build/cjs/cim/components/helpers/agentStatus.js.map +1 -1
  244. package/build/cjs/cim/components/helpers/toAssisted.js +28 -26
  245. package/build/cjs/cim/components/helpers/toAssisted.js.map +1 -1
  246. package/build/cjs/cim/components/helpers/versions.js +42 -27
  247. package/build/cjs/cim/components/helpers/versions.js.map +1 -1
  248. package/build/cjs/cim/components/modals/AddBmcHostModal.js +7 -5
  249. package/build/cjs/cim/components/modals/AddBmcHostModal.js.map +1 -1
  250. package/build/cjs/cim/components/modals/AddBmcHostYamlForm.js +2 -3
  251. package/build/cjs/cim/components/modals/AddBmcHostYamlForm.js.map +1 -1
  252. package/build/cjs/cim/components/modals/AddBmcHostYamlModal.js +7 -5
  253. package/build/cjs/cim/components/modals/AddBmcHostYamlModal.js.map +1 -1
  254. package/build/cjs/cim/components/modals/AddHostModal.js +9 -7
  255. package/build/cjs/cim/components/modals/AddHostModal.js.map +1 -1
  256. package/build/cjs/cim/components/modals/CimConfiguration/CimConfigurationModal.js +26 -25
  257. package/build/cjs/cim/components/modals/CimConfiguration/CimConfigurationModal.js.map +1 -1
  258. package/build/cjs/cim/components/modals/EditBMHModal.js +4 -2
  259. package/build/cjs/cim/components/modals/EditBMHModal.js.map +1 -1
  260. package/build/cjs/cim/components/modals/EditNtpSourcesModal.js +4 -4
  261. package/build/cjs/cim/components/modals/EditNtpSourcesModal.js.map +1 -1
  262. package/build/cjs/cim/components/modals/EditProxyModal.js +9 -7
  263. package/build/cjs/cim/components/modals/EditProxyModal.js.map +1 -1
  264. package/build/cjs/cim/components/modals/EditPullSecretModal.js +5 -5
  265. package/build/cjs/cim/components/modals/EditPullSecretModal.js.map +1 -1
  266. package/build/cjs/cim/components/modals/EditSSHKeyModal.js +8 -8
  267. package/build/cjs/cim/components/modals/EditSSHKeyModal.js.map +1 -1
  268. package/build/cjs/cim/components/modals/MassApproveAgentModal.js +4 -4
  269. package/build/cjs/cim/components/modals/MassApproveAgentModal.js.map +1 -1
  270. package/build/cjs/cim/components/modals/MassDeleteAgentModal.js +1 -1
  271. package/build/cjs/cim/components/modals/MassDeleteAgentModal.js.map +1 -1
  272. package/build/cjs/cim/components/modals/ScaleUpModal.js +4 -4
  273. package/build/cjs/cim/components/modals/ScaleUpModal.js.map +1 -1
  274. package/build/cjs/cim/hooks/index.js +1 -0
  275. package/build/cjs/cim/hooks/index.js.map +1 -1
  276. package/build/cjs/cim/hooks/useEvents.js +12 -0
  277. package/build/cjs/cim/hooks/useEvents.js.map +1 -0
  278. package/build/cjs/common/components/clusterConfiguration/DiscoveryImageConfigForm.js +7 -6
  279. package/build/cjs/common/components/clusterConfiguration/DiscoveryImageConfigForm.js.map +1 -1
  280. package/build/cjs/common/components/clusterConfiguration/DiscoveryInstructions.js +1 -1
  281. package/build/cjs/common/components/clusterConfiguration/DiscoveryInstructions.js.map +1 -1
  282. package/build/cjs/common/components/clusterConfiguration/DiscoveryTroubleshootingModal.js +9 -9
  283. package/build/cjs/common/components/clusterConfiguration/DiscoveryTroubleshootingModal.js.map +1 -1
  284. package/build/cjs/common/components/clusterConfiguration/ProxyFields.js +3 -3
  285. package/build/cjs/common/components/clusterConfiguration/ProxyFields.js.map +1 -1
  286. package/build/cjs/common/components/clusterConfiguration/utils.js +3 -4
  287. package/build/cjs/common/components/clusterConfiguration/utils.js.map +1 -1
  288. package/build/cjs/common/components/clusterWizard/clusterDetailsValidation.js +8 -8
  289. package/build/cjs/common/components/clusterWizard/clusterDetailsValidation.js.map +1 -1
  290. package/build/cjs/common/components/clusterWizard/networkingSteps/AdvancedNetworkFields.js +62 -0
  291. package/build/cjs/common/components/clusterWizard/networkingSteps/AdvancedNetworkFields.js.map +1 -0
  292. package/build/cjs/common/components/clusterWizard/networkingSteps/AvailableSubnetsControl.js +130 -46
  293. package/build/cjs/common/components/clusterWizard/networkingSteps/AvailableSubnetsControl.js.map +1 -1
  294. package/build/cjs/{ocm/components/clusterConfiguration/networkConfiguration/StackTypeControl.js → common/components/clusterWizard/networkingSteps/StackTypeControlGroup.js} +59 -38
  295. package/build/cjs/common/components/clusterWizard/networkingSteps/StackTypeControlGroup.js.map +1 -0
  296. package/build/cjs/{ocm/components/clusterConfiguration/networkConfiguration → common/components/clusterWizard/networkingSteps}/SubnetsDropdown.js +7 -5
  297. package/build/cjs/common/components/clusterWizard/networkingSteps/SubnetsDropdown.js.map +1 -0
  298. package/build/cjs/common/components/clusterWizard/networkingSteps/VirtualIPControlGroup.js +96 -38
  299. package/build/cjs/common/components/clusterWizard/networkingSteps/VirtualIPControlGroup.js.map +1 -1
  300. package/build/cjs/common/components/clusterWizard/networkingSteps/index.js +13 -3
  301. package/build/cjs/common/components/clusterWizard/networkingSteps/index.js.map +1 -1
  302. package/build/cjs/{ocm/components/clusterConfiguration/networkConfiguration → common/components/clusterWizard/networkingSteps}/reorderNetworks.js +2 -2
  303. package/build/cjs/common/components/clusterWizard/networkingSteps/reorderNetworks.js.map +1 -0
  304. package/build/cjs/common/components/hosts/AdditionalNTPSourcesDialog.js +2 -1
  305. package/build/cjs/common/components/hosts/AdditionalNTPSourcesDialog.js.map +1 -1
  306. package/build/cjs/common/components/hosts/EditHostForm.js +3 -2
  307. package/build/cjs/common/components/hosts/EditHostForm.js.map +1 -1
  308. package/build/cjs/common/components/hosts/HostStatus.js +8 -6
  309. package/build/cjs/common/components/hosts/HostStatus.js.map +1 -1
  310. package/build/cjs/common/components/hosts/HostValidationGroups.js +2 -3
  311. package/build/cjs/common/components/hosts/HostValidationGroups.js.map +1 -1
  312. package/build/cjs/common/components/hosts/MassChangeHostnameModal.js +13 -18
  313. package/build/cjs/common/components/hosts/MassChangeHostnameModal.js.map +1 -1
  314. package/build/cjs/common/components/hosts/index.js +2 -0
  315. package/build/cjs/common/components/hosts/index.js.map +1 -1
  316. package/build/cjs/common/components/hosts/tableColumns.js +336 -0
  317. package/build/cjs/common/components/hosts/tableColumns.js.map +1 -0
  318. package/build/cjs/common/components/hosts/tableUtils.js +1 -331
  319. package/build/cjs/common/components/hosts/tableUtils.js.map +1 -1
  320. package/build/cjs/common/components/ui/EventsList.js +1 -1
  321. package/build/cjs/common/components/ui/EventsList.js.map +1 -1
  322. package/build/cjs/common/components/ui/PrismCode.js +29 -20
  323. package/build/cjs/common/components/ui/PrismCode.js.map +1 -1
  324. package/build/cjs/common/components/ui/formik/LabelField.js +34 -26
  325. package/build/cjs/common/components/ui/formik/LabelField.js.map +1 -1
  326. package/build/cjs/common/components/ui/formik/index.js +0 -2
  327. package/build/cjs/common/components/ui/formik/index.js.map +1 -1
  328. package/build/cjs/common/components/ui/index.js +1 -2
  329. package/build/cjs/common/components/ui/index.js.map +1 -1
  330. package/build/cjs/common/config/constants.js +27 -4
  331. package/build/cjs/common/config/constants.js.map +1 -1
  332. package/build/cjs/common/config/docs_links.js +1 -1
  333. package/build/cjs/common/index.js +1 -0
  334. package/build/cjs/common/index.js.map +1 -1
  335. package/build/cjs/common/types/clusters.js.map +1 -1
  336. package/build/cjs/common/utils.js +5 -3
  337. package/build/cjs/common/utils.js.map +1 -1
  338. package/build/cjs/common/validationSchemas/addressValidation.js +246 -0
  339. package/build/cjs/common/validationSchemas/addressValidation.js.map +1 -0
  340. package/build/cjs/common/validationSchemas/clusterDetailsValidation.js +104 -0
  341. package/build/cjs/common/validationSchemas/clusterDetailsValidation.js.map +1 -0
  342. package/build/cjs/common/{components/ui/formik → validationSchemas}/constants.js +3 -5
  343. package/build/cjs/common/validationSchemas/constants.js.map +1 -0
  344. package/build/cjs/common/validationSchemas/hostnameValidation.js +36 -0
  345. package/build/cjs/common/validationSchemas/hostnameValidation.js.map +1 -0
  346. package/build/cjs/common/validationSchemas/index.js +17 -0
  347. package/build/cjs/common/validationSchemas/index.js.map +1 -0
  348. package/build/cjs/common/validationSchemas/networkingValidation.js +74 -0
  349. package/build/cjs/common/validationSchemas/networkingValidation.js.map +1 -0
  350. package/build/cjs/common/validationSchemas/ntpValidation.js +25 -0
  351. package/build/cjs/common/validationSchemas/ntpValidation.js.map +1 -0
  352. package/build/cjs/common/validationSchemas/proxyValidation.js +43 -0
  353. package/build/cjs/common/validationSchemas/proxyValidation.js.map +1 -0
  354. package/build/cjs/common/validationSchemas/pullSecretValidation.js +21 -0
  355. package/build/cjs/common/validationSchemas/pullSecretValidation.js.map +1 -0
  356. package/build/cjs/common/validationSchemas/regexes.js +17 -0
  357. package/build/cjs/common/validationSchemas/regexes.js.map +1 -0
  358. package/build/cjs/common/validationSchemas/sshValidation.js +32 -0
  359. package/build/cjs/common/validationSchemas/sshValidation.js.map +1 -0
  360. package/build/cjs/common/validationSchemas/utils.js +40 -0
  361. package/build/cjs/common/validationSchemas/utils.js.map +1 -0
  362. package/build/cjs/ocm/components/clusterConfiguration/OcmBaseDomainField.js +1 -1
  363. package/build/cjs/ocm/components/clusterConfiguration/OcmBaseDomainField.js.map +1 -1
  364. package/build/cjs/ocm/components/clusterConfiguration/OcmDiscoveryImageConfigForm.js +7 -6
  365. package/build/cjs/ocm/components/clusterConfiguration/OcmDiscoveryImageConfigForm.js.map +1 -1
  366. package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifests.js +4 -2
  367. package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifests.js.map +1 -1
  368. package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/customManifestsValidationSchema.js +7 -6
  369. package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/customManifestsValidationSchema.js.map +1 -1
  370. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfiguration.js +6 -12
  371. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfiguration.js.map +1 -1
  372. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationForm.js +2 -1
  373. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationForm.js.map +1 -1
  374. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationTableBase.js +8 -9
  375. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationTableBase.js.map +1 -1
  376. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.js +13 -23
  377. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.js.map +1 -1
  378. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/FormViewHosts.js +3 -1
  379. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/FormViewHosts.js.map +1 -1
  380. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/formViewHostsValidationSchema.js +6 -6
  381. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/formViewHostsValidationSchema.js.map +1 -1
  382. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/YamlView/YamlView.js +3 -1
  383. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/YamlView/YamlView.js.map +1 -1
  384. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/YamlView/yamlViewValidationSchema.js +12 -12
  385. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/YamlView/yamlViewValidationSchema.js.map +1 -1
  386. package/build/cjs/ocm/components/clusterDetail/ResetClusterModal.js +1 -1
  387. package/build/cjs/ocm/components/clusterDetail/ResetClusterModal.js.map +1 -1
  388. package/build/cjs/ocm/components/clusterWizard/OperatorsSelect.js +1 -1
  389. package/build/cjs/ocm/components/clusterWizard/OperatorsSelect.js.map +1 -1
  390. package/build/cjs/ocm/components/clusterWizard/disconnected/OptionalConfigurationsStep.js +4 -3
  391. package/build/cjs/ocm/components/clusterWizard/disconnected/OptionalConfigurationsStep.js.map +1 -1
  392. package/build/cjs/ocm/components/hosts/ClusterHostsTable.js +7 -8
  393. package/build/cjs/ocm/components/hosts/ClusterHostsTable.js.map +1 -1
  394. package/build/cjs/ocm/components/hosts/HostsDiscoveryTable.js +7 -8
  395. package/build/cjs/ocm/components/hosts/HostsDiscoveryTable.js.map +1 -1
  396. package/build/cjs/ocm/components/hosts/HostsStorageTable.js +5 -6
  397. package/build/cjs/ocm/components/hosts/HostsStorageTable.js.map +1 -1
  398. package/build/cjs/ocm/components/hosts/UpdateDay2ApiVipForm.js +2 -1
  399. package/build/cjs/ocm/components/hosts/UpdateDay2ApiVipForm.js.map +1 -1
  400. package/build/cjs/ocm/components/hosts/use-hosts-table.js +2 -3
  401. package/build/cjs/ocm/components/hosts/use-hosts-table.js.map +1 -1
  402. package/lib/cim/components/Agent/AgentStatus.tsx +3 -0
  403. package/lib/cim/components/Agent/AgentTable.tsx +3 -2
  404. package/lib/cim/components/Agent/AgentsSelectionTable.tsx +3 -12
  405. package/lib/cim/components/Agent/BMCForm.tsx +11 -10
  406. package/lib/cim/components/Agent/BMHEventsModal.tsx +87 -0
  407. package/lib/cim/components/Agent/BMHStatus.tsx +17 -17
  408. package/lib/cim/components/Agent/BMHStatusInfo.tsx +94 -0
  409. package/lib/cim/components/Agent/MinimalHWRequirements.tsx +17 -12
  410. package/lib/cim/components/Agent/index.ts +2 -0
  411. package/lib/cim/components/Agent/tableColumns.tsx +257 -0
  412. package/lib/cim/components/Agent/tableUtils.tsx +4 -243
  413. package/lib/cim/components/ClusterDeployment/ClusterDeploymentDetailsTable.tsx +2 -2
  414. package/lib/cim/components/ClusterDeployment/LocationsSelector.tsx +2 -2
  415. package/lib/cim/components/ClusterDeployment/NetworkConfiguration.tsx +61 -44
  416. package/lib/cim/components/ClusterDeployment/clusterDetails/ClusterDeploymentDetailsForm.tsx +8 -18
  417. package/lib/cim/components/ClusterDeployment/clusterDetails/ClusterDetailsFormFields.tsx +9 -12
  418. package/lib/cim/components/ClusterDeployment/hostDiscovery/ClusterDeploymentHostDiscoveryTable.tsx +3 -5
  419. package/lib/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostSelectionStep.tsx +28 -31
  420. package/lib/cim/components/ClusterDeployment/networkConfigurationValidation.ts +30 -36
  421. package/lib/cim/components/ClusterDeployment/networking/ClusterDeploymentHostsNetworkTable.tsx +2 -7
  422. package/lib/cim/components/ClusterDeployment/networking/ClusterDeploymentNetworkingForm.tsx +3 -3
  423. package/lib/cim/components/ClusterDeployment/networking/ClusterDeploymentNetworkingStep.tsx +26 -26
  424. package/lib/cim/components/ClusterDeployment/review/ClusterDeploymentReviewStep.tsx +20 -6
  425. package/lib/cim/components/ClusterDeployment/use-networking-formik.ts +41 -17
  426. package/lib/cim/components/Hypershift/DetailsPage/NodePoolsTable.tsx +2 -2
  427. package/lib/cim/components/Hypershift/HostedClusterWizard/DetailsStep/DetailsStep.tsx +2 -2
  428. package/lib/cim/components/Hypershift/HostedClusterWizard/HostsStep/HostsForm.tsx +1 -1
  429. package/lib/cim/components/Hypershift/HostedClusterWizard/HostsStep/HostsStep.tsx +2 -13
  430. package/lib/{common/components/clusterConfiguration → cim/components/Hypershift/HostedClusterWizard/NetworkStep}/AdvancedNetworkFields.tsx +4 -4
  431. package/lib/cim/components/Hypershift/HostedClusterWizard/NetworkStep/NetworkForm.tsx +1 -1
  432. package/lib/cim/components/Hypershift/HostedClusterWizard/NetworkStep/NetworkStep.tsx +8 -8
  433. package/lib/cim/components/Hypershift/modals/AddNodePoolModal.tsx +15 -16
  434. package/lib/cim/components/Hypershift/modals/ManageHostsModal.tsx +15 -16
  435. package/lib/cim/components/Hypershift/modals/NodePoolForm.tsx +1 -1
  436. package/lib/cim/components/Hypershift/modals/RemoveNodePoolModal.tsx +14 -11
  437. package/lib/cim/components/InfraEnv/EnvironmentDetails.tsx +6 -3
  438. package/lib/cim/components/InfraEnv/EnvironmentErrors.tsx +1 -6
  439. package/lib/cim/components/InfraEnv/InfraEnvAgentTable.tsx +6 -6
  440. package/lib/cim/components/InfraEnv/InfraEnvFormPage.tsx +8 -6
  441. package/lib/cim/components/common/ResourceAlerts.tsx +4 -4
  442. package/lib/cim/components/helpers/agentStatus.tsx +5 -0
  443. package/lib/cim/components/helpers/toAssisted.ts +15 -15
  444. package/lib/cim/components/helpers/versions.ts +51 -34
  445. package/lib/cim/components/modals/AddBmcHostModal.tsx +14 -13
  446. package/lib/cim/components/modals/AddBmcHostYamlForm.tsx +6 -5
  447. package/lib/cim/components/modals/AddBmcHostYamlModal.tsx +8 -7
  448. package/lib/cim/components/modals/AddHostModal.tsx +22 -11
  449. package/lib/cim/components/modals/CimConfiguration/CimConfigurationModal.tsx +79 -69
  450. package/lib/cim/components/modals/EditBMHModal.tsx +2 -3
  451. package/lib/cim/components/modals/EditNtpSourcesModal.tsx +15 -10
  452. package/lib/cim/components/modals/EditProxyModal.tsx +22 -13
  453. package/lib/cim/components/modals/EditPullSecretModal.tsx +15 -11
  454. package/lib/cim/components/modals/EditSSHKeyModal.tsx +24 -19
  455. package/lib/cim/components/modals/MassApproveAgentModal.tsx +16 -8
  456. package/lib/cim/components/modals/MassDeleteAgentModal.tsx +1 -1
  457. package/lib/cim/components/modals/ScaleUpModal.tsx +9 -7
  458. package/lib/cim/hooks/index.tsx +1 -0
  459. package/lib/cim/hooks/types.tsx +4 -1
  460. package/lib/cim/hooks/useEvents.tsx +14 -0
  461. package/lib/cim/types/fromOCP/k8sTypes.ts +13 -0
  462. package/lib/cim/types/k8s/agent-cluster-install.ts +4 -0
  463. package/lib/cim/types/k8s/bare-metal-host.ts +20 -0
  464. package/lib/common/components/clusterConfiguration/DiscoveryImageConfigForm.tsx +9 -8
  465. package/lib/common/components/clusterConfiguration/DiscoveryInstructions.tsx +1 -1
  466. package/lib/common/components/clusterConfiguration/DiscoveryTroubleshootingModal.tsx +7 -10
  467. package/lib/common/components/clusterConfiguration/ProxyFields.tsx +3 -3
  468. package/lib/common/components/clusterConfiguration/utils.ts +22 -12
  469. package/lib/common/components/clusterWizard/clusterDetailsValidation.ts +21 -11
  470. package/lib/{ocm/components/clusterConfiguration/networkConfiguration → common/components/clusterWizard/networkingSteps}/AdvancedNetworkFields.tsx +54 -38
  471. package/lib/common/components/clusterWizard/networkingSteps/AvailableSubnetsControl.tsx +221 -53
  472. package/lib/{ocm/components/clusterConfiguration/networkConfiguration/StackTypeControl.tsx → common/components/clusterWizard/networkingSteps/StackTypeControlGroup.tsx} +64 -28
  473. package/lib/{ocm/components/clusterConfiguration/networkConfiguration → common/components/clusterWizard/networkingSteps}/SubnetsDropdown.tsx +4 -7
  474. package/lib/common/components/clusterWizard/networkingSteps/VirtualIPControlGroup.tsx +199 -80
  475. package/lib/common/components/clusterWizard/networkingSteps/index.ts +10 -2
  476. package/lib/{ocm/components/clusterConfiguration/networkConfiguration → common/components/clusterWizard/networkingSteps}/reorderNetworks.ts +2 -1
  477. package/lib/common/components/hosts/AdditionalNTPSourcesDialog.tsx +3 -6
  478. package/lib/common/components/hosts/EditHostForm.tsx +2 -8
  479. package/lib/common/components/hosts/HostStatus.tsx +14 -3
  480. package/lib/common/components/hosts/HostValidationGroups.tsx +5 -4
  481. package/lib/common/components/hosts/MassChangeHostnameModal.tsx +48 -44
  482. package/lib/common/components/hosts/index.ts +2 -0
  483. package/lib/common/components/hosts/tableColumns.tsx +411 -0
  484. package/lib/common/components/hosts/tableUtils.tsx +4 -409
  485. package/lib/common/components/hosts/types.ts +1 -0
  486. package/lib/common/components/ui/EventsList.tsx +4 -2
  487. package/lib/common/components/ui/PrismCode.tsx +35 -22
  488. package/lib/common/components/ui/formik/LabelField.tsx +77 -60
  489. package/lib/common/components/ui/formik/index.tsx +0 -2
  490. package/lib/common/components/ui/index.ts +1 -1
  491. package/lib/common/config/constants.ts +33 -2
  492. package/lib/common/config/docs_links.ts +1 -1
  493. package/lib/common/index.ts +2 -0
  494. package/lib/common/types/clusters.ts +0 -1
  495. package/lib/common/utils.ts +5 -7
  496. package/lib/common/{components/ui/formik → validationSchemas}/_validationSchemas.test.ts +51 -39
  497. package/lib/common/validationSchemas/addressValidation.tsx +349 -0
  498. package/lib/common/validationSchemas/clusterDetailsValidation.tsx +168 -0
  499. package/lib/common/{components/ui/formik → validationSchemas}/constants.tsx +3 -6
  500. package/lib/common/validationSchemas/hostnameValidation.tsx +46 -0
  501. package/lib/common/validationSchemas/index.tsx +11 -0
  502. package/lib/common/validationSchemas/networkingValidation.tsx +113 -0
  503. package/lib/common/validationSchemas/ntpValidation.tsx +30 -0
  504. package/lib/common/validationSchemas/proxyValidation.tsx +67 -0
  505. package/lib/common/validationSchemas/pullSecretValidation.tsx +24 -0
  506. package/lib/common/validationSchemas/regexes.tsx +22 -0
  507. package/lib/common/validationSchemas/sshValidation.tsx +46 -0
  508. package/lib/common/validationSchemas/utils.tsx +36 -0
  509. package/lib/ocm/components/clusterConfiguration/OcmBaseDomainField.tsx +2 -2
  510. package/lib/ocm/components/clusterConfiguration/OcmDiscoveryImageConfigForm.tsx +17 -15
  511. package/lib/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifests.tsx +4 -2
  512. package/lib/ocm/components/clusterConfiguration/manifestsConfiguration/components/customManifestsValidationSchema.tsx +31 -31
  513. package/lib/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfiguration.tsx +12 -23
  514. package/lib/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationForm.tsx +9 -2
  515. package/lib/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationTableBase.tsx +3 -2
  516. package/lib/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.ts +16 -26
  517. package/lib/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/FormViewHosts.tsx +3 -1
  518. package/lib/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/formViewHostsValidationSchema.tsx +11 -6
  519. package/lib/ocm/components/clusterConfiguration/staticIp/components/YamlView/YamlView.tsx +5 -1
  520. package/lib/ocm/components/clusterConfiguration/staticIp/components/YamlView/yamlViewValidationSchema.tsx +33 -28
  521. package/lib/ocm/components/clusterDetail/ResetClusterModal.tsx +2 -1
  522. package/lib/ocm/components/clusterWizard/OperatorsSelect.tsx +2 -2
  523. package/lib/ocm/components/clusterWizard/disconnected/OptionalConfigurationsStep.tsx +5 -3
  524. package/lib/ocm/components/hosts/ClusterHostsTable.tsx +4 -3
  525. package/lib/ocm/components/hosts/HostsDiscoveryTable.tsx +2 -4
  526. package/lib/ocm/components/hosts/HostsStorageTable.tsx +5 -7
  527. package/lib/ocm/components/hosts/UpdateDay2ApiVipForm.tsx +3 -7
  528. package/lib/ocm/components/hosts/use-hosts-table.tsx +2 -1
  529. package/package.json +3 -3
  530. package/build/@types/common/components/clusterConfiguration/AdvancedNetworkFields.d.ts.map +0 -1
  531. package/build/@types/common/components/ui/formik/constants.d.ts.map +0 -1
  532. package/build/@types/common/components/ui/formik/validationSchemas.d.ts +0 -52
  533. package/build/@types/common/components/ui/formik/validationSchemas.d.ts.map +0 -1
  534. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/AdvancedNetworkFields.d.ts +0 -4
  535. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/AdvancedNetworkFields.d.ts.map +0 -1
  536. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/AvailableSubnetsControl.d.ts +0 -12
  537. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/AvailableSubnetsControl.d.ts.map +0 -1
  538. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/StackTypeControl.d.ts +0 -11
  539. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/StackTypeControl.d.ts.map +0 -1
  540. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/SubnetsDropdown.d.ts.map +0 -1
  541. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/VirtualIPControlGroup.d.ts +0 -9
  542. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/VirtualIPControlGroup.d.ts.map +0 -1
  543. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/reorderNetworks.d.ts.map +0 -1
  544. package/build/cjs/common/components/clusterConfiguration/AdvancedNetworkFields.js.map +0 -1
  545. package/build/cjs/common/components/ui/formik/LabelField.css +0 -43
  546. package/build/cjs/common/components/ui/formik/constants.js.map +0 -1
  547. package/build/cjs/common/components/ui/formik/validationSchemas.js +0 -571
  548. package/build/cjs/common/components/ui/formik/validationSchemas.js.map +0 -1
  549. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/AdvancedNetworkFields.js +0 -53
  550. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/AdvancedNetworkFields.js.map +0 -1
  551. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/AvailableSubnetsControl.js +0 -124
  552. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/AvailableSubnetsControl.js.map +0 -1
  553. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/StackTypeControl.js.map +0 -1
  554. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/SubnetsDropdown.js.map +0 -1
  555. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/VirtualIPControlGroup.js +0 -98
  556. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/VirtualIPControlGroup.js.map +0 -1
  557. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/reorderNetworks.js.map +0 -1
  558. package/lib/common/components/ui/formik/LabelField.css +0 -43
  559. package/lib/common/components/ui/formik/validationSchemas.ts +0 -846
  560. package/lib/ocm/components/clusterConfiguration/networkConfiguration/AvailableSubnetsControl.tsx +0 -208
  561. package/lib/ocm/components/clusterConfiguration/networkConfiguration/VirtualIPControlGroup.tsx +0 -283
  562. /package/build/@types/{common/components/clusterConfiguration → cim/components/Hypershift/HostedClusterWizard/NetworkStep}/AdvancedNetworkFields.d.ts +0 -0
@@ -0,0 +1,113 @@
1
+ import * as Yup from 'yup';
2
+ import isCIDR from 'is-cidr';
3
+ import { TFunction } from 'i18next';
4
+
5
+ import {
6
+ ClusterNetwork,
7
+ MachineNetwork,
8
+ ServiceNetwork,
9
+ } from '@openshift-assisted/types/./assisted-installer-service';
10
+ import {
11
+ hostPrefixValidationSchema,
12
+ hostSubnetValidationSchema,
13
+ ipBlockValidationSchema,
14
+ } from './addressValidation';
15
+ import { isMajorMinorVersionEqualOrGreater } from '../utils';
16
+ import { allSubnetsIPv4 } from '../components/ui/formik/utils';
17
+
18
+ export const machineNetworksValidationSchema = Yup.array().of(
19
+ Yup.object({ cidr: hostSubnetValidationSchema, clusterId: Yup.string() }),
20
+ );
21
+
22
+ export const clusterNetworksValidationSchema = (t: TFunction) =>
23
+ Yup.array().of(
24
+ Yup.lazy((values: ClusterNetwork) =>
25
+ Yup.object({
26
+ cidr: ipBlockValidationSchema(
27
+ undefined /* So far used in OCM only and so validated by backend */,
28
+ t,
29
+ ),
30
+ hostPrefix: hostPrefixValidationSchema(values.cidr, t),
31
+ clusterId: Yup.string(),
32
+ }),
33
+ ),
34
+ );
35
+
36
+ export const serviceNetworkValidationSchema = (t: TFunction) =>
37
+ Yup.array().of(
38
+ Yup.object({
39
+ cidr: ipBlockValidationSchema(
40
+ undefined /* So far used in OCM only and so validated by backend */,
41
+ t,
42
+ ),
43
+ clusterId: Yup.string(),
44
+ }),
45
+ );
46
+
47
+ export const dualStackValidationSchema = (field: string, t: TFunction, openshiftVersion?: string) =>
48
+ Yup.array()
49
+ .max(2, t('ai:Maximum number of {{field}} subnets in dual stack is 2.', { field }))
50
+ .test(
51
+ 'dual-stack-ipv4',
52
+ openshiftVersion && isMajorMinorVersionEqualOrGreater(openshiftVersion, '4.12')
53
+ ? t('ai:First network has to be a valid IPv4 or IPv6 subnet.')
54
+ : t('ai:First network has to be IPv4 subnet.'),
55
+ (values?: { cidr: MachineNetwork['cidr'] }[]): boolean => {
56
+ // For OCP versions > 4.11, allow IPv6 as primary network
57
+ if (openshiftVersion && isMajorMinorVersionEqualOrGreater(openshiftVersion, '4.12')) {
58
+ return !!values?.[0].cidr && (isCIDR.v4(values[0].cidr) || isCIDR.v6(values[0].cidr));
59
+ }
60
+ // For older versions, require IPv4 as primary network
61
+ return !!values?.[0].cidr && isCIDR.v4(values[0].cidr);
62
+ },
63
+ )
64
+ .test(
65
+ 'dual-stack-unique-cidrs',
66
+ t('ai:Provided {{field}} subnets must be unique.', { field }),
67
+ (values?: { cidr?: MachineNetwork['cidr'] }[]) => {
68
+ if (!values || values.length < 2) {
69
+ return true;
70
+ }
71
+ const first = values[0]?.cidr || '';
72
+ const second = values[1]?.cidr || '';
73
+ if (!first || !second) {
74
+ return true;
75
+ }
76
+ const firstIsCidr = isCIDR.v4(first) || isCIDR.v6(first);
77
+ const secondIsCidr = isCIDR.v4(second) || isCIDR.v6(second);
78
+ if (!firstIsCidr || !secondIsCidr) {
79
+ return true;
80
+ }
81
+ return first !== second;
82
+ },
83
+ )
84
+ .test(
85
+ 'dual-stack-opposite-families',
86
+ t('ai:When two {{field}} values are provided, one must be IPv4 and the other IPv6.', {
87
+ field,
88
+ }),
89
+ (values?: { cidr?: MachineNetwork['cidr'] }[]) => {
90
+ if (!values || values.length < 2) {
91
+ return true;
92
+ }
93
+ const a = values[0]?.cidr || '';
94
+ const b = values[1]?.cidr || '';
95
+ if (!a || !b) {
96
+ return true;
97
+ }
98
+ const a4 = isCIDR.v4(a);
99
+ const a6 = isCIDR.v6(a);
100
+ const b4 = isCIDR.v4(b);
101
+ const b6 = isCIDR.v6(b);
102
+ if (!((a4 || a6) && (b4 || b6))) {
103
+ return true;
104
+ }
105
+ return (a4 && b6) || (a6 && b4);
106
+ },
107
+ );
108
+
109
+ export const IPv4ValidationSchema = Yup.array().test(
110
+ 'single-stack',
111
+ `All network subnets must be IPv4.`,
112
+ (values?: (MachineNetwork | ClusterNetwork | ServiceNetwork)[]) => allSubnetsIPv4(values),
113
+ );
@@ -0,0 +1,30 @@
1
+ import * as Yup from 'yup';
2
+ import { trimCommaSeparatedList } from '../components/ui/formik/utils';
3
+ import { isIPorDN } from './utils';
4
+ import { TFunction } from 'i18next';
5
+
6
+ export const ntpSourceValidationSchema = (t: TFunction) =>
7
+ Yup.string()
8
+ .test(
9
+ 'ntp-source-validation',
10
+ t('ai:Provide a comma separated list of valid DNS names or IP addresses.'),
11
+ (value?: string) => {
12
+ if (!value || value === '') {
13
+ return true;
14
+ }
15
+ return trimCommaSeparatedList(value)
16
+ .split(',')
17
+ .every((v) => isIPorDN(v));
18
+ },
19
+ )
20
+ .test(
21
+ 'ntp-source-validation-unique',
22
+ t('ai:DNS names and IP addresses must be unique.'),
23
+ (value?: string) => {
24
+ if (!value || value === '') {
25
+ return true;
26
+ }
27
+ const arr = trimCommaSeparatedList(value).split(',');
28
+ return arr.length === new Set(arr).size;
29
+ },
30
+ );
@@ -0,0 +1,67 @@
1
+ import * as Yup from 'yup';
2
+ import { TFunction } from 'i18next';
3
+ import { ProxyFieldsType } from '../types';
4
+ import { trimCommaSeparatedList } from '../components/ui/formik/utils';
5
+ import { PROXY_DNS_REGEX } from './regexes';
6
+ import { isIPorDN } from './utils';
7
+
8
+ export const httpProxyValidationSchema = ({
9
+ values,
10
+ pairValueName,
11
+ allowEmpty,
12
+ t,
13
+ }: {
14
+ values: ProxyFieldsType;
15
+ pairValueName: 'httpProxy' | 'httpsProxy';
16
+ allowEmpty?: boolean;
17
+ t: TFunction;
18
+ }) => {
19
+ const validation = Yup.string().test(
20
+ 'http-proxy-validation',
21
+ t('ai:Provide a valid HTTP URL.'),
22
+ (value?: string) => {
23
+ if (!value) {
24
+ return true;
25
+ }
26
+
27
+ if (!value.startsWith('http://')) {
28
+ return false;
29
+ }
30
+
31
+ try {
32
+ new URL(value);
33
+ } catch {
34
+ return false;
35
+ }
36
+ return true;
37
+ },
38
+ );
39
+
40
+ if (allowEmpty) {
41
+ return validation;
42
+ }
43
+
44
+ return validation.test(
45
+ 'http-proxy-no-empty-validation',
46
+ t('ai:At least one of the HTTP or HTTPS proxy URLs is required.'),
47
+ (value) => !values.enableProxy || !!value || !!values[pairValueName],
48
+ );
49
+ };
50
+
51
+ export const noProxyValidationSchema = (t: TFunction) =>
52
+ Yup.string().test(
53
+ 'no-proxy-validation',
54
+ t('ai:Provide a comma separated list of valid DNS names or IP addresses.'),
55
+ (value?: string) => {
56
+ if (!value || value === '*') {
57
+ return true;
58
+ }
59
+
60
+ // https://docs.openshift.com/container-platform/4.5/installing/installing_bare_metal/installing-restricted-networks-bare-metal.html#installation-configure-proxy_installing-restricted-networks-bare-metal
61
+ // A comma-separated list of destination domain names, domains, IP addresses, or other network CIDRs to exclude proxying.
62
+ // Preface a domain with . to match subdomains only. For example, .y.com matches x.y.com, but not y.com.
63
+ // Use * to bypass proxy for all destinations.
64
+ const noProxyList = trimCommaSeparatedList(value).split(',');
65
+ return noProxyList.every((p) => isIPorDN(p, PROXY_DNS_REGEX));
66
+ },
67
+ );
@@ -0,0 +1,24 @@
1
+ import * as Yup from 'yup';
2
+ import { TFunction } from 'i18next';
3
+
4
+ export const pullSecretValidationSchema = (t: TFunction) =>
5
+ Yup.string().test(
6
+ 'is-well-formed-json',
7
+ t("ai:Invalid pull secret format. You must use your Red Hat account's pull secret."),
8
+ (value?: string) => {
9
+ const isValid = true;
10
+ if (!value) return isValid;
11
+ try {
12
+ const pullSecret = JSON.parse(value) as {
13
+ auths: string;
14
+ };
15
+ return (
16
+ pullSecret.constructor.name === 'Object' &&
17
+ !!pullSecret?.auths &&
18
+ pullSecret.auths.constructor.name === 'Object'
19
+ );
20
+ } catch {
21
+ return !isValid;
22
+ }
23
+ },
24
+ );
@@ -0,0 +1,22 @@
1
+ export const ALPHANUMERIC_REGEX = /^[a-zA-Z0-9]+$/;
2
+
3
+ export const CLUSTER_NAME_START_END_REGEX = /^[a-z0-9](.*[a-z0-9])?$/;
4
+ export const CLUSTER_NAME_VALID_CHARS_REGEX = /^[a-z0-9-]*$/;
5
+
6
+ export const DNS_NAME_REGEX = /^([a-z0-9]+(-[a-z0-9]+)*\.)+[a-z]{2,}$/;
7
+ export const NAME_START_END_REGEX = /^[a-z0-9](.*[a-z0-9])?$/;
8
+ export const NAME_CHARS_REGEX = /^[a-z0-9-.]*$/;
9
+
10
+ export const HOST_NAME_REGEX = /^[^.]{1,63}(?:[.][^.]{1,63})*$/;
11
+ export const SSH_PUBLIC_KEY_REGEX =
12
+ /^(ssh-rsa AAAAB3NzaC1yc2|ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNT|ecdsa-sha2-nistp384 AAAAE2VjZHNhLXNoYTItbmlzdHAzODQAAAAIbmlzdHAzOD|ecdsa-sha2-nistp521 AAAAE2VjZHNhLXNoYTItbmlzdHA1MjEAAAAIbmlzdHA1Mj|ssh-ed25519 AAAAC3NzaC1lZDI1NTE5|ssh-dss AAAAB3NzaC1kc3)[0-9A-Za-z+/]+[=]{0,3}( .*)?$/;
13
+
14
+ export const PROXY_DNS_REGEX =
15
+ /(^\.?([a-zA-Z0-9_]{1}[a-zA-Z0-9_-]{0,62}){1}(\.[a-zA-Z0-9_]{1}[a-zA-Z0-9_-]{0,62})*$)/;
16
+
17
+ export const IP_V4_ZERO = '0.0.0.0';
18
+ export const IP_V6_ZERO = '0000:0000:0000:0000:0000:0000:0000:0000';
19
+
20
+ export const MAC_REGEX = /^([0-9A-Fa-f]{2}[:]){5}([0-9A-Fa-f]{2})$/;
21
+
22
+ export const LOCATION_CHARS_REGEX = /^[a-zA-Z0-9-._]*$/;
@@ -0,0 +1,46 @@
1
+ import * as Yup from 'yup';
2
+ import { TFunction } from 'i18next';
3
+ import { trimSshPublicKey } from '../components/ui/formik/utils';
4
+ import { SSH_PUBLIC_KEY_REGEX } from './regexes';
5
+
6
+ export const sshPublicKeyValidationSchema = (t: TFunction) =>
7
+ Yup.string().test(
8
+ 'ssh-public-key',
9
+ t(
10
+ 'ai:SSH public key must consist of "[TYPE] key [[EMAIL]]", supported types are: ssh-rsa, ssh-ed25519, ecdsa-[VARIANT]. A single key can be provided only.',
11
+ ),
12
+ (value?: string) => {
13
+ if (!value) {
14
+ return true;
15
+ }
16
+
17
+ return !!trimSshPublicKey(value).match(SSH_PUBLIC_KEY_REGEX);
18
+ },
19
+ );
20
+
21
+ export const sshPublicKeyListValidationSchema = (t: TFunction) =>
22
+ Yup.string()
23
+ .test(
24
+ 'ssh-public-keys',
25
+ t(
26
+ 'ai:SSH public key must consist of "[TYPE] key [[EMAIL]]", supported types are: ssh-rsa, ssh-ed25519, ecdsa-[VARIANT].',
27
+ ),
28
+ (value?: string) => {
29
+ if (!value) {
30
+ return true;
31
+ }
32
+
33
+ return (
34
+ trimSshPublicKey(value)
35
+ .split('\n')
36
+ .find((line: string) => !line.match(SSH_PUBLIC_KEY_REGEX)) === undefined
37
+ );
38
+ },
39
+ )
40
+ .test('ssh-public-keys-unique', t('ai:SSH public keys must be unique.'), (value?: string) => {
41
+ if (!value) {
42
+ return true;
43
+ }
44
+ const keyList = trimSshPublicKey(value).split('\n');
45
+ return new Set(keyList).size === keyList.length;
46
+ });
@@ -0,0 +1,36 @@
1
+ import * as Yup from 'yup';
2
+ import { Address4, Address6 } from 'ip-address';
3
+ import { DNS_NAME_REGEX } from './regexes';
4
+
5
+ export const isIPorDN = (value?: string, dnsRegex = DNS_NAME_REGEX) => {
6
+ if ((value as string).match(dnsRegex)) {
7
+ return true;
8
+ } else if (value) {
9
+ return Address4.isValid(value) || Address6.isValid(value);
10
+ } else {
11
+ return false;
12
+ }
13
+ };
14
+
15
+ // Helpers to classify literal IPs more robustly
16
+ export const isIPv4Address = (ip?: string) => {
17
+ if (!ip) return false;
18
+ return ip.includes('.') && Address4.isValid(ip);
19
+ };
20
+
21
+ export const isIPv6Address = (ip?: string) => {
22
+ if (!ip) return false;
23
+ return ip.includes(':') && Address6.isValid(ip);
24
+ };
25
+
26
+ export const alwaysRequired = (message?: string) =>
27
+ Yup.string().test(
28
+ 'always-required',
29
+ message || 'The value is required.',
30
+ (value?: string): boolean => !!value,
31
+ );
32
+
33
+ export const getArrayIndexFromPath = (path: string): number => {
34
+ const match = path.match(/\[(\d+)\][^\[]*$/); // Prefer the last [...] occurrence for nested array paths like "foo[0].bar[1].ip"
35
+ return match ? parseInt(match[1], 10) : NaN;
36
+ };
@@ -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>
@@ -13,18 +13,14 @@ import {
13
13
  FlexItem,
14
14
  } from '@patternfly/react-core';
15
15
  import { Formik, FormikHelpers } from 'formik';
16
+ import { TFunction } from 'i18next';
16
17
  import {
17
18
  HostStaticNetworkConfig,
18
19
  ImageType,
19
20
  InfraEnv,
20
21
  Proxy,
21
22
  } from '@openshift-assisted/types/assisted-installer-service';
22
- import {
23
- AlertFormikError,
24
- httpProxyValidationSchema,
25
- noProxyValidationSchema,
26
- sshPublicKeyValidationSchema,
27
- } from '../../../common/components/ui';
23
+ import { AlertFormikError } from '../../../common/components/ui';
28
24
  import {
29
25
  DiscoveryImageType,
30
26
  ProxyFieldsType,
@@ -37,6 +33,11 @@ import UploadSSH from '../../../common/components/clusterConfiguration/UploadSSH
37
33
  import { useTranslation } from '../../../common/hooks/use-translation-wrapper';
38
34
  import DiscoveryImageTypeDropdown, { discoveryImageTypes } from './DiscoveryImageTypeDropdown';
39
35
  import CertificateFields from '../../../common/components/clusterConfiguration/CertificateFields';
36
+ import {
37
+ httpProxyValidationSchema,
38
+ noProxyValidationSchema,
39
+ sshPublicKeyValidationSchema,
40
+ } from '../../../common';
40
41
 
41
42
  export interface OcmImageCreateParams {
42
43
  /**
@@ -54,14 +55,15 @@ export type OcmDiscoveryImageFormValues = OcmImageCreateParams &
54
55
  ProxyFieldsType &
55
56
  TrustedCertificateFieldsType;
56
57
 
57
- const validationSchema = Yup.lazy((values: OcmDiscoveryImageFormValues) =>
58
- Yup.object<OcmDiscoveryImageFormValues>().shape({
59
- sshPublicKey: sshPublicKeyValidationSchema,
60
- httpProxy: httpProxyValidationSchema({ values, pairValueName: 'httpsProxy' }),
61
- httpsProxy: httpProxyValidationSchema({ values, pairValueName: 'httpProxy' }), // share the schema, httpS is currently not supported
62
- noProxy: noProxyValidationSchema,
63
- }),
64
- );
58
+ const validationSchema = (t: TFunction) =>
59
+ Yup.lazy((values: OcmDiscoveryImageFormValues) =>
60
+ Yup.object<OcmDiscoveryImageFormValues>().shape({
61
+ sshPublicKey: sshPublicKeyValidationSchema(t),
62
+ httpProxy: httpProxyValidationSchema({ values, pairValueName: 'httpsProxy', t }),
63
+ httpsProxy: httpProxyValidationSchema({ values, pairValueName: 'httpProxy', t }), // share the schema, httpS is currently not supported
64
+ noProxy: noProxyValidationSchema(t),
65
+ }),
66
+ );
65
67
 
66
68
  type OcmDiscoveryImageConfigFormProps = Proxy & {
67
69
  onCancel: () => void;
@@ -137,7 +139,7 @@ export const OcmDiscoveryImageConfigForm = ({
137
139
  <Formik
138
140
  initialValues={initialValues}
139
141
  initialStatus={{ error: null }}
140
- validationSchema={validationSchema}
142
+ validationSchema={validationSchema(t)}
141
143
  onSubmit={handleSubmit}
142
144
  >
143
145
  {({ submitForm, isSubmitting, status, setStatus }) => {
@@ -5,6 +5,7 @@ import { getFormViewManifestsValidationSchema } from './customManifestsValidatio
5
5
  import { CustomManifestsForm } from './CustomManifestsForm';
6
6
  import { getEmptyManifestsValues, getManifestValues } from './utils';
7
7
  import { Cluster } from '@openshift-assisted/types/assisted-installer-service';
8
+ import { useTranslation } from '../../../../../common';
8
9
 
9
10
  export const CustomManifests = ({
10
11
  cluster,
@@ -13,12 +14,13 @@ export const CustomManifests = ({
13
14
  cluster: Cluster;
14
15
  onFormStateChange: (formState: CustomManifestFormState) => void;
15
16
  }) => {
17
+ const { t } = useTranslation();
16
18
  const [formProps, setFormProps] = React.useState<CustomManifestsFormProps>();
17
19
 
18
20
  React.useEffect(() => {
19
21
  setFormProps({
20
22
  onFormStateChange: onFormStateChange,
21
- validationSchema: getFormViewManifestsValidationSchema,
23
+ validationSchema: getFormViewManifestsValidationSchema(t),
22
24
 
23
25
  getInitialValues: (customManifests: ListManifestsExtended) => {
24
26
  return getManifestValues(customManifests);
@@ -27,7 +29,7 @@ export const CustomManifests = ({
27
29
  showEmptyValues: true,
28
30
  cluster: cluster,
29
31
  });
30
- }, [cluster, onFormStateChange]);
32
+ }, [cluster, onFormStateChange, t]);
31
33
 
32
34
  if (!formProps) {
33
35
  return null;
@@ -1,14 +1,13 @@
1
1
  import * as Yup from 'yup';
2
+ import { TFunction } from 'i18next';
2
3
  import { CustomManifestValues, ManifestFormData } from '../data/dataTypes';
3
4
  import {
4
5
  getMaxFileSizeMessage,
5
6
  validateFileSize,
6
7
  validateFileName,
7
8
  validateFileType,
8
- INCORRECT_TYPE_FILE_MESSAGE,
9
9
  } from '../../../../../common/utils';
10
-
11
- import * as yup from 'yup';
10
+ import { getIncorrectFileTypeMessage } from '../../../../../common';
12
11
 
13
12
  /* eslint-disable */
14
13
  type CustomManifestMapper = (a: CustomManifestValues) => string;
@@ -33,7 +32,7 @@ Yup.addMethod(
33
32
  if (!list) return true;
34
33
 
35
34
  const seen = new Set();
36
- const errors: yup.ValidationError[] = [];
35
+ const errors: Yup.ValidationError[] = [];
37
36
 
38
37
  list.forEach((item, index) => {
39
38
  const mappedValue = mapper(item);
@@ -49,7 +48,7 @@ Yup.addMethod(
49
48
  });
50
49
 
51
50
  if (errors.length > 0) {
52
- throw new yup.ValidationError(errors);
51
+ throw new Yup.ValidationError(errors);
53
52
  }
54
53
 
55
54
  return true;
@@ -62,31 +61,32 @@ const INCORRECT_FILENAME =
62
61
 
63
62
  const UNIQUE_FOLDER_FILENAME = 'Ensure unique file names to avoid conflicts and errors.';
64
63
 
65
- export const getFormViewManifestsValidationSchema = Yup.object<ManifestFormData>({
66
- manifests: Yup.array<CustomManifestValues>()
67
- .of(
68
- Yup.object({
69
- folder: Yup.mixed().required('Required'),
70
- filename: Yup.string()
71
- .required('Required')
72
- .min(1, 'Number of characters must be 1-255')
73
- .max(255, 'Number of characters must be 1-255')
74
- .test('not-correct-filename', INCORRECT_FILENAME, (value: string) => {
75
- return validateFileName(value);
64
+ export const getFormViewManifestsValidationSchema = (t: TFunction) =>
65
+ Yup.object<ManifestFormData>({
66
+ manifests: Yup.array<CustomManifestValues>()
67
+ .of(
68
+ Yup.object({
69
+ folder: Yup.mixed().required('Required'),
70
+ filename: Yup.string()
71
+ .required('Required')
72
+ .min(1, 'Number of characters must be 1-255')
73
+ .max(255, 'Number of characters must be 1-255')
74
+ .test('not-correct-filename', INCORRECT_FILENAME, (value: string) => {
75
+ return validateFileName(value);
76
+ }),
77
+ manifestYaml: Yup.string().when('filename', {
78
+ is: (filename: string) => !filename.includes('patch'),
79
+ then: () =>
80
+ Yup.string()
81
+ .required('Required')
82
+ .test('not-big-file', getMaxFileSizeMessage(t), validateFileSize)
83
+ .test('not-valid-file', getIncorrectFileTypeMessage(t), validateFileType),
84
+ otherwise: () =>
85
+ Yup.string()
86
+ .required('Required')
87
+ .test('not-big-file', getMaxFileSizeMessage(t), validateFileSize), // Validation of file content is not required if filename contains 'patch'
76
88
  }),
77
- manifestYaml: Yup.string().when('filename', {
78
- is: (filename: string) => !filename.includes('patch'),
79
- then: () =>
80
- Yup.string()
81
- .required('Required')
82
- .test('not-big-file', getMaxFileSizeMessage, validateFileSize)
83
- .test('not-valid-file', INCORRECT_TYPE_FILE_MESSAGE, validateFileType),
84
- otherwise: () =>
85
- Yup.string()
86
- .required('Required')
87
- .test('not-big-file', getMaxFileSizeMessage, validateFileSize), // Validation of file content is not required if filename contains 'patch'
88
89
  }),
89
- }),
90
- )
91
- .uniqueManifestFiles(UNIQUE_FOLDER_FILENAME, (val: CustomManifestValues) => val.filename),
92
- });
90
+ )
91
+ .uniqueManifestFiles(UNIQUE_FOLDER_FILENAME, (val: CustomManifestValues) => val.filename),
92
+ });
@@ -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>
@@ -17,6 +17,7 @@ import {
17
17
  useAlerts,
18
18
  useFormikAutoSave,
19
19
  ClustersAPI,
20
+ useTranslation,
20
21
  } from '../../../../common';
21
22
  import { useDefaultConfiguration } from '../ClusterDefaultConfigurationContext';
22
23
  import { useClusterWizardContext } from '../../clusterWizard/ClusterWizardContext';
@@ -163,6 +164,7 @@ const NetworkConfigurationForm: React.FC<{
163
164
  };
164
165
 
165
166
  const NetworkConfigurationPage = ({ cluster }: { cluster: Cluster }) => {
167
+ const { t } = useTranslation();
166
168
  const pullSecret = usePullSecret();
167
169
  const {
168
170
  infraEnv,
@@ -201,8 +203,13 @@ const NetworkConfigurationPage = ({ cluster }: { cluster: Cluster }) => {
201
203
 
202
204
  const memoizedValidationSchema = React.useMemo(
203
205
  () =>
204
- getNetworkConfigurationValidationSchema(initialValues, hostSubnets, cluster.openshiftVersion),
205
- [hostSubnets, initialValues, cluster.openshiftVersion],
206
+ getNetworkConfigurationValidationSchema(
207
+ initialValues,
208
+ hostSubnets,
209
+ t,
210
+ cluster.openshiftVersion,
211
+ ),
212
+ [initialValues, hostSubnets, t, cluster.openshiftVersion],
206
213
  );
207
214
 
208
215
  React.useEffect(() => {