@activecollab/components 2.0.272 → 2.0.273

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
@@ -14262,7 +14262,7 @@
14262
14262
  _useState2 = _slicedToArray(_useState, 2),
14263
14263
  fromDate = _useState2[0],
14264
14264
  setFromDate = _useState2[1];
14265
- var _useState3 = React.useState(moment__default["default"].utc(to)),
14265
+ var _useState3 = React.useState(to ? moment__default["default"].utc(to) : null),
14266
14266
  _useState4 = _slicedToArray(_useState3, 2),
14267
14267
  toDate = _useState4[0],
14268
14268
  setToDate = _useState4[1];
@@ -14285,9 +14285,8 @@
14285
14285
  return [date.clone().startOf("year"), date.clone().endOf("year")];
14286
14286
  } else if (step === "range") {
14287
14287
  // For range step, calculate N days based on current selection
14288
- // Handle case where toDate is invalid or at epoch (1970)
14289
- var isToDateInvalid = !toDate.isValid() || toDate.year() === 1970;
14290
- var effectiveToDate = isToDateInvalid ? fromDate : toDate;
14288
+ // Handle case where toDate is undefined
14289
+ var effectiveToDate = !toDate ? fromDate : toDate;
14291
14290
  var daysDiff = effectiveToDate.diff(fromDate, "days");
14292
14291
 
14293
14292
  // If same day selected (daysDiff = 0), move by 1 day
@@ -14300,14 +14299,15 @@
14300
14299
  }, [fromDate, toDate, period, step]);
