diff options
Diffstat (limited to 'app/assets/javascripts/flash.js')
-rw-r--r-- | app/assets/javascripts/flash.js | 74 |
1 files changed, 25 insertions, 49 deletions
diff --git a/app/assets/javascripts/flash.js b/app/assets/javascripts/flash.js index d26a6bc5f6b..2bec39ff4d8 100644 --- a/app/assets/javascripts/flash.js +++ b/app/assets/javascripts/flash.js @@ -66,55 +66,6 @@ const removeFlashClickListener = (flashEl, fadeTransition) => { * along with ability to provide actionConfig which can be used to show * additional action or link on banner next to message * - * @param {String} message Flash message text - * @param {String} type Type of Flash, it can be `notice`, `success`, `warning` or `alert` (default) - * @param {Object} parent Reference to parent element under which Flash needs to appear - * @param {Object} actionConfig Map of config to show action on banner - * @param {String} href URL to which action config should point to (default: '#') - * @param {String} title Title of action - * @param {Function} clickHandler Method to call when action is clicked on - * @param {Boolean} fadeTransition Boolean to determine whether to fade the alert out - */ -const deprecatedCreateFlash = function deprecatedCreateFlash( - message, - type = FLASH_TYPES.ALERT, - parent = document, - actionConfig = null, - fadeTransition = true, - addBodyClass = false, -) { - const flashContainer = parent.querySelector('.flash-container'); - - if (!flashContainer) return null; - - flashContainer.innerHTML = createFlashEl(message, type); - - const flashEl = flashContainer.querySelector(`.flash-${type}`); - - if (actionConfig) { - flashEl.innerHTML += createAction(actionConfig); - - if (actionConfig.clickHandler) { - flashEl - .querySelector('.flash-action') - .addEventListener('click', (e) => actionConfig.clickHandler(e)); - } - } - - removeFlashClickListener(flashEl, fadeTransition); - - flashContainer.style.display = 'block'; - - if (addBodyClass) document.body.classList.add('flash-shown'); - - return flashContainer; -}; - -/* - * Flash banner supports different types of Flash configurations - * along with ability to provide actionConfig which can be used to show - * additional action or link on banner next to message - * * @param {Object} options Options to control the flash message * @param {String} options.message Flash message text * @param {String} options.type Type of Flash, it can be `notice`, `success`, `warning` or `alert` (default) @@ -166,6 +117,31 @@ const createFlash = function createFlash({ return flashContainer; }; +/* + * Flash banner supports different types of Flash configurations + * along with ability to provide actionConfig which can be used to show + * additional action or link on banner next to message + * + * @param {String} message Flash message text + * @param {String} type Type of Flash, it can be `notice`, `success`, `warning` or `alert` (default) + * @param {Object} parent Reference to parent element under which Flash needs to appear + * @param {Object} actionConfig Map of config to show action on banner + * @param {String} href URL to which action config should point to (default: '#') + * @param {String} title Title of action + * @param {Function} clickHandler Method to call when action is clicked on + * @param {Boolean} fadeTransition Boolean to determine whether to fade the alert out + */ +const deprecatedCreateFlash = function deprecatedCreateFlash( + message, + type, + parent, + actionConfig, + fadeTransition, + addBodyClass, +) { + return createFlash({ message, type, parent, actionConfig, fadeTransition, addBodyClass }); +}; + export { createFlash as default, deprecatedCreateFlash, |