aberdeen 1.0.12 → 1.0.13
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/dist/aberdeen.js +47 -6
- package/dist/aberdeen.js.map +3 -3
- package/dist-min/aberdeen.js +3 -3
- package/dist-min/aberdeen.js.map +3 -3
- package/package.json +1 -1
- package/src/aberdeen.ts +48 -6
- package/html-to-aberdeen +0 -354
package/dist-min/aberdeen.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
class C{keyProp;tail;symbols;constructor(F){this.keyProp=F;this.tail={},this.symbols=[Symbol(0)]}add(F){if(this.symbols[0]in F)return!1;let J=1+(Math.clz32(Math.random()*4294967295)>>2);for(let q=this.symbols.length;q<J;q++)this.symbols.push(Symbol(q));let X=this.keyProp,z=F[X],U,W=this.tail;for(let q=this.symbols.length-1;q>=0;q--){let H=this.symbols[q];while((U=W[H])&&U[X]>z)W=U;if(q<J)F[H]=W[H],W[H]=F}return!0}has(F){return this.symbols[0]in F}fetchLast(){let F=this.tail[this.symbols[0]];if(F)return this.remove(F),F}isEmpty(){return this.tail[this.symbols[0]]===void 0}get(F){let J=this.keyProp,X,z=this.tail;for(let U=this.symbols.length-1;U>=0;U--){let W=this.symbols[U];while((X=z[W])&&X[J]>F)z=X}return z[this.symbols[0]]?.[J]===F?z[this.symbols[0]]:void 0}*[Symbol.iterator](){let F=this.symbols[0],J=this.tail[F];while(J)yield J,J=J[F]}prev(F){return F[this.symbols[0]]}remove(F){if(!(this.symbols[0]in F))return!1;let J=this.keyProp,X=F[J],z,U=this.tail;for(let W=this.symbols.length-1;W>=0;W--){let q=this.symbols[W];while((z=U[q])&&z[J]>=X&&z!==F)U=z;if(z===F)U[q]=z[q],delete z[q]}return z===F}clear(){let F=this.symbols[0],J=this.tail;while(J){let X=J[F];for(let z of this.symbols){if(!(z in J))break;delete J[z]}J=X}this.tail={}}}var B,L=0,V;function T(F){if(!B)B=new C("prio"),setTimeout(AF,0);else if(!(L&1)){if(L++,L>98)throw new Error("Too many recursive updates from observes")}B.add(F)}function AF(){let F=Date.now();while(B){let J=B.fetchLast();if(!J)break;if(L&1)L++;J.queueRun()}if(B=void 0,L=0,F=Date.now()-F,F>9)console.debug(`Aberdeen queue took ${F}ms`)}function n(F){if(typeof F==="string")return`${F}\x01`;let J="",X=Math.abs(Math.round(F)),z=F<0;while(X>0)J=String.fromCharCode(z?65534-X%65533:2+X%65533)+J,X=Math.floor(X/65533);return String.fromCharCode(128+(z?-J.length:J.length))+J}function wF(F){let J="";for(let X=0;X<F.length;X++)J+=String.fromCodePoint(65535-F.charCodeAt(X));return J}var IF=0;class p{prio=--IF;remove(){let F=this.getLastNode();if(F)k(F,this.getPrecedingNode());this.delete()}}class f extends p{cleaners;inSvgNamespace=!1;constructor(F=[]){super();this.cleaners=F}lastChild;redraw(){}getLastNode(){return P(this.lastChild)}delete(){for(let F of this.cleaners)if(typeof F==="function")F();else F.delete(this);this.cleaners.length=0,B?.remove(this),this.lastChild=void 0}queueRun(){this.remove(),V=this,this.redraw(),V=void 0}getInsertAfterNode(){return this.getLastNode()||this.getPrecedingNode()}onChange(F,J,X){T(this)}getChildPrevSibling(){return this.lastChild}}class M extends f{parentElement;prevSibling;constructor(F,J=!1){super(J?Z.cleaners:[]);this.parentElement=F;if(this.inSvgNamespace=Z.inSvgNamespace,F===Z.parentElement)this.prevSibling=Z.getChildPrevSibling(),Z.lastChild=this;if(!J)Z.cleaners.push(this)}getPrecedingNode(){return P(this.prevSibling)}getChildPrevSibling(){return this.lastChild||this.prevSibling}}class m extends M{renderer;constructor(F,J){super(F);this.renderer=J;this.redraw()}redraw(){let F=Z;Z=this;try{this.renderer()}catch(J){s(J,!0)}Z=F}}class zF extends f{parentElement=document.body;getPrecedingNode(){return}}class UF extends f{parentElement;renderer;constructor(F,J){super();this.parentElement=F;this.renderer=J;this.inSvgNamespace=Z.inSvgNamespace,this.redraw(),Z.cleaners.push(this)}redraw(){m.prototype.redraw.call(this)}getPrecedingNode(){return}delete(){k(this.getLastNode(),this.getPrecedingNode()),super.delete()}remove(){this.delete()}}function k(F,J){while(F&&F!==J){let X=F.previousSibling,z=d.get(F);if(z&&F instanceof Element){if(z!==!0){if(typeof z==="function")z(F);else MF(F,z);d.set(F,!0)}}else F.remove();F=X}}function P(F){if(!F||F instanceof Node)return F;return F.getLastNode()||F.getPrecedingNode()}class WF extends M{renderer;result=G({value:void 0});constructor(F,J){super(F);this.renderer=J;this.redraw()}redraw(){let F=Z;Z=this;try{this.result.value=this.renderer()}catch(J){s(J,!0)}Z=F}}class qF extends M{key;target;constructor(F,J,X){super(F);this.key=J;this.target=X;this.redraw()}redraw(){let F=Z;Z=this,NF(this.key,this.target.value),Z=F}}var R=new C("prio");class ZF extends m{onChange(F,J,X){R.add(this)}}var i=!1;function I(){for(let F=0;!R.isEmpty()&&!i;F++){if(F>42)throw R.clear(),new Error("Too many immediate-mode recursive updates");i=!0;let J=R;R=new C("prio");try{for(let X of J)X.queueRun()}finally{i=!1}}}class $F extends p{renderer;makeSortKey;parentElement=Z.parentElement;prevSibling;target;byIndex=new Map;sortedSet=new C("sortKey");changedIndexes=new Set;constructor(F,J,X){super();this.renderer=J;this.makeSortKey=X;let z=this.target=F[$]||F;if(j(z,Q,this),this.prevSibling=Z.getChildPrevSibling(),Z.lastChild=this,Z.cleaners.push(this),z instanceof Array){for(let U=0;U<z.length;U++)if(z[U]!==void 0)new w(this,U,!1)}else for(let[U,W]of GF(z))if(W!==void 0)new w(this,U,!1)}getPrecedingNode(){return P(this.prevSibling)}onChange(F,J,X){if(!(this.target instanceof Array)||typeof F==="number")this.changedIndexes.add(F);T(this)}queueRun(){let F=this.changedIndexes;this.changedIndexes=new Set;for(let J of F){let X=this.byIndex.get(J);if(X)X.remove();let z;if(this.target instanceof Map)z=this.target.has(J);else z=this.target[J]!==void 0;if(!z)this.byIndex.delete(J);else new w(this,J,!0)}V=void 0}delete(){for(let F of this.byIndex.values())F.delete();B?.remove(this),this.byIndex.clear(),setTimeout(()=>{this.sortedSet.clear()},1)}getLastNode(){for(let F of this.sortedSet){let J=F.getActualLastNode();if(J)return J}}}class w extends f{parent;itemIndex;sortKey;parentElement;constructor(F,J,X){super();this.parent=F;this.itemIndex=J;if(this.parentElement=F.parentElement,this.inSvgNamespace=Z.inSvgNamespace,this.parent.byIndex.set(this.itemIndex,this),this.lastChild=this,X)V=this;this.redraw()}getPrecedingNode(){this.parent.sortedSet.add(this);let F=this.parent.sortedSet.prev(this);if(F)return P(F.lastChild);return this.parent.getPrecedingNode()}getLastNode(){return this.getPrecedingNode()}getActualLastNode(){let F=this.lastChild;while(F&&F!==this){if(F instanceof Node)return F;let J=F.getLastNode();if(J)return J;F=F.getPrecedingNode()}}queueRun(){if(Z!==O)XF(4);if(this.sortKey!==void 0){let F=this.getActualLastNode();if(F)k(F,this.getPrecedingNode())}this.delete(),this.lastChild=this,V=this,this.redraw(),V=void 0}redraw(){let F,J=this.parent.target,X=this.itemIndex;if(J instanceof Map)F=G(J.get(X)),X=G(X);else F=G(J[X]);let z=Z;Z=this;let U;try{if(this.parent.makeSortKey){let W=this.parent.makeSortKey(F,X);if(W!=null)U=W instanceof Array?W.map(n).join(""):W}else U=X;if(typeof U==="number")U=n(U);if(this.sortKey!==U)this.parent.sortedSet.remove(this),this.sortKey=U;if(U!=null)this.parent.renderer(F,X)}catch(W){s(W,U!=null)}Z=z}getInsertAfterNode(){if(this.sortKey==null)XF(1);return P(this.lastChild)}remove(){if(this.sortKey!==void 0){let F=this.getActualLastNode();if(F)k(F,this.getPrecedingNode());this.parent.sortedSet.remove(this),this.sortKey=void 0}this.delete()}}function A(F){let J=Z.parentElement,X=Z.getInsertAfterNode();J.insertBefore(F,X?X.nextSibling:J.firstChild),Z.lastChild=F}var O=new zF,Z=O,Q=Symbol("any"),$=Symbol("target"),h=Symbol("mapSize"),g=new WeakMap,x=0;function j(F,J,X=Z){if(X===O||x)return;let z=g.get(F);if(!z)g.set(F,z=new Map);if(J!==Q&&z.get(Q)?.has(X))return;let U=z.get(J);if(!U)z.set(J,U=new Set);if(U.has(X))return;if(U.add(X),X===Z)Z.cleaners.push(U);else Z.cleaners.push(()=>{U.delete(X)})}function y(F,J,X){if(!F||typeof F!=="object")throw new Error("onEach requires an object");F=F[$]||F,new $F(F,J,X)}function HF(F){for(let J in F)return!1;return!0}function DF(F){let J=F[$]||F,X=Z;if(J instanceof Array)return j(J,"length",(U,W,q)=>{if(!W!==!q)T(X)}),!J.length;if(J instanceof Map)return j(J,h,(U,W,q)=>{if(!W!==!q)T(X)}),!J.size;let z=HF(J);return j(J,Q,(U,W,q)=>{if(z?q===void 0:W===void 0)T(X)}),z}function kF(F){if(F instanceof Array)return c(F,"length");if(F instanceof Map)return c(F,"size");let J=F[$]||F,X=0;for(let U in J)if(J[U]!==void 0)X++;let z=jF(X);return j(J,Q,(U,W,q)=>{if(q===W);else if(q===void 0)z.value=++X;else if(W===void 0)z.value=--X}),z}function YF(F,J,X,z){if(X===z&&X!==void 0)return;let U=g.get(F);if(U===void 0)return;for(let W of[J,Q]){let q=U.get(W);if(q)for(let H of q)if(typeof H==="function")H(J,X,z);else H.onChange(J,X,z)}}var K=YF,CF={get(F,J){if(J===$)return F;return j(F,J),G(F[J])},set(F,J,X){if(typeof X==="object"&&X)X=X[$]||X;let z=F[J];if(X!==z)F[J]=X,K(F,J,X,z),I();return!0},deleteProperty(F,J){let X=F[J];return delete F[J],K(F,J,void 0,X),I(),!0},has(F,J){let X=J in F;return j(F,J),X},ownKeys(F){return j(F,Q),Reflect.ownKeys(F)}};function o(F,J,X){if(typeof X==="object"&&X)X=X[$]||X;let z=F[J];if(X!==z){let U=F.length;if(J==="length"){F.length=X;for(let W=X;W<U;W++)K(F,W,void 0,F[W])}else{let W=Number.parseInt(J);if(W.toString()===J)J=W;F[J]=X,K(F,J,X,z)}if(F.length!==U)K(F,"length",F.length,U);I()}return!0}var _F={get(F,J){if(J===$)return F;let X=J;if(typeof J!=="symbol"){let z=Number.parseInt(J);if(z.toString()===J)X=z}return j(F,X),G(F[J])},set:o,deleteProperty(F,J){return o(F,J,void 0)}},a={get(F){let J=this[$];return j(J,F),G(J.get(F))},set(F,J){let X=this[$];if(typeof J==="object"&&J)J=J[$]||J;let z=X.get(F);if(J!==z)X.set(F,J),K(X,F,J,z),K(X,h,X.size,X.size-(z===void 0?1:0)),I();return this},delete(F){let J=this[$],X=J.get(F),z=J.delete(F);if(z)K(J,F,void 0,X),K(J,h,J.size,J.size+1),I();return z},clear(){let F=this[$],J=F.size;for(let X of F.keys()){let z=F.get(X);K(F,X,void 0,z)}F.clear(),K(F,h,0,J),I()},has(F){let J=this[$];return j(J,F),J.has(F)},keys(){let F=this[$];return j(F,Q),F.keys()},values(){let F=this[$];return j(F,Q),F.values()},entries(){let F=this[$];return j(F,Q),F.entries()},[Symbol.iterator](){let F=this[$];return j(F,Q),F[Symbol.iterator]()}},LF={get(F,J){if(J===$)return F;if(J in a)return a[J];if(J==="size")return j(F,h),F.size;return j(F,J),G(F[J])}},r=new WeakMap;function G(F){if(typeof F!=="object"||!F||F[$]!==void 0)return F;let J=r.get(F);if(J)return J;let X;if(F instanceof Array)X=_F;else if(F instanceof Map)X=LF;else X=CF;return J=new Proxy(F,X),r.set(F,J),J}function jF(F){return G(typeof F==="object"&&F!==null?F:{value:F})}function KF(F){return F?F[$]||F:F}var d=new WeakMap;function MF(F,J){let X=J.split(".").filter((z)=>z);F.classList.add(...X),setTimeout(()=>F.remove(),2000)}function xF(F,J,X=0){v(F,J,X),I()}var D=1,RF=2,t=32,b=64;function bF(F,J=0){let X;if(F instanceof Map)X=new Map;else X=Object.create(Object.getPrototypeOf(F));return v(X,F,J),X}function GF(F){return F instanceof Map?F.entries():Object.entries(F)}function e(F){return F instanceof Map?F.keys():Object.keys(F)}function v(F,J,X){let z=F[$];if(z)F=z,X|=b;if(z=J[$],z){if(J=z,Z!==O&&!x)X|=t}if(X&t)j(J,Q);if(J instanceof Array){if(!(F instanceof Array))throw new Error("Cannot copy array into object");let U=F.length,W=J.length;for(let q=0;q<W;q++)JF(F,q,J[q],X);if(W!==U)if(X&b){for(let q=W;q<U;q++){let H=F[q];F[q]=void 0,K(F,q,void 0,H)}F.length=W,K(F,"length",W,U)}else F.length=W}else{for(let[U,W]of GF(J))JF(F,U,W,X);if(!(X&D)){if(J instanceof Map){for(let U of e(F))if(!J.has(U))FF(F,U,X)}else for(let U of e(F))if(!(U in J))FF(F,U,X)}}}function FF(F,J,X){let z;if(F instanceof Map)z=F.get(J),F.delete(J);else z=F[J],delete F[J];if(X&b&&z!==void 0)K(F,J,void 0,z)}function JF(F,J,X,z){let U=F instanceof Map?F.get(J):F[J];if(X!==U){if(X&&U&&typeof X==="object"&&typeof U==="object"&&(X.constructor===U.constructor||z&D&&U instanceof Array)){v(U,X,z);return}if(!(z&RF)&&X&&typeof X==="object"){let W=Object.create(Object.getPrototypeOf(X));v(W,X,0),X=W}if(F instanceof Map)if(z&D&&X==null)F.delete(J);else F.set(J,X);else if(z&D&&X==null)delete F[J];else F[J]=X;if(z&b)K(F,J,X,U)}}var TF={get(F,J){if(J===$)return c(KF(F.proxy),F.index);if(J==="value")return F.proxy[F.index]},set(F,J,X){if(J==="value")return F.proxy[F.index]=X,!0;return!1}};function c(F,J){return new Proxy({proxy:F,index:J},TF)}function hF(F,J){let X,z,U=F.getAttribute("type"),W=KF(J).value;if(U==="checkbox"){if(W===void 0)J.value=F.checked;X=()=>{F.checked=J.value},z=()=>{J.value=F.checked}}else if(U==="radio"){if(W===void 0&&F.checked)J.value=F.value;X=()=>{F.checked=J.value===F.value},z=()=>{if(F.checked)J.value=F.value}}else{if(z=()=>{J.value=U==="number"||U==="range"?F.value===""?null:+F.value:F.value},W===void 0)z();X=()=>{if(F.value=J.value,F.tagName==="SELECT"&&F.value!=J.value)throw new Error(`SELECT has no '${J.value}' OPTION (yet)`)}}PF(X),F.addEventListener("input",z),Y(()=>{F.removeEventListener("input",z)})}var l={create:(F)=>{let J=Z.parentElement;if(Z!==V)return;if(typeof F==="function")F(J);else{let X=F.split(".").filter((z)=>z);J.classList.add(...X),(async()=>{J.offsetHeight,J.classList.remove(...X)})()}},destroy:(F)=>{let J=Z.parentElement;d.set(J,F)},html:(F)=>{let J=document.createElement(Z.parentElement.tagName);J.innerHTML=`${F}`;while(J.firstChild)A(J.firstChild)},text:(F)=>{A(document.createTextNode(F))},element:(F)=>{console.log("Aberdeen: $({element: myElement}) is deprecated, use $(myElement) instead"),A(F),l.element=A}};function _(...F){let J,X,z;for(let U of F){if(U==null||U===!1)continue;if(typeof U==="string"){let W,q,H=U.indexOf(":");if(H>=0)W=U.substring(H+1),U=U.substring(0,H);let N=U.indexOf(".");if(N>=0)q=U.substring(N+1),U=U.substring(0,N);if(U===""){if(W)A(document.createTextNode(W));if(q){let S=Z.parentElement;if(S.classList.add(...q.split(".")),!J)Y(()=>S.classList.remove(...q.split(".")))}}else if(U.indexOf(" ")>=0){X=`Tag '${U}' cannot contain space`;break}else{if(Z.inSvgNamespace||U==="svg")z=document.createElementNS("http://www.w3.org/2000/svg",U);else z=document.createElement(U);if(q)z.className=q.replaceAll("."," ");if(W)z.textContent=W;if(A(z),!J)J=Z;let E=new M(z,!0);if(U==="svg")E.inSvgNamespace=!0;if(E.lastChild=z.lastChild||void 0,V===Z)V=E;Z=E}}else if(typeof U==="object")if(U.constructor!==Object)if(U instanceof Node){if(A(U),U instanceof Element){if(!J)J=Z;Z=new M(U,!0),Z.lastChild=U.lastChild||void 0}}else{X=`Unexpected argument: ${U}`;break}else for(let W in U){let q=U[W];NF(W,q)}else if(typeof U==="function")new m(Z.parentElement,U);else{X=`Unexpected argument: ${U}`;break}}if(J)Z=J;if(X)throw new Error(X);return z}var QF=0;function vF(F,J=!1){let X=J?"":`.AbdStl${++QF}`,z=u(F,X);if(z)_(`style:${z}`);return X}function u(F,J){let X="",z="";for(let U in F){let W=F[U];for(let q of U.split(/, ?/g))if(W&&typeof W==="object")if(q.startsWith("@"))z+=`${q}{
|
|
1
|
+
class Y{keyProp;tail;symbols;constructor(F){this.keyProp=F;this.tail={},this.symbols=[Symbol(0)]}add(F){if(this.symbols[0]in F)return!1;let J=1+(Math.clz32(Math.random()*4294967295)>>2);for(let q=this.symbols.length;q<J;q++)this.symbols.push(Symbol(q));let X=this.keyProp,z=F[X],U,W=this.tail;for(let q=this.symbols.length-1;q>=0;q--){let H=this.symbols[q];while((U=W[H])&&U[X]>z)W=U;if(q<J)F[H]=W[H],W[H]=F}return!0}has(F){return this.symbols[0]in F}fetchLast(){let F=this.tail[this.symbols[0]];if(F)return this.remove(F),F}isEmpty(){return this.tail[this.symbols[0]]===void 0}get(F){let J=this.keyProp,X,z=this.tail;for(let U=this.symbols.length-1;U>=0;U--){let W=this.symbols[U];while((X=z[W])&&X[J]>F)z=X}return z[this.symbols[0]]?.[J]===F?z[this.symbols[0]]:void 0}*[Symbol.iterator](){let F=this.symbols[0],J=this.tail[F];while(J)yield J,J=J[F]}prev(F){return F[this.symbols[0]]}remove(F){if(!(this.symbols[0]in F))return!1;let J=this.keyProp,X=F[J],z,U=this.tail;for(let W=this.symbols.length-1;W>=0;W--){let q=this.symbols[W];while((z=U[q])&&z[J]>=X&&z!==F)U=z;if(z===F)U[q]=z[q],delete z[q]}return z===F}clear(){let F=this.symbols[0],J=this.tail;while(J){let X=J[F];for(let z of this.symbols){if(!(z in J))break;delete J[z]}J=X}this.tail={}}}var B,L=0,V;function f(F){if(!B)B=new Y("prio"),setTimeout(CF,0);else if(!(L&1)){if(L++,L>98)throw new Error("Too many recursive updates from observes")}B.add(F)}function CF(){let F=Date.now();while(B){let J=B.fetchLast();if(!J)break;if(L&1)L++;J.queueRun()}if(B=void 0,L=0,F=Date.now()-F,F>9)console.debug(`Aberdeen queue took ${F}ms`)}function n(F){if(typeof F==="string")return`${F}\x01`;let J="",X=Math.abs(Math.round(F)),z=F<0;while(X>0)J=String.fromCharCode(z?65534-X%65533:2+X%65533)+J,X=Math.floor(X/65533);return String.fromCharCode(128+(z?-J.length:J.length))+J}function xF(F){let J="";for(let X=0;X<F.length;X++)J+=String.fromCodePoint(65535-F.charCodeAt(X));return J}var YF=0;class p{prio=--YF;remove(){let F=this.getLastNode();if(F)x(F,this.getPrecedingNode());this.delete()}}class T extends p{cleaners;inSvgNamespace=!1;constructor(F=[]){super();this.cleaners=F}lastChild;redraw(){}getLastNode(){return P(this.lastChild)}delete(){for(let F of this.cleaners)if(typeof F==="function")F();else F.delete(this);this.cleaners.length=0,B?.remove(this),this.lastChild=void 0}queueRun(){this.remove(),V=this,this.redraw(),V=void 0}getInsertAfterNode(){return this.getLastNode()||this.getPrecedingNode()}onChange(F,J,X){f(this)}getChildPrevSibling(){return this.lastChild}}class M extends T{parentElement;prevSibling;constructor(F,J=!1){super(J?Z.cleaners:[]);this.parentElement=F;if(this.inSvgNamespace=Z.inSvgNamespace,F===Z.parentElement)this.prevSibling=Z.getChildPrevSibling(),Z.lastChild=this;if(!J)Z.cleaners.push(this)}getPrecedingNode(){return P(this.prevSibling)}getChildPrevSibling(){return this.lastChild||this.prevSibling}}class k extends M{renderer;constructor(F,J){super(F);this.renderer=J;this.redraw()}redraw(){let F=Z;Z=this;try{this.renderer()}catch(J){s(J,!0)}Z=F}}class WF extends T{parentElement=document.body;getPrecedingNode(){return}}class qF extends T{parentElement;renderer;constructor(F,J){super();this.parentElement=F;this.renderer=J;this.inSvgNamespace=Z.inSvgNamespace,this.redraw(),Z.cleaners.push(this)}redraw(){k.prototype.redraw.call(this)}getPrecedingNode(){return}delete(){x(this.getLastNode(),this.getPrecedingNode()),super.delete()}remove(){this.delete()}}function x(F,J){while(F&&F!==J){let X=F.previousSibling,z=d.get(F);if(z&&F instanceof Element){if(z!==!0){if(typeof z==="function")z(F);else fF(F,z);d.set(F,!0)}}else F.remove();F=X}}function P(F){if(!F||F instanceof Node)return F;return F.getLastNode()||F.getPrecedingNode()}class ZF extends M{renderer;result=Q({value:void 0});constructor(F,J){super(F);this.renderer=J;this.redraw()}redraw(){let F=Z;Z=this;try{this.result.value=this.renderer()}catch(J){s(J,!0)}Z=F}}class $F extends M{key;target;constructor(F,J,X){super(F);this.key=J;this.target=X;this.redraw()}redraw(){let F=Z;Z=this,BF(this.key,this.target.value),Z=F}}var h=new Y("prio");class HF extends k{onChange(F,J,X){h.add(this)}}var i=!1;function I(){for(let F=0;!h.isEmpty()&&!i;F++){if(F>42)throw h.clear(),new Error("Too many immediate-mode recursive updates");i=!0;let J=h;h=new Y("prio");try{for(let X of J)X.queueRun()}finally{i=!1}}}class jF extends p{renderer;makeSortKey;parentElement=Z.parentElement;prevSibling;target;byIndex=new Map;sortedSet=new Y("sortKey");changedIndexes=new Set;constructor(F,J,X){super();this.renderer=J;this.makeSortKey=X;let z=this.target=F[$]||F;if(j(z,G,this),this.prevSibling=Z.getChildPrevSibling(),Z.lastChild=this,Z.cleaners.push(this),z instanceof Array){for(let U=0;U<z.length;U++)if(z[U]!==void 0)new w(this,U,!1)}else for(let[U,W]of NF(z))if(W!==void 0)new w(this,U,!1)}getPrecedingNode(){return P(this.prevSibling)}onChange(F,J,X){if(!(this.target instanceof Array)||typeof F==="number")this.changedIndexes.add(F);f(this)}queueRun(){let F=this.changedIndexes;this.changedIndexes=new Set;for(let J of F){let X=this.byIndex.get(J);if(X)X.remove();let z;if(this.target instanceof Map)z=this.target.has(J);else z=this.target[J]!==void 0;if(!z)this.byIndex.delete(J);else new w(this,J,!0)}V=void 0}delete(){for(let F of this.byIndex.values())F.delete();B?.remove(this),this.byIndex.clear(),setTimeout(()=>{this.sortedSet.clear()},1)}getLastNode(){for(let F of this.sortedSet){let J=F.getActualLastNode();if(J)return J}}}class w extends T{parent;itemIndex;sortKey;parentElement;constructor(F,J,X){super();this.parent=F;this.itemIndex=J;if(this.parentElement=F.parentElement,this.inSvgNamespace=Z.inSvgNamespace,this.parent.byIndex.set(this.itemIndex,this),this.lastChild=this,X)V=this;this.redraw()}getPrecedingNode(){this.parent.sortedSet.add(this);let F=this.parent.sortedSet.prev(this);if(F)return P(F.lastChild);return this.parent.getPrecedingNode()}getLastNode(){return this.getPrecedingNode()}getActualLastNode(){let F=this.lastChild;while(F&&F!==this){if(F instanceof Node)return F;let J=F.getLastNode();if(J)return J;F=F.getPrecedingNode()}}queueRun(){if(Z!==O)UF(4);if(this.sortKey!==void 0){let F=this.getActualLastNode();if(F)x(F,this.getPrecedingNode())}this.delete(),this.lastChild=this,V=this,this.redraw(),V=void 0}redraw(){let F,J=this.parent.target,X=this.itemIndex;if(J instanceof Map)F=Q(J.get(X)),X=Q(X);else F=Q(J[X]);let z=Z;Z=this;let U;try{if(this.parent.makeSortKey){let W=this.parent.makeSortKey(F,X);if(W!=null)U=W instanceof Array?W.map(n).join(""):W}else U=X;if(typeof U==="number")U=n(U);if(this.sortKey!==U)this.parent.sortedSet.remove(this),this.sortKey=U;if(U!=null)this.parent.renderer(F,X)}catch(W){s(W,U!=null)}Z=z}getInsertAfterNode(){if(this.sortKey==null)UF(1);return P(this.lastChild)}remove(){if(this.sortKey!==void 0){let F=this.getActualLastNode();if(F)x(F,this.getPrecedingNode());this.parent.sortedSet.remove(this),this.sortKey=void 0}this.delete()}}function A(F){let J=Z.parentElement,X=Z.getInsertAfterNode();J.insertBefore(F,X?X.nextSibling:J.firstChild),Z.lastChild=F}var O=new WF,Z=O,G=Symbol("any"),$=Symbol("target"),R=Symbol("mapSize"),g=new WeakMap,b=0;function j(F,J,X=Z){if(X===O||b)return;let z=g.get(F);if(!z)g.set(F,z=new Map);if(J!==G&&z.get(G)?.has(X))return;let U=z.get(J);if(!U)z.set(J,U=new Set);if(U.has(X))return;if(U.add(X),X===Z)Z.cleaners.push(U);else Z.cleaners.push(()=>{U.delete(X)})}function S(F,J,X){if(!F||typeof F!=="object")throw new Error("onEach requires an object");F=F[$]||F,new jF(F,J,X)}function KF(F){for(let J in F)return!1;return!0}function bF(F){let J=F[$]||F,X=Z;if(J instanceof Array)return j(J,"length",(U,W,q)=>{if(!W!==!q)f(X)}),!J.length;if(J instanceof Map)return j(J,R,(U,W,q)=>{if(!W!==!q)f(X)}),!J.size;let z=KF(J);return j(J,G,(U,W,q)=>{if(z?q===void 0:W===void 0)f(X)}),z}function vF(F){if(F instanceof Array)return c(F,"length");if(F instanceof Map)return c(F,"size");let J=F[$]||F,X=0;for(let U in J)if(J[U]!==void 0)X++;let z=QF(X);return j(J,G,(U,W,q)=>{if(q===W);else if(q===void 0)z.value=++X;else if(W===void 0)z.value=--X}),z}function _F(F,J,X,z){if(X===z&&X!==void 0)return;let U=g.get(F);if(U===void 0)return;for(let W of[J,G]){let q=U.get(W);if(q)for(let H of q)if(typeof H==="function")H(J,X,z);else H.onChange(J,X,z)}}var K=_F,LF={get(F,J){if(J===$)return F;return j(F,J),Q(F[J])},set(F,J,X){if(typeof X==="object"&&X)X=X[$]||X;let z=F[J];if(X!==z)F[J]=X,K(F,J,X,z),I();return!0},deleteProperty(F,J){let X=F[J];return delete F[J],K(F,J,void 0,X),I(),!0},has(F,J){let X=J in F;return j(F,J),X},ownKeys(F){return j(F,G),Reflect.ownKeys(F)}};function o(F,J,X){if(typeof X==="object"&&X)X=X[$]||X;let z=F[J];if(X!==z){let U=F.length;if(J==="length"){F.length=X;for(let W=X;W<U;W++)K(F,W,void 0,F[W])}else{let W=Number.parseInt(J);if(W.toString()===J)J=W;F[J]=X,K(F,J,X,z)}if(F.length!==U)K(F,"length",F.length,U);I()}return!0}var MF={get(F,J){if(J===$)return F;let X=J;if(typeof J!=="symbol"){let z=Number.parseInt(J);if(z.toString()===J)X=z}return j(F,X),Q(F[J])},set:o,deleteProperty(F,J){return o(F,J,void 0)}};function a(F){return{[Symbol.iterator](){return this},next(){let J=F.next();if(J.done)return J;return{done:!1,value:Q(J.value)}}}}function r(F){return{[Symbol.iterator](){return this},next(){let J=F.next();if(J.done)return J;return{done:!1,value:[Q(J.value[0]),Q(J.value[1])]}}}}var t={get(F){let J=this[$];if(typeof F==="object"&&F)F=F[$]||F;return j(J,F),Q(J.get(F))},set(F,J){let X=this[$];if(typeof F==="object"&&F)F=F[$]||F;if(typeof J==="object"&&J)J=J[$]||J;let z=X.get(F);if(J!==z){let U=X.size;X.set(F,J),K(X,F,J,z),K(X,R,X.size,U),I()}return this},delete(F){let J=this[$];if(typeof F==="object"&&F)F=F[$]||F;let X=J.get(F),z=J.delete(F);if(z)K(J,F,void 0,X),K(J,R,J.size,J.size+1),I();return z},clear(){let F=this[$],J=F.size;for(let X of F.keys()){let z=F.get(X);K(F,X,void 0,z)}F.clear(),K(F,R,0,J),I()},has(F){let J=this[$];if(typeof F==="object"&&F)F=F[$]||F;return j(J,F),J.has(F)},keys(){let F=this[$];return j(F,G),a(F.keys())},values(){let F=this[$];return j(F,G),a(F.values())},entries(){let F=this[$];return j(F,G),r(F.entries())},[Symbol.iterator](){let F=this[$];return j(F,G),r(F[Symbol.iterator]())}},hF={get(F,J){if(J===$)return F;if(J in t)return t[J];if(J==="size")return j(F,R),F.size;return j(F,J),Q(F[J])}},e=new WeakMap;function Q(F){if(typeof F!=="object"||!F||F[$]!==void 0)return F;let J=e.get(F);if(J)return J;let X;if(F instanceof Array)X=MF;else if(F instanceof Map)X=hF;else X=LF;return J=new Proxy(F,X),e.set(F,J),J}function QF(F){return Q(typeof F==="object"&&F!==null?F:{value:F})}function GF(F){return F?F[$]||F:F}var d=new WeakMap;function fF(F,J){let X=J.split(".").filter((z)=>z);F.classList.add(...X),setTimeout(()=>F.remove(),2000)}function mF(F,J,X=0){m(F,J,X),I()}var D=1,RF=2,FF=32,v=64;function kF(F,J=0){let X;if(F instanceof Map)X=new Map;else X=Object.create(Object.getPrototypeOf(F));return m(X,F,J),X}function NF(F){return F instanceof Map?F.entries():Object.entries(F)}function JF(F){return F instanceof Map?F.keys():Object.keys(F)}function m(F,J,X){let z=F[$];if(z)F=z,X|=v;if(z=J[$],z){if(J=z,Z!==O&&!b)X|=FF}if(X&FF)j(J,G);if(J instanceof Array){if(!(F instanceof Array))throw new Error("Cannot copy array into object");let U=F.length,W=J.length;for(let q=0;q<W;q++)zF(F,q,J[q],X);if(W!==U)if(X&v){for(let q=W;q<U;q++){let H=F[q];F[q]=void 0,K(F,q,void 0,H)}F.length=W,K(F,"length",W,U)}else F.length=W}else{for(let[U,W]of NF(J))zF(F,U,W,X);if(!(X&D)){if(J instanceof Map){for(let U of JF(F))if(!J.has(U))XF(F,U,X)}else for(let U of JF(F))if(!(U in J))XF(F,U,X)}}}function XF(F,J,X){let z;if(F instanceof Map)z=F.get(J),F.delete(J);else z=F[J],delete F[J];if(X&v&&z!==void 0)K(F,J,void 0,z)}function zF(F,J,X,z){let U=F instanceof Map?F.get(J):F[J];if(X!==U){if(X&&U&&typeof X==="object"&&typeof U==="object"&&(X.constructor===U.constructor||z&D&&U instanceof Array)){m(U,X,z);return}if(!(z&RF)&&X&&typeof X==="object"){let W=Object.create(Object.getPrototypeOf(X));m(W,X,0),X=W}if(F instanceof Map)if(z&D&&X==null)F.delete(J);else F.set(J,X);else if(z&D&&X==null)delete F[J];else F[J]=X;if(z&v)K(F,J,X,U)}}var PF={get(F,J){if(J===$)return c(GF(F.proxy),F.index);if(J==="value")return F.proxy[F.index]},set(F,J,X){if(J==="value")return F.proxy[F.index]=X,!0;return!1}};function c(F,J){return new Proxy({proxy:F,index:J},PF)}function TF(F,J){let X,z,U=F.getAttribute("type"),W=GF(J).value;if(U==="checkbox"){if(W===void 0)J.value=F.checked;X=()=>{F.checked=J.value},z=()=>{J.value=F.checked}}else if(U==="radio"){if(W===void 0&&F.checked)J.value=F.value;X=()=>{F.checked=J.value===F.value},z=()=>{if(F.checked)J.value=F.value}}else{if(z=()=>{J.value=U==="number"||U==="range"?F.value===""?null:+F.value:F.value},W===void 0)z();X=()=>{if(F.value=J.value,F.tagName==="SELECT"&&F.value!=J.value)throw new Error(`SELECT has no '${J.value}' OPTION (yet)`)}}OF(X),F.addEventListener("input",z),C(()=>{F.removeEventListener("input",z)})}var l={create:(F)=>{let J=Z.parentElement;if(Z!==V)return;if(typeof F==="function")F(J);else{let X=F.split(".").filter((z)=>z);J.classList.add(...X),(async()=>{J.offsetHeight,J.classList.remove(...X)})()}},destroy:(F)=>{let J=Z.parentElement;d.set(J,F)},html:(F)=>{let J=document.createElement(Z.parentElement.tagName);J.innerHTML=`${F}`;while(J.firstChild)A(J.firstChild)},text:(F)=>{A(document.createTextNode(F))},element:(F)=>{console.log("Aberdeen: $({element: myElement}) is deprecated, use $(myElement) instead"),A(F),l.element=A}};function _(...F){let J,X,z;for(let U of F){if(U==null||U===!1)continue;if(typeof U==="string"){let W,q,H=U.indexOf(":");if(H>=0)W=U.substring(H+1),U=U.substring(0,H);let N=U.indexOf(".");if(N>=0)q=U.substring(N+1),U=U.substring(0,N);if(U===""){if(W)A(document.createTextNode(W));if(q){let y=Z.parentElement;if(y.classList.add(...q.split(".")),!J)C(()=>y.classList.remove(...q.split(".")))}}else if(U.indexOf(" ")>=0){X=`Tag '${U}' cannot contain space`;break}else{if(Z.inSvgNamespace||U==="svg")z=document.createElementNS("http://www.w3.org/2000/svg",U);else z=document.createElement(U);if(q)z.className=q.replaceAll("."," ");if(W)z.textContent=W;if(A(z),!J)J=Z;let E=new M(z,!0);if(U==="svg")E.inSvgNamespace=!0;if(E.lastChild=z.lastChild||void 0,V===Z)V=E;Z=E}}else if(typeof U==="object")if(U.constructor!==Object)if(U instanceof Node){if(A(U),U instanceof Element){if(!J)J=Z;Z=new M(U,!0),Z.lastChild=U.lastChild||void 0}}else{X=`Unexpected argument: ${U}`;break}else for(let W in U){let q=U[W];BF(W,q)}else if(typeof U==="function")new k(Z.parentElement,U);else{X=`Unexpected argument: ${U}`;break}}if(J)Z=J;if(X)throw new Error(X);return z}var VF=0;function SF(F,J=!1){let X=J?"":`.AbdStl${++VF}`,z=u(F,X);if(z)_(`style:${z}`);return X}function u(F,J){let X="",z="";for(let U in F){let W=F[U];for(let q of U.split(/, ?/g))if(W&&typeof W==="object")if(q.startsWith("@"))z+=`${q}{
|
|
2
2
|
${u(W,J)}}
|
|
3
3
|
`;else z+=u(W,q.includes("&")?q.replace(/&/g,J):`${J} ${q}`);else X+=`${q.replace(/[A-Z]/g,(H)=>`-${H.toLowerCase()}`)}:${W};`}if(X)z=`${J.trimStart()||"*"}{${X}}
|
|
4
|
-
${z}`;return z}function
|
|
4
|
+
${z}`;return z}function BF(F,J){let X=Z.parentElement;if(typeof J==="object"&&J!==null&&J[$])if(F==="bind")TF(X,J);else new $F(X,F,J);else if(F[0]==="."){let z=F.substring(1).split(".");if(J)X.classList.add(...z);else X.classList.remove(...z)}else if(F[0]==="$"){let z=F.substring(1);if(J==null||J===!1)X.style[z]="";else X.style[z]=`${J}`}else if(J==null);else if(F in l)l[F](J);else if(typeof J==="function")X.addEventListener(F,J),C(()=>X.removeEventListener(F,J));else if(J===!0||J===!1||F==="value"||F==="selectedIndex")X[F]=J;else X.setAttribute(F,J)}function AF(F){return console.error("Error while in Aberdeen render:",F),!0}var IF=AF;function yF(F){IF=F||AF}function iF(){return Z.parentElement}function C(F){Z.cleaners.push(F)}function OF(F){return new ZF(Z.parentElement,F).result}function gF(F){new HF(Z.parentElement,F)}function dF(F,J){new qF(F,J)}function cF(){O.remove(),VF=0}function lF(F){b++;try{return F()}finally{b--}}function uF(F,J){let X;if(F instanceof Array)X=Q([]);else if(F instanceof Map)X=Q(new Map);else X=Q({});return S(F,(z,U)=>{let W=J(z,U);if(W!==void 0)if(X instanceof Map)X.set(U,W),C(()=>{X.delete(U)});else X[U]=W,C(()=>{delete X[U]})}),X}function pF(F,J){let X=Q({});return S(F,(z,U)=>{let W=J(z,U);if(W){for(let q in W)X[q]=W[q];C(()=>{for(let q in W)delete X[q]})}}),X}function sF(F,J){let X={},z=QF(X);return S(F,(U,W)=>{let q=J(U,W);if(q!=null){let H=q instanceof Array?q:[q];if(H.length){for(let N of H)if(X[N])z[N][W]=U;else z[N]={[W]:U};C(()=>{for(let N of H)if(delete z[N][W],KF(X[N]))delete z[N]})}}}),z}function EF(F){if(F&&typeof F==="object"){let J;if(F instanceof Array)J="<array>";else if(F instanceof Map)J="<Map>";else J="<object>";_({text:J}),_("ul",()=>{S(F,(X,z)=>{_(`li:${JSON.stringify(z)}: `,()=>{EF(X)})})})}else _({text:JSON.stringify(F)});return F}function UF(F){throw new Error(`Aberdeen internal error ${F}`)}function s(F,J){try{if(IF(F)===!1)J=!1}catch(X){console.error(X)}try{if(J)_("div.aberdeen-error:Error")}catch{}}function nF(F,J){let X=K;K=F;try{J()}finally{K=X}}export{nF as withEmitHandler,GF as unproxy,cF as unmountAll,yF as setErrorHandler,CF as runQueue,c as ref,QF as proxy,lF as peek,sF as partition,S as onEach,OF as observe,pF as multiMap,dF as mount,uF as map,bF as isEmpty,xF as invertString,SF as insertCss,gF as immediateObserve,iF as getParentElement,EF as dump,_F as defaultEmitHandler,vF as count,mF as copy,kF as clone,C as clean,RF as SHALLOW,D as MERGE,_ as $};
|
|
5
5
|
|
|
6
|
-
//# debugId=
|
|
6
|
+
//# debugId=354190D828DAA24964756E2164756E21
|
|
7
7
|
//# sourceMappingURL=aberdeen.js.map
|