(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(k,a,f){function h(c,e){if(!a[c]){if(!k[c]){var g="function"==typeof require&&require;if(!e&&g)return g(c,!0);if(p)return p(c,!0);e=Error("Cannot find module '"+c+"'");throw e.code="MODULE_NOT_FOUND",
e;}e=a[c]={exports:{}};k[c][0].call(e.exports,function(d){return h(k[c][1][d]||d)},e,e.exports,b,k,a,f)}return a[c].exports}for(var p="function"==typeof require&&require,m=0;m<f.length;m++)h(f[m]);return h}return b}()({1:[function(b,k,a){Object.defineProperty(a,"__esModule",{value:!0});a.DeferredScript=void 0;var f=b("./Util");(function(a){function b(a){if(!(0>a||a>=m.length)){var c=m[a];f.Util.loadScript(c.url,c.crossorigin,c.integrity,c.begin,c.success,c.error,function(){b(a+1)})}}var m=[],c=function(){return function(a,
c,d,l,n,b){this.url=a;this.crossorigin=c;this.integrity=d;this.begin=l;this.success=n;this.error=b}}();a.add=function(a,g,d,l,n,r){m.push(new c(a,g,d,l,n,r));1==m.length&&f.Util.addOnloadListener(function(){b(0)})}})(a.DeferredScript||(a.DeferredScript={}))},{"./Util":11}],2:[function(b,k,a){Object.defineProperty(a,"__esModule",{value:!0});a.Form=void 0;var f=b("./OmniFaces"),h=b("./OmniFaces"),p=b("./Util");(function(a){p.Util.addOnloadListener(function(){var a=window.faces||window.jsf;if(a){var e=
a.ajax.request;a.ajax.request=function(c,d,l){var n=a.getViewState;a.getViewState=function(a){var d=n(a);if("true"!=a.dataset.partialsubmit)return d;a=l?l.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(f.VIEW_STATE_PARAM);b.push(h.CLIENT_WINDOW_PARAM);var g=[];d.replace(/([^=&]+)=([^&]*)/g,function(a,d,l){if(!(a=-1<b.indexOf(d)))a:{var c=e,n=d.replace("%3A","\\:");
try{for(var m=0;m<c.length;m++){var h=document.getElementById(c[m]);if(h&&h.querySelector("[name\x3d'"+n+"']")){a=!0;break a}}}catch(v){console.warn("Cannot determine if "+c+" contains child "+n,v)}a=!1}a&&g.push(d+"\x3d"+l)});return g.join("\x26")};e(c,d,l)}}})})(a.Form||(a.Form={}))},{"./OmniFaces":6,"./Util":11}],3:[function(b,k,a){Object.defineProperty(a,"__esModule",{value:!0});a.GraphicImage=void 0;var f=b("./Util");(function(a){function b(){return document.querySelectorAll("img[src][data-src][data-lazy]")}
function m(a){var c=a.dataset;c.lazy&&c.src&&(a.src=c.src);delete c.src;delete c.lazy}f.Util.addOnloadListener(function(){var a=b();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,m(a),e.unobserve(a))})});a.forEach(function(a){e.observe(a)})}else{var g,d=function(){g&&clearTimeout(g);g=setTimeout(function(){for(var a=b(),c=window.innerHeight+window.pageYOffset,e=0;e<
a.length;e++){var g=a[e];g.offsetTop<c&&m(g)}0==b().length&&(f.Util.removeEventListener(window,"resize orientationChange",d),f.Util.removeEventListener(document,"scroll",d))},50)};f.Util.addEventListener(window,"resize orientationChange",d);f.Util.addEventListener(document,"scroll",d)}})})(a.GraphicImage||(a.GraphicImage={}))},{"./Util":11}],4:[function(b,k,a){Object.defineProperty(a,"__esModule",{value:!0});a.HashParam=void 0;var f=b("./OmniFaces"),h=b("./Util");(function(a){function b(){if(!e){var a=
{execute:c,hash:window.location.hash.substring(1)};a[f.EVENT]="setHashParamValues";(window.faces||window.jsf).ajax.request(h.Util.getFacesForm(),null,a)}}var c,e;a.init=function(a){c=a;h.Util.getFacesForm()&&(window.location.hash&&b(),h.Util.addEventListener(window,"hashchange",b))};a.update=function(a,d){e=!0;var c=window.location,b=c.hash;b&&"#"==b.charAt(0)&&(b=b.substring(1));a=h.Util.updateParameter(b,a,d);a!=b&&((b=window.history)&&b.pushState&&(d=c.href.split(/#/,2)[0]+(a?"#":"")+a,b.pushState(null,
document.title,d)),c.hash!=a&&(c.hash=a));e=!1}})(a.HashParam||(a.HashParam={}))},{"./OmniFaces":6,"./Util":11}],5:[function(b,k,a){Object.defineProperty(a,"__esModule",{value:!0});a.InputFile=void 0;var f=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 g=b.files[c];if(g.size>e)return c=g.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[f.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":6}],6:[function(b,k,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.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 f=b("./Util");Object.defineProperty(a,"Util",{enumerable:!0,get:function(){return f.Util}});var h=b("./DeferredScript");Object.defineProperty(a,"DeferredScript",{enumerable:!0,get:function(){return h.DeferredScript}});var p=b("./Unload");Object.defineProperty(a,"Unload",{enumerable:!0,get:function(){return p.Unload}});var m=b("./Push");Object.defineProperty(a,"Push",{enumerable:!0,get:function(){return m.Push}});var c=b("./InputFile");Object.defineProperty(a,
"InputFile",{enumerable:!0,get:function(){return c.InputFile}});var e=b("./Form");Object.defineProperty(a,"Form",{enumerable:!0,get:function(){return e.Form}});var g=b("./HashParam");Object.defineProperty(a,"HashParam",{enumerable:!0,get:function(){return g.HashParam}});var d=b("./ScriptParam");Object.defineProperty(a,"ScriptParam",{enumerable:!0,get:function(){return d.ScriptParam}});var l=b("./ServiceWorker");Object.defineProperty(a,"ServiceWorker",{enumerable:!0,get:function(){return l.ServiceWorker}});
var n=b("./GraphicImage");Object.defineProperty(a,"GraphicImage",{enumerable:!0,get:function(){return n.GraphicImage}})},{"./DeferredScript":1,"./Form":2,"./GraphicImage":3,"./HashParam":4,"./InputFile":5,"./Push":7,"./ScriptParam":8,"./ServiceWorker":9,"./Unload":10,"./Util":11}],7:[function(b,k,a){Object.defineProperty(a,"__esModule",{value:!0});a.Push=void 0;var f=b("./Util");(function(a){function b(a){h(a).open()}function h(a){var d=e[a];if(d)return d;throw Error("Unknown channel: "+a);}var c=
window.location.protocol.replace("http","ws")+"//",e={},g=function(){function a(a,d,b,c,e,g,h){this.url=a;this.channel=d;this.onopen=b;this.onmessage=c;this.onerror=e;this.onclose=g;this.behaviors=h}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 b=JSON.parse(d.data);a.onmessage(b,a.channel,d);
if((d=a.behaviors[b])&&d.length)for(b=0;b<d.length;b++)(0,d[b])()},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,
l,h,m,p,k,t,u){k=f.Util.resolveFunction(k);var d=l.split(/\?/)[0];if(window.WebSocket){if(!e[d]){var n=(a=a||"")&&0!=a.indexOf("/")?0==a.indexOf(":")?window.location.hostname:"":window.location.host;e[d]=new g(c+n+a+"/omnifaces.push/"+l,d,f.Util.resolveFunction(h),f.Util.resolveFunction(m),f.Util.resolveFunction(p),k,t)}u&&b(d)}else k(-1,d)};a.open=b;a.close=function(a){h(a).close()}})(a.Push||(a.Push={}))},{"./Util":11}],8:[function(b,k,a){Object.defineProperty(a,"__esModule",{value:!0});a.ScriptParam=
void 0;var f=b("./OmniFaces"),h=b("./Util");(function(a){function b(a){if(!(a instanceof Object))return a;var b={},c;for(c in a)a[c]instanceof Function||a[c]instanceof Object||(b[c]=a[c]);return b}a.run=function(a,e){var c=h.Util.getFacesForm();if(c){var d={},l;for(l in e)d[l]=JSON.stringify(b(e[l]));d.execute=a;d[f.EVENT]="setScriptParamValues";(window.faces||window.jsf).ajax.request(c,null,d)}}})(a.ScriptParam||(a.ScriptParam={}))},{"./OmniFaces":6,"./Util":11}],9:[function(b,k,a){Object.defineProperty(a,
"__esModule",{value:!0});a.ServiceWorker=void 0;var f=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==f.EVENT&&window.dispatchEvent(new CustomEvent(a.data.name,{detail:a.data.detail}))}))}})(a.ServiceWorker||(a.ServiceWorker={}))},{"./OmniFaces":6}],10:[function(b,k,a){Object.defineProperty(a,"__esModule",{value:!0});a.Unload=void 0;var f=b("./OmniFaces"),
h=b("./OmniFaces"),p=b("./Util");(function(a){var b,e;a.init=function(a){if(window.XMLHttpRequest){if(null==b){var d=p.Util.getFacesForm();if(!d)return;p.Util.addEventListener(window,"onbeforeunload"in window&&!window.onbeforeunload?"beforeunload":"onpagehide"in window?"pagehide":"unload",function(){if(e)e=!1;else try{var a=d.action,c=f.EVENT+"\x3dunload\x26id\x3d"+b+"\x26"+h.VIEW_STATE_PARAM+"\x3d"+encodeURIComponent(d[h.VIEW_STATE_PARAM].value);if(navigator.sendBeacon)navigator.sendBeacon(a,new Blob([c],
{type:"application/x-www-form-urlencoded"}));else{var g=new XMLHttpRequest;g.open("POST",a,!1);g.setRequestHeader("X-Requested-With","XMLHttpRequest");g.setRequestHeader("Content-Type","application/x-www-form-urlencoded");g.send(c)}}catch(w){}});p.Util.addSubmitListener(function(){e=!0})}b=a;e=!1}};a.disable=function(){e=!0};a.reenable=function(){e=!1}})(a.Unload||(a.Unload={}))},{"./OmniFaces":6,"./Util":11}],11:[function(b,k,a){Object.defineProperty(a,"__esModule",{value:!0});a.Util=void 0;var f=
b("./OmniFaces");(function(a){function b(a,b,c){e(a,"addEventListener",b,c)}function h(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 l=c[d];if(a[b])a[b](l,e)}}function g(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=h;a.addSubmitListener=function(a){b(document,"submit",a);window.mojarra&&g(window.mojarra,window.faces?"cljs":"jsfcljs",a);window.myfaces&&g(window.myfaces.oam,"submitForm",a);window.PrimeFaces&&g(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[f.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,f,g,k,m){var d=c(f),l=c(g),p=c(k),n=c(m),q=document.createElement("script"),r=document.head||
document.documentElement;q.async=!0;q.src=a;q.setAttribute("crossorigin",b||"anonymous");q.setAttribute("integrity",e||"");q.onerror=function(){p();n()};q.onload=function(){l();n()};h(function(){d();r.insertBefore(q,null)})}})(a.Util||(a.Util={}))},{"./OmniFaces":6}]},{},[6])(6)});