@openshift-assisted/ui-lib 2.17.1-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 (208) hide show
  1. package/build/@types/cim/components/ClusterDeployment/clusterDetails/ClusterDeploymentDetailsForm.d.ts.map +1 -1
  2. package/build/@types/cim/components/ClusterDeployment/clusterDetails/ClusterDetailsFormFields.d.ts +0 -1
  3. package/build/@types/cim/components/ClusterDeployment/clusterDetails/ClusterDetailsFormFields.d.ts.map +1 -1
  4. package/build/@types/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostSelectionStep.d.ts.map +1 -1
  5. package/build/@types/cim/components/ClusterDeployment/use-networking-formik.d.ts.map +1 -1
  6. package/build/@types/cim/components/Hypershift/HostedClusterWizard/HostsStep/HostsStep.d.ts.map +1 -1
  7. package/build/@types/cim/components/InfraEnv/InfraEnvFormPage.d.ts.map +1 -1
  8. package/build/@types/cim/components/helpers/versions.d.ts +1 -1
  9. package/build/@types/cim/components/helpers/versions.d.ts.map +1 -1
  10. package/build/@types/cim/components/modals/CimConfiguration/CimConfigurationModal.d.ts.map +1 -1
  11. package/build/@types/cim/components/modals/EditProxyModal.d.ts.map +1 -1
  12. package/build/@types/cim/components/modals/EditSSHKeyModal.d.ts.map +1 -1
  13. package/build/@types/common/components/clusterConfiguration/DiscoveryImageConfigForm.d.ts.map +1 -1
  14. package/build/@types/common/components/clusterWizard/clusterDetailsValidation.d.ts.map +1 -1
  15. package/build/@types/common/components/hosts/AdditionalNTPSourcesDialog.d.ts.map +1 -1
  16. package/build/@types/common/components/hosts/EditHostForm.d.ts.map +1 -1
  17. package/build/@types/common/components/hosts/MassChangeHostnameModal.d.ts.map +1 -1
  18. package/build/@types/common/components/ui/formik/index.d.ts +0 -2
  19. package/build/@types/common/components/ui/formik/index.d.ts.map +1 -1
  20. package/build/@types/common/index.d.ts +1 -0
  21. package/build/@types/common/index.d.ts.map +1 -1
  22. package/build/@types/common/utils.d.ts +2 -2
  23. package/build/@types/common/utils.d.ts.map +1 -1
  24. package/build/@types/common/validationSchemas/addressValidation.d.ts +18 -0
  25. package/build/@types/common/validationSchemas/addressValidation.d.ts.map +1 -0
  26. package/build/@types/common/validationSchemas/clusterDetailsValidation.d.ts +8 -0
  27. package/build/@types/common/validationSchemas/clusterDetailsValidation.d.ts.map +1 -0
  28. package/build/@types/common/{components/ui/formik → validationSchemas}/constants.d.ts +1 -3
  29. package/build/@types/common/validationSchemas/constants.d.ts.map +1 -0
  30. package/build/@types/common/validationSchemas/hostnameValidation.d.ts +4 -0
  31. package/build/@types/common/validationSchemas/hostnameValidation.d.ts.map +1 -0
  32. package/build/@types/common/validationSchemas/index.d.ts +11 -0
  33. package/build/@types/common/validationSchemas/index.d.ts.map +1 -0
  34. package/build/@types/common/validationSchemas/networkingValidation.d.ts +18 -0
  35. package/build/@types/common/validationSchemas/networkingValidation.d.ts.map +1 -0
  36. package/build/@types/common/validationSchemas/ntpValidation.d.ts +4 -0
  37. package/build/@types/common/validationSchemas/ntpValidation.d.ts.map +1 -0
  38. package/build/@types/common/validationSchemas/proxyValidation.d.ts +11 -0
  39. package/build/@types/common/validationSchemas/proxyValidation.d.ts.map +1 -0
  40. package/build/@types/common/validationSchemas/pullSecretValidation.d.ts +4 -0
  41. package/build/@types/common/validationSchemas/pullSecretValidation.d.ts.map +1 -0
  42. package/build/@types/common/validationSchemas/regexes.d.ts +14 -0
  43. package/build/@types/common/validationSchemas/regexes.d.ts.map +1 -0
  44. package/build/@types/common/validationSchemas/sshValidation.d.ts +5 -0
  45. package/build/@types/common/validationSchemas/sshValidation.d.ts.map +1 -0
  46. package/build/@types/common/validationSchemas/utils.d.ts +7 -0
  47. package/build/@types/common/validationSchemas/utils.d.ts.map +1 -0
  48. package/build/@types/ocm/components/clusterConfiguration/OcmDiscoveryImageConfigForm.d.ts.map +1 -1
  49. package/build/@types/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifests.d.ts.map +1 -1
  50. package/build/@types/ocm/components/clusterConfiguration/manifestsConfiguration/components/customManifestsValidationSchema.d.ts +2 -1
  51. package/build/@types/ocm/components/clusterConfiguration/manifestsConfiguration/components/customManifestsValidationSchema.d.ts.map +1 -1
  52. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationForm.d.ts.map +1 -1
  53. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.d.ts +2 -1
  54. package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.d.ts.map +1 -1
  55. package/build/@types/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/FormViewHosts.d.ts.map +1 -1
  56. package/build/@types/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/formViewHostsValidationSchema.d.ts +2 -1
  57. package/build/@types/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/formViewHostsValidationSchema.d.ts.map +1 -1
  58. package/build/@types/ocm/components/clusterConfiguration/staticIp/components/YamlView/YamlView.d.ts.map +1 -1
  59. package/build/@types/ocm/components/clusterConfiguration/staticIp/components/YamlView/yamlViewValidationSchema.d.ts +2 -1
  60. package/build/@types/ocm/components/clusterConfiguration/staticIp/components/YamlView/yamlViewValidationSchema.d.ts.map +1 -1
  61. package/build/@types/ocm/components/clusterWizard/disconnected/OptionalConfigurationsStep.d.ts.map +1 -1
  62. package/build/@types/ocm/components/hosts/UpdateDay2ApiVipForm.d.ts.map +1 -1
  63. package/build/cjs/cim/components/Agent/BMCForm.js +3 -3
  64. package/build/cjs/cim/components/Agent/BMCForm.js.map +1 -1
  65. package/build/cjs/cim/components/ClusterDeployment/clusterDetails/ClusterDeploymentDetailsForm.js +9 -15
  66. package/build/cjs/cim/components/ClusterDeployment/clusterDetails/ClusterDeploymentDetailsForm.js.map +1 -1
  67. package/build/cjs/cim/components/ClusterDeployment/clusterDetails/ClusterDetailsFormFields.js +8 -6
  68. package/build/cjs/cim/components/ClusterDeployment/clusterDetails/ClusterDetailsFormFields.js.map +1 -1
  69. package/build/cjs/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostSelectionStep.js +1 -3
  70. package/build/cjs/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostSelectionStep.js.map +1 -1
  71. package/build/cjs/cim/components/ClusterDeployment/use-networking-formik.js +16 -15
  72. package/build/cjs/cim/components/ClusterDeployment/use-networking-formik.js.map +1 -1
  73. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/DetailsStep/DetailsStep.js +2 -2
  74. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/DetailsStep/DetailsStep.js.map +1 -1
  75. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/HostsStep/HostsStep.js +2 -11
  76. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/HostsStep/HostsStep.js.map +1 -1
  77. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/NetworkStep/NetworkStep.js +8 -8
  78. package/build/cjs/cim/components/Hypershift/HostedClusterWizard/NetworkStep/NetworkStep.js.map +1 -1
  79. package/build/cjs/cim/components/InfraEnv/InfraEnvFormPage.js +8 -6
  80. package/build/cjs/cim/components/InfraEnv/InfraEnvFormPage.js.map +1 -1
  81. package/build/cjs/cim/components/helpers/versions.js +42 -27
  82. package/build/cjs/cim/components/helpers/versions.js.map +1 -1
  83. package/build/cjs/cim/components/modals/CimConfiguration/CimConfigurationModal.js +9 -3
  84. package/build/cjs/cim/components/modals/CimConfiguration/CimConfigurationModal.js.map +1 -1
  85. package/build/cjs/cim/components/modals/EditProxyModal.js +5 -3
  86. package/build/cjs/cim/components/modals/EditProxyModal.js.map +1 -1
  87. package/build/cjs/cim/components/modals/EditPullSecretModal.js +1 -1
  88. package/build/cjs/cim/components/modals/EditPullSecretModal.js.map +1 -1
  89. package/build/cjs/cim/components/modals/EditSSHKeyModal.js +3 -3
  90. package/build/cjs/cim/components/modals/EditSSHKeyModal.js.map +1 -1
  91. package/build/cjs/common/components/clusterConfiguration/DiscoveryImageConfigForm.js +7 -6
  92. package/build/cjs/common/components/clusterConfiguration/DiscoveryImageConfigForm.js.map +1 -1
  93. package/build/cjs/common/components/clusterWizard/clusterDetailsValidation.js +8 -8
  94. package/build/cjs/common/components/clusterWizard/clusterDetailsValidation.js.map +1 -1
  95. package/build/cjs/common/components/hosts/AdditionalNTPSourcesDialog.js +2 -1
  96. package/build/cjs/common/components/hosts/AdditionalNTPSourcesDialog.js.map +1 -1
  97. package/build/cjs/common/components/hosts/EditHostForm.js +3 -2
  98. package/build/cjs/common/components/hosts/EditHostForm.js.map +1 -1
  99. package/build/cjs/common/components/hosts/MassChangeHostnameModal.js +6 -5
  100. package/build/cjs/common/components/hosts/MassChangeHostnameModal.js.map +1 -1
  101. package/build/cjs/common/components/ui/formik/index.js +0 -2
  102. package/build/cjs/common/components/ui/formik/index.js.map +1 -1
  103. package/build/cjs/common/config/docs_links.js +1 -1
  104. package/build/cjs/common/index.js +1 -0
  105. package/build/cjs/common/index.js.map +1 -1
  106. package/build/cjs/common/utils.js +5 -3
  107. package/build/cjs/common/utils.js.map +1 -1
  108. package/build/cjs/common/validationSchemas/addressValidation.js +246 -0
  109. package/build/cjs/common/validationSchemas/addressValidation.js.map +1 -0
  110. package/build/cjs/common/validationSchemas/clusterDetailsValidation.js +104 -0
  111. package/build/cjs/common/validationSchemas/clusterDetailsValidation.js.map +1 -0
  112. package/build/cjs/common/{components/ui/formik → validationSchemas}/constants.js +3 -5
  113. package/build/cjs/common/validationSchemas/constants.js.map +1 -0
  114. package/build/cjs/common/validationSchemas/hostnameValidation.js +36 -0
  115. package/build/cjs/common/validationSchemas/hostnameValidation.js.map +1 -0
  116. package/build/cjs/common/validationSchemas/index.js +17 -0
  117. package/build/cjs/common/validationSchemas/index.js.map +1 -0
  118. package/build/cjs/common/validationSchemas/networkingValidation.js +74 -0
  119. package/build/cjs/common/validationSchemas/networkingValidation.js.map +1 -0
  120. package/build/cjs/common/validationSchemas/ntpValidation.js +25 -0
  121. package/build/cjs/common/validationSchemas/ntpValidation.js.map +1 -0
  122. package/build/cjs/common/validationSchemas/proxyValidation.js +43 -0
  123. package/build/cjs/common/validationSchemas/proxyValidation.js.map +1 -0
  124. package/build/cjs/common/validationSchemas/pullSecretValidation.js +21 -0
  125. package/build/cjs/common/validationSchemas/pullSecretValidation.js.map +1 -0
  126. package/build/cjs/common/validationSchemas/regexes.js +17 -0
  127. package/build/cjs/common/validationSchemas/regexes.js.map +1 -0
  128. package/build/cjs/common/validationSchemas/sshValidation.js +32 -0
  129. package/build/cjs/common/validationSchemas/sshValidation.js.map +1 -0
  130. package/build/cjs/common/validationSchemas/utils.js +40 -0
  131. package/build/cjs/common/validationSchemas/utils.js.map +1 -0
  132. package/build/cjs/ocm/components/clusterConfiguration/OcmDiscoveryImageConfigForm.js +7 -6
  133. package/build/cjs/ocm/components/clusterConfiguration/OcmDiscoveryImageConfigForm.js.map +1 -1
  134. package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifests.js +4 -2
  135. package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifests.js.map +1 -1
  136. package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/customManifestsValidationSchema.js +7 -6
  137. package/build/cjs/ocm/components/clusterConfiguration/manifestsConfiguration/components/customManifestsValidationSchema.js.map +1 -1
  138. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationForm.js +2 -1
  139. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationForm.js.map +1 -1
  140. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.js +11 -11
  141. package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.js.map +1 -1
  142. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/FormViewHosts.js +3 -1
  143. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/FormViewHosts.js.map +1 -1
  144. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/formViewHostsValidationSchema.js +6 -6
  145. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/formViewHostsValidationSchema.js.map +1 -1
  146. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/YamlView/YamlView.js +3 -1
  147. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/YamlView/YamlView.js.map +1 -1
  148. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/YamlView/yamlViewValidationSchema.js +12 -12
  149. package/build/cjs/ocm/components/clusterConfiguration/staticIp/components/YamlView/yamlViewValidationSchema.js.map +1 -1
  150. package/build/cjs/ocm/components/clusterWizard/disconnected/OptionalConfigurationsStep.js +4 -3
  151. package/build/cjs/ocm/components/clusterWizard/disconnected/OptionalConfigurationsStep.js.map +1 -1
  152. package/build/cjs/ocm/components/hosts/UpdateDay2ApiVipForm.js +2 -1
  153. package/build/cjs/ocm/components/hosts/UpdateDay2ApiVipForm.js.map +1 -1
  154. package/lib/cim/components/Agent/BMCForm.tsx +3 -3
  155. package/lib/cim/components/ClusterDeployment/clusterDetails/ClusterDeploymentDetailsForm.tsx +8 -18
  156. package/lib/cim/components/ClusterDeployment/clusterDetails/ClusterDetailsFormFields.tsx +7 -10
  157. package/lib/cim/components/ClusterDeployment/hostSelection/ClusterDeploymentHostSelectionStep.tsx +1 -3
  158. package/lib/cim/components/ClusterDeployment/use-networking-formik.ts +19 -15
  159. package/lib/cim/components/Hypershift/HostedClusterWizard/DetailsStep/DetailsStep.tsx +2 -2
  160. package/lib/cim/components/Hypershift/HostedClusterWizard/HostsStep/HostsStep.tsx +2 -13
  161. package/lib/cim/components/Hypershift/HostedClusterWizard/NetworkStep/NetworkStep.tsx +8 -8
  162. package/lib/cim/components/InfraEnv/InfraEnvFormPage.tsx +8 -6
  163. package/lib/cim/components/helpers/versions.ts +51 -34
  164. package/lib/cim/components/modals/CimConfiguration/CimConfigurationModal.tsx +9 -3
  165. package/lib/cim/components/modals/EditProxyModal.tsx +6 -3
  166. package/lib/cim/components/modals/EditPullSecretModal.tsx +1 -1
  167. package/lib/cim/components/modals/EditSSHKeyModal.tsx +8 -6
  168. package/lib/common/components/clusterConfiguration/DiscoveryImageConfigForm.tsx +9 -8
  169. package/lib/common/components/clusterWizard/clusterDetailsValidation.ts +21 -11
  170. package/lib/common/components/hosts/AdditionalNTPSourcesDialog.tsx +3 -6
  171. package/lib/common/components/hosts/EditHostForm.tsx +2 -8
  172. package/lib/common/components/hosts/MassChangeHostnameModal.tsx +4 -6
  173. package/lib/common/components/ui/formik/index.tsx +0 -2
  174. package/lib/common/config/docs_links.ts +1 -1
  175. package/lib/common/index.ts +2 -0
  176. package/lib/common/utils.ts +5 -7
  177. package/lib/common/{components/ui/formik → validationSchemas}/_validationSchemas.test.ts +51 -39
  178. package/lib/common/validationSchemas/addressValidation.tsx +349 -0
  179. package/lib/common/validationSchemas/clusterDetailsValidation.tsx +168 -0
  180. package/lib/common/{components/ui/formik → validationSchemas}/constants.tsx +3 -6
  181. package/lib/common/validationSchemas/hostnameValidation.tsx +46 -0
  182. package/lib/common/validationSchemas/index.tsx +11 -0
  183. package/lib/common/validationSchemas/networkingValidation.tsx +113 -0
  184. package/lib/common/validationSchemas/ntpValidation.tsx +30 -0
  185. package/lib/common/validationSchemas/proxyValidation.tsx +67 -0
  186. package/lib/common/validationSchemas/pullSecretValidation.tsx +24 -0
  187. package/lib/common/validationSchemas/regexes.tsx +22 -0
  188. package/lib/common/validationSchemas/sshValidation.tsx +46 -0
  189. package/lib/common/validationSchemas/utils.tsx +36 -0
  190. package/lib/ocm/components/clusterConfiguration/OcmDiscoveryImageConfigForm.tsx +17 -15
  191. package/lib/ocm/components/clusterConfiguration/manifestsConfiguration/components/CustomManifests.tsx +4 -2
  192. package/lib/ocm/components/clusterConfiguration/manifestsConfiguration/components/customManifestsValidationSchema.tsx +31 -31
  193. package/lib/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationForm.tsx +9 -2
  194. package/lib/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.ts +14 -16
  195. package/lib/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/FormViewHosts.tsx +3 -1
  196. package/lib/ocm/components/clusterConfiguration/staticIp/components/FormViewHosts/formViewHostsValidationSchema.tsx +11 -6
  197. package/lib/ocm/components/clusterConfiguration/staticIp/components/YamlView/YamlView.tsx +5 -1
  198. package/lib/ocm/components/clusterConfiguration/staticIp/components/YamlView/yamlViewValidationSchema.tsx +33 -28
  199. package/lib/ocm/components/clusterWizard/disconnected/OptionalConfigurationsStep.tsx +5 -3
  200. package/lib/ocm/components/hosts/UpdateDay2ApiVipForm.tsx +3 -7
  201. package/package.json +3 -3
  202. package/build/@types/common/components/ui/formik/constants.d.ts.map +0 -1
  203. package/build/@types/common/components/ui/formik/validationSchemas.d.ts +0 -50
  204. package/build/@types/common/components/ui/formik/validationSchemas.d.ts.map +0 -1
  205. package/build/cjs/common/components/ui/formik/constants.js.map +0 -1
  206. package/build/cjs/common/components/ui/formik/validationSchemas.js +0 -553
  207. package/build/cjs/common/components/ui/formik/validationSchemas.js.map +0 -1
  208. package/lib/common/components/ui/formik/validationSchemas.ts +0 -803
