@bigfishtv/cockpit
Version:
93 lines (79 loc) • 2.58 kB
JavaScript
;
exports.__esModule = true;
exports.notifySuccess = notifySuccess;
exports.notifyFailure = notifyFailure;
exports.notifyWarning = notifyWarning;
exports.addNotification = addNotification;
exports.dismissNotification = dismissNotification;
var _ActionTypes = require('../constants/ActionTypes');
var _newId = require('../utils/newId');
var _newId2 = _interopRequireDefault(_newId);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/**
* Action for displaying a success styled notification
* @param {String} message
* @param {Number} autoDismiss - time in MS to auto dismiss
* @return {Object} returns action
*/
/**
* @module Actions/notifications
*/
function notifySuccess(message) {
var autoDismiss = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
return addNotification({
id: (0, _newId2.default)(),
status: 'success',
message: message,
autoDismiss: autoDismiss
});
}
/**
* Action for displaying a fail styled notification
* @param {String} message
* @param {Number} autoDismiss - time in MS to auto dismiss
* @return {Object} returns action
*/
function notifyFailure(message) {
var autoDismiss = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
return addNotification({
id: (0, _newId2.default)(),
status: 'error',
message: message,
autoDismiss: autoDismiss
});
}
/**
* Action for displaying a warning styled notification
* @param {String} message
* @param {Number} autoDismiss - time in MS to auto dismiss
* @return {Object} returns action
*/
function notifyWarning(message) {
var autoDismiss = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
return addNotification({
id: (0, _newId2.default)(),
status: 'warning',
message: message,
autoDismiss: autoDismiss
});
}
/**
* Action for adding a notification
* @param {Object} notification
* @param {String} notification.id
* @param {String} notification.status - e.g. 'warning'
* @param {String} notification.message
* @param {Number} notification.autoDismiss - time in MS to auto dismiss
* @return {Object} returns action
*/
function addNotification(notification) {
return { type: _ActionTypes.NOTIFICATION_ADDED, notification: notification };
}
/**
* Action for dismissing a notification
* @param {Object} id - notification id
* @return {Object} returns action
*/
function dismissNotification(id) {
return { type: _ActionTypes.NOTIFICATION_DISMISSED, id: id };
}