@@ -290,37 +290,35 @@ class Calendar extends PureComponent {
290290 onDragSelectionEnd ( date ) {
291291 const { updateRange, displayMode, onChange, dragSelectionEnabled } = this . props ;
292292
293- if ( dragSelectionEnabled ) {
294- if ( displayMode === 'date' || ! this . state . drag . status ) {
295- onChange && onChange ( date ) ;
296- return ;
297- }
298- const newRange = {
299- startDate : this . state . drag . range . startDate ,
300- endDate : date ,
301- } ;
302- if ( displayMode !== 'dateRange' || isSameDay ( newRange . startDate , date ) ) {
303- this . setState ( { drag : { status : false , range : { } } } , ( ) => onChange && onChange ( date ) ) ;
304- } else {
305- this . setState ( { drag : { status : false , range : { } } } , ( ) => {
306- updateRange && updateRange ( newRange ) ;
307- } ) ;
308- }
293+ if ( ! dragSelectionEnabled ) return ;
294+
295+ if ( displayMode === 'date' || ! this . state . drag . status ) {
296+ onChange && onChange ( date ) ;
297+ return ;
309298 }
310- }
311- onDragSelectionMove ( date ) {
312- if ( this . props . dragSelectionEnabled ) {
313- const { drag } = this . state ;
314- if ( ! drag . status ) return ;
315- this . setState ( {
316- drag : {
317- status : drag . status ,
318- range : { startDate : drag . range . startDate , endDate : date } ,
319- disablePreview : true ,
320- } ,
299+ const newRange = {
300+ startDate : this . state . drag . range . startDate ,
301+ endDate : date ,
302+ } ;
303+ if ( displayMode !== 'dateRange' || isSameDay ( newRange . startDate , date ) ) {
304+ this . setState ( { drag : { status : false , range : { } } } , ( ) => onChange && onChange ( date ) ) ;
305+ } else {
306+ this . setState ( { drag : { status : false , range : { } } } , ( ) => {
307+ updateRange && updateRange ( newRange ) ;
321308 } ) ;
322309 }
323310 }
311+ onDragSelectionMove ( date ) {
312+ const { drag } = this . state ;
313+ if ( ! drag . status || ! this . props . dragSelectionEnabled ) return ;
314+ this . setState ( {
315+ drag : {
316+ status : drag . status ,
317+ range : { startDate : drag . range . startDate , endDate : date } ,
318+ disablePreview : true ,
319+ } ,
320+ } ) ;
321+ }
324322
325323 estimateMonthSize ( index , cache ) {
326324 const { direction, minDate } = this . props ;
0 commit comments