@@ -1,4 +1,5 @@
1
1
  import * as Yup from 'yup';
2
+ import { TFunction } from 'i18next';
2
3
 
3
4
  import {
4
5
  FormViewNetworkWideValues,
@@ -14,6 +15,7 @@ import {
14
15
  getIpIsNotNetworkOrBroadcastAddressSchema,
15
16
  } from '../../commonValidationSchemas';
16
17
  import { getMachineNetworkCidr } from '../../data/machineNetwork';
18
+
17
19
  const requiredMsg = 'A value is required';
18
20
 
19
21
  const getAllIpv4Addresses: UniqueStringArrayExtractor<FormViewHostsValues> = (
@@ -39,12 +41,12 @@ const getAllBondInterfaces: UniqueStringArrayExtractor<FormViewHostsValues> = (
39
41
  ]);
40
42
  };
41
43
 
42
- const getHostValidationSchema = (networkWideValues: FormViewNetworkWideValues) =>
44
+ const getHostValidationSchema = (networkWideValues: FormViewNetworkWideValues, t: TFunction) =>
43
45
  Yup.object({
44
46
  macAddress: Yup.mixed().when('useBond', {
45
47
  is: false,
46
48
  then: () =>
47
- macAddressValidationSchema
49
+ macAddressValidationSchema(t)
48
50
  .required(requiredMsg)
49
51
  .concat(getUniqueValidationSchema(getAllMacAddresses)),
50
52
  otherwise: () => Yup.mixed().notRequired(),
@@ -82,7 +84,7 @@ const getHostValidationSchema = (networkWideValues: FormViewNetworkWideValues) =
82
84
  bondPrimaryInterface: Yup.mixed().when('useBond', {
83
85
  is: true,
84
86
  then: () =>
85
- macAddressValidationSchema
87
+ macAddressValidationSchema(t)
86
88
  .required(requiredMsg)
87
89
  .concat(getUniqueValidationSchema(getAllBondInterfaces)),
88
90
  otherwise: () => Yup.mixed().notRequired(),
@@ -90,15 +92,18 @@ const getHostValidationSchema = (networkWideValues: FormViewNetworkWideValues) =
90
92
  bondSecondaryInterface: Yup.mixed().when('useBond', {
91
93
  is: true,
92
94
  then: () =>
93
- macAddressValidationSchema
95
+ macAddressValidationSchema(t)
94
96
  .required(requiredMsg)
95
97
  .concat(getUniqueValidationSchema(getAllBondInterfaces)),
96
98
  otherwise: () => Yup.mixed().notRequired(),
97
99
  }),
98
100
  });
99
101
 
100
- export const getFormViewHostsValidationSchema = (networkWideValues: FormViewNetworkWideValues) => {
102
+ export const getFormViewHostsValidationSchema = (
103
+ networkWideValues: FormViewNetworkWideValues,
104
+ t: TFunction,
105
+ ) => {
101
106
  return Yup.object().shape({
102
- hosts: Yup.array(getHostValidationSchema(networkWideValues)),
107
+ hosts: Yup.array(getHostValidationSchema(networkWideValues, t)),
103
108
  });
104
109
  };
@@ -7,17 +7,21 @@ import { YamlViewFields } from './YamlViewFields';
7
7
  import { getEmptyYamlValues } from '../../data/emptyData';
8
8
  import { InfraEnv } from '@openshift-assisted/types/assisted-installer-service';
9
9
  import { getYamlViewValues } from '../../data/fromInfraEnv';
10
+ import { useTranslation } from '../../../../../../common';
10
11
 
11
12
  export const YamlView: React.FC<StaticIpViewProps> = ({ ...props }) => {
13
+ const { t } = useTranslation();
14
+
12
15
  const formProps: StaticIpFormProps<YamlViewValues> = {
13
16
  ...props,
14
- validationSchema: yamlViewValidationSchema,
17
+ validationSchema: yamlViewValidationSchema(t),
15
18
  getInitialValues: (infraEnv: InfraEnv) => {
16
19
  return getYamlViewValues(infraEnv);
17
20
  },
18
21
  getUpdateParams: (currentInfraEnv: InfraEnv, values: YamlViewValues) => values.hosts,
19
22
  getEmptyValues: () => getEmptyYamlValues(),
20
23
  };
24
+
21
25
  return (
22
26
  <StaticIpForm<YamlViewValues> {...formProps}>
23
27
  <YamlViewFields />
@@ -1,12 +1,15 @@
1
1
  import * as Yup from 'yup';
2
- import { ArrayElementType, macAddressValidationSchema } from '../../../../../../common';
2
+ import {
3
+ ArrayElementType,
4
+ getIncorrectFileTypeMessage,
5
+ macAddressValidationSchema,
6
+ } from '../../../../../../common';
3
7
  import { YamlViewValues } from '../../data/dataTypes';
4
8
  import {
5
9
  getUniqueValidationSchema,
6
10
  UniqueStringArrayExtractor,
7
11
  } from '../../commonValidationSchemas';
8
12
  import {
9
- INCORRECT_TYPE_FILE_MESSAGE,
10
13
  getMaxFileSizeMessage,
11
14
  validateFileSize,
12
15
  validateFileType,
@@ -15,13 +18,13 @@ import {
15
18
  HostStaticNetworkConfig,
16
19
  MacInterfaceMap,
17
20
  } from '@openshift-assisted/types/assisted-installer-service';
21
+ import { TFunction } from 'i18next';
18
22
 
19
- const requiredMsg = 'A value is required';
20
-
21
- const networkYamlValidationSchema = Yup.string()
22
- .required(requiredMsg)
23
- .test('file-size-limit', getMaxFileSizeMessage, validateFileSize)
24
- .test('file-type-yaml', INCORRECT_TYPE_FILE_MESSAGE, validateFileType);
23
+ const networkYamlValidationSchema = (t: TFunction) =>
24
+ Yup.string()
25
+ .required('Required field')
26
+ .test('file-size-limit', getMaxFileSizeMessage(t), validateFileSize)
27
+ .test('file-type-yaml', getIncorrectFileTypeMessage(t), validateFileType);
25
28
 
26
29
  const getAllMacAddresses: UniqueStringArrayExtractor<YamlViewValues> = (
27
30
  values: YamlViewValues,
@@ -59,24 +62,26 @@ const getInterfaceNamesInCurrentHost: UniqueStringArrayExtractor<YamlViewValues>
59
62
  });
60
63
  };
61
64
 
62
- const macInterfaceMapValidationSchema = Yup.array<MacInterfaceMap>().of(
63
- Yup.object({
64
- macAddress: macAddressValidationSchema
65
- .required(requiredMsg)
66
- .concat(getUniqueValidationSchema(getAllMacAddresses)),
67
- logicalNicName: Yup.string()
68
- .required(requiredMsg)
69
- .concat(getUniqueValidationSchema(getInterfaceNamesInCurrentHost))
70
- .max(15, 'Interface name must be 15 characters at most.')
71
- .matches(/^\S+$/, 'Interface name can not contain spaces.'),
72
- }),
73
- );
74
-
75
- export const yamlViewValidationSchema = Yup.object({
76
- hosts: Yup.array<HostStaticNetworkConfig>().of(
77
- Yup.object().shape({
78
- networkYaml: networkYamlValidationSchema,
79
- macInterfaceMap: macInterfaceMapValidationSchema,
65
+ const macInterfaceMapValidationSchema = (t: TFunction) =>
66
+ Yup.array<MacInterfaceMap>().of(
67
+ Yup.object({
68
+ macAddress: macAddressValidationSchema(t)
69
+ .required('Required field')
70
+ .concat(getUniqueValidationSchema(getAllMacAddresses)),
71
+ logicalNicName: Yup.string()
72
+ .required('Required field')
73
+ .concat(getUniqueValidationSchema(getInterfaceNamesInCurrentHost))
74
+ .max(15, 'Interface name must be 15 characters at most.')
75
+ .matches(/^\S+$/, 'Interface name can not contain spaces.'),
80
76
  }),
81
- ),
82
- });
77
+ );
78
+
79
+ export const yamlViewValidationSchema = (t: TFunction) =>
80
+ Yup.object({
81
+ hosts: Yup.array<HostStaticNetworkConfig>().of(
82
+ Yup.object().shape({
83
+ networkYaml: networkYamlValidationSchema(t),
84
+ macInterfaceMap: macInterfaceMapValidationSchema(t),
85
+ }),
86
+ ),
87
+ });
@@ -8,6 +8,7 @@ import {
8
8
  sshPublicKeyValidationSchema,
9
9
  pullSecretValidationSchema,
10
10
  getFormikErrorFields,
11
+ useTranslation,
11
12
  } from '../../../../common';
12
13
  import { Split, SplitItem, Grid, GridItem, Form, Content, Checkbox } from '@patternfly/react-core';
13
14
  import { useClusterWizardContext } from '../ClusterWizardContext';
@@ -44,6 +45,7 @@ const PullSecretSync: React.FC<{ pullSecret?: string }> = ({ pullSecret }) => {
44
45
  };
45
46
 
46
47
  const OptionalConfigurationsStep = () => {
48
+ const { t } = useTranslation();
47
49
  const pullSecret = usePullSecret() || '';
48
50
  const { clusterId } = useParams<{ clusterId: string }>();
49
51
  const [cluster, setCluster] = React.useState<Cluster | null>(null);
@@ -77,10 +79,10 @@ const OptionalConfigurationsStep = () => {
77
79
  const validationSchema = React.useMemo(
78
80
  () =>
79
81
  Yup.object<OptionalConfigurationsFormValues>().shape({
80
- sshPublicKey: sshPublicKeyValidationSchema,
81
- pullSecret: pullSecretValidationSchema,
82
+ sshPublicKey: sshPublicKeyValidationSchema(t),
83
+ pullSecret: pullSecretValidationSchema(t),
82
84
  }),
83
- [],
85
+ [t],
84
86
  );
85
87
 
86
88
  const initialValues: OptionalConfigurationsFormValues = {
@@ -9,13 +9,9 @@ import {
9
9
  ModalFooter,
10
10
  } from '@patternfly/react-core';
11
11
  import { Formik } from 'formik';
12
- import {
13
- AlertFormikError,
14
- day2ApiVipValidationSchema,
15
- InputField,
16
- } from '../../../common/components/ui';
12
+ import { AlertFormikError, InputField } from '../../../common/components/ui';
17
13
  import GridGap from '../../../common/components/ui/GridGap';
18
- import { StatusErrorType } from '../../../common';
14
+ import { day2ApiVipValidationSchema, StatusErrorType } from '../../../common';
19
15
  import { useTranslation } from '../../../common/hooks/use-translation-wrapper';
20
16
 
21
17
  export type UpdateDay2ApiVipFormProps = {
@@ -46,7 +42,7 @@ const UpdateDay2ApiVipForm: React.FC<UpdateDay2ApiVipFormProps> = ({
46
42
  const validationSchema = React.useMemo(
47
43
  () =>
48
44
  Yup.object().shape({
49
- apiVip: day2ApiVipValidationSchema.required(t('ai:Required field')),
45
+ apiVip: day2ApiVipValidationSchema(t).required(t('ai:Required field')),
50
46
  }),
51
47
  [t],
52
48
  );
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "dependencies": {
3
- "@openshift-assisted/locales": "2.17.1-cim",
4
- "@openshift-assisted/types": "2.17.1-cim",
3
+ "@openshift-assisted/locales": "2.17.3-cim",
4
+ "@openshift-assisted/types": "2.17.3-cim",
5
5
  "@openshift-console/dynamic-plugin-sdk": "1.0.0",
6
6
  "@patternfly/patternfly": "6.2.3",
7
7
  "@patternfly/react-code-editor": "6.2.2",
@@ -140,5 +140,5 @@
140
140
  ]
141
141
  }
142
142
  },
143
- "version": "2.17.1-cim"
143
+ "version": "2.17.3-cim"
144
144
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../../lib/common/components/ui/formik/constants.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C,eAAO,MAAM,6BAA6B,MAAO,SAAS;;;;;;CAMxD,CAAC;AAEH,eAAO,MAAM,gCAAgC,MAAO,SAAS;;;;CAI3D,CAAC;AAEH,eAAO,MAAM,sCAAsC,MAAO,SAAS;;;;;CAKjE,CAAC;AAEH,eAAO,MAAM,gCAAgC,MAAO,SAAS;;;;;CAK3D,CAAC;AAEH,eAAO,MAAM,sBAAsB,MAAO,SAAS;;;;;;CAMjD,CAAC;AAEH,eAAO,MAAM,qBAAqB,MAAO,SAAS;;;;;;;CAGhD,CAAC;AAEH,eAAO,MAAM,0BAA0B,MAAO,SAAS;;;;;;CAMrD,CAAC;AAEH,eAAO,MAAM,0BAA0B,MAAO,SAAS;;;;CAIrD,CAAC;AAEH,eAAO,MAAM,4BAA4B,MAAO,SAAS;;CAIvD,CAAC;AAEH,eAAO,MAAM,mBAAmB,UAO/B,CAAC"}
@@ -1,50 +0,0 @@
1
- import * as Yup from 'yup';
2
- import { TFunction } from 'i18next';
3
- import { ProxyFieldsType } from '../../../types';
4
- import { HostSubnets, NetworkConfigurationValues } from '../../../types/clusters';
5
- export declare const nameValidationSchema: (t: TFunction, usedClusterNames: string[], baseDnsDomain?: string, validateUniqueName?: boolean, isOcm?: boolean) => Yup.StringSchema<string, Yup.AnyObject, undefined, "">;
6
- export declare const sshPublicKeyValidationSchema: Yup.StringSchema<string | undefined, Yup.AnyObject, undefined, "">;
7
- export declare const sshPublicKeyListValidationSchema: Yup.StringSchema<string | undefined, Yup.AnyObject, undefined, "">;
8
- export declare const pullSecretValidationSchema: Yup.StringSchema<string | undefined, Yup.AnyObject, undefined, "">;
9
- export declare const ipValidationSchema: Yup.StringSchema<string | undefined, Yup.AnyObject, undefined, "">;
10
- export declare const ipNoSuffixValidationSchema: Yup.StringSchema<string | undefined, Yup.AnyObject, undefined, "">;
11
- export declare const macAddressValidationSchema: Yup.StringSchema<string | undefined, Yup.AnyObject, undefined, "">;
12
- export declare const vipRangeValidationSchema: (hostSubnets: HostSubnets, { machineNetworks }: NetworkConfigurationValues, allowSuffix: boolean) => Yup.StringSchema<string | undefined, Yup.AnyObject, undefined, "">;
13
- export declare const hostSubnetValidationSchema: Yup.StringSchema<string | undefined, Yup.AnyObject, undefined, "">;
14
- export declare const vipNoSuffixValidationSchema: (hostSubnets: HostSubnets, values: NetworkConfigurationValues) => Yup.MixedSchema<{} | undefined, Yup.AnyObject, undefined, "">;
15
- export declare const vipArrayValidationSchema: <T extends Yup.Maybe<Yup.AnyObject>>(hostSubnets: HostSubnets, values: NetworkConfigurationValues) => Yup.ArraySchema<any[] | undefined, T, undefined, ""> | Yup.ArraySchema<{
16
- clusterId?: string | undefined;
17
- ip?: {} | undefined;
18
- }[] | undefined, T, "", "">;
19
- export declare const ipBlockValidationSchema: (reservedCidrs: string | string[] | undefined) => Yup.StringSchema<string, Yup.AnyObject, undefined, "">;
20
- export declare const dnsNameValidationSchema: Yup.StringSchema<string | undefined, Yup.AnyObject, undefined, "">;
21
- export declare const baseDomainValidationSchema: Yup.StringSchema<string | undefined, Yup.AnyObject, undefined, "">;
22
- export declare const hostPrefixValidationSchema: (clusterNetworkCidr: NetworkConfigurationValues['clusterNetworkCidr']) => Yup.NumberSchema<number, Yup.AnyObject, undefined, "">;
23
- export declare const richNameValidationSchema: (t: TFunction, usedNames: string[], origName?: string) => Yup.StringSchema<string | undefined, Yup.AnyObject, undefined, "">;
24
- export declare const richHostnameValidationSchema: (t: TFunction, usedNames: string[], origName?: string) => Yup.StringSchema<string | undefined, Yup.AnyObject, undefined, "">;
25
- export declare const httpProxyValidationSchema: ({ values, pairValueName, allowEmpty, }: {
26
- values: ProxyFieldsType;
27
- pairValueName: 'httpProxy' | 'httpsProxy';
28
- allowEmpty?: boolean | undefined;
29
- }) => Yup.StringSchema<string | undefined, Yup.AnyObject, undefined, "">;
30
- export declare const noProxyValidationSchema: Yup.StringSchema<string | undefined, Yup.AnyObject, undefined, "">;
31
- export declare const ntpSourceValidationSchema: Yup.StringSchema<string | undefined, Yup.AnyObject, undefined, "">;
32
- export declare const day2ApiVipValidationSchema: Yup.StringSchema<string | undefined, Yup.AnyObject, undefined, "">;
33
- export declare const bmcAddressValidationSchema: (t: TFunction) => Yup.StringSchema<string, Yup.AnyObject, undefined, "">;
34
- export declare const locationValidationSchema: (t: TFunction) => Yup.StringSchema<string | undefined, Yup.AnyObject, undefined, "">;
35
- export declare const machineNetworksValidationSchema: Yup.ArraySchema<{
36
- clusterId?: string | undefined;
37
- cidr?: string | undefined;
38
- }[] | undefined, Yup.AnyObject, "", "">;
39
- export declare const clusterNetworksValidationSchema: Yup.ArraySchema<{
40
- clusterId?: string | undefined;
41
- cidr: string;
42
- hostPrefix: number;
43
- }[] | undefined, Yup.AnyObject, "", "">;
44
- export declare const serviceNetworkValidationSchema: Yup.ArraySchema<{
45
- clusterId?: string | undefined;
46
- cidr: string;
47
- }[] | undefined, Yup.AnyObject, "", "">;
48
- export declare const dualStackValidationSchema: (field: string, openshiftVersion?: string) => Yup.ArraySchema<any[] | undefined, Yup.AnyObject, undefined, "">;
49
- export declare const IPv4ValidationSchema: Yup.ArraySchema<any[] | undefined, Yup.AnyObject, undefined, "">;
50
- //# sourceMappingURL=validationSchemas.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validationSchemas.d.ts","sourceRoot":"","sources":["../../../../../../lib/common/components/ui/formik/validationSchemas.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAG3B,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAOpC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAgClF,eAAO,MAAM,oBAAoB,MAC5B,SAAS,oBACM,MAAM,EAAE,+CAEL,OAAO,4EAgD7B,CAAC;AAEF,eAAO,MAAM,4BAA4B,oEAUxC,CAAC;AAEF,eAAO,MAAM,gCAAgC,oEAsBzC,CAAC;AAEL,eAAO,MAAM,0BAA0B,oEAmBtC,CAAC;AAOF,eAAO,MAAM,kBAAkB,oEAI9B,CAAC;AAaF,eAAO,MAAM,0BAA0B,oEAMtC,CAAC;AAEF,eAAO,MAAM,0BAA0B,oEAGrC,CAAC;AAEH,eAAO,MAAM,wBAAwB,kDAEd,0BAA0B,eAClC,OAAO,uEA4BlB,CAAC;AA8CL,eAAO,MAAM,0BAA0B,oEAIrC,CAAC;AAEH,eAAO,MAAM,2BAA2B,qCAE9B,0BAA0B,kEAuEhC,CAAC;AAEL,eAAO,MAAM,wBAAwB,yEAE3B,0BAA0B;;;2BAShB,CAAC;AAErB,eAAO,MAAM,uBAAuB,kBAAmB,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,2DA6D9E,CAAC;AAEP,eAAO,MAAM,uBAAuB,oEAShC,CAAC;AAEL,eAAO,MAAM,0BAA0B,oEAatC,CAAC;AAEF,eAAO,MAAM,0BAA0B,uBACjB,0BAA0B,CAAC,oBAAoB,CAAC,2DAgCrE,CAAC;AAEF,eAAO,MAAM,wBAAwB,MAAO,SAAS,aAAa,MAAM,EAAE,aAAa,MAAM,uEAiC5F,CAAC;AAEF,eAAO,MAAM,4BAA4B,MACpC,SAAS,aACD,MAAM,EAAE,aACR,MAAM,uEAqClB,CAAC;AAGF,eAAO,MAAM,yBAAyB;YAK5B,eAAe;mBACR,WAAW,GAAG,YAAY;;wEAiC1C,CAAC;AAcF,eAAO,MAAM,uBAAuB,oEAenC,CAAC;AAEF,eAAO,MAAM,yBAAyB,oEAuBnC,CAAC;AAEJ,eAAO,MAAM,0BAA0B,oEAStC,CAAC;AAEF,eAAO,MAAM,0BAA0B,MAAO,SAAS,2DAatD,CAAC;AACF,eAAO,MAAM,wBAAwB,MAAO,SAAS,uEAyBpD,CAAC;AAEF,eAAO,MAAM,+BAA+B;;;uCAE3C,CAAC;AAEF,eAAO,MAAM,+BAA+B;;;;uCAU3C,CAAC;AAEF,eAAO,MAAM,8BAA8B;;;uCAO1C,CAAC;AAEF,eAAO,MAAM,yBAAyB,UAAW,MAAM,qBAAqB,MAAM,qEA0D7E,CAAC;AAEN,eAAO,MAAM,oBAAoB,kEAIhC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../lib/common/components/ui/formik/constants.tsx"],"names":[],"mappings":"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"}