@openshift-assisted/ui-lib 2.48.6 → 2.49.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (464) hide show
  1. package/build/@types/cim/components/Agent/tableUtils.d.ts +4 -1
  2. package/build/@types/cim/components/Agent/tableUtils.d.ts.map +1 -1
  3. package/build/@types/cim/components/ClusterDeployment/ClusterDeploymentWizard.d.ts.map +1 -1
  4. package/build/@types/cim/components/ClusterDeployment/{ACMClusterDeploymentDetailsStep.d.ts → clusterDetails/ACMClusterDeploymentDetailsStep.d.ts} +5 -5
  5. package/build/@types/cim/components/ClusterDeployment/clusterDetails/ACMClusterDeploymentDetailsStep.d.ts.map +1 -0
  6. package/build/@types/cim/components/ClusterDeployment/{ClusterDeploymentDetailsForm.d.ts → clusterDetails/ClusterDeploymentDetailsForm.d.ts} +4 -4
  7. package/build/@types/cim/components/ClusterDeployment/clusterDetails/ClusterDeploymentDetailsForm.d.ts.map +1 -0
  8. package/build/@types/cim/components/ClusterDeployment/{ClusterDeploymentDetailsStep.d.ts → clusterDetails/ClusterDeploymentDetailsStep.d.ts} +5 -5
  9. package/build/@types/cim/components/ClusterDeployment/clusterDetails/ClusterDeploymentDetailsStep.d.ts.map +1 -0
  10. package/build/@types/cim/components/ClusterDeployment/{ClusterDetailsFormFields.d.ts → clusterDetails/ClusterDetailsFormFields.d.ts} +1 -1
  11. package/build/@types/cim/components/ClusterDeployment/clusterDetails/ClusterDetailsFormFields.d.ts.map +1 -0
  12. package/build/@types/cim/components/ClusterDeployment/clusterDetails/index.d.ts +5 -0
  13. package/build/@types/cim/components/ClusterDeployment/clusterDetails/index.d.ts.map +1 -0
  14. package/build/@types/cim/components/ClusterDeployment/components/AdditionalNTPSourcesDialogToggle.d.ts.map +1 -0
  15. package/build/@types/cim/components/ClusterDeployment/components/index.d.ts +2 -0
  16. package/build/@types/cim/components/ClusterDeployment/components/index.d.ts.map +1 -0
  17. package/build/@types/cim/components/ClusterDeployment/constants.d.ts +1 -0
  18. package/build/@types/cim/components/ClusterDeployment/constants.d.ts.map +1 -1
  19. package/build/@types/cim/components/ClusterDeployment/customManifests/ClusterDeploymentCustomManifestsStep.d.ts +6 -0
  20. package/build/@types/cim/components/ClusterDeployment/customManifests/ClusterDeploymentCustomManifestsStep.d.ts.map +1 -0
  21. package/build/@types/cim/components/ClusterDeployment/customManifests/ConfigMapDetail.d.ts +10 -0
  22. package/build/@types/cim/components/ClusterDeployment/customManifests/ConfigMapDetail.d.ts.map +1 -0
  23. package/build/@types/cim/components/ClusterDeployment/customManifests/ConfigMapForm.d.ts +12 -0
  24. package/build/@types/cim/components/ClusterDeployment/customManifests/ConfigMapForm.d.ts.map +1 -0
  25. package/build/@types/cim/components/ClusterDeployment/customManifests/index.d.ts +2 -0
  26. package/build/@types/cim/components/ClusterDeployment/customManifests/index.d.ts.map +1 -0
  27. package/build/@types/cim/components/ClusterDeployment/{ClusterDeploymentHostDiscoveryTable.d.ts → hostDiscovery/ClusterDeploymentHostDiscoveryTable.d.ts} +1 -1
  28. package/build/@types/cim/components/ClusterDeployment/hostDiscovery/ClusterDeploymentHostDiscoveryTable.d.ts.map +1 -0
  29. package/build/@types/cim/components/ClusterDeployment/{ClusterDeploymentHostsDiscovery.d.ts → hostDiscovery/ClusterDeploymentHostsDiscovery.d.ts} +1 -1
  30. package/build/@types/cim/components/ClusterDeployment/hostDiscovery/ClusterDeploymentHostsDiscovery.d.ts.map +1 -0
  31. package/build/@types/cim/components/ClusterDeployment/hostDiscovery/ClusterDeploymentHostsDiscoveryStep.d.ts +4 -0
  32. package/build/@types/cim/components/ClusterDeployment/hostDiscovery/ClusterDeploymentHostsDiscoveryStep.d.ts.map +1 -0
  33. package/build/@types/cim/components/ClusterDeployment/hostDiscovery/index.d.ts +2 -0
  34. package/build/@types/cim/components/ClusterDeployment/hostDiscovery/index.d.ts.map +1 -0
  35. package/build/@types/cim/components/ClusterDeployment/{ClusterDeploymentHostSelectionStep.d.ts → hostSelection/ClusterDeploymentHostSelectionStep.d.ts} +4 -4
  36. package/build/@types/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostSelectionStep.d.ts.map +1 -0
  37. package/build/@types/cim/components/ClusterDeployment/{ClusterDeploymentHostsSelection.d.ts → hostSelection/ClusterDeploymentHostsSelection.d.ts} +1 -1
  38. package/build/@types/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostsSelection.d.ts.map +1 -0
  39. package/build/@types/cim/components/ClusterDeployment/{ClusterDeploymentHostsSelectionAdvanced.d.ts → hostSelection/ClusterDeploymentHostsSelectionAdvanced.d.ts} +6 -6
  40. package/build/@types/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostsSelectionAdvanced.d.ts.map +1 -0
  41. package/build/@types/cim/components/ClusterDeployment/{ClusterDeploymentHostsSelectionBasic.d.ts → hostSelection/ClusterDeploymentHostsSelectionBasic.d.ts} +1 -1
  42. package/build/@types/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostsSelectionBasic.d.ts.map +1 -0
  43. package/build/@types/cim/components/ClusterDeployment/hostSelection/index.d.ts +3 -0
  44. package/build/@types/cim/components/ClusterDeployment/hostSelection/index.d.ts.map +1 -0
  45. package/build/@types/cim/components/ClusterDeployment/index.d.ts +2 -2
  46. package/build/@types/cim/components/ClusterDeployment/index.d.ts.map +1 -1
  47. package/build/@types/cim/components/ClusterDeployment/{ClusterDeploymentHostsNetworkTable.d.ts → networking/ClusterDeploymentHostsNetworkTable.d.ts} +2 -2
  48. package/build/@types/cim/components/ClusterDeployment/networking/ClusterDeploymentHostsNetworkTable.d.ts.map +1 -0
  49. package/build/@types/cim/components/ClusterDeployment/{ClusterDeploymentNetworkingForm.d.ts → networking/ClusterDeploymentNetworkingForm.d.ts} +2 -4
  50. package/build/@types/cim/components/ClusterDeployment/networking/ClusterDeploymentNetworkingForm.d.ts.map +1 -0
  51. package/build/@types/cim/components/ClusterDeployment/{ClusterDeploymentNetworkingStep.d.ts → networking/ClusterDeploymentNetworkingStep.d.ts} +4 -4
  52. package/build/@types/cim/components/ClusterDeployment/networking/ClusterDeploymentNetworkingStep.d.ts.map +1 -0
  53. package/build/@types/cim/components/ClusterDeployment/networking/index.d.ts +2 -0
  54. package/build/@types/cim/components/ClusterDeployment/networking/index.d.ts.map +1 -0
  55. package/build/@types/cim/components/ClusterDeployment/{ClusterDeploymentReviewStep.d.ts → review/ClusterDeploymentReviewStep.d.ts} +3 -3
  56. package/build/@types/cim/components/ClusterDeployment/review/ClusterDeploymentReviewStep.d.ts.map +1 -0
  57. package/build/@types/cim/components/ClusterDeployment/review/ReviewConfigMapsTable.d.ts +6 -0
  58. package/build/@types/cim/components/ClusterDeployment/review/ReviewConfigMapsTable.d.ts.map +1 -0
  59. package/build/@types/cim/components/ClusterDeployment/review/index.d.ts +2 -0
  60. package/build/@types/cim/components/ClusterDeployment/review/index.d.ts.map +1 -0
  61. package/build/@types/cim/components/ClusterDeployment/types.d.ts +2 -1
  62. package/build/@types/cim/components/ClusterDeployment/types.d.ts.map +1 -1
  63. package/build/@types/cim/components/ClusterDeployment/wizardTransition.d.ts +1 -1
  64. package/build/@types/cim/components/ClusterDeployment/wizardTransition.d.ts.map +1 -1
  65. package/build/@types/cim/components/Hypershift/HostedClusterWizard/DetailsStep/DetailsForm.d.ts.map +1 -1
  66. package/build/@types/cim/components/Hypershift/HostedClusterWizard/DetailsStep/types.d.ts +1 -1
  67. package/build/@types/cim/components/Hypershift/HostedClusterWizard/DetailsStep/types.d.ts.map +1 -1
  68. package/build/@types/cim/components/InfraEnv/InfraEnvAgentTable.d.ts.map +1 -1
  69. package/build/@types/cim/components/InfraEnv/InfraTableToolbar.d.ts +5 -0
  70. package/build/@types/cim/components/InfraEnv/InfraTableToolbar.d.ts.map +1 -1
  71. package/build/@types/cim/components/helpers/agentClusterInstall.d.ts +1 -0
  72. package/build/@types/cim/components/helpers/agentClusterInstall.d.ts.map +1 -1
  73. package/build/@types/cim/components/helpers/agents.d.ts +1 -1
  74. package/build/@types/cim/components/helpers/agents.d.ts.map +1 -1
  75. package/build/@types/cim/components/helpers/toAssisted.d.ts.map +1 -1
  76. package/build/@types/cim/components/helpers/versions.d.ts.map +1 -1
  77. package/build/@types/cim/components/modals/AddHostModal.d.ts.map +1 -1
  78. package/build/@types/cim/components/modals/CimConfiguration/CimConfigurationFormFields.d.ts +4 -0
  79. package/build/@types/cim/components/modals/CimConfiguration/CimConfigurationFormFields.d.ts.map +1 -0
  80. package/build/@types/cim/components/modals/CimConfiguration/CimConfigurationModal.d.ts +0 -1
  81. package/build/@types/cim/components/modals/CimConfiguration/CimConfigurationModal.d.ts.map +1 -1
  82. package/build/@types/cim/components/modals/CimConfiguration/persist.d.ts +4 -7
  83. package/build/@types/cim/components/modals/CimConfiguration/persist.d.ts.map +1 -1
  84. package/build/@types/cim/components/modals/CimConfiguration/types.d.ts +7 -16
  85. package/build/@types/cim/components/modals/CimConfiguration/types.d.ts.map +1 -1
  86. package/build/@types/cim/hooks/index.d.ts +3 -0
  87. package/build/@types/cim/hooks/index.d.ts.map +1 -0
  88. package/build/@types/cim/hooks/types.d.ts +4 -0
  89. package/build/@types/cim/hooks/types.d.ts.map +1 -0
  90. package/build/@types/cim/hooks/useAgentServiceConfig.d.ts +4 -0
  91. package/build/@types/cim/hooks/useAgentServiceConfig.d.ts.map +1 -0
  92. package/build/@types/cim/hooks/useConfigMaps.d.ts +4 -0
  93. package/build/@types/cim/hooks/useConfigMaps.d.ts.map +1 -0
  94. package/build/@types/cim/hooks/useK8sWatchResource.d.ts +8 -0
  95. package/build/@types/cim/hooks/useK8sWatchResource.d.ts.map +1 -0
  96. package/build/@types/cim/types/index.d.ts +1 -1
  97. package/build/@types/cim/types/index.d.ts.map +1 -1
  98. package/build/@types/cim/types/k8s/agent-cluster-install.d.ts +3 -0
  99. package/build/@types/cim/types/k8s/agent-cluster-install.d.ts.map +1 -1
  100. package/build/@types/cim/types/models.d.ts +7 -0
  101. package/build/@types/cim/types/models.d.ts.map +1 -0
  102. package/build/@types/cim/utils.d.ts +2 -0
  103. package/build/@types/cim/utils.d.ts.map +1 -1
  104. package/build/@types/common/api/assisted-service/HostsAPI.d.ts +0 -1
  105. package/build/@types/common/api/assisted-service/HostsAPI.d.ts.map +1 -1
  106. package/build/@types/common/components/clusterConfiguration/ControlPlaneNodesDropdown.d.ts.map +1 -1
  107. package/build/@types/common/components/clusterConfiguration/DownloadIso.d.ts +2 -1
  108. package/build/@types/common/components/clusterConfiguration/DownloadIso.d.ts.map +1 -1
  109. package/build/@types/common/components/clusterConfiguration/ExternalPlatformsDropdown.d.ts +14 -0
  110. package/build/@types/common/components/clusterConfiguration/ExternalPlatformsDropdown.d.ts.map +1 -0
  111. package/build/@types/common/components/clusterConfiguration/SecurityFields.d.ts +3 -1
  112. package/build/@types/common/components/clusterConfiguration/SecurityFields.d.ts.map +1 -1
  113. package/build/@types/common/components/clusterConfiguration/index.d.ts +1 -0
  114. package/build/@types/common/components/clusterConfiguration/index.d.ts.map +1 -1
  115. package/build/@types/common/components/clusterWizard/types.d.ts +1 -2
  116. package/build/@types/common/components/clusterWizard/types.d.ts.map +1 -1
  117. package/build/@types/common/components/hosts/status.d.ts.map +1 -1
  118. package/build/@types/common/components/hosts/tableUtils.d.ts +2 -0
  119. package/build/@types/common/components/hosts/tableUtils.d.ts.map +1 -1
  120. package/build/@types/common/components/hosts/utils.d.ts +3 -0
  121. package/build/@types/common/components/hosts/utils.d.ts.map +1 -1
  122. package/build/@types/common/components/ui/OpenShiftSelectWithSearch.d.ts +1 -2
  123. package/build/@types/common/components/ui/OpenShiftSelectWithSearch.d.ts.map +1 -1
  124. package/build/@types/common/components/ui/OpenShiftVersionDropdown.d.ts +3 -3
  125. package/build/@types/common/components/ui/OpenShiftVersionDropdown.d.ts.map +1 -1
  126. package/build/@types/common/components/ui/OpenShiftVersionModal.d.ts.map +1 -1
  127. package/build/@types/common/components/ui/formik/InputField.d.ts.map +1 -1
  128. package/build/@types/common/components/ui/formik/SelectFieldWithSearch.d.ts +16 -0
  129. package/build/@types/common/components/ui/formik/SelectFieldWithSearch.d.ts.map +1 -0
  130. package/build/@types/common/components/ui/formik/index.d.ts +1 -0
  131. package/build/@types/common/components/ui/formik/index.d.ts.map +1 -1
  132. package/build/@types/common/components/ui/formik/types.d.ts +2 -2
  133. package/build/@types/common/components/ui/formik/types.d.ts.map +1 -1
  134. package/build/@types/common/components/ui/formik/validationSchemas.d.ts.map +1 -1
  135. package/build/@types/common/config/docs_links.d.ts +1 -1
  136. package/build/@types/common/config/docs_links.d.ts.map +1 -1
  137. package/build/@types/common/utils.d.ts +1 -0
  138. package/build/@types/common/utils.d.ts.map +1 -1
  139. package/build/@types/ocm/components/Routes.d.ts +6 -4
  140. package/build/@types/ocm/components/Routes.d.ts.map +1 -1
  141. package/build/@types/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.d.ts.map +1 -1
  142. package/build/@types/ocm/components/clusterConfiguration/OcmOpenShiftVersionSelect.d.ts.map +1 -1
  143. package/build/@types/ocm/components/clusterConfiguration/OpenshiftVersionHelperText.d.ts +1 -1
  144. package/build/@types/ocm/components/clusterConfiguration/OpenshiftVersionHelperText.d.ts.map +1 -1
  145. package/build/@types/ocm/components/clusterWizard/disconnected/BasicStep.d.ts.map +1 -1
  146. package/build/@types/ocm/components/featureSupportLevels/ReviewClusterFeatureSupportLevels.d.ts +1 -1
  147. package/build/@types/ocm/components/featureSupportLevels/ReviewClusterFeatureSupportLevels.d.ts.map +1 -1
  148. package/build/@types/ocm/services/HostsService.d.ts +0 -1
  149. package/build/@types/ocm/services/HostsService.d.ts.map +1 -1
  150. package/build/cjs/cim/components/Agent/AgentStatus.js +2 -2
  151. package/build/cjs/cim/components/Agent/AgentStatus.js.map +1 -1
  152. package/build/cjs/cim/components/Agent/tableUtils.js +31 -12
  153. package/build/cjs/cim/components/Agent/tableUtils.js.map +1 -1
  154. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentWizard.js +12 -9
  155. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentWizard.js.map +1 -1
  156. package/build/cjs/cim/components/ClusterDeployment/ScaleUpForm.js +2 -2
  157. package/build/cjs/cim/components/ClusterDeployment/ScaleUpForm.js.map +1 -1
  158. package/build/cjs/cim/components/ClusterDeployment/{ACMClusterDeploymentDetailsStep.js → clusterDetails/ACMClusterDeploymentDetailsStep.js} +6 -5
  159. package/build/cjs/cim/components/ClusterDeployment/clusterDetails/ACMClusterDeploymentDetailsStep.js.map +1 -0
  160. package/build/cjs/cim/components/ClusterDeployment/{ClusterDeploymentDetailsForm.js → clusterDetails/ClusterDeploymentDetailsForm.js} +8 -8
  161. package/build/cjs/cim/components/ClusterDeployment/clusterDetails/ClusterDeploymentDetailsForm.js.map +1 -0
  162. package/build/cjs/cim/components/ClusterDeployment/{ClusterDeploymentDetailsStep.js → clusterDetails/ClusterDeploymentDetailsStep.js} +8 -8
  163. package/build/cjs/cim/components/ClusterDeployment/clusterDetails/ClusterDeploymentDetailsStep.js.map +1 -0
  164. package/build/cjs/cim/components/ClusterDeployment/{ClusterDetailsFormFields.js → clusterDetails/ClusterDetailsFormFields.js} +20 -25
  165. package/build/cjs/cim/components/ClusterDeployment/clusterDetails/ClusterDetailsFormFields.js.map +1 -0
  166. package/build/cjs/cim/components/ClusterDeployment/clusterDetails/index.js +8 -0
  167. package/build/cjs/cim/components/ClusterDeployment/clusterDetails/index.js.map +1 -0
  168. package/build/cjs/cim/components/ClusterDeployment/{AdditionalNTPSourcesDialogToggle.js → components/AdditionalNTPSourcesDialogToggle.js} +1 -1
  169. package/build/cjs/cim/components/ClusterDeployment/components/AdditionalNTPSourcesDialogToggle.js.map +1 -0
  170. package/build/cjs/cim/components/ClusterDeployment/components/index.js +5 -0
  171. package/build/cjs/cim/components/ClusterDeployment/components/index.js.map +1 -0
  172. package/build/cjs/cim/components/ClusterDeployment/constants.js +1 -0
  173. package/build/cjs/cim/components/ClusterDeployment/constants.js.map +1 -1
  174. package/build/cjs/cim/components/ClusterDeployment/customManifests/ClusterDeploymentCustomManifestsStep.js +71 -0
  175. package/build/cjs/cim/components/ClusterDeployment/customManifests/ClusterDeploymentCustomManifestsStep.js.map +1 -0
  176. package/build/cjs/cim/components/ClusterDeployment/customManifests/ConfigMapDetail.js +64 -0
  177. package/build/cjs/cim/components/ClusterDeployment/customManifests/ConfigMapDetail.js.map +1 -0
  178. package/build/cjs/cim/components/ClusterDeployment/customManifests/ConfigMapForm.js +134 -0
  179. package/build/cjs/cim/components/ClusterDeployment/customManifests/ConfigMapForm.js.map +1 -0
  180. package/build/cjs/cim/components/ClusterDeployment/customManifests/index.js +5 -0
  181. package/build/cjs/cim/components/ClusterDeployment/customManifests/index.js.map +1 -0
  182. package/build/cjs/cim/components/ClusterDeployment/{ClusterDeploymentHostDiscoveryTable.js → hostDiscovery/ClusterDeploymentHostDiscoveryTable.js} +20 -13
  183. package/build/cjs/cim/components/ClusterDeployment/hostDiscovery/ClusterDeploymentHostDiscoveryTable.js.map +1 -0
  184. package/build/cjs/cim/components/ClusterDeployment/{ClusterDeploymentHostsDiscovery.js → hostDiscovery/ClusterDeploymentHostsDiscovery.js} +6 -6
  185. package/build/cjs/cim/components/ClusterDeployment/hostDiscovery/ClusterDeploymentHostsDiscovery.js.map +1 -0
  186. package/build/cjs/cim/components/ClusterDeployment/{ClusterDeploymentHostsDiscoveryStep.js → hostDiscovery/ClusterDeploymentHostsDiscoveryStep.js} +10 -9
  187. package/build/cjs/cim/components/ClusterDeployment/hostDiscovery/ClusterDeploymentHostsDiscoveryStep.js.map +1 -0
  188. package/build/cjs/cim/components/ClusterDeployment/hostDiscovery/index.js +5 -0
  189. package/build/cjs/cim/components/ClusterDeployment/hostDiscovery/index.js.map +1 -0
  190. package/build/cjs/cim/components/ClusterDeployment/{ClusterDeploymentHostSelectionStep.js → hostSelection/ClusterDeploymentHostSelectionStep.js} +15 -14
  191. package/build/cjs/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostSelectionStep.js.map +1 -0
  192. package/build/cjs/cim/components/ClusterDeployment/{ClusterDeploymentHostsSelection.js → hostSelection/ClusterDeploymentHostsSelection.js} +23 -14
  193. package/build/cjs/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostsSelection.js.map +1 -0
  194. package/build/cjs/cim/components/ClusterDeployment/{ClusterDeploymentHostsSelectionAdvanced.js → hostSelection/ClusterDeploymentHostsSelectionAdvanced.js} +7 -6
  195. package/build/cjs/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostsSelectionAdvanced.js.map +1 -0
  196. package/build/cjs/cim/components/ClusterDeployment/{ClusterDeploymentHostsSelectionBasic.js → hostSelection/ClusterDeploymentHostsSelectionBasic.js} +7 -7
  197. package/build/cjs/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostsSelectionBasic.js.map +1 -0
  198. package/build/cjs/cim/components/ClusterDeployment/hostSelection/index.js +6 -0
  199. package/build/cjs/cim/components/ClusterDeployment/hostSelection/index.js.map +1 -0
  200. package/build/cjs/cim/components/ClusterDeployment/index.js +4 -4
  201. package/build/cjs/cim/components/ClusterDeployment/index.js.map +1 -1
  202. package/build/cjs/cim/components/ClusterDeployment/{ClusterDeploymentHostsNetworkTable.js → networking/ClusterDeploymentHostsNetworkTable.js} +10 -10
  203. package/build/cjs/cim/components/ClusterDeployment/networking/ClusterDeploymentHostsNetworkTable.js.map +1 -0
  204. package/build/cjs/cim/components/ClusterDeployment/{ClusterDeploymentNetworkingForm.js → networking/ClusterDeploymentNetworkingForm.js} +7 -10
  205. package/build/cjs/cim/components/ClusterDeployment/networking/ClusterDeploymentNetworkingForm.js.map +1 -0
  206. package/build/cjs/cim/components/ClusterDeployment/{ClusterDeploymentNetworkingStep.js → networking/ClusterDeploymentNetworkingStep.js} +10 -10
  207. package/build/cjs/cim/components/ClusterDeployment/networking/ClusterDeploymentNetworkingStep.js.map +1 -0
  208. package/build/cjs/cim/components/ClusterDeployment/networking/index.js +5 -0
  209. package/build/cjs/cim/components/ClusterDeployment/networking/index.js.map +1 -0
  210. package/build/cjs/cim/components/ClusterDeployment/{ClusterDeploymentReviewStep.js → review/ClusterDeploymentReviewStep.js} +21 -16
  211. package/build/cjs/cim/components/ClusterDeployment/review/ClusterDeploymentReviewStep.js.map +1 -0
  212. package/build/cjs/cim/components/ClusterDeployment/review/ReviewConfigMapsTable.js +51 -0
  213. package/build/cjs/cim/components/ClusterDeployment/review/ReviewConfigMapsTable.js.map +1 -0
  214. package/build/cjs/cim/components/ClusterDeployment/review/index.js +5 -0
  215. package/build/cjs/cim/components/ClusterDeployment/review/index.js.map +1 -0
  216. package/build/cjs/cim/components/ClusterDeployment/use-networking-formik.js +2 -3
  217. package/build/cjs/cim/components/ClusterDeployment/use-networking-formik.js.map +1 -1
  218. package/build/cjs/cim/components/ClusterDeployment/wizardTransition.js +1 -0
  219. package/build/cjs/cim/components/ClusterDeployment/wizardTransition.js.map +1 -1
  220. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/DetailsStep/DetailsForm.js +7 -12
  221. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/DetailsStep/DetailsForm.js.map +1 -1
  222. package/build/cjs/cim/components/Hypershift/modals/ManageHostsModal.js +2 -2
  223. package/build/cjs/cim/components/Hypershift/modals/ManageHostsModal.js.map +1 -1
  224. package/build/cjs/cim/components/InfraEnv/InfraEnvAgentTable.js +5 -2
  225. package/build/cjs/cim/components/InfraEnv/InfraEnvAgentTable.js.map +1 -1
  226. package/build/cjs/cim/components/InfraEnv/InfraTableToolbar.js +25 -3
  227. package/build/cjs/cim/components/InfraEnv/InfraTableToolbar.js.map +1 -1
  228. package/build/cjs/cim/components/helpers/agentClusterInstall.js +7 -1
  229. package/build/cjs/cim/components/helpers/agentClusterInstall.js.map +1 -1
  230. package/build/cjs/cim/components/helpers/agents.js +4 -1
  231. package/build/cjs/cim/components/helpers/agents.js.map +1 -1
  232. package/build/cjs/cim/components/helpers/toAssisted.js +43 -25
  233. package/build/cjs/cim/components/helpers/toAssisted.js.map +1 -1
  234. package/build/cjs/cim/components/helpers/versions.js +5 -1
  235. package/build/cjs/cim/components/helpers/versions.js.map +1 -1
  236. package/build/cjs/cim/components/modals/AddHostModal.js +10 -5
  237. package/build/cjs/cim/components/modals/AddHostModal.js.map +1 -1
  238. package/build/cjs/cim/components/modals/CimConfiguration/CimConfigurationFormFields.js +91 -0
  239. package/build/cjs/cim/components/modals/CimConfiguration/CimConfigurationFormFields.js.map +1 -0
  240. package/build/cjs/cim/components/modals/CimConfiguration/CimConfigurationModal.js +77 -121
  241. package/build/cjs/cim/components/modals/CimConfiguration/CimConfigurationModal.js.map +1 -1
  242. package/build/cjs/cim/components/modals/CimConfiguration/persist.js +44 -95
  243. package/build/cjs/cim/components/modals/CimConfiguration/persist.js.map +1 -1
  244. package/build/cjs/cim/components/modals/EditProxyModal.js +1 -1
  245. package/build/cjs/cim/components/modals/EditProxyModal.js.map +1 -1
  246. package/build/cjs/cim/components/modals/EditSSHKeyModal.js +1 -1
  247. package/build/cjs/cim/components/modals/EditSSHKeyModal.js.map +1 -1
  248. package/build/cjs/cim/components/modals/MassApproveAgentModal.js +3 -3
  249. package/build/cjs/cim/components/modals/MassApproveAgentModal.js.map +1 -1
  250. package/build/cjs/cim/hooks/index.js +6 -0
  251. package/build/cjs/cim/hooks/index.js.map +1 -0
  252. package/build/cjs/cim/hooks/types.js +3 -0
  253. package/build/cjs/cim/hooks/types.js.map +1 -0
  254. package/build/cjs/cim/hooks/useAgentServiceConfig.js +13 -0
  255. package/build/cjs/cim/hooks/useAgentServiceConfig.js.map +1 -0
  256. package/build/cjs/cim/hooks/useConfigMaps.js +12 -0
  257. package/build/cjs/cim/hooks/useConfigMaps.js.map +1 -0
  258. package/build/cjs/cim/hooks/useK8sWatchResource.js +12 -0
  259. package/build/cjs/cim/hooks/useK8sWatchResource.js.map +1 -0
  260. package/build/cjs/cim/types/index.js +1 -1
  261. package/build/cjs/cim/types/index.js.map +1 -1
  262. package/build/cjs/cim/types/models.js +54 -0
  263. package/build/cjs/cim/types/models.js.map +1 -0
  264. package/build/cjs/cim/utils.js +12 -1
  265. package/build/cjs/cim/utils.js.map +1 -1
  266. package/build/cjs/common/api/assisted-service/HostsAPI.js +0 -3
  267. package/build/cjs/common/api/assisted-service/HostsAPI.js.map +1 -1
  268. package/build/cjs/common/components/clusterConfiguration/ControlPlaneNodesDropdown.js +10 -1
  269. package/build/cjs/common/components/clusterConfiguration/ControlPlaneNodesDropdown.js.map +1 -1
  270. package/build/cjs/common/components/clusterConfiguration/DownloadIso.js +2 -2
  271. package/build/cjs/common/components/clusterConfiguration/DownloadIso.js.map +1 -1
  272. package/build/cjs/common/components/clusterConfiguration/ExternalPlatformsDropdown.js +49 -0
  273. package/build/cjs/common/components/clusterConfiguration/ExternalPlatformsDropdown.js.map +1 -0
  274. package/build/cjs/common/components/clusterConfiguration/SecurityFields.js +7 -5
  275. package/build/cjs/common/components/clusterConfiguration/SecurityFields.js.map +1 -1
  276. package/build/cjs/common/components/clusterConfiguration/index.js +1 -0
  277. package/build/cjs/common/components/clusterConfiguration/index.js.map +1 -1
  278. package/build/cjs/common/components/clusterWizard/clusterDetailsValidation.js +7 -7
  279. package/build/cjs/common/components/clusterWizard/clusterDetailsValidation.js.map +1 -1
  280. package/build/cjs/common/components/hosts/status.js +1 -2
  281. package/build/cjs/common/components/hosts/status.js.map +1 -1
  282. package/build/cjs/common/components/hosts/tableUtils.js +41 -1
  283. package/build/cjs/common/components/hosts/tableUtils.js.map +1 -1
  284. package/build/cjs/common/components/hosts/utils.js +5 -1
  285. package/build/cjs/common/components/hosts/utils.js.map +1 -1
  286. package/build/cjs/common/components/ui/OpenShiftSelectWithSearch.js +20 -139
  287. package/build/cjs/common/components/ui/OpenShiftSelectWithSearch.js.map +1 -1
  288. package/build/cjs/common/components/ui/OpenShiftVersionDropdown.js +10 -15
  289. package/build/cjs/common/components/ui/OpenShiftVersionDropdown.js.map +1 -1
  290. package/build/cjs/common/components/ui/OpenShiftVersionModal.js +8 -12
  291. package/build/cjs/common/components/ui/OpenShiftVersionModal.js.map +1 -1
  292. package/build/cjs/common/components/ui/formik/InputField.js +4 -5
  293. package/build/cjs/common/components/ui/formik/InputField.js.map +1 -1
  294. package/build/cjs/common/components/ui/formik/SelectFieldWithSearch.js +153 -0
  295. package/build/cjs/common/components/ui/formik/SelectFieldWithSearch.js.map +1 -0
  296. package/build/cjs/common/components/ui/formik/index.js +3 -1
  297. package/build/cjs/common/components/ui/formik/index.js.map +1 -1
  298. package/build/cjs/common/components/ui/formik/validationSchemas.js +4 -8
  299. package/build/cjs/common/components/ui/formik/validationSchemas.js.map +1 -1
  300. package/build/cjs/common/config/docs_links.js +9 -3
  301. package/build/cjs/common/config/docs_links.js.map +1 -1
  302. package/build/cjs/common/utils.js +4 -3
  303. package/build/cjs/common/utils.js.map +1 -1
  304. package/build/cjs/ocm/components/Routes.js.map +1 -1
  305. package/build/cjs/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.js +2 -1
  306. package/build/cjs/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.js.map +1 -1
  307. package/build/cjs/ocm/components/clusterConfiguration/OcmDiscoveryImageConfigForm.js +1 -1
  308. package/build/cjs/ocm/components/clusterConfiguration/OcmDiscoveryImageConfigForm.js.map +1 -1
  309. package/build/cjs/ocm/components/clusterConfiguration/OcmOpenShiftVersionSelect.js +10 -15
  310. package/build/cjs/ocm/components/clusterConfiguration/OcmOpenShiftVersionSelect.js.map +1 -1
  311. package/build/cjs/ocm/components/clusterConfiguration/OpenshiftVersionHelperText.js.map +1 -1
  312. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.js +1 -1
  313. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.js.map +1 -1
  314. package/build/cjs/ocm/components/clusterWizard/disconnected/BasicStep.js +2 -1
  315. package/build/cjs/ocm/components/clusterWizard/disconnected/BasicStep.js.map +1 -1
  316. package/build/cjs/ocm/components/clusters/AssistedInstallerHeader.js +1 -1
  317. package/build/cjs/ocm/components/clusters/AssistedInstallerHeader.js.map +1 -1
  318. package/build/cjs/ocm/components/featureSupportLevels/ReviewClusterFeatureSupportLevels.js +14 -4
  319. package/build/cjs/ocm/components/featureSupportLevels/ReviewClusterFeatureSupportLevels.js.map +1 -1
  320. package/build/cjs/ocm/services/HostsService.js +0 -6
  321. package/build/cjs/ocm/services/HostsService.js.map +1 -1
  322. package/lib/cim/components/Agent/AgentStatus.tsx +1 -1
  323. package/lib/cim/components/Agent/tableUtils.tsx +43 -13
  324. package/lib/cim/components/ClusterDeployment/ClusterDeploymentWizard.tsx +15 -5
  325. package/lib/cim/components/ClusterDeployment/ScaleUpForm.tsx +1 -1
  326. package/lib/cim/components/ClusterDeployment/{ACMClusterDeploymentDetailsStep.tsx → clusterDetails/ACMClusterDeploymentDetailsStep.tsx} +6 -8
  327. package/lib/cim/components/ClusterDeployment/{ClusterDeploymentDetailsForm.tsx → clusterDetails/ClusterDeploymentDetailsForm.tsx} +17 -11
  328. package/lib/cim/components/ClusterDeployment/{ClusterDeploymentDetailsStep.tsx → clusterDetails/ClusterDeploymentDetailsStep.tsx} +9 -10
  329. package/lib/cim/components/ClusterDeployment/{ClusterDetailsFormFields.tsx → clusterDetails/ClusterDetailsFormFields.tsx} +22 -24
  330. package/lib/cim/components/ClusterDeployment/clusterDetails/index.tsx +4 -0
  331. package/lib/cim/components/ClusterDeployment/{AdditionalNTPSourcesDialogToggle.tsx → components/AdditionalNTPSourcesDialogToggle.tsx} +1 -1
  332. package/lib/cim/components/ClusterDeployment/components/index.tsx +1 -0
  333. package/lib/cim/components/ClusterDeployment/constants.ts +1 -0
  334. package/lib/cim/components/ClusterDeployment/customManifests/ClusterDeploymentCustomManifestsStep.tsx +128 -0
  335. package/lib/cim/components/ClusterDeployment/customManifests/ConfigMapDetail.tsx +191 -0
  336. package/lib/cim/components/ClusterDeployment/customManifests/ConfigMapForm.tsx +247 -0
  337. package/lib/cim/components/ClusterDeployment/customManifests/index.tsx +1 -0
  338. package/lib/cim/components/ClusterDeployment/{ClusterDeploymentHostDiscoveryTable.tsx → hostDiscovery/ClusterDeploymentHostDiscoveryTable.tsx} +23 -14
  339. package/lib/cim/components/ClusterDeployment/{ClusterDeploymentHostsDiscovery.tsx → hostDiscovery/ClusterDeploymentHostsDiscovery.tsx} +8 -8
  340. package/lib/cim/components/ClusterDeployment/{ClusterDeploymentHostsDiscoveryStep.tsx → hostDiscovery/ClusterDeploymentHostsDiscoveryStep.tsx} +10 -11
  341. package/lib/cim/components/ClusterDeployment/hostDiscovery/index.tsx +1 -0
  342. package/lib/cim/components/ClusterDeployment/{ClusterDeploymentHostSelectionStep.tsx → hostSelection/ClusterDeploymentHostSelectionStep.tsx} +17 -16
  343. package/lib/cim/components/ClusterDeployment/{ClusterDeploymentHostsSelection.tsx → hostSelection/ClusterDeploymentHostsSelection.tsx} +33 -17
  344. package/lib/cim/components/ClusterDeployment/{ClusterDeploymentHostsSelectionAdvanced.tsx → hostSelection/ClusterDeploymentHostsSelectionAdvanced.tsx} +10 -12
  345. package/lib/cim/components/ClusterDeployment/{ClusterDeploymentHostsSelectionBasic.tsx → hostSelection/ClusterDeploymentHostsSelectionBasic.tsx} +9 -9
  346. package/lib/cim/components/ClusterDeployment/hostSelection/index.tsx +2 -0
  347. package/lib/cim/components/ClusterDeployment/index.ts +2 -2
  348. package/lib/cim/components/ClusterDeployment/{ClusterDeploymentHostsNetworkTable.tsx → networking/ClusterDeploymentHostsNetworkTable.tsx} +12 -12
  349. package/lib/cim/components/ClusterDeployment/{ClusterDeploymentNetworkingForm.tsx → networking/ClusterDeploymentNetworkingForm.tsx} +9 -13
  350. package/lib/cim/components/ClusterDeployment/{ClusterDeploymentNetworkingStep.tsx → networking/ClusterDeploymentNetworkingStep.tsx} +11 -13
  351. package/lib/cim/components/ClusterDeployment/networking/index.tsx +1 -0
  352. package/lib/cim/components/ClusterDeployment/{ClusterDeploymentReviewStep.tsx → review/ClusterDeploymentReviewStep.tsx} +36 -15
  353. package/lib/cim/components/ClusterDeployment/review/ReviewConfigMapsTable.tsx +70 -0
  354. package/lib/cim/components/ClusterDeployment/review/index.tsx +1 -0
  355. package/lib/cim/components/ClusterDeployment/types.ts +2 -0
  356. package/lib/cim/components/ClusterDeployment/use-networking-formik.ts +4 -4
  357. package/lib/cim/components/ClusterDeployment/wizardTransition.ts +2 -0
  358. package/lib/cim/components/Hypershift/HostedClusterWizard/DetailsStep/DetailsForm.tsx +7 -12
  359. package/lib/cim/components/Hypershift/HostedClusterWizard/DetailsStep/types.ts +1 -1
  360. package/lib/cim/components/Hypershift/modals/ManageHostsModal.tsx +2 -2
  361. package/lib/cim/components/InfraEnv/InfraEnvAgentTable.tsx +11 -0
  362. package/lib/cim/components/InfraEnv/InfraTableToolbar.tsx +77 -1
  363. package/lib/cim/components/helpers/agentClusterInstall.ts +4 -0
  364. package/lib/cim/components/helpers/agents.ts +5 -1
  365. package/lib/cim/components/helpers/toAssisted.ts +27 -2
  366. package/lib/cim/components/helpers/versions.ts +7 -3
  367. package/lib/cim/components/modals/AddHostModal.tsx +13 -1
  368. package/lib/cim/components/modals/CimConfiguration/CimConfigurationFormFields.tsx +259 -0
  369. package/lib/cim/components/modals/CimConfiguration/CimConfigurationModal.tsx +170 -193
  370. package/lib/cim/components/modals/CimConfiguration/persist.ts +62 -125
  371. package/lib/cim/components/modals/CimConfiguration/types.ts +7 -22
  372. package/lib/cim/components/modals/EditProxyModal.tsx +1 -1
  373. package/lib/cim/components/modals/EditSSHKeyModal.tsx +1 -1
  374. package/lib/cim/components/modals/MassApproveAgentModal.tsx +2 -2
  375. package/lib/cim/hooks/index.tsx +2 -0
  376. package/lib/cim/hooks/types.tsx +8 -0
  377. package/lib/cim/hooks/useAgentServiceConfig.tsx +15 -0
  378. package/lib/cim/hooks/useConfigMaps.tsx +14 -0
  379. package/lib/cim/hooks/useK8sWatchResource.tsx +27 -0
  380. package/lib/cim/types/index.ts +1 -1
  381. package/lib/cim/types/k8s/agent-cluster-install.ts +1 -0
  382. package/lib/cim/types/models.tsx +56 -0
  383. package/lib/cim/utils.ts +12 -0
  384. package/lib/common/api/assisted-service/HostsAPI.ts +0 -5
  385. package/lib/common/components/clusterConfiguration/ControlPlaneNodesDropdown.tsx +10 -1
  386. package/lib/common/components/clusterConfiguration/DownloadIso.tsx +3 -1
  387. package/lib/common/components/clusterConfiguration/ExternalPlatformsDropdown.tsx +88 -0
  388. package/lib/common/components/clusterConfiguration/SecurityFields.tsx +13 -6
  389. package/lib/common/components/clusterConfiguration/index.ts +1 -0
  390. package/lib/common/components/clusterWizard/clusterDetailsValidation.ts +7 -7
  391. package/lib/common/components/clusterWizard/types.ts +1 -2
  392. package/lib/common/components/hosts/status.tsx +1 -2
  393. package/lib/common/components/hosts/tableUtils.tsx +48 -0
  394. package/lib/common/components/hosts/utils.ts +4 -0
  395. package/lib/common/components/ui/OpenShiftSelectWithSearch.tsx +38 -239
  396. package/lib/common/components/ui/OpenShiftVersionDropdown.tsx +14 -23
  397. package/lib/common/components/ui/OpenShiftVersionModal.tsx +12 -16
  398. package/lib/common/components/ui/formik/InputField.tsx +16 -12
  399. package/lib/common/components/ui/formik/SelectFieldWithSearch.tsx +278 -0
  400. package/lib/common/components/ui/formik/index.tsx +1 -0
  401. package/lib/common/components/ui/formik/types.ts +2 -2
  402. package/lib/common/components/ui/formik/validationSchemas.ts +7 -9
  403. package/lib/common/config/docs_links.ts +9 -6
  404. package/lib/common/utils.ts +1 -1
  405. package/lib/ocm/components/Routes.tsx +9 -7
  406. package/lib/ocm/components/clusterConfiguration/OcmClusterDetailsFormFields.tsx +17 -16
  407. package/lib/ocm/components/clusterConfiguration/OcmDiscoveryImageConfigForm.tsx +2 -2
  408. package/lib/ocm/components/clusterConfiguration/OcmOpenShiftVersionSelect.tsx +13 -18
  409. package/lib/ocm/components/clusterConfiguration/OpenshiftVersionHelperText.tsx +1 -1
  410. package/lib/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.ts +2 -2
  411. package/lib/ocm/components/clusterWizard/disconnected/BasicStep.tsx +4 -2
  412. package/lib/ocm/components/clusterWizard/disconnected/ReviewStep.tsx +1 -1
  413. package/lib/ocm/components/clusters/AssistedInstallerHeader.tsx +2 -2
  414. package/lib/ocm/components/featureSupportLevels/ReviewClusterFeatureSupportLevels.tsx +23 -4
  415. package/lib/ocm/services/HostsService.ts +0 -8
  416. package/package.json +5 -5
  417. package/build/@types/cim/components/ClusterDeployment/ACMClusterDeploymentDetailsStep.d.ts.map +0 -1
  418. package/build/@types/cim/components/ClusterDeployment/AdditionalNTPSourcesDialogToggle.d.ts.map +0 -1
  419. package/build/@types/cim/components/ClusterDeployment/ClusterDeploymentDetailsForm.d.ts.map +0 -1
  420. package/build/@types/cim/components/ClusterDeployment/ClusterDeploymentDetailsStep.d.ts.map +0 -1
  421. package/build/@types/cim/components/ClusterDeployment/ClusterDeploymentHostDiscoveryTable.d.ts.map +0 -1
  422. package/build/@types/cim/components/ClusterDeployment/ClusterDeploymentHostSelectionStep.d.ts.map +0 -1
  423. package/build/@types/cim/components/ClusterDeployment/ClusterDeploymentHostsDiscovery.d.ts.map +0 -1
  424. package/build/@types/cim/components/ClusterDeployment/ClusterDeploymentHostsDiscoveryStep.d.ts +0 -5
  425. package/build/@types/cim/components/ClusterDeployment/ClusterDeploymentHostsDiscoveryStep.d.ts.map +0 -1
  426. package/build/@types/cim/components/ClusterDeployment/ClusterDeploymentHostsNetworkTable.d.ts.map +0 -1
  427. package/build/@types/cim/components/ClusterDeployment/ClusterDeploymentHostsSelection.d.ts.map +0 -1
  428. package/build/@types/cim/components/ClusterDeployment/ClusterDeploymentHostsSelectionAdvanced.d.ts.map +0 -1
  429. package/build/@types/cim/components/ClusterDeployment/ClusterDeploymentHostsSelectionBasic.d.ts.map +0 -1
  430. package/build/@types/cim/components/ClusterDeployment/ClusterDeploymentNetworkingForm.d.ts.map +0 -1
  431. package/build/@types/cim/components/ClusterDeployment/ClusterDeploymentNetworkingStep.d.ts.map +0 -1
  432. package/build/@types/cim/components/ClusterDeployment/ClusterDeploymentReviewStep.d.ts.map +0 -1
  433. package/build/@types/cim/components/ClusterDeployment/ClusterDetailsFormFields.d.ts.map +0 -1
  434. package/build/@types/cim/components/modals/CimConfiguration/CimConfigurationForm.d.ts +0 -5
  435. package/build/@types/cim/components/modals/CimConfiguration/CimConfigurationForm.d.ts.map +0 -1
  436. package/build/@types/cim/types/resources.d.ts +0 -45
  437. package/build/@types/cim/types/resources.d.ts.map +0 -1
  438. package/build/cjs/cim/components/ClusterDeployment/ACMClusterDeploymentDetailsStep.js.map +0 -1
  439. package/build/cjs/cim/components/ClusterDeployment/AdditionalNTPSourcesDialogToggle.js.map +0 -1
  440. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentDetailsForm.js.map +0 -1
  441. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentDetailsStep.js.map +0 -1
  442. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentHostDiscoveryTable.js.map +0 -1
  443. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentHostSelectionStep.js.map +0 -1
  444. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentHostsDiscovery.js.map +0 -1
  445. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentHostsDiscoveryStep.js.map +0 -1
  446. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentHostsNetworkTable.js.map +0 -1
  447. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentHostsSelection.js.map +0 -1
  448. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentHostsSelectionAdvanced.js.map +0 -1
  449. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentHostsSelectionBasic.js.map +0 -1
  450. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentNetworkingForm.js.map +0 -1
  451. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentNetworkingStep.js.map +0 -1
  452. package/build/cjs/cim/components/ClusterDeployment/ClusterDeploymentReviewStep.js.map +0 -1
  453. package/build/cjs/cim/components/ClusterDeployment/ClusterDetailsFormFields.js.map +0 -1
  454. package/build/cjs/cim/components/modals/CimConfiguration/CimConfigurationForm.css +0 -23
  455. package/build/cjs/cim/components/modals/CimConfiguration/CimConfigurationForm.js +0 -85
  456. package/build/cjs/cim/components/modals/CimConfiguration/CimConfigurationForm.js.map +0 -1
  457. package/build/cjs/cim/components/modals/CimConfiguration/CimConfigurationModal.css +0 -3
  458. package/build/cjs/cim/types/resources.js +0 -10
  459. package/build/cjs/cim/types/resources.js.map +0 -1
  460. package/lib/cim/components/modals/CimConfiguration/CimConfigurationForm.css +0 -23
  461. package/lib/cim/components/modals/CimConfiguration/CimConfigurationForm.tsx +0 -290
  462. package/lib/cim/components/modals/CimConfiguration/CimConfigurationModal.css +0 -3
  463. package/lib/cim/types/resources.ts +0 -50
  464. /package/build/@types/cim/components/ClusterDeployment/{AdditionalNTPSourcesDialogToggle.d.ts → components/AdditionalNTPSourcesDialogToggle.d.ts} +0 -0
