/** * `@drama/config/vite` 公共面 —— `defineWebPreset(overrides)` 工厂。 * * 产出 `@app/web` / `@app/studio` / `@drama/ui` 通用的 Vite config(Vue 插件、`@drama/*` * workspace 解析、build 产物约定、SPA base)。app 只传差异(入口、proxy、预渲染开关), * 经**深合并**覆盖默认(嵌套字段精确覆盖,同级默认保留)。 * * 消费示例: * // apps/web/vite.config.js * import { defineWebPreset } from '@drama/config/vite' * export default defineWebPreset({ root: '.', server: { proxy: { '/api': 'http://localhost:9007' } } }) */ import { buildBaseConfig, deepMerge } from './base.js' /** * Vite config 工厂:base 默认 + 深合并 overrides。 * @param {Record} [overrides] 用户差异(深合并进默认)。 * @param {{ env?: Record, command?: string }} [options] * @returns {Record} 可被 Vite 直接消费的 config。 */ export function defineWebPreset(overrides = {}, options = {}) { return deepMerge(buildBaseConfig(options), overrides) } export { VUE_PLUGIN_NAME } from './base.js'