import { VueConstructor } from 'vue' import { VxeUI } from '@vxe-ui/core' import VxeWatermarkComponent from './src/watermark' import { checkDynamic, dynamicStore, dynamicApp } from '../dynamics' import type { VxeWatermarkProps } from '../../types' export const VxeWatermark = Object.assign({}, VxeWatermarkComponent, { install (app: VueConstructor) { app.component(VxeWatermarkComponent.name as string, VxeWatermarkComponent) } }) dynamicApp.use(VxeWatermark) VxeUI.component(VxeWatermarkComponent) export const WatermarkController = { load (options: VxeWatermarkProps) { checkDynamic() dynamicStore.globalWatermark = Object.assign({}, options) return Promise.resolve() }, clear () { dynamicStore.globalWatermark = null return Promise.resolve() } } VxeUI.watermark = WatermarkController export const Watermark = VxeWatermark export default VxeWatermark