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