@coreui/angular-pro 5.7.23 → 5.7.25

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.
@@ -15,7 +15,6 @@ import { DomSanitizer } from '@angular/platform-browser';
15
15
  import * as i1$1 from '@angular/router';
16
16
  import { RouterModule, Router, ActivatedRoute, NavigationEnd, RouterLink } from '@angular/router';
17
17
  import { BreakpointObserver } from '@angular/cdk/layout';
18
- import { trigger, state, style, transition, animate } from '@angular/animations';
19
18
  import { IconDirective } from '@coreui/icons-angular';
20
19
 
21
20
  var BreakpointInfix;
@@ -460,7 +459,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
460
459
  }]
461
460
  }] });
462
461
 
463
- let nextId$3 = 0;
462
+ let nextId$4 = 0;
464
463
  class AccordionItemComponent {
465
464
  #accordionService = inject(AccordionService);
466
465
  /**
@@ -481,7 +480,7 @@ class AccordionItemComponent {
481
480
  get visible() {
482
481
  return this.itemVisible();
483
482
  }
484
- contentId = `accordion-item-${nextId$3++}`;
483
+ contentId = `accordion-item-${nextId$4++}`;
485
484
  get itemContext() {
486
485
  return { $implicit: this.itemVisible() };
487
486
  }
@@ -1647,7 +1646,7 @@ class MultiSelectOptionComponent {
1647
1646
  #multiSelectService = inject(MultiSelectService);
1648
1647
  /**
1649
1648
  * Option style
1650
- * @returns ('checkbox' | 'text')
1649
+ * @returns 'checkbox' | 'text'
1651
1650
  * @default 'checkbox'
1652
1651
  */
1653
1652
  optionsStyleInput = input(undefined, { ...(ngDevMode ? { debugName: "optionsStyleInput" } : /* istanbul ignore next */ {}), alias: 'optionsStyle' });
@@ -1669,10 +1668,14 @@ class MultiSelectOptionComponent {
1669
1668
  * Option visible.
1670
1669
  * @returns boolean
1671
1670
  * @default true
1671
+ * @ignore
1672
1672
  */
1673
1673
  set visible(value) {
1674
1674
  this.#visible.set(value);
1675
1675
  }
1676
+ /**
1677
+ * @ignore
1678
+ */
1676
1679
  get visible() {
1677
1680
  return this.#visible();
1678
1681
  }
@@ -1729,12 +1732,22 @@ class MultiSelectOptionComponent {
1729
1732
  ...(ngDevMode ? [{ debugName: "#value" }] : /* istanbul ignore next */ []));
1730
1733
  #dropdownVisible = signal(false, /* @ts-ignore */
1731
1734
  ...(ngDevMode ? [{ debugName: "#dropdownVisible" }] : /* istanbul ignore next */ []));
1735
+ /**
1736
+ * Marks the option as the active one for keyboard navigation. Reads back as `false`
1737
+ * while the option is hidden or disabled.
1738
+ * @returns boolean
1739
+ * @default false
1740
+ * @ignore
1741
+ */
1732
1742
  set active(value) {
1733
1743
  const active = value && this.#visible() && !this.disabled;
1734
1744
  if (this.#active() !== active) {
1735
1745
  this.#active.set(active);
1736
1746
  }
1737
1747
  }
1748
+ /**
1749
+ * @ignore
1750
+ */
1738
1751
  get active() {
1739
1752
  return this.#active() && this.#visible();
1740
1753
  }
@@ -1748,6 +1761,10 @@ class MultiSelectOptionComponent {
1748
1761
  ...(ngDevMode ? [{ debugName: "#active" }] : /* istanbul ignore next */ []));
1749
1762
  #focused = signal(false, /* @ts-ignore */
1750
1763
  ...(ngDevMode ? [{ debugName: "#focused" }] : /* istanbul ignore next */ []));
1764
+ /**
1765
+ * Emits the option when it gains focus.
1766
+ * @returns MultiSelectOptionComponent
1767
+ */
1751
1768
  focusChange = output();
1752
1769
  hostClasses = computed(() => {
1753
1770
  const optionsStyle = this.optionsStyle();
@@ -5770,6 +5787,8 @@ class BackdropService {
5770
5787
  backdropClick$ = this.#backdropClick.asObservable();
5771
5788
  #document = inject(DOCUMENT);
5772
5789
  activeBackdrop;
5790
+ #clearBackdropId;
5791
+ #pendingBackdrop;
5773
5792
  get #scrollbarWidth() {
5774
5793
  // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes
5775
5794
  const documentWidth = this.#document.documentElement.clientWidth;
@@ -5778,6 +5797,7 @@ class BackdropService {
5778
5797
  }
5779
5798
  scrollbarWidth = this.#scrollbarWidth;
5780
5799
  setBackdrop(type = 'modal') {
5800
+ this.#flushClearBackdrop();
5781
5801
  const backdropElement = this.#document.createElement('div');
5782
5802
  backdropElement.classList.add(`${type}-backdrop`);
5783
5803
  backdropElement.classList.add('fade');
@@ -5803,17 +5823,37 @@ class BackdropService {
5803
5823
  delete backdropElement.__backdropClickHandler;
5804
5824
  }
5805
5825
  backdropElement.classList.remove('show');
5806
- setTimeout(() => {
5826
+ this.#flushClearBackdrop();
5827
+ this.#pendingBackdrop = backdropElement;
5828
+ this.#clearBackdropId = setTimeout(() => {
5829
+ this.#clearBackdropId = undefined;
5830
+ this.#pendingBackdrop = undefined;
5807
5831
  if (this.activeBackdrop === backdropElement) {
5808
5832
  this.resetScrollbar();
5833
+ this.activeBackdrop = undefined;
5809
5834
  }
5810
- if (backdropElement.parentElement === this.#document.body) {
5811
- this.#document.body.removeChild(backdropElement);
5812
- }
5835
+ this.#removeBackdrop(backdropElement);
5813
5836
  }, 300);
5814
5837
  }
5815
5838
  return undefined;
5816
5839
  }
5840
+ #flushClearBackdrop() {
5841
+ if (this.#clearBackdropId === undefined) {
5842
+ return;
5843
+ }
5844
+ clearTimeout(this.#clearBackdropId);
5845
+ this.#clearBackdropId = undefined;
5846
+ const pending = this.#pendingBackdrop;
5847
+ this.#pendingBackdrop = undefined;
5848
+ if (pending) {
5849
+ this.#removeBackdrop(pending);
5850
+ }
5851
+ }
5852
+ #removeBackdrop(backdropElement) {
5853
+ if (backdropElement.parentElement === this.#document.body) {
5854
+ this.#document.body.removeChild(backdropElement);
5855
+ }
5856
+ }
5817
5857
  get #isRTL() {
5818
5858
  return [this.#document.documentElement.dir, this.#document.body.dir].includes('rtl');
5819
5859
  }
@@ -12844,8 +12884,40 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
12844
12884
  }]
12845
12885
  }] });
12846
12886
 
12887
+ class NavGroupService {
12888
+ /**
12889
+ * Id of the open group at this level, `undefined` when none is open.
12890
+ */
12891
+ activeId = signal(undefined, /* @ts-ignore */
12892
+ ...(ngDevMode ? [{ debugName: "activeId" }] : /* istanbul ignore next */ []));
12893
+ /**
12894
+ * Opens the level owner within its own parent and cascades up to the root.
12895
+ * Replaced by the owning `c-nav-group`; stays a no-op for the root level.
12896
+ */
12897
+ openBranch = () => undefined;
12898
+ setActiveId(id) {
12899
+ this.activeId.set(id);
12900
+ }
12901
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: NavGroupService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
12902
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: NavGroupService });
12903
+ }
12904
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: NavGroupService, decorators: [{
12905
+ type: Injectable
12906
+ }] });
12907
+
12908
+ const DISABLED_ATTR_ELEMENTS = new Set(['button', 'fieldset', 'input', 'optgroup', 'option', 'select', 'textarea']);
12847
12909
  class NavLinkDirective {
12848
12910
  static ngAcceptInputType_disabled;
12911
+ #hostElement = inject(ElementRef);
12912
+ #navGroupService = inject(NavGroupService, { optional: true });
12913
+ #classObserver;
12914
+ constructor() {
12915
+ afterNextRender({
12916
+ read: () => {
12917
+ this.#observeActiveClass();
12918
+ }
12919
+ });
12920
+ }
12849
12921
  /**
12850
12922
  * Sets .nav-link class to the host
12851
12923
  * @returns boolean
@@ -12877,15 +12949,23 @@ class NavLinkDirective {
12877
12949
  ariaDisabled = null;
12878
12950
  attrDisabled = null;
12879
12951
  attrTabindex = null;
12880
- styleCursor = null;
12881
12952
  #disabledEffect = effect(() => {
12882
12953
  const disabled = this.disabled();
12883
- this.ariaDisabled = disabled || null;
12884
- this.attrDisabled = disabled ? '' : null;
12885
- this.attrTabindex = disabled ? -1 : (this.tabindex() ?? null);
12886
- this.styleCursor = disabled ? null : 'pointer';
12954
+ const tabindex = this.tabindex();
12955
+ const disabledAttrElement = DISABLED_ATTR_ELEMENTS.has(this.#tagName);
12956
+ this.ariaDisabled = (disabled && !disabledAttrElement) || null;
12957
+ this.attrDisabled = disabled && disabledAttrElement ? '' : null;
12958
+ this.attrTabindex = disabled && !disabledAttrElement ? -1 : (Number.isNaN(tabindex) ? null : (tabindex ?? null));
12887
12959
  }, /* @ts-ignore */
12888
12960
  ...(ngDevMode ? [{ debugName: "#disabledEffect" }] : /* istanbul ignore next */ []));
