// Types import { TabContentItem as TabContentItemDefinition } from "."; import { AddChildFromBuilder } from "../../core/view"; import { TabNavigationBase } from "../tab-navigation-base"; // Requires import { View, ViewBase, CSSType } from "../../core/view"; import { ContentView } from "../../content-view"; export const traceCategory = "TabView"; @CSSType("TabContentItem") export abstract class TabContentItemBase extends ContentView implements TabContentItemDefinition, AddChildFromBuilder { public eachChild(callback: (child: View) => boolean) { if (this.content) { callback(this.content); } } public loadView(view: ViewBase): void { const tabView = this.parent; if (tabView && tabView.items) { // Don't load items until their fragments are instantiated. if ((this).canBeLoaded) { super.loadView(view); } } } }