mui-extended
Version:
Extended UI Components built on Material UI
19 lines (18 loc) • 1.03 kB
JavaScript
import { __assign, __rest } from "tslib";
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
import { forwardRef, useCallback } from "react";
import { debugRender } from "../../debug";
export var withControlledDateTimePicker = function (Picker) {
var ControlledPicker = forwardRef(function ControlledPicker(_a, ref) {
var onChange = _a.onChange, onBlur = _a.onBlur, error = _a.error, helperText = _a.helperText, props = __rest(_a, ["onChange", "onBlur", "error", "helperText"]);
debugRender(props.name);
var _onChange = useCallback(function (value) {
onChange(props.name, value);
}, [onChange, props.name]);
var _onBlur = useCallback(function () {
onBlur(props.name);
}, [onBlur, props.name]);
return (_jsx(_Fragment, { children: _jsx(Picker, __assign({}, props, { onChange: _onChange, _onBlur: _onBlur, ref: ref, slotProps: { textField: { error: error, helperText: helperText } } })) }));
});
return ControlledPicker;
};