diff --git "a/static/_app/immutable/components/pages/_page.svelte-500d7394.js" "b/static/_app/immutable/components/pages/_page.svelte-500d7394.js" new file mode 100644--- /dev/null +++ "b/static/_app/immutable/components/pages/_page.svelte-500d7394.js" @@ -0,0 +1,7 @@ +import{S as Se,i as Pe,s as Te,B as Nn,C as Cn,D as Mn,E as Un,f as X,t as Z,H as Nr,I as Cr,J as en,k as oe,K as Bt,a as _e,l as se,m as te,L as Xt,h as z,c as ge,n as U,b as ie,F as q,A as Ee,q as Ze,r as Qe,u as Dn,v as ke,w as xe,x as Oe,y as Ie,G as Ve,o as Pt,M as Et,N as me,O as vt,P as Mr,Q as er,R as to,T as no,U as ro,V as io,W as oo,g as ct,d as ft,X as so,e as Xe,Y as ao,Z as lo}from"../../chunks/index-6327f5df.js";import{w as mt}from"../../chunks/index-55ea88a7.js";var uo=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Ae={},N={};Object.defineProperty(N,"__esModule",{value:!0});var co=Object.defineProperty,fo=Object.defineProperties,ho=Object.getOwnPropertyDescriptors,Yt=Object.getOwnPropertySymbols,Ur=Object.prototype.hasOwnProperty,Dr=Object.prototype.propertyIsEnumerable,tr=(e,t,n)=>t in e?co(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Tt=(e,t)=>{for(var n in t||(t={}))Ur.call(t,n)&&tr(e,n,t[n]);if(Yt)for(var n of Yt(t))Dr.call(t,n)&&tr(e,n,t[n]);return e},tn=(e,t)=>fo(e,ho(t)),po=(e,t)=>{var n={};for(var r in e)Ur.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&Yt)for(var r of Yt(e))t.indexOf(r)<0&&Dr.call(e,r)&&(n[r]=e[r]);return n},mo=(e,t,n)=>new Promise((r,i)=>{var o=l=>{try{a(n.next(l))}catch(u){i(u)}},s=l=>{try{a(n.throw(l))}catch(u){i(u)}},a=l=>l.done?r(l.value):Promise.resolve(l.value).then(o,s);a((n=n.apply(e,t)).next())});function _o(e,t=e){}function go(e,t,n=t){}function vo(e){}function yo(e,t){}function Be(e,t){throw new Error(t)}function H(e,t="Expected value to be non-nullable"){return e}var $r=(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))($r||{}),zr=(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))(zr||{}),Kr=(e=>(e[e.OBJECT=0]="OBJECT",e[e.LIST=1]="LIST",e[e.MAP=2]="MAP",e[e.REGISTER=3]="REGISTER",e))(Kr||{});function wo(e){return e.type===0&&!Fr(e)}function Fr(e){return e.parentId!==void 0&&e.parentKey!==void 0}var Hr=(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))(Hr||{});function bo(e){return e==="my-presence"||e==="others"||e==="event"||e==="error"||e==="connection"||e==="history"}var Vr=(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))(Vr||{}),nt=32,$n=126;function Ne(e,t){return e!==void 0&&t!==void 0?qt(Br(ht(e),ht(t))):e!==void 0?ko(e):t!==void 0?Eo(t):qt([nt+1])}function Eo(e){const t=[],n=ht(e);for(let r=0;ro)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(...Br(e.slice(n+1),[]));break}const s=o+i>>1;r.push(s);break}return r}function ht(e){const t=[];for(let n=0;nv.parentId===this._id);d&&this._propToLastUpdate.set(l,H(d.opId)),t.push(...p)}else i[l]=u,this._propToLastUpdate.set(l,r);this._map.set(l,u),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}},zn=e=>e;function xo(e){return e.filter(t=>t!=null)}function Oo(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 at(Yr(e))}function Yr(e){switch(e.type){case 8:return e.data;case 4:return new je(e.data);case 7:return new qe;case 2:return new Ge;default:return Be(e,"Unknown creation Op")}}function qr(e,t){return e===t?!0:e.parent.type==="HasParent"?qr(e.parent.node,t):!1}function jr([e,t],n,r){switch(t.type){case 0:return je._deserialize([e,t],n,r);case 1:return Ge._deserialize([e,t],n,r);case 2:return qe._deserialize([e,t],n,r);case 3:return Fe._deserialize([e,t],n,r);default:throw new Error("Unexpected CRDT type")}}function Io([e,t],n,r){switch(t.type){case 0:return je._deserialize([e,t],n,r);case 1:return Ge._deserialize([e,t],n,r);case 2:return qe._deserialize([e,t],n,r);case 3:return t.data;default:throw new Error("Unexpected CRDT type")}}function zt(e){return Gr(e)||So(e)||Jr(e)}function ae(e){return zt(e)||Po(e)}function Gr(e){return e instanceof Ge}function So(e){return e instanceof qe}function Jr(e){return e instanceof je}function Po(e){return e instanceof Fe}function et(e){return e instanceof Fe?e.data:e instanceof Ge||e instanceof qe||e instanceof je?e:Be(e,"Unknown AbstractCrdt")}function at(e){return e instanceof je||e instanceof qe||e instanceof Ge?e:new Fe(e)}function To(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:H(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 Ao(e,t){const n=e.updates;for(const[r,i]of Zr(t.updates))n[r]=i;return tn(Tt({},t),{updates:n})}function Lo(e,t){const n=e.updates;for(const[r,i]of Zr(t.updates))n[r]=i;return tn(Tt({},t),{updates:n})}function Ro(e,t){const n=e.updates;return tn(Tt({},t),{updates:n.concat(t.updates)})}function No(e,t){return e?e.type==="LiveObject"&&t.type==="LiveObject"?Ao(e,t):e.type==="LiveMap"&&t.type==="LiveMap"?Lo(e,t):e.type==="LiveList"&&t.type==="LiveList"?Ro(e,t):t:t}function or(e){const t=typeof e;return e==null||t==="string"||t==="boolean"||t==="number"||Array.isArray(e)||Kn(e)}function Kn(e){return e!==null&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"}function Wr(e,t=""){if(!or)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(!or(r))return{path:i,value:r};if(typeof r=="object"){const o=Wr(r,i);if(o)return o}}return!1}function Co(e){const t={};for(const[n,r]of e)t[n]=r;return t}function Zr(e){return Object.entries(e)}function Qr(e){try{return JSON.parse(e)}catch{return}}function ei(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 Mo(e,t){return Xr(e._getParentKeyOrThrow(),t._getParentKeyOrThrow())}var Ge=class extends nn{constructor(e=[]){super(),this._items=[],this._implicitlyDeletedItems=new WeakSet,this._unacknowledgedSets=new Map;let t;for(let n=0;nt._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:J(this,[ot(o,r)]),reverse:[]};{this._implicitlyDeletedItems.add(s),this._items[o]=r;const a=[ot(o,r)],l=this._detachItemAssociatedToSetOperation(e.deletedId);return l&&a.push(l),{modified:J(this,a),reverse:[]}}}else{const s=[],a=this._detachItemAssociatedToSetOperation(e.deletedId);return a&&s.push(a),this._insertAndSort(r),s.push(Re(this._indexOfPosition(n),r)),{reverse:[],modified:J(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:J(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?J(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(Je(s,a,o)),{modified:t.length>0?J(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:J(this,[i===-1?Re(a,s):ot(a,s),...t]),reverse:[]}}else{i!==-1&&this._items.splice(i,1);const{newItem:a,newIndex:l}=this._createAttachItemAndSort(e,e.parentKey);return{modified:J(this,[i===-1?Re(l,a):ot(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:J(this,[Re(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:J(this,[Je(i,o,t)]),reverse:[]}}}else{const i=H(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:J(this,[Re(o,i)]),reverse:[]}}else{r!==-1&&this._shiftItemPosition(r,n);const{newItem:o,newIndex:s}=this._createAttachItemAndSort(e,n);return{modified:J(this,[Re(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,H(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,u=this._items[o+1]?this._items[o+1]._getParentKeyOrThrow():void 0;s=Ne(l,u),i._setParentLink(this,s)}this._insertAndSort(i);const a=this._indexOfPosition(s);return{modified:J(this,[Re(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,H(e.opId));const o=this._indexOfPosition(r);i._attach(n,H(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(H(this._id),r,this._pool);pn(l,e.id);const u=[ot(o,i)],c=this._detachItemAssociatedToSetOperation(e.deletedId);return c&&u.push(c),{modified:J(this,u),reverse:l}}else{this._insertAndSort(i),this._detachItemAssociatedToSetOperation(e.deletedId);const a=this._indexOfPosition(s);return{reverse:[{type:5,id:n}],modified:J(this,[Re(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=H(e._parentKey),n=e._toOps(H(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:J(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:J(this,[Re(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:J(this,[Je(o,s,t)]),reverse:[]}}else{this._items[i]._setParentLink(this,Ne(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:J(this,[Je(o,s,t)]),reverse:[]}}}_applySetChildKeyAck(e,t){var n,r;const i=H(t._parentKey);if(this._implicitlyDeletedItems.has(t)){const o=this._indexOfPosition(e);return this._implicitlyDeletedItems.delete(t),o!==-1&&this._items[o]._setParentLink(this,Ne(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,Ne(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:J(this,[Je(o,a,t)]),reverse:[]}}}_applySetChildKeyUndoRedo(e,t){var n;const r=H(t._parentKey),i=this._items.indexOf(t),o=this._indexOfPosition(e);o!==-1&&this._items[o]._setParentLink(this,Ne(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:J(this,[Je(i,s,t)]),reverse:[{type:1,id:H(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:H(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=Ne(n,r),o=at(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,J(this,[Re(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=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(H(this._id),J(this,[Rt(e)])),this._pool.dispatch([{id:n,opId:this._pool.generateOpId(),type:5}],t._toOps(H(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(H(this._id),i._getParentKeyOrThrow())),n.push(Rt(0)))}this._items=[],this.invalidate();const r=new Map;r.set(H(this._id),J(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=at(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,J(this,[ot(e,o)]));const l=o._toOps(this._id,r,this._pool);pn(l,i),this._unacknowledgedSets.set(r,H(l[0].opId));const u=n._toOps(this._id,r,void 0);pn(u,s),this._pool.dispatch(l,u,a)}}toArray(){return this._items.map(e=>et(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 et(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(et(t),n))}some(e){return this.toArray().some(e)}[Symbol.iterator](){return new Uo(this._items)}_createAttachItemAndSort(e,t){const n=yt(e);n._attach(e.id,H(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=Ne(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())}},Uo=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:et(e.value)}}};function J(e,t){return{node:e,type:"LiveList",updates:t}}function ot(e,t){return{index:e,type:"set",item:t instanceof Fe?t.data:t}}function Rt(e){return{index:e,type:"delete"}}function Re(e,t){return{index:e,type:"insert",item:t instanceof Fe?t.data:t}}function Je(e,t,n){return{index:t,type:"move",previousIndex:e,item:n instanceof Fe?n.data:n}}function pn(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 Do=["websocket:presence","websocket:storage","room:read","room:write","rooms:read","rooms:write"];function $o(e){if(!Kn(e))return!1;const{iat:t,exp:n}=e;return typeof t=="number"&&typeof n=="number"}function zo(e){const t=Date.now()/1e3;return t>e.exp-300||ttypeof t=="string")}function ni(e){return typeof e.appId=="string"&&e.roomId===void 0&&ti(e.scopes)}function Fn(e){return typeof e.appId=="string"&&typeof e.roomId=="string"&&typeof e.actor=="number"&&(e.id===void 0||typeof e.id=="string")&&ti(e.scopes)&&(e.maxConnectionsPerRoom===void 0||typeof e.maxConnectionsPerRoom=="number")}function Fo(e){return ni(e)||Fn(e)}function Ho(e){const t=e.split(".");if(t.length!==3)throw new Error("Authentication error: invalid JWT token");const n=Qr(ei(t[1]));if(n&&$o(n))return n;throw new Error("Authentication error: missing JWT metadata")}function Vo(e){const t=Ho(e);if(t&&Fn(t))return po(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 Bo(e){return Object.defineProperty(e,"count",{value:e.length,enumerable:!1}),Object.defineProperty(e,"toArray",{value:()=>e,enumerable:!1}),zn(e)}function ri(e){return e===null||typeof e=="string"||typeof e=="number"||typeof e=="boolean"}function ii(e){return Array.isArray(e)}function Xo(e){return!ri(e)&&!ii(e)}N.__spreadValues=Tt;N.__spreadProps=tn;N.__async=mo;N.deprecate=_o;N.deprecateIf=go;N.throwUsageError=vo;N.errorIf=yo;N.assertNever=Be;N.nn=H;N.ClientMsgCode=$r;N.OpCode=zr;N.CrdtType=Kr;N.isRootCrdt=wo;N.isChildCrdt=Fr;N.ServerMsgCode=Hr;N.isRoomEventName=bo;N.WebsocketCloseCodes=Vr;N.LiveRegister=Fe;N.makePosition=Ne;N.comparePosition=Xr;N.LiveList=Ge;N.LiveMap=qe;N.LiveObject=je;N.freeze=zn;N.compact=xo;N.compactObject=Oo;N.isSameNodeOrChildOf=qr;N.isLiveNode=ae;N.isLiveList=Gr;N.isLiveObject=Jr;N.getTreesDiffOperations=To;N.mergeStorageUpdates=No;N.isPlainObject=Kn;N.findNonSerializableValue=Wr;N.tryParseJson=Qr;N.b64decode=ei;N.isTokenExpired=zo;N.isScope=Ko;N.isAppOnlyAuthToken=ni;N.isRoomAuthToken=Fn;N.isAuthToken=Fo;N.parseRoomAuthToken=Vo;N.asArrayWithLegacyMethods=Bo;N.isJsonScalar=ri;N.isJsonArray=ii;N.isJsonObject=Xo;Object.defineProperty(Ae,"__esModule",{value:!0});var L=N;function De(){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 oi(e,t){let n=!1;const r=L.__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 rn=class{constructor(){this._ev=De()}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()}},Yo=class extends rn{constructor(e){super(),this._me=L.freeze.call(void 0,L.compactObject.call(void 0,e))}_toImmutable(){return this._me}patch(e){const t=this._me,n=oi(t,e);t!==n&&(this._me=L.freeze.call(void 0,n),this.invalidate())}};function qo(e,t){return L.freeze.call(void 0,L.compactObject.call(void 0,L.__spreadProps.call(void 0,L.__spreadValues.call(void 0,{},e),{presence:t})))}var jo=class extends rn{constructor(){super(),this._connections={},this._presences={},this._users={}}_toImmutable(){const e=L.compact.call(void 0,Object.keys(this._presences).map(t=>this.getUser(Number(t))));return L.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 qo(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]=L.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]=L.freeze.call(void 0,L.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=oi(n,t);n!==r&&(this._presences[e]=L.freeze.call(void 0,r),this._invalidateUser(e))}},Go=class extends rn{constructor(e){super(),this._value=L.freeze.call(void 0,L.compactObject.call(void 0,e))}_toImmutable(){return this._value}set(e){this._value=L.freeze.call(void 0,e),this.invalidate()}},Jo=class extends rn{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)}},mn=[250,500,1e3,2e3,4e3,8e3,1e4],_n=[2e3,3e4,6e4,3e5],Wo=3e4,Zo=2e3;function Qo(e){let t=0;return()=>`${e}:${t++}`}function gn(e){return e.state==="open"||e.state==="connecting"}function es(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:()=>`${S()}:${e.clock++}`,generateOpId:()=>`${S()}:${e.opClock++}`,dispatch(f,_,y){const E=e.activeBatch;E?(E.ops.push(...f),y.forEach((A,ee)=>{E.updates.storageUpdates.set(ee,L.mergeStorageUpdates.call(void 0,E.updates.storageUpdates.get(ee),A))}),E.reverseOps.push(..._)):o(()=>{x(_,i),e.redoStack=[],Jn(f),w({storageUpdates:y},i)})}},a={customEvent:De(),me:De(),others:De(),error:De(),connection:De(),storage:De(),history:De(),storageDidLoad:De()},l=n||{authenticate(f,_){const y=e.token,E=y!==null&&L.parseRoomAuthToken.call(void 0,y);if(E&&!L.isTokenExpired.call(void 0,E)){const A=_(y);V(E,A)}else return f(t.roomId).then(({token:A})=>{if(e.connection.current.state!=="authenticating")return;const ee=L.parseRoomAuthToken.call(void 0,A),G=_(A);V(ee,G),e.token=A}).catch(A=>Q())},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(ye,f)},startHeartbeatInterval(){return setInterval(ue,Wo)},schedulePongTimeout(){return setTimeout(ve,Zo)},scheduleReconnect(f){return setTimeout(R,f)}},u=new Jo([e.connection,e.me],(f,_)=>gn(f)?{connectionId:f.id,id:f.userId,info:f.userInfo,presence:_}:null);function c(f,_){if(f.items.length===0)throw new Error("Internal error: cannot load storage without items");e.root?d(f.items,_):e.root=v(f.items);for(const y in e.initialStorage)e.root.get(y)===void 0&&e.root.set(y,e.initialStorage[y])}function p(f){const _=new Map;let y=null;for(const[E,A]of f)if(L.isRootCrdt.call(void 0,A))y=[E,A];else{const ee=[E,A],G=_.get(A.parentId);G!==void 0?G.push(ee):_.set(A.parentId,[ee])}if(y===null)throw new Error("Root can't be null");return[y,_]}function d(f,_){if(!e.root)return;const y=new Map;e.nodes.forEach((ee,G)=>{y.set(G,ee._serialize())});const E=L.getTreesDiffOperations.call(void 0,y,new Map(f)),A=F(E,!1);w(A.updates,_)}function v(f){const[_,y]=p(f);return L.LiveObject._deserialize(_,y,s)}function O(f,_){e.undoStack.length>=50&&e.undoStack.shift(),e.undoStack.push(f),P(_)}function x(f,_){e.pausedHistory!==null?e.pausedHistory.unshift(...f):O(f,_)}function w({storageUpdates:f=new Map,presence:_=!1,others:y=[]},E){E(()=>{if(y.length>0){const A=e.others.current;for(const ee of y)a.others.notify({others:A,event:ee})}if(_&&a.me.notify(e.me.current),f.size>0){const A=Array.from(f.values());a.storage.notify(A)}})}function S(){const f=e.connection.current;if(gn(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 F(f,_){const y={reverse:[],updates:{storageUpdates:new Map,presence:!1}},E=new Set;for(const A of f)if(A.type==="presence"){const ee={type:"presence",data:{}};for(const G in A.data)ee.data[G]=e.me.current[G];if(e.me.patch(A.data),e.buffer.me===null)e.buffer.me={type:"partial",data:A.data};else for(const G in A.data)e.buffer.me.data[G]=A.data[G];y.reverse.unshift(ee),y.updates.presence=!0}else{let ee;A.opId||(A.opId=s.generateOpId()),_?ee=0:ee=e.offlineOperations.delete(L.nn.call(void 0,A.opId))?2:1;const G=D(A,ee);if(G.modified){const dn=G.modified.node.parent.type==="HasParent"?L.nn.call(void 0,G.modified.node.parent.node._id,"Expected parent node to have an ID"):void 0;(!dn||!E.has(dn))&&(y.updates.storageUpdates.set(L.nn.call(void 0,G.modified.node._id),L.mergeStorageUpdates.call(void 0,y.updates.storageUpdates.get(L.nn.call(void 0,G.modified.node._id)),G.modified)),y.reverse.unshift(...G.reverse)),(A.type===2||A.type===7||A.type===4)&&E.add(L.nn.call(void 0,G.modified.node._id))}}return y}function D(f,_){switch(f.type){case 6:case 3:case 5:{const y=e.nodes.get(f.id);return y===void 0?{modified:!1}:y._apply(f,_===0)}case 1:{const y=e.nodes.get(f.id);return y===void 0?{modified:!1}:y.parent.type==="HasParent"&&L.isLiveList.call(void 0,y.parent.node)?y.parent.node._setChildKey(f.parentKey,y,_):{modified:!1}}case 4:case 2:case 7:case 8:{if(f.parentId===void 0)return{modified:!1};const y=e.nodes.get(f.parentId);return y===void 0?{modified:!1}:y._attachChild(f,_)}}}function m(f,_){return a.storage.subscribe(y=>{const E=y.filter(A=>L.isSameNodeOrChildOf.call(void 0,A.node,f));E.length>0&&_(E)})}function T(f,_){return a.storage.subscribe(y=>{for(const E of y)E.node._id===f._id&&_(E.node)})}function k(f,_,y){if(typeof f=="string"&&L.isRoomEventName.call(void 0,f)){if(typeof _!="function")throw new Error("Second argument must be a callback function");const E=_;switch(f){case"event":return a.customEvent.subscribe(E);case"my-presence":return a.me.subscribe(E);case"others":{const A=E;return a.others.subscribe(({others:ee,event:G})=>A(ee,G))}case"error":return a.error.subscribe(E);case"connection":return a.connection.subscribe(E);case"storage":return a.storage.subscribe(E);case"history":return a.history.subscribe(E);default:return L.assertNever.call(void 0,f,"Unknown event")}}if(_===void 0||typeof f=="function")if(typeof f=="function"){const E=f;return a.storage.subscribe(E)}else throw new Error("Please specify a listener callback");if(L.isLiveNode.call(void 0,f)){const E=f;return y!=null&&y.isDeep?m(E,_):T(E,_)}throw new Error(`"${f}" is not a valid event name`)}function b(){return e.connection.current.state}function R(){var f,_,y,E;if(e.connection.current.state!=="closed"&&e.connection.current.state!=="unavailable")return null;const A=os(t.authentication,(_=(f=t.polyfills)==null?void 0:f.fetch)!=null?_:t.fetchPolyfill),ee=is(t.liveblocksServer,(E=(y=t.polyfills)==null?void 0:y.WebSocket)!=null?E:t.WebSocketPolyfill);ne({state:"authenticating"},o),l.authenticate(A,ee)}function K(f,_){const y={};e.buffer.me===null&&(e.buffer.me={type:"partial",data:{}});for(const E in f){const A=f[E];A!==void 0&&(e.buffer.me.data[E]=A,y[E]=e.me.current[E])}e.me.patch(f),e.activeBatch?(_!=null&&_.addToHistory&&e.activeBatch.reverseOps.push({type:"presence",data:y}),e.activeBatch.updates.presence=!0):(ye(),o(()=>{_!=null&&_.addToHistory&&x([{type:"presence",data:y}],i),w({presence:!0},i)}))}function V(f,_){_.addEventListener("message",B),_.addEventListener("open",he),_.addEventListener("close",Y),_.addEventListener("error",le),ne({state:"connecting",id:f.actor,userInfo:f.info,userId:f.id},o),e.idFactory=Qo(f.actor),e.socket=_}function Q(f){e.token=null,ne({state:"unavailable"},o),e.numberOfRetry++,e.timeoutHandles.reconnect=l.scheduleReconnect(re())}function j(f){f==="visible"&&e.connection.current.state==="open"&&ue()}function fe(f){if(f.targetActor!==void 0){const y=e.others.getUser(f.actor);e.others.setOther(f.actor,f.data);const E=e.others.getUser(f.actor);if(y===void 0&&E!==void 0)return{type:"enter",user:E}}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 y=f.users[_],E=Number(_);e.others.setConnection(E,y.id,y.info)}return{type:"reset"}}function g(){e.connection.current.state==="unavailable"&&it()}function P(f){f(()=>{a.history.notify({canUndo:Zn(),canRedo:Qn()})})}function C(f){e.others.setConnection(f.actor,f.id,f.info),e.buffer.messages.push({type:100,data:e.me.current,targetActor:f.actor}),ye();const _=e.others.getUser(f.actor);return _?{type:"enter",user:_}:void 0}function M(f){return L.isJsonObject.call(void 0,f)?f:null}function $(f){const _=L.tryParseJson.call(void 0,f);return _===void 0?null:L.isJsonArray.call(void 0,_)?L.compact.call(void 0,_.map(y=>M(y))):L.compact.call(void 0,[M(_)])}function B(f){if(f.data==="pong"){clearTimeout(e.timeoutHandles.pongTimeout);return}const _=$(f.data);if(_===null||_.length===0)return;const y={storageUpdates:new Map,others:[]};o(()=>{for(const E of _)switch(E.type){case 101:{const A=C(E);A&&y.others.push(A);break}case 100:{const A=fe(E);A&&y.others.push(A);break}case 103:{a.customEvent.notify({connectionId:E.actor,event:E.event});break}case 102:{const A=h(E);A&&y.others.push(A);break}case 104:{y.others.push(I(E));break}case 200:{const A=new Map(e.offlineOperations);c(E,i),Ki(A,i),hn==null||hn(),a.storageDidLoad.notify();break}case 201:{F(E.ops,!1).updates.storageUpdates.forEach((ee,G)=>{y.storageUpdates.set(G,L.mergeStorageUpdates.call(void 0,y.storageUpdates.get(G),ee))});break}}w(y,i)})}function Y(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(w({others:[{type:"reset"}]},i),f.code>=4e3&&f.code<=4100){ne({state:"failed"},i);const _=new rs(f.reason,f.code);a.error.notify(_);const y=re(!0);e.numberOfRetry++,ne({state:"unavailable"},i),e.timeoutHandles.reconnect=l.scheduleReconnect(y)}else if(f.code===4999)ne({state:"closed"},i);else{const _=re();e.numberOfRetry++,ne({state:"unavailable"},i),e.timeoutHandles.reconnect=l.scheduleReconnect(_)}})}function ne(f,_){e.connection.set(f),_(()=>{a.connection.notify(f.state)})}function re(f=!1){return f?_n[e.numberOfRetry<_n.length?e.numberOfRetry:_n.length-1]:mn[e.numberOfRetry0&&f.forEach(E=>{e.offlineOperations.set(L.nn.call(void 0,E.opId),E)}),e.socket===null||e.socket.readyState!==e.socket.OPEN){e.buffer.storageOperations=[];return}const _=Date.now();if(_-e.lastFlushTime>t.throttleDelay){const E=Fi(e);if(E.length===0)return;l.send(E),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 Fi(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 y of f.buffer.messages)_.push(y);return f.buffer.storageOperations.length>0&&_.push({type:201,ops:f.buffer.storageOperations}),_}function Hi(){e.socket&&(e.socket.removeEventListener("open",he),e.socket.removeEventListener("message",B),e.socket.removeEventListener("close",Y),e.socket.removeEventListener("error",le),e.socket.close(),e.socket=null),o(()=>{ne({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(),w({others:[{type:"reset"}]},i),Object.values(a).forEach(f=>f.clear())})}function Vi(){return e.me.current}function Bi(){return e.others.current}function Xi(f,_={shouldQueueEventIfNotReady:!1}){e.socket===null&&!_.shouldQueueEventIfNotReady||(e.buffer.messages.push({type:103,event:f}),ye())}function Jn(f){e.buffer.storageOperations.push(...f),ye()}let fn=null,hn=null;function Wn(){return fn===null&&(e.buffer.messages.push({type:200}),ye(),fn=new Promise(f=>hn=f)),fn}function Yi(){const f=e.root;return f!==void 0?f:(Wn(),null)}function qi(){return L.__async.call(void 0,this,null,function*(){return e.root?Promise.resolve({root:e.root}):(yield Wn(),{root:L.nn.call(void 0,e.root)})})}function ji(){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 _=F(f,!0);o(()=>{w(_.updates,i),e.redoStack.push(_.reverse),P(i)});for(const y of f)y.type!=="presence"&&e.buffer.storageOperations.push(y);ye()}function Zn(){return e.undoStack.length>0}function Gi(){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 _=F(f,!0);o(()=>{w(_.updates,i),e.undoStack.push(_.reverse),P(i)});for(const y of f)y.type!=="presence"&&e.buffer.storageOperations.push(y);ye()}function Qn(){return e.redoStack.length>0}function Ji(f){if(e.activeBatch)return f();let _;return o(()=>{e.activeBatch={ops:[],updates:{storageUpdates:new Map,presence:!1,others:[]},reverseOps:[]};try{_=f()}finally{const y=e.activeBatch;e.activeBatch=null,y.reverseOps.length>0&&x(y.reverseOps,i),y.ops.length>0&&(e.redoStack=[]),y.ops.length>0&&Jn(y.ops),w(y.updates,i),ye()}}),_}function Wi(){e.pausedHistory=[]}function Zi(){const f=e.pausedHistory;e.pausedHistory=null,f!==null&&f.length>0&&O(f,o)}function Qi(){e.socket&&(e.socket=null)}function eo(f){Y(f)}return{onClose:Y,onMessage:B,authenticationSuccess:V,heartbeat:ue,onNavigatorOnline:g,simulateSocketClose:Qi,simulateSendCloseEvent:eo,onVisibilityChange:j,getUndoStack:()=>e.undoStack,getItemsCount:()=>e.nodes.size,connect:R,disconnect:Hi,subscribe:k,updatePresence:K,broadcastEvent:Xi,batch:Ji,undo:ji,redo:Gi,canUndo:Zn,canRedo:Qn,pauseHistory:Wi,resumeHistory:Zi,getStorage:qi,getStorageSnapshot:Yi,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:b,isSelfAware:()=>gn(e.connection.current),getSelf:()=>u.current,getPresence:Vi,getOthers:Bi}}function ts(e,t){const n=new jo,r=new Go({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 Yo(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 ns(e,t){const{initialPresence:n,initialStorage:r}=e,i=ts(typeof n=="function"?n(t.roomId):n,typeof r=="function"?r(t.roomId):r),o=es(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 rs=class extends Error{constructor(e,t){super(e),this.code=t}};function is(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 os(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=>sr(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=>sr(t||fetch,e.url,{room:n})}if(e.type==="custom")return n=>L.__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 sr(e,t,n){return L.__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 vn(`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 vn(`Expected a JSON response when doing a POST request on "${t}". ${s}`)}if(!L.isPlainObject.call(void 0,i)||typeof i.token!="string")throw new vn(`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 vn=class extends Error{constructor(e){super(e)}};function ss(e){const t=e,n=as(e),r=new Map;function i(a){const l=r.get(a);return l?l.room:null}function o(a,l){var u,c;let p=r.get(a);if(p)return p.room;if(L.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."),p=ns({initialPresence:(u=l.initialPresence)!=null?u:{},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:ls(t,a)}),r.set(a,p),!l.DO_NOT_USE_withoutConnecting){if(typeof atob>"u"){if(((c=t.polyfills)==null?void 0:c.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");uo.atob=t.polyfills.atob}p.connect()}return p.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 as(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 ls(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_. For more information: https://liveblocks.io/docs/api-reference/liveblocks-client#createClientPublicKey");return{type:"public",publicApiKey:n,url:us(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 us(e,t){return e.publicAuthorizeEndpoint?e.publicAuthorizeEndpoint.replace("{roomId}",t):`https://api.liveblocks.io/v2/rooms/${encodeURIComponent(t)}/public/authorize`}function cs(e,t){if(e.length!==t.length)return!1;for(let n=0;nObject.prototype.hasOwnProperty.call(t,r)&&Object.is(e[r],t[r]))}function hs(e,t){if(Object.is(e,t))return!0;const n=Array.isArray(e),r=Array.isArray(t);return n||r?!n||!r?!1:cs(e,t):fs(e,t)}Ae.LiveList=L.LiveList;Ae.LiveMap=L.LiveMap;Ae.LiveObject=L.LiveObject;Ae.createClient=ss;Ae.shallow=hs;Ae.LiveList;Ae.LiveMap;const ds=Ae.LiveObject,ps=Ae.createClient;Ae.shallow;const si=Symbol(),ai=Symbol();function ms(e){let t;const n=e[2].default,r=Nn(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)&&Cn(r,n,i,i[1],t?Un(n,i[1],o,null):Mn(i[1]),null)},i(i){t||(X(r,i),t=!0)},o(i){Z(r,i),t=!1},d(i){r&&r.d(i)}}}function _s(e,t,n){let{$$slots:r={},$$scope:i}=t,{client:o}=t;if(!o)throw new Error("LiveblocksProvider requires a client");return Nr(si,o),e.$$set=s=>{"client"in s&&n(0,o=s.client),"$$scope"in s&&n(1,i=s.$$scope)},[o,i,r]}class gs extends Se{constructor(t){super(),Pe(this,t,_s,ms,Te,{client:0})}}function vs(e){let t;const n=e[3].default,r=Nn(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)&&Cn(r,n,i,i[2],t?Un(n,i[2],o,null):Mn(i[2]),null)},i(i){t||(X(r,i),t=!0)},o(i){Z(r,i),t=!1},d(i){r&&r.d(i)}}}function ys(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=Cr(si);if(a){const l=a.enter(o,s());Nr(ai,l),en(()=>{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 ws extends Se{constructor(t){super(),Pe(this,t,ys,vs,Te,{id:0,defaultPresence:1})}}function ar(e){let t,n,r;return{c(){t=oe("div"),n=Ze(e[2]),this.h()},l(i){t=se(i,"DIV",{class:!0,style:!0});var o=te(t);n=Qe(o,e[2]),o.forEach(z),this.h()},h(){U(t,"class","absolute right-0 text-4xl col-start-2 row-start-2"),U(t,"style",r=`text-shadow: 0px 5px 5px ${e[1]}`)},m(i,o){ie(i,t,o),q(t,n)},p(i,o){o&4&&Dn(n,i[2]),o&2&&r!==(r=`text-shadow: 0px 5px 5px ${i[1]}`)&&U(t,"style",r)},d(i){i&&z(t)}}}function bs(e){let t,n,r,i,o,s=e[2]&&ar(e);return{c(){t=oe("div"),n=Bt("svg"),r=Bt("path"),i=_e(),s&&s.c(),this.h()},l(a){t=se(a,"DIV",{class:!0,style:!0});var l=te(t);n=Xt(l,"svg",{class:!0,width:!0,viewBox:!0,fill:!0,xmlns:!0});var u=te(n);r=Xt(u,"path",{d:!0,fill:!0}),te(r).forEach(z),u.forEach(z),i=ge(l),s&&s.l(l),l.forEach(z),this.h()},h(){U(r,"d","M0.91603 0.916054L7.09131 14.9234L8.89871 8.89873L14.9234 7.09133L0.91603 0.916054Z"),U(r,"fill","#FFB800"),U(n,"class","block z-0 col-span-2 row-span-2"),U(n,"width","40"),U(n,"viewBox","0 0 15 15"),U(n,"fill","currentColor"),U(n,"xmlns","http://www.w3.org/2000/svg"),U(t,"class","cursor svelte-14ka0w3"),U(t,"style",o=`transform: translateX(${e[3].x}px) translateY(${e[3].y}px) scale(${e[0].k});`)},m(a,l){ie(a,t,l),q(t,n),q(n,r),q(t,i),s&&s.m(t,null)},p(a,[l]){a[2]?s?s.p(a,l):(s=ar(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});`)&&U(t,"style",o)},i:Ee,o:Ee,d(a){a&&z(t),s&&s.d()}}}function Es(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 ks extends Se{constructor(t){super(),Pe(this,t,Es,bs,Te,{transform:0,color:1,emoji:2,position:4})}}function xs(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=te(t);n=Xt(i,"path",{fill:!0,d:!0}),te(n).forEach(z),i.forEach(z),this.h()},h(){U(n,"fill","currentColor"),U(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"),U(t,"xmlns","http://www.w3.org/2000/svg"),U(t,"fill","none"),U(t,"width","50"),U(t,"viewBox","0 0 24 24"),U(t,"class","animate-spin max-w-[1rem] inline-block")},m(r,i){ie(r,t,i),q(t,n)},p:Ee,i:Ee,o:Ee,d(r){r&&z(t)}}}class Os extends Se{constructor(t){super(),Pe(this,t,null,xs,Te,{})}}function Is(e){let t,n,r,i,o,s,a,l,u,c,p,d,v,O;return i=new Os({}),{c(){t=oe("div"),n=oe("div"),r=_e(),ke(i.$$.fragment),o=_e(),s=oe("h2"),a=Ze("Click to paint"),l=_e(),u=oe("div"),c=Ze(e[2]),p=Ze("}"),this.h()},l(x){t=se(x,"DIV",{class:!0,style:!0});var w=te(t);n=se(w,"DIV",{class:!0}),te(n).forEach(z),r=ge(w),xe(i.$$.fragment,w),o=ge(w),s=se(w,"H2",{class:!0});var S=te(s);a=Qe(S,"Click to paint"),S.forEach(z),l=ge(w),u=se(w,"DIV",{class:!0});var F=te(u);c=Qe(F,e[2]),p=Qe(F,"}"),F.forEach(z),w.forEach(z),this.h()},h(){U(n,"class","small-frame z-0 flex relative svelte-nchges"),U(s,"class","text-lg"),U(u,"class","absolute bottom-0 font-bold"),U(t,"class",d="frame z-0 flex relative "+(e[3]?"":"pointer-events-none touch-none")+" svelte-nchges"),U(t,"style",v=`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(x,w){ie(x,t,w),q(t,n),q(t,r),Oe(i,t,null),q(t,o),q(t,s),q(s,a),q(t,l),q(t,u),q(u,c),q(u,p),O=!0},p(x,[w]){(!O||w&4)&&Dn(c,x[2]),(!O||w&8&&d!==(d="frame z-0 flex relative "+(x[3]?"":"pointer-events-none touch-none")+" svelte-nchges"))&&U(t,"class",d),(!O||w&19&&v!==(v=`transform: translateX(${x[4].x}px) translateY(${x[4].y}px) scale(${x[0].k}); + background-image: linear-gradient(${x[1]}, rgba(255,255,255,0)); + color: ${x[1]}; + `))&&U(t,"style",v)},i(x){O||(X(i.$$.fragment,x),O=!0)},o(x){Z(i.$$.fragment,x),O=!1},d(x){x&&z(t),Ie(i)}}}function Ss(e,t,n){let r,{transform:i}=t,{color:o=""}=t,{position:s={x:0,y:0}}=t,{prompt:a=""}=t,{interactive:l=!1}=t;return e.$$set=u=>{"transform"in u&&n(0,i=u.transform),"color"in u&&n(1,o=u.color),"position"in u&&n(5,s=u.position),"prompt"in u&&n(2,a=u.prompt),"interactive"in u&&n(3,l=u.interactive)},e.$$.update=()=>{e.$$.dirty&33&&n(4,r={x:i.applyX(s.x),y:i.applyY(s.y)})},[i,o,a,l,r,s]}class li extends Se{constructor(t){super(),Pe(this,t,Ss,Is,Te,{transform:0,color:1,position:5,prompt:2,interactive:3})}}var Ps={value:()=>{}};function on(){for(var e=0,t=arguments.length,n={},r;e=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}})}Kt.prototype=on.prototype={constructor:Kt,on:function(e,t){var n=this._,r=Ts(e+"",n),i,o=-1,s=r.length;if(arguments.length<2){for(;++o0)for(var n=new Array(i),r=0,i,o;r=0&&(t=e.slice(0,n))!=="xmlns"&&(e=e.slice(n+1)),ur.hasOwnProperty(t)?{space:ur[t],local:e}:e}function Ls(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===xn&&t.documentElement.namespaceURI===xn?t.createElement(e):t.createElementNS(n,e)}}function Rs(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function ui(e){var t=sn(e);return(t.local?Rs:Ls)(t)}function Ns(){}function Hn(e){return e==null?Ns:function(){return this.querySelector(e)}}function Cs(e){typeof e!="function"&&(e=Hn(e));for(var t=this._groups,n=t.length,r=new Array(n),i=0;i=D&&(D=F+1);!(T=w[D])&&++D=0;)(s=r[i])&&(o&&s.compareDocumentPosition(o)^4&&o.parentNode.insertBefore(s,o),o=s);return this}function oa(e){e||(e=sa);function t(p,d){return p&&d?e(p.__data__,d.__data__):!p-!d}for(var n=this._groups,r=n.length,i=new Array(r),o=0;ot?1:e>=t?0:NaN}function aa(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function la(){return Array.from(this)}function ua(){for(var e=this._groups,t=0,n=e.length;t1?this.each((t==null?wa:typeof t=="function"?Ea:ba)(e,t,n==null?"":n)):dt(this.node(),e)}function dt(e,t){return e.style.getPropertyValue(t)||pi(e).getComputedStyle(e,null).getPropertyValue(t)}function xa(e){return function(){delete this[e]}}function Oa(e,t){return function(){this[e]=t}}function Ia(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function Sa(e,t){return arguments.length>1?this.each((t==null?xa:typeof t=="function"?Ia:Oa)(e,t)):this.node()[e]}function mi(e){return e.trim().split(/^|\s+/)}function Vn(e){return e.classList||new _i(e)}function _i(e){this._node=e,this._names=mi(e.getAttribute("class")||"")}_i.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 gi(e,t){for(var n=Vn(e),r=-1,i=t.length;++r=0&&(n=t.slice(r+1),t=t.slice(0,r)),{type:t,name:n}})}function tl(e){return function(){var t=this.__on;if(!!t){for(var n=0,r=-1,i=t.length,o;n()=>e;function On(e,{sourceEvent:t,subject:n,target:r,identifier:i,active:o,x:s,y:a,dx:l,dy:u,dispatch:c}){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:u,enumerable:!0,configurable:!0},_:{value:c}})}On.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function fl(e){return!e.ctrlKey&&!e.button}function hl(){return this.parentNode}function dl(e,t){return t==null?{x:e.x,y:e.y}:t}function pl(){return navigator.maxTouchPoints||"ontouchstart"in this}function ml(){var e=fl,t=hl,n=dl,r=pl,i={},o=on("start","drag","end"),s=0,a,l,u,c,p=0;function d(m){m.on("mousedown.drag",v).filter(r).on("touchstart.drag",w).on("touchmove.drag",S,cl).on("touchend.drag touchcancel.drag",F).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function v(m,T){if(!(c||!e.call(this,m,T))){var k=D(this,t.call(this,m,T),m,T,"mouse");!k||(we(m.view).on("mousemove.drag",O,kt).on("mouseup.drag",x,kt),bi(m.view),yn(m),u=!1,a=m.clientX,l=m.clientY,k("start",m))}}function O(m){if(lt(m),!u){var T=m.clientX-a,k=m.clientY-l;u=T*T+k*k>p}i.mouse("drag",m)}function x(m){we(m.view).on("mousemove.drag mouseup.drag",null),Ei(m.view,u),lt(m),i.mouse("end",m)}function w(m,T){if(!!e.call(this,m,T)){var k=m.changedTouches,b=t.call(this,m,T),R=k.length,K,V;for(K=0;K{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 gl(e,t){const n=vl(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 st(e,t=32){return 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=wl.exec(e))?new ce(t[1],t[2],t[3],1):(t=bl.exec(e))?new ce(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=El.exec(e))?Ct(t[1],t[2],t[3],t[4]):(t=kl.exec(e))?Ct(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=xl.exec(e))?_r(t[1],t[2]/100,t[3]/100,1):(t=Ol.exec(e))?_r(t[1],t[2]/100,t[3]/100,t[4]):cr.hasOwnProperty(e)?dr(cr[e]):e==="transparent"?new ce(NaN,NaN,NaN,0):null}function dr(e){return new ce(e>>16&255,e>>8&255,e&255,1)}function Ct(e,t,n,r){return r<=0&&(e=t=n=NaN),new ce(e,t,n,r)}function Pl(e){return e instanceof Lt||(e=It(e)),e?(e=e.rgb(),new ce(e.r,e.g,e.b,e.opacity)):new ce}function In(e,t,n,r){return arguments.length===1?Pl(e):new ce(e,t,n,r==null?1:r)}function ce(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}Bn(ce,In,ki(Lt,{brighter(e){return e=e==null?Gt:Math.pow(Gt,e),new ce(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?xt:Math.pow(xt,e),new ce(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new ce(tt(this.r),tt(this.g),tt(this.b),Jt(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:pr,formatHex:pr,formatHex8:Tl,formatRgb:mr,toString:mr}));function pr(){return`#${We(this.r)}${We(this.g)}${We(this.b)}`}function Tl(){return`#${We(this.r)}${We(this.g)}${We(this.b)}${We((isNaN(this.opacity)?1:this.opacity)*255)}`}function mr(){const e=Jt(this.opacity);return`${e===1?"rgb(":"rgba("}${tt(this.r)}, ${tt(this.g)}, ${tt(this.b)}${e===1?")":`, ${e})`}`}function Jt(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function tt(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function We(e){return e=tt(e),(e<16?"0":"")+e.toString(16)}function _r(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new be(e,t,n,r)}function xi(e){if(e instanceof be)return new be(e.h,e.s,e.l,e.opacity);if(e instanceof Lt||(e=It(e)),!e)return new be;if(e instanceof be)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+(n0&&l<1?0:s,new be(s,a,l,e.opacity)}function Al(e,t,n,r){return arguments.length===1?xi(e):new be(e,t,n,r==null?1:r)}function be(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}Bn(be,Al,ki(Lt,{brighter(e){return e=e==null?Gt:Math.pow(Gt,e),new be(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?xt:Math.pow(xt,e),new be(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 ce(wn(e>=240?e-240:e+120,i,r),wn(e,i,r),wn(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new be(gr(this.h),Mt(this.s),Mt(this.l),Jt(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=Jt(this.opacity);return`${e===1?"hsl(":"hsla("}${gr(this.h)}, ${Mt(this.s)*100}%, ${Mt(this.l)*100}%${e===1?")":`, ${e})`}`}}));function gr(e){return e=(e||0)%360,e<0?e+360:e}function Mt(e){return Math.max(0,Math.min(1,e||0))}function wn(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 Oi=e=>()=>e;function Ll(e,t){return function(n){return e+n*t}}function Rl(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 Nl(e){return(e=+e)==1?Ii:function(t,n){return n-t?Rl(t,n,e):Oi(isNaN(t)?n:t)}}function Ii(e,t){var n=t-e;return n?Ll(e,n):Oi(isNaN(e)?t:e)}const vr=function e(t){var n=Nl(t);function r(i,o){var s=n((i=In(i)).r,(o=In(o)).r),a=n(i.g,o.g),l=n(i.b,o.b),u=Ii(i.opacity,o.opacity);return function(c){return i.r=s(c),i.g=a(c),i.b=l(c),i.opacity=u(c),i+""}}return r.gamma=e,r}(1);function He(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}var Sn=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,bn=new RegExp(Sn.source,"g");function Cl(e){return function(){return e}}function Ml(e){return function(t){return e(t)+""}}function Ul(e,t){var n=Sn.lastIndex=bn.lastIndex=0,r,i,o,s=-1,a=[],l=[];for(e=e+"",t=t+"";(r=Sn.exec(e))&&(i=bn.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:He(r,i)})),n=bn.lastIndex;return n180?c+=360:c-u>180&&(u+=360),d.push({i:p.push(i(p)+"rotate(",null,r)-2,x:He(u,c)})):c&&p.push(i(p)+"rotate("+c+r)}function a(u,c,p,d){u!==c?d.push({i:p.push(i(p)+"skewX(",null,r)-2,x:He(u,c)}):c&&p.push(i(p)+"skewX("+c+r)}function l(u,c,p,d,v,O){if(u!==p||c!==d){var x=v.push(i(v)+"scale(",null,",",null,")");O.push({i:x-4,x:He(u,p)},{i:x-2,x:He(c,d)})}else(p!==1||d!==1)&&v.push(i(v)+"scale("+p+","+d+")")}return function(u,c){var p=[],d=[];return u=e(u),c=e(c),o(u.translateX,u.translateY,c.translateX,c.translateY,p,d),s(u.rotate,c.rotate,p,d),a(u.skewX,c.skewX,p,d),l(u.scaleX,u.scaleY,c.scaleX,c.scaleY,p,d),u=c=null,function(v){for(var O=-1,x=d.length,w;++O=0&&e._call.call(void 0,t),e=e._next;--pt}function br(){rt=(Zt=St.now())+an,pt=wt=0;try{Yl()}finally{pt=0,jl(),rt=0}}function ql(){var e=St.now(),t=e-Zt;t>Ti&&(an-=t,Zt=e)}function jl(){for(var e,t=Wt,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:Wt=n);bt=e,Tn(r)}function Tn(e){if(!pt){wt&&(wt=clearTimeout(wt));var t=e-rt;t>24?(e<1/0&&(wt=setTimeout(br,e-St.now()-an)),_t&&(_t=clearInterval(_t))):(_t||(Zt=St.now(),_t=setInterval(ql,Ti)),pt=1,Ai(br))}}function Er(e,t,n){var r=new Qt;return t=t==null?0:+t,r.restart(i=>{r.stop(),e(i+t)},t,n),r}var Gl=on("start","end","cancel","interrupt"),Jl=[],Ri=0,kr=1,An=2,Ft=3,xr=4,Ln=5,Ht=6;function ln(e,t,n,r,i,o){var s=e.__transition;if(!s)e.__transition={};else if(n in s)return;Wl(e,n,{name:t,index:r,group:i,on:Gl,tween:Jl,time:o.time,delay:o.delay,duration:o.duration,ease:o.ease,timer:null,state:Ri})}function Yn(e,t){var n=Le(e,t);if(n.state>Ri)throw new Error("too late; already scheduled");return n}function Me(e,t){var n=Le(e,t);if(n.state>Ft)throw new Error("too late; already running");return n}function Le(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw new Error("transition not found");return n}function Wl(e,t,n){var r=e.__transition,i;r[t]=n,n.timer=Li(o,0,n.time);function o(u){n.state=kr,n.timer.restart(s,n.delay,n.time),n.delay<=u&&s(u-n.delay)}function s(u){var c,p,d,v;if(n.state!==kr)return l();for(c in r)if(v=r[c],v.name===n.name){if(v.state===Ft)return Er(s);v.state===xr?(v.state=Ht,v.timer.stop(),v.on.call("interrupt",e,e.__data__,v.index,v.group),delete r[c]):+cAn&&r.state=0&&(t=t.slice(0,n)),!t||t==="start"})}function Su(e,t,n){var r,i,o=Iu(t)?Yn:Me;return function(){var s=o(this,e),a=s.on;a!==r&&(i=(r=a).copy()).on(t,n),s.on=i}}function Pu(e,t){var n=this._id;return arguments.length<2?Le(this.node(),n).on.on(e):this.each(Su(n,e,t))}function Tu(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function Au(){return this.on("end.remove",Tu(this._id))}function Lu(e){var t=this._name,n=this._id;typeof e!="function"&&(e=Hn(e));for(var r=this._groups,i=r.length,o=new Array(i),s=0;s()=>e;function nc(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 ze(e,t,n){this.k=e,this.x=t,this.y=n}ze.prototype={constructor:ze,scale:function(e){return e===1?this:new ze(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new ze(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 jn=new ze(1,0,0);ze.prototype;function En(e){e.stopImmediatePropagation()}function gt(e){e.preventDefault(),e.stopImmediatePropagation()}function rc(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function ic(){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 Or(){return this.__zoom||jn}function oc(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function sc(){return navigator.maxTouchPoints||"ontouchstart"in this}function ac(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 lc(){var e=rc,t=ic,n=ac,r=oc,i=sc,o=[0,1/0],s=[[-1/0,-1/0],[1/0,1/0]],a=250,l=Bl,u=on("start","zoom","end"),c,p,d,v=500,O=150,x=0,w=10;function S(h){h.property("__zoom",Or).on("wheel.zoom",R,{passive:!1}).on("mousedown.zoom",K).on("dblclick.zoom",V).filter(i).on("touchstart.zoom",Q).on("touchmove.zoom",j).on("touchend.zoom touchcancel.zoom",fe).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}S.transform=function(h,I,g,P){var C=h.selection?h.selection():h;C.property("__zoom",Or),h!==C?T(h,I,g,P):C.interrupt().each(function(){k(this,arguments).event(P).start().zoom(null,typeof I=="function"?I.apply(this,arguments):I).end()})},S.scaleBy=function(h,I,g,P){S.scaleTo(h,function(){var C=this.__zoom.k,M=typeof I=="function"?I.apply(this,arguments):I;return C*M},g,P)},S.scaleTo=function(h,I,g,P){S.transform(h,function(){var C=t.apply(this,arguments),M=this.__zoom,$=g==null?m(C):typeof g=="function"?g.apply(this,arguments):g,B=M.invert($),Y=typeof I=="function"?I.apply(this,arguments):I;return n(D(F(M,Y),$,B),C,s)},g,P)},S.translateBy=function(h,I,g,P){S.transform(h,function(){return n(this.__zoom.translate(typeof I=="function"?I.apply(this,arguments):I,typeof g=="function"?g.apply(this,arguments):g),t.apply(this,arguments),s)},null,P)},S.translateTo=function(h,I,g,P,C){S.transform(h,function(){var M=t.apply(this,arguments),$=this.__zoom,B=P==null?m(M):typeof P=="function"?P.apply(this,arguments):P;return n(jn.translate(B[0],B[1]).scale($.k).translate(typeof I=="function"?-I.apply(this,arguments):-I,typeof g=="function"?-g.apply(this,arguments):-g),M,s)},P,C)};function F(h,I){return I=Math.max(o[0],Math.min(o[1],I)),I===h.k?h:new ze(I,h.x,h.y)}function D(h,I,g){var P=I[0]-g[0]*h.k,C=I[1]-g[1]*h.k;return P===h.x&&C===h.y?h:new ze(h.k,P,C)}function m(h){return[(+h[0][0]+ +h[1][0])/2,(+h[0][1]+ +h[1][1])/2]}function T(h,I,g,P){h.on("start.zoom",function(){k(this,arguments).event(P).start()}).on("interrupt.zoom end.zoom",function(){k(this,arguments).event(P).end()}).tween("zoom",function(){var C=this,M=arguments,$=k(C,M).event(P),B=t.apply(C,M),Y=g==null?m(B):typeof g=="function"?g.apply(C,M):g,ne=Math.max(B[1][0]-B[0][0],B[1][1]-B[0][1]),re=C.__zoom,le=typeof I=="function"?I.apply(C,M):I,he=l(re.invert(Y).concat(ne/re.k),le.invert(Y).concat(ne/le.k));return function(ue){if(ue===1)ue=le;else{var ve=he(ue),it=ne/ve[2];ue=new ze(it,Y[0]-ve[0]*it,Y[1]-ve[1]*it)}$.zoom(null,ue)}})}function k(h,I,g){return!g&&h.__zooming||new b(h,I)}function b(h,I){this.that=h,this.args=I,this.active=0,this.sourceEvent=null,this.extent=t.apply(h,I),this.taps=0}b.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=we(this.that).datum();u.call(h,this.that,new nc(h,{sourceEvent:this.sourceEvent,target:S,type:h,transform:this.that.__zoom,dispatch:u}),I)}};function R(h,...I){if(!e.apply(this,arguments))return;var g=k(this,I).event(h),P=this.__zoom,C=Math.max(o[0],Math.min(o[1],P.k*Math.pow(2,r.apply(this,arguments)))),M=$e(h);if(g.wheel)(g.mouse[0][0]!==M[0]||g.mouse[0][1]!==M[1])&&(g.mouse[1]=P.invert(g.mouse[0]=M)),clearTimeout(g.wheel);else{if(P.k===C)return;g.mouse=[M,P.invert(M)],Vt(this),g.start()}gt(h),g.wheel=setTimeout($,O),g.zoom("mouse",n(D(F(P,C),g.mouse[0],g.mouse[1]),g.extent,s));function $(){g.wheel=null,g.end()}}function K(h,...I){if(d||!e.apply(this,arguments))return;var g=h.currentTarget,P=k(this,I,!0).event(h),C=we(h.view).on("mousemove.zoom",Y,!0).on("mouseup.zoom",ne,!0),M=$e(h,g),$=h.clientX,B=h.clientY;bi(h.view),En(h),P.mouse=[M,this.__zoom.invert(M)],Vt(this),P.start();function Y(re){if(gt(re),!P.moved){var le=re.clientX-$,he=re.clientY-B;P.moved=le*le+he*he>x}P.event(re).zoom("mouse",n(D(P.that.__zoom,P.mouse[0]=$e(re,g),P.mouse[1]),P.extent,s))}function ne(re){C.on("mousemove.zoom mouseup.zoom",null),Ei(re.view,P.moved),gt(re),P.event(re).end()}}function V(h,...I){if(!!e.apply(this,arguments)){var g=this.__zoom,P=$e(h.changedTouches?h.changedTouches[0]:h,this),C=g.invert(P),M=g.k*(h.shiftKey?.5:2),$=n(D(F(g,M),P,C),t.apply(this,I),s);gt(h),a>0?we(this).transition().duration(a).call(T,$,P,h):we(this).call(S.transform,$,P,h)}}function Q(h,...I){if(!!e.apply(this,arguments)){var g=h.touches,P=g.length,C=k(this,I,h.changedTouches.length===P).event(h),M,$,B,Y;for(En(h),$=0;${n(o)});return en(()=>{i()}),{subscribe:t,update:r}}function uc(){const e=un(),t=mt(),n=e.subscribe("others",r=>{t.set(r)});return en(n),t}function cc(){const e=un(),t=mt();async function n(){const{root:r}=await e.getStorage();t.set(r)}return n(),t}function Ui(e,t){const n=un(),r=cc(),i=mt();let o=()=>{};const s=r.subscribe(a=>{!a||(a.get(e)||a.set(e,new ds(t)),i.set(a.get(e)),o(),o=n.subscribe(a.get(e),l=>{i.set(l)}))});return en(s),i}function fc(e){let t,n,r;return n=new li({props:{color:e[1],position:e[3],prompt:e[5],transform:e[0],interactive:e[2]}}),{c(){t=oe("div"),ke(n.$$.fragment)},l(i){t=se(i,"DIV",{});var o=te(t);xe(n.$$.fragment,o),o.forEach(z)},m(i,o){ie(i,t,o),Oe(n,t,null),e[8](t),r=!0},p(i,[o]){const s={};o&2&&(s.color=i[1]),o&8&&(s.position=i[3]),o&32&&(s.prompt=i[5]),o&1&&(s.transform=i[0]),o&4&&(s.interactive=i[2]),n.$set(s)},i(i){r||(X(n.$$.fragment,i),r=!0)},o(i){Z(n.$$.fragment,i),r=!1},d(i){i&&z(t),Ie(n),e[8](null)}}}function hc(e,t,n){let r,i;const o=cn();Ve(e,o,d=>n(7,i=d));let{transform:s}=t,{color:a="black"}=t,{interactive:l=!1}=t,u={x:768,y:768},c;Pt(()=>{function d(w){}function v(w){const S=st(s.invertX(w.x)-256),F=st(s.invertY(w.y)-512/2);n(3,u={x:S,y:F})}function O(w){const S=st(s.invertX(w.x)-256),F=st(s.invertY(w.y)-512/2);o.update({frame:{x:S,y:F}})}const x=ml().on("start",d).on("drag",v).on("end",O);we(c).call(x)});function p(d){Et[d?"unshift":"push"](()=>{c=d,n(4,c)})}return e.$$set=d=>{"transform"in d&&n(0,s=d.transform),"color"in d&&n(1,a=d.color),"interactive"in d&&n(2,l=d.interactive)},e.$$.update=()=>{e.$$.dirty&128&&n(5,r=i==null?void 0:i.currentPrompt)},[s,a,l,u,c,r,o,i,p]}class dc extends Se{constructor(t){super(),Pe(this,t,hc,fc,Te,{transform:0,color:1,interactive:2})}}const pc="wss://spaces.huggingface.tech/huggingface-projects/stable-diffusion-multiplayer/gradio/queue/join",mc="https://hf.space/embed/huggingface-projects/stable-diffusion-multiplayer/uploads";function _c(e){let t,n,r,i;const o=e[8].default,s=Nn(o,e,e[7],null);return{c(){t=oe("div"),n=oe("canvas"),r=_e(),s&&s.c(),this.h()},l(a){t=se(a,"DIV",{class:!0});var l=te(t);n=se(l,"CANVAS",{width:!0,height:!0,class:!0}),te(n).forEach(z),r=ge(l),s&&s.l(l),l.forEach(z),this.h()},h(){U(n,"width",e[4]),U(n,"height",e[3]),U(n,"class","absolute top-0 left-0 bg-white svelte-6dcxg7"),U(t,"class","absolute top-0 left-0 right-0 bottom-0 overflow-hidden z-0 bg-gray-800")},m(a,l){ie(a,t,l),q(t,n),e[9](n),q(t,r),s&&s.m(t,null),e[10](t),i=!0},p(a,[l]){s&&s.p&&(!i||l&128)&&Cn(s,o,a,a[7],i?Un(o,a[7],l,null):Mn(a[7]),null)},i(a){i||(X(s,a),i=!0)},o(a){Z(s,a),i=!1},d(a){a&&z(t),e[9](null),s&&s.d(a),e[10](null)}}}function gc(e,t,n){let r,i;Ve(e,Rn,b=>n(12,r=b));let{$$slots:o={},$$scope:s}=t;const a=cn(),l=Ui("promptImgStorage");Ve(e,l,b=>n(6,i=b));const u=512*4,c=512*4;let{value:p}=t,d,v;const O=new Set;function x(b){return b?Object.values(b).sort((K,V)=>K.date-V.date).filter(({id:K})=>!O.has(K)):[]}let w=[];Pt(()=>{const b=c/d.clientWidth,R=.1,K=3,V=lc().scaleExtent([1/b/K,1]).translateExtent([[-c*R,-u*R],[c*(1+R),u*(1+R)]]).tapDistance(10).on("zoom",F),Q=we(p.parentElement).call(V).call(V.scaleTo,1/b/2).on("pointermove",D).on("pointerleave",m);v=p.getContext("2d");function j(){console.log("zoom reset");const fe=c/d.clientWidth;V.scaleExtent([1/fe/K,1]),Q.call(V.scaleTo,1/fe/2)}return window.addEventListener("resize",j),()=>{window.removeEventListener("resize",j)}});function S(b){Promise.all(b.map(({imgURL:R,position:K,id:V})=>new Promise(Q=>{const j=new Image;j.crossOrigin="anonymous",j.onload=()=>{const h={img:j,position:K,id:V};v.drawImage(j,K.x,K.y,j.width,j.height),Q(h)};const fe=R.split("/");j.src=`${mc}/${fe.slice(3).join("/")}`}))).then(R=>{R.forEach(({img:K,position:V,id:Q})=>{O.add(Q),v.drawImage(K,V.x,V.y,K.width,K.height)})})}function F(b){const R=me(Rn,r=b.transform,r);n(0,p.style.transform=`translate(${R.x}px, ${R.y}px) scale(${R.k})`,p)}function D(b){b.preventDefault();const R=st(r.invertX(b.clientX)),K=st(r.invertY(b.clientY));a.update({cursor:{x:R,y:K}})}function m(){a.update({cursor:null})}function T(b){Et[b?"unshift":"push"](()=>{p=b,n(0,p)})}function k(b){Et[b?"unshift":"push"](()=>{d=b,n(1,d)})}return e.$$set=b=>{"value"in b&&n(0,p=b.value),"$$scope"in b&&n(7,s=b.$$scope)},e.$$.update=()=>{e.$$.dirty&64&&n(5,w=x(i==null?void 0:i.toObject())),e.$$.dirty&32&&w&&S(w)},[p,d,l,u,c,w,i,s,o,T,k]}class vc extends Se{constructor(t){super(),Pe(this,t,gc,_c,Te,{value:0})}}function yc(e){let t,n,r,i,o,s,a,l,u;return{c(){t=oe("div"),n=oe("button"),r=oe("span"),i=Ze("+"),o=_e(),s=oe("span"),a=Ze("Paint"),this.h()},l(c){t=se(c,"DIV",{class:!0});var p=te(t);n=se(p,"BUTTON",{class:!0,title:!0});var d=te(n);r=se(d,"SPAN",{class:!0});var v=te(r);i=Qe(v,"+"),v.forEach(z),o=ge(d),s=se(d,"SPAN",{});var O=te(s);a=Qe(O,"Paint"),O.forEach(z),d.forEach(z),p.forEach(z),this.h()},h(){U(r,"class","rounded-sm h-6 w-6 flex justify-center items-center border-2 border-dashed border-violet-700 mr-2"),U(n,"class","button-paint bg-violet-100 text-violet-900 svelte-15omrbl"),U(n,"title","New Paint Frame"),U(t,"class","grid grid-cols-1 gap-3 w-max mx-auto")},m(c,p){ie(c,t,p),q(t,n),q(n,r),q(r,i),q(n,o),q(n,s),q(s,a),l||(u=vt(n,"click",e[1]),l=!0)},p:Ee,i:Ee,o:Ee,d(c){c&&z(t),l=!1,u()}}}function wc(e){const t=Mr(),n=i=>{i.preventDefault(),i.key==="Enter"&&t("paintMode",{mode:"paint"})};return Pt(()=>(window.addEventListener("keyup",n),()=>{window.removeEventListener("keyup",n)})),[t,()=>t("paintMode",{mode:"paint"})]}class bc extends Se{constructor(t){super(),Pe(this,t,wc,yc,Te,{})}}function Ec(e){let t,n,r,i;return{c(){t=oe("form"),n=oe("input"),this.h()},l(o){t=se(o,"FORM",{class:!0});var s=te(t);n=se(s,"INPUT",{class:!0,placeholder:!0,title:!0,type:!0,name:!0}),s.forEach(z),this.h()},h(){U(n,"class","input svelte-1pw1u5k"),U(n,"placeholder","Type a prompt..."),U(n,"title","Input prompt to generate image and obtain palette"),U(n,"type","text"),U(n,"name","prompt"),U(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){ie(o,t,s),q(t,n),e[5](n),er(n,e[0]),r||(i=[vt(n,"input",e[6]),vt(n,"click",to(e[4])),vt(t,"submit",no(e[3])),vt(t,"click",e[7])],r=!0)},p(o,[s]){s&1&&n.value!==o[0]&&er(n,o[0])},i:Ee,o:Ee,d(o){o&&z(t),e[5](null),r=!1,ro(i)}}}function kc(e,t,n){const r=Mr();let i,o;const s=cn(),a=v=>{v.key==="Escape"&&(r("close"),s.update({currentPrompt:"",isPrompting:!1}))};Pt(()=>(o.focus(),window.addEventListener("keyup",a),()=>{window.removeEventListener("keyup",a)}));function l(){i.trim()!==""&&r("prompt",i)}function u(v){io.call(this,e,v)}function c(v){Et[v?"unshift":"push"](()=>{o=v,n(1,o)})}function p(){i=this.value,n(0,i)}const d=()=>r("close");return e.$$.update=()=>{e.$$.dirty&1&&s.update({currentPrompt:i,isPrompting:!0})},[i,o,r,l,u,c,p,d]}class xc extends Se{constructor(t){super(),Pe(this,t,kc,Ec,Te,{})}}var Di={},$i={},Gn={exports:{}},W=String,zi=function(){return{isColorSupported:!1,reset:W,bold:W,dim:W,italic:W,underline:W,inverse:W,hidden:W,strikethrough:W,black:W,red:W,green:W,yellow:W,blue:W,magenta:W,cyan:W,white:W,gray:W,bgBlack:W,bgRed:W,bgGreen:W,bgYellow:W,bgBlue:W,bgMagenta:W,bgCyan:W,bgWhite:W}};Gn.exports=zi();Gn.exports.createColors=zi;(function(e){Object.defineProperty(e,"__esModule",{value:!0});function t(l,u){for(var c in u)Object.defineProperty(l,c,{enumerable:!0,get:u[c]})}t(e,{dim:()=>s,default:()=>a});const n=r(Gn.exports);function r(l){return l&&l.__esModule?l:{default:l}}let i=new Set;function o(l,u,c){typeof process<"u"&&process.env.JEST_WORKER_ID||c&&i.has(c)||(c&&i.add(c),console.warn(""),u.forEach(p=>console.warn(l,"-",p)))}function s(l){return n.default.dim(l)}const a={info(l,u){o(n.default.bold(n.default.cyan("info")),...Array.isArray(l)?[l]:[u,l])},warn(l,u){o(n.default.bold(n.default.yellow("warn")),...Array.isArray(l)?[l]:[u,l])},risk(l,u){o(n.default.bold(n.default.magenta("risk")),...Array.isArray(l)?[l]:[u,l])}}})($i);(function(e){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:()=>i});const t=n($i);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}}})(Di);let kn=Di;var Oc=(kn.__esModule?kn:{default:kn}).default;const Ye=Object.values(Oc).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 Ic=(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 Ir(e,t,n){const r=e.slice();return r[20]=t[n].connectionId,r[21]=t[n].presence,r}function Sr(e){let t,n;return t=new xc({}),t.$on("prompt",e[11]),t.$on("close",e[10]),{c(){ke(t.$$.fragment)},l(r){xe(t.$$.fragment,r)},m(r,i){Oe(t,r,i),n=!0},p:Ee,i(r){n||(X(t.$$.fragment,r),n=!0)},o(r){Z(t.$$.fragment,r),n=!1},d(r){Ie(t,r)}}}function Pr(e){let t=[],n=new Map,r,i,o=[...e[5]];const s=a=>a[20];for(let a=0;a{s=null}),ft()),(x=t[21])!=null&&x.cursor?a?(a.p(t,d),d&32&&X(a,1)):(a=Ar(t),a.c(),X(a,1),a.m(i.parentNode,i)):a&&(ct(),Z(a,1,1,()=>{a=null}),ft())},i(p){o||(X(s),X(a),o=!0)},o(p){Z(s),Z(a),o=!1},d(p){p&&z(n),s&&s.d(p),p&&z(r),a&&a.d(p),p&&z(i)}}}function Sc(e){let t,n,r,i,o,s,a,l,u,c,p,d,v,O,x,w=e[0]&&Sr(e);function S(m){e[14](m)}let F={};e[1]!==void 0&&(F.value=e[1]),s=new vc({props:F}),Et.push(()=>oo(s,"value",S)),c=new dc({props:{transform:e[4],interactive:!e[2]}});let D=e[5]&&Pr(e);return O=new bc({}),O.$on("paintMode",e[9]),{c(){t=oe("div"),n=Ze(e[3]),r=_e(),w&&w.c(),i=_e(),o=oe("div"),ke(s.$$.fragment),l=_e(),u=oe("main"),ke(c.$$.fragment),p=_e(),D&&D.c(),d=_e(),v=oe("div"),ke(O.$$.fragment),this.h()},l(m){t=se(m,"DIV",{class:!0});var T=te(t);n=Qe(T,e[3]),T.forEach(z),r=ge(m),w&&w.l(m),i=ge(m),o=se(m,"DIV",{class:!0});var k=te(o);xe(s.$$.fragment,k),l=ge(k),u=se(k,"MAIN",{class:!0});var b=te(u);xe(c.$$.fragment,b),p=ge(b),D&&D.l(b),b.forEach(z),k.forEach(z),d=ge(m),v=se(m,"DIV",{class:!0});var R=te(v);xe(O.$$.fragment,R),R.forEach(z),this.h()},h(){U(t,"class","text touch-none pointer-events-none"),U(u,"class","z-10 relative"),U(o,"class","fixed top-0 left-0 z-0 w-screen h-screen"),U(v,"class","fixed bottom-0 left-0 right-0 z-10 my-2")},m(m,T){ie(m,t,T),q(t,n),ie(m,r,T),w&&w.m(m,T),ie(m,i,T),ie(m,o,T),Oe(s,o,null),q(o,l),q(o,u),Oe(c,u,null),q(u,p),D&&D.m(u,null),ie(m,d,T),ie(m,v,T),Oe(O,v,null),x=!0},p(m,[T]){(!x||T&8)&&Dn(n,m[3]),m[0]?w?(w.p(m,T),T&1&&X(w,1)):(w=Sr(m),w.c(),X(w,1),w.m(i.parentNode,i)):w&&(ct(),Z(w,1,1,()=>{w=null}),ft());const k={};!a&&T&2&&(a=!0,k.value=m[1],so(()=>a=!1)),s.$set(k);const b={};T&16&&(b.transform=m[4]),T&4&&(b.interactive=!m[2]),c.$set(b),m[5]?D?(D.p(m,T),T&32&&X(D,1)):(D=Pr(m),D.c(),X(D,1),D.m(u,null)):D&&(ct(),Z(D,1,1,()=>{D=null}),ft())},i(m){x||(X(w),X(s.$$.fragment,m),X(c.$$.fragment,m),X(D),X(O.$$.fragment,m),x=!0)},o(m){Z(w),Z(s.$$.fragment,m),Z(c.$$.fragment,m),Z(D),Z(O.$$.fragment,m),x=!1},d(m){m&&z(t),m&&z(r),w&&w.d(m),m&&z(i),m&&z(o),Ie(s),Ie(c),D&&D.d(),m&&z(d),m&&z(v),Ie(O)}}}function Pc({position:e}){return`${e.x}_${e.y}`}function Tc(e,t,n){let r,i,o,s,a,l;Ve(e,pe,k=>n(3,i=k)),Ve(e,Rn,k=>n(4,a=k));const u=cn();Ve(e,u,k=>n(13,s=k));const c=uc();Ve(e,c,k=>n(5,l=k));const p={cursor:null,frame:null,isPrompting:!1,isLoading:!1,isMoving:!0,currentPrompt:""};u.update(p);const d=Ui("promptImgStorage");Ve(e,d,k=>n(12,o=k));function v(k){return k?Object.values(k).sort((R,K)=>R.date-K.date):[]}let O=!1,x;function w(k){k.detail.mode=="paint"&&!r&&(n(0,O=!0),u.update({isPrompting:!0}))}function S(){n(0,O=!1)}function F(k){m(),n(0,O=!1)}function D(k){const b=document.createElement("canvas");b.width=512,b.height=512;const R=b.getContext("2d");return R.save(),R.clearRect(0,0,512,512),R.globalCompositeOperation="source-over",R.drawImage(x,k.x,k.y,512,512,0,0,512,512),R.restore(),b.toDataURL("image/png")}async function m(){if(r)return;me(pe,i="Pending",i);const k=s.currentPrompt,b=s.frame;console.log("Generating...",k,b),u.update({isPrompting:!0,isLoading:!0});const R=crypto.randomUUID(),K={fn_index:0,data:[D(b),k,.75,7.5,30,"patchmatch"],session_hash:R};console.log("payload",K);const V=new WebSocket(pc);V.onclose=Q=>{Q.wasClean||(me(pe,i="Error",i),u.update({isPrompting:!1,isLoading:!1}))},V.onmessage=async function(Q){try{const j=JSON.parse(Q.data);switch(me(pe,i="",i),j.msg){case"send_data":me(pe,i="Sending Data",i),V.send(JSON.stringify(K));break;case"queue_full":me(pe,i="Queue full",i),V.close(),u.update({isPrompting:!1});return;case"estimation":const{rank:fe,queue_size:h}=j;me(pe,i=`On queue ${fe}/${h}`,i);break;case"process_generating":me(pe,i=j.success?"Generating":"Error",i);break;case"process_completed":try{const I=j.output.data[0];if(j.output.data[1])throw new Error("Potential NFSW content, please try again");const P=await _l(I),C=await gl(P,k),M={prompt:k,imgURL:C,position:b,date:new Date().getTime(),id:Ic()},$=Pc(M);o.set($,M),console.log(C),me(pe,i=j.success?"Complete":"Error",i)}catch(I){const g=I;me(pe,i=g==null?void 0:g.message,i)}V.close(),u.update({isPrompting:!1});return;case"process_starts":me(pe,i="Processing",i);break}}catch(j){console.error(j),me(pe,i="Error",i)}}}function T(k){x=k,n(1,x)}return e.$$.update=()=>{e.$$.dirty&4096&&v(o==null?void 0:o.toObject()),e.$$.dirty&8192&&n(2,r=(s==null?void 0:s.isPrompting)||!1)},[O,x,r,i,a,l,u,c,d,w,S,F,o,s,T]}class Ac extends Se{constructor(t){super(),Pe(this,t,Tc,Sc,Te,{})}}function Rr(e){let t,n;return t=new gs({props:{client:e[2],$$slots:{default:[Rc]},$$scope:{ctx:e}}}),{c(){ke(t.$$.fragment)},l(r){xe(t.$$.fragment,r)},m(r,i){Oe(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||(X(t.$$.fragment,r),n=!0)},o(r){Z(t.$$.fragment,r),n=!1},d(r){Ie(t,r)}}}function Lc(e){let t,n;return t=new Ac({}),{c(){ke(t.$$.fragment)},l(r){xe(t.$$.fragment,r)},m(r,i){Oe(t,r,i),n=!0},i(r){n||(X(t.$$.fragment,r),n=!0)},o(r){Z(t.$$.fragment,r),n=!1},d(r){Ie(t,r)}}}function Rc(e){let t,n;return t=new ws({props:{id:e[0],$$slots:{default:[Lc]},$$scope:{ctx:e}}}),{c(){ke(t.$$.fragment)},l(r){xe(t.$$.fragment,r)},m(r,i){Oe(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||(X(t.$$.fragment,r),n=!0)},o(r){Z(t.$$.fragment,r),n=!1},d(r){Ie(t,r)}}}function Nc(e){let t,n,r=e[1]&&Rr(e);return{c(){r&&r.c(),t=Xe()},l(i){r&&r.l(i),t=Xe()},m(i,o){r&&r.m(i,o),ie(i,t,o),n=!0},p(i,[o]){i[1]?r?(r.p(i,o),o&2&&X(r,1)):(r=Rr(i),r.c(),X(r,1),r.m(t.parentNode,t)):r&&(ct(),Z(r,1,1,()=>{r=null}),ft())},i(i){n||(X(r),n=!0)},o(i){Z(r),n=!1},d(i){r&&r.d(i),i&&z(t)}}}const Dc=!0;function Cc(e,t,n){let r,i=!1,o;return Pt(()=>{n(0,r="multiplayer-SD"),n(2,o=ps({publicApiKey:"pk_test_JlUZGH3kQmhmZQiqU2l8eIi5"})),n(1,i=!0)}),[r,i,o]}class $c extends Se{constructor(t){super(),Pe(this,t,Cc,Nc,Te,{})}}export{$c as default,Dc as prerender};