@skbkontur/db-viewer-ui
Version:
Database Viewer with custom configuration
36 lines • 1.78 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.DatePicker = void 0;
const tslib_1 = require("tslib");
const jsx_runtime_1 = require("react/jsx-runtime");
const edi_ui_1 = require("@skbkontur/edi-ui");
const react_ui_1 = require("@skbkontur/react-ui");
const react_1 = require("react");
const helpers_1 = require("./helpers");
const DatePickerDefaultProps = {
width: 120,
minDate: "01.01.1900",
maxDate: "31.12.2099",
isHoliday: (_day, isWeekend) => isWeekend,
};
const DatePicker = (_a) => {
var { defaultTime = "00:00", maxDate, minDate, onChange, timeZone = edi_ui_1.TimeUtils.TimeZones.UTC, value } = _a, restProps = tslib_1.__rest(_a, ["defaultTime", "maxDate", "minDate", "onChange", "timeZone", "value"]);
const [date, setDate] = (0, react_1.useState)("");
(0, react_1.useEffect)(() => {
setDate((0, helpers_1.convertDateToStringWithTimezone)(value, timeZone));
}, [value, timeZone]);
const handleChange = (newStringifiedDate) => {
setDate(newStringifiedDate);
if (edi_ui_1.StringUtils.isNullOrWhitespace(newStringifiedDate)) {
onChange(null);
return;
}
if (!react_ui_1.DatePicker.validate(newStringifiedDate)) {
return;
}
onChange((0, helpers_1.convertStringToDate)(newStringifiedDate, defaultTime, timeZone));
};
return ((0, jsx_runtime_1.jsx)(react_ui_1.DatePicker, Object.assign({}, DatePickerDefaultProps, restProps, { maxDate: (0, helpers_1.convertDateToStringWithTimezone)(maxDate, timeZone), minDate: (0, helpers_1.convertDateToStringWithTimezone)(minDate, timeZone), value: date, onValueChange: handleChange })));
};
exports.DatePicker = DatePicker;
//# sourceMappingURL=DatePicker.js.map