@opengeoweb/time-slider 15.1.0 → 15.2.0

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.
Files changed (2) hide show
  1. package/index.esm.js +23 -17
  2. package/package.json +3 -3
package/index.esm.js CHANGED
@@ -626,16 +626,20 @@ var onsetNewDateDebounced = debounce(function (dateToSet, onSetNewDate) {
626
626
  maxWait: 40
627
627
  });
628
628
  var setPreviousTimeStep = function setPreviousTimeStep(timeStep, currentTime, dataStartTime, onSetNewDate) {
629
- var nextTime = currentTime - timeStep;
630
- var roundedTime = roundWithTimeStep(nextTime, timeStep, 'floor');
631
- var newTime = Math.max(roundedTime, dataStartTime || roundedTime);
629
+ // timeStep is in minutes, convert to seconds
630
+ var timeStepInSeconds = timeStep * 60;
631
+ var nextTime = currentTime - timeStepInSeconds;
632
+ // Don't round - just step by the timestep amount from current position
633
+ var newTime = Math.max(nextTime, dataStartTime || nextTime);
632
634
  var selectedTimeString = dateUtils.fromUnix(newTime).toISOString();
633
635
  onSetNewDate(selectedTimeString);
634
636
  };
635
637
  var setNextTimeStep = function setNextTimeStep(timeStep, currentTime, dataEndTime, onSetNewDate) {
636
- var nextTime = currentTime + timeStep;
637
- var roundedTime = roundWithTimeStep(nextTime, timeStep, 'ceil');
638
- var newTime = Math.min(roundedTime, dataEndTime || roundedTime);
638
+ // timeStep is in minutes, convert to seconds
639
+ var timeStepInSeconds = timeStep * 60;
640
+ var nextTime = currentTime + timeStepInSeconds;
641
+ // Don't round - just step by the timestep amount from current position
642
+ var newTime = Math.min(nextTime, dataEndTime || nextTime);
639
643
  var selectedTimeString = dateUtils.fromUnix(newTime).toISOString();
640
644
  onSetNewDate(selectedTimeString);
641
645
  };