@@ -22,6 +22,7 @@ export type DownloadISOProps = {
22
22
  isSNO?: boolean;
23
23
  fileName?: string;
24
24
  downloadUrl: string;
25
+ ciscoUrl?: string;
25
26
  onClose: () => void;
26
27
  onReset?: () => void;
27
28
  docVersion?: string;
@@ -37,13 +38,14 @@ const DownloadIso = ({
37
38
  isSNO = false,
38
39
  docVersion,
39
40
  updateTagsForCiscoIntersight,
41
+ ciscoUrl,
40
42
  }: DownloadISOProps) => {
41
43
  const wgetCommand = `wget -O ${fileName} '${downloadUrl || ''}'`;
42
44
  const { t } = useTranslation();
43
45
 
44
46
  const openCiscoIntersightHostsLink = (downloadUrl: string) => {
45
47
  updateTagsForCiscoIntersight ? updateTagsForCiscoIntersight() : '';
46
- window.open(getCiscoIntersightLink(downloadUrl), '_blank', 'noopener');
48
+ window.open(getCiscoIntersightLink(downloadUrl, ciscoUrl), '_blank', 'noopener');
47
49
  };
48
50
 
49
51
  return (
@@ -0,0 +1,88 @@
1
+ import * as React from 'react';
2
+ import { StaticField } from '../ui';
3
+ import { useTranslation } from '../../hooks';
4
+ import { TFunction } from 'i18next';
5
+ import { PlatformType } from '@openshift-assisted/types/assisted-installer-service';
6
+ import { Dropdown, DropdownItem, FormGroup, MenuToggle } from '@patternfly/react-core';
7
+ import { useField, useFormikContext } from 'formik';
8
+ import { ClusterDetailsValues } from '../clusterWizard';
9
+
10
+ export const getPlatforms = (t: TFunction): { [key in PlatformType]: string } => ({
11
+ none: t('ai:No platform integration'),
12
+ baremetal: t('ai:No platform integration'),
13
+ nutanix: t('ai:Nutanix'),
14
+ vsphere: t('ai:vSphere'),
15
+ external: t('ai:External cloud provider'),
16
+ });
17
+
18
+ export const ExternalPlatformsDropdown = ({ isDisabled }: { isDisabled: boolean }) => {
19
+ const [isOpen, setIsOpen] = React.useState(false);
20
+ const [{ value }, , { setValue }] = useField<PlatformType>('platform');
21
+ const { setFieldValue, values } = useFormikContext<ClusterDetailsValues>();
22
+ const { t } = useTranslation();
23
+
24
+ const platforms = getPlatforms(t);
25
+ const isSNO = values.controlPlaneCount === 1;
26
+ const options = Object.entries(platforms)
27
+ .filter(([key]) => {
28
+ if (isSNO) {
29
+ return key === 'none' || key === 'vsphere' || key === 'external';
30
+ } else {
31
+ return key !== 'none';
32
+ }
33
+ })
34
+ .map(([platform, label]) => (
35
+ <DropdownItem
36
+ key={platform}
37
+ id={platform}
38
+ value={platform}
39
+ selected={platform === value}
40
+ onClick={(e: React.MouseEvent) => e.preventDefault()}
41
+ >
42
+ {label}
43
+ </DropdownItem>
44
+ ));
45
+
46
+ const onSelect = (
47
+ _event: React.MouseEvent<Element, MouseEvent> | undefined,
48
+ value: string | number | undefined,
49
+ ) => {
50
+ setValue(value as PlatformType);
51
+ setIsOpen(false);
52
+
53
+ if (value === 'external' || values.controlPlaneCount === 1) {
54
+ setFieldValue('userManagedNetworking', true);
55
+ } else {
56
+ setFieldValue('userManagedNetworking', false);
57
+ }
58
+ };
59
+
60
+ return isDisabled ? (
61
+ <StaticField
62
+ name={'platform'}
63
+ label={t('ai:Integrate with external partner platforms')}
64
+ isRequired
65
+ >
66
+ {platforms[value]}
67
+ </StaticField>
68
+ ) : (
69
+ <FormGroup
70
+ isInline
71
+ label={t('ai:Integrate with external partner platforms')}
72
+ isRequired
73
+ name={'platform'}
74
+ >
75
+ <Dropdown
76
+ isOpen={isOpen}
77
+ toggle={(toggleRef) => (
78
+ <MenuToggle ref={toggleRef} className="pf-v5-u-w-100" onClick={() => setIsOpen(!isOpen)}>
79
+ {value ? platforms[value] : t('ai:Integrate with external partner platforms')}
80
+ </MenuToggle>
81
+ )}
82
+ onSelect={onSelect}
83
+ >
84
+ {options}
85
+ </Dropdown>
86
+ </FormGroup>
87
+ );
88
+ };
@@ -11,14 +11,19 @@ import { useTranslation } from '../../hooks/use-translation-wrapper';
11
11
 
12
12
  export const SshPublicKeyHelperText: React.FC<{
13
13
  fieldId?: string;
14
- }> = ({ fieldId = 'sshPublicKey' }) => {
14
+ allowMultipleKeys?: boolean;
15
+ }> = ({ fieldId = 'sshPublicKey', allowMultipleKeys = false }) => {
15
16
  const { t } = useTranslation();
16
17
  return (
17
18
  <HelperText id={fieldId}>
18
- <HelperTextItem data-testid="ssh-public-key-helper-text">
19
- {t(
20
- 'ai:Paste the content of a public ssh key you want to use to connect to the hosts into this field.',
21
- )}{' '}
19
+ <HelperTextItem>
20
+ {allowMultipleKeys
21
+ ? t(
22
+ 'ai:Paste the content of public SSH keys you want to use to connect to the hosts into this field. Multiple keys can be separated by newlines.',
23
+ )
24
+ : t(
25
+ 'ai:Paste the content of a public SSH key you want to use to connect to the hosts into this field.',
26
+ )}{' '}
22
27
  <ExternalLink href={SSH_GENERATION_DOC_LINK}>{t('ai:Learn more')}</ExternalLink>
23
28
  </HelperTextItem>
24
29
  </HelperText>
@@ -29,12 +34,14 @@ interface SecurityFieldsFieldsProps {
29
34
  clusterSshKey: Cluster['sshPublicKey'];
30
35
  imageSshKey?: Cluster['imageInfo']['sshPublicKey'];
31
36
  isDisabled?: boolean;
37
+ allowMultipleKeys?: boolean;
32
38
  }
33
39
 
34
40
  const SecurityFields = ({
35
41
  clusterSshKey,
36
42
  imageSshKey,
37
43
  isDisabled = false,
44
+ allowMultipleKeys = false,
38
45
  }: SecurityFieldsFieldsProps) => {
39
46
  //shareSshKey shouldn't response to changes. imageSshKey stays the same, there's a loading state while it's requested
40
47
  //clusterSshKey updating causes the textarea to disappear when the user clears it to edit it
@@ -77,7 +84,7 @@ const SecurityFields = ({
77
84
  <RenderIf condition={!shareSshKey}>
78
85
  <TextAreaField
79
86
  name="sshPublicKey"
80
- helperText={<SshPublicKeyHelperText />}
87
+ helperText={<SshPublicKeyHelperText allowMultipleKeys={allowMultipleKeys} />}
81
88
  onBlur={handleSshKeyBlur}
82
89
  isDisabled={isDisabled}
83
90
  />
@@ -9,3 +9,4 @@ export { default as SecurityFields } from './SecurityFields';
9
9
  export * from './utils';
10
10
  export * from './DiscoveryTroubleshootingModal';
11
11
  export * from './DiscoveryImageConfigForm';
12
+ export * from './ExternalPlatformsDropdown';
@@ -104,16 +104,16 @@ export const getClusterDetailsValidationSchema = ({
104
104
  return Yup.object({
105
105
  name: validateName(),
106
106
  baseDnsDomain: isOcm
107
- ? baseDomainValidationSchema.required('Required')
108
- : dnsNameValidationSchema.required('Required'),
107
+ ? baseDomainValidationSchema.required(t('ai:Required field'))
108
+ : dnsNameValidationSchema.required(t('ai:Required field')),
109
109
  });
110
110
  }
111
111
  return Yup.object({
112
112
  name: validateName(),
113
113
  baseDnsDomain: isOcm
114
- ? baseDomainValidationSchema.required('Required')
115
- : dnsNameValidationSchema.required('Required'),
116
- pullSecret: pullSecretValidationSchema.required('Required.'),
114
+ ? baseDomainValidationSchema.required(t('ai:Required field'))
115
+ : dnsNameValidationSchema.required(t('ai:Required field')),
116
+ pullSecret: pullSecretValidationSchema.required(t('ai:Required field')),
117
117
  diskEncryptionTangServers: Yup.array().when('diskEncryptionMode', {
118
118
  is: (diskEncryptionMode: DiskEncryption['mode']) => {
119
119
  return diskEncryptionMode === 'tang';
@@ -125,8 +125,8 @@ export const getClusterDetailsValidationSchema = ({
125
125
  .url(
126
126
  t('ai:Tang Server URL must be a valid URL starting with "http://" or "https://"'),
127
127
  )
128
- .required(t('ai:Required.')),
129
- thumbprint: Yup.string().required(t('ai:Required.')),
128
+ .required(t('ai:Required field')),
129
+ thumbprint: Yup.string().required(t('ai:Required field')),
130
130
  }),
131
131
  ),
132
132
  }),
@@ -15,7 +15,6 @@ import {
15
15
  } from '../../types/hosts';
16
16
  import { TangServer } from '../clusterConfiguration/DiskEncryptionFields/DiskEncryptionValues';
17
17
  import { WizardStepsValidationMap } from './validationsInfoUtils';
18
- import { OpenshiftVersionOptionType } from '../../types';
19
18
 
20
19
  export type ClusterDetailsValues = {
21
20
  name: string;
@@ -31,7 +30,7 @@ export type ClusterDetailsValues = {
31
30
  diskEncryption: DiskEncryption;
32
31
  cpuArchitecture: string;
33
32
  platform: PlatformType;
34
- customOpenshiftSelect: OpenshiftVersionOptionType | null;
33
+ customOpenshiftSelect: string | null;
35
34
  userManagedNetworking: boolean;
36
35
  controlPlaneCount: number;
37
36
  };
@@ -8,7 +8,6 @@ import { ExclamationTriangleIcon } from '@patternfly/react-icons/dist/js/icons/e
8
8
  import { InProgressIcon } from '@patternfly/react-icons/dist/js/icons/in-progress-icon';
9
9
  import { LinkIcon } from '@patternfly/react-icons/dist/js/icons/link-icon';
10
10
  import { PendingIcon } from '@patternfly/react-icons/dist/js/icons/pending-icon';
11
- import { PlusIcon } from '@patternfly/react-icons/dist/js/icons/plus-icon';
12
11
  import { t_global_icon_color_status_danger_default as dangerColor } from '@patternfly/react-tokens/dist/js/t_global_icon_color_status_danger_default';
13
12
  import { t_global_icon_color_status_warning_default as warningColor } from '@patternfly/react-tokens/dist/js/t_global_icon_color_status_warning_default';
14
13
  import { t_global_color_status_success_default as okColor } from '@patternfly/react-tokens/dist/js/t_global_color_status_success_default';
@@ -95,7 +94,7 @@ export const hostStatus = (t: TFunction): HostStatus<Host['status'] | 'finalizin
95
94
  key: 'known-unbound',
96
95
  title: t('ai:Available'),
97
96
  category: 'Discovery related',
98
- icon: <PlusIcon color={blueColor.value} />,
97
+ icon: <ConnectedIcon color={blueColor.value} />,
99
98
  details: t(
100
99
  'ai:This host meets the minimum hardware and networking requirements and can be included in the cluster.',
101
100
  ),
@@ -1,4 +1,5 @@
1
1
  import * as React from 'react';
2
+ import { Label, LabelGroup } from '@patternfly/react-core';
2
3
  import { Address4, Address6 } from 'ip-address';
3
4
  import type {
4
5
  Cluster,
@@ -20,6 +21,7 @@ import HostStatus from './HostStatus';
20
21
  import RoleCell from './RoleCell';
21
22
  import {
22
23
  areOnlySoftValidationsFailing,
24
+ getHostLabels,
23
25
  getHostname,
24
26
  getHostRole,
25
27
  getHostStatus,
@@ -279,6 +281,24 @@ export const disksColumn = (t: TFunction): TableRow<Host> => ({
279
281
  },
280
282
  });
281
283
 
284
+ export const gpusColumn = (t: TFunction): TableRow<Host> => ({
285
+ header: {
286
+ title: t('ai:GPUs'),
287
+ props: {
288
+ id: 'col-header-gpus',
289
+ },
290
+ sort: true,
291
+ },
292
+ cell: (host) => {
293
+ const { gpus } = getInventory(host);
294
+ return {
295
+ title: <>{gpus?.length ?? '--'}</>,
296
+ props: { 'data-testid': 'host-gpus' },
297
+ sortableValue: gpus?.length ?? 0,
298
+ };
299
+ },
300
+ });
301
+
282
302
  export const countColumn = (cluster: Cluster): TableRow<Host> => ({
283
303
  header: { title: <HostsCount cluster={cluster} inParenthesis /> },
284
304
  });
@@ -362,6 +382,34 @@ export const macAddressColumn = (cluster: Cluster): TableRow<Host> => ({
362
382
  },
363
383
  });
364
384
 
385
+ export const labelsColumn = (t: TFunction): TableRow<Host> => ({
386
+ header: {
387
+ title: t('ai:Labels'),
388
+ props: {
389
+ id: 'col-header-labels',
390
+ },
391
+ sort: false,
392
+ },
393
+ cell: (host) => {
394
+ const labels = getHostLabels(host);
395
+ return {
396
+ title:
397
+ Object.entries(labels).length > 0 ? (
398
+ <LabelGroup>
399
+ {Object.entries(labels).map(([key, value], index) => (
400
+ <Label key={`${host.id}-host-label-${index}`} isCompact>
401
+ {key} = {value}
402
+ </Label>
403
+ ))}
404
+ </LabelGroup>
405
+ ) : (
406
+ '--'
407
+ ),
408
+ props: { 'data-testid': 'host-labels' },
409
+ };
410
+ },
411
+ });
412
+
365
413
  const ActionTitle: React.FC<{ disabled: boolean; description?: string; title: string }> = ({
366
414
  title,
367
415
  description,
@@ -205,6 +205,10 @@ export const getInventory = (host: Host) => {
205
205
  return stringToJSON<Inventory>(inventoryString) || {};
206
206
  };
207
207
 
208
+ export const getHostLabels = (host: Host) => {
209
+ return host.nodeLabels ? (JSON.parse(host.nodeLabels) as { [key: string]: string }) : {};
210
+ };
211
+
208
212
  export const filterByHostname = (hosts: Host[], hostnameFilter: string | undefined) => {
209
213
  if (!hostnameFilter) {
210
214
  return { hosts, sorted: false };
@@ -1,36 +1,24 @@
1
- import React, { Dispatch, SetStateAction } from 'react';
2
- import {
3
- Select,
4
- SelectOption,
5
- SelectList,
6
- SelectOptionProps,
7
- MenuToggle,
8
- MenuToggleElement,
9
- TextInputGroup,
10
- TextInputGroupMain,
11
- TextInputGroupUtilities,
12
- Button,
13
- Divider,
14
- FormHelperText,
15
- HelperText,
16
- HelperTextItem,
17
- } from '@patternfly/react-core';
18
- import TimesIcon from '@patternfly/react-icons/dist/esm/icons/times-icon';
1
+ import React from 'react';
2
+ import { SelectOptionProps } from '@patternfly/react-core';
3
+ import { useField } from 'formik';
19
4
  import { OpenshiftVersionOptionType } from '../../types';
20
5
  import { HelperTextType } from './OpenShiftVersionDropdown';
21
- import { useTranslation } from '../../hooks/use-translation-wrapper';
6
+ import { useTranslation } from '../../hooks';
7
+ import { SelectFieldWithSearch } from './formik';
8
+ import { ClusterDetailsValues } from '../clusterWizard';
22
9
 
23
10
  type OpenshiftSelectWithSearchProps = {
24
11
  versions: OpenshiftVersionOptionType[];
25
12
  getHelperText?: HelperTextType;
26
- setCustomOpenshiftSelect: Dispatch<SetStateAction<OpenshiftVersionOptionType | undefined>>;
27
13
  };
28
14
 
29
15
  export const OpenShiftSelectWithSearch: React.FunctionComponent<OpenshiftSelectWithSearchProps> = ({
30
16
  versions,
31
17
  getHelperText,
32
- setCustomOpenshiftSelect,
33
18
  }: OpenshiftSelectWithSearchProps) => {
19
+ const { t } = useTranslation();
20
+ const [{ value }] =
21
+ useField<ClusterDetailsValues['customOpenshiftSelect']>('customOpenshiftSelect');
34
22
  const initialSelectOptions = React.useMemo(
35
23
  () =>
36
24
  versions.map((version) => ({
@@ -43,22 +31,11 @@ export const OpenShiftSelectWithSearch: React.FunctionComponent<OpenshiftSelectW
43
31
  [versions],
44
32
  );
45
33
 
46
- const [isOpen, setIsOpen] = React.useState(false);
47
- const [selected, setSelected] = React.useState<string>('');
48
- const [inputValue, setInputValue] = React.useState<string>('');
49
34
  const [filterValue, setFilterValue] = React.useState<string>('');
50
35
  const [selectOptions, setSelectOptions] =
51
36
  React.useState<SelectOptionProps[]>(initialSelectOptions);
52
- const [focusedItemIndex, setFocusedItemIndex] = React.useState<number | null>(null);
53
- const [activeItem, setActiveItem] = React.useState<string | null>(null);
54
- const textInputRef = React.useRef<HTMLInputElement>();
55
- const { t } = useTranslation();
56
37
 
57
- React.useEffect(() => {
58
- if (textInputRef.current) {
59
- textInputRef.current.maxLength = 30;
60
- }
61
- }, []);
38
+ const helperText = getHelperText && getHelperText(value, true);
62
39
 
63
40
  React.useEffect(() => {
64
41
  let newSelectOptions: SelectOptionProps[] = initialSelectOptions;
@@ -74,221 +51,43 @@ export const OpenShiftSelectWithSearch: React.FunctionComponent<OpenshiftSelectW
74
51
  newSelectOptions = [
75
52
  {
76
53
  isDisabled: true,
77
- children: `No results found for "${filterValue}"`,
78
- value: 'no results',
54
+ children: t('ai:No results found for {{filter}}', { filter: filterValue }),
55
+ value: 'no_results',
79
56
  },
80
57
  ];
81
58
  }
82
-
83
- // Open the menu when the input value changes and the new value is not empty
84
- if (!isOpen) {
85
- setIsOpen(true);
86
- }
87
- }
88
-
89
- setSelectOptions(newSelectOptions);
90
- setActiveItem(null);
91
- setFocusedItemIndex(null);
92
- }, [filterValue, initialSelectOptions, isOpen]);
93
-
94
- const onToggleClick = () => {
95
- setIsOpen(!isOpen);
96
- };
97
-
98
- const onSelect = (
99
- _event: React.MouseEvent<Element, MouseEvent> | undefined,
100
- value: string | number | undefined,
101
- ) => {
102
- // Check if the specific value exists in newSelectOptions
103
- const foundItem = selectOptions.find((menuItem) => String(menuItem.value) === String(value));
104
- const newLabel = foundItem?.children;
105
- if (value && value !== 'no results') {
106
- setInputValue(newLabel as string);
107
- setFilterValue('');
108
- setSelected(value as string);
109
- const filteredVersions = versions.filter((version) => version.value === value);
110
- setCustomOpenshiftSelect({
111
- label:
112
- filteredVersions[0].supportLevel === 'beta'
113
- ? filteredVersions[0].label + ' - ' + t('ai:Developer preview release')
114
- : filteredVersions[0].label,
115
- value: filteredVersions[0].value,
116
- version: filteredVersions[0].version,
117
- default: filteredVersions[0].default,
118
- supportLevel: filteredVersions[0].supportLevel,
119
- });
120
- }
121
- setIsOpen(false);
122
- setFocusedItemIndex(null);
123
- setActiveItem(null);
124
- };
125
-
126
- const onTextInputChange = (_event: React.FormEvent<HTMLInputElement>, value: string) => {
127
- setInputValue(value);
128
- setFilterValue(value);
129
- };
130
-
131
- const handleMenuArrowKeys = (key: string) => {
132
- let indexToFocus;
133
-
134
- if (isOpen) {
135
- if (key === 'ArrowUp') {
136
- // When no index is set or at the first index, focus to the last, otherwise decrement focus index
137
- if (focusedItemIndex === null || focusedItemIndex === 0) {
138
- indexToFocus = selectOptions.length - 1;
139
- } else {
140
- indexToFocus = focusedItemIndex - 1;
141
- }
142
- }
143
-
144
- if (key === 'ArrowDown') {
145
- // When no index is set or at the last index, focus to the first, otherwise increment focus index
146
- if (focusedItemIndex === null || focusedItemIndex === selectOptions.length - 1) {
147
- indexToFocus = 0;
148
- } else {
149
- indexToFocus = focusedItemIndex + 1;
150
- }
151
- }
152
-
153
- setFocusedItemIndex(indexToFocus ?? 0);
154
- const focusedItem = selectOptions.filter((option) => !option.isDisabled)[indexToFocus ?? 0];
155
- setActiveItem(`select-typeahead-${(focusedItem.value as string).replace(' ', '-')}`);
156
59
  }
157
- };
158
-
159
- const onInputKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {
160
- const enabledMenuItems = selectOptions.filter((option) => !option.isDisabled);
161
- const [firstMenuItem] = enabledMenuItems;
162
- const focusedItem = focusedItemIndex ? enabledMenuItems[focusedItemIndex] : firstMenuItem;
163
60
 
164
- switch (event.key) {
165
- // Select the first available option
166
- case 'Enter':
167
- if (isOpen && focusedItem.value !== 'no results') {
168
- setInputValue(String(focusedItem.children));
169
- setFilterValue('');
170
- setSelected(String(focusedItem.children));
171
- }
61
+ const selectOptionsWithDividers = newSelectOptions.map((option, index) => {
62
+ const match = (option.value as string).match(/\d+\.(\d+)\.\d+/);
63
+ const y = match ? match[1] : null;
172
64
 
173
- setIsOpen((prevIsOpen) => !prevIsOpen);
174
- setFocusedItemIndex(null);
175
- setActiveItem(null);
65
+ const previousY =
66
+ index > 0
67
+ ? ((newSelectOptions[index - 1].value as string).match(/\d+\.(\d+)\.\d+/) || [])[1]
68
+ : null;
176
69
 
177
- break;
178
- case 'Tab':
179
- case 'Escape':
180
- setIsOpen(false);
181
- setActiveItem(null);
182
- break;
183
- case 'ArrowUp':
184
- case 'ArrowDown':
185
- event.preventDefault();
186
- handleMenuArrowKeys(event.key);
187
- break;
188
- }
189
- };
70
+ return {
71
+ ...option,
72
+ showDivider: previousY !== null && y !== previousY,
73
+ };
74
+ });
190
75
 
191
- const toggle = (toggleRef: React.Ref<MenuToggleElement>) => (
192
- <MenuToggle
193
- ref={toggleRef}
194
- variant="typeahead"
195
- onClick={onToggleClick}
196
- isExpanded={isOpen}
197
- isFullWidth
198
- data-testid="openshift-version-dropdown-toggle"
199
- >
200
- <TextInputGroup isPlain>
201
- <TextInputGroupMain
202
- value={inputValue}
203
- onClick={onToggleClick}
204
- onChange={onTextInputChange}
205
- onKeyDown={onInputKeyDown}
206
- id="typeahead-select-input"
207
- autoComplete="off"
208
- innerRef={textInputRef}
209
- placeholder=""
210
- {...(activeItem && { 'aria-activedescendant': activeItem })}
211
- role="combobox"
212
- isExpanded={isOpen}
213
- aria-controls="select-typeahead-listbox"
214
- />
215
-
216
- <TextInputGroupUtilities>
217
- {!!inputValue && (
218
- <Button
219
- icon={<TimesIcon aria-hidden />}
220
- variant="plain"
221
- onClick={() => {
222
- setSelected('');
223
- setInputValue('');
224
- setFilterValue('');
225
- textInputRef?.current?.focus();
226
- }}
227
- aria-label="Clear input value"
228
- />
229
- )}
230
- </TextInputGroupUtilities>
231
- </TextInputGroup>
232
- </MenuToggle>
233
- );
234
-
235
- const helperText = getHelperText && getHelperText(selected, true);
76
+ setSelectOptions(selectOptionsWithDividers);
77
+ }, [filterValue, initialSelectOptions, t]);
236
78
 
237
79
  return (
238
- <>
239
- <Select
240
- id="customOpenshiftSelect"
241
- isOpen={isOpen}
242
- selected={selected}
243
- onSelect={onSelect}
244
- onOpenChange={() => {
245
- setIsOpen(false);
246
- }}
247
- toggle={toggle}
248
- isScrollable
249
- >
250
- <SelectList id="select-typeahead-listbox">
251
- {selectOptions.reverse().map((option, index) => {
252
- const match = (option.value as string).match(/\d+\.(\d+)\.\d+/);
253
- const y = match ? match[1] : null;
254
-
255
- const previousY =
256
- index > 0
257
- ? ((selectOptions[index - 1].value as string).match(/\d+\.(\d+)\.\d+/) || [])[1]
258
- : null;
259
-
260
- const showDivider = previousY !== null && y !== previousY;
261
- return (
262
- <React.Fragment key={index}>
263
- {showDivider && (
264
- <Divider
265
- component="li"
266
- id={`divider-${option.value as string}`}
267
- key={`divider-${option.value as string}`}
268
- />
269
- )}
270
- <SelectOption
271
- key={option.value as string}
272
- isFocused={focusedItemIndex === index}
273
- className={option.className}
274
- onClick={() => setSelected(option.value as string)}
275
- id={`select-typeahead-${(option.value as string).replace(' ', '-')}`}
276
- {...option}
277
- ref={null}
278
- />
279
- </React.Fragment>
280
- );
281
- })}
282
- </SelectList>
283
- </Select>
284
- <FormHelperText>
285
- <HelperText>
286
- <HelperTextItem variant="default" data-testid="openshift-select-with-search-helper-text">
287
- {helperText ??
288
- 'Select an OpenShift version from the list or use the type ahead to narrow down the list.'}
289
- </HelperTextItem>
290
- </HelperText>
291
- </FormHelperText>
292
- </>
80
+ <SelectFieldWithSearch
81
+ selectOptions={selectOptions}
82
+ filterValue={filterValue}
83
+ setFilterValue={setFilterValue}
84
+ name={'customOpenshiftSelect'}
85
+ helperText={
86
+ helperText ??
87
+ t(
88
+ 'ai:Select an OpenShift version from the list or use the type ahead to narrow down the list.',
89
+ )
90
+ }
91
+ />
293
92
  );
294
93
  };