//硬件设备生产商 例: MingTai,TianMengZhe,LiangTian
producer?: string,
// 插件模式
mode: "development" | "production",
// 动态库目录,相对于manifest.json的相对路径, 如果设置了此目录,插件配置页就会出现动态库替换的按钮
"dynamic-lib"?: string,
// 插件唯一的appName
appName: string,
// 插件名
name: string,
// 插件描述
description: string,
// 版本
version: string,
// 插件逻辑
main?: string,
// 是否启用 develop-tool
"develop-tool": boolean,
// 插件的小图标,侧边栏和工具栏显示的
icon?: string,
// 插件的logo,插件商城和已安装插件列表中显示的
logo?: string,
// 文档地址
docs?: string,
/** 允许远程插件 */
enableRemote?: boolean,
/**
* 页面入口情况
*/
entry?: {
// 在sliderBar界面属于哪一栏
group: "tool" | 'system',
// 是否使用配置页面
useConfig?: {
title?: string | '设置',// 如果不填写,默认值是'设置''
triggerType: 'dialog' | 'trigger',// 和useAction结构保持一致,但是取值是固定的dialog,将来要用到trigger也可以
// 指定页面在pages对象里的key里
triggerName: string | 'config', // triggerName用于指定页面或trigger的实际Name
triggerAgs: { [prop: string]: any },//对于useConfig,实际用不上
// 相对于主窗口而言的
bounds?: {
x?: number,
y?: number,
width: number,
height: number,
},
// 是否可以设置窗口大小
resizable?: boolean
}
//是否有操作界面
useAction?: {
title?: '',// 如果不填写,默认使用name属性
triggerType: 'dialog' | 'trigger',//对应原来的"Button",'view'对应
// 指定页面在pages对象里的key里
triggerName: string | 'view',
triggerAgs: { [prop: string]: any }, // 如果riggerType为trigger,此处可以指定参数
// 相对于主窗口而言的
bounds?: { // triggerType=='trigger'时可以不写
x?: number,
y?: number,
width: number,
height: number,
},
// 是否可以设置窗口大小
resizable?: boolean
}
},
/** 页面列表 */
pages?: {
[props: string | 'index' | 'view' | 'config']: {
title: string,
url: string, // 可以用http或https协议,如果没有指定协议头将默认使用file协议,浏览器会将协议头转换为zwexplorer-plugin://
}
},
defineExpose?: Array<string>, // main.js导出的方法 (同publicExpose)
privateExpose?: Array<string>, // main.js导出的方法 (仅提供给它自身进行调用)
protectedExpose?: Array<string>, // main.js导出的方法 (可以各插件中调用但不能在标签页中使用)
publicExpose?: Array<string>, // main.js导出的方法 (可以在标签页及各插件中随便调用)
// 插件配置项的默认值
settings?: {
}