@novin-dev/formalite
Version:
Generate MUI form with few line of code
52 lines (45 loc) • 3.23 kB
JavaScript
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
var tslib = require('tslib');
var React = require('react');
var xDatePickers = require('@mui/x-date-pickers');
var material = require('@mui/material');
var utils = require('../../../config/utils.js');
var memo = require('../../Bases/functions/memo.js');
var DatePickerLocalizationProvider = require('../DatePickerLocalizationProvider.js');
var SkeletonBase = require('../../Bases/SkeletonBase.js');
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
var TimePickerView = function (props) {
var allData = props.allData, name = props.name, formik = props.formik, loading = props.loading, validationSchema = props.validationSchema, translator = props.translator, lang = props.lang;
var _a = allData.inputProps, label = _a.label, helperText = _a.helperText, inputProps = tslib.__rest(_a, ["label", "helperText"]);
if (loading) {
return (React__default["default"].createElement(material.Grid, tslib.__assign({ item: true }, allData.layoutProps),
React__default["default"].createElement(SkeletonBase.TextViewSkeleton, { hasHelper: !!helperText })));
}
return (React__default["default"].createElement(material.Grid, tslib.__assign({ item: true }, allData.layoutProps),
React__default["default"].createElement(DatePickerLocalizationProvider["default"], { lang: lang },
React__default["default"].createElement(xDatePickers.TimePicker, tslib.__assign({ label: label, value: utils.getData({ source: formik.values, key: name }), onChange: function (date) {
formik.setFieldValue(String(name), date);
if (allData.onChange) {
allData.onChange(date);
}
}, clearable: true, renderInput: function (_a) {
var error = _a.error, restParams = tslib.__rest(_a, ["error"]);
return (React__default["default"].createElement(material.TextField, tslib.__assign({ fullWidth: true, name: String(name), required: utils.checkIsRequired({
schema: validationSchema,
formikValues: formik.values,
key: String(name),
}), error: error ||
(utils.getData({ source: formik.touched, key: name }) &&
Boolean(utils.getData({ source: formik.errors, key: name }))), helperText: utils.getData({ source: formik.touched, key: name }) &&
utils.getData({ source: formik.errors, key: name })
? translator(utils.getData({ source: formik.errors, key: name }))
: helperText }, restParams, inputProps)));
} }, allData.timePickerProps)))));
};
var TimePickerView$1 = React__default["default"].memo(TimePickerView, function (prevProps, nextProps) {
return memo.baseMemo(prevProps, nextProps);
});
exports["default"] = TimePickerView$1;
//# sourceMappingURL=TimePickerView.js.map