@clr/angular 13.3.2 → 13.4.0

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.
@@ -9,8 +9,8 @@ import { Subject, BehaviorSubject, fromEvent, isObservable, of, ReplaySubject, c
9
9
  import { trigger, transition, style, animate, keyframes, state } from '@angular/animations';
10
10
  import * as i1 from '@angular/forms';
11
11
  import { FormControl, FormGroup, FormsModule, SelectMultipleControlValueAccessor } from '@angular/forms';
12
+ import { KeyNavigationCode, initializeKeyListItems, validKeyNavigationCode, setActiveKeyListItem, getFlattenedFocusableItems, focusElement, FocusTrapTrackerService, createId, isFocusable, isHTMLElement } from '@cds/core/internal';
12
13
  import * as i1$1 from '@angular/router';
13
- import { FocusTrapTrackerService, createId, isFocusable, isHTMLElement } from '@cds/core/internal';
14
14
  import '@cds/core/internal-components/close-button/register.js';
15
15
  import '@cds/core/icon/register';
16
16
 
@@ -5878,7 +5878,14 @@ class ComboboxFocusHandler {
5878
5878
  firstActive = this.selectionService.selectionModel.model;
5879
5879
  }
5880
5880
  const activeProxy = this.optionData.find(option => option.value === firstActive);
5881
- this.pseudoFocus.select(activeProxy);
5881
+ if (activeProxy) {
5882
+ // active element is visible
5883
+ this.pseudoFocus.select(activeProxy);
5884
+ }
5885
+ else {
5886
+ // we have active element, but it's filtered out
5887
+ this.pseudoFocus.select(this.optionData[0]);
5888
+ }
5882
5889
  }
5883
5890
  }
5884
5891
  }
@@ -6482,6 +6489,10 @@ class ClrOptions {
6482
6489
  event.target !== this.focusHandler.textInput) {
6483
6490
  this.toggleService.open = false;
6484
6491
  }
6492
+ }), this.items.changes.subscribe(() => {
6493
+ setTimeout(() => {
6494
+ this.focusHandler.focusFirstActive();
6495
+ });
6485
6496
  }));
6486
6497
  }
