@activecollab/components 2.0.155 → 2.0.157

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.
package/dist/index.js CHANGED
@@ -10789,17 +10789,14 @@
10789
10789
  var toMoment = function toMoment(date) {
10790
10790
  if (moment__default$1["default"].isMoment(date)) {
10791
10791
  return date;
10792
- } else if (date === null) {
10793
- return date;
10794
10792
  } else if (typeof date === "number") {
10795
10793
  return moment__default$1["default"].utc(date * 1000);
10796
10794
  } else if (typeof date === "string") {
10797
10795
  return moment__default$1["default"].utc(date);
10798
10796
  }
10799
- return undefined;
10797
+ return null;
10800
10798
  };
10801
10799
  var DatePickerV2 = function DatePickerV2(_ref) {
10802
- var _selected$to4;
10803
10800
  var defaultSelected = _ref.selected,
10804
10801
  onChange = _ref.onChange,
10805
10802
  onSave = _ref.onSave,
@@ -10870,7 +10867,7 @@
10870
10867
  monthTransitionDirection = _useState10[0],
10871
10868
  setMonthTransitionDirection = _useState10[1];
10872
10869
  var _useState11 = React.useState(function () {
10873
- if (defaultSelected) {
10870
+ if (defaultSelected && defaultSelected.from) {
10874
10871
  return toMoment(defaultSelected.from);
10875
10872
  }
10876
10873
  if (month) {
@@ -10882,11 +10879,12 @@
10882
10879
  currentDate = _useState12[0],
10883
10880
  setCurrentDate = _useState12[1];
10884
10881
  var _useState13 = React.useState(function () {
10885
- if (defaultSelected) {
10882
+ if (defaultSelected && defaultSelected.from) {
10886
10883
  return toMoment(defaultSelected.from);
10887
10884
  } else if (month) {
10888
10885
  return toMoment(month);
10889
10886
  }
10887
+ return moment__default$1["default"].utc();
10890
10888
  }),
10891
10889
  _useState14 = _slicedToArray(_useState13, 2),
10892
10890
  targetDate = _useState14[0],
@@ -10895,9 +10893,12 @@
10895
10893
  if (!defaultSelected) {
10896
10894
  return null;
10897
10895
  }
10896
+ if (!defaultSelected.from) {
10897
+ return null;
10898
+ }
10898
10899
  return {
10899
10900
  from: toMoment(defaultSelected.from),
10900
- to: toMoment(defaultSelected.to)
10901
+ to: defaultSelected.to ? toMoment(defaultSelected.to) : null
10901
10902
  };
10902
10903
  }),
10903
10904
  _useState16 = _slicedToArray(_useState15, 2),
@@ -10947,10 +10948,10 @@
10947
10948
  }
10948
10949
  }, [isMonthSelectOpen, mode]);
10949
10950
  React.useEffect(function () {
10950
- if (defaultSelected) {
10951
+ if (defaultSelected && defaultSelected.from) {
10951
10952
  setSelected({
10952
10953
  from: toMoment(defaultSelected.from),
10953
- to: toMoment(defaultSelected.to)
10954
+ to: defaultSelected.to ? toMoment(defaultSelected.to) : null
10954
10955
  });
10955
10956
  setCurrentDate(toMoment(defaultSelected.from) || moment__default$1["default"].utc());
10956
10957
  setTargetDate(toMoment(defaultSelected.from) || moment__default$1["default"].utc());
@@ -11042,9 +11043,18 @@
11042
11043
  from: date.utc().unix(),
11043
11044
  to: null
11044
11045
  });
11045
- } else if (selected !== null && selected !== void 0 && selected.from.isSame(date.utc(), "day") && !required) {
11046
+ } else if (moment__default$1["default"].isMoment(selected === null || selected === void 0 ? void 0 : selected.from) && selected !== null && selected !== void 0 && selected.from.isSame(date.utc(), "day") && !required) {
11046
11047
  setSelected(null);
11047
11048
  onChange && onChange(undefined);
11049
+ } else if (selected.from === null && selected.to === null) {
11050
+ setSelected({
11051
+ from: date.utc(),
11052
+ to: null
11053
+ });
11054
+ onChange && onChange({
11055
+ from: date.utc().unix(),
11056
+ to: date.utc().unix()
11057
+ });
11048
11058
  }
11049
11059
  };
11050
11060
  var handleSave = function handleSave() {
@@ -11074,7 +11084,10 @@
11074
11084
  setMonthTransitionDirection(direction);
11075
11085
  if (isMonthSelectOpen) {
11076
11086
  setTargetDate(function (prevDate) {
11077
- return direction === "prev" ? prevDate.clone().subtract(1, "year") : prevDate.clone().add(1, "year");
11087
+ if (prevDate) {
11088
+ return direction === "prev" ? prevDate.clone().subtract(1, "year") : prevDate.clone().add(1, "year");
11089
+ }
11090
+ return prevDate;
11078
11091
  });
11079
11092
  if (disableAnimations) {
11080
11093
  setCurrentDate(function (prevDate) {
@@ -11083,7 +11096,10 @@
11083
11096
  }
11084
11097
  } else {
11085
11098
  setTargetDate(function (prevDate) {
11086
- return direction === "prev" ? prevDate.clone().subtract(1, "month") : prevDate.clone().add(1, "month");
11099
+ if (prevDate) {
11100
+ return direction === "prev" ? prevDate.clone().subtract(1, "month") : prevDate.clone().add(1, "month");
11101
+ }
11102
+ return prevDate;
11087
11103
  });
11088
11104
  if (disableAnimations) {
11089
11105
  setCurrentDate(function (prevDate) {
@@ -11333,11 +11349,11 @@
11333
11349
  if (mode === "custom" && instant && !selected && onSave) {
11334
11350
  onSave(undefined);
11335
11351
  }
11336
- setCurrentDate(defaultSelected ? toMoment(defaultSelected.from) : month ? toMoment(month) : moment__default$1["default"].utc());
11337
- setTargetDate(defaultSelected ? toMoment(defaultSelected.from) : toMoment(month));
11338
- setSelected(defaultSelected ? {
11352
+ setCurrentDate(defaultSelected !== null && defaultSelected !== void 0 && defaultSelected.from ? toMoment(defaultSelected.from) : month ? toMoment(month) : moment__default$1["default"].utc());
11353
+ setTargetDate(defaultSelected !== null && defaultSelected !== void 0 && defaultSelected.from ? toMoment(defaultSelected.from) : month ? toMoment(month) : moment__default$1["default"].utc());
11354
+ setSelected(defaultSelected !== null && defaultSelected !== void 0 && defaultSelected.from ? {
11339
11355
  from: toMoment(defaultSelected.from),
11340
- to: toMoment(defaultSelected.to)
11356
+ to: defaultSelected.to ? toMoment(defaultSelected.to) : null
11341
11357
  } : null);
11342
11358
  toggleCalendar();
11343
11359
  setIsYearSelectOpen(false);
@@ -11367,7 +11383,7 @@
11367
11383
  var handleSaveDiscardModal = React.useCallback(function () {
11368
11384
  setSelected(defaultSelected !== null && defaultSelected !== void 0 && defaultSelected.from ? {
11369
11385
  from: toMoment(defaultSelected.from),
11370
- to: toMoment(defaultSelected.to)
11386
+ to: defaultSelected.to ? toMoment(defaultSelected.to) : null
11371
11387
  } : null);
11372
11388
  setShowDiscardModal(false);
11373
11389
  handleClose();
@@ -11394,11 +11410,22 @@
11394
11410
  handleMonthChange("prev");
11395
11411
  }
11396
11412
  };
11397
- window.addEventListener("keydown", handleKeyDown);
11413
+ if (isOpen) {
11414
+ window.addEventListener("keydown", handleKeyDown);
11415
+ }
11398
11416
  return function () {
11399
11417
  window.removeEventListener("keydown", handleKeyDown);
11400
11418
  };
11401
- }, [handleMonthChange]);
11419
+ }, [isOpen, handleMonthChange]);
11420
+ var saveIsDisabled = function saveIsDisabled() {
11421
+ if (!defaultSelected && !selected) {
11422
+ return true;
11423
+ }
11424
+ if (defaultSelected && selected && defaultSelected.from && selected.from.isSame(toMoment(defaultSelected.from)) && defaultSelected.to && selected.to && selected.to.isSame(toMoment(defaultSelected.to))) {
11425
+ return true;
11426
+ }
11427
+ return false;
11428
+ };
11402
11429
  return /*#__PURE__*/React__default["default"].createElement(StyledDatePickerWrapper, {
11403
11430
  ref: datePickerRef
11404
11431
  }, /*#__PURE__*/React__default["default"].createElement(Wrapper, wrapperProps, /*#__PURE__*/React__default["default"].createElement(StyledDatePickerContainerInner, null, /*#__PURE__*/React__default["default"].createElement(StyledCalendarHeader, null, isYearSelectOpen ? null : /*#__PURE__*/React__default["default"].createElement(IconButton, {
@@ -11429,7 +11456,7 @@
11429
11456
  size: "small",
11430
11457
  variant: "primary",
11431
11458
  onClick: handleSave,
11432
- disabled: (selected === null || selected === void 0 ? void 0 : selected.from.isSame(moment__default$1["default"].utc(Number(defaultSelected === null || defaultSelected === void 0 ? void 0 : defaultSelected.from) * 1000))) && (selected === null || selected === void 0 || (_selected$to4 = selected.to) === null || _selected$to4 === void 0 ? void 0 : _selected$to4.isSame(moment__default$1["default"].utc(Number(defaultSelected === null || defaultSelected === void 0 ? void 0 : defaultSelected.to) * 1000))) || !defaultSelected && !selected
11459
+ disabled: saveIsDisabled()
11433
11460
  }, saveLabel), /*#__PURE__*/React__default["default"].createElement(Tooltip, {
11434
11461
  title: cancelLabel,
11435
11462
  popperTooltipStyle: {
@@ -14694,6 +14721,7 @@
14694
14721
  ref: hover ? ref : null,
14695
14722
  title: name,
14696
14723
  onMouseEnter: handleOnMouseEnter,
14724
+ onTouchStart: handleOnMouseEnter,
14697
14725
  className: classNames__default["default"]("c-option", className),
14698
14726
  hover: hover,
14699
14727
  onClick: onClick
@@ -18102,10 +18130,12 @@
18102
18130
  var labelText = React.useMemo(function () {
18103
18131
  if (!selectedDays) {
18104
18132
  return defaultLabelText;
18133
+ } else if (!selectedDays.from && !selectedDays.to) {
18134
+ return defaultLabelText;
18105
18135
  } else {
18106
- var formattedEndDate = formatDate(toMoment(selectedDays === null || selectedDays === void 0 ? void 0 : selectedDays.to), dateFormat, longDateFormat);
18107
- var formattedStartDate = formatDate(toMoment(selectedDays === null || selectedDays === void 0 ? void 0 : selectedDays.from), dateFormat, longDateFormat);
18108
- if (toMoment(selectedDays.from).isSame(toMoment(selectedDays.to))) {
18136
+ var formattedEndDate = selectedDays.to ? formatDate(toMoment(selectedDays.to), dateFormat, longDateFormat) : "";
18137
+ var formattedStartDate = selectedDays.from ? formatDate(toMoment(selectedDays === null || selectedDays === void 0 ? void 0 : selectedDays.from), dateFormat, longDateFormat) : "";
18138
+ if (selectedDays.to && selectedDays.from && toMoment(selectedDays.from).isSame(toMoment(selectedDays.to))) {
18109
18139
  return formattedEndDate;
18110
18140
  }
18111
18141
  return "".concat(formattedStartDate, " - ").concat(formattedEndDate);
@@ -18240,7 +18270,8 @@
18240
18270
  onDayClick: onDayClick,
18241
18271
  disableYearPicker: !enableYearPicker,
18242
18272
  disableAnimations: disableAnimations,
18243
- showControls: true
18273
+ showControls: true,
18274
+ open: true
18244
18275
  }));
18245
18276
  };
18246
18277
  SelectDateV2.displayName = "SelectDateV2";