@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.
- package/fesm2022/coreui-angular-pro.mjs +481 -8
- package/fesm2022/coreui-angular-pro.mjs.map +1 -1
- package/index.d.ts +271 -3
- package/package.json +2 -2
|
@@ -413,7 +413,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImpor
|
|
|
413
413
|
}]
|
|
414
414
|
}] });
|
|
415
415
|
|
|
416
|
-
let nextId$
|
|
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$
|
|
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$
|
|
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$
|
|
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
|
-
|
|
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]=\"
|
|
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]=\"
|
|
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
|