react-quizz-spanish
Version:
Quizz en react, traducido al español, autor original: hugobarragon
123 lines • 6.7 kB
JavaScript
;
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var react_1 = __importStar(require("react"));
var antd_1 = require("antd");
var QuillFormInput_1 = __importDefault(require("./CustomFormInput/QuillFormInput"));
var TranslatedText_1 = __importDefault(require("../../../../../../translations/TranslatedText"));
var OptionsInput_1 = __importDefault(require("./CustomFormInput/OptionsInput/OptionsInput"));
var lodash_clonedeep_1 = __importDefault(require("lodash.clonedeep"));
var DrawerForm = /** @class */ (function (_super) {
__extends(DrawerForm, _super);
function DrawerForm(props) {
var _this = _super.call(this, props) || this;
_this.setLanguage = function (currentLanguage) {
_this.setState({ currentLanguage: currentLanguage });
};
_this.onNewLanguage = function (lang) {
var _a = _this.props, form = _a.form, inputData = _a.inputData;
var setFieldsValue = form.setFieldsValue, getFieldsValue = form.getFieldsValue;
var fieldsNames = ["questions"];
if (inputData.options) {
fieldsNames.push("options");
}
var _b = lodash_clonedeep_1.default(getFieldsValue(fieldsNames)), questions = _b.questions, options = _b.options;
questions[lang] = "";
if (options) {
for (var index = 0; index < options.length; index++) {
options[index].text[lang] = "";
}
}
setFieldsValue({ questions: questions, options: options });
_this.setState({
languagesList: Object.keys(questions)
});
};
_this.onRemoveLanguage = function (lang) {
/* REMOVE LANGUAGE HERE */
var _a = _this.props, form = _a.form, inputData = _a.inputData;
var setFieldsValue = form.setFieldsValue, getFieldsValue = form.getFieldsValue;
var fieldsNames = ["questions"];
if (inputData.options) {
fieldsNames.push("options");
}
var _b = lodash_clonedeep_1.default(getFieldsValue(fieldsNames)), questions = _b.questions, options = _b.options;
delete questions[lang];
if (options) {
for (var index = 0; index < options.length; index++) {
delete options[index].text[lang];
}
}
var listLanguages = Object.keys(questions);
_this.setState({
currentLanguage: listLanguages[0],
languagesList: listLanguages
}, function () {
// fix's bug that some times one of the updates was lost
setFieldsValue({ questions: questions, options: options });
});
};
var languagesList = Object.keys(props.inputData.questions);
_this.state = {
languagesList: languagesList,
currentLanguage: languagesList[0]
};
return _this;
}
DrawerForm.prototype.render = function () {
var _a = this.props, form = _a.form,
// toolboxData,
inputData = _a.inputData, _b = this.state, currentLanguage = _b.currentLanguage, languagesList = _b.languagesList, getFieldDecorator = form.getFieldDecorator, questions = inputData.questions, required = inputData.required, options = inputData.options;
return (react_1.default.createElement(antd_1.Form, { layout: "vertical" },
react_1.default.createElement(antd_1.Form.Item, { label: react_1.default.createElement(TranslatedText_1.default, { id: "settings.form.questions" }) }, getFieldDecorator("questions", {
initialValue: questions,
rules: [{ required: true, message: "Campo requerido" }]
})(react_1.default.createElement(QuillFormInput_1.default, { currentLanguage: currentLanguage, setLanguage: this.setLanguage, onNewLanguage: this.onNewLanguage, onRemoveLanguage: this.onRemoveLanguage }))),
options ? (react_1.default.createElement(antd_1.Form.Item, { label: react_1.default.createElement(TranslatedText_1.default, { id: "settings.form.options" }) }, getFieldDecorator("options", {
initialValue: options,
rules: [{ required: true, message: "Campo requerido" }]
})(react_1.default.createElement(OptionsInput_1.default, { languagesList: languagesList, currentLanguage: currentLanguage })))) : null,
react_1.default.createElement(antd_1.Form.Item, null, getFieldDecorator("required", {
initialValue: required,
valuePropName: "checked"
})(react_1.default.createElement(antd_1.Checkbox, null,
react_1.default.createElement(TranslatedText_1.default, { id: "settings.form.required" }))))));
};
return DrawerForm;
}(react_1.PureComponent));
exports.default = antd_1.Form.create()(DrawerForm);
//# sourceMappingURL=SettingsForm.js.map