diff --git a/packages/fineui/src/base/foundation/message.js b/packages/fineui/src/base/foundation/message.js index 3866f2475..400185774 100644 --- a/packages/fineui/src/base/foundation/message.js +++ b/packages/fineui/src/base/foundation/message.js @@ -21,254 +21,249 @@ import { } from "../../core"; import { Toast } from "../single"; -export const Msg = (() => { - let $mask, $pop; +let $mask, $pop; - const messageShows = []; +const messageShows = []; - const toastStack = []; +const toastStack = []; - const defaultConfig = { - buttonHeight: 24, - }; +const defaultConfig = { + buttonHeight: 24, +}; - return { - alert(title, message, callback, config = defaultConfig) { - this._show(false, title, message, callback, config); - }, - confirm(title, message, callback, config = defaultConfig) { - this._show(true, title, message, callback, config); - }, - prompt(title, message, value, callback, min_width) { - // Msg.prompt(title, message, value, callback, min_width); - }, - toast(message, options, context) { - isString(options) && (options = { level: options }); - options = options || {}; - context = context || Widget._renderEngine.createElement("body"); - const level = options.level || "common"; - const autoClose = isNull(options.autoClose) ? true : options.autoClose; - const callback = isFunction(options.callback) ? options.callback : emptyFn; - const toast = createWidget({ - type: "bi.toast", - cls: "bi-message-animate bi-message-leave", - level, - autoClose, - closable: options.closable, - text: message, - listeners: [ - { - eventName: Toast.EVENT_DESTORY, - action() { - remove(toastStack, toast.element); - let _height = SIZE_CONSANTS.TOAST_TOP; - each(toastStack, (i, element) => { - element.css({ top: _height }); - _height += element.outerHeight() + 10; - }); - callback(); - }, - } - ], - }); - let height = SIZE_CONSANTS.TOAST_TOP; - each(toastStack, (i, element) => { - height += element.outerHeight() + 10; - }); - createWidget({ - type: "bi.absolute", - element: context, - items: [ - { - el: toast, - left: "50%", - top: height, - } - ], - }); - toastStack.push(toast.element); - toast.element.css({ "margin-left": (-1 * toast.element.outerWidth()) / 2 }); - toast.element.removeClass("bi-message-leave").addClass("bi-message-enter"); +export const Msg = { + alert(title, message, callback, config = defaultConfig) { + this._show(false, title, message, callback, config); + }, + confirm(title, message, callback, config = defaultConfig) { + this._show(true, title, message, callback, config); + }, + toast(message, options, context) { + isString(options) && (options = { level: options }); + options = options || {}; + context = context || Widget._renderEngine.createElement("body"); + const level = options.level || "common"; + const autoClose = isNull(options.autoClose) ? true : options.autoClose; + const callback = isFunction(options.callback) ? options.callback : emptyFn; + const toast = createWidget({ + type: "bi.toast", + cls: "bi-message-animate bi-message-leave", + level, + autoClose, + closable: options.closable, + text: message, + listeners: [ + { + eventName: Toast.EVENT_DESTORY, + action() { + remove(toastStack, toast.element); + let _height = SIZE_CONSANTS.TOAST_TOP; + each(toastStack, (i, element) => { + element.css({ top: _height }); + _height += element.outerHeight() + 10; + }); + callback(); + }, + } + ], + }); + let height = SIZE_CONSANTS.TOAST_TOP; + each(toastStack, (i, element) => { + height += element.outerHeight() + 10; + }); + createWidget({ + type: "bi.absolute", + element: context, + items: [ + { + el: toast, + left: "50%", + top: height, + } + ], + }); + toastStack.push(toast.element); + toast.element.css({ "margin-left": (-1 * toast.element.outerWidth()) / 2 }); + toast.element.removeClass("bi-message-leave").addClass("bi-message-enter"); - autoClose && - delay(() => { - toast.element.removeClass("bi-message-enter").addClass("bi-message-leave"); - toast.destroy?.(); - }, 5000); + autoClose && + delay(() => { + toast.element.removeClass("bi-message-enter").addClass("bi-message-leave"); + toast.destroy?.(); + }, 5000); - return function() { - toast.element.removeClass("bi-message-enter").addClass("bi-message-leave"); - toast.destroy?.(); - }; - }, - _show(hasCancel, title, message, callback, config) { - isNull($mask) && - ($mask = Widget._renderEngine - .createElement("