UNPKG

ivue-material-plus

Version:

A high quality UI components Library with Vue.js

86 lines (81 loc) 2.14 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var vue = require('vue'); var imagePreview = require('./image-preview.js'); var helpers = require('../../utils/helpers.js'); imagePreview["default"].newInstance = (properties) => { if (!helpers.isClient) { return; } const _props = properties || {}; let _instance = null; const Instance = vue.createApp({ data() { return Object.assign({}, _props, { visible: false, previewList: [], initialIndex: 0, toolbar: [ "zoomIn", "zoomOut", "original", "rotateLeft", "rotateRight", "download" ], infinite: true, maskClosable: true, transfer: true }); }, created() { _instance = vue.getCurrentInstance(); }, methods: { handleClose() { this.visible = false; setTimeout(() => { this.destroy(); this.removeInstance(); }, 300); }, destroy() { Instance.unmount(); document.body.removeChild(container); }, removeInstance() { } }, render() { return vue.h( imagePreview["default"], Object.assign({}, _props, { ref: "imagePreview", modelValue: this.visible, previewList: this.previewList, initialIndex: this.initialIndex, toolbar: this.toolbar, infinite: this.infinite, maskClosable: this.maskClosable, transfer: this.transfer, "onOn-close": this.handleClose }) ); } }); const container = document.createElement("div"); document.body.appendChild(container); Instance.mount(container); const imagePreview$1 = _instance.refs.imagePreview; return { show(options) { Object.keys(options).forEach((key) => { imagePreview$1.$parent[key] = options[key]; }); imagePreview$1.$parent.visible = true; }, component: imagePreview$1 }; }; exports["default"] = imagePreview["default"]; //# sourceMappingURL=image-preview-global.js.map