14301
14300
  var getDateFormatted = React.useMemo(function () {
14302
14301
  if (formatCallback) {
14303
- return formatCallback(fromDate, toDate);
14302
+ return formatCallback(fromDate, toDate ? toDate : fromDate);
14304
14303
  }
14305
14304
  var actualYear = moment__default["default"]().year();
14306
14305
  var showWeekOrCustomDateFormat = function showWeekOrCustomDateFormat(start, end) {
14306
+ var endDate = end ? end : start;
14307
14307
  if (start.year() === actualYear && end.year() === actualYear) {
14308
- return start.utc().format("MMM DD") + " - " + end.utc().format("MMM DD");
14308
+ return start.utc().format("MMM DD") + " - " + endDate.utc().format("MMM DD");
14309
14309
  } else {
14310
- return start.utc().format("MMM DD YYYY") + " - " + end.utc().format("MMM DD YYYY");
14310
+ return start.utc().format("MMM DD YYYY") + " - " + endDate.utc().format("MMM DD YYYY");
14311
14311
  }
14312
14312
  };
14313
14313
  if (step === "daily") {
@@ -14326,8 +14326,7 @@
14326
14326
  } else if (step === "yearly") {
14327
14327
  return fromDate.utc().format("YYYY");
14328
14328
  } else if (step === "range") {
14329
- // For range step, if toDate is invalid or at epoch (1970), only show fromDate
14330
- if (!toDate.isValid() || toDate.year() === 1970) {
14329
+ if (!toDate) {
14331
14330
  if (fromDate.year() === actualYear) {
14332
14331
  return fromDate.utc().format("MMM DD");
14333
14332
  }
@@ -14350,19 +14349,27 @@
14350
14349
  return step;
14351
14350
  }, [step]);
14352
14351
  var onDatePickerChange = React.useCallback(function (dates) {
14352
+ console.log("dates: ", dates);
14353
14353
  var fromDateTemp = moment__default["default"].utc(Number(dates === null || dates === void 0 ? void 0 : dates.from) * 1000);
14354
- var toDateTemp = moment__default["default"].utc(Number(dates === null || dates === void 0 ? void 0 : dates.to) * 1000);
14354
+ var toDateTemp = dates !== null && dates !== void 0 && dates.to ? moment__default["default"].utc(Number(dates === null || dates === void 0 ? void 0 : dates.to) * 1000) : null;
14355
14355
  setFromDate(fromDateTemp);
14356
14356
  setToDate(toDateTemp);
14357
- if (onChange && moment__default["default"].isMoment(fromDateTemp) && moment__default["default"].isMoment(toDateTemp)) {
14357
+ if (onChange && step !== "range" && moment__default["default"].isMoment(fromDateTemp) && moment__default["default"].isMoment(toDateTemp)) {
14358
14358
  onChange(fromDateTemp.toDate(), toDateTemp.toDate());
14359
14359
  }
14360
- }, [onChange, setFromDate, setToDate]);
14360
+ }, [onChange, step]);
14361
+ var onToggleDatePicker = React.useCallback(function (open) {
14362
+ if (step === "range" && !open) {
14363
+ var toDateTemp = toDate ? toDate : fromDate;
14364
+ setToDate(toDateTemp);
14365
+ onChange === null || onChange === void 0 || onChange(fromDate.toDate(), toDateTemp.toDate());
14366
+ }
14367
+ }, [fromDate, onChange, step, toDate]);
14361
14368
  var isAfterMaxDate = React.useMemo(function () {
14362
- return moment__default["default"].isMoment(maxValue) && moment__default["default"](moment__default["default"].utc(maxValue).format("YYYY-MM-DD")).isSameOrBefore(toDate.utc().format("YYYY-MM-DD"));
14369
+ return moment__default["default"].isMoment(maxValue) && toDate && moment__default["default"](moment__default["default"].utc(maxValue).format("YYYY-MM-DD")).isSameOrBefore(toDate.utc().format("YYYY-MM-DD"));
14363
14370
  }, [maxValue, toDate]);
14364
14371
  var isBeforeMinDate = React.useMemo(function () {
14365
- return moment__default["default"].isMoment(minValue) && moment__default["default"].utc(moment__default["default"].utc(minValue).format("YYYY-MM-DD")).isSameOrAfter(toDate.utc().format("YYYY-MM-DD"));
14372
+ return moment__default["default"].isMoment(minValue) && toDate && moment__default["default"].utc(moment__default["default"].utc(minValue).format("YYYY-MM-DD")).isSameOrAfter(toDate.utc().format("YYYY-MM-DD"));
14366
14373
  }, [minValue, toDate]);
14367
14374
  React.useEffect(function () {
14368
14375
  if (isBeforeMinDate) {
@@ -14414,9 +14421,14 @@
14414
14421
  }, [isBeforeMinDate, getDatesByPeriod, onChange, onBack]);
14415
14422
  React.useEffect(function () {
14416
14423
  setFromDate(moment__default["default"].utc(from));
14417
- setToDate(moment__default["default"].utc(to));
14424
+ setToDate(to ? moment__default["default"].utc(to) : null);
14418
14425
  }, [from, to]);
14419
14426
  var dateStepperWidth = function dateStepperWidth(fromDay, toDay, range) {
14427
+ if (range === "range") {
14428
+ return {
14429
+ minWidth: "102px"
14430
+ };
14431
+ }
14420
14432
  if (fromDay.utc().year() !== moment__default["default"].utc().year() || toDay.utc().year() !== moment__default["default"].utc().year()) {
14421
14433
  switch (range) {
14422
14434
  case "daily":
@@ -14483,6 +14495,7 @@
14483
14495
  style: dateStepperWidth(fromDate, toDate, step)
14484
14496
  }, withDatePicker && step !== "yearly" ? /*#__PURE__*/React__default["default"].createElement(DatePicker, {
14485
14497
  month: defaultMonth,
14498
+ onCalendarToggle: onToggleDatePicker,
14486
14499
  target: /*#__PURE__*/React__default["default"].createElement(StyledButton$1, {
14487
14500
  $step: step,
14488
14501
  type: "button"
@@ -14490,7 +14503,7 @@
14490
14503
  mode: datePickerMode,
14491
14504
  selected: {
14492
14505
  from: moment__default["default"].utc(fromDate).unix(),
14493
- to: moment__default["default"].utc(toDate).unix()
14506
+ to: toDate ? moment__default["default"].utc(toDate).unix() : null
14494
14507
  },
14495
14508
  onChange: onDatePickerChange,
14496
14509
  firstDayOfWeek: period === "week" ? 0 : 1,