ajaxify 8.2.2 → 8.2.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ajaxify.js +8 -7
- package/ajaxify.min.js +1 -1
- package/package.json +1 -1
package/ajaxify.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*
|
|
6
6
|
* Copyright Arvind Gupta; MIT Licensed
|
|
7
7
|
*
|
|
8
|
-
* Version 8.2.
|
|
8
|
+
* Version 8.2.5
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
/* INTERFACE: See also https://4nf.org/interface/
|
|
@@ -47,7 +47,8 @@ Ay.s = {
|
|
|
47
47
|
// visual effects settings
|
|
48
48
|
requestDelay : 0, //in msec - Delay of Pronto request
|
|
49
49
|
scrolltop : "s", // Smart scroll, true = always scroll to top of page, false = no scroll
|
|
50
|
-
|
|
50
|
+
scrollDelay : 0, // Minimal delay on all scroll effects in milliseconds, useful in case of e.g. smooth scroll
|
|
51
|
+
bodyClasses : true, // Copy body attributes from target page, set to "false" to disable
|
|
51
52
|
|
|
52
53
|
// script and style handling settings, prefetch
|
|
53
54
|
deltas : true, // true = deltas loaded, false = all scripts loaded
|
|
@@ -82,7 +83,7 @@ Ay.intevents = () => {
|
|
|
82
83
|
|
|
83
84
|
function _copyAttributes(el, $S, flush) { //copy all attributes of element generically
|
|
84
85
|
if (flush) [...el.attributes].forEach(e => el.removeAttribute(e.name)); //delete all old attributes
|
|
85
|
-
[...$S.attributes].forEach(e => el.setAttribute(e.nodeName, e.nodeValue)); //low-level insertion
|
|
86
|
+
[...$S.attributes].forEach(e => e.nodeValue == "ajy-body" || el.setAttribute(e.nodeName, e.nodeValue)); //low-level insertion
|
|
86
87
|
}
|
|
87
88
|
|
|
88
89
|
function _on(eventName, elementSelector, handler, el = document) { //e.currentTarget is document when the handler is called
|
|
@@ -151,7 +152,7 @@ divid12 = '<div id="ajy-$1"$2';
|
|
|
151
152
|
if (o === "body") return qs("#ajy-" + o, Ay.cache.g());
|
|
152
153
|
if (o === "script") return qa(o, Ay.cache.g());
|
|
153
154
|
|
|
154
|
-
return qs((o === "title") ?
|
|
155
|
+
return qs((o === "title") ? o : ".ajy-" + o, Ay.cache.g());
|
|
155
156
|
};
|
|
156
157
|
let _lSel = $t => (
|
|
157
158
|
Ay.pass++,
|
|
@@ -196,7 +197,7 @@ let _lSel = $t => (
|
|
|
196
197
|
signal: ac.signal
|
|
197
198
|
}).then(r => {
|
|
198
199
|
if (!r.ok || !_isHtml(r)) {
|
|
199
|
-
if (!pre) {location.href = hin;
|
|
200
|
+
if (!pre) {location.href = hin;}
|
|
200
201
|
return;
|
|
201
202
|
}
|
|
202
203
|
rsp = r; // store response
|
|
@@ -609,7 +610,7 @@ let _init_p = () => {
|
|
|
609
610
|
},
|
|
610
611
|
_doRender = () => {
|
|
611
612
|
Ay.trigger("load");
|
|
612
|
-
if(Ay.s.bodyClasses)
|
|
613
|
+
if(Ay.s.bodyClasses) _copyAttributes(bdy, Ay.fn("body"), true);
|
|
613
614
|
|
|
614
615
|
var href = Ay.Rq("h"), title;
|
|
615
616
|
href = Ay.Rq("c", href);
|
|
@@ -754,7 +755,7 @@ class Scrolly { constructor() { if ('scrollRestoration' in history) history.scro
|
|
|
754
755
|
if(Ay.s.scrolltop == "s") this.s(Ay.offsets.l(o)); //smart scroll -> lookup and restore offset
|
|
755
756
|
else Ay.s.scrolltop && this.s(0); //scrolltop true -> scroll to top of page
|
|
756
757
|
}
|
|
757
|
-
s(o){ window.scrollTo(0, o) } //scroll to offset
|
|
758
|
+
s(o){ setTimeout(() => window.scrollTo(0, o), Ay.s.scrollDelay) } //scroll to offset
|
|
758
759
|
}
|
|
759
760
|
|
|
760
761
|
// The HAPi class
|
package/ajaxify.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
let Ay,rootUrl=location.origin,inlineclass="ajy-inline",bdy,qa=(t,e=document)=>e.querySelectorAll(t),qs=(t,e=document)=>e.querySelector(t);class Ajaxify{constructor(options){function _copyAttributes(t,e,r){r&&[...t.attributes].forEach(e=>t.removeAttribute(e.name)),[...e.attributes].forEach(e=>t.setAttribute(e.nodeName,e.nodeValue))}function _on(t,e,r,s=document){s.addEventListener(t,function(t){for(var s=t.target;s&&s!=this;s=s.parentNode)if(s.matches(e)){r(s,t);break}},!!t.iO("mo"))}String.prototype.iO=function(t){return this.toString().indexOf(t)+1},Ay=this,Ay.s={elements:"body",selector:"a:not(.no-ajaxy)",forms:"form:not(.no-ajaxy)",canonical:!1,refresh:!1,requestDelay:0,scrolltop:"s",bodyClasses:!1,deltas:!0,asyncdef:!0,alwayshints:!1,inline:!0,inlinehints:!1,inlineskip:"adsbygoogle",inlineappend:!0,intevents:!0,style:!0,prefetchoff:!1,verbosity:0,memoryoff:!1,cb:0,pluginon:!0,passCount:!1},Ay.pass=0,Ay.currentURL="",Ay.h={},Ay.parse=((t,e)=>(e=document.createElement("div"),e.insertAdjacentHTML("afterbegin",t),e.firstElementChild)),Ay.trigger=((t,e)=>{let r=document.createEvent("HTMLEvents");r.initEvent("pronto."+t,!0,!1),r.data=e||Ay.Rq("e"),window.dispatchEvent(r),document.dispatchEvent(r)}),Ay.internal=(t=>!!t&&("object"==typeof t&&(t=t.href),""===t||(t.substring(0,rootUrl.length)===rootUrl||!t.iO(":")))),Ay.intevents=(()=>{EventTarget.prototype.ael=EventTarget.prototype.addEventListener,EventTarget.prototype.addEventListener=function(t,e,r=!1){this!==document&&this!==window||"DOMContentLoaded"!=t?this.ael(t,e,r):setTimeout(e)}});class Hints{constructor(t){let e=this;e.list="string"==typeof t&&t.length>0&&t.split(", "),e.find=(t=>!(!t||!e.list)&&e.list.some(e=>t.iO(e)))}}function lg(t){Ay.s.verbosity&&console&&console.log(t)}class GetPage{constructor(){let t=0,e=0,r=0,s="",i=0,n=0,o=0,a=/<\!DOCTYPE[^>]*>/i,y=/<(html|head|link)([\s\>])/gi,l=/<(body)([\s\>])/gi,c=/<\/(html|head|body|link)\>/gi;this.a=function(i,a,y){if(!i)return Ay.cache.g();if(i.iO("/")){if(e=a,r==i)return;return d(i)}if("+"===i)return r=a,e=y,d(a,!0);if("a"!==i){if("s"===i)return(n?1:0)+s;if("-"===i)return A(a);if("x"===i)return t;if(Ay.cache.g())return"body"===i?qs("#ajy-"+i,Ay.cache.g()):"script"===i?qa(i,Ay.cache.g()):qs("title"===i?i:".ajy-"+i,Ay.cache.g())}else n>0&&(g(),o.abort())};let A=t=>(Ay.pass++,f(t),qa("body > script").forEach(t=>!!t.classList.contains(inlineclass)&&t.parentNode.removeChild(t)),Ay.scripts(!0),Ay.scripts("s"),Ay.scripts("c")),d=(t,s)=>(t.iO("#")&&(t=t.split("#")[0]),Ay.Rq("is")||!Ay.cache.l(t)?u(t,s):(r=0,e?e():void 0)),h=(t,e)=>{if(e){var r=e.cloneNode(!0);qa("script",r).forEach(t=>t.parentNode.removeChild(t)),_copyAttributes(t,r,!0),t.innerHTML=r.innerHTML}},f=t=>Ay.cache.g()&&!p(t)&&t.forEach(function(t){h(t,qs("#"+t.getAttribute("id"),Ay.cache.g()))}),p=t=>"body"==t[0].tagName.toLowerCase()&&(h(bdy,qs("#ajy-body",Ay.cache.g())),1),u=(e,r)=>{var i=Ay.Rq("is");s=r?"p":"c",o=new AbortController,n++,fetch(e,{method:i?"POST":"GET",cache:"default",mode:"same-origin",headers:{"X-Requested-With":"XMLHttpRequest"},body:i?Ay.Rq("d"):null,signal:o.signal}).then(s=>{if(s.ok&&q(s))return t=s,s.text();r||(location.href=e,g(),Ay.pronto(0,Ay.currentURL))}).then(r=>{if(g(1),r)return t.responseText=r,m(e,r)}).catch(t=>{if("AbortError"!==t.name)try{return Ay.trigger("error",t),lg("Response text : "+t.message),m(e,t.message,t)}catch(t){}}).finally(()=>n--)},g=t=>(r=0,t?0:e=0),m=(t,r,s)=>Ay.cache.s(Ay.parse(v(r)))&&(Ay.pages.p([t,Ay.cache.g()]),1)&&e&&e(s),q=t=>(i=t.headers.get("content-type"))&&(i.iO("html")||i.iO("form-")),v=t=>document.createElement("html").innerHTML=w(t).trim(),w=t=>String(t).replace(a,"").replace(y,'<div class="ajy-$1"$2').replace(l,'<div id="ajy-$1"$2').replace(c,"</div>")}}class Scripts{constructor(){let $s=!1,txt=0;Ay.h.inlinehints=new Hints(Ay.s.inlinehints),Ay.h.inlineskip=new Hints(Ay.s.inlineskip),this.a=function(t){return"i"===t?($s||($s={}),!0):"s"===t?_allstyle($s.y):"1"===t?(Ay.detScripts.d($s),_addScripts($s)):"c"===t?!(!Ay.s.canonical||!$s.can)&&$s.can.getAttribute("href"):"d"===t?Ay.detScripts.d($s):t&&"object"==typeof t?_onetxt(t):void(Ay.scripts("d")||_addScripts($s))};let _allstyle=t=>!Ay.s.style||!t||(qa("style",qs("head")).forEach(t=>t.parentNode.removeChild(t)),t.forEach(t=>_addstyle(t.textContent))),_onetxt=t=>!(txt=t.textContent).iO(").ajaxify(")&&!txt.iO("new Ajaxify(")&&(Ay.s.inline&&!Ay.h.inlineskip.find(txt)||t.classList.contains("ajaxy")||Ay.h.inlinehints.find(txt))&&_addtxt(t),_addtxt=$s=>{if(txt&&txt.length){if(Ay.s.inlineappend||$s.getAttribute("type")&&!$s.getAttribute("type").iO("text/javascript"))try{return _apptxt($s)}catch(t){}try{eval(txt)}catch(t){lg("Error in inline script : "+txt+"\nError code : "+t)}}},_apptxt=t=>{let e=document.createElement("script");_copyAttributes(e,t),e.classList.add(inlineclass);try{e.appendChild(document.createTextNode(t.textContent))}catch(r){e.text=t.textContent}return qs("body").appendChild(e)},_addstyle=t=>qs("head").appendChild(Ay.parse("<style>"+t+"</style>")),_addScripts=t=>(Ay.addAll(t.c,"href"),Ay.addAll(t.j,"src"))}}class AddAll{constructor(){let t=[],e=[],r=[],s=0,i=0;Ay.h.alwayshints=new Hints(Ay.s.alwayshints),this.a=function(c,A){if(c.length){if("n"===Ay.s.deltas)return!0;if(s=A,!Ay.s.deltas)return n(c);t="href"==s?e:r,Ay.pass?c.forEach(function(e){var r=e;if(i=r.getAttribute(s),a(r))return l(),void y(r);i?t.some(t=>t==i)||(t.push(i),y(r)):"href"==s||r.classList.contains("no-ajaxy")||Ay.scripts(r)}):o(c)}};let n=t=>t.forEach(t=>y(t)),o=e=>e.forEach(e=>(i=e.getAttribute(s))?t.push(i):0),a=t=>"always"==t.getAttribute("data-class")||Ay.h.alwayshints.find(i),y=t=>{if(i=t.getAttribute(s),"href"==s)return qs("head").appendChild(Ay.parse('<link rel="stylesheet" type="text/css" href="*" />'.replace("*",i)));if(!i)return Ay.scripts(t);var e=document.createElement("script");e.async=Ay.s.asyncdef,_copyAttributes(e,t),qs("head").appendChild(e)},l=()=>qa(("href"==s?'link[href*="!"]':'script[src*="!"]').replace("!",i)).forEach(t=>t.parentNode.removeChild(t))}}class RQ{constructor(){let t=0,e=0,r=0,s=0,i=0,n=0,o=!1;this.a=function(y,l,c){if("="===y)return l?n===Ay.currentURL||n===o:n===Ay.currentURL;if("!"===y)return o=n;if("?"===y){let t=Ay.fn("s");return t.iO("0")||l||Ay.fn("a"),"1c"===t&&l?!1:("1p"===t&&l&&(!Ay.s.memoryoff||Ay.fn("a")),!0)}if("v"===y){if(!l)return!1;if(a(l,c),!Ay.internal(n))return!1;y="i"}return"i"===y?(t=!1,e=null,r=!0,s=!1,n):"h"===y?(l&&("string"==typeof l&&(i=0),n=l.href?l.href:l),n):"e"===y?(l&&a(l,c),i||n):"p"===y?(void 0!==l&&(r=l),r):"is"===y?(void 0!==l&&(t=l),t):"d"===y?(l&&(e=l),e):"C"===y?(void 0!==l&&(s=l),s):"c"===y?!s||s===l||l.iO("#")||l.iO("?")?l:s:void 0};let a=(t,e)=>n="string"!=typeof(i=t)?i.currentTarget&&i.currentTarget.href||e&&e.href||i.currentTarget.action||i.originalEvent.state.url:i}}class Frms{constructor(){let t=0,e=0;this.a=function(i,n){Ay.s.forms&&i&&("d"===i&&(e=n),"a"===i&&e.forEach(e=>{Array.prototype.filter.call(qa(Ay.s.forms,e),function(t){let e=t.getAttribute("action");return Ay.internal(e&&e.length>0?e:Ay.currentURL)}).forEach(e=>{e.addEventListener("submit",e=>{t=e.target,n=r();var i="get",o=t.getAttribute("method");o.length>0&&"post"==o.toLowerCase()&&(i="post");var a,y=t.getAttribute("action");return a=y&&y.length>0?y:Ay.currentURL,Ay.Rq("v",e),"get"==i?a=s(a,n):(Ay.Rq("is",!0),Ay.Rq("d",n)),Ay.trigger("submit",a),Ay.pronto(0,{href:a}),e.preventDefault(),!1})})}))};let r=()=>{let e=new FormData(t),r=qs("input[name][type=submit]",t);return r&&e.append(r.getAttribute("name"),r.value),e},s=(t,e)=>{let r="";for(var[s,i]of(t.iO("?")&&(t=t.substring(0,t.iO("?"))),e.entries()))r+=`${s}=${encodeURIComponent(i)}&`;return`${t}?${r.slice(0,-1)}`}}}class Pronto{constructor(){let t=0,e=0,r=0;Ay.h.prefetchoff=new Hints(Ay.s.prefetchoff),this.a=function(e,r){if(r)return"i"===r?(bdy=document.body,e.length||(e="body"),t=qa(e),Ay.frms=(new Frms).a,Ay.s.idleTime&&(Ay.slides=new classSlides(Ay).a),Ay.scrolly=new Scrolly,(Ay.offsets=new Offsets).f(),Ay.hApi=new HApi,s(),e):"object"==typeof r?(Ay.Rq("h",r),void y()):void(r.iO("/")&&(Ay.Rq("h",r),y(!0)))};let s=()=>{Ay.hApi.r(window.location.href),window.addEventListener("popstate",c),!0!==Ay.s.prefetchoff&&(_on("mouseenter",Ay.s.selector,i),_on("mouseleave",Ay.s.selector,n),_on("touchstart",Ay.s.selector,o)),_on("click",Ay.s.selector,a,bdy),Ay.frms("d",qa("body")),Ay.frms("a"),Ay.frms("d",t),Ay.s.idleTime&&Ay.slides("i")},i=(t,e)=>(n(),r=setTimeout(()=>o(t,e),150)),n=()=>clearTimeout(r),o=(t,e)=>{if(!0!==Ay.s.prefetchoff&&Ay.Rq("?",!0)){var r=Ay.Rq("v",e,t);Ay.Rq("=",!0)||!r||Ay.h.prefetchoff.find(r)||Ay.fn("+",r,()=>!1)}},a=(t,e,r)=>{if(Ay.Rq("?")){var s=Ay.Rq("v",e,t);if(s&&!h(t)){if("#"===s.substr(-1))return!0;if(f())return Ay.hApi.r(s),!0;Ay.scrolly.p(),(t=>(t.preventDefault(),t.stopPropagation(),t.stopImmediatePropagation()))(e),Ay.Rq("=")&&Ay.hApi.r(),!Ay.s.refresh&&Ay.Rq("=")||y(r)}}},y=t=>{Ay.Rq("!"),t&&Ay.Rq("p",!1),Ay.trigger("request"),Ay.fn(Ay.Rq("h"),t=>{t&&(lg("Error in _request : "+t),Ay.trigger("error",t)),l()})},l=()=>{Ay.trigger("beforeload"),Ay.s.requestDelay?(e&&clearTimeout(e),e=setTimeout(A,Ay.s.requestDelay)):A()},c=t=>{var e=window.location.href;Ay.Rq("i"),Ay.Rq("h",e),Ay.Rq("p",!1),Ay.scrolly.p(),e&&e!==Ay.currentURL&&(Ay.trigger("request"),Ay.fn(e,l))},A=()=>{if(Ay.trigger("load"),Ay.s.bodyClasses){var e=Ay.fn("body").getAttribute("class");bdy.setAttribute("class",e||"")}var r,s=Ay.Rq("h");s=Ay.Rq("c",s),Ay.Rq("p")?Ay.hApi.p(s):Ay.hApi.r(s),(r=Ay.fn("title"))&&(qs("title").innerHTML=r.innerHTML),Ay.Rq("C",Ay.fn("-",t)),Ay.frms("a"),Ay.scrolly.l(),d(s),Ay.trigger("render"),Ay.s.passCount&&(qs("#"+Ay.s.passCount).innerHTML="Pass: "+Ay.pass),Ay.s.cb&&Ay.s.cb()},d=t=>{t="/"+t.replace(rootUrl,""),void 0!==window.ga?window.ga("send","pageview",t):void 0!==window._gaq&&window._gaq.push(["_trackPageview",t])},h=t=>{var e=Ay.Rq("h"),r=Ay.Rq("e"),s=r.currentTarget.target||t.target;return r.which>1||r.metaKey||r.ctrlKey||r.shiftKey||r.altKey||"_blank"===s||e.iO("wp-login")||e.iO("wp-admin")},f=()=>{var t=Ay.Rq("e");return t.hash&&t.href.replace(t.hash,"")===window.location.href.replace(location.hash,"")||t.href===window.location.href+"#"}}}Ay.init=(()=>{let t=options;return t&&"string"==typeof t?Ay.pronto(0,t):("complete"===document.readyState||"loading"!==document.readyState&&!document.documentElement.doScroll?run():document.addEventListener("DOMContentLoaded",run),Ay)});let run=()=>{Ay.s=Object.assign(Ay.s,options),(Ay.pages=new Pages).f(),Ay.pronto=(new Pronto).a,load()&&(Ay.pronto(Ay.s.elements,"i"),Ay.s.deltas&&Ay.scripts("1"))},load=()=>window.history&&window.history.pushState&&window.history.replaceState&&Ay.s.pluginon?(lg("Ajaxify loaded..."),Ay.s.intevents&&Ay.intevents(),Ay.scripts=(new Scripts).a,Ay.scripts("i"),Ay.cache=new Cache,Ay.memory=new Memory,Ay.h.memoryoff=new Hints(Ay.s.memoryoff),Ay.fn=Ay.getPage=(new GetPage).a,Ay.detScripts=new DetScripts,Ay.addAll=(new AddAll).a,Ay.Rq=(new RQ).a,!0):(lg("Gracefully exiting..."),!1);Ay.init()}}class Cache{g(){return this.d}s(t){return this.d=t}l(t){let e=Ay.memory.l(t);return this.s(!1===e?e:Ay.pages.l(e))}}class Memory{l(t){return!(!t||!0===Ay.s.memoryoff)&&(!1===Ay.s.memoryoff?t:!Ay.h.memoryoff.find(t)&&t)}}class Pages{f(){this.d=[]}l(t){if(this.P(t))return this.d[this.i][1]}p(t){this.P(t[0])?this.d[this.i]=t:this.d.push(t)}P(t){return(this.i=this.d.findIndex(e=>e[0]==t))+1}}class DetScripts{d(t){if(!(this.h=Ay.pass?Ay.fn("head"):qs("head")))return!0;this.lk=qa(Ay.pass?".ajy-link":"link",this.h),t.j=Ay.pass?Ay.fn("script"):qa("script"),t.c=this.x("stylesheet"),t.y=qa("style",this.h),t.can=this.x("canonical")}x(t){return Array.prototype.filter.call(this.lk,e=>e.getAttribute("rel").iO(t))}}class Offsets{f(){this.d=[]}l(t){return t.iO("?")&&(t=t.split("?")[0]),this.O(t)?this.d[this.i][1]:0}p(t){let e=t.iO("?")?t.split("?")[0]:t,r=e.iO("#")?e.split("#")[0]:e,s=[r,document.documentElement&&document.documentElement.scrollTop||document.body.scrollTop];this.O(r)?this.d[this.i]=s:this.d.push(s)}O(t){return(this.i=this.d.findIndex(e=>e[0]==t))+1}}class Scrolly{constructor(){"scrollRestoration"in history&&(history.scrollRestoration="manual")}p(){"s"==Ay.s.scrolltop&&Ay.offsets.p(Ay.currentURL)}l(){let t=Ay.currentURL;if(t.iO("#")&&t.iO("#")<t.length-1){let e=qs("#"+t.split("#")[1]);if(!e)return;let r=e.getBoundingClientRect();return this.s(r.top+window.pageYOffset-document.documentElement.clientTop)}"s"==Ay.s.scrolltop?this.s(Ay.offsets.l(t)):Ay.s.scrolltop&&this.s(0)}s(t){window.scrollTo(0,t)}}class HApi{r(t){let e=this.u(t);history.replaceState({url:e},"state-"+e,e)}p(t){let e=this.u(t);e!==window.location.href&&history.pushState({url:e},"state-"+e,e)}u(t){return t&&(Ay.currentURL=t),Ay.currentURL}}
|
|
1
|
+
let Ay,rootUrl=location.origin,inlineclass="ajy-inline",bdy,qa=(a,b=document)=>b.querySelectorAll(a),qs=(a,b=document)=>b.querySelector(a);class Ajaxify{constructor(options){function _copyAttributes(el,$S,flush){flush&&[...el.attributes].forEach(a=>el.removeAttribute(a.name)),[...$S.attributes].forEach(a=>"ajy-body"==a.nodeValue||el.setAttribute(a.nodeName,a.nodeValue))}function _on(eventName,elementSelector,handler,el=document){el.addEventListener(eventName,function(b){for(var a=b.target;a&&a!=this;a=a.parentNode)if(a.matches(elementSelector)){handler(a,b);break}},!!eventName.iO("mo"))}String.prototype.iO=function(a){return this.toString().indexOf(a)+1},Ay=this,Ay.s={elements:"body",selector:"a:not(.no-ajaxy)",forms:"form:not(.no-ajaxy)",canonical:!1,refresh:!1,requestDelay:0,scrolltop:"s",scrollDelay:0,bodyClasses:!0,deltas:!0,asyncdef:!0,alwayshints:!1,inline:!0,inlinehints:!1,inlineskip:"adsbygoogle",inlineappend:!0,intevents:!0,style:!0,prefetchoff:!1,verbosity:0,memoryoff:!1,cb:0,pluginon:!0,passCount:!1},Ay.pass=0,Ay.currentURL="",Ay.h={},Ay.parse=(b,a)=>((a=document.createElement("div")).insertAdjacentHTML("afterbegin",b),a.firstElementChild),Ay.trigger=(b,c)=>{let a=document.createEvent("HTMLEvents");a.initEvent("pronto."+b,!0,!1),a.data=c||Ay.Rq("e"),window.dispatchEvent(a),document.dispatchEvent(a)},Ay.internal=a=>!!a&&("object"==typeof a&&(a=a.href),""===a||a.substring(0,rootUrl.length)===rootUrl||!a.iO(":")),Ay.intevents=()=>{let a=function(a,b,c=!1){(this===document||this===window)&&"DOMContentLoaded"==a?setTimeout(b):this.ael(a,b,c)};EventTarget.prototype.ael=EventTarget.prototype.addEventListener,EventTarget.prototype.addEventListener=a};class Hints{constructor(a){let _=this;_.list="string"==typeof a&&a.length>0&&a.split(", "),_.find=a=>!!a&&!!_.list&&_.list.some(b=>a.iO(b))}}function lg(m){Ay.s.verbosity&&console&&console.log(m)}class GetPage{constructor(){let a=0,b=0,c=0,d="",e=0,f=0,g=0,h=/<\!DOCTYPE[^>]*>/i,i=/<(html|head|link)([\s\>])/gi,j=/<(body)([\s\>])/gi,k=/<\/(html|head|body|link)\>/gi,l='<div class="ajy-$1"$2',m='<div id="ajy-$1"$2';this.a=function(e,h,i){if(!e)return Ay.cache.g();if(e.iO("/")){if(b=h,c==e)return;return o(e)}if("+"===e)return c=h,b=i,o(h,!0);if("a"===e){f>0&&(t(),g.abort());return}return"s"===e?(f?1:0)+d:"-"===e?n(h):"x"===e?a:Ay.cache.g()?"body"===e?qs("#ajy-"+e,Ay.cache.g()):"script"===e?qa(e,Ay.cache.g()):qs("title"===e?e:".ajy-"+e,Ay.cache.g()):void 0};let n=a=>(Ay.pass++,q(a),qa("body > script").forEach(a=>!!a.classList.contains(inlineclass)&&a.parentNode.removeChild(a)),Ay.scripts(!0),Ay.scripts("s"),Ay.scripts("c")),o=(a,d)=>(a.iO("#")&&(a=a.split("#")[0]),Ay.Rq("is")||!Ay.cache.l(a))?s(a,d):(c=0,b)?b():void 0,p=(b,c)=>{if(c){var a=c.cloneNode(!0);qa("script",a).forEach(a=>a.parentNode.removeChild(a)),_copyAttributes(b,a,!0),b.innerHTML=a.innerHTML}},q=a=>Ay.cache.g()&&!r(a)&&a.forEach(function(a){p(a,qs("#"+a.getAttribute("id"),Ay.cache.g()))}),r=a=>"body"==a[0].tagName.toLowerCase()&&(p(bdy,qs("#ajy-body",Ay.cache.g())),1),s=(c,e)=>{var b=Ay.Rq("is");d=e?"p":"c",g=new AbortController,f++,fetch(c,{method:b?"POST":"GET",cache:"default",mode:"same-origin",headers:{"X-Requested-With":"XMLHttpRequest"},body:b?Ay.Rq("d"):null,signal:g.signal}).then(b=>{if(!b.ok||!v(b)){e||(location.href=c);return}return a=b,b.text()}).then(b=>{if(t(1),b)return a.responseText=b,u(c,b)}).catch(a=>{if("AbortError"!==a.name)try{return Ay.trigger("error",a),lg("Response text : "+a.message),u(c,a.message,a)}catch(b){}}).finally(()=>f--)},t=a=>(c=0,a?0:b=0),u=(a,c,d)=>Ay.cache.s(Ay.parse(w(c)))&&(Ay.pages.p([a,Ay.cache.g()]),1)&&b&&b(d),v=a=>(e=a.headers.get("content-type"))&&(e.iO("html")||e.iO("form-")),w=a=>document.createElement("html").innerHTML=x(a).trim(),x=a=>String(a).replace(h,"").replace(i,l).replace(j,m).replace(k,"</div>")}}class Scripts{constructor(){let $s=!1,txt=0;Ay.h.inlinehints=new Hints(Ay.s.inlinehints),Ay.h.inlineskip=new Hints(Ay.s.inlineskip),this.a=function(a){return"i"===a?($s||($s={}),!0):"s"===a?_allstyle($s.y):"1"===a?(Ay.detScripts.d($s),_addScripts($s)):"c"===a?!!Ay.s.canonical&&!!$s.can&&$s.can.getAttribute("href"):"d"===a?Ay.detScripts.d($s):a&&"object"==typeof a?_onetxt(a):void(Ay.scripts("d")||_addScripts($s))};let _allstyle=a=>!Ay.s.style||!a||(qa("style",qs("head")).forEach(a=>a.parentNode.removeChild(a)),a.forEach(a=>_addstyle(a.textContent))),_onetxt=a=>!(txt=a.textContent).iO(").ajaxify(")&&!txt.iO("new Ajaxify(")&&(Ay.s.inline&&!Ay.h.inlineskip.find(txt)||a.classList.contains("ajaxy")||Ay.h.inlinehints.find(txt))&&_addtxt(a),_addtxt=$s=>{if(txt&&txt.length){if(Ay.s.inlineappend||$s.getAttribute("type")&&!$s.getAttribute("type").iO("text/javascript"))try{return _apptxt($s)}catch(e){}try{eval(txt)}catch(e1){lg("Error in inline script : "+txt+"\nError code : "+e1)}}},_apptxt=b=>{let a=document.createElement("script");_copyAttributes(a,b),a.classList.add(inlineclass);try{a.appendChild(document.createTextNode(b.textContent))}catch(c){a.text=b.textContent}return qs("body").appendChild(a)},_addstyle=a=>qs("head").appendChild(Ay.parse("<style>"+a+"</style>")),_addScripts=a=>(Ay.addAll(a.c,"href"),Ay.addAll(a.j,"src"))}}class AddAll{constructor(){let a=[],b=[],c=[],d=0,e=0,f='<link rel="stylesheet" type="text/css" href="*" />',g='link[href*="!"]',h='script[src*="!"]';Ay.h.alwayshints=new Hints(Ay.s.alwayshints),this.a=function(f,g){if(f.length){if("n"===Ay.s.deltas)return!0;if(d=g,!Ay.s.deltas)return i(f);a="href"==d?b:c,Ay.pass?f.forEach(function(c){var b=c;if(e=b.getAttribute(d),k(b)){m(),l(b);return}if(e){a.some(a=>a==e)||(a.push(e),l(b));return}"href"==d||b.classList.contains("no-ajaxy")||Ay.scripts(b)}):j(f)}};let i=a=>a.forEach(a=>l(a)),j=b=>b.forEach(b=>(e=b.getAttribute(d))?a.push(e):0),k=a=>"always"==a.getAttribute("data-class")||Ay.h.alwayshints.find(e),l=a=>{if(e=a.getAttribute(d),"href"==d)return qs("head").appendChild(Ay.parse(f.replace("*",e)));if(!e)return Ay.scripts(a);var b=document.createElement("script");b.async=Ay.s.asyncdef,_copyAttributes(b,a),qs("head").appendChild(b)},m=()=>qa(("href"==d?g:h).replace("!",e)).forEach(a=>a.parentNode.removeChild(a))}}class RQ{constructor(){let a=0,b=0,c=0,d=0,e=0,f=0,g=!1;this.a=function(j,i,l){if("="===j)return i?f===Ay.currentURL||f===g:f===Ay.currentURL;if("!"===j)return g=f;if("?"===j){let k=Ay.fn("s");return k.iO("0")||i||Ay.fn("a"),("1c"!==k||!i)&&("1p"===k&&i&&Ay.s.memoryoff&&Ay.fn("a"),!0)}if("v"===j){if(!i||(h(i,l),!Ay.internal(f)))return!1;j="i"}return"i"===j?(a=!1,b=null,c=!0,d=!1,f):"h"===j?(i&&("string"==typeof i&&(e=0),f=i.href?i.href:i),f):"e"===j?(i&&h(i,l),e||f):"p"===j?(void 0!==i&&(c=i),c):"is"===j?(void 0!==i&&(a=i),a):"d"===j?(i&&(b=i),b):"C"===j?(void 0!==i&&(d=i),d):"c"===j?!d||d===i||i.iO("#")||i.iO("?")?i:d:void 0};let h=(b,a)=>f="string"!=typeof(e=b)?e.currentTarget&&e.currentTarget.href||a&&a.href||e.currentTarget.action||e.originalEvent.state.url:e}}class Frms{constructor(){let a=0,b=0;this.a=function(e,f){Ay.s.forms&&e&&("d"===e&&(b=f),"a"===e&&b.forEach(b=>{Array.prototype.filter.call(qa(Ay.s.forms,b),function(b){let a=b.getAttribute("action");return Ay.internal(a&&a.length>0?a:Ay.currentURL)}).forEach(b=>{b.addEventListener("submit",e=>{a=e.target,f=c();var h="get",i=a.getAttribute("method");i.length>0&&"post"==i.toLowerCase()&&(h="post");var b,g=a.getAttribute("action");return b=g&&g.length>0?g:Ay.currentURL,Ay.Rq("v",e),"get"==h?b=d(b,f):(Ay.Rq("is",!0),Ay.Rq("d",f)),Ay.trigger("submit",b),Ay.pronto(0,{href:b}),e.preventDefault(),!1})})}))};let c=()=>{let c=new FormData(a),b=qs("input[name][type=submit]",a);return b&&c.append(b.getAttribute("name"),b.value),c},d=(a,c)=>{let b="";for(var[d,e]of(a.iO("?")&&(a=a.substring(0,a.iO("?"))),c.entries()))b+=`${d}=${encodeURIComponent(e)}&`;return`${a}?${b.slice(0,-1)}`}}}class Pronto{constructor(){let a=0,b=0,c=150,d=0;Ay.h.prefetchoff=new Hints(Ay.s.prefetchoff),this.a=function(c,b){if(b){if("i"===b)return bdy=document.body,c.length||(c="body"),a=qa(c),Ay.frms=new Frms().a,Ay.s.idleTime&&(Ay.slides=new classSlides(Ay).a),Ay.scrolly=new Scrolly,(Ay.offsets=new Offsets).f(),Ay.hApi=new HApi,e(),c;if("object"==typeof b){Ay.Rq("h",b),k();return}b.iO("/")&&(Ay.Rq("h",b),k(!0))}};let e=()=>{Ay.hApi.r(window.location.href),window.addEventListener("popstate",m),!0!==Ay.s.prefetchoff&&(_on("mouseenter",Ay.s.selector,f),_on("mouseleave",Ay.s.selector,g),_on("touchstart",Ay.s.selector,h)),_on("click",Ay.s.selector,j,bdy),Ay.frms("d",qa("body")),Ay.frms("a"),Ay.frms("d",a),Ay.s.idleTime&&Ay.slides("i")},f=(a,b)=>(g(),d=setTimeout(()=>h(a,b),c)),g=()=>clearTimeout(d),h=(b,c)=>{if(!0!==Ay.s.prefetchoff&&Ay.Rq("?",!0)){var a=Ay.Rq("v",c,b);Ay.Rq("=",!0)||!a||Ay.h.prefetchoff.find(a)||Ay.fn("+",a,()=>!1)}},i=a=>(a.preventDefault(),a.stopPropagation(),a.stopImmediatePropagation()),j=(b,c,d)=>{if(Ay.Rq("?")){var a=Ay.Rq("v",c,b);if(!(!a||p(b))){if("#"===a.substr(-1))return!0;if(q())return Ay.hApi.r(a),!0;Ay.scrolly.p(),i(c),Ay.Rq("=")&&Ay.hApi.r(),(Ay.s.refresh||!Ay.Rq("="))&&k(d)}}},k=a=>{Ay.Rq("!"),a&&Ay.Rq("p",!1),Ay.trigger("request"),Ay.fn(Ay.Rq("h"),a=>{a&&(lg("Error in _request : "+a),Ay.trigger("error",a)),l()})},l=()=>{Ay.trigger("beforeload"),Ay.s.requestDelay?(b&&clearTimeout(b),b=setTimeout(n,Ay.s.requestDelay)):n()},m=b=>{var a=window.location.href;Ay.Rq("i"),Ay.Rq("h",a),Ay.Rq("p",!1),Ay.scrolly.p(),a&&a!==Ay.currentURL&&(Ay.trigger("request"),Ay.fn(a,l))},n=()=>{Ay.trigger("load"),Ay.s.bodyClasses&&_copyAttributes(bdy,Ay.fn("body"),!0);var c,b=Ay.Rq("h");b=Ay.Rq("c",b),Ay.Rq("p")?Ay.hApi.p(b):Ay.hApi.r(b),(c=Ay.fn("title"))&&(qs("title").innerHTML=c.innerHTML),Ay.Rq("C",Ay.fn("-",a)),Ay.frms("a"),Ay.scrolly.l(),o(b),Ay.trigger("render"),Ay.s.passCount&&(qs("#"+Ay.s.passCount).innerHTML="Pass: "+Ay.pass),Ay.s.cb&&Ay.s.cb()},o=a=>{a="/"+a.replace(rootUrl,""),void 0!==window.ga?window.ga("send","pageview",a):void 0!==window._gaq&&window._gaq.push(["_trackPageview",a])},p=c=>{var b=Ay.Rq("h"),a=Ay.Rq("e"),d=a.currentTarget.target||c.target;return a.which>1||a.metaKey||a.ctrlKey||a.shiftKey||a.altKey||"_blank"===d||b.iO("wp-login")||b.iO("wp-admin")},q=()=>{var a=Ay.Rq("e");return a.hash&&a.href.replace(a.hash,"")===window.location.href.replace(location.hash,"")||a.href===window.location.href+"#"}}}Ay.init=()=>{let a=options;return a&&"string"==typeof a?Ay.pronto(0,a):("complete"!==document.readyState&&("loading"===document.readyState||document.documentElement.doScroll)?document.addEventListener("DOMContentLoaded",run):run(),Ay)};let run=()=>{Ay.s=Object.assign(Ay.s,options),(Ay.pages=new Pages).f(),Ay.pronto=new Pronto().a,load()&&(Ay.pronto(Ay.s.elements,"i"),Ay.s.deltas&&Ay.scripts("1"))},load=()=>window.history&&window.history.pushState&&window.history.replaceState&&Ay.s.pluginon?(lg("Ajaxify loaded..."),Ay.s.intevents&&Ay.intevents(),Ay.scripts=new Scripts().a,Ay.scripts("i"),Ay.cache=new Cache,Ay.memory=new Memory,Ay.h.memoryoff=new Hints(Ay.s.memoryoff),Ay.fn=Ay.getPage=new GetPage().a,Ay.detScripts=new DetScripts,Ay.addAll=new AddAll().a,Ay.Rq=new RQ().a,!0):(lg("Gracefully exiting..."),!1);Ay.init()}}class Cache{g(){return this.d}s(a){return this.d=a}l(b){let a=Ay.memory.l(b);return this.s(!1===a?a:Ay.pages.l(a))}}class Memory{l(a){return!!a&& !0!==Ay.s.memoryoff&&(!1===Ay.s.memoryoff?a:!Ay.h.memoryoff.find(a)&&a)}}class Pages{f(){this.d=[]}l(a){if(this.P(a))return this.d[this.i][1]}p(a){this.P(a[0])?this.d[this.i]=a:this.d.push(a)}P(a){return(this.i=this.d.findIndex(b=>b[0]==a))+1}}class DetScripts{d(a){if(!(this.h=Ay.pass?Ay.fn("head"):qs("head")))return!0;this.lk=qa(Ay.pass?".ajy-link":"link",this.h),a.j=Ay.pass?Ay.fn("script"):qa("script"),a.c=this.x("stylesheet"),a.y=qa("style",this.h),a.can=this.x("canonical")}x(a){return Array.prototype.filter.call(this.lk,b=>b.getAttribute("rel").iO(a))}}class Offsets{f(){this.d=[]}l(a){return a.iO("?")&&(a=a.split("?")[0]),this.O(a)?this.d[this.i][1]:0}p(a){let b=a.iO("?")?a.split("?")[0]:a,c=b.iO("#")?b.split("#")[0]:b,d=[c,document.documentElement&&document.documentElement.scrollTop||document.body.scrollTop];this.O(c)?this.d[this.i]=d:this.d.push(d)}O(a){return(this.i=this.d.findIndex(b=>b[0]==a))+1}}class Scrolly{constructor(){"scrollRestoration"in history&&(history.scrollRestoration="manual")}p(){"s"==Ay.s.scrolltop&&Ay.offsets.p(Ay.currentURL)}l(){let a=Ay.currentURL;if(a.iO("#")&&a.iO("#")<a.length-1){let b=qs("#"+a.split("#")[1]);if(!b)return;let c=b.getBoundingClientRect();return this.s(c.top+window.pageYOffset-document.documentElement.clientTop)}"s"==Ay.s.scrolltop?this.s(Ay.offsets.l(a)):Ay.s.scrolltop&&this.s(0)}s(a){setTimeout(()=>window.scrollTo(0,a),Ay.s.scrollDelay)}}class HApi{r(b){let a=this.u(b);history.replaceState({url:a},"state-"+a,a)}p(b){let a=this.u(b);a!==window.location.href&&history.pushState({url:a},"state-"+a,a)}u(a){return a&&(Ay.currentURL=a),Ay.currentURL}}
|