<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">define([
    'jquery',
    'mage/utils/wrapper'
], function ($, wrapper) {
    'use strict';

    return function(targetModule){

        var initialize = targetModule.prototype.initialize;

        targetModule.prototype.initialize = wrapper.wrap(initialize, function(original){
            var mess = $('.page.messages').find('&gt; .messages .message');
            if (mess.length) {
                mess.append('&lt;span class="close-message"&gt;&lt;i class="mbi mbi-cross"&gt;&lt;/i&gt;&lt;/span&gt;');
                this.showHideMess();
            }

            original();

            //Fix for magento 2.3
            $.mage.cookies.set('mage-messages', '', {
                samesite: 'strict',
                domain: ''
            });
        });

        targetModule.prototype.showHideMess = function () {
            var $elm = $('.page .messages .message');
            setTimeout(function () {
                $elm.addClass('active');
            }, 100);
            setTimeout(function () {
                $elm.removeClass('active');
                $.mage.cookies.set('mage-messages', '', {
                    samesite: 'strict',
                    domain: ''
                });
            }, 15000);
            $('.close-message').on('click', function () {
                $elm.removeClass('active');
                $.mage.cookies.set('mage-messages', '', {
                    samesite: 'strict',
                    domain: ''
                });
            });
        };

        targetModule.prototype.prepareMessageForHtml = function (message) {
            return message;
        }

        return targetModule;
    };
});
</pre></body></html>