react-antd-admin-panel
Version:
Easy prototyping admin panel using React and Antd
42 lines • 1.73 kB
JavaScript
import React, { useEffect } from "react";
import { DatePicker as DatePickerAnt } from "antd";
import 'dayjs/locale/da';
import locale from 'antd/es/date-picker/locale/da_DK';
const DatePickerRange = (props) => {
var _a;
let model = props.model;
let addProps = {};
const onChange = ({ value, object }, settings) => {
var _a;
model._defaultObject = { value: value, object: object };
if (model._formula)
model.value(model._defaultObject.value);
(_a = model._onChange) === null || _a === void 0 ? void 0 : _a.call(model, model._defaultObject);
};
const onClear = () => {
model._defaultObject = undefined;
if (model._formula)
model.value(undefined);
};
const onStart = () => {
if (model._defaultObject) {
if (model._formula)
model._formula.value(model, model._defaultObject.value);
setTimeout(() => onChange(model._defaultObject, {
ignoreOnChange: model._ignoreOnChange,
ignoreSetState: model._ignoreSetState,
}), 0);
}
else {
onClear();
}
};
useEffect(() => {
if (model._useCache && model._key)
model.defaultFromCache();
onStart();
}, []);
return (React.createElement(DatePickerAnt.RangePicker, Object.assign({ locale: locale, placeholder: (_a = model._label) !== null && _a !== void 0 ? _a : ['From date', 'To date'], onChange: (date, dateString) => onChange({ value: dateString, object: date }), allowClear: model._clearable }, addProps)));
};
export default DatePickerRange;
//# sourceMappingURL=DatePickerRange.js.map