diff --git a/__test__/__snapshots__/date-picker.test.js.snap b/__test__/__snapshots__/date-picker.test.js.snap index f60a4c5f..a2bce5cf 100644 --- a/__test__/__snapshots__/date-picker.test.js.snap +++ b/__test__/__snapshots__/date-picker.test.js.snap @@ -159,6 +159,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -168,6 +170,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -177,6 +181,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -186,6 +192,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -195,6 +203,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -204,6 +214,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -213,6 +225,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -235,6 +249,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -244,6 +260,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -253,6 +271,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -262,6 +282,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -271,6 +293,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -280,6 +304,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -289,6 +315,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -311,6 +339,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -320,6 +350,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -329,6 +361,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -338,6 +372,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -347,6 +383,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -356,6 +394,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -365,6 +405,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -387,6 +429,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -396,6 +440,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -405,6 +451,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -414,6 +462,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -423,6 +473,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -432,6 +484,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -441,6 +495,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -463,6 +519,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -472,6 +530,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -481,6 +541,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -490,6 +552,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -499,6 +563,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -508,6 +574,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -517,6 +585,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -539,6 +609,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -548,6 +620,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -557,6 +631,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -566,6 +642,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -575,6 +653,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -584,6 +664,8 @@ exports[`DatePicker prop: formatter 1`] = `
@@ -593,6 +675,8 @@ exports[`DatePicker prop: formatter 1`] = `
diff --git a/__test__/__snapshots__/table-date.test.js.snap b/__test__/__snapshots__/table-date.test.js.snap index 53cb0fe5..211c0156 100644 --- a/__test__/__snapshots__/table-date.test.js.snap +++ b/__test__/__snapshots__/table-date.test.js.snap @@ -108,6 +108,8 @@ exports[`TableDate corrent render 1`] = `
@@ -117,6 +119,8 @@ exports[`TableDate corrent render 1`] = `
@@ -126,6 +130,8 @@ exports[`TableDate corrent render 1`] = `
@@ -135,6 +141,8 @@ exports[`TableDate corrent render 1`] = `
@@ -144,6 +152,8 @@ exports[`TableDate corrent render 1`] = `
@@ -153,6 +163,8 @@ exports[`TableDate corrent render 1`] = `
@@ -162,6 +174,8 @@ exports[`TableDate corrent render 1`] = `
@@ -177,6 +191,8 @@ exports[`TableDate corrent render 1`] = `
@@ -186,6 +202,8 @@ exports[`TableDate corrent render 1`] = `
@@ -195,6 +213,8 @@ exports[`TableDate corrent render 1`] = `
@@ -204,6 +224,8 @@ exports[`TableDate corrent render 1`] = `
@@ -213,6 +235,8 @@ exports[`TableDate corrent render 1`] = `
@@ -222,6 +246,8 @@ exports[`TableDate corrent render 1`] = `
@@ -231,6 +257,8 @@ exports[`TableDate corrent render 1`] = `
@@ -246,6 +274,8 @@ exports[`TableDate corrent render 1`] = `
@@ -255,6 +285,8 @@ exports[`TableDate corrent render 1`] = `
@@ -264,6 +296,8 @@ exports[`TableDate corrent render 1`] = `
@@ -273,6 +307,8 @@ exports[`TableDate corrent render 1`] = `
@@ -282,6 +318,8 @@ exports[`TableDate corrent render 1`] = `
@@ -291,6 +329,8 @@ exports[`TableDate corrent render 1`] = `
@@ -300,6 +340,8 @@ exports[`TableDate corrent render 1`] = `
@@ -315,6 +357,8 @@ exports[`TableDate corrent render 1`] = `
@@ -324,6 +368,8 @@ exports[`TableDate corrent render 1`] = `
@@ -333,6 +379,8 @@ exports[`TableDate corrent render 1`] = `
@@ -342,6 +390,8 @@ exports[`TableDate corrent render 1`] = `
@@ -351,6 +401,8 @@ exports[`TableDate corrent render 1`] = `
@@ -360,6 +412,8 @@ exports[`TableDate corrent render 1`] = `
@@ -369,6 +423,8 @@ exports[`TableDate corrent render 1`] = `
@@ -384,6 +440,8 @@ exports[`TableDate corrent render 1`] = `
@@ -393,6 +451,8 @@ exports[`TableDate corrent render 1`] = `
@@ -402,6 +462,8 @@ exports[`TableDate corrent render 1`] = `
@@ -411,6 +473,8 @@ exports[`TableDate corrent render 1`] = `
@@ -420,6 +484,8 @@ exports[`TableDate corrent render 1`] = `
@@ -429,6 +495,8 @@ exports[`TableDate corrent render 1`] = `
@@ -438,6 +506,8 @@ exports[`TableDate corrent render 1`] = `
@@ -453,6 +523,8 @@ exports[`TableDate corrent render 1`] = `
@@ -462,6 +534,8 @@ exports[`TableDate corrent render 1`] = `
@@ -471,6 +545,8 @@ exports[`TableDate corrent render 1`] = `
@@ -480,6 +556,8 @@ exports[`TableDate corrent render 1`] = `
@@ -489,6 +567,8 @@ exports[`TableDate corrent render 1`] = `
@@ -498,6 +578,8 @@ exports[`TableDate corrent render 1`] = `
@@ -507,6 +589,8 @@ exports[`TableDate corrent render 1`] = `
diff --git a/__test__/__snapshots__/table-month.test.js.snap b/__test__/__snapshots__/table-month.test.js.snap index 3524fc75..9d3b4469 100644 --- a/__test__/__snapshots__/table-month.test.js.snap +++ b/__test__/__snapshots__/table-month.test.js.snap @@ -49,6 +49,8 @@ exports[`TableMonth correct render 1`] = `
Jan @@ -57,6 +59,8 @@ exports[`TableMonth correct render 1`] = `
Feb @@ -65,6 +69,8 @@ exports[`TableMonth correct render 1`] = `
Mar @@ -75,6 +81,8 @@ exports[`TableMonth correct render 1`] = `
Apr @@ -83,6 +91,8 @@ exports[`TableMonth correct render 1`] = `
May @@ -91,6 +101,8 @@ exports[`TableMonth correct render 1`] = `
Jun @@ -101,6 +113,8 @@ exports[`TableMonth correct render 1`] = `
Jul @@ -109,6 +123,8 @@ exports[`TableMonth correct render 1`] = `
Aug @@ -117,6 +133,8 @@ exports[`TableMonth correct render 1`] = `
Sep @@ -127,6 +145,8 @@ exports[`TableMonth correct render 1`] = `
Oct @@ -135,6 +155,8 @@ exports[`TableMonth correct render 1`] = `
Nov @@ -143,6 +165,8 @@ exports[`TableMonth correct render 1`] = `
Dec diff --git a/__test__/__snapshots__/table-year.test.js.snap b/__test__/__snapshots__/table-year.test.js.snap index dda92aa9..6b087115 100644 --- a/__test__/__snapshots__/table-year.test.js.snap +++ b/__test__/__snapshots__/table-year.test.js.snap @@ -50,16 +50,22 @@ exports[`TableYear decade=2010 1`] = ` >
2010
2011 @@ -68,16 +74,22 @@ exports[`TableYear decade=2010 1`] = `
2012
2013 @@ -86,16 +98,22 @@ exports[`TableYear decade=2010 1`] = `
2014
2015 @@ -104,16 +122,22 @@ exports[`TableYear decade=2010 1`] = `
2016
2017 @@ -122,16 +146,22 @@ exports[`TableYear decade=2010 1`] = `
2018
2019 diff --git a/__test__/date-picker.test.js b/__test__/date-picker.test.js index 4827831b..f8825a3d 100644 --- a/__test__/date-picker.test.js +++ b/__test__/date-picker.test.js @@ -23,8 +23,9 @@ describe('DatePicker', () => { const bodyWrapper = createWrapper(document.body); await bodyWrapper.trigger('mousedown'); expect(wrapper.find('.mx-datepicker-popup').exists()).toBe(false); - // expect focus input should show the popop + // expect keydown down should show the popop await input.trigger('focus'); + await input.trigger('keydown.down'); expect(wrapper.find('.mx-datepicker-popup').exists()).toBe(true); // expoce keydown tab should hide the popup await input.trigger('keydown.tab'); @@ -265,7 +266,6 @@ describe('DatePicker', () => { // click the date expect popup don't close vm.handleSelectDate(new Date(2018, 5, 5)); expect(wrapper.emitted().input).toBeUndefined(); - expect(vm.popupVisible).toBe(true); await btn.trigger('click'); expect(wrapper.emitted().input[0][0]).toEqual(new Date(2018, 5, 5)); expect(vm.popupVisible).toBe(false); diff --git a/src/calendar/calendar-panel.js b/src/calendar/calendar-panel.js index f4ba2fce..0a3d5578 100644 --- a/src/calendar/calendar-panel.js +++ b/src/calendar/calendar-panel.js @@ -66,6 +66,14 @@ export default { type: Boolean, default: false, }, + range: { + type: Boolean, + default: false, + }, + rangeIndex: { + type: Number, + default: 0, + }, }, data() { const panels = ['date', 'month', 'year']; @@ -249,6 +257,7 @@ export default { calendar={innerCalendar} getCellClasses={this.getYearClasses} getYearPanel={this.getYearPanel} + isDisabled={this.isDisabled} onSelect={this.handleSelectYear} onChangecalendar={this.handleCalendarChange} /> @@ -260,6 +269,7 @@ export default { disabledCalendarChanger={this.disabledCalendarChanger} calendar={innerCalendar} getCellClasses={this.getMonthClasses} + isDisabled={this.isDisabled} onSelect={this.handleSelectMonth} onChangepanel={this.handelPanelChange} onChangecalendar={this.handleCalendarChange} @@ -273,6 +283,9 @@ export default { calendar={innerCalendar} getCellClasses={this.getDateClasses} getRowClasses={this.getWeekState} + isDisabled={this.isDisabled} + range={this.range} + rangeIndex={this.rangeIndex} titleFormat={this.titleFormat} showWeekNumber={ typeof this.showWeekNumber === 'boolean' ? this.showWeekNumber : this.type === 'week' diff --git a/src/calendar/calendar-range.js b/src/calendar/calendar-range.js index 7cfdb888..a430e77c 100644 --- a/src/calendar/calendar-range.js +++ b/src/calendar/calendar-range.js @@ -148,6 +148,8 @@ export default { getClasses: this.getRangeClasses, // don't update when range is true partialUpdate: false, + rangeIndex: index, + range: true, }; const on = { select: this.handleSelect, diff --git a/src/calendar/icon-button.vue b/src/calendar/icon-button.vue index 10438714..58e06e23 100644 --- a/src/calendar/icon-button.vue +++ b/src/calendar/icon-button.vue @@ -1,6 +1,7 @@