Adam Shaw 7 лет назад
Родитель
Сommit
418c13358a
2 измененных файлов с 15 добавлено и 6 удалено
  1. 11 5
      src/component/DateComponent.ts
  2. 4 1
      src/structs/date-span.ts

+ 11 - 5
src/component/DateComponent.ts

@@ -1120,12 +1120,14 @@ export default abstract class DateComponent extends Component {
   }
 
   isEventsValid(eventStore: EventStore) {
-    let { validRange } = this.dateProfile
+    let { dateProfile } = this
     let instances = eventStore.instances
 
-    for (let instanceId in instances) {
-      if (!rangeContainsRange(validRange, instances[instanceId].range)) {
-        return false
+    if (dateProfile) { // HACK for DayTile
+      for (let instanceId in instances) {
+        if (!rangeContainsRange(dateProfile.validRange, instances[instanceId].range)) {
+          return false
+        }
       }
     }
 
@@ -1133,8 +1135,12 @@ export default abstract class DateComponent extends Component {
   }
 
   isSelectionValid(selection: DateSpan): boolean {
+    let { dateProfile } = this
 
-    if (!rangeContainsRange(this.dateProfile.validRange, selection.range)) {
+    if (
+      dateProfile && // HACK for DayTile
+      !rangeContainsRange(dateProfile.validRange, selection.range)
+    ) {
       return false
     }
 

+ 4 - 1
src/structs/date-span.ts

@@ -73,7 +73,10 @@ export function parseOpenDateSpan(raw: OpenDateSpanInput, dateEnv: DateEnv): Ope
     }
 
     // use this leftover object as the selection object
-    leftovers.range = { start: startMeta.marker, end: endMeta.marker }
+    leftovers.range = {
+      start: startMeta ? startMeta.marker : null,
+      end: endMeta ? endMeta.marker : null
+    }
     leftovers.isAllDay = isAllDay
 
     return leftovers