@angular/cdk 22.0.0-next.3 → 22.0.0-next.5
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/_a11y-module-chunk.mjs +23 -25
- package/fesm2022/_a11y-module-chunk.mjs.map +1 -1
- package/fesm2022/_breakpoints-observer-chunk.mjs +7 -9
- package/fesm2022/_breakpoints-observer-chunk.mjs.map +1 -1
- package/fesm2022/_directionality-chunk.mjs +3 -3
- package/fesm2022/_directionality-chunk.mjs.map +1 -1
- package/fesm2022/_focus-monitor-chunk.mjs +9 -11
- package/fesm2022/_focus-monitor-chunk.mjs.map +1 -1
- package/fesm2022/_id-generator-chunk.mjs +3 -3
- package/fesm2022/_overlay-module-chunk.mjs +41 -53
- package/fesm2022/_overlay-module-chunk.mjs.map +1 -1
- package/fesm2022/_platform-chunk.mjs +4 -6
- package/fesm2022/_platform-chunk.mjs.map +1 -1
- package/fesm2022/_style-loader-chunk.mjs +3 -3
- package/fesm2022/_unique-selection-dispatcher-chunk.mjs +3 -3
- package/fesm2022/a11y.mjs +9 -9
- package/fesm2022/a11y.mjs.map +1 -1
- package/fesm2022/accordion.mjs +10 -12
- package/fesm2022/accordion.mjs.map +1 -1
- package/fesm2022/bidi.mjs +7 -7
- package/fesm2022/cdk.mjs +1 -1
- package/fesm2022/cdk.mjs.map +1 -1
- package/fesm2022/clipboard.mjs +11 -13
- package/fesm2022/clipboard.mjs.map +1 -1
- package/fesm2022/dialog.mjs +11 -13
- package/fesm2022/dialog.mjs.map +1 -1
- package/fesm2022/drag-drop.mjs +33 -37
- package/fesm2022/drag-drop.mjs.map +1 -1
- package/fesm2022/layout.mjs +4 -4
- package/fesm2022/listbox.mjs +12 -12
- package/fesm2022/menu.mjs +49 -49
- package/fesm2022/observers-private.mjs +3 -3
- package/fesm2022/observers.mjs +14 -18
- package/fesm2022/observers.mjs.map +1 -1
- package/fesm2022/overlay.mjs +6 -10
- package/fesm2022/overlay.mjs.map +1 -1
- package/fesm2022/platform.mjs +4 -4
- package/fesm2022/portal.mjs +11 -15
- package/fesm2022/portal.mjs.map +1 -1
- package/fesm2022/private.mjs +3 -3
- package/fesm2022/scrolling.mjs +41 -53
- package/fesm2022/scrolling.mjs.map +1 -1
- package/fesm2022/stepper.mjs +24 -34
- package/fesm2022/stepper.mjs.map +1 -1
- package/fesm2022/table.mjs +83 -107
- package/fesm2022/table.mjs.map +1 -1
- package/fesm2022/text-field.mjs +17 -21
- package/fesm2022/text-field.mjs.map +1 -1
- package/fesm2022/tree.mjs +30 -42
- package/fesm2022/tree.mjs.map +1 -1
- package/package.json +1 -1
- package/schematics/ng-add/index.js +1 -1
- package/types/_a11y-module-chunk.d.ts +4 -5
- package/types/_bidi-module-chunk.d.ts +1 -1
- package/types/_focus-monitor-chunk.d.ts +1 -2
- package/types/_overlay-module-chunk.d.ts +1 -4
- package/types/_platform-chunk.d.ts +0 -2
- package/types/_portal-directives-chunk.d.ts +1 -2
- package/types/_scrolling-module-chunk.d.ts +3 -7
- package/types/a11y.d.ts +4 -4
- package/types/accordion.d.ts +0 -1
- package/types/clipboard.d.ts +1 -2
- package/types/dialog.d.ts +1 -2
- package/types/drag-drop.d.ts +6 -8
- package/types/layout.d.ts +1 -2
- package/types/observers.d.ts +0 -2
- package/types/overlay.d.ts +0 -4
- package/types/scrolling.d.ts +1 -1
- package/types/stepper.d.ts +1 -6
- package/types/table.d.ts +10 -19
- package/types/text-field.d.ts +1 -3
- package/types/tree.d.ts +2 -7
package/fesm2022/stepper.mjs
CHANGED
|
@@ -15,13 +15,12 @@ import './_typeahead-chunk.mjs';
|
|
|
15
15
|
|
|
16
16
|
class CdkStepHeader {
|
|
17
17
|
_elementRef = inject(ElementRef);
|
|
18
|
-
constructor() {}
|
|
19
18
|
focus() {
|
|
20
19
|
this._elementRef.nativeElement.focus();
|
|
21
20
|
}
|
|
22
21
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
23
22
|
minVersion: "12.0.0",
|
|
24
|
-
version: "22.0.0-next.
|
|
23
|
+
version: "22.0.0-next.6",
|
|
25
24
|
ngImport: i0,
|
|
26
25
|
type: CdkStepHeader,
|
|
27
26
|
deps: [],
|
|
@@ -29,7 +28,7 @@ class CdkStepHeader {
|
|
|
29
28
|
});
|
|
30
29
|
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
31
30
|
minVersion: "14.0.0",
|
|
32
|
-
version: "22.0.0-next.
|
|
31
|
+
version: "22.0.0-next.6",
|
|
33
32
|
type: CdkStepHeader,
|
|
34
33
|
isStandalone: true,
|
|
35
34
|
selector: "[cdkStepHeader]",
|
|
@@ -43,7 +42,7 @@ class CdkStepHeader {
|
|
|
43
42
|
}
|
|
44
43
|
i0.ɵɵngDeclareClassMetadata({
|
|
45
44
|
minVersion: "12.0.0",
|
|
46
|
-
version: "22.0.0-next.
|
|
45
|
+
version: "22.0.0-next.6",
|
|
47
46
|
ngImport: i0,
|
|
48
47
|
type: CdkStepHeader,
|
|
49
48
|
decorators: [{
|
|
@@ -54,16 +53,14 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
54
53
|
'role': 'tab'
|
|
55
54
|
}
|
|
56
55
|
}]
|
|
57
|
-
}]
|
|
58
|
-
ctorParameters: () => []
|
|
56
|
+
}]
|
|
59
57
|
});
|
|
60
58
|
|
|
61
59
|
class CdkStepLabel {
|
|
62
60
|
template = inject(TemplateRef);
|
|
63
|
-
constructor() {}
|
|
64
61
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
65
62
|
minVersion: "12.0.0",
|
|
66
|
-
version: "22.0.0-next.
|
|
63
|
+
version: "22.0.0-next.6",
|
|
67
64
|
ngImport: i0,
|
|
68
65
|
type: CdkStepLabel,
|
|
69
66
|
deps: [],
|
|
@@ -71,7 +68,7 @@ class CdkStepLabel {
|
|
|
71
68
|
});
|
|
72
69
|
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
73
70
|
minVersion: "14.0.0",
|
|
74
|
-
version: "22.0.0-next.
|
|
71
|
+
version: "22.0.0-next.6",
|
|
75
72
|
type: CdkStepLabel,
|
|
76
73
|
isStandalone: true,
|
|
77
74
|
selector: "[cdkStepLabel]",
|
|
@@ -80,7 +77,7 @@ class CdkStepLabel {
|
|
|
80
77
|
}
|
|
81
78
|
i0.ɵɵngDeclareClassMetadata({
|
|
82
79
|
minVersion: "12.0.0",
|
|
83
|
-
version: "22.0.0-next.
|
|
80
|
+
version: "22.0.0-next.6",
|
|
84
81
|
ngImport: i0,
|
|
85
82
|
type: CdkStepLabel,
|
|
86
83
|
decorators: [{
|
|
@@ -88,8 +85,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
88
85
|
args: [{
|
|
89
86
|
selector: '[cdkStepLabel]'
|
|
90
87
|
}]
|
|
91
|
-
}]
|
|
92
|
-
ctorParameters: () => []
|
|
88
|
+
}]
|
|
93
89
|
});
|
|
94
90
|
|
|
95
91
|
class StepperSelectionEvent {
|
|
@@ -247,7 +243,7 @@ class CdkStep {
|
|
|
247
243
|
}
|
|
248
244
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
249
245
|
minVersion: "12.0.0",
|
|
250
|
-
version: "22.0.0-next.
|
|
246
|
+
version: "22.0.0-next.6",
|
|
251
247
|
ngImport: i0,
|
|
252
248
|
type: CdkStep,
|
|
253
249
|
deps: [],
|
|
@@ -255,7 +251,7 @@ class CdkStep {
|
|
|
255
251
|
});
|
|
256
252
|
static ɵcmp = i0.ɵɵngDeclareComponent({
|
|
257
253
|
minVersion: "16.1.0",
|
|
258
|
-
version: "22.0.0-next.
|
|
254
|
+
version: "22.0.0-next.6",
|
|
259
255
|
type: CdkStep,
|
|
260
256
|
isStandalone: true,
|
|
261
257
|
selector: "cdk-step",
|
|
@@ -302,7 +298,7 @@ class CdkStep {
|
|
|
302
298
|
}
|
|
303
299
|
i0.ɵɵngDeclareClassMetadata({
|
|
304
300
|
minVersion: "12.0.0",
|
|
305
|
-
version: "22.0.0-next.
|
|
301
|
+
version: "22.0.0-next.6",
|
|
306
302
|
ngImport: i0,
|
|
307
303
|
type: CdkStep,
|
|
308
304
|
decorators: [{
|
|
@@ -444,7 +440,6 @@ class CdkStepper {
|
|
|
444
440
|
}
|
|
445
441
|
}
|
|
446
442
|
_orientation = 'horizontal';
|
|
447
|
-
constructor() {}
|
|
448
443
|
ngAfterContentInit() {
|
|
449
444
|
this._steps.changes.pipe(startWith(this._steps), takeUntil(this._destroyed)).subscribe(steps => {
|
|
450
445
|
this.steps.reset(steps.filter(step => step._stepper === this));
|
|
@@ -568,7 +563,7 @@ class CdkStepper {
|
|
|
568
563
|
}
|
|
569
564
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
570
565
|
minVersion: "12.0.0",
|
|
571
|
-
version: "22.0.0-next.
|
|
566
|
+
version: "22.0.0-next.6",
|
|
572
567
|
ngImport: i0,
|
|
573
568
|
type: CdkStepper,
|
|
574
569
|
deps: [],
|
|
@@ -576,7 +571,7 @@ class CdkStepper {
|
|
|
576
571
|
});
|
|
577
572
|
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
578
573
|
minVersion: "16.1.0",
|
|
579
|
-
version: "22.0.0-next.
|
|
574
|
+
version: "22.0.0-next.6",
|
|
580
575
|
type: CdkStepper,
|
|
581
576
|
isStandalone: true,
|
|
582
577
|
selector: "[cdkStepper]",
|
|
@@ -605,7 +600,7 @@ class CdkStepper {
|
|
|
605
600
|
}
|
|
606
601
|
i0.ɵɵngDeclareClassMetadata({
|
|
607
602
|
minVersion: "12.0.0",
|
|
608
|
-
version: "22.0.0-next.
|
|
603
|
+
version: "22.0.0-next.6",
|
|
609
604
|
ngImport: i0,
|
|
610
605
|
type: CdkStepper,
|
|
611
606
|
decorators: [{
|
|
@@ -615,7 +610,6 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
615
610
|
exportAs: 'cdkStepper'
|
|
616
611
|
}]
|
|
617
612
|
}],
|
|
618
|
-
ctorParameters: () => [],
|
|
619
613
|
propDecorators: {
|
|
620
614
|
_steps: [{
|
|
621
615
|
type: ContentChildren,
|
|
@@ -659,10 +653,9 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
659
653
|
class CdkStepperNext {
|
|
660
654
|
_stepper = inject(CdkStepper);
|
|
661
655
|
type = 'submit';
|
|
662
|
-
constructor() {}
|
|
663
656
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
664
657
|
minVersion: "12.0.0",
|
|
665
|
-
version: "22.0.0-next.
|
|
658
|
+
version: "22.0.0-next.6",
|
|
666
659
|
ngImport: i0,
|
|
667
660
|
type: CdkStepperNext,
|
|
668
661
|
deps: [],
|
|
@@ -670,7 +663,7 @@ class CdkStepperNext {
|
|
|
670
663
|
});
|
|
671
664
|
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
672
665
|
minVersion: "14.0.0",
|
|
673
|
-
version: "22.0.0-next.
|
|
666
|
+
version: "22.0.0-next.6",
|
|
674
667
|
type: CdkStepperNext,
|
|
675
668
|
isStandalone: true,
|
|
676
669
|
selector: "button[cdkStepperNext]",
|
|
@@ -690,7 +683,7 @@ class CdkStepperNext {
|
|
|
690
683
|
}
|
|
691
684
|
i0.ɵɵngDeclareClassMetadata({
|
|
692
685
|
minVersion: "12.0.0",
|
|
693
|
-
version: "22.0.0-next.
|
|
686
|
+
version: "22.0.0-next.6",
|
|
694
687
|
ngImport: i0,
|
|
695
688
|
type: CdkStepperNext,
|
|
696
689
|
decorators: [{
|
|
@@ -703,7 +696,6 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
703
696
|
}
|
|
704
697
|
}]
|
|
705
698
|
}],
|
|
706
|
-
ctorParameters: () => [],
|
|
707
699
|
propDecorators: {
|
|
708
700
|
type: [{
|
|
709
701
|
type: Input
|
|
@@ -713,10 +705,9 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
713
705
|
class CdkStepperPrevious {
|
|
714
706
|
_stepper = inject(CdkStepper);
|
|
715
707
|
type = 'button';
|
|
716
|
-
constructor() {}
|
|
717
708
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
718
709
|
minVersion: "12.0.0",
|
|
719
|
-
version: "22.0.0-next.
|
|
710
|
+
version: "22.0.0-next.6",
|
|
720
711
|
ngImport: i0,
|
|
721
712
|
type: CdkStepperPrevious,
|
|
722
713
|
deps: [],
|
|
@@ -724,7 +715,7 @@ class CdkStepperPrevious {
|
|
|
724
715
|
});
|
|
725
716
|
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
726
717
|
minVersion: "14.0.0",
|
|
727
|
-
version: "22.0.0-next.
|
|
718
|
+
version: "22.0.0-next.6",
|
|
728
719
|
type: CdkStepperPrevious,
|
|
729
720
|
isStandalone: true,
|
|
730
721
|
selector: "button[cdkStepperPrevious]",
|
|
@@ -744,7 +735,7 @@ class CdkStepperPrevious {
|
|
|
744
735
|
}
|
|
745
736
|
i0.ɵɵngDeclareClassMetadata({
|
|
746
737
|
minVersion: "12.0.0",
|
|
747
|
-
version: "22.0.0-next.
|
|
738
|
+
version: "22.0.0-next.6",
|
|
748
739
|
ngImport: i0,
|
|
749
740
|
type: CdkStepperPrevious,
|
|
750
741
|
decorators: [{
|
|
@@ -757,7 +748,6 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
757
748
|
}
|
|
758
749
|
}]
|
|
759
750
|
}],
|
|
760
|
-
ctorParameters: () => [],
|
|
761
751
|
propDecorators: {
|
|
762
752
|
type: [{
|
|
763
753
|
type: Input
|
|
@@ -768,7 +758,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
768
758
|
class CdkStepperModule {
|
|
769
759
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
770
760
|
minVersion: "12.0.0",
|
|
771
|
-
version: "22.0.0-next.
|
|
761
|
+
version: "22.0.0-next.6",
|
|
772
762
|
ngImport: i0,
|
|
773
763
|
type: CdkStepperModule,
|
|
774
764
|
deps: [],
|
|
@@ -776,7 +766,7 @@ class CdkStepperModule {
|
|
|
776
766
|
});
|
|
777
767
|
static ɵmod = i0.ɵɵngDeclareNgModule({
|
|
778
768
|
minVersion: "14.0.0",
|
|
779
|
-
version: "22.0.0-next.
|
|
769
|
+
version: "22.0.0-next.6",
|
|
780
770
|
ngImport: i0,
|
|
781
771
|
type: CdkStepperModule,
|
|
782
772
|
imports: [BidiModule, CdkStep, CdkStepper, CdkStepHeader, CdkStepLabel, CdkStepperNext, CdkStepperPrevious],
|
|
@@ -784,7 +774,7 @@ class CdkStepperModule {
|
|
|
784
774
|
});
|
|
785
775
|
static ɵinj = i0.ɵɵngDeclareInjector({
|
|
786
776
|
minVersion: "12.0.0",
|
|
787
|
-
version: "22.0.0-next.
|
|
777
|
+
version: "22.0.0-next.6",
|
|
788
778
|
ngImport: i0,
|
|
789
779
|
type: CdkStepperModule,
|
|
790
780
|
imports: [BidiModule]
|
|
@@ -792,7 +782,7 @@ class CdkStepperModule {
|
|
|
792
782
|
}
|
|
793
783
|
i0.ɵɵngDeclareClassMetadata({
|
|
794
784
|
minVersion: "12.0.0",
|
|
795
|
-
version: "22.0.0-next.
|
|
785
|
+
version: "22.0.0-next.6",
|
|
796
786
|
ngImport: i0,
|
|
797
787
|
type: CdkStepperModule,
|
|
798
788
|
decorators: [{
|
package/fesm2022/stepper.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stepper.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/stepper/step-header.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/stepper/step-label.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/stepper/stepper.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/stepper/stepper-button.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/stepper/stepper-module.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {Directive, ElementRef, inject} from '@angular/core';\nimport {FocusableOption} from '../a11y';\n\n@Directive({\n selector: '[cdkStepHeader]',\n host: {\n 'role': 'tab',\n },\n})\nexport class CdkStepHeader implements FocusableOption {\n _elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n constructor(...args: unknown[]);\n constructor() {}\n\n /** Focuses the step header. */\n focus() {\n this._elementRef.nativeElement.focus();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {Directive, TemplateRef, inject} from '@angular/core';\n\n@Directive({\n selector: '[cdkStepLabel]',\n})\nexport class CdkStepLabel {\n template = inject<TemplateRef<any>>(TemplateRef);\n\n constructor(...args: unknown[]);\n constructor() {}\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {_IdGenerator, FocusableOption, FocusKeyManager} from '../a11y';\nimport {Direction, Directionality} from '../bidi';\nimport {ENTER, hasModifierKey, SPACE} from '../keycodes';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n Directive,\n ElementRef,\n EventEmitter,\n InjectionToken,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n AfterContentInit,\n booleanAttribute,\n numberAttribute,\n inject,\n signal,\n computed,\n} from '@angular/core';\nimport {\n ControlContainer,\n type AbstractControl,\n type NgForm,\n type FormGroupDirective,\n} from '@angular/forms';\nimport {_getFocusedElementPierceShadowDom} from '../platform';\nimport {Observable, of as observableOf, Subject} from 'rxjs';\nimport {startWith, takeUntil} from 'rxjs/operators';\n\nimport {CdkStepHeader} from './step-header';\nimport {CdkStepLabel} from './step-label';\n\n/**\n * Position state of the content of each step in stepper that is used for transitioning\n * the content into correct position upon step selection change.\n */\nexport type StepContentPositionState = 'previous' | 'current' | 'next';\n\n/** Possible orientation of a stepper. */\nexport type StepperOrientation = 'horizontal' | 'vertical';\n\n/** Change event emitted on selection changes. */\nexport class StepperSelectionEvent {\n /** Index of the step now selected. */\n selectedIndex!: number;\n\n /** Index of the step previously selected. */\n previouslySelectedIndex!: number;\n\n /** The step instance now selected. */\n selectedStep!: CdkStep;\n\n /** The step instance previously selected. */\n previouslySelectedStep!: CdkStep;\n}\n\n/** The state of each step. */\nexport type StepState = 'number' | 'edit' | 'done' | 'error' | string;\n\n/** Enum to represent the different states of the steps. */\nexport const STEP_STATE = {\n NUMBER: 'number',\n EDIT: 'edit',\n DONE: 'done',\n ERROR: 'error',\n};\n\n/** InjectionToken that can be used to specify the global stepper options. */\nexport const STEPPER_GLOBAL_OPTIONS = new InjectionToken<StepperOptions>('STEPPER_GLOBAL_OPTIONS');\n\n/** Configurable options for stepper. */\nexport interface StepperOptions {\n /**\n * Whether the stepper should display an error state or not.\n * Default behavior is assumed to be false.\n */\n showError?: boolean;\n\n /**\n * Whether the stepper should display the default indicator type\n * or not.\n * Default behavior is assumed to be true.\n */\n displayDefaultIndicatorType?: boolean;\n}\n\n@Component({\n selector: 'cdk-step',\n exportAs: 'cdkStep',\n template: '<ng-template><ng-content/></ng-template>',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CdkStep implements OnChanges {\n private _stepperOptions: StepperOptions;\n _stepper = inject(CdkStepper);\n _displayDefaultIndicatorType: boolean;\n\n /** Template for step label if it exists. */\n @ContentChild(CdkStepLabel) stepLabel!: CdkStepLabel;\n\n /** Forms that have been projected into the step. */\n @ContentChildren(\n // Note: we look for `ControlContainer` here, because both `NgForm` and `FormGroupDirective`\n // provides themselves as such, but we don't want to have a concrete reference to both of\n // the directives. The type is marked as `Partial` in case we run into a class that provides\n // itself as `ControlContainer` but doesn't have the same interface as the directives.\n ControlContainer,\n {\n descendants: true,\n },\n )\n protected _childForms: QueryList<Partial<NgForm | FormGroupDirective>> | undefined;\n\n /** Template for step content. */\n @ViewChild(TemplateRef, {static: true}) content!: TemplateRef<any>;\n\n /** The top level abstract control of the step. */\n @Input() stepControl!: AbstractControl;\n\n /** Whether user has attempted to move away from the step. */\n get interacted(): boolean {\n return this._interacted();\n }\n set interacted(value: boolean) {\n this._interacted.set(value);\n }\n private _interacted = signal(false);\n\n /** Emits when the user has attempted to move away from the step. */\n @Output('interacted')\n readonly interactedStream: EventEmitter<CdkStep> = new EventEmitter<CdkStep>();\n\n /** Plain text label of the step. */\n @Input() label!: string;\n\n /** Error message to display when there's an error. */\n @Input() errorMessage!: string;\n\n /** Aria label for the tab. */\n @Input('aria-label') ariaLabel!: string;\n\n /**\n * Reference to the element that the tab is labelled by.\n * Will be cleared if `aria-label` is set at the same time.\n */\n @Input('aria-labelledby') ariaLabelledby!: string;\n\n /** State of the step. */\n @Input()\n get state(): StepState {\n return this._state()!;\n }\n set state(value: StepState) {\n this._state.set(value);\n }\n private _state = signal<StepState | undefined>(undefined);\n\n /** Whether the user can return to this step once it has been marked as completed. */\n @Input({transform: booleanAttribute})\n get editable(): boolean {\n return this._editable()!;\n }\n set editable(value: boolean) {\n this._editable.set(value);\n }\n private _editable = signal(true);\n\n /** Whether the completion of step is optional. */\n @Input({transform: booleanAttribute}) optional: boolean = false;\n\n /** Whether step is marked as completed. */\n @Input({transform: booleanAttribute})\n get completed(): boolean {\n const override = this._completedOverride();\n const interacted = this._interacted();\n\n if (override != null) {\n return override;\n }\n\n return interacted && (!this.stepControl || this.stepControl.valid);\n }\n set completed(value: boolean) {\n this._completedOverride.set(value);\n }\n _completedOverride = signal<boolean | null>(null);\n\n /** Current index of the step within the stepper. */\n readonly index = signal(-1);\n\n /** Whether the step is selected. */\n readonly isSelected = computed<boolean>(() => this._stepper.selectedIndex === this.index());\n\n /** Type of indicator that should be shown for the step. */\n readonly indicatorType = computed<StepState>(() => {\n const selected = this.isSelected();\n const completed = this.completed;\n const defaultState = this._state() ?? STEP_STATE.NUMBER;\n const editable = this._editable();\n\n if (this._showError() && this.hasError && !selected) {\n return STEP_STATE.ERROR;\n }\n\n if (this._displayDefaultIndicatorType) {\n if (!completed || selected) {\n return STEP_STATE.NUMBER;\n }\n return editable ? STEP_STATE.EDIT : STEP_STATE.DONE;\n } else {\n if (completed && !selected) {\n return STEP_STATE.DONE;\n } else if (completed && selected) {\n return defaultState;\n }\n return editable && selected ? STEP_STATE.EDIT : defaultState;\n }\n });\n\n /** Whether the user can navigate to the step. */\n readonly isNavigable = computed<boolean>(() => {\n const isSelected = this.isSelected();\n const isCompleted = this.completed;\n return isCompleted || isSelected || !this._stepper.linear;\n });\n\n /** Whether step has an error. */\n @Input({transform: booleanAttribute})\n get hasError(): boolean {\n const customError = this._customError();\n return customError == null ? this._getDefaultError() : customError;\n }\n set hasError(value: boolean) {\n this._customError.set(value);\n }\n private _customError = signal<boolean | null>(null);\n\n private _getDefaultError() {\n return this.interacted && !!this.stepControl?.invalid;\n }\n\n constructor(...args: unknown[]);\n\n constructor() {\n const stepperOptions = inject<StepperOptions>(STEPPER_GLOBAL_OPTIONS, {optional: true});\n this._stepperOptions = stepperOptions ? stepperOptions : {};\n this._displayDefaultIndicatorType = this._stepperOptions.displayDefaultIndicatorType !== false;\n }\n\n /** Selects this step component. */\n select(): void {\n this._stepper.selected = this;\n }\n\n /** Resets the step to its initial state. Note that this includes resetting form data. */\n reset(): void {\n this._interacted.set(false);\n\n if (this._completedOverride() != null) {\n this._completedOverride.set(false);\n }\n\n if (this._customError() != null) {\n this._customError.set(false);\n }\n\n if (this.stepControl) {\n // Reset the forms since the default error state matchers will show errors on submit and we\n // want the form to be back to its initial state (see #29781). Submitted state is on the\n // individual directives, rather than the control, so we need to reset them ourselves.\n this._childForms?.forEach(form => form.resetForm?.());\n this.stepControl.reset();\n }\n }\n\n ngOnChanges() {\n // Since basically all inputs of the MatStep get proxied through the view down to the\n // underlying MatStepHeader, we have to make sure that change detection runs correctly.\n this._stepper._stateChanged();\n }\n\n _markAsInteracted() {\n if (!this._interacted()) {\n this._interacted.set(true);\n this.interactedStream.emit(this);\n }\n }\n\n /** Determines whether the error state can be shown. */\n _showError(): boolean {\n // We want to show the error state either if the user opted into/out of it using the\n // global options, or if they've explicitly set it through the `hasError` input.\n return this._stepperOptions.showError ?? this._customError() != null;\n }\n}\n\n@Directive({\n selector: '[cdkStepper]',\n exportAs: 'cdkStepper',\n})\nexport class CdkStepper implements AfterContentInit, AfterViewInit, OnDestroy {\n private _dir = inject(Directionality, {optional: true});\n private _changeDetectorRef = inject(ChangeDetectorRef);\n protected _elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n /** Emits when the component is destroyed. */\n protected readonly _destroyed = new Subject<void>();\n\n /** Used for managing keyboard focus. */\n private _keyManager: FocusKeyManager<FocusableOption> | undefined;\n\n /** Full list of steps inside the stepper, including inside nested steppers. */\n @ContentChildren(CdkStep, {descendants: true}) _steps!: QueryList<CdkStep>;\n\n /** Steps that belong to the current stepper, excluding ones from nested steppers. */\n readonly steps: QueryList<CdkStep> = new QueryList<CdkStep>();\n\n /** The list of step headers of the steps in the stepper. */\n @ContentChildren(CdkStepHeader, {descendants: true}) _stepHeader!: QueryList<CdkStepHeader>;\n\n /** List of step headers sorted based on their DOM order. */\n private _sortedHeaders = new QueryList<CdkStepHeader>();\n\n /** Whether the validity of previous steps should be checked or not. */\n @Input({transform: booleanAttribute})\n get linear(): boolean {\n return this._linear();\n }\n set linear(value: boolean) {\n this._linear.set(value);\n }\n private _linear = signal(false);\n\n /** The index of the selected step. */\n @Input({transform: numberAttribute})\n get selectedIndex(): number {\n return this._selectedIndex();\n }\n set selectedIndex(index: number) {\n if (this._steps) {\n // Ensure that the index can't be out of bounds.\n if (!this._isValidIndex(index) && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('cdkStepper: Cannot assign out-of-bounds value to `selectedIndex`.');\n }\n\n if (this.selectedIndex !== index) {\n this.selected?._markAsInteracted();\n\n if (\n !this._anyControlsInvalidOrPending(index) &&\n (index >= this.selectedIndex || this.steps.toArray()[index].editable)\n ) {\n this._updateSelectedItemIndex(index);\n }\n }\n } else {\n this._selectedIndex.set(index);\n }\n }\n private _selectedIndex = signal(0);\n\n /** The step that is selected. */\n @Input()\n get selected(): CdkStep | undefined {\n return this.steps ? this.steps.toArray()[this.selectedIndex] : undefined;\n }\n set selected(step: CdkStep | undefined) {\n this.selectedIndex = step && this.steps ? this.steps.toArray().indexOf(step) : -1;\n }\n\n /** Event emitted when the selected step has changed. */\n @Output() readonly selectionChange = new EventEmitter<StepperSelectionEvent>();\n\n /** Output to support two-way binding on `[(selectedIndex)]` */\n @Output() readonly selectedIndexChange: EventEmitter<number> = new EventEmitter<number>();\n\n /** Used to track unique ID for each stepper component. */\n private _groupId = inject(_IdGenerator).getId('cdk-stepper-');\n\n /** Orientation of the stepper. */\n @Input()\n get orientation(): StepperOrientation {\n return this._orientation;\n }\n set orientation(value: StepperOrientation) {\n // This is a protected method so that `MatStepper` can hook into it.\n this._orientation = value;\n\n if (this._keyManager) {\n this._keyManager.withVerticalOrientation(value === 'vertical');\n }\n }\n private _orientation: StepperOrientation = 'horizontal';\n\n constructor(...args: unknown[]);\n constructor() {}\n\n ngAfterContentInit() {\n this._steps.changes\n .pipe(startWith(this._steps), takeUntil(this._destroyed))\n .subscribe((steps: QueryList<CdkStep>) => {\n this.steps.reset(steps.filter(step => step._stepper === this));\n this.steps.forEach((step, index) => step.index.set(index));\n this.steps.notifyOnChanges();\n });\n }\n\n ngAfterViewInit() {\n // If the step headers are defined outside of the `ngFor` that renders the steps, like in the\n // Material stepper, they won't appear in the `QueryList` in the same order as they're\n // rendered in the DOM which will lead to incorrect keyboard navigation. We need to sort\n // them manually to ensure that they're correct. Alternatively, we can change the Material\n // template to inline the headers in the `ngFor`, but that'll result in a lot of\n // code duplication. See #23539.\n this._stepHeader.changes\n .pipe(startWith(this._stepHeader), takeUntil(this._destroyed))\n .subscribe((headers: QueryList<CdkStepHeader>) => {\n this._sortedHeaders.reset(\n headers.toArray().sort((a, b) => {\n const documentPosition = a._elementRef.nativeElement.compareDocumentPosition(\n b._elementRef.nativeElement,\n );\n\n // `compareDocumentPosition` returns a bitmask so we have to use a bitwise operator.\n // https://developer.mozilla.org/en-US/docs/Web/API/Node/compareDocumentPosition\n // tslint:disable-next-line:no-bitwise\n return documentPosition & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : 1;\n }),\n );\n this._sortedHeaders.notifyOnChanges();\n });\n\n // Note that while the step headers are content children by default, any components that\n // extend this one might have them as view children. We initialize the keyboard handling in\n // AfterViewInit so we're guaranteed for both view and content children to be defined.\n this._keyManager = new FocusKeyManager<FocusableOption>(this._sortedHeaders)\n .withWrap()\n .withHomeAndEnd()\n .withVerticalOrientation(this._orientation === 'vertical');\n\n // The selected index may have changed between when the component was created and when the\n // key manager was initialized. Use `updateActiveItem` so it's correct, but it doesn't steal\n // away focus from the user.\n this._keyManager.updateActiveItem(this.selectedIndex);\n\n (this._dir ? (this._dir.change as Observable<Direction>) : observableOf<Direction>())\n .pipe(startWith(this._layoutDirection()), takeUntil(this._destroyed))\n .subscribe(direction => this._keyManager?.withHorizontalOrientation(direction));\n\n this._keyManager.updateActiveItem(this.selectedIndex);\n\n // No need to `takeUntil` here, because we're the ones destroying `steps`.\n this.steps.changes.subscribe(() => {\n if (!this.selected) {\n this._selectedIndex.set(Math.max(this.selectedIndex - 1, 0));\n }\n });\n\n // The logic which asserts that the selected index is within bounds doesn't run before the\n // steps are initialized, because we don't how many steps there are yet so we may have an\n // invalid index on init. If that's the case, auto-correct to the default so we don't throw.\n if (!this._isValidIndex(this.selectedIndex)) {\n this._selectedIndex.set(0);\n }\n\n // For linear step and selected index is greater than zero,\n // set all the previous steps to interacted so that we can navigate to previous steps.\n if (this.linear && this.selectedIndex > 0) {\n const visitedSteps = this.steps.toArray().slice(0, this._selectedIndex());\n\n for (const step of visitedSteps) {\n step._markAsInteracted();\n }\n }\n }\n\n ngOnDestroy() {\n this._keyManager?.destroy();\n this.steps.destroy();\n this._sortedHeaders.destroy();\n this._destroyed.next();\n this._destroyed.complete();\n }\n\n /** Selects and focuses the next step in list. */\n next(): void {\n this.selectedIndex = Math.min(this._selectedIndex() + 1, this.steps.length - 1);\n }\n\n /** Selects and focuses the previous step in list. */\n previous(): void {\n this.selectedIndex = Math.max(this._selectedIndex() - 1, 0);\n }\n\n /** Resets the stepper to its initial state. Note that this includes clearing form data. */\n reset(): void {\n this._updateSelectedItemIndex(0);\n this.steps.forEach(step => step.reset());\n this._stateChanged();\n }\n\n /** Returns a unique id for each step label element. */\n _getStepLabelId(i: number): string {\n return `${this._groupId}-label-${i}`;\n }\n\n /** Returns unique id for each step content element. */\n _getStepContentId(i: number): string {\n return `${this._groupId}-content-${i}`;\n }\n\n /** Marks the component to be change detected. */\n _stateChanged() {\n this._changeDetectorRef.markForCheck();\n }\n\n /** Returns position state of the step with the given index. */\n _getAnimationDirection(index: number): StepContentPositionState {\n const position = index - this._selectedIndex();\n if (position < 0) {\n return this._layoutDirection() === 'rtl' ? 'next' : 'previous';\n } else if (position > 0) {\n return this._layoutDirection() === 'rtl' ? 'previous' : 'next';\n }\n return 'current';\n }\n\n /** Returns the index of the currently-focused step header. */\n _getFocusIndex(): number | null {\n return this._keyManager ? this._keyManager.activeItemIndex : this._selectedIndex();\n }\n\n private _updateSelectedItemIndex(newIndex: number): void {\n const stepsArray = this.steps.toArray();\n const selectedIndex = this._selectedIndex();\n\n this.selectionChange.emit({\n selectedIndex: newIndex,\n previouslySelectedIndex: selectedIndex,\n selectedStep: stepsArray[newIndex],\n previouslySelectedStep: stepsArray[selectedIndex],\n });\n\n // If focus is inside the stepper, move it to the next header, otherwise it may become\n // lost when the active step content is hidden. We can't be more granular with the check\n // (e.g. checking whether focus is inside the active step), because we don't have a\n // reference to the elements that are rendering out the content.\n if (this._keyManager) {\n this._containsFocus()\n ? this._keyManager.setActiveItem(newIndex)\n : this._keyManager.updateActiveItem(newIndex);\n }\n\n this._selectedIndex.set(newIndex);\n this.selectedIndexChange.emit(newIndex);\n this._stateChanged();\n }\n\n _onKeydown(event: KeyboardEvent) {\n const hasModifier = hasModifierKey(event);\n const keyCode = event.keyCode;\n const manager = this._keyManager;\n\n if (\n manager?.activeItemIndex != null &&\n !hasModifier &&\n (keyCode === SPACE || keyCode === ENTER)\n ) {\n this.selectedIndex = manager.activeItemIndex;\n event.preventDefault();\n } else {\n manager?.setFocusOrigin('keyboard').onKeydown(event);\n }\n }\n\n private _anyControlsInvalidOrPending(index: number): boolean {\n if (this.linear && index >= 0) {\n return this.steps\n .toArray()\n .slice(0, index)\n .some(step => {\n const control = step.stepControl;\n const isIncomplete = control\n ? control.invalid || control.pending || !step.interacted\n : !step.completed;\n return isIncomplete && !step.optional && !step._completedOverride();\n });\n }\n\n return false;\n }\n\n private _layoutDirection(): Direction {\n return this._dir && this._dir.value === 'rtl' ? 'rtl' : 'ltr';\n }\n\n /** Checks whether the stepper contains the focused element. */\n private _containsFocus(): boolean {\n const stepperElement = this._elementRef.nativeElement;\n const focusedElement = _getFocusedElementPierceShadowDom();\n return stepperElement === focusedElement || stepperElement.contains(focusedElement);\n }\n\n /** Checks whether the passed-in index is a valid step index. */\n private _isValidIndex(index: number): boolean {\n return index > -1 && (!this.steps || index < this.steps.length);\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {Directive, Input, inject} from '@angular/core';\n\nimport {CdkStepper} from './stepper';\n\n/** Button that moves to the next step in a stepper workflow. */\n@Directive({\n selector: 'button[cdkStepperNext]',\n host: {\n '[type]': 'type',\n '(click)': '_stepper.next()',\n },\n})\nexport class CdkStepperNext {\n _stepper = inject(CdkStepper);\n\n /** Type of the next button. Defaults to \"submit\" if not specified. */\n @Input() type: string = 'submit';\n\n constructor(...args: unknown[]);\n constructor() {}\n}\n\n/** Button that moves to the previous step in a stepper workflow. */\n@Directive({\n selector: 'button[cdkStepperPrevious]',\n host: {\n '[type]': 'type',\n '(click)': '_stepper.previous()',\n },\n})\nexport class CdkStepperPrevious {\n _stepper = inject(CdkStepper);\n\n /** Type of the previous button. Defaults to \"button\" if not specified. */\n @Input() type: string = 'button';\n\n constructor(...args: unknown[]);\n constructor() {}\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {NgModule} from '@angular/core';\nimport {CdkStepper, CdkStep} from './stepper';\nimport {CdkStepLabel} from './step-label';\nimport {CdkStepperNext, CdkStepperPrevious} from './stepper-button';\nimport {CdkStepHeader} from './step-header';\nimport {BidiModule} from '../bidi';\n\n@NgModule({\n imports: [\n BidiModule,\n CdkStep,\n CdkStepper,\n CdkStepHeader,\n CdkStepLabel,\n CdkStepperNext,\n CdkStepperPrevious,\n ],\n exports: [CdkStep, CdkStepper, CdkStepHeader, CdkStepLabel, CdkStepperNext, CdkStepperPrevious],\n})\nexport class CdkStepperModule {}\n"],"names":["CdkStepHeader","_elementRef","inject","ElementRef","constructor","focus","nativeElement","deps","target","i0","ɵɵFactoryTarget","Directive","isStandalone","selector","host","attributes","ngImport","decorators","args","CdkStepLabel","template","TemplateRef","StepperSelectionEvent","selectedIndex","previouslySelectedIndex","selectedStep","previouslySelectedStep","STEP_STATE","NUMBER","EDIT","DONE","ERROR","STEPPER_GLOBAL_OPTIONS","InjectionToken","CdkStep","_stepperOptions","_stepper","CdkStepper","_displayDefaultIndicatorType","stepLabel","_childForms","content","stepControl","interacted","_interacted","value","set","signal","interactedStream","EventEmitter","label","errorMessage","ariaLabel","ariaLabelledby","state","_state","undefined","editable","_editable","optional","completed","override","_completedOverride","valid","index","isSelected","computed","indicatorType","selected","defaultState","_showError","hasError","isNavigable","isCompleted","linear","customError","_customError","_getDefaultError","invalid","stepperOptions","displayDefaultIndicatorType","select","reset","forEach","form","resetForm","ngOnChanges","_stateChanged","_markAsInteracted","emit","showError","Component","inputs","booleanAttribute","outputs","queries","propertyName","first","predicate","descendants","ControlContainer","viewQueries","static","exportAs","usesOnChanges","isInline","changeDetection","ChangeDetectionStrategy","OnPush","encapsulation","ViewEncapsulation","None","ContentChild","ContentChildren","ViewChild","Input","Output","transform","_dir","Directionality","_changeDetectorRef","ChangeDetectorRef","_destroyed","Subject","_keyManager","_steps","steps","QueryList","_stepHeader","_sortedHeaders","_linear","_selectedIndex","_isValidIndex","ngDevMode","Error","_anyControlsInvalidOrPending","toArray","_updateSelectedItemIndex","step","indexOf","selectionChange","selectedIndexChange","_groupId","_IdGenerator","getId","orientation","_orientation","withVerticalOrientation","ngAfterContentInit","changes","pipe","startWith","takeUntil","subscribe","filter","notifyOnChanges","ngAfterViewInit","headers","sort","a","b","documentPosition","compareDocumentPosition","Node","DOCUMENT_POSITION_FOLLOWING","FocusKeyManager","withWrap","withHomeAndEnd","updateActiveItem","change","observableOf","_layoutDirection","direction","withHorizontalOrientation","Math","max","visitedSteps","slice","ngOnDestroy","destroy","next","complete","min","length","previous","_getStepLabelId","i","_getStepContentId","markForCheck","_getAnimationDirection","position","_getFocusIndex","activeItemIndex","newIndex","stepsArray","_containsFocus","setActiveItem","_onKeydown","event","hasModifier","hasModifierKey","keyCode","manager","SPACE","ENTER","preventDefault","setFocusOrigin","onKeydown","some","control","isIncomplete","pending","stepperElement","focusedElement","_getFocusedElementPierceShadowDom","contains","ɵdir","ɵɵngDeclareDirective","minVersion","version","type","numberAttribute","CdkStepperNext","listeners","properties","CdkStepperPrevious","CdkStepperModule","NgModule","ɵmod","ɵɵngDeclareNgModule","BidiModule","exports","ɵinj","ɵɵngDeclareInjector","imports"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"stepper.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/stepper/step-header.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/stepper/step-label.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/stepper/stepper.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/stepper/stepper-button.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/stepper/stepper-module.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {Directive, ElementRef, inject} from '@angular/core';\nimport {FocusableOption} from '../a11y';\n\n@Directive({\n selector: '[cdkStepHeader]',\n host: {\n 'role': 'tab',\n },\n})\nexport class CdkStepHeader implements FocusableOption {\n _elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n /** Focuses the step header. */\n focus() {\n this._elementRef.nativeElement.focus();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {Directive, TemplateRef, inject} from '@angular/core';\n\n@Directive({\n selector: '[cdkStepLabel]',\n})\nexport class CdkStepLabel {\n template = inject<TemplateRef<any>>(TemplateRef);\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {_IdGenerator, FocusableOption, FocusKeyManager} from '../a11y';\nimport {Direction, Directionality} from '../bidi';\nimport {ENTER, hasModifierKey, SPACE} from '../keycodes';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n Directive,\n ElementRef,\n EventEmitter,\n InjectionToken,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n AfterContentInit,\n booleanAttribute,\n numberAttribute,\n inject,\n signal,\n computed,\n} from '@angular/core';\nimport {\n ControlContainer,\n type AbstractControl,\n type NgForm,\n type FormGroupDirective,\n} from '@angular/forms';\nimport {_getFocusedElementPierceShadowDom} from '../platform';\nimport {Observable, of as observableOf, Subject} from 'rxjs';\nimport {startWith, takeUntil} from 'rxjs/operators';\n\nimport {CdkStepHeader} from './step-header';\nimport {CdkStepLabel} from './step-label';\n\n/**\n * Position state of the content of each step in stepper that is used for transitioning\n * the content into correct position upon step selection change.\n */\nexport type StepContentPositionState = 'previous' | 'current' | 'next';\n\n/** Possible orientation of a stepper. */\nexport type StepperOrientation = 'horizontal' | 'vertical';\n\n/** Change event emitted on selection changes. */\nexport class StepperSelectionEvent {\n /** Index of the step now selected. */\n selectedIndex!: number;\n\n /** Index of the step previously selected. */\n previouslySelectedIndex!: number;\n\n /** The step instance now selected. */\n selectedStep!: CdkStep;\n\n /** The step instance previously selected. */\n previouslySelectedStep!: CdkStep;\n}\n\n/** The state of each step. */\nexport type StepState = 'number' | 'edit' | 'done' | 'error' | string;\n\n/** Enum to represent the different states of the steps. */\nexport const STEP_STATE = {\n NUMBER: 'number',\n EDIT: 'edit',\n DONE: 'done',\n ERROR: 'error',\n};\n\n/** InjectionToken that can be used to specify the global stepper options. */\nexport const STEPPER_GLOBAL_OPTIONS = new InjectionToken<StepperOptions>('STEPPER_GLOBAL_OPTIONS');\n\n/** Configurable options for stepper. */\nexport interface StepperOptions {\n /**\n * Whether the stepper should display an error state or not.\n * Default behavior is assumed to be false.\n */\n showError?: boolean;\n\n /**\n * Whether the stepper should display the default indicator type\n * or not.\n * Default behavior is assumed to be true.\n */\n displayDefaultIndicatorType?: boolean;\n}\n\n@Component({\n selector: 'cdk-step',\n exportAs: 'cdkStep',\n template: '<ng-template><ng-content/></ng-template>',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CdkStep implements OnChanges {\n private _stepperOptions: StepperOptions;\n _stepper = inject(CdkStepper);\n _displayDefaultIndicatorType: boolean;\n\n /** Template for step label if it exists. */\n @ContentChild(CdkStepLabel) stepLabel!: CdkStepLabel;\n\n /** Forms that have been projected into the step. */\n @ContentChildren(\n // Note: we look for `ControlContainer` here, because both `NgForm` and `FormGroupDirective`\n // provides themselves as such, but we don't want to have a concrete reference to both of\n // the directives. The type is marked as `Partial` in case we run into a class that provides\n // itself as `ControlContainer` but doesn't have the same interface as the directives.\n ControlContainer,\n {\n descendants: true,\n },\n )\n protected _childForms: QueryList<Partial<NgForm | FormGroupDirective>> | undefined;\n\n /** Template for step content. */\n @ViewChild(TemplateRef, {static: true}) content!: TemplateRef<any>;\n\n /** The top level abstract control of the step. */\n @Input() stepControl!: AbstractControl;\n\n /** Whether user has attempted to move away from the step. */\n get interacted(): boolean {\n return this._interacted();\n }\n set interacted(value: boolean) {\n this._interacted.set(value);\n }\n private _interacted = signal(false);\n\n /** Emits when the user has attempted to move away from the step. */\n @Output('interacted')\n readonly interactedStream: EventEmitter<CdkStep> = new EventEmitter<CdkStep>();\n\n /** Plain text label of the step. */\n @Input() label!: string;\n\n /** Error message to display when there's an error. */\n @Input() errorMessage!: string;\n\n /** Aria label for the tab. */\n @Input('aria-label') ariaLabel!: string;\n\n /**\n * Reference to the element that the tab is labelled by.\n * Will be cleared if `aria-label` is set at the same time.\n */\n @Input('aria-labelledby') ariaLabelledby!: string;\n\n /** State of the step. */\n @Input()\n get state(): StepState {\n return this._state()!;\n }\n set state(value: StepState) {\n this._state.set(value);\n }\n private _state = signal<StepState | undefined>(undefined);\n\n /** Whether the user can return to this step once it has been marked as completed. */\n @Input({transform: booleanAttribute})\n get editable(): boolean {\n return this._editable()!;\n }\n set editable(value: boolean) {\n this._editable.set(value);\n }\n private _editable = signal(true);\n\n /** Whether the completion of step is optional. */\n @Input({transform: booleanAttribute}) optional: boolean = false;\n\n /** Whether step is marked as completed. */\n @Input({transform: booleanAttribute})\n get completed(): boolean {\n const override = this._completedOverride();\n const interacted = this._interacted();\n\n if (override != null) {\n return override;\n }\n\n return interacted && (!this.stepControl || this.stepControl.valid);\n }\n set completed(value: boolean) {\n this._completedOverride.set(value);\n }\n _completedOverride = signal<boolean | null>(null);\n\n /** Current index of the step within the stepper. */\n readonly index = signal(-1);\n\n /** Whether the step is selected. */\n readonly isSelected = computed<boolean>(() => this._stepper.selectedIndex === this.index());\n\n /** Type of indicator that should be shown for the step. */\n readonly indicatorType = computed<StepState>(() => {\n const selected = this.isSelected();\n const completed = this.completed;\n const defaultState = this._state() ?? STEP_STATE.NUMBER;\n const editable = this._editable();\n\n if (this._showError() && this.hasError && !selected) {\n return STEP_STATE.ERROR;\n }\n\n if (this._displayDefaultIndicatorType) {\n if (!completed || selected) {\n return STEP_STATE.NUMBER;\n }\n return editable ? STEP_STATE.EDIT : STEP_STATE.DONE;\n } else {\n if (completed && !selected) {\n return STEP_STATE.DONE;\n } else if (completed && selected) {\n return defaultState;\n }\n return editable && selected ? STEP_STATE.EDIT : defaultState;\n }\n });\n\n /** Whether the user can navigate to the step. */\n readonly isNavigable = computed<boolean>(() => {\n const isSelected = this.isSelected();\n const isCompleted = this.completed;\n return isCompleted || isSelected || !this._stepper.linear;\n });\n\n /** Whether step has an error. */\n @Input({transform: booleanAttribute})\n get hasError(): boolean {\n const customError = this._customError();\n return customError == null ? this._getDefaultError() : customError;\n }\n set hasError(value: boolean) {\n this._customError.set(value);\n }\n private _customError = signal<boolean | null>(null);\n\n private _getDefaultError() {\n return this.interacted && !!this.stepControl?.invalid;\n }\n\n constructor() {\n const stepperOptions = inject<StepperOptions>(STEPPER_GLOBAL_OPTIONS, {optional: true});\n this._stepperOptions = stepperOptions ? stepperOptions : {};\n this._displayDefaultIndicatorType = this._stepperOptions.displayDefaultIndicatorType !== false;\n }\n\n /** Selects this step component. */\n select(): void {\n this._stepper.selected = this;\n }\n\n /** Resets the step to its initial state. Note that this includes resetting form data. */\n reset(): void {\n this._interacted.set(false);\n\n if (this._completedOverride() != null) {\n this._completedOverride.set(false);\n }\n\n if (this._customError() != null) {\n this._customError.set(false);\n }\n\n if (this.stepControl) {\n // Reset the forms since the default error state matchers will show errors on submit and we\n // want the form to be back to its initial state (see #29781). Submitted state is on the\n // individual directives, rather than the control, so we need to reset them ourselves.\n this._childForms?.forEach(form => form.resetForm?.());\n this.stepControl.reset();\n }\n }\n\n ngOnChanges() {\n // Since basically all inputs of the MatStep get proxied through the view down to the\n // underlying MatStepHeader, we have to make sure that change detection runs correctly.\n this._stepper._stateChanged();\n }\n\n _markAsInteracted() {\n if (!this._interacted()) {\n this._interacted.set(true);\n this.interactedStream.emit(this);\n }\n }\n\n /** Determines whether the error state can be shown. */\n _showError(): boolean {\n // We want to show the error state either if the user opted into/out of it using the\n // global options, or if they've explicitly set it through the `hasError` input.\n return this._stepperOptions.showError ?? this._customError() != null;\n }\n}\n\n@Directive({\n selector: '[cdkStepper]',\n exportAs: 'cdkStepper',\n})\nexport class CdkStepper implements AfterContentInit, AfterViewInit, OnDestroy {\n private _dir = inject(Directionality, {optional: true});\n private _changeDetectorRef = inject(ChangeDetectorRef);\n protected _elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n /** Emits when the component is destroyed. */\n protected readonly _destroyed = new Subject<void>();\n\n /** Used for managing keyboard focus. */\n private _keyManager: FocusKeyManager<FocusableOption> | undefined;\n\n /** Full list of steps inside the stepper, including inside nested steppers. */\n @ContentChildren(CdkStep, {descendants: true}) _steps!: QueryList<CdkStep>;\n\n /** Steps that belong to the current stepper, excluding ones from nested steppers. */\n readonly steps: QueryList<CdkStep> = new QueryList<CdkStep>();\n\n /** The list of step headers of the steps in the stepper. */\n @ContentChildren(CdkStepHeader, {descendants: true}) _stepHeader!: QueryList<CdkStepHeader>;\n\n /** List of step headers sorted based on their DOM order. */\n private _sortedHeaders = new QueryList<CdkStepHeader>();\n\n /** Whether the validity of previous steps should be checked or not. */\n @Input({transform: booleanAttribute})\n get linear(): boolean {\n return this._linear();\n }\n set linear(value: boolean) {\n this._linear.set(value);\n }\n private _linear = signal(false);\n\n /** The index of the selected step. */\n @Input({transform: numberAttribute})\n get selectedIndex(): number {\n return this._selectedIndex();\n }\n set selectedIndex(index: number) {\n if (this._steps) {\n // Ensure that the index can't be out of bounds.\n if (!this._isValidIndex(index) && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('cdkStepper: Cannot assign out-of-bounds value to `selectedIndex`.');\n }\n\n if (this.selectedIndex !== index) {\n this.selected?._markAsInteracted();\n\n if (\n !this._anyControlsInvalidOrPending(index) &&\n (index >= this.selectedIndex || this.steps.toArray()[index].editable)\n ) {\n this._updateSelectedItemIndex(index);\n }\n }\n } else {\n this._selectedIndex.set(index);\n }\n }\n private _selectedIndex = signal(0);\n\n /** The step that is selected. */\n @Input()\n get selected(): CdkStep | undefined {\n return this.steps ? this.steps.toArray()[this.selectedIndex] : undefined;\n }\n set selected(step: CdkStep | undefined) {\n this.selectedIndex = step && this.steps ? this.steps.toArray().indexOf(step) : -1;\n }\n\n /** Event emitted when the selected step has changed. */\n @Output() readonly selectionChange = new EventEmitter<StepperSelectionEvent>();\n\n /** Output to support two-way binding on `[(selectedIndex)]` */\n @Output() readonly selectedIndexChange: EventEmitter<number> = new EventEmitter<number>();\n\n /** Used to track unique ID for each stepper component. */\n private _groupId = inject(_IdGenerator).getId('cdk-stepper-');\n\n /** Orientation of the stepper. */\n @Input()\n get orientation(): StepperOrientation {\n return this._orientation;\n }\n set orientation(value: StepperOrientation) {\n // This is a protected method so that `MatStepper` can hook into it.\n this._orientation = value;\n\n if (this._keyManager) {\n this._keyManager.withVerticalOrientation(value === 'vertical');\n }\n }\n private _orientation: StepperOrientation = 'horizontal';\n\n ngAfterContentInit() {\n this._steps.changes\n .pipe(startWith(this._steps), takeUntil(this._destroyed))\n .subscribe((steps: QueryList<CdkStep>) => {\n this.steps.reset(steps.filter(step => step._stepper === this));\n this.steps.forEach((step, index) => step.index.set(index));\n this.steps.notifyOnChanges();\n });\n }\n\n ngAfterViewInit() {\n // If the step headers are defined outside of the `ngFor` that renders the steps, like in the\n // Material stepper, they won't appear in the `QueryList` in the same order as they're\n // rendered in the DOM which will lead to incorrect keyboard navigation. We need to sort\n // them manually to ensure that they're correct. Alternatively, we can change the Material\n // template to inline the headers in the `ngFor`, but that'll result in a lot of\n // code duplication. See #23539.\n this._stepHeader.changes\n .pipe(startWith(this._stepHeader), takeUntil(this._destroyed))\n .subscribe((headers: QueryList<CdkStepHeader>) => {\n this._sortedHeaders.reset(\n headers.toArray().sort((a, b) => {\n const documentPosition = a._elementRef.nativeElement.compareDocumentPosition(\n b._elementRef.nativeElement,\n );\n\n // `compareDocumentPosition` returns a bitmask so we have to use a bitwise operator.\n // https://developer.mozilla.org/en-US/docs/Web/API/Node/compareDocumentPosition\n // tslint:disable-next-line:no-bitwise\n return documentPosition & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : 1;\n }),\n );\n this._sortedHeaders.notifyOnChanges();\n });\n\n // Note that while the step headers are content children by default, any components that\n // extend this one might have them as view children. We initialize the keyboard handling in\n // AfterViewInit so we're guaranteed for both view and content children to be defined.\n this._keyManager = new FocusKeyManager<FocusableOption>(this._sortedHeaders)\n .withWrap()\n .withHomeAndEnd()\n .withVerticalOrientation(this._orientation === 'vertical');\n\n // The selected index may have changed between when the component was created and when the\n // key manager was initialized. Use `updateActiveItem` so it's correct, but it doesn't steal\n // away focus from the user.\n this._keyManager.updateActiveItem(this.selectedIndex);\n\n (this._dir ? (this._dir.change as Observable<Direction>) : observableOf<Direction>())\n .pipe(startWith(this._layoutDirection()), takeUntil(this._destroyed))\n .subscribe(direction => this._keyManager?.withHorizontalOrientation(direction));\n\n this._keyManager.updateActiveItem(this.selectedIndex);\n\n // No need to `takeUntil` here, because we're the ones destroying `steps`.\n this.steps.changes.subscribe(() => {\n if (!this.selected) {\n this._selectedIndex.set(Math.max(this.selectedIndex - 1, 0));\n }\n });\n\n // The logic which asserts that the selected index is within bounds doesn't run before the\n // steps are initialized, because we don't how many steps there are yet so we may have an\n // invalid index on init. If that's the case, auto-correct to the default so we don't throw.\n if (!this._isValidIndex(this.selectedIndex)) {\n this._selectedIndex.set(0);\n }\n\n // For linear step and selected index is greater than zero,\n // set all the previous steps to interacted so that we can navigate to previous steps.\n if (this.linear && this.selectedIndex > 0) {\n const visitedSteps = this.steps.toArray().slice(0, this._selectedIndex());\n\n for (const step of visitedSteps) {\n step._markAsInteracted();\n }\n }\n }\n\n ngOnDestroy() {\n this._keyManager?.destroy();\n this.steps.destroy();\n this._sortedHeaders.destroy();\n this._destroyed.next();\n this._destroyed.complete();\n }\n\n /** Selects and focuses the next step in list. */\n next(): void {\n this.selectedIndex = Math.min(this._selectedIndex() + 1, this.steps.length - 1);\n }\n\n /** Selects and focuses the previous step in list. */\n previous(): void {\n this.selectedIndex = Math.max(this._selectedIndex() - 1, 0);\n }\n\n /** Resets the stepper to its initial state. Note that this includes clearing form data. */\n reset(): void {\n this._updateSelectedItemIndex(0);\n this.steps.forEach(step => step.reset());\n this._stateChanged();\n }\n\n /** Returns a unique id for each step label element. */\n _getStepLabelId(i: number): string {\n return `${this._groupId}-label-${i}`;\n }\n\n /** Returns unique id for each step content element. */\n _getStepContentId(i: number): string {\n return `${this._groupId}-content-${i}`;\n }\n\n /** Marks the component to be change detected. */\n _stateChanged() {\n this._changeDetectorRef.markForCheck();\n }\n\n /** Returns position state of the step with the given index. */\n _getAnimationDirection(index: number): StepContentPositionState {\n const position = index - this._selectedIndex();\n if (position < 0) {\n return this._layoutDirection() === 'rtl' ? 'next' : 'previous';\n } else if (position > 0) {\n return this._layoutDirection() === 'rtl' ? 'previous' : 'next';\n }\n return 'current';\n }\n\n /** Returns the index of the currently-focused step header. */\n _getFocusIndex(): number | null {\n return this._keyManager ? this._keyManager.activeItemIndex : this._selectedIndex();\n }\n\n private _updateSelectedItemIndex(newIndex: number): void {\n const stepsArray = this.steps.toArray();\n const selectedIndex = this._selectedIndex();\n\n this.selectionChange.emit({\n selectedIndex: newIndex,\n previouslySelectedIndex: selectedIndex,\n selectedStep: stepsArray[newIndex],\n previouslySelectedStep: stepsArray[selectedIndex],\n });\n\n // If focus is inside the stepper, move it to the next header, otherwise it may become\n // lost when the active step content is hidden. We can't be more granular with the check\n // (e.g. checking whether focus is inside the active step), because we don't have a\n // reference to the elements that are rendering out the content.\n if (this._keyManager) {\n this._containsFocus()\n ? this._keyManager.setActiveItem(newIndex)\n : this._keyManager.updateActiveItem(newIndex);\n }\n\n this._selectedIndex.set(newIndex);\n this.selectedIndexChange.emit(newIndex);\n this._stateChanged();\n }\n\n _onKeydown(event: KeyboardEvent) {\n const hasModifier = hasModifierKey(event);\n const keyCode = event.keyCode;\n const manager = this._keyManager;\n\n if (\n manager?.activeItemIndex != null &&\n !hasModifier &&\n (keyCode === SPACE || keyCode === ENTER)\n ) {\n this.selectedIndex = manager.activeItemIndex;\n event.preventDefault();\n } else {\n manager?.setFocusOrigin('keyboard').onKeydown(event);\n }\n }\n\n private _anyControlsInvalidOrPending(index: number): boolean {\n if (this.linear && index >= 0) {\n return this.steps\n .toArray()\n .slice(0, index)\n .some(step => {\n const control = step.stepControl;\n const isIncomplete = control\n ? control.invalid || control.pending || !step.interacted\n : !step.completed;\n return isIncomplete && !step.optional && !step._completedOverride();\n });\n }\n\n return false;\n }\n\n private _layoutDirection(): Direction {\n return this._dir && this._dir.value === 'rtl' ? 'rtl' : 'ltr';\n }\n\n /** Checks whether the stepper contains the focused element. */\n private _containsFocus(): boolean {\n const stepperElement = this._elementRef.nativeElement;\n const focusedElement = _getFocusedElementPierceShadowDom();\n return stepperElement === focusedElement || stepperElement.contains(focusedElement);\n }\n\n /** Checks whether the passed-in index is a valid step index. */\n private _isValidIndex(index: number): boolean {\n return index > -1 && (!this.steps || index < this.steps.length);\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {Directive, Input, inject} from '@angular/core';\n\nimport {CdkStepper} from './stepper';\n\n/** Button that moves to the next step in a stepper workflow. */\n@Directive({\n selector: 'button[cdkStepperNext]',\n host: {\n '[type]': 'type',\n '(click)': '_stepper.next()',\n },\n})\nexport class CdkStepperNext {\n _stepper = inject(CdkStepper);\n\n /** Type of the next button. Defaults to \"submit\" if not specified. */\n @Input() type: string = 'submit';\n}\n\n/** Button that moves to the previous step in a stepper workflow. */\n@Directive({\n selector: 'button[cdkStepperPrevious]',\n host: {\n '[type]': 'type',\n '(click)': '_stepper.previous()',\n },\n})\nexport class CdkStepperPrevious {\n _stepper = inject(CdkStepper);\n\n /** Type of the previous button. Defaults to \"button\" if not specified. */\n @Input() type: string = 'button';\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {NgModule} from '@angular/core';\nimport {CdkStepper, CdkStep} from './stepper';\nimport {CdkStepLabel} from './step-label';\nimport {CdkStepperNext, CdkStepperPrevious} from './stepper-button';\nimport {CdkStepHeader} from './step-header';\nimport {BidiModule} from '../bidi';\n\n@NgModule({\n imports: [\n BidiModule,\n CdkStep,\n CdkStepper,\n CdkStepHeader,\n CdkStepLabel,\n CdkStepperNext,\n CdkStepperPrevious,\n ],\n exports: [CdkStep, CdkStepper, CdkStepHeader, CdkStepLabel, CdkStepperNext, CdkStepperPrevious],\n})\nexport class CdkStepperModule {}\n"],"names":["CdkStepHeader","_elementRef","inject","ElementRef","focus","nativeElement","deps","target","i0","ɵɵFactoryTarget","Directive","isStandalone","selector","host","attributes","ngImport","decorators","args","CdkStepLabel","template","TemplateRef","StepperSelectionEvent","selectedIndex","previouslySelectedIndex","selectedStep","previouslySelectedStep","STEP_STATE","NUMBER","EDIT","DONE","ERROR","STEPPER_GLOBAL_OPTIONS","InjectionToken","CdkStep","_stepperOptions","_stepper","CdkStepper","_displayDefaultIndicatorType","stepLabel","_childForms","content","stepControl","interacted","_interacted","value","set","signal","interactedStream","EventEmitter","label","errorMessage","ariaLabel","ariaLabelledby","state","_state","undefined","editable","_editable","optional","completed","override","_completedOverride","valid","index","isSelected","computed","indicatorType","selected","defaultState","_showError","hasError","isNavigable","isCompleted","linear","customError","_customError","_getDefaultError","invalid","constructor","stepperOptions","displayDefaultIndicatorType","select","reset","forEach","form","resetForm","ngOnChanges","_stateChanged","_markAsInteracted","emit","showError","Component","inputs","booleanAttribute","outputs","queries","propertyName","first","predicate","descendants","ControlContainer","viewQueries","static","exportAs","usesOnChanges","isInline","changeDetection","ChangeDetectionStrategy","OnPush","encapsulation","ViewEncapsulation","None","ContentChild","ContentChildren","ViewChild","Input","Output","transform","_dir","Directionality","_changeDetectorRef","ChangeDetectorRef","_destroyed","Subject","_keyManager","_steps","steps","QueryList","_stepHeader","_sortedHeaders","_linear","_selectedIndex","_isValidIndex","ngDevMode","Error","_anyControlsInvalidOrPending","toArray","_updateSelectedItemIndex","step","indexOf","selectionChange","selectedIndexChange","_groupId","_IdGenerator","getId","orientation","_orientation","withVerticalOrientation","ngAfterContentInit","changes","pipe","startWith","takeUntil","subscribe","filter","notifyOnChanges","ngAfterViewInit","headers","sort","a","b","documentPosition","compareDocumentPosition","Node","DOCUMENT_POSITION_FOLLOWING","FocusKeyManager","withWrap","withHomeAndEnd","updateActiveItem","change","observableOf","_layoutDirection","direction","withHorizontalOrientation","Math","max","visitedSteps","slice","ngOnDestroy","destroy","next","complete","min","length","previous","_getStepLabelId","i","_getStepContentId","markForCheck","_getAnimationDirection","position","_getFocusIndex","activeItemIndex","newIndex","stepsArray","_containsFocus","setActiveItem","_onKeydown","event","hasModifier","hasModifierKey","keyCode","manager","SPACE","ENTER","preventDefault","setFocusOrigin","onKeydown","some","control","isIncomplete","pending","stepperElement","focusedElement","_getFocusedElementPierceShadowDom","contains","ɵdir","ɵɵngDeclareDirective","minVersion","version","type","numberAttribute","CdkStepperNext","listeners","properties","CdkStepperPrevious","CdkStepperModule","NgModule","ɵmod","ɵɵngDeclareNgModule","BidiModule","exports","ɵinj","ɵɵngDeclareInjector","imports"],"mappings":"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"}
|