@progress/kendo-angular-inputs 19.3.0-develop.32 → 19.3.0-develop.33
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.
- package/colorpicker/color-palette.component.d.ts +1 -1
- package/colorpicker/colorpicker.component.d.ts +1 -1
- package/esm2022/colorpicker/color-palette.component.mjs +3 -2
- package/esm2022/colorpicker/colorpicker.component.mjs +5 -4
- package/esm2022/numerictextbox/numerictextbox.component.mjs +5 -4
- package/esm2022/otpinput/otpinput.component.mjs +5 -4
- package/esm2022/package-metadata.mjs +2 -2
- package/esm2022/rangeslider/rangeslider.component.mjs +5 -3
- package/esm2022/rating/rating.component.mjs +31 -26
- package/esm2022/shared/shared-events.directive.mjs +1 -1
- package/esm2022/signature/signature.component.mjs +1 -1
- package/esm2022/slider/slider.component.mjs +5 -3
- package/esm2022/switch/switch.component.mjs +2 -2
- package/fesm2022/progress-kendo-angular-inputs.mjs +59 -46
- package/numerictextbox/numerictextbox.component.d.ts +1 -1
- package/package.json +12 -12
- package/rangeslider/rangeslider.component.d.ts +1 -1
- package/slider/slider.component.d.ts +1 -1
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
6
6
|
import { Component, Input, EventEmitter, Output, HostBinding, forwardRef, ChangeDetectorRef, Renderer2, ElementRef, NgZone } from '@angular/core';
|
|
7
7
|
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
8
|
-
import { Keys, KendoInput, guid } from '@progress/kendo-angular-common';
|
|
8
|
+
import { Keys, KendoInput, guid, normalizeNumpadKeys } from '@progress/kendo-angular-common';
|
|
9
9
|
import { LocalizationService, L10N_PREFIX } from '@progress/kendo-angular-l10n';
|
|
10
10
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
11
11
|
import { Subscription } from 'rxjs';
|
|
@@ -282,8 +282,9 @@ export class ColorPaletteComponent {
|
|
|
282
282
|
* @hidden
|
|
283
283
|
*/
|
|
284
284
|
handleKeydown(event) {
|
|
285
|
+
const code = normalizeNumpadKeys(event);
|
|
285
286
|
const isRTL = this.direction === 'rtl';
|
|
286
|
-
switch (
|
|
287
|
+
switch (code) {
|
|
287
288
|
case Keys.ArrowDown:
|
|
288
289
|
this.handleCellNavigation(0, 1);
|
|
289
290
|
break;
|
|
@@ -12,7 +12,7 @@ import { PopupService } from '@progress/kendo-angular-popup';
|
|
|
12
12
|
import { ButtonComponent } from '@progress/kendo-angular-buttons';
|
|
13
13
|
import { AdaptiveService } from '@progress/kendo-angular-utils';
|
|
14
14
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
15
|
-
import { Keys, KendoInput, isChanged, closest, guid, ResizeSensorComponent, isDocumentAvailable } from '@progress/kendo-angular-common';
|
|
15
|
+
import { Keys, KendoInput, isChanged, closest, guid, ResizeSensorComponent, isDocumentAvailable, normalizeNumpadKeys } from '@progress/kendo-angular-common';
|
|
16
16
|
import { LocalizationService, L10N_PREFIX } from '@progress/kendo-angular-l10n';
|
|
17
17
|
import { packageMetadata } from '../package-metadata';
|
|
18
18
|
import { PALETTEPRESETS } from './models';
|
|
@@ -665,7 +665,8 @@ export class ColorPickerComponent {
|
|
|
665
665
|
* @hidden
|
|
666
666
|
*/
|
|
667
667
|
handleWrapperKeyDown(event) {
|
|
668
|
-
|
|
668
|
+
const code = normalizeNumpadKeys(event);
|
|
669
|
+
if (code === Keys.ArrowDown || code === Keys.Enter) {
|
|
669
670
|
event.preventDefault();
|
|
670
671
|
this.ngZone.run(() => {
|
|
671
672
|
this.toggleWithEvents(true);
|
|
@@ -701,11 +702,11 @@ export class ColorPickerComponent {
|
|
|
701
702
|
* @hidden
|
|
702
703
|
*/
|
|
703
704
|
handlePopupKeyDown(event) {
|
|
704
|
-
if (event.
|
|
705
|
+
if (event.code === Keys.Escape) {
|
|
705
706
|
this.toggleWithEvents(false);
|
|
706
707
|
this.host.nativeElement.focus();
|
|
707
708
|
}
|
|
708
|
-
if (event.
|
|
709
|
+
if (event.code === Keys.Tab) {
|
|
709
710
|
const currentElement = event.shiftKey ? this.firstFocusableElement.nativeElement : this.lastFocusableElement.nativeElement;
|
|
710
711
|
const nextElement = event.shiftKey ? this.lastFocusableElement.nativeElement : this.firstFocusableElement.nativeElement;
|
|
711
712
|
if (event.target === currentElement) {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
6
6
|
import { Component, ElementRef, EventEmitter, HostBinding, Input, Output, Renderer2, ViewChild, forwardRef, isDevMode, NgZone, ChangeDetectorRef, Injector, ContentChild } from '@angular/core';
|
|
7
|
-
import { anyChanged, hasObservers, Keys, guid, KendoInput, SuffixTemplateDirective, PrefixTemplateDirective, setHTMLAttributes, isControlRequired, isObjectPresent, removeHTMLAttributes, parseAttributes, EventsOutsideAngularDirective } from '@progress/kendo-angular-common';
|
|
7
|
+
import { anyChanged, hasObservers, Keys, guid, KendoInput, SuffixTemplateDirective, PrefixTemplateDirective, setHTMLAttributes, isControlRequired, isObjectPresent, removeHTMLAttributes, parseAttributes, EventsOutsideAngularDirective, normalizeNumpadKeys } from '@progress/kendo-angular-common';
|
|
8
8
|
import { areSame, getStylingClasses, requiresZoneOnBlur } from '../common/utils';
|
|
9
9
|
import { invokeElementMethod } from '../common/dom-utils';
|
|
10
10
|
import { add, toFixedPrecision, limitPrecision } from '../common/math';
|
|
@@ -616,10 +616,11 @@ export class NumericTextBoxComponent {
|
|
|
616
616
|
return;
|
|
617
617
|
}
|
|
618
618
|
let step;
|
|
619
|
-
|
|
619
|
+
const code = normalizeNumpadKeys(e);
|
|
620
|
+
if (code === Keys.ArrowDown) {
|
|
620
621
|
step = -1;
|
|
621
622
|
}
|
|
622
|
-
else if (
|
|
623
|
+
else if (code === Keys.ArrowUp) {
|
|
623
624
|
step = 1;
|
|
624
625
|
}
|
|
625
626
|
if (step && this.step) {
|
|
@@ -631,7 +632,7 @@ export class NumericTextBoxComponent {
|
|
|
631
632
|
end: input.selectionEnd,
|
|
632
633
|
start: input.selectionStart
|
|
633
634
|
};
|
|
634
|
-
this.pressedKey =
|
|
635
|
+
this.pressedKey = code;
|
|
635
636
|
};
|
|
636
637
|
/**
|
|
637
638
|
* @hidden
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import { ChangeDetectorRef, Component, ElementRef, EventEmitter, HostBinding, Injector, Input, NgZone, Output, QueryList, Renderer2, ViewChildren, forwardRef } from "@angular/core";
|
|
6
6
|
import { SharedInputEventsDirective } from "../shared/shared-events.directive";
|
|
7
7
|
import { NgFor, NgIf } from "@angular/common";
|
|
8
|
-
import { KendoInput, Keys, hasObservers, isPresent, replaceMessagePlaceholder } from "@progress/kendo-angular-common";
|
|
8
|
+
import { KendoInput, Keys, hasObservers, isPresent, normalizeNumpadKeys, replaceMessagePlaceholder } from "@progress/kendo-angular-common";
|
|
9
9
|
import { TextBoxComponent } from "../textbox/textbox.component";
|
|
10
10
|
import { NG_VALUE_ACCESSOR, NgControl } from "@angular/forms";
|
|
11
11
|
import { SIZE_MAP, areSame } from "../common/utils";
|
|
@@ -574,14 +574,15 @@ export class OTPInputComponent {
|
|
|
574
574
|
this.inputFields.get(this.focusedInput).focus();
|
|
575
575
|
}
|
|
576
576
|
handleKeydown(event) {
|
|
577
|
+
const code = normalizeNumpadKeys(event);
|
|
577
578
|
if (this.readonly) {
|
|
578
|
-
const isCopyCommand = (event.ctrlKey || event.metaKey) &&
|
|
579
|
-
if (!(
|
|
579
|
+
const isCopyCommand = (event.ctrlKey || event.metaKey) && code === Keys.KeyC;
|
|
580
|
+
if (!(code === Keys.Tab || isCopyCommand)) {
|
|
580
581
|
event.preventDefault();
|
|
581
582
|
return;
|
|
582
583
|
}
|
|
583
584
|
}
|
|
584
|
-
switch (
|
|
585
|
+
switch (code) {
|
|
585
586
|
case Keys.ArrowRight:
|
|
586
587
|
event.preventDefault();
|
|
587
588
|
this.direction === 'ltr' ? this.focusNext() : this.focusPrevious();
|
|
@@ -10,7 +10,7 @@ export const packageMetadata = {
|
|
|
10
10
|
productName: 'Kendo UI for Angular',
|
|
11
11
|
productCode: 'KENDOUIANGULAR',
|
|
12
12
|
productCodes: ['KENDOUIANGULAR'],
|
|
13
|
-
publishDate:
|
|
14
|
-
version: '19.3.0-develop.
|
|
13
|
+
publishDate: 1754589684,
|
|
14
|
+
version: '19.3.0-develop.33',
|
|
15
15
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
16
16
|
};
|
|
@@ -10,7 +10,7 @@ import { RangeSliderModel } from './rangeslider-model';
|
|
|
10
10
|
import { L10N_PREFIX, LocalizationService } from '@progress/kendo-angular-l10n';
|
|
11
11
|
import { eventValue, isStartHandle } from '../sliders-common/sliders-util';
|
|
12
12
|
import { invokeElementMethod } from '../common/dom-utils';
|
|
13
|
-
import { guid, isDocumentAvailable, Keys, KendoInput, anyChanged, hasObservers, EventsOutsideAngularDirective, DraggableDirective, ResizeSensorComponent } from '@progress/kendo-angular-common';
|
|
13
|
+
import { guid, isDocumentAvailable, Keys, KendoInput, anyChanged, hasObservers, EventsOutsideAngularDirective, DraggableDirective, ResizeSensorComponent, normalizeNumpadKeys } from '@progress/kendo-angular-common';
|
|
14
14
|
import { requiresZoneOnBlur } from '../common/utils';
|
|
15
15
|
import { SliderBase } from '../sliders-common/slider-base';
|
|
16
16
|
import { SliderTicksComponent } from '../sliders-common/slider-ticks.component';
|
|
@@ -230,7 +230,9 @@ export class RangeSliderComponent extends SliderBase {
|
|
|
230
230
|
this.value = this.value || [this.min, this.min];
|
|
231
231
|
const options = this.getProps();
|
|
232
232
|
const { max, min } = options;
|
|
233
|
-
|
|
233
|
+
// on some keyboards arrow keys, PageUp/Down, and Home/End are mapped to Numpad keys
|
|
234
|
+
const code = normalizeNumpadKeys(e);
|
|
235
|
+
const handler = this.keyBinding[code];
|
|
234
236
|
if (this.isDisabled || !handler) {
|
|
235
237
|
return;
|
|
236
238
|
}
|
|
@@ -422,7 +424,7 @@ export class RangeSliderComponent extends SliderBase {
|
|
|
422
424
|
cursorInsideWrapper = false;
|
|
423
425
|
}));
|
|
424
426
|
this.subscriptions.add(this.renderer.listen(hostElement, 'keydown', (args) => {
|
|
425
|
-
if (args.
|
|
427
|
+
if (args.code === Keys.Tab) {
|
|
426
428
|
tabbing = true;
|
|
427
429
|
}
|
|
428
430
|
else {
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import { ChangeDetectorRef, Component, ContentChild, ElementRef, EventEmitter, forwardRef, HostBinding, Input, NgZone, Output, Renderer2 } from '@angular/core';
|
|
6
6
|
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
7
7
|
import { L10N_PREFIX, LocalizationService } from '@progress/kendo-angular-l10n';
|
|
8
|
-
import { isDocumentAvailable, KendoInput, Keys } from '@progress/kendo-angular-common';
|
|
8
|
+
import { isDocumentAvailable, KendoInput, Keys, normalizeNumpadKeys } from '@progress/kendo-angular-common';
|
|
9
9
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
10
10
|
import { packageMetadata } from '../package-metadata';
|
|
11
11
|
import { starIcon, starOutlineIcon } from '@progress/kendo-svg-icons';
|
|
@@ -335,33 +335,38 @@ export class RatingComponent {
|
|
|
335
335
|
this.cdr.markForCheck();
|
|
336
336
|
}
|
|
337
337
|
};
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
if (event.keyCode === Keys.ArrowLeft) {
|
|
342
|
-
if (this.direction === 'ltr') {
|
|
338
|
+
const code = normalizeNumpadKeys(event);
|
|
339
|
+
switch (code) {
|
|
340
|
+
case Keys.ArrowDown:
|
|
343
341
|
decreaseValue();
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
342
|
+
break;
|
|
343
|
+
case Keys.ArrowLeft:
|
|
344
|
+
if (this.direction === 'ltr') {
|
|
345
|
+
decreaseValue();
|
|
346
|
+
}
|
|
347
|
+
else {
|
|
348
|
+
increaseValue();
|
|
349
|
+
}
|
|
350
|
+
break;
|
|
351
|
+
case Keys.ArrowUp:
|
|
354
352
|
increaseValue();
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
353
|
+
break;
|
|
354
|
+
case Keys.ArrowRight:
|
|
355
|
+
if (this.direction === 'ltr') {
|
|
356
|
+
increaseValue();
|
|
357
|
+
}
|
|
358
|
+
else {
|
|
359
|
+
decreaseValue();
|
|
360
|
+
}
|
|
361
|
+
break;
|
|
362
|
+
case Keys.Home:
|
|
363
|
+
setMinValue();
|
|
364
|
+
break;
|
|
365
|
+
case Keys.End:
|
|
366
|
+
setMaxValue();
|
|
367
|
+
break;
|
|
368
|
+
default:
|
|
369
|
+
break;
|
|
365
370
|
}
|
|
366
371
|
}
|
|
367
372
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RatingComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
@@ -66,7 +66,7 @@ export class SharedInputEventsDirective {
|
|
|
66
66
|
cursorInsideWrapper = false;
|
|
67
67
|
}));
|
|
68
68
|
this.subscriptions.add(this.renderer.listen(hostElement, 'keydown', (args) => {
|
|
69
|
-
if (args.
|
|
69
|
+
if (args.code === Keys.Tab) {
|
|
70
70
|
tabbing = true;
|
|
71
71
|
}
|
|
72
72
|
else {
|
|
@@ -466,7 +466,7 @@ export class SignatureComponent {
|
|
|
466
466
|
* @hidden
|
|
467
467
|
*/
|
|
468
468
|
onDialogKeydown(e) {
|
|
469
|
-
if (e.
|
|
469
|
+
if (e.code === Keys.Escape) {
|
|
470
470
|
this.isOpen = false;
|
|
471
471
|
this.cd.detectChanges();
|
|
472
472
|
this.maximizeButton?.nativeElement.focus();
|
|
@@ -13,7 +13,7 @@ import { L10N_PREFIX, LocalizationService } from '@progress/kendo-angular-l10n';
|
|
|
13
13
|
import { areSame, isPresent, requiresZoneOnBlur } from '../common/utils';
|
|
14
14
|
import { eventValue, decreaseValueToStep, increaseValueToStep } from '../sliders-common/sliders-util';
|
|
15
15
|
import { invokeElementMethod } from '../common/dom-utils';
|
|
16
|
-
import { guid, isDocumentAvailable, hasObservers, KendoInput, anyChanged, Keys, EventsOutsideAngularDirective, DraggableDirective, ResizeSensorComponent } from '@progress/kendo-angular-common';
|
|
16
|
+
import { guid, isDocumentAvailable, hasObservers, KendoInput, anyChanged, Keys, EventsOutsideAngularDirective, DraggableDirective, ResizeSensorComponent, normalizeNumpadKeys } from '@progress/kendo-angular-common';
|
|
17
17
|
import { SliderBase } from '../sliders-common/slider-base';
|
|
18
18
|
import { caretAltDownIcon, caretAltLeftIcon, caretAltRightIcon, caretAltUpIcon } from '@progress/kendo-svg-icons';
|
|
19
19
|
import { SliderTicksComponent } from '../sliders-common/slider-ticks.component';
|
|
@@ -219,7 +219,9 @@ export class SliderComponent extends SliderBase {
|
|
|
219
219
|
onKeyDown = (e) => {
|
|
220
220
|
const options = this.getProps();
|
|
221
221
|
const { max, min } = options;
|
|
222
|
-
|
|
222
|
+
// on some keyboards arrow keys, PageUp/Down, and Home/End are mapped to Numpad keys
|
|
223
|
+
const code = normalizeNumpadKeys(e);
|
|
224
|
+
const handler = this.keyBinding[code];
|
|
223
225
|
if (this.isDisabled || !handler) {
|
|
224
226
|
return;
|
|
225
227
|
}
|
|
@@ -404,7 +406,7 @@ export class SliderComponent extends SliderBase {
|
|
|
404
406
|
cursorInsideWrapper = false;
|
|
405
407
|
}));
|
|
406
408
|
this.subscriptions.add(this.renderer.listen(hostElement, 'keydown', (args) => {
|
|
407
|
-
if (args.
|
|
409
|
+
if (args.code === Keys.Tab) {
|
|
408
410
|
tabbing = true;
|
|
409
411
|
}
|
|
410
412
|
else {
|
|
@@ -336,8 +336,8 @@ export class SwitchComponent {
|
|
|
336
336
|
* @hidden
|
|
337
337
|
*/
|
|
338
338
|
keyDownHandler(e) {
|
|
339
|
-
const keyCode = e.
|
|
340
|
-
if (this.isEnabled && (keyCode === Keys.Space || keyCode === Keys.Enter)) {
|
|
339
|
+
const keyCode = e.code;
|
|
340
|
+
if (this.isEnabled && (keyCode === Keys.Space || keyCode === Keys.Enter || keyCode === Keys.NumpadEnter)) {
|
|
341
341
|
this.changeValue(!this.checked);
|
|
342
342
|
e.preventDefault();
|
|
343
343
|
}
|
|
@@ -10,7 +10,7 @@ import { take, tap, filter, concatMap, startWith, takeUntil, skip, debounceTime,
|
|
|
10
10
|
import * as i1 from '@progress/kendo-angular-l10n';
|
|
11
11
|
import { ComponentMessages, LocalizationService, L10N_PREFIX, RTL } from '@progress/kendo-angular-l10n';
|
|
12
12
|
import * as i7 from '@progress/kendo-angular-common';
|
|
13
|
-
import { Keys, guid, anyChanged, isDocumentAvailable, hasObservers, KendoInput, EventsOutsideAngularDirective, DraggableDirective, ResizeSensorComponent, isObjectPresent, removeHTMLAttributes, parseAttributes, isControlRequired, setHTMLAttributes, SuffixTemplateDirective, PrefixTemplateDirective, isChanged, isPresent as isPresent$1, isSafari, PreventableEvent, findFocusableChild, parseCSSClassNames, closest as closest$1, processCssValue, replaceMessagePlaceholder, getLicenseMessage, shouldShowValidationUI, WatermarkOverlayComponent, SeparatorComponent, ResizeBatchService, KENDO_ADORNMENTS } from '@progress/kendo-angular-common';
|
|
13
|
+
import { Keys, guid, anyChanged, isDocumentAvailable, normalizeNumpadKeys, hasObservers, KendoInput, EventsOutsideAngularDirective, DraggableDirective, ResizeSensorComponent, isObjectPresent, removeHTMLAttributes, parseAttributes, isControlRequired, setHTMLAttributes, SuffixTemplateDirective, PrefixTemplateDirective, isChanged, isPresent as isPresent$1, isSafari, PreventableEvent, findFocusableChild, parseCSSClassNames, closest as closest$1, processCssValue, replaceMessagePlaceholder, getLicenseMessage, shouldShowValidationUI, WatermarkOverlayComponent, SeparatorComponent, ResizeBatchService, KENDO_ADORNMENTS } from '@progress/kendo-angular-common';
|
|
14
14
|
export { PrefixTemplateDirective, SeparatorComponent, SuffixTemplateDirective } from '@progress/kendo-angular-common';
|
|
15
15
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
16
16
|
import { caretAltUpIcon, caretAltDownIcon, caretAltLeftIcon, caretAltRightIcon, checkIcon, exclamationCircleIcon, xIcon, caretAltExpandIcon, xCircleIcon, dropletSlashIcon, dropletSliderIcon, paletteIcon, starIcon, starOutlineIcon, hyperlinkOpenIcon } from '@progress/kendo-svg-icons';
|
|
@@ -550,8 +550,8 @@ const packageMetadata = {
|
|
|
550
550
|
productName: 'Kendo UI for Angular',
|
|
551
551
|
productCode: 'KENDOUIANGULAR',
|
|
552
552
|
productCodes: ['KENDOUIANGULAR'],
|
|
553
|
-
publishDate:
|
|
554
|
-
version: '19.3.0-develop.
|
|
553
|
+
publishDate: 1754589684,
|
|
554
|
+
version: '19.3.0-develop.33',
|
|
555
555
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
556
556
|
};
|
|
557
557
|
|
|
@@ -1263,7 +1263,9 @@ class SliderComponent extends SliderBase {
|
|
|
1263
1263
|
onKeyDown = (e) => {
|
|
1264
1264
|
const options = this.getProps();
|
|
1265
1265
|
const { max, min } = options;
|
|
1266
|
-
|
|
1266
|
+
// on some keyboards arrow keys, PageUp/Down, and Home/End are mapped to Numpad keys
|
|
1267
|
+
const code = normalizeNumpadKeys(e);
|
|
1268
|
+
const handler = this.keyBinding[code];
|
|
1267
1269
|
if (this.isDisabled || !handler) {
|
|
1268
1270
|
return;
|
|
1269
1271
|
}
|
|
@@ -1448,7 +1450,7 @@ class SliderComponent extends SliderBase {
|
|
|
1448
1450
|
cursorInsideWrapper = false;
|
|
1449
1451
|
}));
|
|
1450
1452
|
this.subscriptions.add(this.renderer.listen(hostElement, 'keydown', (args) => {
|
|
1451
|
-
if (args.
|
|
1453
|
+
if (args.code === Keys.Tab) {
|
|
1452
1454
|
tabbing = true;
|
|
1453
1455
|
}
|
|
1454
1456
|
else {
|
|
@@ -2026,7 +2028,9 @@ class RangeSliderComponent extends SliderBase {
|
|
|
2026
2028
|
this.value = this.value || [this.min, this.min];
|
|
2027
2029
|
const options = this.getProps();
|
|
2028
2030
|
const { max, min } = options;
|
|
2029
|
-
|
|
2031
|
+
// on some keyboards arrow keys, PageUp/Down, and Home/End are mapped to Numpad keys
|
|
2032
|
+
const code = normalizeNumpadKeys(e);
|
|
2033
|
+
const handler = this.keyBinding[code];
|
|
2030
2034
|
if (this.isDisabled || !handler) {
|
|
2031
2035
|
return;
|
|
2032
2036
|
}
|
|
@@ -2218,7 +2222,7 @@ class RangeSliderComponent extends SliderBase {
|
|
|
2218
2222
|
cursorInsideWrapper = false;
|
|
2219
2223
|
}));
|
|
2220
2224
|
this.subscriptions.add(this.renderer.listen(hostElement, 'keydown', (args) => {
|
|
2221
|
-
if (args.
|
|
2225
|
+
if (args.code === Keys.Tab) {
|
|
2222
2226
|
tabbing = true;
|
|
2223
2227
|
}
|
|
2224
2228
|
else {
|
|
@@ -2797,8 +2801,8 @@ class SwitchComponent {
|
|
|
2797
2801
|
* @hidden
|
|
2798
2802
|
*/
|
|
2799
2803
|
keyDownHandler(e) {
|
|
2800
|
-
const keyCode = e.
|
|
2801
|
-
if (this.isEnabled && (keyCode === Keys.Space || keyCode === Keys.Enter)) {
|
|
2804
|
+
const keyCode = e.code;
|
|
2805
|
+
if (this.isEnabled && (keyCode === Keys.Space || keyCode === Keys.Enter || keyCode === Keys.NumpadEnter)) {
|
|
2802
2806
|
this.changeValue(!this.checked);
|
|
2803
2807
|
e.preventDefault();
|
|
2804
2808
|
}
|
|
@@ -3693,7 +3697,7 @@ class SharedInputEventsDirective {
|
|
|
3693
3697
|
cursorInsideWrapper = false;
|
|
3694
3698
|
}));
|
|
3695
3699
|
this.subscriptions.add(this.renderer.listen(hostElement, 'keydown', (args) => {
|
|
3696
|
-
if (args.
|
|
3700
|
+
if (args.code === Keys.Tab) {
|
|
3697
3701
|
tabbing = true;
|
|
3698
3702
|
}
|
|
3699
3703
|
else {
|
|
@@ -4375,10 +4379,11 @@ class NumericTextBoxComponent {
|
|
|
4375
4379
|
return;
|
|
4376
4380
|
}
|
|
4377
4381
|
let step;
|
|
4378
|
-
|
|
4382
|
+
const code = normalizeNumpadKeys(e);
|
|
4383
|
+
if (code === Keys.ArrowDown) {
|
|
4379
4384
|
step = -1;
|
|
4380
4385
|
}
|
|
4381
|
-
else if (
|
|
4386
|
+
else if (code === Keys.ArrowUp) {
|
|
4382
4387
|
step = 1;
|
|
4383
4388
|
}
|
|
4384
4389
|
if (step && this.step) {
|
|
@@ -4390,7 +4395,7 @@ class NumericTextBoxComponent {
|
|
|
4390
4395
|
end: input.selectionEnd,
|
|
4391
4396
|
start: input.selectionStart
|
|
4392
4397
|
};
|
|
4393
|
-
this.pressedKey =
|
|
4398
|
+
this.pressedKey = code;
|
|
4394
4399
|
};
|
|
4395
4400
|
/**
|
|
4396
4401
|
* @hidden
|
|
@@ -10854,8 +10859,9 @@ class ColorPaletteComponent {
|
|
|
10854
10859
|
* @hidden
|
|
10855
10860
|
*/
|
|
10856
10861
|
handleKeydown(event) {
|
|
10862
|
+
const code = normalizeNumpadKeys(event);
|
|
10857
10863
|
const isRTL = this.direction === 'rtl';
|
|
10858
|
-
switch (
|
|
10864
|
+
switch (code) {
|
|
10859
10865
|
case Keys.ArrowDown:
|
|
10860
10866
|
this.handleCellNavigation(0, 1);
|
|
10861
10867
|
break;
|
|
@@ -13403,7 +13409,8 @@ class ColorPickerComponent {
|
|
|
13403
13409
|
* @hidden
|
|
13404
13410
|
*/
|
|
13405
13411
|
handleWrapperKeyDown(event) {
|
|
13406
|
-
|
|
13412
|
+
const code = normalizeNumpadKeys(event);
|
|
13413
|
+
if (code === Keys.ArrowDown || code === Keys.Enter) {
|
|
13407
13414
|
event.preventDefault();
|
|
13408
13415
|
this.ngZone.run(() => {
|
|
13409
13416
|
this.toggleWithEvents(true);
|
|
@@ -13439,11 +13446,11 @@ class ColorPickerComponent {
|
|
|
13439
13446
|
* @hidden
|
|
13440
13447
|
*/
|
|
13441
13448
|
handlePopupKeyDown(event) {
|
|
13442
|
-
if (event.
|
|
13449
|
+
if (event.code === Keys.Escape) {
|
|
13443
13450
|
this.toggleWithEvents(false);
|
|
13444
13451
|
this.host.nativeElement.focus();
|
|
13445
13452
|
}
|
|
13446
|
-
if (event.
|
|
13453
|
+
if (event.code === Keys.Tab) {
|
|
13447
13454
|
const currentElement = event.shiftKey ? this.firstFocusableElement.nativeElement : this.lastFocusableElement.nativeElement;
|
|
13448
13455
|
const nextElement = event.shiftKey ? this.lastFocusableElement.nativeElement : this.firstFocusableElement.nativeElement;
|
|
13449
13456
|
if (event.target === currentElement) {
|
|
@@ -15398,33 +15405,38 @@ class RatingComponent {
|
|
|
15398
15405
|
this.cdr.markForCheck();
|
|
15399
15406
|
}
|
|
15400
15407
|
};
|
|
15401
|
-
|
|
15402
|
-
|
|
15403
|
-
|
|
15404
|
-
if (event.keyCode === Keys.ArrowLeft) {
|
|
15405
|
-
if (this.direction === 'ltr') {
|
|
15408
|
+
const code = normalizeNumpadKeys(event);
|
|
15409
|
+
switch (code) {
|
|
15410
|
+
case Keys.ArrowDown:
|
|
15406
15411
|
decreaseValue();
|
|
15407
|
-
|
|
15408
|
-
|
|
15409
|
-
|
|
15410
|
-
|
|
15411
|
-
|
|
15412
|
-
|
|
15413
|
-
|
|
15414
|
-
|
|
15415
|
-
|
|
15416
|
-
|
|
15412
|
+
break;
|
|
15413
|
+
case Keys.ArrowLeft:
|
|
15414
|
+
if (this.direction === 'ltr') {
|
|
15415
|
+
decreaseValue();
|
|
15416
|
+
}
|
|
15417
|
+
else {
|
|
15418
|
+
increaseValue();
|
|
15419
|
+
}
|
|
15420
|
+
break;
|
|
15421
|
+
case Keys.ArrowUp:
|
|
15417
15422
|
increaseValue();
|
|
15418
|
-
|
|
15419
|
-
|
|
15420
|
-
|
|
15421
|
-
|
|
15422
|
-
|
|
15423
|
-
|
|
15424
|
-
|
|
15425
|
-
|
|
15426
|
-
|
|
15427
|
-
|
|
15423
|
+
break;
|
|
15424
|
+
case Keys.ArrowRight:
|
|
15425
|
+
if (this.direction === 'ltr') {
|
|
15426
|
+
increaseValue();
|
|
15427
|
+
}
|
|
15428
|
+
else {
|
|
15429
|
+
decreaseValue();
|
|
15430
|
+
}
|
|
15431
|
+
break;
|
|
15432
|
+
case Keys.Home:
|
|
15433
|
+
setMinValue();
|
|
15434
|
+
break;
|
|
15435
|
+
case Keys.End:
|
|
15436
|
+
setMaxValue();
|
|
15437
|
+
break;
|
|
15438
|
+
default:
|
|
15439
|
+
break;
|
|
15428
15440
|
}
|
|
15429
15441
|
}
|
|
15430
15442
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RatingComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
@@ -16373,7 +16385,7 @@ class SignatureComponent {
|
|
|
16373
16385
|
* @hidden
|
|
16374
16386
|
*/
|
|
16375
16387
|
onDialogKeydown(e) {
|
|
16376
|
-
if (e.
|
|
16388
|
+
if (e.code === Keys.Escape) {
|
|
16377
16389
|
this.isOpen = false;
|
|
16378
16390
|
this.cd.detectChanges();
|
|
16379
16391
|
this.maximizeButton?.nativeElement.focus();
|
|
@@ -18642,14 +18654,15 @@ class OTPInputComponent {
|
|
|
18642
18654
|
this.inputFields.get(this.focusedInput).focus();
|
|
18643
18655
|
}
|
|
18644
18656
|
handleKeydown(event) {
|
|
18657
|
+
const code = normalizeNumpadKeys(event);
|
|
18645
18658
|
if (this.readonly) {
|
|
18646
|
-
const isCopyCommand = (event.ctrlKey || event.metaKey) &&
|
|
18647
|
-
if (!(
|
|
18659
|
+
const isCopyCommand = (event.ctrlKey || event.metaKey) && code === Keys.KeyC;
|
|
18660
|
+
if (!(code === Keys.Tab || isCopyCommand)) {
|
|
18648
18661
|
event.preventDefault();
|
|
18649
18662
|
return;
|
|
18650
18663
|
}
|
|
18651
18664
|
}
|
|
18652
|
-
switch (
|
|
18665
|
+
switch (code) {
|
|
18653
18666
|
case Keys.ArrowRight:
|
|
18654
18667
|
event.preventDefault();
|
|
18655
18668
|
this.direction === 'ltr' ? this.focusNext() : this.focusPrevious();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-angular-inputs",
|
|
3
|
-
"version": "19.3.0-develop.
|
|
3
|
+
"version": "19.3.0-develop.33",
|
|
4
4
|
"description": "Kendo UI for Angular Inputs Package - Everything you need to build professional form functionality (Checkbox, ColorGradient, ColorPalette, ColorPicker, FlatColorPicker, FormField, MaskedTextBox, NumericTextBox, RadioButton, RangeSlider, Slider, Switch, TextArea, and TextBox Components)",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"author": "Progress",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"package": {
|
|
29
29
|
"productName": "Kendo UI for Angular",
|
|
30
30
|
"productCode": "KENDOUIANGULAR",
|
|
31
|
-
"publishDate":
|
|
31
|
+
"publishDate": 1754589684,
|
|
32
32
|
"licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
|
|
33
33
|
}
|
|
34
34
|
},
|
|
@@ -40,20 +40,20 @@
|
|
|
40
40
|
"@angular/platform-browser": "16 - 20",
|
|
41
41
|
"@progress/kendo-drawing": "^1.21.0",
|
|
42
42
|
"@progress/kendo-licensing": "^1.7.0",
|
|
43
|
-
"@progress/kendo-angular-buttons": "19.3.0-develop.
|
|
44
|
-
"@progress/kendo-angular-common": "19.3.0-develop.
|
|
45
|
-
"@progress/kendo-angular-utils": "19.3.0-develop.
|
|
46
|
-
"@progress/kendo-angular-navigation": "19.3.0-develop.
|
|
47
|
-
"@progress/kendo-angular-dialog": "19.3.0-develop.
|
|
48
|
-
"@progress/kendo-angular-intl": "19.3.0-develop.
|
|
49
|
-
"@progress/kendo-angular-l10n": "19.3.0-develop.
|
|
50
|
-
"@progress/kendo-angular-popup": "19.3.0-develop.
|
|
51
|
-
"@progress/kendo-angular-icons": "19.3.0-develop.
|
|
43
|
+
"@progress/kendo-angular-buttons": "19.3.0-develop.33",
|
|
44
|
+
"@progress/kendo-angular-common": "19.3.0-develop.33",
|
|
45
|
+
"@progress/kendo-angular-utils": "19.3.0-develop.33",
|
|
46
|
+
"@progress/kendo-angular-navigation": "19.3.0-develop.33",
|
|
47
|
+
"@progress/kendo-angular-dialog": "19.3.0-develop.33",
|
|
48
|
+
"@progress/kendo-angular-intl": "19.3.0-develop.33",
|
|
49
|
+
"@progress/kendo-angular-l10n": "19.3.0-develop.33",
|
|
50
|
+
"@progress/kendo-angular-popup": "19.3.0-develop.33",
|
|
51
|
+
"@progress/kendo-angular-icons": "19.3.0-develop.33",
|
|
52
52
|
"rxjs": "^6.5.3 || ^7.0.0"
|
|
53
53
|
},
|
|
54
54
|
"dependencies": {
|
|
55
55
|
"tslib": "^2.3.1",
|
|
56
|
-
"@progress/kendo-angular-schematics": "19.3.0-develop.
|
|
56
|
+
"@progress/kendo-angular-schematics": "19.3.0-develop.33",
|
|
57
57
|
"@progress/kendo-common": "^1.0.1",
|
|
58
58
|
"@progress/kendo-draggable": "^3.0.0",
|
|
59
59
|
"@progress/kendo-inputs-common": "^3.1.0"
|