messages.js 1.2 KB

12345678910111213141516171819202122232425262728293031
  1. /**
  2. * DO NOT EDIT THIS FILE.
  3. * See the following change record for more information,
  4. * https://www.drupal.org/node/2815083
  5. * @preserve
  6. **/
  7. (function (Drupal, once) {
  8. var closeMessage = function closeMessage(message) {
  9. var messageContainer = message.querySelector('[data-drupal-selector="messages-container"]');
  10. var closeBtnWrapper = document.createElement('div');
  11. closeBtnWrapper.setAttribute('class', 'messages__button');
  12. var closeBtn = document.createElement('button');
  13. closeBtn.setAttribute('type', 'button');
  14. closeBtn.setAttribute('class', 'messages__close');
  15. var closeBtnText = document.createElement('span');
  16. closeBtnText.setAttribute('class', 'visually-hidden');
  17. closeBtnText.innerText = Drupal.t('Close message');
  18. messageContainer.appendChild(closeBtnWrapper);
  19. closeBtnWrapper.appendChild(closeBtn);
  20. closeBtn.appendChild(closeBtnText);
  21. closeBtn.addEventListener('click', function () {
  22. message.classList.add('hidden');
  23. });
  24. };
  25. Drupal.behaviors.messages = {
  26. attach: function attach(context) {
  27. once('messages', '[data-drupal-selector="messages"]', context).forEach(closeMessage);
  28. }
  29. };
  30. Drupal.olivero.closeMessage = closeMessage;
  31. })(Drupal, once);