aberdeen 1.0.8 → 1.0.11

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.
@@ -1,7 +1,7 @@
1
- class N{keyProp;tail;symbols;constructor(z){this.keyProp=z;this.tail={},this.symbols=[Symbol(0)]}add(z){if(this.symbols[0]in z)return!1;let F=1+(Math.clz32(Math.random()*4294967295)>>2);for(let W=this.symbols.length;W<F;W++)this.symbols.push(Symbol(W));let J=this.keyProp,X=z[J],Z,U=this.tail;for(let W=this.symbols.length-1;W>=0;W--){let j=this.symbols[W];while((Z=U[j])&&Z[J]>X)U=Z;if(W<F)z[j]=U[j],U[j]=z}return!0}has(z){return this.symbols[0]in z}fetchLast(){let z=this.tail[this.symbols[0]];if(z)return this.remove(z),z}isEmpty(){return this.tail[this.symbols[0]]===void 0}get(z){let F=this.keyProp,J,X=this.tail;for(let Z=this.symbols.length-1;Z>=0;Z--){let U=this.symbols[Z];while((J=X[U])&&J[F]>z)X=J}return X[this.symbols[0]]?.[F]===z?X[this.symbols[0]]:void 0}*[Symbol.iterator](){let z=this.symbols[0],F=this.tail[z];while(F)yield F,F=F[z]}prev(z){return z[this.symbols[0]]}remove(z){if(!(this.symbols[0]in z))return!1;let F=this.keyProp,J=z[F],X,Z=this.tail;for(let U=this.symbols.length-1;U>=0;U--){let W=this.symbols[U];while((X=Z[W])&&X[F]>=J&&X!==z)Z=X;if(X===z)Z[W]=X[W],delete X[W]}return X===z}clear(){let z=this.symbols[0],F=this.tail;while(F){let J=F[z];for(let X of this.symbols){if(!(X in F))break;delete F[X]}F=J}this.tail={}}}var B,Y=0,G;function E(z){if(!B)B=new N("prio"),setTimeout(Gz,0);else if(!(Y&1)){if(Y++,Y>98)throw new Error("Too many recursive updates from observes")}B.add(z)}function Gz(){let z=Date.now();while(B){let F=B.fetchLast();if(!F)break;if(Y&1)Y++;F.queueRun()}if(B=void 0,Y=0,z=Date.now()-z,z>9)console.debug(`Aberdeen queue took ${z}ms`)}function l(z){if(typeof z==="string")return`${z}\x01`;let F="",J=Math.abs(Math.round(z)),X=z<0;while(J>0)F+=String.fromCharCode(X?65534-J%65533:2+J%65533),J=Math.floor(J/65533);return String.fromCharCode(128+(X?-F.length:F.length))+F}function Pz(z){let F="";for(let J=0;J<z.length;J++)F+=String.fromCodePoint(65535-z.charCodeAt(J));return F}var Vz=0;class c{prio=--Vz;remove(){let z=this.getLastNode();if(z)w(z,this.getPrecedingNode());this.delete()}}class C extends c{cleaners;inSvgNamespace=!1;constructor(z=[]){super();this.cleaners=z}lastChild;redraw(){}getLastNode(){return T(this.lastChild)}delete(){for(let z of this.cleaners)if(typeof z==="function")z();else z.delete(this);this.cleaners.length=0,B?.remove(this),this.lastChild=void 0}queueRun(){this.remove(),G=this,this.redraw(),G=void 0}getInsertAfterNode(){return this.getLastNode()||this.getPrecedingNode()}onChange(z,F,J){E(this)}getChildPrevSibling(){return this.lastChild}}class P extends C{parentElement;prevSibling;constructor(z,F=!1){super(F?q.cleaners:[]);this.parentElement=z;if(this.inSvgNamespace=q.inSvgNamespace,z===q.parentElement)this.prevSibling=q.getChildPrevSibling(),q.lastChild=this;if(!F)q.cleaners.push(this)}getPrecedingNode(){return T(this.prevSibling)}getChildPrevSibling(){return this.lastChild||this.prevSibling}}class x extends P{renderer;constructor(z,F){super(z);this.renderer=F;this.redraw()}redraw(){let z=q;q=this;try{this.renderer()}catch(F){u(F,!0)}q=z}}class t extends C{parentElement=document.body;getPrecedingNode(){return}}class e extends C{parentElement;renderer;constructor(z,F){super();this.parentElement=z;this.renderer=F;this.inSvgNamespace=q.inSvgNamespace,this.redraw(),q.cleaners.push(this)}redraw(){x.prototype.redraw.call(this)}getPrecedingNode(){return}delete(){w(this.getLastNode(),this.getPrecedingNode()),super.delete()}remove(){this.delete()}}function w(z,F){while(z&&z!==F){let J=z.previousSibling,X=g.get(z);if(X&&z instanceof Element){if(X!==!0){if(typeof X==="function")X(z);else Nz(z,X);g.set(z,!0)}}else z.remove();z=J}}function T(z){if(!z||z instanceof Node)return z;return z.getLastNode()||z.getPrecedingNode()}class zz extends P{renderer;result=A({value:void 0});constructor(z,F){super(z);this.renderer=F;this.redraw()}redraw(){let z=q;q=this;try{this.result.value=this.renderer()}catch(F){u(F,!0)}q=z}}class Fz extends P{key;target;constructor(z,F,J){super(z);this.key=F;this.target=J;this.redraw()}redraw(){let z=q;q=this,Hz(this.key,this.target.value),q=z}}var M=new N("prio");class Jz extends x{onChange(z,F,J){M.add(this)}}var y=!1;function D(){for(let z=0;!M.isEmpty()&&!y;z++){if(z>42)throw M.clear(),new Error("Too many immediate-mode recursive updates");y=!0;let F=M;M=new N("prio");try{for(let J of F)J.queueRun()}finally{y=!1}}}class Xz extends c{renderer;makeSortKey;parentElement=q.parentElement;prevSibling;target;byIndex=new Map;sortedSet=new N("sortKey");changedIndexes=new Set;constructor(z,F,J){super();this.renderer=F;this.makeSortKey=J;let X=this.target=z[H]||z;if(V(X,Q,this),this.prevSibling=q.getChildPrevSibling(),q.lastChild=this,q.cleaners.push(this),X instanceof Array){for(let Z=0;Z<X.length;Z++)if(X[Z]!==void 0)new O(this,Z,!1)}else for(let Z in X)if(X[Z]!==void 0)new O(this,Z,!1)}getPrecedingNode(){return T(this.prevSibling)}onChange(z,F,J){if(!(this.target instanceof Array)||typeof z==="number")this.changedIndexes.add(z);E(this)}queueRun(){let z=this.changedIndexes;this.changedIndexes=new Set;for(let F of z){let J=this.byIndex.get(F);if(J)J.remove();if(this.target[F]===void 0)this.byIndex.delete(F);else new O(this,F,!0)}G=void 0}delete(){for(let z of this.byIndex.values())z.delete();B?.remove(this),this.byIndex.clear(),setTimeout(()=>{this.sortedSet.clear()},1)}getLastNode(){for(let z of this.sortedSet){let F=z.getActualLastNode();if(F)return F}}}class O extends C{parent;itemIndex;sortKey;parentElement;constructor(z,F,J){super();this.parent=z;this.itemIndex=F;if(this.parentElement=z.parentElement,this.inSvgNamespace=q.inSvgNamespace,this.parent.byIndex.set(this.itemIndex,this),this.lastChild=this,J)G=this;this.redraw()}getPrecedingNode(){this.parent.sortedSet.add(this);let z=this.parent.sortedSet.prev(this);if(z)return T(z.lastChild);return this.parent.getPrecedingNode()}getLastNode(){return this.getPrecedingNode()}getActualLastNode(){let z=this.lastChild;while(z&&z!==this){if(z instanceof Node)return z;let F=z.getLastNode();if(F)return F;z=z.getPrecedingNode()}}queueRun(){if(q!==R)r(4);if(this.sortKey!==void 0){let z=this.getActualLastNode();if(z)w(z,this.getPrecedingNode())}this.delete(),this.lastChild=this,G=this,this.redraw(),G=void 0}redraw(){let z=A(this.parent.target[this.itemIndex]),F=q;q=this;let J;try{if(this.parent.makeSortKey){let X=this.parent.makeSortKey(z,this.itemIndex);if(X!=null)J=X instanceof Array?X.map(l).join(""):X}else J=this.itemIndex;if(typeof J==="number")J=l(J);if(this.sortKey!==J)this.parent.sortedSet.remove(this),this.sortKey=J;if(J!=null)this.parent.renderer(z,this.itemIndex)}catch(X){u(X,J!=null)}q=F}getInsertAfterNode(){if(this.sortKey==null)r(1);return T(this.lastChild)}remove(){if(this.sortKey!==void 0){let z=this.getActualLastNode();if(z)w(z,this.getPrecedingNode());this.parent.sortedSet.remove(this),this.sortKey=void 0}this.delete()}}function L(z){let F=q.parentElement,J=q.getInsertAfterNode();F.insertBefore(z,J?J.nextSibling:F.firstChild),q.lastChild=z}var R=new t,q=R,Q=Symbol("any"),H=Symbol("target"),S=new WeakMap,k=0;function V(z,F,J=q){if(J===R||k)return;let X=S.get(z);if(!X)S.set(z,X=new Map);if(F!==Q&&X.get(Q)?.has(J))return;let Z=X.get(F);if(!Z)X.set(F,Z=new Set);if(Z.has(J))return;if(Z.add(J),J===q)q.cleaners.push(Z);else q.cleaners.push(()=>{Z.delete(J)})}function m(z,F,J){if(!z||typeof z!=="object")throw new Error("onEach requires an object");z=z[H]||z,new Xz(z,F,J)}function Zz(z){for(let F in z)return!1;return!0}function Rz(z){let F=z[H]||z,J=q;if(F instanceof Array)return V(F,"length",(Z,U,W)=>{if(!U!==!W)E(J)}),!F.length;let X=Zz(F);return V(F,Q,(Z,U,W)=>{if(X?W===void 0:U===void 0)E(J)}),X}function hz(z){if(z instanceof Array)return qz(z,"length");let F=z[H]||z,J=0;for(let Z in F)if(F[Z]!==void 0)J++;let X=Uz(J);return V(F,Q,(Z,U,W)=>{if(W===U);else if(W===void 0)X.value=++J;else if(U===void 0)X.value=--J}),X}function Bz(z,F,J,X){if(J===X&&J!==void 0)return;let Z=S.get(z);if(Z===void 0)return;for(let U of[F,Q]){let W=Z.get(U);if(W)for(let j of W)if(typeof j==="function")j(F,J,X);else j.onChange(F,J,X)}}var $=Bz,Qz={get(z,F){if(F===H)return z;return V(z,F),A(z[F])},set(z,F,J){if(typeof J==="object"&&J)J=J[H]||J;let X=z[F];if(J!==X)z[F]=J,$(z,F,J,X),D();return!0},deleteProperty(z,F){let J=z[F];return delete z[F],$(z,F,void 0,J),D(),!0},has(z,F){let J=F in z;return V(z,F),J},ownKeys(z){return V(z,Q),Reflect.ownKeys(z)}};function s(z,F,J){if(typeof J==="object"&&J)J=J[H]||J;let X=z[F];if(J!==X){let Z=z.length;if(F==="length"){z.length=J;for(let U=J;U<Z;U++)$(z,U,void 0,z[U])}else{let U=Number.parseInt(F);if(U.toString()===F)F=U;z[F]=J,$(z,F,J,X)}if(z.length!==Z)$(z,"length",z.length,Z);D()}return!0}var Az={get(z,F){if(F===H)return z;let J=F;if(typeof F!=="symbol"){let X=Number.parseInt(F);if(X.toString()===F)J=X}return V(z,J),A(z[F])},set:s,deleteProperty(z,F){return s(z,F,void 0)}},p=new WeakMap;function A(z){if(typeof z!=="object"||!z||z[H]!==void 0)return z;let F=p.get(z);if(F)return F;return F=new Proxy(z,z instanceof Array?Az:Qz),p.set(z,F),F}function Uz(z){return A(typeof z==="object"&&z!==null?z:{value:z})}function Wz(z){return z?z[H]||z:z}var g=new WeakMap;function Nz(z,F){let J=F.split(".").filter((X)=>X);z.classList.add(...J),setTimeout(()=>z.remove(),2000)}function Oz(z,F,J=0){b(z,F,J),D()}var i=1,_z=2,n=32,f=64;function fz(z,F=0){let J=Object.create(Object.getPrototypeOf(z));return b(J,z,F),J}function b(z,F,J){let X=z[H];if(X)z=X,J|=f;if(X=F[H],X){if(F=X,q!==R&&!k)J|=n}if(J&n)V(F,Q);if(F instanceof Array){if(!(z instanceof Array))throw new Error("Cannot copy array into object");let Z=z.length,U=F.length;for(let W=0;W<U;W++)o(z,F,W,J);if(U!==Z)if(J&f){for(let W=U;W<Z;W++){let j=z[W];z[W]=void 0,$(z,W,void 0,j)}z.length=U,$(z,"length",U,Z)}else z.length=U}else{for(let Z in F)o(z,F,Z,J);if(!(J&i)){for(let Z in z)if(!(Z in F)){let U=z[Z];if(delete z[Z],J&f&&U!==void 0)$(z,Z,void 0,U)}}}}function o(z,F,J,X){let Z=z[J],U=F[J];if(U!==Z){if(U&&Z&&typeof U==="object"&&typeof Z==="object"&&(U.constructor===Z.constructor||X&i&&Z instanceof Array)){b(Z,U,X);return}if(!(X&_z)&&U&&typeof U==="object"){let j=Object.create(Object.getPrototypeOf(U));b(j,U,0),U=j}let W=z[J];if(X&i&&U==null)delete z[J];else z[J]=U;if(X&f)$(z,J,U,W)}}var Yz={get(z,F){if(F===H)return qz(Wz(z.proxy),z.index);if(F==="value")return z.proxy[z.index]},set(z,F,J){if(F==="value")return z.proxy[z.index]=J,!0;return!1}};function qz(z,F){return new Proxy({proxy:z,index:F},Yz)}function Iz(z,F){let J,X,Z=z.getAttribute("type"),U=Wz(F).value;if(Z==="checkbox"){if(U===void 0)F.value=z.checked;J=()=>{z.checked=F.value},X=()=>{F.value=z.checked}}else if(Z==="radio"){if(U===void 0&&z.checked)F.value=z.value;J=()=>{z.checked=F.value===z.value},X=()=>{if(z.checked)F.value=z.value}}else{if(X=()=>{F.value=Z==="number"||Z==="range"?z.value===""?null:+z.value:z.value},U===void 0)X();J=()=>{if(z.value=F.value,z.tagName==="SELECT"&&z.value!=F.value)throw new Error(`SELECT has no '${F.value}' OPTION (yet)`)}}Mz(J),z.addEventListener("input",X),I(()=>{z.removeEventListener("input",X)})}var a={create:(z)=>{let F=q.parentElement;if(q!==G)return;if(typeof z==="function")z(F);else{let J=z.split(".").filter((X)=>X);F.classList.add(...J),(async()=>{F.offsetHeight,F.classList.remove(...J)})()}},destroy:(z)=>{let F=q.parentElement;g.set(F,z)},html:(z)=>{let F=document.createElement(q.parentElement.tagName);F.innerHTML=`${z}`;while(F.firstChild)L(F.firstChild)},text:(z)=>{L(document.createTextNode(z))},element:(z)=>{if(!(z instanceof Node))throw new Error(`Unexpected element-argument: ${JSON.parse(z)}`);L(z)}};function _(...z){let F,J,X;for(let Z of z){if(Z==null||Z===!1)continue;if(typeof Z==="string"){let U,W,j=Z.indexOf(":");if(j>=0)U=Z.substring(j+1),Z=Z.substring(0,j);let K=Z.indexOf(".");if(K>=0)W=Z.substring(K+1),Z=Z.substring(0,K);if(Z===""){if(U)L(document.createTextNode(U));if(W){let v=q.parentElement;if(v.classList.add(...W.split(".")),!F)I(()=>v.classList.remove(...W.split(".")))}}else if(Z.indexOf(" ")>=0){J=`Tag '${Z}' cannot contain space`;break}else{if(q.inSvgNamespace||Z==="svg")X=document.createElementNS("http://www.w3.org/2000/svg",Z);else X=document.createElement(Z);if(W)X.className=W.replaceAll("."," ");if(U)X.textContent=U;if(L(X),!F)F=q;let h=new P(X,!0);if(Z==="svg")h.inSvgNamespace=!0;if(h.lastChild=X.lastChild||void 0,G===q)G=h;q=h}}else if(typeof Z==="object"){if(Z.constructor!==Object){J=`Unexpected argument: ${Z}`;break}for(let U in Z){let W=Z[U];Hz(U,W)}}else if(typeof Z==="function")new x(q.parentElement,Z);else{J=`Unexpected argument: ${Z}`;break}}if(F)q=F;if(J)throw new Error(J);return X}var jz=0;function Ez(z,F=!1){let J=F?"":`.AbdStl${++jz}`,X=d(z,J);if(X)_(`style:${X}`);return J}function d(z,F){let J="",X="";for(let Z in z){let U=z[Z];for(let W of Z.split(/, ?/g))if(U&&typeof U==="object")if(W.startsWith("@"))X+=`${W}{
2
- ${d(U,F)}}
3
- `;else X+=d(U,W.includes("&")?W.replace(/&/g,F):`${F} ${W}`);else J+=`${W.replace(/[A-Z]/g,(j)=>`-${j.toLowerCase()}`)}:${U};`}if(J)X=`${F.trimStart()||"*"}{${J}}
4
- ${X}`;return X}function Hz(z,F){let J=q.parentElement;if(typeof F==="object"&&F!==null&&F[H])if(z==="bind")Iz(J,F);else new Fz(J,z,F);else if(z[0]==="."){let X=z.substring(1).split(".");if(F)J.classList.add(...X);else J.classList.remove(...X)}else if(z[0]==="$"){let X=z.substring(1);if(F==null||F===!1)J.style[X]="";else J.style[X]=`${F}`}else if(F==null);else if(z in a)a[z](F);else if(typeof F==="function")J.addEventListener(z,F),I(()=>J.removeEventListener(z,F));else if(F===!0||F===!1||z==="value"||z==="selectedIndex")J[z]=F;else J.setAttribute(z,F)}function $z(z){return console.error("Error while in Aberdeen render:",z),!0}var Kz=$z;function wz(z){Kz=z||$z}function Dz(){return q.parentElement}function I(z){q.cleaners.push(z)}function Mz(z){return new zz(q.parentElement,z).result}function kz(z){new Jz(q.parentElement,z)}function bz(z,F){new e(z,F)}function xz(){R.remove(),jz=0}function mz(z){k++;try{return z()}finally{k--}}function vz(z,F){let J=A(z instanceof Array?[]:{});return m(z,(X,Z)=>{let U=F(X,Z);if(U!==void 0)J[Z]=U,I(()=>{delete J[Z]})}),J}function yz(z,F){let J=A({});return m(z,(X,Z)=>{let U=F(X,Z);if(U){for(let W in U)J[W]=U[W];I(()=>{for(let W in U)delete J[W]})}}),J}function Sz(z,F){let J={},X=Uz(J);return m(z,(Z,U)=>{let W=F(Z,U);if(W!=null){let j=W instanceof Array?W:[W];if(j.length){for(let K of j)if(J[K])X[K][U]=Z;else X[K]={[U]:Z};I(()=>{for(let K of j)if(delete X[K][U],Zz(J[K]))delete X[K]})}}}),X}function Lz(z){if(z&&typeof z==="object")_({text:z instanceof Array?"<array>":"<object>"}),_("ul",()=>{m(z,(F,J)=>{_(`li:${JSON.stringify(J)}: `,()=>{Lz(F)})})});else _({text:JSON.stringify(z)});return z}function r(z){throw new Error(`Aberdeen internal error ${z}`)}function u(z,F){try{if(Kz(z)===!1)F=!1}catch(J){console.error(J)}try{if(F)_("div.aberdeen-error:Error")}catch{}}function gz(z,F){let J=$;$=z;try{F()}finally{$=J}}export{gz as withEmitHandler,Wz as unproxy,xz as unmountAll,wz as setErrorHandler,Gz as runQueue,qz as ref,Uz as proxy,mz as peek,Sz as partition,m as onEach,Mz as observe,yz as multiMap,bz as mount,vz as map,Rz as isEmpty,Pz as invertString,Ez as insertCss,kz as immediateObserve,Dz as getParentElement,Lz as dump,Bz as defaultEmitHandler,hz as count,Oz as copy,fz as clone,I as clean,_z as SHALLOW,i as MERGE,_ as $};
1
+ class Y{keyProp;tail;symbols;constructor(z){this.keyProp=z;this.tail={},this.symbols=[Symbol(0)]}add(z){if(this.symbols[0]in z)return!1;let F=1+(Math.clz32(Math.random()*4294967295)>>2);for(let W=this.symbols.length;W<F;W++)this.symbols.push(Symbol(W));let J=this.keyProp,X=z[J],Z,U=this.tail;for(let W=this.symbols.length-1;W>=0;W--){let j=this.symbols[W];while((Z=U[j])&&Z[J]>X)U=Z;if(W<F)z[j]=U[j],U[j]=z}return!0}has(z){return this.symbols[0]in z}fetchLast(){let z=this.tail[this.symbols[0]];if(z)return this.remove(z),z}isEmpty(){return this.tail[this.symbols[0]]===void 0}get(z){let F=this.keyProp,J,X=this.tail;for(let Z=this.symbols.length-1;Z>=0;Z--){let U=this.symbols[Z];while((J=X[U])&&J[F]>z)X=J}return X[this.symbols[0]]?.[F]===z?X[this.symbols[0]]:void 0}*[Symbol.iterator](){let z=this.symbols[0],F=this.tail[z];while(F)yield F,F=F[z]}prev(z){return z[this.symbols[0]]}remove(z){if(!(this.symbols[0]in z))return!1;let F=this.keyProp,J=z[F],X,Z=this.tail;for(let U=this.symbols.length-1;U>=0;U--){let W=this.symbols[U];while((X=Z[W])&&X[F]>=J&&X!==z)Z=X;if(X===z)Z[W]=X[W],delete X[W]}return X===z}clear(){let z=this.symbols[0],F=this.tail;while(F){let J=F[z];for(let X of this.symbols){if(!(X in F))break;delete F[X]}F=J}this.tail={}}}var B,I=0,G;function E(z){if(!B)B=new Y("prio"),setTimeout(Gz,0);else if(!(I&1)){if(I++,I>98)throw new Error("Too many recursive updates from observes")}B.add(z)}function Gz(){let z=Date.now();while(B){let F=B.fetchLast();if(!F)break;if(I&1)I++;F.queueRun()}if(B=void 0,I=0,z=Date.now()-z,z>9)console.debug(`Aberdeen queue took ${z}ms`)}function s(z){if(typeof z==="string")return`${z}\x01`;let F="",J=Math.abs(Math.round(z)),X=z<0;while(J>0)F=String.fromCharCode(X?65534-J%65533:2+J%65533)+F,J=Math.floor(J/65533);return String.fromCharCode(128+(X?-F.length:F.length))+F}function Cz(z){let F="";for(let J=0;J<z.length;J++)F+=String.fromCodePoint(65535-z.charCodeAt(J));return F}var Vz=0;class u{prio=--Vz;remove(){let z=this.getLastNode();if(z)w(z,this.getPrecedingNode());this.delete()}}class C extends u{cleaners;inSvgNamespace=!1;constructor(z=[]){super();this.cleaners=z}lastChild;redraw(){}getLastNode(){return R(this.lastChild)}delete(){for(let z of this.cleaners)if(typeof z==="function")z();else z.delete(this);this.cleaners.length=0,B?.remove(this),this.lastChild=void 0}queueRun(){this.remove(),G=this,this.redraw(),G=void 0}getInsertAfterNode(){return this.getLastNode()||this.getPrecedingNode()}onChange(z,F,J){E(this)}getChildPrevSibling(){return this.lastChild}}class M extends C{parentElement;prevSibling;constructor(z,F=!1){super(F?q.cleaners:[]);this.parentElement=z;if(this.inSvgNamespace=q.inSvgNamespace,z===q.parentElement)this.prevSibling=q.getChildPrevSibling(),q.lastChild=this;if(!F)q.cleaners.push(this)}getPrecedingNode(){return R(this.prevSibling)}getChildPrevSibling(){return this.lastChild||this.prevSibling}}class x extends M{renderer;constructor(z,F){super(z);this.renderer=F;this.redraw()}redraw(){let z=q;q=this;try{this.renderer()}catch(F){l(F,!0)}q=z}}class t extends C{parentElement=document.body;getPrecedingNode(){return}}class e extends C{parentElement;renderer;constructor(z,F){super();this.parentElement=z;this.renderer=F;this.inSvgNamespace=q.inSvgNamespace,this.redraw(),q.cleaners.push(this)}redraw(){x.prototype.redraw.call(this)}getPrecedingNode(){return}delete(){w(this.getLastNode(),this.getPrecedingNode()),super.delete()}remove(){this.delete()}}function w(z,F){while(z&&z!==F){let J=z.previousSibling,X=g.get(z);if(X&&z instanceof Element){if(X!==!0){if(typeof X==="function")X(z);else Nz(z,X);g.set(z,!0)}}else z.remove();z=J}}function R(z){if(!z||z instanceof Node)return z;return z.getLastNode()||z.getPrecedingNode()}class zz extends M{renderer;result=N({value:void 0});constructor(z,F){super(z);this.renderer=F;this.redraw()}redraw(){let z=q;q=this;try{this.result.value=this.renderer()}catch(F){l(F,!0)}q=z}}class Fz extends M{key;target;constructor(z,F,J){super(z);this.key=F;this.target=J;this.redraw()}redraw(){let z=q;q=this,Hz(this.key,this.target.value),q=z}}var T=new Y("prio");class Jz extends x{onChange(z,F,J){T.add(this)}}var y=!1;function D(){for(let z=0;!T.isEmpty()&&!y;z++){if(z>42)throw T.clear(),new Error("Too many immediate-mode recursive updates");y=!0;let F=T;T=new Y("prio");try{for(let J of F)J.queueRun()}finally{y=!1}}}class Xz extends u{renderer;makeSortKey;parentElement=q.parentElement;prevSibling;target;byIndex=new Map;sortedSet=new Y("sortKey");changedIndexes=new Set;constructor(z,F,J){super();this.renderer=F;this.makeSortKey=J;let X=this.target=z[H]||z;if(V(X,Q,this),this.prevSibling=q.getChildPrevSibling(),q.lastChild=this,q.cleaners.push(this),X instanceof Array){for(let Z=0;Z<X.length;Z++)if(X[Z]!==void 0)new O(this,Z,!1)}else for(let Z in X)if(X[Z]!==void 0)new O(this,Z,!1)}getPrecedingNode(){return R(this.prevSibling)}onChange(z,F,J){if(!(this.target instanceof Array)||typeof z==="number")this.changedIndexes.add(z);E(this)}queueRun(){let z=this.changedIndexes;this.changedIndexes=new Set;for(let F of z){let J=this.byIndex.get(F);if(J)J.remove();if(this.target[F]===void 0)this.byIndex.delete(F);else new O(this,F,!0)}G=void 0}delete(){for(let z of this.byIndex.values())z.delete();B?.remove(this),this.byIndex.clear(),setTimeout(()=>{this.sortedSet.clear()},1)}getLastNode(){for(let z of this.sortedSet){let F=z.getActualLastNode();if(F)return F}}}class O extends C{parent;itemIndex;sortKey;parentElement;constructor(z,F,J){super();this.parent=z;this.itemIndex=F;if(this.parentElement=z.parentElement,this.inSvgNamespace=q.inSvgNamespace,this.parent.byIndex.set(this.itemIndex,this),this.lastChild=this,J)G=this;this.redraw()}getPrecedingNode(){this.parent.sortedSet.add(this);let z=this.parent.sortedSet.prev(this);if(z)return R(z.lastChild);return this.parent.getPrecedingNode()}getLastNode(){return this.getPrecedingNode()}getActualLastNode(){let z=this.lastChild;while(z&&z!==this){if(z instanceof Node)return z;let F=z.getLastNode();if(F)return F;z=z.getPrecedingNode()}}queueRun(){if(q!==P)r(4);if(this.sortKey!==void 0){let z=this.getActualLastNode();if(z)w(z,this.getPrecedingNode())}this.delete(),this.lastChild=this,G=this,this.redraw(),G=void 0}redraw(){let z=N(this.parent.target[this.itemIndex]),F=q;q=this;let J;try{if(this.parent.makeSortKey){let X=this.parent.makeSortKey(z,this.itemIndex);if(X!=null)J=X instanceof Array?X.map(s).join(""):X}else J=this.itemIndex;if(typeof J==="number")J=s(J);if(this.sortKey!==J)this.parent.sortedSet.remove(this),this.sortKey=J;if(J!=null)this.parent.renderer(z,this.itemIndex)}catch(X){l(X,J!=null)}q=F}getInsertAfterNode(){if(this.sortKey==null)r(1);return R(this.lastChild)}remove(){if(this.sortKey!==void 0){let z=this.getActualLastNode();if(z)w(z,this.getPrecedingNode());this.parent.sortedSet.remove(this),this.sortKey=void 0}this.delete()}}function A(z){let F=q.parentElement,J=q.getInsertAfterNode();F.insertBefore(z,J?J.nextSibling:F.firstChild),q.lastChild=z}var P=new t,q=P,Q=Symbol("any"),H=Symbol("target"),S=new WeakMap,k=0;function V(z,F,J=q){if(J===P||k)return;let X=S.get(z);if(!X)S.set(z,X=new Map);if(F!==Q&&X.get(Q)?.has(J))return;let Z=X.get(F);if(!Z)X.set(F,Z=new Set);if(Z.has(J))return;if(Z.add(J),J===q)q.cleaners.push(Z);else q.cleaners.push(()=>{Z.delete(J)})}function m(z,F,J){if(!z||typeof z!=="object")throw new Error("onEach requires an object");z=z[H]||z,new Xz(z,F,J)}function Zz(z){for(let F in z)return!1;return!0}function Pz(z){let F=z[H]||z,J=q;if(F instanceof Array)return V(F,"length",(Z,U,W)=>{if(!U!==!W)E(J)}),!F.length;let X=Zz(F);return V(F,Q,(Z,U,W)=>{if(X?W===void 0:U===void 0)E(J)}),X}function hz(z){if(z instanceof Array)return qz(z,"length");let F=z[H]||z,J=0;for(let Z in F)if(F[Z]!==void 0)J++;let X=Uz(J);return V(F,Q,(Z,U,W)=>{if(W===U);else if(W===void 0)X.value=++J;else if(U===void 0)X.value=--J}),X}function Bz(z,F,J,X){if(J===X&&J!==void 0)return;let Z=S.get(z);if(Z===void 0)return;for(let U of[F,Q]){let W=Z.get(U);if(W)for(let j of W)if(typeof j==="function")j(F,J,X);else j.onChange(F,J,X)}}var $=Bz,Qz={get(z,F){if(F===H)return z;return V(z,F),N(z[F])},set(z,F,J){if(typeof J==="object"&&J)J=J[H]||J;let X=z[F];if(J!==X)z[F]=J,$(z,F,J,X),D();return!0},deleteProperty(z,F){let J=z[F];return delete z[F],$(z,F,void 0,J),D(),!0},has(z,F){let J=F in z;return V(z,F),J},ownKeys(z){return V(z,Q),Reflect.ownKeys(z)}};function p(z,F,J){if(typeof J==="object"&&J)J=J[H]||J;let X=z[F];if(J!==X){let Z=z.length;if(F==="length"){z.length=J;for(let U=J;U<Z;U++)$(z,U,void 0,z[U])}else{let U=Number.parseInt(F);if(U.toString()===F)F=U;z[F]=J,$(z,F,J,X)}if(z.length!==Z)$(z,"length",z.length,Z);D()}return!0}var Az={get(z,F){if(F===H)return z;let J=F;if(typeof F!=="symbol"){let X=Number.parseInt(F);if(X.toString()===F)J=X}return V(z,J),N(z[F])},set:p,deleteProperty(z,F){return p(z,F,void 0)}},n=new WeakMap;function N(z){if(typeof z!=="object"||!z||z[H]!==void 0)return z;let F=n.get(z);if(F)return F;return F=new Proxy(z,z instanceof Array?Az:Qz),n.set(z,F),F}function Uz(z){return N(typeof z==="object"&&z!==null?z:{value:z})}function Wz(z){return z?z[H]||z:z}var g=new WeakMap;function Nz(z,F){let J=F.split(".").filter((X)=>X);z.classList.add(...J),setTimeout(()=>z.remove(),2000)}function Oz(z,F,J=0){b(z,F,J),D()}var i=1,Yz=2,o=32,f=64;function fz(z,F=0){let J=Object.create(Object.getPrototypeOf(z));return b(J,z,F),J}function b(z,F,J){let X=z[H];if(X)z=X,J|=f;if(X=F[H],X){if(F=X,q!==P&&!k)J|=o}if(J&o)V(F,Q);if(F instanceof Array){if(!(z instanceof Array))throw new Error("Cannot copy array into object");let Z=z.length,U=F.length;for(let W=0;W<U;W++)a(z,F,W,J);if(U!==Z)if(J&f){for(let W=U;W<Z;W++){let j=z[W];z[W]=void 0,$(z,W,void 0,j)}z.length=U,$(z,"length",U,Z)}else z.length=U}else{for(let Z in F)a(z,F,Z,J);if(!(J&i)){for(let Z in z)if(!(Z in F)){let U=z[Z];if(delete z[Z],J&f&&U!==void 0)$(z,Z,void 0,U)}}}}function a(z,F,J,X){let Z=z[J],U=F[J];if(U!==Z){if(U&&Z&&typeof U==="object"&&typeof Z==="object"&&(U.constructor===Z.constructor||X&i&&Z instanceof Array)){b(Z,U,X);return}if(!(X&Yz)&&U&&typeof U==="object"){let j=Object.create(Object.getPrototypeOf(U));b(j,U,0),U=j}let W=z[J];if(X&i&&U==null)delete z[J];else z[J]=U;if(X&f)$(z,J,U,W)}}var _z={get(z,F){if(F===H)return qz(Wz(z.proxy),z.index);if(F==="value")return z.proxy[z.index]},set(z,F,J){if(F==="value")return z.proxy[z.index]=J,!0;return!1}};function qz(z,F){return new Proxy({proxy:z,index:F},_z)}function Iz(z,F){let J,X,Z=z.getAttribute("type"),U=Wz(F).value;if(Z==="checkbox"){if(U===void 0)F.value=z.checked;J=()=>{z.checked=F.value},X=()=>{F.value=z.checked}}else if(Z==="radio"){if(U===void 0&&z.checked)F.value=z.value;J=()=>{z.checked=F.value===z.value},X=()=>{if(z.checked)F.value=z.value}}else{if(X=()=>{F.value=Z==="number"||Z==="range"?z.value===""?null:+z.value:z.value},U===void 0)X();J=()=>{if(z.value=F.value,z.tagName==="SELECT"&&z.value!=F.value)throw new Error(`SELECT has no '${F.value}' OPTION (yet)`)}}Mz(J),z.addEventListener("input",X),L(()=>{z.removeEventListener("input",X)})}var d={create:(z)=>{let F=q.parentElement;if(q!==G)return;if(typeof z==="function")z(F);else{let J=z.split(".").filter((X)=>X);F.classList.add(...J),(async()=>{F.offsetHeight,F.classList.remove(...J)})()}},destroy:(z)=>{let F=q.parentElement;g.set(F,z)},html:(z)=>{let F=document.createElement(q.parentElement.tagName);F.innerHTML=`${z}`;while(F.firstChild)A(F.firstChild)},text:(z)=>{A(document.createTextNode(z))},element:(z)=>{console.log("Aberdeen: $({element: myElement}) is deprecated, use $(myElement) instead"),A(z),d.element=A}};function _(...z){let F,J,X;for(let Z of z){if(Z==null||Z===!1)continue;if(typeof Z==="string"){let U,W,j=Z.indexOf(":");if(j>=0)U=Z.substring(j+1),Z=Z.substring(0,j);let K=Z.indexOf(".");if(K>=0)W=Z.substring(K+1),Z=Z.substring(0,K);if(Z===""){if(U)A(document.createTextNode(U));if(W){let v=q.parentElement;if(v.classList.add(...W.split(".")),!F)L(()=>v.classList.remove(...W.split(".")))}}else if(Z.indexOf(" ")>=0){J=`Tag '${Z}' cannot contain space`;break}else{if(q.inSvgNamespace||Z==="svg")X=document.createElementNS("http://www.w3.org/2000/svg",Z);else X=document.createElement(Z);if(W)X.className=W.replaceAll("."," ");if(U)X.textContent=U;if(A(X),!F)F=q;let h=new M(X,!0);if(Z==="svg")h.inSvgNamespace=!0;if(h.lastChild=X.lastChild||void 0,G===q)G=h;q=h}}else if(typeof Z==="object")if(Z.constructor!==Object)if(Z instanceof Node){if(A(Z),Z instanceof Element){if(!F)F=q;q=new M(Z,!0),q.lastChild=Z.lastChild||void 0}}else{J=`Unexpected argument: ${Z}`;break}else for(let U in Z){let W=Z[U];Hz(U,W)}else if(typeof Z==="function")new x(q.parentElement,Z);else{J=`Unexpected argument: ${Z}`;break}}if(F)q=F;if(J)throw new Error(J);return X}var jz=0;function Ez(z,F=!1){let J=F?"":`.AbdStl${++jz}`,X=c(z,J);if(X)_(`style:${X}`);return J}function c(z,F){let J="",X="";for(let Z in z){let U=z[Z];for(let W of Z.split(/, ?/g))if(U&&typeof U==="object")if(W.startsWith("@"))X+=`${W}{
2
+ ${c(U,F)}}
3
+ `;else X+=c(U,W.includes("&")?W.replace(/&/g,F):`${F} ${W}`);else J+=`${W.replace(/[A-Z]/g,(j)=>`-${j.toLowerCase()}`)}:${U};`}if(J)X=`${F.trimStart()||"*"}{${J}}
4
+ ${X}`;return X}function Hz(z,F){let J=q.parentElement;if(typeof F==="object"&&F!==null&&F[H])if(z==="bind")Iz(J,F);else new Fz(J,z,F);else if(z[0]==="."){let X=z.substring(1).split(".");if(F)J.classList.add(...X);else J.classList.remove(...X)}else if(z[0]==="$"){let X=z.substring(1);if(F==null||F===!1)J.style[X]="";else J.style[X]=`${F}`}else if(F==null);else if(z in d)d[z](F);else if(typeof F==="function")J.addEventListener(z,F),L(()=>J.removeEventListener(z,F));else if(F===!0||F===!1||z==="value"||z==="selectedIndex")J[z]=F;else J.setAttribute(z,F)}function $z(z){return console.error("Error while in Aberdeen render:",z),!0}var Kz=$z;function wz(z){Kz=z||$z}function Dz(){return q.parentElement}function L(z){q.cleaners.push(z)}function Mz(z){return new zz(q.parentElement,z).result}function kz(z){new Jz(q.parentElement,z)}function bz(z,F){new e(z,F)}function xz(){P.remove(),jz=0}function mz(z){k++;try{return z()}finally{k--}}function vz(z,F){let J=N(z instanceof Array?[]:{});return m(z,(X,Z)=>{let U=F(X,Z);if(U!==void 0)J[Z]=U,L(()=>{delete J[Z]})}),J}function yz(z,F){let J=N({});return m(z,(X,Z)=>{let U=F(X,Z);if(U){for(let W in U)J[W]=U[W];L(()=>{for(let W in U)delete J[W]})}}),J}function Sz(z,F){let J={},X=Uz(J);return m(z,(Z,U)=>{let W=F(Z,U);if(W!=null){let j=W instanceof Array?W:[W];if(j.length){for(let K of j)if(J[K])X[K][U]=Z;else X[K]={[U]:Z};L(()=>{for(let K of j)if(delete X[K][U],Zz(J[K]))delete X[K]})}}}),X}function Lz(z){if(z&&typeof z==="object")_({text:z instanceof Array?"<array>":"<object>"}),_("ul",()=>{m(z,(F,J)=>{_(`li:${JSON.stringify(J)}: `,()=>{Lz(F)})})});else _({text:JSON.stringify(z)});return z}function r(z){throw new Error(`Aberdeen internal error ${z}`)}function l(z,F){try{if(Kz(z)===!1)F=!1}catch(J){console.error(J)}try{if(F)_("div.aberdeen-error:Error")}catch{}}function gz(z,F){let J=$;$=z;try{F()}finally{$=J}}export{gz as withEmitHandler,Wz as unproxy,xz as unmountAll,wz as setErrorHandler,Gz as runQueue,qz as ref,Uz as proxy,mz as peek,Sz as partition,m as onEach,Mz as observe,yz as multiMap,bz as mount,vz as map,Pz as isEmpty,Cz as invertString,Ez as insertCss,kz as immediateObserve,Dz as getParentElement,Lz as dump,Bz as defaultEmitHandler,hz as count,Oz as copy,fz as clone,L as clean,Yz as SHALLOW,i as MERGE,_ as $};
5
5
 
6
- //# debugId=52C40989C00BF1DC64756E2164756E21
6
+ //# debugId=E101AB30ABEE326964756E2164756E21
7
7
  //# sourceMappingURL=aberdeen.js.map