12961
+ #activeEffect = effect(() => {
12962
+ if (this.active()) {
12963
+ untracked(() => {
12964
+ this.#navGroupService?.openBranch();
12965
+ });
12966
+ }
12967
+ }, /* @ts-ignore */
12968
+ ...(ngDevMode ? [{ debugName: "#activeEffect" }] : /* istanbul ignore next */ []));
12889
12969
  hostClasses = computed(() => {
12890
12970
  return {
12891
12971
  'nav-link': this.cNavLink(),
@@ -12894,8 +12974,32 @@ class NavLinkDirective {
12894
12974
  };
12895
12975
  }, /* @ts-ignore */
12896
12976
  ...(ngDevMode ? [{ debugName: "hostClasses" }] : /* istanbul ignore next */ []));
12977
+ get #tagName() {
12978
+ return this.#hostElement.nativeElement.tagName.toLowerCase();
12979
+ }
12980
+ ngOnDestroy() {
12981
+ this.#classObserver?.disconnect();
12982
+ }
12983
+ #observeActiveClass() {
12984
+ const host = this.#hostElement.nativeElement;
12985
+ if (!this.#navGroupService) {
12986
+ return;
12987
+ }
12988
+ let wasActive = host.classList.contains('active');
12989
+ if (wasActive) {
12990
+ this.#navGroupService.openBranch();
12991
+ }
12992
+ this.#classObserver = new MutationObserver(() => {
12993
+ const active = host.classList.contains('active');
12994
+ if (active && !wasActive) {
12995
+ this.#navGroupService?.openBranch();
12996
+ }
12997
+ wasActive = active;
12998
+ });
12999
+ this.#classObserver.observe(host, { attributes: true, attributeFilter: ['class'] });
13000
+ }
12897
13001
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: NavLinkDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
12898
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.4", type: NavLinkDirective, isStandalone: true, selector: "[cNavLink]", inputs: { cNavLink: { classPropertyName: "cNavLink", publicName: "cNavLink", isSignal: true, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "hostClasses()", "attr.aria-current": "ariaCurrent()", "attr.aria-disabled": "ariaDisabled", "attr.disabled": "attrDisabled", "attr.tabindex": "attrTabindex", "style.cursor": "styleCursor" } }, ngImport: i0 });
13002
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.4", type: NavLinkDirective, isStandalone: true, selector: "[cNavLink]", inputs: { cNavLink: { classPropertyName: "cNavLink", publicName: "cNavLink", isSignal: true, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "hostClasses()", "attr.aria-current": "ariaCurrent()", "attr.aria-disabled": "ariaDisabled", "attr.disabled": "attrDisabled", "attr.tabindex": "attrTabindex" } }, ngImport: i0 });
12899
13003
  }
12900
13004
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: NavLinkDirective, decorators: [{
12901
13005
  type: Directive,
@@ -12906,19 +13010,182 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
12906
13010
  '[attr.aria-current]': 'ariaCurrent()',
12907
13011
  '[attr.aria-disabled]': 'ariaDisabled',
12908
13012
  '[attr.disabled]': 'attrDisabled',
12909
- '[attr.tabindex]': 'attrTabindex',
12910
- '[style.cursor]': 'styleCursor'
13013
+ '[attr.tabindex]': 'attrTabindex'
12911
13014
  }
12912
13015
  }]
