@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
 
@@ -5829,7 +5829,14 @@ class ComboboxFocusHandler {
5829
5829
  firstActive = this.selectionService.selectionModel.model;
5830
5830
  }
5831
5831
  const activeProxy = this.optionData.find(option => option.value === firstActive);
5832
- this.pseudoFocus.select(activeProxy);
5832
+ if (activeProxy) {
5833
+ // active element is visible
5834
+ this.pseudoFocus.select(activeProxy);
5835
+ }
5836
+ else {
5837
+ // we have active element, but it's filtered out
5838
+ this.pseudoFocus.select(this.optionData[0]);
5839
+ }
5833
5840
  }
5834
5841
  }
5835
5842
  }
@@ -6427,6 +6434,10 @@ class ClrOptions {
6427
6434
  event.target !== this.focusHandler.textInput) {
6428
6435
  this.toggleService.open = false;
6429
6436
  }
6437
+ }), this.items.changes.subscribe(() => {
6438
+ setTimeout(() => {
6439
+ this.focusHandler.focusFirstActive();
6440
+ });
6430
6441
  }));
6431
6442
  }
6432
6443
  ngOnDestroy() {
@@ -15742,7 +15753,6 @@ ClrDatagridActionOverflow.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.
15742
15753
 
15743
15754
  <div
15744
15755
  class="datagrid-action-overflow"
15745
- role="menu"
15746
15756
  [id]="popoverId"
15747
15757
  [attr.aria-hidden]="!open"
15748
15758
  [attr.id]="popoverId"
@@ -15776,7 +15786,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
15776
15786
 
15777
15787
  <div
15778
15788
  class="datagrid-action-overflow"
15779
- role="menu"
15780
15789
  [id]="popoverId"
15781
15790
  [attr.aria-hidden]="!open"
15782
15791
  [attr.id]="popoverId"
@@ -16741,6 +16750,232 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
16741
16750
  * The full license information can be found in LICENSE in the root directory of this project.
16742
16751
  */
16743
16752
 
16753
+ /*
16754
+ * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
16755
+ * This software is released under MIT license.
16756
+ * The full license information can be found in LICENSE in the root directory of this project.
16757
+ */
16758
+ const FOCUSABLE_ELEMENT_SELECTORS = new InjectionToken('FocusableElements');
16759
+ const FOCUSABLE_ELEMENT_SELECTORS_PROVIDER = {
16760
+ provide: FOCUSABLE_ELEMENT_SELECTORS,
16761
+ useValue: [
16762
+ 'a[href]',
16763
+ 'area[href]',
16764
+ 'input:not([disabled])',
16765
+ 'button:not([disabled])',
16766
+ 'select:not([disabled])',
16767
+ 'textarea:not([disabled])',
16768
+ 'iframe',
16769
+ 'object',
16770
+ 'embed',
16771
+ '*[tabindex]',
16772
+ '*[contenteditable=true]',
16773
+ '[role=button]:not([disabled])',
16774
+ ],
16775
+ };
16776
+
16777
+ /*
16778
+ * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
16779
+ * This software is released under MIT license.
16780
+ * The full license information can be found in LICENSE in the root directory of this project.
16781
+ */
16782
+ const CLR_LIST_KEY_NAVIGATION_CONFIG = new InjectionToken('ClrListKeyNavigationConfig');
16783
+ const CLR_LIST_KEY_NAVIGATION_COFNIG_PROVIDER = {
16784
+ provide: CLR_LIST_KEY_NAVIGATION_CONFIG,
16785
+ useValue: {
16786
+ keyListItems: 'keyListItems',
16787
+ layout: 'vertical',
16788
+ manageFocus: true,
16789
+ manageTabindex: true,
16790
+ loop: false,
16791
+ dir: null,
16792
+ },
16793
+ };
16794
+
16795
+ /*
16796
+ * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
16797
+ * This software is released under MIT license.
16798
+ * The full license information can be found in LICENSE in the root directory of this project.
16799
+ */
16800
+ function getNextKeyListItem(item, items, config) {
16801
+ const { code, layout, loop, dir } = config;
16802
+ let i = items.indexOf(item);
16803
+ const previous = i;
16804
+ const inlineStart = dir === 'rtl' ? KeyNavigationCode.ArrowRight : KeyNavigationCode.ArrowLeft;
16805
+ const inlineEnd = dir === 'rtl' ? KeyNavigationCode.ArrowLeft : KeyNavigationCode.ArrowRight;
16806
+ const numOfItems = items.length - 1;
16807
+ if (layout !== 'horizontal' && code === KeyNavigationCode.ArrowUp && i !== 0) {
16808
+ i = i - 1;
16809
+ }
16810
+ else if (layout !== 'horizontal' && code === KeyNavigationCode.ArrowUp && i === 0 && loop) {
16811
+ i = numOfItems;
16812
+ }
16813
+ else if (layout !== 'horizontal' && code === KeyNavigationCode.ArrowDown && i < numOfItems) {
16814
+ i = i + 1;
16815
+ }
16816
+ else if (layout !== 'horizontal' && code === KeyNavigationCode.ArrowDown && i === numOfItems && loop) {
16817
+ i = 0;
16818
+ }
16819
+ else if (layout !== 'vertical' && code === inlineStart && i !== 0) {
16820
+ i = i - 1;
16821
+ }
16822
+ else if (layout !== 'vertical' && code === inlineEnd && i < numOfItems) {
16823
+ i = i + 1;
16824
+ }
16825
+ else if (code === KeyNavigationCode.End) {
16826
+ i = numOfItems;
16827
+ }
16828
+ else if (code === KeyNavigationCode.Home) {
16829
+ i = 0;
16830
+ }
16831
+ else if (code === KeyNavigationCode.PageUp) {
16832
+ i = i - 4 > 0 ? i - 4 : 0;
16833
+ }
16834
+ else if (code === KeyNavigationCode.PageDown) {
16835
+ i = i + 4 < numOfItems ? i + 4 : numOfItems;
16836
+ }
16837
+ return { next: i, previous };
16838
+ }
16839
+
16840
+ /*
16841
+ * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
16842
+ * This software is released under MIT license.
16843
+ * The full license information can be found in LICENSE in the root directory of this project.
16844
+ */
16845
+ class ClrKeyNavigationList {
16846
+ constructor(host, defaultConfig, focusableElementSelectors) {
16847
+ this.host = host;
16848
+ this.defaultConfig = defaultConfig;
16849
+ this.focusableElementSelectors = focusableElementSelectors;
16850
+ this.config = {
16851
+ ...this.defaultConfig,
16852
+ dir: this.getClosestDirAttribute(),
16853
+ };
16854
+ }
16855
+ set configuration(config) {
16856
+ this.config = {
16857
+ ...this.defaultConfig,
16858
+ dir: this.getClosestDirAttribute(),
16859
+ ...config,
16860
+ };
16861
+ }
16862
+ ngAfterViewInit() {
16863
+ this.initializeTabIndex();
16864
+ }
16865
+ onClick(e) {
16866
+ this.clickItem(e);
16867
+ }
16868
+ onKeyDown(e) {
16869
+ this.focusItem(e);
16870
+ }
16871
+ initializeTabIndex() {
16872
+ if (this.config.manageFocus && this.config.manageTabindex) {
16873
+ initializeKeyListItems(this.getListItems());
16874
+ }
16875
+ }
16876
+ clickItem(e) {
16877
+ const activeItem = this.getActiveItem(e);
16878
+ if (activeItem) {
16879
+ this.setActiveItem(e, activeItem);
16880
+ }
16881
+ }
16882
+ focusItem(e) {
16883
+ if (validKeyNavigationCode(e)) {
16884
+ const activeItem = this.getActiveItem(e);
16885
+ if (activeItem) {
16886
+ const listItems = this.getListItems();
16887
+ const { next, previous } = getNextKeyListItem(activeItem, Array.from(listItems), {
16888
+ ...this.config,
16889
+ dir: this.getClosestDirAttribute(),
16890
+ code: e.code,
16891
+ });
16892
+ if (next !== previous) {
16893
+ this.setActiveItem(e, listItems[next], listItems[previous]);
16894
+ }
16895
+ }
16896
+ }
16897
+ }
16898
+ getActiveItem(e) {
16899
+ const listItems = this.getListItems();
16900
+ return Array.from(listItems).find(c => c === e.target.closest(listItems[0].tagName.toLocaleLowerCase()) ?? c === e.target);
16901
+ }
16902
+ setActiveItem(e, activeItem, previousItem) {
16903
+ if (this.config.manageFocus) {
16904
+ if (this.config.manageTabindex) {
16905
+ setActiveKeyListItem(this.getListItems(), activeItem);
16906
+ }
16907
+ const items = getFlattenedFocusableItems(activeItem);
16908
+ const item = items[0] ?? activeItem;
16909
+ focusElement(item);
16910
+ e.preventDefault();
16911
+ }
16912
+ activeItem.dispatchEvent(new CustomEvent('cdsKeyChange', {
16913
+ bubbles: true,
16914
+ detail: {
16915
+ activeItem,
16916
+ previousItem,
16917
+ code: e.code,
16918
+ metaKey: e.ctrlKey || e.metaKey,
16919
+ keyListItems: this.config.keyListItems,
16920
+ },
16921
+ }));
16922
+ }
16923
+ getListItems() {
16924
+ return this.host.nativeElement.querySelectorAll(this.focusableElementSelectors.join(','));
16925
+ }
16926
+ getClosestDirAttribute() {
16927
+ const el = this.host.nativeElement.closest('[dir]');
16928
+ return el ? el.getAttribute('dir') : null;
16929
+ }
16930
+ }
16931
+ 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 });
16932
+ 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 });
16933
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ClrKeyNavigationList, decorators: [{
16934
+ type: Directive,
16935
+ args: [{
16936
+ selector: '[clrKeyNavigationList]',
16937
+ }]
16938
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: undefined, decorators: [{
16939
+ type: Inject,
16940
+ args: [CLR_LIST_KEY_NAVIGATION_CONFIG]
16941
+ }] }, { type: undefined, decorators: [{
16942
+ type: Inject,
16943
+ args: [FOCUSABLE_ELEMENT_SELECTORS]
16944
+ }] }]; }, propDecorators: { configuration: [{
16945
+ type: Input
16946
+ }], onClick: [{
16947
+ type: HostListener,
16948
+ args: ['click', ['$event']]
16949
+ }], onKeyDown: [{
16950
+ type: HostListener,
16951
+ args: ['keydown', ['$event']]
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 ClrKeyNavigationListModule {
16960
+ }
16961
+ ClrKeyNavigationListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ClrKeyNavigationListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16962
+ ClrKeyNavigationListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ClrKeyNavigationListModule, declarations: [ClrKeyNavigationList], exports: [ClrKeyNavigationList] });
16963
+ 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] });
16964
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ClrKeyNavigationListModule, decorators: [{
16965
+ type: NgModule,
16966
+ args: [{
16967
+ declarations: [ClrKeyNavigationList],
16968
+ exports: [ClrKeyNavigationList],
16969
+ providers: [CLR_LIST_KEY_NAVIGATION_COFNIG_PROVIDER, FOCUSABLE_ELEMENT_SELECTORS_PROVIDER],
16970
+ }]
16971
+ }] });
16972
+
16973
+ /*
16974
+ * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
16975
+ * This software is released under MIT license.
16976
+ * The full license information can be found in LICENSE in the root directory of this project.
16977
+ */
16978
+
16744
16979
  /*
16745
16980
  * Copyright (c) 2016-2022 VMware, Inc. All Rights Reserved.
16746
16981
  * This software is released under MIT license.
@@ -19656,12 +19891,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
19656
19891
  * The full license information can be found in LICENSE in the root directory of this project.
19657
19892
  */
