only.js
Version:
Automatically load and execute selector-based dependencies
1 lines • 5.58 kB
JavaScript
!function(n){"use strict";var t=n.$O,e="js",r="wait",i="text",o="type",u="charset",c="elem",a="head",f="exec",l="push",s=f+"_trigger",d="on",p="load",y=d+p,h="pre"+p,v=d+h,b=p+"ed",m="className",O="doScroll",w="document",g="Element",j=w+g,_="finished",x=_+"_listeners",P="create"+g,T="frame"+g,A="insertBefore",L="charAt",E="call",M=E+"ee",S="splice",$="slice",z="script",B=z+"s",C="end",D="setOptions",R="test",q="src",H="real_"+q,N="toString",X="prototype",k="ready",F=k+"State",G="length",U="querySelector",I="complete",J=k+"_listeners",K="attributes",Q="Event",V="attach"+Q,W="detach"+Q,Y="setAttribute",Z=k+"statechange",nn=d+Z,tn="Listener",en="add"+Q,rn=en+tn,on="remove"+Q+tn,un="DOMContentLoaded",cn=location,an="useLocalXHR",fn="alwaysPreserveOrder",ln="allowDuplicates",sn="cacheBust",dn="basePath",pn="autoPolyfill",yn=/^[^?#]*\//[f](cn.href)[0],hn=/^[\w|\-]+\:\/\/\/?[^\/]+/[f](yn)[0],vn=n[w][a]||n[w].getElementsByTagName(a)[0],bn=n.opera&&"[object Opera]"==Object[X][N][E](n.opera)||"MozAppearance"in n[w][j].style,mn=n[w][P](z),On="boolean"==typeof mn[h],wn=On||mn[F]&&"uninitialized"==mn[F],gn=!wn&&mn.async===!0,jn=!wn&&!gn&&!bn;function _n(n,t){var e=!1,r=n[w],i=r[j],u=r[rn],c=u?rn:V,a=u?on:W,f=u?"":d,l=function(i){i[o]===Z&&r[F]!==I||((i[o]===p?n:r)[a](f+i[o],l,!1),!e&&(e=!0)&&t.call(n,i[o]||i))},s=function(){try{i[O]("left")}catch(n){return void setTimeout(s,50)}l("poll")};if(r[F]===I)t.call(n,"lazy");else{if(!u&&i[O])try{n[T]||s()}catch(y){}r[c](f+un,l,!1),r[c](f+Z,l,!1),n[c](f+p,l,!1)}}function xn(n){return"[object Function]"==Object[X][N][E](n)}function Pn(n){return"[object Array]"==Object[X][N][E](n)}function Tn(n,t){var e=/^\w+\:\/\//;return/^\/\/\/?/[R](n)?n=cn.protocol+n:e[R](n)||"/"==n[L](0)||(n=(t||"")+n),e[R](n)?n:("/"==n[L](0)?hn:yn)+n}function An(n,t){for(var e in n)n.hasOwnProperty(e)&&(t[e]=n[e]);return t}function Ln(n){for(var t=!1,e=0;e<n[B][G];e++)n[B][e][k]&&n[B][e][s]&&(t=!0,n[B][e][s](),n[B][e][s]=null);return t}function En(n,t,e,r){n[y]=n[nn]=function(){n[F]&&n[F]!=I&&n[F]!=b||t[e]||(n[y]=n[nn]=null,r())}}function Mn(n){n[k]=n[_]=!0;for(var t=0;t<n[x][G];t++)n[x][t]();n[J]=[],n[x]=[]}function Sn(t,e,r,a,f){setTimeout(function(){var l,s,d=e[H];if("item"in vn){if(!vn[0])return void setTimeout(arguments[M],25);vn=vn[0]}if(l=n[w][P](z),e[o]&&(l[o]=e[o]),e[u]&&(l[u]=e[u]),K in e)for(var p in e[K])e[K].hasOwnProperty(p)&&l[Y](p,e[K][p]);f?wn?(r[c]=l,On?(l[h]=!0,l[v]=a):l[nn]=function(){l[F]==b&&a()},l[q]=d):f&&0===d.indexOf(hn)&&t[an]?(s=new XMLHttpRequest,s[nn]=function(){4==s[F]&&(s[nn]=function(){},r[i]=s.responseText+"\n//@ sourceURL="+d,a())},s.open("GET",d),s.send()):(l[o]="text/cache-script",En(l,r,k,function(){vn.removeChild(l),a()}),l[q]=d,vn[A](l,null)):(gn?(l.async=!1,En(l,r,_,a)):En(l,r,_,a),l[q]=d,vn[A](l,null))},0)}function $n(){var a,f,d={},p=wn||jn,h={};d[an]=!0,d[fn]=!1,d[ln]=!1,d[sn]=!1,d[dn]="",d[pn]=!1;function v(t,e,r){var a;function f(){null!==a&&(a=null,Mn(r))}if(!h[e[q]][_]){if(t[ln]||(h[e[q]][_]=!0),a=r[c]||n[w][P](z),e[o]&&(a[o]=e[o]),e[u]&&(a[u]=e[u]),K in e)for(var l in e[K])e[K].hasOwnProperty(l)&&a[Y](l,e[K][l]);En(a,r,_,f),r[c]?r[c]=null:r[i]?(a[y]=a[nn]=null,a[i]=r[i]):a[q]=e[H],vn[A](a,null),r[i]&&f()}}function b(n,t,e,r){var i,o,u=function(){t.ready_cb(t,function(){v(n,t,i)})},c=function(){t.finished_cb(t,e)};t[q]=Tn(t[q],n[dn]),t[H]=t[q]+(n[sn]?(/\?.*$/[R](t[q])?"&_":"?_")+~~(1e9*Math.random())+"=":""),h[t[q]]||(h[t[q]]={items:[],finished:!1}),o=h[t[q]].items,n[ln]||0===o[G]?(i=o[o[G]]={ready:!1,finished:!1,ready_listeners:[u],finished_listeners:[c]},Sn(n,t,i,r?function(){i[k]=!0;for(var n=0;n<i[J][G];n++)i[J][n]();i[J]=[]}:function(){Mn(i)},r)):(i=o[0],i[_]?c():i[x][l](c))}function m(){var t,i,o=An(d,{}),u=[],c=0,a=!1;function y(n,t){n[k]=!0,n[s]=t,v()}function h(n,t){n[k]=n[_]=!0,n[s]=null;for(var e=0;e<t[B][G];e++)if(!t[B][e][_])return;t[_]=!0,v()}function v(){for(;c<u[G];)if(xn(u[c]))try{u[c++]()}catch(n){}else{if(!u[c][_]){if(Ln(u[c]))continue;break}c++}c==u[G]&&(a=!1,i=!1)}function m(){i&&i[B]||u[l](i={scripts:[],finished:!0})}return t={test:function(e){Pn(e)||(e=[e]);for(var r=0;r<e[G];r++)if(null===n[w][U](e[r]))return f;return t},js:function(){return function(n){for(var e=0;e<n[G];e++){var u,c=n[e],f=c;Pn(c)||(f=[c]);for(var s=0;s<f[G];s++)m(),c=f[s],xn(c)&&(c=c()),c&&(Pn(c)?(u=[][$][E](c),u.unshift(s,1),[][S].apply(f,u),s--):("string"==typeof c&&(c={src:c}),c=An(c,{ready:!1,ready_cb:y,finished:!1,finished_cb:h}),i[_]=!1,i[B][l](c),b(o,c,i,p&&a),a=!0,o[fn]&&t[r]()))}}(arguments),t},wait:function(){if(arguments[G]>0){for(var n=0;n<arguments[G];n++)u[l](arguments[n]);i=u[u[G]-1]}else i=!1;return v(),t},end:function(){return t}},{test:t[R],js:t[e],wait:t[r],end:t[C],setOptions:function(n){return An(n,o),t}}}return a={setDefaults:function(n){An(n,d),d[pn]&&a[e]("https://cdn.polyfill.io/v2/polyfill.min.js")},ready:function(t){_n(n,t)},setOptions:function(){return m()[D].apply(null,arguments)},test:function(){return m()[R].apply(null,arguments)},js:function(){return m()[e].apply(null,arguments)},wait:function(){return m()[r].apply(null,arguments)},end:$n,noConflict:function(){return n.$O=t,a},sandbox:$n},f={test:function(){return f},js:function(){return f},wait:function(){return f},end:a[C]},a}var zn=n[w][U]("[data-only]");zn&&$n()[e](zn.getAttribute("data-only")),function(n){n[m]=n[m].replace("no-"+e,e)}(n[w][j]),function(t,e,r){null===n[w][F]&&n[w][t]&&(n[w][F]="loading",n[w][t](e,r=function(){n[w][on](e,r,!1),n[w][F]=I},!1))}(rn,un),n.$O=$n()}("undefined"!=typeof global?global:"undefined"!=typeof exports?exports:this);