UNPKG

ce-v0

Version:
3 lines (2 loc) 6.43 kB
/*! Copyright (c) 2017, Andrea Giammarchi (ISC) */ !function(t){"use strict";function e(t){var e,n=t.target,r=t.attributeName,a=t.oldValue;Vt&&n[P]&&"style"!==r&&(e=vt.call(n,r))!==a&&n[P](r,a,e)}function n(){var t=g.splice(0,g.length);for(wt=0;t.length;)t.shift().call(null,t.shift())}function r(t,e){for(var n=0,r=t.length;n<r;n++)d(t[n],e)}function a(t){for(var e,n=0,r=t.length;n<r;n++)e=t[n],N(e,B[l(e)])}function o(t){return function(e){st(e)&&(d(e,t),G.length&&r(e.querySelectorAll(G),t))}}function l(t){return Q.call(z,W+t.nodeName.toUpperCase())}function u(t){var e=t.currentTarget,n=t.attrChange,r=t.attrName,a=t.target,o=t[U]||2,l=t[j]||3;!Vt||a&&a!==e||!e[P]||"style"===r||t.prevValue===t.newValue&&(""!==t.newValue||n!==o&&n!==l)||e[P](r,n===o?null:t.prevValue,n===l?null:t.newValue)}function i(t){var e=o(t);return function(t){g.push(e,t.target),wt&&clearTimeout(wt),wt=setTimeout(n,1)}}function c(t){Ct&&(Ct=!1,t.currentTarget.removeEventListener(x,c)),G.length&&r((t.target||V).querySelectorAll(G),t.detail===L?L:I),ct&&p()}function s(t){var e=t.cloneNode;t.cloneNode=function(t){var n=e.call(this,!!t),r=l(n);return-1<r&&N(n,B[r]),t&&G.length&&a(n.querySelectorAll(G)),n}}function f(t,e){var n=this;mt.call(n,t,e),m.call(n,{target:n})}function h(t,e){lt(t,e),O?O.observe(t,yt):(Et&&(t.setAttribute=f,t[D]=y(t),t[T](K,m)),t[T](k,u)),t[H]&&Vt&&(t.created=!0,t[H](),t.created=!1)}function p(){for(var t,e=0,n=ft.length;e<n;e++)t=ft[e],J.contains(t)||(n--,ft.splice(e--,1),d(t,L))}function v(t){throw new Error("A "+t+" type is already registered")}function d(t,e){var n,r,a=l(t);-1<a&&(A(t,B[a]),a=0,e!==I||t[I]?e!==L||t[L]||(t[I]=!1,t[L]=!0,r="disconnected",a=1):(t[L]=!1,t[I]=!0,r="connected",a=1,ct&&Q.call(ft,t)<0&&ft.push(t)),a&&(n=t[e+_]||t[r+_])&&n.call(t))}var g,m,b,y,O,w,A,N,E,C,V=t.document,M=t.Object,D="__registerElement"+(1e5*t.Math.random()>>0),T="addEventListener",I="attached",_="Callback",L="detached",P="attributeChanged"+_,S=I+_,q="connected"+_,F="disconnected"+_,H="created"+_,R=L+_,U="ADDITION",j="REMOVAL",k="DOMAttrModified",x="DOMContentLoaded",K="DOMSubtreeModified",W="<",z=[],B=[],G="",J=V.documentElement,Q=z.indexOf||function(t){for(var e=this.length;e--&&this[e]!==t;);return e},X=M.prototype,Y=X.hasOwnProperty,Z=X.isPrototypeOf,$=M.defineProperty,tt=M.getOwnPropertyDescriptor,et=M.getOwnPropertyNames,nt=M.getPrototypeOf,rt=M.setPrototypeOf,at=!!M.__proto__,ot=M.create||function t(e){return e?(t.prototype=e,new t):this},lt=rt||(at?function(t,e){return t.__proto__=e,t}:et&&tt?function(){function t(t,e){for(var n,r=et(e),a=0,o=r.length;a<o;a++)n=r[a],Y.call(t,n)||$(t,n,tt(e,n))}return function(e,n){do{t(e,n)}while((n=nt(n))&&!Z.call(n,e));return e}}():function(t,e){for(var n in e)t[n]=e[n];return t}),ut=t.MutationObserver||t.WebKitMutationObserver,it=(t.HTMLElement||t.Element||t.Node).prototype,ct=!Z.call(it,J),st=ct?function(t){return 1===t.nodeType}:function(t){return Z.call(it,t)},ft=ct&&[],ht=it.attachShadow,pt=it.dispatchEvent,vt=it.getAttribute,dt=it.hasAttribute,gt=it.removeAttribute,mt=it.setAttribute,bt=V.createElement,yt=ut&&{attributes:!0,characterData:!0,attributeOldValue:!0},Ot=ut||function(){Et=!1,J.removeEventListener(k,Ot)},wt=0,At=!0,Nt=!1,Et=!0,Ct=!0,Vt=!0,Mt=t.customElements;"registerElement"in V||(Mt?(function(){},E=Reflect.construct,C=Mt.define.bind(Mt),V.registerElement=function(t,n){function r(){return E(o,arguments,r)[H]()}var a=n.prototype,o=nt(a).constructor,l=a[H],u=a[P],i=a[S],c=a[R],s=u?function(t){return h.observe(t,{attributes:!0,attributeOldValue:!0}),t}:M,f=function(t,e){$(r.prototype,t,{configurable:!0,writable:!0,value:e})},h=u&&new ut(function(t){for(var n=0,r=t.length;n<r;n++)e(t[n])});return r.prototype=ot(a),f(H,l?function(){return l.call(s(this)),this}:function(){return s(this)}),u&&f(P,u),i&&f(q,i),c&&f(F,c),C(t,r),r}):(rt||at?(A=function(t,e){Z.call(e,t)||h(t,e)},N=h):N=A=function(t,e){t[D]||(t[D]=M(!0),h(t,e))},ct?(Et=!1,function(){var t=tt(it,T),e=t.value,n=function(t){var e=new CustomEvent(k,{bubbles:!0});e.attrName=t,e.prevValue=vt.call(this,t),e.newValue=null,e[j]=e.attrChange=2,gt.call(this,t),pt.call(this,e)},r=function(t,e){var n=dt.call(this,t),r=n&&vt.call(this,t),a=new CustomEvent(k,{bubbles:!0});mt.call(this,t,e),a.attrName=t,a.prevValue=n?r:null,a.newValue=e,n?a.MODIFICATION=a.attrChange=1:a[U]=a.attrChange=0,pt.call(this,a)},a=function(t){var e,n=t.currentTarget,r=n[D],a=t.propertyName;r.hasOwnProperty(a)&&(r=r[a],(e=new CustomEvent(k,{bubbles:!0})).attrName=r.name,e.prevValue=r.value||null,e.newValue=r.value=n[a]||null,null==e.prevValue?e[U]=e.attrChange=0:e.MODIFICATION=e.attrChange=1,pt.call(n,e))};t.value=function(t,o,l){t===k&&this[P]&&this.setAttribute!==r&&(this[D]={className:{name:"class",value:this.className}},this.setAttribute=r,this.removeAttribute=n,e.call(this,"propertychange",a)),e.call(this,t,o,l)},$(it,T,t)}()):ut||(J[T](k,Ot),J.setAttribute(D,1),J.removeAttribute(D),Et&&(m=function(t){var e,n,r,a=this;if(a===t.target){e=a[D],a[D]=n=y(a);for(r in n){if(!(r in e))return b(0,a,r,e[r],n[r],U);if(n[r]!==e[r])return b(1,a,r,e[r],n[r],"MODIFICATION")}for(r in e)if(!(r in n))return b(2,a,r,e[r],n[r],j)}},b=function(t,e,n,r,a,o){var l={attrChange:t,currentTarget:e,attrName:n,prevValue:r,newValue:a};l[o]=t,u(l)},y=function(t){for(var e,n,r={},a=t.attributes,o=0,l=a.length;o<l;o++)"setAttribute"!==(n=(e=a[o]).name)&&(r[n]=e.value);return r})),V.registerElement=function(t,n){if(a=t.toUpperCase(),At&&(At=!1,ut?(O=function(t,n){function r(t,e){for(var n=0,r=t.length;n<r;e(t[n++]));}return new ut(function(a){for(var o,l=0,u=a.length;l<u;l++)"childList"===(o=a[l]).type?(r(o.addedNodes,t),r(o.removedNodes,n)):e(o)})}(o(I),o(L)),(w=function(t){return O.observe(t,{childList:!0,subtree:!0}),t})(V),ht&&(it.attachShadow=function(){return w(ht.apply(this,arguments))})):(g=[],V[T]("DOMNodeInserted",i(I)),V[T]("DOMNodeRemoved",i(L))),V[T](x,c),V[T]("readystatechange",c),s(it),s(V.createDocumentFragment().constructor.prototype)),Nt)return Nt=!1;-2<Q.call(z,"="+a)+Q.call(z,W+a)&&v(t);var a,l,u=function(){return V.createElement(h)},f=n||X,h=a;return l=z.push(W+a)-1,G=G.concat(G.length?",":"",h),u.prototype=B[l]=Y.call(f,"prototype")?f.prototype:ot(it),G.length&&r(V.querySelectorAll(G),I),u},V.createElement=function(t){var e=bt.apply(V,arguments),n=""+t,r=Q.call(z,W+n.toUpperCase()),a=-1<r;return Vt=!V.createElement.innerHTMLHelper,a&&N(e,B[r]),e}))}(window);