@progress/kendo-vue-dateinputs 6.0.2-develop.1 → 6.1.0-develop.2

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.
Files changed (101) hide show
  1. package/README.md +1 -1
  2. package/calendar/components/Calendar.js +1 -1
  3. package/calendar/components/Calendar.mjs +1 -1
  4. package/calendar/components/CalendarCell.js +1 -1
  5. package/calendar/components/CalendarCell.mjs +1 -1
  6. package/calendar/components/CalendarHeaderTitle.js +1 -1
  7. package/calendar/components/CalendarHeaderTitle.mjs +1 -1
  8. package/calendar/components/CalendarWeekCell.js +1 -1
  9. package/calendar/components/CalendarWeekCell.mjs +1 -1
  10. package/calendar/components/Header.js +1 -1
  11. package/calendar/components/Header.mjs +1 -1
  12. package/calendar/components/View.js +1 -1
  13. package/calendar/components/View.mjs +1 -1
  14. package/calendar/components/ViewList.js +1 -1
  15. package/calendar/components/ViewList.mjs +1 -1
  16. package/calendar/models/CalendarViewEnum.js +1 -1
  17. package/calendar/models/CalendarViewEnum.mjs +1 -1
  18. package/calendar/models/NavigationAction.js +1 -1
  19. package/calendar/models/NavigationAction.mjs +1 -1
  20. package/calendar/models/SelectionRange.js +1 -1
  21. package/calendar/models/SelectionRange.mjs +1 -1
  22. package/calendar/services/BusViewService.js +1 -1
  23. package/calendar/services/BusViewService.mjs +1 -1
  24. package/calendar/services/CenturyViewService.js +1 -1
  25. package/calendar/services/CenturyViewService.mjs +1 -1
  26. package/calendar/services/DOMService.js +1 -1
  27. package/calendar/services/DOMService.mjs +1 -1
  28. package/calendar/services/DecadeViewService.js +1 -1
  29. package/calendar/services/DecadeViewService.mjs +1 -1
  30. package/calendar/services/MonthViewService.js +1 -1
  31. package/calendar/services/MonthViewService.mjs +1 -1
  32. package/calendar/services/NavigationService.js +1 -1
  33. package/calendar/services/NavigationService.mjs +1 -1
  34. package/calendar/services/WeekNamesService.js +1 -1
  35. package/calendar/services/WeekNamesService.mjs +1 -1
  36. package/calendar/services/YearViewService.js +1 -1
  37. package/calendar/services/YearViewService.mjs +1 -1
  38. package/calendar/utils/main.js +1 -1
  39. package/calendar/utils/main.mjs +1 -1
  40. package/common/PickerWrap.js +1 -1
  41. package/common/PickerWrap.mjs +1 -1
  42. package/dateinput/DateInput.js +2 -2
  43. package/dateinput/DateInput.mjs +83 -81
  44. package/dateinput/models/kendo-date.js +2 -2
  45. package/dateinput/models/kendo-date.mjs +30 -27
  46. package/dateinput/models/mask.js +1 -1
  47. package/dateinput/models/mask.mjs +1 -1
  48. package/dateinput/utils.js +1 -1
  49. package/dateinput/utils.mjs +1 -1
  50. package/datepicker/DatePicker.js +2 -2
  51. package/datepicker/DatePicker.mjs +67 -64
  52. package/datepicker/ToggleButton.js +1 -1
  53. package/datepicker/ToggleButton.mjs +1 -1
  54. package/daterangepicker/DateRangePicker.js +2 -2
  55. package/daterangepicker/DateRangePicker.mjs +30 -27
  56. package/datetimepicker/DateTimePicker.js +2 -2
  57. package/datetimepicker/DateTimePicker.mjs +60 -57
  58. package/datetimepicker/DateTimeSelector.js +1 -1
  59. package/datetimepicker/DateTimeSelector.mjs +1 -1
  60. package/defaults.js +1 -1
  61. package/defaults.mjs +1 -1
  62. package/dist/cdn/js/kendo-vue-dateinputs.js +2 -2
  63. package/index.d.mts +108 -76
  64. package/index.d.ts +108 -76
  65. package/index.js +1 -1
  66. package/index.mjs +1 -1
  67. package/messages/main.js +1 -1
  68. package/messages/main.mjs +1 -1
  69. package/package-metadata.js +1 -1
  70. package/package-metadata.mjs +2 -2
  71. package/package.json +7 -7
  72. package/timepicker/TimeList.js +1 -1
  73. package/timepicker/TimeList.mjs +1 -1
  74. package/timepicker/TimePart.js +1 -1
  75. package/timepicker/TimePart.mjs +1 -1
  76. package/timepicker/TimePicker.js +2 -2
  77. package/timepicker/TimePicker.mjs +63 -60
  78. package/timepicker/TimeSelector.js +1 -1
  79. package/timepicker/TimeSelector.mjs +1 -1
  80. package/timepicker/models/TimePart.js +1 -1
  81. package/timepicker/models/TimePart.mjs +1 -1
  82. package/timepicker/services/DOMService.js +1 -1
  83. package/timepicker/services/DOMService.mjs +1 -1
  84. package/timepicker/services/DayPeriodService.js +1 -1
  85. package/timepicker/services/DayPeriodService.mjs +1 -1
  86. package/timepicker/services/HoursService.js +1 -1
  87. package/timepicker/services/HoursService.mjs +1 -1
  88. package/timepicker/services/MinutesService.js +1 -1
  89. package/timepicker/services/MinutesService.mjs +1 -1
  90. package/timepicker/services/SecondsService.js +1 -1
  91. package/timepicker/services/SecondsService.mjs +1 -1
  92. package/timepicker/utils.js +1 -1
  93. package/timepicker/utils.mjs +1 -1
  94. package/utils.js +1 -1
  95. package/utils.mjs +1 -1
  96. package/virtualization/Virtualization.js +1 -1
  97. package/virtualization/Virtualization.mjs +1 -1
  98. package/virtualization/services/RowHeightService.js +1 -1
  99. package/virtualization/services/RowHeightService.mjs +1 -1
  100. package/virtualization/services/ScrollerService.js +1 -1
  101. package/virtualization/services/ScrollerService.mjs +1 -1
package/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  *-------------------------------------------------------------------------------------------
4
- * Copyright © 2024 Progress Software Corporation. All rights reserved.
4
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
@@ -669,6 +669,7 @@ ariaHasPopup: {
669
669
  type: PropType<String>;
670
670
  default: any;
671
671
  };
