|
77 | 77 | import { IDateFilter, IDefaultSelect, ITimeValue } from '../../interfaces'; |
78 | 78 | import { getArrayInArray, hoursToAmPmHours } from '../../utils/util'; |
79 | 79 | import SelectionGrid from '../SelectionGrid.vue'; |
| 80 | + import { addDateHours, addDateMinutes, subDateHours, subDateMinutes } from '../../utils/date-utils'; |
80 | 81 |
|
81 | 82 | const emit = defineEmits(['setHours', 'setMinutes', 'update:hours', 'update:minutes']); |
82 | 83 | const props = defineProps({ |
|
175 | 176 | return; |
176 | 177 | } |
177 | 178 | } |
178 | | - if ( |
179 | | - (props.is24 && hours.value + +props.hoursIncrement >= 24) || |
180 | | - (!props.is24 && hours.value + +props.hoursIncrement >= 12) |
181 | | - ) { |
182 | | - emit('update:hours', 0); |
183 | | - } else { |
184 | | - emit('update:hours', hours.value + +props.hoursIncrement); |
185 | | - } |
| 179 | + emit('update:hours', addDateHours(hours.value, +props.hoursIncrement)); |
186 | 180 | } else { |
187 | 181 | if (props.minTime.hours) { |
188 | 182 | if (hours.value - +props.hoursIncrement < +props.minTime.hours) { |
|
194 | 188 | return; |
195 | 189 | } |
196 | 190 | } |
197 | | - if (hours.value - +props.hoursIncrement < 0) { |
198 | | - emit('update:hours', props.is24 ? 24 - +props.hoursIncrement : 12 - -+props.hoursIncrement); |
199 | | - } else { |
200 | | - emit('update:hours', hours.value - +props.hoursIncrement); |
201 | | - } |
| 191 | + emit('update:hours', subDateHours(hours.value, +props.hoursIncrement)); |
202 | 192 | } |
203 | 193 | }; |
204 | 194 |
|
|
214 | 204 | return; |
215 | 205 | } |
216 | 206 | } |
217 | | - if (minutes.value + +props.minutesIncrement >= 60) { |
218 | | - emit('update:minutes', 0); |
219 | | - } else { |
220 | | - emit('update:minutes', minutes.value + +props.minutesIncrement); |
221 | | - } |
| 207 | + emit('update:minutes', addDateMinutes(minutes.value, +props.minutesIncrement)); |
222 | 208 | } else { |
223 | 209 | if (props.minTime.minutes) { |
224 | 210 | if (minutes.value - +props.minutesIncrement < +props.minTime.minutes) { |
|
230 | 216 | return; |
231 | 217 | } |
232 | 218 | } |
233 | | - if (minutes.value - +props.minutesIncrement < 0) { |
234 | | - emit('update:minutes', 60 - +props.minutesIncrement); |
235 | | - } else { |
236 | | - emit('update:minutes', minutes.value - +props.minutesIncrement); |
237 | | - } |
| 219 | + emit('update:minutes', subDateMinutes(minutes.value, +props.minutesIncrement)); |
238 | 220 | } |
239 | 221 | }; |
240 | 222 |
|
|
0 commit comments