UNPKG

@skbkontur/cassandra-distributed-task-queue-ui

Version:

.NET library implementing distributed task queue machinery using Apache Cassandra

45 lines 3.07 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.DateTimeRangePicker = DateTimeRangePicker; const jsx_runtime_1 = require("react/jsx-runtime"); const edi_ui_1 = require("@skbkontur/edi-ui"); const react_stack_layout_1 = require("@skbkontur/react-stack-layout"); const react_ui_1 = require("@skbkontur/react-ui"); const react_1 = require("react"); const DatePicker_1 = require("./DatePicker"); const DateTimeRangePicker_styles_1 = require("./DateTimeRangePicker.styles"); const RangeSelector_1 = require("./RangeSelector"); const defaultPredefinedRanges = [ { getRange: timeZone => new RangeSelector_1.RangeSelector(timeZone).getYesterday(), tid: "TemplateDateYesterday", caption: "вчера", }, { getRange: timeZone => new RangeSelector_1.RangeSelector(timeZone).getToday(), tid: "TemplateDateToday", caption: "сегодня", }, { getRange: timeZone => new RangeSelector_1.RangeSelector(timeZone).getWeek(), tid: "TemplateDateWeek", caption: "неделя", }, { getRange: timeZone => new RangeSelector_1.RangeSelector(timeZone).getMonth(), tid: "TemplateDateMonth", caption: "месяц", }, { getRange: timeZone => new RangeSelector_1.RangeSelector(timeZone).getYear(), tid: "TemplateDateYear", caption: "год", }, ]; function DateTimeRangePicker({ error, value, onChange, timeZone }) { const theme = (0, react_1.useContext)(react_ui_1.ThemeContext); const { lowerBound, upperBound } = value; const fixedTimezone = edi_ui_1.TimeUtils.getTimeZoneOffsetOrDefault(timeZone); return ((0, jsx_runtime_1.jsxs)(react_stack_layout_1.ColumnStack, { children: [(0, jsx_runtime_1.jsxs)(react_stack_layout_1.Fit, { children: [(0, jsx_runtime_1.jsx)("span", { className: DateTimeRangePicker_styles_1.jsStyles.dateRangeItem(), children: (0, jsx_runtime_1.jsx)(DatePicker_1.DatePicker, { "data-tid": "From", error: error, value: lowerBound, defaultTime: "00:00", timeZone: fixedTimezone, onChange: (nextValue) => onChange({ lowerBound: nextValue, upperBound: upperBound }) }) }), (0, jsx_runtime_1.jsx)("span", { className: DateTimeRangePicker_styles_1.jsStyles.dateRangeItem(), children: "\u2014" }), (0, jsx_runtime_1.jsx)("span", { className: DateTimeRangePicker_styles_1.jsStyles.dateRangeItem(), children: (0, jsx_runtime_1.jsx)(DatePicker_1.DatePicker, { "data-tid": "To", error: error, value: upperBound, defaultTime: "23:59", timeZone: fixedTimezone, onChange: (nextValue) => onChange({ upperBound: nextValue, lowerBound: lowerBound }) }) })] }), (0, jsx_runtime_1.jsx)(react_stack_layout_1.Fit, { className: `${DateTimeRangePicker_styles_1.jsStyles.templates(theme)} ${DateTimeRangePicker_styles_1.jsStyles.smallGap()}`, children: defaultPredefinedRanges.map(x => ((0, jsx_runtime_1.jsx)("span", { onClick: _ => onChange(x.getRange(timeZone)), "data-tid": x.tid, children: x.caption }, x.tid))) })] })); } //# sourceMappingURL=DateTimeRangePicker.js.map