672
+ inputAttributes: PropType<Object>;
672
673
  }>, {
673
674
  inputRef: Ref<any, any>;
674
675
  kendoIntlService: {};
@@ -802,6 +803,7 @@ ariaHasPopup: {
802
803
  type: PropType<String>;
803
804
  default: any;
804
805
  };
806
+ inputAttributes: PropType<Object>;
805
807
  }>> & Readonly<{
806
808
  onBlur?: (...args: any[] | unknown[]) => any;
807
809
  onChange?: (...args: any[] | unknown[]) => any;
@@ -1067,6 +1069,11 @@ export declare interface DateInputSettings {
1067
1069
  * Identifies the element(s) which will label the component.
1068
1070
  */
1069
1071
  ariaLabelledBy?: string;
1072
+ /**
1073
+ * Sets the built-in HTML attributes of the inner focusable input element.
1074
+ * Attributes which are essential for certain component functionalities cannot be changed.
1075
+ */
1076
+ inputAttributes?: Object;
1070
1077
  }
1071
1078
 
1072
1079
  declare interface DateInputsPopupSettings {
@@ -1089,101 +1096,102 @@ declare interface DateInputsPopupSettings {
1089
1096
  */
1090
1097
  export declare const DatePicker: DefineComponent<ExtractPropTypes< {
1091
1098
  defaultShow: {
1092
- type: BooleanConstructor;
1099
+ type: PropType<boolean>;
1093
1100
  default: boolean;
1094
1101
  };
1095
1102
  modelValue: {
1096
- type: DateConstructor;
1103
+ type: PropType<Date>;
1097
1104
  default: any;
1098
1105
  };
1099
1106
  defaultValue: {
1100
- type: DateConstructor;
1107
+ type: PropType<Date>;
1101
1108
  default: any;
1102
1109
  };
1103
1110
  disabled: {
1104
- type: BooleanConstructor;
1111
+ type: PropType<boolean>;
1105
1112
  default: boolean;
1106
1113
  };
1107
1114
  dateInput: {
1108
- type: (ObjectConstructor | StringConstructor | FunctionConstructor)[];
1115
+ type: PropType<any>;
1109
1116
  default: () => any;
1110
1117
  };
1111
1118
  calendar: {
1112
- type: (ObjectConstructor | StringConstructor | FunctionConstructor)[];
1119
+ type: PropType<any>;
1113
1120
  default: () => any;
1114
1121
  };
1115
1122
  toggleButton: {
1116
- type: (ObjectConstructor | StringConstructor | FunctionConstructor)[];
1123
+ type: PropType<any>;
1117
1124
  default: () => any;
1118
1125
  };
1119
- label: StringConstructor;
1120
- placeholder: StringConstructor;
1126
+ label: PropType<string>;
1127
+ placeholder: PropType<string>;
1121
1128
  popup: {
1122
- type: (ObjectConstructor | StringConstructor | FunctionConstructor)[];
1129
+ type: PropType<any>;
1123
1130
  default: () => any;
1124
1131
  };
1125
1132
  rounded: {
1126
- type: StringConstructor;
1133
+ type: PropType<string>;
1127
1134
  default: string;
1128
1135
  validator: (value: string) => any;
1129
1136
  };
1130
1137
  fillMode: {
1131
- type: StringConstructor;
1138
+ type: PropType<string>;
1132
1139
  default: string;
1133
1140
  validator: (value: string) => any;
1134
1141
  };
1135
1142
  size: {
1136
- type: StringConstructor;
1143
+ type: PropType<string>;
1137
1144
  default: string;
1138
1145
  validator: (value: string) => any;
1139
1146
  };
1140
- focusedDate: DateConstructor;
1147
+ focusedDate: PropType<Date>;
1141
1148
  format: {
1142
- type: (ObjectConstructor | StringConstructor)[];
1149
+ type: PropType<string | DateFormatOptions>;
1143
1150
  default: () => "d";
1144
1151
  };
1145
- formatPlaceholder: (ObjectConstructor | StringConstructor)[];
1146
- id: StringConstructor;
1152
+ formatPlaceholder: PropType<DateInputFormatPlaceholder>;
1153
+ id: PropType<string>;
1147
1154
  max: {
1148
- type: DateConstructor;
1155
+ type: PropType<Date>;
1149
1156
  default: () => Date;
1150
1157
  };
1151
1158
  min: {
1152
- type: DateConstructor;
1159
+ type: PropType<Date>;
1153
1160
  default: () => Date;
1154
1161
  };
1155
- name: StringConstructor;
1162
+ name: PropType<string>;
1156
1163
  popupSettings: {
1157
- type: ObjectConstructor;
1164
+ type: PropType<DateInputsPopupSettings>;
1158
1165
  default: () => {};
1159
1166
  };
1160
1167
  show: {
1161
- type: BooleanConstructor;
1168
+ type: PropType<boolean>;
1162
1169
  default: any;
1163
1170
  };
1164
1171
  tabIndex: {
1165
- type: NumberConstructor;
1172
+ type: PropType<number>;
1166
1173
  default: number;
1167
1174
  };
1168
1175
  title: {
1169
- type: StringConstructor;
1176
+ type: PropType<string>;
1170
1177
  default: () => "";
1171
1178
  };
1172
- value: DateConstructor;
1173
- weekNumber: BooleanConstructor;
1174
- width: (StringConstructor | NumberConstructor)[];
1179
+ value: PropType<Date>;
1180
+ weekNumber: PropType<boolean>;
1181
+ width: PropType<string | number>;
1175
1182
  validityStyles: {
1176
- type: BooleanConstructor;
1183
+ type: PropType<boolean>;
1177
1184
  default: boolean;
1178
1185
  };
1179
- validationMessage: StringConstructor;
1180
- required: BooleanConstructor;
1181
- validate: BooleanConstructor;
1186
+ validationMessage: PropType<string>;
1187
+ required: PropType<boolean>;
1188
+ validate: PropType<boolean>;
1182
1189
  valid: {
1183
- type: BooleanConstructor;
1190
+ type: PropType<boolean>;
1184
1191
  default: any;
1185
1192
  };
1186
- ariaLabel: StringConstructor;
1193
+ ariaLabel: PropType<string>;
1194
+ inputAttributes: PropType<Object>;
1187
1195
  }>, {
1188
1196
  listRef: Ref<any, any>;
1189
1197
  kendoAnchorRef: Ref<any, any>;
@@ -1229,101 +1237,102 @@ open: any;
1229
1237
  close: any;
1230
1238
  }, string, PublicProps, Readonly<ExtractPropTypes< {
1231
1239
  defaultShow: {
1232
- type: BooleanConstructor;
1240
+ type: PropType<boolean>;
1233
1241
  default: boolean;
1234
1242
  };
1235
1243
  modelValue: {
1236
- type: DateConstructor;
1244
+ type: PropType<Date>;
1237
1245
  default: any;
1238
1246
  };
1239
1247
  defaultValue: {
1240
- type: DateConstructor;
1248
+ type: PropType<Date>;
1241
1249
  default: any;
1242
1250
  };
1243
1251
  disabled: {
1244
- type: BooleanConstructor;
1252
+ type: PropType<boolean>;
1245
1253
  default: boolean;
1246
1254
  };
1247
1255
  dateInput: {
1248
- type: (ObjectConstructor | StringConstructor | FunctionConstructor)[];
1256
+ type: PropType<any>;
1249
1257
  default: () => any;
1250
1258
  };
1251
1259
  calendar: {
1252
- type: (ObjectConstructor | StringConstructor | FunctionConstructor)[];
1260
+ type: PropType<any>;
1253
1261
  default: () => any;
1254
1262
  };
1255
1263
  toggleButton: {
1256
- type: (ObjectConstructor | StringConstructor | FunctionConstructor)[];
1264
+ type: PropType<any>;
1257
1265
  default: () => any;
1258
1266
  };
1259
- label: StringConstructor;
1260
- placeholder: StringConstructor;
1267
+ label: PropType<string>;
1268
+ placeholder: PropType<string>;
1261
1269
  popup: {
1262
- type: (ObjectConstructor | StringConstructor | FunctionConstructor)[];
1270
+ type: PropType<any>;
1263
1271
  default: () => any;
1264
1272
  };
1265
1273
  rounded: {
1266
- type: StringConstructor;
1274
+ type: PropType<string>;
1267
1275
  default: string;
1268
1276
  validator: (value: string) => any;
1269
1277
  };
1270
1278
  fillMode: {
1271
- type: StringConstructor;
1279
+ type: PropType<string>;
1272
1280
  default: string;
1273
1281
  validator: (value: string) => any;
1274
1282
  };
1275
1283
  size: {
1276
- type: StringConstructor;
1284
+ type: PropType<string>;
1277
1285
  default: string;
1278
1286
  validator: (value: string) => any;
1279
1287
  };
1280
- focusedDate: DateConstructor;
1288
+ focusedDate: PropType<Date>;
1281
1289
  format: {
1282
- type: (ObjectConstructor | StringConstructor)[];
1290
+ type: PropType<string | DateFormatOptions>;
1283
1291
  default: () => "d";
1284
1292
  };
1285
- formatPlaceholder: (ObjectConstructor | StringConstructor)[];
1286
- id: StringConstructor;
1293
+ formatPlaceholder: PropType<DateInputFormatPlaceholder>;
1294
+ id: PropType<string>;
1287
1295
  max: {
1288
- type: DateConstructor;
1296
+ type: PropType<Date>;
1289
1297
  default: () => Date;
1290
1298
  };
1291
1299
  min: {
1292
- type: DateConstructor;
1300
+ type: PropType<Date>;
1293
1301
  default: () => Date;
1294
1302
  };
1295
- name: StringConstructor;
1303
+ name: PropType<string>;
1296
1304
  popupSettings: {
1297
- type: ObjectConstructor;
1305
+ type: PropType<DateInputsPopupSettings>;
1298
1306
  default: () => {};
1299
1307
  };
1300
1308
  show: {
1301
- type: BooleanConstructor;
1309
+ type: PropType<boolean>;
1302
1310
  default: any;
1303
1311
  };
1304
1312
  tabIndex: {
1305
- type: NumberConstructor;
1313
+ type: PropType<number>;
1306
1314
  default: number;
1307
1315
  };
1308
1316
  title: {
1309
- type: StringConstructor;
1317
+ type: PropType<string>;
1310
1318
  default: () => "";
1311
1319
  };
1312
- value: DateConstructor;
1313
- weekNumber: BooleanConstructor;
1314
- width: (StringConstructor | NumberConstructor)[];
1320
+ value: PropType<Date>;
1321
+ weekNumber: PropType<boolean>;
1322
+ width: PropType<string | number>;
1315
1323
  validityStyles: {
1316
- type: BooleanConstructor;
1324
+ type: PropType<boolean>;
1317
1325
  default: boolean;
1318
1326
  };
1319
- validationMessage: StringConstructor;
1320
- required: BooleanConstructor;
1321
- validate: BooleanConstructor;
1327
+ validationMessage: PropType<string>;
1328
+ required: PropType<boolean>;
1329
+ validate: PropType<boolean>;
1322
1330
  valid: {
1323
- type: BooleanConstructor;
1331
+ type: PropType<boolean>;
1324
1332
  default: any;
1325
1333
  };
1326
- ariaLabel: StringConstructor;
1334
+ ariaLabel: PropType<string>;
1335
+ inputAttributes: PropType<Object>;
1327
1336
  }>> & Readonly<{
1328
1337
  onBlur?: (...args: any[] | unknown[]) => any;
1329
1338
  onChange?: (...args: any[] | unknown[]) => any;
@@ -1335,29 +1344,26 @@ onChangemodel?: (...args: any[] | unknown[]) => any;
1335
1344
  "onUpdate:modelValue"?: (...args: any[] | unknown[]) => any;
1336
1345
  onIconclick?: (...args: any[] | unknown[]) => any;
1337
1346
  }>, {
1338
- required: boolean;
1339
1347
  title: string;
1340
1348
  tabIndex: number;
1341
1349
  size: string;
1342
- format: string | Record<string, any>;
1350
+ format: "d";
1343
1351
  max: Date;
1344
1352
  min: Date;
1345
- weekNumber: boolean;
1346
1353
  rounded: string;
1347
1354
  fillMode: string;
1348
1355
  disabled: boolean;
1349
1356
  defaultValue: Date;
1350
1357
  show: boolean;
1351
- popupSettings: Record<string, any>;
1352
- popup: string | Function | Record<string, any>;
1358
+ popupSettings: DateInputsPopupSettings;
1359
+ popup: any;
1353
1360
  modelValue: Date;
1354
- validate: boolean;
1355
1361
  validityStyles: boolean;
1356
1362
  valid: boolean;
1357
1363
  defaultShow: boolean;
1358
- dateInput: string | Function | Record<string, any>;
1359
- calendar: string | Function | Record<string, any>;
1360
- toggleButton: string | Function | Record<string, any>;
1364
+ dateInput: any;
1365
+ calendar: any;
1366
+ toggleButton: any;
1361
1367
  }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
1362
1368
 
1363
1369
  /**
@@ -1570,6 +1576,11 @@ export declare interface DatePickerSettings {
1570
1576
  * Specifies the width of the DatePicker.
1571
1577
  */
1572
1578
  width?: number | string;
1579
+ /**
1580
+ * Sets the built-in HTML attributes of the inner focusable input element.
1581
+ * Attributes which are essential for certain component functionalities cannot be changed.
1582
+ */
1583
+ inputAttributes?: Object;
1573
1584
  }
1574
1585
 
1575
1586
  /**
@@ -1651,6 +1662,7 @@ value: {
1651
1662
  type: PropType<SelectionRange>;
1652
1663
  default: () => any;
1653
1664
  };
1665
+ inputAttributes: PropType<Object>;
1654
1666
  }>, {
1655
1667
  kendoAnchorRef: Ref<any, any>;
1656
1668
  kendoLocalizationService: {};
@@ -1779,6 +1791,7 @@ value: {
1779
1791
  type: PropType<SelectionRange>;
1780
1792
  default: () => any;
1781
1793
  };
1794
+ inputAttributes: PropType<Object>;
1782
1795
  }>> & Readonly<{
1783
1796
  onBlur?: (...args: any[] | unknown[]) => any;
1784
1797
  onChange?: (...args: any[] | unknown[]) => any;
@@ -2046,6 +2059,11 @@ export declare interface DateRangePickerSettings {
2046
2059
  * Sets the `tabIndex` property of the DatePicker.
2047
2060
  */
2048
2061
  tabIndex?: number;
2062
+ /**
2063
+ * Sets the built-in HTML attributes of the inner focusable input element.
2064
+ * Attributes which are essential for certain component functionalities cannot be changed.
2065
+ */
2066
+ inputAttributes?: Object;
2049
2067
  }
2050
2068
 
2051
2069
  /**
@@ -2170,6 +2188,7 @@ cancelButton: {
2170
2188
  type: PropType<boolean>;
2171
2189
  default: boolean;
2172
2190
  };
2191
+ inputAttributes: PropType<Object>;
2173
2192
  }>, {
2174
2193
  kendoAnchorRef: Ref<any, any>;
2175
2194
  kendoLocalizationService: {};
@@ -2328,6 +2347,7 @@ cancelButton: {
2328
2347
  type: PropType<boolean>;
2329
2348
  default: boolean;
2330
2349
  };
2350
+ inputAttributes: PropType<Object>;
2331
2351
  }>> & Readonly<{
2332
2352
  onBlur?: (...args: any[] | unknown[]) => any;
2333
2353
  onChange?: (...args: any[] | unknown[]) => any;
@@ -2609,6 +2629,11 @@ export declare interface DateTimePickerSettings {
2609
2629
  *
2610
2630
  */
2611
2631
  validationMessage?: string;
2632
+ /**
2633
+ * Sets the built-in HTML attributes of the inner focusable input element.
2634
+ * Attributes which are essential for certain component functionalities cannot be changed.
2635
+ */
2636
+ inputAttributes?: Object;
2612
2637
  }
