- 添加 PieSeriesOption 和 RadarSeriesOption 到 echarts 类型定义 - 添加 LegendComponentOption 和 ToolboxComponentOption 组件选项 - 重构 providePluginsOptions 函数实现深合并逻辑 - 优化 vxe-table 初始化中的表单工厂优先级处理 - 调整 playground 中的 import 语句顺序和格式
37 lines
1.1 KiB
TypeScript
37 lines
1.1 KiB
TypeScript
import type { VbenPluginsOptions } from "./types";
|
|
|
|
let globalPluginsOptions: VbenPluginsOptions | null = null;
|
|
|
|
export function providePluginsOptions(options: VbenPluginsOptions) {
|
|
if (!globalPluginsOptions) {
|
|
globalPluginsOptions = options;
|
|
return;
|
|
}
|
|
|
|
globalPluginsOptions = {
|
|
...globalPluginsOptions,
|
|
...options,
|
|
form: globalPluginsOptions.form && options.form
|
|
? { ...globalPluginsOptions.form, ...options.form }
|
|
: globalPluginsOptions.form || options.form,
|
|
modal: globalPluginsOptions.modal && options.modal
|
|
? { ...globalPluginsOptions.modal, ...options.modal }
|
|
: globalPluginsOptions.modal || options.modal,
|
|
message: globalPluginsOptions.message && options.message
|
|
? { ...globalPluginsOptions.message, ...options.message }
|
|
: globalPluginsOptions.message || options.message,
|
|
components: {
|
|
...globalPluginsOptions.components,
|
|
...options.components,
|
|
},
|
|
};
|
|
}
|
|
|
|
export function injectPluginsOptions() {
|
|
return globalPluginsOptions;
|
|
}
|
|
|
|
export function resetPluginsOptions() {
|
|
globalPluginsOptions = null;
|
|
}
|