@progress/kendo-vue-dateinputs 3.5.4-dev.202209071223 → 3.5.4-dev.202209091220

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -136,6 +136,20 @@ var DateInputVue2 = {
136
136
  valid: {
137
137
  type: Boolean,
138
138
  default: undefined
139
+ },
140
+ ariaRole: {
141
+ type: String,
142
+ default: 'textbox'
143
+ },
144
+ ariaControls: String,
145
+ ariaLabel: String,
146
+ ariaExpanded: {
147
+ type: Boolean,
148
+ default: undefined
149
+ },
150
+ ariaHasPopup: {
151
+ type: Boolean,
152
+ default: undefined
139
153
  }
140
154
  },
141
155
  data: function data() {
@@ -539,12 +553,14 @@ var DateInputVue2 = {
539
553
  format = _a.format,
540
554
  value = _a.value,
541
555
  modelValue = _a.modelValue,
542
- min = _a.min,
543
- max = _a.max,
544
556
  name = _a.name,
545
557
  label = _a.label,
546
558
  id = _a.id,
547
- defaultValue = _a.defaultValue;
559
+ ariaLabel = _a.ariaLabel,
560
+ ariaExpanded = _a.ariaExpanded,
561
+ ariaHasPopup = _a.ariaHasPopup,
562
+ ariaRole = _a.ariaRole,
563
+ ariaControls = _a.ariaControls;
548
564
  this.kendoDate.format = format;
549
565
  this.kendoDate.formatPlaceholder = formatPlaceholder;
550
566
  var currentValue = value !== undefined ? value : modelValue;
@@ -570,9 +586,9 @@ var DateInputVue2 = {
570
586
  dir: this.$props.dir
571
587
  }
572
588
  }, [h("input", {
573
- role: "spinbutton",
589
+ role: ariaRole,
574
590
  attrs: this.v3 ? undefined : {
575
- role: "spinbutton",
591
+ role: ariaRole,
576
592
  tabindex: this.$props.tabIndex,
577
593
  disabled: this.$props.disabled,
578
594
  title: this.$props.title !== undefined ? this.$props.title : currentText,
@@ -583,10 +599,10 @@ var DateInputVue2 = {
583
599
  id: inputId,
584
600
  placeholder: this.$props.placeholder,
585
601
  name: name,
586
- "aria-valuenow": this.computedValue !== null ? this.computedValue.getTime() : undefined,
587
- "aria-valuemin": min === null ? undefined : min.getTime(),
588
- "aria-valuemax": max === null ? undefined : max.getTime(),
589
- "aria-valuetext": currentText
602
+ "aria-label": ariaLabel,
603
+ "aria-expanded": ariaExpanded,
604
+ "aria-haspopup": ariaHasPopup,
605
+ "aria-controls": ariaControls
590
606
  },
591
607
  tabindex: this.$props.tabIndex,
592
608
  disabled: this.$props.disabled,
@@ -619,10 +635,10 @@ var DateInputVue2 = {
619
635
  "value": textToDisplay
620
636
  },
621
637
  name: name,
622
- "aria-valuenow": this.computedValue !== null ? this.computedValue.getTime() : undefined,
623
- "aria-valuemin": min === null ? undefined : min.getTime(),
624
- "aria-valuemax": max === null ? undefined : max.getTime(),
625
- "aria-valuetext": currentText,
638
+ "aria-label": ariaLabel,
639
+ "aria-expanded": ariaExpanded,
640
+ "aria-haspopup": ariaHasPopup,
641
+ "aria-controls": ariaControls,
626
642
  ref: setRef(this, 'input')
627
643
  }), defaultSlot, this.$props.spinners && h("span", {
628
644
  "class": "k-input-spinner k-spin-button",
@@ -64,6 +64,26 @@ export interface DateInputSettings {
64
64
  * Sets the title of the `input` element of the DateInput.
65
65
  */
66
66
  title?: string;
67
+ /**
68
+ * Sets the aria-label of the DateInput.
69
+ */
70
+ ariaLabel?: string;
71
+ /**
72
+ * Sets the aria role of the DateInput.
73
+ */
74
+ ariaRole?: string;
75
+ /**
76
+ * Sets the aria-controls of the DateInput.
77
+ */
78
+ ariaControls?: string;
79
+ /**
80
+ * Sets the aria-haspopup of the DateInput.
81
+ */
82
+ ariaHasPopup?: boolean;
83
+ /**
84
+ * Sets the aria-expanded of the DateInput.
85
+ */
86
+ ariaExpanded?: boolean;
67
87
  /**
68
88
  * Specifies the incremental steps of the DateInput ([see example]({% slug incrementalsteps_dateinput %}).
69
89
  *
@@ -192,21 +192,8 @@ var DatePickerVue2 = {
192
192
  // If defaultShow is true during the initial render, the popup is not aligned.
193
193
  this.$forceUpdate();
194
194
  }
195
-
196
- if (this._dateInput && this._dateInput.$el) {
197
- this._dateInput.$el.setAttribute('aria-haspopup', 'true'); // this._dateInput.$el.setAttribute('aria-expanded', `${this.$data.currentShow}`);
198
-
199
- }
200
-
201
- if (this.$el) {
202
- this.$el.setAttribute('aria-expanded', "".concat(this.computedShow));
203
- }
204
195
  },
205
196
  updated: function updated() {
206
- if (this.$el) {
207
- this.$el.setAttribute('aria-expanded', "".concat(this.computedShow));
208
- }
209
-
210
197
  if (this.$refs.calendar || this.calendarRef) {
211
198
  this._calendar = getRef(this, 'calendar');
212
199
  }
@@ -494,7 +481,11 @@ var DatePickerVue2 = {
494
481
  valid: this.validity().valid,
495
482
  validationMessage: validationMessage,
496
483
  validityStyles: validityStyles,
497
- value: value
484
+ value: value,
485
+ ariaHasPopup: true,
486
+ ariaExpanded: show,
487
+ ariaRole: "combobox",
488
+ ariaControls: this._popupId
498
489
  },
499
490
  disabled: disabled,
500
491
  format: format,
@@ -516,7 +507,11 @@ var DatePickerVue2 = {
516
507
  valid: this.validity().valid,
517
508
  validationMessage: validationMessage,
518
509
  validityStyles: validityStyles,
519
- value: value
510
+ value: value,
511
+ ariaHasPopup: true,
512
+ ariaExpanded: show,
513
+ ariaRole: "combobox",
514
+ ariaControls: this._popupId
520
515
  });
521
516
  var dateInputRendering = getTemplate.call(this, {
522
517
  h: h,
@@ -602,10 +597,8 @@ var DatePickerVue2 = {
602
597
  ref: setRef(this, 'kendoAnchor', this._anchor),
603
598
  role: "group",
604
599
  attrs: this.v3 ? undefined : {
605
- role: "group",
606
- "aria-expanded": this.computedShow
600
+ role: "group"
607
601
  },
608
- "aria-expanded": this.computedShow,
609
602
  "class": classNames('k-input', 'k-datepicker', (_a = {}, _a["k-input-".concat(kendoThemeMaps.sizeMap[size] || size)] = size, _a["k-input-".concat(fillMode)] = fillMode, _a["k-rounded-".concat(kendoThemeMaps.roundedMap[rounded] || rounded)] = rounded, _a['k-invalid'] = !isValid, _a['k-required'] = this.required, _a['k-disabled'] = this.$props.disabled, _a['k-focus'] = this.$data.isFocused, _a)),
610
603
  onKeydown: this.handleKeyDown,
611
604
  on: this.v3 ? undefined : {
@@ -275,7 +275,9 @@ var DateRangePickerVue2 = {
275
275
  rounded: rounded,
276
276
  ariaHasPopup: true,
277
277
  ariaExpanded: this.computedShow,
278
- value: value.start
278
+ value: value.start,
279
+ ariaRole: 'combobox',
280
+ ariaControls: this._popupId
279
281
  }, this.$props.startDateInputSettings);
280
282
 
281
283
  var startDateInputDefaultRendering = h(DateInput, __assign(__assign({
@@ -312,7 +314,9 @@ var DateRangePickerVue2 = {
312
314
  valid: this.$props.valid,
313
315
  ariaHasPopup: true,
314
316
  ariaExpanded: this.computedShow,
315
- value: value.end
317
+ value: value.end,
318
+ ariaRole: 'combobox',
319
+ ariaControls: this._popupId
316
320
  }, this.$props.endDateInputSettings);
317
321
 
318
322
  var endDateInputDefaultRendering = h(DateInput, __assign(__assign({
@@ -243,7 +243,6 @@ var DateTimePickerVue2 = {
243
243
 
244
244
  if (dateInputElement) {
245
245
  dateInputElement.setAttribute('aria-haspopup', 'true');
246
- dateInputElement.setAttribute('aria-expanded', "".concat(this.computedShow));
247
246
  }
248
247
  },
249
248
  updated: function updated() {
@@ -251,10 +250,6 @@ var DateTimePickerVue2 = {
251
250
  this._dateTimeSelector = this.$refs.dateTimeSelector;
252
251
  this._wrapper = this.v3 ? this.kendoAnchorRef : this.$refs[this._anchor];
253
252
 
254
- if (dateInputElement) {
255
- dateInputElement.setAttribute('aria-expanded', "".concat(this.computedShow));
256
- }
257
-
258
253
  if (this._dateTimeSelector && this.computedShow && !this._oldShow) {
259
254
  this._dateTimeSelector.focus({
260
255
  preventScroll: true
@@ -349,7 +344,11 @@ var DateTimePickerVue2 = {
349
344
  valid: this.validity().valid,
350
345
  validationMessage: validationMessage,
351
346
  validityStyles: validityStyles,
352
- value: this.computedValue
347
+ value: this.computedValue,
348
+ ariaHasPopup: true,
349
+ ariaExpanded: this.computedShow,
350
+ ariaRole: "combobox",
351
+ ariaControls: this._popupId
353
352
  },
354
353
  disabled: disabled,
355
354
  format: format,
@@ -376,7 +375,11 @@ var DateTimePickerVue2 = {
376
375
  valid: this.validity().valid,
377
376
  validationMessage: validationMessage,
378
377
  validityStyles: validityStyles,
379
- value: this.computedValue
378
+ value: this.computedValue,
379
+ ariaHasPopup: true,
380
+ ariaExpanded: this.computedShow,
381
+ ariaRole: "combobox",
382
+ ariaControls: this._popupId
380
383
  }, this.v3 ? function () {
381
384
  return [defaultSlot];
382
385
  } : [defaultSlot]);
@@ -5,7 +5,7 @@ export var packageMetadata = {
5
5
  name: '@progress/kendo-vue-dateinputs',
6
6
  productName: 'Kendo UI for Vue',
7
7
  productCodes: ['KENDOUIVUE', 'KENDOUICOMPLETE'],
8
- publishDate: 1662552967,
8
+ publishDate: 1662725573,
9
9
  version: '',
10
10
  licensingDocsUrl: 'https://www.telerik.com/kendo-vue-ui/my-license/?utm_medium=product&utm_source=kendovue&utm_campaign=kendo-ui-vue-purchase-license-keys-warning'
11
11
  };
@@ -251,8 +251,6 @@ var TimePickerVue2 = {
251
251
 
252
252
  if (this._dateInput && this._dateInput.element()) {
253
253
  this._dateInput.element().setAttribute('aria-haspopup', 'true');
254
-
255
- this._dateInput.element().setAttribute('aria-expanded', "".concat(this.computedShow));
256
254
  }
257
255
  },
258
256
  updated: function updated() {
@@ -260,10 +258,6 @@ var TimePickerVue2 = {
260
258
  this._timeSelector = this.$refs.timeSelector;
261
259
  this._wrapper = this.v3 ? this.kendoAnchorRef : this.$refs[this._anchor];
262
260
 
263
- if (this._dateInput && this._dateInput.element()) {
264
- this._dateInput.element().setAttribute('aria-expanded', "".concat(this.computedShow));
265
- }
266
-
267
261
  if (this._timeSelector && this.computedShow && !this._oldShow) {
268
262
  this._timeSelector.focusActiveList();
269
263
  } else if (this._dateInput && this._dateInput.element() && !this.computedShow && this.shouldFocusDateInput) {
@@ -357,7 +351,11 @@ var TimePickerVue2 = {
357
351
  valid: this.validity().valid,
358
352
  validationMessage: validationMessage,
359
353
  validityStyles: validityStyles,
360
- value: this.computedValue && this.normalizeTime(this.computedValue)
354
+ value: this.computedValue && this.normalizeTime(this.computedValue),
355
+ ariaHasPopup: true,
356
+ ariaExpanded: this.computedShow,
357
+ ariaRole: "combobox",
358
+ ariaControls: this._popupId
361
359
  },
362
360
  disabled: disabled,
363
361
  format: format,
@@ -382,7 +380,11 @@ var TimePickerVue2 = {
382
380
  valid: this.validity().valid,
383
381
  validationMessage: validationMessage,
384
382
  validityStyles: validityStyles,
385
- value: this.computedValue && this.normalizeTime(this.computedValue)
383
+ value: this.computedValue && this.normalizeTime(this.computedValue),
384
+ ariaHasPopup: true,
385
+ ariaExpanded: this.computedShow,
386
+ ariaRole: "combobox",
387
+ ariaControls: this._popupId
386
388
  }, this.v3 ? function () {
387
389
  return [defaultSlot];
388
390
  } : [defaultSlot]);
@@ -136,6 +136,20 @@ var DateInputVue2 = {
136
136
  valid: {
137
137
  type: Boolean,
138
138
  default: undefined
139
+ },
140
+ ariaRole: {
141
+ type: String,
142
+ default: 'textbox'
143
+ },
144
+ ariaControls: String,
145
+ ariaLabel: String,
146
+ ariaExpanded: {
147
+ type: Boolean,
148
+ default: undefined
149
+ },
150
+ ariaHasPopup: {
151
+ type: Boolean,
152
+ default: undefined
139
153
  }
140
154
  },
141
155
  data: function data() {
@@ -539,12 +553,14 @@ var DateInputVue2 = {
539
553
  format = _a.format,
540
554
  value = _a.value,
541
555
  modelValue = _a.modelValue,
542
- min = _a.min,
543
- max = _a.max,
544
556
  name = _a.name,
545
557
  label = _a.label,
546
558
  id = _a.id,
547
- defaultValue = _a.defaultValue;
559
+ ariaLabel = _a.ariaLabel,
560
+ ariaExpanded = _a.ariaExpanded,
561
+ ariaHasPopup = _a.ariaHasPopup,
562
+ ariaRole = _a.ariaRole,
563
+ ariaControls = _a.ariaControls;
548
564
  this.kendoDate.format = format;
549
565
  this.kendoDate.formatPlaceholder = formatPlaceholder;
550
566
  var currentValue = value !== undefined ? value : modelValue;
@@ -570,9 +586,9 @@ var DateInputVue2 = {
570
586
  dir: this.$props.dir
571
587
  }
572
588
  }, [h("input", {
573
- role: "spinbutton",
589
+ role: ariaRole,
574
590
  attrs: this.v3 ? undefined : {
575
- role: "spinbutton",
591
+ role: ariaRole,
576
592
  tabindex: this.$props.tabIndex,
577
593
  disabled: this.$props.disabled,
578
594
  title: this.$props.title !== undefined ? this.$props.title : currentText,
@@ -583,10 +599,10 @@ var DateInputVue2 = {
583
599
  id: inputId,
584
600
  placeholder: this.$props.placeholder,
585
601
  name: name,
586
- "aria-valuenow": this.computedValue !== null ? this.computedValue.getTime() : undefined,
587
- "aria-valuemin": min === null ? undefined : min.getTime(),
588
- "aria-valuemax": max === null ? undefined : max.getTime(),
589
- "aria-valuetext": currentText
602
+ "aria-label": ariaLabel,
603
+ "aria-expanded": ariaExpanded,
604
+ "aria-haspopup": ariaHasPopup,
605
+ "aria-controls": ariaControls
590
606
  },
591
607
  tabindex: this.$props.tabIndex,
592
608
  disabled: this.$props.disabled,
@@ -619,10 +635,10 @@ var DateInputVue2 = {
619
635
  "value": textToDisplay
620
636
  },
621
637
  name: name,
622
- "aria-valuenow": this.computedValue !== null ? this.computedValue.getTime() : undefined,
623
- "aria-valuemin": min === null ? undefined : min.getTime(),
624
- "aria-valuemax": max === null ? undefined : max.getTime(),
625
- "aria-valuetext": currentText,
638
+ "aria-label": ariaLabel,
639
+ "aria-expanded": ariaExpanded,
640
+ "aria-haspopup": ariaHasPopup,
641
+ "aria-controls": ariaControls,
626
642
  ref: setRef(this, 'input')
627
643
  }), defaultSlot, this.$props.spinners && h("span", {
628
644
  "class": "k-input-spinner k-spin-button",
@@ -64,6 +64,26 @@ export interface DateInputSettings {
64
64
  * Sets the title of the `input` element of the DateInput.
65
65
  */
66
66
  title?: string;
67
+ /**
68
+ * Sets the aria-label of the DateInput.
69
+ */
70
+ ariaLabel?: string;
71
+ /**
72
+ * Sets the aria role of the DateInput.
73
+ */
74
+ ariaRole?: string;
75
+ /**
76
+ * Sets the aria-controls of the DateInput.
77
+ */
78
+ ariaControls?: string;
79
+ /**
80
+ * Sets the aria-haspopup of the DateInput.
81
+ */
82
+ ariaHasPopup?: boolean;
83
+ /**
84
+ * Sets the aria-expanded of the DateInput.
85
+ */
86
+ ariaExpanded?: boolean;
67
87
  /**
68
88
  * Specifies the incremental steps of the DateInput ([see example]({% slug incrementalsteps_dateinput %}).
69
89
  *
@@ -192,21 +192,8 @@ var DatePickerVue2 = {
192
192
  // If defaultShow is true during the initial render, the popup is not aligned.
193
193
  this.$forceUpdate();
194
194
  }
195
-
196
- if (this._dateInput && this._dateInput.$el) {
197
- this._dateInput.$el.setAttribute('aria-haspopup', 'true'); // this._dateInput.$el.setAttribute('aria-expanded', `${this.$data.currentShow}`);
198
-
199
- }
200
-
201
- if (this.$el) {
202
- this.$el.setAttribute('aria-expanded', "".concat(this.computedShow));
203
- }
204
195
  },
205
196
  updated: function updated() {
206
- if (this.$el) {
207
- this.$el.setAttribute('aria-expanded', "".concat(this.computedShow));
208
- }
209
-
210
197
  if (this.$refs.calendar || this.calendarRef) {
211
198
  this._calendar = getRef(this, 'calendar');
212
199
  }
@@ -494,7 +481,11 @@ var DatePickerVue2 = {
494
481
  valid: this.validity().valid,
495
482
  validationMessage: validationMessage,
496
483
  validityStyles: validityStyles,
497
- value: value
484
+ value: value,
485
+ ariaHasPopup: true,
486
+ ariaExpanded: show,
487
+ ariaRole: "combobox",
488
+ ariaControls: this._popupId
498
489
  },
499
490
  disabled: disabled,
500
491
  format: format,
@@ -516,7 +507,11 @@ var DatePickerVue2 = {
516
507
  valid: this.validity().valid,
517
508
  validationMessage: validationMessage,
518
509
  validityStyles: validityStyles,
519
- value: value
510
+ value: value,
511
+ ariaHasPopup: true,
512
+ ariaExpanded: show,
513
+ ariaRole: "combobox",
514
+ ariaControls: this._popupId
520
515
  });
521
516
  var dateInputRendering = getTemplate.call(this, {
522
517
  h: h,
@@ -602,10 +597,8 @@ var DatePickerVue2 = {
602
597
  ref: setRef(this, 'kendoAnchor', this._anchor),
603
598
  role: "group",
604
599
  attrs: this.v3 ? undefined : {
605
- role: "group",
606
- "aria-expanded": this.computedShow
600
+ role: "group"
607
601
  },
608
- "aria-expanded": this.computedShow,
609
602
  "class": classNames('k-input', 'k-datepicker', (_a = {}, _a["k-input-".concat(kendoThemeMaps.sizeMap[size] || size)] = size, _a["k-input-".concat(fillMode)] = fillMode, _a["k-rounded-".concat(kendoThemeMaps.roundedMap[rounded] || rounded)] = rounded, _a['k-invalid'] = !isValid, _a['k-required'] = this.required, _a['k-disabled'] = this.$props.disabled, _a['k-focus'] = this.$data.isFocused, _a)),
610
603
  onKeydown: this.handleKeyDown,
611
604
  on: this.v3 ? undefined : {
@@ -275,7 +275,9 @@ var DateRangePickerVue2 = {
275
275
  rounded: rounded,
276
276
  ariaHasPopup: true,
277
277
  ariaExpanded: this.computedShow,
278
- value: value.start
278
+ value: value.start,
279
+ ariaRole: 'combobox',
280
+ ariaControls: this._popupId
279
281
  }, this.$props.startDateInputSettings);
280
282
 
281
283
  var startDateInputDefaultRendering = h(DateInput, __assign(__assign({
@@ -312,7 +314,9 @@ var DateRangePickerVue2 = {
312
314
  valid: this.$props.valid,
313
315
  ariaHasPopup: true,
314
316
  ariaExpanded: this.computedShow,
315
- value: value.end
317
+ value: value.end,
318
+ ariaRole: 'combobox',
319
+ ariaControls: this._popupId
316
320
  }, this.$props.endDateInputSettings);
317
321
 
318
322
  var endDateInputDefaultRendering = h(DateInput, __assign(__assign({
@@ -243,7 +243,6 @@ var DateTimePickerVue2 = {
243
243
 
244
244
  if (dateInputElement) {
245
245
  dateInputElement.setAttribute('aria-haspopup', 'true');
246
- dateInputElement.setAttribute('aria-expanded', "".concat(this.computedShow));
247
246
  }
248
247
  },
249
248
  updated: function updated() {
@@ -251,10 +250,6 @@ var DateTimePickerVue2 = {
251
250
  this._dateTimeSelector = this.$refs.dateTimeSelector;
252
251
  this._wrapper = this.v3 ? this.kendoAnchorRef : this.$refs[this._anchor];
253
252
 
254
- if (dateInputElement) {
255
- dateInputElement.setAttribute('aria-expanded', "".concat(this.computedShow));
256
- }
257
-
258
253
  if (this._dateTimeSelector && this.computedShow && !this._oldShow) {
259
254
  this._dateTimeSelector.focus({
260
255
  preventScroll: true
@@ -349,7 +344,11 @@ var DateTimePickerVue2 = {
349
344
  valid: this.validity().valid,
350
345
  validationMessage: validationMessage,
351
346
  validityStyles: validityStyles,
352
- value: this.computedValue
347
+ value: this.computedValue,
348
+ ariaHasPopup: true,
349
+ ariaExpanded: this.computedShow,
350
+ ariaRole: "combobox",
351
+ ariaControls: this._popupId
353
352
  },
354
353
  disabled: disabled,
355
354
  format: format,
@@ -376,7 +375,11 @@ var DateTimePickerVue2 = {
376
375
  valid: this.validity().valid,
377
376
  validationMessage: validationMessage,
378
377
  validityStyles: validityStyles,
379
- value: this.computedValue
378
+ value: this.computedValue,
379
+ ariaHasPopup: true,
380
+ ariaExpanded: this.computedShow,
381
+ ariaRole: "combobox",
382
+ ariaControls: this._popupId
380
383
  }, this.v3 ? function () {
381
384
  return [defaultSlot];
382
385
  } : [defaultSlot]);
@@ -5,7 +5,7 @@ export var packageMetadata = {
5
5
  name: '@progress/kendo-vue-dateinputs',
6
6
  productName: 'Kendo UI for Vue',
7
7
  productCodes: ['KENDOUIVUE', 'KENDOUICOMPLETE'],
8
- publishDate: 1662552967,
8
+ publishDate: 1662725573,
9
9
  version: '',
10
10
  licensingDocsUrl: 'https://www.telerik.com/kendo-vue-ui/my-license/?utm_medium=product&utm_source=kendovue&utm_campaign=kendo-ui-vue-purchase-license-keys-warning'
11
11
  };
@@ -251,8 +251,6 @@ var TimePickerVue2 = {
251
251
 
252
252
  if (this._dateInput && this._dateInput.element()) {
253
253
  this._dateInput.element().setAttribute('aria-haspopup', 'true');
254
-
255
- this._dateInput.element().setAttribute('aria-expanded', "".concat(this.computedShow));
256
254
  }
257
255
  },
258
256
  updated: function updated() {
@@ -260,10 +258,6 @@ var TimePickerVue2 = {
260
258
  this._timeSelector = this.$refs.timeSelector;
261
259
  this._wrapper = this.v3 ? this.kendoAnchorRef : this.$refs[this._anchor];
262
260
 
263
- if (this._dateInput && this._dateInput.element()) {
264
- this._dateInput.element().setAttribute('aria-expanded', "".concat(this.computedShow));
265
- }
266
-
267
261
  if (this._timeSelector && this.computedShow && !this._oldShow) {
268
262
  this._timeSelector.focusActiveList();
269
263
  } else if (this._dateInput && this._dateInput.element() && !this.computedShow && this.shouldFocusDateInput) {
@@ -357,7 +351,11 @@ var TimePickerVue2 = {
357
351
  valid: this.validity().valid,
358
352
  validationMessage: validationMessage,
359
353
  validityStyles: validityStyles,
360
- value: this.computedValue && this.normalizeTime(this.computedValue)
354
+ value: this.computedValue && this.normalizeTime(this.computedValue),
355
+ ariaHasPopup: true,
356
+ ariaExpanded: this.computedShow,
357
+ ariaRole: "combobox",
358
+ ariaControls: this._popupId
361
359
  },
362
360
  disabled: disabled,
363
361
  format: format,
@@ -382,7 +380,11 @@ var TimePickerVue2 = {
382
380
  valid: this.validity().valid,
383
381
  validationMessage: validationMessage,
384
382
  validityStyles: validityStyles,
385
- value: this.computedValue && this.normalizeTime(this.computedValue)
383
+ value: this.computedValue && this.normalizeTime(this.computedValue),
384
+ ariaHasPopup: true,
385
+ ariaExpanded: this.computedShow,
386
+ ariaRole: "combobox",
387
+ ariaControls: this._popupId
386
388
  }, this.v3 ? function () {
387
389
  return [defaultSlot];
388
390
  } : [defaultSlot]);
@@ -156,6 +156,20 @@ var DateInputVue2 = {
156
156
  valid: {
157
157
  type: Boolean,
158
158
  default: undefined
159
+ },
160
+ ariaRole: {
161
+ type: String,
162
+ default: 'textbox'
163
+ },
164
+ ariaControls: String,
165
+ ariaLabel: String,
166
+ ariaExpanded: {
167
+ type: Boolean,
168
+ default: undefined
169
+ },
170
+ ariaHasPopup: {
171
+ type: Boolean,
172
+ default: undefined
159
173
  }
160
174
  },
161
175
  data: function data() {
@@ -559,12 +573,14 @@ var DateInputVue2 = {
559
573
  format = _a.format,
560
574
  value = _a.value,
561
575
  modelValue = _a.modelValue,
562
- min = _a.min,
563
- max = _a.max,
564
576
  name = _a.name,
565
577
  label = _a.label,
566
578
  id = _a.id,
567
- defaultValue = _a.defaultValue;
579
+ ariaLabel = _a.ariaLabel,
580
+ ariaExpanded = _a.ariaExpanded,
581
+ ariaHasPopup = _a.ariaHasPopup,
582
+ ariaRole = _a.ariaRole,
583
+ ariaControls = _a.ariaControls;
568
584
  this.kendoDate.format = format;
569
585
  this.kendoDate.formatPlaceholder = formatPlaceholder;
570
586
  var currentValue = value !== undefined ? value : modelValue;
@@ -590,9 +606,9 @@ var DateInputVue2 = {
590
606
  dir: this.$props.dir
591
607
  }
592
608
  }, [h("input", {
593
- role: "spinbutton",
609
+ role: ariaRole,
594
610
  attrs: this.v3 ? undefined : {
595
- role: "spinbutton",
611
+ role: ariaRole,
596
612
  tabindex: this.$props.tabIndex,
597
613
  disabled: this.$props.disabled,
598
614
  title: this.$props.title !== undefined ? this.$props.title : currentText,
@@ -603,10 +619,10 @@ var DateInputVue2 = {
603
619
  id: inputId,
604
620
  placeholder: this.$props.placeholder,
605
621
  name: name,
606
- "aria-valuenow": this.computedValue !== null ? this.computedValue.getTime() : undefined,
607
- "aria-valuemin": min === null ? undefined : min.getTime(),
608
- "aria-valuemax": max === null ? undefined : max.getTime(),
609
- "aria-valuetext": currentText
622
+ "aria-label": ariaLabel,
623
+ "aria-expanded": ariaExpanded,
624
+ "aria-haspopup": ariaHasPopup,
625
+ "aria-controls": ariaControls
610
626
  },
611
627
  tabindex: this.$props.tabIndex,
612
628
  disabled: this.$props.disabled,
@@ -639,10 +655,10 @@ var DateInputVue2 = {
639
655
  "value": textToDisplay
640
656
  },
641
657
  name: name,
642
- "aria-valuenow": this.computedValue !== null ? this.computedValue.getTime() : undefined,
643
- "aria-valuemin": min === null ? undefined : min.getTime(),
644
- "aria-valuemax": max === null ? undefined : max.getTime(),
645
- "aria-valuetext": currentText,
658
+ "aria-label": ariaLabel,
659
+ "aria-expanded": ariaExpanded,
660
+ "aria-haspopup": ariaHasPopup,
661
+ "aria-controls": ariaControls,
646
662
  ref: (0, kendo_vue_common_1.setRef)(this, 'input')
647
663
  }), defaultSlot, this.$props.spinners && h("span", {
648
664
  "class": "k-input-spinner k-spin-button",