@banyan_cloud/roots 1.0.70 → 1.0.71

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
@@ -41206,6 +41206,25 @@ function compareAsc(dirtyDateLeft, dirtyDateRight) {
41206
41206
  }
41207
41207
  }
41208
41208
 
41209
+ /**
41210
+ * Days in 1 week.
41211
+ *
41212
+ * @name daysInWeek
41213
+ * @constant
41214
+ * @type {number}
41215
+ * @default
41216
+ */
41217
+ /**
41218
+ * Milliseconds in 1 hour
41219
+ *
41220
+ * @name millisecondsInHour
41221
+ * @constant
41222
+ * @type {number}
41223
+ * @default
41224
+ */
41225
+
41226
+ var millisecondsInHour = 3600000;
41227
+
41209
41228
  /**
41210
41229
  * @name isSameDay
41211
41230
  * @category Day Helpers
@@ -41354,6 +41373,78 @@ function differenceInDays(dirtyDateLeft, dirtyDateRight) {
41354
41373
  return result === 0 ? 0 : result;
41355
41374
  }
41356
41375
 
41376
+ /**
41377
+ * @name differenceInMilliseconds
41378
+ * @category Millisecond Helpers
41379
+ * @summary Get the number of milliseconds between the given dates.
41380
+ *
41381
+ * @description
41382
+ * Get the number of milliseconds between the given dates.
41383
+ *
41384
+ * @param {Date|Number} dateLeft - the later date
41385
+ * @param {Date|Number} dateRight - the earlier date
41386
+ * @returns {Number} the number of milliseconds
41387
+ * @throws {TypeError} 2 arguments required
41388
+ *
41389
+ * @example
41390
+ * // How many milliseconds are between
41391
+ * // 2 July 2014 12:30:20.600 and 2 July 2014 12:30:21.700?
41392
+ * const result = differenceInMilliseconds(
41393
+ * new Date(2014, 6, 2, 12, 30, 21, 700),
41394
+ * new Date(2014, 6, 2, 12, 30, 20, 600)
41395
+ * )
41396
+ * //=> 1100
41397
+ */
41398
+
41399
+ function differenceInMilliseconds(dateLeft, dateRight) {
41400
+ requiredArgs(2, arguments);
41401
+ return toDate(dateLeft).getTime() - toDate(dateRight).getTime();
41402
+ }
41403
+
41404
+ var roundingMap = {
41405
+ ceil: Math.ceil,
41406
+ round: Math.round,
41407
+ floor: Math.floor,
41408
+ trunc: function trunc(value) {
41409
+ return value < 0 ? Math.ceil(value) : Math.floor(value);
41410
+ } // Math.trunc is not supported by IE
41411
+
41412
+ };
41413
+ var defaultRoundingMethod = 'trunc';
41414
+ function getRoundingMethod(method) {
41415
+ return method ? roundingMap[method] : roundingMap[defaultRoundingMethod];
41416
+ }
41417
+
41418
+ /**
41419
+ * @name differenceInHours
41420
+ * @category Hour Helpers
41421
+ * @summary Get the number of hours between the given dates.
41422
+ *
41423
+ * @description
41424
+ * Get the number of hours between the given dates.
41425
+ *
41426
+ * @param {Date|Number} dateLeft - the later date
41427
+ * @param {Date|Number} dateRight - the earlier date
41428
+ * @param {Object} [options] - an object with options.
41429
+ * @param {String} [options.roundingMethod='trunc'] - a rounding method (`ceil`, `floor`, `round` or `trunc`)
41430
+ * @returns {Number} the number of hours
41431
+ * @throws {TypeError} 2 arguments required
41432
+ *
41433
+ * @example
41434
+ * // How many hours are between 2 July 2014 06:50:00 and 2 July 2014 19:00:00?
41435
+ * const result = differenceInHours(
41436
+ * new Date(2014, 6, 2, 19, 0),
41437
+ * new Date(2014, 6, 2, 6, 50)
41438
+ * )
41439
+ * //=> 12
41440
+ */
41441
+
41442
+ function differenceInHours(dateLeft, dateRight, options) {
41443
+ requiredArgs(2, arguments);
41444
+ var diff = differenceInMilliseconds(dateLeft, dateRight) / millisecondsInHour;
41445
+ return getRoundingMethod(options === null || options === void 0 ? void 0 : options.roundingMethod)(diff);
41446
+ }
41447
+
41357
41448
  /**
41358
41449
  * @name endOfDay
41359
41450
  * @category Day Helpers
@@ -43408,31 +43499,28 @@ var Calender = function Calender(props) {
43408
43499
  });
43409
43500
  }
43410
43501
  };
43502
+ var commonCalenderProps = {
43503
+ selectedDate: selectedDate,
43504
+ setSelectedDate: setSelectedDate,
43505
+ selectedRange: selectedRange,
43506
+ setSelectedRange: setSelectedRange,
43507
+ range: range
43508
+ };
43411
43509
  return /*#__PURE__*/jsxs("div", {
43412
43510
  className: modules_3722b5cd.root,
43413
43511
  children: [/*#__PURE__*/jsx(Header, {
43414
43512
  selectedMonth: selectedMonth,
43415
43513
  onMonthChange: onMonthChange
43416
- }), /*#__PURE__*/jsx(Body, {
43514
+ }), /*#__PURE__*/jsx(Body, _objectSpread2(_objectSpread2({}, commonCalenderProps), {}, {
43417
43515
  selectedMonth: selectedMonth,
43418
- range: range,
43419
- selectedDate: selectedDate,
43420
- setSelectedDate: setSelectedDate,
43421
- selectedRange: selectedRange,
43422
- setSelectedRange: setSelectedRange,
43423
43516
  disabledDates: disabledDates,
43424
43517
  disableDatesBefore: disableDatesBefore
43425
- }), /*#__PURE__*/jsx(Footer, {
43426
- range: range,
43427
- selectedDate: selectedDate,
43428
- setSelectedDate: setSelectedDate,
43429
- selectedRange: selectedRange,
43430
- setSelectedRange: setSelectedRange,
43518
+ })), /*#__PURE__*/jsx(Footer, _objectSpread2(_objectSpread2({}, commonCalenderProps), {}, {
43431
43519
  onApply: onApply,
43432
43520
  goToDate: goToDate,
43433
43521
  customRanges: customRanges,
43434
43522
  setFixedRange: setFixedRange
43435
- })]
43523
+ }))]
43436
43524
  });