6487
6498
  ngOnDestroy() {
@@ -15864,7 +15875,6 @@ ClrDatagridActionOverflow.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.
15864
15875
 
15865
15876
  <div
15866
15877
  class="datagrid-action-overflow"
15867
- role="menu"
15868
15878
  [id]="popoverId"
15869
15879
  [attr.aria-hidden]="!open"
15870
15880
  [attr.id]="popoverId"
@@ -15898,7 +15908,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
15898
15908
 
15899
15909
  <div
15900
15910
  class="datagrid-action-overflow"
15901
- role="menu"
15902
15911
  [id]="popoverId"
15903
15912
  [attr.aria-hidden]="!open"
15904
15913
  [attr.id]="popoverId"
@@ -16855,6 +16864,224 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
16855
16864
  * The full license information can be found in LICENSE in the root directory of this project.
16856
16865
  */
16857
16866
 
16867
+ /*
16868
+ * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
16869
+ * This software is released under MIT license.
16870
+ * The full license information can be found in LICENSE in the root directory of this project.
16871
+ */
16872
+ const FOCUSABLE_ELEMENT_SELECTORS = new InjectionToken('FocusableElements');
16873
+ const FOCUSABLE_ELEMENT_SELECTORS_PROVIDER = {
16874
+ provide: FOCUSABLE_ELEMENT_SELECTORS,
16875
+ useValue: [
16876
+ 'a[href]',
16877
+ 'area[href]',
16878
+ 'input:not([disabled])',
16879
+ 'button:not([disabled])',
16880
+ 'select:not([disabled])',
16881
+ 'textarea:not([disabled])',
16882
+ 'iframe',
16883
+ 'object',
16884
+ 'embed',
16885
+ '*[tabindex]',
16886
+ '*[contenteditable=true]',
16887
+ '[role=button]:not([disabled])',
16888
+ ],
16889
+ };
16890
+
16891
+ /*
16892
+ * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
16893
+ * This software is released under MIT license.
16894
+ * The full license information can be found in LICENSE in the root directory of this project.
16895
+ */
16896
+ const CLR_LIST_KEY_NAVIGATION_CONFIG = new InjectionToken('ClrListKeyNavigationConfig');
16897
+ const CLR_LIST_KEY_NAVIGATION_COFNIG_PROVIDER = {
16898
+ provide: CLR_LIST_KEY_NAVIGATION_CONFIG,
16899
+ useValue: {
16900
+ keyListItems: 'keyListItems',
16901
+ layout: 'vertical',
16902
+ manageFocus: true,
16903
+ manageTabindex: true,
16904
+ loop: false,
16905
+ dir: null,
16906
+ },
16907
+ };
16908
+
16909
+ /*
16910
+ * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
16911
+ * This software is released under MIT license.
16912
+ * The full license information can be found in LICENSE in the root directory of this project.
16913
+ */
16914
+ function getNextKeyListItem(item, items, config) {
16915
+ const { code, layout, loop, dir } = config;
16916
+ let i = items.indexOf(item);
16917
+ const previous = i;
16918
+ const inlineStart = dir === 'rtl' ? KeyNavigationCode.ArrowRight : KeyNavigationCode.ArrowLeft;
16919
+ const inlineEnd = dir === 'rtl' ? KeyNavigationCode.ArrowLeft : KeyNavigationCode.ArrowRight;
16920
+ const numOfItems = items.length - 1;
16921
+ if (layout !== 'horizontal' && code === KeyNavigationCode.ArrowUp && i !== 0) {
16922
+ i = i - 1;
16923
+ }
16924
+ else if (layout !== 'horizontal' && code === KeyNavigationCode.ArrowUp && i === 0 && loop) {
16925
+ i = numOfItems;
16926
+ }
16927
+ else if (layout !== 'horizontal' && code === KeyNavigationCode.ArrowDown && i < numOfItems) {
16928
+ i = i + 1;
16929
+ }
16930
+ else if (layout !== 'horizontal' && code === KeyNavigationCode.ArrowDown && i === numOfItems && loop) {
16931
+ i = 0;
16932
+ }
16933
+ else if (layout !== 'vertical' && code === inlineStart && i !== 0) {
16934
+ i = i - 1;
16935
+ }
16936
+ else if (layout !== 'vertical' && code === inlineEnd && i < numOfItems) {
16937
+ i = i + 1;
16938
+ }
16939
+ else if (code === KeyNavigationCode.End) {
16940
+ i = numOfItems;
16941
+ }
16942
+ else if (code === KeyNavigationCode.Home) {
16943
+ i = 0;
16944
+ }
16945
+ else if (code === KeyNavigationCode.PageUp) {
16946
+ i = i - 4 > 0 ? i - 4 : 0;
16947
+ }
16948
+ else if (code === KeyNavigationCode.PageDown) {
16949
+ i = i + 4 < numOfItems ? i + 4 : numOfItems;
16950
+ }
16951
+ return { next: i, previous };
16952
+ }
16953
+
16954
+ /*
16955
+ * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
16956
+ * This software is released under MIT license.
16957
+ * The full license information can be found in LICENSE in the root directory of this project.
16958
+ */
16959
+ class ClrKeyNavigationList {
16960
+ constructor(host, defaultConfig, focusableElementSelectors) {
16961
+ this.host = host;
16962
+ this.defaultConfig = defaultConfig;
16963
+ this.focusableElementSelectors = focusableElementSelectors;
16964
+ this.config = Object.assign(Object.assign({}, this.defaultConfig), { dir: this.getClosestDirAttribute() });
16965
+ }
16966
+ set configuration(config) {
16967
+ this.config = Object.assign(Object.assign(Object.assign({}, this.defaultConfig), { dir: this.getClosestDirAttribute() }), config);
16968
+ }
16969
+ ngAfterViewInit() {
16970
+ this.initializeTabIndex();
16971
+ }
16972
+ onClick(e) {
16973
+ this.clickItem(e);
16974
+ }
16975
+ onKeyDown(e) {
16976
+ this.focusItem(e);
16977
+ }
16978
+ initializeTabIndex() {
16979
+ if (this.config.manageFocus && this.config.manageTabindex) {
16980
+ initializeKeyListItems(this.getListItems());
16981
+ }
16982
+ }
16983
+ clickItem(e) {
16984
+ const activeItem = this.getActiveItem(e);
16985
+ if (activeItem) {
16986
+ this.setActiveItem(e, activeItem);
16987
+ }
16988
+ }
16989
+ focusItem(e) {
16990
+ if (validKeyNavigationCode(e)) {
16991
+ const activeItem = this.getActiveItem(e);
16992
+ if (activeItem) {
16993
+ const listItems = this.getListItems();
16994
+ const { next, previous } = getNextKeyListItem(activeItem, Array.from(listItems), Object.assign(Object.assign({}, this.config), { dir: this.getClosestDirAttribute(), code: e.code }));
16995
+ if (next !== previous) {
16996
+ this.setActiveItem(e, listItems[next], listItems[previous]);
16997
+ }
16998
+ }
16999
+ }
17000
+ }
17001
+ getActiveItem(e) {
17002
+ const listItems = this.getListItems();
17003
+ return Array.from(listItems).find(c => { var _a; return (_a = c === e.target.closest(listItems[0].tagName.toLocaleLowerCase())) !== null && _a !== void 0 ? _a : c === e.target; });
17004
+ }
17005
+ setActiveItem(e, activeItem, previousItem) {
17006
+ var _a;
17007
+ if (this.config.manageFocus) {
17008
+ if (this.config.manageTabindex) {
17009
+ setActiveKeyListItem(this.getListItems(), activeItem);
17010
+ }
17011
+ const items = getFlattenedFocusableItems(activeItem);
17012
+ const item = (_a = items[0]) !== null && _a !== void 0 ? _a : activeItem;
17013
+ focusElement(item);
17014
+ e.preventDefault();
17015
+ }
17016
+ activeItem.dispatchEvent(new CustomEvent('cdsKeyChange', {
17017
+ bubbles: true,
17018
+ detail: {
17019
+ activeItem,
17020
+ previousItem,
17021
+ code: e.code,
17022
+ metaKey: e.ctrlKey || e.metaKey,
17023
+ keyListItems: this.config.keyListItems,
17024
+ },
17025
+ }));
17026
+ }
17027
+ getListItems() {
17028
+ return this.host.nativeElement.querySelectorAll(this.focusableElementSelectors.join(','));
17029
+ }
17030
+ getClosestDirAttribute() {
17031
+ const el = this.host.nativeElement.closest('[dir]');
17032
+ return el ? el.getAttribute('dir') : null;
17033
+ }
17034
+ }
17035
+ ClrKeyNavigationList.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ClrKeyNavigationList, deps: [{ token: i0.ElementRef }, { token: CLR_LIST_KEY_NAVIGATION_CONFIG }, { token: FOCUSABLE_ELEMENT_SELECTORS }], target: i0.ɵɵFactoryTarget.Directive });
17036
+ ClrKeyNavigationList.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.0.3", type: ClrKeyNavigationList, selector: "[clrKeyNavigationList]", inputs: { configuration: "configuration" }, host: { listeners: { "click": "onClick($event)", "keydown": "onKeyDown($event)" } }, ngImport: i0 });
17037
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ClrKeyNavigationList, decorators: [{
17038
+ type: Directive,
17039
+ args: [{
17040
+ selector: '[clrKeyNavigationList]',
17041
+ }]
17042
+ }], ctorParameters: function () {
17043
+ return [{ type: i0.ElementRef }, { type: undefined, decorators: [{
17044
+ type: Inject,
17045
+ args: [CLR_LIST_KEY_NAVIGATION_CONFIG]
17046
+ }] }, { type: undefined, decorators: [{
17047
+ type: Inject,
17048
+ args: [FOCUSABLE_ELEMENT_SELECTORS]
17049
+ }] }];
17050
+ }, propDecorators: { configuration: [{
17051
+ type: Input
17052
+ }], onClick: [{
17053
+ type: HostListener,
17054
+ args: ['click', ['$event']]
17055
+ }], onKeyDown: [{
17056
+ type: HostListener,
17057
+ args: ['keydown', ['$event']]
17058
+ }] } });
17059
+
17060
+ /*
17061
+ * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
17062
+ * This software is released under MIT license.
17063
+ * The full license information can be found in LICENSE in the root directory of this project.
17064
+ */
17065
+ class ClrKeyNavigationListModule {
17066
+ }
17067
+ ClrKeyNavigationListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ClrKeyNavigationListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17068
+ ClrKeyNavigationListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ClrKeyNavigationListModule, declarations: [ClrKeyNavigationList], exports: [ClrKeyNavigationList] });
17069
+ ClrKeyNavigationListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ClrKeyNavigationListModule, providers: [CLR_LIST_KEY_NAVIGATION_COFNIG_PROVIDER, FOCUSABLE_ELEMENT_SELECTORS_PROVIDER] });
17070
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ClrKeyNavigationListModule, decorators: [{
17071
+ type: NgModule,
17072
+ args: [{
17073
+ declarations: [ClrKeyNavigationList],
17074
+ exports: [ClrKeyNavigationList],
17075
+ providers: [CLR_LIST_KEY_NAVIGATION_COFNIG_PROVIDER, FOCUSABLE_ELEMENT_SELECTORS_PROVIDER],
17076
+ }]
17077
+ }] });
17078
+
17079
+ /*
17080
+ * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
17081
+ * This software is released under MIT license.
17082
+ * The full license information can be found in LICENSE in the root directory of this project.
17083
+ */
17084
+
16858
17085
  /*
16859
17086
  * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
16860
17087
  * This software is released under MIT license.
@@ -19783,12 +20010,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
19783
20010
  * The full license information can be found in LICENSE in the root directory of this project.
19784
20011
  */
