UNPKG

infinity-forge

Version:
53 lines 2.48 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.I18nObserver = I18nObserver; var jsx_runtime_1 = require("react/jsx-runtime"); var react_1 = require("react"); var handler_1 = require("../../handler/index.js"); var formik_1 = require("formik"); function I18nObserver(props) { var _a = (0, react_1.useState)(false), init = _a[0], setInit = _a[1]; var i18n = (0, handler_1.useFormHandler)().i18n; var _b = (0, formik_1.useFormikContext)(), values = _b.values, initialValues = _b.initialValues, setFieldValue = _b.setFieldValue; var fieldValue = (0, formik_1.getIn)(values, props.name); var fieldInitialValue = (0, formik_1.getIn)(initialValues, props.name); var languageSelected = i18n === null || i18n === void 0 ? void 0 : i18n.languageSelected; var nameFieldByLanguage = 'jsonContent.i18n.' + languageSelected + '.' + props.name; var fieldValueByLanguage = (0, formik_1.getIn)(values, nameFieldByLanguage); //esse cara quando muda a bandeira altera o valor do campo para o valor que está dentro do i18n (0, react_1.useEffect)(function () { var _a; if (init) { if (!i18n) { return; } console.log(languageSelected, fieldValueByLanguage, '@@@'); if (!((_a = props === null || props === void 0 ? void 0 : props.i18n) === null || _a === void 0 ? void 0 : _a.disabled)) { if (!fieldValueByLanguage && languageSelected !== 'pt-BR') { setFieldValue(props.name, ''); return; } if (fieldValueByLanguage === undefined && languageSelected === 'pt-BR') { setFieldValue(props.name, fieldInitialValue); return; } if (fieldValueByLanguage) { setFieldValue(props.name, fieldValueByLanguage); } } } }, [languageSelected, init]); //esse cara altera dentro do i18n (0, react_1.useEffect)(function () { var _a; setInit(true); if (!i18n) { return; } if (!((_a = props === null || props === void 0 ? void 0 : props.i18n) === null || _a === void 0 ? void 0 : _a.disabled)) { setFieldValue(nameFieldByLanguage, fieldValue || ''); } }, [fieldValue]); return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {}); } //# sourceMappingURL=index.js.map