43437
43525
  };
43438
43526
 
@@ -43462,6 +43550,21 @@ var isMaxRangeExceeded = function isMaxRangeExceeded(_ref) {
43462
43550
  }
43463
43551
  return false;
43464
43552
  };
43553
+ var getDateRangeTag = function getDateRangeTag() {
43554
+ var dates = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
43555
+ var _dates = _slicedToArray(dates, 2),
43556
+ startUnix = _dates[0],
43557
+ endUnix = _dates[1];
43558
+ var dayDifference = differenceInDays(fromUnixTime(endUnix), fromUnixTime(startUnix));
43559
+ var hourDifference = differenceInHours(fromUnixTime(endUnix), fromUnixTime(startUnix));
43560
+ if (hourDifference <= 24) {
43561
+ return 'hours';
43562
+ }
43563
+ if (dayDifference >= 30) {
43564
+ return 'month';
43565
+ }
43566
+ return 'day';
43567
+ };
43465
43568
 
43466
43569
  var DatePicker = function DatePicker(props) {
43467
43570
  var _value$filter;
@@ -43569,7 +43672,8 @@ var DatePicker = function DatePicker(props) {
43569
43672
  getReferenceProps = _useInteractions.getReferenceProps,
43570
43673
  getFloatingProps = _useInteractions.getFloatingProps;
43571
43674
  var apply = function apply() {
43572
- if (selectedRange.dates.length === 2) {
43675
+ var _selectedRange$dates;
43676
+ if (((_selectedRange$dates = selectedRange.dates) === null || _selectedRange$dates === void 0 ? void 0 : _selectedRange$dates.length) === 2) {
43573
43677
  if (maxRange !== null && !isMaxRangeExceeded({
43574
43678
  maxRange: maxRange,
43575
43679
  selectedRange: selectedRange
@@ -43579,7 +43683,7 @@ var DatePicker = function DatePicker(props) {
43579
43683
  return;
43580
43684
  }
43581
43685
  setError('');
43582
- onApply(selectedRange.unix, fixedRange);
43686
+ onApply(selectedRange.unix, fixedRange, getDateRangeTag(selectedRange.unix));
43583
43687
  setOpen(false);
43584
43688
  } else {
43585
43689
  onApply(selectedDate.unix);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@banyan_cloud/roots",
3
- "version": "1.0.70",
3
+ "version": "1.0.71",
4
4
  "description": "Design System Library which drives the Banyan Cloud products",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",