@progress/kendo-angular-buttons 25.1.0-develop.2 → 25.1.0-develop.20
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.
|
@@ -49,8 +49,8 @@ const packageMetadata = {
|
|
|
49
49
|
productName: 'Kendo UI for Angular',
|
|
50
50
|
productCode: 'KENDOUIANGULAR',
|
|
51
51
|
productCodes: ['KENDOUIANGULAR'],
|
|
52
|
-
publishDate:
|
|
53
|
-
version: '25.1.0-develop.
|
|
52
|
+
publishDate: 1787938291,
|
|
53
|
+
version: '25.1.0-develop.20',
|
|
54
54
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
55
55
|
};
|
|
56
56
|
|
|
@@ -2651,6 +2651,12 @@ class ListButton extends MultiTabStop {
|
|
|
2651
2651
|
}
|
|
2652
2652
|
const value = open ?? !this.openState;
|
|
2653
2653
|
this._toggle(value, false);
|
|
2654
|
+
if (!isDocumentAvailable()) {
|
|
2655
|
+
return;
|
|
2656
|
+
}
|
|
2657
|
+
this.zone.runOutsideAngular(() => {
|
|
2658
|
+
setTimeout(() => this.zone.run(() => this.focusService.focus(value ? 0 : -1)));
|
|
2659
|
+
});
|
|
2654
2660
|
}
|
|
2655
2661
|
/**
|
|
2656
2662
|
* @hidden
|
|
@@ -6772,6 +6778,10 @@ class SegmentedControlComponent {
|
|
|
6772
6778
|
* @hidden
|
|
6773
6779
|
*/
|
|
6774
6780
|
selectedButtonIndex = 0;
|
|
6781
|
+
/**
|
|
6782
|
+
* @hidden
|
|
6783
|
+
*/
|
|
6784
|
+
isActiveTabStop = signal(true, ...(ngDevMode ? [{ debugName: "isActiveTabStop" }] : []));
|
|
6775
6785
|
_items = [];
|
|
6776
6786
|
_size;
|
|
6777
6787
|
_layoutMode = 'compact';
|
|
@@ -6815,10 +6825,53 @@ class SegmentedControlComponent {
|
|
|
6815
6825
|
/**
|
|
6816
6826
|
* @hidden
|
|
6817
6827
|
*/
|
|
6818
|
-
handleKeydown(event, button) {
|
|
6819
|
-
|
|
6828
|
+
handleKeydown(event, button, index) {
|
|
6829
|
+
const code = normalizeKeys(event);
|
|
6830
|
+
if (button.disabled && (code === Keys.Enter || code === Keys.NumpadEnter || code === Keys.Space)) {
|
|
6820
6831
|
event.preventDefault();
|
|
6832
|
+
return;
|
|
6833
|
+
}
|
|
6834
|
+
if (code === Keys.ArrowLeft || code === Keys.ArrowRight) {
|
|
6835
|
+
const moved = this.moveFocus(index, code === Keys.ArrowRight ? 1 : -1);
|
|
6836
|
+
if (moved) {
|
|
6837
|
+
event.preventDefault();
|
|
6838
|
+
}
|
|
6839
|
+
}
|
|
6840
|
+
}
|
|
6841
|
+
/**
|
|
6842
|
+
* @hidden
|
|
6843
|
+
* Marks whether the SegmentedControl is currently the active tab-stop item in a host
|
|
6844
|
+
* toolbar's own roving tabindex (e.g. Gantt, Scheduler).
|
|
6845
|
+
*/
|
|
6846
|
+
setIsActiveTabStop(tabbable) {
|
|
6847
|
+
this.isActiveTabStop.set(tabbable);
|
|
6848
|
+
}
|
|
6849
|
+
/**
|
|
6850
|
+
* @hidden
|
|
6851
|
+
* Moves DOM focus to the currently selected button. Used by host toolbars.
|
|
6852
|
+
*/
|
|
6853
|
+
focusSelectedButton(preventScroll = true) {
|
|
6854
|
+
this.focusButtonAt(this.selectedButtonIndex, preventScroll);
|
|
6855
|
+
}
|
|
6856
|
+
/**
|
|
6857
|
+
* Moves DOM focus to the adjacent button in the given direction. Disabled buttons are not
|
|
6858
|
+
* skipped so that keyboard users are still made aware of their presence and disabled state.
|
|
6859
|
+
*/
|
|
6860
|
+
moveFocus(currentIndex, step) {
|
|
6861
|
+
const count = this._items.length;
|
|
6862
|
+
const index = currentIndex + step;
|
|
6863
|
+
if (index < 0 || index >= count) {
|
|
6864
|
+
return false;
|
|
6865
|
+
}
|
|
6866
|
+
this.focusButtonAt(index, false);
|
|
6867
|
+
return true;
|
|
6868
|
+
}
|
|
6869
|
+
focusButtonAt(index, preventScroll) {
|
|
6870
|
+
if (!isDocumentAvailable()) {
|
|
6871
|
+
return;
|
|
6821
6872
|
}
|
|
6873
|
+
const buttons = this.wrapper.nativeElement.querySelectorAll('.k-segmented-control-button');
|
|
6874
|
+
buttons[index]?.focus({ preventScroll });
|
|
6822
6875
|
}
|
|
6823
6876
|
handleSizeClass(newValue, prevValue) {
|
|
6824
6877
|
if (!this.wrapper) {
|
|
@@ -6873,8 +6926,9 @@ class SegmentedControlComponent {
|
|
|
6873
6926
|
[attr.aria-disabled]="button.disabled ? true : null"
|
|
6874
6927
|
[attr.title]="button.title"
|
|
6875
6928
|
[attr.aria-label]="button.title && !button.text ? button.title : null"
|
|
6929
|
+
[attr.tabindex]="isActiveTabStop() && selectedButtonIndex === idx ? 0 : -1"
|
|
6876
6930
|
(click)="handleClick(button, idx)"
|
|
6877
|
-
(keydown)="handleKeydown($event, button)"
|
|
6931
|
+
(keydown)="handleKeydown($event, button, idx)"
|
|
6878
6932
|
[class.k-selected]="selectedButtonIndex === idx"
|
|
6879
6933
|
[attr.aria-pressed]="selectedButtonIndex === idx ? 'true' : 'false'">
|
|
6880
6934
|
@if (button.icon || button.svgIcon) {
|
|
@@ -6916,8 +6970,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
6916
6970
|
[attr.aria-disabled]="button.disabled ? true : null"
|
|
6917
6971
|
[attr.title]="button.title"
|
|
6918
6972
|
[attr.aria-label]="button.title && !button.text ? button.title : null"
|
|
6973
|
+
[attr.tabindex]="isActiveTabStop() && selectedButtonIndex === idx ? 0 : -1"
|
|
6919
6974
|
(click)="handleClick(button, idx)"
|
|
6920
|
-
(keydown)="handleKeydown($event, button)"
|
|
6975
|
+
(keydown)="handleKeydown($event, button, idx)"
|
|
6921
6976
|
[class.k-selected]="selectedButtonIndex === idx"
|
|
6922
6977
|
[attr.aria-pressed]="selectedButtonIndex === idx ? 'true' : 'false'">
|
|
6923
6978
|
@if (button.icon || button.svgIcon) {
|
package/index.d.ts
CHANGED
|
@@ -2866,6 +2866,10 @@ declare class SegmentedControlComponent implements AfterViewInit, OnDestroy {
|
|
|
2866
2866
|
* @hidden
|
|
2867
2867
|
*/
|
|
2868
2868
|
selectedButtonIndex: number;
|
|
2869
|
+
/**
|
|
2870
|
+
* @hidden
|
|
2871
|
+
*/
|
|
2872
|
+
isActiveTabStop: i0.WritableSignal<boolean>;
|
|
2869
2873
|
private _items;
|
|
2870
2874
|
private _size;
|
|
2871
2875
|
private _layoutMode;
|
|
@@ -2881,7 +2885,24 @@ declare class SegmentedControlComponent implements AfterViewInit, OnDestroy {
|
|
|
2881
2885
|
/**
|
|
2882
2886
|
* @hidden
|
|
2883
2887
|
*/
|
|
2884
|
-
handleKeydown(event: KeyboardEvent, button: SegmentedItemSettings): void;
|
|
2888
|
+
handleKeydown(event: KeyboardEvent, button: SegmentedItemSettings, index: number): void;
|
|
2889
|
+
/**
|
|
2890
|
+
* @hidden
|
|
2891
|
+
* Marks whether the SegmentedControl is currently the active tab-stop item in a host
|
|
2892
|
+
* toolbar's own roving tabindex (e.g. Gantt, Scheduler).
|
|
2893
|
+
*/
|
|
2894
|
+
setIsActiveTabStop(tabbable: boolean): void;
|
|
2895
|
+
/**
|
|
2896
|
+
* @hidden
|
|
2897
|
+
* Moves DOM focus to the currently selected button. Used by host toolbars.
|
|
2898
|
+
*/
|
|
2899
|
+
focusSelectedButton(preventScroll?: boolean): void;
|
|
2900
|
+
/**
|
|
2901
|
+
* Moves DOM focus to the adjacent button in the given direction. Disabled buttons are not
|
|
2902
|
+
* skipped so that keyboard users are still made aware of their presence and disabled state.
|
|
2903
|
+
*/
|
|
2904
|
+
private moveFocus;
|
|
2905
|
+
private focusButtonAt;
|
|
2885
2906
|
private handleSizeClass;
|
|
2886
2907
|
/**
|
|
2887
2908
|
* Updates the thumb position to reflect the currently selected button.
|
package/package-metadata.mjs
CHANGED
|
@@ -7,7 +7,7 @@ export const packageMetadata = {
|
|
|
7
7
|
"productCodes": [
|
|
8
8
|
"KENDOUIANGULAR"
|
|
9
9
|
],
|
|
10
|
-
"publishDate":
|
|
11
|
-
"version": "25.1.0-develop.
|
|
10
|
+
"publishDate": 1787938291,
|
|
11
|
+
"version": "25.1.0-develop.20",
|
|
12
12
|
"licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
|
|
13
13
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-angular-buttons",
|
|
3
|
-
"version": "25.1.0-develop.
|
|
3
|
+
"version": "25.1.0-develop.20",
|
|
4
4
|
"description": "Buttons Package for Angular",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"author": "Progress",
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
"package": {
|
|
57
57
|
"productName": "Kendo UI for Angular",
|
|
58
58
|
"productCode": "KENDOUIANGULAR",
|
|
59
|
-
"publishDate":
|
|
59
|
+
"publishDate": 1787938291,
|
|
60
60
|
"licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
|
|
61
61
|
}
|
|
62
62
|
},
|
|
@@ -66,15 +66,15 @@
|
|
|
66
66
|
"@angular/core": "20 - 22",
|
|
67
67
|
"@angular/platform-browser": "20 - 22",
|
|
68
68
|
"@progress/kendo-licensing": "^1.11.0",
|
|
69
|
-
"@progress/kendo-angular-common": "25.1.0-develop.
|
|
70
|
-
"@progress/kendo-angular-l10n": "25.1.0-develop.
|
|
71
|
-
"@progress/kendo-angular-popup": "25.1.0-develop.
|
|
72
|
-
"@progress/kendo-angular-icons": "25.1.0-develop.
|
|
69
|
+
"@progress/kendo-angular-common": "25.1.0-develop.20",
|
|
70
|
+
"@progress/kendo-angular-l10n": "25.1.0-develop.20",
|
|
71
|
+
"@progress/kendo-angular-popup": "25.1.0-develop.20",
|
|
72
|
+
"@progress/kendo-angular-icons": "25.1.0-develop.20",
|
|
73
73
|
"rxjs": "^6.5.3 || ^7.0.0"
|
|
74
74
|
},
|
|
75
75
|
"dependencies": {
|
|
76
76
|
"tslib": "^2.3.1",
|
|
77
|
-
"@progress/kendo-angular-schematics": "25.1.0-develop.
|
|
77
|
+
"@progress/kendo-angular-schematics": "25.1.0-develop.20",
|
|
78
78
|
"@progress/kendo-common": "^1.0.1",
|
|
79
79
|
"@progress/kendo-webspeech-common": "1.0.1",
|
|
80
80
|
"@progress/kendo-smartpaste-common": "1.0.0"
|