import { join } from 'path'; import { name } from '../package.json'; 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, }, ]); api.addConfigType(() => ({ source: name, })); };