12913
- }], propDecorators: { cNavLink: [{ type: i0.Input, args: [{ isSignal: true, alias: "cNavLink", required: false }] }], active: [{ type: i0.Input, args: [{ isSignal: true, alias: "active", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], tabindex: [{ type: i0.Input, args: [{ isSignal: true, alias: "tabindex", required: false }] }] } });
13016
+ }], ctorParameters: () => [], propDecorators: { cNavLink: [{ type: i0.Input, args: [{ isSignal: true, alias: "cNavLink", required: false }] }], active: [{ type: i0.Input, args: [{ isSignal: true, alias: "active", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], tabindex: [{ type: i0.Input, args: [{ isSignal: true, alias: "tabindex", required: false }] }] } });
13017
+
13018
+ class NavGroupItemsComponent {
13019
+ static ngAcceptInputType_compact;
13020
+ /**
13021
+ * Make nav group items more compact by cutting all `padding` in half.
13022
+ * @returns boolean
13023
+ * @default false
13024
+ */
13025
+ compact = input(false, { ...(ngDevMode ? { debugName: "compact" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
13026
+ hostClasses = computed(() => {
13027
+ return {
13028
+ 'nav-group-items': true,
13029
+ compact: this.compact()
13030
+ };
13031
+ }, /* @ts-ignore */
13032
+ ...(ngDevMode ? [{ debugName: "hostClasses" }] : /* istanbul ignore next */ []));
13033
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: NavGroupItemsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
13034
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.4", type: NavGroupItemsComponent, isStandalone: true, selector: "c-nav-group-items", inputs: { compact: { classPropertyName: "compact", publicName: "compact", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "hostClasses()" } }, ngImport: i0, template: '<ng-content />', isInline: true, styles: [":host{display:block}\n"] });
13035
+ }
13036
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: NavGroupItemsComponent, decorators: [{
13037
+ type: Component,
13038
+ args: [{ selector: 'c-nav-group-items', template: '<ng-content />', host: { '[class]': 'hostClasses()' }, styles: [":host{display:block}\n"] }]
13039
+ }], propDecorators: { compact: [{ type: i0.Input, args: [{ isSignal: true, alias: "compact", required: false }] }] } });
13040
+
13041
+ let nextId$3 = 0;
13042
+ class NavGroupComponent {
13043
+ static ngAcceptInputType_compact;
13044
+ static ngAcceptInputType_visible;
13045
+ #navGroupService = inject(NavGroupService);
13046
+ #parentNavGroupService = inject(NavGroupService, { optional: true, skipSelf: true });
13047
+ #id = `nav-group-${nextId$3++}`;
13048
+ constructor() {
13049
+ this.#navGroupService.openBranch = () => {
13050
+ this.openBranch();
13051
+ };
13052
+ }
13053
+ /**
13054
+ * Make nav group items more compact by cutting all `padding` in half.
13055
+ * @returns boolean
13056
+ * @default false
13057
+ */
13058
+ compact = input(false, { ...(ngDevMode ? { debugName: "compact" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
13059
+ /**
13060
+ * Set group toggler label.
13061
+ * @returns string
13062
+ */
13063
+ toggler = input(/* @ts-ignore */
13064
+ ...(ngDevMode ? [undefined, { debugName: "toggler" }] : /* istanbul ignore next */ []));
13065
+ /**
13066
+ * Template for the group toggler content, receives the visible state as `$implicit`.
13067
+ * @returns TemplateRef
13068
+ */
13069
+ togglerTemplate = input(/* @ts-ignore */
13070
+ ...(ngDevMode ? [undefined, { debugName: "togglerTemplate" }] : /* istanbul ignore next */ []));
13071
+ /**
13072
+ * Show nav group items. Sets the initial state, and follows every later change.
13073
+ * @returns boolean
13074
+ */
13075
+ visible = input(undefined, { ...(ngDevMode ? { debugName: "visible" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
13076
+ /**
13077
+ * Event emitted on visibility change.
13078
+ * @returns boolean
13079
+ */
13080
+ visibleChange = output();
13081
+ #uncontrolledVisible = signal(false, /* @ts-ignore */
13082
+ ...(ngDevMode ? [{ debugName: "#uncontrolledVisible" }] : /* istanbul ignore next */ []));
13083
+ display = signal(null, /* @ts-ignore */
13084
+ ...(ngDevMode ? [{ debugName: "display" }] : /* istanbul ignore next */ []));
13085
+ visibleState = computed(() => {
13086
+ const parent = this.#parentNavGroupService;
13087
+ return parent ? parent.activeId() === this.#id : this.#uncontrolledVisible();
13088
+ }, /* @ts-ignore */
13089
+ ...(ngDevMode ? [{ debugName: "visibleState" }] : /* istanbul ignore next */ []));
13090
+ hostClasses = computed(() => {
13091
+ return {
13092
+ 'nav-group': true,
13093
+ show: this.visibleState()
13094
+ };
13095
+ }, /* @ts-ignore */
13096
+ ...(ngDevMode ? [{ debugName: "hostClasses" }] : /* istanbul ignore next */ []));
13097
+ #visibleEffect = effect(() => {
13098
+ const visible = this.visible();
13099
+ if (visible === undefined) {
13100
+ return;
13101
+ }
13102
+ untracked(() => {
13103
+ this.#setVisible(visible);
13104
+ });
13105
+ }, /* @ts-ignore */
13106
+ ...(ngDevMode ? [{ debugName: "#visibleEffect" }] : /* istanbul ignore next */ []));
13107
+ toggleGroup(event) {
13108
+ event.preventDefault();
13109
+ const next = !this.visibleState();
13110
+ this.#setVisible(next);
13111
+ this.visibleChange.emit(next);
13112
+ }
13113
+ openBranch() {
13114
+ const parent = this.#parentNavGroupService;
13115
+ if (!parent) {
13116
+ this.#uncontrolledVisible.set(true);
13117
+ return;
13118
+ }
13119
+ parent.setActiveId(this.#id);
13120
+ parent.openBranch();
13121
+ }
13122
+ onCollapseChange(state) {
13123
+ this.display.set(state === 'collapsed' || state === 'open' ? null : 'block');
13124
+ }
13125
+ #setVisible(visible) {
13126
+ const parent = this.#parentNavGroupService;
13127
+ if (!parent) {
13128
+ this.#uncontrolledVisible.set(visible);
13129
+ return;
13130
+ }
13131
+ if (visible) {
13132
+ parent.setActiveId(this.#id);
13133
+ return;
13134
+ }
13135
+ if (parent.activeId() === this.#id) {
13136
+ parent.setActiveId(undefined);
13137
+ }
13138
+ }
13139
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: NavGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
13140
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: NavGroupComponent, isStandalone: true, selector: "c-nav-group", inputs: { compact: { classPropertyName: "compact", publicName: "compact", isSignal: true, isRequired: false, transformFunction: null }, toggler: { classPropertyName: "toggler", publicName: "toggler", isSignal: true, isRequired: false, transformFunction: null }, togglerTemplate: { classPropertyName: "togglerTemplate", publicName: "togglerTemplate", isSignal: true, isRequired: false, transformFunction: null }, visible: { classPropertyName: "visible", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { visibleChange: "visibleChange" }, host: { properties: { "class": "hostClasses()" } }, providers: [NavGroupService], ngImport: i0, template: "@if (toggler() || togglerTemplate()) {\n <a\n (click)=\"toggleGroup($event)\"\n [attr.aria-expanded]=\"visibleState()\"\n class=\"nav-link nav-group-toggle\"\n href\n >\n @if (togglerTemplate(); as template) {\n <ng-container\n *ngTemplateOutlet=\"template; context: { $implicit: visibleState(), visible: visibleState() }\"\n />\n } @else {\n {{ toggler() }}\n }\n </a>\n}\n<c-nav-group-items\n (collapseChange)=\"onCollapseChange($event)\"\n [compact]=\"compact()\"\n [style.display]=\"display()\"\n [visible]=\"visibleState()\"\n cCollapse\n>\n <ng-content />\n</c-nav-group-items>\n", styles: [":host{display:list-item;text-align:match-parent;text-align:-webkit-match-parent}\n"], dependencies: [{ kind: "directive", type: CollapseDirective, selector: "[cCollapse]", inputs: ["animate", "horizontal", "visible", "navbar"], outputs: ["visibleChange", "collapseChange"], exportAs: ["cCollapse"] }, { kind: "component", type: NavGroupItemsComponent, selector: "c-nav-group-items", inputs: ["compact"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
13141
+ }
13142
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: NavGroupComponent, decorators: [{
13143
+ type: Component,
13144
+ args: [{ selector: 'c-nav-group', imports: [CollapseDirective, NavGroupItemsComponent, NgTemplateOutlet], providers: [NavGroupService], host: { '[class]': 'hostClasses()' }, template: "@if (toggler() || togglerTemplate()) {\n <a\n (click)=\"toggleGroup($event)\"\n [attr.aria-expanded]=\"visibleState()\"\n class=\"nav-link nav-group-toggle\"\n href\n >\n @if (togglerTemplate(); as template) {\n <ng-container\n *ngTemplateOutlet=\"template; context: { $implicit: visibleState(), visible: visibleState() }\"\n />\n } @else {\n {{ toggler() }}\n }\n </a>\n}\n<c-nav-group-items\n (collapseChange)=\"onCollapseChange($event)\"\n [compact]=\"compact()\"\n [style.display]=\"display()\"\n [visible]=\"visibleState()\"\n cCollapse\n>\n <ng-content />\n</c-nav-group-items>\n", styles: [":host{display:list-item;text-align:match-parent;text-align:-webkit-match-parent}\n"] }]
13145
+ }], ctorParameters: () => [], propDecorators: { compact: [{ type: i0.Input, args: [{ isSignal: true, alias: "compact", required: false }] }], toggler: [{ type: i0.Input, args: [{ isSignal: true, alias: "toggler", required: false }] }], togglerTemplate: [{ type: i0.Input, args: [{ isSignal: true, alias: "togglerTemplate", required: false }] }], visible: [{ type: i0.Input, args: [{ isSignal: true, alias: "visible", required: false }] }], visibleChange: [{ type: i0.Output, args: ["visibleChange"] }] } });
12914
13146
 
12915
13147
  class NavItemComponent {
13148
+ static ngAcceptInputType_active;
13149
+ static ngAcceptInputType_disabled;
13150
+ static ngAcceptInputType_tabindex;
13151
+ /**
13152
+ * Toggle the active state for the nav link rendered for `href`.
13153
+ * @returns boolean
13154
+ * @default undefined
13155
+ */
13156
+ active = input(undefined, { ...(ngDevMode ? { debugName: "active" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
13157
+ /**
13158
+ * Set disabled attr for the nav link rendered for `href`.
13159
+ * @returns boolean
13160
+ * @default false
13161
+ */
13162
+ disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
13163
+ /**
13164
+ * The href attribute of the nav link. Set it to render the nav link, otherwise the item projects its content as is.
13165
+ * @returns string
13166
+ */
13167
+ href = input(/* @ts-ignore */
13168
+ ...(ngDevMode ? [undefined, { debugName: "href" }] : /* istanbul ignore next */ []));
13169
+ /**
13170
+ * The tabindex attribute of the nav link rendered for `href`.
13171
+ * @returns number | undefined
13172
+ */
13173
+ tabindex = input(undefined, { ...(ngDevMode ? { debugName: "tabindex" } : /* istanbul ignore next */ {}), transform: numberAttribute });
12916
13174
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: NavItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12917
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.1.4", type: NavItemComponent, isStandalone: true, selector: "c-nav-item", host: { classAttribute: "nav-item" }, ngImport: i0, template: '<ng-content />', isInline: true, styles: [":host{display:list-item;text-align:match-parent;text-align:-webkit-match-parent}\n"] });
13175
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: NavItemComponent, isStandalone: true, selector: "c-nav-item", inputs: { active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, href: { classPropertyName: "href", publicName: "href", isSignal: true, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "nav-item" }, ngImport: i0, template: "@if (href()) {\n <a\n [active]=\"active()\"\n [attr.href]=\"href()\"\n [disabled]=\"disabled()\"\n [tabindex]=\"tabindex()\"\n cNavLink\n >\n <ng-container *ngTemplateOutlet=\"content\" />\n </a>\n} @else {\n <ng-container *ngTemplateOutlet=\"content\" />\n}\n\n<ng-template #content>\n <ng-content />\n</ng-template>\n", styles: [":host{display:list-item;text-align:match-parent;text-align:-webkit-match-parent}\n"], dependencies: [{ kind: "directive", type: NavLinkDirective, selector: "[cNavLink]", inputs: ["cNavLink", "active", "disabled", "tabindex"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
12918
13176
  }
12919
13177
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: NavItemComponent, decorators: [{
12920
13178
  type: Component,
12921
- args: [{ selector: 'c-nav-item', template: '<ng-content />', host: { class: 'nav-item' }, styles: [":host{display:list-item;text-align:match-parent;text-align:-webkit-match-parent}\n"] }]
13179
+ args: [{ selector: 'c-nav-item', imports: [NavLinkDirective, NgTemplateOutlet], host: { class: 'nav-item' }, template: "@if (href()) {\n <a\n [active]=\"active()\"\n [attr.href]=\"href()\"\n [disabled]=\"disabled()\"\n [tabindex]=\"tabindex()\"\n cNavLink\n >\n <ng-container *ngTemplateOutlet=\"content\" />\n </a>\n} @else {\n <ng-container *ngTemplateOutlet=\"content\" />\n}\n\n<ng-template #content>\n <ng-content />\n</ng-template>\n", styles: [":host{display:list-item;text-align:match-parent;text-align:-webkit-match-parent}\n"] }]
13180
+ }], propDecorators: { active: [{ type: i0.Input, args: [{ isSignal: true, alias: "active", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], href: [{ type: i0.Input, args: [{ isSignal: true, alias: "href", required: false }] }], tabindex: [{ type: i0.Input, args: [{ isSignal: true, alias: "tabindex", required: false }] }] } });
13181
+
13182
+ class NavTitleComponent {
13183
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: NavTitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
13184
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.1.4", type: NavTitleComponent, isStandalone: true, selector: "c-nav-title", host: { classAttribute: "nav-title" }, ngImport: i0, template: '<ng-content />', isInline: true, styles: [":host{display:list-item;text-align:match-parent;text-align:-webkit-match-parent}\n"] });
13185
+ }
13186
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: NavTitleComponent, decorators: [{
13187
+ type: Component,
13188
+ args: [{ selector: 'c-nav-title', template: '<ng-content />', host: { class: 'nav-title' }, styles: [":host{display:list-item;text-align:match-parent;text-align:-webkit-match-parent}\n"] }]
12922
13189
  }] });
12923
13190
 
12924
13191
  class NavComponent {
@@ -12928,6 +13195,13 @@ class NavComponent {
12928
13195
  */
12929
13196
  layout = input(/* @ts-ignore */
12930
13197
  ...(ngDevMode ? [undefined, { debugName: "layout" }] : /* istanbul ignore next */ []));
13198
+ /**
13199
+ * Default role for nav.
13200
+ * @returns string
13201
+ * @default 'navigation'
13202
+ */
13203
+ role = input('navigation', /* @ts-ignore */
13204
+ ...(ngDevMode ? [{ debugName: "role" }] : /* istanbul ignore next */ []));
12931
13205
  /**
12932
13206
  * Set the nav variant to tabs or pills.
12933
13207
  * @default undefined
@@ -12940,25 +13214,32 @@ class NavComponent {
12940
13214
  return {
12941
13215
  nav: true,
12942
13216
  [`nav-${layout}`]: !!layout,
13217
+ 'nav-enclosed': variant === 'enclosed' || variant === 'enclosed-pills',
12943
13218
  [`nav-${variant}`]: !!variant
12944
13219
  };
12945
13220
  }, /* @ts-ignore */
12946
13221
  ...(ngDevMode ? [{ debugName: "hostClasses" }] : /* istanbul ignore next */ []));
12947
13222
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: NavComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12948
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.4", type: NavComponent, isStandalone: true, selector: "c-nav", inputs: { layout: { classPropertyName: "layout", publicName: "layout", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "hostClasses()" }, classAttribute: "nav" }, ngImport: i0, template: '<ng-content />', isInline: true, styles: [":host .nav-link:focus{outline:0}:host.nav-underline-border{column-gap:0}\n"] });
13223
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.4", type: NavComponent, isStandalone: true, selector: "c-nav", inputs: { layout: { classPropertyName: "layout", publicName: "layout", isSignal: true, isRequired: false, transformFunction: null }, role: { classPropertyName: "role", publicName: "role", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "hostClasses()", "attr.role": "role()" }, classAttribute: "nav" }, ngImport: i0, template: '<ng-content />', isInline: true, styles: [":host .nav-link:focus{outline:0}:host.nav-underline-border{column-gap:0}\n"] });
12949
13224
  }
12950
13225
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: NavComponent, decorators: [{
12951
13226
  type: Component,
12952
- args: [{ selector: 'c-nav', template: '<ng-content />', host: { class: 'nav', '[class]': 'hostClasses()' }, styles: [":host .nav-link:focus{outline:0}:host.nav-underline-border{column-gap:0}\n"] }]
12953
- }], propDecorators: { layout: [{ type: i0.Input, args: [{ isSignal: true, alias: "layout", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }] } });
13227
+ args: [{ selector: 'c-nav', template: '<ng-content />', host: { class: 'nav', '[class]': 'hostClasses()', '[attr.role]': 'role()' }, styles: [":host .nav-link:focus{outline:0}:host.nav-underline-border{column-gap:0}\n"] }]
13228
+ }], propDecorators: { layout: [{ type: i0.Input, args: [{ isSignal: true, alias: "layout", required: false }] }], role: [{ type: i0.Input, args: [{ isSignal: true, alias: "role", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }] } });
12954
13229
 
12955
13230
  class NavModule {
12956
13231
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: NavModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12957
13232
  static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.4", ngImport: i0, type: NavModule, imports: [NavComponent,
13233
+ NavGroupComponent,
13234
+ NavGroupItemsComponent,
12958
13235
  NavItemComponent,
12959
- NavLinkDirective], exports: [NavComponent,
13236
+ NavLinkDirective,
13237
+ NavTitleComponent], exports: [NavComponent,
13238
+ NavGroupComponent,
13239
+ NavGroupItemsComponent,
12960
13240
  NavItemComponent,
12961
- NavLinkDirective] });
13241
+ NavLinkDirective,
13242
+ NavTitleComponent] });
12962
13243
  static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: NavModule });
12963
13244
  }
12964
13245
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: NavModule, decorators: [{
@@ -12966,13 +13247,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
12966
13247
  args: [{
12967
13248
  imports: [
12968
13249
  NavComponent,
13250
+ NavGroupComponent,
13251
+ NavGroupItemsComponent,
12969
13252
  NavItemComponent,
12970
- NavLinkDirective
13253
+ NavLinkDirective,
13254
+ NavTitleComponent
12971
13255
  ],
12972
13256
  exports: [
12973
13257
  NavComponent,
13258
+ NavGroupComponent,
13259
+ NavGroupItemsComponent,
12974
13260
  NavItemComponent,
12975
- NavLinkDirective
13261
+ NavLinkDirective,
13262
+ NavTitleComponent
12976
13263
  ]
12977
13264
  }]
12978
13265
  }] });
@@ -14223,6 +14510,12 @@ class OtpDirective {
14223
14510
  #otpService = inject(OtpService);
14224
14511
  focusable = signal(false, /* @ts-ignore */
14225
14512
  ...(ngDevMode ? [{ debugName: "focusable" }] : /* istanbul ignore next */ []));
14513
+ /**
14514
+ * Placeholder for the slot. A string longer than one character is spread across the
14515
+ * slots, one character each; when unset the parent component's placeholder is used.
14516
+ * @returns string
14517
+ * @default ''
14518
+ */
14226
14519
  placeholderInput = input('', { ...(ngDevMode ? { debugName: "placeholderInput" } : /* istanbul ignore next */ {}), alias: 'placeholder' });
14227
14520
  placeholder = computed(() => {
14228
14521
  const placeholder = this.placeholderInput() || this.#otpService.placeholder();
@@ -14230,6 +14523,11 @@ class OtpDirective {
14230
14523
  return placeholder.length > 1 ? placeholder?.charAt(index) : placeholder;
14231
14524
  }, /* @ts-ignore */
14232
14525
  ...(ngDevMode ? [{ debugName: "placeholder" }] : /* istanbul ignore next */ []));
14526
+ /**
14527
+ * Value of the slot, kept in sync with the input element.
14528
+ * @returns string | number
14529
+ * @default ''
14530
+ */
14233
14531
  valueInput = input('', { ...(ngDevMode ? { debugName: "valueInput" } : /* istanbul ignore next */ {}), alias: 'value' });
14234
14532
  value = linkedSignal(this.valueInput, /* @ts-ignore */
14235
14533
  ...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
@@ -14238,6 +14536,12 @@ class OtpDirective {
14238
14536
  this.hostElement.nativeElement.value = String(value);
14239
14537
  }, /* @ts-ignore */
14240
14538
  ...(ngDevMode ? [{ debugName: "#valueEffect" }] : /* istanbul ignore next */ []));
14539
+ /**
14540
+ * Toggle the disabled state for the slot. Disabled slots are skipped when moving focus
14541
+ * between them.
14542
+ * @returns boolean
14543
+ * @default false
14544
+ */
14241
14545
  disabledInput = input(false, { ...(ngDevMode ? { debugName: "disabledInput" } : /* istanbul ignore next */ {}), transform: booleanAttribute, alias: 'disabled' });
14242
14546
  #disabled = linkedSignal(this.disabledInput, /* @ts-ignore */
14243
14547
  ...(ngDevMode ? [{ debugName: "#disabled" }] : /* istanbul ignore next */ []));
@@ -17375,7 +17679,7 @@ class SidebarComponent {
17375
17679
  }
17376
17680
  }
17377
17681
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SidebarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
17378
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.4", type: SidebarComponent, isStandalone: true, selector: "c-sidebar", inputs: { colorScheme: { classPropertyName: "colorScheme", publicName: "colorScheme", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, narrowInput: { classPropertyName: "narrowInput", publicName: "narrow", isSignal: true, isRequired: false, transformFunction: null }, overlaid: { classPropertyName: "overlaid", publicName: "overlaid", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, unfoldableInput: { classPropertyName: "unfoldableInput", publicName: "unfoldable", isSignal: true, isRequired: false, transformFunction: null }, visibleInput: { classPropertyName: "visibleInput", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { visibleChange: "visibleChange" }, host: { properties: { "class": "hostClasses()", "attr.inert": "!this.sidebarState.visible || null" }, classAttribute: "sidebar" }, exportAs: ["cSidebar"], usesOnChanges: true, ngImport: i0, template: '<ng-content />', isInline: true, changeDetection: i0.ChangeDetectionStrategy.Eager });
17682
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.4", type: SidebarComponent, isStandalone: true, selector: "c-sidebar", inputs: { colorScheme: { classPropertyName: "colorScheme", publicName: "colorScheme", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, narrowInput: { classPropertyName: "narrowInput", publicName: "narrow", isSignal: true, isRequired: false, transformFunction: null }, overlaid: { classPropertyName: "overlaid", publicName: "overlaid", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, unfoldableInput: { classPropertyName: "unfoldableInput", publicName: "unfoldable", isSignal: true, isRequired: false, transformFunction: null }, visibleInput: { classPropertyName: "visibleInput", publicName: "visible", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { visibleChange: "visibleChange" }, host: { properties: { "class": "hostClasses()", "attr.inert": "!this.sidebarState.visible || null" }, classAttribute: "sidebar" }, exportAs: ["cSidebar"], usesOnChanges: true, ngImport: i0, template: '<ng-content />', isInline: true });
17379
17683
  }
17380
17684
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SidebarComponent, decorators: [{
17381
17685
  type: Component,
@@ -17383,7 +17687,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
17383
17687
  selector: 'c-sidebar',
17384
17688
  exportAs: 'cSidebar',
17385
17689
  template: '<ng-content />',
17386
- changeDetection: ChangeDetectionStrategy.Eager,
17387
17690
  host: {
17388
17691
  class: 'sidebar',
17389
17692
  '[class]': 'hostClasses()',
@@ -17725,11 +18028,11 @@ class SidebarNavLinkComponent {
17725
18028
  this.linkClick?.emit();
17726
18029
  }
17727
18030
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SidebarNavLinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
17728
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: SidebarNavLinkComponent, isStandalone: true, selector: "c-sidebar-nav-link", inputs: { item: { classPropertyName: "item", publicName: "item", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { linkClick: "linkClick" }, providers: [SidebarNavHelper], ngImport: i0, template: "@let linkItem = item() ?? {};\n\n@switch (linkType) {\n @case ('disabled') {\n <a [cHtmlAttr]=\"linkItem.attributes ?? {}\" [class]=\"linkItem | cSidebarNavLink\">\n <ng-container *ngTemplateOutlet=\"iconTemplate; context: { $implicit: linkItem }\" />\n <c-sidebar-nav-link-content [item]=\"linkItem\" />\n @if (linkItem.badge) {\n <span [class]=\"linkItem | cSidebarNavBadge\">{{ linkItem.badge?.text }}</span>\n }\n </a>\n }\n @case ('external') {\n <a\n (click)=\"linkClicked()\"\n [cHtmlAttr]=\"linkItem.attributes ?? {}\"\n [href]=\"href\"\n [class]=\"linkItem | cSidebarNavLink\"\n >\n <ng-container *ngTemplateOutlet=\"iconTemplate; context: { $implicit: linkItem }\" />\n <c-sidebar-nav-link-content [item]=\"linkItem\" />\n @if (linkItem.badge) {\n <span [class]=\"linkItem | cSidebarNavBadge\">{{ linkItem.badge?.text }}</span>\n }\n </a>\n }\n @default {\n <a\n (click)=\"linkClicked()\"\n [cHtmlAttr]=\"linkItem.attributes ?? {}\"\n [fragment]=\"$safeNavigationMigration(linkItem.linkProps?.fragment)\"\n [class]=\"linkItem | cSidebarNavLink\"\n [preserveFragment]=\"linkItem.linkProps?.preserveFragment ?? false\"\n [queryParamsHandling]=\"$safeNavigationMigration(linkItem.linkProps?.queryParamsHandling)\"\n [queryParams]=\"linkItem.linkProps?.queryParams ?? null\"\n [replaceUrl]=\"linkItem.linkProps?.replaceUrl ?? false\"\n [routerLinkActiveOptions]=\"linkItem.linkProps?.routerLinkActiveOptions ?? { exact: false }\"\n [routerLink]=\"linkItem.url\"\n [skipLocationChange]=\"linkItem.linkProps?.skipLocationChange ?? false\"\n [state]=\"linkItem.linkProps?.state ?? {}\"\n [target]=\"$safeNavigationMigration(linkItem.attributes?.['target'])\"\n routerLinkActive=\"active\"\n >\n <!-- [class.active]=\"linkActive\"-->\n <ng-container *ngTemplateOutlet=\"iconTemplate; context: { $implicit: linkItem }\" />\n <c-sidebar-nav-link-content [item]=\"linkItem\" />\n @if (linkItem.badge) {\n <span [class]=\"linkItem | cSidebarNavBadge\">{{ linkItem.badge?.text }}</span>\n }\n </a>\n }\n}\n<ng-template #iconTemplate let-item>\n <!-- <i *ngIf=\"item?.icon\" [class]=\"item | cSidebarNavIcon\"></i>-->\n @if (item?.icon) {\n <span class=\"nav-icon\">\n <span [class]=\"item.icon ?? ''\"></span>\n </span>\n }\n @if (item?.iconComponent) {\n <svg\n [cIcon]=\"$safeNavigationMigration(item.iconComponent?.content)\"\n [customClasses]=\"item | cSidebarNavIcon\"\n [name]=\"$safeNavigationMigration(item.iconComponent?.name)\"\n ></svg>\n }\n @if (!item?.icon && !item?.iconComponent) {\n <span [class]=\"item | cSidebarNavIcon\"></span>\n }\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1$1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "browserUrl", "routerLink"] }, { kind: "directive", type: i1$1.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: HtmlAttributesDirective, selector: "[cHtmlAttr]", inputs: ["cHtmlAttr"], exportAs: ["cHtmlAttr"] }, { kind: "directive", type: IconDirective, selector: "svg[cIcon]", inputs: ["cIcon", "customClasses", "size", "title", "height", "width", "name", "viewBox", "xmlns", "pointer-events", "role"], exportAs: ["cIcon"] }, { kind: "component", type: SidebarNavLinkContentComponent, selector: "c-sidebar-nav-link-content", inputs: ["item"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: SidebarNavLinkPipe, name: "cSidebarNavLink" }, { kind: "pipe", type: SidebarNavBadgePipe, name: "cSidebarNavBadge" }, { kind: "pipe", type: SidebarNavIconPipe, name: "cSidebarNavIcon" }], changeDetection: i0.ChangeDetectionStrategy.Eager });
18031
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: SidebarNavLinkComponent, isStandalone: true, selector: "c-sidebar-nav-link", inputs: { item: { classPropertyName: "item", publicName: "item", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { linkClick: "linkClick" }, providers: [SidebarNavHelper], ngImport: i0, template: "@let linkItem = item() ?? {};\n\n@switch (linkType) {\n @case ('disabled') {\n <a [cHtmlAttr]=\"linkItem.attributes ?? {}\" [class]=\"linkItem | cSidebarNavLink\">\n <ng-container *ngTemplateOutlet=\"iconTemplate; context: { $implicit: linkItem }\" />\n <c-sidebar-nav-link-content [item]=\"linkItem\" />\n @if (linkItem.badge) {\n <span [class]=\"linkItem | cSidebarNavBadge\">{{ linkItem.badge?.text }}</span>\n }\n </a>\n }\n @case ('external') {\n <a\n (click)=\"linkClicked()\"\n [cHtmlAttr]=\"linkItem.attributes ?? {}\"\n [href]=\"href\"\n [class]=\"linkItem | cSidebarNavLink\"\n >\n <ng-container *ngTemplateOutlet=\"iconTemplate; context: { $implicit: linkItem }\" />\n <c-sidebar-nav-link-content [item]=\"linkItem\" />\n @if (linkItem.badge) {\n <span [class]=\"linkItem | cSidebarNavBadge\">{{ linkItem.badge?.text }}</span>\n }\n </a>\n }\n @default {\n <a\n (click)=\"linkClicked()\"\n [cHtmlAttr]=\"linkItem.attributes ?? {}\"\n [fragment]=\"$safeNavigationMigration(linkItem.linkProps?.fragment)\"\n [class]=\"linkItem | cSidebarNavLink\"\n [preserveFragment]=\"linkItem.linkProps?.preserveFragment ?? false\"\n [queryParamsHandling]=\"$safeNavigationMigration(linkItem.linkProps?.queryParamsHandling)\"\n [queryParams]=\"linkItem.linkProps?.queryParams ?? null\"\n [replaceUrl]=\"linkItem.linkProps?.replaceUrl ?? false\"\n [routerLinkActiveOptions]=\"linkItem.linkProps?.routerLinkActiveOptions ?? { exact: false }\"\n [routerLink]=\"linkItem.url\"\n [skipLocationChange]=\"linkItem.linkProps?.skipLocationChange ?? false\"\n [state]=\"linkItem.linkProps?.state ?? {}\"\n [target]=\"$safeNavigationMigration(linkItem.attributes?.['target'])\"\n routerLinkActive=\"active\"\n >\n <!-- [class.active]=\"linkActive\"-->\n <ng-container *ngTemplateOutlet=\"iconTemplate; context: { $implicit: linkItem }\" />\n <c-sidebar-nav-link-content [item]=\"linkItem\" />\n @if (linkItem.badge) {\n <span [class]=\"linkItem | cSidebarNavBadge\">{{ linkItem.badge?.text }}</span>\n }\n </a>\n }\n}\n<ng-template #iconTemplate let-item>\n <!-- <i *ngIf=\"item?.icon\" [class]=\"item | cSidebarNavIcon\"></i>-->\n @if (item?.icon) {\n <span class=\"nav-icon\">\n <span [class]=\"item.icon ?? ''\"></span>\n </span>\n }\n @if (item?.iconComponent) {\n <svg\n [cIcon]=\"$safeNavigationMigration(item.iconComponent?.content)\"\n [customClasses]=\"item | cSidebarNavIcon\"\n [name]=\"$safeNavigationMigration(item.iconComponent?.name)\"\n ></svg>\n }\n @if (!item?.icon && !item?.iconComponent) {\n <span [class]=\"item | cSidebarNavIcon\"></span>\n }\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1$1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "browserUrl", "routerLink"] }, { kind: "directive", type: i1$1.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: HtmlAttributesDirective, selector: "[cHtmlAttr]", inputs: ["cHtmlAttr"], exportAs: ["cHtmlAttr"] }, { kind: "directive", type: IconDirective, selector: "svg[cIcon]", inputs: ["cIcon", "customClasses", "size", "title", "height", "width", "name", "viewBox", "xmlns", "pointer-events", "role"], exportAs: ["cIcon"] }, { kind: "component", type: SidebarNavLinkContentComponent, selector: "c-sidebar-nav-link-content", inputs: ["item"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: SidebarNavLinkPipe, name: "cSidebarNavLink" }, { kind: "pipe", type: SidebarNavBadgePipe, name: "cSidebarNavBadge" }, { kind: "pipe", type: SidebarNavIconPipe, name: "cSidebarNavIcon" }] });
17729
18032
  }
17730
18033
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SidebarNavLinkComponent, decorators: [{
17731
18034
  type: Component,
17732
- args: [{ selector: 'c-sidebar-nav-link', providers: [SidebarNavHelper], changeDetection: ChangeDetectionStrategy.Eager, imports: [
18035
+ args: [{ selector: 'c-sidebar-nav-link', providers: [SidebarNavHelper], imports: [
17733
18036
  RouterModule,
17734
18037
  HtmlAttributesDirective,
17735
18038
  IconDirective,
@@ -17902,7 +18205,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
17902
18205
 
17903
18206
  class SidebarNavGroupComponent {
17904
18207
  #router = inject(Router);
17905
- #renderer = inject(Renderer2);
17906
18208
  #hostElement = inject(ElementRef);
17907
18209
  #sidebarNavGroupService = inject(SidebarNavGroupService);
17908
18210
  helper = inject(SidebarNavHelper);
@@ -17942,7 +18244,6 @@ class SidebarNavGroupComponent {
17942
18244
  };
17943
18245
  }, /* @ts-ignore */
17944
18246
  ...(ngDevMode ? [{ debugName: "hostClasses" }] : /* istanbul ignore next */ []));
17945
- sidebarNav = viewChild.required(forwardRef(() => SidebarNavComponent), { ...(ngDevMode ? { debugName: "sidebarNav" } : /* istanbul ignore next */ {}), read: ElementRef });
17946
18247
  navigationEndObservable;
17947
18248
  navSubscription;
17948
18249
  navGroupSubscription;
@@ -17950,7 +18251,7 @@ class SidebarNavGroupComponent {
17950
18251
  ...(ngDevMode ? [{ debugName: "open" }] : /* istanbul ignore next */ []));
17951
18252
  navItems = signal([], /* @ts-ignore */
17952
18253
  ...(ngDevMode ? [{ debugName: "navItems" }] : /* istanbul ignore next */ []));
17953
- display = signal({ display: 'block' }, /* @ts-ignore */
18254
+ display = signal(null, /* @ts-ignore */
17954
18255
  ...(ngDevMode ? [{ debugName: "display" }] : /* istanbul ignore next */ []));
17955
18256
  ngOnInit() {
17956
18257
  this.navItems.set([...(this.item()?.children ?? [])]);
@@ -17985,6 +18286,10 @@ class SidebarNavGroupComponent {
17985
18286
  });
17986
18287
  }
17987
18288
  openGroup(open) {
18289
+ if (this.open() !== undefined && this.open() !== open) {
18290
+ // the group drops `show` in the same pass, hiding the nav before cCollapse can measure it
18291
+ this.display.set('block');
18292
+ }
17988
18293
  this.open.set(open);
17989
18294
  }
17990
18295
  toggleGroup($event) {
@@ -17997,64 +18302,26 @@ class SidebarNavGroupComponent {
17997
18302
  ngOnDestroy() {
17998
18303
  this.navSubscription?.unsubscribe();
17999
18304
  }
18000
- onAnimationStart($event) {
18001
- this.display.set({ display: 'block' });
18002
- setTimeout(() => {
18003
- const host = this.sidebarNav()?.nativeElement;
18004
- if ($event.toState === 'open' && host) {
18005
- this.#renderer.setStyle(host, 'height', `${host['scrollHeight']}px`);
18006
- }
18007
- });
18008
- }
18009
- onAnimationDone($event) {
18010
- setTimeout(() => {
18011
- const host = this.sidebarNav()?.nativeElement;
18012
- if ($event.toState === 'open' && host) {
18013
- this.#renderer.setStyle(host, 'height', 'auto');
18014
- }
18015
- if ($event.toState === 'closed') {
18016
- setTimeout(() => {
18017
- this.display.set(null);
18018
- });
18019
- }
18020
- });
18305
+ onCollapseChange(state) {
18306
+ this.display.set(state === 'collapsed' || state === 'open' ? null : 'block');
18021
18307
  }
18022
18308
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SidebarNavGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
18023
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: SidebarNavGroupComponent, isStandalone: true, selector: "c-sidebar-nav-group", inputs: { item: { classPropertyName: "item", publicName: "item", isSignal: true, isRequired: false, transformFunction: null }, dropdownMode: { classPropertyName: "dropdownMode", publicName: "dropdownMode", isSignal: true, isRequired: false, transformFunction: null }, show: { classPropertyName: "show", publicName: "show", isSignal: true, isRequired: false, transformFunction: null }, compact: { classPropertyName: "compact", publicName: "compact", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "hostClasses()" } }, providers: [SidebarNavHelper], viewQueries: [{ propertyName: "sidebarNav", first: true, predicate: i0.forwardRef(() => SidebarNavComponent), descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: "@let grpItem = item();\n<a\n (click)=\"toggleGroup($event)\"\n [cHtmlAttr]=\"$safeNavigationMigration(grpItem?.attributes)\"\n class=\"nav-link nav-group-toggle\"\n href\n>\n <ng-container *ngTemplateOutlet=\"iconTemplate; context: { $implicit: grpItem }\" />\n <ng-container>{{ grpItem?.name }}</ng-container>\n @if (grpItem?.badge) {\n <span [class]=\"grpItem | cSidebarNavBadge\">{{ grpItem?.badge?.text }}</span>\n }\n</a>\n<c-sidebar-nav\n (@openClose.done)=\"onAnimationDone($event)\"\n (@openClose.start)=\"onAnimationStart($event)\"\n [@openClose]=\"open() ? 'open' : 'closed'\"\n [compact]=\"compact()\"\n [dropdownMode]=\"dropdownMode()\"\n [groupItems]=\"true\"\n [navItems]=\"navItems()\"\n [style]=\"display()\"\n/>\n\n<ng-template #iconTemplate let-item>\n <!-- <i *ngIf=\"item?.icon\" [class]=\"item | cSidebarNavIcon\"></i>-->\n @if (item?.icon) {\n <span class=\"nav-icon\">\n <span [class]=\"item.icon ?? ''\"></span>\n </span>\n }\n @if (item?.iconComponent) {\n <svg\n [cIcon]=\"$safeNavigationMigration(item.iconComponent?.content)\"\n [customClasses]=\"item | cSidebarNavIcon\"\n [name]=\"$safeNavigationMigration(item.iconComponent?.name)\"\n />\n }\n @if (!item?.icon && !item?.iconComponent) {\n <span [class]=\"item | cSidebarNavIcon\"></span>\n }\n</ng-template>\n", styles: [".nav-group-toggle{cursor:pointer}.nav-group-items{display:block}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(() => HtmlAttributesDirective), selector: "[cHtmlAttr]", inputs: ["cHtmlAttr"], exportAs: ["cHtmlAttr"] }, { kind: "directive", type: i0.forwardRef(() => IconDirective), selector: "svg[cIcon]", inputs: ["cIcon", "customClasses", "size", "title", "height", "width", "name", "viewBox", "xmlns", "pointer-events", "role"], exportAs: ["cIcon"] }, { kind: "directive", type: i0.forwardRef(() => NgTemplateOutlet), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i0.forwardRef(() => SidebarNavComponent), selector: "c-sidebar-nav", inputs: ["navItems", "dropdownMode", "groupItems", "compact", "role"] }, { kind: "pipe", type: i0.forwardRef(() => SidebarNavIconPipe), name: "cSidebarNavIcon" }, { kind: "pipe", type: i0.forwardRef(() => SidebarNavBadgePipe), name: "cSidebarNavBadge" }], animations: [
18024
- trigger('openClose', [
18025
- state('open', style({
18026
- height: '*'
18027
- })),
18028
- state('closed', style({
18029
- height: '0px'
18030
- })),
18031
- transition('open <=> closed', [animate('.15s ease')])
18032
- ])
18033
- ], changeDetection: i0.ChangeDetectionStrategy.Eager });
18309
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: SidebarNavGroupComponent, isStandalone: true, selector: "c-sidebar-nav-group", inputs: { item: { classPropertyName: "item", publicName: "item", isSignal: true, isRequired: false, transformFunction: null }, dropdownMode: { classPropertyName: "dropdownMode", publicName: "dropdownMode", isSignal: true, isRequired: false, transformFunction: null }, show: { classPropertyName: "show", publicName: "show", isSignal: true, isRequired: false, transformFunction: null }, compact: { classPropertyName: "compact", publicName: "compact", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "hostClasses()" } }, providers: [SidebarNavHelper], ngImport: i0, template: "@let grpItem = item();\n<a\n (click)=\"toggleGroup($event)\"\n [cHtmlAttr]=\"$safeNavigationMigration(grpItem?.attributes)\"\n class=\"nav-link nav-group-toggle\"\n href\n>\n <ng-container *ngTemplateOutlet=\"iconTemplate; context: { $implicit: grpItem }\" />\n <ng-container>{{ grpItem?.name }}</ng-container>\n @if (grpItem?.badge) {\n <span [class]=\"grpItem | cSidebarNavBadge\">{{ grpItem?.badge?.text }}</span>\n }\n</a>\n<c-sidebar-nav\n (collapseChange)=\"onCollapseChange($event)\"\n [compact]=\"compact()\"\n [dropdownMode]=\"dropdownMode()\"\n [groupItems]=\"true\"\n [navItems]=\"navItems()\"\n [style.display]=\"display()\"\n [visible]=\"!!open()\"\n cCollapse\n/>\n\n<ng-template #iconTemplate let-item>\n <!-- <i *ngIf=\"item?.icon\" [class]=\"item | cSidebarNavIcon\"></i>-->\n @if (item?.icon) {\n <span class=\"nav-icon\">\n <span [class]=\"item.icon ?? ''\"></span>\n </span>\n }\n @if (item?.iconComponent) {\n <svg\n [cIcon]=\"$safeNavigationMigration(item.iconComponent?.content)\"\n [customClasses]=\"item | cSidebarNavIcon\"\n [name]=\"$safeNavigationMigration(item.iconComponent?.name)\"\n />\n }\n @if (!item?.icon && !item?.iconComponent) {\n <span [class]=\"item | cSidebarNavIcon\"></span>\n }\n</ng-template>\n", styles: [".nav-group-items{display:block}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(() => CollapseDirective), selector: "[cCollapse]", inputs: ["animate", "horizontal", "visible", "navbar"], outputs: ["visibleChange", "collapseChange"], exportAs: ["cCollapse"] }, { kind: "directive", type: i0.forwardRef(() => HtmlAttributesDirective), selector: "[cHtmlAttr]", inputs: ["cHtmlAttr"], exportAs: ["cHtmlAttr"] }, { kind: "directive", type: i0.forwardRef(() => IconDirective), selector: "svg[cIcon]", inputs: ["cIcon", "customClasses", "size", "title", "height", "width", "name", "viewBox", "xmlns", "pointer-events", "role"], exportAs: ["cIcon"] }, { kind: "directive", type: i0.forwardRef(() => NgTemplateOutlet), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i0.forwardRef(() => SidebarNavComponent), selector: "c-sidebar-nav", inputs: ["navItems", "dropdownMode", "groupItems", "compact", "role"] }, { kind: "pipe", type: i0.forwardRef(() => SidebarNavIconPipe), name: "cSidebarNavIcon" }, { kind: "pipe", type: i0.forwardRef(() => SidebarNavBadgePipe), name: "cSidebarNavBadge" }] });
18034
18310
  }
18035
18311
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SidebarNavGroupComponent, decorators: [{
18036
18312
  type: Component,
18037
18313
  args: [{ selector: 'c-sidebar-nav-group', providers: [SidebarNavHelper], imports: [
18314
+ CollapseDirective,
18038
18315
  HtmlAttributesDirective,
18039
18316
  IconDirective,
18040
18317
  NgTemplateOutlet,
18041
18318
  SidebarNavIconPipe,
18042
18319
  SidebarNavBadgePipe,
18043
18320
  forwardRef(() => SidebarNavComponent)
18044
- ], animations: [
18045
- trigger('openClose', [
18046
- state('open', style({
18047
- height: '*'
18048
- })),
18049
- state('closed', style({
18050
- height: '0px'
18051
- })),
18052
- transition('open <=> closed', [animate('.15s ease')])
18053
- ])
18054
- ], changeDetection: ChangeDetectionStrategy.Eager, host: {
18321
+ ], host: {
18055
18322
  '[class]': 'hostClasses()'
18056
- }, template: "@let grpItem = item();\n<a\n (click)=\"toggleGroup($event)\"\n [cHtmlAttr]=\"$safeNavigationMigration(grpItem?.attributes)\"\n class=\"nav-link nav-group-toggle\"\n href\n>\n <ng-container *ngTemplateOutlet=\"iconTemplate; context: { $implicit: grpItem }\" />\n <ng-container>{{ grpItem?.name }}</ng-container>\n @if (grpItem?.badge) {\n <span [class]=\"grpItem | cSidebarNavBadge\">{{ grpItem?.badge?.text }}</span>\n }\n</a>\n<c-sidebar-nav\n (@openClose.done)=\"onAnimationDone($event)\"\n (@openClose.start)=\"onAnimationStart($event)\"\n [@openClose]=\"open() ? 'open' : 'closed'\"\n [compact]=\"compact()\"\n [dropdownMode]=\"dropdownMode()\"\n [groupItems]=\"true\"\n [navItems]=\"navItems()\"\n [style]=\"display()\"\n/>\n\n<ng-template #iconTemplate let-item>\n <!-- <i *ngIf=\"item?.icon\" [class]=\"item | cSidebarNavIcon\"></i>-->\n @if (item?.icon) {\n <span class=\"nav-icon\">\n <span [class]=\"item.icon ?? ''\"></span>\n </span>\n }\n @if (item?.iconComponent) {\n <svg\n [cIcon]=\"$safeNavigationMigration(item.iconComponent?.content)\"\n [customClasses]=\"item | cSidebarNavIcon\"\n [name]=\"$safeNavigationMigration(item.iconComponent?.name)\"\n />\n }\n @if (!item?.icon && !item?.iconComponent) {\n <span [class]=\"item | cSidebarNavIcon\"></span>\n }\n</ng-template>\n", styles: [".nav-group-toggle{cursor:pointer}.nav-group-items{display:block}\n"] }]
18057
- }], ctorParameters: () => [], propDecorators: { item: [{ type: i0.Input, args: [{ isSignal: true, alias: "item", required: false }] }], dropdownMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "dropdownMode", required: false }] }], show: [{ type: i0.Input, args: [{ isSignal: true, alias: "show", required: false }] }], compact: [{ type: i0.Input, args: [{ isSignal: true, alias: "compact", required: false }] }], sidebarNav: [{ type: i0.ViewChild, args: [forwardRef(() => SidebarNavComponent), { ...{ read: ElementRef }, isSignal: true }] }] } });
18323
+ }, template: "@let grpItem = item();\n<a\n (click)=\"toggleGroup($event)\"\n [cHtmlAttr]=\"$safeNavigationMigration(grpItem?.attributes)\"\n class=\"nav-link nav-group-toggle\"\n href\n>\n <ng-container *ngTemplateOutlet=\"iconTemplate; context: { $implicit: grpItem }\" />\n <ng-container>{{ grpItem?.name }}</ng-container>\n @if (grpItem?.badge) {\n <span [class]=\"grpItem | cSidebarNavBadge\">{{ grpItem?.badge?.text }}</span>\n }\n</a>\n<c-sidebar-nav\n (collapseChange)=\"onCollapseChange($event)\"\n [compact]=\"compact()\"\n [dropdownMode]=\"dropdownMode()\"\n [groupItems]=\"true\"\n [navItems]=\"navItems()\"\n [style.display]=\"display()\"\n [visible]=\"!!open()\"\n cCollapse\n/>\n\n<ng-template #iconTemplate let-item>\n <!-- <i *ngIf=\"item?.icon\" [class]=\"item | cSidebarNavIcon\"></i>-->\n @if (item?.icon) {\n <span class=\"nav-icon\">\n <span [class]=\"item.icon ?? ''\"></span>\n </span>\n }\n @if (item?.iconComponent) {\n <svg\n [cIcon]=\"$safeNavigationMigration(item.iconComponent?.content)\"\n [customClasses]=\"item | cSidebarNavIcon\"\n [name]=\"$safeNavigationMigration(item.iconComponent?.name)\"\n />\n }\n @if (!item?.icon && !item?.iconComponent) {\n <span [class]=\"item | cSidebarNavIcon\"></span>\n }\n</ng-template>\n", styles: [".nav-group-items{display:block}\n"] }]
18324
+ }], ctorParameters: () => [], propDecorators: { item: [{ type: i0.Input, args: [{ isSignal: true, alias: "item", required: false }] }], dropdownMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "dropdownMode", required: false }] }], show: [{ type: i0.Input, args: [{ isSignal: true, alias: "show", required: false }] }], compact: [{ type: i0.Input, args: [{ isSignal: true, alias: "compact", required: false }] }] } });
18058
18325
  class SidebarNavComponent {
18059
18326
  sidebar = inject(SidebarComponent, { optional: true });
18060
18327
  helper = inject(SidebarNavHelper);
@@ -18120,7 +18387,7 @@ class SidebarNavComponent {
18120
18387
  }
18121
18388
  }
18122
18389
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SidebarNavComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
18123
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: SidebarNavComponent, isStandalone: true, selector: "c-sidebar-nav", inputs: { navItems: { classPropertyName: "navItems", publicName: "navItems", isSignal: true, isRequired: false, transformFunction: null }, dropdownMode: { classPropertyName: "dropdownMode", publicName: "dropdownMode", isSignal: true, isRequired: false, transformFunction: null }, groupItems: { classPropertyName: "groupItems", publicName: "groupItems", isSignal: true, isRequired: false, transformFunction: null }, compact: { classPropertyName: "compact", publicName: "compact", isSignal: true, isRequired: false, transformFunction: null }, role: { classPropertyName: "role", publicName: "role", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "hostClasses()", "attr.role": "role()" } }, providers: [SidebarNavGroupService], usesOnChanges: true, ngImport: i0, template: "@for (nItem of navItemsArray(); track nItem) {\n @switch (helper.itemType(nItem)) {\n @case ('group') {\n <c-sidebar-nav-group\n [dropdownMode]=\"dropdownMode()\"\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n [compact]=\"compact()\"\n />\n }\n @case ('divider') {\n <c-sidebar-nav-divider\n [cHtmlAttr]=\"nItem.attributes ?? {}\"\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n />\n }\n @case ('title') {\n <c-sidebar-nav-title\n [cHtmlAttr]=\"nItem.attributes ?? {}\"\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n />\n }\n @case ('label') {\n <c-sidebar-nav-label\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n />\n }\n @case ('empty') {\n <ng-container />\n }\n @default {\n <c-sidebar-nav-link\n (linkClick)=\"hideMobile()\"\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n />\n }\n }\n}\n<ng-content />\n", dependencies: [{ kind: "directive", type: i0.forwardRef(() => HtmlAttributesDirective), selector: "[cHtmlAttr]", inputs: ["cHtmlAttr"], exportAs: ["cHtmlAttr"] }, { kind: "component", type: i0.forwardRef(() => SidebarNavLinkComponent), selector: "c-sidebar-nav-link", inputs: ["item"], outputs: ["linkClick"] }, { kind: "component", type: i0.forwardRef(() => SidebarNavLabelComponent), selector: "c-sidebar-nav-label", inputs: ["item"] }, { kind: "component", type: i0.forwardRef(() => SidebarNavTitleComponent), selector: "c-sidebar-nav-title", inputs: ["item"] }, { kind: "component", type: i0.forwardRef(() => SidebarNavDividerComponent), selector: "c-sidebar-nav-divider", inputs: ["item"] }, { kind: "component", type: i0.forwardRef(() => SidebarNavGroupComponent), selector: "c-sidebar-nav-group", inputs: ["item", "dropdownMode", "show", "compact"] }, { kind: "ngmodule", type: i0.forwardRef(() => RouterModule) }, { kind: "pipe", type: i0.forwardRef(() => SidebarNavItemClassPipe), name: "cSidebarNavItemClass" }], changeDetection: i0.ChangeDetectionStrategy.Eager });
18390
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: SidebarNavComponent, isStandalone: true, selector: "c-sidebar-nav", inputs: { navItems: { classPropertyName: "navItems", publicName: "navItems", isSignal: true, isRequired: false, transformFunction: null }, dropdownMode: { classPropertyName: "dropdownMode", publicName: "dropdownMode", isSignal: true, isRequired: false, transformFunction: null }, groupItems: { classPropertyName: "groupItems", publicName: "groupItems", isSignal: true, isRequired: false, transformFunction: null }, compact: { classPropertyName: "compact", publicName: "compact", isSignal: true, isRequired: false, transformFunction: null }, role: { classPropertyName: "role", publicName: "role", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "hostClasses()", "attr.role": "role()" } }, providers: [NavGroupService, SidebarNavGroupService], usesOnChanges: true, ngImport: i0, template: "@for (nItem of navItemsArray(); track nItem) {\n @switch (helper.itemType(nItem)) {\n @case ('group') {\n <c-sidebar-nav-group\n [dropdownMode]=\"dropdownMode()\"\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n [compact]=\"compact()\"\n />\n }\n @case ('divider') {\n <c-sidebar-nav-divider\n [cHtmlAttr]=\"nItem.attributes ?? {}\"\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n />\n }\n @case ('title') {\n <c-sidebar-nav-title\n [cHtmlAttr]=\"nItem.attributes ?? {}\"\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n />\n }\n @case ('label') {\n <c-sidebar-nav-label\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n />\n }\n @case ('empty') {\n <ng-container />\n }\n @default {\n <c-sidebar-nav-link\n (linkClick)=\"hideMobile()\"\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n />\n }\n }\n}\n<ng-content />\n", styles: [":host .nav-item{display:block}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(() => HtmlAttributesDirective), selector: "[cHtmlAttr]", inputs: ["cHtmlAttr"], exportAs: ["cHtmlAttr"] }, { kind: "component", type: i0.forwardRef(() => SidebarNavLinkComponent), selector: "c-sidebar-nav-link", inputs: ["item"], outputs: ["linkClick"] }, { kind: "component", type: i0.forwardRef(() => SidebarNavLabelComponent), selector: "c-sidebar-nav-label", inputs: ["item"] }, { kind: "component", type: i0.forwardRef(() => SidebarNavTitleComponent), selector: "c-sidebar-nav-title", inputs: ["item"] }, { kind: "component", type: i0.forwardRef(() => SidebarNavDividerComponent), selector: "c-sidebar-nav-divider", inputs: ["item"] }, { kind: "component", type: i0.forwardRef(() => SidebarNavGroupComponent), selector: "c-sidebar-nav-group", inputs: ["item", "dropdownMode", "show", "compact"] }, { kind: "ngmodule", type: i0.forwardRef(() => RouterModule) }, { kind: "pipe", type: i0.forwardRef(() => SidebarNavItemClassPipe), name: "cSidebarNavItemClass" }] });
18124
18391
  }
18125
18392
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: SidebarNavComponent, decorators: [{
18126
18393
  type: Component,
@@ -18136,7 +18403,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
18136
18403
  ], host: {
18137
18404
  '[class]': 'hostClasses()',
18138
18405
  '[attr.role]': 'role()'
18139
- }, changeDetection: ChangeDetectionStrategy.Eager, providers: [SidebarNavGroupService], template: "@for (nItem of navItemsArray(); track nItem) {\n @switch (helper.itemType(nItem)) {\n @case ('group') {\n <c-sidebar-nav-group\n [dropdownMode]=\"dropdownMode()\"\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n [compact]=\"compact()\"\n />\n }\n @case ('divider') {\n <c-sidebar-nav-divider\n [cHtmlAttr]=\"nItem.attributes ?? {}\"\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n />\n }\n @case ('title') {\n <c-sidebar-nav-title\n [cHtmlAttr]=\"nItem.attributes ?? {}\"\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n />\n }\n @case ('label') {\n <c-sidebar-nav-label\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n />\n }\n @case ('empty') {\n <ng-container />\n }\n @default {\n <c-sidebar-nav-link\n (linkClick)=\"hideMobile()\"\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n />\n }\n }\n}\n<ng-content />\n" }]
18406
+ }, providers: [NavGroupService, SidebarNavGroupService], template: "@for (nItem of navItemsArray(); track nItem) {\n @switch (helper.itemType(nItem)) {\n @case ('group') {\n <c-sidebar-nav-group\n [dropdownMode]=\"dropdownMode()\"\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n [compact]=\"compact()\"\n />\n }\n @case ('divider') {\n <c-sidebar-nav-divider\n [cHtmlAttr]=\"nItem.attributes ?? {}\"\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n />\n }\n @case ('title') {\n <c-sidebar-nav-title\n [cHtmlAttr]=\"nItem.attributes ?? {}\"\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n />\n }\n @case ('label') {\n <c-sidebar-nav-label\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n />\n }\n @case ('empty') {\n <ng-container />\n }\n @default {\n <c-sidebar-nav-link\n (linkClick)=\"hideMobile()\"\n [item]=\"nItem\"\n [class]=\"nItem | cSidebarNavItemClass\"\n />\n }\n }\n}\n<ng-content />\n", styles: [":host .nav-item{display:block}\n"] }]
18140
18407
  }], propDecorators: { navItems: [{ type: i0.Input, args: [{ isSignal: true, alias: "navItems", required: false }] }], dropdownMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "dropdownMode", required: false }] }], groupItems: [{ type: i0.Input, args: [{ isSignal: true, alias: "groupItems", required: false }] }], compact: [{ type: i0.Input, args: [{ isSignal: true, alias: "compact", required: false }] }], role: [{ type: i0.Input, args: [{ isSignal: true, alias: "role", required: false }] }] } });
18141
18408
 
18142
18409
  class SidebarModule {
@@ -19751,7 +20018,8 @@ class StepperStepComponent {
19751
20018
  * If true, the step can be modified by the user.
19752
20019
  * @returns boolean
19753
20020
  * @default true
19754
- * todo - implement editable functionality
20021
+ * @ignore
20022
+ * @todo implement editable functionality
19755
20023
  */
19756
20024
  editable = input(true, { ...(ngDevMode ? { debugName: "editable" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
19757
20025
  /**
@@ -19759,7 +20027,8 @@ class StepperStepComponent {
19759
20027
  * If true, the step does not need to be completed for the overall process to succeed.
19760
20028
  * @returns boolean
19761
20029
  * @default false
19762
- * todo - implement optional functionality
20030
+ * @ignore
20031
+ * @todo implement optional functionality
19763
20032
  */
19764
20033
  optional = input(false, { ...(ngDevMode ? { debugName: "optional" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
19765
20034
  /**
@@ -20694,8 +20963,8 @@ class TabsListComponent {
20694
20963
  layout = input(/* @ts-ignore */
20695
20964
  ...(ngDevMode ? [undefined, { debugName: "layout" }] : /* istanbul ignore next */ []));
20696
20965
  /**
20697
- * Set the variant to tabs, pills or underline.
20698
- * @returns 'pills' | 'tabs' | 'underline' | 'underline-border' | undefined
20966
+ * Set the variant to tabs, pills, underline or enclosed.
20967
+ * @returns 'enclosed' | 'enclosed-pills' | 'pills' | 'tabs' | 'underline' | 'underline-border' | undefined
20699
20968
  * @default undefined
20700
20969
  */
20701
20970
  variant = input(/* @ts-ignore */
@@ -20712,6 +20981,7 @@ class TabsListComponent {
20712
20981
  return {
20713
20982
  nav: true,
20714
20983
  [`nav-${layout}`]: layout,
20984
+ 'nav-enclosed': variant === 'enclosed' || variant === 'enclosed-pills',
20715
20985
  [`nav-${variant}`]: variant
20716
20986
  };
20717
20987
  }, /* @ts-ignore */
@@ -21796,5 +22066,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
21796
22066
  * Generated bundle index. Do not edit.
21797
22067
  */
21798
22068
 
21799
- export { AccordionButtonDirective, AccordionComponent, AccordionItemComponent, AccordionModule, AlertComponent, AlertHeadingDirective, AlertLinkDirective, AlertModule, AlignDirective, AutocompleteDirective, AutocompleteModule, AvatarComponent, AvatarModule, BackdropService, BadgeComponent, BadgeModule, BgColorDirective, BorderDirective, BreadcrumbComponent, BreadcrumbItemComponent, BreadcrumbModule, BreadcrumbRouterComponent, BreadcrumbRouterService, BreakpointInfix, ButtonCloseDirective, ButtonDirective, ButtonGroupComponent, ButtonGroupModule, ButtonModule, ButtonToolbarComponent, CalendarComponent, CalendarModule, CalendarMonthComponent, CalendarNavigationComponent, CalloutComponent, CalloutModule, CardBodyComponent, CardComponent, CardFooterComponent, CardGroupComponent, CardHeaderActionsComponent, CardHeaderComponent, CardImgDirective, CardImgOverlayComponent, CardLinkDirective, CardModule, CardSubtitleDirective, CardTextDirective, CardTitleDirective, CarouselCaptionComponent, CarouselComponent, CarouselConfig, CarouselControlComponent, CarouselIndicatorsComponent, CarouselInnerComponent, CarouselItemComponent, CarouselModule, ClassToggleService, ColComponent, ColDirective, CollapseDirective, CollapseModule, ColorModeService, ContainerComponent, DatePickerComponent, DatePickerModule, DateRangePickerComponent, DateRangePickerModule, DropdownCloseDirective, DropdownComponent, DropdownDividerDirective, DropdownHeaderDirective, DropdownItemDirective, DropdownItemPlainDirective, DropdownMenuDirective, DropdownModule, DropdownService, DropdownToggleDirective, ElementCoverComponent, ElementCoverModule, ElementRefDirective, FooterComponent, FooterModule, FormCheckComponent, FormCheckInputDirective, FormCheckLabelDirective, FormControlDirective, FormDirective, FormFeedbackComponent, FormFloatingDirective, FormLabelDirective, FormModule, FormPasswordDirective, FormSelectDirective, FormTextDirective, GridModule, GutterDirective, HeaderBrandComponent, HeaderComponent, HeaderDividerComponent, HeaderModule, HeaderNavComponent, HeaderTextComponent, HeaderTogglerDirective, HtmlAttributesDirective, ImgDirective, ImgModule, InMemoryStorageService, InputGroupComponent, InputGroupTextDirective, IntersectionService, ListGroupDirective, ListGroupItemDirective, ListGroupModule, ListenersService, LoadingButtonComponent, LoadingButtonModule, LocalStorageService, ModalBodyComponent, ModalComponent, ModalContentComponent, ModalDialogComponent, ModalFooterComponent, ModalHeaderComponent, ModalModule, ModalService, ModalTitleDirective, ModalToggleDirective, MultiSelectComponent, MultiSelectModule, MultiSelectOptgroupComponent, MultiSelectOptgroupLabelComponent, MultiSelectOptionComponent, NavComponent, NavItemComponent, NavLinkDirective, NavModule, NavbarBrandDirective, NavbarComponent, NavbarModule, NavbarNavComponent, NavbarTextComponent, NavbarTogglerDirective, OffcanvasBodyComponent, OffcanvasComponent, OffcanvasHeaderComponent, OffcanvasModule, OffcanvasService, OffcanvasTitleDirective, OffcanvasToggleDirective, OneTimePasswordComponent, OneTimePasswordModule, OtpDirective, PageItemComponent, PageItemDirective, PageLinkDirective, PaginationComponent, PaginationModule, PlaceholderAnimationDirective, PlaceholderDirective, PlaceholderModule, PopoverComponent, PopoverDirective, PopoverModule, ProgressBarComponent, ProgressBarDirective, ProgressComponent, ProgressModule, ProgressStackedComponent, RangeSliderComponent, RangeSliderModule, RatingComponent, RatingModule, RoundedDirective, RowComponent, RowDirective, RtlService, SearchButtonComponent, SearchButtonModule, ShadowOnScrollDirective, SharedModule, SidebarBrandComponent, SidebarComponent, SidebarFooterComponent, SidebarHeaderComponent, SidebarModule, SidebarNavComponent, SidebarNavHelper, SidebarService, SidebarToggleDirective, SidebarTogglerDirective, SmartPaginationComponent, SmartPaginationModule, SmartTableComponent, SmartTableFilterComponent, SmartTableModule, SpinnerComponent, SpinnerModule, StepButtonDirective, StepperComponent, StepperModule, StepperStepComponent, TabContentComponent, TabContentRefDirective, TabDirective, TabPaneComponent, TabPanelComponent, TabService, TableActiveDirective, TableColorDirective, TableDirective, TableModule, Tabs2Module, TabsComponent, TabsContentComponent, TabsListComponent, TabsModule, TabsService, TemplateIdDirective, TextBgColorDirective, TextColorDirective, ThemeDirective, TimePickerComponent, TimePickerModule, ToastBodyComponent, ToastCloseDirective, ToastComponent, ToastContentComponent, ToastHeaderComponent, ToastModule, ToasterComponent, ToasterHostDirective, ToasterPlacement, ToasterService, TooltipComponent, TooltipDirective, TooltipModule, UIDService, UtilitiesModule, WidgetModule, WidgetStatAComponent, WidgetStatBComponent, WidgetStatCComponent, WidgetStatDComponent, WidgetStatEComponent, WidgetStatFComponent };
22069
+ export { AccordionButtonDirective, AccordionComponent, AccordionItemComponent, AccordionModule, AlertComponent, AlertHeadingDirective, AlertLinkDirective, AlertModule, AlignDirective, AutocompleteDirective, AutocompleteModule, AvatarComponent, AvatarModule, BackdropService, BadgeComponent, BadgeModule, BgColorDirective, BorderDirective, BreadcrumbComponent, BreadcrumbItemComponent, BreadcrumbModule, BreadcrumbRouterComponent, BreadcrumbRouterService, BreakpointInfix, ButtonCloseDirective, ButtonDirective, ButtonGroupComponent, ButtonGroupModule, ButtonModule, ButtonToolbarComponent, CalendarComponent, CalendarModule, CalendarMonthComponent, CalendarNavigationComponent, CalloutComponent, CalloutModule, CardBodyComponent, CardComponent, CardFooterComponent, CardGroupComponent, CardHeaderActionsComponent, CardHeaderComponent, CardImgDirective, CardImgOverlayComponent, CardLinkDirective, CardModule, CardSubtitleDirective, CardTextDirective, CardTitleDirective, CarouselCaptionComponent, CarouselComponent, CarouselConfig, CarouselControlComponent, CarouselIndicatorsComponent, CarouselInnerComponent, CarouselItemComponent, CarouselModule, ClassToggleService, ColComponent, ColDirective, CollapseDirective, CollapseModule, ColorModeService, ContainerComponent, DatePickerComponent, DatePickerModule, DateRangePickerComponent, DateRangePickerModule, DropdownCloseDirective, DropdownComponent, DropdownDividerDirective, DropdownHeaderDirective, DropdownItemDirective, DropdownItemPlainDirective, DropdownMenuDirective, DropdownModule, DropdownService, DropdownToggleDirective, ElementCoverComponent, ElementCoverModule, ElementRefDirective, FooterComponent, FooterModule, FormCheckComponent, FormCheckInputDirective, FormCheckLabelDirective, FormControlDirective, FormDirective, FormFeedbackComponent, FormFloatingDirective, FormLabelDirective, FormModule, FormPasswordDirective, FormSelectDirective, FormTextDirective, GridModule, GutterDirective, HeaderBrandComponent, HeaderComponent, HeaderDividerComponent, HeaderModule, HeaderNavComponent, HeaderTextComponent, HeaderTogglerDirective, HtmlAttributesDirective, ImgDirective, ImgModule, InMemoryStorageService, InputGroupComponent, InputGroupTextDirective, IntersectionService, ListGroupDirective, ListGroupItemDirective, ListGroupModule, ListenersService, LoadingButtonComponent, LoadingButtonModule, LocalStorageService, ModalBodyComponent, ModalComponent, ModalContentComponent, ModalDialogComponent, ModalFooterComponent, ModalHeaderComponent, ModalModule, ModalService, ModalTitleDirective, ModalToggleDirective, MultiSelectComponent, MultiSelectModule, MultiSelectOptgroupComponent, MultiSelectOptgroupLabelComponent, MultiSelectOptionComponent, NavComponent, NavGroupComponent, NavGroupItemsComponent, NavGroupService, NavItemComponent, NavLinkDirective, NavModule, NavTitleComponent, NavbarBrandDirective, NavbarComponent, NavbarModule, NavbarNavComponent, NavbarTextComponent, NavbarTogglerDirective, OffcanvasBodyComponent, OffcanvasComponent, OffcanvasHeaderComponent, OffcanvasModule, OffcanvasService, OffcanvasTitleDirective, OffcanvasToggleDirective, OneTimePasswordComponent, OneTimePasswordModule, OtpDirective, PageItemComponent, PageItemDirective, PageLinkDirective, PaginationComponent, PaginationModule, PlaceholderAnimationDirective, PlaceholderDirective, PlaceholderModule, PopoverComponent, PopoverDirective, PopoverModule, ProgressBarComponent, ProgressBarDirective, ProgressComponent, ProgressModule, ProgressStackedComponent, RangeSliderComponent, RangeSliderModule, RatingComponent, RatingModule, RoundedDirective, RowComponent, RowDirective, RtlService, SearchButtonComponent, SearchButtonModule, ShadowOnScrollDirective, SharedModule, SidebarBrandComponent, SidebarComponent, SidebarFooterComponent, SidebarHeaderComponent, SidebarModule, SidebarNavComponent, SidebarNavHelper, SidebarService, SidebarToggleDirective, SidebarTogglerDirective, SmartPaginationComponent, SmartPaginationModule, SmartTableComponent, SmartTableFilterComponent, SmartTableModule, SpinnerComponent, SpinnerModule, StepButtonDirective, StepperComponent, StepperModule, StepperStepComponent, TabContentComponent, TabContentRefDirective, TabDirective, TabPaneComponent, TabPanelComponent, TabService, TableActiveDirective, TableColorDirective, TableDirective, TableModule, Tabs2Module, TabsComponent, TabsContentComponent, TabsListComponent, TabsModule, TabsService, TemplateIdDirective, TextBgColorDirective, TextColorDirective, ThemeDirective, TimePickerComponent, TimePickerModule, ToastBodyComponent, ToastCloseDirective, ToastComponent, ToastContentComponent, ToastHeaderComponent, ToastModule, ToasterComponent, ToasterHostDirective, ToasterPlacement, ToasterService, TooltipComponent, TooltipDirective, TooltipModule, UIDService, UtilitiesModule, WidgetModule, WidgetStatAComponent, WidgetStatBComponent, WidgetStatCComponent, WidgetStatDComponent, WidgetStatEComponent, WidgetStatFComponent };
21800
22070
  //# sourceMappingURL=coreui-angular-pro.mjs.map