ocean_gao 3dce34b0d6 feat: plugin-watermark 提供 destroyWatermark (#124)
* feat: 水印支持动态关闭和打开

* refactor: watermark代码规范

* feat: 水印关闭逻辑优化

* fix: watermark 导出 destroyWatermark

* refactor: 代码规范

* feat: 水印性能优化

* refactor: 代码规范

* refactor: 代码规范

* fix: 重新渲染水印
2022-05-11 10:32:44 +08:00

46 lines
1.0 KiB
JavaScript

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
}
]);
};