2613
2638
 
2614
2639
  /**
@@ -2797,6 +2822,7 @@ valid: {
2797
2822
  type: PropType<boolean>;
2798
2823
  default: any;
2799
2824
  };
2825
+ inputAttributes: PropType<Object>;
2800
2826
  }>, {
2801
2827
  kendoAnchorRef: Ref<any, any>;
2802
2828
  kendoLocalizationService: {};
@@ -2951,6 +2977,7 @@ valid: {
2951
2977
  type: PropType<boolean>;
2952
2978
  default: any;
2953
2979
  };
2980
+ inputAttributes: PropType<Object>;
2954
2981
  }>> & Readonly<{
2955
2982
  onBlur?: (...args: any[] | unknown[]) => any;
2956
2983
  onChange?: (...args: any[] | unknown[]) => any;
@@ -3209,6 +3236,11 @@ export declare interface TimePickerSettings {
3209
3236
  * Specifies the validate of the TimePicker.
3210
3237
  */
3211
3238
  validate?: boolean;
3239
+ /**
3240
+ * Sets the built-in HTML attributes of the inner focusable input element.
3241
+ * Attributes which are essential for certain component functionalities cannot be changed.
3242
+ */
3243
+ inputAttributes?: Object;
3212
3244
  }
3213
3245
 
