UNPKG

react-antd-admin-panel

Version:

Easy prototyping admin panel using React and Antd

48 lines 1.96 kB
import React, { useState } from "react"; import { DatePicker as DatePickerAnt, Select, Space } from "antd"; const { Option } = Select; const DatePickerToggle = (props) => { let model = props.model; const [type, setType] = useState(model._picker); const [value, setValue] = useState(model._default); const onChangeSelect = (picker) => { let prevPicker = model._picker; let currPicker = picker; model._picker = currPicker; setType(picker); model._onChangeSelect(currPicker, prevPicker); }; const onChange = (date, dateString) => { var _a; model._data = dateString; if (model._formula) model.value(model._data); (_a = model._onChange) === null || _a === void 0 ? void 0 : _a.call(model, dateString, date); }; const onClear = () => { model._data = true; if (model._formula) model.value(true); }; model._onError = () => onClear(); model._onComplete = () => onClear(); // Register the defaultValue to the formula. if (model._default) { let defaultValue = model._default; model._data = defaultValue; if (model._formula) { model.value(defaultValue); } } model.onHandleChange = (value) => { setValue(value); }; return (React.createElement(Space, null, React.createElement(Select, { defaultValue: model._picker, value: type, onChange: onChangeSelect, style: { width: 126 } }, React.createElement(Option, { value: "date" }, "Date"), React.createElement(Option, { value: "week" }, "Week"), React.createElement(Option, { value: "month" }, "Month")), React.createElement(DatePickerAnt, { key: value, picker: type, defaultValue: value, onChange: onChange }))); }; export default DatePickerToggle; //# sourceMappingURL=DatePickerToggle.js.map