@clr/angular 13.11.0 → 13.11.1
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/clarity.api.md +2 -8
- package/esm2020/popover/dropdown/dropdown-item.mjs +30 -17
- package/fesm2015/clr-angular.mjs +28 -15
- package/fesm2015/clr-angular.mjs.map +1 -1
- package/fesm2020/clr-angular.mjs +28 -15
- package/fesm2020/clr-angular.mjs.map +1 -1
- package/package.json +1 -1
- package/popover/dropdown/dropdown-item.d.ts +6 -9
package/fesm2020/clr-angular.mjs
CHANGED
|
@@ -20317,11 +20317,9 @@ const BASIC_FOCUSABLE_ITEM_PROVIDER = [
|
|
|
20317
20317
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
20318
20318
|
*/
|
|
20319
20319
|
class ClrDropdownItem {
|
|
20320
|
-
constructor(dropdown,
|
|
20320
|
+
constructor(dropdown, _dropdownService, focusableItem) {
|
|
20321
20321
|
this.dropdown = dropdown;
|
|
20322
|
-
this.el = el;
|
|
20323
20322
|
this._dropdownService = _dropdownService;
|
|
20324
|
-
this.renderer = renderer;
|
|
20325
20323
|
this.focusableItem = focusableItem;
|
|
20326
20324
|
this.setByDeprecatedDisabled = false;
|
|
20327
20325
|
}
|
|
@@ -20352,22 +20350,28 @@ class ClrDropdownItem {
|
|
|
20352
20350
|
get dropdownItemId() {
|
|
20353
20351
|
return this.focusableItem.id;
|
|
20354
20352
|
}
|
|
20355
|
-
ngAfterViewInit() {
|
|
20356
|
-
this.unlisten = this.renderer.listen(this.el.nativeElement, 'click', () => this.onDropdownItemClick());
|
|
20357
|
-
}
|
|
20358
20353
|
onDropdownItemClick() {
|
|
20359
|
-
|
|
20360
|
-
|
|
20361
|
-
|
|
20354
|
+
// Ensure that the dropdown is closed after custom dropdown item click event handlers have run.
|
|
20355
|
+
setTimeout(() => {
|
|
20356
|
+
if (this.dropdown.isMenuClosable && !this.disabled) {
|
|
20357
|
+
this._dropdownService.closeMenus();
|
|
20358
|
+
}
|
|
20359
|
+
});
|
|
20362
20360
|
}
|
|
20363
|
-
|
|
20364
|
-
|
|
20365
|
-
|
|
20361
|
+
onSpaceKeydown($event) {
|
|
20362
|
+
this.stopImmediatePropagationIfDisabled($event);
|
|
20363
|
+
}
|
|
20364
|
+
onEnterKeydown($event) {
|
|
20365
|
+
this.stopImmediatePropagationIfDisabled($event);
|
|
20366
|
+
}
|
|
20367
|
+
stopImmediatePropagationIfDisabled($event) {
|
|
20368
|
+
if (this.disabled) {
|
|
20369
|
+
$event.stopImmediatePropagation();
|
|
20366
20370
|
}
|
|
20367
20371
|
}
|
|
20368
20372
|
}
|
|
20369
|
-
ClrDropdownItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDropdownItem, deps: [{ token: ClrDropdown }, { token:
|
|
20370
|
-
ClrDropdownItem.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: ClrDropdownItem, selector: "[clrDropdownItem]", inputs: { disabled: ["clrDisabled", "disabled"], disabledDeprecated: ["disabled", "disabledDeprecated"], dropdownItemId: ["id", "dropdownItemId"] }, host: { properties: { "class.disabled": "disabled", "class.dropdown-item": "true", "attr.role": "\"menuitem\"", "attr.aria-disabled": "disabled", "attr.disabled": "(disabled && setByDeprecatedDisabled)? '' : null", "attr.id": "dropdownItemId" } }, providers: [BASIC_FOCUSABLE_ITEM_PROVIDER], ngImport: i0 });
|
|
20373
|
+
ClrDropdownItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDropdownItem, deps: [{ token: ClrDropdown }, { token: RootDropdownService }, { token: FocusableItem }], target: i0.ɵɵFactoryTarget.Directive });
|
|
20374
|
+
ClrDropdownItem.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: ClrDropdownItem, selector: "[clrDropdownItem]", inputs: { disabled: ["clrDisabled", "disabled"], disabledDeprecated: ["disabled", "disabledDeprecated"], dropdownItemId: ["id", "dropdownItemId"] }, host: { listeners: { "click": "onDropdownItemClick()", "keydown.space": "onSpaceKeydown($event)", "keydown.enter": "onEnterKeydown($event)" }, properties: { "class.disabled": "disabled", "class.dropdown-item": "true", "attr.role": "\"menuitem\"", "attr.aria-disabled": "disabled", "attr.disabled": "(disabled && setByDeprecatedDisabled)? '' : null", "attr.id": "dropdownItemId" } }, providers: [BASIC_FOCUSABLE_ITEM_PROVIDER], ngImport: i0 });
|
|
20371
20375
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrDropdownItem, decorators: [{
|
|
20372
20376
|
type: Directive,
|
|
20373
20377
|
args: [{
|
|
@@ -20382,7 +20386,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
20382
20386
|
},
|
|
20383
20387
|
providers: [BASIC_FOCUSABLE_ITEM_PROVIDER],
|
|
20384
20388
|
}]
|
|
20385
|
-
}], ctorParameters: function () { return [{ type: ClrDropdown }, { type:
|
|
20389
|
+
}], ctorParameters: function () { return [{ type: ClrDropdown }, { type: RootDropdownService }, { type: FocusableItem }]; }, propDecorators: { disabled: [{
|
|
20386
20390
|
type: Input,
|
|
20387
20391
|
args: ['clrDisabled']
|
|
20388
20392
|
}], disabledDeprecated: [{
|
|
@@ -20391,6 +20395,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
20391
20395
|
}], dropdownItemId: [{
|
|
20392
20396
|
type: Input,
|
|
20393
20397
|
args: ['id']
|
|
20398
|
+
}], onDropdownItemClick: [{
|
|
20399
|
+
type: HostListener,
|
|
20400
|
+
args: ['click']
|
|
20401
|
+
}], onSpaceKeydown: [{
|
|
20402
|
+
type: HostListener,
|
|
20403
|
+
args: ['keydown.space', ['$event']]
|
|
20404
|
+
}], onEnterKeydown: [{
|
|
20405
|
+
type: HostListener,
|
|
20406
|
+
args: ['keydown.enter', ['$event']]
|
|
20394
20407
|
}] } });
|
|
20395
20408
|
|
|
20396
20409
|
/*
|