diff --git a/app/assets/javascripts/views/abstract/pure_view_ctrl.ts b/app/assets/javascripts/views/abstract/pure_view_ctrl.ts index 4b1978dd5..ecd42d674 100644 --- a/app/assets/javascripts/views/abstract/pure_view_ctrl.ts +++ b/app/assets/javascripts/views/abstract/pure_view_ctrl.ts @@ -4,18 +4,20 @@ import { WebApplication } from '@/ui_models/application'; export type CtrlState = Partial> export type CtrlProps = Partial> -export class PureViewCtrl { +export class PureViewCtrl

{ $timeout: ng.ITimeoutService /** Passed through templates */ application!: WebApplication - props: CtrlProps = {} - state: CtrlState = {} + state: S = {} as any private unsubApp: any private unsubState: any - private stateTimeout: any + private stateTimeout?: ng.IPromise /* @ngInject */ - constructor($timeout: ng.ITimeoutService) { + constructor( + $timeout: ng.ITimeoutService, + public props: P = {} as any + ) { this.$timeout = $timeout; } @@ -53,8 +55,8 @@ export class PureViewCtrl { } /** @override */ - getInitialState() { - return {}; + getInitialState(): S { + return {} as any; } async setState(state: CtrlState) {