import { join } from 'path'; const namespace = 'plugin-watermark'; export default (api) => { api.describe({ key: 'watermark', config: { schema(joi) { return joi.object({ disabled: joi.boolean() }); }, default: {} } }); const absoluteFilePath = join(namespace, 'core.js'); // 当配置为disabled时不显示水印 api.modifyConfig((memo) => { const defineConfig = memo.define; defineConfig.WATERMARK_DISABLED = memo.watermark.disabled ?? false; return { ...memo, define: defineConfig }; }); api.onGenerateFiles(() => { api.copyTmpFiles({ namespace, path: join(__dirname, 'runtime'), ignore: ['.tpl'] }); }); api.addPluginExports(() => [ { specifiers: ['createWatermark', 'destroyWatermark'], source: absoluteFilePath } ]); };