refactor(platform-browser): compatibility with typescript strict flag (#30993)
As part of FW-1265, the `@angular/platform-browser` package is made compatible with the TypeScript `--strict` flag. Read more about the strict flag [here](https://www.typescriptlang.org/docs/handbook/compiler-options.html) PR Close #30993
This commit is contained in:
parent
5bd12c5aa1
commit
18f0c2f1d4
|
@ -63,9 +63,9 @@ const _chromeNumKeyPadMap = {
|
||||||
'\x90': 'NumLock'
|
'\x90': 'NumLock'
|
||||||
};
|
};
|
||||||
|
|
||||||
const nodeContains: (a: any, b: any) => boolean = (() => {
|
const nodeContains: (this: Node, other: Node) => boolean = (() => {
|
||||||
if (global['Node']) {
|
if (global['Node']) {
|
||||||
return global['Node'].prototype.contains || function(node: any) {
|
return global['Node'].prototype.contains || function(this: Node, node: any) {
|
||||||
return !!(this.compareDocumentPosition(node) & 16);
|
return !!(this.compareDocumentPosition(node) & 16);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -61,7 +61,7 @@ interface TaskData {
|
||||||
|
|
||||||
// a global listener to handle all dom event,
|
// a global listener to handle all dom event,
|
||||||
// so we do not need to create a closure every time
|
// so we do not need to create a closure every time
|
||||||
const globalListener = function(event: Event) {
|
const globalListener = function(this: any, event: Event) {
|
||||||
const symbolName = symbolNames[event.type];
|
const symbolName = symbolNames[event.type];
|
||||||
if (!symbolName) {
|
if (!symbolName) {
|
||||||
return;
|
return;
|
||||||
|
@ -123,15 +123,17 @@ export class DomEventsPlugin extends EventManagerPlugin {
|
||||||
}
|
}
|
||||||
const delegate = (Event.prototype as any)[stopMethodSymbol] =
|
const delegate = (Event.prototype as any)[stopMethodSymbol] =
|
||||||
Event.prototype.stopImmediatePropagation;
|
Event.prototype.stopImmediatePropagation;
|
||||||
Event.prototype.stopImmediatePropagation = function() {
|
Event.prototype.stopImmediatePropagation = function(this: any) {
|
||||||
if (this) {
|
if (this) {
|
||||||
this[stopSymbol] = true;
|
this[stopSymbol] = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// should call native delegate in case
|
// We should call native delegate in case in some environment part of
|
||||||
// in some environment part of the application
|
// the application will not use the patched Event. Also we cast the
|
||||||
// will not use the patched Event
|
// "arguments" to any since "stopImmediatePropagation" technically does not
|
||||||
delegate && delegate.apply(this, arguments);
|
// accept any arguments, but we don't know what developers pass through the
|
||||||
|
// function and we want to not break these calls.
|
||||||
|
delegate && delegate.apply(this, arguments as any);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue