(function(b){"object"===typeof exports&&"undefined"!==typeof module?module.exports=b():"function"===typeof define&&define.amd?define([],b):("undefined"!==typeof window?window:"undefined"!==typeof global?global:"undefined"!==typeof self?self:this).OmniFaces=b()})(function(){return function(){function b(m,a,g){function f(c,e){if(!a[c]){if(!m[c]){var l="function"==typeof require&&require;if(!e&&l)return l(c,!0);if(n)return n(c,!0);e=Error("Cannot find module '"+c+"'");throw e.code="MODULE_NOT_FOUND",
e;}e=a[c]={exports:{}};m[c][0].call(e.exports,function(d){return f(m[c][1][d]||d)},e,e.exports,b,m,a,g)}return a[c].exports}for(var n="function"==typeof require&&require,p=0;p<g.length;p++)f(g[p]);return f}return b}()({1:[function(b,m,a){Object.defineProperty(a,"__esModule",{value:!0});a.DeferredScript=void 0;var g=b("./Util");(function(a){function b(a){if(!(0>a||a>=f.length)){var c=f[a];g.Util.loadScript(c.url,c.crossorigin,c.integrity,c.begin,c.success,c.error,function(){b(a+1)})}}var f=[],c=function(){return function(a,
c,d,k,h,f){this.url=a;this.crossorigin=c;this.integrity=d;this.begin=k;this.success=h;this.error=f}}();a.add=function(a,l,d,k,h,q){f.push(new c(a,l,d,k,h,q));1==f.length&&g.Util.addOnloadListener(function(){b(0)})}})(a.DeferredScript||(a.DeferredScript={}))},{"./Util":12}],2:[function(b,m,a){Object.defineProperty(a,"__esModule",{value:!0});a.Form=void 0;var g=b("./OmniFaces"),f=b("./OmniFaces"),n=b("./Util");(function(a){n.Util.addOnloadListener(function(){var a=window.faces||window.jsf;if(a){var e=
a.ajax.request;a.ajax.request=function(c,d,k){var h=a.getViewState;a.getViewState=function(a){var d=h(a);if("true"!=a.dataset.partialsubmit)return d;a=k?k.execute:null;if(!a||-1!=a.indexOf("@form")||-1!=a.indexOf("@all"))return d;var e=[],b=[];-1==a.indexOf("@none")&&(e=a.replace("@this",c.id).split(" "),b=e.map(encodeURIComponent));b.push(g.VIEW_STATE_PARAM);b.push(f.CLIENT_WINDOW_PARAM);var l=[];d.replace(/([^=&]+)=([^&]*)/g,function(a,d,k){if(!(a=-1<b.indexOf(d)))a:{var c=e,h=d.replace("%3A","\\:");
try{for(var f=0;f<c.length;f++){var p=document.getElementById(c[f]);if(p&&p.querySelector("[name\x3d'"+h+"']")){a=!0;break a}}}catch(u){console.warn("Cannot determine if "+c+" contains child "+h,u)}a=!1}a&&l.push(d+"\x3d"+k)});return l.join("\x26")};e(c,d,k)}}})})(a.Form||(a.Form={}))},{"./OmniFaces":7,"./Util":12}],3:[function(b,m,a){Object.defineProperty(a,"__esModule",{value:!0});a.GraphicImage=void 0;var g=b("./Util");(function(a){function f(){return document.querySelectorAll("img[src][data-src][data-lazy]")}
function b(a){var c=a.dataset;c.lazy&&c.src&&(a.src=c.src);delete c.src;delete c.lazy}g.Util.addOnloadListener(function(){var a=f();if(0!=a.length)if(window.IntersectionObserver){var e=new IntersectionObserver(function(a){a.forEach(function(a){a.isIntersecting&&a.target instanceof HTMLImageElement&&(a=a.target,b(a),e.unobserve(a))})});a.forEach(function(a){e.observe(a)})}else{var l,d=function(){l&&clearTimeout(l);l=setTimeout(function(){for(var a=f(),c=window.innerHeight+window.pageYOffset,e=0;e<
a.length;e++){var l=a[e];l.offsetTop<c&&b(l)}0==f().length&&(g.Util.removeEventListener(window,"resize orientationChange",d),g.Util.removeEventListener(document,"scroll",d))},50)};g.Util.addEventListener(window,"resize orientationChange",d);g.Util.addEventListener(document,"scroll",d)}})})(a.GraphicImage||(a.GraphicImage={}))},{"./Util":12}],4:[function(b,m,a){Object.defineProperty(a,"__esModule",{value:!0});a.HashParam=void 0;var g=b("./OmniFaces"),f=b("./Util");(function(a){function b(){if(!e){var a=
{execute:c,hash:window.location.hash.substring(1)};a[g.EVENT]="setHashParamValues";(window.faces||window.jsf).ajax.request(f.Util.getFacesForm(),null,a)}}var c,e;a.init=function(a){c=a;f.Util.getFacesForm()&&(window.location.hash&&b(),f.Util.addEventListener(window,"hashchange",b))};a.update=function(a,d){e=!0;var c=window.location,h=c.hash;h&&"#"==h.charAt(0)&&(h=h.substring(1));a=f.Util.updateParameter(h,a,d);a!=h&&((h=window.history)&&h.pushState&&(d=c.href.split(/#/,2)[0]+(a?"#":"")+a,h.pushState(null,
document.title,d)),c.hash!=a&&(c.hash=a));e=!1}})(a.HashParam||(a.HashParam={}))},{"./OmniFaces":7,"./Util":12}],5:[function(b,m,a){Object.defineProperty(a,"__esModule",{value:!0});a.Highlight=void 0;var g=b("./Util");(function(a){function b(){g.Util.removeEventListener(this,"click input",b);var c=this.getAttribute(a.DATA_HIGHLIGHT_CLASS);if(c){this.removeAttribute(a.DATA_HIGHLIGHT_CLASS);c=new RegExp(" "+c,"g");this.className=this.className.replace(c,"");var e=this.getAttribute(a.DATA_HIGHLIGHT_LABEL);
e&&(this.removeAttribute(a.DATA_HIGHLIGHT_LABEL),e=f[this.id],e.className=e.className.replace(c,""))}}a.DATA_HIGHLIGHT_CLASS="data-omnifaces-highlight-class";a.DATA_HIGHLIGHT_LABEL="data-omnifaces-highlight-label";var f;a.apply=function(c,e,l){for(var d=document.getElementsByTagName("LABEL"),k={},h=0;h<d.length;h++){var q=d[h],p=q.htmlFor;p&&(k[p]=q)}f=k;for(d=0;d<c.length;d++)if(h=c[d],k=document.getElementById(h),k||(h=document.getElementsByName(h))&&h.length&&(k=h[0]),k){k.className+=" "+e;k.setAttribute(a.DATA_HIGHLIGHT_CLASS,
e);if(h=f[k.id])h.className+=" "+e,k.setAttribute(a.DATA_HIGHLIGHT_LABEL,"true");l&&(k.focus(),l=!1);g.Util.addEventListener(k,"click input",b)}}})(a.Highlight||(a.Highlight={}))},{"./Util":12}],6:[function(b,m,a){Object.defineProperty(a,"__esModule",{value:!0});a.InputFile=void 0;var g=b("./OmniFaces");(function(a){a.validate=function(a,b,c,e){if(!window.FileReader)return!0;document.getElementById(c).innerHTML="";for(c=0;c<b.files.length;c++){var f=b.files[c];if(f.size>e)return c=f.name,e=void 0,
window.mojarra&&(e=b.form.enctype,b.form.enctype="application/x-www-form-urlencoded"),b.type="text",b.type="file",c={fileName:c},c[g.EVENT]="validationFailed",(window.faces||window.jsf).ajax.request(b.id,a,c),e&&(b.form.enctype=e),!1}return!0}})(a.InputFile||(a.InputFile={}))},{"./OmniFaces":7}],7:[function(b,m,a){Object.defineProperty(a,"__esModule",{value:!0});a.GraphicImage=a.ServiceWorker=a.ScriptParam=a.HashParam=a.Form=a.InputFile=a.Push=a.Unload=a.DeferredScript=a.Highlight=a.Util=a.CLIENT_WINDOW_PARAM=
a.VIEW_STATE_PARAM=a.EVENT=void 0;a.EVENT="omnifaces.event";a.VIEW_STATE_PARAM="jakarta.faces.ViewState";a.CLIENT_WINDOW_PARAM="jakarta.faces.ClientWindow";var g=b("./Util");Object.defineProperty(a,"Util",{enumerable:!0,get:function(){return g.Util}});var f=b("./Highlight");Object.defineProperty(a,"Highlight",{enumerable:!0,get:function(){return f.Highlight}});var n=b("./DeferredScript");Object.defineProperty(a,"DeferredScript",{enumerable:!0,get:function(){return n.DeferredScript}});var p=b("./Unload");
Object.defineProperty(a,"Unload",{enumerable:!0,get:function(){return p.Unload}});var c=b("./Push");Object.defineProperty(a,"Push",{enumerable:!0,get:function(){return c.Push}});var e=b("./InputFile");Object.defineProperty(a,"InputFile",{enumerable:!0,get:function(){return e.InputFile}});var l=b("./Form");Object.defineProperty(a,"Form",{enumerable:!0,get:function(){return l.Form}});var d=b("./HashParam");Object.defineProperty(a,"HashParam",{enumerable:!0,get:function(){return d.HashParam}});var k=
b("./ScriptParam");Object.defineProperty(a,"ScriptParam",{enumerable:!0,get:function(){return k.ScriptParam}});var h=b("./ServiceWorker");Object.defineProperty(a,"ServiceWorker",{enumerable:!0,get:function(){return h.ServiceWorker}});var q=b("./GraphicImage");Object.defineProperty(a,"GraphicImage",{enumerable:!0,get:function(){return q.GraphicImage}})},{"./DeferredScript":1,"./Form":2,"./GraphicImage":3,"./HashParam":4,"./Highlight":5,"./InputFile":6,"./Push":8,"./ScriptParam":9,"./ServiceWorker":10,
"./Unload":11,"./Util":12}],8:[function(b,m,a){Object.defineProperty(a,"__esModule",{value:!0});a.Push=void 0;var g=b("./Util");(function(a){function b(a){f(a).open()}function f(a){var d=e[a];if(d)return d;throw Error("Unknown channel: "+a);}var c=window.location.protocol.replace("http","ws")+"//",e={},l=function(){function a(a,d,c,b,e,f,g){this.url=a;this.channel=d;this.onopen=c;this.onmessage=b;this.onerror=e;this.onclose=f;this.behaviors=g}a.prototype.open=function(){var a=this;this.socket&&1==
this.socket.readyState||(this.socket=new WebSocket(this.url),this.socket.onopen=function(){if(null==a.reconnectAttempts)a.onopen(a.channel);a.reconnectAttempts=0},this.socket.onmessage=function(d){var c=JSON.parse(d.data);a.onmessage(c,a.channel,d);if((d=a.behaviors[c])&&d.length)for(c=0;c<d.length;c++)(0,d[c])()},this.socket.onclose=function(d){if(!a.socket||1E3==d.code&&"Expired"==d.reason||1008==d.code||1005==d.code&&"Unknown channel"==d.reason||null==a.reconnectAttempts||25<=a.reconnectAttempts)a.onclose(d.code,
a.channel,d);else a.onerror(d.code,a.channel,d),setTimeout(b,500*a.reconnectAttempts++)})};a.prototype.close=function(){if(this.socket){var a=this.socket;this.reconnectAttempts=this.socket=null;a.close()}};return a}();a.init=function(a,k,f,q,p,n,m,r){n=g.Util.resolveFunction(n);var d=k.split(/\?/)[0];if(window.WebSocket){if(!e[d]){var h=(a=a||"")&&0!=a.indexOf("/")?0==a.indexOf(":")?window.location.hostname:"":window.location.host;e[d]=new l(c+h+a+"/omnifaces.push/"+k,d,g.Util.resolveFunction(f),
g.Util.resolveFunction(q),g.Util.resolveFunction(p),n,m)}r&&b(d)}else n(-1,d)};a.open=b;a.close=function(a){f(a).close()}})(a.Push||(a.Push={}))},{"./Util":12}],9:[function(b,m,a){Object.defineProperty(a,"__esModule",{value:!0});a.ScriptParam=void 0;var g=b("./OmniFaces"),f=b("./Util");(function(a){function b(a){if(!(a instanceof Object))return a;var c={},b;for(b in a)a[b]instanceof Function||a[b]instanceof Object||(c[b]=a[b]);return c}a.run=function(a,e){var c=f.Util.getFacesForm();if(c){var d={},
k;for(k in e)d[k]=JSON.stringify(b(e[k]));d.execute=a;d[g.EVENT]="setScriptParamValues";(window.faces||window.jsf).ajax.request(c,null,d)}}})(a.ScriptParam||(a.ScriptParam={}))},{"./OmniFaces":7,"./Util":12}],10:[function(b,m,a){Object.defineProperty(a,"__esModule",{value:!0});a.ServiceWorker=void 0;var g=b("./OmniFaces");(function(a){a.init=function(a,b){navigator.serviceWorker&&(navigator.serviceWorker.register(a,{scope:b}),navigator.serviceWorker.addEventListener("message",function(a){a.data&&
a.data.type==g.EVENT&&window.dispatchEvent(new CustomEvent(a.data.name,{detail:a.data.detail}))}))}})(a.ServiceWorker||(a.ServiceWorker={}))},{"./OmniFaces":7}],11:[function(b,m,a){Object.defineProperty(a,"__esModule",{value:!0});a.Unload=void 0;var g=b("./OmniFaces"),f=b("./OmniFaces"),n=b("./Util");(function(a){var c,b;a.init=function(a){if(window.XMLHttpRequest){if(null==c){var d=n.Util.getFacesForm();if(!d)return;n.Util.addEventListener(window,"onbeforeunload"in window&&!window.onbeforeunload?
"beforeunload":"onpagehide"in window?"pagehide":"unload",function(){if(b)b=!1;else try{var a=d.action,e=g.EVENT+"\x3dunload\x26id\x3d"+c+"\x26"+f.VIEW_STATE_PARAM+"\x3d"+encodeURIComponent(d[f.VIEW_STATE_PARAM].value);if(navigator.sendBeacon)navigator.sendBeacon(a,new Blob([e],{type:"application/x-www-form-urlencoded"}));else{var l=new XMLHttpRequest;l.open("POST",a,!1);l.setRequestHeader("X-Requested-With","XMLHttpRequest");l.setRequestHeader("Content-Type","application/x-www-form-urlencoded");l.send(e)}}catch(v){}});
n.Util.addSubmitListener(function(){b=!0})}c=a;b=!1}};a.disable=function(){b=!0};a.reenable=function(){b=!1}})(a.Unload||(a.Unload={}))},{"./OmniFaces":7,"./Util":12}],12:[function(b,m,a){Object.defineProperty(a,"__esModule",{value:!0});a.Util=void 0;var g=b("./OmniFaces");(function(a){function b(a,b,c){e(a,"addEventListener",b,c)}function f(a){window.jQuery?window.jQuery(a):"complete"===document.readyState?setTimeout(a):b(window,"load",a)}function c(a){return"function"!==typeof a&&(a=window[a]||
function(){}),a}function e(a,b,c,e){var d=0;for(c=c.replace(/^\s+|\s+$/g,"").split(/\s+/);d<c.length;d++){var f=c[d];if(a[b])a[b](f,e)}}function l(a,b,c){var d=a[b];d&&(a[b]=function(){c();return d.apply(this,arguments)})}a.addEventListener=b;a.removeEventListener=function(a,b,c){e(a,"removeEventListener",b,c)};a.addOnloadListener=f;a.addSubmitListener=function(a){b(document,"submit",a);window.mojarra&&l(window.mojarra,window.faces?"cljs":"jsfcljs",a);window.myfaces&&l(window.myfaces.oam,"submitForm",
a);window.PrimeFaces&&l(window.PrimeFaces,"addSubmitParam",a)};a.resolveFunction=c;a.getFacesForm=function(){for(var a=0;a<document.forms.length;a++){var b=document.forms[a];if(b[g.VIEW_STATE_PARAM])return b}(a=window.faces||window.jsf)&&"Development"!=a.getProjectStage()||!window.console||!console.error||console.error("OmniFaces: Cannot find a JSF form in the document. Please add one.");return null};a.updateParameter=function(a,b,c){var d=new RegExp("(^|[?\x26#])"+b+"\x3d.*?([\x26#]|$)","i");c?(b=
b+"\x3d"+encodeURIComponent(c),a=a?a.match(d)?a.replace(d,"$1"+b+"$2"):a+("\x26"+b):b):a=a.replace(d,"$2");"\x26"==a.charAt(0)&&(a=a.substring(1));return a};a.loadScript=function(a,b,e,g,l,m,n){var d=c(g),h=c(l),k=c(m),p=c(n),q=document.createElement("script"),t=document.head||document.documentElement;q.async=!0;q.src=a;q.setAttribute("crossorigin",b||"anonymous");q.setAttribute("integrity",e||"");q.onerror=function(){k();p()};q.onload=function(){h();p()};f(function(){d();t.insertBefore(q,null)})}})(a.Util||
(a.Util={}))},{"./OmniFaces":7}]},{},[7])(7)});