UNPKG

@qn-pandora/pandora-visualization

Version:

Pandora 通用可视化库

55 lines (54 loc) 2.02 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var language_1 = require("../language"); var defaultToaster = { info: function () { return void 0; }, success: function () { return void 0; }, warning: function () { return void 0; }, error: function () { return void 0; }, wait: function () { return void 0; }, promise: function () { return void 0; } }; var ToasterWrapper = /** @class */ (function () { function ToasterWrapper() { this.toaster = defaultToaster; } ToasterWrapper.prototype.setToaster = function (toaster) { this.toaster = toaster; }; ToasterWrapper.prototype.info = function (msg) { return this.toaster.info(msg); }; ToasterWrapper.prototype.success = function (msg) { return this.toaster.success(msg); }; ToasterWrapper.prototype.warning = function (msg) { return this.toaster.warning(msg); }; ToasterWrapper.prototype.error = function (msg) { return this.toaster.error(msg); }; ToasterWrapper.prototype.wait = function (msg) { return this.toaster.wait(msg); }; ToasterWrapper.prototype.handle = function (successText, failureText, group) { // tslint:disable-next-line:no-this-assignment var self = this; return function (_, __, decscriptor) { var method = decscriptor.value; decscriptor.value = function () { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var promise = method.apply(this, args); return promise.then(function () { return self.toaster.promise(Promise.resolve(), language_1.formatString(successText), language_1.formatString(failureText), group); }); }; return decscriptor; }; }; return ToasterWrapper; }()); exports.default = new ToasterWrapper();