UNPKG

@alilc/lowcode-shell

Version:

Shell Layer for AliLowCodeEngine

168 lines (167 loc) 4.4 kB
import { ISettingField } from '@alilc/lowcode-designer'; import { IPublicTypeCompositeValue, IPublicTypeFieldConfig, IPublicTypeCustomView, IPublicTypeSetterType, IPublicTypeFieldExtraProps, IPublicModelSettingTopEntry, IPublicModelNode, IPublicModelComponentMeta, IPublicTypeSetValueOptions, IPublicModelSettingField, IPublicTypeDisposable } from '@alilc/lowcode-types'; import { settingFieldSymbol } from '../symbols'; export declare class SettingField implements IPublicModelSettingField { private readonly [settingFieldSymbol]; constructor(prop: ISettingField); static create(prop: ISettingField): IPublicModelSettingField; /** * 获取设置属性的 isGroup */ get isGroup(): boolean; /** * 获取设置属性的 id */ get id(): string; /** * 获取设置属性的 name */ get name(): string | number | undefined; /** * 获取设置属性的 key */ get key(): string | number | undefined; /** * 获取设置属性的 path */ get path(): any[]; /** * 获取设置属性的 title */ get title(): any; /** * 获取设置属性的 setter */ get setter(): IPublicTypeSetterType | null; /** * 获取设置属性的 expanded */ get expanded(): boolean; /** * 获取设置属性的 extraProps */ get extraProps(): IPublicTypeFieldExtraProps; get props(): IPublicModelSettingTopEntry; /** * 获取设置属性对应的节点实例 */ get node(): IPublicModelNode | null; /** * 获取设置属性的父设置属性 */ get parent(): IPublicModelSettingField | IPublicModelSettingTopEntry; /** * 获取顶级设置属性 */ get top(): IPublicModelSettingTopEntry; /** * 是否是 SettingField 实例 */ get isSettingField(): boolean; /** * componentMeta */ get componentMeta(): IPublicModelComponentMeta | null; /** * 获取设置属性的 items */ get items(): Array<IPublicModelSettingField | IPublicTypeCustomView>; /** * 设置 key 值 * @param key */ setKey(key: string | number): void; /** * @deprecated use .node instead */ getNode(): IPublicModelNode; /** * @deprecated use .parent instead */ getParent(): IPublicModelSettingField | IPublicModelSettingTopEntry<IPublicModelNode, IPublicModelSettingField>; /** * 设置值 * @param val 值 */ setValue(val: IPublicTypeCompositeValue, extraOptions?: IPublicTypeSetValueOptions): void; /** * 设置子级属性值 * @param propName 子属性名 * @param value 值 */ setPropValue(propName: string | number, value: any): void; /** * 清空指定属性值 * @param propName */ clearPropValue(propName: string | number): void; /** * 获取配置的默认值 * @returns */ getDefaultValue(): any; /** * 获取值 * @returns */ getValue(): any; /** * 获取子级属性值 * @param propName 子属性名 * @returns */ getPropValue(propName: string | number): any; /** * 获取顶层附属属性值 */ getExtraPropValue(propName: string): any; /** * 设置顶层附属属性值 */ setExtraPropValue(propName: string, value: any): void; /** * 获取设置属性集 * @returns */ getProps(): IPublicModelSettingTopEntry; /** * 是否绑定了变量 * @returns */ isUseVariable(): boolean; /** * 设置绑定变量 * @param flag */ setUseVariable(flag: boolean): void; /** * 创建一个设置 field 实例 * @param config * @returns */ createField(config: IPublicTypeFieldConfig): IPublicModelSettingField; /** * 获取值,当为变量时,返回 mock * @returns */ getMockOrValue(): any; /** * 销毁当前 field 实例 */ purge(): void; /** * 移除当前 field 实例 */ remove(): void; /** * 设置 autorun * @param action * @returns */ onEffect(action: () => void): IPublicTypeDisposable; /** * 返回 shell 模型,兼容某些场景下 field 已经是 shell field 了 * @returns */ internalToShellField(): this; }