@@ -27,7 +27,7 @@ import './components/repo-alerts';
2727@customElement ( 'gl-home-app' )
2828export class GlHomeApp extends GlApp < State > {
2929 static override styles = [ homeBaseStyles , scrollableBase , homeStyles ] ;
30- private disposable : Disposable | undefined ;
30+ private disposable : Disposable [ ] = [ ] ;
3131
3232 @provide ( { context : overviewStateContext } )
3333 private _overviewState ! : OverviewState ;
@@ -38,27 +38,29 @@ export class GlHomeApp extends GlApp<State> {
3838 private badgeSource = { source : 'home' , detail : 'badge' } ;
3939
4040 protected override createStateProvider ( state : State , ipc : HostIpc ) {
41- this . _overviewState = new OverviewState ( ipc ) ;
41+ this . disposable . push ( ( this . _overviewState = new OverviewState ( ipc ) ) ) ;
4242
4343 return new HomeStateProvider ( this , state , ipc ) ;
4444 }
4545
4646 override connectedCallback ( ) : void {
4747 super . connectedCallback ( ) ;
4848
49- this . disposable = this . _ipc . onReceiveMessage ( msg => {
50- switch ( true ) {
51- case DidFocusAccount . is ( msg ) :
52- this . accountContentEl . show ( ) ;
53- break ;
54- }
55- } ) ;
49+ this . disposable . push (
50+ this . _ipc . onReceiveMessage ( msg => {
51+ switch ( true ) {
52+ case DidFocusAccount . is ( msg ) :
53+ this . accountContentEl . show ( ) ;
54+ break ;
55+ }
56+ } ) ,
57+ ) ;
5658 }
5759
5860 override disconnectedCallback ( ) : void {
5961 super . disconnectedCallback ( ) ;
6062
61- this . disposable ?. dispose ( ) ;
63+ this . disposable . forEach ( d => d . dispose ( ) ) ;
6264 }
6365
6466 override render ( ) {
0 commit comments