@coreui/angular-pro 5.5.0 → 5.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -413,7 +413,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImpor
413
413
  }]
414
414
  }] });
415
415
 
416
- let nextId$2 = 0;
416
+ let nextId$3 = 0;
417
417
  class AccordionItemComponent {
418
418
  #accordionService = inject(AccordionService);
419
419
  /**
@@ -433,7 +433,7 @@ class AccordionItemComponent {
433
433
  get visible() {
434
434
  return this.itemVisible();
435
435
  }
436
- contentId = `accordion-item-${nextId$2++}`;
436
+ contentId = `accordion-item-${nextId$3++}`;
437
437
  get itemContext() {
438
438
  return { $implicit: this.itemVisible() };
439
439
  }
@@ -11647,7 +11647,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImpor
11647
11647
  }]
11648
11648
  }] });
11649
11649
 
11650
- let nextId$1 = 0;
11650
+ let nextId$2 = 0;
11651
11651
  class OffcanvasComponent {
11652
11652
  #document = inject(DOCUMENT);
11653
11653
  #platformId = inject(PLATFORM_ID);
@@ -11682,7 +11682,7 @@ class OffcanvasComponent {
11682
11682
  * @since 4.3.10
11683
11683
  */
11684
11684
  responsive = input(true);
11685
- id = input(`offcanvas-${this.placement()}-${nextId$1++}`);
11685
+ id = input(`offcanvas-${this.placement()}-${nextId$2++}`);
11686
11686
  /**
11687
11687
  * Default role for offcanvas. [docs]
11688
11688
  * @return string
@@ -12649,7 +12649,7 @@ class ProgressComponent {
12649
12649
  }
12650
12650
  stacked = this.#progressService.stacked;
12651
12651
  percent = this.#progressService.percent;
12652
- value = this.#progressService.value;
12652
+ barValue = this.#progressService.value;
12653
12653
  contentProgressBars = contentChildren(ProgressBarComponent);
12654
12654
  /**
12655
12655
  * Sets the height of the component. If you set that value the inner `<CProgressBar>` will automatically resize accordingly.
@@ -12678,7 +12678,7 @@ class ProgressComponent {
12678
12678
  return !!height ? `${height}px` : (this.#hostElement?.nativeElement?.style?.height ?? undefined);
12679
12679
  });
12680
12680
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12681
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.3", type: ProgressComponent, isStandalone: true, selector: "c-progress", inputs: { height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, thin: { classPropertyName: "thin", publicName: "thin", isSignal: true, isRequired: false, transformFunction: null }, white: { classPropertyName: "white", publicName: "white", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "hostClasses()", "style.height": "hostStyle()" }, classAttribute: "progress" }, providers: [ProgressService], queries: [{ propertyName: "contentProgressBars", predicate: ProgressBarComponent, isSignal: true }], exportAs: ["cProgress"], hostDirectives: [{ directive: ProgressBarDirective, inputs: ["animated", "animated", "color", "color", "max", "max", "role", "role", "value", "value", "variant", "variant"] }], ngImport: i0, template: "@if (contentProgressBars()?.length) {\n <ng-container *ngTemplateOutlet=\"defaultContent\" />\n} @else {\n @let pbd = progressBarDirective;\n <c-progress-bar [animated]=\"pbd?.animated()\" [variant]=\"pbd?.variant()\" [color]=\"pbd?.color()\" [value]=\"value()\">\n <ng-container *ngTemplateOutlet=\"defaultContent\" />\n </c-progress-bar>\n}\n\n<ng-template #defaultContent>\n <ng-content />\n</ng-template>\n\n", styles: [":host-context(.progress-stacked).progress{transition:var(--cui-progress-bar-transition)}\n"], dependencies: [{ kind: "component", type: ProgressBarComponent, selector: "c-progress-bar" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
12681
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.3", type: ProgressComponent, isStandalone: true, selector: "c-progress", inputs: { height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, thin: { classPropertyName: "thin", publicName: "thin", isSignal: true, isRequired: false, transformFunction: null }, white: { classPropertyName: "white", publicName: "white", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "hostClasses()", "style.height": "hostStyle()" }, classAttribute: "progress" }, providers: [ProgressService], queries: [{ propertyName: "contentProgressBars", predicate: ProgressBarComponent, isSignal: true }], exportAs: ["cProgress"], hostDirectives: [{ directive: ProgressBarDirective, inputs: ["animated", "animated", "color", "color", "max", "max", "role", "role", "value", "value", "variant", "variant"] }], ngImport: i0, template: "@if (contentProgressBars()?.length) {\n <ng-container *ngTemplateOutlet=\"defaultContent\" />\n} @else {\n @let pbd = progressBarDirective;\n <c-progress-bar [animated]=\"pbd?.animated()\" [variant]=\"pbd?.variant()\" [color]=\"pbd?.color()\" [value]=\"barValue()\">\n <ng-container *ngTemplateOutlet=\"defaultContent\" />\n </c-progress-bar>\n}\n\n<ng-template #defaultContent>\n <ng-content />\n</ng-template>\n\n", styles: [":host-context(.progress-stacked).progress{transition:var(--cui-progress-bar-transition)}\n"], dependencies: [{ kind: "component", type: ProgressBarComponent, selector: "c-progress-bar" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
12682
12682
  }
12683
12683
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: ProgressComponent, decorators: [{
12684
12684
  type: Component,
@@ -12691,7 +12691,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImpor
12691
12691
  class: 'progress',
12692
12692
  '[class]': 'hostClasses()',
12693
12693
  '[style.height]': 'hostStyle()'
12694
- }, providers: [ProgressService], template: "@if (contentProgressBars()?.length) {\n <ng-container *ngTemplateOutlet=\"defaultContent\" />\n} @else {\n @let pbd = progressBarDirective;\n <c-progress-bar [animated]=\"pbd?.animated()\" [variant]=\"pbd?.variant()\" [color]=\"pbd?.color()\" [value]=\"value()\">\n <ng-container *ngTemplateOutlet=\"defaultContent\" />\n </c-progress-bar>\n}\n\n<ng-template #defaultContent>\n <ng-content />\n</ng-template>\n\n", styles: [":host-context(.progress-stacked).progress{transition:var(--cui-progress-bar-transition)}\n"] }]
12694
+ }, providers: [ProgressService], template: "@if (contentProgressBars()?.length) {\n <ng-container *ngTemplateOutlet=\"defaultContent\" />\n} @else {\n @let pbd = progressBarDirective;\n <c-progress-bar [animated]=\"pbd?.animated()\" [variant]=\"pbd?.variant()\" [color]=\"pbd?.color()\" [value]=\"barValue()\">\n <ng-container *ngTemplateOutlet=\"defaultContent\" />\n </c-progress-bar>\n}\n\n<ng-template #defaultContent>\n <ng-content />\n</ng-template>\n\n", styles: [":host-context(.progress-stacked).progress{transition:var(--cui-progress-bar-transition)}\n"] }]
12695
12695
  }], ctorParameters: () => [] });
12696
12696
 
12697
12697
  class ProgressModule {
@@ -16421,6 +16421,479 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImpor
16421
16421
  }]
16422
16422
  }] });
16423
16423
 
16424
+ class StepperStepComponent {
16425
+ static ngAcceptInputType_disabled;
16426
+ static ngAcceptInputType_optional;
16427
+ static ngAcceptInputType_editable;
16428
+ /**
16429
+ * ViewContainerRef to render the step content.
16430
+ * This allows dynamic rendering of templates within the step.
16431
+ */
16432
+ viewContainerRef = inject(ViewContainerRef);
16433
+ /**
16434
+ * Whether the step is disabled.
16435
+ * @return boolean
16436
+ * @default false
16437
+ */
16438
+ disabled = input(false, { transform: booleanAttribute });
16439
+ /**
16440
+ * Unique identifier for the step.
16441
+ * @return string
16442
+ * @default undefined
16443
+ */
16444
+ id = input();
16445
+ /**
16446
+ * Optional indicator to display in the step.
16447
+ * Can be a string or a TemplateRef for custom icons.
16448
+ * @return string | TemplateRef<any>
16449
+ * @default (step index will be used if not provided)
16450
+ */
16451
+ indicator = input();
16452
+ /**
16453
+ * Context for the indicator template.
16454
+ * If `indicator` is a TemplateRef, this context will be passed to it.
16455
+ * @return unknown
16456
+ * @default undefined
16457
+ */
16458
+ indicatorCtx = input();
16459
+ /**
16460
+ * Label for the step, which is required.
16461
+ * Can be a string or a TemplateRef for custom labels.
16462
+ * @return string | TemplateRef<any>
16463
+ */
16464
+ label = input.required();
16465
+ /**
16466
+ * Context for the label template.
16467
+ * If `label` is a TemplateRef, this context will be passed to it.
16468
+ * @return unknown
16469
+ * @default undefined
16470
+ */
16471
+ labelCtx = input();
16472
+ /**
16473
+ * Whether the step is valid.
16474
+ * This can be used to indicate if the step has been completed successfully.
16475
+ * @return boolean | undefined | null
16476
+ * @default undefined
16477
+ */
16478
+ valid = input();
16479
+ /**
16480
+ * Whether the step is editable.
16481
+ * If true, the step can be modified by the user.
16482
+ * @return boolean
16483
+ * @default true
16484
+ * todo - implement editable functionality
16485
+ */
16486
+ editable = input(true, { transform: booleanAttribute });
16487
+ /**
16488
+ * Whether the step is optional.
16489
+ * If true, the step does not need to be completed for the overall process to succeed.
16490
+ * @return boolean
16491
+ * @default false
16492
+ * todo - implement optional functionality
16493
+ */
16494
+ optional = input(false, { transform: booleanAttribute });
16495
+ /**
16496
+ * Template reference for the content of the step.
16497
+ * This is where the main content of the step will be rendered.
16498
+ */
16499
+ templateRef = viewChild.required('contentTpl', { read: TemplateRef });
16500
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: StepperStepComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
16501
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.0.3", type: StepperStepComponent, isStandalone: true, selector: "c-stepper-step", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, indicator: { classPropertyName: "indicator", publicName: "indicator", isSignal: true, isRequired: false, transformFunction: null }, indicatorCtx: { classPropertyName: "indicatorCtx", publicName: "indicatorCtx", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: true, transformFunction: null }, labelCtx: { classPropertyName: "labelCtx", publicName: "labelCtx", isSignal: true, isRequired: false, transformFunction: null }, valid: { classPropertyName: "valid", publicName: "valid", isSignal: true, isRequired: false, transformFunction: null }, editable: { classPropertyName: "editable", publicName: "editable", isSignal: true, isRequired: false, transformFunction: null }, optional: { classPropertyName: "optional", publicName: "optional", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "style": "{ display: \"none\" }" } }, viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["contentTpl"], descendants: true, read: TemplateRef, isSignal: true }], exportAs: ["cStepperStep"], ngImport: i0, template: `
16502
+ <ng-template #contentTpl>
16503
+ <ng-content />
16504
+ </ng-template>
16505
+ `, isInline: true });
16506
+ }
16507
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: StepperStepComponent, decorators: [{
16508
+ type: Component,
16509
+ args: [{
16510
+ selector: 'c-stepper-step',
16511
+ exportAs: 'cStepperStep',
16512
+ template: `
16513
+ <ng-template #contentTpl>
16514
+ <ng-content />
16515
+ </ng-template>
16516
+ `,
16517
+ host: {
16518
+ '[style]': '{ display: "none" }'
16519
+ }
16520
+ }]
16521
+ }] });
16522
+
16523
+ class StepButtonDirective {
16524
+ hostElement = inject(ElementRef);
16525
+ focus(origin) {
16526
+ this.hostElement.nativeElement.focus();
16527
+ }
16528
+ get disabled() {
16529
+ return this.hostElement.nativeElement.disabled;
16530
+ }
16531
+ getLabel() {
16532
+ return this.hostElement.nativeElement.innerText;
16533
+ }
16534
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: StepButtonDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
16535
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.0.3", type: StepButtonDirective, isStandalone: true, selector: "button[cStepButton]", exportAs: ["cStepButton"], ngImport: i0 });
16536
+ }
16537
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: StepButtonDirective, decorators: [{
16538
+ type: Directive,
16539
+ args: [{
16540
+ selector: 'button[cStepButton]',
16541
+ exportAs: 'cStepButton'
16542
+ }]
16543
+ }] });
16544
+
16545
+ let nextId$1 = 0;
16546
+ class StepperComponent {
16547
+ static ngAcceptInputType_defaultActiveStepIndex;
16548
+ static ngAcceptInputType_linear;
16549
+ static ngAcceptInputType_validation;
16550
+ #destroyRef = inject(DestroyRef);
16551
+ /**
16552
+ * Currently active step index
16553
+ * @returns number
16554
+ * @default 0
16555
+ */
16556
+ activeStepIndexInput = input(undefined, { alias: 'activeStepIndex' });
16557
+ /**
16558
+ * Linked signal for the active step index.
16559
+ * This signal updates based on the input value and emits changes.
16560
+ */
16561
+ activeStepIndex = linkedSignal({
16562
+ source: this.activeStepIndexInput,
16563
+ computation: (newIndex, previous) => {
16564
+ if (previous === undefined && newIndex === undefined) {
16565
+ return this.defaultActiveStepIndex();
16566
+ }
16567
+ const prevValue = previous?.value ?? newIndex ?? this.defaultActiveStepIndex();
16568
+ if (previous?.source === undefined) {
16569
+ this.activeStepIndexChange.emit(prevValue);
16570
+ return prevValue;
16571
+ }
16572
+ if (this.isStepOutOfScope(newIndex ?? -1)) {
16573
+ this.activeStepIndexChange.emit(prevValue);
16574
+ return prevValue;
16575
+ }
16576
+ if (!this.isStepValid(prevValue)) {
16577
+ this.activeStepIndexChange.emit(prevValue);
16578
+ return prevValue;
16579
+ }
16580
+ return newIndex ?? this.defaultActiveStepIndex();
16581
+ }
16582
+ });
16583
+ #activeStepIdxEffect = effect(() => {
16584
+ const activeStepIndex = this.activeStepIndex() ?? untracked(this.defaultActiveStepIndex);
16585
+ if (this.#focusKeyManagerInit()) {
16586
+ const focusManager = this.#focusKeyManager;
16587
+ if (this.linear() && activeStepIndex > (focusManager?.activeItemIndex ?? -1)) {
16588
+ focusManager?.setNextItemActive();
16589
+ }
16590
+ else if (focusManager?.activeItemIndex !== activeStepIndex) {
16591
+ focusManager?.setActiveItem(activeStepIndex);
16592
+ }
16593
+ else {
16594
+ focusManager?.updateActiveItem(activeStepIndex);
16595
+ }
16596
+ }
16597
+ });
16598
+ /**
16599
+ * Initial active step index
16600
+ * @return number
16601
+ * @default 0
16602
+ */
16603
+ defaultActiveStepIndex = input(0, { transform: numberAttribute });
16604
+ /**
16605
+ * Unique identifier for the Stepper component.
16606
+ * If not provided, a default ID will be generated.
16607
+ * @return string
16608
+ * @default 'stepper-<nextId>'
16609
+ */
16610
+ idInput = input(undefined, { alias: 'id' });
16611
+ /**
16612
+ * Unique identifier for the Stepper component.
16613
+ * If `idInput` is not provided, a default ID will be generated.
16614
+ * @return string
16615
+ */
16616
+ id = computed(() => this.idInput() ?? `stepper-${nextId$1++}`);
16617
+ /**
16618
+ * Layout orientation
16619
+ * - `'horizontal'`: Step indicators and content are placed horizontally (default).
16620
+ * - `'vertical'`: Step indicators and content are stacked vertically.
16621
+ *
16622
+ * Choose `'vertical'` layout for mobile or narrow designs.
16623
+ * @return 'horizontal' | 'vertical'
16624
+ * @default 'horizontal'
16625
+ */
16626
+ layout = input('horizontal');
16627
+ /**
16628
+ * Enforces linear progression (cannot skip steps).
16629
+ * - `true`: Users must complete steps sequentially.
16630
+ * - `false`: Users can jump freely between steps.
16631
+ * @return boolean
16632
+ * @default true
16633
+ */
16634
+ linear = input(true, { transform: booleanAttribute });
16635
+ /**
16636
+ * Layout of the step indicator (icon and label)
16637
+ * - `'vertical'` – Places the label below the indicator icon.
16638
+ * - `'horizontal'` – Places the label beside the indicator icon (default).
16639
+ * This prop has no effect when `layout="vertical"` is used.
16640
+ * @return 'vertical' | 'horizontal'
16641
+ * @default 'horizontal'
16642
+ */
16643
+ stepButtonLayout = input('horizontal');
16644
+ /**
16645
+ * Enforces validation of steps.
16646
+ * Each step must be valid before advancing to the next.
16647
+ * @return boolean
16648
+ * @default false
16649
+ */
16650
+ validation = input(false, { transform: booleanAttribute });
16651
+ /**
16652
+ * Event fired when the user completes the last step of the Form Wizard.
16653
+ * Use this to trigger a submit action or redirect after the final step.
16654
+ * @return boolean
16655
+ */
16656
+ finished = output();
16657
+ /**
16658
+ * Event fired when the user triggers the reset() action.
16659
+ * Use this to reset or clear related form data.
16660
+ * @return void
16661
+ */
16662
+ // eslint-disable-next-line @angular-eslint/no-output-on-prefix
16663
+ onReset = output();
16664
+ /**
16665
+ * Indicates if the Stepper is currently resetting.
16666
+ * This is set to `true` when the reset() method is called.
16667
+ * @return boolean
16668
+ */
16669
+ resetting = signal(false);
16670
+ /**
16671
+ * Event fired when the active step changes in the Angular Stepper component.
16672
+ * @return number
16673
+ */
16674
+ activeStepIndexChange = output();
16675
+ /**
16676
+ * Event fired after a validation check completes for a specific step in the Form Wizard.
16677
+ * Receives an object with the step index and the validation result (`true` or `false`).
16678
+ * Useful for custom validation handling across multistep forms.
16679
+ * todo - implement validation logic
16680
+ */
16681
+ // readonly stepValidationComplete = output<StepperStepValidationResult>();
16682
+ stepsContent = contentChildren(StepperStepComponent, { descendants: true });
16683
+ steps = computed(() => {
16684
+ const stepsContent = this.stepsContent();
16685
+ return stepsContent.map((step, index) => {
16686
+ const { disabled, editable, id, indicator, indicatorCtx, label, labelCtx, optional, templateRef, valid } = {
16687
+ ...step
16688
+ };
16689
+ return {
16690
+ templateRef: templateRef(),
16691
+ disabled: disabled(),
16692
+ editable: editable(),
16693
+ id: `${id() ?? this.id()}-step-${index}`,
16694
+ indicator: indicator() ?? index + 1,
16695
+ indicatorRef: indicator() instanceof TemplateRef ? indicator() : undefined,
16696
+ indicatorCtx: indicatorCtx() ?? {},
16697
+ label: label(),
16698
+ labelRef: label() instanceof TemplateRef ? label() : undefined,
16699
+ labelCtx: labelCtx() ?? {},
16700
+ optional: optional(),
16701
+ valid: valid()
16702
+ };
16703
+ });
16704
+ });
16705
+ /**
16706
+ * Returns the number of steps in the Stepper.
16707
+ * This is useful for determining how many steps are available.
16708
+ * @return number
16709
+ */
16710
+ stepsCount = computed(() => {
16711
+ return this.steps().length;
16712
+ });
16713
+ /**
16714
+ * Indicates if the Stepper is currently finishing.
16715
+ * This is set to `true` when the finish() method is called and all steps are valid.
16716
+ * @return boolean
16717
+ */
16718
+ finishing = signal(false);
16719
+ #isFinishedEffect = effect(() => {
16720
+ this.finished.emit(this.finishing());
16721
+ });
16722
+ #focusKeyManager;
16723
+ #focusKeyChange$;
16724
+ #focusKeyManagerInit = signal(false);
16725
+ stepButtons = viewChildren(StepButtonDirective);
16726
+ #stepButtonEffect = effect(() => {
16727
+ if (untracked(this.#focusKeyManagerInit)) {
16728
+ return;
16729
+ }
16730
+ const layout = this.layout();
16731
+ const stepButtons = this.stepButtons();
16732
+ if (stepButtons.length === 0) {
16733
+ return;
16734
+ }
16735
+ const isVertical = layout === 'vertical';
16736
+ this.#focusKeyManager = new FocusKeyManager(stepButtons)
16737
+ .skipPredicate((item) => item.disabled)
16738
+ .withHomeAndEnd(!this.linear())
16739
+ .withHorizontalOrientation(isVertical ? null : 'ltr')
16740
+ .withVerticalOrientation(isVertical);
16741
+ untracked(() => {
16742
+ this.#focusKeyChange$ = this.#focusKeyManager.change.pipe(distinctUntilChanged((previous, current) => {
16743
+ if (this.resetting()) {
16744
+ this.resetting.set(false);
16745
+ this.onReset.emit();
16746
+ return false; // Resetting should always trigger a change
16747
+ }
16748
+ if (this.isStepOutOfScope(current)) {
16749
+ return true;
16750
+ }
16751
+ if (this.isStepDisabled(current)) {
16752
+ return true;
16753
+ }
16754
+ if (current > previous && this.linear() && !this.validation()) {
16755
+ const nextIndex = this.findNextStepIndex(previous);
16756
+ if (current !== nextIndex) {
16757
+ this.#focusKeyManager.setActiveItem(previous);
16758
+ return true;
16759
+ }
16760
+ }
16761
+ if (current > previous && this.linear() && !this.previousStepsValid(current) && this.validation()) {
16762
+ this.#focusKeyManager.setActiveItem(previous);
16763
+ return true;
16764
+ }
16765
+ if (current > previous && !this.isStepValid(previous)) {
16766
+ this.activeStepIndex.set(previous);
16767
+ this.#focusKeyManager.setActiveItem(previous);
16768
+ return true;
16769
+ }
16770
+ return false;
16771
+ }), tap((value) => {
16772
+ this.activeStepIndex.set(value);
16773
+ this.activeStepIndexChange.emit(value);
16774
+ }), takeUntilDestroyed(this.#destroyRef));
16775
+ this.#focusKeyChange$.subscribe();
16776
+ this.#focusKeyManagerInit.set(!!this.#focusKeyManager);
16777
+ this.activeStepIndex.update((prevIdx) => {
16778
+ return prevIdx ?? this.defaultActiveStepIndex();
16779
+ });
16780
+ // this.#focusKeyManager?.setFirstItemActive();
16781
+ });
16782
+ });
16783
+ hostClasses = computed(() => {
16784
+ return {
16785
+ stepper: true,
16786
+ 'stepper-vertical': this.layout() === 'vertical'
16787
+ };
16788
+ });
16789
+ /**
16790
+ * Finish action. Attempts to finish the Stepper.
16791
+ */
16792
+ finish() {
16793
+ if (this.allStepsValid()) {
16794
+ this.finishing.set(true);
16795
+ }
16796
+ }
16797
+ /**
16798
+ * Next action. Moves to the next step in the Stepper.
16799
+ * If already on the last step, it will attempt to finish().
16800
+ */
16801
+ next() {
16802
+ const activeStepIndex = this.activeStepIndex();
16803
+ const stepsCount = this.stepsCount();
16804
+ if (activeStepIndex < stepsCount - 1) {
16805
+ this.#focusKeyManager?.setNextItemActive();
16806
+ }
16807
+ else {
16808
+ this.finish(); // Attempt finish if already on last step
16809
+ }
16810
+ }
16811
+ /**
16812
+ * Previous action. Moves to the previous step in the Stepper.
16813
+ * If already on the first step, it will do nothing.
16814
+ */
16815
+ prev() {
16816
+ if (this.activeStepIndex() > 0) {
16817
+ this.#focusKeyManager?.setPreviousItemActive();
16818
+ }
16819
+ }
16820
+ /**
16821
+ * Reset action. Resets the Stepper to its initial state.
16822
+ * This will reset the active step index and emit the onReset event.
16823
+ */
16824
+ reset() {
16825
+ this.finishing.set(false);
16826
+ this.resetting.set(true);
16827
+ setTimeout(() => {
16828
+ this.#focusKeyManager.setFirstItemActive();
16829
+ });
16830
+ }
16831
+ handleStepClick($event, idx) {
16832
+ this.#focusKeyManager?.setActiveItem(idx);
16833
+ }
16834
+ handleKeyDown($event) {
16835
+ if (['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown', 'Home', 'End'].includes($event.key)) {
16836
+ this.#focusKeyManager?.onKeydown($event);
16837
+ return;
16838
+ }
16839
+ if (['Tab'].includes($event.key)) {
16840
+ this.#focusKeyManager?.tabOut.next();
16841
+ }
16842
+ return;
16843
+ }
16844
+ isStepDisabled(index) {
16845
+ return this.stepsContent()[index]?.disabled() ?? false;
16846
+ }
16847
+ isStepOutOfScope(index) {
16848
+ return index < 0 || index > this.stepsCount() - 1;
16849
+ }
16850
+ isStepValid(index) {
16851
+ if (!this.validation()) {
16852
+ return true;
16853
+ }
16854
+ return this.stepsContent()[index]?.valid() ?? true;
16855
+ }
16856
+ findNextStepIndex(startIndex) {
16857
+ const nextStepIndex = this.stepsContent().findIndex((step, index) => index > startIndex && !step.disabled() //&& step.valid() !== false
16858
+ );
16859
+ return nextStepIndex > startIndex ? nextStepIndex : startIndex;
16860
+ }
16861
+ previousStepsValid(index) {
16862
+ return !this.stepsContent()
16863
+ .slice(0, index)
16864
+ .find((step) => step.valid() === false && !step.disabled());
16865
+ }
16866
+ allStepsValid = computed(() => {
16867
+ if (!this.validation()) {
16868
+ return true;
16869
+ }
16870
+ return !this.stepsContent().find((step) => step.valid() === false && !step.disabled());
16871
+ });
16872
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: StepperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
16873
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.3", type: StepperComponent, isStandalone: true, selector: "c-stepper", inputs: { activeStepIndexInput: { classPropertyName: "activeStepIndexInput", publicName: "activeStepIndex", isSignal: true, isRequired: false, transformFunction: null }, defaultActiveStepIndex: { classPropertyName: "defaultActiveStepIndex", publicName: "defaultActiveStepIndex", isSignal: true, isRequired: false, transformFunction: null }, idInput: { classPropertyName: "idInput", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, layout: { classPropertyName: "layout", publicName: "layout", isSignal: true, isRequired: false, transformFunction: null }, linear: { classPropertyName: "linear", publicName: "linear", isSignal: true, isRequired: false, transformFunction: null }, stepButtonLayout: { classPropertyName: "stepButtonLayout", publicName: "stepButtonLayout", isSignal: true, isRequired: false, transformFunction: null }, validation: { classPropertyName: "validation", publicName: "validation", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { finished: "finished", onReset: "onReset", activeStepIndexChange: "activeStepIndexChange" }, host: { properties: { "class": "hostClasses()", "id": "id()" }, classAttribute: "stepper" }, queries: [{ propertyName: "stepsContent", predicate: StepperStepComponent, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "stepButtons", predicate: StepButtonDirective, descendants: true, isSignal: true }], exportAs: ["cStepper"], ngImport: i0, template: "@let isVertical = layout() === 'vertical';\n@let activeIdx = activeStepIndex();\n@let finished = finishing();\n<ol [attr.aria-orientation]=\"layout()\" class=\"stepper-steps\" role=\"tablist\">\n @for (step of steps(); track step.id; let idx = $index, last = $last) {\n @let isActive = !finished && activeIdx === idx;\n @let isComplete = finished || idx < activeIdx;\n @let isDisabled = step.disabled || finished || (linear() && idx > activeIdx + 1 && step.disabled);\n @let stepId = step.id;\n @let panelId = `${step.id}-panel`;\n <li [class]=\"['stepper-step', stepButtonLayout()]\" role=\"presentation\">\n <button\n #stepButton\n cStepButton\n [attr.inert]=\"step.disabled || null\"\n [attr.aria-selected]=\"isActive || null\"\n [attr.aria-controls]=\"panelId\"\n [tabindex]=\"isActive ? 0 : -1\"\n [disabled]=\"isDisabled\"\n [ngClass]=\"{ 'stepper-step-button': true, active: isActive, complete: isComplete }\"\n id=\"{{ stepId }}\"\n type=\"button\"\n role=\"tab\"\n (click)=\"step.disabled || handleStepClick($event, idx)\"\n (keydown)=\"handleKeyDown($event)\"\n >\n <span class=\"stepper-step-indicator\">\n @if (isComplete) {\n <span class=\"stepper-step-indicator-icon\"></span>\n } @else {\n <span class=\"stepper-step-indicator-text\">\n <ng-container\n [ngTemplateOutlet]=\"step.indicatorRef || indicatorTpl\"\n [ngTemplateOutletContext]=\"step.indicatorCtx\"\n />\n <ng-template #indicatorTpl>{{ step.indicator }}</ng-template>\n </span>\n }\n </span>\n <span class=\"stepper-step-label\">\n <ng-container [ngTemplateOutlet]=\"step.labelRef || labelTpl\" [ngTemplateOutletContext]=\"step.labelCtx\" />\n <ng-template #labelTpl>{{ step.label }}</ng-template>\n </span>\n </button>\n @if (!last) {\n <div class=\"stepper-step-connector\"></div>\n }\n @if (isVertical) {\n <div\n class=\"stepper-step-content\"\n cCollapse\n [visible]=\"!resetting() && isActive\"\n [attr.inert]=\"isActive ? null : true\"\n id=\"{{ panelId }}\"\n role=\"tabpanel\"\n [attr.aria-hidden]=\"!isActive || null\"\n [attr.aria-labelledby]=\"stepId\"\n aria-live=\"polite\"\n >\n <ng-container *ngTemplateOutlet=\"step.templateRef ?? emptyTpl\" />\n </div>\n }\n </li>\n }\n</ol>\n@if (!isVertical) {\n <div class=\"stepper-content\">\n @for (step of steps(); track step.id; let idx = $index) {\n @let isActive = !finished && activeIdx === idx;\n @let stepId = step.id;\n @let panelId = `${step.id}-panel`;\n <div\n [attr.inert]=\"isActive ? null : true\"\n [ngClass]=\"{ 'stepper-pane': true, show: isActive, active: isActive }\"\n id=\"{{ panelId }}\"\n role=\"tabpanel\"\n [attr.aria-hidden]=\"!isActive || null\"\n [attr.aria-labelledby]=\"stepId\"\n aria-live=\"polite\"\n >\n <ng-container *ngTemplateOutlet=\"step.templateRef ?? emptyTpl\" />\n </div>\n }\n </div>\n}\n\n<ng-template #contentTpl>\n <ng-content />\n</ng-template>\n<ng-template #emptyTpl />\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: StepButtonDirective, selector: "button[cStepButton]", exportAs: ["cStepButton"] }, { kind: "directive", type: CollapseDirective, selector: "[cCollapse]", inputs: ["animate", "horizontal", "visible", "navbar", "duration", "transition"], outputs: ["visibleChange", "collapseChange"], exportAs: ["cCollapse"] }] });
16874
+ }
16875
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: StepperComponent, decorators: [{
16876
+ type: Component,
16877
+ args: [{ selector: 'c-stepper', exportAs: 'cStepper', imports: [NgTemplateOutlet, NgClass, StepButtonDirective, CollapseDirective], host: {
16878
+ class: 'stepper',
16879
+ '[class]': 'hostClasses()',
16880
+ '[id]': 'id()'
16881
+ }, template: "@let isVertical = layout() === 'vertical';\n@let activeIdx = activeStepIndex();\n@let finished = finishing();\n<ol [attr.aria-orientation]=\"layout()\" class=\"stepper-steps\" role=\"tablist\">\n @for (step of steps(); track step.id; let idx = $index, last = $last) {\n @let isActive = !finished && activeIdx === idx;\n @let isComplete = finished || idx < activeIdx;\n @let isDisabled = step.disabled || finished || (linear() && idx > activeIdx + 1 && step.disabled);\n @let stepId = step.id;\n @let panelId = `${step.id}-panel`;\n <li [class]=\"['stepper-step', stepButtonLayout()]\" role=\"presentation\">\n <button\n #stepButton\n cStepButton\n [attr.inert]=\"step.disabled || null\"\n [attr.aria-selected]=\"isActive || null\"\n [attr.aria-controls]=\"panelId\"\n [tabindex]=\"isActive ? 0 : -1\"\n [disabled]=\"isDisabled\"\n [ngClass]=\"{ 'stepper-step-button': true, active: isActive, complete: isComplete }\"\n id=\"{{ stepId }}\"\n type=\"button\"\n role=\"tab\"\n (click)=\"step.disabled || handleStepClick($event, idx)\"\n (keydown)=\"handleKeyDown($event)\"\n >\n <span class=\"stepper-step-indicator\">\n @if (isComplete) {\n <span class=\"stepper-step-indicator-icon\"></span>\n } @else {\n <span class=\"stepper-step-indicator-text\">\n <ng-container\n [ngTemplateOutlet]=\"step.indicatorRef || indicatorTpl\"\n [ngTemplateOutletContext]=\"step.indicatorCtx\"\n />\n <ng-template #indicatorTpl>{{ step.indicator }}</ng-template>\n </span>\n }\n </span>\n <span class=\"stepper-step-label\">\n <ng-container [ngTemplateOutlet]=\"step.labelRef || labelTpl\" [ngTemplateOutletContext]=\"step.labelCtx\" />\n <ng-template #labelTpl>{{ step.label }}</ng-template>\n </span>\n </button>\n @if (!last) {\n <div class=\"stepper-step-connector\"></div>\n }\n @if (isVertical) {\n <div\n class=\"stepper-step-content\"\n cCollapse\n [visible]=\"!resetting() && isActive\"\n [attr.inert]=\"isActive ? null : true\"\n id=\"{{ panelId }}\"\n role=\"tabpanel\"\n [attr.aria-hidden]=\"!isActive || null\"\n [attr.aria-labelledby]=\"stepId\"\n aria-live=\"polite\"\n >\n <ng-container *ngTemplateOutlet=\"step.templateRef ?? emptyTpl\" />\n </div>\n }\n </li>\n }\n</ol>\n@if (!isVertical) {\n <div class=\"stepper-content\">\n @for (step of steps(); track step.id; let idx = $index) {\n @let isActive = !finished && activeIdx === idx;\n @let stepId = step.id;\n @let panelId = `${step.id}-panel`;\n <div\n [attr.inert]=\"isActive ? null : true\"\n [ngClass]=\"{ 'stepper-pane': true, show: isActive, active: isActive }\"\n id=\"{{ panelId }}\"\n role=\"tabpanel\"\n [attr.aria-hidden]=\"!isActive || null\"\n [attr.aria-labelledby]=\"stepId\"\n aria-live=\"polite\"\n >\n <ng-container *ngTemplateOutlet=\"step.templateRef ?? emptyTpl\" />\n </div>\n }\n </div>\n}\n\n<ng-template #contentTpl>\n <ng-content />\n</ng-template>\n<ng-template #emptyTpl />\n", styles: [":host{display:block}\n"] }]
16882
+ }] });
16883
+
16884
+ class StepperModule {
16885
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: StepperModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16886
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.3", ngImport: i0, type: StepperModule, imports: [StepperComponent, StepperStepComponent, StepButtonDirective], exports: [StepperComponent, StepperStepComponent, StepButtonDirective] });
16887
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: StepperModule });
16888
+ }
16889
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: StepperModule, decorators: [{
16890
+ type: NgModule,
16891
+ args: [{
16892
+ imports: [StepperComponent, StepperStepComponent, StepButtonDirective],
16893
+ exports: [StepperComponent, StepperStepComponent, StepButtonDirective]
16894
+ }]
16895
+ }] });
16896
+
16424
16897
  class TabService {
16425
16898
  activeTabPaneIdx = new Subject();
16426
16899
  activeTabPaneIdx$ = this.activeTabPaneIdx.asObservable();
@@ -17879,5 +18352,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImpor
17879
18352
  * Generated bundle index. Do not edit.
17880
18353
  */
17881
18354
 
17882
- export { AccordionButtonDirective, AccordionComponent, AccordionItemComponent, AccordionModule, AlertComponent, AlertHeadingDirective, AlertLinkDirective, AlertModule, AlignDirective, 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, PageItemComponent, PageItemDirective, PageLinkDirective, PaginationComponent, PaginationModule, PlaceholderAnimationDirective, PlaceholderDirective, PlaceholderModule, PopoverComponent, PopoverDirective, PopoverModule, ProgressBarComponent, ProgressBarDirective, ProgressComponent, ProgressModule, ProgressStackedComponent, RangeSliderComponent, RangeSliderModule, RatingComponent, RatingModule, RoundedDirective, RowComponent, RowDirective, RtlService, ShadowOnScrollDirective, SharedModule, SidebarBrandComponent, SidebarComponent, SidebarFooterComponent, SidebarHeaderComponent, SidebarModule, SidebarNavComponent, SidebarNavHelper, SidebarService, SidebarToggleDirective, SidebarTogglerDirective, SmartPaginationComponent, SmartPaginationModule, SmartTableComponent, SmartTableFilterComponent, SmartTableModule, SpinnerComponent, SpinnerModule, 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, ToastHeaderComponent, ToastModule, ToasterComponent, ToasterHostDirective, ToasterPlacement, ToasterService, TooltipComponent, TooltipDirective, TooltipModule, UIDService, UtilitiesModule, WidgetModule, WidgetStatAComponent, WidgetStatBComponent, WidgetStatCComponent, WidgetStatDComponent, WidgetStatEComponent, WidgetStatFComponent };
18355
+ export { AccordionButtonDirective, AccordionComponent, AccordionItemComponent, AccordionModule, AlertComponent, AlertHeadingDirective, AlertLinkDirective, AlertModule, AlignDirective, 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, PageItemComponent, PageItemDirective, PageLinkDirective, PaginationComponent, PaginationModule, PlaceholderAnimationDirective, PlaceholderDirective, PlaceholderModule, PopoverComponent, PopoverDirective, PopoverModule, ProgressBarComponent, ProgressBarDirective, ProgressComponent, ProgressModule, ProgressStackedComponent, RangeSliderComponent, RangeSliderModule, RatingComponent, RatingModule, RoundedDirective, RowComponent, RowDirective, RtlService, 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, ToastHeaderComponent, ToastModule, ToasterComponent, ToasterHostDirective, ToasterPlacement, ToasterService, TooltipComponent, TooltipDirective, TooltipModule, UIDService, UtilitiesModule, WidgetModule, WidgetStatAComponent, WidgetStatBComponent, WidgetStatCComponent, WidgetStatDComponent, WidgetStatEComponent, WidgetStatFComponent };
17883
18356
  //# sourceMappingURL=coreui-angular-pro.mjs.map