Spaces:
Runtime error
Runtime error
import{S as Ae,i as Le,s as Re,B as Dn,C as $n,D as zn,E as Fn,f as q,t as J,H as Kr,I as Hr,J as nn,k as ne,K as Bt,a as le,l as re,m as Z,L as Xt,h as D,c as ce,n as A,b as ue,F as z,A as me,q as we,r as be,u as kt,v as Ee,w as ke,x as xe,y as Oe,o as rn,M as Yt,G as pe,N as ae,O as nt,P as Vr,Q as Br,R as ir,T as fo,U as ho,V as po,W as mo,g as Je,d as We,X as _o,e as De,Y as go,Z as vo,_ as yo}from"../../chunks/index-33375fc9.js";import{w as ze}from"../../chunks/index-45020117.js";var wo=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Ne={},M={};Object.defineProperty(M,"__esModule",{value:!0});var bo=Object.defineProperty,Eo=Object.defineProperties,ko=Object.getOwnPropertyDescriptors,qt=Object.getOwnPropertySymbols,Xr=Object.prototype.hasOwnProperty,Yr=Object.prototype.propertyIsEnumerable,or=(e,t,n)=>t in e?bo(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Tt=(e,t)=>{for(var n in t||(t={}))Xr.call(t,n)&&or(e,n,t[n]);if(qt)for(var n of qt(t))Yr.call(t,n)&&or(e,n,t[n]);return e},on=(e,t)=>Eo(e,ko(t)),xo=(e,t)=>{var n={};for(var r in e)Xr.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&qt)for(var r of qt(e))t.indexOf(r)<0&&Yr.call(e,r)&&(n[r]=e[r]);return n},Oo=(e,t,n)=>new Promise((r,i)=>{var o=l=>{try{a(n.next(l))}catch(c){i(c)}},s=l=>{try{a(n.throw(l))}catch(c){i(c)}},a=l=>l.done?r(l.value):Promise.resolve(l.value).then(o,s);a((n=n.apply(e,t)).next())});function Io(e,t=e){}function So(e,t,n=t){}function Po(e){}function To(e,t){}function Ge(e,t){throw new Error(t)}function Y(e,t="Expected value to be non-nullable"){return e}var qr=(e=>(e[e.UPDATE_PRESENCE=100]="UPDATE_PRESENCE",e[e.BROADCAST_EVENT=103]="BROADCAST_EVENT",e[e.FETCH_STORAGE=200]="FETCH_STORAGE",e[e.UPDATE_STORAGE=201]="UPDATE_STORAGE",e))(qr||{}),jr=(e=>(e[e.INIT=0]="INIT",e[e.SET_PARENT_KEY=1]="SET_PARENT_KEY",e[e.CREATE_LIST=2]="CREATE_LIST",e[e.UPDATE_OBJECT=3]="UPDATE_OBJECT",e[e.CREATE_OBJECT=4]="CREATE_OBJECT",e[e.DELETE_CRDT=5]="DELETE_CRDT",e[e.DELETE_OBJECT_KEY=6]="DELETE_OBJECT_KEY",e[e.CREATE_MAP=7]="CREATE_MAP",e[e.CREATE_REGISTER=8]="CREATE_REGISTER",e))(jr||{}),Gr=(e=>(e[e.OBJECT=0]="OBJECT",e[e.LIST=1]="LIST",e[e.MAP=2]="MAP",e[e.REGISTER=3]="REGISTER",e))(Gr||{});function Ao(e){return e.type===0&&!Jr(e)}function Jr(e){return e.parentId!==void 0&&e.parentKey!==void 0}var Wr=(e=>(e[e.UPDATE_PRESENCE=100]="UPDATE_PRESENCE",e[e.USER_JOINED=101]="USER_JOINED",e[e.USER_LEFT=102]="USER_LEFT",e[e.BROADCASTED_EVENT=103]="BROADCASTED_EVENT",e[e.ROOM_STATE=104]="ROOM_STATE",e[e.INITIAL_STORAGE_STATE=200]="INITIAL_STORAGE_STATE",e[e.UPDATE_STORAGE=201]="UPDATE_STORAGE",e))(Wr||{});function Lo(e){return e==="my-presence"||e==="others"||e==="event"||e==="error"||e==="connection"||e==="history"}var Zr=(e=>(e[e.CLOSE_ABNORMAL=1006]="CLOSE_ABNORMAL",e[e.INVALID_MESSAGE_FORMAT=4e3]="INVALID_MESSAGE_FORMAT",e[e.NOT_ALLOWED=4001]="NOT_ALLOWED",e[e.MAX_NUMBER_OF_MESSAGES_PER_SECONDS=4002]="MAX_NUMBER_OF_MESSAGES_PER_SECONDS",e[e.MAX_NUMBER_OF_CONCURRENT_CONNECTIONS=4003]="MAX_NUMBER_OF_CONCURRENT_CONNECTIONS",e[e.MAX_NUMBER_OF_MESSAGES_PER_DAY_PER_APP=4004]="MAX_NUMBER_OF_MESSAGES_PER_DAY_PER_APP",e[e.MAX_NUMBER_OF_CONCURRENT_CONNECTIONS_PER_ROOM=4005]="MAX_NUMBER_OF_CONCURRENT_CONNECTIONS_PER_ROOM",e[e.CLOSE_WITHOUT_RETRY=4999]="CLOSE_WITHOUT_RETRY",e))(Zr||{}),st=32,Kn=126;function Ue(e,t){return e!==void 0&&t!==void 0?jt(Qr(pt(e),pt(t))):e!==void 0?No(e):t!==void 0?Ro(t):jt([st+1])}function Ro(e){const t=[],n=pt(e);for(let r=0;r<n.length;r++){const i=n[r];if(i<=st+1){if(t.push(st),n.length-1===r){t.push(Kn);break}}else{t.push(i-1);break}}return jt(t)}function No(e){const t=[],n=pt(e);for(let r=0;r<n.length;r++){const i=n[r];if(i===Kn){if(t.push(i),n.length-1===r){t.push(st+1);break}}else{t.push(i+1);break}}return jt(t)}function Qr(e,t){let n=0;const r=[];for(;;){const i=e[n]||st,o=t[n]||Kn;if(i>o)throw new Error(`Impossible to generate position between ${e} and ${t}`);if(i===o){r.push(i),n++;continue}if(o-i===1){r.push(i),r.push(...Qr(e.slice(n+1),[]));break}const s=o+i>>1;r.push(s);break}return r}function pt(e){const t=[];for(let n=0;n<e.length;n++)t.push(e.charCodeAt(n));return t}function jt(e){return String.fromCharCode(...e)}function ei(e,t){const n=pt(e),r=pt(t),i=Math.max(n.length,r.length);for(let o=0;o<i;o++){const s=n[o]===void 0?st:n[o],a=r[o]===void 0?st:r[o];if(s!==a)return s-a}throw new Error(`Impossible to compare similar position "${e}" and "${t}"`)}function sr(e,t){return Object.freeze({type:"HasParent",node:e,key:t})}var ar=Object.freeze({type:"NoParent"});function lr(e){return Object.freeze({type:"Orphaned",oldKey:e})}var sn=class{constructor(){this._parent=ar}_getParentKeyOrThrow(){switch(this.parent.type){case"HasParent":return this.parent.key;case"NoParent":throw new Error("Parent key is missing");case"Orphaned":return this.parent.oldKey;default:return Ge(this.parent,"Unknown state")}}get _pool(){return this.__pool}get roomId(){return this.__pool?this.__pool.roomId:null}get _id(){return this.__id}get parent(){return this._parent}get _parentNode(){switch(this.parent.type){case"HasParent":return this.parent.node;case"NoParent":return null;case"Orphaned":return null;default:return Ge(this.parent,"Unknown state")}}get _parentKey(){switch(this.parent.type){case"HasParent":return this.parent.key;case"NoParent":return null;case"Orphaned":return this.parent.oldKey;default:return Ge(this.parent,"Unknown state")}}_apply(e,t){switch(e.type){case 5:return this.parent.type==="HasParent"?this.parent.node._detachChild(this):{modified:!1}}return{modified:!1}}_setParentLink(e,t){switch(this.parent.type){case"HasParent":if(this.parent.node!==e)throw new Error("Cannot set parent: node already has a parent");this._parent=sr(e,t);return;case"Orphaned":case"NoParent":{this._parent=sr(e,t);return}default:return Ge(this.parent,"Unknown state")}}_attach(e,t){if(this.__id||this.__pool)throw new Error("Cannot attach node: already attached");t.addNode(e,this),this.__id=e,this.__pool=t}_detach(){switch(this.__pool&&this.__id&&this.__pool.deleteNode(this.__id),this.parent.type){case"HasParent":{this._parent=lr(this.parent.key);break}case"NoParent":{this._parent=ar;break}case"Orphaned":{this._parent=lr(this.parent.oldKey);break}default:Ge(this.parent,"Unknown state")}this.__pool=void 0}invalidate(){this._cachedImmutable!==void 0&&(this._cachedImmutable=void 0,this.parent.type==="HasParent"&&this.parent.node.invalidate())}toImmutable(){return this._cachedImmutable===void 0&&(this._cachedImmutable=this._toImmutable()),this._cachedImmutable}},qe=class extends sn{constructor(e){super(),this._data=e}get data(){return this._data}static _deserialize([e,t],n,r){const i=new qe(t.data);return i._attach(e,r),i}_toOps(e,t,n){if(this._id===void 0)throw new Error("Cannot serialize register if parentId or parentKey is undefined");return[{type:8,opId:n==null?void 0:n.generateOpId(),id:this._id,parentId:e,parentKey:t,data:this.data}]}_serialize(){if(this.parent.type!=="HasParent")throw new Error("Cannot serialize LiveRegister if parent is missing");return{type:3,parentId:Y(this.parent.node._id,"Parent node expected to have ID"),parentKey:this.parent.key,data:this.data}}_attachChild(e){throw new Error("Method not implemented.")}_detachChild(e){throw new Error("Method not implemented.")}_apply(e,t){return super._apply(e,t)}_toImmutable(){return this._data}},Ze=class extends sn{constructor(e){if(super(),this.unacknowledgedSet=new Map,e){const t=[];for(const n of e){const r=ft(n[1]);r._setParentLink(this,n[0]),t.push([n[0],r])}this._map=new Map(t)}else this._map=new Map}_toOps(e,t,n){if(this._id===void 0)throw new Error("Cannot serialize item is not attached");const r=[],i={id:this._id,opId:n==null?void 0:n.generateOpId(),type:7,parentId:e,parentKey:t};r.push(i);for(const[o,s]of this._map)r.push(...s._toOps(this._id,o,n));return r}static _deserialize([e,t],n,r){const i=new Ze;i._attach(e,r);const o=n.get(e);if(o===void 0)return i;for(const[s,a]of o){const l=ri([s,a],n,r);l._setParentLink(i,a.parentKey),i._map.set(a.parentKey,l),i.invalidate()}return i}_attach(e,t){super._attach(e,t);for(const[n,r]of this._map)fe(r)&&r._attach(t.generateId(),t)}_attachChild(e,t){if(this._pool===void 0)throw new Error("Can't attach child if managed pool is not present");const{id:n,parentKey:r,opId:i}=e,o=r,s=yt(e);if(this._pool.getNode(n)!==void 0)return{modified:!1};if(t===2){const c=this.unacknowledgedSet.get(o);if(c===i)return this.unacknowledgedSet.delete(o),{modified:!1};if(c!==void 0)return{modified:!1}}else t===1&&this.unacknowledgedSet.delete(o);const a=this._map.get(o);let l;if(a){const c=Y(this._id);l=a._toOps(c,o),a._detach()}else l=[{type:5,id:n}];return s._setParentLink(this,o),s._attach(n,this._pool),this._map.set(o,s),this.invalidate(),{modified:{node:this,type:"LiveMap",updates:{[o]:{type:"update"}}},reverse:l}}_detach(){super._detach();for(const e of this._map.values())e._detach()}_detachChild(e){const t=Y(this._id),n=Y(e._parentKey),r=e._toOps(t,n,this._pool);for(const[o,s]of this._map)s===e&&(this._map.delete(o),this.invalidate());return e._detach(),{modified:{node:this,type:"LiveMap",updates:{[n]:{type:"delete"}}},reverse:r}}_serialize(){if(this.parent.type!=="HasParent")throw new Error("Cannot serialize LiveMap if parent is missing");return{type:2,parentId:Y(this.parent.node._id,"Parent node expected to have ID"),parentKey:this.parent.key}}get(e){const t=this._map.get(e);if(t!==void 0)return it(t)}set(e,t){const n=this._map.get(e);n&&n._detach();const r=ft(t);if(r._setParentLink(this,e),this._map.set(e,r),this.invalidate(),this._pool&&this._id){const i=this._pool.generateId();r._attach(i,this._pool);const o=new Map;o.set(this._id,{node:this,type:"LiveMap",updates:{[e]:{type:"update"}}});const s=r._toOps(this._id,e,this._pool);this.unacknowledgedSet.set(e,Y(s[0].opId)),this._pool.dispatch(r._toOps(this._id,e,this._pool),n?n._toOps(this._id,e):[{type:5,id:i}],o)}}get size(){return this._map.size}has(e){return this._map.has(e)}delete(e){const t=this._map.get(e);if(t===void 0)return!1;if(t._detach(),this._map.delete(e),this.invalidate(),this._pool&&t._id){const n=Y(this._id),r=new Map;r.set(n,{node:this,type:"LiveMap",updates:{[e]:{type:"delete"}}}),this._pool.dispatch([{type:5,id:t._id,opId:this._pool.generateOpId()}],t._toOps(n,e),r)}return!0}entries(){const e=this._map.entries();return{[Symbol.iterator](){return this},next(){const t=e.next();if(t.done)return{done:!0,value:void 0};const r=t.value[0],i=it(t.value[1]);return{value:[r,i]}}}}[Symbol.iterator](){return this.entries()}keys(){return this._map.keys()}values(){const e=this._map.values();return{[Symbol.iterator](){return this},next(){const t=e.next();return t.done?{done:!0,value:void 0}:{value:it(t.value)}}}}forEach(e){for(const t of this)e(t[1],t[0],this)}toImmutable(){return super.toImmutable()}_toImmutable(){const e=new Map;for(const[t,n]of this._map)e.set(t,n.toImmutable());return Hn(e)}},Qe=class extends sn{constructor(e={}){super(),this._propToLastUpdate=new Map;for(const t in e){const n=e[t];n!==void 0&&fe(n)&&n._setParentLink(this,t)}this._map=new Map(Object.entries(e))}_toOps(e,t,n){if(this._id===void 0)throw new Error("Cannot serialize item is not attached");const r=n==null?void 0:n.generateOpId(),i=[],o=e!==void 0&&t!==void 0?{type:4,id:this._id,opId:r,parentId:e,parentKey:t,data:{}}:{type:4,id:this._id,opId:r,data:{}};i.push(o);for(const[s,a]of this._map)fe(a)?i.push(...a._toOps(this._id,s,n)):o.data[s]=a;return i}static _deserialize([e,t],n,r){const i=new Qe(t.data);return i._attach(e,r),this._deserializeChildren(i,n,r)}static _deserializeChildren(e,t,n){const r=t.get(Y(e._id));if(r===void 0)return e;for(const[i,o]of r){const s=Uo([i,o],t,n);zt(s)&&s._setParentLink(e,o.parentKey),e._map.set(o.parentKey,s),e.invalidate()}return e}_attach(e,t){super._attach(e,t);for(const[n,r]of this._map)fe(r)&&r._attach(t.generateId(),t)}_attachChild(e,t){if(this._pool===void 0)throw new Error("Can't attach child if managed pool is not present");const{id:n,opId:r,parentKey:i}=e,o=ti(e);if(this._pool.getNode(n)!==void 0)return this._propToLastUpdate.get(i)===r&&this._propToLastUpdate.delete(i),{modified:!1};if(t===0)this._propToLastUpdate.set(i,Y(r));else if(this._propToLastUpdate.get(i)!==void 0)return this._propToLastUpdate.get(i)===r?(this._propToLastUpdate.delete(i),{modified:!1}):{modified:!1};const s=Y(this._id),a=this._map.get(i);let l;return fe(a)?(l=a._toOps(s,i),a._detach()):a===void 0?l=[{type:6,id:s,key:i}]:l=[{type:3,id:s,data:{[i]:a}}],this._map.set(i,o),this.invalidate(),zt(o)&&(o._setParentLink(this,i),o._attach(n,this._pool)),{reverse:l,modified:{node:this,type:"LiveObject",updates:{[i]:{type:"update"}}}}}_detachChild(e){if(e){const t=Y(this._id),n=Y(e._parentKey),r=e._toOps(t,n,this._pool);for(const[o,s]of this._map)s===e&&(this._map.delete(o),this.invalidate());return e._detach(),{modified:{node:this,type:"LiveObject",updates:{[n]:{type:"delete"}}},reverse:r}}return{modified:!1}}_detach(){super._detach();for(const e of this._map.values())fe(e)&&e._detach()}_apply(e,t){return e.type===3?this._applyUpdate(e,t):e.type===6?this._applyDeleteObjectKey(e):super._apply(e,t)}_serialize(){const e={};for(const[t,n]of this._map)fe(n)||(e[t]=n);return this.parent.type==="HasParent"&&this.parent.node._id?{type:0,parentId:this.parent.node._id,parentKey:this.parent.key,data:e}:{type:0,data:e}}_applyUpdate(e,t){let n=!1;const r=Y(this._id),i=[],o={type:3,id:r,data:{}};i.push(o);for(const a in e.data){const l=this._map.get(a);fe(l)?(i.push(...l._toOps(r,a)),l._detach()):l!==void 0?o.data[a]=l:l===void 0&&i.push({type:6,id:r,key:a})}const s={};for(const a in e.data){const l=e.data[a];if(l===void 0)continue;if(t)this._propToLastUpdate.set(a,Y(e.opId));else if(this._propToLastUpdate.get(a)===void 0)n=!0;else if(this._propToLastUpdate.get(a)===e.opId){this._propToLastUpdate.delete(a);continue}else continue;const c=this._map.get(a);fe(c)&&c._detach(),n=!0,s[a]={type:"update"},this._map.set(a,l),this.invalidate()}return Object.keys(o.data).length!==0&&i.unshift(o),n?{modified:{node:this,type:"LiveObject",updates:s},reverse:i}:{modified:!1}}_applyDeleteObjectKey(e){const t=e.key;if(this._map.has(t)===!1)return{modified:!1};if(this._propToLastUpdate.get(t)!==void 0)return{modified:!1};const n=this._map.get(t),r=Y(this._id);let i=[];return fe(n)?(i=n._toOps(r,e.key),n._detach()):n!==void 0&&(i=[{type:3,id:r,data:{[t]:n}}]),this._map.delete(t),this.invalidate(),{modified:{node:this,type:"LiveObject",updates:{[e.key]:{type:"delete"}}},reverse:i}}toObject(){return Bo(this._map)}set(e,t){this.update({[e]:t})}get(e){return this._map.get(e)}delete(e){const t=e,n=this._map.get(t);if(n===void 0)return;if(this._pool===void 0||this._id===void 0){fe(n)&&n._detach(),this._map.delete(t),this.invalidate();return}let r;fe(n)?(n._detach(),r=n._toOps(this._id,t)):r=[{type:3,data:{[t]:n},id:this._id}],this._map.delete(t),this.invalidate();const i=new Map;i.set(this._id,{node:this,type:"LiveObject",updates:{[e]:{type:"delete"}}}),this._pool.dispatch([{type:6,key:t,id:this._id,opId:this._pool.generateOpId()}],r,i)}update(e){if(this._pool===void 0||this._id===void 0){for(const l in e){const c=e[l];if(c===void 0)continue;const u=this._map.get(l);fe(u)&&u._detach(),fe(c)&&c._setParentLink(this,l),this._map.set(l,c),this.invalidate()}return}const t=[],n=[],r=this._pool.generateOpId(),i={},o={id:this._id,type:3,data:{}},s={};for(const l in e){const c=e[l];if(c===void 0)continue;const u=this._map.get(l);if(fe(u)?(n.push(...u._toOps(this._id,l)),u._detach()):u===void 0?n.push({type:6,id:this._id,key:l}):o.data[l]=u,fe(c)){c._setParentLink(this,l),c._attach(this._pool.generateId(),this._pool);const d=c._toOps(this._id,l,this._pool),p=d.find(m=>m.parentId===this._id);p&&this._propToLastUpdate.set(l,Y(p.opId)),t.push(...d)}else i[l]=c,this._propToLastUpdate.set(l,r);this._map.set(l,c),this.invalidate(),s[l]={type:"update"}}Object.keys(o.data).length!==0&&n.unshift(o),Object.keys(i).length!==0&&t.unshift({opId:r,id:this._id,type:3,data:i});const a=new Map;a.set(this._id,{node:this,type:"LiveObject",updates:s}),this._pool.dispatch(t,n,a)}toImmutable(){return super.toImmutable()}_toImmutable(){const e={};for(const[t,n]of this._map)e[t]=zt(n)?n.toImmutable():n;return e}},Hn=e=>e;function Co(e){return e.filter(t=>t!=null)}function Mo(e){const t=Tt({},e);return Object.keys(e).forEach(n=>{const r=n;t[r]===void 0&&delete t[r]}),t}function yt(e){return ft(ti(e))}function ti(e){switch(e.type){case 8:return e.data;case 4:return new Qe(e.data);case 7:return new Ze;case 2:return new et;default:return Ge(e,"Unknown creation Op")}}function ni(e,t){return e===t?!0:e.parent.type==="HasParent"?ni(e.parent.node,t):!1}function ri([e,t],n,r){switch(t.type){case 0:return Qe._deserialize([e,t],n,r);case 1:return et._deserialize([e,t],n,r);case 2:return Ze._deserialize([e,t],n,r);case 3:return qe._deserialize([e,t],n,r);default:throw new Error("Unexpected CRDT type")}}function Uo([e,t],n,r){switch(t.type){case 0:return Qe._deserialize([e,t],n,r);case 1:return et._deserialize([e,t],n,r);case 2:return Ze._deserialize([e,t],n,r);case 3:return t.data;default:throw new Error("Unexpected CRDT type")}}function zt(e){return ii(e)||Do(e)||oi(e)}function fe(e){return zt(e)||$o(e)}function ii(e){return e instanceof et}function Do(e){return e instanceof Ze}function oi(e){return e instanceof Qe}function $o(e){return e instanceof qe}function it(e){return e instanceof qe?e.data:e instanceof et||e instanceof Ze||e instanceof Qe?e:Ge(e,"Unknown AbstractCrdt")}function ft(e){return e instanceof Qe||e instanceof Ze||e instanceof et?e:new qe(e)}function zo(e,t){const n=[];return e.forEach((r,i)=>{t.get(i)||n.push({type:5,id:i})}),t.forEach((r,i)=>{const o=e.get(i);if(o)r.type===0&&(o.type!==0||JSON.stringify(r.data)!==JSON.stringify(o.data))&&n.push({type:3,id:i,data:r.data}),r.parentKey!==o.parentKey&&n.push({type:1,id:i,parentKey:Y(r.parentKey,"Parent key must not be missing")});else switch(r.type){case 3:n.push({type:8,id:i,parentId:r.parentId,parentKey:r.parentKey,data:r.data});break;case 1:n.push({type:2,id:i,parentId:r.parentId,parentKey:r.parentKey});break;case 0:n.push(r.parentId?{type:4,id:i,parentId:r.parentId,parentKey:r.parentKey,data:r.data}:{type:4,id:i,data:r.data});break;case 2:n.push({type:7,id:i,parentId:r.parentId,parentKey:r.parentKey});break}}),n}function Fo(e,t){const n=e.updates;for(const[r,i]of ai(t.updates))n[r]=i;return on(Tt({},t),{updates:n})}function Ko(e,t){const n=e.updates;for(const[r,i]of ai(t.updates))n[r]=i;return on(Tt({},t),{updates:n})}function Ho(e,t){const n=e.updates;return on(Tt({},t),{updates:n.concat(t.updates)})}function Vo(e,t){return e?e.type==="LiveObject"&&t.type==="LiveObject"?Fo(e,t):e.type==="LiveMap"&&t.type==="LiveMap"?Ko(e,t):e.type==="LiveList"&&t.type==="LiveList"?Ho(e,t):t:t}function cr(e){const t=typeof e;return e==null||t==="string"||t==="boolean"||t==="number"||Array.isArray(e)||Vn(e)}function Vn(e){return e!==null&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"}function si(e,t=""){if(!cr)return{path:t||"root",value:e};if(typeof e!="object"||e===null)return!1;for(const[n,r]of Object.entries(e)){const i=t?t+"."+n:n;if(!cr(r))return{path:i,value:r};if(typeof r=="object"){const o=si(r,i);if(o)return o}}return!1}function Bo(e){const t={};for(const[n,r]of e)t[n]=r;return t}function ai(e){return Object.entries(e)}function li(e){try{return JSON.parse(e)}catch{return}}function ci(e){try{const t=e.replace(/-/g,"+").replace(/_/g,"/");return decodeURIComponent(atob(t).split("").map(function(r){return"%"+("00"+r.charCodeAt(0).toString(16)).slice(-2)}).join(""))}catch{return atob(e)}}function Xo(e,t){return ei(e._getParentKeyOrThrow(),t._getParentKeyOrThrow())}var et=class extends sn{constructor(e=[]){super(),this._items=[],this._implicitlyDeletedItems=new WeakSet,this._unacknowledgedSets=new Map;let t;for(let n=0;n<e.length;n++){const r=Ue(t),i=ft(e[n]);i._setParentLink(this,r),this._items.push(i),t=r}}static _deserialize([e],t,n){const r=new et;r._attach(e,n);const i=t.get(e);if(i===void 0)return r;for(const[o,s]of i){const a=ri([o,s],t,n);a._setParentLink(r,s.parentKey),r._insertAndSort(a)}return r}_toOps(e,t,n){if(this._id===void 0)throw new Error("Cannot serialize item is not attached");const r=[],i={id:this._id,opId:n==null?void 0:n.generateOpId(),type:2,parentId:e,parentKey:t};r.push(i);for(const o of this._items)r.push(...o._toOps(this._id,o._getParentKeyOrThrow(),n));return r}_insertAndSort(e){this._items.push(e),this._sortItems()}_sortItems(){this._items.sort(Xo),this.invalidate()}_indexOfPosition(e){return this._items.findIndex(t=>t._getParentKeyOrThrow()===e)}_attach(e,t){super._attach(e,t);for(const n of this._items)n._attach(t.generateId(),t)}_detach(){super._detach();for(const e of this._items)e._detach()}_applySetRemote(e){if(this._pool===void 0)throw new Error("Can't attach child if managed pool is not present");const{id:t,parentKey:n}=e,r=yt(e);r._attach(t,this._pool),r._setParentLink(this,n);const i=e.deletedId,o=this._indexOfPosition(n);if(o!==-1){const s=this._items[o];if(s._id===i)return s._detach(),this._items[o]=r,{modified:ee(this,[ct(o,r)]),reverse:[]};{this._implicitlyDeletedItems.add(s),this._items[o]=r;const a=[ct(o,r)],l=this._detachItemAssociatedToSetOperation(e.deletedId);return l&&a.push(l),{modified:ee(this,a),reverse:[]}}}else{const s=[],a=this._detachItemAssociatedToSetOperation(e.deletedId);return a&&s.push(a),this._insertAndSort(r),s.push(Me(this._indexOfPosition(n),r)),{reverse:[],modified:ee(this,s)}}}_applySetAck(e){if(this._pool===void 0)throw new Error("Can't attach child if managed pool is not present");const t=[],n=this._detachItemAssociatedToSetOperation(e.deletedId);n&&t.push(n);const r=this._unacknowledgedSets.get(e.parentKey);if(r!==void 0){if(r!==e.opId)return t.length===0?{modified:!1}:{modified:ee(this,t),reverse:[]};this._unacknowledgedSets.delete(e.parentKey)}const i=this._indexOfPosition(e.parentKey),o=this._items.find(s=>s._id===e.id);if(o!==void 0){if(o._parentKey===e.parentKey)return{modified:t.length>0?ee(this,t):!1,reverse:[]};i!==-1&&(this._implicitlyDeletedItems.add(this._items[i]),this._items.splice(i,1),t.push(Rt(i)));const s=this._items.indexOf(o);o._setParentLink(this,e.parentKey),this._sortItems();const a=this._items.indexOf(o);return a!==s&&t.push(tt(s,a,o)),{modified:t.length>0?ee(this,t):!1,reverse:[]}}else{const s=this._pool.getNode(e.id);if(s&&this._implicitlyDeletedItems.has(s)){s._setParentLink(this,e.parentKey),this._implicitlyDeletedItems.delete(s),this._insertAndSort(s);const a=this._items.indexOf(s);return{modified:ee(this,[i===-1?Me(a,s):ct(a,s),...t]),reverse:[]}}else{i!==-1&&this._items.splice(i,1);const{newItem:a,newIndex:l}=this._createAttachItemAndSort(e,e.parentKey);return{modified:ee(this,[i===-1?Me(l,a):ct(l,a),...t]),reverse:[]}}}}_detachItemAssociatedToSetOperation(e){if(e===void 0||this._pool===void 0)return null;const t=this._pool.getNode(e);if(t===void 0)return null;const n=this._detachChild(t);return n.modified===!1?null:n.modified.updates[0]}_applyRemoteInsert(e){if(this._pool===void 0)throw new Error("Can't attach child if managed pool is not present");const t=e.parentKey,n=this._indexOfPosition(t);n!==-1&&this._shiftItemPosition(n,t);const{newItem:r,newIndex:i}=this._createAttachItemAndSort(e,t);return{modified:ee(this,[Me(i,r)]),reverse:[]}}_applyInsertAck(e){const t=this._items.find(i=>i._id===e.id),n=e.parentKey,r=this._indexOfPosition(n);if(t){if(t._parentKey===n)return{modified:!1};{const i=this._items.indexOf(t);r!==-1&&this._shiftItemPosition(r,n),t._setParentLink(this,n),this._sortItems();const o=this._indexOfPosition(n);return o===i?{modified:!1}:{modified:ee(this,[tt(i,o,t)]),reverse:[]}}}else{const i=Y(this._pool).getNode(e.id);if(i&&this._implicitlyDeletedItems.has(i)){i._setParentLink(this,n),this._implicitlyDeletedItems.delete(i),this._insertAndSort(i);const o=this._indexOfPosition(n);return{modified:ee(this,[Me(o,i)]),reverse:[]}}else{r!==-1&&this._shiftItemPosition(r,n);const{newItem:o,newIndex:s}=this._createAttachItemAndSort(e,n);return{modified:ee(this,[Me(s,o)]),reverse:[]}}}}_applyInsertUndoRedo(e){var t;const{id:n,parentKey:r}=e,i=yt(e);if(((t=this._pool)==null?void 0:t.getNode(n))!==void 0)return{modified:!1};i._attach(n,Y(this._pool)),i._setParentLink(this,r);const o=this._indexOfPosition(r);let s=r;if(o!==-1){const l=this._items[o]?this._items[o]._getParentKeyOrThrow():void 0,c=this._items[o+1]?this._items[o+1]._getParentKeyOrThrow():void 0;s=Ue(l,c),i._setParentLink(this,s)}this._insertAndSort(i);const a=this._indexOfPosition(s);return{modified:ee(this,[Me(a,i)]),reverse:[{type:5,id:n}]}}_applySetUndoRedo(e){var t;const{id:n,parentKey:r}=e,i=yt(e);if(((t=this._pool)==null?void 0:t.getNode(n))!==void 0)return{modified:!1};this._unacknowledgedSets.set(r,Y(e.opId));const o=this._indexOfPosition(r);i._attach(n,Y(this._pool)),i._setParentLink(this,r);const s=r;if(o!==-1){const a=this._items[o];a._detach(),this._items[o]=i;const l=a._toOps(Y(this._id),r,this._pool);_n(l,e.id);const c=[ct(o,i)],u=this._detachItemAssociatedToSetOperation(e.deletedId);return u&&c.push(u),{modified:ee(this,c),reverse:l}}else{this._insertAndSort(i),this._detachItemAssociatedToSetOperation(e.deletedId);const a=this._indexOfPosition(s);return{reverse:[{type:5,id:n}],modified:ee(this,[Me(a,i)])}}}_attachChild(e,t){if(this._pool===void 0)throw new Error("Can't attach child if managed pool is not present");let n;return e.intent==="set"?t===1?n=this._applySetRemote(e):t===2?n=this._applySetAck(e):n=this._applySetUndoRedo(e):t===1?n=this._applyRemoteInsert(e):t===2?n=this._applyInsertAck(e):n=this._applyInsertUndoRedo(e),n.modified!==!1&&this.invalidate(),n}_detachChild(e){if(e){const t=Y(e._parentKey),n=e._toOps(Y(this._id),t,this._pool),r=this._items.indexOf(e);return r===-1?{modified:!1}:(this._items.splice(r,1),this.invalidate(),e._detach(),{modified:ee(this,[Rt(r)]),reverse:n})}return{modified:!1}}_applySetChildKeyRemote(e,t){var n;if(this._implicitlyDeletedItems.has(t)){this._implicitlyDeletedItems.delete(t),t._setParentLink(this,e),this._insertAndSort(t);const o=this._items.indexOf(t);return{modified:ee(this,[Me(o,t)]),reverse:[]}}const r=t._parentKey;if(e===r)return{modified:!1};const i=this._indexOfPosition(e);if(i===-1){const o=this._items.indexOf(t);t._setParentLink(this,e),this._sortItems();const s=this._items.indexOf(t);return s===o?{modified:!1}:{modified:ee(this,[tt(o,s,t)]),reverse:[]}}else{this._items[i]._setParentLink(this,Ue(e,(n=this._items[i+1])==null?void 0:n._getParentKeyOrThrow()));const o=this._items.indexOf(t);t._setParentLink(this,e),this._sortItems();const s=this._items.indexOf(t);return s===o?{modified:!1}:{modified:ee(this,[tt(o,s,t)]),reverse:[]}}}_applySetChildKeyAck(e,t){var n,r;const i=Y(t._parentKey);if(this._implicitlyDeletedItems.has(t)){const o=this._indexOfPosition(e);return this._implicitlyDeletedItems.delete(t),o!==-1&&this._items[o]._setParentLink(this,Ue(e,(n=this._items[o+1])==null?void 0:n._getParentKeyOrThrow())),t._setParentLink(this,e),this._insertAndSort(t),{modified:!1}}else{if(e===i)return{modified:!1};const o=this._items.indexOf(t),s=this._indexOfPosition(e);s!==-1&&this._items[s]._setParentLink(this,Ue(e,(r=this._items[s+1])==null?void 0:r._getParentKeyOrThrow())),t._setParentLink(this,e),this._sortItems();const a=this._items.indexOf(t);return o===a?{modified:!1}:{modified:ee(this,[tt(o,a,t)]),reverse:[]}}}_applySetChildKeyUndoRedo(e,t){var n;const r=Y(t._parentKey),i=this._items.indexOf(t),o=this._indexOfPosition(e);o!==-1&&this._items[o]._setParentLink(this,Ue(e,(n=this._items[o+1])==null?void 0:n._getParentKeyOrThrow())),t._setParentLink(this,e),this._sortItems();const s=this._items.indexOf(t);return i===s?{modified:!1}:{modified:ee(this,[tt(i,s,t)]),reverse:[{type:1,id:Y(t._id),parentKey:r}]}}_setChildKey(e,t,n){return n===1?this._applySetChildKeyRemote(e,t):n===2?this._applySetChildKeyAck(e,t):this._applySetChildKeyUndoRedo(e,t)}_apply(e,t){return super._apply(e,t)}_serialize(){if(this.parent.type!=="HasParent")throw new Error("Cannot serialize LiveList if parent is missing");return{type:1,parentId:Y(this.parent.node._id,"Parent node expected to have ID"),parentKey:this.parent.key}}get length(){return this._items.length}push(e){return this.insert(e,this.length)}insert(e,t){if(t<0||t>this._items.length)throw new Error(`Cannot insert list item at index "${t}". index should be between 0 and ${this._items.length}`);const n=this._items[t-1]?this._items[t-1]._getParentKeyOrThrow():void 0,r=this._items[t]?this._items[t]._getParentKeyOrThrow():void 0,i=Ue(n,r),o=ft(e);if(o._setParentLink(this,i),this._insertAndSort(o),this._pool&&this._id){const s=this._pool.generateId();o._attach(s,this._pool),this._pool.dispatch(o._toOps(this._id,i,this._pool),[{type:5,id:s}],new Map([[this._id,ee(this,[Me(t,o)])]]))}}move(e,t){if(t<0)throw new Error("targetIndex cannot be less than 0");if(t>=this._items.length)throw new Error("targetIndex cannot be greater or equal than the list length");if(e<0)throw new Error("index cannot be less than 0");if(e>=this._items.length)throw new Error("index cannot be greater or equal than the list length");let n=null,r=null;e<t?(r=t===this._items.length-1?void 0:this._items[t+1]._getParentKeyOrThrow(),n=this._items[t]._getParentKeyOrThrow()):(r=this._items[t]._getParentKeyOrThrow(),n=t===0?void 0:this._items[t-1]._getParentKeyOrThrow());const i=Ue(n,r),o=this._items[e],s=o._getParentKeyOrThrow();if(o._setParentLink(this,i),this._sortItems(),this._pool&&this._id){const a=new Map([[this._id,ee(this,[tt(e,t,o)])]]);this._pool.dispatch([{type:1,id:Y(o._id),opId:this._pool.generateOpId(),parentKey:i}],[{type:1,id:Y(o._id),parentKey:s}],a)}}delete(e){if(e<0||e>=this._items.length)throw new Error(`Cannot delete list item at index "${e}". index should be between 0 and ${this._items.length-1}`);const t=this._items[e];if(t._detach(),this._items.splice(e,1),this.invalidate(),this._pool){const n=t._id;if(n){const r=new Map;r.set(Y(this._id),ee(this,[Rt(e)])),this._pool.dispatch([{id:n,opId:this._pool.generateOpId(),type:5}],t._toOps(Y(this._id),t._getParentKeyOrThrow()),r)}}}clear(){if(this._pool){const e=[],t=[],n=[];for(const i of this._items){i._detach();const o=i._id;o&&(e.push({type:5,id:o,opId:this._pool.generateOpId()}),t.push(...i._toOps(Y(this._id),i._getParentKeyOrThrow())),n.push(Rt(0)))}this._items=[],this.invalidate();const r=new Map;r.set(Y(this._id),ee(this,n)),this._pool.dispatch(e,t,r)}else{for(const e of this._items)e._detach();this._items=[],this.invalidate()}}set(e,t){if(e<0||e>=this._items.length)throw new Error(`Cannot set list item at index "${e}". index should be between 0 and ${this._items.length-1}`);const n=this._items[e],r=n._getParentKeyOrThrow(),i=n._id;n._detach();const o=ft(t);if(o._setParentLink(this,r),this._items[e]=o,this.invalidate(),this._pool&&this._id){const s=this._pool.generateId();o._attach(s,this._pool);const a=new Map;a.set(this._id,ee(this,[ct(e,o)]));const l=o._toOps(this._id,r,this._pool);_n(l,i),this._unacknowledgedSets.set(r,Y(l[0].opId));const c=n._toOps(this._id,r,void 0);_n(c,s),this._pool.dispatch(l,c,a)}}toArray(){return this._items.map(e=>it(e))}every(e){return this.toArray().every(e)}filter(e){return this.toArray().filter(e)}find(e){return this.toArray().find(e)}findIndex(e){return this.toArray().findIndex(e)}forEach(e){return this.toArray().forEach(e)}get(e){if(!(e<0||e>=this._items.length))return it(this._items[e])}indexOf(e,t){return this.toArray().indexOf(e,t)}lastIndexOf(e,t){return this.toArray().lastIndexOf(e,t)}map(e){return this._items.map((t,n)=>e(it(t),n))}some(e){return this.toArray().some(e)}[Symbol.iterator](){return new Yo(this._items)}_createAttachItemAndSort(e,t){const n=yt(e);n._attach(e.id,Y(this._pool)),n._setParentLink(this,t),this._insertAndSort(n);const r=this._indexOfPosition(t);return{newItem:n,newIndex:r}}_shiftItemPosition(e,t){var n;const r=Ue(t,this._items.length>e+1?(n=this._items[e+1])==null?void 0:n._getParentKeyOrThrow():void 0);this._items[e]._setParentLink(this,r)}toImmutable(){return super.toImmutable()}_toImmutable(){return this._items.map(t=>t.toImmutable())}},Yo=class{constructor(e){this._innerIterator=e[Symbol.iterator]()}[Symbol.iterator](){return this}next(){const e=this._innerIterator.next();return e.done?{done:!0,value:void 0}:{value:it(e.value)}}};function ee(e,t){return{node:e,type:"LiveList",updates:t}}function ct(e,t){return{index:e,type:"set",item:t instanceof qe?t.data:t}}function Rt(e){return{index:e,type:"delete"}}function Me(e,t){return{index:e,type:"insert",item:t instanceof qe?t.data:t}}function tt(e,t,n){return{index:t,type:"move",previousIndex:e,item:n instanceof qe?n.data:n}}function _n(e,t){if(e.length===0)throw new Error("Internal error. Serialized LiveStructure should have at least 1 operation");const n=e[0];n.intent="set",n.deletedId=t}var qo=["websocket:presence","websocket:storage","room:read","room:write","rooms:read","rooms:write"];function jo(e){if(!Vn(e))return!1;const{iat:t,exp:n}=e;return typeof t=="number"&&typeof n=="number"}function Go(e){const t=Date.now()/1e3;return t>e.exp-300||t<e.iat+300}function Jo(e){return qo.includes(e)}function ui(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function fi(e){return typeof e.appId=="string"&&e.roomId===void 0&&ui(e.scopes)}function Bn(e){return typeof e.appId=="string"&&typeof e.roomId=="string"&&typeof e.actor=="number"&&(e.id===void 0||typeof e.id=="string")&&ui(e.scopes)&&(e.maxConnectionsPerRoom===void 0||typeof e.maxConnectionsPerRoom=="number")}function Wo(e){return fi(e)||Bn(e)}function Zo(e){const t=e.split(".");if(t.length!==3)throw new Error("Authentication error: invalid JWT token");const n=li(ci(t[1]));if(n&&jo(n))return n;throw new Error("Authentication error: missing JWT metadata")}function Qo(e){const t=Zo(e);if(t&&Bn(t))return xo(t,["maxConnections"]);throw new Error("Authentication error: we expected a room token but did not get one. Hint: if you are using a callback, ensure the room is passed when creating the token. For more information: https://liveblocks.io/docs/api-reference/liveblocks-client#createClientCallback")}function es(e){return Object.defineProperty(e,"count",{value:e.length,enumerable:!1}),Object.defineProperty(e,"toArray",{value:()=>e,enumerable:!1}),Hn(e)}function hi(e){return e===null||typeof e=="string"||typeof e=="number"||typeof e=="boolean"}function di(e){return Array.isArray(e)}function ts(e){return!hi(e)&&!di(e)}M.__spreadValues=Tt;M.__spreadProps=on;M.__async=Oo;M.deprecate=Io;M.deprecateIf=So;M.throwUsageError=Po;M.errorIf=To;M.assertNever=Ge;M.nn=Y;M.ClientMsgCode=qr;M.OpCode=jr;M.CrdtType=Gr;M.isRootCrdt=Ao;M.isChildCrdt=Jr;M.ServerMsgCode=Wr;M.isRoomEventName=Lo;M.WebsocketCloseCodes=Zr;M.LiveRegister=qe;M.makePosition=Ue;M.comparePosition=ei;M.LiveList=et;M.LiveMap=Ze;M.LiveObject=Qe;M.freeze=Hn;M.compact=Co;M.compactObject=Mo;M.isSameNodeOrChildOf=ni;M.isLiveNode=fe;M.isLiveList=ii;M.isLiveObject=oi;M.getTreesDiffOperations=zo;M.mergeStorageUpdates=Vo;M.isPlainObject=Vn;M.findNonSerializableValue=si;M.tryParseJson=li;M.b64decode=ci;M.isTokenExpired=Go;M.isScope=Jo;M.isAppOnlyAuthToken=fi;M.isRoomAuthToken=Bn;M.isAuthToken=Wo;M.parseRoomAuthToken=Qo;M.asArrayWithLegacyMethods=es;M.isJsonScalar=hi;M.isJsonArray=di;M.isJsonObject=ts;Object.defineProperty(Ne,"__esModule",{value:!0});var R=M;function He(){const e=new Set,t=new Set;function n(s){return t.add(s),()=>t.delete(s)}function r(s){return e.add(s),()=>e.delete(s)}function i(s){e.forEach(a=>a(s)),e.clear(),t.forEach(a=>a(s))}function o(){e.clear(),t.clear()}return{notify:i,subscribe:n,subscribeOnce:r,clear:o,observable:{subscribe:n,subscribeOnce:r}}}function pi(e,t){let n=!1;const r=R.__spreadValues.call(void 0,{},e);return Object.keys(t).forEach(i=>{const o=i,s=t[o];r[o]!==s&&(s===void 0?delete r[o]:r[o]=s,n=!0)}),n?r:e}var an=class{constructor(){this._ev=He()}get didInvalidate(){return this._ev.observable}invalidate(){this._cache!==void 0&&(this._cache=void 0,this._ev.notify())}get current(){var e;return(e=this._cache)!=null?e:this._cache=this._toImmutable()}},ns=class extends an{constructor(e){super(),this._me=R.freeze.call(void 0,R.compactObject.call(void 0,e))}_toImmutable(){return this._me}patch(e){const t=this._me,n=pi(t,e);t!==n&&(this._me=R.freeze.call(void 0,n),this.invalidate())}};function rs(e,t){return R.freeze.call(void 0,R.compactObject.call(void 0,R.__spreadProps.call(void 0,R.__spreadValues.call(void 0,{},e),{presence:t})))}var is=class extends an{constructor(){super(),this._connections={},this._presences={},this._users={}}_toImmutable(){const e=R.compact.call(void 0,Object.keys(this._presences).map(t=>this.getUser(Number(t))));return R.asArrayWithLegacyMethods.call(void 0,e)}clearOthers(){this._connections={},this._presences={},this._users={},this.invalidate()}_getUser(e){const t=this._connections[e],n=this._presences[e];if(t!==void 0&&n!==void 0)return rs(t,n)}getUser(e){const t=this._users[e];if(t)return t;const n=this._getUser(e);if(n)return this._users[e]=n,n}_invalidateUser(e){this._users[e]!==void 0&&delete this._users[e],this.invalidate()}setConnection(e,t,n){this._connections[e]=R.freeze.call(void 0,{connectionId:e,id:t,info:n}),this._presences[e]!==void 0&&this._invalidateUser(e)}removeConnection(e){delete this._connections[e],delete this._presences[e],this._invalidateUser(e)}setOther(e,t){this._presences[e]=R.freeze.call(void 0,R.compactObject.call(void 0,t)),this._connections[e]!==void 0&&this._invalidateUser(e)}patchOther(e,t){const n=this._presences[e];if(n===void 0)return;const r=pi(n,t);n!==r&&(this._presences[e]=R.freeze.call(void 0,r),this._invalidateUser(e))}},os=class extends an{constructor(e){super(),this._value=R.freeze.call(void 0,R.compactObject.call(void 0,e))}_toImmutable(){return this._value}set(e){this._value=R.freeze.call(void 0,e),this.invalidate()}},ss=class extends an{constructor(e,t){super(),this._refs=e,this._refs.forEach(n=>{n.didInvalidate.subscribe(()=>this.invalidate())}),this._transform=t}_toImmutable(){return this._transform(this._refs[0].current,this._refs[1].current)}},gn=[250,500,1e3,2e3,4e3,8e3,1e4],vn=[2e3,3e4,6e4,3e5],as=3e4,ls=2e3;function cs(e){let t=0;return()=>`${e}:${t++}`}function yn(e){return e.state==="open"||e.state==="connecting"}function us(e,t,n){var r;const i=f=>f(),o=(r=t.unstable_batchedUpdates)!=null?r:i,s={roomId:t.roomId,getNode:f=>e.nodes.get(f),addNode:(f,_)=>void e.nodes.set(f,_),deleteNode:f=>void e.nodes.delete(f),generateId:()=>`${k()}:${e.clock++}`,generateOpId:()=>`${k()}:${e.opClock++}`,dispatch(f,_,w){const S=e.activeBatch;S?(S.ops.push(...f),w.forEach((T,ie)=>{S.updates.storageUpdates.set(ie,R.mergeStorageUpdates.call(void 0,S.updates.storageUpdates.get(ie),T))}),S.reverseOps.push(..._)):o(()=>{O(_,i),e.redoStack=[],er(f),N({storageUpdates:w},i)})}},a={customEvent:He(),me:He(),others:He(),error:He(),connection:He(),storage:He(),history:He(),storageDidLoad:He()},l=n||{authenticate(f,_){const w=e.token,S=w!==null&&R.parseRoomAuthToken.call(void 0,w);if(S&&!R.isTokenExpired.call(void 0,S)){const T=_(w);U(S,T)}else return f(t.roomId).then(({token:T})=>{if(e.connection.current.state!=="authenticating")return;const ie=R.parseRoomAuthToken.call(void 0,T),Q=_(T);U(ie,Q),e.token=T}).catch(T=>b())},send(f){if(e.socket===null)throw new Error("Can't send message if socket is null");e.socket.send(JSON.stringify(f))},delayFlush(f){return setTimeout(Se,f)},startHeartbeatInterval(){return setInterval(de,as)},schedulePongTimeout(){return setTimeout(Ie,ls)},scheduleReconnect(f){return setTimeout(x,f)}},c=new ss([e.connection,e.me],(f,_)=>yn(f)?{connectionId:f.id,id:f.userId,info:f.userInfo,presence:_}:null);function u(f,_){if(f.items.length===0)throw new Error("Internal error: cannot load storage without items");e.root?p(f.items,_):e.root=m(f.items);for(const w in e.initialStorage)e.root.get(w)===void 0&&e.root.set(w,e.initialStorage[w])}function d(f){const _=new Map;let w=null;for(const[S,T]of f)if(R.isRootCrdt.call(void 0,T))w=[S,T];else{const ie=[S,T],Q=_.get(T.parentId);Q!==void 0?Q.push(ie):_.set(T.parentId,[ie])}if(w===null)throw new Error("Root can't be null");return[w,_]}function p(f,_){if(!e.root)return;const w=new Map;e.nodes.forEach((ie,Q)=>{w.set(Q,ie._serialize())});const S=R.getTreesDiffOperations.call(void 0,w,new Map(f)),T=C(S,!1);N(T.updates,_)}function m(f){const[_,w]=d(f);return R.LiveObject._deserialize(_,w,s)}function y(f,_){e.undoStack.length>=50&&e.undoStack.shift(),e.undoStack.push(f),P(_)}function O(f,_){e.pausedHistory!==null?e.pausedHistory.unshift(...f):y(f,_)}function N({storageUpdates:f=new Map,presence:_=!1,others:w=[]},S){S(()=>{if(w.length>0){const T=e.others.current;for(const ie of w)a.others.notify({others:T,event:ie})}if(_&&a.me.notify(e.me.current),f.size>0){const T=Array.from(f.values());a.storage.notify(T)}})}function k(){const f=e.connection.current;if(yn(f))return f.id;if(e.lastConnectionId!==null)return e.lastConnectionId;throw new Error("Internal. Tried to get connection id but connection was never open")}function C(f,_){const w={reverse:[],updates:{storageUpdates:new Map,presence:!1}},S=new Set;for(const T of f)if(T.type==="presence"){const ie={type:"presence",data:{}};for(const Q in T.data)ie.data[Q]=e.me.current[Q];if(e.me.patch(T.data),e.buffer.me===null)e.buffer.me={type:"partial",data:T.data};else for(const Q in T.data)e.buffer.me.data[Q]=T.data[Q];w.reverse.unshift(ie),w.updates.presence=!0}else{let ie;T.opId||(T.opId=s.generateOpId()),_?ie=0:ie=e.offlineOperations.delete(R.nn.call(void 0,T.opId))?2:1;const Q=X(T,ie);if(Q.modified){const mn=Q.modified.node.parent.type==="HasParent"?R.nn.call(void 0,Q.modified.node.parent.node._id,"Expected parent node to have an ID"):void 0;(!mn||!S.has(mn))&&(w.updates.storageUpdates.set(R.nn.call(void 0,Q.modified.node._id),R.mergeStorageUpdates.call(void 0,w.updates.storageUpdates.get(R.nn.call(void 0,Q.modified.node._id)),Q.modified)),w.reverse.unshift(...Q.reverse)),(T.type===2||T.type===7||T.type===4)&&S.add(R.nn.call(void 0,Q.modified.node._id))}}return w}function X(f,_){switch(f.type){case 6:case 3:case 5:{const w=e.nodes.get(f.id);return w===void 0?{modified:!1}:w._apply(f,_===0)}case 1:{const w=e.nodes.get(f.id);return w===void 0?{modified:!1}:w.parent.type==="HasParent"&&R.isLiveList.call(void 0,w.parent.node)?w.parent.node._setChildKey(f.parentKey,w,_):{modified:!1}}case 4:case 2:case 7:case 8:{if(f.parentId===void 0)return{modified:!1};const w=e.nodes.get(f.parentId);return w===void 0?{modified:!1}:w._attachChild(f,_)}}}function g(f,_){return a.storage.subscribe(w=>{const S=w.filter(T=>R.isSameNodeOrChildOf.call(void 0,T.node,f));S.length>0&&_(S)})}function K(f,_){return a.storage.subscribe(w=>{for(const S of w)S.node._id===f._id&&_(S.node)})}function B(f,_,w){if(typeof f=="string"&&R.isRoomEventName.call(void 0,f)){if(typeof _!="function")throw new Error("Second argument must be a callback function");const S=_;switch(f){case"event":return a.customEvent.subscribe(S);case"my-presence":return a.me.subscribe(S);case"others":{const T=S;return a.others.subscribe(({others:ie,event:Q})=>T(ie,Q))}case"error":return a.error.subscribe(S);case"connection":return a.connection.subscribe(S);case"storage":return a.storage.subscribe(S);case"history":return a.history.subscribe(S);default:return R.assertNever.call(void 0,f,"Unknown event")}}if(_===void 0||typeof f=="function")if(typeof f=="function"){const S=f;return a.storage.subscribe(S)}else throw new Error("Please specify a listener callback");if(R.isLiveNode.call(void 0,f)){const S=f;return w!=null&&w.isDeep?g(S,_):K(S,_)}throw new Error(`"${f}" is not a valid event name`)}function L(){return e.connection.current.state}function x(){var f,_,w,S;if(e.connection.current.state!=="closed"&&e.connection.current.state!=="unavailable")return null;const T=ms(t.authentication,(_=(f=t.polyfills)==null?void 0:f.fetch)!=null?_:t.fetchPolyfill),ie=ps(t.liveblocksServer,(S=(w=t.polyfills)==null?void 0:w.WebSocket)!=null?S:t.WebSocketPolyfill);oe({state:"authenticating"},o),l.authenticate(T,ie)}function E(f,_){const w={};e.buffer.me===null&&(e.buffer.me={type:"partial",data:{}});for(const S in f){const T=f[S];T!==void 0&&(e.buffer.me.data[S]=T,w[S]=e.me.current[S])}e.me.patch(f),e.activeBatch?(_!=null&&_.addToHistory&&e.activeBatch.reverseOps.push({type:"presence",data:w}),e.activeBatch.updates.presence=!0):(Se(),o(()=>{_!=null&&_.addToHistory&&O([{type:"presence",data:w}],i),N({presence:!0},i)}))}function U(f,_){_.addEventListener("message",j),_.addEventListener("open",ge),_.addEventListener("close",W),_.addEventListener("error",he),oe({state:"connecting",id:f.actor,userInfo:f.info,userId:f.id},o),e.idFactory=cs(f.actor),e.socket=_}function b(f){e.token=null,oe({state:"unavailable"},o),e.numberOfRetry++,e.timeoutHandles.reconnect=l.scheduleReconnect(se())}function H(f){f==="visible"&&e.connection.current.state==="open"&&de()}function G(f){if(f.targetActor!==void 0){const w=e.others.getUser(f.actor);e.others.setOther(f.actor,f.data);const S=e.others.getUser(f.actor);if(w===void 0&&S!==void 0)return{type:"enter",user:S}}else e.others.patchOther(f.actor,f.data);const _=e.others.getUser(f.actor);if(_)return{type:"update",updates:f.data,user:_}}function h(f){const _=e.others.getUser(f.actor);return _?(e.others.removeConnection(f.actor),{type:"leave",user:_}):null}function I(f){for(const _ in f.users){const w=f.users[_],S=Number(_);e.others.setConnection(S,w.id,w.info)}return{type:"reset"}}function v(){e.connection.current.state==="unavailable"&<()}function P(f){f(()=>{a.history.notify({canUndo:nr(),canRedo:rr()})})}function $(f){e.others.setConnection(f.actor,f.id,f.info),e.buffer.messages.push({type:100,data:e.me.current,targetActor:f.actor}),Se();const _=e.others.getUser(f.actor);return _?{type:"enter",user:_}:void 0}function F(f){return R.isJsonObject.call(void 0,f)?f:null}function V(f){const _=R.tryParseJson.call(void 0,f);return _===void 0?null:R.isJsonArray.call(void 0,_)?R.compact.call(void 0,_.map(w=>F(w))):R.compact.call(void 0,[F(_)])}function j(f){if(f.data==="pong"){clearTimeout(e.timeoutHandles.pongTimeout);return}const _=V(f.data);if(_===null||_.length===0)return;const w={storageUpdates:new Map,others:[]};o(()=>{for(const S of _)switch(S.type){case 101:{const T=$(S);T&&w.others.push(T);break}case 100:{const T=G(S);T&&w.others.push(T);break}case 103:{a.customEvent.notify({connectionId:S.actor,event:S.event});break}case 102:{const T=h(S);T&&w.others.push(T);break}case 104:{w.others.push(I(S));break}case 200:{const T=new Map(e.offlineOperations);u(S,i),Ji(T,i),pn==null||pn(),a.storageDidLoad.notify();break}case 201:{C(S.ops,!1).updates.storageUpdates.forEach((ie,Q)=>{w.storageUpdates.set(Q,R.mergeStorageUpdates.call(void 0,w.storageUpdates.get(Q),ie))});break}}N(w,i)})}function W(f){e.socket=null,clearTimeout(e.timeoutHandles.pongTimeout),clearInterval(e.intervalHandles.heartbeat),e.timeoutHandles.flush&&clearTimeout(e.timeoutHandles.flush),clearTimeout(e.timeoutHandles.reconnect),e.others.clearOthers(),o(()=>{if(N({others:[{type:"reset"}]},i),f.code>=4e3&&f.code<=4100){oe({state:"failed"},i);const _=new ds(f.reason,f.code);a.error.notify(_);const w=se(!0);e.numberOfRetry++,oe({state:"unavailable"},i),e.timeoutHandles.reconnect=l.scheduleReconnect(w)}else if(f.code===4999)oe({state:"closed"},i);else{const _=se();e.numberOfRetry++,oe({state:"unavailable"},i),e.timeoutHandles.reconnect=l.scheduleReconnect(_)}})}function oe(f,_){e.connection.set(f),_(()=>{a.connection.notify(f.state)})}function se(f=!1){return f?vn[e.numberOfRetry<vn.length?e.numberOfRetry:vn.length-1]:gn[e.numberOfRetry<gn.length?e.numberOfRetry:gn.length-1]}function he(){}function ge(){clearInterval(e.intervalHandles.heartbeat),e.intervalHandles.heartbeat=l.startHeartbeatInterval(),e.connection.current.state==="connecting"&&(oe(R.__spreadProps.call(void 0,R.__spreadValues.call(void 0,{},e.connection.current),{state:"open"}),o),e.numberOfRetry=0,e.lastConnectionId!==void 0&&(e.buffer.me={type:"full",data:R.__spreadValues.call(void 0,{},e.me.current)},Se()),e.lastConnectionId=e.connection.current.id,e.root&&e.buffer.messages.push({type:200}),Se())}function de(){e.socket!==null&&(clearTimeout(e.timeoutHandles.pongTimeout),e.timeoutHandles.pongTimeout=l.schedulePongTimeout(),e.socket.readyState===e.socket.OPEN&&e.socket.send("ping"))}function Ie(){lt()}function lt(){e.socket&&(e.socket.removeEventListener("open",ge),e.socket.removeEventListener("message",j),e.socket.removeEventListener("close",W),e.socket.removeEventListener("error",he),e.socket.close(),e.socket=null),oe({state:"unavailable"},o),clearTimeout(e.timeoutHandles.pongTimeout),e.timeoutHandles.flush&&clearTimeout(e.timeoutHandles.flush),clearTimeout(e.timeoutHandles.reconnect),clearInterval(e.intervalHandles.heartbeat),x()}function Ji(f,_){if(f.size===0)return;const w=[],S=Array.from(f.values()),T=C(S,!0);w.push({type:201,ops:S}),N(T.updates,_),l.send(w)}function Se(){const f=e.buffer.storageOperations;if(f.length>0&&f.forEach(S=>{e.offlineOperations.set(R.nn.call(void 0,S.opId),S)}),e.socket===null||e.socket.readyState!==e.socket.OPEN){e.buffer.storageOperations=[];return}const _=Date.now();if(_-e.lastFlushTime>t.throttleDelay){const S=Wi(e);if(S.length===0)return;l.send(S),e.buffer={messages:[],storageOperations:[],me:null},e.lastFlushTime=_}else e.timeoutHandles.flush!==null&&clearTimeout(e.timeoutHandles.flush),e.timeoutHandles.flush=l.delayFlush(t.throttleDelay-(_-e.lastFlushTime))}function Wi(f){const _=[];f.buffer.me&&_.push(f.buffer.me.type==="full"?{type:100,targetActor:-1,data:f.buffer.me.data}:{type:100,data:f.buffer.me.data});for(const w of f.buffer.messages)_.push(w);return f.buffer.storageOperations.length>0&&_.push({type:201,ops:f.buffer.storageOperations}),_}function Zi(){e.socket&&(e.socket.removeEventListener("open",ge),e.socket.removeEventListener("message",j),e.socket.removeEventListener("close",W),e.socket.removeEventListener("error",he),e.socket.close(),e.socket=null),o(()=>{oe({state:"closed"},i),e.timeoutHandles.flush&&clearTimeout(e.timeoutHandles.flush),clearTimeout(e.timeoutHandles.reconnect),clearTimeout(e.timeoutHandles.pongTimeout),clearInterval(e.intervalHandles.heartbeat),e.others.clearOthers(),N({others:[{type:"reset"}]},i),Object.values(a).forEach(f=>f.clear())})}function Qi(){return e.me.current}function eo(){return e.others.current}function to(f,_={shouldQueueEventIfNotReady:!1}){e.socket===null&&!_.shouldQueueEventIfNotReady||(e.buffer.messages.push({type:103,event:f}),Se())}function er(f){e.buffer.storageOperations.push(...f),Se()}let dn=null,pn=null;function tr(){return dn===null&&(e.buffer.messages.push({type:200}),Se(),dn=new Promise(f=>pn=f)),dn}function no(){const f=e.root;return f!==void 0?f:(tr(),null)}function ro(){return R.__async.call(void 0,this,null,function*(){return e.root?Promise.resolve({root:e.root}):(yield tr(),{root:R.nn.call(void 0,e.root)})})}function io(){if(e.activeBatch)throw new Error("undo is not allowed during a batch");const f=e.undoStack.pop();if(f===void 0)return;e.pausedHistory=null;const _=C(f,!0);o(()=>{N(_.updates,i),e.redoStack.push(_.reverse),P(i)});for(const w of f)w.type!=="presence"&&e.buffer.storageOperations.push(w);Se()}function nr(){return e.undoStack.length>0}function oo(){if(e.activeBatch)throw new Error("redo is not allowed during a batch");const f=e.redoStack.pop();if(f===void 0)return;e.pausedHistory=null;const _=C(f,!0);o(()=>{N(_.updates,i),e.undoStack.push(_.reverse),P(i)});for(const w of f)w.type!=="presence"&&e.buffer.storageOperations.push(w);Se()}function rr(){return e.redoStack.length>0}function so(f){if(e.activeBatch)return f();let _;return o(()=>{e.activeBatch={ops:[],updates:{storageUpdates:new Map,presence:!1,others:[]},reverseOps:[]};try{_=f()}finally{const w=e.activeBatch;e.activeBatch=null,w.reverseOps.length>0&&O(w.reverseOps,i),w.ops.length>0&&(e.redoStack=[]),w.ops.length>0&&er(w.ops),N(w.updates,i),Se()}}),_}function ao(){e.pausedHistory=[]}function lo(){const f=e.pausedHistory;e.pausedHistory=null,f!==null&&f.length>0&&y(f,o)}function co(){e.socket&&(e.socket=null)}function uo(f){W(f)}return{onClose:W,onMessage:j,authenticationSuccess:U,heartbeat:de,onNavigatorOnline:v,simulateSocketClose:co,simulateSendCloseEvent:uo,onVisibilityChange:H,getUndoStack:()=>e.undoStack,getItemsCount:()=>e.nodes.size,connect:x,disconnect:Zi,subscribe:B,updatePresence:E,broadcastEvent:to,batch:so,undo:io,redo:oo,canUndo:nr,canRedo:rr,pauseHistory:ao,resumeHistory:lo,getStorage:ro,getStorageSnapshot:no,events:{customEvent:a.customEvent.observable,others:a.others.observable,me:a.me.observable,error:a.error.observable,connection:a.connection.observable,storage:a.storage.observable,history:a.history.observable,storageDidLoad:a.storageDidLoad.observable},getConnectionState:L,isSelfAware:()=>yn(e.connection.current),getSelf:()=>c.current,getPresence:Qi,getOthers:eo}}function fs(e,t){const n=new is,r=new os({state:"closed"});return{token:null,lastConnectionId:null,socket:null,numberOfRetry:0,lastFlushTime:0,timeoutHandles:{flush:null,reconnect:0,pongTimeout:0},buffer:{me:{type:"full",data:e},messages:[],storageOperations:[]},intervalHandles:{heartbeat:0},connection:r,me:new ns(e),others:n,initialStorage:t,idFactory:null,clock:0,opClock:0,nodes:new Map,root:void 0,undoStack:[],redoStack:[],pausedHistory:null,activeBatch:null,offlineOperations:new Map}}function hs(e,t){const{initialPresence:n,initialStorage:r}=e,i=fs(typeof n=="function"?n(t.roomId):n,typeof r=="function"?r(t.roomId):r),o=us(i,t),s={id:t.roomId,getConnectionState:o.getConnectionState,isSelfAware:o.isSelfAware,getSelf:o.getSelf,subscribe:o.subscribe,getPresence:o.getPresence,updatePresence:o.updatePresence,getOthers:o.getOthers,broadcastEvent:o.broadcastEvent,getStorage:o.getStorage,getStorageSnapshot:o.getStorageSnapshot,events:o.events,batch:o.batch,history:{undo:o.undo,redo:o.redo,canUndo:o.canUndo,canRedo:o.canRedo,pause:o.pauseHistory,resume:o.resumeHistory},__INTERNAL_DO_NOT_USE:{simulateCloseWebsocket:o.simulateSocketClose,simulateSendCloseEvent:o.simulateSendCloseEvent}};return{connect:o.connect,disconnect:o.disconnect,onNavigatorOnline:o.onNavigatorOnline,onVisibilityChange:o.onVisibilityChange,room:s}}var ds=class extends Error{constructor(e,t){super(e),this.code=t}};function ps(e,t){if(typeof window>"u"&&t===void 0)throw new Error("To use Liveblocks client in a non-dom environment, you need to provide a WebSocket polyfill.");const n=t||WebSocket;return r=>new n(`${e}/?token=${r}&version=0.18.3`)}function ms(e,t){if(e.type==="public"){if(typeof window>"u"&&t===void 0)throw new Error("To use Liveblocks client in a non-dom environment with a publicApiKey, you need to provide a fetch polyfill.");return n=>ur(t||fetch,e.url,{room:n,publicApiKey:e.publicApiKey})}if(e.type==="private"){if(typeof window>"u"&&t===void 0)throw new Error("To use Liveblocks client in a non-dom environment with a url as auth endpoint, you need to provide a fetch polyfill.");return n=>ur(t||fetch,e.url,{room:n})}if(e.type==="custom")return n=>R.__async.call(void 0,this,null,function*(){const r=yield e.callback(n);if(!r||!r.token)throw new Error('Authentication error. We expect the authentication callback to return a token, but it does not. Hint: the return value should look like: { token: "..." }');return r});throw new Error("Internal error. Unexpected authentication type")}function ur(e,t,n){return R.__async.call(void 0,this,null,function*(){const r=yield e(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!r.ok)throw new wn(`Expected a status 200 but got ${r.status} when doing a POST request on "${t}"`);let i;try{i=yield r.json()}catch(s){throw new wn(`Expected a JSON response when doing a POST request on "${t}". ${s}`)}if(!R.isPlainObject.call(void 0,i)||typeof i.token!="string")throw new wn(`Expected a JSON response of the form \`{ token: "..." }\` when doing a POST request on "${t}", but got ${JSON.stringify(i)}`);const{token:o}=i;return{token:o}})}var wn=class extends Error{constructor(e){super(e)}};function _s(e){const t=e,n=gs(e),r=new Map;function i(a){const l=r.get(a);return l?l.room:null}function o(a,l){var c,u;let d=r.get(a);if(d)return d.room;if(R.deprecateIf.call(void 0,l.initialPresence===null||l.initialPresence===void 0,"Please provide an initial presence value for the current user when entering the room."),d=hs({initialPresence:(c=l.initialPresence)!=null?c:{},initialStorage:l.initialStorage},{roomId:a,throttleDelay:n,polyfills:t.polyfills,WebSocketPolyfill:t.WebSocketPolyfill,fetchPolyfill:t.fetchPolyfill,unstable_batchedUpdates:l==null?void 0:l.unstable_batchedUpdates,liveblocksServer:(t==null?void 0:t.liveblocksServer)||"wss://api.liveblocks.io/v6",authentication:vs(t,a)}),r.set(a,d),!l.DO_NOT_USE_withoutConnecting){if(typeof atob>"u"){if(((u=t.polyfills)==null?void 0:u.atob)===void 0)throw new Error("You need to polyfill atob to use the client in your environment. Please follow the instructions at https://liveblocks.io/docs/errors/liveblocks-client/atob-polyfill");wo.atob=t.polyfills.atob}d.connect()}return d.room}function s(a){const l=r.get(a);l&&(l.disconnect(),r.delete(a))}return typeof window<"u"&&typeof window.addEventListener<"u"&&window.addEventListener("online",()=>{for(const[,a]of r)a.onNavigatorOnline()}),typeof document<"u"&&document.addEventListener("visibilitychange",()=>{for(const[,a]of r)a.onVisibilityChange(document.visibilityState)}),{getRoom:i,enter:o,leave:s}}function gs(e){if(e.throttle===void 0)return 100;if(typeof e.throttle!="number"||e.throttle<80||e.throttle>1e3)throw new Error("throttle should be a number between 80 and 1000.");return e.throttle}function vs(e,t){const{publicApiKey:n,authEndpoint:r}=e;if(r!==void 0&&n!==void 0)throw new Error("You cannot use both publicApiKey and authEndpoint. Please use either publicApiKey or authEndpoint, but not both. For more information: https://liveblocks.io/docs/api-reference/liveblocks-client#createClient");if(typeof n=="string"){if(n.startsWith("sk_"))throw new Error("Invalid publicApiKey. You are using the secret key which is not supported. Please use the public key instead. For more information: https://liveblocks.io/docs/api-reference/liveblocks-client#createClientPublicKey");if(!n.startsWith("pk_"))throw new Error("Invalid key. Please use the public key format: pk_<public key>. For more information: https://liveblocks.io/docs/api-reference/liveblocks-client#createClientPublicKey");return{type:"public",publicApiKey:n,url:ys(e,t)}}if(typeof r=="string")return{type:"private",url:r};if(typeof r=="function")return{type:"custom",callback:r};throw r!==void 0?new Error("authEndpoint must be a string or a function. For more information: https://liveblocks.io/docs/api-reference/liveblocks-client#createClientAuthEndpoint"):new Error("Invalid Liveblocks client options. For more information: https://liveblocks.io/docs/api-reference/liveblocks-client#createClient")}function ys(e,t){return e.publicAuthorizeEndpoint?e.publicAuthorizeEndpoint.replace("{roomId}",t):`https://api.liveblocks.io/v2/rooms/${encodeURIComponent(t)}/public/authorize`}function ws(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!Object.is(e[n],t[n]))return!1;return!0}function bs(e,t){if(typeof e!="object"||e===null||typeof t!="object"||t===null||Object.prototype.toString.call(e)!=="[object Object]"||Object.prototype.toString.call(t)!=="[object Object]")return!1;const n=Object.keys(e);return n.length!==Object.keys(t).length?!1:n.every(r=>Object.prototype.hasOwnProperty.call(t,r)&&Object.is(e[r],t[r]))}function Es(e,t){if(Object.is(e,t))return!0;const n=Array.isArray(e),r=Array.isArray(t);return n||r?!n||!r?!1:ws(e,t):bs(e,t)}Ne.LiveList=R.LiveList;Ne.LiveMap=R.LiveMap;Ne.LiveObject=R.LiveObject;Ne.createClient=_s;Ne.shallow=Es;Ne.LiveList;Ne.LiveMap;const ks=Ne.LiveObject,xs=Ne.createClient;Ne.shallow;const mi=Symbol(),_i=Symbol();function Os(e){let t;const n=e[2].default,r=Dn(n,e,e[1],null);return{c(){r&&r.c()},l(i){r&&r.l(i)},m(i,o){r&&r.m(i,o),t=!0},p(i,[o]){r&&r.p&&(!t||o&2)&&$n(r,n,i,i[1],t?Fn(n,i[1],o,null):zn(i[1]),null)},i(i){t||(q(r,i),t=!0)},o(i){J(r,i),t=!1},d(i){r&&r.d(i)}}}function Is(e,t,n){let{$$slots:r={},$$scope:i}=t,{client:o}=t;if(!o)throw new Error("LiveblocksProvider requires a client");return Kr(mi,o),e.$$set=s=>{"client"in s&&n(0,o=s.client),"$$scope"in s&&n(1,i=s.$$scope)},[o,i,r]}class Ss extends Ae{constructor(t){super(),Le(this,t,Is,Os,Re,{client:0})}}function Ps(e){let t;const n=e[3].default,r=Dn(n,e,e[2],null);return{c(){r&&r.c()},l(i){r&&r.l(i)},m(i,o){r&&r.m(i,o),t=!0},p(i,[o]){r&&r.p&&(!t||o&4)&&$n(r,n,i,i[2],t?Fn(n,i[2],o,null):zn(i[2]),null)},i(i){t||(q(r,i),t=!0)},o(i){J(r,i),t=!1},d(i){r&&r.d(i)}}}function Ts(e,t,n){let{$$slots:r={},$$scope:i}=t,{id:o}=t,{defaultPresence:s=()=>({})}=t;if(!o)throw new Error("RoomProvider requires an id");const a=Hr(mi);if(a){const l=a.enter(o,s());Kr(_i,l),nn(()=>{a.leave(o)})}return e.$$set=l=>{"id"in l&&n(0,o=l.id),"defaultPresence"in l&&n(1,s=l.defaultPresence),"$$scope"in l&&n(2,i=l.$$scope)},[o,s,i,r]}class As extends Ae{constructor(t){super(),Le(this,t,Ts,Ps,Re,{id:0,defaultPresence:1})}}function fr(e){let t,n,r;return{c(){t=ne("div"),n=we(e[2]),this.h()},l(i){t=re(i,"DIV",{class:!0,style:!0});var o=Z(t);n=be(o,e[2]),o.forEach(D),this.h()},h(){A(t,"class","absolute right-0 text-4xl col-start-2 row-start-2"),A(t,"style",r=`text-shadow: 0px 5px 5px ${e[1]}`)},m(i,o){ue(i,t,o),z(t,n)},p(i,o){o&4&&kt(n,i[2]),o&2&&r!==(r=`text-shadow: 0px 5px 5px ${i[1]}`)&&A(t,"style",r)},d(i){i&&D(t)}}}function Ls(e){let t,n,r,i,o,s=e[2]&&fr(e);return{c(){t=ne("div"),n=Bt("svg"),r=Bt("path"),i=le(),s&&s.c(),this.h()},l(a){t=re(a,"DIV",{class:!0,style:!0});var l=Z(t);n=Xt(l,"svg",{class:!0,width:!0,viewBox:!0,fill:!0,xmlns:!0});var c=Z(n);r=Xt(c,"path",{d:!0,fill:!0}),Z(r).forEach(D),c.forEach(D),i=ce(l),s&&s.l(l),l.forEach(D),this.h()},h(){A(r,"d","M0.91603 0.916054L7.09131 14.9234L8.89871 8.89873L14.9234 7.09133L0.91603 0.916054Z"),A(r,"fill","#FFB800"),A(n,"class","block z-0 col-span-2 row-span-2"),A(n,"width","40"),A(n,"viewBox","0 0 15 15"),A(n,"fill","currentColor"),A(n,"xmlns","http://www.w3.org/2000/svg"),A(t,"class","cursor svelte-14ka0w3"),A(t,"style",o=`transform: translateX(${e[3].x}px) translateY(${e[3].y}px) scale(${e[0].k});`)},m(a,l){ue(a,t,l),z(t,n),z(n,r),z(t,i),s&&s.m(t,null)},p(a,[l]){a[2]?s?s.p(a,l):(s=fr(a),s.c(),s.m(t,null)):s&&(s.d(1),s=null),l&9&&o!==(o=`transform: translateX(${a[3].x}px) translateY(${a[3].y}px) scale(${a[0].k});`)&&A(t,"style",o)},i:me,o:me,d(a){a&&D(t),s&&s.d()}}}function Rs(e,t,n){let r,{transform:i}=t,{color:o=""}=t,{emoji:s}=t,{position:a={x:0,y:0}}=t;return e.$$set=l=>{"transform"in l&&n(0,i=l.transform),"color"in l&&n(1,o=l.color),"emoji"in l&&n(2,s=l.emoji),"position"in l&&n(4,a=l.position)},e.$$.update=()=>{e.$$.dirty&17&&n(3,r={x:i.applyX(a.x),y:i.applyY(a.y)})},[i,o,s,r,a]}class Ns extends Ae{constructor(t){super(),Le(this,t,Rs,Ls,Re,{transform:0,color:1,emoji:2,position:4})}}function Cs(e){let t,n;return{c(){t=Bt("svg"),n=Bt("path"),this.h()},l(r){t=Xt(r,"svg",{xmlns:!0,fill:!0,width:!0,viewBox:!0,class:!0});var i=Z(t);n=Xt(i,"path",{fill:!0,d:!0}),Z(n).forEach(D),i.forEach(D),this.h()},h(){A(n,"fill","currentColor"),A(n,"d","M20 12a8 8 0 0 1-8 8v4a12 12 0 0 0 12-12h-4Zm-2-5.3a8 8 0 0 1 2 5.3h4c0-3-1.1-5.8-3-8l-3 2.7Z"),A(t,"xmlns","http://www.w3.org/2000/svg"),A(t,"fill","none"),A(t,"width","50"),A(t,"viewBox","0 0 24 24"),A(t,"class","animate-spin max-w-[1rem] inline-block")},m(r,i){ue(r,t,i),z(t,n)},p:me,i:me,o:me,d(r){r&&D(t)}}}class gi extends Ae{constructor(t){super(),Le(this,t,null,Cs,Re,{})}}function Ms(e){let t,n,r,i,o,s,a,l,c,u,d,p,m;return i=new gi({}),{c(){t=ne("div"),n=ne("div"),r=le(),Ee(i.$$.fragment),o=le(),s=ne("h2"),a=we("Click to paint"),l=le(),c=ne("div"),u=we(e[2]),d=we("}"),this.h()},l(y){t=re(y,"DIV",{class:!0,style:!0});var O=Z(t);n=re(O,"DIV",{class:!0}),Z(n).forEach(D),r=ce(O),ke(i.$$.fragment,O),o=ce(O),s=re(O,"H2",{class:!0});var N=Z(s);a=be(N,"Click to paint"),N.forEach(D),l=ce(O),c=re(O,"DIV",{class:!0});var k=Z(c);u=be(k,e[2]),d=be(k,"}"),k.forEach(D),O.forEach(D),this.h()},h(){A(n,"class","small-frame z-0 flex relative svelte-1spk1c1"),A(s,"class","text-lg"),A(c,"class","absolute bottom-0 font-bold"),A(t,"class","frame z-0 flex relative svelte-1spk1c1"),A(t,"style",p=`transform: translateX(${e[3].x}px) translateY(${e[3].y}px) scale(${e[0].k}); | |
background-image: linear-gradient(${e[1]}, rgba(255,255,255,0)); | |
color: ${e[1]}; | |
`)},m(y,O){ue(y,t,O),z(t,n),z(t,r),xe(i,t,null),z(t,o),z(t,s),z(s,a),z(t,l),z(t,c),z(c,u),z(c,d),m=!0},p(y,[O]){(!m||O&4)&&kt(u,y[2]),(!m||O&11&&p!==(p=`transform: translateX(${y[3].x}px) translateY(${y[3].y}px) scale(${y[0].k}); | |
background-image: linear-gradient(${y[1]}, rgba(255,255,255,0)); | |
color: ${y[1]}; | |
`))&&A(t,"style",p)},i(y){m||(q(i.$$.fragment,y),m=!0)},o(y){J(i.$$.fragment,y),m=!1},d(y){y&&D(t),Oe(i)}}}function Us(e,t,n){let r,{transform:i}=t,{color:o=""}=t,{position:s={x:0,y:0}}=t,{prompt:a=""}=t;return e.$$set=l=>{"transform"in l&&n(0,i=l.transform),"color"in l&&n(1,o=l.color),"position"in l&&n(4,s=l.position),"prompt"in l&&n(2,a=l.prompt)},e.$$.update=()=>{e.$$.dirty&17&&n(3,r={x:i.applyX(s.x),y:i.applyY(s.y)})},[i,o,a,r,s]}class vi extends Ae{constructor(t){super(),Le(this,t,Us,Ms,Re,{transform:0,color:1,position:4,prompt:2})}}var Ds={value:()=>{}};function ln(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+"")||r in n||/[\s.]/.test(r))throw new Error("illegal type: "+r);n[r]=[]}return new Ft(n)}function Ft(e){this._=e}function $s(e,t){return e.trim().split(/^|\s+/).map(function(n){var r="",i=n.indexOf(".");if(i>=0&&(r=n.slice(i+1),n=n.slice(0,i)),n&&!t.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:r}})}Ft.prototype=ln.prototype={constructor:Ft,on:function(e,t){var n=this._,r=$s(e+"",n),i,o=-1,s=r.length;if(arguments.length<2){for(;++o<s;)if((i=(e=r[o]).type)&&(i=zs(n[i],e.name)))return i;return}if(t!=null&&typeof t!="function")throw new Error("invalid callback: "+t);for(;++o<s;)if(i=(e=r[o]).type)n[i]=hr(n[i],e.name,t);else if(t==null)for(i in n)n[i]=hr(n[i],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new Ft(e)},call:function(e,t){if((i=arguments.length-2)>0)for(var n=new Array(i),r=0,i,o;r<i;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(o=this._[e],r=0,i=o.length;r<i;++r)o[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var r=this._[e],i=0,o=r.length;i<o;++i)r[i].value.apply(t,n)}};function zs(e,t){for(var n=0,r=e.length,i;n<r;++n)if((i=e[n]).name===t)return i.value}function hr(e,t,n){for(var r=0,i=e.length;r<i;++r)if(e[r].name===t){e[r]=Ds,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}var In="http://www.w3.org/1999/xhtml";const dr={svg:"http://www.w3.org/2000/svg",xhtml:In,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function cn(e){var t=e+="",n=t.indexOf(":");return n>=0&&(t=e.slice(0,n))!=="xmlns"&&(e=e.slice(n+1)),dr.hasOwnProperty(t)?{space:dr[t],local:e}:e}function Fs(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===In&&t.documentElement.namespaceURI===In?t.createElement(e):t.createElementNS(n,e)}}function Ks(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function yi(e){var t=cn(e);return(t.local?Ks:Fs)(t)}function Hs(){}function Xn(e){return e==null?Hs:function(){return this.querySelector(e)}}function Vs(e){typeof e!="function"&&(e=Xn(e));for(var t=this._groups,n=t.length,r=new Array(n),i=0;i<n;++i)for(var o=t[i],s=o.length,a=r[i]=new Array(s),l,c,u=0;u<s;++u)(l=o[u])&&(c=e.call(l,l.__data__,u,o))&&("__data__"in l&&(c.__data__=l.__data__),a[u]=c);return new ve(r,this._parents)}function Bs(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function Xs(){return[]}function wi(e){return e==null?Xs:function(){return this.querySelectorAll(e)}}function Ys(e){return function(){return Bs(e.apply(this,arguments))}}function qs(e){typeof e=="function"?e=Ys(e):e=wi(e);for(var t=this._groups,n=t.length,r=[],i=[],o=0;o<n;++o)for(var s=t[o],a=s.length,l,c=0;c<a;++c)(l=s[c])&&(r.push(e.call(l,l.__data__,c,s)),i.push(l));return new ve(r,i)}function bi(e){return function(){return this.matches(e)}}function Ei(e){return function(t){return t.matches(e)}}var js=Array.prototype.find;function Gs(e){return function(){return js.call(this.children,e)}}function Js(){return this.firstElementChild}function Ws(e){return this.select(e==null?Js:Gs(typeof e=="function"?e:Ei(e)))}var Zs=Array.prototype.filter;function Qs(){return Array.from(this.children)}function ea(e){return function(){return Zs.call(this.children,e)}}function ta(e){return this.selectAll(e==null?Qs:ea(typeof e=="function"?e:Ei(e)))}function na(e){typeof e!="function"&&(e=bi(e));for(var t=this._groups,n=t.length,r=new Array(n),i=0;i<n;++i)for(var o=t[i],s=o.length,a=r[i]=[],l,c=0;c<s;++c)(l=o[c])&&e.call(l,l.__data__,c,o)&&a.push(l);return new ve(r,this._parents)}function ki(e){return new Array(e.length)}function ra(){return new ve(this._enter||this._groups.map(ki),this._parents)}function Gt(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}Gt.prototype={constructor:Gt,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function ia(e){return function(){return e}}function oa(e,t,n,r,i,o){for(var s=0,a,l=t.length,c=o.length;s<c;++s)(a=t[s])?(a.__data__=o[s],r[s]=a):n[s]=new Gt(e,o[s]);for(;s<l;++s)(a=t[s])&&(i[s]=a)}function sa(e,t,n,r,i,o,s){var a,l,c=new Map,u=t.length,d=o.length,p=new Array(u),m;for(a=0;a<u;++a)(l=t[a])&&(p[a]=m=s.call(l,l.__data__,a,t)+"",c.has(m)?i[a]=l:c.set(m,l));for(a=0;a<d;++a)m=s.call(e,o[a],a,o)+"",(l=c.get(m))?(r[a]=l,l.__data__=o[a],c.delete(m)):n[a]=new Gt(e,o[a]);for(a=0;a<u;++a)(l=t[a])&&c.get(p[a])===l&&(i[a]=l)}function aa(e){return e.__data__}function la(e,t){if(!arguments.length)return Array.from(this,aa);var n=t?sa:oa,r=this._parents,i=this._groups;typeof e!="function"&&(e=ia(e));for(var o=i.length,s=new Array(o),a=new Array(o),l=new Array(o),c=0;c<o;++c){var u=r[c],d=i[c],p=d.length,m=ca(e.call(u,u&&u.__data__,c,r)),y=m.length,O=a[c]=new Array(y),N=s[c]=new Array(y),k=l[c]=new Array(p);n(u,d,O,N,k,m,t);for(var C=0,X=0,g,K;C<y;++C)if(g=O[C]){for(C>=X&&(X=C+1);!(K=N[X])&&++X<y;);g._next=K||null}}return s=new ve(s,r),s._enter=a,s._exit=l,s}function ca(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function ua(){return new ve(this._exit||this._groups.map(ki),this._parents)}function fa(e,t,n){var r=this.enter(),i=this,o=this.exit();return typeof e=="function"?(r=e(r),r&&(r=r.selection())):r=r.append(e+""),t!=null&&(i=t(i),i&&(i=i.selection())),n==null?o.remove():n(o),r&&i?r.merge(i).order():i}function ha(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,i=n.length,o=r.length,s=Math.min(i,o),a=new Array(i),l=0;l<s;++l)for(var c=n[l],u=r[l],d=c.length,p=a[l]=new Array(d),m,y=0;y<d;++y)(m=c[y]||u[y])&&(p[y]=m);for(;l<i;++l)a[l]=n[l];return new ve(a,this._parents)}function da(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r=e[t],i=r.length-1,o=r[i],s;--i>=0;)(s=r[i])&&(o&&s.compareDocumentPosition(o)^4&&o.parentNode.insertBefore(s,o),o=s);return this}function pa(e){e||(e=ma);function t(d,p){return d&&p?e(d.__data__,p.__data__):!d-!p}for(var n=this._groups,r=n.length,i=new Array(r),o=0;o<r;++o){for(var s=n[o],a=s.length,l=i[o]=new Array(a),c,u=0;u<a;++u)(c=s[u])&&(l[u]=c);l.sort(t)}return new ve(i,this._parents).order()}function ma(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function _a(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function ga(){return Array.from(this)}function va(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,o=r.length;i<o;++i){var s=r[i];if(s)return s}return null}function ya(){let e=0;for(const t of this)++e;return e}function wa(){return!this.node()}function ba(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var i=t[n],o=0,s=i.length,a;o<s;++o)(a=i[o])&&e.call(a,a.__data__,o,i);return this}function Ea(e){return function(){this.removeAttribute(e)}}function ka(e){return function(){this.removeAttributeNS(e.space,e.local)}}function xa(e,t){return function(){this.setAttribute(e,t)}}function Oa(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function Ia(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttribute(e):this.setAttribute(e,n)}}function Sa(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}function Pa(e,t){var n=cn(e);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((t==null?n.local?ka:Ea:typeof t=="function"?n.local?Sa:Ia:n.local?Oa:xa)(n,t))}function xi(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function Ta(e){return function(){this.style.removeProperty(e)}}function Aa(e,t,n){return function(){this.style.setProperty(e,t,n)}}function La(e,t,n){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}function Ra(e,t,n){return arguments.length>1?this.each((t==null?Ta:typeof t=="function"?La:Aa)(e,t,n==null?"":n)):mt(this.node(),e)}function mt(e,t){return e.style.getPropertyValue(t)||xi(e).getComputedStyle(e,null).getPropertyValue(t)}function Na(e){return function(){delete this[e]}}function Ca(e,t){return function(){this[e]=t}}function Ma(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function Ua(e,t){return arguments.length>1?this.each((t==null?Na:typeof t=="function"?Ma:Ca)(e,t)):this.node()[e]}function Oi(e){return e.trim().split(/^|\s+/)}function Yn(e){return e.classList||new Ii(e)}function Ii(e){this._node=e,this._names=Oi(e.getAttribute("class")||"")}Ii.prototype={add:function(e){var t=this._names.indexOf(e);t<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function Si(e,t){for(var n=Yn(e),r=-1,i=t.length;++r<i;)n.add(t[r])}function Pi(e,t){for(var n=Yn(e),r=-1,i=t.length;++r<i;)n.remove(t[r])}function Da(e){return function(){Si(this,e)}}function $a(e){return function(){Pi(this,e)}}function za(e,t){return function(){(t.apply(this,arguments)?Si:Pi)(this,e)}}function Fa(e,t){var n=Oi(e+"");if(arguments.length<2){for(var r=Yn(this.node()),i=-1,o=n.length;++i<o;)if(!r.contains(n[i]))return!1;return!0}return this.each((typeof t=="function"?za:t?Da:$a)(n,t))}function Ka(){this.textContent=""}function Ha(e){return function(){this.textContent=e}}function Va(e){return function(){var t=e.apply(this,arguments);this.textContent=t==null?"":t}}function Ba(e){return arguments.length?this.each(e==null?Ka:(typeof e=="function"?Va:Ha)(e)):this.node().textContent}function Xa(){this.innerHTML=""}function Ya(e){return function(){this.innerHTML=e}}function qa(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t==null?"":t}}function ja(e){return arguments.length?this.each(e==null?Xa:(typeof e=="function"?qa:Ya)(e)):this.node().innerHTML}function Ga(){this.nextSibling&&this.parentNode.appendChild(this)}function Ja(){return this.each(Ga)}function Wa(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Za(){return this.each(Wa)}function Qa(e){var t=typeof e=="function"?e:yi(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function el(){return null}function tl(e,t){var n=typeof e=="function"?e:yi(e),r=t==null?el:typeof t=="function"?t:Xn(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})}function nl(){var e=this.parentNode;e&&e.removeChild(this)}function rl(){return this.each(nl)}function il(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function ol(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function sl(e){return this.select(e?ol:il)}function al(e){return arguments.length?this.property("__data__",e):this.node().__data__}function ll(e){return function(t){e.call(this,t,this.__data__)}}function cl(e){return e.trim().split(/^|\s+/).map(function(t){var n="",r=t.indexOf(".");return r>=0&&(n=t.slice(r+1),t=t.slice(0,r)),{type:t,name:n}})}function ul(e){return function(){var t=this.__on;if(!!t){for(var n=0,r=-1,i=t.length,o;n<i;++n)o=t[n],(!e.type||o.type===e.type)&&o.name===e.name?this.removeEventListener(o.type,o.listener,o.options):t[++r]=o;++r?t.length=r:delete this.__on}}}function fl(e,t,n){return function(){var r=this.__on,i,o=ll(t);if(r){for(var s=0,a=r.length;s<a;++s)if((i=r[s]).type===e.type&&i.name===e.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=o,i.options=n),i.value=t;return}}this.addEventListener(e.type,o,n),i={type:e.type,name:e.name,value:t,listener:o,options:n},r?r.push(i):this.__on=[i]}}function hl(e,t,n){var r=cl(e+""),i,o=r.length,s;if(arguments.length<2){var a=this.node().__on;if(a){for(var l=0,c=a.length,u;l<c;++l)for(i=0,u=a[l];i<o;++i)if((s=r[i]).type===u.type&&s.name===u.name)return u.value}return}for(a=t?fl:ul,i=0;i<o;++i)this.each(a(r[i],t,n));return this}function Ti(e,t,n){var r=xi(e),i=r.CustomEvent;typeof i=="function"?i=new i(t,n):(i=r.document.createEvent("Event"),n?(i.initEvent(t,n.bubbles,n.cancelable),i.detail=n.detail):i.initEvent(t,!1,!1)),e.dispatchEvent(i)}function dl(e,t){return function(){return Ti(this,e,t)}}function pl(e,t){return function(){return Ti(this,e,t.apply(this,arguments))}}function ml(e,t){return this.each((typeof t=="function"?pl:dl)(e,t))}function*_l(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,o=r.length,s;i<o;++i)(s=r[i])&&(yield s)}var Ai=[null];function ve(e,t){this._groups=e,this._parents=t}function At(){return new ve([[document.documentElement]],Ai)}function gl(){return this}ve.prototype=At.prototype={constructor:ve,select:Vs,selectAll:qs,selectChild:Ws,selectChildren:ta,filter:na,data:la,enter:ra,exit:ua,join:fa,merge:ha,selection:gl,order:da,sort:pa,call:_a,nodes:ga,node:va,size:ya,empty:wa,each:ba,attr:Pa,style:Ra,property:Ua,classed:Fa,text:Ba,html:ja,raise:Ja,lower:Za,append:Qa,insert:tl,remove:rl,clone:sl,datum:al,on:hl,dispatch:ml,[Symbol.iterator]:_l};function Pe(e){return typeof e=="string"?new ve([[document.querySelector(e)]],[document.documentElement]):new ve([[e]],Ai)}function vl(e){let t;for(;t=e.sourceEvent;)e=t;return e}function Ve(e,t){if(e=vl(e),t===void 0&&(t=e.currentTarget),t){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(t.getScreenCTM().inverse()),[r.x,r.y]}if(t.getBoundingClientRect){var i=t.getBoundingClientRect();return[e.clientX-i.left-t.clientLeft,e.clientY-i.top-t.clientTop]}}return[e.pageX,e.pageY]}const yl={passive:!1},xt={capture:!0,passive:!1};function bn(e){e.stopImmediatePropagation()}function ht(e){e.preventDefault(),e.stopImmediatePropagation()}function Li(e){var t=e.document.documentElement,n=Pe(e).on("dragstart.drag",ht,xt);"onselectstart"in t?n.on("selectstart.drag",ht,xt):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect="none")}function Ri(e,t){var n=e.document.documentElement,r=Pe(e).on("dragstart.drag",null);t&&(r.on("click.drag",ht,xt),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in n?r.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}const Nt=e=>()=>e;function Sn(e,{sourceEvent:t,subject:n,target:r,identifier:i,active:o,x:s,y:a,dx:l,dy:c,dispatch:u}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:o,enumerable:!0,configurable:!0},x:{value:s,enumerable:!0,configurable:!0},y:{value:a,enumerable:!0,configurable:!0},dx:{value:l,enumerable:!0,configurable:!0},dy:{value:c,enumerable:!0,configurable:!0},_:{value:u}})}Sn.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function wl(e){return!e.ctrlKey&&!e.button}function bl(){return this.parentNode}function El(e,t){return t==null?{x:e.x,y:e.y}:t}function kl(){return navigator.maxTouchPoints||"ontouchstart"in this}function xl(){var e=wl,t=bl,n=El,r=kl,i={},o=ln("start","drag","end"),s=0,a,l,c,u,d=0;function p(g){g.on("mousedown.drag",m).filter(r).on("touchstart.drag",N).on("touchmove.drag",k,yl).on("touchend.drag touchcancel.drag",C).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(g,K){if(!(u||!e.call(this,g,K))){var B=X(this,t.call(this,g,K),g,K,"mouse");!B||(Pe(g.view).on("mousemove.drag",y,xt).on("mouseup.drag",O,xt),Li(g.view),bn(g),c=!1,a=g.clientX,l=g.clientY,B("start",g))}}function y(g){if(ht(g),!c){var K=g.clientX-a,B=g.clientY-l;c=K*K+B*B>d}i.mouse("drag",g)}function O(g){Pe(g.view).on("mousemove.drag mouseup.drag",null),Ri(g.view,c),ht(g),i.mouse("end",g)}function N(g,K){if(!!e.call(this,g,K)){var B=g.changedTouches,L=t.call(this,g,K),x=B.length,E,U;for(E=0;E<x;++E)(U=X(this,L,g,K,B[E].identifier,B[E]))&&(bn(g),U("start",g,B[E]))}}function k(g){var K=g.changedTouches,B=K.length,L,x;for(L=0;L<B;++L)(x=i[K[L].identifier])&&(ht(g),x("drag",g,K[L]))}function C(g){var K=g.changedTouches,B=K.length,L,x;for(u&&clearTimeout(u),u=setTimeout(function(){u=null},500),L=0;L<B;++L)(x=i[K[L].identifier])&&(bn(g),x("end",g,K[L]))}function X(g,K,B,L,x,E){var U=o.copy(),b=Ve(E||B,K),H,G,h;if((h=n.call(g,new Sn("beforestart",{sourceEvent:B,target:p,identifier:x,active:s,x:b[0],y:b[1],dx:0,dy:0,dispatch:U}),L))!=null)return H=h.x-b[0]||0,G=h.y-b[1]||0,function I(v,P,$){var F=b,V;switch(v){case"start":i[x]=I,V=s++;break;case"end":delete i[x],--s;case"drag":b=Ve($||P,K),V=s;break}U.call(v,g,new Sn(v,{sourceEvent:P,subject:h,target:p,identifier:x,active:V,x:b[0]+H,y:b[1]+G,dx:b[0]-F[0],dy:b[1]-F[1],dispatch:U}),L)}}return p.filter=function(g){return arguments.length?(e=typeof g=="function"?g:Nt(!!g),p):e},p.container=function(g){return arguments.length?(t=typeof g=="function"?g:Nt(g),p):t},p.subject=function(g){return arguments.length?(n=typeof g=="function"?g:Nt(g),p):n},p.touchable=function(g){return arguments.length?(r=typeof g=="function"?g:Nt(!!g),p):r},p.on=function(){var g=o.on.apply(o,arguments);return g===o?p:g},p.clickDistance=function(g){return arguments.length?(d=(g=+g)*g,p):Math.sqrt(d)},p}function Ol(e){return new Promise(t=>{const n=new Image;n.onload=async()=>{const r=n.width,i=n.height,o=document.createElement("canvas");o.width=r,o.height=i,o.getContext("2d").drawImage(n,0,0,r,i);const a=await new Promise(l=>o.toBlob(l,"image/jpeg",.95));t(a)},n.src=e})}async function Il(e,t){const n=Sl(t),r="https://huggingface.co/uploads",o=`color-palette-${crypto.randomUUID().split("-")[0]}-${n}.jpeg`,s=new File([e],o,{type:"image/jpeg"});console.log("uploading image",s);const l=await(await fetch(r,{method:"POST",headers:{"Content-Type":s.type,"X-Requested-With":"XMLHttpRequest"},body:s})).text();return console.log("uploaded images",l),l}function Jt(e,t=32){return e%t<t/2?e-e%t:e+t-e%t}function Sl(e){return e?e.toString().toLowerCase().replace(/\s+/g,"-").replace(/[^\w\-]+/g,"").replace(/\-\-+/g,"-").replace(/^-+/,"").replace(/-+$/,""):""}function Pl(e){let t,n,r,i,o,s,a,l,c,u,d,p;return i=new gi({}),{c(){t=ne("div"),n=ne("div"),r=le(),Ee(i.$$.fragment),o=le(),s=ne("h2"),a=we("Click to paint"),l=le(),c=ne("div"),u=we(e[2]),this.h()},l(m){t=re(m,"DIV",{class:!0,style:!0});var y=Z(t);n=re(y,"DIV",{class:!0}),Z(n).forEach(D),r=ce(y),ke(i.$$.fragment,y),o=ce(y),s=re(y,"H2",{class:!0});var O=Z(s);a=be(O,"Click to paint"),O.forEach(D),l=ce(y),c=re(y,"DIV",{class:!0});var N=Z(c);u=be(N,e[2]),N.forEach(D),y.forEach(D),this.h()},h(){A(n,"class","small-frame z-0 flex relative svelte-nchges"),A(s,"class","text-lg"),A(c,"class","absolute bottom-0 font-bold"),A(t,"class","frame z-0 flex relative svelte-nchges"),A(t,"style",d=`transform: translateX(${e[4].x}px) translateY(${e[4].y}px) scale(${e[0].k}); | |
background-image: linear-gradient(${e[1]}, rgba(255,255,255,0)); | |
color: ${e[1]}; | |
`)},m(m,y){ue(m,t,y),z(t,n),z(t,r),xe(i,t,null),z(t,o),z(t,s),z(s,a),z(t,l),z(t,c),z(c,u),e[6](t),p=!0},p(m,[y]){(!p||y&4)&&kt(u,m[2]),(!p||y&19&&d!==(d=`transform: translateX(${m[4].x}px) translateY(${m[4].y}px) scale(${m[0].k}); | |
background-image: linear-gradient(${m[1]}, rgba(255,255,255,0)); | |
color: ${m[1]}; | |
`))&&A(t,"style",d)},i(m){p||(q(i.$$.fragment,m),p=!0)},o(m){J(i.$$.fragment,m),p=!1},d(m){m&&D(t),Oe(i),e[6](null)}}}function Tl(e,t,n){let r,{transform:i}=t,{color:o=""}=t,s={x:i.invertX(768),y:i.invertX(768)},{prompt:a=""}=t,l;rn(()=>{function u(y){console.log(y)}function d(y){const O=Jt(i.invertX(y.x)-256),N=Jt(i.invertY(y.y)-512/2);n(5,s={x:O,y:N})}function p(y){console.log(y)}const m=xl().on("start",u).on("drag",d).on("end",p);Pe(l).call(m)});function c(u){Yt[u?"unshift":"push"](()=>{l=u,n(3,l)})}return e.$$set=u=>{"transform"in u&&n(0,i=u.transform),"color"in u&&n(1,o=u.color),"prompt"in u&&n(2,a=u.prompt)},e.$$.update=()=>{e.$$.dirty&33&&n(4,r={x:i.applyX(s.x),y:i.applyY(s.y)})},[i,o,a,l,r,s,c]}class Al extends Ae{constructor(t){super(),Le(this,t,Tl,Pl,Re,{transform:0,color:1,prompt:2})}}function qn(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function Ni(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function Lt(){}var Ot=.7,Wt=1/Ot,dt="\\s*([+-]?\\d+)\\s*",It="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",$e="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Ll=/^#([0-9a-f]{3,8})$/,Rl=new RegExp(`^rgb\\(${dt},${dt},${dt}\\)$`),Nl=new RegExp(`^rgb\\(${$e},${$e},${$e}\\)$`),Cl=new RegExp(`^rgba\\(${dt},${dt},${dt},${It}\\)$`),Ml=new RegExp(`^rgba\\(${$e},${$e},${$e},${It}\\)$`),Ul=new RegExp(`^hsl\\(${It},${$e},${$e}\\)$`),Dl=new RegExp(`^hsla\\(${It},${$e},${$e},${It}\\)$`),pr={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};qn(Lt,St,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:mr,formatHex:mr,formatHex8:$l,formatHsl:zl,formatRgb:_r,toString:_r});function mr(){return this.rgb().formatHex()}function $l(){return this.rgb().formatHex8()}function zl(){return Ci(this).formatHsl()}function _r(){return this.rgb().formatRgb()}function St(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=Ll.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?gr(t):n===3?new _e(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Ct(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Ct(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=Rl.exec(e))?new _e(t[1],t[2],t[3],1):(t=Nl.exec(e))?new _e(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=Cl.exec(e))?Ct(t[1],t[2],t[3],t[4]):(t=Ml.exec(e))?Ct(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=Ul.exec(e))?wr(t[1],t[2]/100,t[3]/100,1):(t=Dl.exec(e))?wr(t[1],t[2]/100,t[3]/100,t[4]):pr.hasOwnProperty(e)?gr(pr[e]):e==="transparent"?new _e(NaN,NaN,NaN,0):null}function gr(e){return new _e(e>>16&255,e>>8&255,e&255,1)}function Ct(e,t,n,r){return r<=0&&(e=t=n=NaN),new _e(e,t,n,r)}function Fl(e){return e instanceof Lt||(e=St(e)),e?(e=e.rgb(),new _e(e.r,e.g,e.b,e.opacity)):new _e}function Pn(e,t,n,r){return arguments.length===1?Fl(e):new _e(e,t,n,r==null?1:r)}function _e(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}qn(_e,Pn,Ni(Lt,{brighter(e){return e=e==null?Wt:Math.pow(Wt,e),new _e(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Ot:Math.pow(Ot,e),new _e(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new _e(ot(this.r),ot(this.g),ot(this.b),Zt(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:vr,formatHex:vr,formatHex8:Kl,formatRgb:yr,toString:yr}));function vr(){return`#${rt(this.r)}${rt(this.g)}${rt(this.b)}`}function Kl(){return`#${rt(this.r)}${rt(this.g)}${rt(this.b)}${rt((isNaN(this.opacity)?1:this.opacity)*255)}`}function yr(){const e=Zt(this.opacity);return`${e===1?"rgb(":"rgba("}${ot(this.r)}, ${ot(this.g)}, ${ot(this.b)}${e===1?")":`, ${e})`}`}function Zt(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function ot(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function rt(e){return e=ot(e),(e<16?"0":"")+e.toString(16)}function wr(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new Te(e,t,n,r)}function Ci(e){if(e instanceof Te)return new Te(e.h,e.s,e.l,e.opacity);if(e instanceof Lt||(e=St(e)),!e)return new Te;if(e instanceof Te)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),o=Math.max(t,n,r),s=NaN,a=o-i,l=(o+i)/2;return a?(t===o?s=(n-r)/a+(n<r)*6:n===o?s=(r-t)/a+2:s=(t-n)/a+4,a/=l<.5?o+i:2-o-i,s*=60):a=l>0&&l<1?0:s,new Te(s,a,l,e.opacity)}function Hl(e,t,n,r){return arguments.length===1?Ci(e):new Te(e,t,n,r==null?1:r)}function Te(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}qn(Te,Hl,Ni(Lt,{brighter(e){return e=e==null?Wt:Math.pow(Wt,e),new Te(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Ot:Math.pow(Ot,e),new Te(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new _e(En(e>=240?e-240:e+120,i,r),En(e,i,r),En(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new Te(br(this.h),Mt(this.s),Mt(this.l),Zt(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=Zt(this.opacity);return`${e===1?"hsl(":"hsla("}${br(this.h)}, ${Mt(this.s)*100}%, ${Mt(this.l)*100}%${e===1?")":`, ${e})`}`}}));function br(e){return e=(e||0)%360,e<0?e+360:e}function Mt(e){return Math.max(0,Math.min(1,e||0))}function En(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const Mi=e=>()=>e;function Vl(e,t){return function(n){return e+n*t}}function Bl(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function Xl(e){return(e=+e)==1?Ui:function(t,n){return n-t?Bl(t,n,e):Mi(isNaN(t)?n:t)}}function Ui(e,t){var n=t-e;return n?Vl(e,n):Mi(isNaN(e)?t:e)}const Er=function e(t){var n=Xl(t);function r(i,o){var s=n((i=Pn(i)).r,(o=Pn(o)).r),a=n(i.g,o.g),l=n(i.b,o.b),c=Ui(i.opacity,o.opacity);return function(u){return i.r=s(u),i.g=a(u),i.b=l(u),i.opacity=c(u),i+""}}return r.gamma=e,r}(1);function je(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}var Tn=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,kn=new RegExp(Tn.source,"g");function Yl(e){return function(){return e}}function ql(e){return function(t){return e(t)+""}}function jl(e,t){var n=Tn.lastIndex=kn.lastIndex=0,r,i,o,s=-1,a=[],l=[];for(e=e+"",t=t+"";(r=Tn.exec(e))&&(i=kn.exec(t));)(o=i.index)>n&&(o=t.slice(n,o),a[s]?a[s]+=o:a[++s]=o),(r=r[0])===(i=i[0])?a[s]?a[s]+=i:a[++s]=i:(a[++s]=null,l.push({i:s,x:je(r,i)})),n=kn.lastIndex;return n<t.length&&(o=t.slice(n),a[s]?a[s]+=o:a[++s]=o),a.length<2?l[0]?ql(l[0].x):Yl(t):(t=l.length,function(c){for(var u=0,d;u<t;++u)a[(d=l[u]).i]=d.x(c);return a.join("")})}var kr=180/Math.PI,An={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Di(e,t,n,r,i,o){var s,a,l;return(s=Math.sqrt(e*e+t*t))&&(e/=s,t/=s),(l=e*n+t*r)&&(n-=e*l,r-=t*l),(a=Math.sqrt(n*n+r*r))&&(n/=a,r/=a,l/=a),e*r<t*n&&(e=-e,t=-t,l=-l,s=-s),{translateX:i,translateY:o,rotate:Math.atan2(t,e)*kr,skewX:Math.atan(l)*kr,scaleX:s,scaleY:a}}var Ut;function Gl(e){const t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?An:Di(t.a,t.b,t.c,t.d,t.e,t.f)}function Jl(e){return e==null||(Ut||(Ut=document.createElementNS("http://www.w3.org/2000/svg","g")),Ut.setAttribute("transform",e),!(e=Ut.transform.baseVal.consolidate()))?An:(e=e.matrix,Di(e.a,e.b,e.c,e.d,e.e,e.f))}function $i(e,t,n,r){function i(c){return c.length?c.pop()+" ":""}function o(c,u,d,p,m,y){if(c!==d||u!==p){var O=m.push("translate(",null,t,null,n);y.push({i:O-4,x:je(c,d)},{i:O-2,x:je(u,p)})}else(d||p)&&m.push("translate("+d+t+p+n)}function s(c,u,d,p){c!==u?(c-u>180?u+=360:u-c>180&&(c+=360),p.push({i:d.push(i(d)+"rotate(",null,r)-2,x:je(c,u)})):u&&d.push(i(d)+"rotate("+u+r)}function a(c,u,d,p){c!==u?p.push({i:d.push(i(d)+"skewX(",null,r)-2,x:je(c,u)}):u&&d.push(i(d)+"skewX("+u+r)}function l(c,u,d,p,m,y){if(c!==d||u!==p){var O=m.push(i(m)+"scale(",null,",",null,")");y.push({i:O-4,x:je(c,d)},{i:O-2,x:je(u,p)})}else(d!==1||p!==1)&&m.push(i(m)+"scale("+d+","+p+")")}return function(c,u){var d=[],p=[];return c=e(c),u=e(u),o(c.translateX,c.translateY,u.translateX,u.translateY,d,p),s(c.rotate,u.rotate,d,p),a(c.skewX,u.skewX,d,p),l(c.scaleX,c.scaleY,u.scaleX,u.scaleY,d,p),c=u=null,function(m){for(var y=-1,O=p.length,N;++y<O;)d[(N=p[y]).i]=N.x(m);return d.join("")}}}var Wl=$i(Gl,"px, ","px)","deg)"),Zl=$i(Jl,", ",")",")"),Ql=1e-12;function xr(e){return((e=Math.exp(e))+1/e)/2}function ec(e){return((e=Math.exp(e))-1/e)/2}function tc(e){return((e=Math.exp(2*e))-1)/(e+1)}const nc=function e(t,n,r){function i(o,s){var a=o[0],l=o[1],c=o[2],u=s[0],d=s[1],p=s[2],m=u-a,y=d-l,O=m*m+y*y,N,k;if(O<Ql)k=Math.log(p/c)/t,N=function(L){return[a+L*m,l+L*y,c*Math.exp(t*L*k)]};else{var C=Math.sqrt(O),X=(p*p-c*c+r*O)/(2*c*n*C),g=(p*p-c*c-r*O)/(2*p*n*C),K=Math.log(Math.sqrt(X*X+1)-X),B=Math.log(Math.sqrt(g*g+1)-g);k=(B-K)/t,N=function(L){var x=L*k,E=xr(K),U=c/(n*C)*(E*tc(t*x+K)-ec(K));return[a+U*m,l+U*y,c*E/xr(t*x+K)]}}return N.duration=k*1e3*t/Math.SQRT2,N}return i.rho=function(o){var s=Math.max(.001,+o),a=s*s,l=a*a;return e(s,a,l)},i}(Math.SQRT2,2,4);var _t=0,wt=0,gt=0,zi=1e3,Qt,bt,en=0,at=0,un=0,Pt=typeof performance=="object"&&performance.now?performance:Date,Fi=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function jn(){return at||(Fi(rc),at=Pt.now()+un)}function rc(){at=0}function tn(){this._call=this._time=this._next=null}tn.prototype=Ki.prototype={constructor:tn,restart:function(e,t,n){if(typeof e!="function")throw new TypeError("callback is not a function");n=(n==null?jn():+n)+(t==null?0:+t),!this._next&&bt!==this&&(bt?bt._next=this:Qt=this,bt=this),this._call=e,this._time=n,Ln()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ln())}};function Ki(e,t,n){var r=new tn;return r.restart(e,t,n),r}function ic(){jn(),++_t;for(var e=Qt,t;e;)(t=at-e._time)>=0&&e._call.call(void 0,t),e=e._next;--_t}function Or(){at=(en=Pt.now())+un,_t=wt=0;try{ic()}finally{_t=0,sc(),at=0}}function oc(){var e=Pt.now(),t=e-en;t>zi&&(un-=t,en=e)}function sc(){for(var e,t=Qt,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:Qt=n);bt=e,Ln(r)}function Ln(e){if(!_t){wt&&(wt=clearTimeout(wt));var t=e-at;t>24?(e<1/0&&(wt=setTimeout(Or,e-Pt.now()-un)),gt&&(gt=clearInterval(gt))):(gt||(en=Pt.now(),gt=setInterval(oc,zi)),_t=1,Fi(Or))}}function Ir(e,t,n){var r=new tn;return t=t==null?0:+t,r.restart(i=>{r.stop(),e(i+t)},t,n),r}var ac=ln("start","end","cancel","interrupt"),lc=[],Hi=0,Sr=1,Rn=2,Kt=3,Pr=4,Nn=5,Ht=6;function fn(e,t,n,r,i,o){var s=e.__transition;if(!s)e.__transition={};else if(n in s)return;cc(e,n,{name:t,index:r,group:i,on:ac,tween:lc,time:o.time,delay:o.delay,duration:o.duration,ease:o.ease,timer:null,state:Hi})}function Gn(e,t){var n=Ce(e,t);if(n.state>Hi)throw new Error("too late; already scheduled");return n}function Fe(e,t){var n=Ce(e,t);if(n.state>Kt)throw new Error("too late; already running");return n}function Ce(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw new Error("transition not found");return n}function cc(e,t,n){var r=e.__transition,i;r[t]=n,n.timer=Ki(o,0,n.time);function o(c){n.state=Sr,n.timer.restart(s,n.delay,n.time),n.delay<=c&&s(c-n.delay)}function s(c){var u,d,p,m;if(n.state!==Sr)return l();for(u in r)if(m=r[u],m.name===n.name){if(m.state===Kt)return Ir(s);m.state===Pr?(m.state=Ht,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[u]):+u<t&&(m.state=Ht,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[u])}if(Ir(function(){n.state===Kt&&(n.state=Pr,n.timer.restart(a,n.delay,n.time),a(c))}),n.state=Rn,n.on.call("start",e,e.__data__,n.index,n.group),n.state===Rn){for(n.state=Kt,i=new Array(p=n.tween.length),u=0,d=-1;u<p;++u)(m=n.tween[u].value.call(e,e.__data__,n.index,n.group))&&(i[++d]=m);i.length=d+1}}function a(c){for(var u=c<n.duration?n.ease.call(null,c/n.duration):(n.timer.restart(l),n.state=Nn,1),d=-1,p=i.length;++d<p;)i[d].call(e,u);n.state===Nn&&(n.on.call("end",e,e.__data__,n.index,n.group),l())}function l(){n.state=Ht,n.timer.stop(),delete r[t];for(var c in r)return;delete e.__transition}}function Vt(e,t){var n=e.__transition,r,i,o=!0,s;if(!!n){t=t==null?null:t+"";for(s in n){if((r=n[s]).name!==t){o=!1;continue}i=r.state>Rn&&r.state<Nn,r.state=Ht,r.timer.stop(),r.on.call(i?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete n[s]}o&&delete e.__transition}}function uc(e){return this.each(function(){Vt(this,e)})}function fc(e,t){var n,r;return function(){var i=Fe(this,e),o=i.tween;if(o!==n){r=n=o;for(var s=0,a=r.length;s<a;++s)if(r[s].name===t){r=r.slice(),r.splice(s,1);break}}i.tween=r}}function hc(e,t,n){var r,i;if(typeof n!="function")throw new Error;return function(){var o=Fe(this,e),s=o.tween;if(s!==r){i=(r=s).slice();for(var a={name:t,value:n},l=0,c=i.length;l<c;++l)if(i[l].name===t){i[l]=a;break}l===c&&i.push(a)}o.tween=i}}function dc(e,t){var n=this._id;if(e+="",arguments.length<2){for(var r=Ce(this.node(),n).tween,i=0,o=r.length,s;i<o;++i)if((s=r[i]).name===e)return s.value;return null}return this.each((t==null?fc:hc)(n,e,t))}function Jn(e,t,n){var r=e._id;return e.each(function(){var i=Fe(this,r);(i.value||(i.value={}))[t]=n.apply(this,arguments)}),function(i){return Ce(i,r).value[t]}}function Vi(e,t){var n;return(typeof t=="number"?je:t instanceof St?Er:(n=St(t))?(t=n,Er):jl)(e,t)}function pc(e){return function(){this.removeAttribute(e)}}function mc(e){return function(){this.removeAttributeNS(e.space,e.local)}}function _c(e,t,n){var r,i=n+"",o;return function(){var s=this.getAttribute(e);return s===i?null:s===r?o:o=t(r=s,n)}}function gc(e,t,n){var r,i=n+"",o;return function(){var s=this.getAttributeNS(e.space,e.local);return s===i?null:s===r?o:o=t(r=s,n)}}function vc(e,t,n){var r,i,o;return function(){var s,a=n(this),l;return a==null?void this.removeAttribute(e):(s=this.getAttribute(e),l=a+"",s===l?null:s===r&&l===i?o:(i=l,o=t(r=s,a)))}}function yc(e,t,n){var r,i,o;return function(){var s,a=n(this),l;return a==null?void this.removeAttributeNS(e.space,e.local):(s=this.getAttributeNS(e.space,e.local),l=a+"",s===l?null:s===r&&l===i?o:(i=l,o=t(r=s,a)))}}function wc(e,t){var n=cn(e),r=n==="transform"?Zl:Vi;return this.attrTween(e,typeof t=="function"?(n.local?yc:vc)(n,r,Jn(this,"attr."+e,t)):t==null?(n.local?mc:pc)(n):(n.local?gc:_c)(n,r,t))}function bc(e,t){return function(n){this.setAttribute(e,t.call(this,n))}}function Ec(e,t){return function(n){this.setAttributeNS(e.space,e.local,t.call(this,n))}}function kc(e,t){var n,r;function i(){var o=t.apply(this,arguments);return o!==r&&(n=(r=o)&&Ec(e,o)),n}return i._value=t,i}function xc(e,t){var n,r;function i(){var o=t.apply(this,arguments);return o!==r&&(n=(r=o)&&bc(e,o)),n}return i._value=t,i}function Oc(e,t){var n="attr."+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!="function")throw new Error;var r=cn(e);return this.tween(n,(r.local?kc:xc)(r,t))}function Ic(e,t){return function(){Gn(this,e).delay=+t.apply(this,arguments)}}function Sc(e,t){return t=+t,function(){Gn(this,e).delay=t}}function Pc(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?Ic:Sc)(t,e)):Ce(this.node(),t).delay}function Tc(e,t){return function(){Fe(this,e).duration=+t.apply(this,arguments)}}function Ac(e,t){return t=+t,function(){Fe(this,e).duration=t}}function Lc(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?Tc:Ac)(t,e)):Ce(this.node(),t).duration}function Rc(e,t){if(typeof t!="function")throw new Error;return function(){Fe(this,e).ease=t}}function Nc(e){var t=this._id;return arguments.length?this.each(Rc(t,e)):Ce(this.node(),t).ease}function Cc(e,t){return function(){var n=t.apply(this,arguments);if(typeof n!="function")throw new Error;Fe(this,e).ease=n}}function Mc(e){if(typeof e!="function")throw new Error;return this.each(Cc(this._id,e))}function Uc(e){typeof e!="function"&&(e=bi(e));for(var t=this._groups,n=t.length,r=new Array(n),i=0;i<n;++i)for(var o=t[i],s=o.length,a=r[i]=[],l,c=0;c<s;++c)(l=o[c])&&e.call(l,l.__data__,c,o)&&a.push(l);return new Ye(r,this._parents,this._name,this._id)}function Dc(e){if(e._id!==this._id)throw new Error;for(var t=this._groups,n=e._groups,r=t.length,i=n.length,o=Math.min(r,i),s=new Array(r),a=0;a<o;++a)for(var l=t[a],c=n[a],u=l.length,d=s[a]=new Array(u),p,m=0;m<u;++m)(p=l[m]||c[m])&&(d[m]=p);for(;a<r;++a)s[a]=t[a];return new Ye(s,this._parents,this._name,this._id)}function $c(e){return(e+"").trim().split(/^|\s+/).every(function(t){var n=t.indexOf(".");return n>=0&&(t=t.slice(0,n)),!t||t==="start"})}function zc(e,t,n){var r,i,o=$c(t)?Gn:Fe;return function(){var s=o(this,e),a=s.on;a!==r&&(i=(r=a).copy()).on(t,n),s.on=i}}function Fc(e,t){var n=this._id;return arguments.length<2?Ce(this.node(),n).on.on(e):this.each(zc(n,e,t))}function Kc(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function Hc(){return this.on("end.remove",Kc(this._id))}function Vc(e){var t=this._name,n=this._id;typeof e!="function"&&(e=Xn(e));for(var r=this._groups,i=r.length,o=new Array(i),s=0;s<i;++s)for(var a=r[s],l=a.length,c=o[s]=new Array(l),u,d,p=0;p<l;++p)(u=a[p])&&(d=e.call(u,u.__data__,p,a))&&("__data__"in u&&(d.__data__=u.__data__),c[p]=d,fn(c[p],t,n,p,c,Ce(u,n)));return new Ye(o,this._parents,t,n)}function Bc(e){var t=this._name,n=this._id;typeof e!="function"&&(e=wi(e));for(var r=this._groups,i=r.length,o=[],s=[],a=0;a<i;++a)for(var l=r[a],c=l.length,u,d=0;d<c;++d)if(u=l[d]){for(var p=e.call(u,u.__data__,d,l),m,y=Ce(u,n),O=0,N=p.length;O<N;++O)(m=p[O])&&fn(m,t,n,O,p,y);o.push(p),s.push(u)}return new Ye(o,s,t,n)}var Xc=At.prototype.constructor;function Yc(){return new Xc(this._groups,this._parents)}function qc(e,t){var n,r,i;return function(){var o=mt(this,e),s=(this.style.removeProperty(e),mt(this,e));return o===s?null:o===n&&s===r?i:i=t(n=o,r=s)}}function Bi(e){return function(){this.style.removeProperty(e)}}function jc(e,t,n){var r,i=n+"",o;return function(){var s=mt(this,e);return s===i?null:s===r?o:o=t(r=s,n)}}function Gc(e,t,n){var r,i,o;return function(){var s=mt(this,e),a=n(this),l=a+"";return a==null&&(l=a=(this.style.removeProperty(e),mt(this,e))),s===l?null:s===r&&l===i?o:(i=l,o=t(r=s,a))}}function Jc(e,t){var n,r,i,o="style."+t,s="end."+o,a;return function(){var l=Fe(this,e),c=l.on,u=l.value[o]==null?a||(a=Bi(t)):void 0;(c!==n||i!==u)&&(r=(n=c).copy()).on(s,i=u),l.on=r}}function Wc(e,t,n){var r=(e+="")=="transform"?Wl:Vi;return t==null?this.styleTween(e,qc(e,r)).on("end.style."+e,Bi(e)):typeof t=="function"?this.styleTween(e,Gc(e,r,Jn(this,"style."+e,t))).each(Jc(this._id,e)):this.styleTween(e,jc(e,r,t),n).on("end.style."+e,null)}function Zc(e,t,n){return function(r){this.style.setProperty(e,t.call(this,r),n)}}function Qc(e,t,n){var r,i;function o(){var s=t.apply(this,arguments);return s!==i&&(r=(i=s)&&Zc(e,s,n)),r}return o._value=t,o}function eu(e,t,n){var r="style."+(e+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!="function")throw new Error;return this.tween(r,Qc(e,t,n==null?"":n))}function tu(e){return function(){this.textContent=e}}function nu(e){return function(){var t=e(this);this.textContent=t==null?"":t}}function ru(e){return this.tween("text",typeof e=="function"?nu(Jn(this,"text",e)):tu(e==null?"":e+""))}function iu(e){return function(t){this.textContent=e.call(this,t)}}function ou(e){var t,n;function r(){var i=e.apply(this,arguments);return i!==n&&(t=(n=i)&&iu(i)),t}return r._value=e,r}function su(e){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!="function")throw new Error;return this.tween(t,ou(e))}function au(){for(var e=this._name,t=this._id,n=Xi(),r=this._groups,i=r.length,o=0;o<i;++o)for(var s=r[o],a=s.length,l,c=0;c<a;++c)if(l=s[c]){var u=Ce(l,t);fn(l,e,n,c,s,{time:u.time+u.delay+u.duration,delay:0,duration:u.duration,ease:u.ease})}return new Ye(r,this._parents,e,n)}function lu(){var e,t,n=this,r=n._id,i=n.size();return new Promise(function(o,s){var a={value:s},l={value:function(){--i===0&&o()}};n.each(function(){var c=Fe(this,r),u=c.on;u!==e&&(t=(e=u).copy(),t._.cancel.push(a),t._.interrupt.push(a),t._.end.push(l)),c.on=t}),i===0&&o()})}var cu=0;function Ye(e,t,n,r){this._groups=e,this._parents=t,this._name=n,this._id=r}function Xi(){return++cu}var Ke=At.prototype;Ye.prototype={constructor:Ye,select:Vc,selectAll:Bc,selectChild:Ke.selectChild,selectChildren:Ke.selectChildren,filter:Uc,merge:Dc,selection:Yc,transition:au,call:Ke.call,nodes:Ke.nodes,node:Ke.node,size:Ke.size,empty:Ke.empty,each:Ke.each,on:Fc,attr:wc,attrTween:Oc,style:Wc,styleTween:eu,text:ru,textTween:su,remove:Hc,tween:dc,delay:Pc,duration:Lc,ease:Nc,easeVarying:Mc,end:lu,[Symbol.iterator]:Ke[Symbol.iterator]};function uu(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var fu={time:null,delay:0,duration:250,ease:uu};function hu(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw new Error(`transition ${t} not found`);return n}function du(e){var t,n;e instanceof Ye?(t=e._id,e=e._name):(t=Xi(),(n=fu).time=jn(),e=e==null?null:e+"");for(var r=this._groups,i=r.length,o=0;o<i;++o)for(var s=r[o],a=s.length,l,c=0;c<a;++c)(l=s[c])&&fn(l,e,t,c,s,n||hu(l,t));return new Ye(r,this._parents,e,t)}At.prototype.interrupt=uc;At.prototype.transition=du;const Dt=e=>()=>e;function pu(e,{sourceEvent:t,target:n,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function Be(e,t,n){this.k=e,this.x=t,this.y=n}Be.prototype={constructor:Be,scale:function(e){return e===1?this:new Be(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new Be(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var Wn=new Be(1,0,0);Be.prototype;function xn(e){e.stopImmediatePropagation()}function vt(e){e.preventDefault(),e.stopImmediatePropagation()}function mu(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function _u(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function Tr(){return this.__zoom||Wn}function gu(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function vu(){return navigator.maxTouchPoints||"ontouchstart"in this}function yu(e,t,n){var r=e.invertX(t[0][0])-n[0][0],i=e.invertX(t[1][0])-n[1][0],o=e.invertY(t[0][1])-n[0][1],s=e.invertY(t[1][1])-n[1][1];return e.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),s>o?(o+s)/2:Math.min(0,o)||Math.max(0,s))}function wu(){var e=mu,t=_u,n=yu,r=gu,i=vu,o=[0,1/0],s=[[-1/0,-1/0],[1/0,1/0]],a=250,l=nc,c=ln("start","zoom","end"),u,d,p,m=500,y=150,O=0,N=10;function k(h){h.property("__zoom",Tr).on("wheel.zoom",x,{passive:!1}).on("mousedown.zoom",E).on("dblclick.zoom",U).filter(i).on("touchstart.zoom",b).on("touchmove.zoom",H).on("touchend.zoom touchcancel.zoom",G).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}k.transform=function(h,I,v,P){var $=h.selection?h.selection():h;$.property("__zoom",Tr),h!==$?K(h,I,v,P):$.interrupt().each(function(){B(this,arguments).event(P).start().zoom(null,typeof I=="function"?I.apply(this,arguments):I).end()})},k.scaleBy=function(h,I,v,P){k.scaleTo(h,function(){var $=this.__zoom.k,F=typeof I=="function"?I.apply(this,arguments):I;return $*F},v,P)},k.scaleTo=function(h,I,v,P){k.transform(h,function(){var $=t.apply(this,arguments),F=this.__zoom,V=v==null?g($):typeof v=="function"?v.apply(this,arguments):v,j=F.invert(V),W=typeof I=="function"?I.apply(this,arguments):I;return n(X(C(F,W),V,j),$,s)},v,P)},k.translateBy=function(h,I,v,P){k.transform(h,function(){return n(this.__zoom.translate(typeof I=="function"?I.apply(this,arguments):I,typeof v=="function"?v.apply(this,arguments):v),t.apply(this,arguments),s)},null,P)},k.translateTo=function(h,I,v,P,$){k.transform(h,function(){var F=t.apply(this,arguments),V=this.__zoom,j=P==null?g(F):typeof P=="function"?P.apply(this,arguments):P;return n(Wn.translate(j[0],j[1]).scale(V.k).translate(typeof I=="function"?-I.apply(this,arguments):-I,typeof v=="function"?-v.apply(this,arguments):-v),F,s)},P,$)};function C(h,I){return I=Math.max(o[0],Math.min(o[1],I)),I===h.k?h:new Be(I,h.x,h.y)}function X(h,I,v){var P=I[0]-v[0]*h.k,$=I[1]-v[1]*h.k;return P===h.x&&$===h.y?h:new Be(h.k,P,$)}function g(h){return[(+h[0][0]+ +h[1][0])/2,(+h[0][1]+ +h[1][1])/2]}function K(h,I,v,P){h.on("start.zoom",function(){B(this,arguments).event(P).start()}).on("interrupt.zoom end.zoom",function(){B(this,arguments).event(P).end()}).tween("zoom",function(){var $=this,F=arguments,V=B($,F).event(P),j=t.apply($,F),W=v==null?g(j):typeof v=="function"?v.apply($,F):v,oe=Math.max(j[1][0]-j[0][0],j[1][1]-j[0][1]),se=$.__zoom,he=typeof I=="function"?I.apply($,F):I,ge=l(se.invert(W).concat(oe/se.k),he.invert(W).concat(oe/he.k));return function(de){if(de===1)de=he;else{var Ie=ge(de),lt=oe/Ie[2];de=new Be(lt,W[0]-Ie[0]*lt,W[1]-Ie[1]*lt)}V.zoom(null,de)}})}function B(h,I,v){return!v&&h.__zooming||new L(h,I)}function L(h,I){this.that=h,this.args=I,this.active=0,this.sourceEvent=null,this.extent=t.apply(h,I),this.taps=0}L.prototype={event:function(h){return h&&(this.sourceEvent=h),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(h,I){return this.mouse&&h!=="mouse"&&(this.mouse[1]=I.invert(this.mouse[0])),this.touch0&&h!=="touch"&&(this.touch0[1]=I.invert(this.touch0[0])),this.touch1&&h!=="touch"&&(this.touch1[1]=I.invert(this.touch1[0])),this.that.__zoom=I,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(h){var I=Pe(this.that).datum();c.call(h,this.that,new pu(h,{sourceEvent:this.sourceEvent,target:k,type:h,transform:this.that.__zoom,dispatch:c}),I)}};function x(h,...I){if(!e.apply(this,arguments))return;var v=B(this,I).event(h),P=this.__zoom,$=Math.max(o[0],Math.min(o[1],P.k*Math.pow(2,r.apply(this,arguments)))),F=Ve(h);if(v.wheel)(v.mouse[0][0]!==F[0]||v.mouse[0][1]!==F[1])&&(v.mouse[1]=P.invert(v.mouse[0]=F)),clearTimeout(v.wheel);else{if(P.k===$)return;v.mouse=[F,P.invert(F)],Vt(this),v.start()}vt(h),v.wheel=setTimeout(V,y),v.zoom("mouse",n(X(C(P,$),v.mouse[0],v.mouse[1]),v.extent,s));function V(){v.wheel=null,v.end()}}function E(h,...I){if(p||!e.apply(this,arguments))return;var v=h.currentTarget,P=B(this,I,!0).event(h),$=Pe(h.view).on("mousemove.zoom",W,!0).on("mouseup.zoom",oe,!0),F=Ve(h,v),V=h.clientX,j=h.clientY;Li(h.view),xn(h),P.mouse=[F,this.__zoom.invert(F)],Vt(this),P.start();function W(se){if(vt(se),!P.moved){var he=se.clientX-V,ge=se.clientY-j;P.moved=he*he+ge*ge>O}P.event(se).zoom("mouse",n(X(P.that.__zoom,P.mouse[0]=Ve(se,v),P.mouse[1]),P.extent,s))}function oe(se){$.on("mousemove.zoom mouseup.zoom",null),Ri(se.view,P.moved),vt(se),P.event(se).end()}}function U(h,...I){if(!!e.apply(this,arguments)){var v=this.__zoom,P=Ve(h.changedTouches?h.changedTouches[0]:h,this),$=v.invert(P),F=v.k*(h.shiftKey?.5:2),V=n(X(C(v,F),P,$),t.apply(this,I),s);vt(h),a>0?Pe(this).transition().duration(a).call(K,V,P,h):Pe(this).call(k.transform,V,P,h)}}function b(h,...I){if(!!e.apply(this,arguments)){var v=h.touches,P=v.length,$=B(this,I,h.changedTouches.length===P).event(h),F,V,j,W;for(xn(h),V=0;V<P;++V)j=v[V],W=Ve(j,this),W=[W,this.__zoom.invert(W),j.identifier],$.touch0?!$.touch1&&$.touch0[2]!==W[2]&&($.touch1=W,$.taps=0):($.touch0=W,F=!0,$.taps=1+!!u);u&&(u=clearTimeout(u)),F&&($.taps<2&&(d=W[0],u=setTimeout(function(){u=null},m)),Vt(this),$.start())}}function H(h,...I){if(!!this.__zooming){var v=B(this,I).event(h),P=h.changedTouches,$=P.length,F,V,j,W;for(vt(h),F=0;F<$;++F)V=P[F],j=Ve(V,this),v.touch0&&v.touch0[2]===V.identifier?v.touch0[0]=j:v.touch1&&v.touch1[2]===V.identifier&&(v.touch1[0]=j);if(V=v.that.__zoom,v.touch1){var oe=v.touch0[0],se=v.touch0[1],he=v.touch1[0],ge=v.touch1[1],de=(de=he[0]-oe[0])*de+(de=he[1]-oe[1])*de,Ie=(Ie=ge[0]-se[0])*Ie+(Ie=ge[1]-se[1])*Ie;V=C(V,Math.sqrt(de/Ie)),j=[(oe[0]+he[0])/2,(oe[1]+he[1])/2],W=[(se[0]+ge[0])/2,(se[1]+ge[1])/2]}else if(v.touch0)j=v.touch0[0],W=v.touch0[1];else return;v.zoom("touch",n(X(V,j,W),v.extent,s))}}function G(h,...I){if(!!this.__zooming){var v=B(this,I).event(h),P=h.changedTouches,$=P.length,F,V;for(xn(h),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),F=0;F<$;++F)V=P[F],v.touch0&&v.touch0[2]===V.identifier?delete v.touch0:v.touch1&&v.touch1[2]===V.identifier&&delete v.touch1;if(v.touch1&&!v.touch0&&(v.touch0=v.touch1,delete v.touch1),v.touch0)v.touch0[1]=this.__zoom.invert(v.touch0[0]);else if(v.end(),v.taps===2&&(V=Ve(V,this),Math.hypot(d[0]-V[0],d[1]-V[1])<N)){var j=Pe(this).on("dblclick.zoom");j&&j.apply(this,arguments)}}}return k.wheelDelta=function(h){return arguments.length?(r=typeof h=="function"?h:Dt(+h),k):r},k.filter=function(h){return arguments.length?(e=typeof h=="function"?h:Dt(!!h),k):e},k.touchable=function(h){return arguments.length?(i=typeof h=="function"?h:Dt(!!h),k):i},k.extent=function(h){return arguments.length?(t=typeof h=="function"?h:Dt([[+h[0][0],+h[0][1]],[+h[1][0],+h[1][1]]]),k):t},k.scaleExtent=function(h){return arguments.length?(o[0]=+h[0],o[1]=+h[1],k):[o[0],o[1]]},k.translateExtent=function(h){return arguments.length?(s[0][0]=+h[0][0],s[1][0]=+h[1][0],s[0][1]=+h[0][1],s[1][1]=+h[1][1],k):[[s[0][0],s[0][1]],[s[1][0],s[1][1]]]},k.constrain=function(h){return arguments.length?(n=h,k):n},k.duration=function(h){return arguments.length?(a=+h,k):a},k.interpolate=function(h){return arguments.length?(l=h,k):l},k.on=function(){var h=c.on.apply(c,arguments);return h===c?k:h},k.clickDistance=function(h){return arguments.length?(O=(h=+h)*h,k):Math.sqrt(O)},k.tapDistance=function(h){return arguments.length?(N=+h,k):N},k}const bu="wss://spaces.huggingface.tech/huggingface-projects/stable-diffusion-multiplayer/gradio/queue/join",Eu="https://hf.space/embed/huggingface-projects/stable-diffusion-multiplayer/uploads",ye=ze(""),ut=ze(!1),Et=ze(!1),Cn=ze(),Mn=ze(!1),Un=ze(Wn);function hn(){const e=Hr(_i);if(!e)throw new Error("Use RoomProvider as parent with id prop");return e}function Zn(){const e=hn(),{subscribe:t,set:n}=ze();function r(o){e.updatePresence(o)}const i=e.subscribe("my-presence",o=>{n(o)});return nn(()=>{i()}),{subscribe:t,update:r}}function ku(){const e=hn(),t=ze(),n=e.subscribe("others",r=>{t.set(r)});return nn(n),t}function xu(){const e=hn(),t=ze();async function n(){const{root:r}=await e.getStorage();t.set(r)}return n(),t}function Yi(e,t){const n=hn(),r=xu(),i=ze();let o=()=>{};const s=r.subscribe(a=>{!a||(a.get(e)||a.set(e,new ks(t)),i.set(a.get(e)),o(),o=n.subscribe(a.get(e),l=>{i.set(l)}))});return nn(s),i}function Ou(e){let t,n,r,i;const o=e[9].default,s=Dn(o,e,e[8],null);return{c(){t=ne("div"),n=ne("canvas"),r=le(),s&&s.c(),this.h()},l(a){t=re(a,"DIV",{class:!0});var l=Z(t);n=re(l,"CANVAS",{width:!0,height:!0,class:!0}),Z(n).forEach(D),r=ce(l),s&&s.l(l),l.forEach(D),this.h()},h(){A(n,"width",e[5]),A(n,"height",e[4]),A(n,"class","absolute top-0 left-0 bg-white svelte-6dcxg7"),A(t,"class","absolute top-0 left-0 right-0 bottom-0 overflow-hidden z-0 bg-gray-800")},m(a,l){ue(a,t,l),z(t,n),e[10](n),z(t,r),s&&s.m(t,null),e[11](t),i=!0},p(a,[l]){s&&s.p&&(!i||l&256)&&$n(s,o,a,a[8],i?Fn(o,a[8],l,null):zn(a[8]),null)},i(a){i||(q(s,a),i=!0)},o(a){J(s,a),i=!1},d(a){a&&D(t),e[10](null),s&&s.d(a),e[11](null)}}}function Iu(){}function Su(e,t,n){let r,i,o,s,a;pe(e,Un,E=>n(13,r=E)),pe(e,Cn,E=>n(14,i=E)),pe(e,Et,E=>n(16,s=E));let{$$slots:l={},$$scope:c}=t;const u=Zn();pe(e,u,E=>n(15,o=E));const d=Yi("promptImgStorage");pe(e,d,E=>n(7,a=E));const p=512*4,m=512*4;let{value:y}=t,O,N;const k=new Set;function C(E){return E?Object.values(E).sort((b,H)=>b.date-H.date).filter(({id:b})=>!k.has(b)):[]}let X=[];rn(()=>{const E=m/O.clientWidth,U=wu().scaleExtent([1/E/2,1]).translateExtent([[-m*.3,-p*.3],[m*1.3,p*1.3]]).tapDistance(10).on("zoom",K),b=Pe(y.parentElement).call(U).on("dblclick.zoom",()=>(ae(Et,s=!0,s),ae(Cn,i=o.cursor,i),console.log("clicked",i),null)).call(U.scaleTo,1/E/1.5).on("pointermove",B).on("pointerleave",Iu);N=y.getContext("2d");function H(){console.log("zoom reset");const G=m/O.clientWidth;U.scaleExtent([1/G/2,1]),b.call(U.scaleTo,1/G/1.5)}return window.addEventListener("resize",H),()=>{window.removeEventListener("resize",H)}});function g(E){Promise.all(E.map(({imgURL:U,position:b,id:H})=>new Promise(G=>{const h=new Image;h.crossOrigin="anonymous",h.onload=()=>{const v={img:h,position:b,id:H};N.drawImage(h,b.x,b.y,h.width,h.height),G(v)};const I=U.split("/");h.src=`${Eu}/${I.slice(3).join("/")}`}))).then(U=>{U.forEach(({img:b,position:H,id:G})=>{k.add(G),N.drawImage(b,H.x,H.y,b.width,b.height)})})}function K(E){const U=ae(Un,r=E.transform,r);n(0,y.style.transform=`translate(${U.x}px, ${U.y}px) scale(${U.k})`,y)}function B(E){E.preventDefault();const U=Jt(r.invertX(E.clientX)),b=Jt(r.invertY(E.clientY));u.update({cursor:{x:U,y:b}})}function L(E){Yt[E?"unshift":"push"](()=>{y=E,n(0,y)})}function x(E){Yt[E?"unshift":"push"](()=>{O=E,n(1,O)})}return e.$$set=E=>{"value"in E&&n(0,y=E.value),"$$scope"in E&&n(8,c=E.$$scope)},e.$$.update=()=>{e.$$.dirty&128&&n(6,X=C(a==null?void 0:a.toObject())),e.$$.dirty&64&&X&&g(X)},[y,O,u,d,p,m,X,a,c,l,L,x]}class Pu extends Ae{constructor(t){super(),Le(this,t,Su,Ou,Re,{value:0})}}function Tu(e){let t,n,r,i,o,s,a,l,c,u,d,p,m,y,O,N;return{c(){t=ne("div"),n=ne("div"),r=ne("input"),i=le(),o=ne("label"),s=we("Show Frames"),a=le(),l=ne("button"),c=we("Move"),u=le(),d=ne("button"),p=ne("span"),m=we("+"),y=we(` | |
Paint`),this.h()},l(k){t=re(k,"DIV",{class:!0});var C=Z(t);n=re(C,"DIV",{class:!0});var X=Z(n);r=re(X,"INPUT",{id:!0,type:!0,class:!0}),i=ce(X),o=re(X,"LABEL",{for:!0,class:!0});var g=Z(o);s=be(g,"Show Frames"),g.forEach(D),X.forEach(D),a=ce(C),l=re(C,"BUTTON",{class:!0,title:!0});var K=Z(l);c=be(K,"Move"),K.forEach(D),u=ce(C),d=re(C,"BUTTON",{class:!0,title:!0});var B=Z(d);p=re(B,"SPAN",{class:!0});var L=Z(p);m=be(L,"+"),L.forEach(D),y=be(B,` | |
Paint`),B.forEach(D),C.forEach(D),this.h()},h(){A(r,"id","showframes"),A(r,"type","checkbox"),A(r,"class","w-4 h-4 text-blue-600 bg-gray-100 rounded border-gray-300 focus:ring-blue-500 dark:focus:ring-blue-600 dark:ring-offset-gray-800 focus:ring-2 dark:bg-gray-700 dark:border-gray-600 cursor-pointer"),A(o,"for","showframes"),A(o,"class","text-white dark:text-white cursor-pointer ml-2"),A(n,"class","flex items-center"),A(l,"class","button svelte-3z1a8v"),A(l,"title","Move"),A(p,"class","rounded-sm h-5 w-5 m-1 flex justify-center items-center border-2 border-dashed border-violet-700 mr-2"),A(d,"class","button-paint bg-violet-100 text-violet-900 svelte-3z1a8v"),A(d,"title","New Paint Frame"),A(t,"class","grid grid-cols-4 gap-3 text-sm w-max mx-auto")},m(k,C){ue(k,t,C),z(t,n),z(n,r),r.checked=e[0],z(n,i),z(n,o),z(o,s),z(t,a),z(t,l),z(l,c),z(t,u),z(t,d),z(d,p),z(p,m),z(d,y),O||(N=[nt(r,"change",e[2]),nt(l,"click",e[3]),nt(d,"click",e[4])],O=!0)},p(k,[C]){C&1&&(r.checked=k[0])},i:me,o:me,d(k){k&&D(t),O=!1,Vr(N)}}}function Au(e,t,n){let r;pe(e,Mn,l=>n(0,r=l));const i=Br();function o(){r=this.checked,Mn.set(r)}return[r,i,o,()=>i("paintMode",{mode:"move"}),()=>i("paintMode",{mode:"paint"})]}class Lu extends Ae{constructor(t){super(),Le(this,t,Au,Tu,Re,{})}}function Ru(e){let t,n,r,i;return{c(){t=ne("form"),n=ne("input"),this.h()},l(o){t=re(o,"FORM",{class:!0});var s=Z(t);n=re(s,"INPUT",{class:!0,placeholder:!0,title:!0,type:!0,name:!0}),s.forEach(D),this.h()},h(){A(n,"class","input svelte-1pw1u5k"),A(n,"placeholder","Type a prompt..."),A(n,"title","Input prompt to generate image and obtain palette"),A(n,"type","text"),A(n,"name","prompt"),A(t,"class","fixed w-screen top-0 left-0 bottom-0 right-0 max-h-screen z-50 flex items-center justify-center bg-black bg-opacity-80 px-3")},m(o,s){ue(o,t,s),z(t,n),ir(n,e[0]),r||(i=[nt(n,"click",fo(e[2])),nt(n,"input",e[3]),nt(t,"submit",ho(e[4])),nt(t,"click",e[5])],r=!0)},p(o,[s]){s&1&&n.value!==o[0]&&ir(n,o[0])},i:me,o:me,d(o){o&&D(t),r=!1,Vr(i)}}}function Nu(e,t,n){const r=Br();let i;const o=Zn(),s=d=>{d.key==="Escape"&&(r("close"),o.update({currentPrompt:"",isPrompting:!1}))};rn(()=>(window.addEventListener("keyup",s),()=>{window.removeEventListener("keyup",s)}));function a(d){po.call(this,e,d)}function l(){i=this.value,n(0,i)}const c=()=>r("prompt",{prompt:i}),u=()=>r("close");return e.$$.update=()=>{e.$$.dirty&1&&o.update({currentPrompt:i,isPrompting:!0})},[i,r,a,l,c,u]}class Cu extends Ae{constructor(t){super(),Le(this,t,Nu,Ru,Re,{})}}var qi={},ji={},Qn={exports:{}},te=String,Gi=function(){return{isColorSupported:!1,reset:te,bold:te,dim:te,italic:te,underline:te,inverse:te,hidden:te,strikethrough:te,black:te,red:te,green:te,yellow:te,blue:te,magenta:te,cyan:te,white:te,gray:te,bgBlack:te,bgRed:te,bgGreen:te,bgYellow:te,bgBlue:te,bgMagenta:te,bgCyan:te,bgWhite:te}};Qn.exports=Gi();Qn.exports.createColors=Gi;(function(e){Object.defineProperty(e,"__esModule",{value:!0});function t(l,c){for(var u in c)Object.defineProperty(l,u,{enumerable:!0,get:c[u]})}t(e,{dim:()=>s,default:()=>a});const n=r(Qn.exports);function r(l){return l&&l.__esModule?l:{default:l}}let i=new Set;function o(l,c,u){typeof process<"u"&&process.env.JEST_WORKER_ID||u&&i.has(u)||(u&&i.add(u),console.warn(""),c.forEach(d=>console.warn(l,"-",d)))}function s(l){return n.default.dim(l)}const a={info(l,c){o(n.default.bold(n.default.cyan("info")),...Array.isArray(l)?[l]:[c,l])},warn(l,c){o(n.default.bold(n.default.yellow("warn")),...Array.isArray(l)?[l]:[c,l])},risk(l,c){o(n.default.bold(n.default.magenta("risk")),...Array.isArray(l)?[l]:[c,l])}}})(ji);(function(e){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:()=>i});const t=n(ji);function n(o){return o&&o.__esModule?o:{default:o}}function r({version:o,from:s,to:a}){t.default.warn(`${s}-color-renamed`,[`As of Tailwind CSS ${o}, \`${s}\` has been renamed to \`${a}\`.`,"Update your configuration file to silence this warning."])}const i={inherit:"inherit",current:"currentColor",transparent:"transparent",black:"#000",white:"#fff",slate:{50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a"},gray:{50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827"},zinc:{50:"#fafafa",100:"#f4f4f5",200:"#e4e4e7",300:"#d4d4d8",400:"#a1a1aa",500:"#71717a",600:"#52525b",700:"#3f3f46",800:"#27272a",900:"#18181b"},neutral:{50:"#fafafa",100:"#f5f5f5",200:"#e5e5e5",300:"#d4d4d4",400:"#a3a3a3",500:"#737373",600:"#525252",700:"#404040",800:"#262626",900:"#171717"},stone:{50:"#fafaf9",100:"#f5f5f4",200:"#e7e5e4",300:"#d6d3d1",400:"#a8a29e",500:"#78716c",600:"#57534e",700:"#44403c",800:"#292524",900:"#1c1917"},red:{50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d"},orange:{50:"#fff7ed",100:"#ffedd5",200:"#fed7aa",300:"#fdba74",400:"#fb923c",500:"#f97316",600:"#ea580c",700:"#c2410c",800:"#9a3412",900:"#7c2d12"},amber:{50:"#fffbeb",100:"#fef3c7",200:"#fde68a",300:"#fcd34d",400:"#fbbf24",500:"#f59e0b",600:"#d97706",700:"#b45309",800:"#92400e",900:"#78350f"},yellow:{50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12"},lime:{50:"#f7fee7",100:"#ecfccb",200:"#d9f99d",300:"#bef264",400:"#a3e635",500:"#84cc16",600:"#65a30d",700:"#4d7c0f",800:"#3f6212",900:"#365314"},green:{50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d"},emerald:{50:"#ecfdf5",100:"#d1fae5",200:"#a7f3d0",300:"#6ee7b7",400:"#34d399",500:"#10b981",600:"#059669",700:"#047857",800:"#065f46",900:"#064e3b"},teal:{50:"#f0fdfa",100:"#ccfbf1",200:"#99f6e4",300:"#5eead4",400:"#2dd4bf",500:"#14b8a6",600:"#0d9488",700:"#0f766e",800:"#115e59",900:"#134e4a"},cyan:{50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63"},sky:{50:"#f0f9ff",100:"#e0f2fe",200:"#bae6fd",300:"#7dd3fc",400:"#38bdf8",500:"#0ea5e9",600:"#0284c7",700:"#0369a1",800:"#075985",900:"#0c4a6e"},blue:{50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a"},indigo:{50:"#eef2ff",100:"#e0e7ff",200:"#c7d2fe",300:"#a5b4fc",400:"#818cf8",500:"#6366f1",600:"#4f46e5",700:"#4338ca",800:"#3730a3",900:"#312e81"},violet:{50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95"},purple:{50:"#faf5ff",100:"#f3e8ff",200:"#e9d5ff",300:"#d8b4fe",400:"#c084fc",500:"#a855f7",600:"#9333ea",700:"#7e22ce",800:"#6b21a8",900:"#581c87"},fuchsia:{50:"#fdf4ff",100:"#fae8ff",200:"#f5d0fe",300:"#f0abfc",400:"#e879f9",500:"#d946ef",600:"#c026d3",700:"#a21caf",800:"#86198f",900:"#701a75"},pink:{50:"#fdf2f8",100:"#fce7f3",200:"#fbcfe8",300:"#f9a8d4",400:"#f472b6",500:"#ec4899",600:"#db2777",700:"#be185d",800:"#9d174d",900:"#831843"},rose:{50:"#fff1f2",100:"#ffe4e6",200:"#fecdd3",300:"#fda4af",400:"#fb7185",500:"#f43f5e",600:"#e11d48",700:"#be123c",800:"#9f1239",900:"#881337"},get lightBlue(){return r({version:"v2.2",from:"lightBlue",to:"sky"}),this.sky},get warmGray(){return r({version:"v3.0",from:"warmGray",to:"stone"}),this.stone},get trueGray(){return r({version:"v3.0",from:"trueGray",to:"neutral"}),this.neutral},get coolGray(){return r({version:"v3.0",from:"coolGray",to:"gray"}),this.gray},get blueGray(){return r({version:"v3.0",from:"blueGray",to:"slate"}),this.slate}}})(qi);let On=qi;var Mu=(On.__esModule?On:{default:On}).default;const Xe=Object.values(Mu).filter(e=>typeof e=="object").map(e=>e[200]).slice(0,18),$t=["\u{1F436}","\u{1F431}","\u{1F42D}","\u{1F439}","\u{1F430}","\u{1F98A}","\u{1F43B}","\u{1F43C}","\u{1F428}","\u{1F42F}","\u{1F981}","\u{1F42E}","\u{1F432}","\u{1F31A}","\u{1F31D}","\u{1F31E}","\u{1F31B}","\u{1F31C}"];let Uu=(e=21)=>crypto.getRandomValues(new Uint8Array(e)).reduce((t,n)=>(n&=63,n<36?t+=n.toString(36):n<62?t+=(n-26).toString(36).toUpperCase():n>62?t+="-":t+="_",t),"");function Ar(e,t,n){const r=e.slice();return r[21]=t[n].connectionId,r[22]=t[n].presence,r}function Lr(e,t,n){const r=e.slice();return r[25]=t[n],r}function Rr(e){let t,n;return t=new Cu({}),t.$on("prompt",e[13]),t.$on("close",e[12]),{c(){Ee(t.$$.fragment)},l(r){ke(t.$$.fragment,r)},m(r,i){xe(t,r,i),n=!0},p:me,i(r){n||(q(t.$$.fragment,r),n=!0)},o(r){J(t.$$.fragment,r),n=!1},d(r){Oe(t,r)}}}function Nr(e){let t,n,r=e[0],i=[];for(let s=0;s<r.length;s+=1)i[s]=Cr(Lr(e,r,s));const o=s=>J(i[s],1,1,()=>{i[s]=null});return{c(){for(let s=0;s<i.length;s+=1)i[s].c();t=De()},l(s){for(let a=0;a<i.length;a+=1)i[a].l(s);t=De()},m(s,a){for(let l=0;l<i.length;l+=1)i[l].m(s,a);ue(s,t,a),n=!0},p(s,a){if(a&33){r=s[0];let l;for(l=0;l<r.length;l+=1){const c=Lr(s,r,l);i[l]?(i[l].p(c,a),q(i[l],1)):(i[l]=Cr(c),i[l].c(),q(i[l],1),i[l].m(t.parentNode,t))}for(Je(),l=r.length;l<i.length;l+=1)o(l);We()}},i(s){if(!n){for(let a=0;a<r.length;a+=1)q(i[a]);n=!0}},o(s){i=i.filter(Boolean);for(let a=0;a<i.length;a+=1)J(i[a]);n=!1},d(s){go(i,s),s&&D(t)}}}function Cr(e){var r,i;let t,n;return t=new vi({props:{color:Xe[0],transform:e[5],position:(r=e[25])==null?void 0:r.position,prompt:(i=e[25])==null?void 0:i.prompt}}),{c(){Ee(t.$$.fragment)},l(o){ke(t.$$.fragment,o)},m(o,s){xe(t,o,s),n=!0},p(o,s){var l,c;const a={};s&32&&(a.transform=o[5]),s&1&&(a.position=(l=o[25])==null?void 0:l.position),s&1&&(a.prompt=(c=o[25])==null?void 0:c.prompt),t.$set(a)},i(o){n||(q(t.$$.fragment,o),n=!0)},o(o){J(t.$$.fragment,o),n=!1},d(o){Oe(t,o)}}}function Mr(e){return{c:me,l:me,m:me,d:me}}function Ur(e){let t=[],n=new Map,r,i,o=[...e[8]];const s=a=>a[21];for(let a=0;a<o.length;a+=1){let l=Ar(e,o,a),c=s(l);n.set(c,t[a]=zr(c,l))}return{c(){for(let a=0;a<t.length;a+=1)t[a].c();r=De()},l(a){for(let l=0;l<t.length;l+=1)t[l].l(a);r=De()},m(a,l){for(let c=0;c<t.length;c+=1)t[c].m(a,l);ue(a,r,l),i=!0},p(a,l){l&288&&(o=[...a[8]],Je(),t=vo(t,l,s,1,a,o,n,r.parentNode,yo,zr,r,Ar),We())},i(a){if(!i){for(let l=0;l<o.length;l+=1)q(t[l]);i=!0}},o(a){for(let l=0;l<t.length;l+=1)J(t[l]);i=!1},d(a){for(let l=0;l<t.length;l+=1)t[l].d(a);a&&D(r)}}}function Dr(e){var r,i;let t,n;return t=new vi({props:{color:Xe[1+e[21]%(Xe.length-1)],position:(r=e[22])==null?void 0:r.cursor,prompt:(i=e[22])==null?void 0:i.currentPrompt,transform:e[5]}}),{c(){Ee(t.$$.fragment)},l(o){ke(t.$$.fragment,o)},m(o,s){xe(t,o,s),n=!0},p(o,s){var l,c;const a={};s&256&&(a.color=Xe[1+o[21]%(Xe.length-1)]),s&256&&(a.position=(l=o[22])==null?void 0:l.cursor),s&256&&(a.prompt=(c=o[22])==null?void 0:c.currentPrompt),s&32&&(a.transform=o[5]),t.$set(a)},i(o){n||(q(t.$$.fragment,o),n=!0)},o(o){J(t.$$.fragment,o),n=!1},d(o){Oe(t,o)}}}function $r(e){var r;let t,n;return t=new Ns({props:{emoji:$t[1+e[21]%($t.length-1)],color:Xe[1+e[21]%(Xe.length-1)],position:(r=e[22])==null?void 0:r.cursor,transform:e[5]}}),{c(){Ee(t.$$.fragment)},l(i){ke(t.$$.fragment,i)},m(i,o){xe(t,i,o),n=!0},p(i,o){var a;const s={};o&256&&(s.emoji=$t[1+i[21]%($t.length-1)]),o&256&&(s.color=Xe[1+i[21]%(Xe.length-1)]),o&256&&(s.position=(a=i[22])==null?void 0:a.cursor),o&32&&(s.transform=i[5]),t.$set(s)},i(i){n||(q(t.$$.fragment,i),n=!0)},o(i){J(t.$$.fragment,i),n=!1},d(i){Oe(t,i)}}}function zr(e,t){var l,c,u;let n,r,i,o,s=((l=t[22])==null?void 0:l.isPrompting)&&((c=t[22])==null?void 0:c.cursor)&&Dr(t),a=((u=t[22])==null?void 0:u.cursor)&&$r(t);return{key:e,first:null,c(){n=De(),s&&s.c(),r=le(),a&&a.c(),i=De(),this.h()},l(d){n=De(),s&&s.l(d),r=ce(d),a&&a.l(d),i=De(),this.h()},h(){this.first=n},m(d,p){ue(d,n,p),s&&s.m(d,p),ue(d,r,p),a&&a.m(d,p),ue(d,i,p),o=!0},p(d,p){var m,y,O;t=d,((m=t[22])==null?void 0:m.isPrompting)&&((y=t[22])==null?void 0:y.cursor)?s?(s.p(t,p),p&256&&q(s,1)):(s=Dr(t),s.c(),q(s,1),s.m(r.parentNode,r)):s&&(Je(),J(s,1,1,()=>{s=null}),We()),(O=t[22])!=null&&O.cursor?a?(a.p(t,p),p&256&&q(a,1)):(a=$r(t),a.c(),q(a,1),a.m(i.parentNode,i)):a&&(Je(),J(a,1,1,()=>{a=null}),We())},i(d){o||(q(s),q(a),o=!0)},o(d){J(s),J(a),o=!1},d(d){d&&D(n),s&&s.d(d),d&&D(r),a&&a.d(d),d&&D(i)}}}function Du(e){var U;let t,n,r,i,o,s,a,l,c,u,d,p,m,y,O,N,k,C,X,g=e[4]&&Rr(e);function K(b){e[15](b)}let B={};e[1]!==void 0&&(B.value=e[1]),l=new Pu({props:B}),Yt.push(()=>mo(l,"value",K)),p=new Al({props:{transform:e[5]}});let L=e[0]&&e[6]&&Nr(e),x=((U=e[7])==null?void 0:U.cursor)&&Mr(),E=e[8]&&Ur(e);return C=new Lu({}),C.$on("paintMode",zu),{c(){t=ne("div"),n=we(e[2]),r=le(),i=we(e[3]),o=le(),g&&g.c(),s=le(),a=ne("div"),Ee(l.$$.fragment),u=le(),d=ne("main"),Ee(p.$$.fragment),m=le(),L&&L.c(),y=le(),x&&x.c(),O=le(),E&&E.c(),N=le(),k=ne("div"),Ee(C.$$.fragment),this.h()},l(b){t=re(b,"DIV",{class:!0});var H=Z(t);n=be(H,e[2]),r=ce(H),i=be(H,e[3]),H.forEach(D),o=ce(b),g&&g.l(b),s=ce(b),a=re(b,"DIV",{class:!0});var G=Z(a);ke(l.$$.fragment,G),u=ce(G),d=re(G,"MAIN",{class:!0});var h=Z(d);ke(p.$$.fragment,h),m=ce(h),L&&L.l(h),y=ce(h),x&&x.l(h),O=ce(h),E&&E.l(h),h.forEach(D),G.forEach(D),N=ce(b),k=re(b,"DIV",{class:!0});var I=Z(k);ke(C.$$.fragment,I),I.forEach(D),this.h()},h(){A(t,"class","text touch-none pointer-events-none"),A(d,"class","z-10 relative"),A(a,"class","fixed top-0 left-0 z-0 w-screen h-screen"),A(k,"class","fixed bottom-0 left-0 right-0 z-10 my-2")},m(b,H){ue(b,t,H),z(t,n),z(t,r),z(t,i),ue(b,o,H),g&&g.m(b,H),ue(b,s,H),ue(b,a,H),xe(l,a,null),z(a,u),z(a,d),xe(p,d,null),z(d,m),L&&L.m(d,null),z(d,y),x&&x.m(d,null),z(d,O),E&&E.m(d,null),ue(b,N,H),ue(b,k,H),xe(C,k,null),X=!0},p(b,[H]){var I;(!X||H&4)&&kt(n,b[2]),(!X||H&8)&&kt(i,b[3]),b[4]?g?(g.p(b,H),H&16&&q(g,1)):(g=Rr(b),g.c(),q(g,1),g.m(s.parentNode,s)):g&&(Je(),J(g,1,1,()=>{g=null}),We());const G={};!c&&H&2&&(c=!0,G.value=b[1],_o(()=>c=!1)),l.$set(G);const h={};H&32&&(h.transform=b[5]),p.$set(h),b[0]&&b[6]?L?(L.p(b,H),H&65&&q(L,1)):(L=Nr(b),L.c(),q(L,1),L.m(d,y)):L&&(Je(),J(L,1,1,()=>{L=null}),We()),(I=b[7])!=null&&I.cursor?x||(x=Mr(),x.c(),x.m(d,O)):x&&(x.d(1),x=null),b[8]?E?(E.p(b,H),H&256&&q(E,1)):(E=Ur(b),E.c(),q(E,1),E.m(d,null)):E&&(Je(),J(E,1,1,()=>{E=null}),We())},i(b){X||(q(g),q(l.$$.fragment,b),q(p.$$.fragment,b),q(L),q(E),q(C.$$.fragment,b),X=!0)},o(b){J(g),J(l.$$.fragment,b),J(p.$$.fragment,b),J(L),J(E),J(C.$$.fragment,b),X=!1},d(b){b&&D(t),b&&D(o),g&&g.d(b),b&&D(s),b&&D(a),Oe(l),Oe(p),L&&L.d(),x&&x.d(),E&&E.d(),b&&D(N),b&&D(k),Oe(C)}}}function $u({position:e}){return`${e.x}_${e.y}`}function zu(e){console.log("onPaintMode",e.detail)}function Fu(e,t,n){let r,i,o,s,a,l,c,u,d;pe(e,ye,x=>n(2,r=x)),pe(e,ut,x=>n(3,i=x)),pe(e,Cn,x=>n(16,s=x)),pe(e,Et,x=>n(4,a=x)),pe(e,Un,x=>n(5,l=x)),pe(e,Mn,x=>n(6,c=x));const p=Zn();pe(e,p,x=>n(7,u=x));const m=ku();pe(e,m,x=>n(8,d=x));const y={cursor:null,isPrompting:!1,isLoading:!1,isMoving:!0,currentPrompt:""};p.update(y);const O=Yi("promptImgStorage");pe(e,O,x=>n(14,o=x));function N(x){return x?Object.values(x).sort((U,b)=>U.date-b.date):[]}let k=[],C;async function X(x){console.log("onClose",x.detail),ae(Et,a=!1,a)}async function g(x){const E=x.detail.prompt,U=await B(E);ae(Et,a=!1,a),console.log("prompt",E,U)}function K(x){const E=document.createElement("canvas");E.width=512,E.height=512;const U=E.getContext("2d");return U.save(),U.clearRect(0,0,512,512),U.globalCompositeOperation="source-over",U.drawImage(C,x.x,x.y,512,512,0,0,512,512),U.restore(),E.toDataURL("image/png")}async function B(x){if(!x||i==!0)return;ae(ye,r="Pending",r),ae(ut,i=!0,i),p.update({currentPrompt:x,isPrompting:!0,cursor:s});const E=crypto.randomUUID(),U={fn_index:0,data:[K(s),x,.75,7.5,30,"patchmatch"],session_hash:E};console.log("payload",U);const b=new WebSocket(bu);b.onclose=H=>{H.wasClean||(ae(ye,r="Error",r),ae(ut,i=!1,i))},b.onmessage=async function(H){try{const G=JSON.parse(H.data);switch(ae(ye,r="",r),G.msg){case"send_data":ae(ye,r="Sending Data",r),b.send(JSON.stringify(U));break;case"queue_full":ae(ye,r="Queue full",r),b.close(),ae(ut,i=!1,i);return;case"estimation":const{rank:h,queue_size:I}=G;ae(ye,r=`On queue ${h}/${I}`,r);break;case"process_generating":ae(ye,r=G.success?"Generating":"Error",r);break;case"process_completed":try{const v=G.output.data[0];if(G.output.data[1])throw new Error("Potential NFSW content, please try again");const $=await Ol(v),F=await Il($,x),V={prompt:x,imgURL:F,position:s,date:new Date().getTime(),id:Uu()},j=$u(V);o.set(j,V),console.log(F),ae(ye,r=G.success?"Complete":"Error",r)}catch(v){const P=v;ae(ye,r=P==null?void 0:P.message,r)}b.close(),ae(ut,i=!1,i);return;case"process_starts":ae(ye,r="Processing",r);break}}catch(G){console.error(G),ae(ut,i=!1,i),ae(ye,r="Error",r)}}}function L(x){C=x,n(1,C)}return e.$$.update=()=>{e.$$.dirty&16384&&n(0,k=N(o==null?void 0:o.toObject()))},[k,C,r,i,a,l,c,u,d,p,m,O,X,g,o,L]}class Ku extends Ae{constructor(t){super(),Le(this,t,Fu,Du,Re,{})}}function Fr(e){let t,n;return t=new Ss({props:{client:e[2],$$slots:{default:[Vu]},$$scope:{ctx:e}}}),{c(){Ee(t.$$.fragment)},l(r){ke(t.$$.fragment,r)},m(r,i){xe(t,r,i),n=!0},p(r,i){const o={};i&4&&(o.client=r[2]),i&9&&(o.$$scope={dirty:i,ctx:r}),t.$set(o)},i(r){n||(q(t.$$.fragment,r),n=!0)},o(r){J(t.$$.fragment,r),n=!1},d(r){Oe(t,r)}}}function Hu(e){let t,n;return t=new Ku({}),{c(){Ee(t.$$.fragment)},l(r){ke(t.$$.fragment,r)},m(r,i){xe(t,r,i),n=!0},i(r){n||(q(t.$$.fragment,r),n=!0)},o(r){J(t.$$.fragment,r),n=!1},d(r){Oe(t,r)}}}function Vu(e){let t,n;return t=new As({props:{id:e[0],$$slots:{default:[Hu]},$$scope:{ctx:e}}}),{c(){Ee(t.$$.fragment)},l(r){ke(t.$$.fragment,r)},m(r,i){xe(t,r,i),n=!0},p(r,i){const o={};i&1&&(o.id=r[0]),i&8&&(o.$$scope={dirty:i,ctx:r}),t.$set(o)},i(r){n||(q(t.$$.fragment,r),n=!0)},o(r){J(t.$$.fragment,r),n=!1},d(r){Oe(t,r)}}}function Bu(e){let t,n,r=e[1]&&Fr(e);return{c(){r&&r.c(),t=De()},l(i){r&&r.l(i),t=De()},m(i,o){r&&r.m(i,o),ue(i,t,o),n=!0},p(i,[o]){i[1]?r?(r.p(i,o),o&2&&q(r,1)):(r=Fr(i),r.c(),q(r,1),r.m(t.parentNode,t)):r&&(Je(),J(r,1,1,()=>{r=null}),We())},i(i){n||(q(r),n=!0)},o(i){J(r),n=!1},d(i){r&&r.d(i),i&&D(t)}}}const ju=!0;function Xu(e,t,n){let r,i=!1,o;return rn(()=>{n(0,r="multiplayer-SD"),n(2,o=xs({publicApiKey:"pk_test_JlUZGH3kQmhmZQiqU2l8eIi5"})),n(1,i=!0)}),[r,i,o]}class Gu extends Ae{constructor(t){super(),Le(this,t,Xu,Bu,Re,{})}}export{Gu as default,ju as prerender}; | |