Adam Shaw 7 年 前
コミット
71d02bd380

+ 6 - 6
src/agenda/SimpleTimeGrid.ts

@@ -56,8 +56,8 @@ export default class SimpleTimeGrid extends Component<SimpleTimeGridProps> {
       eventSegs: this.eventStoreToSegs(props.eventStore, props.eventUis, dateProfile, colRanges, timeGrid),
       dateSelectionSegs: this.selectionToSegs(props.dateSelection, colRanges, timeGrid),
       eventSelection: props.eventSelection,
-      eventDrag: this.buildEventDrag(props.eventDrag, props.eventUis, dateProfile, colRanges, timeGrid),
-      eventResize: this.buildEventResize(props.eventResize, props.eventUis, dateProfile, colRanges, timeGrid)
+      eventDrag: this.buildEventDrag(props.eventDrag, dateProfile, colRanges, timeGrid),
+      eventResize: this.buildEventResize(props.eventResize, dateProfile, colRanges, timeGrid)
     })
   }
 
@@ -111,14 +111,14 @@ function businessHoursToSegs(businessHours: EventStore, dateProfile: DateProfile
   )
 }
 
-function buildSegInteraction(interaction: EventInteractionUiState, eventUis: EventUiHash, dateProfile: DateProfile, colRanges: DateRange[], timeGrid: TimeGrid) {
+function buildSegInteraction(interaction: EventInteractionUiState, dateProfile: DateProfile, colRanges: DateRange[], timeGrid: TimeGrid) {
   if (!interaction) {
     return null
   }
 
   return {
     segs: eventRangesToSegs(
-      sliceEventStore(interaction.mutatedEvents, eventUis, dateProfile.activeRange),
+      sliceEventStore(interaction.mutatedEvents, interaction.eventUis, dateProfile.activeRange),
       colRanges,
       timeGrid
     ),
@@ -180,8 +180,8 @@ function eventRangeToSegs(colRanges: DateRange[], eventRange: EventRenderRange,
         eventRange,
         start: segRange.start,
         end: segRange.end,
-        isStart: segRange.start.valueOf() === range.start.valueOf(),
-        isEnd: segRange.end.valueOf() === range.end.valueOf(),
+        isStart: eventRange.isStart && segRange.start.valueOf() === range.start.valueOf(),
+        isEnd: eventRange.isEnd && segRange.end.valueOf() === range.end.valueOf(),
         col
       })
     }

+ 3 - 2
src/agenda/TimeGridMirrorRenderer.ts

@@ -15,9 +15,10 @@ export default class TimeGridMirrorRenderer extends TimeGridEventRenderer {
 
   generateSegCss(seg: Seg) {
     let props = super.generateSegCss(seg)
+    let { sourceSeg } = this
 
-    if (seg.col === this.sourceSeg.col) {
-      let sourceSegProps = super.generateSegCss(this.sourceSeg)
+    if (sourceSeg && sourceSeg.col === seg.col) {
+      let sourceSegProps = super.generateSegCss(sourceSeg)
 
       props.left = sourceSegProps.left
       props.right = sourceSegProps.right

+ 2 - 2
src/basic/SimpleDayGrid.ts

@@ -111,8 +111,8 @@ function eventRangeToSegs(eventRange: EventRenderRange, dayTable: DayTable, dayG
     return {
       eventRange,
       component: dayGrid,
-      isStart: seg.isStart,
-      isEnd: seg.isEnd,
+      isStart: eventRange.isStart && seg.isStart,
+      isEnd: eventRange.isEnd && seg.isEnd,
       row: seg.row,
       leftCol: dayGrid.isRtl ? (dayTable.colCnt - 1 - seg.lastCol) : seg.firstCol,
       rightCol: dayGrid.isRtl ? (dayTable.colCnt - 1 - seg.firstCol) : seg.lastCol

+ 2 - 2
src/list/ListView.ts

@@ -142,8 +142,8 @@ export default class ListView extends View {
           eventRange,
           start: segRange.start,
           end: segRange.end,
-          isStart: segRange.start.valueOf() === range.start.valueOf(),
-          isEnd: segRange.end.valueOf() === range.end.valueOf(),
+          isStart: eventRange.isStart && segRange.start.valueOf() === range.start.valueOf(),
+          isEnd: eventRange.isEnd && segRange.end.valueOf() === range.end.valueOf(),
           dayIndex: dayIndex
         }