UNPKG

@farris/renderer

Version:

Render schema to web page with farris ui.

69 lines (68 loc) 2.37 kB
import { ChangeObserverRegistry } from "@farris/devkit-vue"; import { ChangeEffectResolveService } from "../change-effect-resolver"; import { ComponentConfigResolveService } from "../component-config-resolver"; import { RenderEngineImpl } from "../render-engine"; import { FormMetadataService } from "../service"; import { Configuration } from "../config"; import { DataGridRequiredEffector, FormGroupRequiredEffector } from "../component-effectors"; import { ComponentConfigDependencyResolveService } from "../component-config-dependency-resolver"; /** * 表单引擎 */ export declare class FormEngine { private changeObserverRegistry; private changeEffectResolveService; private componentConfigResolveService; private renderEngineImpl; private formMetadataService; private formGroupRequiredEffector; private dataGridRequiredEffector; private componentConfigDependencyResolveService; constructor(changeObserverRegistry: ChangeObserverRegistry, changeEffectResolveService: ChangeEffectResolveService, componentConfigResolveService: ComponentConfigResolveService, renderEngineImpl: RenderEngineImpl, formMetadataService: FormMetadataService, formGroupRequiredEffector: FormGroupRequiredEffector, dataGridRequiredEffector: DataGridRequiredEffector, componentConfigDependencyResolveService: ComponentConfigDependencyResolveService); /** * 初始化变更观察者 */ private initChangeObservers; /** * 处理变更 */ private handleChange; /** * 处理组件变更 */ private processComponentChanges; /** * 更新组件属性 */ private updateComponentProps; /** * 应用必填效果 */ private applyRequiredEffects; /** * 根据组件类型应用必填效果器 */ private applyRequiredEffectorByType; /** * 应用数据表格必填效果 */ private applyDataGridRequiredEffects; /** * 从路径中提取列ID */ private extractColumnId; /** * 解析组件 */ resolve(components: any[]): void; /** * 过滤Schema * @param schema * @param config config中path格式:columns/enum1_2500a61c_oi2p:editor/readonly */ filterSchema(schema: any, config: Configuration): Record<string, any>; /** * 合并数组 */ private mergeArray; }