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

@ -26,15 +26,18 @@ const JSONP_ERR_WRONG_METHOD = 'JSONP requests must use GET request method.';
* @deprecated see https://angular.io/guide/http
*/
export class JSONPConnection implements Connection {
private _id: string;
private _script: Element;
// TODO(issue/24571): remove '!'.
private _id !: string;
// TODO(issue/24571): remove '!'.
private _script !: Element;
private _responseData: any;
private _finished: boolean = false;
/**
* The {@link ReadyState} of this request.
*/
readyState: ReadyState;
// TODO(issue/24571): remove '!'.
readyState !: ReadyState;
/**
* The outgoing HTTP request.

View File

@ -37,7 +37,8 @@ export class XHRConnection implements Connection {
* `XMLHttpRequest`.
*/
response: Observable<Response>;
readyState: ReadyState;
// TODO(issue/24571): remove '!'.
readyState !: ReadyState;
constructor(req: Request, browserXHR: BrowserXhr, baseResponseOptions?: ResponseOptions) {
this.request = req;
this.response = new Observable<Response>((responseObserver: Observer<Response>) => {

View File

@ -27,8 +27,10 @@ export abstract class ConnectionBackend { abstract createConnection(request: any
* @deprecated see https://angular.io/guide/http
*/
export abstract class Connection {
readyState: ReadyState;
request: Request;
// TODO(issue/24571): remove '!'.
readyState !: ReadyState;
// TODO(issue/24571): remove '!'.
request !: Request;
response: any; // TODO: generic of <Response>;
}

View File

@ -70,13 +70,15 @@ export class Response extends Body {
* Denotes how many of the response body's bytes have been loaded, for example if the response is
* the result of a progress event.
*/
bytesLoaded: number;
// TODO(issue/24571): remove '!'.
bytesLoaded !: number;
/**
* Non-standard property
*
* Denotes how many bytes are expected in the final response body.
*/
totalBytes: number;
// TODO(issue/24571): remove '!'.
totalBytes !: number;
/**
* Headers object based on the `Headers` class in the [Fetch
* Spec](https://fetch.spec.whatwg.org/#headers-class).