19785
20012
  class ClrTree {
19786
- constructor(featuresService, focusManagerService, el) {
20013
+ constructor(featuresService, focusManagerService, { nativeElement }, renderer, ngZone) {
19787
20014
  this.featuresService = featuresService;
19788
20015
  this.focusManagerService = focusManagerService;
19789
- this.el = el;
19790
20016
  this.subscriptions = [];
19791
- this.tabindex = 0;
20017
+ const subscription = ngZone.runOutsideAngular(() => fromEvent(nativeElement, 'focusin').subscribe((event) => {
20018
+ if (event.target === nativeElement) {
20019
+ // After discussing with the team, I've made it so that when the tree receives focus, the first visible node will be focused.
20020
+ // This will prevent from the page scrolling abruptly to the first selected node if it exist in a deeply nested tree.
20021
+ this.focusManagerService.focusFirstVisibleNode();
20022
+ // when the first child gets focus,
20023
+ // tree should no longer have tabindex of 0.
20024
+ renderer.removeAttribute(nativeElement, 'tabindex');
20025
+ }
20026
+ }));
20027
+ this.subscriptions.push(subscription);
19792
20028
  }
19793
20029
  set lazy(value) {
19794
20030
  this.featuresService.eager = !value;
@@ -19796,16 +20032,6 @@ class ClrTree {
19796
20032
  get isMultiSelectable() {
19797
20033
  return this.featuresService.selectable && this.rootNodes.length > 0;
19798
20034
  }
19799
- onFocusIn(event) {
19800
- if (event.target === this.el.nativeElement) {
19801
- // After discussing with the team, I've made it so that when the tree receives focus, the first visible node will be focused.
19802
- // This will prevent from the page scrolling abruptly to the first selected node if it exist in a deeply nested tree.
19803
- this.focusManagerService.focusFirstVisibleNode();
19804
- // when the first child gets focus,
19805
- // tree should no longer have tabindex of 0;
19806
- delete this.tabindex;
19807
- }
19808
- }
19809
20035
  ngAfterContentInit() {
19810
20036
  this.setRootNodes();
19811
20037
  this.subscriptions.push(this.rootNodes.changes.subscribe(() => {
@@ -19822,8 +20048,8 @@ class ClrTree {
19822
20048
  this.subscriptions.forEach(sub => sub.unsubscribe());
19823
20049
  }
19824
20050
  }
19825
- ClrTree.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ClrTree, deps: [{ token: TreeFeaturesService }, { token: TreeFocusManagerService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
19826
- ClrTree.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: ClrTree, selector: "clr-tree", inputs: { lazy: ["clrLazy", "lazy"] }, host: { listeners: { "focusin": "onFocusIn($event)" }, properties: { "attr.tabindex": "tabindex", "attr.role": "\"tree\"", "attr.aria-multiselectable": "isMultiSelectable" } }, providers: [TREE_FEATURES_PROVIDER, TreeFocusManagerService], queries: [{ propertyName: "rootNodes", predicate: ClrTreeNode }], ngImport: i0, template: `
20051
+ ClrTree.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ClrTree, deps: [{ token: TreeFeaturesService }, { token: TreeFocusManagerService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
20052
+ ClrTree.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: ClrTree, selector: "clr-tree", inputs: { lazy: ["clrLazy", "lazy"] }, host: { attributes: { "tabindex": "0" }, properties: { "attr.role": "\"tree\"", "attr.aria-multiselectable": "isMultiSelectable" } }, providers: [TREE_FEATURES_PROVIDER, TreeFocusManagerService], queries: [{ propertyName: "rootNodes", predicate: ClrTreeNode }], ngImport: i0, template: `
19827
20053
  <ng-content></ng-content>
19828
20054
  <clr-recursive-children
19829
20055
  *ngIf="featuresService.recursion"
@@ -19843,17 +20069,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
19843
20069
  `,
19844
20070
  providers: [TREE_FEATURES_PROVIDER, TreeFocusManagerService],
19845
20071
  host: {
19846
- '[attr.tabindex]': 'tabindex',
20072
+ tabindex: '0',
19847
20073
  '[attr.role]': '"tree"',
19848
20074
  '[attr.aria-multiselectable]': 'isMultiSelectable',
19849
20075
  },
19850
20076
  }]
19851
- }], ctorParameters: function () { return [{ type: TreeFeaturesService }, { type: TreeFocusManagerService }, { type: i0.ElementRef }]; }, propDecorators: { lazy: [{
20077
+ }], ctorParameters: function () { return [{ type: TreeFeaturesService }, { type: TreeFocusManagerService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.NgZone }]; }, propDecorators: { lazy: [{
19852
20078
  type: Input,
19853
20079
  args: ['clrLazy']
19854
- }], onFocusIn: [{
19855
- type: HostListener,
19856
- args: ['focusin', ['$event']]
19857
20080
  }], rootNodes: [{
19858
20081
  type: ContentChildren,
19859
20082
  args: [ClrTreeNode]
@@ -27724,5 +27947,5 @@ const CLR_MENU_POSITIONS = [
27724
27947
  * Generated bundle index. Do not edit.
27725
27948
  */
27726
27949
 
27727
- export { CLR_ALERT_DIRECTIVES, CLR_BUTTON_GROUP_DIRECTIVES, CLR_DATAGRID_DIRECTIVES, CLR_DATEPICKER_DIRECTIVES, CLR_DRAG_AND_DROP_DIRECTIVES, CLR_DROPDOWN_DIRECTIVES, CLR_ICON_DIRECTIVES, CLR_LAYOUT_DIRECTIVES, CLR_LOADING_BUTTON_DIRECTIVES, CLR_LOADING_DIRECTIVES, CLR_MENU_POSITIONS, CLR_MODAL_DIRECTIVES, CLR_NAVIGATION_DIRECTIVES, CLR_PROGRESS_BAR_DIRECTIVES, CLR_SIGNPOST_DIRECTIVES, CLR_SPINNER_DIRECTIVES, CLR_STACK_VIEW_DIRECTIVES, CLR_TABS_DIRECTIVES, CLR_TOOLTIP_DIRECTIVES, CLR_TREE_VIEW_DIRECTIVES, CLR_VERTICAL_NAV_DIRECTIVES, CLR_WIZARD_DIRECTIVES, CONDITIONAL_DIRECTIVES, CUSTOM_BUTTON_TYPES, CdsIconCustomTag, ClarityModule, ClrAbstractContainer, ClrAccordion, ClrAccordionContent, ClrAccordionDescription, ClrAccordionModule, ClrAccordionPanel, ClrAccordionTitle, ClrAlert, ClrAlertItem, ClrAlertModule, ClrAlertText, ClrAlerts, ClrAlertsPager, ClrAlignment, ClrAriaCurrentLink, ClrAriaLivePoliteness, ClrAriaLiveService, ClrAxis, ClrButton, ClrButtonGroup, ClrButtonGroupModule, ClrButtonModule, ClrCalendar, ClrCheckbox, ClrCheckboxContainer, ClrCheckboxModule, ClrCheckboxWrapper, ClrCombobox, ClrComboboxContainer, ClrComboboxModule, ClrCommonFormsModule, ClrCommonStringsService, ClrConditionalModule, ClrControl, ClrControlContainer, ClrControlError, ClrControlHelper, ClrControlSuccess, ClrDataModule, ClrDatagrid, ClrDatagridActionBar, ClrDatagridActionOverflow, ClrDatagridCell, ClrDatagridColumn, ClrDatagridColumnSeparator, ClrDatagridColumnToggle, ClrDatagridColumnToggleButton, ClrDatagridColumnToggleTitle, ClrDatagridDetail, ClrDatagridDetailBody, ClrDatagridDetailHeader, ClrDatagridFilter, ClrDatagridFooter, ClrDatagridHideableColumn, ClrDatagridItems, ClrDatagridItemsTrackBy, ClrDatagridModule, ClrDatagridPageSize, ClrDatagridPagination, ClrDatagridPlaceholder, ClrDatagridRow, ClrDatagridRowDetail, ClrDatagridSortOrder, ClrDatalist, ClrDatalistContainer, ClrDatalistInput, ClrDatalistModule, ClrDateContainer, ClrDateInput, ClrDatepickerModule, ClrDatepickerViewManager, ClrDay, ClrDaypicker, ClrDestroyService, ClrDragAndDropModule, ClrDragEvent, ClrDragHandle, ClrDraggable, ClrDraggableGhost, ClrDropdown, ClrDropdownItem, ClrDropdownMenu, ClrDropdownModule, ClrDropdownTrigger, ClrDroppable, ClrEmphasisModule, ClrExpandableAnimation, ClrFocusOnViewInit, ClrFocusOnViewInitModule, ClrForTypeAhead, ClrForTypeAheadModule, ClrForm, ClrFormLayout, ClrFormsModule, ClrHeader, ClrIconCustomTag, ClrIconModule, ClrIfActive, ClrIfDetail, ClrIfDragged, ClrIfError, ClrIfExpanded, ClrIfOpen, ClrIfSuccess, ClrInput, ClrInputContainer, ClrInputModule, ClrLabel, ClrLayout, ClrLayoutModule, ClrLoading, ClrLoadingButton, ClrLoadingButtonModule, ClrLoadingModule, ClrLoadingState, ClrMainContainer, ClrMainContainerModule, ClrModal, ClrModalBody, ClrModalModule, ClrMonthpicker, ClrNavLevel, ClrNavigationModule, ClrOption, ClrOptionItems, ClrOptionSelected, ClrOptions, ClrPassword, ClrPasswordContainer, ClrPasswordModule, ClrPopoverAnchor, ClrPopoverContent, ClrPopoverEventsService, ClrPopoverModule, ClrPopoverPositionService, ClrPopoverToggleService, ClrProgressBar, ClrProgressBarModule, ClrRadio, ClrRadioContainer, ClrRadioModule, ClrRadioWrapper, ClrRange, ClrRangeContainer, ClrRangeModule, ClrRecursiveForOf, ClrSelect, ClrSelectContainer, ClrSelectModule, ClrSelectedState, ClrSide, ClrSignpost, ClrSignpostContent, ClrSignpostModule, ClrSignpostTrigger, ClrSpinner, ClrSpinnerModule, ClrStackBlock, ClrStackContentInput, ClrStackHeader, ClrStackInput, ClrStackSelect, ClrStackView, ClrStackViewCustomTags, ClrStackViewLabel, ClrStackViewModule, ClrStepButton, ClrStepButtonType, ClrStepper, ClrStepperModule, ClrStepperPanel, ClrTab, ClrTabContent, ClrTabLink, ClrTabOverflowContent, ClrTabs, ClrTabsModule, ClrTextarea, ClrTextareaContainer, ClrTextareaModule, ClrTimeline, ClrTimelineLayout, ClrTimelineModule, ClrTimelineStep, ClrTimelineStepDescription, ClrTimelineStepHeader, ClrTimelineStepState, ClrTimelineStepTitle, ClrTooltip, ClrTooltipContent, ClrTooltipModule, ClrTooltipTrigger, ClrTree, ClrTreeNode, ClrTreeNodeLink, ClrTreeViewModule, ClrVerticalNav, ClrVerticalNavGroup, ClrVerticalNavGroupChildren, ClrVerticalNavIcon, ClrVerticalNavLink, ClrVerticalNavModule, ClrWizard, ClrWizardButton, ClrWizardCustomTags, ClrWizardHeaderAction, ClrWizardModule, ClrWizardPage, ClrWizardPageButtons, ClrWizardPageHeaderActions, ClrWizardPageNavTitle, ClrWizardPageTitle, ClrWizardStepnav, ClrWizardStepnavItem, ClrYearpicker, DEFAULT_BUTTON_TYPES, DatagridNumericFilter, DatagridPropertyComparator, DatagridPropertyNumericFilter, DatagridPropertyStringFilter, DatagridStringFilter, EXPANDABLE_ANIMATION_DIRECTIVES, FOCUS_ON_VIEW_INIT, FOCUS_ON_VIEW_INIT_DIRECTIVES, IS_TOGGLE, IS_TOGGLE_PROVIDER, LoadingListener, MainContainerWillyWonka, NavDetectionOompaLoompa, TOGGLE_SERVICE, TOGGLE_SERVICE_PROVIDER, ToggleServiceFactory, WrappedFormControl, collapse, commonStringsDefault, fade, fadeSlide, isToggleFactory, slide, AccordionOompaLoompa as ÇlrAccordionOompaLoompa, AccordionWillyWonka as ÇlrAccordionWillyWonka, ActionableOompaLoompa as ÇlrActionableOompaLoompa, ActiveOompaLoompa as ÇlrActiveOompaLoompa, ClrFocusTrapModule as ÇlrClrFocusTrapModule, ClrPopoverCloseButton as ÇlrClrPopoverCloseButton, ClrPopoverModuleNext as ÇlrClrPopoverModuleNext, ClrPopoverOpenCloseButton as ÇlrClrPopoverOpenCloseButton, DatagridCellRenderer as ÇlrDatagridCellRenderer, DatagridDetailRegisterer as ÇlrDatagridDetailRegisterer, DatagridHeaderRenderer as ÇlrDatagridHeaderRenderer, DatagridMainRenderer as ÇlrDatagridMainRenderer, DatagridRowRenderer as ÇlrDatagridRowRenderer, DatagridWillyWonka as ÇlrDatagridWillyWonka, ExpandableOompaLoompa as ÇlrExpandableOompaLoompa, FocusTrapDirective as ÇlrFocusTrapDirective, FocusTrapTracker as ÇlrFocusTrapTracker, StepperOompaLoompa as ÇlrStepperOompaLoompa, StepperWillyWonka as ÇlrStepperWillyWonka, TabsWillyWonka as ÇlrTabsWillyWonka, WrappedCell as ÇlrWrappedCell, WrappedColumn as ÇlrWrappedColumn, WrappedRow as ÇlrWrappedRow };
27950
+ export { CLR_ALERT_DIRECTIVES, CLR_BUTTON_GROUP_DIRECTIVES, CLR_DATAGRID_DIRECTIVES, CLR_DATEPICKER_DIRECTIVES, CLR_DRAG_AND_DROP_DIRECTIVES, CLR_DROPDOWN_DIRECTIVES, CLR_ICON_DIRECTIVES, CLR_LAYOUT_DIRECTIVES, CLR_LIST_KEY_NAVIGATION_COFNIG_PROVIDER, CLR_LIST_KEY_NAVIGATION_CONFIG, CLR_LOADING_BUTTON_DIRECTIVES, CLR_LOADING_DIRECTIVES, CLR_MENU_POSITIONS, CLR_MODAL_DIRECTIVES, CLR_NAVIGATION_DIRECTIVES, CLR_PROGRESS_BAR_DIRECTIVES, CLR_SIGNPOST_DIRECTIVES, CLR_SPINNER_DIRECTIVES, CLR_STACK_VIEW_DIRECTIVES, CLR_TABS_DIRECTIVES, CLR_TOOLTIP_DIRECTIVES, CLR_TREE_VIEW_DIRECTIVES, CLR_VERTICAL_NAV_DIRECTIVES, CLR_WIZARD_DIRECTIVES, CONDITIONAL_DIRECTIVES, CUSTOM_BUTTON_TYPES, CdsIconCustomTag, ClarityModule, ClrAbstractContainer, ClrAccordion, ClrAccordionContent, ClrAccordionDescription, ClrAccordionModule, ClrAccordionPanel, ClrAccordionTitle, ClrAlert, ClrAlertItem, ClrAlertModule, ClrAlertText, ClrAlerts, ClrAlertsPager, ClrAlignment, ClrAriaCurrentLink, ClrAriaLivePoliteness, ClrAriaLiveService, ClrAxis, ClrButton, ClrButtonGroup, ClrButtonGroupModule, ClrButtonModule, ClrCalendar, ClrCheckbox, ClrCheckboxContainer, ClrCheckboxModule, ClrCheckboxWrapper, ClrCombobox, ClrComboboxContainer, ClrComboboxModule, ClrCommonFormsModule, ClrCommonStringsService, ClrConditionalModule, ClrControl, ClrControlContainer, ClrControlError, ClrControlHelper, ClrControlSuccess, ClrDataModule, ClrDatagrid, ClrDatagridActionBar, ClrDatagridActionOverflow, ClrDatagridCell, ClrDatagridColumn, ClrDatagridColumnSeparator, ClrDatagridColumnToggle, ClrDatagridColumnToggleButton, ClrDatagridColumnToggleTitle, ClrDatagridDetail, ClrDatagridDetailBody, ClrDatagridDetailHeader, ClrDatagridFilter, ClrDatagridFooter, ClrDatagridHideableColumn, ClrDatagridItems, ClrDatagridItemsTrackBy, ClrDatagridModule, ClrDatagridPageSize, ClrDatagridPagination, ClrDatagridPlaceholder, ClrDatagridRow, ClrDatagridRowDetail, ClrDatagridSortOrder, ClrDatalist, ClrDatalistContainer, ClrDatalistInput, ClrDatalistModule, ClrDateContainer, ClrDateInput, ClrDatepickerModule, ClrDatepickerViewManager, ClrDay, ClrDaypicker, ClrDestroyService, ClrDragAndDropModule, ClrDragEvent, ClrDragHandle, ClrDraggable, ClrDraggableGhost, ClrDropdown, ClrDropdownItem, ClrDropdownMenu, ClrDropdownModule, ClrDropdownTrigger, ClrDroppable, ClrEmphasisModule, ClrExpandableAnimation, ClrFocusOnViewInit, ClrFocusOnViewInitModule, ClrForTypeAhead, ClrForTypeAheadModule, ClrForm, ClrFormLayout, ClrFormsModule, ClrHeader, ClrIconCustomTag, ClrIconModule, ClrIfActive, ClrIfDetail, ClrIfDragged, ClrIfError, ClrIfExpanded, ClrIfOpen, ClrIfSuccess, ClrInput, ClrInputContainer, ClrInputModule, ClrKeyNavigationList, ClrKeyNavigationListModule, ClrLabel, ClrLayout, ClrLayoutModule, ClrLoading, ClrLoadingButton, ClrLoadingButtonModule, ClrLoadingModule, ClrLoadingState, ClrMainContainer, ClrMainContainerModule, ClrModal, ClrModalBody, ClrModalModule, ClrMonthpicker, ClrNavLevel, ClrNavigationModule, ClrOption, ClrOptionItems, ClrOptionSelected, ClrOptions, ClrPassword, ClrPasswordContainer, ClrPasswordModule, ClrPopoverAnchor, ClrPopoverContent, ClrPopoverEventsService, ClrPopoverModule, ClrPopoverPositionService, ClrPopoverToggleService, ClrProgressBar, ClrProgressBarModule, ClrRadio, ClrRadioContainer, ClrRadioModule, ClrRadioWrapper, ClrRange, ClrRangeContainer, ClrRangeModule, ClrRecursiveForOf, ClrSelect, ClrSelectContainer, ClrSelectModule, ClrSelectedState, ClrSide, ClrSignpost, ClrSignpostContent, ClrSignpostModule, ClrSignpostTrigger, ClrSpinner, ClrSpinnerModule, ClrStackBlock, ClrStackContentInput, ClrStackHeader, ClrStackInput, ClrStackSelect, ClrStackView, ClrStackViewCustomTags, ClrStackViewLabel, ClrStackViewModule, ClrStepButton, ClrStepButtonType, ClrStepper, ClrStepperModule, ClrStepperPanel, ClrTab, ClrTabContent, ClrTabLink, ClrTabOverflowContent, ClrTabs, ClrTabsModule, ClrTextarea, ClrTextareaContainer, ClrTextareaModule, ClrTimeline, ClrTimelineLayout, ClrTimelineModule, ClrTimelineStep, ClrTimelineStepDescription, ClrTimelineStepHeader, ClrTimelineStepState, ClrTimelineStepTitle, ClrTooltip, ClrTooltipContent, ClrTooltipModule, ClrTooltipTrigger, ClrTree, ClrTreeNode, ClrTreeNodeLink, ClrTreeViewModule, ClrVerticalNav, ClrVerticalNavGroup, ClrVerticalNavGroupChildren, ClrVerticalNavIcon, ClrVerticalNavLink, ClrVerticalNavModule, ClrWizard, ClrWizardButton, ClrWizardCustomTags, ClrWizardHeaderAction, ClrWizardModule, ClrWizardPage, ClrWizardPageButtons, ClrWizardPageHeaderActions, ClrWizardPageNavTitle, ClrWizardPageTitle, ClrWizardStepnav, ClrWizardStepnavItem, ClrYearpicker, DEFAULT_BUTTON_TYPES, DatagridNumericFilter, DatagridPropertyComparator, DatagridPropertyNumericFilter, DatagridPropertyStringFilter, DatagridStringFilter, EXPANDABLE_ANIMATION_DIRECTIVES, FOCUSABLE_ELEMENT_SELECTORS, FOCUSABLE_ELEMENT_SELECTORS_PROVIDER, FOCUS_ON_VIEW_INIT, FOCUS_ON_VIEW_INIT_DIRECTIVES, IS_TOGGLE, IS_TOGGLE_PROVIDER, LoadingListener, MainContainerWillyWonka, NavDetectionOompaLoompa, TOGGLE_SERVICE, TOGGLE_SERVICE_PROVIDER, ToggleServiceFactory, WrappedFormControl, collapse, commonStringsDefault, fade, fadeSlide, isToggleFactory, slide, AccordionOompaLoompa as ÇlrAccordionOompaLoompa, AccordionWillyWonka as ÇlrAccordionWillyWonka, ActionableOompaLoompa as ÇlrActionableOompaLoompa, ActiveOompaLoompa as ÇlrActiveOompaLoompa, ClrFocusTrapModule as ÇlrClrFocusTrapModule, ClrPopoverCloseButton as ÇlrClrPopoverCloseButton, ClrPopoverModuleNext as ÇlrClrPopoverModuleNext, ClrPopoverOpenCloseButton as ÇlrClrPopoverOpenCloseButton, DatagridCellRenderer as ÇlrDatagridCellRenderer, DatagridDetailRegisterer as ÇlrDatagridDetailRegisterer, DatagridHeaderRenderer as ÇlrDatagridHeaderRenderer, DatagridMainRenderer as ÇlrDatagridMainRenderer, DatagridRowRenderer as ÇlrDatagridRowRenderer, DatagridWillyWonka as ÇlrDatagridWillyWonka, ExpandableOompaLoompa as ÇlrExpandableOompaLoompa, FocusTrapDirective as ÇlrFocusTrapDirective, FocusTrapTracker as ÇlrFocusTrapTracker, StepperOompaLoompa as ÇlrStepperOompaLoompa, StepperWillyWonka as ÇlrStepperWillyWonka, TabsWillyWonka as ÇlrTabsWillyWonka, WrappedCell as ÇlrWrappedCell, WrappedColumn as ÇlrWrappedColumn, WrappedRow as ÇlrWrappedRow };
27728
27951
  //# sourceMappingURL=clr-angular.mjs.map