diff --git a/nativescript-angular/element-registry.ts b/nativescript-angular/element-registry.ts index d9715d880..113eb91e2 100644 --- a/nativescript-angular/element-registry.ts +++ b/nativescript-angular/element-registry.ts @@ -2,36 +2,35 @@ import { View } from "tns-core-modules/ui/core/view"; import { LayoutBase } from "tns-core-modules/ui/layouts/layout-base"; export type NgView = (View & ViewExtensions); -export type NgElement = NgView | InvisibleNode; export interface ViewExtensions { meta: ViewClassMeta; nodeType: number; nodeName: string; templateParent: NgView; - nextSibling: NgElement; - firstChild: NgElement; - lastChild: NgElement; + nextSibling: NgView; + firstChild: NgView; + lastChild: NgView; ngCssClasses: Map; } export interface ElementReference { - previous: NgElement; - next: NgElement; + previous: NgView; + next: NgView; } export interface ViewClass { new (): View; } -export abstract class InvisibleNode extends View implements ViewExtensions { +export abstract class InvisibleNode extends View implements NgView { meta: { skipAddToDom: boolean }; nodeType: number; nodeName: string; templateParent: NgView; - nextSibling: NgElement; - firstChild: NgElement; - lastChild: NgElement; + nextSibling: NgView; + firstChild: NgView; + lastChild: NgView; ngCssClasses: Map; constructor() { diff --git a/nativescript-angular/renderer.ts b/nativescript-angular/renderer.ts index 15188d241..c792fd76a 100644 --- a/nativescript-angular/renderer.ts +++ b/nativescript-angular/renderer.ts @@ -13,7 +13,7 @@ import { profile } from "tns-core-modules/profiling"; import { APP_ROOT_VIEW, DEVICE, getRootPage } from "./platform-providers"; import { isBlank } from "./lang-facade"; import { ViewUtil } from "./view-util"; -import { NgView, NgElement, InvisibleNode, ElementReference, isDetachedElement } from "./element-registry"; +import { NgView, InvisibleNode, ElementReference, isDetachedElement } from "./element-registry"; import { rendererLog as traceLog } from "./trace"; // CONTENT_ATTR not exported from NativeScript_renderer - we need it for styles application. @@ -76,7 +76,7 @@ export class NativeScriptRenderer extends Renderer2 { data: { [key: string]: any } = Object.create(null); constructor( - private rootView: NgElement, + private rootView: NgView, private zone: NgZone, private viewUtil: ViewUtil ) { @@ -85,20 +85,20 @@ export class NativeScriptRenderer extends Renderer2 { } @profile - appendChild(parent: NgElement, newChild: NgElement): void { + appendChild(parent: NgView, newChild: NgView): void { traceLog(`NativeScriptRenderer.appendChild child: ${newChild} parent: ${parent}`); this.viewUtil.insertChild(parent, newChild); } @profile - insertBefore(parent: NgElement, newChild: NgElement, { previous, next }: ElementReference): void { + insertBefore(parent: NgView, newChild: NgView, { previous, next }: ElementReference): void { traceLog(`NativeScriptRenderer.insertBefore child: ${newChild} ` + `parent: ${parent} previous: ${previous} next: ${next}`); this.viewUtil.insertChild(parent, newChild, previous, next); } @profile - removeChild(parent: any, oldChild: NgElement): void { + removeChild(parent: any, oldChild: NgView): void { traceLog(`NativeScriptRenderer.removeChild child: ${oldChild} parent: ${parent}`); this.viewUtil.removeChild(parent, oldChild); } @@ -116,7 +116,7 @@ export class NativeScriptRenderer extends Renderer2 { } @profile - nextSibling(node: NgElement): ElementReference { + nextSibling(node: NgView): ElementReference { traceLog(`NativeScriptRenderer.nextSibling of ${node} is ${node.nextSibling}`); let next = node.nextSibling; @@ -137,7 +137,7 @@ export class NativeScriptRenderer extends Renderer2 { } @profile - createElement(name: any, _namespace: string): NgElement { + createElement(name: any, _namespace: string): NgView { traceLog(`NativeScriptRenderer.createElement: ${name}`); return this.viewUtil.createView(name); } @@ -155,7 +155,7 @@ export class NativeScriptRenderer extends Renderer2 { } @profile - projectNodes(parentElement: NgElement, nodes: NgElement[]): void { + projectNodes(parentElement: NgView, nodes: NgView[]): void { traceLog("NativeScriptRenderer.projectNodes"); nodes.forEach((node) => this.viewUtil.insertChild(parentElement, node)); } @@ -168,13 +168,13 @@ export class NativeScriptRenderer extends Renderer2 { } @profile - setAttribute(view: NgElement, name: string, value: string, namespace?: string) { + setAttribute(view: NgView, name: string, value: string, namespace?: string) { traceLog(`NativeScriptRenderer.setAttribute ${view} : ${name} = ${value}, namespace: ${namespace}`); return this.viewUtil.setProperty(view, name, value, namespace); } @profile - removeAttribute(_el: NgElement, _name: string): void { + removeAttribute(_el: NgView, _name: string): void { traceLog(`NativeScriptRenderer.removeAttribute ${_el}: ${_name}`); } @@ -185,25 +185,25 @@ export class NativeScriptRenderer extends Renderer2 { } @profile - addClass(view: NgElement, name: string): void { + addClass(view: NgView, name: string): void { traceLog(`NativeScriptRenderer.addClass ${name}`); this.viewUtil.addClass(view, name); } @profile - removeClass(view: NgElement, name: string): void { + removeClass(view: NgView, name: string): void { traceLog(`NativeScriptRenderer.removeClass ${name}`); this.viewUtil.removeClass(view, name); } @profile - setStyle(view: NgElement, styleName: string, value: any, _flags?: RendererStyleFlags2): void { + setStyle(view: NgView, styleName: string, value: any, _flags?: RendererStyleFlags2): void { traceLog(`NativeScriptRenderer.setStyle: ${styleName} = ${value}`); this.viewUtil.setStyle(view, styleName, value); } @profile - removeStyle(view: NgElement, styleName: string, _flags?: RendererStyleFlags2): void { + removeStyle(view: NgView, styleName: string, _flags?: RendererStyleFlags2): void { traceLog("NativeScriptRenderer.removeStyle: ${styleName}"); this.viewUtil.removeStyle(view, styleName); } @@ -211,7 +211,7 @@ export class NativeScriptRenderer extends Renderer2 { // Used only in debug mode to serialize property changes to comment nodes, // such as