lowlander 0.5.0 → 0.6.0

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.
Files changed (41) hide show
  1. package/README.md +43 -67
  2. package/build/client/client.d.ts +8 -1
  3. package/build/client/client.js +39 -22
  4. package/build/client/client.js.map +1 -1
  5. package/build/dashboard/client/crud.d.ts +16 -0
  6. package/build/dashboard/client/crud.js +525 -0
  7. package/build/dashboard/client/crud.js.map +1 -0
  8. package/build/dashboard/client/main.js +238 -246
  9. package/build/dashboard/client/main.js.map +1 -1
  10. package/build/dashboard/dashboard.html +8 -8
  11. package/build/dashboard/server.d.ts +20 -9
  12. package/build/dashboard/server.d.ts.map +1 -1
  13. package/build/dashboard/server.js +139 -3
  14. package/build/dashboard/server.js.map +1 -1
  15. package/build/examples/helloworld/.edinburgh/commit_worker.log +1765 -0
  16. package/build/examples/helloworld/.edinburgh/data.mdb +0 -0
  17. package/build/examples/helloworld/.edinburgh/lock.mdb +0 -0
  18. package/build/examples/helloworld/client/assets/style.css +0 -45
  19. package/build/examples/helloworld/client/index.html +2 -13
  20. package/build/examples/helloworld/client/js/base.d.ts +1 -4
  21. package/build/examples/helloworld/client/js/base.js +8 -217
  22. package/build/examples/helloworld/client/js/base.js.map +1 -1
  23. package/build/examples/helloworld/server/api.d.ts +4 -0
  24. package/build/examples/helloworld/server/api.d.ts.map +1 -1
  25. package/build/examples/helloworld/server/api.js +10 -0
  26. package/build/examples/helloworld/server/api.js.map +1 -1
  27. package/build/server/server.d.ts +3 -3
  28. package/build/server/server.d.ts.map +1 -1
  29. package/build/server/server.js +44 -5
  30. package/build/server/server.js.map +1 -1
  31. package/build/tsconfig.client.tsbuildinfo +1 -1
  32. package/build/tsconfig.server.tsbuildinfo +1 -1
  33. package/client/client.ts +41 -23
  34. package/dashboard/build-bundle.ts +8 -2
  35. package/dashboard/client/crud.ts +634 -0
  36. package/dashboard/client/main.ts +234 -246
  37. package/dashboard/server.ts +149 -5
  38. package/package.json +9 -5
  39. package/server/server.ts +43 -8
  40. package/skill/SKILL.md +30 -47
  41. package/skill/Connection_pruneCommitIds.md +0 -8
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../dashboard/client/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../dashboard/client/main.ts"],"names":[],"mappings":"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"}
@@ -7,14 +7,14 @@
7
7
  <title>Lowlander Dashboard</title>
8
8
  </head>
9
9
  <body>
10
- <script type="module">var de=class{keyProp;tail;symbols;constructor(e){this.keyProp=e,this.tail={},this.symbols=[Symbol(0)]}add(e){if(this.symbols[0]in e)return!1;let r=1+(Math.clz32(Math.random()*4294967295)>>2);for(let f=this.symbols.length;f<r;f++)this.symbols.push(Symbol(f));let n=this.keyProp,i=e[n],s,a=this.tail;for(let f=this.symbols.length-1;f>=0;f--){let c=this.symbols[f];for(;(s=a[c])&&s[n]>i;)a=s;f<r&&(e[c]=a[c],a[c]=e)}return!0}has(e){return this.symbols[0]in e}fetchLast(){let e=this.tail[this.symbols[0]];if(e)return this.remove(e),e}isEmpty(){return this.tail[this.symbols[0]]===void 0}get(e){let r=this.keyProp,n,i=this.tail;for(let s=this.symbols.length-1;s>=0;s--){let a=this.symbols[s];for(;(n=i[a])&&n[r]>e;)i=n}return i[this.symbols[0]]?.[r]===e?i[this.symbols[0]]:void 0}*[Symbol.iterator](){let e=this.symbols[0],r=this.tail[e];for(;r;)yield r,r=r[e]}prev(e){return e[this.symbols[0]]}remove(e){if(!(this.symbols[0]in e))return!1;let r=this.keyProp,n=e[r],i,s=this.tail;for(let a=this.symbols.length-1;a>=0;a--){let f=this.symbols[a];for(;(i=s[f])&&i[r]>=n&&i!==e;)s=i;i===e&&(s[f]=i[f],delete i[f])}return i===e}clear(){let e=this.symbols[0],r=this.tail;for(;r;){let n=r[e];for(let i of this.symbols){if(!(i in r))break;delete r[i]}r=n}this.tail={}}},U,W=0,q;function Ve(t){if(!U)U=new de("prio"),queueMicrotask(gt);else if(!(W&1)&&(W++,W>98))throw new Error("Too many recursive updates from observes");U.add(t)}function gt(){let t=Date.now();for(;U;){let e=U.fetchLast();if(!e)break;W&1&&W++,e.queueRun()}U=void 0,W=0,t=Date.now()-t,t>9&&console.debug(`Aberdeen queue took ${t}ms`)}function ft(t){let e="";for(let r of t){if(typeof r=="string"){e+=`${r}`;continue}if(typeof r!="number")throw new Error("onEach() sort key must be a string, number or an array of such");let n="",i=Math.abs(Math.round(r)),s=r<0;for(;i>0;)n=String.fromCharCode(s?65534-i%65533:2+i%65533)+n,i=Math.floor(i/65533);e+=String.fromCharCode(128+(s?-n.length:n.length))+n}return e}function Bt(t){let e="";for(let r=0;r<t.length;r++)e+=String.fromCodePoint(65535-t.charCodeAt(r));return e}var pt=0,he=class{prio=--pt;remove(){let e=this.getLastNode();e&&pe(e,this.getPrecedingNode()),this.delete()}},Ne=class{queueRun;prio=--pt;constructor(e){this.queueRun=e,Ve(this)}},F=class extends he{cleaners;changes;constructor(e=[]){super(),this.cleaners=e}lastChild;redraw(){}getLastNode(){return ie(this.lastChild)}delete(){for(let e of this.cleaners)typeof e=="function"?e():e.delete(this);this.cleaners.length=0,U?.remove(this),this.lastChild=void 0}onChange(e,r,n,i){this.changes||(this.changes=new Map,Ve(this));let s=this.changes.get(e);s||(s=new Map,this.changes.set(e,s)),s.has(r)?s.get(r)===n&&s.delete(r):s.set(r,i)}fetchHasChanges(){if(!this.changes)return!1;for(let e of this.changes.values())if(e.size>0)return delete this.changes,!0;return delete this.changes,!1}queueRun(){this.fetchHasChanges()&&(this.remove(),q=this,this.redraw(),q=void 0)}getInsertAfterNode(){return this.getLastNode()||this.getPrecedingNode()}getChildPrevSibling(){return this.lastChild}},se=class extends F{el;svg;prevSibling;constructor(e,r,n=!1){super(n?u.cleaners:[]),this.el=e,this.svg=r,e===u.el?(this.prevSibling=u.getChildPrevSibling(),u.lastChild=this):this.prevSibling=e.lastChild||void 0,n||u.cleaners.push(this)}getPrecedingNode(){return ie(this.prevSibling)}getChildPrevSibling(){return this.lastChild||this.prevSibling}},ye=class extends se{renderer;constructor(e,r,n){super(e,r),this.renderer=n,this.redraw()}redraw(){let e=u;u=this;try{this.renderer()}catch(r){Je(r,!0)}u=e}},ge=class extends F{el=document.body;svg=!1;getPrecedingNode(){}},Te=class extends F{el;renderer;svg;constructor(e,r){super(),this.el=e,this.renderer=r,this.svg=e.namespaceURI==="http://www.w3.org/2000/svg",this.redraw(),u.cleaners.push(this)}redraw(){ye.prototype.redraw.call(this)}getPrecedingNode(){}delete(){pe(this.getLastNode(),this.getPrecedingNode()),super.delete()}remove(){this.delete()}};function pe(t,e){for(;t&&t!==e;){let r=t.previousSibling,n=qe.get(t);n&&t instanceof Element?n!==!0&&(typeof n=="function"?n(t):Gt(t,n),qe.set(t,!0)):t.remove(),t=r}}function ie(t){return!t||t instanceof Node?t:t.getLastNode()||t.getPrecedingNode()}var je=class extends se{renderer;result=S({value:void 0});constructor(e){super(u.el,u.svg),this.renderer=e,this.redraw()}redraw(){let e=u;u=this;try{this.result.value=this.renderer()}catch(r){Je(r,!0)}u=e}},Le=class extends se{key;target;svg=!1;constructor(e,r,n){super(e,e.namespaceURI==="http://www.w3.org/2000/svg"),this.key=r,this.target=n,this.redraw()}redraw(){let e=u;u=this,$(this.el,this.key,this.target.value),u=e}},Ue=class extends he{renderer;makeSortKey;parentElement=u.el;prevSibling;target;byIndex=new Map;sortedSet=new de("sortKey");changedIndexes=new Map;constructor(e,r,n){super(),this.renderer=r,this.makeSortKey=n;let i=this.target=e[y]||e;if(w(i,A,this),this.prevSibling=u.getChildPrevSibling(),u.lastChild=this,u.cleaners.push(this),i instanceof Array)for(let s=0;s<i.length;s++)new ee(this,s,!1);else for(let s of i instanceof Map?i.keys():i instanceof Set?i.values():Object.keys(i))new ee(this,s,!1)}getPrecedingNode(){return ie(this.prevSibling)}onChange(e,r,n,i){(!(e instanceof Array)||typeof r=="number")&&(this.changedIndexes.has(r)?this.changedIndexes.get(r)===n&&this.changedIndexes.delete(r):(this.changedIndexes.set(r,i),Ve(this)))}queueRun(){let e=this.changedIndexes;this.changedIndexes=new Map;for(let r of e.keys()){let n=this.byIndex.get(r);n&&n.remove(),(this.target instanceof Set||this.target instanceof Map?this.target.has(r):r in this.target)?new ee(this,r,!0):this.byIndex.delete(r)}q=void 0}delete(){for(let e of this.byIndex.values())e.delete();U?.remove(this),this.byIndex.clear(),setTimeout(()=>{this.sortedSet.clear()},1)}getLastNode(){for(let e of this.sortedSet){let r=e.getActualLastNode();if(r)return r}}},ee=class extends F{parent;itemIndex;sortKey;el;svg;constructor(e,r,n){super(),this.parent=e,this.itemIndex=r,this.el=e.parentElement,this.svg=u.svg,this.parent.byIndex.set(this.itemIndex,this),this.lastChild=this,n&&(q=this),this.redraw()}getPrecedingNode(){this.parent.sortedSet.add(this);let e=this.parent.sortedSet.prev(this);return e?ie(e.lastChild):this.parent.getPrecedingNode()}getLastNode(){return this.getPrecedingNode()}getActualLastNode(){let e=this.lastChild;for(;e&&e!==this;){if(e instanceof Node)return e;let r=e.getLastNode();if(r)return r;e=e.getPrecedingNode()}}queueRun(){if(u!==G&&yt(4),!!this.fetchHasChanges()){if(this.sortKey!==void 0){let e=this.getActualLastNode();e&&pe(e,this.getPrecedingNode())}this.delete(),this.lastChild=this,q=this,this.redraw(),q=void 0}}redraw(){let e,r=this.parent.target,n=this.itemIndex;r instanceof Set?e=n=S(n):r instanceof Map?(e=S(r.get(n)),n=S(n)):e=S(r[n]);let i=u;u=this;let s;try{this.parent.makeSortKey?s=this.parent.makeSortKey(e,n):s=n,s instanceof Array?s=ft(s):typeof s!="string"&&s!=null&&(s=ft([s])),this.sortKey!==s&&(this.parent.sortedSet.remove(this),this.sortKey=s),s!=null&&this.parent.renderer(e,n)}catch(a){Je(a,s!=null)}u=i}getInsertAfterNode(){return this.sortKey==null&&yt(1),ie(this.lastChild)}remove(){if(this.sortKey!==void 0){let e=this.getActualLastNode();e&&pe(e,this.getPrecedingNode()),this.parent.sortedSet.remove(this),this.sortKey=void 0}this.delete()}};function K(t,e){if(t!==u.el){t.appendChild(e);return}let r=u.el,n=u.getInsertAfterNode();r.insertBefore(e,n?n.nextSibling:r.firstChild),u.lastChild=e}var G=new ge,u=G;function We(t){let e=u;u=new ge;try{return t()}finally{u=e}}var A=Symbol("any"),y=Symbol("target"),I=Symbol("mapSize"),_e=new WeakMap,oe=0;function w(t,e,r=u){if(r===G||oe)return;let n=_e.get(t);if(n||_e.set(t,n=new Map),e!==A&&n.get(A)?.has(r))return;let i=n.get(e);i||n.set(e,i=new Set),!i.has(r)&&(i.add(r),r===u?u.cleaners.push(i):u.cleaners.push(()=>{i.delete(r)}))}function J(t,e,r){if(!t||typeof t!="object")throw new Error("A.onEach requires an object");t=t[y]||t,new Ue(t,e,r)}function Ke(t){for(let e of Object.keys(t))return!1;return!0}var b=Symbol("empty");function le(t){let e=t[y]||t,r=u;if(e instanceof Array)return w(e,"length",(i,s,a)=>{!s!=!a&&r.onChange(e,b,!s,!a)}),!e.length;if(e instanceof Map||e instanceof Set)return w(e,I,(i,s,a)=>{!s!=!a&&r.onChange(e,b,!s,!a)}),!e.size;let n=Ke(e);return w(e,A,(i,s,a)=>{if(s===b!=(a===b)){let f=Ke(e);r.onChange(e,b,f,n),n=f}}),n}function qt(t){if(t instanceof Array)return me(t,"length");if(t instanceof Map||t instanceof Set)return me(t,"size");let e=t[y]||t,r=0;for(let i of Object.keys(e))e[i]!==void 0&&r++;let n=Pe(r);return w(e,A,(i,s,a)=>{a===s||(a===b?n.value=++r:s===b&&(n.value=--r))}),n}function Dt(t,e,r,n){if(r===n&&r!==void 0)return;let i=_e.get(t);if(i!==void 0)for(let s of[e,A]){let a=i.get(s);if(a)for(let f of a)typeof f=="function"?f(e,r,n):f.onChange(t,e,r,n)}}var x=Dt,zt={get(t,e){return e===y?t:(w(t,e),S(t[e]))},set(t,e,r){typeof r=="object"&&r&&(r=r[y]||r);let n=t.hasOwnProperty(e)?t[e]:b;return r!==n&&(t[e]=r,x(t,e,r,n)),!0},deleteProperty(t,e){let r=t.hasOwnProperty(e)?t[e]:b;return delete t[e],x(t,e,b,r),!0},has(t,e){return w(t,e),t.hasOwnProperty(e)},ownKeys(t){return w(t,A),Reflect.ownKeys(t)}};function Vt(t,e,r){typeof r=="object"&&r&&(r=r[y]||r);let n=t[e];if(n===void 0&&!t.hasOwnProperty(e)&&(n=b),r!==n){let i=t.length;if(e==="length"){t.length=r;for(let s=r;s<i;s++)x(t,s,b,t[s])}else{if(typeof e=="string"){let s=0|e;String(s)===e&&s>=0&&(e=s)}t[e]=r,x(t,e,r,n)}t.length!==i&&x(t,"length",t.length,i)}return!0}var Wt={get(t,e){if(e===y)return t;if(typeof e=="string"){let r=0|e;String(r)===e&&r>=0&&(e=r)}return w(t,e),S(t[e])},set:Vt,deleteProperty(t,e){if(typeof e=="string"){let n=0|e;String(n)===e&&n>=0&&(e=n)}let r=t[e];return r===void 0&&!t.hasOwnProperty(e)&&(r=b),delete t[e],x(t,e,b,r),!0}};function te(t){return{[Symbol.iterator](){return this},next(){let e=t.next();return e.done?e:{done:!1,value:S(e.value)}}}}function Be(t){return{[Symbol.iterator](){return this},next(){let e=t.next();return e.done?e:{done:!1,value:[S(e.value[0]),S(e.value[1])]}}}}function L(t){return typeof t=="object"&&t&&t[y]||t}var ct={get(t){let e=this[y];return t=L(t),w(e,t),S(e.get(t))},set(t,e){let r=this[y];t=L(t),e=L(e);let n=r.get(t);if(n===void 0&&!r.has(t)&&(n=b),e!==n){let i=r.size;r.set(t,e),x(r,t,e,n),x(r,I,r.size,i)}return this},delete(t){let e=this[y];t=L(t);let r=e.get(t);r===void 0&&!e.has(t)&&(r=b);let n=e.delete(t);return n&&(x(e,t,b,r),x(e,I,e.size,e.size+1)),n},clear(){let t=this[y],e=t.size;for(let r of t.keys())x(t,r,void 0,t.get(r));t.clear(),x(t,I,0,e)},has(t){let e=this[y];return t=L(t),w(e,t),e.has(t)},keys(){let t=this[y];return w(t,A),te(t.keys())},values(){let t=this[y];return w(t,A),te(t.values())},entries(){let t=this[y];return w(t,A),Be(t.entries())},[Symbol.iterator](){let t=this[y];return w(t,A),Be(t[Symbol.iterator]())}},lt={add(t){let e=this[y];if(t=L(t),!e.has(t)){let r=e.size;e.add(t),x(e,t,t,b),x(e,I,e.size,r)}return this},delete(t){let e=this[y];if(t=L(t),!e.has(t))return!1;let r=e.size;return e.delete(t),x(e,t,b,t),x(e,I,e.size,r),!0},clear(){let t=this[y],e=t.size;if(e){for(let r of t.values())x(t,r,b,r);t.clear(),x(t,I,0,e)}},has(t){let e=this[y];return t=L(t),w(e,t),e.has(t)},keys(){let t=this[y];return w(t,A),te(t.keys())},values(){let t=this[y];return w(t,A),te(t.values())},entries(){let t=this[y];return w(t,A),Be(t.entries())},[Symbol.iterator](){let t=this[y];return w(t,A),te(t[Symbol.iterator]())}},Ft={get(t,e){return e===y?t:ct.hasOwnProperty(e)?ct[e]:e==="size"?(w(t,I),t.size):t[e]}},Ht={get(t,e){return e===y?t:lt.hasOwnProperty(e)?lt[e]:e==="size"?(w(t,I),t.size):t[e]}},ut=new WeakMap;function S(t){if(typeof t!="object"||!t||t[y]!==void 0||t[_]||t instanceof Date)return t;let e=ut.get(t);if(e)return e;let r;return t instanceof Array?r=Wt:t instanceof Map?r=Ft:t instanceof Set?r=Ht:r=zt,e=new Proxy(t,r),ut.set(t,e),e}function Pe(t){if(t instanceof Promise){let e=S({busy:!0});return t.then(r=>{e.value=r,e.busy=!1}).catch(r=>{e.error=r,e.busy=!1}),e}return S(typeof t=="object"&&t!==null?t:{value:t})}function Fe(t){return t&&(t[y]||t)}var qe=new WeakMap;function Gt(t,e){let r=e.split(".").filter(n=>n);t.classList.add(...r),setTimeout(()=>t.remove(),2e3)}function Jt(t,e,r){return arguments.length>2?bt(t,e,r,0):He(t,e,0)}function bt(t,e,r,n){let i=$t(t,e);return r===i?!1:typeof i=="object"&&i!==null&&typeof r=="object"&&r!==null&&i.constructor===r.constructor?He(i,r,n):(r=De(r),t instanceof Map?t.set(e,r):t[e]=De(r),!0)}function Yt(t,e,r){return arguments.length>2?bt(t,e,r,be):He(t,e,be)}function He(t,e,r){let n=t[y];return n&&(t=n,r|=j),n=e[y],n&&(e=n,u!==G&&!oe&&(r|=B)),ue(t,e,r)}function ue(t,e,r){r&B&&w(e,A);let n=!1;if(e instanceof Array&&t instanceof Array){let i=t.length,s=e.length;for(let a=0;a<s;a++){let f=t[a];f===void 0&&!t.hasOwnProperty(a)&&(f=b);let c=e[a];if(c===void 0&&!e.hasOwnProperty(a))delete t[a],r&j&&x(t,a,b,f),n=!0;else if(f!==c){if(typeof c=="object"&&c!==null){if(typeof f=="object"&&f!==null&&c.constructor===f.constructor&&!(_ in c)){n=ue(f,c,r)||n;continue}c=ne(c,r&B)}t[a]=c,r&j&&x(t,a,c,f),n=!0}}if(s!==i){if(r&j){for(let a=s;a<i;a++){let f=t[a];delete t[a],x(t,a,b,f)}t.length=s,x(t,"length",s,i)}else t.length=s;n=!0}}else if(e instanceof Map&&t instanceof Map){for(let i of e.keys()){let s=e.get(i),a=t.get(i);if(a===void 0&&!t.has(i)&&(a=b),a!==s){if(typeof s=="object"&&s!==null){if(typeof a=="object"&&a!==null&&s.constructor===a.constructor&&!(_ in s)){n=ue(a,s,r)||n;continue}s=ne(s,r&B)}t.set(i,s),r&j&&x(t,i,s,a),n=!0}}if(!(r&be)){for(let i of t.keys())if(!e.has(i)){let s=t.get(i);t.delete(i),r&j&&x(t,i,b,s),n=!0}}}else if(e.constructor===t.constructor){for(let i of Object.keys(e)){let s=e[i],a=t.hasOwnProperty(i)?t[i]:b;if(a!==s){if(typeof s=="object"&&s!==null){if(typeof a=="object"&&a!==null&&s.constructor===a.constructor&&!(_ in s)){n=ue(a,s,r)||n;continue}s=ne(s,r&B)}t[i]=s,r&j&&x(t,i,s,a),n=!0}}if(!(r&be)){for(let i of Object.keys(t))if(!e.hasOwnProperty(i)){let s=t[i];delete t[i],r&j&&s!==void 0&&x(t,i,b,s),n=!0}}}else throw new Error(`Incompatible or non-object types: ${e?.constructor?.name||typeof e} vs ${t?.constructor?.name||typeof t}`);return n}var be=1,B=32,j=64,_=Symbol("OPAQUE"),Qt=_;Promise.prototype[_]=!0;var re=S({});function Xt(t=1,e="rem"){for(let r=0;r<=12;r++)re[r]=2**(r-3)*t+e}var Zt=/(\burl\([^)]*\))|("[^"]*")|(^| )\$([\w-]+)/g,mt=/^\d/;function xt(t){return t.indexOf("$")<0?t:t.replace(Zt,(e,r,n,i,s)=>{if(r||n)return e;let a=mt.test(s)?`m${s}`:s;return`${i}var(--${a})`})}var fe;function er(){if(!fe){if(typeof window>"u"||!window.matchMedia)return!1;let t=window.matchMedia("(prefers-color-scheme: dark)");fe=Pe({value:t.matches}),t.addEventListener("change",()=>fe.value=t.matches)}return fe.value}function ne(t,e){if(_ in t)return t;if(e&B&&w(t,A),t instanceof Array)return t.map(n=>Oe(n,e));if(t instanceof Map){let n=new Map;for(let[i,s]of t)n.set(i,Oe(s,e));return n}let r=Object.create(Object.getPrototypeOf(t));for(let n of Object.keys(t))r[n]=Oe(t[n],e);return r}function Oe(t,e){return typeof t=="object"&&t!==null?ne(t,e):t}function De(t){if(typeof t!="object"||t===null)return t;let e=0,r=t[y];return r&&(t=r,u!==G&&!oe&&(e=B)),ne(t,e)}var tr={get(t,e){if(e===y)return me(Fe(t.proxy),t.index);if(e==="value")return t.proxy[t.index]},set(t,e,r){return e==="value"?(t.proxy[t.index]=r,!0):!1}};function me(t,e){return new Proxy({proxy:t,index:e},tr)}function rr(t,e){let r,n,i=t.getAttribute("type"),s=Fe(e).value;i==="checkbox"?(s===void 0&&(e.value=t.checked),r=()=>{t.checked=e.value},n=()=>{e.value=t.checked}):i==="radio"?(s===void 0&&t.checked&&(e.value=t.value),r=()=>{t.checked=e.value===t.value},n=()=>{t.checked&&(e.value=t.value)}):(n=()=>{e.value=i==="number"||i==="range"?t.value===""?null:+t.value:t.value},s===void 0&&n(),r=()=>{t.value=e.value,t.tagName==="SELECT"&&t.value!=e.value&&new Ne(()=>t.value=e.value)}),Ct(r),t.addEventListener("input",n),k(()=>{t.removeEventListener("input",n)})}var Me=/\*\*(.+?)\*\*|\*(.+?)\*|`(.+?)`|\[(.+?)\]\((.+?)\)/g,xe={create:(t,e)=>{if(u===q)if(typeof e=="function")e(t);else{let r=e.split(".").filter(n=>n);t.classList.add(...r),(async()=>(t.offsetHeight,t.classList.remove(...r)))()}},destroy:(t,e)=>{qe.set(t,e)},html:(t,e)=>{if(t===u.el&&!t.firstChild)t.innerHTML=`${e}`;else{let r=document.createElement(u.el.tagName);for(r.innerHTML=`${e}`;r.firstChild;)K(t,r.firstChild)}},text:(t,e)=>{K(t,document.createTextNode(e))},rich:(t,e)=>{let r=0,n,i=String(e);for(Me.lastIndex=0;(n=Me.exec(i))!==null;){n.index>r&&K(t,document.createTextNode(i.slice(r,n.index)));let s;if(n[1]!==void 0)s=document.createElement("strong"),s.textContent=n[1];else if(n[2]!==void 0)s=document.createElement("em"),s.textContent=n[2];else if(n[3]!==void 0)s=document.createElement("code"),s.textContent=n[3];else{let a=document.createElement("a");a.textContent=n[4],a.href=n[5],s=a}K(t,s),r=Me.lastIndex}r<i.length&&K(t,document.createTextNode(i.slice(r)))}};function nr(){xe.create=xe.destroy=()=>{}}function C(...t){let e=u.el,r=u.svg,n=t.length;for(let i=0;i<n;i++){let s=t[i];if(!(s==null||s===!1))if(typeof s=="string"){let a=s.length,f=0;for(let c=0;c<a;c=f+1){f=V(s," .=:#",c);let d=s[f];if(d===":"){let l="$"+s.substring(c,f);if(f+1>=a){$(e,l,t[++i]);break}if(s[f+1]===" "){let g=V(s,";",f+2),h=s.substring(f+2,g).trim();$(e,l,h),f=g}else{let g=V(s," ",f+1),h=s.substring(f+1,g);$(e,l,h),f=g}}else if(d==="="){let l=s.substring(c,f);if(f+1>=a){$(e,l,t[++i]);break}let g=s[f+1];if(g==='"'||g==="'"||g==="`"){let h=V(s,g,f+2),v=s.substring(f+2,h);$(e,l,v),f=h}else{let h=V(s," ",f+1),v=s.substring(f+1,h);$(e,l,v),f=h}}else{if(f>c){let l=s.substring(c,f);r||=l==="svg";let g=r?document.createElementNS("http://www.w3.org/2000/svg",l):document.createElement(l);K(e,g),e=g}if(d==="#"){let l=f+1<a?s.substring(f+1):t[++i];$(e,"text",l);break}if(d==="."){let l=V(s," #=.",f+1);if(s[l]==="="&&l+1>=a)$(e,s.substring(f,l),t[++i]),f=l;else{let g=s.substring(f+1,l);e.classList.add(g||t[++i]),f=l-1}}}}}else if(typeof s=="object")if(s.constructor!==Object)if(s instanceof Node)K(e,s),s instanceof Element&&(e=s,r=s.namespaceURI==="http://www.w3.org/2000/svg");else throw new Error(`Unexpected argument: ${s}`);else for(let a of Object.keys(s))$(e,a,s[a]);else if(typeof s=="function")new ye(e,r,s);else throw new Error(`Unexpected argument: ${s}`)}return e}function V(t,e,r){if(e.length===1){let i=t.indexOf(e,r);return i>=0?i:t.length}let n=t.length;for(let i=r;i<n;i++)if(e.indexOf(t[i])>=0)return i;return n}var wt=0;function sr(t){let e=`.AbdStl${++wt}`,r=typeof t=="string"?ze(t,e):we(t,e);if(r){let n=Pt++;H[n]=r,k(()=>delete H[n])}return e}var H=Pe({}),Pt=0;function dt(t,e){let r=[];for(let n of t.split(","))for(let i of e.split(","))r.push(i.includes("&")?i.trim().replace(/&/g,n):`${n} ${i.trim()}`.trim());return r.join(",")}function we(t,e){let r="";for(let[n,i]of Object.entries(t))i&&typeof i=="object"?n.startsWith("@")?r+=`${n}{
11
- ${we(i,e)}}
12
- `:r+=we(i,dt(e,n)):typeof i=="string"&&(n.startsWith("@")?r+=`${n}{
13
- ${ze(i,e)}}
14
- `:r+=ze(i,dt(e,n)));return r}var ir=/-([a-z])/g;function ht(t){return t.replace(ir,(e,r)=>r.toUpperCase())}var or=/^[a-zA-Z-]+$/;function ze(t,e){let r="";for(let n=0,i=t.length;n<i;){for(;t[n]===" ";)n++;if(n>=i)break;let s=t.indexOf(":",n);if(s===-1)throw new Error(`Trailing data in style string: "${t.substring(n)}"`);let a=t.substring(n,s);if(!or.test(a))throw new Error(`Invalid CSS key: "${a}" in style string: "${t}"`);n=s+1;let f;if(t[n]===" "){n++;let l=t.indexOf(";",n);f=t.substring(n,l===-1?i:l).trim(),n=l===-1?i:l+1}else{let l=t.indexOf(" ",n);f=t.substring(n,l===-1?i:l),n=l===-1?i:l}let c=xt(f),d=vt[a]||a;r+=typeof d=="string"?`${d}:${c};`:d.map(l=>`${l}:${c};`).join("")}return r?`${e}{${r}}
15
- `:""}function ar(t){let e=we(t,"");if(e){let r=Pt++;H[r]=e,k(()=>delete H[r])}}var vt={m:"margin",mt:"margin-top",mb:"margin-bottom",ml:"margin-left",mr:"margin-right",mh:["margin-left","margin-right"],mv:["margin-top","margin-bottom"],p:"padding",pt:"padding-top",pb:"padding-bottom",pl:"padding-left",pr:"padding-right",ph:["padding-left","padding-right"],pv:["padding-top","padding-bottom"],w:"width",h:"height",bg:"background",fg:"color",r:"border-radius"};function $(t,e,r){if(typeof r=="object"&&r!==null&&r[y])e==="bind"?rr(t,r):new Le(t,e,r);else if(e[0]==="."){let n=e.substring(1).split(".");r?t.classList.add(...n):t.classList.remove(...n)}else if(e[0]==="$"){e=e.substring(1);let n=r==null||r===!1?"":typeof r=="string"?xt(r):String(r),i=vt[e]||e;if(typeof i=="string")t.style[ht(i)]=n;else for(let s of i)t.style[ht(s)]=n}else r==null||(e in xe?xe[e](t,r):typeof r=="function"?(t.addEventListener(e,r),t===u.el&&k(()=>t.removeEventListener(e,r))):r===!0||r===!1||e==="value"||e==="selectedIndex"?t[e]=r:t.setAttribute(e,r))}function St(t){return console.error("Error while in Aberdeen render:",t),!0}var At=St;function fr(t){At=t||St}function k(t){u.cleaners.push(t)}function Ct(t){return new je(t).result}function Rt(t,e){new Te(t,e)}function cr(){G.remove(),wt=0}function $t(t,e){oe++;try{return arguments.length===1?t():t instanceof Map?t.get(e):t[e]}finally{oe--}}function lr(t,e){let r;return t instanceof Array?r=S([]):t instanceof Map?r=S(new Map):r=S({}),J(t,(n,i)=>{let s=e(n,i);s!==void 0&&(r instanceof Map?(r.set(i,s),k(()=>{r.delete(i)})):(r[i]=s,k(()=>{delete r[i]})))}),r}function ur(t,e){let r=S({});return J(t,(n,i)=>{let s=e(n,i);if(s){for(let a of Object.keys(s))r[a]=s[a];k(()=>{for(let a of Object.keys(s))delete r[a]})}}),r}function dr(t,e){let r={},n=S(r);return J(t,(i,s)=>{let a=e(i,s);if(a!=null){let f=a instanceof Array?a:[a];if(f.length){for(let c of f)r[c]?n[c][s]=i:n[c]={[s]:i};k(()=>{for(let c of f)delete n[c][s],Ke(r[c])&&delete n[c]})}}}),n}function hr(t){let e=ce;ce||=new Set;try{kt(t,ce)}finally{ce=e}return t}var ce;function kt(t,e){if(t&&typeof t=="object"){let r=t.constructor.name||"unknown object";if(e.has(t)){C(`#<${r}: circular reference>`);return}e.add(t),k(()=>e.delete(t));let n=t[Ge];n!==void 0?typeof n=="function"?n.call(t):C(`#${n}`):C(`#<${r}>`,"ul",()=>{J(t,(i,s)=>{C("li",()=>{t instanceof Array||C(`#${JSON.stringify(s)}: `),kt(i,e)})})})}else C(t===void 0?"#undefined":"#"+JSON.stringify(t))}var Ge=Symbol("CUSTOM_DUMP");Date.prototype[Ge]=function(){C("#<Date> "+this.toISOString())};function yt(t){throw new Error(`Aberdeen internal error ${t}`)}function Je(t,e){try{At(t)===!1&&(e=!1)}catch(r){console.error(r)}try{e&&C("div.aberdeen-error#Error")}catch{}}typeof document<"u"&&We(()=>{C(()=>{le(H)&&le(re)||Rt(document.head,()=>{C("style.abd",()=>{J(H,t=>{C("#",t)}),C(()=>{if(le(re))return;let t=":root{";for(let[e,r]of Object.entries(re)){let n=mt.test(String(e))?`m${e}`:e;t+=`--${n}:${r};`}t+=`}
16
- `,C("#",t)})})})})});var o=Object.assign(C,{clean:k,clone:De,copy:Jt,count:qt,cssVars:re,CUSTOM_DUMP:Ge,darkMode:er,derive:Ct,disableCreateDestroy:nr,dump:hr,insertCss:sr,insertGlobalCss:ar,invertString:Bt,isEmpty:le,map:lr,merge:Yt,mount:Rt,multiMap:ur,OPAQUE:_,NO_COPY:Qt,onEach:J,partition:dr,peek:$t,proxy:Pe,ref:me,runQueue:gt,setErrorHandler:fr,setSpacingCssVars:Xt,unmountAll:cr,unproxy:Fe});var ve=()=>{};var Qe=typeof ABERDEEN_FAKE_WINDOW<"u"?ABERDEEN_FAKE_WINDOW:window,Y=Qe.location,M=Qe.history;function Et(){return Xe({path:Y.pathname,hash:Y.hash,search:Object.fromEntries(new URLSearchParams(Y.search)),state:M.state?.state||{}},"load",(M.state?.stack?.length||0)+1)}function Ye(t,e,r){if(t===e)return!0;if(typeof t!="object"||!t||typeof e!="object"||!e||t.constructor!==e.constructor)return!1;if(e instanceof Array){if(t.length!==e.length)return!1;for(let n=0;n<e.length;n++)if(!Ye(t[n],e[n],r))return!1}else{for(let n of Object.keys(e))if(!Ye(t[n],e[n],r))return!1;if(!r){for(let n of Object.keys(t))if(!e.hasOwnProperty(n))return!1}}return!0}function It(t){let e=new URLSearchParams(t.search).toString();return(e?`${t.path}?${e}`:t.path)+t.hash}function Xe(t,e,r){let n=t.path||(t.p||[]).join("/")||"/";return n=(""+n).replace(/\/+$/,""),n.startsWith("/")||(n=`/${n}`),{path:n,hash:t.hash&&t.hash!=="#"?t.hash.startsWith("#")?t.hash:"#"+t.hash:"",p:n.length>1?n.slice(1).replace(/\/+$/,"").split("/"):[],nav:e,search:typeof t.search=="object"&&t.search?o.clone(t.search):{},state:typeof t.state=="object"&&t.state?o.clone(t.state):{},depth:r}}function yr(t){if(typeof t=="string"?t={path:t}:t instanceof Array&&(t={p:t}),t.p&&(t.p=t.p.map(String)),t.search)for(let e of Object.keys(t.search))t.search[e]=String(t.search[e]);return t}function Se(t,e="go"){Ot=0,O=(M.state?.stack||[]).concat(JSON.stringify(o.unproxy(P)));let n=Xe(yr(t),e,O.length+1);o.copy(P,n),ve(e,n),M.pushState({state:n.state,stack:O},"",It(n)),o.runQueue()}var O,Ot=0;var P=o.proxy({});function gr(){O=M.state?.stack||[];let t=Et();ve("initial",t),o.copy(o.unproxy(P),t)}gr();Qe.addEventListener("popstate",function(t){Ot=0;let e=Et(),r=M.state?.stack||[];if(r.length!==O.length){let n=Math.min(O.length,r.length)-1;(n<0||r[n]===O[n])&&(e.nav=r.length<O.length?"back":"forward")}O=r,ve("popstate",e),o.copy(P,e),o.runQueue()});We(()=>{o(()=>{P.path="/"+Array.from(P.p).join("/")}),o(()=>{let t=M.state?.stack||[],e=Xe(P,o.unproxy(P).nav,t.length+1);o.copy(P,e);let r={state:e.state,stack:t},n=It(e);(n!==Y.pathname+Y.search+Y.hash||!Ye(M.state,r,!1))&&(ve("replaceState",e,r,n),M.replaceState(r,"",n))})});var pr=new TextEncoder,Ze=new TextDecoder("utf-8",{fatal:!0}),Q=Symbol("EOD"),Re="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_$",Tt=new Uint8Array(128).fill(255);for(let t=0;t<Re.length;++t)Tt[Re.charCodeAt(t)]=t;var et=typeof process<"u"&&process?.stdout?.isTTY,Ae=et?["\x1B[32m","\x1B[33m","\x1B[34m","\x1B[35m"]:[""],br=et?"\x1B[0m":"",Mt=et?"\x1B[31m":"",Nt={array:5,object:6,map:7,set:8,end:9},Ce=0,mr=typeof process<"u"?!!process.env?.DATAPACK_EXTENDED_LOGGING:!1,N=class t{buffer;dataView;readPos=0;writePos=0;static EOD=Q;get _buffer(){return this.buffer}constructor(e=1900){e instanceof Uint8Array?(this.buffer=e,this.writePos=e.length):this.buffer=new Uint8Array(e)}writeMultiByteNumber(e,r,n=!1,i=!1){let s=0,a=e;for(;a>0;)s++,a=Math.floor(a/256);let f=i?~s&31:s;this.buffer[this.writePos++]=r<<5|f;let c=1;for(let d=0;d<s;d++)c*=256;for(let d=0;d<s;d++){c=Math.floor(c/256);let l=Math.floor(e/c)%256;n&&(l^=255),this.buffer[this.writePos++]=l}}readMultiByteNumber(e,r=!1){this.readPos+e>this.writePos&&this.notEnoughData("number");let n=0,i=1;for(let s=e-1;s>=0;s--){let a=this.buffer[this.readPos+s];r&&(a^=255),n+=a*i,i*=256}return this.readPos+=e,n}notEnoughData(e){throw new Error(`Not enough data to read a ${e} at position ${this.readPos} in
17
- ${this.toString(!0)}`)}write(e){if(this.ensureCapacity(33),typeof e=="number")Number.isInteger(e)&&e<=Number.MAX_SAFE_INTEGER&&e>=Number.MIN_SAFE_INTEGER?e>=0?e<32?this.buffer[this.writePos++]=32|e:e<64?this.buffer[this.writePos++]=64|e-32:this.writeMultiByteNumber(e-64,3):this.writeMultiByteNumber(-e,0,!0,!0):(this.buffer[this.writePos++]=128,this.dataView||=new DataView(this.buffer.buffer,this.buffer.byteOffset,this.buffer.byteLength),this.dataView.setFloat64(this.writePos,e),this.writePos+=8);else if(e===void 0)this.buffer[this.writePos++]=129;else if(e===null)this.buffer[this.writePos++]=130;else if(e===!0)this.buffer[this.writePos++]=131;else if(e===!1)this.buffer[this.writePos++]=132;else if(typeof e=="string"){let r=pr.encode(e);r.length<32?this.buffer[this.writePos++]=160|r.length:this.writeMultiByteNumber(r.length,6),this.ensureCapacity(r.length),this.buffer.set(r,this.writePos),this.writePos+=r.length}else if(e instanceof Uint8Array)this.writeMultiByteNumber(e.length,7),this.ensureCapacity(e.length),this.buffer.set(e,this.writePos),this.writePos+=e.length;else if(Array.isArray(e)||typeof e.length=="number"&&typeof e[Symbol.iterator]=="function"){this.buffer[this.writePos++]=133;for(let r of e)this.write(r);this.buffer[this.writePos++]=137}else if(e instanceof Map){this.buffer[this.writePos++]=135;for(let[r,n]of e)this.write(r),this.write(n);this.buffer[this.writePos++]=137}else if(e instanceof Set){this.buffer[this.writePos++]=136;for(let r of e)this.write(r);this.buffer[this.writePos++]=137}else if(e instanceof Date)this.buffer[this.writePos++]=140,this.write(Math.floor(e.getTime()/1e3));else if(typeof e=="object")e instanceof ae?this.writeCustom(e.name,e.data):typeof e.toDataPack=="function"?e.toDataPack(this):this.writeAsObject(e);else throw new Error(`Unsupported data type: ${typeof e}`);return this}read(e){if(this.readPos>this.writePos)throw new Error("Not enough data");let r=this.buffer[this.readPos++],n=r>>5&7,i=r&31;switch(n){case 0:{let s=~i&31;return-this.readMultiByteNumber(s,!0)}case 1:return i;case 2:return i+32;case 3:return this.readMultiByteNumber(i)+64;case 4:switch(i){case 0:{this.readPos+8>this.writePos&&this.notEnoughData("float64"),this.dataView||=new DataView(this.buffer.buffer,this.buffer.byteOffset,this.buffer.byteLength);let s=this.dataView.getFloat64(this.readPos);return this.readPos+=8,s}case 1:return;case 2:return null;case 3:return!0;case 4:return!1;case 5:{let s=[];for(;;){let a=this.read(e);if(a===Q)break;s.push(a)}return s}case 6:{let s={};for(;;){let a=this.read(e);if(a===Q)break;let f=this.read(e);s[a]=f}return s}case 7:{let s=new Map;for(;;){let a=this.read(e);if(a===Q)break;let f=this.read(e);s.set(a,f)}return s}case 8:{let s=new Set;for(;;){let a=this.read(e);if(a===Q)break;s.add(a)}return s}case 9:return Q;case 10:return--this.readPos,this.readIdentifier();case 11:{let s=this.readPos,a=s;for(;a>=this.writePos&&this.notEnoughData("null-terminated string"),this.buffer[a]!==0;)a++;return this.readPos=a+1,Ze.decode(this.buffer.subarray(s,a))}case 12:{let s=this.readPositiveInt();return new Date(s*1e3)}case 13:{let s=this.readString(),a=this.read();return e&&s in e?e[s](a):new ae(s,a)}default:throw new Error(`Unknown type 4 subtype: ${i}`)}case 5:{let s=i;this.readPos+s>this.writePos&&this.notEnoughData("short string");let a=this.buffer.subarray(this.readPos,this.readPos+s);return this.readPos+=s,Ze.decode(a)}case 6:{let s=this.readMultiByteNumber(i);this.readPos+s>this.writePos&&this.notEnoughData("string");let a=this.buffer.subarray(this.readPos,this.readPos+s);return this.readPos+=s,Ze.decode(a)}case 7:{let s=this.readMultiByteNumber(i);this.readPos+s>this.writePos&&this.notEnoughData("blob");let a=this.buffer.slice(this.readPos,this.readPos+s);return this.readPos+=s,new Uint8Array(a)}default:throw new Error(`Unknown type: ${n}`)}}ensureCapacity(e){let r=this.writePos+e;if(r<=this.buffer.length)return;let n=Math.max(r,Math.floor(this.buffer.length*1.5)),i=new Uint8Array(n);i.set(this.buffer.subarray(0,this.writePos)),this.buffer=i,delete this.dataView}readNumber(){let e=this.read();if(typeof e!="number")throw new Error("Expected number but got "+typeof e);return e}readDate(){let e=this.read();if(!(e instanceof Date))throw new Error("Expected Date but got "+typeof e);return e}readPositiveInt(e){let r=this.read();if(typeof r!="number"||!Number.isInteger(r)||r<0||e!==void 0&&r>=e)throw new Error(`Expected positive integer < ${e} but got ${r}`);return r}readBoolean(){let e=this.read();if(typeof e!="boolean")throw new Error("Expected boolean but got "+typeof e);return e}readUint8Array(){let e=this.read();if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array but got "+typeof e);return e}readString(){let e=this.read();if(typeof e!="string")throw new Error("Expected string but got "+typeof e);return e}writeIdentifier(e){let r=0;if(typeof e=="number")r=e;else{if(e.length!==8)throw new Error(`Identifier must be exactly 8 characters, got ${e.length}`);let n;for(let i=0;i<8;i++){let s=e.charCodeAt(i);if(s>127||(n=Tt[s])===255)throw new Error(`Invalid base64 character: ${e[i]}`);r=r*64+n}}this.ensureCapacity(7),this.buffer[this.writePos++]=138;for(let n=5;n>=0;n--)this.buffer[this.writePos+n]=r%256,r=Math.floor(r/256);return this.writePos+=6,this}readIdentifier(){let e=this.readIdentifierNumber(),r="";for(let n=0;n<8;n++)r=Re[e%64]+r,e=Math.floor(e/64);return r}readIdentifierNumber(){if(this.readPos+7>this.writePos&&this.notEnoughData("identifier"),this.buffer[this.readPos++]!==138)throw new Error("Invalid identifier header");let r=0;for(let n=0;n<6;n++)r=r*256+this.buffer[this.readPos++];return r}writeOrderedString(e){let r=new TextEncoder().encode(e);if(r.includes(0))throw new Error("String contains null character");return this.ensureCapacity(r.length+2),this.buffer[this.writePos++]=139,this.buffer.set(r,this.writePos),this.writePos+=r.length,this.buffer[this.writePos++]=0,this}toUint8Array(e=!0,r=0,n=this.writePos){return e?this.buffer.slice(r,n):this.buffer.subarray(r,n)}toBuffer(){return this.buffer.buffer.slice(0,this.writePos)}clone(e,r=0,n=this.writePos){if(e)return new t(this.buffer.slice(r,n));{let i=new t(this.buffer);return i.readPos=r,i.writePos=n,i}}writeCustom(e,r){this.buffer[this.writePos++]=141,this.write(e),this.write(r)}writeAsObject(e){this.buffer[this.writePos++]=134;for(let r of Object.keys(e))this.write(r),this.write(e[r]);return this.buffer[this.writePos++]=137,this}writeCollection(e,r){return this.writeCollectionBoundary(e),r(e==="array"||e==="set"?n=>{this.write(n)}:e==="object"?(n,i)=>{this.writeObjectKey(n),this.write(i)}:(n,i)=>{this.write(n),this.write(i)}),this.writeCollectionBoundary("end")}writeCollectionBoundary(e){let r=Nt[e];if(!r)throw new Error(`Invalid collection type: ${e}`);return this.buffer[this.writePos++]=128|r,this}writeObjectKey(e){if(typeof e=="string"){let r=parseInt(e,10);r.toString()==e&&(e=r)}else typeof e!="number"&&(e=""+e);this.write(e)}readCollectionBoundary(e){this.readPos>=this.writePos&&this.notEnoughData("collection boundary");let r=this.buffer[this.readPos++],n=128|Nt[e];if(r!==n)throw new Error(`Expected ${e} boundary but got byte ${r}`)}increment(){for(let e=this.writePos-1;e>=0;e--)if(this.buffer[e]===255)this.buffer[e]=0;else return this.buffer[e]++,this}toString(e=void 0,r=0,n=this.writePos){e===void 0&&(e=mr);let i=this.readPos;this.readPos=r;let s=0,a="",f="",c=Ce,d=c>0?Ae[(c-1)%Ae.length]:br;try{for(;this.readPos<n;){let l=Ae[Ce++%Ae.length];if(a+=l+X(this.read())+" ",e)for(f+=l;s<this.readPos;)f+=this.buffer[s].toString(16).padStart(2,"0")+" ",s++}}catch{if(!e)return this.readPos=i,Ce=c,this.toString(!0,r,n);for(a+=Mt+"ERROR ",f+=Mt;s<this.writePos;)f+=this.buffer[s].toString(16).padStart(2,"0")+" ",s++}return this.readPos=i,c||(Ce=0),e?"DataPack{"+f+d+"\u2192 "+a.trimEnd()+d+"}":"DataPack{"+a.trimEnd()+d+"}"}[Symbol.for("nodejs.util.inspect.custom")](){return this.toString()}readAvailable(){return this.readPos<this.writePos}static generateIdentifier(){let e=Math.floor(+new Date*256+Math.random()*16384),r="";for(let n=0;n<8;n++)r=Re[e&63]+r,e=Math.floor(e/64);return r}static createBuffer(...e){let r=new t;for(let n of e)r.write(n);return r.toBuffer()}static createUint8Array(...e){let r=new t;for(let n of e)r.write(n);return r.toUint8Array(!1)}};function X(t){if(t===void 0)return"undefined";if(typeof t=="object"&&t!==null){if(t instanceof Uint8Array)return new N(t).toString();if(t instanceof Array)return"["+t.map(e=>X(e)).join(", ")+"]";if(t instanceof Map)return"Map{"+Array.from(t.entries()).map(([e,r])=>`${X(e)}=>${X(r)}`).join(", ")+"}";if(t instanceof Set)return"Set{"+Array.from(t.values()).map(e=>X(e)).join(", ")+"}";if(typeof t=="object"&&t!==null)return"{"+Object.entries(t).map(([e,r])=>`${e}:${X(r)}`).join(", ")+"}"}return JSON.stringify(t)}var ae=class{name;data;constructor(e,r){this.name=e,this.data=r}};N.prototype.CustomData=ae;var T={error:"e",response:"r",response_proxy:"p",response_model:"m",response_proxy_model:"q",model_data:"d"},tt={call:1,cancel:2};var R=0;var $e=Symbol(),ke=class{constructor(e){this.url=e;this.api=new Proxy({connection:this,requestId:void 0},jt),this.connect()}url;ws;activeRequests=new Map;requestCounter=0;reconnectAttempts=0;_proxyCounter=0;onlineProxy=o.proxy(!1);streamCache=new Map;api;isOnline(){return this.onlineProxy.value}connect(){let e=this.ws=typeof this.url=="string"?new WebSocket(this.url):this.url();e.binaryType="arraybuffer",R>=1&&console.log(`[lowlander] Connecting to WebSocket at ${typeof this.url=="string"?this.url:"[custom WebSocket]"}`),e.onopen=()=>{if(e===this.ws){R>=1&&console.log("[lowlander] WebSocket connected"),this.onlineProxy.value=!0,this.reconnectAttempts=0;for(let r of this.activeRequests.values())r.resultProxy.busy=!0,this.ws.send(r.requestBuffer)}},e.onclose=()=>{e===this.ws&&(R>=1&&console.log("[lowlander] WebSocket disconnected"),this.reconnect())},e.onerror=r=>{e===this.ws&&(console.error("WebSocket error:",r),this.reconnect())},e.onmessage=r=>{if(e!==this.ws)return;let n=new N(new Uint8Array(r.data)),i=n.readPositiveInt(),s=this.activeRequests.get(i);if(!s)return;let a=o.unproxy(s.resultProxy),f=n.read();if(typeof f=="number"){let c=s.callbacks?.[f],d=[];for(;n.readAvailable();)d.push(n.read());c(...d);return}if(f===T.model_data){s.database||=new Map,s.commitIds||=new Map;let c=n.readNumber(),d=n.readNumber(),l=n.read({model:function(v){let at=s.database.get(v);return at||console.error("Unknown linked model hash "+v),at}});R>=3&&console.log("[lowlander] incoming model_data",i,c,d,l),setTimeout(()=>this.pruneCommitIds(s,d),15e3);let g=s.commitIds.get(c);if(!l){if(g&&d<Math.max(...g.values()))return;s.database.delete(c),s.commitIds.set(c,new Map([[$e,d]]));return}let h=s.database.get(c);if(h){g||(g=new Map,s.commitIds.set(c,g));for(let v of Object.keys(l))d<(g.get(v)??g.get($e)??-1)||(l[v]&&typeof l[v]=="object"?o.copy(h,v,l[v]):h[v]=l[v],g.set(v,d))}else{if(g&&d<(g.get($e)??-1))return;let v=o.proxy(l);o.unproxy(v)[o.OPAQUE]=!1,s.database.set(c,v),s.commitIds.set(c,new Map([[$e,d]]))}return}if(f===T.error){let c=n.readString();s.resultProxy.error=new Error(c),R>=2&&console.log(`[lowlander] incoming error requestId=${i} message=${c}`)}else if(f===T.response||f===T.response_proxy)s.resultProxy.value=n.read(),s.virtualSocketIds=n.read(),s.hasServerProxy=f===T.response_proxy,R>=2&&console.log(`[lowlander] incoming response requestId=${i} value=${a.value} virtualSocketIds=${s.virtualSocketIds} hasServerProxy=${s.hasServerProxy}`);else if(f===T.response_model||f===T.response_proxy_model){s.virtualSocketIds=n.read();let c=n.readNumber(),d=n.read(),l=s.database?.get(c);s.hasServerProxy=f===T.response_proxy_model,R>=2&&console.log(`[lowlander] incoming ${s.hasServerProxy?"response_proxy_model":"response_model"} requestId=${i} dbKey=${c} cacheMs=${d} obj=${l}`),l?s.resultProxy.value=o.proxy(l):s.resultProxy.error=new Error("Unknown database key "+c),d!==void 0&&s.cacheKey&&!this.streamCache.has(s.cacheKey)&&this.streamCache.set(s.cacheKey,{request:s,cacheKey:s.cacheKey,cacheMs:d,refCount:1})}else throw new Error("Unknown message type "+f);!s.hasServerProxy&&!s.virtualSocketIds?.length&&this.activeRequests.delete(i),s.hasServerProxy||delete s.resultProxy.serverProxy,s.resultProxy.busy=!1,s.resolve&&(a.error!=null?(console.error(a.error),s.reject(a.error)):s.resolve(a.value),delete s.resolve,delete s.reject)}}reconnect(){if(this.ws=void 0,this.onlineProxy.value=!1,typeof this.url!="string")return;let e=Math.min(500*Math.pow(2,this.reconnectAttempts),2e4);this.reconnectAttempts++,R>=1&&console.log(`[lowlander] Reconnecting in ${e}ms (attempt ${this.reconnectAttempts})`),setTimeout(this.connect.bind(this),e)}pruneCommitIds(e,r){if(e.commitIds)for(let[n,i]of e.commitIds){for(let[s,a]of i)a<=r&&i.delete(s);i.size||e.commitIds.delete(n)}}_createMethodStub(e,r){return(...n)=>{let s=n.some(h=>typeof h=="function")?void 0:(r??"")+":"+e+":"+JSON.stringify(n);if(s){let h=this.streamCache.get(s);if(h)return h.lingerTimeout&&(clearTimeout(h.lingerTimeout),h.lingerTimeout=void 0),h.refCount++,R>=2&&console.log(`[lowlander] reusing cached stream cacheKey=${s} refCount=${h.refCount}`),o.clean(()=>{h.refCount--,R>=2&&console.log(`[lowlander] clean cached consumer cacheKey=${s} refCount=${h.refCount}`),h.refCount<=0&&this.startLinger(h)}),h.request.resultProxy}let a={busy:!0},f=o.proxy(a),c=++this.requestCounter,d=new N;d.write(c).write(tt.call).write(r).write(e);let l;d.writeCollection("array",()=>{for(let h of n)typeof h=="function"?(l||=[],d.writeCustom("cb",l.length),l.push(h)):d.write(h)});let g={resultProxy:f,requestBuffer:d.toUint8Array(!0),requestId:c,connection:this,callbacks:l,cacheKey:s};return a.serverProxy=new Proxy(g,jt),a.promise=new Promise((h,v)=>{g.resolve=h,g.reject=v}),this.activeRequests.set(c,g),R>=2&&console.log(`[lowlander] outgoing call requestId=${c} method=${e} params=`,n),this.ws&&this.ws.readyState===WebSocket.OPEN&&this.ws.send(g.requestBuffer),o.clean(()=>{let h=s?this.streamCache.get(s):void 0;if(h&&h.request===g){h.refCount--,R>=2&&console.log(`[lowlander] clean stream owner cacheKey=${s} refCount=${h.refCount}`),h.refCount<=0&&this.startLinger(h);return}this.cancelRequest(g)}),f}}cancelRequest(e){if(this.activeRequests.delete(e.requestId),e.virtualSocketIds?.length||e.hasServerProxy){R>=2&&console.log(`[lowlander] outgoing cancel requestId=${e.requestId} virtualSocketIds=${e.virtualSocketIds} hasServerProxy=${e.hasServerProxy}`);let r=N.createUint8Array(++this.requestCounter,tt.cancel,e.requestId,e.virtualSocketIds);this.ws?.send(r)}}startLinger(e){e.lingerTimeout&&clearTimeout(e.lingerTimeout),R>=2&&console.log(`[lowlander] start linger cacheKey=${e.cacheKey} cacheMs=${e.cacheMs}`),e.lingerTimeout=setTimeout(()=>{e.refCount>0||(R>=2&&console.log(`[lowlander] linger expired cacheKey=${e.cacheKey}`),this.streamCache.delete(e.cacheKey),this.cancelRequest(e.request))},e.cacheMs)}},jt={get(t,e){if(typeof e=="symbol")return e===o.OPAQUE?!0:e===o.CUSTOM_DUMP?`<ServerProxy for #${t.requestId}>`:void 0;if(t.serverProxyCache?.has(e))return t.serverProxyCache.get(e);if(e==="then"||e==="catch"||e==="finally")return;if(e==="constructor")return{name:"ServerProxy-"+t.requestId};let r=t.connection._createMethodStub(e,t.requestId);return t.serverProxyCache||(t.serverProxyCache=new Map),t.serverProxyCache.set(e,r),r},has(t,e){return typeof e=="string"||e===o.NO_COPY}};var Ut="lowlander-dashboard";function xr(){try{return JSON.parse(localStorage.getItem(Ut)||"{}")}catch{return{}}}function _t(t){localStorage.setItem(Ut,JSON.stringify(t))}var wr=()=>`${location.protocol==="https:"?"wss:":"ws:"}//${location.host}/`,Lt=xr(),p=o.proxy({wsUrl:Lt.wsUrl||wr(),password:Lt.password||"",loginError:"",connected:!1,authed:!1,indexRefreshKey:0,connecting:!1}),z,Ee,E,m={get debug(){return P.search.debug==="1"},set debug(t){D("debug",t?"1":"")},get model(){return P.search.model||""},set model(t){D("model",t)},get index(){return P.search.index||""},set index(t){D("index",t)},get search(){return P.search.search||""},set search(t){D("search",t)},get reverse(){return P.search.reverse==="1"},set reverse(t){D("reverse",t?"1":"")},get limit(){return parseInt(P.search.limit||"10",10)||10},set limit(t){D("limit",t===10?"":String(t))},get pk(){return P.search.pk||""},set pk(t){D("pk",t)}};function D(t,e){let r=P.search;e===""||e===void 0?delete r[t]:r[t]=e}function nt(){return m.index||"(primary)"}function st(){return m.pk==="-"?"":m.pk}var Z="";function Pr(){o.setSpacingCssVars(),o.cssVars.bg="#0f1117",o.cssVars.panel="#181b24",o.cssVars.panel2="#1f2330",o.cssVars.fg="#e5e7eb",o.cssVars.muted="#94a3b8",o.cssVars.accent="#60a5fa",o.cssVars.accent2="#34d399",o.cssVars.danger="#f87171",o.cssVars.border="#2a2f3d",o.insertGlobalCss({"html,body":"m:0 p:0 bg:$bg fg:$fg font-family: -apple-system, system-ui, sans-serif; font-size:14px; h:100vh",body:"display:flex flex-direction:column",a:"color:$accent text-decoration:none cursor:pointer","a:hover":"text-decoration:underline","input,select,textarea,button":"font-family:inherit font-size:inherit","input[type=text],input[type=password],input:not([type]),select,textarea":"bg:$panel2 fg:$fg border: 1px solid $border; r:4px p: 6px 8px; outline:none box-sizing:border-box w:100%","input:focus,textarea:focus,select:focus":"border-color:$accent",button:"bg:$accent fg:#0b1220 border:0 r:4px p: 6px 12px; cursor:pointer font-weight:600","button:hover":"opacity:0.9","button.ghost":"bg:transparent fg:$accent border: 1px solid $border;","code,pre":"font-family: ui-monospace, Menlo, Consolas, monospace; font-size:12.5px",pre:"bg:#0b0d14 p:$3 r:6px overflow:auto m:0",".tag":"display:inline-block bg:$panel2 fg:$muted p: 1px 6px; r:3px font-size:11px ml:$1",".sidebarSel":"bg:#1e3251 box-shadow: inset 3px 0 0 $accent;",".row":"display:flex gap:$2 align-items:center",".col":"display:flex flex-direction:column gap:$2",ul:"margin-block-start:0 margin-block-end:0"}),Z=o.insertCss({"&":"w:100% border-collapse:collapse font-size:12.5px","& th,& td":"text-align:left p: 4px 8px; border-bottom: 1px solid $border; vertical-align:top","& th":"bg:$panel2 fg:$muted font-weight:600","& tbody tr":"cursor:default","& tbody tr:hover":"bg:#ffffff08","& tbody tr.selectable":"cursor:pointer","& tbody tr.selected":"bg:#1e3251","& tbody tr.selected td:first-child":"border-left: 3px solid $accent; padding-left: 5px;"})}function vr(){o(()=>{if(p.connecting){o("div","display:flex align-items:center justify-content:center h:100vh fg:$muted","#Connecting\u2026");return}o("div","display:flex align-items:center justify-content:center h:100vh",()=>{o("form","bg:$panel p:$4 r:8px w:360px border: 1px solid $border; display:flex flex-direction:column gap:$3","submit=",t=>{t.preventDefault(),Kt()},()=>{o("h2#Lowlander Dashboard","m:0"),o("label",()=>{o("span#WebSocket URL","fg:$muted display:block mb:$1"),o("input type=text bind=",o.ref(p,"wsUrl"))}),o("label",()=>{o("span#Password","fg:$muted display:block mb:$1"),o("input type=password bind=",o.ref(p,"password"),"autofocus=")}),o(()=>{p.loginError&&o("div","fg:$danger",()=>o("text=",p.loginError))}),o("button type=submit",()=>{o(()=>o(p.connected&&!p.authed?"text=Checking\u2026":'text="Log in"'))})})})})}async function Kt(){p.connecting=!0,p.loginError="",_t({wsUrl:p.wsUrl,password:p.password});try{z&&z.ws?.close?.()}catch{}z=new ke(p.wsUrl),Ee=z.api,p.connected=!1,p.authed=!1;let t=Ee._dashboard(p.password);E=t;try{await t.promise,p.connected=!0,p.authed=!0,p.connecting=!1}catch(e){p.connecting=!1,p.loginError=e?.message||"Login failed",p.connected=!1,p.authed=!1,z=void 0,Ee=void 0,E=void 0}}function Sr(){p.authed=!1,p.connected=!1,p.password="",_t({wsUrl:p.wsUrl,password:""});try{z?.ws?.close?.()}catch{}z=void 0,Ee=void 0,E=void 0}function Ar(){o("aside","w:280px bg:$panel border-right: 1px solid $border; display:flex flex-direction:column overflow:hidden",()=>{o("div","p:$3 border-bottom: 1px solid $border; display:flex justify-content:space-between align-items:center",()=>{o("strong#Lowlander"),o("button.ghost#Logout","click=",()=>Sr())}),o("div","overflow:auto flex:1 p:$2",()=>{E&&(Cr(),o("div","border-top: 1px solid $border; mt:$2 pt:$2",()=>{o("div","p: 6px 8px; r:4px cursor:pointer","click=",()=>{Se({path:P.path,search:{debug:"1"}})},()=>{o(()=>o(".sidebarSel=",m.debug)),o("div","display:flex justify-content:space-between align-items:baseline",()=>{o("span#\u2B21 WarpSocket debug")})})}))})})}function Cr(){let t=E.serverProxy.listModels();o(()=>{if(t.busy){o("div","fg:$muted","#Loading\u2026");return}if(t.error){o("div","fg:$danger","text=",t.error.message);return}let e=t.value||[];for(let r of e)o("div","p: 6px 8px; r:4px cursor:pointer","click=",()=>{Se({path:P.path,search:{model:r.tableName}})},()=>{o(()=>o(".sidebarSel=",!m.debug&&m.model===r.tableName)),o("div","display:flex justify-content:space-between align-items:baseline",()=>{o("span","text=",r.tableName),o("span.tag","text=",`${r.fieldCount}f ${r.indexCount}i ${r.streamTypeCount}s`)})})})}function Rr(){o("main","flex:1 overflow:auto p:$4",()=>{E&&(m.debug?Tr():m.model?$r():o("div","fg:$muted p:$4 text-align:center","#Select a model from the sidebar"))})}function $r(){let t=m.model,e=E.serverProxy.getModel(t);o(()=>{if(e.busy){o("div","fg:$muted","#Loading\u2026");return}if(e.error){o("div","fg:$danger","text=",e.error.message);return}let r=e.value;r&&(o("h2","m:0 mb:$2","text=",r.tableName),o("section","mb:$4",()=>{o("h3#Fields","m:0 mb:$2 fg:$muted font-weight:600"),o("table",Z,()=>{o("thead tr",()=>{o("th#Name"),o("th#Type"),o("th#Linked"),o("th#Default"),o("th#Description")}),o("tbody",()=>{for(let n of r.fields)o("tr",()=>{o("td",()=>o("code","text=",n.name)),o("td","fg:$accent2","text=",n.type.display),o("td",()=>{let i=n.type.linkedModel;i&&ot(i)}),o("td","text=",n.hasDefault?"\u2713":""),o("td","fg:$muted","text=",n.description||"")})})})}),o("section","mb:$4",()=>{o("h3#Indexes","m:0 mb:$2 fg:$muted font-weight:600"),kr(r)}),o(()=>{let n=nt(),i=r.indexes.find(s=>s.name===n);i&&o("section","mb:$4",()=>{o("h3","m:0 mb:$2 fg:$muted font-weight:600","text=",`Data for ${n}`),Mr(r,i)})}),r.streamTypes.length&&o("section","mb:$4",()=>{o("h3#Stream types","m:0 mb:$2 fg:$muted font-weight:600"),Er(r)}))})}function ot(t,e,r){o("a","click=",n=>{n.preventDefault(),n.stopPropagation();let i={model:t};e!==void 0&&(i.search=Ie(e),i.limit=1),Se({path:P.path,search:i})},"text=",r??t)}function Ie(t){if(typeof t=="string")return t;try{return JSON.stringify(t)}catch{return String(t)}}function kr(t){o("table",Z,()=>{o("thead tr",()=>{o("th#Name"),o("th#Kind"),o("th#Fields")}),o("tbody",()=>{for(let e of t.indexes)o("tr.selectable","click=",()=>{nt()!==e.name&&(m.index=e.name==="(primary)"?"":e.name,m.pk="",m.search="")},()=>{o(()=>o(".selected=",nt()===e.name)),o("td",()=>o("code","text=",e.name)),o("td","fg:$accent2","text=",e.info.kind),o("td","text=",e.info.fields.join(", ")||"(computed)")})})})}function Er(t){let e={};for(let i of t.fields)e[i.name]=i;let r=new Set,n=t.streamTypes.filter(i=>r.has(i.id)?!1:(r.add(i.id),!0));o("table",Z,()=>{o("thead tr",()=>{o("th#id"),o("th#cache"),o("th#fields"),o("th","w:100%","#live view for selected row")}),o("tbody",()=>{for(let i of n)o("tr",()=>{o("td",()=>o("code","text=",String(i.id))),o("td","text=",i.cache?`${i.cache}s`:""),o("td",()=>Ir(i.fields,e)),o("td",()=>Or(t.tableName,i.id))})})})}function Ir(t,e){if(t===!0){o("span","fg:$muted","#(scalar)");return}if(!t||typeof t!="object"){o("span","text=",String(t));return}for(let[r,n]of Object.entries(t))if(n===!0)o("div","text=",r);else if(typeof n=="number"){let i=e[r]?.type?.linkedModel;o(`div #${r}\u2192`,()=>{i?ot(i,void 0,n.toString()):o("#?")})}else o(`div #${r}={...}`)}function Or(t,e){o(()=>{let r=st();if(!r){o("span","fg:$muted","#(select a row)");return}let n;try{n=JSON.parse(r)}catch{n=r}let i=E.serverProxy.streamRecord(t,e,n);o(()=>{if(i.busy){o("span","fg:$muted","#\u2026");return}if(i.error){o("span","fg:$danger","text=",i.error.message);return}o.dump(i.value)})})}function Mr(t,e){let r=t.tableName,n=e.name;o("div","display:flex flex-direction:column",()=>{o("div","display:flex flex-wrap:wrap gap:$2 align-items:center mb:$2",()=>{o("input type=text flex:1 min-w:200px placeholder=search","value=",o.peek(()=>m.search),"input=",i=>{m.search=i.target.value,m.limit=10}),o("label","display:flex align-items:center gap:$1 white-space:nowrap",()=>{o("input type=checkbox","checked=",m.reverse,"change=",i=>m.reverse=i.target.checked),o("span","fg:$muted","#reverse")}),o("button.ghost","p: 2px 8px; font-size:11px","#\u21BA refresh","click=",()=>p.indexRefreshKey++)}),o(()=>{p.indexRefreshKey;let i={search:Nr(m.search),reverse:m.reverse,limit:m.limit},s=E.serverProxy.findRecords(r,n,i);o(()=>{if(s.busy){o("div","fg:$muted","#Loading\u2026");return}if(s.error){o("div","fg:$danger","text=",s.error.message);return}let a=s.value;if(a){if(!m.pk&&a.rows.length>0){m.pk=Ie(a.rows[0].pk);return}if(o("div","fg:$muted mb:$2 font-size:12px","text=",`${a.rows.length} rows (scanned ${a.scanned})`),!a.rows.length){o("div","fg:$muted","#(empty)");return}o("div","overflow:auto",()=>{o("table",Z,()=>{let f=Object.keys(a.rows[0].values);o("thead tr",()=>{for(let c of f)o("th","text=",c)}),o("tbody",()=>{for(let c of a.rows){let d=Ie(c.pk);o("tr.selectable","click=",()=>{m.pk=st()===d?"-":d},()=>{o(()=>o(".selected=",st()===d));for(let l of f)o("td",()=>o.dump(it(c.values[l])))})}})})}),a.rows.length>=m.limit&&o("div","mt:$2",()=>{o("button.ghost","p: 2px 8px; font-size:11px","click=",()=>{let f=m.limit;m.limit=Math.min(f*5,f+250)},()=>o("span","text=",`+ more (currently limit ${m.limit})`))})}})})})}function it(t){if(t==null||typeof t!="object"||t instanceof Date)return t;if(t.__ref){let r=t.__ref,n=t.pk;return{[o.CUSTOM_DUMP](){ot(r,n,`<${r} ${Ie(n)}>`)}}}if(Array.isArray(t))return t.map(it);let e={};for(let[r,n]of Object.entries(t))e[r]=it(n);return e}function Nr(t){if(t!==""){if(t==="true")return!0;if(t==="false")return!1;if(/^-?\d+(\.\d+)?$/.test(t))return Number(t);try{return JSON.parse(t)}catch{}return t}}function Tr(){let t=o.proxy({v:"channels"});o("h2#WarpSocket debug","m:0 mb:$3"),o("div",".row mb:$3",()=>{for(let e of["channels","sockets","workers","kv"])o("button click=",()=>t.v=e,()=>{o(()=>o(t.v===e?"bg:$accent fg:#0b1220":"bg:$panel2 fg:$fg border: 1px solid $border;")),o("text=",e)})}),o(()=>{let e=E.serverProxy.getDebugState(t.v);o(()=>{if(e.busy){o("div","fg:$muted","#Loading\u2026");return}if(e.error){o("div","fg:$danger","text=",e.error.message);return}let r=o.unproxy(e.value);if(!r)return;let n=new Set;for(let s of Object.values(r))if(s&&typeof s=="object"&&!(s instanceof Uint8Array))for(let a of Object.keys(s))n.add(a);let i=[...n];o("div","overflow:auto",()=>{o("table",Z,()=>{o("thead tr",()=>{o("th##");for(let s of i)o("th","text=",s)}),o("tbody",()=>{for(let[s,a]of Object.entries(r))o("tr",()=>{o("td",()=>o("code","text=",s));for(let f of i)o("td","font-size:12px font-family:monospace","text=",jr(a?.[f]))})})})})})})}function jr(t){if(t==null)return"";if(t instanceof Uint8Array)return rt([...t]);if(typeof t=="object"){if(t.type==="Buffer"&&Array.isArray(t.data))return rt(t.data);let e=Object.keys(t);if(!Array.isArray(t)&&e.length>0&&e.length<=4096&&e.every((r,n)=>r===String(n))){let r=[];for(let n of e){let i=t[n];if(typeof i!="number"||i<0||i>255)return JSON.stringify(t);r.push(i)}return rt(r)}return JSON.stringify(t)}return String(t)}function rt(t){let e="";for(let r of t)r>=32&&r<127&&r!==34&&r!==92?e+=String.fromCharCode(r):r===9?e+="\\t":r===10?e+="\\n":r===13?e+="\\r":r===34?e+='\\"':r===92?e+="\\\\":e+="\\x"+r.toString(16).padStart(2,"0");return e}Pr();o.mount(document.body,()=>{if(!p.authed){vr();return}o("div","display:flex flex-direction:row h:100vh w:100vw overflow:hidden",()=>{Ar(),Rr()})});p.password&&Kt();
10
+ <script type="module">var Ee=class{keyProp;tail;symbols;constructor(t){this.keyProp=t,this.tail={},this.symbols=[Symbol(0)]}add(t){if(this.symbols[0]in t)return!1;let r=1+(Math.clz32(Math.random()*4294967295)>>2);for(let l=this.symbols.length;l<r;l++)this.symbols.push(Symbol(l));let s=this.keyProp,o=t[s],i,a=this.tail;for(let l=this.symbols.length-1;l>=0;l--){let c=this.symbols[l];for(;(i=a[c])&&i[s]>o;)a=i;l<r&&(t[c]=a[c],a[c]=t)}return!0}has(t){return this.symbols[0]in t}fetchLast(){let t=this.tail[this.symbols[0]];if(t)return this.remove(t),t}isEmpty(){return this.tail[this.symbols[0]]===void 0}get(t){let r=this.keyProp,s,o=this.tail;for(let i=this.symbols.length-1;i>=0;i--){let a=this.symbols[i];for(;(s=o[a])&&s[r]>t;)o=s}return o[this.symbols[0]]?.[r]===t?o[this.symbols[0]]:void 0}*[Symbol.iterator](){let t=this.symbols[0],r=this.tail[t];for(;r;)yield r,r=r[t]}prev(t){return t[this.symbols[0]]}remove(t){if(!(this.symbols[0]in t))return!1;let r=this.keyProp,s=t[r],o,i=this.tail;for(let a=this.symbols.length-1;a>=0;a--){let l=this.symbols[a];for(;(o=i[l])&&o[r]>=s&&o!==t;)i=o;o===t&&(i[l]=o[l],delete o[l])}return o===t}clear(){let t=this.symbols[0],r=this.tail;for(;r;){let s=r[t];for(let o of this.symbols){if(!(o in r))break;delete r[o]}r=s}this.tail={}}},H,se=0,L,T;function ne(e,t,r,s){(e.sideEffects||=[]).push(t,r,s)}function Jr(e,t){for(let r=t.length-3;r>=0;r-=3){let s=t[r+1],o=t[r+2];switch(t[r]){case 0:o?e.classList.add(s):e.classList.remove(s);break;case 1:e.style[s]=o??"";break;case 2:e[s]=o;break;case 3:o==null?e.removeAttribute(s):e.setAttribute(s,o);break;case 4:e.removeEventListener(s,o);break}}}function yt(e){if(!H)H=new Ee("prio"),queueMicrotask(Qt);else if(!(se&1)&&(se++,se>98))throw new Error("Too many recursive updates from observes");H.add(e)}function Qt(){let e=Date.now();for(;H;){let t=H.fetchLast();if(!t)break;se&1&&se++,t.queueRun()}H=void 0,se=0,e=Date.now()-e,e>9&&console.debug(`Aberdeen queue took ${e}ms`)}function Gt(e){let t="";for(let r of e){if(typeof r=="string"){t+=`${r}`;continue}if(typeof r!="number")throw new Error("onEach() sort key must be a string, number or an array of such");let s="",o=Math.abs(Math.round(r)),i=r<0;for(;o>0;)s=String.fromCharCode(i?65534-o%65533:2+o%65533)+s,o=Math.floor(o/65533);t+=String.fromCharCode(128+(i?-s.length:s.length))+s}return t}function Qr(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCodePoint(65535-e.charCodeAt(r));return t}var Xt=0,Ie=class{prio=--Xt;remove(){let t=this.getLastNode();t&&Oe(t,this.getPrecedingNode());let r=T;T=this.el,this.delete(),T=r}},at=class{queueRun;prio=--Xt;constructor(t){this.queueRun=t,yt(this)}},ie=class extends Ie{cleaners;sideEffects;changes;constructor(t=[]){super(),this.cleaners=t}lastChild;redraw(){}getLastNode(){return we(this.lastChild)}delete(){let t=this.cleaners;for(let s=t.length-1;s>=0;s--){let o=t[s];typeof o=="function"?o():o.delete(this)}this.cleaners.length=0;let r=this.sideEffects;r&&(this.el===T&&Jr(this.el,r),this.sideEffects=void 0),H?.remove(this),this.lastChild=void 0}onChange(t,r,s,o){this.changes||(this.changes=new Map,yt(this));let i=this.changes.get(t);i||(i=new Map,this.changes.set(t,i)),i.has(r)?i.get(r)===s&&i.delete(r):i.set(r,o)}fetchHasChanges(){if(!this.changes)return!1;for(let t of this.changes.values())if(t.size>0)return delete this.changes,!0;return delete this.changes,!1}queueRun(){this.fetchHasChanges()&&(this.remove(),L=this,this.redraw(),L=void 0)}getInsertAfterNode(){return this.getLastNode()||this.getPrecedingNode()}getChildPrevSibling(){return this.lastChild}},xe=class extends ie{el;svg;prevSibling;constructor(t,r,s=!1){super(s?m.cleaners:[]),this.el=t,this.svg=r,t===m.el?(this.prevSibling=m.getChildPrevSibling(),m.lastChild=this):this.prevSibling=t.lastChild||void 0,s||m.cleaners.push(this)}getPrecedingNode(){return we(this.prevSibling)}getChildPrevSibling(){return this.lastChild||this.prevSibling}},Te=class extends xe{renderer;constructor(t,r,s){super(t,r),this.renderer=s,this.redraw()}redraw(){let t=m;m=this;try{this.renderer()}catch(r){kt(r,!0)}m=t}},Me=class extends ie{el=document.body;svg=!1;getPrecedingNode(){}},lt=class extends ie{el;renderer;svg;constructor(t,r){super(),this.el=t,this.renderer=r,this.svg=t.namespaceURI==="http://www.w3.org/2000/svg";let s=L;L=this,this.redraw(),L=s,m.cleaners.push(this)}redraw(){Te.prototype.redraw.call(this)}getPrecedingNode(){}delete(){Oe(this.getLastNode(),this.getPrecedingNode());let t=T;T=this.el,super.delete(),T=t}remove(){this.delete()}};function Oe(e,t){for(;e&&e!==t;){let r=e.previousSibling,s=gt.get(e);s&&e instanceof Element?s!==!0&&(typeof s=="function"?s(e):on(e,s),gt.set(e,!0)):e.remove(),e=r}}function we(e){return!e||e instanceof Node?e:e.getLastNode()||e.getPrecedingNode()}var ct=class extends xe{renderer;result=S({value:void 0});constructor(t){super(m.el,m.svg),this.renderer=t,this.redraw()}redraw(){let t=m;m=this;try{this.result.value=this.renderer()}catch(r){kt(r,!0)}m=t}},ft=class extends xe{key;target;svg=!1;constructor(t,r,s){super(t,t.namespaceURI==="http://www.w3.org/2000/svg"),this.key=r,this.target=s,this.redraw()}redraw(){let t=m;m=this,j(this.el,this.key,this.target.value),m=t}},ut=class extends Ie{renderer;makeSortKey;parentElement=m.el;prevSibling;target;byIndex=new Map;sortedSet=new Ee("sortKey");changedIndexes=new Map;constructor(t,r,s){super(),this.renderer=r,this.makeSortKey=s;let o=this.target=t[y]||t;if(k(o,C,this),this.prevSibling=m.getChildPrevSibling(),m.lastChild=this,m.cleaners.push(this),o instanceof Array)for(let i=0;i<o.length;i++)new ge(this,i,!1);else for(let i of o instanceof Map?o.keys():o instanceof Set?o.values():Object.keys(o))new ge(this,i,!1)}getPrecedingNode(){return we(this.prevSibling)}onChange(t,r,s,o){(!(t instanceof Array)||typeof r=="number")&&(this.changedIndexes.has(r)?this.changedIndexes.get(r)===s&&this.changedIndexes.delete(r):(this.changedIndexes.set(r,o),yt(this)))}queueRun(){let t=this.changedIndexes;this.changedIndexes=new Map;for(let r of t.keys()){let s=this.byIndex.get(r);s&&s.remove(),(this.target instanceof Set||this.target instanceof Map?this.target.has(r):r in this.target)?new ge(this,r,!0):this.byIndex.delete(r)}L=void 0}delete(){for(let t of this.byIndex.values())t.delete();H?.remove(this),this.byIndex.clear(),setTimeout(()=>{this.sortedSet.clear()},1)}getLastNode(){for(let t of this.sortedSet){let r=t.getActualLastNode();if(r)return r}}},ge=class extends ie{parent;itemIndex;sortKey;el;svg;constructor(t,r,s){super(),this.parent=t,this.itemIndex=r,this.el=t.parentElement,this.svg=m.svg,this.parent.byIndex.set(this.itemIndex,this),this.lastChild=this,s&&(L=this),this.redraw()}getPrecedingNode(){this.parent.sortedSet.add(this);let t=this.parent.sortedSet.prev(this);return t?we(t.lastChild):this.parent.getPrecedingNode()}getLastNode(){return this.getPrecedingNode()}getActualLastNode(){let t=this.lastChild;for(;t&&t!==this;){if(t instanceof Node)return t;let r=t.getLastNode();if(r)return r;t=t.getPrecedingNode()}}queueRun(){if(m!==ae&&Jt(4),!this.fetchHasChanges())return;if(this.sortKey!==void 0){let r=this.getActualLastNode();r&&Oe(r,this.getPrecedingNode())}let t=T;T=this.el,this.delete(),T=t,this.lastChild=this,L=this,this.redraw(),L=void 0}redraw(){let t,r=this.parent.target,s=this.itemIndex;r instanceof Set?t=s=S(s):r instanceof Map?(t=S(r.get(s)),s=S(s)):t=S(r[s]);let o=m;m=this;let i;try{this.parent.makeSortKey?i=this.parent.makeSortKey(t,s):i=s,i instanceof Array?i=Gt(i):typeof i!="string"&&i!=null&&(i=Gt([i])),this.sortKey!==i&&(this.parent.sortedSet.remove(this),this.sortKey=i),i!=null&&this.parent.renderer(t,s)}catch(a){kt(a,i!=null)}m=o}getInsertAfterNode(){return this.sortKey==null&&Jt(1),we(this.lastChild)}remove(){if(this.sortKey!==void 0){let r=this.getActualLastNode();r&&Oe(r,this.getPrecedingNode()),this.parent.sortedSet.remove(this),this.sortKey=void 0}let t=T;T=this.el,this.delete(),T=t}};function Q(e,t){if(e!==m.el){e.appendChild(t);return}let r=m.el,s=m.getInsertAfterNode();r.insertBefore(t,s?s.nextSibling:r.firstChild),m.lastChild=t}var ae=new Me,m=ae;function xt(e){let t=m;m=new Me;try{return e()}finally{m=t}}var C=Symbol("any"),y=Symbol("target"),U=Symbol("mapSize"),dt=new WeakMap,ve=0;function k(e,t,r=m){if(r===ae||ve)return;let s=dt.get(e);if(s||dt.set(e,s=new Map),t!==C&&s.get(C)?.has(r))return;let o=s.get(t);o||s.set(t,o=new Set),!o.has(r)&&(o.add(r),r===m?m.cleaners.push(o):m.cleaners.push(()=>{o.delete(r)}))}function le(e,t,r){if(!e||typeof e!="object")throw new Error("A.onEach requires an object");e=e[y]||e,new ut(e,t,r)}function ht(e){for(let t of Object.keys(e))return!1;return!0}var v=Symbol("empty");function Ce(e){let t=e[y]||e,r=m;if(t instanceof Array)return k(t,"length",(o,i,a)=>{!i!=!a&&r.onChange(t,v,!i,!a)}),!t.length;if(t instanceof Map||t instanceof Set)return k(t,U,(o,i,a)=>{!i!=!a&&r.onChange(t,v,!i,!a)}),!t.size;let s=ht(t);return k(t,C,(o,i,a)=>{if(i===v!=(a===v)){let l=ht(t);l!==s&&(r.onChange(t,v,l,s),s=l)}}),s}function Xr(e){if(e instanceof Array)return je(e,"length");if(e instanceof Map||e instanceof Set)return je(e,"size");let t=e[y]||e,r=0;for(let o of Object.keys(t))t[o]!==void 0&&r++;let s=Ue(r);return k(t,C,(o,i,a)=>{a===i||(a===v?s.value=++r:i===v&&(s.value=--r))}),s}function Zr(e,t,r,s){if(r===s&&r!==void 0)return;let o=dt.get(e);if(o!==void 0)for(let i of[t,C]){let a=o.get(i);if(a)for(let l of a)typeof l=="function"?l(t,r,s):l.onChange(e,t,r,s)}}var $=Zr,en={get(e,t){return t===y?e:(k(e,t),S(e[t]))},set(e,t,r){typeof r=="object"&&r&&(r=r[y]||r);let s=e.hasOwnProperty(t)?e[t]:v;return r!==s&&(e[t]=r,$(e,t,r,s)),!0},deleteProperty(e,t){let r=e.hasOwnProperty(t)?e[t]:v;return delete e[t],$(e,t,v,r),!0},has(e,t){return k(e,t),e.hasOwnProperty(t)},ownKeys(e){return k(e,C),Reflect.ownKeys(e)}};function tn(e,t,r){typeof r=="object"&&r&&(r=r[y]||r);let s=e[t];if(s===void 0&&!e.hasOwnProperty(t)&&(s=v),r!==s){let o=e.length;if(t==="length"){e.length=r;for(let i=r;i<o;i++)$(e,i,v,e[i])}else{if(typeof t=="string"){let i=0|t;String(i)===t&&i>=0&&(t=i)}e[t]=r,$(e,t,r,s)}e.length!==o&&$(e,"length",e.length,o)}return!0}var rn={get(e,t){if(t===y)return e;if(typeof t=="string"){let r=0|t;String(r)===t&&r>=0&&(t=r)}return k(e,t),S(e[t])},set:tn,deleteProperty(e,t){if(typeof t=="string"){let s=0|t;String(s)===t&&s>=0&&(t=s)}let r=e[t];return r===void 0&&!e.hasOwnProperty(t)&&(r=v),delete e[t],$(e,t,v,r),!0}};function pe(e){return{[Symbol.iterator](){return this},next(){let t=e.next();return t.done?t:{done:!1,value:S(t.value)}}}}function mt(e){return{[Symbol.iterator](){return this},next(){let t=e.next();return t.done?t:{done:!1,value:[S(t.value[0]),S(t.value[1])]}}}}function V(e){return typeof e=="object"&&e&&e[y]||e}var Wt={get(e){let t=this[y];return e=V(e),k(t,e),S(t.get(e))},set(e,t){let r=this[y];e=V(e),t=V(t);let s=r.get(e);if(s===void 0&&!r.has(e)&&(s=v),t!==s){let o=r.size;r.set(e,t),$(r,e,t,s),$(r,U,r.size,o)}return this},delete(e){let t=this[y];e=V(e);let r=t.get(e);r===void 0&&!t.has(e)&&(r=v);let s=t.delete(e);return s&&($(t,e,v,r),$(t,U,t.size,t.size+1)),s},clear(){let e=this[y],t=e.size;for(let r of e.keys())$(e,r,void 0,e.get(r));e.clear(),$(e,U,0,t)},has(e){let t=this[y];return e=V(e),k(t,e),t.has(e)},keys(){let e=this[y];return k(e,C),pe(e.keys())},values(){let e=this[y];return k(e,C),pe(e.values())},entries(){let e=this[y];return k(e,C),mt(e.entries())},[Symbol.iterator](){let e=this[y];return k(e,C),mt(e[Symbol.iterator]())}},Vt={add(e){let t=this[y];if(e=V(e),!t.has(e)){let r=t.size;t.add(e),$(t,e,e,v),$(t,U,t.size,r)}return this},delete(e){let t=this[y];if(e=V(e),!t.has(e))return!1;let r=t.size;return t.delete(e),$(t,e,v,e),$(t,U,t.size,r),!0},clear(){let e=this[y],t=e.size;if(t){for(let r of e.values())$(e,r,v,r);e.clear(),$(e,U,0,t)}},has(e){let t=this[y];return e=V(e),k(t,e),t.has(e)},keys(){let e=this[y];return k(e,C),pe(e.keys())},values(){let e=this[y];return k(e,C),pe(e.values())},entries(){let e=this[y];return k(e,C),mt(e.entries())},[Symbol.iterator](){let e=this[y];return k(e,C),pe(e[Symbol.iterator]())}},nn={get(e,t){return t===y?e:Wt.hasOwnProperty(t)?Wt[t]:t==="size"?(k(e,U),e.size):e[t]}},sn={get(e,t){return t===y?e:Vt.hasOwnProperty(t)?Vt[t]:t==="size"?(k(e,U),e.size):e[t]}},Ht=new WeakMap;function S(e){if(typeof e!="object"||e===null||e[y]!==void 0||e[O])return e;let t=Ht.get(e);if(t)return t;let r;return e instanceof Array?r=rn:e instanceof Map?r=nn:e instanceof Set?r=sn:r=en,t=new Proxy(e,r),Ht.set(e,t),t}function Ue(e){if(e instanceof Promise){let t=S({busy:!0});return e.then(r=>{t.value=r,t.busy=!1}).catch(r=>{t.error=r,t.busy=!1}),t}return S(typeof e=="object"&&e!==null?e:{value:e})}function wt(e){return e&&(e[y]||e)}var gt=new WeakMap;function on(e,t){let r=t.split(".").filter(s=>s);e.classList.add(...r),setTimeout(()=>e.remove(),2e3)}function an(e,t,r){return arguments.length>2?Zt(e,t,r,0):vt(e,t,0)}function Zt(e,t,r,s){let o=cr(e,t);return r===o?!1:typeof o=="object"&&o!==null&&typeof r=="object"&&r!==null&&o.constructor===r.constructor?vt(o,r,s):(r=pt(r),e instanceof Map?e.set(t,r):e[t]=pt(r),!0)}function ln(e,t,r){return arguments.length>2?Zt(e,t,r,Ne):vt(e,t,Ne)}function vt(e,t,r){let s=e[y];return s&&(e=s,r|=W),s=t[y],s&&(t=s,m!==ae&&!ve&&(r|=X)),Re(e,t,r)}function Re(e,t,r){r&X&&k(t,C);let s=!1;if(t instanceof Array&&e instanceof Array){let o=e.length,i=t.length;for(let a=0;a<i;a++){let l=e[a];l===void 0&&!e.hasOwnProperty(a)&&(l=v);let c=t[a];if(c===void 0&&!t.hasOwnProperty(a))delete e[a],r&W&&$(e,a,v,l),s=!0;else if(l!==c){if(typeof c=="object"&&c!==null){if(typeof l=="object"&&l!==null&&c.constructor===l.constructor&&!(O in c)){s=Re(l,c,r)||s;continue}c=ye(c,r&X)}e[a]=c,r&W&&$(e,a,c,l),s=!0}}if(i!==o){if(r&W){for(let a=i;a<o;a++){let l=e[a];delete e[a],$(e,a,v,l)}e.length=i,$(e,"length",i,o)}else e.length=i;s=!0}}else if(t instanceof Map&&e instanceof Map){for(let o of t.keys()){let i=t.get(o),a=e.get(o);if(a===void 0&&!e.has(o)&&(a=v),a!==i){if(typeof i=="object"&&i!==null){if(typeof a=="object"&&a!==null&&i.constructor===a.constructor&&!(O in i)){s=Re(a,i,r)||s;continue}i=ye(i,r&X)}e.set(o,i),r&W&&$(e,o,i,a),s=!0}}if(!(r&Ne)){for(let o of e.keys())if(!t.has(o)){let i=e.get(o);e.delete(o),r&W&&$(e,o,v,i),s=!0}}}else if(t.constructor===e.constructor){for(let o of Object.keys(t)){let i=t[o],a=e.hasOwnProperty(o)?e[o]:v;if(a!==i){if(typeof i=="object"&&i!==null){if(typeof a=="object"&&a!==null&&i.constructor===a.constructor&&!(O in i)){s=Re(a,i,r)||s;continue}i=ye(i,r&X)}e[o]=i,r&W&&$(e,o,i,a),s=!0}}if(!(r&Ne)){for(let o of Object.keys(e))if(!t.hasOwnProperty(o)){let i=e[o];delete e[o],r&W&&i!==void 0&&$(e,o,v,i),s=!0}}}else throw new Error(`Incompatible or non-object types: ${t?.constructor?.name||typeof t} vs ${e?.constructor?.name||typeof e}`);return s}var Ne=1,X=32,W=64,O=Symbol("OPAQUE"),cn=O;Promise.prototype[O]=!0;Date.prototype[O]=!0;Node.prototype[O]=!0;if(typeof Temporal<"u")for(let e of"Duration Instant PlainDate PlainDateTime PlainMonthDay PlainTime PlainYearMonth ZonedDateTime".split(" ")){let t=Temporal[e];t&&(t.prototype[O]=!0)}var be=S({});function fn(e=1,t="rem"){for(let r=0;r<=12;r++)be[r]=2**(r-3)*e+t}var un=/(\burl\([^)]*\))|("[^"]*")|(^| )\$([\w-]+)/g,er=/^\d/;function tr(e){return e.indexOf("$")<0?e:e.replace(un,(t,r,s,o,i)=>{if(r||s)return t;let a=er.test(i)?`m${i}`:i;return`${o}var(--${a})`})}var Ae;function dn(){if(!Ae){if(typeof window>"u"||!window.matchMedia)return!1;let e=window.matchMedia("(prefers-color-scheme: dark)");Ae=Ue({value:e.matches}),e.addEventListener("change",()=>Ae.value=e.matches)}return Ae.value}function ye(e,t){if(O in e)return e;if(t&X&&k(e,C),e instanceof Array)return e.map(s=>it(s,t));if(e instanceof Map){let s=new Map;for(let[o,i]of e)s.set(o,it(i,t));return s}let r=Object.create(Object.getPrototypeOf(e));for(let s of Object.keys(e))r[s]=it(e[s],t);return r}function it(e,t){return typeof e=="object"&&e!==null?ye(e,t):e}function pt(e){if(typeof e!="object"||e===null)return e;let t=0,r=e[y];return r&&(e=r,m!==ae&&!ve&&(t=X)),ye(e,t)}var hn={get(e,t){if(t===y)return je(wt(e.proxy),e.index);if(t==="value")return e.proxy[e.index]},set(e,t,r){return t==="value"?(e.proxy[e.index]=r,!0):!1}};function je(e,t){return new Proxy({proxy:e,index:t},hn)}function mn(e,t){let r,s,o=e.getAttribute("type"),i=wt(t).value;o==="checkbox"?(i===void 0&&(t.value=e.checked),r=()=>{e.checked=t.value},s=()=>{t.value=e.checked}):o==="radio"?(i===void 0&&e.checked&&(t.value=e.value),r=()=>{e.checked=t.value===e.value},s=()=>{e.checked&&(t.value=e.value)}):(s=()=>{t.value=o==="number"||o==="range"?e.value===""?null:+e.value:e.value},i===void 0&&s(),r=()=>{e.value=t.value,e.tagName==="SELECT"&&e.value!=t.value&&new at(()=>e.value=t.value)}),ar(r),e.addEventListener("input",s),_(()=>{e.removeEventListener("input",s)})}var ot=/\*\*(.+?)\*\*|\*(.+?)\*|`(.+?)`|\[(.+?)\]\((.+?)\)/g,Le={create:(e,t)=>{if(m===L)if(typeof t=="function")t(e);else{let r=t.split(".").filter(s=>s);e.classList.add(...r),(async()=>(e.offsetHeight,e.classList.remove(...r)))()}},destroy:(e,t)=>{gt.set(e,t)},html:(e,t)=>{if(e===m.el&&!e.firstChild)e.innerHTML=`${t}`;else{let r=document.createElement(m.el.tagName);for(r.innerHTML=`${t}`;r.firstChild;)Q(e,r.firstChild)}},text:(e,t)=>{Q(e,document.createTextNode(t))},rich:(e,t)=>{let r=0,s,o=String(t);for(ot.lastIndex=0;(s=ot.exec(o))!==null;){s.index>r&&Q(e,document.createTextNode(o.slice(r,s.index)));let i;if(s[1]!==void 0)i=document.createElement("strong"),i.textContent=s[1];else if(s[2]!==void 0)i=document.createElement("em"),i.textContent=s[2];else if(s[3]!==void 0)i=document.createElement("code"),i.textContent=s[3];else{let a=document.createElement("a");a.textContent=s[4],a.href=s[5],i=a}Q(e,i),r=ot.lastIndex}r<o.length&&Q(e,document.createTextNode(o.slice(r)))}};function gn(){Le.create=Le.destroy=()=>{}}function E(...e){let t=m.el,r=m.svg,s=e.length;for(let o=0;o<s;o++){let i=e[o];if(!(i==null||i===!1))if(typeof i=="string"){let a=i.length,l=0;for(let c=0;c<a;c=l+1){l=re(i," .=:#",c);let f=i[l];if(f===":"){let u="$"+i.substring(c,l);if(l+1>=a){j(t,u,e[++o]);break}if(i[l+1]===" "){let d=re(i,";",l+2),h=i.substring(l+2,d).trim();j(t,u,h),l=d}else{let d=re(i," ",l+1),h=i.substring(l+1,d);j(t,u,h),l=d}}else if(f==="="){let u=i.substring(c,l);if(l+1>=a){j(t,u,e[++o]);break}let d=i[l+1];if(d==='"'||d==="'"||d==="`"){let h=re(i,d,l+2),b=i.substring(l+2,h);j(t,u,b),l=h}else{let h=re(i," ",l+1),b=i.substring(l+1,h);j(t,u,b),l=h}}else{if(l>c){let u=i.substring(c,l);r||=u==="svg";let d=r?document.createElementNS("http://www.w3.org/2000/svg",u):document.createElement(u);Q(t,d),t=d}if(f==="#"){let u=l+1<a?i.substring(l+1):e[++o];j(t,"text",u);break}if(f==="."){let u=re(i," #=.",l+1);if(i[u]==="="&&u+1>=a)j(t,i.substring(l,u),e[++o]),l=u;else{let h=i.substring(l+1,u)||e[++o];t.classList.contains(h)||(t===m.el&&ne(m,0,h,!1),t.classList.add(h)),l=u-1}}}}}else if(typeof i=="object")if(i.constructor!==Object)if(i instanceof Node)Q(t,i),i instanceof Element&&(t=i,r=i.namespaceURI==="http://www.w3.org/2000/svg");else throw new Error(`Unexpected argument: ${i}`);else for(let a of Object.keys(i))j(t,a,i[a]);else if(typeof i=="function")new Te(t,r,i);else throw new Error(`Unexpected argument: ${i}`)}return t}function re(e,t,r){if(t.length===1){let o=e.indexOf(t,r);return o>=0?o:e.length}let s=e.length;for(let o=r;o<s;o++)if(t.indexOf(e[o])>=0)return o;return s}var rr=0;function pn(e){let t=`.AbdStl${++rr}`,r=typeof e=="string"?bt(e,t):qe(e,t);if(r){let s=nr++;oe[s]=r,_(()=>delete oe[s])}return t}var oe=Ue({}),nr=0;function Yt(e,t){let r=[];for(let s of e.split(","))for(let o of t.split(","))r.push(o.includes("&")?o.trim().replace(/&/g,s):`${s} ${o.trim()}`.trim());return r.join(",")}function qe(e,t){let r="";for(let[s,o]of Object.entries(e))o&&typeof o=="object"?s.startsWith("@")?r+=`${s}{
11
+ ${qe(o,t)}}
12
+ `:r+=qe(o,Yt(t,s)):typeof o=="string"&&(s.startsWith("@")?r+=`${s}{
13
+ ${bt(o,t)}}
14
+ `:r+=bt(o,Yt(t,s)));return r}var bn=/-([a-z])/g;function yn(e){return e.replace(bn,(t,r)=>r.toUpperCase())}var xn=/^[a-zA-Z-]+$/;function bt(e,t){let r="";for(let s=0,o=e.length;s<o;){for(;e[s]===" ";)s++;if(s>=o)break;let i=e.indexOf(":",s);if(i===-1)throw new Error(`Trailing data in style string: "${e.substring(s)}"`);let a=e.substring(s,i);if(!xn.test(a))throw new Error(`Invalid CSS key: "${a}" in style string: "${e}"`);s=i+1;let l;if(e[s]===" "){s++;let u=e.indexOf(";",s);l=e.substring(s,u===-1?o:u).trim(),s=u===-1?o:u+1}else{let u=e.indexOf(" ",s);l=e.substring(s,u===-1?o:u),s=u===-1?o:u}let c=tr(l),f=sr[a]||a;r+=typeof f=="string"?`${f}:${c};`:f.map(u=>`${u}:${c};`).join("")}return r?`${t}{${r}}
15
+ `:""}function wn(e){let t=qe(e,"");if(t){let r=nr++;oe[r]=t,_(()=>delete oe[r])}}var sr={m:"margin",mt:"margin-top",mb:"margin-bottom",ml:"margin-left",mr:"margin-right",mh:["margin-left","margin-right"],mv:["margin-top","margin-bottom"],p:"padding",pt:"padding-top",pb:"padding-bottom",pl:"padding-left",pr:"padding-right",ph:["padding-left","padding-right"],pv:["padding-top","padding-bottom"],w:"width",h:"height",bg:"background",fg:"color",r:"border-radius"};function j(e,t,r){if(typeof r=="object"&&r!==null&&r[y])t==="bind"?mn(e,r):new ft(e,t,r);else if(t[0]==="."){let s=t.substring(1).split("."),o=e.classList,i=!!r;if(e===m.el)for(let a of s){let l=o.contains(a);l!==i&&ne(m,0,a,l)}i?o.add(...s):o.remove(...s)}else if(t[0]==="$"){t=t.substring(1);let s=r==null||r===!1?"":typeof r=="string"?tr(r):String(r),o=sr[t]||t,i=e.style,a=e===m.el,l=typeof o=="string"?[o]:o;for(let c of l){let f=yn(c);a&&ne(m,1,f,i[f]),i[f]=s}}else r==null||(t in Le?Le[t](e,r):typeof r=="function"?(e.addEventListener(t,r),e===m.el&&ne(m,4,t,r)):r===!0||r===!1||t==="value"||t==="selectedIndex"?(e===m.el&&ne(m,2,t,e[t]),e[t]=r):(e===m.el&&ne(m,3,t,e.getAttribute(t)),e.setAttribute(t,r)))}function ir(e){return console.error("Error while in Aberdeen render:",e),!0}var or=ir;function vn(e){or=e||ir}function _(e){m.cleaners.push(e)}function ar(e){return new ct(e).result}function lr(e,t){new lt(e,t)}function $n(){ae.remove(),rr=0}function cr(e,t){ve++;try{return arguments.length===1?e():e instanceof Map?e.get(t):e[t]}finally{ve--}}function kn(e,t){let r;return e instanceof Array?r=S([]):e instanceof Map?r=S(new Map):r=S({}),le(e,(s,o)=>{let i=t(s,o);i!==void 0&&(r instanceof Map?(r.set(o,i),_(()=>{r.delete(o)})):(r[o]=i,_(()=>{delete r[o]})))}),r}function Pn(e,t){let r=S({});return le(e,(s,o)=>{let i=t(s,o);if(i){for(let a of Object.keys(i))r[a]=i[a];_(()=>{for(let a of Object.keys(i))delete r[a]})}}),r}function An(e,t){let r={},s=S(r);return le(e,(o,i)=>{let a=t(o,i);if(a!=null){let l=a instanceof Array?a:[a];if(l.length){for(let c of l)r[c]?s[c][i]=o:s[c]={[i]:o};_(()=>{for(let c of l)delete s[c][i],ht(r[c])&&delete s[c]})}}}),s}function Sn(e){let t=Se;Se||=new Set;try{fr(e,Se)}finally{Se=t}return e}var Se;function fr(e,t){if(e&&typeof e=="object"){let r=e.constructor.name||"unknown object";if(t.has(e)){E(`#<${r}: circular reference>`);return}t.add(e),_(()=>t.delete(e));let s=e[$t];s!==void 0?typeof s=="function"?s.call(e):E(`#${s}`):E(`#<${r}>`,"ul",()=>{le(e,(o,i)=>{E("li",()=>{e instanceof Array||E(`#${JSON.stringify(i)}: `),fr(o,t)})})})}else E(e===void 0?"#undefined":"#"+JSON.stringify(e))}var $t=Symbol("CUSTOM_DUMP");Date.prototype[$t]=function(){E("#<Date> "+this.toISOString())};function Jt(e){throw new Error(`Aberdeen internal error ${e}`)}function kt(e,t){try{or(e)===!1&&(t=!1)}catch(r){console.error(r)}try{t&&E("div.aberdeen-error#Error")}catch{}}typeof document<"u"&&xt(()=>{E(()=>{Ce(oe)&&Ce(be)||lr(document.head,()=>{E("style.abd",()=>{le(oe,e=>{E("#",e)}),E(()=>{if(Ce(be))return;let e=":root{";for(let[t,r]of Object.entries(be)){let s=er.test(String(t))?`m${t}`:t;e+=`--${s}:${r};`}e+=`}
16
+ `,E("#",e)})})})})});var n=Object.assign(E,{clean:_,clone:pt,copy:an,count:Xr,cssVars:be,CUSTOM_DUMP:$t,darkMode:dn,derive:ar,disableCreateDestroy:gn,dump:Sn,insertCss:pn,insertGlobalCss:wn,invertString:Qr,isEmpty:Ce,map:kn,merge:ln,mount:lr,multiMap:Pn,OPAQUE:O,NO_COPY:cn,onEach:le,partition:An,peek:cr,proxy:Ue,ref:je,runQueue:Qt,setErrorHandler:vn,setSpacingCssVars:fn,unmountAll:$n,unproxy:wt});var _e=()=>{};var St=typeof ABERDEEN_FAKE_WINDOW<"u"?ABERDEEN_FAKE_WINDOW:window,z=St.location,K=St.history;function ur(){return Ct({path:z.pathname,hash:z.hash,search:Object.fromEntries(new URLSearchParams(z.search)),state:K.state?.state||{}},"load",(K.state?.stack?.length||0)+1)}function Pt(e,t,r){if(e===t)return!0;if(typeof e!="object"||!e||typeof t!="object"||!t||e.constructor!==t.constructor)return!1;if(t instanceof Array){if(e.length!==t.length)return!1;for(let s=0;s<t.length;s++)if(!Pt(e[s],t[s],r))return!1}else{for(let s of Object.keys(t))if(!Pt(e[s],t[s],r))return!1;if(!r){for(let s of Object.keys(e))if(!t.hasOwnProperty(s))return!1}}return!0}function dr(e){let t=new URLSearchParams(e.search).toString();return(t?`${e.path}?${t}`:e.path)+e.hash}function Ct(e,t,r){let s=e.path||(e.p||[]).join("/")||"/";return s=(""+s).replace(/\/+$/,""),s.startsWith("/")||(s=`/${s}`),{path:s,hash:e.hash&&e.hash!=="#"?e.hash.startsWith("#")?e.hash:"#"+e.hash:"",p:s.length>1?s.slice(1).replace(/\/+$/,"").split("/"):[],nav:t,search:typeof e.search=="object"&&e.search?n.clone(e.search):{},state:typeof e.state=="object"&&e.state?n.clone(e.state):{},depth:r}}function hr(e,t=!1){if(typeof e=="string"){let r=new URL(e,z.href);if(r.host!==z.host){if(t)return;throw new Error(`Unexpected external URL: ${r.host} != ${z.host}`)}e={path:r.pathname,search:Object.fromEntries(r.searchParams),hash:r.hash}}else e instanceof Array&&(e={p:e});if(e.p&&(e.p=e.p.map(String)),e.search)for(let r of Object.keys(e.search))e.search[r]=String(e.search[r]);return e}function De(e,t="go"){gr=0,D=(K.state?.stack||[]).concat(JSON.stringify(n.unproxy(P)));let s=Ct(hr(e),t,D.length+1);n.copy(P,s),_e(t,s),K.pushState({state:s.state,stack:D},"",dr(s)),n.runQueue()}function mr(e){let t=hr(e,!0);if(!t)return!1;if(t.path!=null||t.p!=null){let r=t.path||(t.p||[]).join("/")||"/";if(r=(""+r).replace(/\/+$/,""),r.startsWith("/")||(r=`/${r}`),!At[r])return!1}if(t.search){for(let[r,s]of Object.entries(t.search))if(!At[`${r}=${s}`])return!1}return!0}var D,gr=0;var P=n.proxy({}),At=n.proxy({});function Cn(){D=K.state?.stack||[];let e=ur();_e("initial",e),n.copy(n.unproxy(P),e)}Cn();St.addEventListener("popstate",function(e){gr=0;let t=ur(),r=K.state?.stack||[];if(r.length!==D.length){let s=Math.min(D.length,r.length)-1;(s<0||r[s]===D[s])&&(t.nav=r.length<D.length?"back":"forward")}D=r,_e("popstate",t),n.copy(P,t),n.runQueue()});xt(()=>{n(()=>{P.path="/"+Array.from(P.p).join("/")}),n(()=>{let e=K.state?.stack||[],t=Ct(P,n.unproxy(P).nav,e.length+1);n.copy(P,t);let r={state:t.state,stack:e},s=dr(t);(s!==z.pathname+z.search+z.hash||!Pt(K.state,r,!1))&&(_e("replaceState",t,r,s),K.replaceState(r,"",s))}),n(()=>{let e={};e[P.path]=!0;for(let[t,r]of Object.entries(P.search))e[`${t}=${r}`]=!0;n.copy(At,e)})});var Rt="staffa:darkMode",pr=n.proxy({value:En()});function En(){try{let e=localStorage.getItem(Rt);if(e==="dark")return!0;if(e==="light")return!1}catch{}}function Et(e){pr.value=e;try{e===void 0?localStorage.removeItem(Rt):localStorage.setItem(Rt,e?"dark":"light")}catch{}}function ze(e=!1){let t=pr.value;return t===void 0&&!e?n.darkMode():t}n(()=>{ze()?n.insertGlobalCss({":root":"--s-primary:#8b7bff --s-secondary:#ef7fd0 --s-danger:#ff6b6b --s-success:#46d39a --s-warning:#fbbf24 --s-neutral:#3c4352 --s-page:#0e1015 --s-panel:#181b22 --s-raised:#222632 --s-ink:#e8eaf0 --s-on-accent:#0c0a14 --s-focus:rgba(139,123,255,0.45) --s-radius:12px --s-radius-lg:18px --s-shadow: 0 10px 34px rgba(0,0,0,0.5);",":root, .s-s.base, .s-s.panel, .s-s.raised, .s-s.neutral":"--s-link:#6db3ff"}):n.insertGlobalCss({":root":"--s-primary:#6c5ce7 --s-secondary:#d6459e --s-danger:#e23b3b --s-success:#1f9d6b --s-warning:#d97706 --s-neutral:#c7ccda --s-page:#f3f4f8 --s-panel:#ffffff --s-raised:#eceef4 --s-ink:#1b1e27 --s-on-accent:#0c0a14 --s-focus:rgba(108,92,231,0.35) --s-radius:12px --s-radius-lg:18px --s-shadow: 0 10px 30px rgba(20,24,40,0.13);",":root, .s-s.base, .s-s.panel, .s-s.raised, .s-s.neutral":"--s-link:#2563eb"})});n.setSpacingCssVars();n.insertGlobalCss({":root":"--s-gradient: linear-gradient(135deg, $s-primary, $s-secondary); --s-glow: 0 8px 24px color-mix(in srgb, $s-primary 32%, transparent); --s-page-bg: radial-gradient(120% 80% at 100% 0%, color-mix(in oklab, $s-secondary, transparent 86%), transparent 56%), radial-gradient(120% 80% at 0% 0%, color-mix(in oklab, $s-primary, transparent 87%), transparent 56%), $s-page;",":root, .s-s.base":"--s-a:$s-ink --s-b:$s-page",".s-s.base":"background: $s-page-bg;",".s-s.panel":"--s-a:$s-ink --s-b:$s-panel",".s-s.raised":"--s-a:$s-ink --s-b:$s-raised",".s-s.neutral":"--s-a:$s-ink --s-b:$s-neutral",".s-s.primary":"--s-a:$s-on-accent --s-b:$s-primary",".s-s.secondary":"--s-a:$s-on-accent --s-b:$s-secondary",".s-s.danger":"--s-a:$s-on-accent --s-b:$s-danger",".s-s.success":"--s-a:$s-on-accent --s-b:$s-success",".s-s.warning":"--s-a:$s-on-accent --s-b:$s-warning",".s-s.gradient":"--s-a:$s-on-accent --s-b:$s-primary",":root, .s-s":"--s-fg:$s-a --s-bg:$s-b --s-fg-muted: color-mix(in oklab, $s-fg, $s-bg 42%); --s-fg-faint: color-mix(in oklab, $s-fg, $s-bg 64%); --s-border: color-mix(in oklab, $s-fg, $s-bg 82%); --s-border-strong: color-mix(in oklab, $s-fg, $s-bg 68%); scrollbar-width:thin scrollbar-color: $s-border-strong transparent; background:$s-bg color:$s-fg",".s-s::-webkit-scrollbar, .s-s ::-webkit-scrollbar":"width:10px height:10px",".s-s::-webkit-scrollbar-track, .s-s ::-webkit-scrollbar-track":"background:transparent",".s-s::-webkit-scrollbar-thumb, .s-s ::-webkit-scrollbar-thumb":"background:$s-border-strong border-radius:99px border: 2px solid transparent; background-clip:padding-box",".s-s::-webkit-scrollbar-thumb:hover, .s-s ::-webkit-scrollbar-thumb:hover":"background:$s-fg-faint background-clip:padding-box",".s-s.tonal":"--s-fg:$s-b --s-bg: color-mix(in srgb, $s-b 16%, transparent);",".s-s.outlined":"--s-fg:$s-b --s-bg:inherit background:transparent --s-border: color-mix(in srgb, $s-fg 55%, $s-bg);",".s-s.filled":"--s-fg:$s-a --s-bg:$s-b background:$s-bg;",".s-s.gradient:not(.tonal):not(.outlined)":"background: $s-gradient;",":root, .s-s.base, .s-s.panel, .s-s.raised, .s-s.neutral":"--s-accent:$s-primary",".s-s.primary, .s-s.secondary, .s-s.danger, .s-s.success, .s-s.warning, .s-s.gradient":"--s-accent:$s-fg --s-link:$s-fg"});n.insertGlobalCss({"*, *::before, *::after":"box-sizing:border-box",html:"text-size-adjust:100%",body:"m:0 line-height:1.5 font-family: system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; -webkit-font-smoothing:antialiased",a:"color: $s-link; text-decoration:underline text-underline-offset:2px; transition: color 0.12s, filter 0.12s;","a:hover":"filter: brightness(1.15)","input, button, textarea, select":"font:inherit color:inherit","code, kbd, samp, pre":"font-family: ui-monospace, 'SF Mono', Menlo, Consolas, monospace;",code:"background: color-mix(in oklab, $s-fg, $s-bg 86%); padding: 0.12em 0.34em; r:4px font-size:0.9em",pre:"background: color-mix(in oklab, $s-fg, $s-bg 92%); p:$3 r: $s-radius; overflow:auto","pre code":"background:transparent p:0","img, svg, video, canvas":"max-width:100% h:auto",hr:"border:0 border-top: 1px solid $s-border;","::placeholder":"color: $s-fg-faint; opacity:1",":focus-visible":"outline: 2px solid $s-focus; outline-offset:2px",small:"color:$s-fg-muted font-size:0.9em","@media (prefers-reduced-motion: reduce)":{"*, *::before, *::after":"transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; scroll-behavior: auto !important;"}});n.insertGlobalCss({".s-preload, .s-preload *, .s-preload *::before, .s-preload *::after":"transition: none !important; animation: none !important;"});if(typeof document<"u"&&typeof requestAnimationFrame=="function"){let e=document.documentElement;e.classList.add("s-preload"),requestAnimationFrame(()=>requestAnimationFrame(()=>e.classList.remove("s-preload")))}var In="p, ul, ol, dl, blockquote, pre, table, figure, hr, h1, h2, h3, h4, h5, h6";n.insertGlobalCss({[`${In}`]:{"&":"margin:0","&:not(:first-child)":"margin-top:$3"},"h1, h2, h3, h4, h5, h6":{"&":"line-height:1.15 font-weight:700 text-wrap:balance","&:not(:first-child)":"margin-top:1.4em"},h1:"font-size:2em font-weight:800 letter-spacing:-0.022em",h2:"font-size:1.55em letter-spacing:-0.018em",h3:"font-size:1.3em letter-spacing:-0.011em",h4:"font-size:1.1em",h5:"font-size:0.95em letter-spacing:0.005em",h6:"font-size:0.8em fg:$s-fg-muted text-transform:uppercase letter-spacing:0.07em","ul, ol":{"&":"padding-left:1.5em","> li:not(:first-child), li > &:not(:first-child)":"margin-top:$1"},blockquote:"border-left: 3px solid $s-border; padding-left: $3; fg: $s-fg-muted",table:"border-collapse:collapse","th, td":"text-align:left padding: $1 $2; border-bottom: 1px solid $s-border; vertical-align:top",th:"font-weight:600","thead th":"border-bottom: 2px solid $s-border-strong;",dt:"font-weight:600",dd:"margin-left: 1.5em",figcaption:"fg:$s-fg-muted font-size:0.9em margin-top:$1 text-align:center"});var Tn=0;function B(e="s"){return`${e}-${++Tn}`}function x(e,...t){e!=null&&(typeof e=="function"?e(...t):n("rich=",e))}n.insertGlobalCss({".s-field":{"&":"display:flex flex-direction:column gap:$1","> label":"font-weight:600 font-size:0.9em fg:$s-fg user-select:none"},".s-req":"fg:$s-danger margin-left:2px",".s-help":"font-size:0.82em fg:$s-fg-muted",".s-error":"font-size:0.82em fg:$s-danger",".s-input":{"&":"w:100% bg:$s-panel fg:$s-ink border: 1px solid $s-border; r:$s-radius padding: 0.55em 0.7em; transition: border-color 0.15s, box-shadow 0.15s;","&:hover:not(:disabled)":"border-color:$s-border-strong","&:focus-visible":"border-color:$s-accent box-shadow: 0 0 0 3px $s-focus; outline:none","&:disabled":"opacity:0.6 cursor:not-allowed","&[aria-invalid=true]":"border-color:$s-danger"}});function Y(e,t){let r=e.id??B("field"),s=()=>!!e.error;n("div.s-field",e.attrs,()=>{n(()=>{e.label!=null&&n(`label for=${r}`,()=>{x(e.label),e.required&&n("span.s-req aria-hidden=true #*")})}),t(r,s),n(()=>{e.help!=null&&!e.error&&n("div.s-help",()=>x(e.help))}),n(()=>{e.error&&n("div.s-error role=alert #",e.error)})})}function ce(e,t,r,s){n(`id=${t}`),e.name&&n(`name=${e.name}`),n(()=>{e.disabled&&n("disabled=true")}),n(()=>{e.required&&n("aria-required=true")}),n(()=>n("aria-invalid=",r()?"true":"false")),s&&n("bind=",s)}n.insertGlobalCss({".s-ac":{"&":"position:relative","> .s-control":"display:flex flex-wrap:wrap align-items:center gap:$1 bg:$s-panel fg:$s-ink border: 1px solid $s-border; r:$s-radius padding: 0.3em 0.4em; cursor:text; transition: border-color 0.15s, box-shadow 0.15s;","> .s-control:hover":"border-color:$s-border-strong","> .s-control:focus-within":"border-color:$s-accent box-shadow: 0 0 0 3px $s-focus;","&[aria-invalid=true] > .s-control":"border-color:$s-danger",".s-chip":"display:inline-flex align-items:center gap:$1 font-size:0.85em bg:$s-raised border: 1px solid $s-border; r:$s-radius padding: 0.1em 0.2em 0.1em 0.5em;",".s-chip > button":"cursor:pointer border:0 background:transparent fg:$s-fg-muted font-size:1.1em line-height:1 padding: 0 0.2em; r:4px",".s-chip > button:hover":"fg:$s-fg background:$s-border",input:"flex:1 min-width:6ch border:0 background:transparent color:inherit outline:none padding:0.25em","> .s-menu":"position:absolute top:100% left:0 right:0 z-index:20 margin-top:4px max-height:15rem overflow-y:auto list-style:none p:$1 margin-bottom:0 bg:$s-panel border: 1px solid $s-border; r:$s-radius box-shadow:$s-shadow","> .s-menu li":"margin:0",".s-option":"padding: 0.45em 0.6em; r:6px cursor:pointer transition: background 0.1s;",".s-option[aria-selected=true]":"background: color-mix(in srgb, $s-fg 10%, transparent);",".s-add":"fg:$s-accent font-style:italic",".s-empty":"padding: 0.45em 0.6em; fg:$s-fg-muted"}});function Mn(e){return typeof e=="string"?{value:e,label:e}:{value:e.value,label:e.label??e.value}}function br(e){let t=B("ac-menu"),r=n.proxy({query:"",open:!1,active:0}),s=()=>(typeof e.options=="function"?e.options():e.options).map(Mn),o=()=>{let d=e.bind?.value;return d==null||d===""?[]:Array.isArray(d)?d:[d]},i=d=>s().find(h=>h.value===d)?.label??d;if(!e.multi){let d=e.bind?n.peek(e.bind,"value"):void 0;typeof d=="string"&&d&&(r.query=n.peek(()=>i(d)))}let a=()=>{let d=new Set(o()),h=s();e.multi&&(h=h.filter(A=>!d.has(A.value)));let b=r.query.trim().toLowerCase();return b&&(h=h.filter(A=>A.label.toLowerCase().includes(b))),h},l=(d,h)=>{if(e.multi){let b=Array.isArray(e.bind?.value)?[...e.bind.value]:[];b.includes(d)||b.push(d),e.bind&&(e.bind.value=b),r.query=""}else e.bind&&(e.bind.value=d),r.query=i(d),r.open=!1;r.active=0,h?.focus()},c=d=>{if(!e.bind)return;let h=e.bind.value??[];e.bind.value=h.filter(b=>b!==d)};Y(e,(d,h)=>{n("div.s-ac",e.inputAttrs,()=>{n(()=>n("aria-invalid=",h()?"true":"false"));let b;n("div.s-control",()=>{n("click=",()=>b?.focus()),n(()=>{if(e.multi)for(let A of o())n("span.s-chip",()=>{n("span #",n.peek(()=>i(A))),n("button type=button aria-label=",`Remove ${A}`,()=>{n("#\xD7"),n("click=",R=>{R.stopPropagation(),c(A),b?.focus()})})})}),b=n("input type=text role=combobox autocomplete=off",()=>{n(`id=${d} aria-controls=${t} aria-autocomplete=list`),e.placeholder!=null&&n("placeholder=",e.placeholder),e.disabled&&n("disabled=true"),e.required&&n("aria-required=true"),n("bind=",n.ref(r,"query")),n(()=>n("aria-expanded=",r.open?"true":"false")),n(()=>{let R=a()[r.active];n("aria-activedescendant=",r.open&&R?`${t}-opt-${r.active}`:"")}),n("input=",()=>{r.open=!0,r.active=0}),n("focus=",()=>{r.open=!0}),n("blur=",()=>{setTimeout(()=>u(),150)}),n("keydown=",A=>f(A,b))})}),n(()=>{if(!r.open)return;let A=a(),R=r.query.trim(),Ft=e.allowCustom!==!1&&R!==""&&!A.some(te=>te.label.toLowerCase()===R.toLowerCase());n("ul.s-menu role=listbox",`id=${t}`,()=>{A.forEach((te,st)=>{n("li.s-option role=option",`id=${t}-opt-${st}`,()=>{n(()=>n("aria-selected=",r.active===st?"true":"false")),n("#",te.label),n("mousedown=",Yr=>Yr.preventDefault()),n("click=",()=>l(te.value,b)),n("mousemove=",()=>{r.active=st})})}),Ft&&n("li.s-option.s-add role=option",()=>{n("#",`Add "${R}"`),n("mousedown=",te=>te.preventDefault()),n("click=",()=>l(R,b))}),A.length===0&&!Ft&&n("li.s-empty #No matches")})}),n(()=>{if(e.name)if(e.multi)for(let A of o())n("input type=hidden",()=>{n("name=",e.name),n("value=",A)});else n("input type=hidden",()=>{n("name=",e.name),n("value=",o()[0]??"")})})})});function f(d,h){let b=a(),A=b.length-1;if(d.key==="ArrowDown")d.preventDefault(),r.open=!0,r.active=Math.min(A,r.active+1);else if(d.key==="ArrowUp")d.preventDefault(),r.active=Math.max(0,r.active-1);else if(d.key==="Enter"){d.preventDefault();let R=b[r.active];R?l(R.value,h):e.allowCustom!==!1&&r.query.trim()?l(r.query.trim(),h):r.open&&(r.open=!1)}else if(d.key==="Escape")r.open=!1,e.multi||(r.query=i(o()[0]??""));else if(d.key==="Backspace"&&e.multi&&r.query===""){let R=o();R.length&&c(R[R.length-1])}}function u(){r.open=!1,e.multi?r.query="":e.allowCustom!==!1&&r.query.trim()?l(r.query.trim()):r.query=i(o()[0]??"")}}n.insertGlobalCss({".s-box":{"&":"display:flex flex-direction:column border: 1px solid $s-border; r: $s-radius-lg; overflow:hidden box-shadow: $s-shadow;","&:not(:first-child)":"margin-top: $3","> header":"display:flex align-items:center gap:$2 padding: $2 $3; border-bottom: 1px solid $s-border; font-weight:600","> footer":"display:flex align-items:center gap:$2 padding: $2 $3; border-top: 1px solid $s-border;","> div":"p:$3 gap:$3"}});function yr(e={}){let t=typeof e=="function"?{content:e}:e;n("section.s-box.s-s.panel",t.attrs,()=>{n(()=>{t.header!=null&&n("header.s-s.raised",t.headerAttrs,()=>x(t.header))}),n("div",t.contentAttrs,()=>{t.content&&t.content()}),n(()=>{t.footer!=null&&n("footer.s-s.raised",t.footerAttrs,()=>x(t.footer))})})}n.insertGlobalCss({".s-btn":{"&":"display:inline-flex align-items:center justify-content:center gap:$2 font-weight:600 line-height:1.2 white-space:nowrap cursor:pointer text-decoration:none border: 1px solid $s-border; r: $s-radius; padding: 0.5em 1em; transition: background 0.15s, border-color 0.15s, color 0.15s, filter 0.15s, box-shadow 0.15s, transform 0.08s;","&:focus-visible":"outline:none box-shadow: 0 0 0 3px $s-focus;","&:disabled, &[aria-disabled=true]":"opacity:0.45 cursor:not-allowed pointer-events:none filter:saturate(0.6)","&:hover":"filter: brightness(1.08); transform: translateY(-1px)","&.tonal:hover, &.outlined:hover":"background: color-mix(in srgb, $s-b 26%, transparent);","&.gradient:not(.tonal):not(.outlined)":"border:0 box-shadow: $s-glow;","&.gradient:not(.tonal):not(.outlined):hover":"filter: brightness(1.06); box-shadow: 0 10px 28px color-mix(in srgb, $s-primary 42%, transparent); transform: translateY(-1px);","&:active:not(:disabled):not([aria-disabled=true])":"transform: translateY(1px)","&.small, .small > &":"padding: 0.32em 0.7em; font-size:0.85em","&.large, .large > &":"padding: 0.66em 1.3em; font-size:1.1em"}});var On=/\.(gradient|primary|secondary|neutral|danger|success|warning|base|panel|raised)(\.|\s|$)/;function M(e={}){let t=typeof e=="string"?{text:e}:typeof e=="function"?{content:e}:e,r=t.href!=null?"a":"button",s=t.attrs&&On.test(t.attrs)?"":".gradient";n(`${r}.s-btn.s-s${s}`,t.attrs,()=>{t.href!=null?(n(`href=${t.href} role=button`),t.disabled&&n("aria-disabled=true")):(n("type=",t.type??"button"),t.disabled&&n("disabled=true")),t.ariaLabel&&n("aria-label=",t.ariaLabel),t.click&&n("click=",t.click),x(t.icon),t.content?t.content():t.text!=null&&n("#",t.text)})}n.insertGlobalCss({".s-bgroup":{"&":"display:inline-flex align-items:stretch","&.s-spaced":"gap:$2 flex-wrap:wrap","&.s-vertical":"flex-direction:column","&.s-attached":"gap:0","&.s-attached:not(.s-vertical) > .s-btn:not(:first-child)":"margin-left:-1px","&.s-attached:not(.s-vertical) > .s-btn:not(:first-child):not(:last-child)":"r:0","&.s-attached:not(.s-vertical) > .s-btn:first-child:not(:last-child)":"border-top-right-radius:0 border-bottom-right-radius:0","&.s-attached:not(.s-vertical) > .s-btn:last-child:not(:first-child)":"border-top-left-radius:0 border-bottom-left-radius:0","&.s-attached.s-vertical > .s-btn:not(:first-child)":"margin-top:-1px","&.s-attached.s-vertical > .s-btn:not(:first-child):not(:last-child)":"r:0","&.s-attached.s-vertical > .s-btn:first-child:not(:last-child)":"border-bottom-left-radius:0 border-bottom-right-radius:0","&.s-attached.s-vertical > .s-btn:last-child:not(:first-child)":"border-top-left-radius:0 border-top-right-radius:0","&.s-attached > .s-btn:hover, &.s-attached > .s-btn:focus-visible":"z-index:1"}});function J(e={}){let r=`.s-${e.layout??"attached"}${e.vertical?".s-vertical":""}`;n(`div.s-bgroup${r} role=group`,e.attrs,()=>{if(e.buttons)for(let s of e.buttons)M(s);e.content&&e.content()})}function xr(e){n(()=>{let t=e.bind.value;J({attrs:e.attrs,buttons:Object.entries(e.options).map(([r,s])=>({text:typeof s=="string"?s:void 0,content:typeof s=="function"?s:void 0,attrs:t===r?".primary":".neutral .outlined",click:()=>{e.bind.value=e.allowDeselect&&t===r?null:r}}))})}),e.name&&n(()=>n(`input type=hidden name=${e.name} value=`,e.bind.value??""))}n.insertGlobalCss({".s-check":{"&":"display:flex flex-direction:column gap:$1","> label":"display:flex align-items:center gap:$2 cursor:pointer user-select:none","> label:has(input:disabled)":"cursor:not-allowed opacity:0.6",input:"width:1.15em height:1.15em accent-color:$s-accent cursor:inherit m:0"}});function wr(e={}){let t=e.id??B("check");n("div.s-check",e.attrs,()=>{n(`label for=${t}`,()=>{n("input type=checkbox",e.inputAttrs,()=>{n(`id=${t}`),e.name&&n(`name=${e.name}`),e.checked&&!e.bind&&n("checked=true"),e.change&&n("change=",e.change),n(()=>{e.disabled&&n("disabled=true")}),n(()=>{e.required&&n("aria-required=true")}),e.bind&&n("bind=",e.bind)}),n(()=>{e.label!=null&&x(e.label),e.required&&n("span.s-req aria-hidden=true #*")})}),n(()=>{e.help!=null&&!e.error&&n("div.s-help",()=>x(e.help))}),n(()=>{e.error&&n("div.s-error role=alert #",e.error)})})}n.insertGlobalCss({".s-form":{"&":"display:flex flex-direction:column gap:$3","&.grid":"display:grid grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr)); gap:$3","&.grid > .s-wide, &.grid > footer":"grid-column: 1 / -1;","> footer":"display:flex align-items:center gap:$2 flex-wrap:wrap margin-top:$1"}});function vr(e={}){let t=typeof e=="function"?{content:e}:e;n("form.s-form",t.attrs,()=>{n(()=>{n(".grid=",t.layout==="grid")}),n("submit=",r=>{if(r.preventDefault(),t.submit){let s=new FormData(r.target),o={};for(let i of new Set(s.keys())){let a=s.getAll(i);o[i]=a.length===1?a[0]:a}t.submit(o,r)}}),t.content&&t.content(),n(()=>{t.actions&&n("footer",t.actionsAttrs,()=>t.actions?.())})})}n.insertGlobalCss({".s-menu-list":"position:fixed z-index:350 min-width:10rem display:flex flex-direction:column p:$1 border: 1px solid $s-border; r:$s-radius-lg box-shadow:$s-shadow overflow-y:auto max-height:min(80vh,28rem) transition: opacity 0.15s, transform 0.15s;",".s-menu-list.hidden":"opacity:0 pointer-events:none transform:translateY(-6px)",".s-menu-item, .s-menu-item-link":"display:flex align-items:center gap:$2 w:100% padding: 0.5em 0.65em; r:$s-radius cursor:pointer text-align:left font-size:0.9em border:0 background:transparent fg:$s-fg text-decoration:none transition: background 0.12s, color 0.12s, transform 0.12s, box-shadow 0.12s;",".s-menu-item:hover:not([aria-disabled=true]):not([aria-current=page]), .s-menu-item-link:hover:not([aria-current=page])":"background: color-mix(in srgb, $s-fg 10%, transparent);",".s-menu-item[aria-current=page], .s-menu-item-link[aria-current=page]":"color:$s-on-accent font-weight:600 background: $s-gradient; box-shadow: 0 3px 10px color-mix(in srgb, $s-primary 38%, transparent);",".s-menu-item[aria-current=page] .s-menu-icon, .s-menu-item-link[aria-current=page] .s-menu-icon":"color:$s-on-accent",".s-menu-item[aria-current=page]:hover, .s-menu-item-link[aria-current=page]:hover":"filter:brightness(1.06)",".s-menu-item:focus-visible, .s-menu-item-link:focus-visible":"outline:none background: color-mix(in srgb, $s-fg 10%, transparent); box-shadow: 0 0 0 2px inset $s-focus;",".s-menu-item[aria-disabled=true], .s-menu-item-link[aria-disabled=true]":"opacity:0.45 cursor:not-allowed pointer-events:none",".s-menu-icon":"fg:$s-fg-muted flex-shrink:0","hr.s-menu-sep":"border:0 height:1px margin: $1 0.6rem; background: linear-gradient(to right, transparent, $s-border-strong 18%, $s-border-strong 82%, transparent);"});function Ke(e,t){n("keydown=",r=>{if(r.key!=="ArrowDown"&&r.key!=="ArrowUp"&&r.key!=="Home"&&r.key!=="End")return;r.preventDefault();let o=[...r.currentTarget.querySelectorAll(".s-menu-item, .s-menu-item-link")].filter(c=>c.getAttribute("aria-disabled")!=="true");if(!o.length)return;let i=o.indexOf(document.activeElement),a=r.key==="ArrowUp"?-1:1,l=r.key==="Home"?0:r.key==="End"?o.length-1:i<0?a>0?0:o.length-1:(i+a+o.length)%o.length;o[l].focus()});for(let r of e){if(typeof r=="function"){r();continue}if("separator"in r){n("hr.s-menu-sep");continue}n(r.href?"a.s-menu-item-link":"button.s-menu-item type=button",r.attrs,()=>{r.href&&(n("href=",r.href),r.target&&n("target=",r.target),n(()=>{mr(r.href)&&n("aria-current=page")})),r.disabled&&n("aria-disabled=true"),n("click=",s=>{if(r.disabled){s.preventDefault();return}t?.(),r.click?.(s)}),r.icon&&n("span.s-menu-icon",()=>x(r.icon)),x(r.label)})}}var ue=n.proxy({opts:null});function fe(){let e=ue.opts?.anchor;ue.opts=null,e?.focus()}function Nn(e,t){let r=e.offsetWidth,s=e.offsetHeight,o=window.innerWidth,i=window.innerHeight,a=4,l=t.left;l+r>o-8&&(l=Math.max(8,t.right-r));let c=t.bottom+a;c+s>i-8&&t.top-s-a>=8&&(c=t.top-s-a),e.style.left=Math.max(8,l)+"px",e.style.top=Math.max(8,c)+"px"}n.mount(document.body,()=>{let e=ue.opts;if(!e)return;let t=n("div.s-menu-list.s-s.panel create=hidden destroy=hidden",e.dropdownAttrs,()=>{Ke(e.items,fe)}),r=o=>{let i=o.target;!t.contains(i)&&!e.anchor.contains(i)&&fe()},s=o=>{(o.key==="Escape"||o.key==="Tab")&&(o.preventDefault(),fe())};document.addEventListener("click",r,!0),document.addEventListener("keydown",s,!0),n.clean(()=>{document.removeEventListener("click",r,!0),document.removeEventListener("keydown",s,!0)}),requestAnimationFrame(()=>{document.body.contains(t)&&(Nn(t,e.anchor.getBoundingClientRect()),t.querySelector(".s-menu-item:not([aria-disabled=true]), .s-menu-item-link:not([aria-disabled=true])")?.focus())})});function It(e){return ue.opts=e,fe}function Be(e){let t=null;n.clean(()=>{ue.opts?.anchor===t&&fe()}),M({icon:()=>n("span aria-hidden=true #\u2630"),ariaLabel:"Open menu",attrs:".neutral .outlined",...e.button,click:r=>{if(t=r.currentTarget,ue.opts?.anchor===t){fe();return}It({items:e.items,anchor:t,dropdownAttrs:e.dropdownAttrs})}})}n.insertGlobalCss({".s-main":{"&":"display:flex flex-direction:column min-height:100vh max-height:100vh container-type:inline-size","> header":"border-bottom: 1px solid $s-border; position:sticky top:0 z-index:10","> footer":"border-top: 1px solid $s-border; fg:$s-fg-muted","> header > .s-bar, > footer > .s-bar":"display:flex align-items:center width:100% margin-inline:auto gap:$3 padding: $2 $3;","> header .s-header-icon":"display:flex align-items:center font-size:1.4em background: $s-gradient; -webkit-background-clip:text; background-clip:text; color:transparent;","> header .s-titles":"display:flex flex-direction:column min-width:0 flex:1","> header .s-title":"font-weight:800 font-size:1.1em line-height:1.2 overflow:hidden text-overflow:ellipsis white-space:nowrap letter-spacing:-0.01em background: $s-gradient; -webkit-background-clip:text; background-clip:text; color:transparent; width:fit-content max-width:100%","> header .s-subtitle":"fg:$s-fg-muted font-size:0.85em overflow:hidden text-overflow:ellipsis white-space:nowrap","> header .s-menu":"display:flex align-items:center gap:$2",".s-body":"flex:1 overflow:hidden display:flex flex-direction:row min-height:0 justify-content:center",".s-body-inner":"flex:1 display:flex flex-direction:row min-height:0","&.s-nav-right .s-body-inner":"flex-direction:row-reverse",".s-nav-sep":"width:1px flex-shrink:0 align-self:stretch margin: 0.6rem 0; border:0 background: linear-gradient(to bottom, transparent, $s-border-strong 18%, $s-border-strong 82%, transparent);","> main, .s-body main":"flex:1 overflow-y:auto display:flex flex-direction:column","> main > .s-content, .s-body main > .s-content":"width:100% flex:1 p:$3","> main.s-scroll-y, .s-body main.s-scroll-y":"margin-right:$3"},".s-nav-panel":{"&":"display:flex flex-direction:column overflow-y:auto flex-shrink:0 max-width:228px padding:$3 gap:$1 background:transparent"},".s-main.s-nav-left .s-nav-trigger, .s-main.s-nav-right .s-nav-trigger":"display:none",".s-main.s-nav-btn-only .s-nav-panel":"display:none",".s-main.s-nav-btn-only .s-nav-trigger":"display:flex","@container (max-width: 640px)":{".s-main.s-nav-left .s-nav-panel, .s-main.s-nav-right .s-nav-panel, .s-main .s-nav-sep":"display:none",".s-main.s-nav-left .s-nav-trigger, .s-main.s-nav-right .s-nav-trigger":"display:flex",".s-content > .s-box":"margin-inline: calc(-1 * $3); r:0 border-inline:0"}});function kr(e={}){let t=e.nav,r=e.navPosition??"left",s=t!=null&&t.items.length>0,o=s?r==="button"?".s-nav-btn-only":`.s-nav-${r}`:"";n(`div.s-main.s-s.base${o}`,e.attrs,()=>{n(()=>{(e.title!=null||e.subtitle!=null||e.icon!=null||e.menu!=null||s)&&n("header.s-s.raised",e.topbarAttrs,()=>{n("div.s-bar",()=>{n(()=>{e.maxWidth!=null&&n("max-width:",e.maxWidth)}),n(()=>{s&&n("div.s-nav-trigger",()=>{Be({...t,button:{icon:()=>n("span aria-hidden=true #\u2630"),ariaLabel:"Open navigation",attrs:".neutral .outlined .small",...t.button}})})}),n(()=>{e.icon!=null&&n("div.s-header-icon",()=>x(e.icon))}),n("div.s-titles",()=>{n(()=>{e.title!=null&&n("div.s-title",()=>x(e.title))}),n(()=>{e.subtitle!=null&&n("div.s-subtitle",()=>x(e.subtitle))})}),n(()=>{e.menu&&n("div.s-menu",()=>e.menu?.())})})})}),s&&r!=="button"?n("div.s-body",()=>{n("div.s-body-inner",()=>{n(()=>{e.maxWidth!=null&&n("max-width:",e.maxWidth)}),n(`nav.s-nav-panel.s-s.raised.s-nav-${r}`,e.navAttrs,()=>{Ke(t.items)}),n("div.s-nav-sep aria-hidden=true"),$r(e,!1)})}):$r(e,!0),n(()=>{e.footer!=null&&n("footer",()=>{n("div.s-bar",()=>{n(()=>{e.maxWidth!=null&&n("max-width:",e.maxWidth)}),x(e.footer)})})})})}function $r(e,t){let r=n("main",()=>{n("div.s-content",e.contentAttrs,()=>{t&&n(()=>{e.maxWidth!=null&&n("margin-inline:auto max-width:",e.maxWidth)}),e.content&&e.content()})});jn(r)}function jn(e){if(typeof ResizeObserver>"u")return;let t=()=>e.classList.toggle("s-scroll-y",e.offsetWidth>e.clientWidth),r=new ResizeObserver(t);r.observe(e),e.firstElementChild&&r.observe(e.firstElementChild),t(),n.clean(()=>r.disconnect())}function Fe(e={}){Y(e,(t,r)=>{n("input.s-input",e.inputAttrs,()=>{n("type=",e.type??"text"),e.placeholder!=null&&n("placeholder=",e.placeholder),e.autocomplete!=null&&n("autocomplete=",e.autocomplete),e.value!=null&&!e.bind&&n("value=",e.value),e.input&&n("input=",e.input),e.change&&n("change=",e.change),ce(e,t,r,e.bind)})})}n.insertGlobalCss({".s-backdrop":{"&":"position:fixed inset:0 z-index:200 display:block background: rgba(0,0,0,0.55); transition: opacity 0.4s ease-in-out;","&.hidden":"opacity:0 pointer-events:none"},".s-dialog":{"&":"position:fixed z-index:200 top:50% left:50% display:flex flex-direction:column transform:translate(-50%,-50%) min-width:20rem max-width:min(90vw,44rem) max-height:min(88vh,800px) border: 1px solid $s-border; r: $s-radius-lg; box-shadow: $s-shadow; overflow:hidden transition: opacity 0.2s ease-out, transform 0.2s ease-out;","> header":"display:flex align-items:center gap:$2 padding: $2 $3; border-bottom: 1px solid $s-border; font-weight:600 flex-shrink:0","> footer":"display:flex align-items:center gap:$2 padding: $2 $3; border-top: 1px solid $s-border; flex-shrink:0","> div":"p:$3 gap:$3 display:flex flex-direction:column overflow-y:auto flex:1 min-height:0","&.hidden":"opacity:0 pointer-events:none transform: translate(-50%, calc(-50% + 20px)); pointer-events:none"}});var Z=n.proxy({}),Tt=0,Ln=n.derive(()=>{let e=Object.keys(Z);if(e.length)return e[e.length-1]});n.mount(document.body,()=>{n.onEach(Z,({resolve:e,opts:t},r)=>{let s=()=>{delete Z[r]};n.clean(()=>{t.onClose?.(),e()});let o=n.derive(()=>Ln.value!=r);n("div.s-backdrop create=hidden destroy=hidden .hidden=",o,"click=",()=>{t.allowCancel!==!1&&s()}),n("div.s-dialog.s-s.panel create=hidden destroy=hidden",t.attrs,()=>{n(()=>{t.header!=null&&n("header.s-s.raised",t.headerAttrs,()=>x(t.header))}),n("div",t.contentAttrs,()=>{x(t.content,s)}),n(()=>{t.footer!=null&&n("footer.s-s.raised",t.footerAttrs,()=>x(t.footer))})})})});function $e(e){Tt||document.addEventListener("keydown",r=>{if(r.key==="Escape"&&e.allowCancel!==!1){let s=n.unproxy(Z);for(let o=Tt;o>0;o--)if(s[o]){s[o].opts.allowCancel!==!1&&delete Z[o];break}}});let t=++Tt;return e.cancelWithScope!==!1&&n.clean(()=>{delete Z[t]}),new Promise(r=>{Z[t]={resolve:r,opts:e}})}function Pr(e,t={}){return $e({header:"Alert",allowCancel:!0,content:r=>{n("p",()=>{n("#",e)}),J({layout:"spaced",attrs:"align-self:flex-end",content:()=>{M({text:"OK",click:r})}})},...t})}function Ar(e,t={}){return new Promise(r=>{let s=!1;$e({header:"Confirm",allowCancel:!0,content:o=>{n("p",()=>{n("#",e)}),J({layout:"spaced",attrs:"align-self:flex-end",content:()=>{M({text:"Cancel",attrs:".neutral .outlined",click:o}),M({text:"OK",click:()=>{s=!0,o()}})}})},...t,onClose:()=>{r(s),t.onClose?.()}})})}function Sr(e,t="",r={}){return new Promise(s=>{let o=null;$e({header:"Input",allowCancel:!0,content:i=>{n("p",()=>{n("#",e)});let a=n.proxy({value:t});n("form display:contents",()=>{n("submit=",l=>{l.preventDefault(),o=a.value,i()}),Fe({bind:n.ref(a,"value")}),J({layout:"spaced",attrs:"align-self:flex-end",content:()=>{M({text:"Cancel",attrs:".neutral .outlined",type:"button",click:i}),M({text:"OK",type:"submit"})}})})},...r,onClose:()=>{s(o),r.onClose?.()}})})}n.insertGlobalCss({".s-select_wrap":{"&":"position:relative display:block",select:"w:100% cursor:pointer padding-right:2.2em; appearance:none","&::after":"content: '\u25BE'; position:absolute right:0.7em top:50%; transform: translateY(-50%); pointer-events:none fg:$s-fg-muted font-size:0.85em"}});function Cr(e){Y(e,(t,r)=>{n("div.s-select_wrap",e.inputAttrs,()=>{n("select.s-input",()=>{ce(e,t,r),n("change=",s=>{e.bind&&(e.bind.value=s.target.value)}),n(()=>{let s=typeof e.options=="function"?e.options():e.options,o=e.bind?.value??"";e.placeholder!=null&&n("option",()=>{n("value= disabled=true hidden=true"),o||n("selected=true"),n("#",e.placeholder)});for(let i of s){let a=typeof i=="string"?{value:i,label:i}:{value:i.value,label:i.label??i.value};n("option",()=>{n("value=",a.value),a.value===o&&n("selected=true"),n("#",a.label)})}})})})})}n.insertGlobalCss({".s-tabs":{"&":"display:flex flex-direction:column gap:$3",".s-tablist":"display:flex gap:$1 align-items:stretch overflow-x:auto scrollbar-width:none border-bottom: 1px solid $s-border;",".s-tablist::-webkit-scrollbar":"display:none",".s-tab":"display:inline-flex align-items:center gap:$2 cursor:pointer background:transparent border:0 color: $s-fg-muted; font-weight:600 padding: 0.6em 0.9em; border-bottom: 3px solid transparent; margin-bottom:-1px transition: color 0.15s, background 0.15s, border-color 0.15s;",".s-tab:hover:not(:disabled), .s-tab[aria-selected=true]":"color: $s-fg;",".s-tab:disabled":"opacity:0.5 cursor:not-allowed",".s-tab:focus-visible":"outline:none box-shadow: 0 0 0 3px $s-focus; r: $s-radius;",".s-tab[aria-selected=true]":"border-image: $s-gradient 1;",".s-tabpanel":"display:block"}});function Rr(e){let t=B("tabs"),r=(i,a)=>i.id??String(a),s=e.bind??n.proxy(r(e.tabs[0]??{label:""},0)),o=(i,a)=>{i.disabled||(s.value=r(i,a))};n("div.s-tabs",e.attrs,()=>{n("div.s-tablist role=tablist",()=>{e.tabs.forEach((i,a)=>{let l=r(i,a);n("button.s-tab type=button role=tab",()=>{n(`id=${t}-tab-${l} aria-controls=${t}-panel-${l}`),n(()=>{let c=s.value===l;n("aria-selected=",c?"true":"false"),n("tabindex=",c?"0":"-1")}),i.disabled&&n("disabled=true"),n("click=",()=>o(i,a)),n("keydown=",c=>qn(c,e.tabs,a,o)),x(i.icon),x(i.label)})})}),n("div.s-tabpanel role=tabpanel",e.contentAttrs,()=>{n(()=>{let i=s.value,a=e.tabs.findIndex((c,f)=>r(c,f)===i),l=e.tabs[a]??e.tabs[0];l&&(n(`id=${t}-panel-${r(l,a)} aria-labelledby=${t}-tab-${r(l,a)}`),l.content?.())})})})}function qn(e,t,r,s){let o=r;if(e.key==="ArrowRight"||e.key==="ArrowDown")o=(r+1)%t.length;else if(e.key==="ArrowLeft"||e.key==="ArrowUp")o=(r-1+t.length)%t.length;else if(e.key==="Home")o=0;else if(e.key==="End")o=t.length-1;else return;e.preventDefault();let i=o>=r?1:-1;for(let a=0;a<t.length;a++){let l=t[o];if(l&&!l.disabled){s(l,o),e.currentTarget?.parentElement?.children[o]?.focus();return}o=(o+i+t.length)%t.length}}n.insertGlobalCss({"textarea.s-input":"resize:vertical min-height:3em line-height:1.45","textarea.s-input.s-autoGrow":"resize:none min-height:2.5em overflow-y:hidden"});function Ir(e={}){let t=e.autoGrow!==!1;Y(e,(r,s)=>{let o=n("textarea.s-input",e.inputAttrs,()=>{t?(n(".s-autoGrow"),n("input=",i=>{Er(i.currentTarget),e.input&&e.input(i)})):(n("rows=",e.rows??4),n("resize:",e.resize??"vertical"),e.input&&n("input=",e.input)),e.placeholder!=null&&n("placeholder=",e.placeholder),e.value!=null&&!e.bind&&n("value=",e.value),e.change&&n("change=",e.change),ce(e,r,s,e.bind)});t&&requestAnimationFrame(()=>Er(o))})}function Er(e){e.style.height="auto",e.style.height=`${e.scrollHeight}px`}var Ge=400,Tr=`margin ${Ge}ms ease-out, transform ${Ge}ms ease-out`;function Mr(e){if(e.parentElement){let t=getComputedStyle(e.parentElement);if(t.display==="flex"&&(t.flexDirection||"").startsWith("row"))return{marginLeft:`-${e.offsetWidth/2}px`,marginRight:`-${e.offsetWidth/2}px`,transform:"scaleX(0)"}}return{marginBottom:`-${e.offsetHeight/2}px`,marginTop:`-${e.offsetHeight/2}px`,transform:"scaleY(0)"}}async function Or(e){let t=Mr(e);Object.assign(e.style,t),e.offsetHeight,e.style.transition=Tr;for(let r in t)e.style[r]="";setTimeout(()=>{e.style.transition=""},Ge)}async function Nr(e){let t=Mr(e);e.style.transition=Tr,Object.assign(e.style,t),setTimeout(()=>{e.remove()},Ge)}n.insertGlobalCss({".s-toasts":"position:fixed bottom:$3 right:$3 z-index:400 display:flex flex-direction:column gap:$2 pointer-events:none max-width:min(90vw,24rem) w:24rem",".s-toast":{"&":"display:flex align-items:flex-start gap:$2 padding: $3; border: 1px solid $s-border; r:$s-radius box-shadow:$s-shadow pointer-events:auto",".s-toast-body":"display:flex flex-direction:column gap:$1 flex:1 min-width:0",".s-toast-title":"font-weight:700 line-height:1.3",".s-toast-msg":"font-size:0.9em fg:$s-fg-muted line-height:1.4",".s-toast-close":"cursor:pointer border:0 background:transparent fg:$s-fg-muted font-size:1.1em line-height:1 padding: 0 0.15em; r:4px flex-shrink:0 align-self:flex-start",".s-toast-close:hover":"fg:$s-fg",".s-toast-close:focus-visible":"outline:none box-shadow: 0 0 0 3px $s-focus; fg:$s-fg"}});var Un=0,Ot=n.proxy({});n.mount(document.body,()=>{n("div.s-toasts aria-live=polite aria-atomic=false",()=>{n.onEach(Ot,e=>{let{opts:t}=e,r=t.type==="danger"||t.type==="warning"?"alert":"status",s=t.type??"neutral";n(`div.s-toast.s-s.${s} role=${r}`,"create=",Or,"destroy=",Nr,t.attrs,()=>{n("div.s-toast-body",()=>{n(()=>{t.title!=null&&n("div.s-toast-title",()=>x(t.title))}),n("div.s-toast-msg",()=>x(t.message))}),n(()=>{t.dismissible!==!1&&n("button.s-toast-close type=button aria-label=Dismiss",()=>{n("#\xD7"),n("click=",()=>Mt(e.id))})})})})})});function Mt(e){delete Ot[e]}function jr(e){let t=++Un;Ot[t]={id:t,opts:e};let r=e.duration??4e3,s;return r>0&&(s=setTimeout(()=>Mt(t),r)),()=>{s!=null&&clearTimeout(s),Mt(t)}}n.insertGlobalCss({".s-tt-tip":{"&":"position:fixed z-index:500 max-width:20rem w:max-content bg:$s-raised fg:$s-fg border: 1px solid $s-border-strong; r:$s-radius box-shadow:$s-shadow padding: 0.3em 0.65em; font-size:0.85em line-height:1.4 pointer-events:none"}});var de=n.proxy(void 0),q=null;typeof window<"u"&&window.addEventListener("scroll",()=>{de.value=void 0},{capture:!0,passive:!0});function _n(e,t,r,s){let i=window.innerWidth,a=window.innerHeight,l=0,c=0;return s==="bottom"?(l=e.left+(e.width-t)/2,c=e.bottom+7,c+r>a-8&&(c=e.top-r-7)):s==="left"?(l=e.left-t-7,c=e.top+(e.height-r)/2,l<8&&(l=e.right+7)):s==="right"?(l=e.right+7,c=e.top+(e.height-r)/2,l+t>i-8&&(l=e.left-t-7)):(l=e.left+(e.width-t)/2,c=e.top-r-7,c<8&&(c=e.bottom+7)),{x:Math.max(8,Math.min(l,i-t-8)),y:Math.max(8,Math.min(c,a-r-8))}}function Nt(){q&&clearTimeout(q),q=setTimeout(()=>{de.value=void 0,q=null},100)}n.mount(document.body,()=>{let e=de.value;if(!e)return;let{opts:t,anchor:r}=e,s=t.placement??"top",o=n("div.s-tt-tip role=tooltip visibility:hidden",t.attrs,()=>{n("mouseenter=",()=>{q&&(clearTimeout(q),q=null)}),n("mouseleave=",Nt),x(t.tip)});requestAnimationFrame(()=>{if(!document.body.contains(o))return;let{x:i,y:a}=_n(r.getBoundingClientRect(),o.offsetWidth,o.offsetHeight,s);o.style.left=i+"px",o.style.top=a+"px",o.style.visibility=""})});function Lr(e){let t=r=>{q&&(clearTimeout(q),q=null),de.value={opts:e,anchor:r.currentTarget}};n("mouseenter=",t),n("mouseleave=",Nt),n("focusin=",t),n("focusout=",Nt),n.clean(()=>{de.value?.opts===e&&(de.value=void 0)})}var Dn={main:kr,box:yr,dialog:$e,alert:Pr,confirm:Ar,prompt:Sr,form:vr,menuButton:Be,showFloatingMenu:It,textline:Fe,textarea:Ir,checkbox:wr,tabs:Rr,button:M,buttonChooser:xr,buttonGroup:J,autocomplete:br,select:Cr,toast:jr,addTooltip:Lr,setDarkMode:Et,getDarkMode:ze},g=Dn;var zn=new TextEncoder,jt=new TextDecoder("utf-8",{fatal:!0}),he=Symbol("EOD"),He="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_$",_r=new Uint8Array(128).fill(255);for(let e=0;e<He.length;++e)_r[He.charCodeAt(e)]=e;var Lt=typeof process<"u"&&process?.stdout?.isTTY,We=Lt?["\x1B[32m","\x1B[33m","\x1B[34m","\x1B[35m"]:[""],Kn=Lt?"\x1B[0m":"",qr=Lt?"\x1B[31m":"",Ur={array:5,object:6,map:7,set:8,end:9},Ve=0,Bn=typeof process<"u"?!!process.env?.DATAPACK_EXTENDED_LOGGING:!1,F=class e{buffer;dataView;readPos=0;writePos=0;static EOD=he;get _buffer(){return this.buffer}constructor(t=1900){t instanceof Uint8Array?(this.buffer=t,this.writePos=t.length):this.buffer=new Uint8Array(t)}writeMultiByteNumber(t,r,s=!1,o=!1){let i=0,a=t;for(;a>0;)i++,a=Math.floor(a/256);let l=o?~i&31:i;this.buffer[this.writePos++]=r<<5|l;let c=1;for(let f=0;f<i;f++)c*=256;for(let f=0;f<i;f++){c=Math.floor(c/256);let u=Math.floor(t/c)%256;s&&(u^=255),this.buffer[this.writePos++]=u}}readMultiByteNumber(t,r=!1){this.readPos+t>this.writePos&&this.notEnoughData("number");let s=0,o=1;for(let i=t-1;i>=0;i--){let a=this.buffer[this.readPos+i];r&&(a^=255),s+=a*o,o*=256}return this.readPos+=t,s}notEnoughData(t){throw new Error(`Not enough data to read a ${t} at position ${this.readPos} in
17
+ ${this.toString(!0)}`)}write(t){if(this.ensureCapacity(33),typeof t=="number")Number.isInteger(t)&&t<=Number.MAX_SAFE_INTEGER&&t>=Number.MIN_SAFE_INTEGER?t>=0?t<32?this.buffer[this.writePos++]=32|t:t<64?this.buffer[this.writePos++]=64|t-32:this.writeMultiByteNumber(t-64,3):this.writeMultiByteNumber(-t,0,!0,!0):(this.buffer[this.writePos++]=128,this.dataView||=new DataView(this.buffer.buffer,this.buffer.byteOffset,this.buffer.byteLength),this.dataView.setFloat64(this.writePos,t),this.writePos+=8);else if(t===void 0)this.buffer[this.writePos++]=129;else if(t===null)this.buffer[this.writePos++]=130;else if(t===!0)this.buffer[this.writePos++]=131;else if(t===!1)this.buffer[this.writePos++]=132;else if(typeof t=="string"){let r=zn.encode(t);r.length<32?this.buffer[this.writePos++]=160|r.length:this.writeMultiByteNumber(r.length,6),this.ensureCapacity(r.length),this.buffer.set(r,this.writePos),this.writePos+=r.length}else if(t instanceof Uint8Array)this.writeMultiByteNumber(t.length,7),this.ensureCapacity(t.length),this.buffer.set(t,this.writePos),this.writePos+=t.length;else if(Array.isArray(t)||typeof t.length=="number"&&typeof t[Symbol.iterator]=="function"){this.buffer[this.writePos++]=133;for(let r of t)this.write(r);this.buffer[this.writePos++]=137}else if(t instanceof Map){this.buffer[this.writePos++]=135;for(let[r,s]of t)this.write(r),this.write(s);this.buffer[this.writePos++]=137}else if(t instanceof Set){this.buffer[this.writePos++]=136;for(let r of t)this.write(r);this.buffer[this.writePos++]=137}else if(t instanceof Date)this.buffer[this.writePos++]=140,this.write(Math.floor(t.getTime()/1e3));else if(typeof t=="object")t instanceof ke?this.writeCustom(t.name,t.data):typeof t.toDataPack=="function"?t.toDataPack(this):this.writeAsObject(t);else throw new Error(`Unsupported data type: ${typeof t}`);return this}read(t){if(this.readPos>this.writePos)throw new Error("Not enough data");let r=this.buffer[this.readPos++],s=r>>5&7,o=r&31;switch(s){case 0:{let i=~o&31;return-this.readMultiByteNumber(i,!0)}case 1:return o;case 2:return o+32;case 3:return this.readMultiByteNumber(o)+64;case 4:switch(o){case 0:{this.readPos+8>this.writePos&&this.notEnoughData("float64"),this.dataView||=new DataView(this.buffer.buffer,this.buffer.byteOffset,this.buffer.byteLength);let i=this.dataView.getFloat64(this.readPos);return this.readPos+=8,i}case 1:return;case 2:return null;case 3:return!0;case 4:return!1;case 5:{let i=[];for(;;){let a=this.read(t);if(a===he)break;i.push(a)}return i}case 6:{let i={};for(;;){let a=this.read(t);if(a===he)break;let l=this.read(t);i[a]=l}return i}case 7:{let i=new Map;for(;;){let a=this.read(t);if(a===he)break;let l=this.read(t);i.set(a,l)}return i}case 8:{let i=new Set;for(;;){let a=this.read(t);if(a===he)break;i.add(a)}return i}case 9:return he;case 10:return--this.readPos,this.readIdentifier();case 11:{let i=this.readPos,a=i;for(;a>=this.writePos&&this.notEnoughData("null-terminated string"),this.buffer[a]!==0;)a++;return this.readPos=a+1,jt.decode(this.buffer.subarray(i,a))}case 12:{let i=this.readPositiveInt();return new Date(i*1e3)}case 13:{let i=this.readString(),a=this.read();return t&&i in t?t[i](a):new ke(i,a)}default:throw new Error(`Unknown type 4 subtype: ${o}`)}case 5:{let i=o;this.readPos+i>this.writePos&&this.notEnoughData("short string");let a=this.buffer.subarray(this.readPos,this.readPos+i);return this.readPos+=i,jt.decode(a)}case 6:{let i=this.readMultiByteNumber(o);this.readPos+i>this.writePos&&this.notEnoughData("string");let a=this.buffer.subarray(this.readPos,this.readPos+i);return this.readPos+=i,jt.decode(a)}case 7:{let i=this.readMultiByteNumber(o);this.readPos+i>this.writePos&&this.notEnoughData("blob");let a=this.buffer.slice(this.readPos,this.readPos+i);return this.readPos+=i,new Uint8Array(a)}default:throw new Error(`Unknown type: ${s}`)}}ensureCapacity(t){let r=this.writePos+t;if(r<=this.buffer.length)return;let s=Math.max(r,Math.floor(this.buffer.length*1.5)),o=new Uint8Array(s);o.set(this.buffer.subarray(0,this.writePos)),this.buffer=o,delete this.dataView}readNumber(){let t=this.read();if(typeof t!="number")throw new Error("Expected number but got "+typeof t);return t}readDate(){let t=this.read();if(!(t instanceof Date))throw new Error("Expected Date but got "+typeof t);return t}readPositiveInt(t){let r=this.read();if(typeof r!="number"||!Number.isInteger(r)||r<0||t!==void 0&&r>=t)throw new Error(`Expected positive integer < ${t} but got ${r}`);return r}readBoolean(){let t=this.read();if(typeof t!="boolean")throw new Error("Expected boolean but got "+typeof t);return t}readUint8Array(){let t=this.read();if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array but got "+typeof t);return t}readString(){let t=this.read();if(typeof t!="string")throw new Error("Expected string but got "+typeof t);return t}writeIdentifier(t){let r=0;if(typeof t=="number")r=t;else{if(t.length!==8)throw new Error(`Identifier must be exactly 8 characters, got ${t.length}`);let s;for(let o=0;o<8;o++){let i=t.charCodeAt(o);if(i>127||(s=_r[i])===255)throw new Error(`Invalid base64 character: ${t[o]}`);r=r*64+s}}this.ensureCapacity(7),this.buffer[this.writePos++]=138;for(let s=5;s>=0;s--)this.buffer[this.writePos+s]=r%256,r=Math.floor(r/256);return this.writePos+=6,this}readIdentifier(){let t=this.readIdentifierNumber(),r="";for(let s=0;s<8;s++)r=He[t%64]+r,t=Math.floor(t/64);return r}readIdentifierNumber(){if(this.readPos+7>this.writePos&&this.notEnoughData("identifier"),this.buffer[this.readPos++]!==138)throw new Error("Invalid identifier header");let r=0;for(let s=0;s<6;s++)r=r*256+this.buffer[this.readPos++];return r}writeOrderedString(t){let r=new TextEncoder().encode(t);if(r.includes(0))throw new Error("String contains null character");return this.ensureCapacity(r.length+2),this.buffer[this.writePos++]=139,this.buffer.set(r,this.writePos),this.writePos+=r.length,this.buffer[this.writePos++]=0,this}toUint8Array(t=!0,r=0,s=this.writePos){return t?this.buffer.slice(r,s):this.buffer.subarray(r,s)}toBuffer(){return this.buffer.buffer.slice(0,this.writePos)}clone(t,r=0,s=this.writePos){if(t)return new e(this.buffer.slice(r,s));{let o=new e(this.buffer);return o.readPos=r,o.writePos=s,o}}writeCustom(t,r){this.buffer[this.writePos++]=141,this.write(t),this.write(r)}writeAsObject(t){this.buffer[this.writePos++]=134;for(let r of Object.keys(t))this.write(r),this.write(t[r]);return this.buffer[this.writePos++]=137,this}writeCollection(t,r){return this.writeCollectionBoundary(t),r(t==="array"||t==="set"?s=>{this.write(s)}:t==="object"?(s,o)=>{this.writeObjectKey(s),this.write(o)}:(s,o)=>{this.write(s),this.write(o)}),this.writeCollectionBoundary("end")}writeCollectionBoundary(t){let r=Ur[t];if(!r)throw new Error(`Invalid collection type: ${t}`);return this.buffer[this.writePos++]=128|r,this}writeObjectKey(t){if(typeof t=="string"){let r=parseInt(t,10);r.toString()==t&&(t=r)}else typeof t!="number"&&(t=""+t);this.write(t)}readCollectionBoundary(t){this.readPos>=this.writePos&&this.notEnoughData("collection boundary");let r=this.buffer[this.readPos++],s=128|Ur[t];if(r!==s)throw new Error(`Expected ${t} boundary but got byte ${r}`)}increment(){for(let t=this.writePos-1;t>=0;t--)if(this.buffer[t]===255)this.buffer[t]=0;else return this.buffer[t]++,this}toString(t=void 0,r=0,s=this.writePos){t===void 0&&(t=Bn);let o=this.readPos;this.readPos=r;let i=0,a="",l="",c=Ve,f=c>0?We[(c-1)%We.length]:Kn;try{for(;this.readPos<s;){let u=We[Ve++%We.length];if(a+=u+me(this.read())+" ",t)for(l+=u;i<this.readPos;)l+=this.buffer[i].toString(16).padStart(2,"0")+" ",i++}}catch{if(!t)return this.readPos=o,Ve=c,this.toString(!0,r,s);for(a+=qr+"ERROR ",l+=qr;i<this.writePos;)l+=this.buffer[i].toString(16).padStart(2,"0")+" ",i++}return this.readPos=o,c||(Ve=0),t?"DataPack{"+l+f+"\u2192 "+a.trimEnd()+f+"}":"DataPack{"+a.trimEnd()+f+"}"}[Symbol.for("nodejs.util.inspect.custom")](){return this.toString()}readAvailable(){return this.readPos<this.writePos}static generateIdentifier(){let t=Math.floor(+new Date*256+Math.random()*16384),r="";for(let s=0;s<8;s++)r=He[t&63]+r,t=Math.floor(t/64);return r}static createBuffer(...t){let r=new e;for(let s of t)r.write(s);return r.toBuffer()}static createUint8Array(...t){let r=new e;for(let s of t)r.write(s);return r.toUint8Array(!1)}};function me(e){if(e===void 0)return"undefined";if(typeof e=="object"&&e!==null){if(e instanceof Uint8Array)return new F(e).toString();if(e instanceof Array)return"["+e.map(t=>me(t)).join(", ")+"]";if(e instanceof Map)return"Map{"+Array.from(e.entries()).map(([t,r])=>`${me(t)}=>${me(r)}`).join(", ")+"}";if(e instanceof Set)return"Set{"+Array.from(e.values()).map(t=>me(t)).join(", ")+"}";if(typeof e=="object"&&e!==null)return"{"+Object.entries(e).map(([t,r])=>`${t}:${me(r)}`).join(", ")+"}"}return JSON.stringify(e)}var ke=class{name;data;constructor(t,r){this.name=t,this.data=r}};F.prototype.CustomData=ke;var G={error:"e",response:"r",response_proxy:"p",response_model:"m",response_proxy_model:"q",model_data:"d"},qt={call:1,cancel:2};var I=0;var Ye=Symbol(),Je=class{constructor(t){this.url=t;this.api=new Proxy({connection:this,requestId:void 0},Dr),this.connect()}url;ws;activeRequests=new Map;requestCounter=0;reconnectAttempts=0;_proxyCounter=0;$state=n.proxy({online:!1,error:void 0});streamCache=new Map;get[n.OPAQUE](){return!0}api;isOnline(){return this.$state.online}getError(){return this.$state.error}connect(){let t;try{t=this.ws=typeof this.url=="string"?new WebSocket(this.url):this.url()}catch(r){console.error("WebSocket connection error:",r),this.$state.error=r?.message||"WebSocket connection error";return}t.binaryType="arraybuffer",I>=1&&console.log(`[lowlander] Connecting to WebSocket at ${typeof this.url=="string"?this.url:"[custom WebSocket]"}`),t.onopen=()=>{if(t===this.ws){I>=1&&console.log("[lowlander] WebSocket connected"),this.$state.online=!0,this.$state.error=void 0,this.reconnectAttempts=0;for(let r of this.activeRequests.values())r.$result.busy=!0,this.ws.send(r.requestBuffer)}},t.onclose=()=>{t===this.ws&&(I>=1&&console.log("[lowlander] WebSocket disconnected"),this.reconnect())},t.onerror=r=>{t===this.ws&&(console.error("WebSocket error:",r),this.$state.error=r?.message||"WebSocket connection error",this.reconnect())},t.onmessage=r=>{if(t!==this.ws)return;let s=new F(new Uint8Array(r.data)),o=s.readPositiveInt(),i=this.activeRequests.get(o);if(!i)return;let a=n.unproxy(i.$result),l=s.read();if(typeof l=="number"){let c=i.callbacks?.[l],f=[];for(;s.readAvailable();)f.push(s.read());c(...f);return}if(l===G.model_data){i.database||=new Map,i.commitIds||=new Map;let c=s.readNumber(),f=s.readNumber(),u=s.read({model:function(b){let A=i.database.get(b);return A||console.error("Unknown linked model hash "+b),A}});I>=3&&console.log("[lowlander] incoming model_data",o,c,f,u),setTimeout(()=>this.pruneCommitIds(i,f),15e3);let d=i.commitIds.get(c);if(!u){if(d&&f<Math.max(...d.values()))return;i.database.delete(c),i.commitIds.set(c,new Map([[Ye,f]]));return}let h=i.database.get(c);if(h){d||(d=new Map,i.commitIds.set(c,d));for(let b of Object.keys(u))f<(d.get(b)??d.get(Ye)??-1)||(u[b]&&typeof u[b]=="object"?n.copy(h,b,u[b]):h[b]=u[b],d.set(b,f))}else{if(d&&f<(d.get(Ye)??-1))return;let b=n.proxy(u);n.unproxy(b)[n.OPAQUE]=!1,i.database.set(c,b),i.commitIds.set(c,new Map([[Ye,f]]))}return}if(l===G.error){let c=s.readString();i.$result.error=new Error(c),I>=2&&console.log(`[lowlander] incoming error requestId=${o} message=${c}`)}else if(l===G.response||l===G.response_proxy)i.$result.value=s.read(),i.virtualSocketIds=s.read(),i.hasServerProxy=l===G.response_proxy,I>=2&&console.log(`[lowlander] incoming response requestId=${o} value=${a.value} virtualSocketIds=${i.virtualSocketIds} hasServerProxy=${i.hasServerProxy}`);else if(l===G.response_model||l===G.response_proxy_model){i.virtualSocketIds=s.read();let c=s.readNumber(),f=s.read(),u=i.database?.get(c);i.hasServerProxy=l===G.response_proxy_model,I>=2&&console.log(`[lowlander] incoming ${i.hasServerProxy?"response_proxy_model":"response_model"} requestId=${o} dbKey=${c} cacheMs=${f} obj=${u}`),u?i.$result.value=n.proxy(u):i.$result.error=new Error("Unknown database key "+c),f!==void 0&&i.cacheKey&&!this.streamCache.has(i.cacheKey)&&this.streamCache.set(i.cacheKey,{request:i,cacheKey:i.cacheKey,cacheMs:f,refCount:1})}else throw new Error("Unknown message type "+l);!i.hasServerProxy&&!i.virtualSocketIds?.length&&this.activeRequests.delete(o),i.hasServerProxy||delete i.$result.serverProxy,i.$result.busy=!1,i.resolve&&(a.error!=null?(console.error(a.error),i.reject(a.error)):i.resolve(a.value),delete i.resolve,delete i.reject)}}reconnect(){if(this.ws=void 0,this.$state.online=!1,typeof this.url!="string")return;let t=Math.min(500*Math.pow(2,this.reconnectAttempts),2e4);this.reconnectAttempts++,I>=1&&console.log(`[lowlander] Reconnecting in ${t}ms (attempt ${this.reconnectAttempts})`),setTimeout(this.connect.bind(this),t)}pruneCommitIds(t,r){if(t.commitIds)for(let[s,o]of t.commitIds){for(let[i,a]of o)a<=r&&o.delete(i);o.size||t.commitIds.delete(s)}}_createMethodStub(t,r){return(...s)=>{let i=s.some(h=>typeof h=="function")?void 0:(r??"")+":"+t+":"+JSON.stringify(s);if(i){let h=this.streamCache.get(i);if(h)return h.lingerTimeout&&(clearTimeout(h.lingerTimeout),h.lingerTimeout=void 0),h.refCount++,I>=2&&console.log(`[lowlander] reusing cached stream cacheKey=${i} refCount=${h.refCount}`),n.clean(()=>{h.refCount--,I>=2&&console.log(`[lowlander] clean cached consumer cacheKey=${i} refCount=${h.refCount}`),h.refCount<=0&&this.startLinger(h)}),h.request.$result}let a={busy:!0},l=n.proxy(a),c=++this.requestCounter,f=new F;f.write(c).write(qt.call).write(r).write(t);let u;f.writeCollection("array",()=>{for(let h of s)typeof h=="function"?(u||=[],f.writeCustom("cb",u.length),u.push(h)):f.write(h)});let d={$result:l,requestBuffer:f.toUint8Array(!0),requestId:c,connection:this,callbacks:u,cacheKey:i};return a.serverProxy=new Proxy(d,Dr),a.promise=new Promise((h,b)=>{d.resolve=h,d.reject=b}),this.activeRequests.set(c,d),I>=2&&console.log(`[lowlander] outgoing call requestId=${c} method=${t} params=`,s),this.ws&&this.ws.readyState===WebSocket.OPEN&&this.ws.send(d.requestBuffer),n.clean(()=>{let h=i?this.streamCache.get(i):void 0;if(h&&h.request===d){h.refCount--,I>=2&&console.log(`[lowlander] clean stream owner cacheKey=${i} refCount=${h.refCount}`),h.refCount<=0&&this.startLinger(h);return}this.cancelRequest(d)}),l}}cancelRequest(t){if(this.activeRequests.delete(t.requestId),t.virtualSocketIds?.length||t.hasServerProxy){I>=2&&console.log(`[lowlander] outgoing cancel requestId=${t.requestId} virtualSocketIds=${t.virtualSocketIds} hasServerProxy=${t.hasServerProxy}`);let r=F.createUint8Array(++this.requestCounter,qt.cancel,t.requestId,t.virtualSocketIds);this.ws?.send(r)}}startLinger(t){t.lingerTimeout&&clearTimeout(t.lingerTimeout),I>=2&&console.log(`[lowlander] start linger cacheKey=${t.cacheKey} cacheMs=${t.cacheMs}`),t.lingerTimeout=setTimeout(()=>{t.refCount>0||(I>=2&&console.log(`[lowlander] linger expired cacheKey=${t.cacheKey}`),this.streamCache.delete(t.cacheKey),this.cancelRequest(t.request))},t.cacheMs)}},Dr={get(e,t){if(typeof t=="symbol")return t===n.OPAQUE?!0:t===n.CUSTOM_DUMP?`<ServerProxy for #${e.requestId}>`:void 0;if(e.serverProxyCache?.has(t))return e.serverProxyCache.get(t);if(t==="then"||t==="catch"||t==="finally")return;if(t==="constructor")return{name:"ServerProxy-"+e.requestId};let r=e.connection._createMethodStub(t,e.requestId);return e.serverProxyCache||(e.serverProxyCache=new Map),e.serverProxyCache.set(t,r),r},has(e,t){return typeof t=="string"||t===n.NO_COPY}};function Qe(e,t){if(t==null)return null;switch(e.kind){case"dateTime":return typeof t=="string"?t.slice(0,16):t;case"link":return t?.__ref!=null?t.pk:t;case"array":case"set":return Array.isArray(t)?t.map(s=>Qe(e.inner,s)):[];case"record":if(!t||typeof t!="object")return{};let r={};for(let[s,o]of Object.entries(t))r[s]=Qe(e.innerValue,o);return r;case"or":return e.isOptional&&e.inner?t===null?null:Qe(e.inner,t):t;default:return t}}function Xe(e){if(e.isOptional)return null;switch(e.kind){case"string":return"";case"number":return 0;case"boolean":return!1;case"dateTime":return new Date().toISOString().slice(0,16);case"array":case"set":return[];case"record":return{};case"link":return null;case"or":case"literal":return null;default:return""}}function Ze(e,t){n("div.s-field",()=>{e!=null&&n("label",()=>n("#",e)),t()})}function et(e,t,r,s,o=!1){if(e.isOptional&&e.inner){Fn(e.inner,t,r,s,o);return}switch(e.kind){case"string":g.textline({label:s,disabled:o,bind:t});return;case"id":g.textline({label:s,disabled:!0,bind:t,help:o?"auto-generated":void 0});return;case"number":g.textline({label:s,type:"number",disabled:o,bind:t});return;case"boolean":g.checkbox({label:s??"Yes",disabled:o,bind:t});return;case"dateTime":g.textline({label:s,type:"datetime-local",disabled:o,bind:t});return;case"link":Wn(e,t,r,s,o);return;case"array":case"set":Vn(e,t,r,s,o);return;case"record":Hn(e,t,r,s,o);return;case"or":{let i=e.choices??[];if(i.length&&i.every(a=>a.kind==="literal")){Gn(i,t,s,o);return}Ut(t,s,o);return}case"literal":g.textline({label:s,disabled:!0,value:e.literalValue??""});return;default:Ut(t,s,o)}}function Fn(e,t,r,s,o=!1){let i=n.peek(()=>t.value!==null&&t.value!==void 0),a=n.proxy({v:i?"set":"undefined"});n(()=>{a.v==="set"?(n.peek(()=>t.value)===null||n.peek(()=>t.value)===void 0)&&(t.value=Xe(e)):t.value=null}),Ze(s,()=>{g.buttonChooser({attrs:o?"pointer-events:none opacity:0.6":void 0,options:{set:"set",undefined:"undefined"},bind:n.ref(a,"v")}),n(()=>{a.v==="set"&&et(e,t,r,void 0,o)})})}function Gn(e,t,r,s=!1){let o=f=>f==null?"undefined":JSON.stringify(f),i=f=>f===null||f==="undefined"?null:JSON.parse(f),a={},l=!1;for(let f of e){let u=f.literalValue??"undefined";u==="undefined"?(l=!0,a[u]="(none)"):a[u]=String(i(u))}let c=n.proxy({v:o(n.peek(()=>t.value))});n(()=>{t.value=i(c.v)}),Ze(r,()=>{g.buttonChooser({attrs:s?"pointer-events:none opacity:0.6":void 0,options:a,bind:n.ref(c,"v"),allowDeselect:!l})})}function Wn(e,t,r,s,o=!1){let i=e.linkedModel;if(!i){Ut(t,s,o);return}let a=n.peek(()=>t.value),l=n.proxy({v:a==null?"":String(a)});n(()=>{let f=l.v;if(f==="")t.value=null;else{let u=Number(f);t.value=!isNaN(u)&&!/[^0-9.\-]/.test(f)?u:f}});let c=n.proxy({rows:[]});n(()=>{let f=r.serverProxy.findRecords(i,"(primary)",{limit:100});n(()=>{f.value&&(c.rows=f.value.rows)})}),g.autocomplete({label:s,disabled:o,allowCustom:!1,placeholder:`Search ${i}\u2026`,bind:n.ref(l,"v"),options:()=>c.rows.map(f=>({value:_t(f.pk),label:_t(f.pk)}))})}function Vn(e,t,r,s,o=!1){let i=e.inner,[a,l]=n.peek(()=>{let c=t.value,f=Array.isArray(c)?c:[],u=n.proxy(f.map(h=>({v:h}))),d=n.proxy({v:u.length});return[u,d]});n(()=>{t.value=a.map(c=>c.v)}),Ze(s,()=>{n("div.s-s.raised","display:flex flex-direction:column gap:$2 p:$2 r:$s-radius-lg border: 1px solid $s-border;",()=>{n(()=>{let c=l.v;c===0&&n("span","fg:$s-fg-faint font-size:0.9em","#(empty)");for(let f=0;f<c;f++){let u=f;n("div","display:flex gap:$2 align-items:flex-start",()=>{n("div","flex:1",()=>{let d=n.ref(a[u],"v");et(i,d,r,void 0,o)}),o||g.button({text:"\xD7",attrs:".outlined.danger .small flex-shrink:0 mt:$3",click:()=>{a.splice(u,1),l.v=a.length}})})}}),o||g.button({text:`+ Add ${i.display}`,attrs:".tonal .small",click:()=>{a.push({v:Xe(i)}),l.v=a.length}})})})}function Hn(e,t,r,s,o=!1){let i=e.innerValue,[a,l]=n.peek(()=>{let c=t.value,f=c&&typeof c=="object"&&!Array.isArray(c)?c:{},u=n.proxy(Object.entries(f).map(([h,b])=>({k:h,v:b}))),d=n.proxy({v:u.length});return[u,d]});n(()=>{let c={};for(let f of a)f.k!==""&&(c[f.k]=f.v);t.value=c}),Ze(s,()=>{n("div.s-s.raised","display:flex flex-direction:column gap:$4 p:$2 r:$s-radius-lg border: 1px solid $s-border;",()=>{n(()=>{let c=l.v;c===0&&n("span","fg:$s-fg-faint font-size:0.9em","#(empty)");for(let f=0;f<c;f++){let u=f;n("div","display:flex flex-direction:column gap:$1",()=>{n("div","display:flex gap:$2 align-items:center",()=>{o?n("code","flex:1 font-size:0.85em fg:$s-fg-muted","#",n.peek(()=>a[u].k)):n("div","flex:1",()=>{g.textline({placeholder:"key",bind:n.ref(a[u],"k")})}),o||g.button({text:"\xD7",attrs:".outlined.danger .small flex-shrink:0",click:()=>{a.splice(u,1),l.v=a.length}})}),n("div",()=>{let d=n.ref(a[u],"v");et(i,d,r,void 0,o)})})}}),o||g.button({text:"+ Add entry",attrs:".tonal .small",click:()=>{a.push({k:"",v:Xe(i)}),l.v=a.length}})})})}function Ut(e,t,r=!1){let s=n.peek(()=>e.value),o=n.proxy({v:s===void 0?"":_t(s)}),i=n.proxy({v:""});n(()=>{let a=o.v;if(a.trim()===""){e.value=void 0,i.v="";return}try{e.value=JSON.parse(a),i.v=""}catch{i.v="Invalid JSON"}}),g.textarea({label:t,disabled:r,rows:3,bind:n.ref(o,"v")}),n(()=>{i.v&&n("div","fg:$s-danger font-size:0.82em mt:$1","#",i.v)})}function zr(e,t,r,s,o,i,a){let l={};for(let f of r)l[f.name]=n.proxy({v:s(f)});let c=n.proxy({saving:!1});g.dialog({header:t,attrs:"width:800px",content:f=>{g.form({content:()=>{for(let u of r)et(u.type,n.ref(l[u.name],"v"),e,u.name,o(u))},layout:"grid",actions:()=>{g.button({text:"Cancel",attrs:".outlined.neutral",click:f}),n(()=>{g.button({text:i,type:"button",disabled:c.saving,click:async()=>{c.saving=!0;try{await a(l,f)}catch(u){g.toast({message:u?.message??String(u),type:"danger"})}finally{c.saving=!1}}})})}})}})}function Kr(e,t,r,s){let o=r.filter(i=>i.type.kind!=="id");zr(e,`New ${t}`,o,i=>Xe(i.type),()=>!1,"Create",async(i,a)=>{let l={};for(let f of o)l[f.name]=i[f.name].v;let c=await e.serverProxy.createRecord(t,l).promise;a(),s?.(c)})}function Br(e,t,r,s,o,i){zr(e,`Edit ${t}`,r,a=>Qe(a.type,o[a.name]),a=>a.isPk,"Save",async(a,l)=>{let c={};for(let f of r)f.isPk||(c[f.name]=a[f.name].v);await e.serverProxy.updateRecord(t,s,c).promise,l(),i?.()})}function Fr(e,t,r,s,o){let i=n.proxy({deleting:!1,error:""});g.dialog({header:`Delete ${t}`,content:a=>{n("p","fg:$s-fg m:0",()=>{n("#Delete "),n("strong","#",s),n("#? This cannot be undone.")}),n(()=>{i.error&&n("p","fg:$s-danger m:0","#",i.error)}),n("div","display:flex gap:$2 mt:$3",()=>{g.button({text:"Delete",attrs:".danger",disabled:n.peek(()=>i.deleting),click:async()=>{i.deleting=!0,i.error="";try{await e.serverProxy.deleteRecord(t,r).promise,a(),o?.()}catch(l){i.error=l?.message??String(l),i.deleting=!1}}}),g.button({text:"Cancel",attrs:".outlined.neutral",click:a})})}})}function _t(e){if(typeof e=="string")return e;try{return JSON.stringify(e)}catch{return String(e)}}var Wr="lowlander-dashboard";function Yn(){try{return JSON.parse(localStorage.getItem(Wr)||"{}")}catch{return{}}}function Vr(e){localStorage.setItem(Wr,JSON.stringify(e))}var Jn=()=>`${location.protocol==="https:"?"wss:":"ws:"}//${location.host}/`,Gr=Yn(),p=n.proxy({wsUrl:Gr.wsUrl||Jn(),password:Gr.password||"",loginError:"",connected:!1,authed:!1,indexRefreshKey:0,connecting:!1,connection:void 0}),tt,N,w={get debug(){return P.search.debug==="1"},set debug(e){ee("debug",e?"1":"")},get model(){return P.search.model||""},set model(e){ee("model",e)},get index(){return P.search.index||""},set index(e){ee("index",e)},get search(){return P.search.search||""},set search(e){ee("search",e)},get reverse(){return P.search.reverse==="1"},set reverse(e){ee("reverse",e?"1":"")},get limit(){return parseInt(P.search.limit||"10",10)||10},set limit(e){ee("limit",e===10?"":String(e))},get pk(){return P.search.pk||""},set pk(e){ee("pk",e)}};function ee(e,t){let r=P.search;t===""||t===void 0?delete r[e]:r[e]=t}function zt(){return w.index||"(primary)"}function rt(){return w.pk==="-"?"":w.pk}var Pe=n.insertCss({"&":"w:100% font-size:12.5px","& tbody tr":"cursor:default","& tbody tr:hover":"background: color-mix(in srgb, $s-fg 5%, transparent);","& tbody tr.selectable":"cursor:pointer","& tbody tr.selected":"background: color-mix(in srgb, $s-accent 15%, transparent);","& tbody tr.selected td:first-child":"border-left: 3px solid $s-accent; padding-left: 5px;"});function Qn(){g.main({title:"Lowlander Dashboard",maxWidth:"24rem",content:()=>{n(()=>{if(p.connecting&&!p.connection?.getError()){n("p","text-align:center fg:$s-fg-muted","#Connecting\u2026");return}g.form({submit:()=>Hr(),content:()=>{g.textline({label:"WebSocket URL",bind:n.ref(p,"wsUrl")}),g.textline({label:"Password",type:"password",bind:n.ref(p,"password"),inputAttrs:"autofocus=autofocus"}),n(()=>{let e=p.connection?.getError()||p.loginError;e&&n("p","fg:$s-danger m:0","text=",e)})},actions:()=>g.button({text:p.connected&&!p.authed?"Checking\u2026":"Log in",type:"submit",disabled:p.connected&&!p.authed})})})}})}async function Hr(){p.connecting=!0,p.loginError="",Vr({wsUrl:p.wsUrl,password:p.password});try{p.connection&&p.connection.ws?.close?.()}catch{}p.connection=new Je(p.wsUrl),tt=p.connection.api,p.connected=!1,p.authed=!1;let e=tt._dashboard(p.password);N=e;try{await e.promise,p.connected=!0,p.authed=!0,p.connecting=!1}catch(t){p.connecting=!1,p.loginError=t?.message||"Login failed",p.connected=!1,p.authed=!1,p.connection=void 0,tt=void 0,N=void 0}}function Xn(){p.authed=!1,p.connected=!1,p.password="",Vr({wsUrl:p.wsUrl,password:""});try{p.connection?.ws?.close?.()}catch{}p.connection=void 0,tt=void 0,N=void 0}var Zn=()=>{let e=N.serverProxy.listModels();n(()=>{if(e.busy){n("p","p:$2 fg:$s-fg-muted font-size:0.9em m:0","#Loading\u2026");return}if(e.error){n("p","p:$2 fg:$s-danger font-size:0.9em m:0","text=",e.error.message);return}for(let t of e.value??[])n("button.s-menu-item type=button","justify-content:space-between",()=>{n(()=>{!w.debug&&w.model===t.tableName&&n("aria-current=page")}),n("click=",()=>De({path:P.path,search:{model:t.tableName}})),n("span","text=",t.tableName),n("span","font-size:0.78em opacity:0.65","text=",`${t.fieldCount}f ${t.indexCount}i ${t.streamTypeCount}s`)})})},es=()=>{n("button.s-menu-item type=button",()=>{n(()=>{w.debug&&n("aria-current=page")}),n("click=",()=>De({path:P.path,search:{debug:"1"}})),n("span.s-menu-icon aria-hidden=true #\u2B21"),n("#WarpSocket debug")})};function ts(){g.main({icon:"\u2B21",title:"Lowlander",menu:()=>g.button({text:"Logout",attrs:".neutral .outlined .small",click:Xn}),nav:{items:[Zn,{separator:!0},es]},content:()=>{w.debug?cs():w.model?rs():n("p","fg:$s-fg-muted text-align:center mt:$4","#Select a model from the sidebar")}})}function rs(){let e=w.model,t=N.serverProxy.getModel(e);n(()=>{if(t.busy){n("p","fg:$s-fg-muted","#Loading\u2026");return}if(t.error){n("p","fg:$s-danger","text=",t.error.message);return}let r=t.value;r&&(g.box({header:r.tableName,content:()=>{n("table",Pe,()=>{n("thead tr",()=>{n("th#Name"),n("th#Type"),n("th#Linked"),n("th#Default"),n("th#Description")}),n("tbody",()=>{for(let s of r.fields)n("tr",()=>{n("td",()=>n("code","text=",s.name)),n("td","fg:$s-success","text=",s.type.display),n("td",()=>{let o=s.type.linkedModel;o&&Bt(o)}),n("td","text=",s.hasDefault?"\u2713":""),n("td","fg:$s-fg-muted","text=",s.description||"")})})})}}),g.box({header:"Indexes",content:()=>ns(r)}),n(()=>{let s=zt(),o=r.indexes.find(i=>i.name===s);o&&g.box({header:()=>{n("span","flex:1","text=",`Data \xB7 ${s}`),g.button({text:"+ New",attrs:".outlined .small",click:()=>{Kr(N,r.tableName,r.fields,()=>{p.indexRefreshKey++})}})},content:()=>as(r,o)})}),r.streamTypes.length&&g.box({header:"Stream types",content:()=>ss(r)}))})}function Bt(e,t,r){n("a","click=",s=>{s.preventDefault(),s.stopPropagation();let o={model:e};t!==void 0&&(o.search=nt(t),o.limit=1),De({path:P.path,search:o})},"text=",r??e)}function nt(e){if(typeof e=="string")return e;try{return JSON.stringify(e)}catch{return String(e)}}function ns(e){n("table",Pe,()=>{n("thead tr",()=>{n("th#Name"),n("th#Kind"),n("th#Fields")}),n("tbody",()=>{for(let t of e.indexes)n("tr.selectable","click=",()=>{zt()!==t.name&&(w.index=t.name==="(primary)"?"":t.name,w.pk="",w.search="")},()=>{n(()=>n(".selected=",zt()===t.name)),n("td",()=>n("code","text=",t.name)),n("td","fg:$s-success","text=",t.info.kind),n("td","text=",t.info.fields.join(", ")||"(computed)")})})})}function ss(e){let t={};for(let o of e.fields)t[o.name]=o;let r=new Set,s=e.streamTypes.filter(o=>r.has(o.id)?!1:(r.add(o.id),!0));n("table",Pe,()=>{n("thead tr",()=>{n("th#id"),n("th#cache"),n("th#fields"),n("th","w:100%","#live view for selected row")}),n("tbody",()=>{for(let o of s)n("tr",()=>{n("td",()=>n("code","text=",String(o.id))),n("td","text=",o.cache?`${o.cache}s`:""),n("td",()=>is(o.fields,t)),n("td",()=>os(e.tableName,o.id))})})})}function is(e,t){if(e===!0){n("span","fg:$s-fg-muted","#(scalar)");return}if(!e||typeof e!="object"){n("span","text=",String(e));return}for(let[r,s]of Object.entries(e))if(typeof s=="number"){let o=t[r]?.type?.linkedModel;n(`div#${r}\u2192`,()=>{o?Bt(o,void 0,s.toString()):n("#?")})}else s===!1?n(`div#${r}*`):n(`div#${r}`)}function os(e,t){n(()=>{let r=rt();if(!r){n("span","fg:$s-fg-muted","#(select a row)");return}let s;try{s=JSON.parse(r)}catch{s=r}let o=N.serverProxy.streamRecord(e,t,s);n(()=>{if(o.busy){n("span","fg:$s-fg-muted","#\u2026");return}if(o.error){n("span","fg:$s-danger","text=",o.error.message);return}n.dump(o.value)})})}function as(e,t){let r=e.tableName,s=t.name,o={get value(){return w.search},set value(a){w.search=String(a),w.limit=10}},i={get value(){return w.reverse},set value(a){w.reverse=!!a}};n("div","display:flex flex-direction:column gap:$3",()=>{n("div","display:flex flex-wrap:wrap gap:$2 align-items:center",()=>{g.textline({placeholder:"search",attrs:"flex:1 min-w:180px",bind:o}),g.checkbox({label:"reverse",bind:i}),g.button({text:"\u21BA",attrs:".outlined .small",ariaLabel:"Refresh",click:()=>p.indexRefreshKey++})}),n(()=>{p.indexRefreshKey;let a={search:ls(w.search),reverse:w.reverse,limit:w.limit},l=N.serverProxy.findRecords(r,s,a);n(()=>{if(l.busy){n("p","fg:$s-fg-muted","#Loading\u2026");return}if(l.error){n("p","fg:$s-danger","text=",l.error.message);return}let c=l.value;if(c){if(!w.pk&&c.rows.length>0){w.pk=nt(c.rows[0].pk);return}if(n("p","fg:$s-fg-muted font-size:0.85em m:0","text=",`${c.rows.length} rows (scanned ${c.scanned})`),!c.rows.length){n("p","fg:$s-fg-muted m:0","#(empty)");return}n("div","overflow:auto",()=>{n("table",Pe,()=>{let f=Object.keys(c.rows[0].values);n("thead tr",()=>{for(let u of f)n("th","text=",u);n("th","w:1px")}),n("tbody",()=>{for(let u of c.rows){let d=nt(u.pk);n("tr.selectable","click=",()=>{w.pk=rt()===d?"-":d},()=>{n(()=>n(".selected=",rt()===d));for(let h of f)n("td",()=>n.dump(Kt(u.values[h])));n("td","text-align:right white-space:nowrap",()=>{g.button({text:"\u270E",attrs:".outlined .small mr:$1",ariaLabel:"Edit",click:h=>{h.stopPropagation(),Br(N,r,e.fields,u.pk,u.values,()=>{p.indexRefreshKey++})}}),g.button({text:"\u2715",attrs:".danger .outlined .small",ariaLabel:"Delete",click:h=>{h.stopPropagation(),Fr(N,r,u.pk,d,()=>{p.indexRefreshKey++,rt()===d&&(w.pk="-")})}})})})}})})}),c.rows.length>=w.limit&&n(()=>g.button({text:`+ more (currently limit ${w.limit})`,attrs:".outlined .small",click:()=>{let f=w.limit;w.limit=Math.min(f*5,f+250)}}))}})})})}function Kt(e){if(e==null||typeof e!="object"||e instanceof Date)return e;if(e.__ref){let r=e.__ref,s=e.pk;return{[n.CUSTOM_DUMP](){Bt(r,s,`<${r} ${nt(s)}>`)}}}if(Array.isArray(e))return e.map(Kt);let t={};for(let[r,s]of Object.entries(e))t[r]=Kt(s);return t}function ls(e){if(e!==""){if(e==="true")return!0;if(e==="false")return!1;if(/^-?\d+(\.\d+)?$/.test(e))return Number(e);try{return JSON.parse(e)}catch{}return e}}function cs(){let e=n.proxy({value:"channels"});g.tabs({bind:e,tabs:["channels","sockets","workers","kv"].map(t=>({id:t,label:t,content:()=>{let r=N.serverProxy.getDebugState(t);n(()=>{if(r.busy){n("p","fg:$s-fg-muted","#Loading\u2026");return}if(r.error){n("p","fg:$s-danger","text=",r.error.message);return}let s=n.unproxy(r.value);if(!s)return;let o=new Set;for(let a of Object.values(s))if(a&&typeof a=="object"&&!(a instanceof Uint8Array))for(let l of Object.keys(a))o.add(l);let i=[...o];n("div","overflow:auto",()=>{n("table",Pe,()=>{n("thead tr",()=>{n("th##");for(let a of i)n("th","text=",a)}),n("tbody",()=>{for(let[a,l]of Object.entries(s))n("tr",()=>{n("td",()=>n("code","text=",a));for(let c of i)n("td","font-size:12px font-family:monospace","text=",fs(l?.[c]))})})})})})}}))})}function fs(e){if(e==null)return"";if(e instanceof Uint8Array)return Dt([...e]);if(typeof e=="object"){if(e.type==="Buffer"&&Array.isArray(e.data))return Dt(e.data);let t=Object.keys(e);if(!Array.isArray(e)&&t.length>0&&t.length<=4096&&t.every((r,s)=>r===String(s))){let r=[];for(let s of t){let o=e[s];if(typeof o!="number"||o<0||o>255)return JSON.stringify(e);r.push(o)}return Dt(r)}return JSON.stringify(e)}return String(e)}function Dt(e){let t="";for(let r of e)r>=32&&r<127&&r!==34&&r!==92?t+=String.fromCharCode(r):r===9?t+="\\t":r===10?t+="\\n":r===13?t+="\\r":r===34?t+='\\"':r===92?t+="\\\\":t+="\\x"+r.toString(16).padStart(2,"0");return t}n.mount(document.body,()=>{if(!p.authed){Qn();return}ts()});p.password&&Hr();
18
18
  </script>
19
19
  </body>
20
20
  </html>