UNPKG

@skbkontur/db-viewer-ui

Version:

Database Viewer with custom configuration

36 lines 1.78 kB
"use strict"; 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