• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

IgniteUI / igniteui-angular / 16193550997

10 Jul 2025 11:12AM UTC coverage: 4.657% (-87.0%) from 91.64%
16193550997

Pull #16028

github

web-flow
Merge f7a9963b8 into 87246e3ce
Pull Request #16028: fix(radio-group): dynamically added radio buttons do not initialize

178 of 15764 branches covered (1.13%)

18 of 19 new or added lines in 2 files covered. (94.74%)

25721 existing lines in 324 files now uncovered.

1377 of 29570 relevant lines covered (4.66%)

0.53 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

31.82
/projects/igniteui-angular/src/lib/stepper/stepper.directive.ts
1
import { Directive, ElementRef, HostBinding, Inject, Input } from '@angular/core';
2
import { IgxStep, IGX_STEP_COMPONENT } from './stepper.common';
3
import { IgxStepperService } from './stepper.service';
4

5
/**
6
 * Allows a custom element to be added as an active step indicator.
7
 *
8
 * @igxModule IgxStepperModule
9
 * @igxTheme igx-stepper-theme
10
 * @igxKeywords stepper 
11
 * @igxGroup Layouts
12
 *
13
 * @example
14
 * <igx-stepper>
15
 *     <ng-template igxStepActiveIndicator>
16
 *          <igx-icon>edit</igx-icon>
17
 *       </ng-template>
18
 * </igx-stepper>
19
 */
20
@Directive({
21
    selector: '[igxStepActiveIndicator]',
22
    standalone: true
23
})
24
export class IgxStepActiveIndicatorDirective { }
3✔
25

26
/**
27
 * Allows a custom element to be added as a complete step indicator.
28
 *
29
 * @igxModule IgxStepperModule
30
 * @igxTheme igx-stepper-theme
31
 * @igxKeywords stepper 
32
 * @igxGroup Layouts
33
 *
34
 * @example
35
 * <igx-stepper>
36
 *     <ng-template igxStepCompletedIndicator>
37
 *          <igx-icon>check</igx-icon>
38
 *       </ng-template>
39
 * </igx-stepper>
40
 */
41
@Directive({
42
    selector: '[igxStepCompletedIndicator]',
43
    standalone: true
44
})
45
export class IgxStepCompletedIndicatorDirective { }
3✔
46

47
/**
48
 * Allows a custom element to be added as an invalid step indicator.
49
 *
50
 * @igxModule IgxStepperModule
51
 * @igxTheme igx-stepper-theme
52
 * @igxKeywords stepper 
53
 * @igxGroup Layouts
54
 *
55
 * @example
56
 * <igx-stepper>
57
 *     <ng-template igxStepInvalidIndicator>
58
 *          <igx-icon>error</igx-icon>
59
 *       </ng-template>
60
 * </igx-stepper>
61
 */
62
@Directive({
63
    selector: '[igxStepInvalidIndicator]',
64
    standalone: true
65
})
66
export class IgxStepInvalidIndicatorDirective { }
3✔
67

68
/**
69
 * Allows a custom element to be added as a step indicator.
70
 *
71
 * @igxModule IgxStepperModule
72
 * @igxTheme igx-stepper-theme
73
 * @igxKeywords stepper 
74
 * @igxGroup Layouts
75
 *
76
 * @example
77
 * <igx-stepper>
78
 *     <igx-step>
79
 *         <igx-icon igxStepIndicator>home</igx-icon>
80
 *     </igx-step>
81
 * </igx-stepper>
82
 */
83
@Directive({
84
    selector: '[igxStepIndicator]',
85
    standalone: true
86
})
87
export class IgxStepIndicatorDirective { }
3✔
88

89
/**
90
 * Allows a custom element to be added as a step title.
91
 *
92
 * @igxModule IgxStepperModule
93
 * @igxTheme igx-stepper-theme
94
 * @igxKeywords stepper 
95
 * @igxGroup Layouts
96
 *
97
 * @example
98
 * <igx-stepper>
99
 *     <igx-step>
100
 *         <p igxStepTitle>Home</p>
101
 *     </igx-step>
102
 * </igx-stepper>
103
 */
104
@Directive({
105
    selector: '[igxStepTitle]',
106
    standalone: true
107
})
108
export class IgxStepTitleDirective {
3✔
109
    @HostBinding('class.igx-stepper__step-title')
UNCOV
110
    public defaultClass = true;
×
111
}
112

113
/**
114
 * Allows a custom element to be added as a step subtitle.
115
 *
116
 * @igxModule IgxStepperModule
117
 * @igxTheme igx-stepper-theme
118
 * @igxKeywords stepper 
119
 * @igxGroup Layouts
120
 *
121
 * @example
122
 * <igx-stepper>
123
 *     <igx-step>
124
 *         <p igxStepSubtitle>Home Subtitle</p>
125
 *     </igx-step>
126
 * </igx-stepper>
127
 */
128
@Directive({
129
    selector: '[igxStepSubtitle]',
130
    standalone: true
131
})
132
export class IgxStepSubtitleDirective {
3✔
133
    @HostBinding('class.igx-stepper__step-subtitle')
UNCOV
134
    public defaultClass = true;
×
135
}
136

137
/**
138
 * Allows a custom element to be added as a step content.
139
 *
140
 * @igxModule IgxStepperModule
141
 * @igxTheme igx-stepper-theme
142
 * @igxKeywords stepper 
143
 * @igxGroup Layouts
144
 *
145
 * @example
146
 * <igx-stepper>
147
 *     <igx-step>
148
 *         <div igxStepContent>...</div>
149
 *     </igx-step>
150
 * </igx-stepper>
151
 */
152
@Directive({
153
    selector: '[igxStepContent]',
154
    standalone: true
155
})
156
export class IgxStepContentDirective {
3✔
157
    private get target(): IgxStep {
UNCOV
158
        return this.step;
×
159
    }
160

161
    @HostBinding('class.igx-stepper__step-content')
UNCOV
162
    public defaultClass = true;
×
163

164
    @HostBinding('attr.role')
UNCOV
165
    public role = 'tabpanel';
×
166

167
    @HostBinding('attr.aria-labelledby')
168
    public get stepId(): string {
UNCOV
169
        return this.target.id;
×
170
    }
171

172
    @HostBinding('attr.id')
173
    @Input()
UNCOV
174
    public id = this.target.id.replace('step', 'content');
×
175

176
    @HostBinding('attr.tabindex')
177
    @Input()
178
    public get tabIndex(): number {
UNCOV
179
        if (this._tabIndex !== null) {
×
180
            return this._tabIndex;
×
181
        }
182

UNCOV
183
        return this.stepperService.activeStep === this.target ? 0 : -1;
×
184
    }
185

186
    public set tabIndex(val: number) {
187
        this._tabIndex = val;
×
188
    }
189

UNCOV
190
    private _tabIndex = null;
×
191

192
    constructor(
UNCOV
193
        @Inject(IGX_STEP_COMPONENT) private step: IgxStep,
×
UNCOV
194
        private stepperService: IgxStepperService,
×
UNCOV
195
        public elementRef: ElementRef<HTMLElement>
×
196
    ) { }
197
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc