d2coreui 23.0.24 → 23.0.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -20,6 +20,7 @@ export interface DateRangeInputProps extends Omit<HTMLAttributes<HTMLDivElement>
20
20
  [rangeName: string]: () => [Dayjs, Dayjs];
21
21
  };
22
22
  size?: SizeType;
23
+ compact?: boolean;
23
24
  hidePopup?: boolean;
24
25
  renderAsCalendar?: boolean;
25
26
  placement?: TooltipPlacement;
@@ -47,7 +48,7 @@ interface DateRangeInputState {
47
48
  selectionStartDate: Dayjs | null;
48
49
  popupKeyIndex: number;
49
50
  popupVisible: boolean;
50
- mode: DateRangeInputMode;
51
+ mode?: DateRangeInputMode;
51
52
  }
52
53
  export default class DateRangeInput extends React.Component<DateRangeInputProps, DateRangeInputState> {
53
54
  constructor(props: Readonly<DateRangeInputProps>);
@@ -32,7 +32,7 @@ export default class DateRangeInput extends React.Component {
32
32
  selectionStartDate: null,
33
33
  popupKeyIndex: 0,
34
34
  popupVisible: false,
35
- mode: (_a = props.defaultMode) !== null && _a !== void 0 ? _a : DateRangeInputMode.SIMPLE,
35
+ mode: props.compact ? undefined : (_a = props.defaultMode) !== null && _a !== void 0 ? _a : DateRangeInputMode.SIMPLE,
36
36
  };
37
37
  this.getDefaultSelectedDateForFromPanel = memoizeOne(this.getDefaultSelectedDateForFromPanel.bind(this));
38
38
  }
@@ -156,19 +156,20 @@ export default class DateRangeInput extends React.Component {
156
156
  }))));
157
157
  }