19658
19893
  class ClrTree {
19659
- constructor(featuresService, focusManagerService, el) {
19894
+ constructor(featuresService, focusManagerService, { nativeElement }, renderer, ngZone) {
19660
19895
  this.featuresService = featuresService;
19661
19896
  this.focusManagerService = focusManagerService;
19662
- this.el = el;
19663
19897
  this.subscriptions = [];
19664
- this.tabindex = 0;
19898
+ const subscription = ngZone.runOutsideAngular(() => fromEvent(nativeElement, 'focusin').subscribe((event) => {
19899
+ if (event.target === nativeElement) {
19900
+ // After discussing with the team, I've made it so that when the tree receives focus, the first visible node will be focused.
19901
+ // This will prevent from the page scrolling abruptly to the first selected node if it exist in a deeply nested tree.
19902
+ this.focusManagerService.focusFirstVisibleNode();
19903
+ // when the first child gets focus,
19904
+ // tree should no longer have tabindex of 0.
19905
+ renderer.removeAttribute(nativeElement, 'tabindex');
19906
+ }
19907
+ }));
19908
+ this.subscriptions.push(subscription);
19665
19909
  }
19666
19910
  set lazy(value) {
19667
19911
  this.featuresService.eager = !value;
@@ -19669,16 +19913,6 @@ class ClrTree {
19669
19913
  get isMultiSelectable() {
19670
19914
  return this.featuresService.selectable && this.rootNodes.length > 0;
19671
19915
  }
19672
- onFocusIn(event) {
19673
- if (event.target === this.el.nativeElement) {
19674
- // After discussing with the team, I've made it so that when the tree receives focus, the first visible node will be focused.
19675
- // This will prevent from the page scrolling abruptly to the first selected node if it exist in a deeply nested tree.
19676
- this.focusManagerService.focusFirstVisibleNode();
19677
- // when the first child gets focus,
19678
- // tree should no longer have tabindex of 0;
19679
- delete this.tabindex;
19680
- }
19681
- }
19682
19916
  ngAfterContentInit() {
19683
19917
  this.setRootNodes();
19684
19918
  this.subscriptions.push(this.rootNodes.changes.subscribe(() => {
@@ -19695,8 +19929,8 @@ class ClrTree {
19695
19929
  this.subscriptions.forEach(sub => sub.unsubscribe());
19696
19930
  }
19697
19931
  }
19698
- 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 });
19699
- 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: `
19932
+ 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 });
19933
+ 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: `
19700
19934
  <ng-content></ng-content>
19701
19935
  <clr-recursive-children
19702
19936
  *ngIf="featuresService.recursion"
@@ -19716,17 +19950,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
19716
19950
  `,
19717
19951
  providers: [TREE_FEATURES_PROVIDER, TreeFocusManagerService],
19718
19952
  host: {
19719
- '[attr.tabindex]': 'tabindex',
19953
+ tabindex: '0',
19720
19954
  '[attr.role]': '"tree"',
19721
19955
  '[attr.aria-multiselectable]': 'isMultiSelectable',
19722
19956
  },
19723
19957
  }]
19724
- }], ctorParameters: function () { return [{ type: TreeFeaturesService }, { type: TreeFocusManagerService }, { type: i0.ElementRef }]; }, propDecorators: { lazy: [{
19958
+ }], ctorParameters: function () { return [{ type: TreeFeaturesService }, { type: TreeFocusManagerService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.NgZone }]; }, propDecorators: { lazy: [{
19725
19959
  type: Input,
19726
19960
  args: ['clrLazy']
19727
- }], onFocusIn: [{
19728
- type: HostListener,
19729
- args: ['focusin', ['$event']]
19730
19961
  }], rootNodes: [{
19731
19962
  type: ContentChildren,
19732
19963
  args: [ClrTreeNode]
@@ -27583,5 +27814,5 @@ const CLR_MENU_POSITIONS = [
27583
27814
  * Generated bundle index. Do not edit.
27584
27815
  */
27585
27816
 
27586
- 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 };
27817
+ 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 };
27587
27818
  //# sourceMappingURL=clr-angular.mjs.map