UNPKG

drip-ui

Version:

Lightweight Mobile UI Components built on Vue

70 lines (59 loc) 1.48 kB
import _extends from "@babel/runtime/helpers/esm/extends"; import Vue from 'vue'; import DirpConfirm from './Confirm'; import { isServer } from '../utils'; var instance; var initInstance = function initInstance() { instance = new (Vue.extend(DirpConfirm))({ el: document.createElement('div') }); document.body.appendChild(instance.$el); }; var Confirm = function Confirm(options) { /* istanbul ignore if */ if (isServer) { return; } if (!instance) { initInstance(); } return _extends.apply(void 0, [instance].concat(options)); }; Confirm.defaultOptions = { visible: '', content: '', hideCancel: false, hideConfirm: false, cancelText: '取消', confirmText: '确定', textAlign: 'center', fontWeight: '500', confirm: function confirm() { instance.visible = false; }, cancel: function cancel() { instance.visible = false; } }; Confirm.show = function (options) { return Confirm(_extends({}, Confirm.currentOptions, { visible: true }, options)); }; Confirm.hide = function () { if (instance) { instance.visible = false; } }; Confirm.setDefaultOptions = function (options) { _extends(Confirm.currentOptions, options); }; Confirm.resetDefaultOptions = function () { Confirm.currentOptions = _extends({}, Confirm.defaultOptions); }; Confirm.install = function () { Vue.use(DirpConfirm); }; Vue.confirm = Vue.prototype.$confirm = Confirm; Confirm.resetDefaultOptions(); export default Confirm;