UNPKG

@rdkmaster/jigsaw-labs

Version:

Jigsaw, the next generation component set for RDK

93 lines (92 loc) 3 kB
import { AfterViewInit, ComponentFactoryResolver, ElementRef, EventEmitter, NgZone, OnDestroy, OnInit, QueryList, Renderer2 } from "@angular/core"; import { ComponentMetaData, LayoutData } from "../../core/data/layout-data"; import { JigsawRendererHost } from "../common"; import { JigsawResizableBoxBase } from "./common-box"; export declare class JigsawEditableBox extends JigsawResizableBoxBase implements AfterViewInit, OnDestroy, OnInit { private _componentFactoryResolver; constructor(elementRef: ElementRef, renderer: Renderer2, zone: NgZone, _componentFactoryResolver: ComponentFactoryResolver); private _data; data: LayoutData; private _editable; editable: boolean; editableChange: EventEmitter<boolean>; blocked: boolean; showOptionBar: boolean; /** * @internal */ _isFirst: boolean; parent: JigsawEditableBox; showTabBar: boolean; private _resizeLineWidth; resizeLineWidth: string; dataChange: EventEmitter<LayoutData>; directionChange: EventEmitter<string>; growChange: EventEmitter<number>; fill: EventEmitter<JigsawEditableBox>; fillTabs: EventEmitter<JigsawEditableBox>; add: EventEmitter<any>; remove: EventEmitter<any>; /** * 内部事件,只在box内部广播,应用监听`remove`(没有下划线开头)。 * @type {EventEmitter<LayoutData>} * @private */ _remove: EventEmitter<LayoutData>; protected childrenBox: QueryList<JigsawEditableBox>; _rendererHost: JigsawRendererHost; resizeLine: ElementRef; private _removeDataRefreshListener; _viewInit: EventEmitter<{}>; /** * @internal */ _$addBox(direction: string): void; /** * @internal */ _$addTabsWrapper(): void; private _updateBoxReference(data, box); /** * @internal */ _$remove(): void; /** * @internal */ _$removeBox(item: LayoutData): void; private _moveComponents(moveOut, moveIn); private _updateDirection(); private _setRootProperty(); /** * @internal */ _$addContent(): void; addContent(componentMetaDataList: ComponentMetaData[]): void; clearContent(): void; /** * 根据componentMetaDataList信息在box里面渲染需要的组件 * @param {ComponentMetaData[]} componentMetaDataList * @private */ private _renderComponents(componentMetaDataList); private _rendererFactory(renderer, inputs); /** * 绑定box的滚动监听,处理option bar & block的位置问题 * @private */ private _bindScrollEvent(); /** * @internal */ _$handleResizeStart(event: any): void; /** * @internal */ _$handleResizeEnd(): void; private _emitResizeEvent(eventType); private _getAffectedBoxes(box, arr); ngOnInit(): void; ngAfterViewInit(): void; ngOnDestroy(): void; }