@fullcalendar/core 6.1.18 → 6.1.19

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 (168) hide show
  1. package/index.cjs +12 -1
  2. package/index.global.js +35 -6
  3. package/index.global.min.js +2 -2
  4. package/index.js +12 -1
  5. package/internal-common.cjs +22 -4
  6. package/internal-common.d.ts +3 -0
  7. package/internal-common.js +22 -4
  8. package/locales/af.global.js +1 -1
  9. package/locales/af.global.min.js +1 -1
  10. package/locales/ar-dz.global.js +1 -1
  11. package/locales/ar-dz.global.min.js +1 -1
  12. package/locales/ar-kw.global.js +1 -1
  13. package/locales/ar-kw.global.min.js +1 -1
  14. package/locales/ar-ly.global.js +1 -1
  15. package/locales/ar-ly.global.min.js +1 -1
  16. package/locales/ar-ma.global.js +1 -1
  17. package/locales/ar-ma.global.min.js +1 -1
  18. package/locales/ar-sa.global.js +1 -1
  19. package/locales/ar-sa.global.min.js +1 -1
  20. package/locales/ar-tn.global.js +1 -1
  21. package/locales/ar-tn.global.min.js +1 -1
  22. package/locales/ar.global.js +1 -1
  23. package/locales/ar.global.min.js +1 -1
  24. package/locales/az.global.js +1 -1
  25. package/locales/az.global.min.js +1 -1
  26. package/locales/bg.global.js +1 -1
  27. package/locales/bg.global.min.js +1 -1
  28. package/locales/bn.global.js +1 -1
  29. package/locales/bn.global.min.js +1 -1
  30. package/locales/bs.global.js +1 -1
  31. package/locales/bs.global.min.js +1 -1
  32. package/locales/ca.global.js +1 -1
  33. package/locales/ca.global.min.js +1 -1
  34. package/locales/cs.global.js +1 -1
  35. package/locales/cs.global.min.js +1 -1
  36. package/locales/cy.global.js +1 -1
  37. package/locales/cy.global.min.js +1 -1
  38. package/locales/da.global.js +1 -1
  39. package/locales/da.global.min.js +1 -1
  40. package/locales/de-at.global.js +1 -1
  41. package/locales/de-at.global.min.js +1 -1
  42. package/locales/de.global.js +1 -1
  43. package/locales/de.global.min.js +1 -1
  44. package/locales/el.global.js +1 -1
  45. package/locales/el.global.min.js +1 -1
  46. package/locales/en-au.global.js +1 -1
  47. package/locales/en-au.global.min.js +1 -1
  48. package/locales/en-gb.global.js +1 -1
  49. package/locales/en-gb.global.min.js +1 -1
  50. package/locales/en-nz.global.js +1 -1
  51. package/locales/en-nz.global.min.js +1 -1
  52. package/locales/eo.global.js +1 -1
  53. package/locales/eo.global.min.js +1 -1
  54. package/locales/es-us.global.js +1 -1
  55. package/locales/es-us.global.min.js +1 -1
  56. package/locales/es.global.js +1 -1
  57. package/locales/es.global.min.js +1 -1
  58. package/locales/et.global.js +1 -1
  59. package/locales/et.global.min.js +1 -1
  60. package/locales/eu.global.js +1 -1
  61. package/locales/eu.global.min.js +1 -1
  62. package/locales/fa.global.js +1 -1
  63. package/locales/fa.global.min.js +1 -1
  64. package/locales/fi.global.js +1 -1
  65. package/locales/fi.global.min.js +1 -1
  66. package/locales/fr-ca.global.js +1 -1
  67. package/locales/fr-ca.global.min.js +1 -1
  68. package/locales/fr-ch.global.js +1 -1
  69. package/locales/fr-ch.global.min.js +1 -1
  70. package/locales/fr.global.js +1 -1
  71. package/locales/fr.global.min.js +1 -1
  72. package/locales/gl.global.js +1 -1
  73. package/locales/gl.global.min.js +1 -1
  74. package/locales/he.global.js +1 -1
  75. package/locales/he.global.min.js +1 -1
  76. package/locales/hi.global.js +1 -1
  77. package/locales/hi.global.min.js +1 -1
  78. package/locales/hr.global.js +1 -1
  79. package/locales/hr.global.min.js +1 -1
  80. package/locales/hu.global.js +1 -1
  81. package/locales/hu.global.min.js +1 -1
  82. package/locales/hy-am.global.js +1 -1
  83. package/locales/hy-am.global.min.js +1 -1
  84. package/locales/id.global.js +1 -1
  85. package/locales/id.global.min.js +1 -1
  86. package/locales/is.global.js +1 -1
  87. package/locales/is.global.min.js +1 -1
  88. package/locales/it.global.js +1 -1
  89. package/locales/it.global.min.js +1 -1
  90. package/locales/ja.global.js +1 -1
  91. package/locales/ja.global.min.js +1 -1
  92. package/locales/ka.global.js +1 -1
  93. package/locales/ka.global.min.js +1 -1
  94. package/locales/kk.global.js +1 -1
  95. package/locales/kk.global.min.js +1 -1
  96. package/locales/km.global.js +1 -1
  97. package/locales/km.global.min.js +1 -1
  98. package/locales/ko.global.js +1 -1
  99. package/locales/ko.global.min.js +1 -1
  100. package/locales/ku.global.js +1 -1
  101. package/locales/ku.global.min.js +1 -1
  102. package/locales/lb.global.js +1 -1
  103. package/locales/lb.global.min.js +1 -1
  104. package/locales/lt.global.js +1 -1
  105. package/locales/lt.global.min.js +1 -1
  106. package/locales/lv.global.js +1 -1
  107. package/locales/lv.global.min.js +1 -1
  108. package/locales/mk.global.js +1 -1
  109. package/locales/mk.global.min.js +1 -1
  110. package/locales/ms.global.js +1 -1
  111. package/locales/ms.global.min.js +1 -1
  112. package/locales/nb.global.js +1 -1
  113. package/locales/nb.global.min.js +1 -1
  114. package/locales/ne.global.js +1 -1
  115. package/locales/ne.global.min.js +1 -1
  116. package/locales/nl.global.js +1 -1
  117. package/locales/nl.global.min.js +1 -1
  118. package/locales/nn.global.js +1 -1
  119. package/locales/nn.global.min.js +1 -1
  120. package/locales/pl.global.js +1 -1
  121. package/locales/pl.global.min.js +1 -1
  122. package/locales/pt-br.global.js +1 -1
  123. package/locales/pt-br.global.min.js +1 -1
  124. package/locales/pt.global.js +1 -1
  125. package/locales/pt.global.min.js +1 -1
  126. package/locales/ro.global.js +1 -1
  127. package/locales/ro.global.min.js +1 -1
  128. package/locales/ru.global.js +1 -1
  129. package/locales/ru.global.min.js +1 -1
  130. package/locales/si-lk.global.js +1 -1
  131. package/locales/si-lk.global.min.js +1 -1
  132. package/locales/sk.global.js +1 -1
  133. package/locales/sk.global.min.js +1 -1
  134. package/locales/sl.global.js +1 -1
  135. package/locales/sl.global.min.js +1 -1
  136. package/locales/sm.global.js +1 -1
  137. package/locales/sm.global.min.js +1 -1
  138. package/locales/sq.global.js +1 -1
  139. package/locales/sq.global.min.js +1 -1
  140. package/locales/sr-cyrl.global.js +1 -1
  141. package/locales/sr-cyrl.global.min.js +1 -1
  142. package/locales/sr.global.js +1 -1
  143. package/locales/sr.global.min.js +1 -1
  144. package/locales/sv.global.js +1 -1
  145. package/locales/sv.global.min.js +1 -1
  146. package/locales/ta-in.global.js +1 -1
  147. package/locales/ta-in.global.min.js +1 -1
  148. package/locales/th.global.js +1 -1
  149. package/locales/th.global.min.js +1 -1
  150. package/locales/tr.global.js +1 -1
  151. package/locales/tr.global.min.js +1 -1
  152. package/locales/ug.global.js +1 -1
  153. package/locales/ug.global.min.js +1 -1
  154. package/locales/uk.global.js +1 -1
  155. package/locales/uk.global.min.js +1 -1
  156. package/locales/uz-cy.global.js +1 -1
  157. package/locales/uz-cy.global.min.js +1 -1
  158. package/locales/uz.global.js +1 -1
  159. package/locales/uz.global.min.js +1 -1
  160. package/locales/vi.global.js +1 -1
  161. package/locales/vi.global.min.js +1 -1
  162. package/locales/zh-cn.global.js +1 -1
  163. package/locales/zh-cn.global.min.js +1 -1
  164. package/locales/zh-tw.global.js +1 -1
  165. package/locales/zh-tw.global.min.js +1 -1
  166. package/locales-all.global.js +1 -1
  167. package/locales-all.global.min.js +1 -1
  168. package/package.json +1 -1
package/index.cjs CHANGED
@@ -1025,6 +1025,17 @@ function expandRanges(daysOfWeek, startTime, eventDateEnv, calendarDateEnv, fram
1025
1025
  let dayMarker = internalCommon.startOfDay(framingRange.start);
1026
1026
  let endMarker = framingRange.end;
1027
1027
  let instanceStarts = [];
1028
+ // https://github.com/fullcalendar/fullcalendar/issues/7934
1029
+ if (startTime) {
1030
+ if (startTime.milliseconds < 0) {
1031
+ // possible for next-day to have negative business hours that go into current day
1032
+ endMarker = internalCommon.addDays(endMarker, 1);
1033
+ }
1034
+ else if (startTime.milliseconds >= 1000 * 60 * 60 * 24) {
1035
+ // possible for prev-day to have >24hr business hours that go into current day
1036
+ dayMarker = internalCommon.addDays(dayMarker, -1);
1037
+ }
1038
+ }
1028
1039
  while (dayMarker < endMarker) {
1029
1040
  let instanceStart;
1030
1041
  // if everyday, or this particular day-of-week
@@ -2209,7 +2220,7 @@ function sliceEvents(props, allDay) {
2209
2220
  return internalCommon.sliceEventStore(props.eventStore, props.eventUiBases, props.dateProfile.activeRange, allDay ? props.nextDayThreshold : null).fg;
2210
2221
  }
2211
2222
 
2212
- const version = '6.1.18';
2223
+ const version = '6.1.19';
2213
2224
 
2214
2225
  exports.JsonRequestError = internalCommon.JsonRequestError;
2215
2226
  exports.Calendar = Calendar;
package/index.global.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- FullCalendar Core v6.1.18
2
+ FullCalendar Core v6.1.19
3
3
  Docs & License: https://fullcalendar.io
4
4
  (c) 2024 Adam Shaw
5
5
  */
@@ -1465,6 +1465,7 @@ var FullCalendar = (function (exports) {
1465
1465
  viewDidMount: identity,
1466
1466
  viewWillUnmount: identity,
1467
1467
  nowIndicator: Boolean,
1468
+ nowIndicatorSnap: identity,
1468
1469
  nowIndicatorClassNames: identity,
1469
1470
  nowIndicatorContent: identity,
1470
1471
  nowIndicatorDidMount: identity,
@@ -1647,6 +1648,7 @@ var FullCalendar = (function (exports) {
1647
1648
  eventMinWidth: 30,
1648
1649
  eventShortHeight: 30,
1649
1650
  monthStartFormat: { month: 'long', day: 'numeric' },
1651
+ nowIndicatorSnap: 'auto',
1650
1652
  };
1651
1653
  // calendar listeners
1652
1654
  // ------------------
@@ -5489,14 +5491,30 @@ var FullCalendar = (function (exports) {
5489
5491
  computeTiming() {
5490
5492
  let { props, context } = this;
5491
5493
  let unroundedNow = context.nowManager.getDateMarker();
5492
- let currentUnitStart = context.dateEnv.startOf(unroundedNow, props.unit);
5493
- let nextUnitStart = context.dateEnv.add(currentUnitStart, createDuration(1, props.unit));
5494
- let waitMs = nextUnitStart.valueOf() - unroundedNow.valueOf();
5494
+ let { nowIndicatorSnap } = context.options;
5495
+ if (nowIndicatorSnap === 'auto') {
5496
+ nowIndicatorSnap =
5497
+ // large unit?
5498
+ /year|month|week|day/.test(props.unit) ||
5499
+ // if slotDuration 30 mins for example, would NOT appear to snap (legacy behavior)
5500
+ (props.unitValue || 1) === 1;
5501
+ }
5502
+ let nowDate;
5503
+ let waitMs;
5504
+ if (nowIndicatorSnap) {
5505
+ nowDate = context.dateEnv.startOf(unroundedNow, props.unit); // aka currentUnitStart
5506
+ let nextUnitStart = context.dateEnv.add(nowDate, createDuration(1, props.unit));
5507
+ waitMs = nextUnitStart.valueOf() - unroundedNow.valueOf();
5508
+ }
5509
+ else {
5510
+ nowDate = unroundedNow;
5511
+ waitMs = 1000 * 60; // 1 minute
5512
+ }
5495
5513
  // there is a max setTimeout ms value (https://stackoverflow.com/a/3468650/96342)
5496
5514
  // ensure no longer than a day
5497
5515
  waitMs = Math.min(1000 * 60 * 60 * 24, waitMs);
5498
5516
  return {
5499
- state: { nowDate: currentUnitStart, todayRange: buildDayRange(currentUnitStart) },
5517
+ state: { nowDate, todayRange: buildDayRange(nowDate) },
5500
5518
  waitMs,
5501
5519
  };
5502
5520
  }
@@ -8750,6 +8768,17 @@ var FullCalendar = (function (exports) {
8750
8768
  let dayMarker = startOfDay(framingRange.start);
8751
8769
  let endMarker = framingRange.end;
8752
8770
  let instanceStarts = [];
8771
+ // https://github.com/fullcalendar/fullcalendar/issues/7934
8772
+ if (startTime) {
8773
+ if (startTime.milliseconds < 0) {
8774
+ // possible for next-day to have negative business hours that go into current day
8775
+ endMarker = addDays(endMarker, 1);
8776
+ }
8777
+ else if (startTime.milliseconds >= 1000 * 60 * 60 * 24) {
8778
+ // possible for prev-day to have >24hr business hours that go into current day
8779
+ dayMarker = addDays(dayMarker, -1);
8780
+ }
8781
+ }
8753
8782
  while (dayMarker < endMarker) {
8754
8783
  let instanceStart;
8755
8784
  // if everyday, or this particular day-of-week
@@ -9934,7 +9963,7 @@ var FullCalendar = (function (exports) {
9934
9963
  return sliceEventStore(props.eventStore, props.eventUiBases, props.dateProfile.activeRange, allDay ? props.nextDayThreshold : null).fg;
9935
9964
  }
9936
9965
 
9937
- const version = '6.1.18';
9966
+ const version = '6.1.19';
9938
9967
 
9939
9968
  exports.Calendar = Calendar;
9940
9969
  exports.Internal = internal;