3214
3246
  /**
package/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  *-------------------------------------------------------------------------------------------
4
- * Copyright © 2024 Progress Software Corporation. All rights reserved.
4
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
package/index.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  *-------------------------------------------------------------------------------------------
4
- * Copyright © 2024 Progress Software Corporation. All rights reserved.
4
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
package/messages/main.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  *-------------------------------------------------------------------------------------------
4
- * Copyright © 2024 Progress Software Corporation. All rights reserved.
4
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
package/messages/main.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  *-------------------------------------------------------------------------------------------
4
- * Copyright © 2024 Progress Software Corporation. All rights reserved.
4
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  *-------------------------------------------------------------------------------------------
4
- * Copyright © 2024 Progress Software Corporation. All rights reserved.
4
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  *-------------------------------------------------------------------------------------------
4
- * Copyright © 2024 Progress Software Corporation. All rights reserved.
4
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
@@ -9,7 +9,7 @@ const e = {
9
9
  name: "@progress/kendo-vue-dateinputs",
10
10
  productName: "Kendo UI for Vue",
11
11
  productCodes: ["KENDOUIVUE", "KENDOUICOMPLETE"],
12
- publishDate: 1735306904,
12
+ publishDate: 1737372930,
13
13
  version: "",
14
14
  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"
15
15
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-vue-dateinputs",
3
- "version": "6.0.2-develop.1",
3
+ "version": "6.1.0-develop.2",
4
4
  "description": "TODO",
5
5
  "author": "Progress",
6
6
  "license": "SEE LICENSE IN LICENSE.md",
@@ -17,12 +17,12 @@
17
17
  "peerDependencies": {
18
18
  "@progress/kendo-date-math": "^1.4.0",
19
19
  "@progress/kendo-licensing": "^1.3.4",
20
- "@progress/kendo-vue-buttons": "6.0.2-develop.1",
21
- "@progress/kendo-vue-common": "6.0.2-develop.1",
22
- "@progress/kendo-vue-intl": "6.0.2-develop.1",
23
- "@progress/kendo-vue-labels": "6.0.2-develop.1",
24
- "@progress/kendo-vue-layout": "6.0.2-develop.1",
25
- "@progress/kendo-vue-popup": "6.0.2-develop.1",
20
+ "@progress/kendo-vue-buttons": "6.1.0-develop.2",
21
+ "@progress/kendo-vue-common": "6.1.0-develop.2",
22
+ "@progress/kendo-vue-intl": "6.1.0-develop.2",
23
+ "@progress/kendo-vue-labels": "6.1.0-develop.2",
24
+ "@progress/kendo-vue-layout": "6.1.0-develop.2",
25
+ "@progress/kendo-vue-popup": "6.1.0-develop.2",
26
26
  "@progress/kendo-svg-icons": "^4.0.0",
27
27
  "vue": "^3.0.2"
28
28
  },
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  *-------------------------------------------------------------------------------------------
4
- * Copyright © 2024 Progress Software Corporation. All rights reserved.
4
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  *-------------------------------------------------------------------------------------------
4
- * Copyright © 2024 Progress Software Corporation. All rights reserved.
4
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  *-------------------------------------------------------------------------------------------
4
- * Copyright © 2024 Progress Software Corporation. All rights reserved.
4
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  *-------------------------------------------------------------------------------------------
4
- * Copyright © 2024 Progress Software Corporation. All rights reserved.
4
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * @license
3
3
  *-------------------------------------------------------------------------------------------
4
- * Copyright © 2024 Progress Software Corporation. All rights reserved.
4
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("vue"),E=require("@progress/kendo-vue-labels"),U=require("@progress/kendo-vue-popup"),k=require("@progress/kendo-date-math"),t=require("@progress/kendo-vue-common"),H=require("@progress/kendo-vue-intl"),G=require("@progress/kendo-vue-buttons"),s=require("../messages/main.js"),X=require("../dateinput/DateInput.js"),J=require("./TimeSelector.js"),l=require("../utils.js"),S=require("./utils.js"),Q=require("../dateinput/utils.js"),W=require("@progress/kendo-svg-icons");function w(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!n.isVNode(e)}const Y=n.defineComponent({name:"KendoTimePicker",emits:{changemodel:null,"update:modelValue":null,iconclick:null,change:null,focus:null,blur:null,keydown:null,open:null,close:null},model:{event:"changemodel"},props:{cancelButton:{type:Boolean,default:!0},nowButton:{type:Boolean,default:void 0},defaultShow:{type:Boolean,default:!1},modelValue:{type:Date,default:void 0},defaultValue:{type:Date,default:function(){return null}},dateInput:{type:[String,Object,Function],default:function(){}},popup:{type:[String,Object,Function],default:function(){}},disabled:{type:Boolean,default:!1},format:{type:[String,Object],default:function(){return"t"}},formatPlaceholder:{type:[String,Object],default:function(){return Q.defaultFormatPlaceholder}},rounded:{type:String,default:"medium",validator:function(e){return["small","medium","large","full"].includes(e)}},fillMode:{type:String,default:"solid",validator:function(e){return["solid","flat","outline"].includes(e)}},size:{type:String,default:"medium",validator:function(e){return["small","medium","large"].includes(e)}},id:String,ariaLabelledBy:String,ariaDescribedBy:String,min:{type:Date,default:function(){return l.MIN_TIME}},max:{type:Date,default:function(){return l.MAX_TIME}},name:String,label:String,placeholder:String,popupSettings:{type:Object,default:function(){return{}}},show:{type:Boolean,default:void 0},tabIndex:{type:Number,default:0},steps:{type:Object,default:function(){return{}}},smoothScroll:{type:Boolean,default:!0},title:{type:String,default:function(){return""}},value:{type:Date,default:function(){}},width:[Number,String],validationMessage:String,required:{type:Boolean,default:!1},validityStyles:{type:Boolean,default:!0},validate:Boolean,valid:{type:Boolean,default:void 0}},created(){this._anchor=t.guid(),this._popupId="popup"+t.guid(),this._element=null,this._wrapper=null,this._dateInput=null,this._timeSelector=null,this.shouldFocusDateInput=!1,this.currentValue=this.$props.defaultValue,this.currentShow=this.$props.defaultShow},inject:{kendoLocalizationService:{default:null}},data(){return{currentValue:null,currentShow:!1,valueDuringOnChange:void 0,showDuringOnChange:void 0,isFocused:!1}},computed:{timeSelector(){return this._timeSelector},computedValue(){const e=this.valueDuringOnChange!==void 0?this.valueDuringOnChange:this.$props.value!==void 0?this.$props.value:this.$props.modelValue!==void 0?this.$props.modelValue:this.$data.currentValue;return e!==null?k.cloneDate(e):null},computedShow(){return this.showDuringOnChange!==void 0?this.showDuringOnChange:this.$props.show!==void 0?this.$props.show:this.currentShow}},watch:{show:function(e,i){this._oldShow=i},currentShow:function(e,i){this._oldShow=i}},mounted(){this.computedShow&&this.$forceUpdate(),this._dateInput=this.dateInputRef,this._timeSelector=this.$refs.timeSelector,this._wrapper=this.kendoAnchorRef,this._dateInput&&this._dateInput.element()&&this._dateInput.element().setAttribute("aria-haspopup","true")},updated(){this._dateInput=this.dateInputRef,this._timeSelector=this.$refs.timeSelector,this._wrapper=this.kendoAnchorRef,this._timeSelector&&this.computedShow&&!this._oldShow?this._timeSelector.focusActiveList():this._dateInput&&this._dateInput.element()&&!this.computedShow&&this.shouldFocusDateInput&&this._dateInput.element().focus({preventScroll:!0}),this.shouldFocusDateInput=!1},setup(){const e=n.ref(null),i=n.inject("kendoLocalizationService",{});return{kendoAnchorRef:e,kendoLocalizationService:i}},render(){const e=t.getDefaultSlots(this),{disabled:i,tabIndex:o,title:h,id:u,placeholder:c,format:a,formatPlaceholder:V,smoothScroll:$,width:I,name:_,steps:v,cancelButton:D,nowButton:T,validationMessage:B,required:C,validityStyles:M,ariaLabelledBy:Z,ariaDescribedBy:ee,size:p,rounded:m,fillMode:y}=this.$props,{popupClass:F,appendTo:O,animate:R}=this.$props.popupSettings,f=!this.$props.validityStyles||this.validity().valid;t.classNames("k-picker-wrap",{"k-invalid":!f,"k-disabled":i,"k-focus":this.isFocused});const q=t.classNames("k-group k-reset",F),b=H.provideLocalizationService(this),z=b.toLanguageString(s.toggleClock,s.messages[s.toggleClock]),x=b.toLanguageString(s.toggleTimeSelector,s.messages[s.toggleTimeSelector]),j=this.$props.dateInput?t.templateRendering.call(this,this.$props.dateInput,t.getListeners.call(this)):void 0,N=n.createVNode(X.DateInput,{ref:g=>{this.dateInputRef=g},placeholder:c,disabled:i,format:a,formatPlaceholder:V,id:u,size:null,rounded:null,fillMode:null,max:this.normalizeTime(this.$props.max),min:this.normalizeTime(this.$props.min),name:_,onChange:this.handleInputValueChange,required:C,steps:v,tabIndex:this.computedShow?-1:o,title:h,valid:this.validity().valid,validationMessage:B,validityStyles:M,value:this.computedValue&&this.normalizeTime(this.computedValue),ariaHasPopup:"grid",ariaExpanded:this.computedShow,ariaRole:"combobox",ariaControls:this._popupId},w(e)?e:{default:()=>[e]}),r=n.createVNode(J.TimeSelector,{ref:"timeSelector",cancelButton:D,disabled:i,nowButton:T,format:a,min:this.$props.min,max:this.$props.max,steps:v,smoothScroll:$,value:this.computedValue,onChange:this.handleValueChange,onReject:this.handleValueReject,onFocus:this.timeFocus,onBlur:this.timeBlur,onKeydown:this.handleKeyDown},null),P=t.getTemplate.call(this,{h:n.h,template:j,defaultRendering:N,additionalListeners:{change:this.handleInputValueChange}}),L=this.$props.popup?t.templateRendering.call(this,this.$props.popup,t.getListeners.call(this)):void 0,A=n.createVNode(U.Popup,{show:this.computedShow,anchor:this._anchor,class:q,id:this._popupId,anchorAlign:{horizontal:"left",vertical:"bottom"},popupAlign:{horizontal:"left",vertical:"top"},appendTo:O,animate:R},w(r)?r:{default:()=>[r]}),K=t.getTemplate.call(this,{h:n.h,template:L,defaultRendering:A,defaultSlots:r}),d=n.createVNode("div",{class:t.classNames("k-input","k-timepicker",{[`k-input-${t.kendoThemeMaps.sizeMap[p]||p}`]:p,[`k-input-${y}`]:y,[`k-rounded-${t.kendoThemeMaps.roundedMap[m]||m}`]:m,"k-invalid":!f,"k-required":this.required,"k-disabled":this.$props.disabled,"k-focus":this.isFocused}),onKeydown:this.handleKeyDown,style:{width:I},onFocusin:this.handleFocus,onFocusout:this.handleBlur,ref:g=>{this.kendoAnchorRef=g}},[P,n.createVNode(G.Button,{type:"button",tabIndex:-1,icon:"clock",svgIcon:W.clockIcon,onMousedown:this.handleIconMouseDown,onClick:this.handleIconClick,title:x,rounded:null,class:"k-input-button","aria-controls":this._popupId,"aria-label":z},null),K]);return this.$props.label?n.createVNode(E.FloatingLabel,{label:this.$props.label,editorId:u,editorValid:f,editorValue:this.getDateInputText(),editorPlaceholder:this.$props.placeholder,editorDisabled:this.$props.disabled,style:{width:I}},w(d)?d:{default:()=>[d]}):d},methods:{validity(){const e=this.computedValue&&this.normalizeTime(this.computedValue),i=this.normalizeTime(this.$props.min),o=this.normalizeTime(this.$props.max),h=S.isInRange(e,i,o),u=this.$props.validationMessage!==void 0,c=(!this.$props.required||this.computedValue!==null)&&h,a=this.$props.valid!==void 0?this.$props.valid:c;return{customError:u,rangeOverflow:S.isBiggerThanMax(e,o),rangeUnderflow:S.isSmallerThanMin(e,i),valid:a,valueMissing:this.computedValue===null}},getDateInputText(){return this.computedValue?!0:this._dateInput?this._dateInput._element.value:""},focus(){this._dateInput&&this._dateInput.focus()},normalizeTime(e){return l.setTime(l.MIDNIGHT_DATE,e)},setShow(e){this.computedShow!==e&&(this.currentShow=e,this.$emit(e?"open":"close",{component:this}))},mergeTime(e){return this.computedValue&&e?l.setTime(this.computedValue,e):e},handleInputValueChange(e){const i=this.mergeTime(e.value);this.handleValueChange({...e,value:i})},handleValueChange(e){this.currentValue=k.cloneDate(e.value),this.valueDuringOnChange=e.value,this.showDuringOnChange=!1,this.shouldFocusDateInput=!0,this.$emit("changemodel",this.computedValue),this.$emit("update:modelValue",this.computedValue),this.$emit("change",{event:e.event,value:this.computedValue,show:this.computedShow,component:this,target:{name:this.$props.name,value:this.computedValue,valueAsDate:this.computedValue}}),this.valueDuringOnChange=void 0,this.showDuringOnChange=void 0,this.setShow(!1)},handleFocus(e){this._oldShow=this.computedShow,this.isFocused=!0,this.$emit("focus",e)},handleBlur(e){this.createBlurTimeout(),this.$emit("blur",e)},timeBlur(e){this.$emit("blur",e),clearTimeout(this._blurTimeout),this.createBlurTimeout()},timeFocus(){clearTimeout(this._blurTimeout)},createBlurTimeout(){this._blurTimeout=setTimeout(()=>{this.isFocused=!1;const e=document.activeElement&&document.activeElement.closest(`#${this._popupId}`);this._dateInput&&t.canUseDOM&&document.activeElement!==this._dateInput.element()&&!e&&this.setShow(!1)},200)},handleValueReject(e){this.setShow(!1)},handleIconClick(e){this.$props.disabled||(this.shouldFocusDateInput=!0,this.setShow(!this.computedShow),this.$emit("iconclick",e))},handleIconMouseDown(e){e.preventDefault()},handleKeyDown(e){const{altKey:i,keyCode:o}=e;if(o===t.Keys.tab&&this._dateInput&&e.target!==this._dateInput._element){e.preventDefault(),this.shouldFocusDateInput=!0,this.setShow(!1);return}if(o===t.Keys.esc){this.shouldFocusDateInput=!0,this.setShow(!1);return}i&&(o===t.Keys.up||o===t.Keys.down)&&(e.preventDefault(),e.stopPropagation(),this.shouldFocusDateInput=o===t.Keys.up,this.setShow(o===t.Keys.down)),this.$emit("keydown",e)}}});exports.TimePicker=Y;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("vue"),U=require("@progress/kendo-vue-labels"),H=require("@progress/kendo-vue-popup"),k=require("@progress/kendo-date-math"),t=require("@progress/kendo-vue-common"),G=require("@progress/kendo-vue-intl"),X=require("@progress/kendo-vue-buttons"),s=require("../messages/main.js"),J=require("../dateinput/DateInput.js"),Q=require("./TimeSelector.js"),l=require("../utils.js"),S=require("./utils.js"),W=require("../dateinput/utils.js"),Y=require("@progress/kendo-svg-icons");function w(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!n.isVNode(e)}const Z=n.defineComponent({name:"KendoTimePicker",emits:{changemodel:null,"update:modelValue":null,iconclick:null,change:null,focus:null,blur:null,keydown:null,open:null,close:null},model:{event:"changemodel"},props:{cancelButton:{type:Boolean,default:!0},nowButton:{type:Boolean,default:void 0},defaultShow:{type:Boolean,default:!1},modelValue:{type:Date,default:void 0},defaultValue:{type:Date,default:function(){return null}},dateInput:{type:[String,Object,Function],default:function(){}},popup:{type:[String,Object,Function],default:function(){}},disabled:{type:Boolean,default:!1},format:{type:[String,Object],default:function(){return"t"}},formatPlaceholder:{type:[String,Object],default:function(){return W.defaultFormatPlaceholder}},rounded:{type:String,default:"medium",validator:function(e){return["small","medium","large","full"].includes(e)}},fillMode:{type:String,default:"solid",validator:function(e){return["solid","flat","outline"].includes(e)}},size:{type:String,default:"medium",validator:function(e){return["small","medium","large"].includes(e)}},id:String,ariaLabelledBy:String,ariaDescribedBy:String,min:{type:Date,default:function(){return l.MIN_TIME}},max:{type:Date,default:function(){return l.MAX_TIME}},name:String,label:String,placeholder:String,popupSettings:{type:Object,default:function(){return{}}},show:{type:Boolean,default:void 0},tabIndex:{type:Number,default:0},steps:{type:Object,default:function(){return{}}},smoothScroll:{type:Boolean,default:!0},title:{type:String,default:function(){return""}},value:{type:Date,default:function(){}},width:[Number,String],validationMessage:String,required:{type:Boolean,default:!1},validityStyles:{type:Boolean,default:!0},validate:Boolean,valid:{type:Boolean,default:void 0},inputAttributes:Object},created(){this._anchor=t.guid(),this._popupId="popup"+t.guid(),this._element=null,this._wrapper=null,this._dateInput=null,this._timeSelector=null,this.shouldFocusDateInput=!1,this.currentValue=this.$props.defaultValue,this.currentShow=this.$props.defaultShow},inject:{kendoLocalizationService:{default:null}},data(){return{currentValue:null,currentShow:!1,valueDuringOnChange:void 0,showDuringOnChange:void 0,isFocused:!1}},computed:{timeSelector(){return this._timeSelector},computedValue(){const e=this.valueDuringOnChange!==void 0?this.valueDuringOnChange:this.$props.value!==void 0?this.$props.value:this.$props.modelValue!==void 0?this.$props.modelValue:this.$data.currentValue;return e!==null?k.cloneDate(e):null},computedShow(){return this.showDuringOnChange!==void 0?this.showDuringOnChange:this.$props.show!==void 0?this.$props.show:this.currentShow}},watch:{show:function(e,i){this._oldShow=i},currentShow:function(e,i){this._oldShow=i}},mounted(){this.computedShow&&this.$forceUpdate(),this._dateInput=this.dateInputRef,this._timeSelector=this.$refs.timeSelector,this._wrapper=this.kendoAnchorRef,this._dateInput&&this._dateInput.element()&&this._dateInput.element().setAttribute("aria-haspopup","true")},updated(){this._dateInput=this.dateInputRef,this._timeSelector=this.$refs.timeSelector,this._wrapper=this.kendoAnchorRef,this._timeSelector&&this.computedShow&&!this._oldShow?this._timeSelector.focusActiveList():this._dateInput&&this._dateInput.element()&&!this.computedShow&&this.shouldFocusDateInput&&this._dateInput.element().focus({preventScroll:!0}),this.shouldFocusDateInput=!1},setup(){const e=n.ref(null),i=n.inject("kendoLocalizationService",{});return{kendoAnchorRef:e,kendoLocalizationService:i}},render(){const e=t.getDefaultSlots(this),{disabled:i,tabIndex:o,title:h,id:u,placeholder:c,format:a,formatPlaceholder:V,smoothScroll:$,width:I,name:_,steps:v,cancelButton:D,nowButton:T,validationMessage:B,required:C,validityStyles:M,ariaLabelledBy:ee,ariaDescribedBy:te,size:p,rounded:m,fillMode:y,inputAttributes:F}=this.$props,{popupClass:O,appendTo:R,animate:q}=this.$props.popupSettings,f=!this.$props.validityStyles||this.validity().valid;t.classNames("k-picker-wrap",{"k-invalid":!f,"k-disabled":i,"k-focus":this.isFocused});const z=t.classNames("k-group k-reset",O),b=G.provideLocalizationService(this),j=b.toLanguageString(s.toggleClock,s.messages[s.toggleClock]),x=b.toLanguageString(s.toggleTimeSelector,s.messages[s.toggleTimeSelector]),A=this.$props.dateInput?t.templateRendering.call(this,this.$props.dateInput,t.getListeners.call(this)):void 0,N=n.createVNode(J.DateInput,{ref:g=>{this.dateInputRef=g},placeholder:c,disabled:i,format:a,formatPlaceholder:V,id:u,size:null,rounded:null,fillMode:null,max:this.normalizeTime(this.$props.max),min:this.normalizeTime(this.$props.min),name:_,onChange:this.handleInputValueChange,required:C,steps:v,tabIndex:this.computedShow?-1:o,title:h,valid:this.validity().valid,validationMessage:B,validityStyles:M,value:this.computedValue&&this.normalizeTime(this.computedValue),ariaHasPopup:"grid",ariaExpanded:this.computedShow,ariaRole:"combobox",ariaControls:this._popupId,inputAttributes:F},w(e)?e:{default:()=>[e]}),r=n.createVNode(Q.TimeSelector,{ref:"timeSelector",cancelButton:D,disabled:i,nowButton:T,format:a,min:this.$props.min,max:this.$props.max,steps:v,smoothScroll:$,value:this.computedValue,onChange:this.handleValueChange,onReject:this.handleValueReject,onFocus:this.timeFocus,onBlur:this.timeBlur,onKeydown:this.handleKeyDown},null),P=t.getTemplate.call(this,{h:n.h,template:A,defaultRendering:N,additionalListeners:{change:this.handleInputValueChange}}),L=this.$props.popup?t.templateRendering.call(this,this.$props.popup,t.getListeners.call(this)):void 0,K=n.createVNode(H.Popup,{show:this.computedShow,anchor:this._anchor,class:z,id:this._popupId,anchorAlign:{horizontal:"left",vertical:"bottom"},popupAlign:{horizontal:"left",vertical:"top"},appendTo:R,animate:q},w(r)?r:{default:()=>[r]}),E=t.getTemplate.call(this,{h:n.h,template:L,defaultRendering:K,defaultSlots:r}),d=n.createVNode("div",{class:t.classNames("k-input","k-timepicker",{[`k-input-${t.kendoThemeMaps.sizeMap[p]||p}`]:p,[`k-input-${y}`]:y,[`k-rounded-${t.kendoThemeMaps.roundedMap[m]||m}`]:m,"k-invalid":!f,"k-required":this.required,"k-disabled":this.$props.disabled,"k-focus":this.isFocused}),onKeydown:this.handleKeyDown,style:{width:I},onFocusin:this.handleFocus,onFocusout:this.handleBlur,ref:g=>{this.kendoAnchorRef=g}},[P,n.createVNode(X.Button,{type:"button",tabIndex:-1,icon:"clock",svgIcon:Y.clockIcon,onMousedown:this.handleIconMouseDown,onClick:this.handleIconClick,title:x,rounded:null,class:"k-input-button","aria-controls":this._popupId,"aria-label":j},null),E]);return this.$props.label?n.createVNode(U.FloatingLabel,{label:this.$props.label,editorId:u,editorValid:f,editorValue:this.getDateInputText(),editorPlaceholder:this.$props.placeholder,editorDisabled:this.$props.disabled,style:{width:I}},w(d)?d:{default:()=>[d]}):d},methods:{validity(){const e=this.computedValue&&this.normalizeTime(this.computedValue),i=this.normalizeTime(this.$props.min),o=this.normalizeTime(this.$props.max),h=S.isInRange(e,i,o),u=this.$props.validationMessage!==void 0,c=(!this.$props.required||this.computedValue!==null)&&h,a=this.$props.valid!==void 0?this.$props.valid:c;return{customError:u,rangeOverflow:S.isBiggerThanMax(e,o),rangeUnderflow:S.isSmallerThanMin(e,i),valid:a,valueMissing:this.computedValue===null}},getDateInputText(){return this.computedValue?!0:this._dateInput?this._dateInput._element.value:""},focus(){this._dateInput&&this._dateInput.focus()},normalizeTime(e){return l.setTime(l.MIDNIGHT_DATE,e)},setShow(e){this.computedShow!==e&&(this.currentShow=e,this.$emit(e?"open":"close",{component:this}))},mergeTime(e){return this.computedValue&&e?l.setTime(this.computedValue,e):e},handleInputValueChange(e){const i=this.mergeTime(e.value);this.handleValueChange({...e,value:i})},handleValueChange(e){this.currentValue=k.cloneDate(e.value),this.valueDuringOnChange=e.value,this.showDuringOnChange=!1,this.shouldFocusDateInput=!0,this.$emit("changemodel",this.computedValue),this.$emit("update:modelValue",this.computedValue),this.$emit("change",{event:e.event,value:this.computedValue,show:this.computedShow,component:this,target:{name:this.$props.name,value:this.computedValue,valueAsDate:this.computedValue}}),this.valueDuringOnChange=void 0,this.showDuringOnChange=void 0,this.setShow(!1)},handleFocus(e){this._oldShow=this.computedShow,this.isFocused=!0,this.$emit("focus",e)},handleBlur(e){this.createBlurTimeout(),this.$emit("blur",e)},timeBlur(e){this.$emit("blur",e),clearTimeout(this._blurTimeout),this.createBlurTimeout()},timeFocus(){clearTimeout(this._blurTimeout)},createBlurTimeout(){this._blurTimeout=setTimeout(()=>{this.isFocused=!1;const e=document.activeElement&&document.activeElement.closest(`#${this._popupId}`);this._dateInput&&t.canUseDOM&&document.activeElement!==this._dateInput.element()&&!e&&this.setShow(!1)},200)},handleValueReject(e){this.setShow(!1)},handleIconClick(e){this.$props.disabled||(this.shouldFocusDateInput=!0,this.setShow(!this.computedShow),this.$emit("iconclick",e))},handleIconMouseDown(e){e.preventDefault()},handleKeyDown(e){const{altKey:i,keyCode:o}=e;if(o===t.Keys.tab&&this._dateInput&&e.target!==this._dateInput._element){e.preventDefault(),this.shouldFocusDateInput=!0,this.setShow(!1);return}if(o===t.Keys.esc){this.shouldFocusDateInput=!0,this.setShow(!1);return}i&&(o===t.Keys.up||o===t.Keys.down)&&(e.preventDefault(),e.stopPropagation(),this.shouldFocusDateInput=o===t.Keys.up,this.setShow(o===t.Keys.down)),this.$emit("keydown",e)}}});exports.TimePicker=Z;