build(bazel): Turning on strictPropertyInitialization for Angular. (#24572)

All errors for existing fields have been detected and suppressed with a
`!` assertion.

Issue/24571 is tracking proper clean up of those instances.

One-line change required in ivy/compilation.ts, because it appears that
the new syntax causes tsickle emitted node to no longer track their
original sourceFiles.

PR Close #24572
This commit is contained in:
Rado Kirov
2018-06-18 16:38:33 -07:00
committed by Miško Hevery
parent 39c7769c9e
commit c95437f15d
189 changed files with 1273 additions and 632 deletions

View File

@ -18,7 +18,8 @@ export interface PostMessageTarget {
}
export class PostMessageBusSink implements MessageBusSink {
private _zone: NgZone;
// TODO(issue/24571): remove '!'.
private _zone !: NgZone;
private _channels: {[key: string]: _Channel} = {};
private _messageBuffer: Array<Object> = [];
@ -67,7 +68,8 @@ export class PostMessageBusSink implements MessageBusSink {
}
export class PostMessageBusSource implements MessageBusSource {
private _zone: NgZone;
// TODO(issue/24571): remove '!'.
private _zone !: NgZone;
private _channels: {[key: string]: _Channel} = {};
constructor(eventTarget?: EventTarget) {

View File

@ -17,7 +17,8 @@ import {EventDispatcher} from '../ui/event_dispatcher';
@Injectable()
export class MessageBasedRenderer2 {
private _eventDispatcher: EventDispatcher;
// TODO(issue/24571): remove '!'.
private _eventDispatcher !: EventDispatcher;
constructor(
private _brokerFactory: ServiceMessageBrokerFactory, private _bus: MessageBus,

View File

@ -21,7 +21,8 @@ export class WebWorkerPlatformLocation extends PlatformLocation {
private _location: LocationType = null !;
private _channelSource: EventEmitter<Object>;
public initialized: Promise<any>;
private initializedResolve: () => void;
// TODO(issue/24571): remove '!'.
private initializedResolve !: () => void;
constructor(
brokerFactory: ClientMessageBrokerFactory, bus: MessageBus, private _serializer: Serializer) {

View File

@ -15,7 +15,8 @@ import {RenderStore} from '../shared/render_store';
import {Serializer, SerializerTypes} from '../shared/serializer';
export class NamedEventEmitter {
private _listeners: Map<string, Function[]>;
// TODO(issue/24571): remove '!'.
private _listeners !: Map<string, Function[]>;
listen(eventName: string, callback: Function) { this._getListeners(eventName).push(callback); }

View File

@ -29,8 +29,10 @@ import {MessageBasedRenderer2} from './web_workers/ui/renderer';
*/
@Injectable()
export class WebWorkerInstance {
public worker: Worker;
public bus: MessageBus;
// TODO(issue/24571): remove '!'.
public worker !: Worker;
// TODO(issue/24571): remove '!'.
public bus !: MessageBus;
/** @internal */
public init(worker: Worker, bus: MessageBus) {

View File

@ -23,7 +23,8 @@ export function createConnectedMessageBus(): MessageBus {
}
class MockPostMessage {
private _listener: EventListener;
// TODO(issue/24571): remove '!'.
private _listener !: EventListener;
addEventListener(type: string, listener: EventListener, useCapture?: boolean): void {
if (type === 'message') {