@@ -1670,7 +1674,8 @@ var TimeSliderLegend = function TimeSliderLegend(_ref) {
1670
1674
  var startDraggingPosition = useRef(0);
1671
1675
  var popperRef = useRef(null);
1672
1676
  var isClickOrDrag = useRef();
1673
- var filteredTime = getFilteredTime(unfilteredSelectedTime, timeStep, dataStartTime, dataEndTime);
1677
+ // Display unfilteredSelectedTime (already snapped to available timestep)
1678
+ var displayTime = unfilteredSelectedTime;
1674
1679
  var start = localAnimationStartTime;
1675
1680
  var end = localAnimationEndTime;
1676
1681
  var pixelsBetweenViewportAndTimesliderOnTop = (_getTimeSliderLegendE = getTimeSliderLegendElement(mapId)) == null ? void 0 : _getTimeSliderLegendE.getBoundingClientRect()['top'];
@@ -2009,7 +2014,7 @@ var TimeSliderLegend = function TimeSliderLegend(_ref) {
2009
2014
  onMouseUp: onMouseUp,
2010
2015
  onRenderCanvas: function onRenderCanvas(ctx, width, height) {
2011
2016
  updateCanvasWidth(canvasWidth, width);
2012
- drawTimeSliderLegend(ctx, theme, width, height, centerTime, secondsPerPx, timeSliderSpan, filteredTime, currentTime, start, end, dataStartTime, dataEndTime);
2017
+ drawTimeSliderLegend(ctx, theme, width, height, centerTime, secondsPerPx, timeSliderSpan, displayTime, currentTime, start, end, dataStartTime, dataEndTime);
2013
2018
  },
2014
2019
  onWheel: onWheelOverCanvas,
2015
2020
  ref: node
@@ -3387,9 +3392,9 @@ var TimeSliderCurrentTimeBox = function TimeSliderCurrentTimeBox(_ref) {
3387
3392
  _ref$secondsPerPx = _ref.secondsPerPx,
3388
3393
  secondsPerPx = _ref$secondsPerPx === void 0 ? 50 : _ref$secondsPerPx,
3389
3394
  _ref$span = _ref.span,
3390
- span = _ref$span === void 0 ? defaultTimeSpan : _ref$span,
3391
- timeStep = _ref.timeStep,
3392
- dataStartTime = _ref.dataStartTime,
3395
+ span = _ref$span === void 0 ? defaultTimeSpan : _ref$span;
3396
+ _ref.timeStep;
3397
+ var dataStartTime = _ref.dataStartTime,
3393
3398
  dataEndTime = _ref.dataEndTime,
3394
3399
  unfilteredSelectedTime = _ref.unfilteredSelectedTime,
3395
3400
  linkedMapAnimationInfo = _ref.linkedMapAnimationInfo,
@@ -3462,8 +3467,9 @@ var TimeSliderCurrentTimeBox = function TimeSliderCurrentTimeBox(_ref) {
3462
3467
  document.removeEventListener('mouseup', handleMouseUp);
3463
3468
  };
3464
3469
  }, [canvasWidth, centerTime, mouseDownInTimeBox, secondsPerPx, setUnfilteredSelectedTime, unfilteredSelectedTime]);
3465
- var filteredTime = getFilteredTime(unfilteredSelectedTime, timeStep, dataStartTime, dataEndTime);
3466
- var timePx = timestampToPixel(filteredTime, centerTime, canvasWidth, secondsPerPx);
3470
+ // Display unfilteredSelectedTime (already snapped to available timestep)
3471
+ var displayTime = unfilteredSelectedTime;
3472
+ var timePx = timestampToPixel(displayTime, centerTime, canvasWidth, secondsPerPx);
3467
3473
  var currentTimeBoxWidth = getTimeBoxWidth(span);
3468
3474
  var calendarIconPx = timePx - currentTimeBoxWidth / 2 + CALENDAR_ICON_LEFT_SPACING;
3469
3475
  return jsxs(Box$1, {
@@ -3488,8 +3494,8 @@ var TimeSliderCurrentTimeBox = function TimeSliderCurrentTimeBox(_ref) {
3488
3494
  },
3489
3495
  onRenderCanvas: function onRenderCanvas(ctx, width, height) {
3490
3496
  setCanvasWidth(width);
3491
- var filteredTime = getFilteredTime(unfilteredSelectedTime, timeStep, dataStartTime, dataEndTime);
3492
- renderTimeSliderCurrentTimeBox(ctx, theme, width, height, centerTime, filteredTime, secondsPerPx, span, isAutoUpdating);
3497
+ // Use the actual selected time without rounding to timestep
3498
+ renderTimeSliderCurrentTimeBox(ctx, theme, width, height, centerTime, unfilteredSelectedTime, secondsPerPx, span, isAutoUpdating);
3493
3499
  },
3494
3500
  ref: node
3495
3501
  }), jsx(CalendarButton, {
@@ -3500,11 +3506,11 @@ var TimeSliderCurrentTimeBox = function TimeSliderCurrentTimeBox(_ref) {
3500
3506
  if (newSelectedTime) {
3501
3507
  onCalendarSelect(newSelectedTime);
3502
3508
  if (onSetCenterTime) {
3503
- onSetCenterTime(newSelectedTime - filteredTime + centerTime);
3509
+ onSetCenterTime(newSelectedTime - displayTime + centerTime);
3504
3510
  }
3505
3511
  }
3506
3512
  },
3507
- selectedTime: filteredTime
3513
+ selectedTime: displayTime
3508
3514
  })]
3509
3515
  });
3510
3516
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengeoweb/time-slider",
3
- "version": "15.1.0",
3
+ "version": "15.2.0",
4
4
  "description": "GeoWeb time-slider library for the opengeoweb project",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -8,9 +8,9 @@
8
8
  "url": "git@gitlab.com:opengeoweb/opengeoweb.git"
9
9
  },
10
10
  "dependencies": {
11
- "@opengeoweb/shared": "15.1.0",
11
+ "@opengeoweb/shared": "15.2.0",
12
12
  "lodash": "^4.17.21",
13
- "@opengeoweb/theme": "15.1.0",
13
+ "@opengeoweb/theme": "15.2.0",
14
14
  "@mui/x-date-pickers": "^8.11.2",
15
15
  "@mui/system": "^7.3.2",
16
16
  "i18next": "^25.0.1",