are-message
Version:
This is a React global notification message component. It is a standalone implementation of the are-visual message component.
47 lines (42 loc) • 1.23 kB
JavaScript
import createInstance from '../helper/create-instance';
import createOptions from '../helper/create-options';
import createPromise from '../helper/create-promise';
var message = {
open: function open(value, duration, options) {
var currentKey;
var promise = createPromise();
var result = function result() {
createInstance(function (instance) {
instance.remove(currentKey);
});
};
result.then = function (resolve, reject) {
return promise.instance.then(resolve, reject);
};
createInstance(function (instance) {
var params = createOptions(instance, value, duration, options);
var onClose = params.onClose,
key = params.key;
currentKey = key;
params.onClose = function () {
promise.resolve();
onClose === null || onClose === void 0 ? void 0 : onClose();
};
instance.add(params);
});
return result;
},
destroy: function destroy(key) {
createInstance(function (instance) {
instance.remove(key);
});
return message;
},
clearAll: function clearAll() {
createInstance(function (instance) {
instance.clear();
});
return message;
}
};
export default message;