UNPKG

@openshift-assisted/ui-lib

Version:

React component library for the Assisted Installer UI

41 lines 2.43 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const formik_1 = require("formik"); const noop_js_1 = tslib_1.__importDefault(require("lodash-es/noop.js")); const React = tslib_1.__importStar(require("react")); const Yup = tslib_1.__importStar(require("yup")); const common_1 = require("../../../../../common"); const use_translation_wrapper_1 = require("../../../../../common/hooks/use-translation-wrapper"); const useSupportedOCPVersions_1 = require("../../hooks/useSupportedOCPVersions"); const DetailsForm_1 = tslib_1.__importDefault(require("./DetailsForm")); const useDetailsFormik = ({ ocpVersions, usedClusterNames, initPullSecret = '', initBaseDomain = '', }) => { const { t } = (0, use_translation_wrapper_1.useTranslation)(); const initialValues = React.useMemo(() => ({ name: '', openshiftVersion: (0, common_1.getDefaultOpenShiftVersion)(ocpVersions), pullSecret: initPullSecret, baseDnsDomain: initBaseDomain, customOpenshiftSelect: null, }), []); const validationSchema = React.useMemo(() => Yup.object({ name: (0, common_1.nameValidationSchema)(t, usedClusterNames), baseDnsDomain: common_1.dnsNameValidationSchema.required('Required'), pullSecret: common_1.pullSecretValidationSchema.required('Required.'), }), [usedClusterNames, t]); return [initialValues, validationSchema]; }; const DetailsStep = ({ usedClusterNames, clusterImages, onValuesChanged, extensionAfter, formRef, initBaseDomain, initPullSecret, supportedVersionsCM, }) => { const ocpVersions = (0, useSupportedOCPVersions_1.useSupportedOCPVersions)(clusterImages, supportedVersionsCM); const allVersions = (0, useSupportedOCPVersions_1.useSupportedOCPVersions)(clusterImages, supportedVersionsCM, true); const [initialValues, validationSchema] = useDetailsFormik({ ocpVersions, usedClusterNames, initPullSecret, initBaseDomain, }); return (React.createElement(formik_1.Formik, { initialValues: initialValues, validationSchema: validationSchema, innerRef: formRef, onSubmit: noop_js_1.default }, React.createElement(DetailsForm_1.default, { onValuesChanged: onValuesChanged, ocpVersions: ocpVersions, allVersions: allVersions, extensionAfter: extensionAfter }))); }; exports.default = DetailsStep; //# sourceMappingURL=DetailsStep.js.map