@progress/kendo-angular-buttons 7.0.0-next.202111120840 → 7.0.2-dev.202201201235
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/LICENSE.md +1 -1
- package/NOTICE.txt +119 -79
- package/README.md +1 -1
- package/dist/cdn/js/kendo-angular-buttons.js +20 -0
- package/dist/cdn/main.js +5 -0
- package/dist/es/button/button.directive.js +769 -0
- package/{esm2015 → dist/es}/button/button.module.js +13 -13
- package/dist/es/button/button.service.js +24 -0
- package/{esm2015 → dist/es}/button/selection-settings.js +0 -1
- package/dist/es/buttongroup/buttongroup.component.js +353 -0
- package/dist/es/buttongroup/buttongroup.module.js +30 -0
- package/{esm2015 → dist/es}/buttons.module.js +12 -12
- package/{esm2015 → dist/es}/chip/chip-content-click-event-args.interface.js +0 -1
- package/{esm2015 → dist/es}/chip/chip-list-remove-event-args.interface.js +0 -1
- package/dist/es/chip/chip-list.component.js +214 -0
- package/{esm2015 → dist/es}/chip/chip-remove-event-args.interface.js +0 -1
- package/dist/es/chip/chip.component.js +449 -0
- package/dist/es/chip/chip.module.js +55 -0
- package/{esm2015 → dist/es}/chip/models/selection.js +0 -1
- package/dist/es/common/models/fillmode.js +4 -0
- package/dist/es/common/models/rounded.js +4 -0
- package/{esm2015 → dist/es}/common/models/shape.js +0 -1
- package/{esm2015 → dist/es}/common/models/size.js +0 -1
- package/dist/es/common/models/styling-classes.js +4 -0
- package/{esm2015 → dist/es}/common/models/theme-color.js +0 -1
- package/{esm2015/button-look.js → dist/es/common/models.js} +0 -1
- package/{esm2015 → dist/es}/direction.js +0 -1
- package/dist/es/dropdownbutton/dropdownbutton.component.js +704 -0
- package/dist/es/dropdownbutton/dropdownbutton.module.js +32 -0
- package/dist/es/floatingactionbutton/animations/animations.js +33 -0
- package/dist/es/floatingactionbutton/dial-item.component.js +143 -0
- package/dist/es/floatingactionbutton/dial-list.component.js +76 -0
- package/dist/es/floatingactionbutton/floatingactionbutton.component.js +903 -0
- package/dist/es/floatingactionbutton/floatingactionbutton.module.js +65 -0
- package/{esm2015 → dist/es}/floatingactionbutton/models/align.js +0 -1
- package/{esm2015 → dist/es}/floatingactionbutton/models/item-animation.interface.js +0 -1
- package/{esm2015 → dist/es}/floatingactionbutton/models/item-click.event.js +0 -1
- package/{esm2015 → dist/es}/floatingactionbutton/models/item.interface.js +0 -1
- package/{esm2015 → dist/es}/floatingactionbutton/models/offset.js +0 -1
- package/{esm2015 → dist/es}/floatingactionbutton/models/position-mode.js +0 -1
- package/dist/es/floatingactionbutton/templates/dial-item-template.directive.js +26 -0
- package/dist/es/floatingactionbutton/templates/fab-template.directive.js +26 -0
- package/dist/es/floatingactionbutton/utils.js +38 -0
- package/dist/es/focusable/focus.service.js +43 -0
- package/dist/es/focusable/focusable.directive.js +68 -0
- package/dist/es/index.js +22 -0
- package/dist/es/listbutton/button-item-template.directive.js +68 -0
- package/dist/es/listbutton/list-button.js +243 -0
- package/{esm2015 → dist/es}/listbutton/list-item-model.js +0 -1
- package/dist/es/listbutton/list.component.js +85 -0
- package/dist/es/listbutton/list.module.js +33 -0
- package/{esm2015 → dist/es}/listbutton/popup-settings.js +0 -1
- package/dist/es/listbutton/template-context.directive.js +40 -0
- package/{esm2015 → dist/es}/main.js +1 -5
- package/{esm2015 → dist/es}/navigation/key-events.js +0 -0
- package/{esm2015 → dist/es}/navigation/navigation-action.js +0 -0
- package/dist/es/navigation/navigation-config.js +9 -0
- package/dist/es/navigation/navigation.service.js +114 -0
- package/dist/es/package-metadata.js +15 -0
- package/dist/es/preventable-event.js +29 -0
- package/dist/es/splitbutton/localization/custom-messages.component.js +44 -0
- package/dist/es/splitbutton/localization/localized-messages.directive.js +35 -0
- package/dist/es/splitbutton/localization/messages.js +22 -0
- package/dist/es/splitbutton/splitbutton.component.js +830 -0
- package/dist/es/splitbutton/splitbutton.module.js +34 -0
- package/dist/es/util.js +97 -0
- package/{button → dist/es2015/button}/button.directive.d.ts +101 -46
- package/dist/es2015/button/button.directive.js +671 -0
- package/{button → dist/es2015/button}/button.module.d.ts +0 -5
- package/dist/es2015/button/button.module.js +47 -0
- package/{button → dist/es2015/button}/button.service.d.ts +1 -7
- package/dist/es2015/button/button.service.js +26 -0
- package/{button → dist/es2015/button}/selection-settings.d.ts +0 -0
- package/dist/es2015/button/selection-settings.js +4 -0
- package/{buttongroup → dist/es2015/buttongroup}/buttongroup.component.d.ts +9 -28
- package/{esm2015 → dist/es2015}/buttongroup/buttongroup.component.js +116 -121
- package/dist/es2015/buttongroup/buttongroup.module.d.ts +14 -0
- package/dist/es2015/buttongroup/buttongroup.module.js +27 -0
- package/{buttons.module.d.ts → dist/es2015/buttons.module.d.ts} +0 -10
- package/dist/es2015/buttons.module.js +51 -0
- package/{chip → dist/es2015/chip}/chip-content-click-event-args.interface.d.ts +0 -0
- package/dist/es2015/chip/chip-content-click-event-args.interface.js +4 -0
- package/{chip → dist/es2015/chip}/chip-list-remove-event-args.interface.d.ts +0 -0
- package/dist/es2015/chip/chip-list-remove-event-args.interface.js +4 -0
- package/{chip → dist/es2015/chip}/chip-list.component.d.ts +21 -8
- package/dist/es2015/chip/chip-list.component.js +197 -0
- package/{chip → dist/es2015/chip}/chip-remove-event-args.interface.d.ts +0 -0
- package/dist/es2015/chip/chip-remove-event-args.interface.js +4 -0
- package/{chip → dist/es2015/chip}/chip.component.d.ts +72 -38
- package/dist/es2015/chip/chip.component.js +431 -0
- package/{chip → dist/es2015/chip}/chip.module.d.ts +0 -7
- package/{esm2015 → dist/es2015}/chip/chip.module.js +11 -16
- package/{chip → dist/es2015/chip}/models/selection.d.ts +0 -0
- package/dist/es2015/chip/models/selection.js +4 -0
- package/{util.d.ts → dist/es2015/common/models/fillmode.d.ts} +4 -8
- package/dist/es2015/common/models/fillmode.js +4 -0
- package/dist/es2015/common/models/rounded.d.ts +12 -0
- package/dist/es2015/common/models/rounded.js +4 -0
- package/dist/es2015/common/models/shape.d.ts +9 -0
- package/dist/es2015/common/models/shape.js +4 -0
- package/dist/es2015/common/models/size.d.ts +17 -0
- package/dist/es2015/common/models/size.js +4 -0
- package/{esm2015/kendo-angular-buttons.js → dist/es2015/common/models/styling-classes.d.ts} +5 -2
- package/dist/es2015/common/models/styling-classes.js +4 -0
- package/{common → dist/es2015/common}/models/theme-color.d.ts +15 -4
- package/dist/es2015/common/models/theme-color.js +4 -0
- package/{common/models/size.d.ts → dist/es2015/common/models.d.ts} +6 -10
- package/dist/es2015/common/models.js +4 -0
- package/{direction.d.ts → dist/es2015/direction.d.ts} +0 -0
- package/dist/es2015/direction.js +4 -0
- package/{dropdownbutton → dist/es2015/dropdownbutton}/dropdownbutton.component.d.ts +74 -29
- package/{esm2015 → dist/es2015}/dropdownbutton/dropdownbutton.component.js +257 -179
- package/dist/es2015/dropdownbutton/dropdownbutton.module.d.ts +14 -0
- package/dist/es2015/dropdownbutton/dropdownbutton.module.js +29 -0
- package/{floatingactionbutton → dist/es2015/floatingactionbutton}/animations/animations.d.ts +0 -0
- package/{esm2015 → dist/es2015}/floatingactionbutton/animations/animations.js +0 -0
- package/{floatingactionbutton → dist/es2015/floatingactionbutton}/dial-item.component.d.ts +5 -8
- package/dist/es2015/floatingactionbutton/dial-item.component.js +133 -0
- package/{floatingactionbutton → dist/es2015/floatingactionbutton}/dial-list.component.d.ts +2 -5
- package/dist/es2015/floatingactionbutton/dial-list.component.js +81 -0
- package/{floatingactionbutton → dist/es2015/floatingactionbutton}/floatingactionbutton.component.d.ts +47 -49
- package/{esm2015 → dist/es2015}/floatingactionbutton/floatingactionbutton.component.js +212 -192
- package/{floatingactionbutton → dist/es2015/floatingactionbutton}/floatingactionbutton.module.d.ts +0 -13
- package/{esm2015 → dist/es2015}/floatingactionbutton/floatingactionbutton.module.js +11 -19
- package/{floatingactionbutton → dist/es2015/floatingactionbutton}/models/align.d.ts +0 -0
- package/dist/es2015/floatingactionbutton/models/align.js +4 -0
- package/{floatingactionbutton → dist/es2015/floatingactionbutton}/models/item-animation.interface.d.ts +0 -0
- package/dist/es2015/floatingactionbutton/models/item-animation.interface.js +4 -0
- package/{floatingactionbutton → dist/es2015/floatingactionbutton}/models/item-click.event.d.ts +0 -0
- package/dist/es2015/floatingactionbutton/models/item-click.event.js +4 -0
- package/{floatingactionbutton → dist/es2015/floatingactionbutton}/models/item.interface.d.ts +0 -0
- package/dist/es2015/floatingactionbutton/models/item.interface.js +4 -0
- package/{floatingactionbutton → dist/es2015/floatingactionbutton}/models/offset.d.ts +0 -0
- package/dist/es2015/floatingactionbutton/models/offset.js +4 -0
- package/{floatingactionbutton → dist/es2015/floatingactionbutton}/models/position-mode.d.ts +0 -0
- package/dist/es2015/floatingactionbutton/models/position-mode.js +4 -0
- package/{floatingactionbutton → dist/es2015/floatingactionbutton}/templates/dial-item-template.directive.d.ts +0 -3
- package/dist/es2015/floatingactionbutton/templates/dial-item-template.directive.js +25 -0
- package/{floatingactionbutton → dist/es2015/floatingactionbutton}/templates/fab-template.directive.d.ts +0 -3
- package/dist/es2015/floatingactionbutton/templates/fab-template.directive.js +25 -0
- package/{floatingactionbutton → dist/es2015/floatingactionbutton}/utils.d.ts +0 -0
- package/{esm2015 → dist/es2015}/floatingactionbutton/utils.js +0 -0
- package/{focusable → dist/es2015/focusable}/focus.service.d.ts +1 -5
- package/{esm2015 → dist/es2015}/focusable/focus.service.js +10 -8
- package/{focusable → dist/es2015/focusable}/focusable.directive.d.ts +0 -3
- package/{esm2015 → dist/es2015}/focusable/focusable.directive.js +20 -19
- package/dist/es2015/index.d.ts +22 -0
- package/dist/es2015/index.js +22 -0
- package/dist/es2015/index.metadata.json +1 -0
- package/{listbutton → dist/es2015/listbutton}/button-item-template.directive.d.ts +0 -3
- package/{esm2015 → dist/es2015}/listbutton/button-item-template.directive.js +12 -13
- package/{listbutton → dist/es2015/listbutton}/list-button.d.ts +2 -6
- package/{esm2015 → dist/es2015}/listbutton/list-button.js +6 -16
- package/{listbutton → dist/es2015/listbutton}/list-item-model.d.ts +0 -0
- package/dist/es2015/listbutton/list-item-model.js +4 -0
- package/{listbutton → dist/es2015/listbutton}/list.component.d.ts +3 -3
- package/dist/es2015/listbutton/list.component.js +113 -0
- package/dist/es2015/listbutton/list.module.d.ts +9 -0
- package/dist/es2015/listbutton/list.module.js +30 -0
- package/{listbutton → dist/es2015/listbutton}/popup-settings.d.ts +0 -0
- package/dist/es2015/listbutton/popup-settings.js +4 -0
- package/{listbutton → dist/es2015/listbutton}/template-context.directive.d.ts +1 -4
- package/dist/es2015/listbutton/template-context.directive.js +35 -0
- package/{main.d.ts → dist/es2015/main.d.ts} +5 -9
- package/dist/es2015/main.js +22 -0
- package/{navigation → dist/es2015/navigation}/key-events.d.ts +0 -0
- package/dist/es2015/navigation/key-events.js +13 -0
- package/{navigation → dist/es2015/navigation}/navigation-action.d.ts +0 -0
- package/dist/es2015/navigation/navigation-action.js +19 -0
- package/{navigation → dist/es2015/navigation}/navigation-config.d.ts +0 -0
- package/{esm2015 → dist/es2015}/navigation/navigation-config.js +0 -0
- package/{navigation → dist/es2015/navigation}/navigation.service.d.ts +0 -3
- package/{esm2015 → dist/es2015}/navigation/navigation.service.js +9 -11
- package/{package-metadata.d.ts → dist/es2015/package-metadata.d.ts} +0 -0
- package/{esm2015 → dist/es2015}/package-metadata.js +1 -1
- package/{preventable-event.d.ts → dist/es2015/preventable-event.d.ts} +0 -0
- package/{esm2015 → dist/es2015}/preventable-event.js +0 -0
- package/dist/es2015/splitbutton/localization/custom-messages.component.d.ts +15 -0
- package/dist/es2015/splitbutton/localization/custom-messages.component.js +36 -0
- package/dist/es2015/splitbutton/localization/localized-messages.directive.d.ts +13 -0
- package/dist/es2015/splitbutton/localization/localized-messages.directive.js +31 -0
- package/dist/es2015/splitbutton/localization/messages.d.ts +32 -0
- package/dist/es2015/splitbutton/localization/messages.js +16 -0
- package/{splitbutton → dist/es2015/splitbutton}/splitbutton.component.d.ts +74 -34
- package/{esm2015 → dist/es2015}/splitbutton/splitbutton.component.js +288 -203
- package/dist/es2015/splitbutton/splitbutton.module.d.ts +14 -0
- package/dist/es2015/splitbutton/splitbutton.module.js +31 -0
- package/dist/es2015/util.d.ts +41 -0
- package/dist/es2015/util.js +95 -0
- package/{fesm2015/kendo-angular-buttons.js → dist/fesm2015/index.js} +2394 -1838
- package/dist/fesm5/index.js +5561 -0
- package/dist/npm/button/button.directive.js +771 -0
- package/dist/npm/button/button.module.js +52 -0
- package/dist/npm/button/button.service.js +26 -0
- package/dist/npm/button/selection-settings.js +6 -0
- package/dist/npm/buttongroup/buttongroup.component.js +355 -0
- package/dist/npm/buttongroup/buttongroup.module.js +32 -0
- package/dist/npm/buttons.module.js +56 -0
- package/dist/npm/chip/chip-content-click-event-args.interface.js +6 -0
- package/dist/npm/chip/chip-list-remove-event-args.interface.js +6 -0
- package/dist/npm/chip/chip-list.component.js +216 -0
- package/dist/npm/chip/chip-remove-event-args.interface.js +6 -0
- package/dist/npm/chip/chip.component.js +451 -0
- package/dist/npm/chip/chip.module.js +57 -0
- package/dist/npm/chip/models/selection.js +6 -0
- package/dist/npm/common/models/fillmode.js +6 -0
- package/dist/npm/common/models/rounded.js +6 -0
- package/dist/npm/common/models/shape.js +6 -0
- package/dist/npm/common/models/size.js +6 -0
- package/dist/npm/common/models/styling-classes.js +6 -0
- package/dist/npm/common/models/theme-color.js +6 -0
- package/dist/npm/common/models.js +6 -0
- package/dist/npm/direction.js +6 -0
- package/dist/npm/dropdownbutton/dropdownbutton.component.js +706 -0
- package/dist/npm/dropdownbutton/dropdownbutton.module.js +34 -0
- package/dist/npm/floatingactionbutton/animations/animations.js +37 -0
- package/dist/npm/floatingactionbutton/dial-item.component.js +145 -0
- package/dist/npm/floatingactionbutton/dial-list.component.js +78 -0
- package/dist/npm/floatingactionbutton/floatingactionbutton.component.js +905 -0
- package/dist/npm/floatingactionbutton/floatingactionbutton.module.js +67 -0
- package/dist/npm/floatingactionbutton/models/align.js +6 -0
- package/dist/npm/floatingactionbutton/models/item-animation.interface.js +6 -0
- package/dist/npm/floatingactionbutton/models/item-click.event.js +6 -0
- package/dist/npm/floatingactionbutton/models/item.interface.js +6 -0
- package/dist/npm/floatingactionbutton/models/offset.js +6 -0
- package/dist/npm/floatingactionbutton/models/position-mode.js +6 -0
- package/dist/npm/floatingactionbutton/templates/dial-item-template.directive.js +28 -0
- package/dist/npm/floatingactionbutton/templates/fab-template.directive.js +28 -0
- package/dist/npm/floatingactionbutton/utils.js +42 -0
- package/dist/npm/focusable/focus.service.js +45 -0
- package/dist/npm/focusable/focusable.directive.js +70 -0
- package/dist/npm/index.js +39 -0
- package/dist/npm/listbutton/button-item-template.directive.js +70 -0
- package/dist/npm/listbutton/list-button.js +245 -0
- package/dist/npm/listbutton/list-item-model.js +6 -0
- package/dist/npm/listbutton/list.component.js +87 -0
- package/dist/npm/listbutton/list.module.js +35 -0
- package/dist/npm/listbutton/popup-settings.js +6 -0
- package/dist/npm/listbutton/template-context.directive.js +42 -0
- package/dist/npm/main.js +45 -0
- package/dist/npm/navigation/key-events.js +15 -0
- package/dist/npm/navigation/navigation-action.js +21 -0
- package/dist/npm/navigation/navigation-config.js +11 -0
- package/dist/npm/navigation/navigation.service.js +116 -0
- package/dist/npm/package-metadata.js +17 -0
- package/dist/npm/preventable-event.js +31 -0
- package/dist/npm/splitbutton/localization/custom-messages.component.js +46 -0
- package/dist/npm/splitbutton/localization/localized-messages.directive.js +37 -0
- package/dist/npm/splitbutton/localization/messages.js +24 -0
- package/dist/npm/splitbutton/splitbutton.component.js +832 -0
- package/dist/npm/splitbutton/splitbutton.module.js +36 -0
- package/dist/npm/util.js +100 -0
- package/dist/systemjs/kendo-angular-buttons.js +5 -0
- package/package.json +110 -35
- package/schematics/ngAdd/index.js +2 -5
- package/schematics/ngAdd/index.js.map +1 -1
- package/bundles/kendo-angular-buttons.umd.js +0 -5
- package/button-look.d.ts +0 -21
- package/buttongroup/buttongroup.module.d.ts +0 -21
- package/chip/models/chip-look.d.ts +0 -18
- package/chip/models/type.d.ts +0 -21
- package/common/models/shape.d.ts +0 -16
- package/dropdownbutton/dropdownbutton.module.d.ts +0 -23
- package/esm2015/button/button.directive.js +0 -488
- package/esm2015/button/button.service.js +0 -28
- package/esm2015/buttongroup/buttongroup.module.js +0 -30
- package/esm2015/chip/chip-list.component.js +0 -145
- package/esm2015/chip/chip.component.js +0 -335
- package/esm2015/chip/models/chip-look.js +0 -5
- package/esm2015/chip/models/type.js +0 -5
- package/esm2015/dropdownbutton/dropdownbutton.module.js +0 -32
- package/esm2015/floatingactionbutton/dial-item.component.js +0 -126
- package/esm2015/floatingactionbutton/dial-list.component.js +0 -89
- package/esm2015/floatingactionbutton/templates/dial-item-template.directive.js +0 -27
- package/esm2015/floatingactionbutton/templates/fab-template.directive.js +0 -27
- package/esm2015/listbutton/list.component.js +0 -120
- package/esm2015/listbutton/list.module.js +0 -39
- package/esm2015/listbutton/template-context.directive.js +0 -33
- package/esm2015/splitbutton/splitbutton.module.js +0 -32
- package/esm2015/util.js +0 -39
- package/kendo-angular-buttons.d.ts +0 -9
- package/listbutton/list.module.d.ts +0 -18
- package/splitbutton/splitbutton.module.d.ts +0 -23
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import * as tslib_1 from "tslib";
|
|
6
|
+
import { NgModule } from '@angular/core';
|
|
7
|
+
import { CommonModule } from '@angular/common';
|
|
8
|
+
import { FloatingActionButtonComponent } from './floatingactionbutton.component';
|
|
9
|
+
import { DialItemTemplateDirective } from './templates/dial-item-template.directive';
|
|
10
|
+
import { FloatingActionButtonTemplateDirective } from './templates/fab-template.directive';
|
|
11
|
+
import { DialListComponent } from './dial-list.component';
|
|
12
|
+
import { DialItemComponent } from './dial-item.component';
|
|
13
|
+
import { ListModule } from '../listbutton/list.module';
|
|
14
|
+
import { EventsModule } from '@progress/kendo-angular-common';
|
|
15
|
+
import { PopupModule } from '@progress/kendo-angular-popup';
|
|
16
|
+
var exportedModules = [
|
|
17
|
+
FloatingActionButtonComponent,
|
|
18
|
+
DialItemTemplateDirective,
|
|
19
|
+
FloatingActionButtonTemplateDirective
|
|
20
|
+
];
|
|
21
|
+
var declarations = exportedModules.concat([
|
|
22
|
+
DialListComponent,
|
|
23
|
+
DialItemComponent
|
|
24
|
+
]);
|
|
25
|
+
/**
|
|
26
|
+
* Represents the [NgModule]({{ site.data.urls.angular['ngmoduleapi'] }})
|
|
27
|
+
* definition for the FloatingActionButton component.
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
*
|
|
31
|
+
* ```ts-no-run
|
|
32
|
+
* // Import the FloatingActionButton module
|
|
33
|
+
* import { FloatingActionButtonModule } from '@progress/kendo-angular-buttons';
|
|
34
|
+
*
|
|
35
|
+
* // The browser platform with a compiler
|
|
36
|
+
* import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
|
|
37
|
+
*
|
|
38
|
+
* import { NgModule } from '@angular/core';
|
|
39
|
+
*
|
|
40
|
+
* // Import the app component
|
|
41
|
+
* import { AppComponent } from './app.component';
|
|
42
|
+
*
|
|
43
|
+
* // Define the app module
|
|
44
|
+
* _@NgModule({
|
|
45
|
+
* declarations: [AppComponent], // declare app component
|
|
46
|
+
* imports: [BrowserModule, FloatingActionButtonModule], // import FloatingActionButton module
|
|
47
|
+
* bootstrap: [AppComponent]
|
|
48
|
+
* })
|
|
49
|
+
* export class AppModule {}
|
|
50
|
+
*
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
53
|
+
var FloatingActionButtonModule = /** @class */ (function () {
|
|
54
|
+
function FloatingActionButtonModule() {
|
|
55
|
+
}
|
|
56
|
+
FloatingActionButtonModule = tslib_1.__decorate([
|
|
57
|
+
NgModule({
|
|
58
|
+
declarations: [declarations],
|
|
59
|
+
exports: [exportedModules],
|
|
60
|
+
imports: [CommonModule, PopupModule, ListModule, EventsModule]
|
|
61
|
+
})
|
|
62
|
+
], FloatingActionButtonModule);
|
|
63
|
+
return FloatingActionButtonModule;
|
|
64
|
+
}());
|
|
65
|
+
export { FloatingActionButtonModule };
|
|
@@ -2,4 +2,3 @@
|
|
|
2
2
|
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
export {};
|
|
@@ -2,4 +2,3 @@
|
|
|
2
2
|
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
export {};
|
|
@@ -2,4 +2,3 @@
|
|
|
2
2
|
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
export {};
|
|
@@ -2,4 +2,3 @@
|
|
|
2
2
|
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
export {};
|
|
@@ -2,4 +2,3 @@
|
|
|
2
2
|
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
export {};
|
|
@@ -2,4 +2,3 @@
|
|
|
2
2
|
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
export {};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import * as tslib_1 from "tslib";
|
|
6
|
+
import { Directive, Optional, TemplateRef } from '@angular/core';
|
|
7
|
+
/**
|
|
8
|
+
* Represents a template that defines the content of the whole dial item.
|
|
9
|
+
* To define the template, nest an `<ng-template>` tag
|
|
10
|
+
* with the `kendoDialItemTemplate` directive inside the `<kendo-floatingactionbutton>` tag
|
|
11
|
+
* ([see example]({% slug templates_floatingactionbutton %}#toc-dial-item-template)).
|
|
12
|
+
*/
|
|
13
|
+
var DialItemTemplateDirective = /** @class */ (function () {
|
|
14
|
+
function DialItemTemplateDirective(templateRef) {
|
|
15
|
+
this.templateRef = templateRef;
|
|
16
|
+
}
|
|
17
|
+
DialItemTemplateDirective = tslib_1.__decorate([
|
|
18
|
+
Directive({
|
|
19
|
+
selector: '[kendoDialItemTemplate]'
|
|
20
|
+
}),
|
|
21
|
+
tslib_1.__param(0, Optional()),
|
|
22
|
+
tslib_1.__metadata("design:paramtypes", [TemplateRef])
|
|
23
|
+
], DialItemTemplateDirective);
|
|
24
|
+
return DialItemTemplateDirective;
|
|
25
|
+
}());
|
|
26
|
+
export { DialItemTemplateDirective };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import * as tslib_1 from "tslib";
|
|
6
|
+
import { Directive, Optional, TemplateRef } from '@angular/core';
|
|
7
|
+
/**
|
|
8
|
+
* Represents a template that defines the content of the FloatingActionButton.
|
|
9
|
+
* To define the template, nest an `<ng-template>` tag
|
|
10
|
+
* with the `kendoFloatingActionButtonTemplate` directive inside the `<kendo-floatingactionbutton>` tag
|
|
11
|
+
* ([see example]({% slug templates_floatingactionbutton %}#toc-floatingactionbutton-template)).
|
|
12
|
+
*/
|
|
13
|
+
var FloatingActionButtonTemplateDirective = /** @class */ (function () {
|
|
14
|
+
function FloatingActionButtonTemplateDirective(templateRef) {
|
|
15
|
+
this.templateRef = templateRef;
|
|
16
|
+
}
|
|
17
|
+
FloatingActionButtonTemplateDirective = tslib_1.__decorate([
|
|
18
|
+
Directive({
|
|
19
|
+
selector: '[kendoFloatingActionButtonTemplate]'
|
|
20
|
+
}),
|
|
21
|
+
tslib_1.__param(0, Optional()),
|
|
22
|
+
tslib_1.__metadata("design:paramtypes", [TemplateRef])
|
|
23
|
+
], FloatingActionButtonTemplateDirective);
|
|
24
|
+
return FloatingActionButtonTemplateDirective;
|
|
25
|
+
}());
|
|
26
|
+
export { FloatingActionButtonTemplateDirective };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
/**
|
|
6
|
+
* @hidden
|
|
7
|
+
*/
|
|
8
|
+
export function getAnchorAlign(fabAlign, rtl) {
|
|
9
|
+
var align = { horizontal: (rtl ? 'right' : 'left'), vertical: 'bottom' };
|
|
10
|
+
if (fabAlign.horizontal === 'end') {
|
|
11
|
+
align.horizontal = rtl ? 'left' : 'right';
|
|
12
|
+
}
|
|
13
|
+
if (fabAlign.vertical === 'bottom') {
|
|
14
|
+
align.vertical = 'top';
|
|
15
|
+
}
|
|
16
|
+
if (fabAlign.vertical === 'bottom' && fabAlign.horizontal === 'end') {
|
|
17
|
+
align.horizontal = rtl ? 'left' : 'right';
|
|
18
|
+
align.vertical = 'top';
|
|
19
|
+
}
|
|
20
|
+
return align;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* @hidden
|
|
24
|
+
*/
|
|
25
|
+
export function getPopupAlign(fabAlign, rtl) {
|
|
26
|
+
var align = { horizontal: (rtl ? 'right' : 'left'), vertical: 'top' };
|
|
27
|
+
if (fabAlign.horizontal === 'end') {
|
|
28
|
+
align.horizontal = rtl ? 'left' : 'right';
|
|
29
|
+
}
|
|
30
|
+
if (fabAlign.vertical === 'bottom') {
|
|
31
|
+
align.vertical = 'bottom';
|
|
32
|
+
}
|
|
33
|
+
if (fabAlign.vertical === 'bottom' && fabAlign.horizontal === 'end') {
|
|
34
|
+
align.horizontal = rtl ? 'left' : 'right';
|
|
35
|
+
align.vertical = 'bottom';
|
|
36
|
+
}
|
|
37
|
+
return align;
|
|
38
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import * as tslib_1 from "tslib";
|
|
6
|
+
import { Injectable, EventEmitter } from '@angular/core';
|
|
7
|
+
/**
|
|
8
|
+
* @hidden
|
|
9
|
+
*/
|
|
10
|
+
var FocusService = /** @class */ (function () {
|
|
11
|
+
function FocusService() {
|
|
12
|
+
this.onFocus = new EventEmitter();
|
|
13
|
+
}
|
|
14
|
+
FocusService.prototype.isFocused = function (index) {
|
|
15
|
+
return index === this.focused;
|
|
16
|
+
};
|
|
17
|
+
FocusService.prototype.focus = function (index) {
|
|
18
|
+
if (this.isFocused(index)) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
this.focused = index;
|
|
22
|
+
this.onFocus.emit(index);
|
|
23
|
+
};
|
|
24
|
+
FocusService.prototype.resetFocus = function () {
|
|
25
|
+
this.focused = -1;
|
|
26
|
+
};
|
|
27
|
+
Object.defineProperty(FocusService.prototype, "focused", {
|
|
28
|
+
get: function () {
|
|
29
|
+
return this.focusedIndex;
|
|
30
|
+
},
|
|
31
|
+
set: function (index) {
|
|
32
|
+
this.focusedIndex = index;
|
|
33
|
+
this.onFocus.emit(index);
|
|
34
|
+
},
|
|
35
|
+
enumerable: true,
|
|
36
|
+
configurable: true
|
|
37
|
+
});
|
|
38
|
+
FocusService = tslib_1.__decorate([
|
|
39
|
+
Injectable()
|
|
40
|
+
], FocusService);
|
|
41
|
+
return FocusService;
|
|
42
|
+
}());
|
|
43
|
+
export { FocusService };
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import * as tslib_1 from "tslib";
|
|
6
|
+
import { Directive, Input, ElementRef, Renderer2 } from '@angular/core';
|
|
7
|
+
import { FocusService } from './focus.service';
|
|
8
|
+
import { isDocumentAvailable } from '@progress/kendo-angular-common';
|
|
9
|
+
/**
|
|
10
|
+
* @hidden
|
|
11
|
+
*/
|
|
12
|
+
var FocusableDirective = /** @class */ (function () {
|
|
13
|
+
function FocusableDirective(focusService, elementRef, renderer) {
|
|
14
|
+
this.focusService = focusService;
|
|
15
|
+
this.renderer = renderer;
|
|
16
|
+
this.element = elementRef.nativeElement;
|
|
17
|
+
this.subscribeEvents();
|
|
18
|
+
}
|
|
19
|
+
FocusableDirective.prototype.ngOnInit = function () {
|
|
20
|
+
if (this.index === this.focusService.focused) {
|
|
21
|
+
this.renderer.addClass(this.element, 'k-focus');
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
this.renderer.removeClass(this.element, 'k-focus');
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* @hidden
|
|
29
|
+
*/
|
|
30
|
+
FocusableDirective.prototype.ngOnDestroy = function () {
|
|
31
|
+
this.unsubscribeEvents();
|
|
32
|
+
};
|
|
33
|
+
FocusableDirective.prototype.subscribeEvents = function () {
|
|
34
|
+
var _this = this;
|
|
35
|
+
if (!isDocumentAvailable()) {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
this.focusSubscription = this.focusService.onFocus.subscribe(function (index) {
|
|
39
|
+
if (_this.index === index) {
|
|
40
|
+
_this.renderer.addClass(_this.element, 'k-focus');
|
|
41
|
+
_this.element.focus();
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
_this.renderer.removeClass(_this.element, 'k-focus');
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
};
|
|
48
|
+
FocusableDirective.prototype.unsubscribeEvents = function () {
|
|
49
|
+
if (!isDocumentAvailable()) {
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
if (this.focusSubscription) {
|
|
53
|
+
this.focusSubscription.unsubscribe();
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
tslib_1.__decorate([
|
|
57
|
+
Input(),
|
|
58
|
+
tslib_1.__metadata("design:type", Number)
|
|
59
|
+
], FocusableDirective.prototype, "index", void 0);
|
|
60
|
+
FocusableDirective = tslib_1.__decorate([
|
|
61
|
+
Directive({
|
|
62
|
+
selector: '[kendoButtonFocusable]'
|
|
63
|
+
}),
|
|
64
|
+
tslib_1.__metadata("design:paramtypes", [FocusService, ElementRef, Renderer2])
|
|
65
|
+
], FocusableDirective);
|
|
66
|
+
return FocusableDirective;
|
|
67
|
+
}());
|
|
68
|
+
export { FocusableDirective };
|
package/dist/es/index.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
/**
|
|
6
|
+
* Generated bundle index. Do not edit.
|
|
7
|
+
*/
|
|
8
|
+
export * from './main';
|
|
9
|
+
export { KendoButtonService } from './button/button.service';
|
|
10
|
+
export { DialItemComponent } from './floatingactionbutton/dial-item.component';
|
|
11
|
+
export { DialListComponent } from './floatingactionbutton/dial-list.component';
|
|
12
|
+
export { FocusService } from './focusable/focus.service';
|
|
13
|
+
export { FocusableDirective } from './focusable/focusable.directive';
|
|
14
|
+
export { ButtonItemTemplateDirective } from './listbutton/button-item-template.directive';
|
|
15
|
+
export { ListButton } from './listbutton/list-button';
|
|
16
|
+
export { ListComponent } from './listbutton/list.component';
|
|
17
|
+
export { ListModule } from './listbutton/list.module';
|
|
18
|
+
export { TemplateContextDirective } from './listbutton/template-context.directive';
|
|
19
|
+
export { NAVIGATION_CONFIG } from './navigation/navigation-config';
|
|
20
|
+
export { NavigationService } from './navigation/navigation.service';
|
|
21
|
+
export { LocalizedSplitButtonMessagesDirective } from './splitbutton/localization/localized-messages.directive';
|
|
22
|
+
export { Messages } from './splitbutton/localization/messages';
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import * as tslib_1 from "tslib";
|
|
6
|
+
/* tslint:disable:directive-selector-name */
|
|
7
|
+
import { Directive, TemplateRef } from '@angular/core';
|
|
8
|
+
/**
|
|
9
|
+
* Used for rendering the list item content.
|
|
10
|
+
*
|
|
11
|
+
* To define the item template, nest a `<ng-template>` tag with the `kendo<ComponentName>ItemTemplate` directive inside the component tag.
|
|
12
|
+
*
|
|
13
|
+
* For the DropDownButton, use the `kendoDropDownButtonItemTemplate` directive.
|
|
14
|
+
* For the SplitButton, use the `kendoSplitButtonItemTemplate` directive.
|
|
15
|
+
*
|
|
16
|
+
* The template context is set to the current component. To get a reference to the current data item, use the `let-dataItem` directive.
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```ts
|
|
20
|
+
* _@Component({
|
|
21
|
+
* selector: 'my-app',
|
|
22
|
+
* template: `
|
|
23
|
+
* <kendo-splitbutton [data]="listItems">
|
|
24
|
+
* <ng-template kendoSplitButtonItemTemplate let-dataItem>
|
|
25
|
+
* <span>{{dataItem}} option</span>
|
|
26
|
+
* </ng-template>
|
|
27
|
+
* </kendo-splitbutton>
|
|
28
|
+
* <kendo-dropdownbutton [data]="listItems">
|
|
29
|
+
* <ng-template kendoDropDownButtonItemTemplate let-dataItem>
|
|
30
|
+
* <span>{{dataItem}} option</span>
|
|
31
|
+
* </ng-template>
|
|
32
|
+
* </kendo-dropdownbutton>
|
|
33
|
+
* `
|
|
34
|
+
* })
|
|
35
|
+
* class AppComponent {
|
|
36
|
+
* public listItems: Array<any> = [{
|
|
37
|
+
* text: 'item1',
|
|
38
|
+
* icon: 'refresh',
|
|
39
|
+
* disabled: false,
|
|
40
|
+
* click: (dataItem: any) => {
|
|
41
|
+
* //action
|
|
42
|
+
* }
|
|
43
|
+
* }, {
|
|
44
|
+
* text: 'item2',
|
|
45
|
+
* icon: 'refresh',
|
|
46
|
+
* disabled: false,
|
|
47
|
+
* click: (dataItem: any) => {
|
|
48
|
+
* //action
|
|
49
|
+
* }
|
|
50
|
+
* }]
|
|
51
|
+
* }
|
|
52
|
+
* ```
|
|
53
|
+
*
|
|
54
|
+
* For more examples, refer to the article on the [DropDownList templates]({% slug overview_ddl %}#templates).
|
|
55
|
+
*/
|
|
56
|
+
var ButtonItemTemplateDirective = /** @class */ (function () {
|
|
57
|
+
function ButtonItemTemplateDirective(templateRef) {
|
|
58
|
+
this.templateRef = templateRef;
|
|
59
|
+
}
|
|
60
|
+
ButtonItemTemplateDirective = tslib_1.__decorate([
|
|
61
|
+
Directive({
|
|
62
|
+
selector: '[kendoDropDownButtonItemTemplate],[kendoSplitButtonItemTemplate]'
|
|
63
|
+
}),
|
|
64
|
+
tslib_1.__metadata("design:paramtypes", [TemplateRef])
|
|
65
|
+
], ButtonItemTemplateDirective);
|
|
66
|
+
return ButtonItemTemplateDirective;
|
|
67
|
+
}());
|
|
68
|
+
export { ButtonItemTemplateDirective };
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
/* tslint:disable:deprecation */
|
|
6
|
+
import { fromEvent, merge } from 'rxjs';
|
|
7
|
+
import { filter } from 'rxjs/operators';
|
|
8
|
+
import { KeyEvents } from './../navigation/key-events';
|
|
9
|
+
import { NavigationAction } from './../navigation/navigation-action';
|
|
10
|
+
import { isDocumentAvailable, guid, Keys } from '@progress/kendo-angular-common';
|
|
11
|
+
import { isPresent } from './../util';
|
|
12
|
+
import { validatePackage } from '@progress/kendo-licensing';
|
|
13
|
+
import { packageMetadata } from '../package-metadata';
|
|
14
|
+
/**
|
|
15
|
+
* @hidden
|
|
16
|
+
*/
|
|
17
|
+
var ListButton = /** @class */ (function () {
|
|
18
|
+
function ListButton(focusService, navigationService, wrapperRef, _zone, localization, cdr) {
|
|
19
|
+
var _this = this;
|
|
20
|
+
this.focusService = focusService;
|
|
21
|
+
this.navigationService = navigationService;
|
|
22
|
+
this.wrapperRef = wrapperRef;
|
|
23
|
+
this._zone = _zone;
|
|
24
|
+
this.cdr = cdr;
|
|
25
|
+
this._open = false;
|
|
26
|
+
this._disabled = false;
|
|
27
|
+
this._active = false;
|
|
28
|
+
this._popupSettings = { animate: true, popupClass: '' };
|
|
29
|
+
this.listId = guid();
|
|
30
|
+
this._isFocused = false;
|
|
31
|
+
validatePackage(packageMetadata);
|
|
32
|
+
this.focusService = focusService;
|
|
33
|
+
this.navigationService = navigationService;
|
|
34
|
+
this.wrapper = wrapperRef.nativeElement;
|
|
35
|
+
this.localizationChangeSubscription = localization.changes.subscribe(function (_a) {
|
|
36
|
+
var rtl = _a.rtl;
|
|
37
|
+
return (_this.direction = rtl ? 'rtl' : 'ltr');
|
|
38
|
+
});
|
|
39
|
+
this.subscribeEvents();
|
|
40
|
+
}
|
|
41
|
+
Object.defineProperty(ListButton.prototype, "popupClasses", {
|
|
42
|
+
get: function () {
|
|
43
|
+
var popupClasses = ['k-menu-popup'];
|
|
44
|
+
if (this._popupSettings.popupClass) {
|
|
45
|
+
popupClasses.push(this._popupSettings.popupClass);
|
|
46
|
+
}
|
|
47
|
+
return popupClasses.join(' ');
|
|
48
|
+
},
|
|
49
|
+
enumerable: true,
|
|
50
|
+
configurable: true
|
|
51
|
+
});
|
|
52
|
+
Object.defineProperty(ListButton.prototype, "openState", {
|
|
53
|
+
get: function () {
|
|
54
|
+
return this._open;
|
|
55
|
+
},
|
|
56
|
+
set: function (open) {
|
|
57
|
+
this._open = open;
|
|
58
|
+
},
|
|
59
|
+
enumerable: true,
|
|
60
|
+
configurable: true
|
|
61
|
+
});
|
|
62
|
+
/**
|
|
63
|
+
* @hidden
|
|
64
|
+
*/
|
|
65
|
+
ListButton.prototype.togglePopupVisibility = function () {
|
|
66
|
+
if (this._disabled) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
this.openState = !this.openState;
|
|
70
|
+
if (!this.openState) {
|
|
71
|
+
this.focusService.focus(-1);
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* @hidden
|
|
76
|
+
*/
|
|
77
|
+
ListButton.prototype.onItemClick = function (index) {
|
|
78
|
+
var _this = this;
|
|
79
|
+
this.emitItemClickHandler(index);
|
|
80
|
+
setTimeout(function () { return _this.focusWrapper(); }, 1);
|
|
81
|
+
};
|
|
82
|
+
ListButton.prototype.ngOnDestroy = function () {
|
|
83
|
+
this.openState = false;
|
|
84
|
+
this.unsubscribeEvents();
|
|
85
|
+
clearTimeout(this.focusFirstTimeout);
|
|
86
|
+
clearTimeout(this.blurTimeout);
|
|
87
|
+
if (this.localizationChangeSubscription) {
|
|
88
|
+
this.localizationChangeSubscription.unsubscribe();
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
ListButton.prototype.subscribeEvents = function () {
|
|
92
|
+
if (!isDocumentAvailable()) {
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
this.subscribeListItemFocusEvent();
|
|
96
|
+
this.subscribeComponentBlurredEvent();
|
|
97
|
+
this.subscribeNavigationEvents();
|
|
98
|
+
};
|
|
99
|
+
ListButton.prototype.subscribeListItemFocusEvent = function () {
|
|
100
|
+
var _this = this;
|
|
101
|
+
this.focusSubscription = this.focusService.onFocus.subscribe(function () {
|
|
102
|
+
_this._isFocused = true;
|
|
103
|
+
});
|
|
104
|
+
};
|
|
105
|
+
ListButton.prototype.subscribeComponentBlurredEvent = function () {
|
|
106
|
+
var _this = this;
|
|
107
|
+
this._zone.runOutsideAngular(function () {
|
|
108
|
+
_this.tabSubscription = _this.navigationService.tab.pipe(filter(function () { return _this._isFocused; })).subscribe(_this.handleTab.bind(_this));
|
|
109
|
+
_this.componentBlurredSubscription = fromEvent(document, 'click')
|
|
110
|
+
.pipe(filter(function (event) { return !_this.wrapperContains(event.target); }), filter(function () { return _this._isFocused; }))
|
|
111
|
+
.subscribe(function () { return _this._zone.run(function () { return _this.blurWrapper(); }); });
|
|
112
|
+
});
|
|
113
|
+
};
|
|
114
|
+
ListButton.prototype.subscribeNavigationEvents = function () {
|
|
115
|
+
var _this = this;
|
|
116
|
+
this.navigationSubscription = this.navigationService.navigate.subscribe(this.focusService.focus.bind(this.focusService));
|
|
117
|
+
this.enterUpSubscription = this.navigationService.enterup.subscribe(function () {
|
|
118
|
+
_this.enterHandler();
|
|
119
|
+
_this.focusWrapper();
|
|
120
|
+
});
|
|
121
|
+
this.openSubscription = this.navigationService.open.subscribe(function () {
|
|
122
|
+
if (!_this._open) {
|
|
123
|
+
_this.togglePopupVisibility();
|
|
124
|
+
_this.focusFirstItem();
|
|
125
|
+
}
|
|
126
|
+
else {
|
|
127
|
+
_this.focusWrapper();
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
this.closeSubscription = merge(this.navigationService.close, this.navigationService.esc).subscribe(function () { return _this.focusWrapper(); });
|
|
131
|
+
};
|
|
132
|
+
ListButton.prototype.enterHandler = function () { }; // tslint:disable-line
|
|
133
|
+
ListButton.prototype.unsubscribeEvents = function () {
|
|
134
|
+
if (!isDocumentAvailable()) {
|
|
135
|
+
return;
|
|
136
|
+
}
|
|
137
|
+
this.unsubscribe(this.componentBlurredSubscription);
|
|
138
|
+
this.unsubscribe(this.focusSubscription);
|
|
139
|
+
this.unsubscribe(this.navigationSubscription);
|
|
140
|
+
this.unsubscribe(this.enterPressSubscription);
|
|
141
|
+
this.unsubscribe(this.enterUpSubscription);
|
|
142
|
+
this.unsubscribe(this.openSubscription);
|
|
143
|
+
this.unsubscribe(this.closeSubscription);
|
|
144
|
+
this.unsubscribe(this.tabSubscription);
|
|
145
|
+
};
|
|
146
|
+
ListButton.prototype.unsubscribe = function (subscription) {
|
|
147
|
+
if (subscription) {
|
|
148
|
+
subscription.unsubscribe();
|
|
149
|
+
}
|
|
150
|
+
};
|
|
151
|
+
/**
|
|
152
|
+
* @hidden
|
|
153
|
+
*/
|
|
154
|
+
ListButton.prototype.keyDownHandler = function (event) {
|
|
155
|
+
this.keyHandler(event);
|
|
156
|
+
};
|
|
157
|
+
/**
|
|
158
|
+
* @hidden
|
|
159
|
+
*/
|
|
160
|
+
ListButton.prototype.keyPressHandler = function (event) {
|
|
161
|
+
this.keyHandler(event, KeyEvents.keypress);
|
|
162
|
+
};
|
|
163
|
+
/**
|
|
164
|
+
* @hidden
|
|
165
|
+
*/
|
|
166
|
+
ListButton.prototype.keyUpHandler = function (event) {
|
|
167
|
+
this.keyHandler(event, KeyEvents.keyup);
|
|
168
|
+
};
|
|
169
|
+
/**
|
|
170
|
+
* @hidden
|
|
171
|
+
*/
|
|
172
|
+
ListButton.prototype.keyHandler = function (event, keyEvent) {
|
|
173
|
+
if (this._disabled) {
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
var focused = this.focusService.focused || 0;
|
|
177
|
+
var eventData = event;
|
|
178
|
+
var action = this.navigationService.process({
|
|
179
|
+
altKey: eventData.altKey,
|
|
180
|
+
current: focused,
|
|
181
|
+
keyCode: eventData.keyCode,
|
|
182
|
+
keyEvent: keyEvent,
|
|
183
|
+
max: this._data ? this._data.length - 1 : 0,
|
|
184
|
+
min: 0
|
|
185
|
+
});
|
|
186
|
+
if (action !== NavigationAction.Undefined &&
|
|
187
|
+
action !== NavigationAction.Tab &&
|
|
188
|
+
(action !== NavigationAction.Enter || (action === NavigationAction.Enter && this._open))) {
|
|
189
|
+
if (event.keyCode === Keys.Space && action === NavigationAction.EnterUp) {
|
|
190
|
+
this._open = false;
|
|
191
|
+
}
|
|
192
|
+
else {
|
|
193
|
+
eventData.preventDefault();
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
};
|
|
197
|
+
ListButton.prototype.emitItemClickHandler = function (index) {
|
|
198
|
+
var dataItem = this._data[index];
|
|
199
|
+
if (this._itemClick) {
|
|
200
|
+
this._itemClick.emit(dataItem);
|
|
201
|
+
}
|
|
202
|
+
if (dataItem && dataItem.click && !dataItem.disabled) {
|
|
203
|
+
dataItem.click(dataItem);
|
|
204
|
+
}
|
|
205
|
+
};
|
|
206
|
+
ListButton.prototype.focusFirstItem = function () {
|
|
207
|
+
var _this = this;
|
|
208
|
+
if (this._data && isPresent(this._data[0])) {
|
|
209
|
+
this.focusFirstTimeout = setTimeout(function () { return _this.focusService.focus(0); }, 1);
|
|
210
|
+
}
|
|
211
|
+
};
|
|
212
|
+
ListButton.prototype.focusWrapper = function () {
|
|
213
|
+
if (this._open) {
|
|
214
|
+
this.togglePopupVisibility();
|
|
215
|
+
this.focusButton();
|
|
216
|
+
}
|
|
217
|
+
};
|
|
218
|
+
ListButton.prototype.wrapperContains = function (element) {
|
|
219
|
+
return this.wrapper === element || this.wrapper.contains(element);
|
|
220
|
+
};
|
|
221
|
+
ListButton.prototype.blurWrapper = function (emit) {
|
|
222
|
+
if (emit === void 0) { emit = true; }
|
|
223
|
+
if (this._open) {
|
|
224
|
+
this.togglePopupVisibility();
|
|
225
|
+
}
|
|
226
|
+
this._isFocused = false;
|
|
227
|
+
if (emit) {
|
|
228
|
+
this._blur.emit();
|
|
229
|
+
this.cdr.markForCheck();
|
|
230
|
+
}
|
|
231
|
+
};
|
|
232
|
+
ListButton.prototype.focusButton = function () {
|
|
233
|
+
if (this.button) {
|
|
234
|
+
this.button.nativeElement.focus();
|
|
235
|
+
}
|
|
236
|
+
};
|
|
237
|
+
ListButton.prototype.handleTab = function () {
|
|
238
|
+
this.focusButton();
|
|
239
|
+
this.blurWrapper(false);
|
|
240
|
+
};
|
|
241
|
+
return ListButton;
|
|
242
|
+
}());
|
|
243
|
+
export { ListButton };
|
|
@@ -2,4 +2,3 @@
|
|
|
2
2
|
* Copyright © 2021 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
export {};
|