@novin-dev/formalite
Version:
Generate MUI form with few line of code
38 lines (31 loc) • 2.33 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var tslib = require('tslib');
var material = require('@mui/material');
var React = require('react');
var reactImask = require('react-imask');
var TextFieldBase = require('../Bases/TextFieldBase.js');
var memo = require('../Bases/functions/memo.js');
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
var CartNumberView = function (props) {
var allData = props.allData, name = props.name, formik = props.formik, loading = props.loading, validationSchema = props.validationSchema, translator = props.translator, formMustRegex = props.formMustRegex;
var _a = allData.inputProps; _a.onChange; _a.placeholder; _a.helperText; var inputProps = tslib.__rest(_a, ["onChange", "placeholder", "helperText"]);
var TextMaskCustom = React.useMemo(function () {
return React__default["default"].forwardRef(function (propsInner, ref) {
var innerOnChange = propsInner.onChange, other = tslib.__rest(propsInner, ["onChange"]);
return (React__default["default"].createElement(reactImask.IMaskInput, tslib.__assign({}, other, { unmask: true, mask: allData.mask, definitions: {
"#": /[1-9]/,
}, inputRef: ref, onAccept: function (value) {
return innerOnChange({ target: { name: propsInner.name, value: value } });
}, overwrite: true })));
});
}, [allData.mask]);
return (React__default["default"].createElement(material.Grid, tslib.__assign({ item: true }, allData.layoutProps),
React__default["default"].createElement(TextFieldBase.TextFieldBase, tslib.__assign({ formik: formik, loading: loading, validationSchema: validationSchema, translator: translator, name: String(name), mustRegex: [allData.mustRegex, formMustRegex] }, inputProps, { InputProps: tslib.__assign({ inputComponent: TextMaskCustom }, (inputProps.InputProps || {})) }))));
};
var CardNumberView = React__default["default"].memo(CartNumberView, function (prevProps, nextProps) {
return memo.baseMemo(prevProps, nextProps);
});
exports["default"] = CardNumberView;
//# sourceMappingURL=CardNumberView.js.map