@farris/command-services-vue
Version:
Render schema to web page with farris ui.
121 lines (119 loc) • 2.81 kB
TypeScript
import { Module, ViewModel, ViewModelState } from '@farris/devkit-vue';
import { RenderEngineService } from './render-engine.service';
/**
* 弹窗服务
*/
export declare class DialogService {
/**
* 开发框架
*/
private devkit;
/**
* 模块
*/
private module;
/**
* 视图模型
*/
private viewModel;
/**
* 渲染引擎
*/
private renderEngineService;
/**
* 构造函数
*/
constructor(viewModel: ViewModel<ViewModelState>, renderEngineService: RenderEngineService);
/**
* 打开弹窗
* @param config 弹窗配置,支持的配置报错:{ title, width, height }
* @param modalId 弹窗容器ID
* @param params 弹窗初始化参数
* @param callback 弹窗打开后的回调方法
*/
openModal(config: string | ModalConfig, modalId: string, params: string | Record<string, any>, callback?: (modalRef: any) => any): void;
/**
* 获取弹窗内的表单模块
*/
getModalModule(modalId: string): Module;
/**
* 根据ID打开帮助
*/
openLookup(config: string | LookupConfig, lookupId: string): void;
/**
* 打开类帮助弹窗
* @param frameId 列表数据所在的组件ID
* @param params 弹窗初始化参数
* @param configs 弹窗配置
*/
openHelpModal(frameId: string, params: string | Record<string, any>, configs?: string | Record<string, any>): void;
/**
* 打开带回调的弹窗
* @param frameId 列表数据所在的组件ID
* @param params 弹窗初始化参数
* @param configs 弹窗配置
*/
openCallbackableModal(frameId: string, params?: string | Record<string, any>, configs?: string | Record<string, any>): void;
/**
* 弹窗确认按钮点击处理
*/
confirm(): void;
/**
* 弹窗取消按钮点击处理
*/
cancel(event?: any): void;
/**
* 关闭弹窗
*/
closeModal(): void;
/**
* 构造弹窗属性
*/
private buildModalProps;
/**
* 构造帮助属性
*/
private buildLookupProps;
/**
* 标准化对象
*/
private normalizeConfig;
/**
* 移除对象中值为undefined的属性
*/
private stripUndefinedProps;
/**
* 设置弹窗参数
*/
private setModalParams;
/**
* 根据弹窗ID获取弹窗内的模块ID
*/
private getModalModuleId;
}
/**
* 弹窗配置
*/
export interface ModalConfig {
/**
* 弹窗标题
*/
title?: string;
/**
* 弹窗宽度
*/
width?: number;
/**
* 弹窗高度
*/
height?: number;
}
/**
* 帮助配置
*/
export interface LookupConfig {
/**
* 帮助标题
*/
title?: string;
}