@@ -29,9 +29,9 @@ import {
29
29
host : { '[class]' : 'hostClasses()' , '[style]' : '{ display: "none" }' }
30
30
} )
31
31
export class CollapseDirective implements OnDestroy {
32
+ readonly #animationBuilder = inject ( AnimationBuilder ) ;
32
33
readonly #hostElement = inject ( ElementRef ) ;
33
34
readonly #renderer = inject ( Renderer2 ) ;
34
- readonly #animationBuilder = inject ( AnimationBuilder ) ;
35
35
#player: AnimationPlayer | undefined = undefined ;
36
36
37
37
constructor ( ) {
@@ -158,7 +158,9 @@ export class CollapseDirective implements OnDestroy {
158
158
this . #renderer. addClass ( host , 'collapsing' ) ;
159
159
this . #renderer. removeClass ( host , 'show' ) ;
160
160
this . #renderer. setStyle ( host , dimension , visible ? `${ ( host as any ) [ scrollSize ] } px` : '' ) ;
161
- this . collapseChange ?. emit ( visible ? 'opening' : 'collapsing' ) ;
161
+ if ( this . #player) {
162
+ this . collapseChange ?. emit ( visible ? 'opening' : 'collapsing' ) ;
163
+ }
162
164
} ) ;
163
165
164
166
this . #player. onDone ( ( ) => {
@@ -170,9 +172,11 @@ export class CollapseDirective implements OnDestroy {
170
172
} else {
171
173
this . #renderer. removeClass ( host , 'show' ) ;
172
174
}
173
- this . collapseChange ?. emit ( visible ? 'open' : 'collapsed' ) ;
175
+ if ( this . #player) {
176
+ this . collapseChange ?. emit ( visible ? 'open' : 'collapsed' ) ;
177
+ this . visibleChange ?. emit ( visible ) ;
178
+ }
174
179
this . destroyPlayer ( ) ;
175
- this . visibleChange . emit ( visible ) ;
176
180
} ) ;
177
181
178
182
this . #player?. play ( ) ;
0 commit comments