UNPKG

coveo-search-ui

Version:

Coveo JavaScript Search Framework

121 lines (120 loc) 4.91 kB
var Coveo; !(function (e) { !(function (e) { function c(e, l) { e.className = e.className.replace(new RegExp('(^|\\s)' + l + '(\\s|\\b)', 'g'), '$1'); } !(function (e) { (e[(e.OK = 1)] = 'OK'), (e[(e.APPLY = 2)] = 'APPLY'), (e[(e.YES = 4)] = 'YES'), (e[(e.NO = 8)] = 'NO'), (e[(e.CANCEL = 16)] = 'CANCEL'); })(e.BUTTON || (e.BUTTON = {})); var l = e.BUTTON, d = []; (e.open = function o(e, s) { void 0 === s && (s = {}); var r = s.body || document.body; r.className ? -1 == r.className.indexOf('coveo-modal-opened') && (r.className += ' coveo-modal-opened') : (r.className = 'coveo-modal-opened'); var i = document.createElement('div'); (i.className = 'coveo-modal-container coveo-opened '), 'small' == s.sizeMod && (i.className += ' coveo-mod-small'), 'big' == s.sizeMod && (i.className += ' coveo-mod-big'), setTimeout(function () { i.className += ' coveo-mod-fade-in-scale'; }, 0), r.appendChild(i), !0 === s.fullscreen && (i.className += ' coveo-fullscreen'); var v = document.createElement('div'); (v.className = 'coveo-modal-backdrop coveo-modal-transparent'), r.appendChild(v), setTimeout(function () { c(v, 'coveo-modal-transparent'); }, 0); var u = document.createElement('div'); (u.className = 'coveo-modal-content'), i.appendChild(u); var m = function (e, l) { if ((void 0 === e && (e = 0), void 0 === l && (l = !1), !1 !== (null == s.validation || s.validation(e)) || l)) { i.parentElement && i.parentElement.removeChild(i); var u = d.indexOf(m); return ( document.removeEventListener('keyup', N), u >= 0 && d.splice(u, 1), null == r.querySelector('.coveo-modal-container') && c(r, 'coveo-modal-opened'), v.parentNode && v.parentNode.removeChild(v), !0 ); } return !1; }, p = (function a(e, l) { var d = document.createElement('header'); if (((d.className = 'coveo-modal-header'), null != e.title)) { var s = document.createElement('h1'); d.appendChild(s), e.title instanceof HTMLElement ? s.appendChild(e.title) : (s.innerHTML = e.title), !0 === e.titleClose && s.addEventListener('click', function () { return l(); }); } var r = document.createElement('span'); (r.className = 'coveo-small-close'), d.appendChild(r); var i = '<svg viewBox="0 0 22 22" class="coveo-icon coveo-fill-pure-white">\n <g transform="matrix(.7071-.7071.7071.7071-3.142 11)">\n <path d="m9-3.4h2v26.9h-2z"></path>\n <path d="m-3.4 9h26.9v2h-26.9z"></path>\n </g>\n </svg>'; return (r.innerHTML = i), { header: d, closeIcon: r }; })(s, m), f = p.header, C = p.closeIcon; u.appendChild(f), u.appendChild( (function t(e, l) { var d = document.createElement('div'); return (d.className = 'coveo-modal-body coveo-mod-header-paddding coveo-mod-form-top-bottom-padding'), d.appendChild(l), d; })(0, e) ), C.addEventListener('click', function () { m(); }), v.addEventListener('click', function () { m(); }); var N = function (e) { 27 == e.keyCode && -1 != r.className.indexOf('coveo-modal-opened') && m(); }; document.addEventListener('keyup', N); var E, h = function (e, l) { var d = document.createElement('button'); (d.className = 'coveo-btn'), (d.textContent = e), d.addEventListener('click', function () { return m(l); }), E.appendChild(d); }; return ( null != s.buttons && (((E = document.createElement('footer')).className = 'coveo-modal-footer'), u.appendChild(E), s.buttons & l.OK && h('Ok', l.OK), s.buttons & l.APPLY && h('Apply', l.APPLY), s.buttons & l.YES && h('Yes', l.YES), s.buttons & l.NO && h('No', l.NO), s.buttons & l.CANCEL && h('Cancel', l.CANCEL)), d.push(m), null != s.className && (i.className += ' ' + s.className), { modalBox: i, wrapper: u, buttons: E, content: u, overlay: v, close: m } ); }), (e.close = function n(e) { void 0 === e && (e = !1); for (var l = 0; d.length > l; ) { d[l](0, e) || l++; } }); })(e.ModalBox || (e.ModalBox = {})); })(Coveo || (Coveo = {}));