Skip to content

Commit f30b53f

Browse files
committed
fix(pickerday): Only highlight selected edge date if shown
1 parent 9a3a0de commit f30b53f

File tree

2 files changed

+54
-1
lines changed

2 files changed

+54
-1
lines changed

src/components/PickerDay.vue

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -225,9 +225,12 @@ export default {
225225
* @param {Object} day
226226
* @return {Object}
227227
*/
228+
// eslint-disable-next-line complexity
228229
dayClasses(day) {
229230
return {
230-
'selected': day.isSelected,
231+
'selected': this.showEdgeDates
232+
? day.isSelected
233+
: day.isSelected && !day.isPreviousMonth && !day.isNextMonth,
231234
'disabled': day.isDisabled,
232235
'highlighted': day.isHighlighted,
233236
'muted': day.isPreviousMonth || day.isNextMonth,

test/unit/specs/PickerDay/pickerDay.spec.js

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,4 +102,54 @@ describe('PickerDay: DOM', () => {
102102

103103
expect(wrapper.emitted('select')[0][0].date).toBe(3)
104104
})
105+
106+
it("only highlights today's edge date if shown", async () => {
107+
const day = {
108+
date: 1,
109+
isToday: true,
110+
isPreviousMonth: false,
111+
isNextMonth: true,
112+
}
113+
114+
await wrapper.setProps({
115+
showEdgeDates: true,
116+
})
117+
118+
let dayClasses = wrapper.vm.dayClasses(day)
119+
120+
expect(dayClasses.today).toBeTruthy()
121+
122+
await wrapper.setProps({
123+
showEdgeDates: false,
124+
})
125+
126+
dayClasses = wrapper.vm.dayClasses(day)
127+
128+
expect(dayClasses.today).toBeFalsy()
129+
})
130+
131+
it('only highlights selected edge date if shown', async () => {
132+
const day = {
133+
date: 1,
134+
isSelected: true,
135+
isPreviousMonth: false,
136+
isNextMonth: true,
137+
}
138+
139+
await wrapper.setProps({
140+
showEdgeDates: true,
141+
})
142+
143+
let dayClasses = wrapper.vm.dayClasses(day)
144+
145+
expect(dayClasses.selected).toBeTruthy()
146+
147+
await wrapper.setProps({
148+
showEdgeDates: false,
149+
})
150+
151+
dayClasses = wrapper.vm.dayClasses(day)
152+
153+
expect(dayClasses.selected).toBeFalsy()
154+
})
105155
})

0 commit comments

Comments
 (0)