158
158
  renderAdvancedPart() {
159
- const _a = this.props, { fromValue, toValue, onChange, style, allowClear, renderAsCalendar, hidePopup, align, defaultMode, onModeChange, confirmButtonsRenderer, onPopupVisibleChange } = _a, props = __rest(_a, ["fromValue", "toValue", "onChange", "style", "allowClear", "renderAsCalendar", "hidePopup", "align", "defaultMode", "onModeChange", "confirmButtonsRenderer", "onPopupVisibleChange"]);
159
+ const _a = this.props, { fromValue, toValue, onChange, style, allowClear, renderAsCalendar, hidePopup, align, defaultMode, compact, onModeChange, confirmButtonsRenderer, onPopupVisibleChange } = _a, props = __rest(_a, ["fromValue", "toValue", "onChange", "style", "allowClear", "renderAsCalendar", "hidePopup", "align", "defaultMode", "compact", "onModeChange", "confirmButtonsRenderer", "onPopupVisibleChange"]);
160
160
  return (React.createElement("div", null,
161
- React.createElement("div", { style: { display: "flex" } },
162
- React.createElement(DateTimeInput, Object.assign({}, props, { style: { width: "47%" }, value: fromValue, onChange: (value) => {
161
+ React.createElement("div", { style: { display: "flex", gap: 8 } },
162
+ React.createElement(DateTimeInput, Object.assign({}, props, { style: { flexGrow: 1 }, value: fromValue, onChange: (value) => {
163
163
  var _a, _b;
164
164
  (_b = (_a = this.props).onChange) === null || _b === void 0 ? void 0 : _b.call(_a, value, this.props.toValue);
165
165
  } })),
166
- React.createElement("span", { style: { width: "6%", paddingTop: 4, color: "rgba(0, 0, 0, 0.65)", textAlign: "center" } }, "\u27F7"),
167
- React.createElement(DateTimeInput, Object.assign({}, props, { style: { width: "47%" }, value: toValue, onChange: (value) => {
166
+ !compact &&
167
+ React.createElement("span", { style: { margin: 4, color: "rgba(0, 0, 0, 0.65)", textAlign: "center" } }, "\u27F7"),
168
+ React.createElement(DateTimeInput, Object.assign({}, props, { style: { flexGrow: 1 }, value: toValue, onChange: (value) => {
168
169
  var _a, _b;
169
170
  (_b = (_a = this.props).onChange) === null || _b === void 0 ? void 0 : _b.call(_a, this.props.fromValue, value);
170
171
  } }))),
171
- React.createElement(DateRangeInputAdvancedPanel, { onBeginIntervalChange: unit => {
172
+ React.createElement(DateRangeInputAdvancedPanel, { compact: compact, onBeginIntervalChange: unit => {
172
173
  let from;
173
174
  if (unit === "15minutes") {
174
175
  const roundedMinutes = Math.floor(dayjs().minute() / 15) * 15;
@@ -180,13 +181,7 @@ export default class DateRangeInput extends React.Component {
180
181
  this.onChange(from, this.props.toValue);
181
182
  }, onIntervalDurationChange: unitOfTime => {
182
183
  if (this.props.fromValue) {
183
- let to;
184
- if (unitOfTime === "4years") {
185
- to = this.props.fromValue.clone().add(4, "year").subtract(1, "millisecond");
186
- }
187
- else {
188
- to = this.props.fromValue.clone().add(1, unitOfTime).subtract(1, "millisecond");
189
- }
184
+ let to = this.props.fromValue.clone().add(1, unitOfTime).subtract(1, "millisecond");
190
185
  this.onChange(this.props.fromValue, to);
191
186
  }
192
187
  }, onTimeShift: (shiftBegin, shiftEnd, unitOfTime, type) => {
@@ -225,15 +220,17 @@ export default class DateRangeInput extends React.Component {
225
220
  renderPopup() {
226
221
  var _a, _b;
227
222
  return (React.createElement("div", { onFocus: this.props.onFocus, onBlur: this.props.onBlur },
223
+ this.props.compact && this.renderAdvancedPart(),
228
224
  this.state.mode === DateRangeInputMode.SIMPLE && this.renderSimplePart(),
229
225
  this.state.mode === DateRangeInputMode.ADVANCED && this.renderAdvancedPart(),
230
- React.createElement("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "flex-end" } },
231
- React.createElement(Switch, { style: { float: "right", marginTop: 8 }, checked: this.state.mode === DateRangeInputMode.ADVANCED, onChange: checked => {
232
- var _a, _b;
233
- const mode = checked ? DateRangeInputMode.ADVANCED : DateRangeInputMode.SIMPLE;
234
- this.setState({ mode: mode });
235
- (_b = (_a = this.props).onModeChange) === null || _b === void 0 ? void 0 : _b.call(_a, mode);
236
- }, checkedChildren: i18n("Advanced Mode"), unCheckedChildren: i18n("Simple Mode") }), (_b = (_a = this.props).confirmButtonsRenderer) === null || _b === void 0 ? void 0 :
226
+ React.createElement("div", { style: { height: 28, display: "flex", justifyContent: "space-between", alignItems: "flex-end" } },
227
+ React.createElement("div", null, !this.props.compact &&
228
+ React.createElement(Switch, { checked: this.state.mode === DateRangeInputMode.ADVANCED, onChange: checked => {
229
+ var _a, _b;
230
+ const mode = checked ? DateRangeInputMode.ADVANCED : DateRangeInputMode.SIMPLE;
231
+ this.setState({ mode: mode });
232
+ (_b = (_a = this.props).onModeChange) === null || _b === void 0 ? void 0 : _b.call(_a, mode);
233
+ }, checkedChildren: i18n("Advanced Mode"), unCheckedChildren: i18n("Simple Mode") })), (_b = (_a = this.props).confirmButtonsRenderer) === null || _b === void 0 ? void 0 :
237
234
  _b.call(_a))));
238
235
  }
239
236
  renderInput() {
@@ -277,7 +274,7 @@ export default class DateRangeInput extends React.Component {
277
274
  return this.renderInput();
278
275
  }
279
276
  else {
280
- return (React.createElement(Tooltip, { color: "white", key: "date-range-popup-" + this.state.popupKeyIndex, trigger: this.props.disabled ? [] : ["contextMenu"], align: this.props.align, placement: this.props.placement, overlayInnerStyle: { maxHeight: "100vh", overflowY: "auto", overflowX: "hidden" }, onOpenChange: (visible) => {
277
+ return (React.createElement(Tooltip, { color: "white", key: "date-range-popup-" + this.state.popupKeyIndex, trigger: this.props.disabled ? [] : ["contextMenu"], align: this.props.align, placement: this.props.placement, overlayInnerStyle: { width: "fit-content" }, onOpenChange: (visible) => {
281
278
  var _a, _b, _c, _d;
282
279
  if (visible) {
283
280
  (_b = (_a = this.props).onFocus) === null || _b === void 0 ? void 0 : _b.call(_a);
@@ -286,7 +283,7 @@ export default class DateRangeInput extends React.Component {
286
283
  (_d = (_c = this.props).onBlur) === null || _d === void 0 ? void 0 : _d.call(_c);
287
284
  }
288
285
  this.setState({ popupVisible: visible });
289
- }, overlayClassName: "date-range-picker-popup", title: this.renderPopup() }, this.renderInput()));
286
+ }, title: this.renderPopup() }, this.renderInput()));
290
287
  }
291
288
  }
292
289
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dateRangeInput.js","sourceRoot":"","sources":["../../../../components/date/dateRangeInput.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, {HTMLAttributes} from \"react\";\r\nimport dayjs, { Dayjs } from \"dayjs\";\r\nimport {CalendarOutlined} from \"@ant-design/icons\";\r\nimport {Divider, Switch, Tag, Tooltip} from \"antd\";\r\nimport DateTimeInput from \"./dateTimeInput\";\r\nimport memoizeOne from \"memoize-one\";\r\nimport {TooltipPlacement} from \"antd/es/tooltip\";\r\nimport KeyboardUtils from \"../keyboard/keyboardUtils\";\r\nimport i18n from \"d2core/i18n/i18n\";\r\nimport DateRangeInputAdvancedPanel, {TimeShiftDirection} from \"./dateRangeInputAdvancedPanel\";\r\nimport {SizeType} from \"antd/lib/config-provider/SizeContext\";\r\n\r\nexport enum DateRangeInputMode {\r\n SIMPLE,\r\n ADVANCED,\r\n}\r\n\r\nexport interface DateRangeInputProps extends Omit<HTMLAttributes<HTMLDivElement>, \"onChange\"> {\r\n mask: string\r\n fromValue: Dayjs | null\r\n toValue: Dayjs | null\r\n onChange?: (fromValue: Dayjs | null, toValue: Dayjs | null) => void\r\n onInvalidValue?: (input: string) => void\r\n disabled?: boolean\r\n minDateTime?: Dayjs\r\n maxDateTime?: Dayjs\r\n // allows to set no (null) date by datepicker\r\n allowClear?: boolean\r\n ranges?: { [rangeName: string]: () => [Dayjs, Dayjs] }\r\n size?: SizeType;\r\n\r\n hidePopup?: boolean\r\n renderAsCalendar?: boolean\r\n placement?: TooltipPlacement\r\n align?: {\r\n points?: [string, string];\r\n offset?: [number, number];\r\n targetOffset?: [number, number];\r\n overflow?: {\r\n adjustX?: boolean;\r\n adjustY?: boolean;\r\n };\r\n useCssRight?: boolean;\r\n useCssBottom?: boolean;\r\n useCssTransform?: boolean;\r\n }\r\n\r\n defaultMode?: DateRangeInputMode\r\n\r\n onModeChange?(mode: DateRangeInputMode): void\r\n\r\n onFocus?(): void\r\n\r\n onBlur?(): void\r\n\r\n confirmButtonsRenderer?(): React.ReactNode\r\n\r\n onPopupVisibleChange?(visible: boolean): void\r\n}\r\n\r\ninterface DateRangeInputState {\r\n valid: boolean\r\n selectionStartDate: Dayjs | null\r\n popupKeyIndex: number\r\n popupVisible: boolean\r\n\r\n mode: DateRangeInputMode\r\n}\r\n\r\nexport default class DateRangeInput extends React.Component<DateRangeInputProps, DateRangeInputState> {\r\n constructor(props: Readonly<DateRangeInputProps>) {\r\n super(props);\r\n this.state = {\r\n valid: !!props.fromValue && props.fromValue.isValid() && !!props.toValue && props.toValue.isValid(),\r\n selectionStartDate: null,\r\n popupKeyIndex: 0,\r\n popupVisible: false,\r\n\r\n mode: props.defaultMode ?? DateRangeInputMode.SIMPLE,\r\n };\r\n this.getDefaultSelectedDateForFromPanel = memoizeOne(this.getDefaultSelectedDateForFromPanel.bind(this));\r\n }\r\n\r\n componentDidUpdate(_prevProps: Readonly<DateRangeInputProps>, prevState: Readonly<DateRangeInputState>) {\r\n if (prevState.popupVisible !== this.state.popupVisible && this.props.onPopupVisibleChange) {\r\n this.props.onPopupVisibleChange(this.state.popupVisible);\r\n }\r\n }\r\n\r\n getDefaultSelectedDateForFromPanel(fromDate: Dayjs | null, toDate: Dayjs | null): Dayjs {\r\n if (!!fromDate && !!toDate && fromDate.isSame(toDate, \"date\")) {\r\n return fromDate.clone().subtract(1, \"month\");\r\n } else {\r\n return fromDate ?? dayjs().startOf(\"day\").subtract(1, \"month\");\r\n }\r\n }\r\n\r\n private getFromValue(date: Dayjs) {\r\n return (this.props.fromValue?.clone() ?? dayjs().startOf(\"day\")).year(date.year()).month(date.month()).date(date.date());\r\n }\r\n\r\n private getToValue(date: Dayjs) {\r\n return (this.props.toValue?.clone() ?? dayjs().endOf(\"day\")).year(date.year()).month(date.month()).date(date.date());\r\n }\r\n\r\n closePopup() {\r\n // close tooltip\r\n this.setState({popupKeyIndex: this.state.popupKeyIndex + 1, popupVisible: false});\r\n this.props.onPopupVisibleChange?.(false);\r\n }\r\n\r\n private onChange(fromValue: Dayjs | null, toValue: Dayjs | null) {\r\n if (this.props.minDateTime && fromValue?.isBefore(this.props.minDateTime)) {\r\n fromValue = this.props.minDateTime;\r\n }\r\n if (this.props.maxDateTime && toValue?.isAfter(this.props.maxDateTime)) {\r\n toValue = this.props.maxDateTime;\r\n }\r\n this.props.onChange?.(fromValue, toValue);\r\n }\r\n\r\n private renderSimplePart() {\r\n const {\r\n fromValue,\r\n toValue,\r\n onChange,\r\n style,\r\n allowClear,\r\n renderAsCalendar,\r\n hidePopup,\r\n align,\r\n defaultMode,\r\n onModeChange,\r\n confirmButtonsRenderer,\r\n onPopupVisibleChange,\r\n ...props\r\n } = this.props;\r\n const markedDateInterval: [Dayjs, Dayjs] | undefined = this.props.fromValue && this.props.toValue ? [this.props.fromValue, this.props.toValue] : undefined;\r\n\r\n return (\r\n <div>\r\n <div style={{display: \"flex\"}}>\r\n <DateTimeInput value={fromValue} {...props}\r\n allowClear={allowClear}\r\n renderAsCalendar\r\n style={{width: \"100%\"}}\r\n onChange={(date) => {\r\n if (date) {\r\n const fromValue = this.getFromValue(date);\r\n const toValue = this.getToValue(date);\r\n this.props.onChange?.(fromValue, toValue);\r\n }\r\n }}\r\n defaultSelectedDate={this.getDefaultSelectedDateForFromPanel(fromValue, toValue)}\r\n markedDateInterval={markedDateInterval}\r\n onDateItemMouseDown={(date) => {\r\n this.setState({selectionStartDate: date});\r\n const dateFrom = this.getFromValue(date);\r\n const dateTo = this.getToValue(date);\r\n this.props.onChange?.(dateFrom, dateTo);\r\n }}\r\n onDateItemMouseOver={(date) => {\r\n if (KeyboardUtils.isMouseDown() && !!this.state.selectionStartDate) {\r\n let dateFrom: Dayjs;\r\n let dateTo: Dayjs;\r\n if (this.state.selectionStartDate.isBefore(date)) {\r\n dateFrom = this.state.selectionStartDate;\r\n dateTo = date;\r\n } else {\r\n dateFrom = date;\r\n dateTo = this.state.selectionStartDate;\r\n }\r\n dateFrom = this.getFromValue(dateFrom);\r\n dateTo = this.getToValue(dateTo);\r\n this.props.onChange?.(dateFrom, dateTo);\r\n }\r\n }}\r\n onDateItemMouseUp={(_date) => {\r\n this.setState({selectionStartDate: null});\r\n }}\r\n ignoreKeyStrokes\r\n />\r\n <Divider type=\"vertical\" style={{height: \"auto\"}}/>\r\n <DateTimeInput value={toValue} {...props}\r\n renderAsCalendar\r\n allowClear={allowClear}\r\n style={{width: \"100%\"}}\r\n onChange={(date) => {\r\n if (date) {\r\n const fromValue = this.getFromValue(date);\r\n const toValue = this.getToValue(date);\r\n this.props.onChange?.(fromValue, toValue);\r\n }\r\n }}\r\n markedDateInterval={markedDateInterval}\r\n onDateItemMouseDown={(date) => {\r\n this.setState({selectionStartDate: date});\r\n const dateFrom = this.getFromValue(date);\r\n const dateTo = this.getToValue(date);\r\n this.props.onChange?.(dateFrom, dateTo);\r\n }}\r\n onDateItemMouseOver={(date) => {\r\n if (KeyboardUtils.isMouseDown() && !!this.state.selectionStartDate) {\r\n let dateFrom: Dayjs;\r\n let dateTo: Dayjs;\r\n if (this.state.selectionStartDate.isBefore(date)) {\r\n dateFrom = this.state.selectionStartDate;\r\n dateTo = date;\r\n } else {\r\n dateFrom = date;\r\n dateTo = this.state.selectionStartDate;\r\n }\r\n dateFrom = this.getFromValue(dateFrom);\r\n dateTo = this.getToValue(dateTo);\r\n this.props.onChange?.(dateFrom, dateTo);\r\n }\r\n }}\r\n onDateItemMouseUp={(_date) => {\r\n this.setState({selectionStartDate: null});\r\n }}\r\n ignoreKeyStrokes\r\n />\r\n </div>\r\n <div style={{borderTop: \"1px solid #ddd\", paddingTop: 6}}>\r\n {\r\n this.props.ranges && Object.keys(this.props.ranges).map((rangeName, index) => {\r\n return (<Tag style={{userSelect: \"none\", cursor: \"pointer\"}} color=\"blue\"\r\n key={`range-${index}`}\r\n onClick={() => {\r\n const rangeFunction = this.props.ranges?.[rangeName];\r\n if (rangeFunction) {\r\n const range = rangeFunction();\r\n this.props.onChange?.(range[0], range[1]);\r\n }\r\n }}>\r\n {rangeName}</Tag>);\r\n })\r\n }\r\n </div>\r\n </div>\r\n )\r\n }\r\n\r\n private renderAdvancedPart() {\r\n const {\r\n fromValue,\r\n toValue,\r\n onChange,\r\n style,\r\n allowClear,\r\n renderAsCalendar,\r\n hidePopup,\r\n align,\r\n defaultMode,\r\n onModeChange,\r\n confirmButtonsRenderer,\r\n onPopupVisibleChange,\r\n ...props\r\n } = this.props;\r\n return (\r\n <div>\r\n <div style={{display: \"flex\"}}>\r\n <DateTimeInput\r\n {...props}\r\n style={{width: \"47%\"}}\r\n value={fromValue}\r\n onChange={(value) => {\r\n this.props.onChange?.(value, this.props.toValue);\r\n }}\r\n />\r\n <span style={{width: \"6%\", paddingTop: 4, color: \"rgba(0, 0, 0, 0.65)\", textAlign: \"center\"}}>\r\n {\"\\u27F7\"}\r\n </span>\r\n <DateTimeInput\r\n {...props}\r\n style={{width: \"47%\"}}\r\n value={toValue}\r\n onChange={(value) => {\r\n this.props.onChange?.(this.props.fromValue, value);\r\n }}\r\n />\r\n </div>\r\n <DateRangeInputAdvancedPanel\r\n onBeginIntervalChange={unit => {\r\n let from: Dayjs;\r\n if (unit === \"15minutes\") {\r\n const roundedMinutes = Math.floor(dayjs().minute() / 15) * 15;\r\n from = dayjs().startOf(\"hour\").minute(roundedMinutes);\r\n } else {\r\n from = dayjs().startOf(unit);\r\n }\r\n this.onChange(from, this.props.toValue);\r\n }}\r\n onIntervalDurationChange={unitOfTime => {\r\n if (this.props.fromValue) {\r\n let to: Dayjs;\r\n if (unitOfTime === \"4years\") {\r\n to = this.props.fromValue.clone().add(4, \"year\").subtract(1, \"millisecond\");\r\n } else {\r\n to = this.props.fromValue.clone().add(1, unitOfTime).subtract(1, \"millisecond\")\r\n }\r\n this.onChange(this.props.fromValue, to);\r\n }\r\n }}\r\n onTimeShift={(shiftBegin, shiftEnd, unitOfTime, type) => {\r\n let fromValue = this.props.fromValue ?? null;\r\n let toValue = this.props.toValue ?? null;\r\n\r\n if (shiftBegin && fromValue) {\r\n if (type === TimeShiftDirection.INCREMENT) {\r\n fromValue = fromValue.add(1, unitOfTime);\r\n } else if (type === TimeShiftDirection.DECREMENT) {\r\n fromValue = fromValue.subtract(1, unitOfTime);\r\n }\r\n }\r\n\r\n if (shiftEnd && toValue) {\r\n if (type === TimeShiftDirection.INCREMENT) {\r\n toValue = toValue.add(1, unitOfTime);\r\n } else if (type === TimeShiftDirection.DECREMENT) {\r\n toValue = toValue.subtract(1, unitOfTime);\r\n }\r\n }\r\n\r\n this.onChange(fromValue, toValue);\r\n }}\r\n onEndIntervalChange={unit => {\r\n let to: Dayjs;\r\n if (unit === \"15minutes\") {\r\n const roundedMinutes = Math.floor(dayjs().minute() / 15) * 15;\r\n to = dayjs().startOf(\"hour\").minute(roundedMinutes).subtract(1, \"millisecond\");\r\n } else {\r\n to = dayjs().startOf(unit).subtract(1, \"millisecond\");\r\n }\r\n this.onChange(this.props.fromValue, to);\r\n }}\r\n />\r\n </div>\r\n )\r\n }\r\n\r\n renderPopup(): React.ReactElement {\r\n return (\r\n <div onFocus={this.props.onFocus} onBlur={this.props.onBlur}>\r\n {this.state.mode === DateRangeInputMode.SIMPLE && this.renderSimplePart()}\r\n {this.state.mode === DateRangeInputMode.ADVANCED && this.renderAdvancedPart()}\r\n <div style={{display: \"flex\", justifyContent: \"space-between\", alignItems: \"flex-end\"}}>\r\n <Switch\r\n style={{float: \"right\", marginTop: 8}}\r\n checked={this.state.mode === DateRangeInputMode.ADVANCED}\r\n onChange={checked => {\r\n const mode = checked ? DateRangeInputMode.ADVANCED : DateRangeInputMode.SIMPLE;\r\n this.setState({mode: mode});\r\n this.props.onModeChange?.(mode);\r\n }}\r\n checkedChildren={i18n(\"Advanced Mode\")}\r\n unCheckedChildren={i18n(\"Simple Mode\")}\r\n />\r\n {this.props.confirmButtonsRenderer?.()}\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n renderInput() {\r\n const {\r\n className,\r\n fromValue,\r\n toValue,\r\n onChange,\r\n style,\r\n allowClear,\r\n renderAsCalendar,\r\n hidePopup,\r\n align,\r\n disabled,\r\n defaultMode,\r\n onModeChange,\r\n confirmButtonsRenderer,\r\n onPopupVisibleChange,\r\n ...props\r\n } = this.props;\r\n\r\n let customClassName = `ant-input ant-input-outlined ${className ?? \"\"}`;\r\n if (disabled || this.state.popupVisible) {\r\n customClassName += \" ant-input-disabled\";\r\n }\r\n\r\n return (\r\n <div style={{...style, padding: 0, position: \"relative\"}} className={customClassName} onFocus={this.props.onFocus}\r\n onBlur={this.props.onBlur}>\r\n <div style={{display: \"flex\", justifyContent: \"space-between\", paddingRight: 8}}>\r\n <DateTimeInput value={fromValue} {...props}\r\n disabled={disabled}\r\n inputDisabled={this.state.popupVisible}\r\n allowClear={allowClear}\r\n bordered={false}\r\n hidePopup={true}\r\n style={{width: \"auto\"}}\r\n inputStyle={{paddingRight: 2}}\r\n onChange={(value) => {\r\n this.props.onChange?.(value, this.props.toValue);\r\n }}\r\n />\r\n <span style={{alignSelf: \"center\"}}>{\"\\u27F7\"}</span>\r\n <DateTimeInput value={toValue} {...props}\r\n disabled={disabled}\r\n inputDisabled={this.state.popupVisible}\r\n allowClear={allowClear}\r\n bordered={false}\r\n hidePopup={true}\r\n style={{width: \"auto\"}}\r\n inputStyle={{paddingLeft: 2}}\r\n onChange={(value) => {\r\n this.props.onChange?.(this.props.fromValue, value);\r\n }}\r\n />\r\n {!hidePopup && !renderAsCalendar &&\r\n <CalendarOutlined\r\n style={{cursor: (disabled || this.state.popupVisible) ? \"not-allowed\" : \"pointer\"}}\r\n onClick={(event) => {\r\n if (!disabled && document.createEvent) {\r\n if (this.state.popupVisible) {\r\n this.closePopup();\r\n } else {\r\n var ev = document.createEvent('HTMLEvents');\r\n ev.initEvent('contextmenu', true, false);\r\n event.target.dispatchEvent(ev);\r\n this.props.onFocus?.();\r\n }\r\n }\r\n }}\r\n />\r\n }\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n render(): any {\r\n if (this.props.renderAsCalendar) {\r\n return this.renderPopup();\r\n } else if (this.props.hidePopup) {\r\n return this.renderInput();\r\n } else {\r\n return (\r\n <Tooltip color={\"white\"}\r\n key={\"date-range-popup-\" + this.state.popupKeyIndex}\r\n trigger={this.props.disabled ? [] : [\"contextMenu\"]}\r\n align={this.props.align}\r\n placement={this.props.placement}\r\n overlayInnerStyle={{maxHeight: \"100vh\", overflowY: \"auto\", overflowX: \"hidden\"}}\r\n onOpenChange={(visible) => {\r\n if (visible) {\r\n this.props.onFocus?.();\r\n } else {\r\n this.props.onBlur?.();\r\n }\r\n this.setState({popupVisible: visible});\r\n }}\r\n overlayClassName={\"date-range-picker-popup\"}\r\n title={this.renderPopup()}>\r\n {this.renderInput()}\r\n </Tooltip>\r\n );\r\n }\r\n }\r\n}"]}
1
+ {"version":3,"file":"dateRangeInput.js","sourceRoot":"","sources":["../../../../components/date/dateRangeInput.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAuB,MAAM,OAAO,CAAC;AAC5C,OAAO,KAAc,MAAM,OAAO,CAAC;AACnC,OAAO,EAAC,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAC,MAAM,MAAM,CAAC;AACnD,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,UAAU,MAAM,aAAa,CAAC;AAErC,OAAO,aAAa,MAAM,2BAA2B,CAAC;AACtD,OAAO,IAAI,MAAM,kBAAkB,CAAC;AACpC,OAAO,2BAA2B,EAAE,EAAC,kBAAkB,EAAC,MAAM,+BAA+B,CAAC;AAG9F,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC1B,+DAAM,CAAA;IACN,mEAAQ,CAAA;AACZ,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B;AAuDD,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,KAAK,CAAC,SAAmD;IACjG,YAAY,KAAoC;;QAC5C,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,KAAK,GAAG;YACT,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE;YACnG,kBAAkB,EAAE,IAAI;YACxB,aAAa,EAAE,CAAC;YAChB,YAAY,EAAE,KAAK;YAEnB,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAA,KAAK,CAAC,WAAW,mCAAI,kBAAkB,CAAC,MAAM;SACnF,CAAC;QACF,IAAI,CAAC,kCAAkC,GAAG,UAAU,CAAC,IAAI,CAAC,kCAAkC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7G,CAAC;IAED,kBAAkB,CAAC,UAAyC,EAAE,SAAwC;QAClG,IAAI,SAAS,CAAC,YAAY,KAAK,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,oBAAoB,EAAE,CAAC;YACxF,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC7D,CAAC;IACL,CAAC;IAED,kCAAkC,CAAC,QAAsB,EAAE,MAAoB;QAC3E,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;YAC5D,OAAO,QAAQ,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACjD,CAAC;aAAM,CAAC;YACJ,OAAO,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,KAAK,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACnE,CAAC;IACL,CAAC;IAEO,YAAY,CAAC,IAAW;;QAC5B,OAAO,CAAC,MAAA,MAAA,IAAI,CAAC,KAAK,CAAC,SAAS,0CAAE,KAAK,EAAE,mCAAI,KAAK,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC7H,CAAC;IAEO,UAAU,CAAC,IAAW;;QAC1B,OAAO,CAAC,MAAA,MAAA,IAAI,CAAC,KAAK,CAAC,OAAO,0CAAE,KAAK,EAAE,mCAAI,KAAK,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACzH,CAAC;IAED,UAAU;;QAEN,IAAI,CAAC,QAAQ,CAAC,EAAC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,CAAC,EAAE,YAAY,EAAE,KAAK,EAAC,CAAC,CAAC;QAClF,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,oBAAoB,mDAAG,KAAK,CAAC,CAAC;IAC7C,CAAC;IAEO,QAAQ,CAAC,SAAuB,EAAE,OAAqB;;QAC3D,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,KAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA,EAAE,CAAC;YACxE,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QACvC,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,KAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA,EAAE,CAAC;YACrE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QACrC,CAAC;QACD,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,QAAQ,mDAAG,SAAS,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAEO,gBAAgB;QACpB,MAAM,KAcF,IAAI,CAAC,KAAK,EAdR,EACF,SAAS,EACT,OAAO,EACP,QAAQ,EACR,KAAK,EACL,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,KAAK,EACL,WAAW,EACX,YAAY,EACZ,sBAAsB,EACtB,oBAAoB,OAEV,EADP,KAAK,cAbN,sLAcL,CAAa,CAAC;QACf,MAAM,kBAAkB,GAA+B,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAE3J,OAAO,CACH;YACI,6BAAK,KAAK,EAAE,EAAC,OAAO,EAAE,MAAM,EAAC;gBACzB,oBAAC,aAAa,kBAAC,KAAK,EAAE,SAAS,IAAM,KAAK,IAC3B,UAAU,EAAE,UAAU,EACtB,gBAAgB,QAChB,KAAK,EAAE,EAAC,KAAK,EAAE,MAAM,EAAC,EACtB,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE;;wBACf,IAAI,IAAI,EAAE,CAAC;4BACP,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;4BAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;4BACtC,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,QAAQ,mDAAG,SAAS,EAAE,OAAO,CAAC,CAAC;wBAC9C,CAAC;oBACL,CAAC,EACD,mBAAmB,EAAE,IAAI,CAAC,kCAAkC,CAAC,SAAS,EAAE,OAAO,CAAC,EAChF,kBAAkB,EAAE,kBAAkB,EACtC,mBAAmB,EAAE,CAAC,IAAI,EAAE,EAAE;;wBAC1B,IAAI,CAAC,QAAQ,CAAC,EAAC,kBAAkB,EAAE,IAAI,EAAC,CAAC,CAAC;wBAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;wBACzC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;wBACrC,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,QAAQ,mDAAG,QAAQ,EAAE,MAAM,CAAC,CAAC;oBAC5C,CAAC,EACD,mBAAmB,EAAE,CAAC,IAAI,EAAE,EAAE;;wBAC1B,IAAI,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC;4BACjE,IAAI,QAAe,CAAC;4BACpB,IAAI,MAAa,CAAC;4BAClB,IAAI,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gCAC/C,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC;gCACzC,MAAM,GAAG,IAAI,CAAC;4BAClB,CAAC;iCAAM,CAAC;gCACJ,QAAQ,GAAG,IAAI,CAAC;gCAChB,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC;4BAC3C,CAAC;4BACD,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;4BACvC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;4BACjC,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,QAAQ,mDAAG,QAAQ,EAAE,MAAM,CAAC,CAAC;wBAC5C,CAAC;oBACL,CAAC,EACD,iBAAiB,EAAE,CAAC,KAAK,EAAE,EAAE;wBACzB,IAAI,CAAC,QAAQ,CAAC,EAAC,kBAAkB,EAAE,IAAI,EAAC,CAAC,CAAC;oBAC9C,CAAC,EACD,gBAAgB,UAC7B;gBACF,oBAAC,OAAO,IAAC,IAAI,EAAC,UAAU,EAAC,KAAK,EAAE,EAAC,MAAM,EAAE,MAAM,EAAC,GAAG;gBACnD,oBAAC,aAAa,kBAAC,KAAK,EAAE,OAAO,IAAM,KAAK,IACzB,gBAAgB,QAChB,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,EAAC,KAAK,EAAE,MAAM,EAAC,EACtB,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE;;wBACf,IAAI,IAAI,EAAE,CAAC;4BACP,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;4BAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;4BACtC,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,QAAQ,mDAAG,SAAS,EAAE,OAAO,CAAC,CAAC;wBAC9C,CAAC;oBACL,CAAC,EACD,kBAAkB,EAAE,kBAAkB,EACtC,mBAAmB,EAAE,CAAC,IAAI,EAAE,EAAE;;wBAC1B,IAAI,CAAC,QAAQ,CAAC,EAAC,kBAAkB,EAAE,IAAI,EAAC,CAAC,CAAC;wBAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;wBACzC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;wBACrC,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,QAAQ,mDAAG,QAAQ,EAAE,MAAM,CAAC,CAAC;oBAC5C,CAAC,EACD,mBAAmB,EAAE,CAAC,IAAI,EAAE,EAAE;;wBAC1B,IAAI,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC;4BACjE,IAAI,QAAe,CAAC;4BACpB,IAAI,MAAa,CAAC;4BAClB,IAAI,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gCAC/C,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC;gCACzC,MAAM,GAAG,IAAI,CAAC;4BAClB,CAAC;iCAAM,CAAC;gCACJ,QAAQ,GAAG,IAAI,CAAC;gCAChB,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC;4BAC3C,CAAC;4BACD,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;4BACvC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;4BACjC,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,QAAQ,mDAAG,QAAQ,EAAE,MAAM,CAAC,CAAC;wBAC5C,CAAC;oBACL,CAAC,EACD,iBAAiB,EAAE,CAAC,KAAK,EAAE,EAAE;wBACzB,IAAI,CAAC,QAAQ,CAAC,EAAC,kBAAkB,EAAE,IAAI,EAAC,CAAC,CAAC;oBAC9C,CAAC,EACD,gBAAgB,UAC7B,CACA;YACN,6BAAK,KAAK,EAAE,EAAC,SAAS,EAAE,gBAAgB,EAAE,UAAU,EAAE,CAAC,EAAC,IAEhD,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE;gBACzE,OAAO,CAAC,oBAAC,GAAG,IAAC,KAAK,EAAE,EAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAC,EAAE,KAAK,EAAC,MAAM,EAC5D,GAAG,EAAE,SAAS,KAAK,EAAE,EACrB,OAAO,EAAE,GAAG,EAAE;;wBACV,MAAM,aAAa,GAAG,MAAA,IAAI,CAAC,KAAK,CAAC,MAAM,0CAAG,SAAS,CAAC,CAAC;wBACrD,IAAI,aAAa,EAAE,CAAC;4BAChB,MAAM,KAAK,GAAG,aAAa,EAAE,CAAC;4BAC9B,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,QAAQ,mDAAG,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;wBAC9C,CAAC;oBACL,CAAC,IACT,SAAS,CAAO,CAAC,CAAC;YAC3B,CAAC,CAAC,CAEJ,CACJ,CACT,CAAA;IACL,CAAC;IAEO,kBAAkB;QACtB,MAAM,KAeF,IAAI,CAAC,KAAK,EAfR,EACF,SAAS,EACT,OAAO,EACP,QAAQ,EACR,KAAK,EACL,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,KAAK,EACL,WAAW,EACX,OAAO,EACP,YAAY,EACZ,sBAAsB,EACtB,oBAAoB,OAEV,EADP,KAAK,cAdN,iMAeL,CAAa,CAAC;QACf,OAAO,CACH;YACI,6BAAK,KAAK,EAAE,EAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAC;gBACjC,oBAAC,aAAa,oBACN,KAAK,IACT,KAAK,EAAE,EAAC,QAAQ,EAAE,CAAC,EAAC,EACpB,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;;wBAChB,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,QAAQ,mDAAG,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBACrD,CAAC,IACH;gBACD,CAAC,OAAO;oBACL,8BAAM,KAAK,EAAE,EAAC,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,SAAS,EAAE,QAAQ,EAAC,IAAG,QAAQ,CAAQ;gBAElG,oBAAC,aAAa,oBACN,KAAK,IACT,KAAK,EAAE,EAAC,QAAQ,EAAE,CAAC,EAAC,EACpB,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;;wBAChB,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,QAAQ,mDAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;oBACvD,CAAC,IACH,CACA;YACN,oBAAC,2BAA2B,IACxB,OAAO,EAAE,OAAO,EAChB,qBAAqB,EAAE,IAAI,CAAC,EAAE;oBAC1B,IAAI,IAAW,CAAC;oBAChB,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;wBACvB,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;wBAC9D,IAAI,GAAG,KAAK,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;oBAC1D,CAAC;yBAAM,CAAC;wBACJ,IAAI,GAAG,KAAK,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBACjC,CAAC;oBACD,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC5C,CAAC,EACD,wBAAwB,EAAE,UAAU,CAAC,EAAE;oBACnC,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;wBACvB,IAAI,EAAE,GAAU,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,aAAa,CAAC,CAAA;wBAC1F,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;oBAC5C,CAAC;gBACL,CAAC,EACD,WAAW,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE;;oBACpD,IAAI,SAAS,GAAG,MAAA,IAAI,CAAC,KAAK,CAAC,SAAS,mCAAI,IAAI,CAAC;oBAC7C,IAAI,OAAO,GAAG,MAAA,IAAI,CAAC,KAAK,CAAC,OAAO,mCAAI,IAAI,CAAC;oBAEzC,IAAI,UAAU,IAAI,SAAS,EAAE,CAAC;wBAC1B,IAAI,IAAI,KAAK,kBAAkB,CAAC,SAAS,EAAE,CAAC;4BACxC,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;wBAC7C,CAAC;6BAAM,IAAI,IAAI,KAAK,kBAAkB,CAAC,SAAS,EAAE,CAAC;4BAC/C,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;wBAClD,CAAC;oBACL,CAAC;oBAED,IAAI,QAAQ,IAAI,OAAO,EAAE,CAAC;wBACtB,IAAI,IAAI,KAAK,kBAAkB,CAAC,SAAS,EAAE,CAAC;4BACxC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;wBACzC,CAAC;6BAAM,IAAI,IAAI,KAAK,kBAAkB,CAAC,SAAS,EAAE,CAAC;4BAC/C,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;wBAC9C,CAAC;oBACL,CAAC;oBAED,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBACtC,CAAC,EACD,mBAAmB,EAAE,IAAI,CAAC,EAAE;oBACxB,IAAI,EAAS,CAAC;oBACd,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;wBACvB,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;wBAC9D,EAAE,GAAG,KAAK,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;oBACnF,CAAC;yBAAM,CAAC;wBACJ,EAAE,GAAG,KAAK,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;oBAC1D,CAAC;oBACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;gBAC5C,CAAC,GACH,CACA,CACT,CAAA;IACL,CAAC;IAED,WAAW;;QACP,OAAO,CACH,6BAAK,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM;YACtD,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,kBAAkB,EAAE;YAC/C,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,kBAAkB,CAAC,MAAM,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACxE,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,kBAAkB,CAAC,QAAQ,IAAI,IAAI,CAAC,kBAAkB,EAAE;YAC7E,6BAAK,KAAK,EAAE,EAAC,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAC;gBAC9F,iCACK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO;oBAChB,oBAAC,MAAM,IACH,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,kBAAkB,CAAC,QAAQ,EACxD,QAAQ,EAAE,OAAO,CAAC,EAAE;;4BAChB,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC;4BAC/E,IAAI,CAAC,QAAQ,CAAC,EAAC,IAAI,EAAE,IAAI,EAAC,CAAC,CAAC;4BAC5B,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,YAAY,mDAAG,IAAI,CAAC,CAAC;wBACpC,CAAC,EACD,eAAe,EAAE,IAAI,CAAC,eAAe,CAAC,EACtC,iBAAiB,EAAE,IAAI,CAAC,aAAa,CAAC,GACxC,CAEJ,EACL,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,sBAAsB;2BAAI,CACpC,CACJ,CACT,CAAC;IACN,CAAC;IAED,WAAW;QACP,MAAM,KAgBF,IAAI,CAAC,KAAK,EAhBR,EACF,SAAS,EACT,SAAS,EACT,OAAO,EACP,QAAQ,EACR,KAAK,EACL,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,KAAK,EACL,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,sBAAsB,EACtB,oBAAoB,OAEV,EADP,KAAK,cAfN,+MAgBL,CAAa,CAAC;QAEf,IAAI,eAAe,GAAG,gCAAgC,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,EAAE,EAAE,CAAC;QACxE,IAAI,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;YACtC,eAAe,IAAI,qBAAqB,CAAC;QAC7C,CAAC;QAED,OAAO,CACH,6BAAK,KAAK,kCAAM,KAAK,KAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,UAAU,KAAG,SAAS,EAAE,eAAe,EAC/E,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAC3B,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM;YAC1B,6BAAK,KAAK,EAAE,EAAC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,CAAC,EAAC;gBAC3E,oBAAC,aAAa,kBAAC,KAAK,EAAE,SAAS,IAAM,KAAK,IAC3B,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EACtC,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,KAAK,EACf,SAAS,EAAE,IAAI,EACf,KAAK,EAAE,EAAC,KAAK,EAAE,MAAM,EAAC,EACtB,UAAU,EAAE,EAAC,YAAY,EAAE,CAAC,EAAC,EAC7B,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;;wBAChB,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,QAAQ,mDAAG,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBACrD,CAAC,IACd;gBACF,8BAAM,KAAK,EAAE,EAAC,SAAS,EAAE,QAAQ,EAAC,IAAG,QAAQ,CAAQ;gBACrD,oBAAC,aAAa,kBAAC,KAAK,EAAE,OAAO,IAAM,KAAK,IACzB,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EACtC,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,KAAK,EACf,SAAS,EAAE,IAAI,EACf,KAAK,EAAE,EAAC,KAAK,EAAE,MAAM,EAAC,EACtB,UAAU,EAAE,EAAC,WAAW,EAAE,CAAC,EAAC,EAC5B,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;;wBAChB,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,QAAQ,mDAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;oBACvD,CAAC,IACd;gBACD,CAAC,SAAS,IAAI,CAAC,gBAAgB;oBAC5B,oBAAC,gBAAgB,IACb,KAAK,EAAE,EAAC,MAAM,EAAE,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,EAAC,EAClF,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;;4BACf,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;gCACpC,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;oCAC1B,IAAI,CAAC,UAAU,EAAE,CAAC;gCACtB,CAAC;qCAAM,CAAC;oCACJ,IAAI,EAAE,GAAG,QAAQ,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;oCAC5C,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;oCACzC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;oCAC/B,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,OAAO,kDAAI,CAAC;gCAC3B,CAAC;4BACL,CAAC;wBACL,CAAC,GACH,CAEJ,CACJ,CACT,CAAC;IACN,CAAC;IAED,MAAM;QACF,IAAI,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;QAC9B,CAAC;aAAM,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;QAC9B,CAAC;aAAM,CAAC;YACJ,OAAO,CACH,oBAAC,OAAO,IAAC,KAAK,EAAE,OAAO,EACd,GAAG,EAAE,mBAAmB,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,EACnD,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EACnD,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EACvB,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAC/B,iBAAiB,EAAE,EAAC,KAAK,EAAE,aAAa,EAAC,EACzC,YAAY,EAAE,CAAC,OAAO,EAAE,EAAE;;oBACtB,IAAI,OAAO,EAAE,CAAC;wBACV,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,OAAO,kDAAI,CAAC;oBAC3B,CAAC;yBAAM,CAAC;wBACJ,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,MAAM,kDAAI,CAAC;oBAC1B,CAAC;oBACD,IAAI,CAAC,QAAQ,CAAC,EAAC,YAAY,EAAE,OAAO,EAAC,CAAC,CAAC;gBAC3C,CAAC,EACD,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,IAC7B,IAAI,CAAC,WAAW,EAAE,CACb,CACb,CAAC;QACN,CAAC;IACL,CAAC;CACJ","sourcesContent":["import React, {HTMLAttributes} from \"react\";\r\nimport dayjs, {Dayjs} from \"dayjs\";\r\nimport {CalendarOutlined} from \"@ant-design/icons\";\r\nimport {Divider, Switch, Tag, Tooltip} from \"antd\";\r\nimport DateTimeInput from \"./dateTimeInput\";\r\nimport memoizeOne from \"memoize-one\";\r\nimport {TooltipPlacement} from \"antd/es/tooltip\";\r\nimport KeyboardUtils from \"../keyboard/keyboardUtils\";\r\nimport i18n from \"d2core/i18n/i18n\";\r\nimport DateRangeInputAdvancedPanel, {TimeShiftDirection} from \"./dateRangeInputAdvancedPanel\";\r\nimport {SizeType} from \"antd/lib/config-provider/SizeContext\";\r\n\r\nexport enum DateRangeInputMode {\r\n SIMPLE,\r\n ADVANCED,\r\n}\r\n\r\nexport interface DateRangeInputProps extends Omit<HTMLAttributes<HTMLDivElement>, \"onChange\"> {\r\n mask: string\r\n fromValue: Dayjs | null\r\n toValue: Dayjs | null\r\n onChange?: (fromValue: Dayjs | null, toValue: Dayjs | null) => void\r\n onInvalidValue?: (input: string) => void\r\n disabled?: boolean\r\n minDateTime?: Dayjs\r\n maxDateTime?: Dayjs\r\n // allows to set no (null) date by datepicker\r\n allowClear?: boolean\r\n ranges?: { [rangeName: string]: () => [Dayjs, Dayjs] }\r\n size?: SizeType;\r\n compact?: boolean\r\n\r\n hidePopup?: boolean\r\n renderAsCalendar?: boolean\r\n placement?: TooltipPlacement\r\n align?: {\r\n points?: [string, string];\r\n offset?: [number, number];\r\n targetOffset?: [number, number];\r\n overflow?: {\r\n adjustX?: boolean;\r\n adjustY?: boolean;\r\n };\r\n useCssRight?: boolean;\r\n useCssBottom?: boolean;\r\n useCssTransform?: boolean;\r\n }\r\n\r\n defaultMode?: DateRangeInputMode\r\n\r\n onModeChange?(mode: DateRangeInputMode): void\r\n\r\n onFocus?(): void\r\n\r\n onBlur?(): void\r\n\r\n confirmButtonsRenderer?(): React.ReactNode\r\n\r\n onPopupVisibleChange?(visible: boolean): void\r\n}\r\n\r\ninterface DateRangeInputState {\r\n valid: boolean\r\n selectionStartDate: Dayjs | null\r\n popupKeyIndex: number\r\n popupVisible: boolean\r\n\r\n mode?: DateRangeInputMode\r\n}\r\n\r\nexport default class DateRangeInput extends React.Component<DateRangeInputProps, DateRangeInputState> {\r\n constructor(props: Readonly<DateRangeInputProps>) {\r\n super(props);\r\n this.state = {\r\n valid: !!props.fromValue && props.fromValue.isValid() && !!props.toValue && props.toValue.isValid(),\r\n selectionStartDate: null,\r\n popupKeyIndex: 0,\r\n popupVisible: false,\r\n\r\n mode: props.compact ? undefined : props.defaultMode ?? DateRangeInputMode.SIMPLE,\r\n };\r\n this.getDefaultSelectedDateForFromPanel = memoizeOne(this.getDefaultSelectedDateForFromPanel.bind(this));\r\n }\r\n\r\n componentDidUpdate(_prevProps: Readonly<DateRangeInputProps>, prevState: Readonly<DateRangeInputState>) {\r\n if (prevState.popupVisible !== this.state.popupVisible && this.props.onPopupVisibleChange) {\r\n this.props.onPopupVisibleChange(this.state.popupVisible);\r\n }\r\n }\r\n\r\n getDefaultSelectedDateForFromPanel(fromDate: Dayjs | null, toDate: Dayjs | null): Dayjs {\r\n if (!!fromDate && !!toDate && fromDate.isSame(toDate, \"date\")) {\r\n return fromDate.clone().subtract(1, \"month\");\r\n } else {\r\n return fromDate ?? dayjs().startOf(\"day\").subtract(1, \"month\");\r\n }\r\n }\r\n\r\n private getFromValue(date: Dayjs) {\r\n return (this.props.fromValue?.clone() ?? dayjs().startOf(\"day\")).year(date.year()).month(date.month()).date(date.date());\r\n }\r\n\r\n private getToValue(date: Dayjs) {\r\n return (this.props.toValue?.clone() ?? dayjs().endOf(\"day\")).year(date.year()).month(date.month()).date(date.date());\r\n }\r\n\r\n closePopup() {\r\n // close tooltip\r\n this.setState({popupKeyIndex: this.state.popupKeyIndex + 1, popupVisible: false});\r\n this.props.onPopupVisibleChange?.(false);\r\n }\r\n\r\n private onChange(fromValue: Dayjs | null, toValue: Dayjs | null) {\r\n if (this.props.minDateTime && fromValue?.isBefore(this.props.minDateTime)) {\r\n fromValue = this.props.minDateTime;\r\n }\r\n if (this.props.maxDateTime && toValue?.isAfter(this.props.maxDateTime)) {\r\n toValue = this.props.maxDateTime;\r\n }\r\n this.props.onChange?.(fromValue, toValue);\r\n }\r\n\r\n private renderSimplePart() {\r\n const {\r\n fromValue,\r\n toValue,\r\n onChange,\r\n style,\r\n allowClear,\r\n renderAsCalendar,\r\n hidePopup,\r\n align,\r\n defaultMode,\r\n onModeChange,\r\n confirmButtonsRenderer,\r\n onPopupVisibleChange,\r\n ...props\r\n } = this.props;\r\n const markedDateInterval: [Dayjs, Dayjs] | undefined = this.props.fromValue && this.props.toValue ? [this.props.fromValue, this.props.toValue] : undefined;\r\n\r\n return (\r\n <div>\r\n <div style={{display: \"flex\"}}>\r\n <DateTimeInput value={fromValue} {...props}\r\n allowClear={allowClear}\r\n renderAsCalendar\r\n style={{width: \"100%\"}}\r\n onChange={(date) => {\r\n if (date) {\r\n const fromValue = this.getFromValue(date);\r\n const toValue = this.getToValue(date);\r\n this.props.onChange?.(fromValue, toValue);\r\n }\r\n }}\r\n defaultSelectedDate={this.getDefaultSelectedDateForFromPanel(fromValue, toValue)}\r\n markedDateInterval={markedDateInterval}\r\n onDateItemMouseDown={(date) => {\r\n this.setState({selectionStartDate: date});\r\n const dateFrom = this.getFromValue(date);\r\n const dateTo = this.getToValue(date);\r\n this.props.onChange?.(dateFrom, dateTo);\r\n }}\r\n onDateItemMouseOver={(date) => {\r\n if (KeyboardUtils.isMouseDown() && !!this.state.selectionStartDate) {\r\n let dateFrom: Dayjs;\r\n let dateTo: Dayjs;\r\n if (this.state.selectionStartDate.isBefore(date)) {\r\n dateFrom = this.state.selectionStartDate;\r\n dateTo = date;\r\n } else {\r\n dateFrom = date;\r\n dateTo = this.state.selectionStartDate;\r\n }\r\n dateFrom = this.getFromValue(dateFrom);\r\n dateTo = this.getToValue(dateTo);\r\n this.props.onChange?.(dateFrom, dateTo);\r\n }\r\n }}\r\n onDateItemMouseUp={(_date) => {\r\n this.setState({selectionStartDate: null});\r\n }}\r\n ignoreKeyStrokes\r\n />\r\n <Divider type=\"vertical\" style={{height: \"auto\"}}/>\r\n <DateTimeInput value={toValue} {...props}\r\n renderAsCalendar\r\n allowClear={allowClear}\r\n style={{width: \"100%\"}}\r\n onChange={(date) => {\r\n if (date) {\r\n const fromValue = this.getFromValue(date);\r\n const toValue = this.getToValue(date);\r\n this.props.onChange?.(fromValue, toValue);\r\n }\r\n }}\r\n markedDateInterval={markedDateInterval}\r\n onDateItemMouseDown={(date) => {\r\n this.setState({selectionStartDate: date});\r\n const dateFrom = this.getFromValue(date);\r\n const dateTo = this.getToValue(date);\r\n this.props.onChange?.(dateFrom, dateTo);\r\n }}\r\n onDateItemMouseOver={(date) => {\r\n if (KeyboardUtils.isMouseDown() && !!this.state.selectionStartDate) {\r\n let dateFrom: Dayjs;\r\n let dateTo: Dayjs;\r\n if (this.state.selectionStartDate.isBefore(date)) {\r\n dateFrom = this.state.selectionStartDate;\r\n dateTo = date;\r\n } else {\r\n dateFrom = date;\r\n dateTo = this.state.selectionStartDate;\r\n }\r\n dateFrom = this.getFromValue(dateFrom);\r\n dateTo = this.getToValue(dateTo);\r\n this.props.onChange?.(dateFrom, dateTo);\r\n }\r\n }}\r\n onDateItemMouseUp={(_date) => {\r\n this.setState({selectionStartDate: null});\r\n }}\r\n ignoreKeyStrokes\r\n />\r\n </div>\r\n <div style={{borderTop: \"1px solid #ddd\", paddingTop: 6}}>\r\n {\r\n this.props.ranges && Object.keys(this.props.ranges).map((rangeName, index) => {\r\n return (<Tag style={{userSelect: \"none\", cursor: \"pointer\"}} color=\"blue\"\r\n key={`range-${index}`}\r\n onClick={() => {\r\n const rangeFunction = this.props.ranges?.[rangeName];\r\n if (rangeFunction) {\r\n const range = rangeFunction();\r\n this.props.onChange?.(range[0], range[1]);\r\n }\r\n }}>\r\n {rangeName}</Tag>);\r\n })\r\n }\r\n </div>\r\n </div>\r\n )\r\n }\r\n\r\n private renderAdvancedPart() {\r\n const {\r\n fromValue,\r\n toValue,\r\n onChange,\r\n style,\r\n allowClear,\r\n renderAsCalendar,\r\n hidePopup,\r\n align,\r\n defaultMode,\r\n compact,\r\n onModeChange,\r\n confirmButtonsRenderer,\r\n onPopupVisibleChange,\r\n ...props\r\n } = this.props;\r\n return (\r\n <div>\r\n <div style={{display: \"flex\", gap: 8}}>\r\n <DateTimeInput\r\n {...props}\r\n style={{flexGrow: 1}}\r\n value={fromValue}\r\n onChange={(value) => {\r\n this.props.onChange?.(value, this.props.toValue);\r\n }}\r\n />\r\n {!compact &&\r\n <span style={{margin: 4, color: \"rgba(0, 0, 0, 0.65)\", textAlign: \"center\"}}>{\"\\u27F7\"}</span>\r\n }\r\n <DateTimeInput\r\n {...props}\r\n style={{flexGrow: 1}}\r\n value={toValue}\r\n onChange={(value) => {\r\n this.props.onChange?.(this.props.fromValue, value);\r\n }}\r\n />\r\n </div>\r\n <DateRangeInputAdvancedPanel\r\n compact={compact}\r\n onBeginIntervalChange={unit => {\r\n let from: Dayjs;\r\n if (unit === \"15minutes\") {\r\n const roundedMinutes = Math.floor(dayjs().minute() / 15) * 15;\r\n from = dayjs().startOf(\"hour\").minute(roundedMinutes);\r\n } else {\r\n from = dayjs().startOf(unit);\r\n }\r\n this.onChange(from, this.props.toValue);\r\n }}\r\n onIntervalDurationChange={unitOfTime => {\r\n if (this.props.fromValue) {\r\n let to: Dayjs = this.props.fromValue.clone().add(1, unitOfTime).subtract(1, \"millisecond\")\r\n this.onChange(this.props.fromValue, to);\r\n }\r\n }}\r\n onTimeShift={(shiftBegin, shiftEnd, unitOfTime, type) => {\r\n let fromValue = this.props.fromValue ?? null;\r\n let toValue = this.props.toValue ?? null;\r\n\r\n if (shiftBegin && fromValue) {\r\n if (type === TimeShiftDirection.INCREMENT) {\r\n fromValue = fromValue.add(1, unitOfTime);\r\n } else if (type === TimeShiftDirection.DECREMENT) {\r\n fromValue = fromValue.subtract(1, unitOfTime);\r\n }\r\n }\r\n\r\n if (shiftEnd && toValue) {\r\n if (type === TimeShiftDirection.INCREMENT) {\r\n toValue = toValue.add(1, unitOfTime);\r\n } else if (type === TimeShiftDirection.DECREMENT) {\r\n toValue = toValue.subtract(1, unitOfTime);\r\n }\r\n }\r\n\r\n this.onChange(fromValue, toValue);\r\n }}\r\n onEndIntervalChange={unit => {\r\n let to: Dayjs;\r\n if (unit === \"15minutes\") {\r\n const roundedMinutes = Math.floor(dayjs().minute() / 15) * 15;\r\n to = dayjs().startOf(\"hour\").minute(roundedMinutes).subtract(1, \"millisecond\");\r\n } else {\r\n to = dayjs().startOf(unit).subtract(1, \"millisecond\");\r\n }\r\n this.onChange(this.props.fromValue, to);\r\n }}\r\n />\r\n </div>\r\n )\r\n }\r\n\r\n renderPopup(): React.ReactElement {\r\n return (\r\n <div onFocus={this.props.onFocus} onBlur={this.props.onBlur}>\r\n {this.props.compact && this.renderAdvancedPart()}\r\n {this.state.mode === DateRangeInputMode.SIMPLE && this.renderSimplePart()}\r\n {this.state.mode === DateRangeInputMode.ADVANCED && this.renderAdvancedPart()}\r\n <div style={{height: 28, display: \"flex\", justifyContent: \"space-between\", alignItems: \"flex-end\"}}>\r\n <div>\r\n {!this.props.compact &&\r\n <Switch\r\n checked={this.state.mode === DateRangeInputMode.ADVANCED}\r\n onChange={checked => {\r\n const mode = checked ? DateRangeInputMode.ADVANCED : DateRangeInputMode.SIMPLE;\r\n this.setState({mode: mode});\r\n this.props.onModeChange?.(mode);\r\n }}\r\n checkedChildren={i18n(\"Advanced Mode\")}\r\n unCheckedChildren={i18n(\"Simple Mode\")}\r\n />\r\n }\r\n </div>\r\n {this.props.confirmButtonsRenderer?.()}\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n renderInput() {\r\n const {\r\n className,\r\n fromValue,\r\n toValue,\r\n onChange,\r\n style,\r\n allowClear,\r\n renderAsCalendar,\r\n hidePopup,\r\n align,\r\n disabled,\r\n defaultMode,\r\n onModeChange,\r\n confirmButtonsRenderer,\r\n onPopupVisibleChange,\r\n ...props\r\n } = this.props;\r\n\r\n let customClassName = `ant-input ant-input-outlined ${className ?? \"\"}`;\r\n if (disabled || this.state.popupVisible) {\r\n customClassName += \" ant-input-disabled\";\r\n }\r\n\r\n return (\r\n <div style={{...style, padding: 0, position: \"relative\"}} className={customClassName}\r\n onFocus={this.props.onFocus}\r\n onBlur={this.props.onBlur}>\r\n <div style={{display: \"flex\", justifyContent: \"space-between\", paddingRight: 8}}>\r\n <DateTimeInput value={fromValue} {...props}\r\n disabled={disabled}\r\n inputDisabled={this.state.popupVisible}\r\n allowClear={allowClear}\r\n bordered={false}\r\n hidePopup={true}\r\n style={{width: \"auto\"}}\r\n inputStyle={{paddingRight: 2}}\r\n onChange={(value) => {\r\n this.props.onChange?.(value, this.props.toValue);\r\n }}\r\n />\r\n <span style={{alignSelf: \"center\"}}>{\"\\u27F7\"}</span>\r\n <DateTimeInput value={toValue} {...props}\r\n disabled={disabled}\r\n inputDisabled={this.state.popupVisible}\r\n allowClear={allowClear}\r\n bordered={false}\r\n hidePopup={true}\r\n style={{width: \"auto\"}}\r\n inputStyle={{paddingLeft: 2}}\r\n onChange={(value) => {\r\n this.props.onChange?.(this.props.fromValue, value);\r\n }}\r\n />\r\n {!hidePopup && !renderAsCalendar &&\r\n <CalendarOutlined\r\n style={{cursor: (disabled || this.state.popupVisible) ? \"not-allowed\" : \"pointer\"}}\r\n onClick={(event) => {\r\n if (!disabled && document.createEvent) {\r\n if (this.state.popupVisible) {\r\n this.closePopup();\r\n } else {\r\n var ev = document.createEvent('HTMLEvents');\r\n ev.initEvent('contextmenu', true, false);\r\n event.target.dispatchEvent(ev);\r\n this.props.onFocus?.();\r\n }\r\n }\r\n }}\r\n />\r\n }\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n render(): any {\r\n if (this.props.renderAsCalendar) {\r\n return this.renderPopup();\r\n } else if (this.props.hidePopup) {\r\n return this.renderInput();\r\n } else {\r\n return (\r\n <Tooltip color={\"white\"}\r\n key={\"date-range-popup-\" + this.state.popupKeyIndex}\r\n trigger={this.props.disabled ? [] : [\"contextMenu\"]}\r\n align={this.props.align}\r\n placement={this.props.placement}\r\n overlayInnerStyle={{width: \"fit-content\"}}\r\n onOpenChange={(visible) => {\r\n if (visible) {\r\n this.props.onFocus?.();\r\n } else {\r\n this.props.onBlur?.();\r\n }\r\n this.setState({popupVisible: visible});\r\n }}\r\n title={this.renderPopup()}>\r\n {this.renderInput()}\r\n </Tooltip>\r\n );\r\n }\r\n }\r\n}"]}
@@ -6,8 +6,9 @@ export declare enum TimeShiftDirection {
6
6
  DECREMENT = 1
7
7
  }
8
8
  interface DateRangeInputAdvancedPanelProps {
9
+ compact?: boolean;
9
10
  onBeginIntervalChange(unit: OpUnitType | "15minutes"): void;
10
- onIntervalDurationChange(unitOfTime: DurationUnitType | "4years"): void;
11
+ onIntervalDurationChange(unitOfTime: DurationUnitType): void;
11
12
  onTimeShift(shiftBegin: boolean, shiftEnd: boolean, unitOfTime: DurationUnitType, direction: TimeShiftDirection): void;
12
13
  onEndIntervalChange(unit: OpUnitType | "15minutes"): void;
13
14
  }
@@ -20,7 +21,7 @@ export default class DateRangeInputAdvancedPanel extends React.Component<DateRan
20
21
  constructor(props: Readonly<DateRangeInputAdvancedPanelProps>);
21
22
  private renderSectionTitle;
22
23
  private renderButton;
23
- private renderTimeShiftItem;
24
+ private renderButtonWithTimeShift;
24
25
  private renderTimeShiftIcon;
25
26
  render(): React.JSX.Element;
26
27
  }
@@ -1,5 +1,5 @@
1
1
  import React from "react";
2
- import { Button, Col, Divider, Row, Space } from "antd";
2
+ import { Button, Divider, Space } from "antd";
3
3
  import i18n from "d2core/i18n/i18n";
4
4
  import Icon from "@ant-design/icons/es/components/Icon";
5
5
  export var TimeShiftDirection;
@@ -16,25 +16,18 @@ export default class DateRangeInputAdvancedPanel extends React.Component {
16
16
  timeShiftEnd: false,
17
17
  };
18
18
  }
19
- renderSectionTitle(title, style) {
20
- return (React.createElement("span", { style: Object.assign({ display: "block", fontWeight: "bold", textAlign: "center", marginBottom: 4 }, style) }, `${title}:`));
19
+ renderSectionTitle(title) {
20
+ return (React.createElement("span", { style: { display: "block", fontWeight: "bold", textAlign: "center", marginBottom: 4 } }, title));
21
21
  }
22
22
  renderButton(title, callback) {
23
23
  return (React.createElement(Button, { size: "small", block: true, onClick: callback }, title));
24
24
  }
25
- renderTimeShiftItem(title, callback) {
26
- const disabled = !this.state.timeShiftBegin && !this.state.timeShiftEnd && !this.state.timeShiftBoth;
25
+ renderButtonWithTimeShift(title, onClick, onTimeShift) {
26
+ const timeShiftDisabled = !this.state.timeShiftBegin && !this.state.timeShiftEnd && !this.state.timeShiftBoth;
27
27
  return (React.createElement(Space.Compact, { block: true, size: "small" },
28
- React.createElement(Button, { style: { width: "22%" }, disabled: disabled, icon: "-", onClick: () => callback(TimeShiftDirection.DECREMENT) }),
29
- React.createElement("span", { style: {
30
- width: "56%",
31
- color: "rgba(0, 0, 0, 0.88)",
32
- borderTop: "1px solid #d9d9d9",
33
- borderBottom: "1px solid #d9d9d9",
34
- textAlign: "center",
35
- cursor: "default",
36
- } }, title),
37
- React.createElement(Button, { style: { width: "22%" }, disabled: disabled, icon: "+", onClick: () => callback(TimeShiftDirection.INCREMENT) })));
28
+ React.createElement(Button, { disabled: timeShiftDisabled, icon: "-", onClick: () => onTimeShift(TimeShiftDirection.DECREMENT) }),
29
+ React.createElement(Button, { size: "small", block: true, onClick: onClick }, title),
30
+ React.createElement(Button, { disabled: timeShiftDisabled, icon: "+", onClick: () => onTimeShift(TimeShiftDirection.INCREMENT) })));
38
31
  }
39
32
  renderTimeShiftIcon(shiftType) {
40
33
  let checked = false;
@@ -86,46 +79,31 @@ export default class DateRangeInputAdvancedPanel extends React.Component {
86
79
  const timeShiftEnd = this.state.timeShiftEnd || this.state.timeShiftBoth;
87
80
  return (React.createElement("div", { style: { color: "rgba(0, 0, 0, 0.65)" } },
88
81
  React.createElement(Divider, { style: { margin: "8px 0px 6px" } }),
89
- React.createElement(Row, null,
90
- React.createElement(Col, { span: 8, style: { padding: "0px 16px 0px" } },
91
- React.createElement(Space, { direction: "vertical" },
92
- this.renderSectionTitle(i18n("Interval Begin")),
93
- this.renderButton(i18n("Now"), () => this.props.onBeginIntervalChange("15minutes")),
94
- this.renderButton(i18n("Today"), () => this.props.onBeginIntervalChange("day")),
95
- this.renderButton(i18n("This Week"), () => this.props.onBeginIntervalChange("week")),
96
- this.renderButton(i18n("This Month"), () => this.props.onBeginIntervalChange("month")),
97
- this.renderButton(i18n("This Year"), () => this.props.onBeginIntervalChange("year")))),
98
- React.createElement(Col, { span: 1 },
99
- React.createElement(Divider, { type: "vertical", style: { height: "100%" } })),
100
- React.createElement(Col, { span: 7, style: { padding: "0px 14px 0px" } },
101
- React.createElement(Space, { direction: "vertical" },
102
- this.renderSectionTitle(i18n("Interval Duration")),
103
- this.renderButton(i18n("Hour"), () => this.props.onIntervalDurationChange("hour")),
104
- this.renderButton(i18n("Day"), () => this.props.onIntervalDurationChange("day")),
105
- this.renderButton(i18n("Week"), () => this.props.onIntervalDurationChange("week")),
106
- this.renderButton(i18n("Month"), () => this.props.onIntervalDurationChange("month")),
107
- this.renderButton(i18n("Year"), () => this.props.onIntervalDurationChange("year")),
108
- this.renderButton(`4 ${i18n("Years")}`, () => this.props.onIntervalDurationChange("4years")))),
109
- React.createElement(Col, { span: 1 },
110
- React.createElement(Divider, { type: "vertical", style: { height: "100%" } })),
111
- React.createElement(Col, { span: 7, style: { padding: "0px 16px 0px" } },
112
- React.createElement(Space, { direction: "vertical" },
113
- this.renderSectionTitle(i18n("Time Shift")),
114
- React.createElement("div", { style: { display: "flex", justifyContent: "center", alignItems: "center" } },
115
- this.renderTimeShiftIcon("begin"),
116
- this.renderTimeShiftIcon("both"),
117
- this.renderTimeShiftIcon("end")),
118
- this.renderTimeShiftItem(i18n("Hour"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, "hour", direction)),
119
- this.renderTimeShiftItem(i18n("Day"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, "day", direction)),
120
- this.renderTimeShiftItem(i18n("Week"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, "week", direction)),
121
- this.renderTimeShiftItem(i18n("Month"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, "month", direction)),
122
- this.renderTimeShiftItem(i18n("Year"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, "year", direction))))),
123
- React.createElement(Divider, { style: { margin: "6px 0px 10px" } }),
124
- React.createElement("div", { style: { display: "flex" } },
125
- React.createElement("div", { style: { width: 192 } }, this.renderSectionTitle(i18n("Interval End"), { marginBottom: 0 })),
126
- React.createElement("div", { style: { marginLeft: 18, width: 93 } }, this.renderButton("15 min", () => this.props.onEndIntervalChange("15minutes"))),
127
- React.createElement("div", { style: { marginLeft: 8, width: 93 } }, this.renderButton(i18n("Hour"), () => this.props.onEndIntervalChange("hour"))),
128
- React.createElement("div", { style: { marginLeft: 8, width: 92 } }, this.renderButton(i18n("Day"), () => this.props.onEndIntervalChange("day"))))));
82
+ React.createElement(Space, { style: { marginBottom: 8 }, size: 24, align: "start" },
83
+ React.createElement(Space, { style: { width: "max-content" }, direction: "vertical" },
84
+ this.renderSectionTitle(i18n("Interval Begin")),
85
+ this.renderButton(i18n("Now"), () => this.props.onBeginIntervalChange("15minutes")),
86
+ this.renderButton(i18n("Today"), () => this.props.onBeginIntervalChange("day")),
87
+ this.renderButton(i18n("Week"), () => this.props.onBeginIntervalChange("week")),
88
+ this.renderButton(i18n("Month"), () => this.props.onBeginIntervalChange("month")),
89
+ this.renderButton(i18n("Year"), () => this.props.onBeginIntervalChange("year"))),
90
+ React.createElement(Space, { style: { width: "max-content" }, direction: "vertical" },
91
+ this.renderSectionTitle(i18n("Duration and Time Shift")),
92
+ React.createElement("div", { style: { display: "flex", justifyContent: "center", alignItems: "center" } },
93
+ this.renderTimeShiftIcon("begin"),
94
+ this.renderTimeShiftIcon("both"),
95
+ this.renderTimeShiftIcon("end")),
96
+ this.renderButtonWithTimeShift(i18n("Hour"), () => this.props.onIntervalDurationChange("hour"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, "hour", direction)),
97
+ this.renderButtonWithTimeShift(i18n("Day"), () => this.props.onIntervalDurationChange("day"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, "day", direction)),
98
+ this.renderButtonWithTimeShift(i18n("Week"), () => this.props.onIntervalDurationChange("week"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, "week", direction)),
99
+ this.renderButtonWithTimeShift(i18n("Month"), () => this.props.onIntervalDurationChange("month"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, "month", direction)),
100
+ this.renderButtonWithTimeShift(i18n("Year"), () => this.props.onIntervalDurationChange("year"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, "year", direction))),
101
+ !this.props.compact &&
102
+ React.createElement(Space, { style: { width: "max-content" }, direction: "vertical" },
103
+ this.renderSectionTitle(i18n("Interval End")),
104
+ this.renderButton("15 min", () => this.props.onEndIntervalChange("15minutes")),
105
+ this.renderButton(i18n("Hour"), () => this.props.onEndIntervalChange("hour")),
106
+ this.renderButton(i18n("Day"), () => this.props.onEndIntervalChange("day"))))));
129
107
  }
130
108
  }
131
109
  //# sourceMappingURL=dateRangeInputAdvancedPanel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dateRangeInputAdvancedPanel.js","sourceRoot":"","sources":["../../../../components/date/dateRangeInputAdvancedPanel.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from \"react\";\r\nimport {Button, Col, Divider, Row, Space} from \"antd\";\r\nimport i18n from \"d2core/i18n/i18n\";\r\nimport {OpUnitType} from \"dayjs\";\r\nimport {DurationUnitType} from \"d2core/dayjs/duration\";\r\nimport Icon from \"@ant-design/icons/es/components/Icon\";\r\n\r\nexport enum TimeShiftDirection {\r\n INCREMENT,\r\n DECREMENT,\r\n}\r\n\r\ninterface DateRangeInputAdvancedPanelProps {\r\n onBeginIntervalChange(unit: OpUnitType | \"15minutes\"): void\r\n\r\n onIntervalDurationChange(unitOfTime: DurationUnitType | \"4years\"): void\r\n\r\n onTimeShift(shiftBegin: boolean, shiftEnd: boolean, unitOfTime: DurationUnitType, direction: TimeShiftDirection): void\r\n\r\n onEndIntervalChange(unit: OpUnitType | \"15minutes\"): void\r\n}\r\n\r\ninterface DateRangeInputAdvancedPanelState {\r\n timeShiftBegin: boolean\r\n timeShiftBoth: boolean\r\n timeShiftEnd: boolean\r\n}\r\n\r\nexport default class DateRangeInputAdvancedPanel extends React.Component<DateRangeInputAdvancedPanelProps, DateRangeInputAdvancedPanelState> {\r\n constructor(props: Readonly<DateRangeInputAdvancedPanelProps>) {\r\n super(props);\r\n\r\n this.state = {\r\n timeShiftBegin: false,\r\n timeShiftBoth: true,\r\n timeShiftEnd: false,\r\n }\r\n }\r\n\r\n private renderSectionTitle(title: React.ReactNode, style?: React.CSSProperties) {\r\n return (\r\n <span style={\r\n Object.assign({display: \"block\", fontWeight: \"bold\", textAlign: \"center\", marginBottom: 4}, style)}\r\n >\r\n {`${title}:`}\r\n </span>\r\n );\r\n }\r\n\r\n private renderButton(title: React.ReactNode, callback: () => void) {\r\n return (\r\n <Button\r\n size=\"small\"\r\n block\r\n onClick={callback}\r\n >\r\n {title}\r\n </Button>\r\n );\r\n }\r\n\r\n private renderTimeShiftItem(title: React.ReactNode, callback: (direction: TimeShiftDirection) => void) {\r\n const disabled = !this.state.timeShiftBegin && !this.state.timeShiftEnd && !this.state.timeShiftBoth;\r\n\r\n return (\r\n <Space.Compact block size=\"small\">\r\n <Button\r\n style={{width: \"22%\"}}\r\n disabled={disabled}\r\n icon=\"-\"\r\n onClick={() => callback(TimeShiftDirection.DECREMENT)}\r\n />\r\n <span\r\n style={{\r\n width: \"56%\",\r\n color: \"rgba(0, 0, 0, 0.88)\",\r\n borderTop: \"1px solid #d9d9d9\",\r\n borderBottom: \"1px solid #d9d9d9\",\r\n textAlign: \"center\",\r\n cursor: \"default\",\r\n }}\r\n >\r\n {title}\r\n </span>\r\n <Button\r\n style={{width: \"22%\"}}\r\n disabled={disabled}\r\n icon=\"+\"\r\n onClick={() => callback(TimeShiftDirection.INCREMENT)}\r\n />\r\n </Space.Compact>\r\n );\r\n }\r\n\r\n private renderTimeShiftIcon(shiftType: \"begin\" | \"both\" | \"end\") {\r\n let checked = false;\r\n if (shiftType === \"begin\") {\r\n checked = this.state.timeShiftBegin;\r\n } else if (shiftType === \"both\") {\r\n checked = this.state.timeShiftBoth;\r\n } else if (shiftType === \"end\") {\r\n checked = this.state.timeShiftEnd;\r\n }\r\n\r\n return (\r\n <Icon component={() =>\r\n <svg\r\n className=\"icon\"\r\n viewBox=\"64 64 896 896\"\r\n version=\"1.1\"\r\n width={40}\r\n height={40}\r\n cursor=\"pointer\"\r\n color={checked ? \"#2998ff\" : \"rgba(0, 0, 0, 0.65)\"}\r\n onClick={() => {\r\n if (shiftType === \"begin\") {\r\n this.setState({\r\n timeShiftBegin: !this.state.timeShiftBegin,\r\n timeShiftBoth: false,\r\n timeShiftEnd: false\r\n });\r\n } else if (shiftType === \"both\") {\r\n this.setState({\r\n timeShiftBegin: false,\r\n timeShiftBoth: !this.state.timeShiftBoth,\r\n timeShiftEnd: false\r\n });\r\n } else if (shiftType === \"end\") {\r\n this.setState({\r\n timeShiftBegin: false,\r\n timeShiftBoth: false,\r\n timeShiftEnd: !this.state.timeShiftEnd\r\n });\r\n }\r\n }}\r\n >\r\n <path\r\n d=\"m 880.43128,184.00001 h -168 v -64 c 0,-4.4 -3.6,-8 -8,-8 h -56 c -4.4,0 -8,3.6 -8,8 v 64 h -256 v -64 c 0,-4.4 -3.6,-8 -8,-8 h -56 c -4.4,0 -8,3.6 -8,8 v 64 h -168 c -17.7,0 -32,14.3 -32,32 v 664 c 0,17.7 14.3,32 32,32 h 736 c 17.7,0 32,-14.3 32,-32 v -664 c 0,-17.7 -14.3,-32 -32,-32 z m -40,656 h -656 v -380 h 656 z m -656,-448 v -136 h 128 v 48 c 0,4.4 3.6,8 8,8 h 56 c 4.4,0 8,-3.6 8,-8 v -48 h 256 v 48 c 0,4.4 3.6,8 8,8 h 56 c 4.4,0 8,-3.6 8,-8 v -48 h 128 v 136 z\"\r\n id=\"path2231\"\r\n style={{fill: \"currentcolor\"}}\r\n />\r\n {[\"begin\", \"end\"].includes(shiftType) &&\r\n <g id=\"g41\">\r\n <g id=\"path2822\"/>\r\n <g id=\"path2824\"/>\r\n <g id=\"path2826\"\r\n transform={shiftType === \"end\" ? \"rotate(180,512.9334,646.24561)\" : \"unset\"}>\r\n <path\r\n id=\"path50\"\r\n style={{fill: \"currentcolor\"}}\r\n d=\"m 358.80859,510.14062 a 34.41795,34.41795 0 0 0 -23.58789,9.24219 L 226.40625,620.82422 a 34.41795,34.41795 0 0 0 -1.70508,48.64453 34.41795,34.41795 0 0 0 48.64453,1.70703 l 108.8125,-101.4414 a 34.41795,34.41795 0 0 0 1.70703,-48.64454 34.41795,34.41795 0 0 0 -25.05664,-10.94922 z M 249.87565,645.99998 358.68957,544.55871 M 249.7207,611.58203 a 34.41795,34.41795 0 0 0 -24.90625,10.82813 34.41795,34.41795 0 0 0 1.47071,48.65234 l 108.29492,101.93164 a 34.41795,34.41795 0 0 0 48.65234,-1.4707 34.41795,34.41795 0 0 0 -1.47265,-48.65235 L 273.46484,620.9375 a 34.41795,34.41795 0 0 0 -23.74414,-9.35547 z m 0.15495,34.41795 108.29422,101.93273 M 264.8125,610.01953 A 35.98045,35.98045 0 0 0 228.83203,646 35.98045,35.98045 0 0 0 264.8125,681.98047 H 550.48633 A 35.98045,35.98045 0 0 0 586.4668,646 35.98045,35.98045 0 0 0 550.48633,610.01953 Z m 285.67298,35.98045 h -285.6727\"/>\r\n </g>\r\n </g>\r\n }\r\n {shiftType === \"both\" &&\r\n <g id=\"g65\" transform=\"rotate(180,512.9334,646.0254)\">\r\n <path\r\n id=\"path63\"\r\n style={{fill: \"currentcolor\"}}\r\n d=\"m 358.80859,510.14062 a 34.41795,34.41795 0 0 0 -23.58789,9.24219 L 226.40625,620.82422 a 34.41795,34.41795 0 0 0 -1.70508,48.64453 34.41795,34.41795 0 0 0 48.64453,1.70703 l 108.8125,-101.4414 a 34.41795,34.41795 0 0 0 1.70703,-48.64454 34.41795,34.41795 0 0 0 -25.05664,-10.94922 z M 249.87565,645.99998 358.68957,544.55871 M 249.7207,611.58203 a 34.41795,34.41795 0 0 0 -24.90625,10.82813 34.41795,34.41795 0 0 0 1.47071,48.65234 l 108.29492,101.93164 a 34.41795,34.41795 0 0 0 48.65234,-1.4707 34.41795,34.41795 0 0 0 -1.47265,-48.65235 L 273.46484,620.9375 a 34.41795,34.41795 0 0 0 -23.74414,-9.35547 z m 0.15495,34.41795 108.29422,101.93273 M 264.8125,610.01953 A 35.98045,35.98045 0 0 0 228.83203,646 35.98045,35.98045 0 0 0 264.8125,681.98047 H 550.48633 A 35.98045,35.98045 0 0 0 586.4668,646 35.98045,35.98045 0 0 0 550.48633,610.01953 Z m 285.67298,35.98045 h -285.6727 m 402.24543,135.9102 a -34.41795,-34.41795 0 0 0 23.58789,-9.24219 L 799.46055,671.22658 a -34.41795,-34.41795 0 0 0 1.70508,-48.64453 -34.41795,-34.41795 0 0 0 -48.64453,-1.70703 l -108.8125,101.4414 a -34.41795,-34.41795 0 0 0 -1.70703,48.64454 -34.41795,-34.41795 0 0 0 25.05664,10.94922 z M 775.99115,646.05082 667.17723,747.49209 M 776.1461,680.46877 a -34.41795,-34.41795 0 0 0 24.90625,-10.82813 -34.41795,-34.41795 0 0 0 -1.47071,-48.65234 L 691.28672,519.05666 a -34.41795,-34.41795 0 0 0 -48.65234,1.4707 -34.41795,-34.41795 0 0 0 1.47265,48.65235 L 752.40196,671.1133 a -34.41795,-34.41795 0 0 0 23.74414,9.35547 z M 775.99115,646.05082 667.69693,544.11809 M 761.0543,682.03127 A -35.98045,-35.98045 0 0 0 797.03477,646.0508 -35.98045,-35.98045 0 0 0 761.0543,610.07033 H 475.38047 A -35.98045,-35.98045 0 0 0 439.4,646.0508 -35.98045,-35.98045 0 0 0 475.38047,682.03127 Z M 475.38132,646.05082 h 285.6727\"/>\r\n </g>\r\n }\r\n </svg>\r\n }/>\r\n );\r\n }\r\n\r\n render() {\r\n const timeShiftBegin = this.state.timeShiftBegin || this.state.timeShiftBoth;\r\n const timeShiftEnd = this.state.timeShiftEnd || this.state.timeShiftBoth;\r\n\r\n return (\r\n <div style={{color: \"rgba(0, 0, 0, 0.65)\"}}>\r\n <Divider style={{margin: \"8px 0px 6px\"}}/>\r\n <Row>\r\n <Col span={8} style={{padding: \"0px 16px 0px\"}}>\r\n <Space direction=\"vertical\">\r\n {this.renderSectionTitle(i18n(\"Interval Begin\"))}\r\n {this.renderButton(i18n(\"Now\"), () => this.props.onBeginIntervalChange(\"15minutes\"))}\r\n {this.renderButton(i18n(\"Today\"), () => this.props.onBeginIntervalChange(\"day\"))}\r\n {this.renderButton(i18n(\"This Week\"), () => this.props.onBeginIntervalChange(\"week\"))}\r\n {this.renderButton(i18n(\"This Month\"), () => this.props.onBeginIntervalChange(\"month\"))}\r\n {this.renderButton(i18n(\"This Year\"), () => this.props.onBeginIntervalChange(\"year\"))}\r\n </Space>\r\n </Col>\r\n <Col span={1}>\r\n <Divider type=\"vertical\" style={{height: \"100%\"}}/>\r\n </Col>\r\n <Col span={7} style={{padding: \"0px 14px 0px\"}}>\r\n <Space direction=\"vertical\">\r\n {this.renderSectionTitle(i18n(\"Interval Duration\"))}\r\n {this.renderButton(i18n(\"Hour\"), () => this.props.onIntervalDurationChange(\"hour\"))}\r\n {this.renderButton(i18n(\"Day\"), () => this.props.onIntervalDurationChange(\"day\"))}\r\n {this.renderButton(i18n(\"Week\"), () => this.props.onIntervalDurationChange(\"week\"))}\r\n {this.renderButton(i18n(\"Month\"), () => this.props.onIntervalDurationChange(\"month\"))}\r\n {this.renderButton(i18n(\"Year\"), () => this.props.onIntervalDurationChange(\"year\"))}\r\n {this.renderButton(`4 ${i18n(\"Years\")}`, () => this.props.onIntervalDurationChange(\"4years\"))}\r\n </Space>\r\n </Col>\r\n <Col span={1}>\r\n <Divider type=\"vertical\" style={{height: \"100%\"}}/>\r\n </Col>\r\n <Col span={7} style={{padding: \"0px 16px 0px\"}}>\r\n <Space direction=\"vertical\">\r\n {this.renderSectionTitle(i18n(\"Time Shift\"))}\r\n <div style={{display: \"flex\", justifyContent: \"center\", alignItems: \"center\"}}>\r\n {this.renderTimeShiftIcon(\"begin\")}\r\n {this.renderTimeShiftIcon(\"both\")}\r\n {this.renderTimeShiftIcon(\"end\")}\r\n </div>\r\n {this.renderTimeShiftItem(i18n(\"Hour\"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, \"hour\", direction))}\r\n {this.renderTimeShiftItem(i18n(\"Day\"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, \"day\", direction))}\r\n {this.renderTimeShiftItem(i18n(\"Week\"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, \"week\", direction))}\r\n {this.renderTimeShiftItem(i18n(\"Month\"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, \"month\", direction))}\r\n {this.renderTimeShiftItem(i18n(\"Year\"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, \"year\", direction))}\r\n </Space>\r\n </Col>\r\n </Row>\r\n <Divider style={{margin: \"6px 0px 10px\"}}/>\r\n <div style={{display: \"flex\"}}>\r\n <div style={{width: 192}}>\r\n {this.renderSectionTitle(i18n(\"Interval End\"), {marginBottom: 0})}\r\n </div>\r\n <div style={{marginLeft: 18, width: 93}}>\r\n {this.renderButton(\"15 min\", () => this.props.onEndIntervalChange(\"15minutes\"))}\r\n </div>\r\n <div style={{marginLeft: 8, width: 93}}>\r\n {this.renderButton(i18n(\"Hour\"), () => this.props.onEndIntervalChange(\"hour\"))}\r\n </div>\r\n <div style={{marginLeft: 8, width: 92}}>\r\n {this.renderButton(i18n(\"Day\"), () => this.props.onEndIntervalChange(\"day\"))}\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n}"]}
1
+ {"version":3,"file":"dateRangeInputAdvancedPanel.js","sourceRoot":"","sources":["../../../../components/date/dateRangeInputAdvancedPanel.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from \"react\";\r\nimport {Button, Divider, Space} from \"antd\";\r\nimport i18n from \"d2core/i18n/i18n\";\r\nimport {OpUnitType} from \"dayjs\";\r\nimport {DurationUnitType} from \"d2core/dayjs/duration\";\r\nimport Icon from \"@ant-design/icons/es/components/Icon\";\r\n\r\nexport enum TimeShiftDirection {\r\n INCREMENT,\r\n DECREMENT,\r\n}\r\n\r\ninterface DateRangeInputAdvancedPanelProps {\r\n compact?: boolean\r\n\r\n onBeginIntervalChange(unit: OpUnitType | \"15minutes\"): void\r\n\r\n onIntervalDurationChange(unitOfTime: DurationUnitType): void\r\n\r\n onTimeShift(shiftBegin: boolean, shiftEnd: boolean, unitOfTime: DurationUnitType, direction: TimeShiftDirection): void\r\n\r\n onEndIntervalChange(unit: OpUnitType | \"15minutes\"): void\r\n}\r\n\r\ninterface DateRangeInputAdvancedPanelState {\r\n timeShiftBegin: boolean\r\n timeShiftBoth: boolean\r\n timeShiftEnd: boolean\r\n}\r\n\r\nexport default class DateRangeInputAdvancedPanel extends React.Component<DateRangeInputAdvancedPanelProps, DateRangeInputAdvancedPanelState> {\r\n constructor(props: Readonly<DateRangeInputAdvancedPanelProps>) {\r\n super(props);\r\n\r\n this.state = {\r\n timeShiftBegin: false,\r\n timeShiftBoth: true,\r\n timeShiftEnd: false,\r\n }\r\n }\r\n\r\n private renderSectionTitle(title: React.ReactNode) {\r\n return (\r\n <span style={{display: \"block\", fontWeight: \"bold\", textAlign: \"center\", marginBottom: 4}}>\r\n {title}\r\n </span>\r\n );\r\n }\r\n\r\n private renderButton(title: React.ReactNode, callback: () => void) {\r\n return (\r\n <Button\r\n size=\"small\"\r\n block\r\n onClick={callback}\r\n >\r\n {title}\r\n </Button>\r\n );\r\n }\r\n\r\n private renderButtonWithTimeShift(title: React.ReactNode, onClick: () => void, onTimeShift: (direction: TimeShiftDirection) => void) {\r\n const timeShiftDisabled = !this.state.timeShiftBegin && !this.state.timeShiftEnd && !this.state.timeShiftBoth;\r\n\r\n return (\r\n <Space.Compact block size=\"small\">\r\n <Button\r\n disabled={timeShiftDisabled}\r\n icon=\"-\"\r\n onClick={() => onTimeShift(TimeShiftDirection.DECREMENT)}\r\n />\r\n <Button\r\n size=\"small\"\r\n block\r\n onClick={onClick}\r\n >\r\n {title}\r\n </Button>\r\n <Button\r\n disabled={timeShiftDisabled}\r\n icon=\"+\"\r\n onClick={() => onTimeShift(TimeShiftDirection.INCREMENT)}\r\n />\r\n </Space.Compact>\r\n );\r\n }\r\n\r\n private renderTimeShiftIcon(shiftType: \"begin\" | \"both\" | \"end\") {\r\n let checked = false;\r\n if (shiftType === \"begin\") {\r\n checked = this.state.timeShiftBegin;\r\n } else if (shiftType === \"both\") {\r\n checked = this.state.timeShiftBoth;\r\n } else if (shiftType === \"end\") {\r\n checked = this.state.timeShiftEnd;\r\n }\r\n\r\n return (\r\n <Icon component={() =>\r\n <svg\r\n className=\"icon\"\r\n viewBox=\"64 64 896 896\"\r\n version=\"1.1\"\r\n width={40}\r\n height={40}\r\n cursor=\"pointer\"\r\n color={checked ? \"#2998ff\" : \"rgba(0, 0, 0, 0.65)\"}\r\n onClick={() => {\r\n if (shiftType === \"begin\") {\r\n this.setState({\r\n timeShiftBegin: !this.state.timeShiftBegin,\r\n timeShiftBoth: false,\r\n timeShiftEnd: false\r\n });\r\n } else if (shiftType === \"both\") {\r\n this.setState({\r\n timeShiftBegin: false,\r\n timeShiftBoth: !this.state.timeShiftBoth,\r\n timeShiftEnd: false\r\n });\r\n } else if (shiftType === \"end\") {\r\n this.setState({\r\n timeShiftBegin: false,\r\n timeShiftBoth: false,\r\n timeShiftEnd: !this.state.timeShiftEnd\r\n });\r\n }\r\n }}\r\n >\r\n <path\r\n d=\"m 880.43128,184.00001 h -168 v -64 c 0,-4.4 -3.6,-8 -8,-8 h -56 c -4.4,0 -8,3.6 -8,8 v 64 h -256 v -64 c 0,-4.4 -3.6,-8 -8,-8 h -56 c -4.4,0 -8,3.6 -8,8 v 64 h -168 c -17.7,0 -32,14.3 -32,32 v 664 c 0,17.7 14.3,32 32,32 h 736 c 17.7,0 32,-14.3 32,-32 v -664 c 0,-17.7 -14.3,-32 -32,-32 z m -40,656 h -656 v -380 h 656 z m -656,-448 v -136 h 128 v 48 c 0,4.4 3.6,8 8,8 h 56 c 4.4,0 8,-3.6 8,-8 v -48 h 256 v 48 c 0,4.4 3.6,8 8,8 h 56 c 4.4,0 8,-3.6 8,-8 v -48 h 128 v 136 z\"\r\n id=\"path2231\"\r\n style={{fill: \"currentcolor\"}}\r\n />\r\n {[\"begin\", \"end\"].includes(shiftType) &&\r\n <g id=\"g41\">\r\n <g id=\"path2822\"/>\r\n <g id=\"path2824\"/>\r\n <g id=\"path2826\"\r\n transform={shiftType === \"end\" ? \"rotate(180,512.9334,646.24561)\" : \"unset\"}>\r\n <path\r\n id=\"path50\"\r\n style={{fill: \"currentcolor\"}}\r\n d=\"m 358.80859,510.14062 a 34.41795,34.41795 0 0 0 -23.58789,9.24219 L 226.40625,620.82422 a 34.41795,34.41795 0 0 0 -1.70508,48.64453 34.41795,34.41795 0 0 0 48.64453,1.70703 l 108.8125,-101.4414 a 34.41795,34.41795 0 0 0 1.70703,-48.64454 34.41795,34.41795 0 0 0 -25.05664,-10.94922 z M 249.87565,645.99998 358.68957,544.55871 M 249.7207,611.58203 a 34.41795,34.41795 0 0 0 -24.90625,10.82813 34.41795,34.41795 0 0 0 1.47071,48.65234 l 108.29492,101.93164 a 34.41795,34.41795 0 0 0 48.65234,-1.4707 34.41795,34.41795 0 0 0 -1.47265,-48.65235 L 273.46484,620.9375 a 34.41795,34.41795 0 0 0 -23.74414,-9.35547 z m 0.15495,34.41795 108.29422,101.93273 M 264.8125,610.01953 A 35.98045,35.98045 0 0 0 228.83203,646 35.98045,35.98045 0 0 0 264.8125,681.98047 H 550.48633 A 35.98045,35.98045 0 0 0 586.4668,646 35.98045,35.98045 0 0 0 550.48633,610.01953 Z m 285.67298,35.98045 h -285.6727\"/>\r\n </g>\r\n </g>\r\n }\r\n {shiftType === \"both\" &&\r\n <g id=\"g65\" transform=\"rotate(180,512.9334,646.0254)\">\r\n <path\r\n id=\"path63\"\r\n style={{fill: \"currentcolor\"}}\r\n d=\"m 358.80859,510.14062 a 34.41795,34.41795 0 0 0 -23.58789,9.24219 L 226.40625,620.82422 a 34.41795,34.41795 0 0 0 -1.70508,48.64453 34.41795,34.41795 0 0 0 48.64453,1.70703 l 108.8125,-101.4414 a 34.41795,34.41795 0 0 0 1.70703,-48.64454 34.41795,34.41795 0 0 0 -25.05664,-10.94922 z M 249.87565,645.99998 358.68957,544.55871 M 249.7207,611.58203 a 34.41795,34.41795 0 0 0 -24.90625,10.82813 34.41795,34.41795 0 0 0 1.47071,48.65234 l 108.29492,101.93164 a 34.41795,34.41795 0 0 0 48.65234,-1.4707 34.41795,34.41795 0 0 0 -1.47265,-48.65235 L 273.46484,620.9375 a 34.41795,34.41795 0 0 0 -23.74414,-9.35547 z m 0.15495,34.41795 108.29422,101.93273 M 264.8125,610.01953 A 35.98045,35.98045 0 0 0 228.83203,646 35.98045,35.98045 0 0 0 264.8125,681.98047 H 550.48633 A 35.98045,35.98045 0 0 0 586.4668,646 35.98045,35.98045 0 0 0 550.48633,610.01953 Z m 285.67298,35.98045 h -285.6727 m 402.24543,135.9102 a -34.41795,-34.41795 0 0 0 23.58789,-9.24219 L 799.46055,671.22658 a -34.41795,-34.41795 0 0 0 1.70508,-48.64453 -34.41795,-34.41795 0 0 0 -48.64453,-1.70703 l -108.8125,101.4414 a -34.41795,-34.41795 0 0 0 -1.70703,48.64454 -34.41795,-34.41795 0 0 0 25.05664,10.94922 z M 775.99115,646.05082 667.17723,747.49209 M 776.1461,680.46877 a -34.41795,-34.41795 0 0 0 24.90625,-10.82813 -34.41795,-34.41795 0 0 0 -1.47071,-48.65234 L 691.28672,519.05666 a -34.41795,-34.41795 0 0 0 -48.65234,1.4707 -34.41795,-34.41795 0 0 0 1.47265,48.65235 L 752.40196,671.1133 a -34.41795,-34.41795 0 0 0 23.74414,9.35547 z M 775.99115,646.05082 667.69693,544.11809 M 761.0543,682.03127 A -35.98045,-35.98045 0 0 0 797.03477,646.0508 -35.98045,-35.98045 0 0 0 761.0543,610.07033 H 475.38047 A -35.98045,-35.98045 0 0 0 439.4,646.0508 -35.98045,-35.98045 0 0 0 475.38047,682.03127 Z M 475.38132,646.05082 h 285.6727\"/>\r\n </g>\r\n }\r\n </svg>\r\n }/>\r\n );\r\n }\r\n\r\n render() {\r\n const timeShiftBegin = this.state.timeShiftBegin || this.state.timeShiftBoth;\r\n const timeShiftEnd = this.state.timeShiftEnd || this.state.timeShiftBoth;\r\n\r\n return (\r\n <div style={{color: \"rgba(0, 0, 0, 0.65)\"}}>\r\n <Divider style={{margin: \"8px 0px 6px\"}}/>\r\n <Space style={{marginBottom: 8}} size={24} align=\"start\">\r\n <Space style={{width: \"max-content\"}} direction=\"vertical\">\r\n {this.renderSectionTitle(i18n(\"Interval Begin\"))}\r\n {this.renderButton(i18n(\"Now\"), () => this.props.onBeginIntervalChange(\"15minutes\"))}\r\n {this.renderButton(i18n(\"Today\"), () => this.props.onBeginIntervalChange(\"day\"))}\r\n {this.renderButton(i18n(\"Week\"), () => this.props.onBeginIntervalChange(\"week\"))}\r\n {this.renderButton(i18n(\"Month\"), () => this.props.onBeginIntervalChange(\"month\"))}\r\n {this.renderButton(i18n(\"Year\"), () => this.props.onBeginIntervalChange(\"year\"))}\r\n </Space>\r\n <Space style={{width: \"max-content\"}} direction=\"vertical\">\r\n {this.renderSectionTitle(i18n(\"Duration and Time Shift\"))}\r\n <div style={{display: \"flex\", justifyContent: \"center\", alignItems: \"center\"}}>\r\n {this.renderTimeShiftIcon(\"begin\")}\r\n {this.renderTimeShiftIcon(\"both\")}\r\n {this.renderTimeShiftIcon(\"end\")}\r\n </div>\r\n {this.renderButtonWithTimeShift(i18n(\"Hour\"), () => this.props.onIntervalDurationChange(\"hour\"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, \"hour\", direction))}\r\n {this.renderButtonWithTimeShift(i18n(\"Day\"), () => this.props.onIntervalDurationChange(\"day\"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, \"day\", direction))}\r\n {this.renderButtonWithTimeShift(i18n(\"Week\"), () => this.props.onIntervalDurationChange(\"week\"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, \"week\", direction))}\r\n {this.renderButtonWithTimeShift(i18n(\"Month\"), () => this.props.onIntervalDurationChange(\"month\"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, \"month\", direction))}\r\n {this.renderButtonWithTimeShift(i18n(\"Year\"), () => this.props.onIntervalDurationChange(\"year\"), (direction) => this.props.onTimeShift(timeShiftBegin, timeShiftEnd, \"year\", direction))}\r\n </Space>\r\n {!this.props.compact &&\r\n <Space style={{width: \"max-content\"}} direction=\"vertical\">\r\n {this.renderSectionTitle(i18n(\"Interval End\"))}\r\n {this.renderButton(\"15 min\", () => this.props.onEndIntervalChange(\"15minutes\"))}\r\n {this.renderButton(i18n(\"Hour\"), () => this.props.onEndIntervalChange(\"hour\"))}\r\n {this.renderButton(i18n(\"Day\"), () => this.props.onEndIntervalChange(\"day\"))}\r\n </Space>\r\n }\r\n </Space>\r\n </div>\r\n );\r\n }\r\n\r\n}"]}
@@ -93,7 +93,7 @@ export default class DateRangeInputConfirm extends React.Component {
93
93
  return valueChanged || this.state.invalidDatesPresent || this.state.requireConfirmation;
94
94
  }
95
95
  render() {
96
- const _a = this.props, { fromValue, toValue, onChange, allowClear, requireConfirmationAtStart, confirmPlacement } = _a, rest = __rest(_a, ["fromValue", "toValue", "onChange", "allowClear", "requireConfirmationAtStart", "confirmPlacement"]);
96
+ const _a = this.props, { fromValue, toValue, onChange, allowClear, requireConfirmationAtStart, confirmPlacement, compact } = _a, rest = __rest(_a, ["fromValue", "toValue", "onChange", "allowClear", "requireConfirmationAtStart", "confirmPlacement", "compact"]);
97
97
  let align;
98
98
  if (confirmPlacement === "right") {
99
99
  align = { points: ["tl", "tr"], offset: [-8, 0] };
@@ -110,7 +110,7 @@ export default class DateRangeInputConfirm extends React.Component {
110
110
  const parentNode = ((_b = (_a = this.parentRef.current) === null || _a === void 0 ? void 0 : _a.parentNode) !== null && _b !== void 0 ? _b : document.body);
111
111
  return parentNode;
112
112
  } },
113
- React.createElement(DateRangeInput, Object.assign({ ref: component => this.dateRangeInput = component, fromValue: this.state.currentFromValue, toValue: this.state.currentToValue, allowClear: allowClear, onInvalidValue: (_) => {
113
+ React.createElement(DateRangeInput, Object.assign({ ref: component => this.dateRangeInput = component, fromValue: this.state.currentFromValue, toValue: this.state.currentToValue, allowClear: allowClear, compact: compact, onInvalidValue: (_) => {
114
114
  this.setState({ invalidDatesPresent: true });
115
115
  }, onChange: (fromValue, toValue) => {
116
116
  this.setState({