Improve types of flattened-nodes-observer further.

This commit is contained in:
Peter Burns
2018-09-11 17:37:18 -07:00
parent b0aa913d51
commit 29428a822e
2 changed files with 6 additions and 7 deletions
+2 -2
View File
@@ -54,13 +54,13 @@ export class DomApi {
* Returns an instance of `FlattenedNodesObserver` that
* listens for node changes on this element.
*
* @param {function(this:Element, { target: !Element, addedNodes: !Array<!Element>, removedNodes: !Array<!Element> }):void} callback Called when direct or distributed children
* @param {function(this:HTMLElement, { target: !HTMLElement, addedNodes: !Array<!Element>, removedNodes: !Array<!Element> }):void} callback Called when direct or distributed children
* of this element changes
* @return {!FlattenedNodesObserver} Observer instance
*/
observeNodes(callback) {
return new FlattenedNodesObserver(
/** @type {!Element} */(this.node), callback);
/** @type {!HTMLElement} */(this.node), callback);
}
/**
+4 -5
View File
@@ -96,8 +96,8 @@ export class FlattenedNodesObserver {
}
/**
* @param {!Element} target Node on which to listen for changes.
* @param {?function(this: Element, { target: !Element, addedNodes: !Array<!Element>, removedNodes: !Array<!Element> }):void} callback Function called when there are additions
* @param {!HTMLElement} target Node on which to listen for changes.
* @param {?function(this: Element, { target: !HTMLElement, addedNodes: !Array<!Element>, removedNodes: !Array<!Element> }):void} callback Function called when there are additions
* or removals from the target's list of flattened nodes.
*/
constructor(target, callback) {
@@ -113,7 +113,7 @@ export class FlattenedNodesObserver {
this._nativeChildrenObserver = null;
this._connected = false;
/**
* @type {!Element}
* @type {!HTMLElement}
* @private
*/
this._target = target;
@@ -252,8 +252,7 @@ export class FlattenedNodesObserver {
addedNodes: [],
removedNodes: []
};
let newNodes = this.constructor.getFlattenedNodes(
/** @type {!HTMLElement} */ (this._target));
let newNodes = this.constructor.getFlattenedNodes(this._target);
let splices = calculateSplices(newNodes,
this._effectiveNodes);
// process removals