Ver Fonte

fix to dot event rendering

Adam Shaw há 5 anos atrás
pai
commit
cdc8ec3f8f

+ 1 - 0
packages/core/src/datelib/marker.ts

@@ -27,6 +27,7 @@ export function addMs(m: DateMarker, n: number) {
 
 
 
 
 // Diffing (all return floats)
 // Diffing (all return floats)
+// TODO: why not use ranges?
 
 
 export function diffWeeks(m0, m1) {
 export function diffWeeks(m0, m1) {
   return diffDays(m0, m1) / 7
   return diffDays(m0, m1) / 7

+ 7 - 2
packages/daygrid/src/event-rendering.ts

@@ -1,4 +1,4 @@
-import { EventRenderRange } from '@fullcalendar/core'
+import { EventRenderRange, diffDays } from '@fullcalendar/core'
 
 
 
 
 export const DEFAULT_TABLE_EVENT_TIME_FORMAT = {
 export const DEFAULT_TABLE_EVENT_TIME_FORMAT = {
@@ -12,5 +12,10 @@ export const DEFAULT_TABLE_EVENT_TIME_FORMAT = {
 export function isDotRendering(eventRange: EventRenderRange) {
 export function isDotRendering(eventRange: EventRenderRange) {
   let { rendering } = eventRange.ui
   let { rendering } = eventRange.ui
   let isAuto = !rendering || rendering === 'auto' // TODO: normalize earlier on
   let isAuto = !rendering || rendering === 'auto' // TODO: normalize earlier on
-  return rendering === 'dot' || (isAuto && !eventRange.def.allDay) // or auto and has-time. TODO: more DRY
+
+  return rendering === 'dot' || (
+    isAuto &&
+    !eventRange.def.allDay &&
+      diffDays(eventRange.instance.range.start, eventRange.instance.range.end) <= 1 // TODO: use nextDayThreshold
+  )
 }
 }