@liascript/editor 1.1.5--0.15.1 → 1.1.5--0.15.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/index.07c3f661.js +1 -0
- package/dist/{index.bcb37d0a.js → index.1fff3e6b.js} +1 -1
- package/dist/{index.5cc1b71c.js → index.2aeb41a5.js} +1 -1
- package/dist/index.a4e1f319.js +1 -0
- package/dist/index.af7bf9db.js +1 -0
- package/dist/index.c5195294.js +1 -0
- package/dist/index.html +1 -1
- package/package.json +1 -1
- package/dist/Edrys.3278c326.js +0 -1
- package/dist/Edrys.37f10c7c.js +0 -1
- package/dist/Edrys.947d4ad2.js +0 -1
- package/dist/Edrys.a72376e3.js +0 -1
- package/dist/Gun.11528a5e.js +0 -1
- package/dist/Gun.a8998ad8.js +0 -1
- package/dist/P2PT.54680aa5.js +0 -1
- package/dist/P2PT.e8e586dc.js +0 -1
- package/dist/PubNub.5e938410.js +0 -1
- package/dist/PubNub.909274ea.js +0 -1
- package/dist/Trystero.8dffee2c.js +0 -1
- package/dist/Trystero.d7221dbd.js +0 -1
- package/dist/audio.flac +0 -0
- package/dist/index.513e6c88.js +0 -1
- package/dist/index.5f0ac357.js +0 -1
- package/dist/index.77da9204.js +0 -1
- package/dist/index.b68daa16.js +0 -1
- package/dist/p2pt.33ef209b.js +0 -8
- package/dist/p2pt.cd402f50.js +0 -8
- package/dist/trystero-mqtt.min.52f29dd5.js +0 -1
- package/dist/trystero-mqtt.min.b4f9f9d6.js +0 -1
- package/dist/trystero-nostr.min.1de4bf18.js +0 -1
- package/dist/trystero-nostr.min.4602d9cb.js +0 -1
- package/dist/trystero-torrent.min.91429d42.js +0 -1
- package/dist/trystero-torrent.min.b5d9ebed.js +0 -1
package/dist/Edrys.3278c326.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
!function(){var e=("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{}).parcelRequirea18f;e.register("24MSe",(function(n,t){var s,i,o,c;s=n.exports,i="Sync",o=function(){return a},Object.defineProperty(s,i,{get:o,set:c,enumerable:!0,configurable:!0});var d=e("9Xb5B"),r=e("3Lnfd");class a extends d.Sync{subject="liasync";connected=!1;async connect(e){super.connect(e),this.init(!0)}destroy(){this.listener&&window.removeEventListener("message",this.listener),super.destroy()}init(e,n){if(e){this.subject=this.room||"liasync";let e=this;this.listener=function(n){try{let t=n.data;switch(t.subject){case"init":t.body&&(e.connected=!0,e.sendConnect());break;case"publish":t.body&&e.pubsubReceive(t.body);break;default:t.body&&e.applyUpdate((0,r.decode)(t.body))}}catch(e){console.warn("Edrys",e.message)}},window.addEventListener("message",this.listener),this.broadcast(!0,null,"init"),setTimeout((function(){e.connected||e.sendDisconnectError("This seems not to be an Edrys classroom")}),2e3)}}broadcast(e,n,t){let s=e?t||this.subject:"publish";window.parent.postMessage({subject:s,body:n?(0,r.encode)(n):null},"*")}}}))}();
|
package/dist/Edrys.37f10c7c.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
!function(){function t(t,e,r,n){Object.defineProperty(t,e,{get:r,set:n,enumerable:!0,configurable:!0})}var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},r=e.parcelRequirea18f;r.register("9Xb5B",(function(e,n){t(e.exports,"uint8_to_base64",(function(){return c})),t(e.exports,"base64_to_unit8",(function(){return l})),t(e.exports,"Sync",(function(){return h}));var s=r("axlxN"),i=r("66xmW"),o=r("3Lnfd");function c(t){return(0,o.encode)(t)}function l(t){return(0,o.decode)(t)}function a(t=16){let e="";for(let r=0;r<t;r++)e+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".charAt(Math.floor(62*Math.random()));return e}class h{isConnected=!1;replyOnReceive=!1;constructor(t,e,r,n,o=!1,c=!0){let l;try{l=window.localStorage.getItem("lia-token"),l||(l=a(),window.localStorage.setItem("lia-token",l))}catch(t){console.warn("cannot write to localStorage"),l=a()}this.token=l,this.urlCounter=0,this.cbConnection=t,this.cbRelay=e,this.onConnect=r,this.onReceive=n,this.replyOnReceive=o;const h=this,u=function(t){let e=null;function r(){return 200*(t.db.getPeers().length+1)+(t.db.initialized?5e3:1e3)}function n(){if(t.isConnected)try{t.broadcast(!0,t.db.encode()),e=window.setTimeout(n,r())}catch(t){e=null}}return()=>{e&&window.clearTimeout(e),e=window.setTimeout(n,r())}}(h);this.gossip=u;const d=s.throttle((()=>{h.broadcast(!0,h.db.encode()),u()}),1e3);this.db=new(0,i.CRDT)(l,c?(t,e)=>{if(h.db){switch(e){case"cursor":this.sync("update",{cmd:"cursor",param:t});break;case"peer":this.sync("update",{cmd:"peer",param:t});break;case"code":this.sync("update",{cmd:"code",param:t});break;case"quiz":this.sync("update",{cmd:"quiz",param:t});break;case"survey":this.sync("update",{cmd:"survey",param:t});break;case"chat":this.sync("update",{cmd:"chat",param:t});break;case"exit":try{e=null,this.broadcast(!0,t),this.destroy()}catch(t){}break;default:console.warn("Sync unknown origin",e)}e&&d()}}:void 0)}connect(t){this.room=t.room,this.course=t.course,this.password=t.password,this.isConnected=!0}destroy(){this.db.destroy(),this.cbConnection("disconnect",this.token),this.isConnected=!1}disconnect(){this.db.removePeer()}uniqueID(){return"string"==typeof this.room&&(this.room.startsWith('"')&&this.room.endsWith('"')||this.room.startsWith("'")&&this.room.endsWith("'"))?this.room:this.course&&this.room?JSON.stringify({course:this.course,room:this.room,pw:s.getHashCode(this.password||"")}):(console.warn("Sync: no uniqueID"),null)}sendToLia(t){this.cbRelay(t)}sync(t,e=null){this.cbConnection(t,e)}sendDisconnectError(t){this.sync("error",t)}sendConnect(){this.sync("connect",this.token),this.onConnect&&this.onConnect()}pubsubSend(t,e){const r=JSON.stringify({topic:t,message:e}),n=new TextEncoder;this.broadcast(!1,n.encode(r)),this.replyOnReceive&&this.onReceive?.(t,e)}pubsubReceive(t){try{const e=(new TextDecoder).decode(t),r=JSON.parse(e);this.onReceive?.(r.topic,r.message)}catch(t){console.warn("Sync: pubsubReceive",t.message)}}broadcast(t,e){console.warn("broadcast needs to be implemented")}load(t,e){try{for(let r=0;r<t.length;r++){const n=document.createElement("script");n.async=!1,n.defer=!0,n.src=t[r],this.urlCounter++;let s=this;n.onload=function(){console.log("successfully loaded =>",t),s.urlCounter--,0==s.urlCounter&&e.init(!0)},n.onerror=function(r){console.warn("could not load =>",t,r),s.urlCounter=0,e.init(!1,`could not load => ${t}`)},document.head.appendChild(n)}}catch(t){console.error("load: ",t),e.init(!1,t.message)}}publish(t){switch(t.message.cmd){case"update":break;case"join":this.db.init(t.message.param),this.gossip();break;case"chat":this.db.addChatMessage(t.message.param);break;case"quiz":"quiz"===t.track?.[0][0]&&"id"===t.track?.[1][0]?this.db.addQuiz(t.track[0][1],t.track[1][1],t.message.param):console.warn("SyncTX wrong event ->",t);break;case"survey":"survey"===t.track?.[0][0]&&"id"===t.track?.[1][0]?this.db.addSurvey(t.track[0][1],t.track[1][1],t.message.param):console.warn("SyncTX wrong event ->",t);break;case"code":"code"===t.track?.[0][0]&&"id"===t.track?.[1][0]?this.db.updateCode(t.track[0][1],t.track[1][1],t.message.param.j,t.message.param.msg):console.warn("SyncTX wrong event ->",t);break;case"codes":if("code"===t.track?.[0][0]&&1===t.track.length)for(let e=0;e<t.message.param.length;e++)for(let r=0;r<t.message.param[e].length;r++)this.db.initCode(t.track[0][1],e,r,t.message.param[e][r]);else console.warn("SyncTX wrong event ->",t);break;case"cursor":"code"==t.track?.[0][0]&&this.db.setCursor(t.track[0][1],t.message.param);break;case"broadcast":this.broadcast(!0,t.message.param);default:console.warn("SyncTX unknown command:",t.message)}}applyUpdate(t,e=!1){this.db.applyUpdate(t,e)}}})),r.register("66xmW",(function(e,n){t(e.exports,"CRDT",(function(){return a}));var s=r("7I2MU"),i=r("axlxN"),o=r("g4rKG");const c="peers",l="cursors";class a{timestamp=Date.now();initialized=!1;constructor(t,e){this.doc=new s.Doc,this.callback=e||((t,e)=>{console.warn("SyncDB: no callback provided")}),this.length=0,this.peerID=t,this.peers=this.doc.getMap(c),this.cursors=this.doc.getMap(l),this.codes=this.doc.getMap("c"),this.quizzes=new(0,o.YKeyValue)(this.doc.getArray("q")),this.surveys=new(0,o.YKeyValue)(this.doc.getArray("s")),this.chat=new(0,o.YKeyValue)(this.doc.getArray("chat"));const r=this;setTimeout((()=>{r.initialized=!0}),5e3)}init(t){this.initState=t,this.length=Math.max(this.length,t.length);const e=this;this.doc.transact((()=>{for(let r=0;r<t.length;r++)e.initMap(this.quizzes,r,t[r].q),e.initMap(this.surveys,r,t[r].s),e.initText(r,t[r].c);e.peers.set(e.peerID,!0)}),this.peerID),this.registerCallbacks()}registerCallbacks(){this.peers.observe((t=>{const e=this.getPeers();this.callback(e,"peer")})),this.cursors.observe((t=>{const e=this.getPeers();this.callback(this.getCursors(e),"cursor")})),this.quizzes.on("change",(t=>{const e=this.getUpdates(this.quizzes,t);e&&this.callback(e,"quiz")})),this.surveys.on("change",(t=>{const e=this.getUpdates(this.surveys,t);e&&this.callback(e,"survey")})),this.chat.on("change",(t=>{const e=[];let r;for(let[n,s]of t)"add"===s.action&&(r=s.newValue,r.id=parseInt(n),e.push(r));e.length>0&&this.callback(e,"chat")})),this.codes.observeDeep((t=>{const e=new Set;for(const r of t){const n=r.currentTarget.keys();for(const r of n)try{const[t]=JSON.parse(r);e.add(t)}catch(t){}}e.size>0&&this.callback(this.getCode(e),"code")})),this.peers.set(this.peerID,!0)}encode(){return s.encodeStateAsUpdate(this.doc)}destroy(){this.doc.destroy()}applyUpdate(t,e=!1){this.doc.transact((()=>{e?(this.doc.destroy(),this.doc=new s.Doc,s.applyUpdate(this.doc,t),this.peers=this.doc.getMap(c),this.cursors=this.doc.getMap(l),this.codes=this.doc.getMap("c"),this.quizzes=new(0,o.YKeyValue)(this.doc.getArray("q")),this.surveys=new(0,o.YKeyValue)(this.doc.getArray("s")),this.chat=new(0,o.YKeyValue)(this.doc.getArray("chat")),this.init(this.initState)):s.applyUpdate(this.doc,t)}))}log(){console.warn("*********** PEERS ***********"),console.warn(this.peers.toJSON()),console.warn("*********** STATE ***********"),console.warn(this.doc.toJSON())}initMap(t,e,r){if(0===r.length)return;let n;for(let s=0;s<r.length;s++){n=t.get(this.id(e,s)),n||(n={});for(const t in r[s])n[t]=r[s][t];t.set(this.id(e,s),n)}}initText(t,e){if(0!==e.length)for(let r=0;r<e.length;r++)for(let n=0;n<e[r].length;n++)this.initCode(t,r,n,e[r][n])}diff(t){return s.encodeStateAsUpdate(this.doc,t)}getCode(t){let e=[];for(const r of t)e.push({id:r,data:this.getAllTexts(r)});return e}getCursors(t){const e=[],r=this.cursors.toJSON();for(let n of t)n!==this.peerID&&void 0!==r[n]&&e.push(r[n]);return e}getPeers(){const t=this.peers.toJSON();return t?Object.entries(t).filter((([t,e])=>e)).map((([t,e])=>t)):[]}removePeer(t){this.doc.transact((()=>{this.peers.set(t||this.peerID,!1)})),void 0===t&&this.callback(this.encode(),"exit")}id(t,e,r){return void 0===r?JSON.stringify([t,e]):JSON.stringify([t,e,r])}getMap(t,e,r){return this.doc.getMap(this.id(e,r))}getAllMaps(t){const e=[];for(let r=0;r<this.length;r++){let n=[];for(let e=0;t.has(this.id(r,e));e++)n.push(t.get(this.id(r,e)));e.push(n)}return e}getMaps(t,e){const r=[];for(let n=0;e.has(this.id(t,n));n++)r.push(e.get(this.id(t,n)));return r}getAllTexts(t){let e,r=[];for(let n=0;this.codes.has(this.id(t,n,0));n++){let s=[];for(let r=0;this.codes.has(this.id(t,n,r));r++)e=this.codes.get(this.id(t,n,r)),s.push(e?.toString()||"");r.push(s)}return r}addQuiz(t,e,r){this.addRecord(this.quizzes,t,e,r)}addSurvey(t,e,r){this.addRecord(this.surveys,t,e,r)}addRecord(t,e,r,n){let s=t.get(this.id(e,r));s||(s={}),s[this.peerID]=n,t.set(this.id(e,r),s)}initCode(t,e,r,n){if(!this.codes.has(this.id(t,e,r))){const i=this.doc.clientID;this.doc.clientID=0;const o=new s.Text;o.insert(0,n),this.codes.set(this.id(t,e,r),o),this.doc.clientID=i}}addChatMessage(t){this.chat.set(""+Date.now(),{color:this.getColor(),message:t,user:this.peerID})}updateCode(t,e,r,n){this.codes.has(this.id(t,e,r))&&this.doc.transact((()=>{const s=this.codes.get(this.id(t,e,r));if(void 0!==s)for(let t of n)switch(t.action){case"insert":s.insert(t.index,t.content);break;case"remove":s.delete(t.index,t.content.length);break;default:console.warn("Sync code, unknown action ->",t)}}),"code")}getColor(){return this.color||(this.color=i.getColorFor(this.peerID)),this.color}setCursor(t,e){this.doc.transact((()=>{this.cursors.set(this.peerID,{id:this.peerID,section:t,project:e.project,file:e.file,state:e.state,color:this.getColor()})}),"cursor")}removeCursor(){this.cursors.delete(this.peerID)}getUpdates(t,e){const r=new Set,n=[];for(const[s,i]of e)switch(i.action){case"update":if(JSON.stringify(Object.keys(i.oldValue).sort())!==JSON.stringify(Object.keys(i.newValue).sort())){n.push([s,{...i.oldValue,...i.newValue}]);continue}case"add":try{const[t]=JSON.parse(s);r.add(t)}catch(t){}}const s=[];for(const e of r)s.push({id:e,data:this.getMaps(e,t)});for(const[e,r]of n)t.set(e,r);return s.length>0?s:null}}})),r.register("7I2MU",(function(n,s){t(n.exports,"Doc",(function(){return N})),t(n.exports,"Text",(function(){return Se})),t(n.exports,"applyUpdate",(function(){return G})),t(n.exports,"encodeStateAsUpdate",(function(){return Y}));var i=r("fACbm"),o=r("kDMzp"),c=r("iUL32"),l=r("cuboK"),a=r("j3EDv"),h=r("heYZO"),u=r("9c5sf"),d=r("hpG0a"),f=r("f6bdK"),g=r("jtAN9"),p=r("diuv2"),w=r("ixCIn"),m=(w=r("ixCIn"),r("aYKIU")),y=r("fK7I3"),b=r("37RhN"),k=(r("k2yVv"),r("fJq6z"),r("fiX3Z")),_=r("gBQSU");i.Observable;class x{constructor(t,e){this.clock=t,this.len=e}}class S{constructor(){this.clients=new Map}}const E=(t,e,r)=>e.clients.forEach(((e,n)=>{const s=t.doc.store.clients.get(n);for(let n=0;n<e.length;n++){const i=e[n];pt(t,s,i.clock,i.len,r)}})),C=(t,e)=>{const r=t.clients.get(e.client);return void 0!==r&&null!==((t,e)=>{let r=0,n=t.length-1;for(;r<=n;){const s=c.floor((r+n)/2),i=t[s],o=i.clock;if(o<=e){if(e<o+i.len)return s;r=s+1}else n=s-1}return null})(r,e.clock)},D=t=>{t.clients.forEach((t=>{let e,r;for(t.sort(((t,e)=>t.clock-e.clock)),e=1,r=1;e<t.length;e++){const n=t[r-1],s=t[e];n.clock+n.len>=s.clock?n.len=c.max(n.len,s.clock+s.len-n.clock):(r<e&&(t[r]=s),r++)}t.length=r}))},U=t=>{const e=new S;for(let r=0;r<t.length;r++)t[r].clients.forEach(((n,s)=>{if(!e.clients.has(s)){const i=n.slice();for(let e=r+1;e<t.length;e++)o.appendTo(i,t[e].clients.get(s)||[]);e.clients.set(s,i)}}));return D(e),e},v=(t,e,r,n)=>{l.setIfUndefined(t.clients,e,(()=>[])).push(new x(r,n))},I=()=>new S,A=(t,e)=>{a.writeVarUint(t.restEncoder,e.clients.size),o.from(e.clients.entries()).sort(((t,e)=>e[0]-t[0])).forEach((([e,r])=>{t.resetDsCurVal(),a.writeVarUint(t.restEncoder,e);const n=r.length;a.writeVarUint(t.restEncoder,n);for(let e=0;e<n;e++){const n=r[e];t.writeDsClock(n.clock),t.writeDsLen(n.len)}}))},T=t=>{const e=new S,r=h.readVarUint(t.restDecoder);for(let n=0;n<r;n++){t.resetDsCurVal();const r=h.readVarUint(t.restDecoder),n=h.readVarUint(t.restDecoder);if(n>0){const s=l.setIfUndefined(e.clients,r,(()=>[]));for(let e=0;e<n;e++)s.push(new x(t.readDsClock(),t.readDsLen()))}}return e},O=(t,e,r)=>{const n=new S,s=h.readVarUint(t.restDecoder);for(let i=0;i<s;i++){t.resetDsCurVal();const s=h.readVarUint(t.restDecoder),i=h.readVarUint(t.restDecoder),o=r.clients.get(s)||[],c=lt(r,s);for(let r=0;r<i;r++){const r=t.readDsClock(),i=r+t.readDsLen();if(r<c){c<i&&v(n,s,c,i-c);let t=ht(o,r),l=o[t];for(!l.deleted&&l.id.clock<r&&(o.splice(t+1,0,Xe(e,l,r-l.id.clock)),t++);t<o.length&&(l=o[t++],l.id.clock<i);)l.deleted||(i<l.id.clock+l.length&&o.splice(t,0,Xe(e,l,i-l.id.clock)),l.delete(e))}else v(n,s,r,i-r)}}if(n.clients.size>0){const t=new P;return a.writeVarUint(t.restEncoder,0),A(t,n),t.toUint8Array()}return null},V=u.uint32;class N extends i.Observable{constructor({guid:t=u.uuidv4(),collectionid:e=null,gc:r=!0,gcFilter:n=(()=>!0),meta:s=null,autoLoad:i=!1,shouldLoad:o=!0}={}){super(),this.gc=r,this.gcFilter=n,this.clientID=V(),this.guid=t,this.collectionid=e,this.share=new Map,this.store=new ot,this._transaction=null,this._transactionCleanups=[],this.subdocs=new Set,this._item=null,this.shouldLoad=o,this.autoLoad=i,this.meta=s,this.isLoaded=!1,this.isSynced=!1,this.whenLoaded=d.create((t=>{this.on("load",(()=>{this.isLoaded=!0,t(this)}))}));const c=()=>d.create((t=>{const e=r=>{void 0!==r&&!0!==r||(this.off("sync",e),t())};this.on("sync",e)}));this.on("sync",(t=>{!1===t&&this.isSynced&&(this.whenSynced=c()),this.isSynced=void 0===t||!0===t,this.isSynced&&!this.isLoaded&&this.emit("load",[])})),this.whenSynced=c()}load(){const t=this._item;null===t||this.shouldLoad||_t(t.parent.doc,(t=>{t.subdocsLoaded.add(this)}),null,!0),this.shouldLoad=!0}getSubdocs(){return this.subdocs}getSubdocGuids(){return new Set(o.from(this.subdocs).map((t=>t.guid)))}transact(t,e=null){return _t(this,t,e)}get(t,e=jt){const r=l.setIfUndefined(this.share,t,(()=>{const t=new e;return t._integrate(this,null),t})),n=r.constructor;if(e!==jt&&n!==e){if(n===jt){const n=new e;n._map=r._map,r._map.forEach((t=>{for(;null!==t;t=t.left)t.parent=n})),n._start=r._start;for(let t=n._start;null!==t;t=t.right)t.parent=n;return n._length=r._length,this.share.set(t,n),n._integrate(this,null),n}throw new Error(`Type with the name ${t} has already been defined with a different constructor`)}return r}getArray(t=""){return this.get(t,ie)}getText(t=""){return this.get(t,Se)}getMap(t=""){return this.get(t,ce)}getXmlElement(t=""){return this.get(t,De)}getXmlFragment(t=""){return this.get(t,Ce)}toJSON(){const t={};return this.share.forEach(((e,r)=>{t[r]=e.toJSON()})),t}destroy(){o.from(this.subdocs).forEach((t=>t.destroy()));const t=this._item;if(null!==t){this._item=null;const e=t.content;e.doc=new N({guid:this.guid,...e.opts,shouldLoad:!1}),e.doc._item=t,_t(t.parent.doc,(r=>{const n=e.doc;t.deleted||r.subdocsAdded.add(n),r.subdocsRemoved.add(this)}),null,!0)}this.emit("destroyed",[!0]),this.emit("destroy",[this]),super.destroy()}on(t,e){super.on(t,e)}off(t,e){super.off(t,e)}}class M{constructor(t){this.restDecoder=t}resetDsCurVal(){}readDsClock(){return h.readVarUint(this.restDecoder)}readDsLen(){return h.readVarUint(this.restDecoder)}}class R extends M{readLeftID(){return rt(h.readVarUint(this.restDecoder),h.readVarUint(this.restDecoder))}readRightID(){return rt(h.readVarUint(this.restDecoder),h.readVarUint(this.restDecoder))}readClient(){return h.readVarUint(this.restDecoder)}readInfo(){return h.readUint8(this.restDecoder)}readString(){return h.readVarString(this.restDecoder)}readParentInfo(){return 1===h.readVarUint(this.restDecoder)}readTypeRef(){return h.readVarUint(this.restDecoder)}readLen(){return h.readVarUint(this.restDecoder)}readAny(){return h.readAny(this.restDecoder)}readBuf(){return f.copyUint8Array(h.readVarUint8Array(this.restDecoder))}readJSON(){return JSON.parse(h.readVarString(this.restDecoder))}readKey(){return h.readVarString(this.restDecoder)}}class L{constructor(t){this.dsCurrVal=0,this.restDecoder=t}resetDsCurVal(){this.dsCurrVal=0}readDsClock(){return this.dsCurrVal+=h.readVarUint(this.restDecoder),this.dsCurrVal}readDsLen(){const t=h.readVarUint(this.restDecoder)+1;return this.dsCurrVal+=t,t}}class B extends L{constructor(t){super(t),this.keys=[],h.readVarUint(t),this.keyClockDecoder=new h.IntDiffOptRleDecoder(h.readVarUint8Array(t)),this.clientDecoder=new h.UintOptRleDecoder(h.readVarUint8Array(t)),this.leftClockDecoder=new h.IntDiffOptRleDecoder(h.readVarUint8Array(t)),this.rightClockDecoder=new h.IntDiffOptRleDecoder(h.readVarUint8Array(t)),this.infoDecoder=new h.RleDecoder(h.readVarUint8Array(t),h.readUint8),this.stringDecoder=new h.StringDecoder(h.readVarUint8Array(t)),this.parentInfoDecoder=new h.RleDecoder(h.readVarUint8Array(t),h.readUint8),this.typeRefDecoder=new h.UintOptRleDecoder(h.readVarUint8Array(t)),this.lenDecoder=new h.UintOptRleDecoder(h.readVarUint8Array(t))}readLeftID(){return new tt(this.clientDecoder.read(),this.leftClockDecoder.read())}readRightID(){return new tt(this.clientDecoder.read(),this.rightClockDecoder.read())}readClient(){return this.clientDecoder.read()}readInfo(){return this.infoDecoder.read()}readString(){return this.stringDecoder.read()}readParentInfo(){return 1===this.parentInfoDecoder.read()}readTypeRef(){return this.typeRefDecoder.read()}readLen(){return this.lenDecoder.read()}readAny(){return h.readAny(this.restDecoder)}readBuf(){return h.readVarUint8Array(this.restDecoder)}readJSON(){return h.readAny(this.restDecoder)}readKey(){const t=this.keyClockDecoder.read();if(t<this.keys.length)return this.keys[t];{const t=this.stringDecoder.read();return this.keys.push(t),t}}}class z{constructor(){this.restEncoder=a.createEncoder()}toUint8Array(){return a.toUint8Array(this.restEncoder)}resetDsCurVal(){}writeDsClock(t){a.writeVarUint(this.restEncoder,t)}writeDsLen(t){a.writeVarUint(this.restEncoder,t)}}class J extends z{writeLeftID(t){a.writeVarUint(this.restEncoder,t.client),a.writeVarUint(this.restEncoder,t.clock)}writeRightID(t){a.writeVarUint(this.restEncoder,t.client),a.writeVarUint(this.restEncoder,t.clock)}writeClient(t){a.writeVarUint(this.restEncoder,t)}writeInfo(t){a.writeUint8(this.restEncoder,t)}writeString(t){a.writeVarString(this.restEncoder,t)}writeParentInfo(t){a.writeVarUint(this.restEncoder,t?1:0)}writeTypeRef(t){a.writeVarUint(this.restEncoder,t)}writeLen(t){a.writeVarUint(this.restEncoder,t)}writeAny(t){a.writeAny(this.restEncoder,t)}writeBuf(t){a.writeVarUint8Array(this.restEncoder,t)}writeJSON(t){a.writeVarString(this.restEncoder,JSON.stringify(t))}writeKey(t){a.writeVarString(this.restEncoder,t)}}class j{constructor(){this.restEncoder=a.createEncoder(),this.dsCurrVal=0}toUint8Array(){return a.toUint8Array(this.restEncoder)}resetDsCurVal(){this.dsCurrVal=0}writeDsClock(t){const e=t-this.dsCurrVal;this.dsCurrVal=t,a.writeVarUint(this.restEncoder,e)}writeDsLen(t){0===t&&g.unexpectedCase(),a.writeVarUint(this.restEncoder,t-1),this.dsCurrVal+=t}}class P extends j{constructor(){super(),this.keyMap=new Map,this.keyClock=0,this.keyClockEncoder=new a.IntDiffOptRleEncoder,this.clientEncoder=new a.UintOptRleEncoder,this.leftClockEncoder=new a.IntDiffOptRleEncoder,this.rightClockEncoder=new a.IntDiffOptRleEncoder,this.infoEncoder=new a.RleEncoder(a.writeUint8),this.stringEncoder=new a.StringEncoder,this.parentInfoEncoder=new a.RleEncoder(a.writeUint8),this.typeRefEncoder=new a.UintOptRleEncoder,this.lenEncoder=new a.UintOptRleEncoder}toUint8Array(){const t=a.createEncoder();return a.writeVarUint(t,0),a.writeVarUint8Array(t,this.keyClockEncoder.toUint8Array()),a.writeVarUint8Array(t,this.clientEncoder.toUint8Array()),a.writeVarUint8Array(t,this.leftClockEncoder.toUint8Array()),a.writeVarUint8Array(t,this.rightClockEncoder.toUint8Array()),a.writeVarUint8Array(t,a.toUint8Array(this.infoEncoder)),a.writeVarUint8Array(t,this.stringEncoder.toUint8Array()),a.writeVarUint8Array(t,a.toUint8Array(this.parentInfoEncoder)),a.writeVarUint8Array(t,this.typeRefEncoder.toUint8Array()),a.writeVarUint8Array(t,this.lenEncoder.toUint8Array()),a.writeUint8Array(t,a.toUint8Array(this.restEncoder)),a.toUint8Array(t)}writeLeftID(t){this.clientEncoder.write(t.client),this.leftClockEncoder.write(t.clock)}writeRightID(t){this.clientEncoder.write(t.client),this.rightClockEncoder.write(t.clock)}writeClient(t){this.clientEncoder.write(t)}writeInfo(t){this.infoEncoder.write(t)}writeString(t){this.stringEncoder.write(t)}writeParentInfo(t){this.parentInfoEncoder.write(t?1:0)}writeTypeRef(t){this.typeRefEncoder.write(t)}writeLen(t){this.lenEncoder.write(t)}writeAny(t){a.writeAny(this.restEncoder,t)}writeBuf(t){a.writeVarUint8Array(this.restEncoder,t)}writeJSON(t){a.writeAny(this.restEncoder,t)}writeKey(t){const e=this.keyMap.get(t);void 0===e?(this.keyClockEncoder.write(this.keyClock++),this.stringEncoder.write(t)):this.keyClockEncoder.write(e)}}const K=(t,e,r)=>{const n=new Map;r.forEach(((t,r)=>{lt(e,r)>t&&n.set(r,t)})),ct(e).forEach(((t,e)=>{r.has(e)||n.set(e,0)})),a.writeVarUint(t.restEncoder,n.size),o.from(n.entries()).sort(((t,e)=>e[0]-t[0])).forEach((([r,n])=>{((t,e,r,n)=>{n=c.max(n,e[0].id.clock);const s=ht(e,n);a.writeVarUint(t.restEncoder,e.length-s),t.writeClient(r),a.writeVarUint(t.restEncoder,n);const i=e[s];i.write(t,n-i.id.clock);for(let r=s+1;r<e.length;r++)e[r].write(t,0)})(t,e.clients.get(r),r,n)}))},F=(t,e,r,n=B)=>{const s=h.createDecoder(e);((t,e,r,n=new B(t))=>{_t(e,(t=>{t.local=!1;let e=!1;const r=t.doc,s=r.store,i=((t,e)=>{const r=l.create(),n=h.readVarUint(t.restDecoder);for(let s=0;s<n;s++){const n=h.readVarUint(t.restDecoder),s=new Array(n),i=t.readClient();let o=h.readVarUint(t.restDecoder);r.set(i,{i:0,refs:s});for(let r=0;r<n;r++){const n=t.readInfo();switch(p.BITS5&n){case 0:{const e=t.readLen();s[r]=new Te(rt(i,o),e),o+=e;break}case 10:{const e=h.readVarUint(t.restDecoder);s[r]=new tr(rt(i,o),e),o+=e;break}default:{const c=!(n&(p.BIT7|p.BIT8)),l=new Ze(rt(i,o),null,(n&p.BIT8)===p.BIT8?t.readLeftID():null,null,(n&p.BIT7)===p.BIT7?t.readRightID():null,c?t.readParentInfo()?e.get(t.readString()):t.readLeftID():null,c&&(n&p.BIT6)===p.BIT6?t.readString():null,He(t,n));s[r]=l,o+=l.length}}}}return r})(n,r),c=((t,e,r)=>{const n=[];let s=o.from(r.keys()).sort(((t,e)=>t-e));if(0===s.length)return null;const i=()=>{if(0===s.length)return null;let t=r.get(s[s.length-1]);for(;t.refs.length===t.i;){if(s.pop(),!(s.length>0))return null;t=r.get(s[s.length-1])}return t};let c=i();if(null===c)return null;const h=new ot,u=new Map,d=(t,e)=>{const r=u.get(t);(null==r||r>e)&&u.set(t,e)};let f=c.refs[c.i++];const g=new Map,p=()=>{for(const t of n){const e=t.id.client,n=r.get(e);n?(n.i--,h.clients.set(e,n.refs.slice(n.i)),r.delete(e),n.i=0,n.refs=[]):h.clients.set(e,[t]),s=s.filter((t=>t!==e))}n.length=0};for(;;){if(f.constructor!==tr){const s=l.setIfUndefined(g,f.id.client,(()=>lt(e,f.id.client)))-f.id.clock;if(s<0)n.push(f),d(f.id.client,f.id.clock-1),p();else{const i=f.getMissing(t,e);if(null!==i){n.push(f);const t=r.get(i)||{refs:[],i:0};if(t.refs.length!==t.i){f=t.refs[t.i++];continue}d(i,lt(e,i)),p()}else(0===s||s<f.length)&&(f.integrate(t,s),g.set(f.id.client,f.id.clock+f.length))}}if(n.length>0)f=n.pop();else if(null!==c&&c.i<c.refs.length)f=c.refs[c.i++];else{if(c=i(),null===c)break;f=c.refs[c.i++]}}if(h.clients.size>0){const t=new P;return K(t,h,new Map),a.writeVarUint(t.restEncoder,0),{missing:u,update:t.toUint8Array()}}return null})(t,s,i),u=s.pendingStructs;if(u){for(const[t,r]of u.missing)if(r<lt(s,t)){e=!0;break}if(c){for(const[t,e]of c.missing){const r=u.missing.get(t);(null==r||r>e)&&u.missing.set(t,e)}u.update=Dt([u.update,c.update])}}else s.pendingStructs=c;const d=O(n,t,s);if(s.pendingDs){const e=new B(h.createDecoder(s.pendingDs));h.readVarUint(e.restDecoder);const r=O(e,t,s);s.pendingDs=d&&r?Dt([d,r]):d||r}else s.pendingDs=d;if(e){const e=s.pendingStructs.update;s.pendingStructs=null,F(t.doc,e)}}),r,!1)})(s,t,r,new n(s))},G=(t,e,r)=>F(t,e,r,R),q=(t,e=new Uint8Array([0]),r=new P)=>{((t,e,r=new Map)=>{K(t,e.store,r),A(t,(t=>{const e=I();return t.clients.forEach(((t,r)=>{const n=[];for(let e=0;e<t.length;e++){const r=t[e];if(r.deleted){const s=r.id.clock;let i=r.length;if(e+1<t.length)for(let r=t[e+1];e+1<t.length&&r.deleted;r=t[1+ ++e])i+=r.length;n.push(new x(s,i))}}n.length>0&&e.clients.set(r,n)})),e})(e.store))})(r,t,W(e));const n=[r.toUint8Array()];if(t.store.pendingDs&&n.push(t.store.pendingDs),t.store.pendingStructs&&n.push(Ut(t.store.pendingStructs.update,e)),n.length>1){if(r.constructor===J)return Et(n.map(((t,e)=>0===e?t:Tt(t))));if(r.constructor===P)return Dt(n)}return n[0]},Y=(t,e)=>q(t,e,new J),W=t=>(t=>{const e=new Map,r=h.readVarUint(t.restDecoder);for(let n=0;n<r;n++){const r=h.readVarUint(t.restDecoder),n=h.readVarUint(t.restDecoder);e.set(r,n)}return e})(new M(h.createDecoder(t)));class ${constructor(){this.l=[]}}const X=()=>new $,Z=(t,e)=>t.l.push(e),H=(t,e)=>{const r=t.l,n=r.length;t.l=r.filter((t=>e!==t)),n===t.l.length&&console.error("[yjs] Tried to remove event handler that doesn't exist.")},Q=(t,e,r)=>w.callAll(t.l,[e,r]);class tt{constructor(t,e){this.client=t,this.clock=e}}const et=(t,e)=>t===e||null!==t&&null!==e&&t.client===e.client&&t.clock===e.clock,rt=(t,e)=>new tt(t,e);class nt{constructor(t,e){this.ds=t,this.sv=e}}const st=(((t,e)=>{new nt(t,e)})(I(),new Map),(t,e)=>void 0===e?!t.deleted:e.sv.has(t.id.client)&&(e.sv.get(t.id.client)||0)>t.id.clock&&!C(e.ds,t.id)),it=(t,e)=>{const r=l.setIfUndefined(t.meta,it,m.create),n=t.doc.store;r.has(e)||(e.sv.forEach(((e,r)=>{e<lt(n,r)&&ft(t,rt(r,e))})),E(t,e.ds,(t=>{})),r.add(e))};class ot{constructor(){this.clients=new Map,this.pendingStructs=null,this.pendingDs=null}}const ct=t=>{const e=new Map;return t.clients.forEach(((t,r)=>{const n=t[t.length-1];e.set(r,n.id.clock+n.length)})),e},lt=(t,e)=>{const r=t.clients.get(e);if(void 0===r)return 0;const n=r[r.length-1];return n.id.clock+n.length},at=(t,e)=>{let r=t.clients.get(e.id.client);if(void 0===r)r=[],t.clients.set(e.id.client,r);else{const t=r[r.length-1];if(t.id.clock+t.length!==e.id.clock)throw g.unexpectedCase()}r.push(e)},ht=(t,e)=>{let r=0,n=t.length-1,s=t[n],i=s.id.clock;if(i===e)return n;let o=c.floor(e/(i+s.length-1)*n);for(;r<=n;){if(s=t[o],i=s.id.clock,i<=e){if(e<i+s.length)return o;r=o+1}else n=o-1;o=c.floor((r+n)/2)}throw g.unexpectedCase()},ut=(t,e)=>{const r=t.clients.get(e.client);return r[ht(r,e.clock)]},dt=(t,e,r)=>{const n=ht(e,r),s=e[n];return s.id.clock<r&&s instanceof Ze?(e.splice(n+1,0,Xe(t,s,r-s.id.clock)),n+1):n},ft=(t,e)=>{const r=t.doc.store.clients.get(e.client);return r[dt(t,r,e.clock)]},gt=(t,e,r)=>{const n=e.clients.get(r.client),s=ht(n,r.clock),i=n[s];return r.clock!==i.id.clock+i.length-1&&i.constructor!==Te&&n.splice(s+1,0,Xe(t,i,r.clock-i.id.clock+1)),i},pt=(t,e,r,n,s)=>{if(0===n)return;const i=r+n;let o,c=dt(t,e,r);do{o=e[c++],i<o.id.clock+o.length&&dt(t,e,i),s(o)}while(c<e.length&&e[c].id.clock<i)};class wt{constructor(t,e,r){this.doc=t,this.deleteSet=new S,this.beforeState=ct(t.store),this.afterState=new Map,this.changed=new Map,this.changedParentTypes=new Map,this._mergeStructs=[],this.origin=e,this.meta=new Map,this.local=r,this.subdocsAdded=new Set,this.subdocsRemoved=new Set,this.subdocsLoaded=new Set,this._needFormattingCleanup=!1}}const mt=(t,e)=>!(0===e.deleteSet.clients.size&&!l.any(e.afterState,((t,r)=>e.beforeState.get(r)!==t))||(D(e.deleteSet),((t,e)=>{K(t,e.doc.store,e.beforeState)})(t,e),A(t,e.deleteSet),0)),yt=(t,e,r)=>{const n=e._item;(null===n||n.id.clock<(t.beforeState.get(n.id.client)||0)&&!n.deleted)&&l.setIfUndefined(t.changed,e,m.create).add(r)},bt=(t,e)=>{let r=t[e],n=t[e-1],s=e;for(;s>0&&n.deleted===r.deleted&&n.constructor===r.constructor&&n.mergeWith(r);r=n,n=t[--s-1])r instanceof Ze&&null!==r.parentSub&&r.parent._map.get(r.parentSub)===r&&r.parent._map.set(r.parentSub,n);const i=e-s;return i&&t.splice(e+1-i,i),i},kt=(t,e)=>{if(e<t.length){const r=t[e],n=r.doc,s=n.store,i=r.deleteSet,o=r._mergeStructs;try{D(i),r.afterState=ct(r.doc.store),n.emit("beforeObserverCalls",[r,n]);const t=[];r.changed.forEach(((e,n)=>t.push((()=>{null!==n._item&&n._item.deleted||n._callObserver(r,e)})))),t.push((()=>{r.changedParentTypes.forEach(((t,e)=>{e._dEH.l.length>0&&(null===e._item||!e._item.deleted)&&((t=t.filter((t=>null===t.target._item||!t.target._item.deleted))).forEach((t=>{t.currentTarget=e,t._path=null})),t.sort(((t,e)=>t.path.length-e.path.length)),Q(e._dEH,t,r))}))})),t.push((()=>n.emit("afterTransaction",[r,n]))),(0,w.callAll)(t,[]),r._needFormattingCleanup&&ke(r)}finally{n.gc&&((t,e,r)=>{for(const[n,s]of t.clients.entries()){const t=e.clients.get(n);for(let n=s.length-1;n>=0;n--){const i=s[n],o=i.clock+i.len;for(let n=ht(t,i.clock),s=t[n];n<t.length&&s.id.clock<o;s=t[++n]){const s=t[n];if(i.clock+i.len<=s.id.clock)break;s instanceof Ze&&s.deleted&&!s.keep&&r(s)&&s.gc(e,!1)}}}})(i,s,n.gcFilter),((t,e)=>{t.clients.forEach(((t,r)=>{const n=e.clients.get(r);for(let e=t.length-1;e>=0;e--){const r=t[e];for(let t=c.min(n.length-1,1+ht(n,r.clock+r.len-1)),e=n[t];t>0&&e.id.clock>=r.clock;e=n[t])t-=1+bt(n,t)}}))})(i,s),r.afterState.forEach(((t,e)=>{const n=r.beforeState.get(e)||0;if(n!==t){const t=s.clients.get(e),r=c.max(ht(t,n),1);for(let e=t.length-1;e>=r;)e-=1+bt(t,e)}}));for(let t=o.length-1;t>=0;t--){const{client:e,clock:r}=o[t].id,n=s.clients.get(e),i=ht(n,r);i+1<n.length&&bt(n,i+1)>1||i>0&&bt(n,i)}if(r.local||r.afterState.get(n.clientID)===r.beforeState.get(n.clientID)||(y.print(b.ORANGE,b.BOLD,"[yjs] ",b.UNBOLD,b.RED,"Changed the client-id because another client seems to be using it."),n.clientID=V()),n.emit("afterTransactionCleanup",[r,n]),n._observers.has("update")){const t=new J;mt(t,r)&&n.emit("update",[t.toUint8Array(),r.origin,n,r])}if(n._observers.has("updateV2")){const t=new P;mt(t,r)&&n.emit("updateV2",[t.toUint8Array(),r.origin,n,r])}const{subdocsAdded:l,subdocsLoaded:a,subdocsRemoved:h}=r;(l.size>0||h.size>0||a.size>0)&&(l.forEach((t=>{t.clientID=n.clientID,null==t.collectionid&&(t.collectionid=n.collectionid),n.subdocs.add(t)})),h.forEach((t=>n.subdocs.delete(t))),n.emit("subdocs",[{loaded:a,added:l,removed:h},n,r]),h.forEach((t=>t.destroy()))),t.length<=e+1?(n._transactionCleanups=[],n.emit("afterAllTransactions",[n,t])):kt(t,e+1)}}},_t=(t,e,r=null,n=!0)=>{const s=t._transactionCleanups;let i=!1,o=null;null===t._transaction&&(i=!0,t._transaction=new wt(t,r,n),s.push(t._transaction),1===s.length&&t.emit("beforeAllTransactions",[t]),t.emit("beforeTransaction",[t._transaction,t]));try{o=e(t._transaction)}finally{if(i){const e=t._transaction===s[0];t._transaction=null,e&&kt(s,0)}}return o};i.Observable;class xt{constructor(t,e){this.gen=function*(t){const e=h.readVarUint(t.restDecoder);for(let r=0;r<e;r++){const e=h.readVarUint(t.restDecoder),r=t.readClient();let n=h.readVarUint(t.restDecoder);for(let s=0;s<e;s++){const e=t.readInfo();if(10===e){const e=h.readVarUint(t.restDecoder);yield new tr(rt(r,n),e),n+=e}else if(p.BITS5&e){const s=!(e&(p.BIT7|p.BIT8)),i=new Ze(rt(r,n),null,(e&p.BIT8)===p.BIT8?t.readLeftID():null,null,(e&p.BIT7)===p.BIT7?t.readRightID():null,s?t.readParentInfo()?t.readString():t.readLeftID():null,s&&(e&p.BIT6)===p.BIT6?t.readString():null,He(t,e));yield i,n+=i.length}else{const e=t.readLen();yield new Te(rt(r,n),e),n+=e}}}}(t),this.curr=null,this.done=!1,this.filterSkips=e,this.next()}next(){do{this.curr=this.gen.next().value||null}while(this.filterSkips&&null!==this.curr&&this.curr.constructor===tr);return this.curr}}class St{constructor(t){this.currClient=0,this.startClock=0,this.written=0,this.encoder=t,this.clientStructs=[]}}const Et=t=>Dt(t,R,J),Ct=(t,e)=>{if(t.constructor===Te){const{client:r,clock:n}=t.id;return new Te(rt(r,n+e),t.length-e)}if(t.constructor===tr){const{client:r,clock:n}=t.id;return new tr(rt(r,n+e),t.length-e)}{const r=t,{client:n,clock:s}=r.id;return new Ze(rt(n,s+e),null,rt(n,s+e-1),null,r.rightOrigin,r.parent,r.parentSub,r.content.splice(e))}},Dt=(t,e=B,r=P)=>{if(1===t.length)return t[0];const n=t.map((t=>new e(h.createDecoder(t))));let s=n.map((t=>new xt(t,!0))),i=null;const o=new r,c=new St(o);for(;s=s.filter((t=>null!==t.curr)),s.sort(((t,e)=>{if(t.curr.id.client===e.curr.id.client){const r=t.curr.id.clock-e.curr.id.clock;return 0===r?t.curr.constructor===e.curr.constructor?0:t.curr.constructor===tr?1:-1:r}return e.curr.id.client-t.curr.id.client})),0!==s.length;){const t=s[0],e=t.curr.id.client;if(null!==i){let r=t.curr,n=!1;for(;null!==r&&r.id.clock+r.length<=i.struct.id.clock+i.struct.length&&r.id.client>=i.struct.id.client;)r=t.next(),n=!0;if(null===r||r.id.client!==e||n&&r.id.clock>i.struct.id.clock+i.struct.length)continue;if(e!==i.struct.id.client)It(c,i.struct,i.offset),i={struct:r,offset:0},t.next();else if(i.struct.id.clock+i.struct.length<r.id.clock)if(i.struct.constructor===tr)i.struct.length=r.id.clock+r.length-i.struct.id.clock;else{It(c,i.struct,i.offset);const t=r.id.clock-i.struct.id.clock-i.struct.length;i={struct:new tr(rt(e,i.struct.id.clock+i.struct.length),t),offset:0}}else{const e=i.struct.id.clock+i.struct.length-r.id.clock;e>0&&(i.struct.constructor===tr?i.struct.length-=e:r=Ct(r,e)),i.struct.mergeWith(r)||(It(c,i.struct,i.offset),i={struct:r,offset:0},t.next())}}else i={struct:t.curr,offset:0},t.next();for(let r=t.curr;null!==r&&r.id.client===e&&r.id.clock===i.struct.id.clock+i.struct.length&&r.constructor!==tr;r=t.next())It(c,i.struct,i.offset),i={struct:r,offset:0}}null!==i&&(It(c,i.struct,i.offset),i=null),At(c);const l=n.map((t=>T(t))),a=U(l);return A(o,a),o.toUint8Array()},Ut=(t,e,r=B,n=P)=>{const s=W(e),i=new n,o=new St(i),l=new r(h.createDecoder(t)),a=new xt(l,!1);for(;a.curr;){const t=a.curr,e=t.id.client,r=s.get(e)||0;if(a.curr.constructor!==tr)if(t.id.clock+t.length>r)for(It(o,t,c.max(r-t.id.clock,0)),a.next();a.curr&&a.curr.id.client===e;)It(o,a.curr,0),a.next();else for(;a.curr&&a.curr.id.client===e&&a.curr.id.clock+a.curr.length<=r;)a.next();else a.next()}At(o);const u=T(l);return A(i,u),i.toUint8Array()},vt=t=>{t.written>0&&(t.clientStructs.push({written:t.written,restEncoder:a.toUint8Array(t.encoder.restEncoder)}),t.encoder.restEncoder=a.createEncoder(),t.written=0)},It=(t,e,r)=>{t.written>0&&t.currClient!==e.id.client&&vt(t),0===t.written&&(t.currClient=e.id.client,t.encoder.writeClient(e.id.client),a.writeVarUint(t.encoder.restEncoder,e.id.clock+r)),e.write(t.encoder,r),t.written++},At=t=>{vt(t);const e=t.encoder.restEncoder;a.writeVarUint(e,t.clientStructs.length);for(let r=0;r<t.clientStructs.length;r++){const n=t.clientStructs[r];a.writeVarUint(e,n.written),a.writeUint8Array(e,n.restEncoder)}},Tt=t=>((t,e,r,n)=>{const s=new r(h.createDecoder(t)),i=new xt(s,!1),o=new n,c=new St(o);for(let t=i.curr;null!==t;t=i.next())It(c,e(t),0);At(c);const l=T(s);return A(o,l),o.toUint8Array()})(t,w.id,B,J),Ot="You must not compute changes after the event-handler fired.";class Vt{constructor(t,e){this.target=t,this.currentTarget=t,this.transaction=e,this._changes=null,this._keys=null,this._delta=null,this._path=null}get path(){return this._path||(this._path=Nt(this.currentTarget,this.target))}deletes(t){return C(this.transaction.deleteSet,t.id)}get keys(){if(null===this._keys){if(0===this.transaction.doc._transactionCleanups.length)throw g.create(Ot);const t=new Map,e=this.target;this.transaction.changed.get(e).forEach((r=>{if(null!==r){const n=e._map.get(r);let s,i;if(this.adds(n)){let t=n.left;for(;null!==t&&this.adds(t);)t=t.left;if(this.deletes(n)){if(null===t||!this.deletes(t))return;s="delete",i=o.last(t.content.getContent())}else null!==t&&this.deletes(t)?(s="update",i=o.last(t.content.getContent())):(s="add",i=void 0)}else{if(!this.deletes(n))return;s="delete",i=o.last(n.content.getContent())}t.set(r,{action:s,oldValue:i})}})),this._keys=t}return this._keys}get delta(){return this.changes.delta}adds(t){return t.id.clock>=(this.transaction.beforeState.get(t.id.client)||0)}get changes(){let t=this._changes;if(null===t){if(0===this.transaction.doc._transactionCleanups.length)throw g.create(Ot);const e=this.target,r=m.create(),n=m.create(),s=[];if(t={added:r,deleted:n,delta:s,keys:this.keys},this.transaction.changed.get(e).has(null)){let t=null;const i=()=>{t&&s.push(t)};for(let s=e._start;null!==s;s=s.right)s.deleted?this.deletes(s)&&!this.adds(s)&&(null!==t&&void 0!==t.delete||(i(),t={delete:0}),t.delete+=s.length,n.add(s)):this.adds(s)?(null!==t&&void 0!==t.insert||(i(),t={insert:[]}),t.insert=t.insert.concat(s.content.getContent()),r.add(s)):(null!==t&&void 0!==t.retain||(i(),t={retain:0}),t.retain+=s.length);null!==t&&void 0===t.retain&&i()}this._changes=t}return t}}const Nt=(t,e)=>{const r=[];for(;null!==e._item&&e!==t;){if(null!==e._item.parentSub)r.unshift(e._item.parentSub);else{let t=0,n=e._item.parent._start;for(;n!==e._item&&null!==n;)n.deleted||t++,n=n.right;r.unshift(t)}e=e._item.parent}return r};let Mt=0;class Rt{constructor(t,e){t.marker=!0,this.p=t,this.index=e,this.timestamp=Mt++}}const Lt=(t,e,r)=>{t.p.marker=!1,t.p=e,e.marker=!0,t.index=r,t.timestamp=Mt++},Bt=(t,e)=>{if(null===t._start||0===e||null===t._searchMarker)return null;const r=0===t._searchMarker.length?null:t._searchMarker.reduce(((t,r)=>c.abs(e-t.index)<c.abs(e-r.index)?t:r));let n=t._start,s=0;for(null!==r&&(n=r.p,s=r.index,(t=>{t.timestamp=Mt++})(r));null!==n.right&&s<e;){if(!n.deleted&&n.countable){if(e<s+n.length)break;s+=n.length}n=n.right}for(;null!==n.left&&s>e;)n=n.left,!n.deleted&&n.countable&&(s-=n.length);for(;null!==n.left&&n.left.id.client===n.id.client&&n.left.id.clock+n.left.length===n.id.clock;)n=n.left,!n.deleted&&n.countable&&(s-=n.length);return null!==r&&c.abs(r.index-s)<n.parent.length/80?(Lt(r,n,s),r):((t,e,r)=>{if(t.length>=80){const n=t.reduce(((t,e)=>t.timestamp<e.timestamp?t:e));return Lt(n,e,r),n}{const n=new Rt(e,r);return t.push(n),n}})(t._searchMarker,n,s)},zt=(t,e,r)=>{for(let n=t.length-1;n>=0;n--){const s=t[n];if(r>0){let e=s.p;for(e.marker=!1;e&&(e.deleted||!e.countable);)e=e.left,e&&!e.deleted&&e.countable&&(s.index-=e.length);if(null===e||!0===e.marker){t.splice(n,1);continue}s.p=e,e.marker=!0}(e<s.index||r>0&&e===s.index)&&(s.index=c.max(e,s.index+r))}},Jt=(t,e,r)=>{const n=t,s=e.changedParentTypes;for(;l.setIfUndefined(s,t,(()=>[])).push(r),null!==t._item;)t=t._item.parent;Q(n._eH,r,e)};class jt{constructor(){this._item=null,this._map=new Map,this._start=null,this.doc=null,this._length=0,this._eH=X(),this._dEH=X(),this._searchMarker=null}get parent(){return this._item?this._item.parent:null}_integrate(t,e){this.doc=t,this._item=e}_copy(){throw g.methodUnimplemented()}clone(){throw g.methodUnimplemented()}_write(t){}get _first(){let t=this._start;for(;null!==t&&t.deleted;)t=t.right;return t}_callObserver(t,e){!t.local&&this._searchMarker&&(this._searchMarker.length=0)}observe(t){Z(this._eH,t)}observeDeep(t){Z(this._dEH,t)}unobserve(t){H(this._eH,t)}unobserveDeep(t){H(this._dEH,t)}toJSON(){}}const Pt=(t,e,r)=>{e<0&&(e=t._length+e),r<0&&(r=t._length+r);let n=r-e;const s=[];let i=t._start;for(;null!==i&&n>0;){if(i.countable&&!i.deleted){const t=i.content.getContent();if(t.length<=e)e-=t.length;else{for(let r=e;r<t.length&&n>0;r++)s.push(t[r]),n--;e=0}}i=i.right}return s},Kt=t=>{const e=[];let r=t._start;for(;null!==r;){if(r.countable&&!r.deleted){const t=r.content.getContent();for(let r=0;r<t.length;r++)e.push(t[r])}r=r.right}return e},Ft=(t,e)=>{let r=0,n=t._start;for(;null!==n;){if(n.countable&&!n.deleted){const s=n.content.getContent();for(let n=0;n<s.length;n++)e(s[n],r++,t)}n=n.right}},Gt=(t,e)=>{const r=[];return Ft(t,((n,s)=>{r.push(e(n,s,t))})),r},qt=t=>{let e=t._start,r=null,n=0;return{[Symbol.iterator](){return this},next:()=>{if(null===r){for(;null!==e&&e.deleted;)e=e.right;if(null===e)return{done:!0,value:void 0};r=e.content.getContent(),n=0,e=e.right}const t=r[n++];return r.length<=n&&(r=null),{done:!1,value:t}}}},Yt=(t,e)=>{const r=Bt(t,e);let n=t._start;for(null!==r&&(n=r.p,e-=r.index);null!==n;n=n.right)if(!n.deleted&&n.countable){if(e<n.length)return n.content.getContent()[e];e-=n.length}},Wt=(t,e,r,n)=>{let s=r;const i=t.doc,o=i.clientID,c=i.store,l=null===r?e._start:r.right;let a=[];const h=()=>{a.length>0&&(s=new Ze(rt(o,lt(c,o)),s,s&&s.lastId,l,l&&l.id,e,null,new ze(a)),s.integrate(t,0),a=[])};n.forEach((r=>{if(null===r)a.push(r);else switch(r.constructor){case Number:case Object:case Boolean:case Array:case String:a.push(r);break;default:switch(h(),r.constructor){case Uint8Array:case ArrayBuffer:s=new Ze(rt(o,lt(c,o)),s,s&&s.lastId,l,l&&l.id,e,null,new Oe(new Uint8Array(r))),s.integrate(t,0);break;case N:s=new Ze(rt(o,lt(c,o)),s,s&&s.lastId,l,l&&l.id,e,null,new Me(r)),s.integrate(t,0);break;default:if(!(r instanceof jt))throw new Error("Unexpected content type in insert operation");s=new Ze(rt(o,lt(c,o)),s,s&&s.lastId,l,l&&l.id,e,null,new $e(r)),s.integrate(t,0)}}})),h()},$t=()=>g.create("Length exceeded!"),Xt=(t,e,r,n)=>{if(r>e._length)throw $t();if(0===r)return e._searchMarker&&zt(e._searchMarker,r,n.length),Wt(t,e,null,n);const s=r,i=Bt(e,r);let o=e._start;for(null!==i&&(o=i.p,0==(r-=i.index)&&(o=o.prev,r+=o&&o.countable&&!o.deleted?o.length:0));null!==o;o=o.right)if(!o.deleted&&o.countable){if(r<=o.length){r<o.length&&ft(t,rt(o.id.client,o.id.clock+r));break}r-=o.length}return e._searchMarker&&zt(e._searchMarker,s,n.length),Wt(t,e,o,n)},Zt=(t,e,r,n)=>{if(0===n)return;const s=r,i=n,o=Bt(e,r);let c=e._start;for(null!==o&&(c=o.p,r-=o.index);null!==c&&r>0;c=c.right)!c.deleted&&c.countable&&(r<c.length&&ft(t,rt(c.id.client,c.id.clock+r)),r-=c.length);for(;n>0&&null!==c;)c.deleted||(n<c.length&&ft(t,rt(c.id.client,c.id.clock+n)),c.delete(t),n-=c.length),c=c.right;if(n>0)throw $t();e._searchMarker&&zt(e._searchMarker,s,-i+n)},Ht=(t,e,r)=>{const n=e._map.get(r);void 0!==n&&n.delete(t)},Qt=(t,e,r,n)=>{const s=e._map.get(r)||null,i=t.doc,o=i.clientID;let c;if(null==n)c=new ze([n]);else switch(n.constructor){case Number:case Object:case Boolean:case Array:case String:c=new ze([n]);break;case Uint8Array:c=new Oe(n);break;case N:c=new Me(n);break;default:if(!(n instanceof jt))throw new Error("Unexpected content type");c=new $e(n)}new Ze(rt(o,lt(i.store,o)),s,s&&s.lastId,null,null,e,r,c).integrate(t,0)},te=(t,e)=>{const r=t._map.get(e);return void 0===r||r.deleted?void 0:r.content.getContent()[r.length-1]},ee=t=>{const e={};return t._map.forEach(((t,r)=>{t.deleted||(e[r]=t.content.getContent()[t.length-1])})),e},re=(t,e)=>{const r=t._map.get(e);return void 0!==r&&!r.deleted},ne=t=>k.iteratorFilter(t.entries(),(t=>!t[1].deleted));class se extends Vt{constructor(t,e){super(t,e),this._transaction=e}}class ie extends jt{constructor(){super(),this._prelimContent=[],this._searchMarker=[]}static from(t){const e=new ie;return e.push(t),e}_integrate(t,e){super._integrate(t,e),this.insert(0,this._prelimContent),this._prelimContent=null}_copy(){return new ie}clone(){const t=new ie;return t.insert(0,this.toArray().map((t=>t instanceof jt?t.clone():t))),t}get length(){return null===this._prelimContent?this._length:this._prelimContent.length}_callObserver(t,e){super._callObserver(t,e),Jt(this,t,new se(this,t))}insert(t,e){null!==this.doc?_t(this.doc,(r=>{Xt(r,this,t,e)})):this._prelimContent.splice(t,0,...e)}push(t){null!==this.doc?_t(this.doc,(e=>{((t,e,r)=>{let n=(e._searchMarker||[]).reduce(((t,e)=>e.index>t.index?e:t),{index:0,p:e._start}).p;if(n)for(;n.right;)n=n.right;Wt(t,e,n,r)})(e,this,t)})):this._prelimContent.push(...t)}unshift(t){this.insert(0,t)}delete(t,e=1){null!==this.doc?_t(this.doc,(r=>{Zt(r,this,t,e)})):this._prelimContent.splice(t,e)}get(t){return Yt(this,t)}toArray(){return Kt(this)}slice(t=0,e=this.length){return Pt(this,t,e)}toJSON(){return this.map((t=>t instanceof jt?t.toJSON():t))}map(t){return Gt(this,t)}forEach(t){Ft(this,t)}[Symbol.iterator](){return qt(this)}_write(t){t.writeTypeRef(Pe)}}class oe extends Vt{constructor(t,e,r){super(t,e),this.keysChanged=r}}class ce extends jt{constructor(t){super(),this._prelimContent=null,this._prelimContent=void 0===t?new Map:new Map(t)}_integrate(t,e){super._integrate(t,e),this._prelimContent.forEach(((t,e)=>{this.set(e,t)})),this._prelimContent=null}_copy(){return new ce}clone(){const t=new ce;return this.forEach(((e,r)=>{t.set(r,e instanceof jt?e.clone():e)})),t}_callObserver(t,e){Jt(this,t,new oe(this,t,e))}toJSON(){const t={};return this._map.forEach(((e,r)=>{if(!e.deleted){const n=e.content.getContent()[e.length-1];t[r]=n instanceof jt?n.toJSON():n}})),t}get size(){return[...ne(this._map)].length}keys(){return k.iteratorMap(ne(this._map),(t=>t[0]))}values(){return k.iteratorMap(ne(this._map),(t=>t[1].content.getContent()[t[1].length-1]))}entries(){return k.iteratorMap(ne(this._map),(t=>[t[0],t[1].content.getContent()[t[1].length-1]]))}forEach(t){this._map.forEach(((e,r)=>{e.deleted||t(e.content.getContent()[e.length-1],r,this)}))}[Symbol.iterator](){return this.entries()}delete(t){null!==this.doc?_t(this.doc,(e=>{Ht(e,this,t)})):this._prelimContent.delete(t)}set(t,e){return null!==this.doc?_t(this.doc,(r=>{Qt(r,this,t,e)})):this._prelimContent.set(t,e),e}get(t){return te(this,t)}has(t){return re(this,t)}clear(){null!==this.doc?_t(this.doc,(t=>{this.forEach((function(e,r,n){Ht(t,n,r)}))})):this._prelimContent.clear()}_write(t){t.writeTypeRef(Ke)}}const le=(t,e)=>t===e||"object"==typeof t&&"object"==typeof e&&t&&e&&_.equalFlat(t,e);class ae{constructor(t,e,r,n){this.left=t,this.right=e,this.index=r,this.currentAttributes=n}forward(){null===this.right&&g.unexpectedCase(),this.right.content.constructor===Le?this.right.deleted||fe(this.currentAttributes,this.right.content):this.right.deleted||(this.index+=this.right.length),this.left=this.right,this.right=this.right.right}}const he=(t,e,r)=>{for(;null!==e.right&&r>0;)e.right.content.constructor===Le?e.right.deleted||fe(e.currentAttributes,e.right.content):e.right.deleted||(r<e.right.length&&ft(t,rt(e.right.id.client,e.right.id.clock+r)),e.index+=e.right.length,r-=e.right.length),e.left=e.right,e.right=e.right.right;return e},ue=(t,e,r,n)=>{const s=new Map,i=n?Bt(e,r):null;if(i){const e=new ae(i.p.left,i.p,i.index,s);return he(t,e,r-i.index)}{const n=new ae(null,e._start,0,s);return he(t,n,r)}},de=(t,e,r,n)=>{for(;null!==r.right&&(!0===r.right.deleted||r.right.content.constructor===Le&&le(n.get(r.right.content.key),r.right.content.value));)r.right.deleted||n.delete(r.right.content.key),r.forward();const s=t.doc,i=s.clientID;n.forEach(((n,o)=>{const c=r.left,l=r.right,a=new Ze(rt(i,lt(s.store,i)),c,c&&c.lastId,l,l&&l.id,e,null,new Le(o,n));a.integrate(t,0),r.right=a,r.forward()}))},fe=(t,e)=>{const{key:r,value:n}=e;null===n?t.delete(r):t.set(r,n)},ge=(t,e)=>{for(;null!==t.right&&(t.right.deleted||t.right.content.constructor===Le&&le(e[t.right.content.key]||null,t.right.content.value));)t.forward()},pe=(t,e,r,n)=>{const s=t.doc,i=s.clientID,o=new Map;for(const c in n){const l=n[c],a=r.currentAttributes.get(c)||null;if(!le(a,l)){o.set(c,a);const{left:n,right:h}=r;r.right=new Ze(rt(i,lt(s.store,i)),n,n&&n.lastId,h,h&&h.id,e,null,new Le(c,l)),r.right.integrate(t,0),r.forward()}}return o},we=(t,e,r,n,s)=>{r.currentAttributes.forEach(((t,e)=>{void 0===s[e]&&(s[e]=null)}));const i=t.doc,o=i.clientID;ge(r,s);const c=pe(t,e,r,s),l=n.constructor===String?new Je(n):n instanceof jt?new $e(n):new Re(n);let{left:a,right:h,index:u}=r;e._searchMarker&&zt(e._searchMarker,r.index,l.getLength()),h=new Ze(rt(o,lt(i.store,o)),a,a&&a.lastId,h,h&&h.id,e,null,l),h.integrate(t,0),r.right=h,r.index=u,r.forward(),de(t,e,r,c)},me=(t,e,r,n,s)=>{const i=t.doc,o=i.clientID;ge(r,s);const c=pe(t,e,r,s);t:for(;null!==r.right&&(n>0||c.size>0&&(r.right.deleted||r.right.content.constructor===Le));){if(!r.right.deleted)switch(r.right.content.constructor){case Le:{const{key:e,value:i}=r.right.content,o=s[e];if(void 0!==o){if(le(o,i))c.delete(e);else{if(0===n)break t;c.set(e,i)}r.right.delete(t)}else r.currentAttributes.set(e,i);break}default:n<r.right.length&&ft(t,rt(r.right.id.client,r.right.id.clock+n)),n-=r.right.length}r.forward()}if(n>0){let s="";for(;n>0;n--)s+="\n";r.right=new Ze(rt(o,lt(i.store,o)),r.left,r.left&&r.left.lastId,r.right,r.right&&r.right.id,e,null,new Je(s)),r.right.integrate(t,0),r.forward()}de(t,e,r,c)},ye=(t,e,r,n,s)=>{let i=e;const o=l.create();for(;i&&(!i.countable||i.deleted);){if(!i.deleted&&i.content.constructor===Le){const t=i.content;o.set(t.key,t)}i=i.right}let c=0,a=!1;for(;e!==i;){if(r===e&&(a=!0),!e.deleted){const r=e.content;switch(r.constructor){case Le:{const{key:i,value:l}=r,h=n.get(i)||null;o.get(i)===r&&h!==l||(e.delete(t),c++,a||(s.get(i)||null)!==l||h===l||(null===h?s.delete(i):s.set(i,h))),a||e.deleted||fe(s,r);break}}}e=e.right}return c},be=t=>{let e=0;return _t(t.doc,(r=>{let n=t._start,s=t._start,i=l.create();const o=l.copy(i);for(;s;)!1===s.deleted&&(s.content.constructor===Le?fe(o,s.content):(e+=ye(r,n,s,i,o),i=l.copy(o),n=s)),s=s.right})),e},ke=t=>{const e=new Set,r=t.doc;for(const[n,s]of t.afterState.entries()){const i=t.beforeState.get(n)||0;s!==i&&pt(t,r.store.clients.get(n),i,s,(t=>{t.deleted||t.content.constructor!==Le||t.constructor===Te||e.add(t.parent)}))}_t(r,(r=>{E(t,t.deleteSet,(t=>{if(t instanceof Te||!t.parent._hasFormatting||e.has(t.parent))return;const n=t.parent;t.content.constructor===Le?e.add(n):((t,e)=>{for(;e&&e.right&&(e.right.deleted||!e.right.countable);)e=e.right;const r=new Set;for(;e&&(e.deleted||!e.countable);){if(!e.deleted&&e.content.constructor===Le){const n=e.content.key;r.has(n)?e.delete(t):r.add(n)}e=e.left}})(r,t)}));for(const t of e)be(t)}))},_e=(t,e,r)=>{const n=r,s=l.copy(e.currentAttributes),i=e.right;for(;r>0&&null!==e.right;){if(!1===e.right.deleted)switch(e.right.content.constructor){case $e:case Re:case Je:r<e.right.length&&ft(t,rt(e.right.id.client,e.right.id.clock+r)),r-=e.right.length,e.right.delete(t)}e.forward()}i&&ye(t,i,e.right,s,e.currentAttributes);const o=(e.left||e.right).parent;return o._searchMarker&&zt(o._searchMarker,e.index,-n+r),e};class xe extends Vt{constructor(t,e,r){super(t,e),this.childListChanged=!1,this.keysChanged=new Set,r.forEach((t=>{null===t?this.childListChanged=!0:this.keysChanged.add(t)}))}get changes(){if(null===this._changes){const t={keys:this.keys,delta:this.delta,added:new Set,deleted:new Set};this._changes=t}return this._changes}get delta(){if(null===this._delta){const t=this.target.doc,e=[];_t(t,(t=>{const r=new Map,n=new Map;let s=this.target._start,i=null;const o={};let c="",l=0,a=0;const h=()=>{if(null!==i){let t=null;switch(i){case"delete":a>0&&(t={delete:a}),a=0;break;case"insert":("object"==typeof c||c.length>0)&&(t={insert:c},r.size>0&&(t.attributes={},r.forEach(((e,r)=>{null!==e&&(t.attributes[r]=e)})))),c="";break;case"retain":l>0&&(t={retain:l},_.isEmpty(o)||(t.attributes=_.assign({},o))),l=0}t&&e.push(t),i=null}};for(;null!==s;){switch(s.content.constructor){case $e:case Re:this.adds(s)?this.deletes(s)||(h(),i="insert",c=s.content.getContent()[0],h()):this.deletes(s)?("delete"!==i&&(h(),i="delete"),a+=1):s.deleted||("retain"!==i&&(h(),i="retain"),l+=1);break;case Je:this.adds(s)?this.deletes(s)||("insert"!==i&&(h(),i="insert"),c+=s.content.str):this.deletes(s)?("delete"!==i&&(h(),i="delete"),a+=s.length):s.deleted||("retain"!==i&&(h(),i="retain"),l+=s.length);break;case Le:{const{key:e,value:c}=s.content;if(this.adds(s)){if(!this.deletes(s)){const l=r.get(e)||null;le(l,c)?null!==c&&s.delete(t):("retain"===i&&h(),le(c,n.get(e)||null)?delete o[e]:o[e]=c)}}else if(this.deletes(s)){n.set(e,c);const t=r.get(e)||null;le(t,c)||("retain"===i&&h(),o[e]=t)}else if(!s.deleted){n.set(e,c);const r=o[e];void 0!==r&&(le(r,c)?null!==r&&s.delete(t):("retain"===i&&h(),null===c?delete o[e]:o[e]=c))}s.deleted||("insert"===i&&h(),fe(r,s.content));break}}s=s.right}for(h();e.length>0;){const t=e[e.length-1];if(void 0===t.retain||void 0!==t.attributes)break;e.pop()}})),this._delta=e}return this._delta}}class Se extends jt{constructor(t){super(),this._pending=void 0!==t?[()=>this.insert(0,t)]:[],this._searchMarker=[],this._hasFormatting=!1}get length(){return this._length}_integrate(t,e){super._integrate(t,e);try{this._pending.forEach((t=>t()))}catch(t){console.error(t)}this._pending=null}_copy(){return new Se}clone(){const t=new Se;return t.applyDelta(this.toDelta()),t}_callObserver(t,e){super._callObserver(t,e);const r=new xe(this,t,e);Jt(this,t,r),!t.local&&this._hasFormatting&&(t._needFormattingCleanup=!0)}toString(){let t="",e=this._start;for(;null!==e;)!e.deleted&&e.countable&&e.content.constructor===Je&&(t+=e.content.str),e=e.right;return t}toJSON(){return this.toString()}applyDelta(t,{sanitize:e=!0}={}){null!==this.doc?_t(this.doc,(r=>{const n=new ae(null,this._start,0,new Map);for(let s=0;s<t.length;s++){const i=t[s];if(void 0!==i.insert){const o=e||"string"!=typeof i.insert||s!==t.length-1||null!==n.right||"\n"!==i.insert.slice(-1)?i.insert:i.insert.slice(0,-1);("string"!=typeof o||o.length>0)&&we(r,this,n,o,i.attributes||{})}else void 0!==i.retain?me(r,this,n,i.retain,i.attributes||{}):void 0!==i.delete&&_e(r,n,i.delete)}})):this._pending.push((()=>this.applyDelta(t)))}toDelta(t,e,r){const n=[],s=new Map,i=this.doc;let o="",c=this._start;function l(){if(o.length>0){const t={};let e=!1;s.forEach(((r,n)=>{e=!0,t[n]=r}));const r={insert:o};e&&(r.attributes=t),n.push(r),o=""}}const a=()=>{for(;null!==c;){if(st(c,t)||void 0!==e&&st(c,e))switch(c.content.constructor){case Je:{const n=s.get("ychange");void 0===t||st(c,t)?void 0===e||st(c,e)?void 0!==n&&(l(),s.delete("ychange")):void 0!==n&&n.user===c.id.client&&"added"===n.type||(l(),s.set("ychange",r?r("added",c.id):{type:"added"})):void 0!==n&&n.user===c.id.client&&"removed"===n.type||(l(),s.set("ychange",r?r("removed",c.id):{type:"removed"})),o+=c.content.str;break}case $e:case Re:{l();const t={insert:c.content.getContent()[0]};if(s.size>0){const e={};t.attributes=e,s.forEach(((t,r)=>{e[r]=t}))}n.push(t);break}case Le:st(c,t)&&(l(),fe(s,c.content))}c=c.right}l()};return t||e?_t(i,(r=>{t&&it(r,t),e&&it(r,e),a()}),"cleanup"):a(),n}insert(t,e,r){if(e.length<=0)return;const n=this.doc;null!==n?_t(n,(n=>{const s=ue(n,this,t,!r);r||(r={},s.currentAttributes.forEach(((t,e)=>{r[e]=t}))),we(n,this,s,e,r)})):this._pending.push((()=>this.insert(t,e,r)))}insertEmbed(t,e,r){const n=this.doc;null!==n?_t(n,(n=>{const s=ue(n,this,t,!r);we(n,this,s,e,r||{})})):this._pending.push((()=>this.insertEmbed(t,e,r||{})))}delete(t,e){if(0===e)return;const r=this.doc;null!==r?_t(r,(r=>{_e(r,ue(r,this,t,!0),e)})):this._pending.push((()=>this.delete(t,e)))}format(t,e,r){if(0===e)return;const n=this.doc;null!==n?_t(n,(n=>{const s=ue(n,this,t,!1);null!==s.right&&me(n,this,s,e,r)})):this._pending.push((()=>this.format(t,e,r)))}removeAttribute(t){null!==this.doc?_t(this.doc,(e=>{Ht(e,this,t)})):this._pending.push((()=>this.removeAttribute(t)))}setAttribute(t,e){null!==this.doc?_t(this.doc,(r=>{Qt(r,this,t,e)})):this._pending.push((()=>this.setAttribute(t,e)))}getAttribute(t){return te(this,t)}getAttributes(){return ee(this)}_write(t){t.writeTypeRef(Fe)}}class Ee{constructor(t,e=(()=>!0)){this._filter=e,this._root=t,this._currentNode=t._start,this._firstCall=!0}[Symbol.iterator](){return this}next(){let t=this._currentNode,e=t&&t.content&&t.content.type;if(null!==t&&(!this._firstCall||t.deleted||!this._filter(e)))do{if(e=t.content.type,t.deleted||e.constructor!==De&&e.constructor!==Ce||null===e._start)for(;null!==t;){if(null!==t.right){t=t.right;break}t=t.parent===this._root?null:t.parent._item}else t=e._start}while(null!==t&&(t.deleted||!this._filter(t.content.type)));return this._firstCall=!1,null===t?{value:void 0,done:!0}:(this._currentNode=t,{value:t.content.type,done:!1})}}class Ce extends jt{constructor(){super(),this._prelimContent=[]}get firstChild(){const t=this._first;return t?t.content.getContent()[0]:null}_integrate(t,e){super._integrate(t,e),this.insert(0,this._prelimContent),this._prelimContent=null}_copy(){return new Ce}clone(){const t=new Ce;return t.insert(0,this.toArray().map((t=>t instanceof jt?t.clone():t))),t}get length(){return null===this._prelimContent?this._length:this._prelimContent.length}createTreeWalker(t){return new Ee(this,t)}querySelector(t){t=t.toUpperCase();const e=new Ee(this,(e=>e.nodeName&&e.nodeName.toUpperCase()===t)).next();return e.done?null:e.value}querySelectorAll(t){return t=t.toUpperCase(),o.from(new Ee(this,(e=>e.nodeName&&e.nodeName.toUpperCase()===t)))}_callObserver(t,e){Jt(this,t,new Ue(this,e,t))}toString(){return Gt(this,(t=>t.toString())).join("")}toJSON(){return this.toString()}toDOM(t=document,e={},r){const n=t.createDocumentFragment();return void 0!==r&&r._createAssociation(n,this),Ft(this,(s=>{n.insertBefore(s.toDOM(t,e,r),null)})),n}insert(t,e){null!==this.doc?_t(this.doc,(r=>{Xt(r,this,t,e)})):this._prelimContent.splice(t,0,...e)}insertAfter(t,e){if(null!==this.doc)_t(this.doc,(r=>{const n=t&&t instanceof jt?t._item:t;Wt(r,this,n,e)}));else{const r=this._prelimContent,n=null===t?0:r.findIndex((e=>e===t))+1;if(0===n&&null!==t)throw g.create("Reference item not found");r.splice(n,0,...e)}}delete(t,e=1){null!==this.doc?_t(this.doc,(r=>{Zt(r,this,t,e)})):this._prelimContent.splice(t,e)}toArray(){return Kt(this)}push(t){this.insert(this.length,t)}unshift(t){this.insert(0,t)}get(t){return Yt(this,t)}slice(t=0,e=this.length){return Pt(this,t,e)}forEach(t){Ft(this,t)}_write(t){t.writeTypeRef(qe)}}class De extends Ce{constructor(t="UNDEFINED"){super(),this.nodeName=t,this._prelimAttrs=new Map}get nextSibling(){const t=this._item?this._item.next:null;return t?t.content.type:null}get prevSibling(){const t=this._item?this._item.prev:null;return t?t.content.type:null}_integrate(t,e){super._integrate(t,e),this._prelimAttrs.forEach(((t,e)=>{this.setAttribute(e,t)})),this._prelimAttrs=null}_copy(){return new De(this.nodeName)}clone(){const t=new De(this.nodeName),e=this.getAttributes();return _.forEach(e,((e,r)=>{"string"==typeof e&&t.setAttribute(r,e)})),t.insert(0,this.toArray().map((t=>t instanceof jt?t.clone():t))),t}toString(){const t=this.getAttributes(),e=[],r=[];for(const e in t)r.push(e);r.sort();const n=r.length;for(let s=0;s<n;s++){const n=r[s];e.push(n+'="'+t[n]+'"')}const s=this.nodeName.toLocaleLowerCase();return`<${s}${e.length>0?" "+e.join(" "):""}>${super.toString()}</${s}>`}removeAttribute(t){null!==this.doc?_t(this.doc,(e=>{Ht(e,this,t)})):this._prelimAttrs.delete(t)}setAttribute(t,e){null!==this.doc?_t(this.doc,(r=>{Qt(r,this,t,e)})):this._prelimAttrs.set(t,e)}getAttribute(t){return te(this,t)}hasAttribute(t){return re(this,t)}getAttributes(t){return t?((t,e)=>{const r={};return this._map.forEach(((t,n)=>{let s=t;for(;null!==s&&(!e.sv.has(s.id.client)||s.id.clock>=(e.sv.get(s.id.client)||0));)s=s.left;null!==s&&st(s,e)&&(r[n]=s.content.getContent()[s.length-1])})),r})(0,t):ee(this)}toDOM(t=document,e={},r){const n=t.createElement(this.nodeName),s=this.getAttributes();for(const t in s){const e=s[t];"string"==typeof e&&n.setAttribute(t,e)}return Ft(this,(s=>{n.appendChild(s.toDOM(t,e,r))})),void 0!==r&&r._createAssociation(n,this),n}_write(t){t.writeTypeRef(Ge),t.writeKey(this.nodeName)}}class Ue extends Vt{constructor(t,e,r){super(t,r),this.childListChanged=!1,this.attributesChanged=new Set,e.forEach((t=>{null===t?this.childListChanged=!0:this.attributesChanged.add(t)}))}}class ve extends ce{constructor(t){super(),this.hookName=t}_copy(){return new ve(this.hookName)}clone(){const t=new ve(this.hookName);return this.forEach(((e,r)=>{t.set(r,e)})),t}toDOM(t=document,e={},r){const n=e[this.hookName];let s;return s=void 0!==n?n.createDom(this):document.createElement(this.hookName),s.setAttribute("data-yjs-hook",this.hookName),void 0!==r&&r._createAssociation(s,this),s}_write(t){t.writeTypeRef(Ye),t.writeKey(this.hookName)}}class Ie extends Se{get nextSibling(){const t=this._item?this._item.next:null;return t?t.content.type:null}get prevSibling(){const t=this._item?this._item.prev:null;return t?t.content.type:null}_copy(){return new Ie}clone(){const t=new Ie;return t.applyDelta(this.toDelta()),t}toDOM(t=document,e,r){const n=t.createTextNode(this.toString());return void 0!==r&&r._createAssociation(n,this),n}toString(){return this.toDelta().map((t=>{const e=[];for(const r in t.attributes){const n=[];for(const e in t.attributes[r])n.push({key:e,value:t.attributes[r][e]});n.sort(((t,e)=>t.key<e.key?-1:1)),e.push({nodeName:r,attrs:n})}e.sort(((t,e)=>t.nodeName<e.nodeName?-1:1));let r="";for(let t=0;t<e.length;t++){const n=e[t];r+=`<${n.nodeName}`;for(let t=0;t<n.attrs.length;t++){const e=n.attrs[t];r+=` ${e.key}="${e.value}"`}r+=">"}r+=t.insert;for(let t=e.length-1;t>=0;t--)r+=`</${e[t].nodeName}>`;return r})).join("")}toJSON(){return this.toString()}_write(t){t.writeTypeRef(We)}}class Ae{constructor(t,e){this.id=t,this.length=e}get deleted(){throw g.methodUnimplemented()}mergeWith(t){return!1}write(t,e,r){throw g.methodUnimplemented()}integrate(t,e){throw g.methodUnimplemented()}}class Te extends Ae{get deleted(){return!0}delete(){}mergeWith(t){return this.constructor===t.constructor&&(this.length+=t.length,!0)}integrate(t,e){e>0&&(this.id.clock+=e,this.length-=e),at(t.doc.store,this)}write(t,e){t.writeInfo(0),t.writeLen(this.length-e)}getMissing(t,e){return null}}class Oe{constructor(t){this.content=t}getLength(){return 1}getContent(){return[this.content]}isCountable(){return!0}copy(){return new Oe(this.content)}splice(t){throw g.methodUnimplemented()}mergeWith(t){return!1}integrate(t,e){}delete(t){}gc(t){}write(t,e){t.writeBuf(this.content)}getRef(){return 3}}class Ve{constructor(t){this.len=t}getLength(){return this.len}getContent(){return[]}isCountable(){return!1}copy(){return new Ve(this.len)}splice(t){const e=new Ve(this.len-t);return this.len=t,e}mergeWith(t){return this.len+=t.len,!0}integrate(t,e){v(t.deleteSet,e.id.client,e.id.clock,this.len),e.markDeleted()}delete(t){}gc(t){}write(t,e){t.writeLen(this.len-e)}getRef(){return 1}}const Ne=(t,e)=>new N({guid:t,...e,shouldLoad:e.shouldLoad||e.autoLoad||!1});class Me{constructor(t){t._item&&console.error("This document was already integrated as a sub-document. You should create a second instance instead with the same guid."),this.doc=t;const e={};this.opts=e,t.gc||(e.gc=!1),t.autoLoad&&(e.autoLoad=!0),null!==t.meta&&(e.meta=t.meta)}getLength(){return 1}getContent(){return[this.doc]}isCountable(){return!0}copy(){return new Me(Ne(this.doc.guid,this.opts))}splice(t){throw g.methodUnimplemented()}mergeWith(t){return!1}integrate(t,e){this.doc._item=e,t.subdocsAdded.add(this.doc),this.doc.shouldLoad&&t.subdocsLoaded.add(this.doc)}delete(t){t.subdocsAdded.has(this.doc)?t.subdocsAdded.delete(this.doc):t.subdocsRemoved.add(this.doc)}gc(t){}write(t,e){t.writeString(this.doc.guid),t.writeAny(this.opts)}getRef(){return 9}}class Re{constructor(t){this.embed=t}getLength(){return 1}getContent(){return[this.embed]}isCountable(){return!0}copy(){return new Re(this.embed)}splice(t){throw g.methodUnimplemented()}mergeWith(t){return!1}integrate(t,e){}delete(t){}gc(t){}write(t,e){t.writeJSON(this.embed)}getRef(){return 5}}class Le{constructor(t,e){this.key=t,this.value=e}getLength(){return 1}getContent(){return[]}isCountable(){return!1}copy(){return new Le(this.key,this.value)}splice(t){throw g.methodUnimplemented()}mergeWith(t){return!1}integrate(t,e){const r=e.parent;r._searchMarker=null,r._hasFormatting=!0}delete(t){}gc(t){}write(t,e){t.writeKey(this.key),t.writeJSON(this.value)}getRef(){return 6}}class Be{constructor(t){this.arr=t}getLength(){return this.arr.length}getContent(){return this.arr}isCountable(){return!0}copy(){return new Be(this.arr)}splice(t){const e=new Be(this.arr.slice(t));return this.arr=this.arr.slice(0,t),e}mergeWith(t){return this.arr=this.arr.concat(t.arr),!0}integrate(t,e){}delete(t){}gc(t){}write(t,e){const r=this.arr.length;t.writeLen(r-e);for(let n=e;n<r;n++){const e=this.arr[n];t.writeString(void 0===e?"undefined":JSON.stringify(e))}}getRef(){return 2}}class ze{constructor(t){this.arr=t}getLength(){return this.arr.length}getContent(){return this.arr}isCountable(){return!0}copy(){return new ze(this.arr)}splice(t){const e=new ze(this.arr.slice(t));return this.arr=this.arr.slice(0,t),e}mergeWith(t){return this.arr=this.arr.concat(t.arr),!0}integrate(t,e){}delete(t){}gc(t){}write(t,e){const r=this.arr.length;t.writeLen(r-e);for(let n=e;n<r;n++){const e=this.arr[n];t.writeAny(e)}}getRef(){return 8}}class Je{constructor(t){this.str=t}getLength(){return this.str.length}getContent(){return this.str.split("")}isCountable(){return!0}copy(){return new Je(this.str)}splice(t){const e=new Je(this.str.slice(t));this.str=this.str.slice(0,t);const r=this.str.charCodeAt(t-1);return r>=55296&&r<=56319&&(this.str=this.str.slice(0,t-1)+"�",e.str="�"+e.str.slice(1)),e}mergeWith(t){return this.str+=t.str,!0}integrate(t,e){}delete(t){}gc(t){}write(t,e){t.writeString(0===e?this.str:this.str.slice(e))}getRef(){return 4}}const je=[t=>new ie,t=>new ce,t=>new Se,t=>new De(t.readKey()),t=>new Ce,t=>new ve(t.readKey()),t=>new Ie],Pe=0,Ke=1,Fe=2,Ge=3,qe=4,Ye=5,We=6;class $e{constructor(t){this.type=t}getLength(){return 1}getContent(){return[this.type]}isCountable(){return!0}copy(){return new $e(this.type._copy())}splice(t){throw g.methodUnimplemented()}mergeWith(t){return!1}integrate(t,e){this.type._integrate(t.doc,e)}delete(t){let e=this.type._start;for(;null!==e;)e.deleted?e.id.clock<(t.beforeState.get(e.id.client)||0)&&t._mergeStructs.push(e):e.delete(t),e=e.right;this.type._map.forEach((e=>{e.deleted?e.id.clock<(t.beforeState.get(e.id.client)||0)&&t._mergeStructs.push(e):e.delete(t)})),t.changed.delete(this.type)}gc(t){let e=this.type._start;for(;null!==e;)e.gc(t,!0),e=e.right;this.type._start=null,this.type._map.forEach((e=>{for(;null!==e;)e.gc(t,!0),e=e.left})),this.type._map=new Map}write(t,e){this.type._write(t)}getRef(){return 7}}const Xe=(t,e,r)=>{const{client:n,clock:s}=e.id,i=new Ze(rt(n,s+r),e,rt(n,s+r-1),e.right,e.rightOrigin,e.parent,e.parentSub,e.content.splice(r));return e.deleted&&i.markDeleted(),e.keep&&(i.keep=!0),null!==e.redone&&(i.redone=rt(e.redone.client,e.redone.clock+r)),e.right=i,null!==i.right&&(i.right.left=i),t._mergeStructs.push(i),null!==i.parentSub&&null===i.right&&i.parent._map.set(i.parentSub,i),e.length=r,i};class Ze extends Ae{constructor(t,e,r,n,s,i,o,c){super(t,c.getLength()),this.origin=r,this.left=e,this.right=n,this.rightOrigin=s,this.parent=i,this.parentSub=o,this.redone=null,this.content=c,this.info=this.content.isCountable()?p.BIT2:0}set marker(t){(this.info&p.BIT4)>0!==t&&(this.info^=p.BIT4)}get marker(){return(this.info&p.BIT4)>0}get keep(){return(this.info&p.BIT1)>0}set keep(t){this.keep!==t&&(this.info^=p.BIT1)}get countable(){return(this.info&p.BIT2)>0}get deleted(){return(this.info&p.BIT3)>0}set deleted(t){this.deleted!==t&&(this.info^=p.BIT3)}markDeleted(){this.info|=p.BIT3}getMissing(t,e){if(this.origin&&this.origin.client!==this.id.client&&this.origin.clock>=lt(e,this.origin.client))return this.origin.client;if(this.rightOrigin&&this.rightOrigin.client!==this.id.client&&this.rightOrigin.clock>=lt(e,this.rightOrigin.client))return this.rightOrigin.client;if(this.parent&&this.parent.constructor===tt&&this.id.client!==this.parent.client&&this.parent.clock>=lt(e,this.parent.client))return this.parent.client;if(this.origin&&(this.left=gt(t,e,this.origin),this.origin=this.left.lastId),this.rightOrigin&&(this.right=ft(t,this.rightOrigin),this.rightOrigin=this.right.id),this.left&&this.left.constructor===Te||this.right&&this.right.constructor===Te)this.parent=null;else if(this.parent){if(this.parent.constructor===tt){const t=ut(e,this.parent);t.constructor===Te?this.parent=null:this.parent=t.content.type}}else this.left&&this.left.constructor===Ze&&(this.parent=this.left.parent,this.parentSub=this.left.parentSub),this.right&&this.right.constructor===Ze&&(this.parent=this.right.parent,this.parentSub=this.right.parentSub);return null}integrate(t,e){if(e>0&&(this.id.clock+=e,this.left=gt(t,t.doc.store,rt(this.id.client,this.id.clock-1)),this.origin=this.left.lastId,this.content=this.content.splice(e),this.length-=e),this.parent){if(!this.left&&(!this.right||null!==this.right.left)||this.left&&this.left.right!==this.right){let e,r=this.left;if(null!==r)e=r.right;else if(null!==this.parentSub)for(e=this.parent._map.get(this.parentSub)||null;null!==e&&null!==e.left;)e=e.left;else e=this.parent._start;const n=new Set,s=new Set;for(;null!==e&&e!==this.right;){if(s.add(e),n.add(e),et(this.origin,e.origin)){if(e.id.client<this.id.client)r=e,n.clear();else if(et(this.rightOrigin,e.rightOrigin))break}else{if(null===e.origin||!s.has(ut(t.doc.store,e.origin)))break;n.has(ut(t.doc.store,e.origin))||(r=e,n.clear())}e=e.right}this.left=r}if(null!==this.left){const t=this.left.right;this.right=t,this.left.right=this}else{let t;if(null!==this.parentSub)for(t=this.parent._map.get(this.parentSub)||null;null!==t&&null!==t.left;)t=t.left;else t=this.parent._start,this.parent._start=this;this.right=t}null!==this.right?this.right.left=this:null!==this.parentSub&&(this.parent._map.set(this.parentSub,this),null!==this.left&&this.left.delete(t)),null===this.parentSub&&this.countable&&!this.deleted&&(this.parent._length+=this.length),at(t.doc.store,this),this.content.integrate(t,this),yt(t,this.parent,this.parentSub),(null!==this.parent._item&&this.parent._item.deleted||null!==this.parentSub&&null!==this.right)&&this.delete(t)}else new Te(this.id,this.length).integrate(t,0)}get next(){let t=this.right;for(;null!==t&&t.deleted;)t=t.right;return t}get prev(){let t=this.left;for(;null!==t&&t.deleted;)t=t.left;return t}get lastId(){return 1===this.length?this.id:rt(this.id.client,this.id.clock+this.length-1)}mergeWith(t){if(this.constructor===t.constructor&&et(t.origin,this.lastId)&&this.right===t&&et(this.rightOrigin,t.rightOrigin)&&this.id.client===t.id.client&&this.id.clock+this.length===t.id.clock&&this.deleted===t.deleted&&null===this.redone&&null===t.redone&&this.content.constructor===t.content.constructor&&this.content.mergeWith(t.content)){const e=this.parent._searchMarker;return e&&e.forEach((e=>{e.p===t&&(e.p=this,!this.deleted&&this.countable&&(e.index-=this.length))})),t.keep&&(this.keep=!0),this.right=t.right,null!==this.right&&(this.right.left=this),this.length+=t.length,!0}return!1}delete(t){if(!this.deleted){const e=this.parent;this.countable&&null===this.parentSub&&(e._length-=this.length),this.markDeleted(),v(t.deleteSet,this.id.client,this.id.clock,this.length),yt(t,e,this.parentSub),this.content.delete(t)}}gc(t,e){if(!this.deleted)throw g.unexpectedCase();this.content.gc(t),e?((t,e,r)=>{const n=t.clients.get(e.id.client);n[ht(n,e.id.clock)]=r})(t,this,new Te(this.id,this.length)):this.content=new Ve(this.length)}write(t,e){const r=e>0?rt(this.id.client,this.id.clock+e-1):this.origin,n=this.rightOrigin,s=this.parentSub,i=this.content.getRef()&p.BITS5|(null===r?0:p.BIT8)|(null===n?0:p.BIT7)|(null===s?0:p.BIT6);if(t.writeInfo(i),null!==r&&t.writeLeftID(r),null!==n&&t.writeRightID(n),null===r&&null===n){const e=this.parent;if(void 0!==e._item){const r=e._item;if(null===r){const r=(t=>{for(const[e,r]of t.doc.share.entries())if(r===t)return e;throw g.unexpectedCase()})(e);t.writeParentInfo(!0),t.writeString(r)}else t.writeParentInfo(!1),t.writeLeftID(r.id)}else e.constructor===String?(t.writeParentInfo(!0),t.writeString(e)):e.constructor===tt?(t.writeParentInfo(!1),t.writeLeftID(e)):g.unexpectedCase();null!==s&&t.writeString(s)}this.content.write(t,e)}}const He=(t,e)=>Qe[e&p.BITS5](t),Qe=[()=>{g.unexpectedCase()},t=>new Ve(t.readLen()),t=>{const e=t.readLen(),r=[];for(let n=0;n<e;n++){const e=t.readString();"undefined"===e?r.push(void 0):r.push(JSON.parse(e))}return new Be(r)},t=>new Oe(t.readBuf()),t=>new Je(t.readString()),t=>new Re(t.readJSON()),t=>new Le(t.readKey(),t.readJSON()),t=>new $e(je[t.readTypeRef()](t)),t=>{const e=t.readLen(),r=[];for(let n=0;n<e;n++)r.push(t.readAny());return new ze(r)},t=>new Me(Ne(t.readString(),t.readAny())),()=>{g.unexpectedCase()}];class tr extends Ae{get deleted(){return!0}delete(){}mergeWith(t){return this.constructor===t.constructor&&(this.length+=t.length,!0)}integrate(t,e){g.unexpectedCase()}write(t,e){t.writeInfo(10),a.writeVarUint(t.restEncoder,this.length-e)}getMissing(t,e){return null}}const er="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==e?e:{},rr="__ $YJS$ __";!0===er[rr]&&console.error("Yjs was already imported. This breaks constructor checks and will lead to issues! - https://github.com/yjs/yjs/issues/438"),er[rr]=!0})),r.register("fACbm",(function(e,n){t(e.exports,"Observable",(function(){return c}));var s=r("cuboK"),i=r("aYKIU"),o=r("kDMzp");class c{constructor(){this._observers=s.create()}on(t,e){s.setIfUndefined(this._observers,t,i.create).add(e)}once(t,e){const r=(...n)=>{this.off(t,r),e(...n)};this.on(t,r)}off(t,e){const r=this._observers.get(t);void 0!==r&&(r.delete(e),0===r.size&&this._observers.delete(t))}emit(t,e){return o.from((this._observers.get(t)||s.create()).values()).forEach((t=>t(...e)))}destroy(){this._observers=s.create()}}})),r.register("cuboK",(function(e,r){t(e.exports,"create",(function(){return n})),t(e.exports,"copy",(function(){return s})),t(e.exports,"setIfUndefined",(function(){return i})),t(e.exports,"map",(function(){return o})),t(e.exports,"any",(function(){return c}));const n=()=>new Map,s=t=>{const e=n();return t.forEach(((t,r)=>{e.set(r,t)})),e},i=(t,e,r)=>{let n=t.get(e);return void 0===n&&t.set(e,n=r()),n},o=(t,e)=>{const r=[];for(const[n,s]of t)r.push(e(s,n));return r},c=(t,e)=>{for(const[r,n]of t)if(e(n,r))return!0;return!1}})),r.register("aYKIU",(function(e,r){t(e.exports,"create",(function(){return n})),t(e.exports,"from",(function(){return s}));const n=()=>new Set,s=t=>new Set(t)})),r.register("kDMzp",(function(e,n){t(e.exports,"last",(function(){return s})),t(e.exports,"appendTo",(function(){return i})),t(e.exports,"from",(function(){return o})),t(e.exports,"some",(function(){return c})),t(e.exports,"equalFlat",(function(){return l})),t(e.exports,"unfold",(function(){return a})),t(e.exports,"isArray",(function(){return h})),t(e.exports,"map",(function(){return u})),r("aYKIU");const s=t=>t[t.length-1],i=(t,e)=>{for(let r=0;r<e.length;r++)t.push(e[r])},o=Array.from,c=(t,e)=>{for(let r=0;r<t.length;r++)if(e(t[r],r,t))return!0;return!1},l=(t,e)=>t.length===e.length&&((t,e)=>{for(let r=0;r<t.length;r++)if(!e(t[r],r))return!1;return!0})(t,((t,r)=>t===e[r])),a=(t,e)=>{const r=new Array(t);for(let n=0;n<t;n++)r[n]=e(n,r);return r},h=Array.isArray,u=(t,e)=>{const r=Array(t.length);for(let n=0;n<t.length;n++)r[n]=e(t[n],n,t);return r}})),r.register("iUL32",(function(e,r){t(e.exports,"floor",(function(){return n})),t(e.exports,"ceil",(function(){return s})),t(e.exports,"abs",(function(){return i})),t(e.exports,"round",(function(){return o})),t(e.exports,"log10",(function(){return c})),t(e.exports,"min",(function(){return l})),t(e.exports,"max",(function(){return a})),t(e.exports,"exp10",(function(){return h})),t(e.exports,"isNegativeZero",(function(){return u}));const n=Math.floor,s=Math.ceil,i=Math.abs,o=(Math.imul,Math.round),c=Math.log10,l=(Math.log2,Math.log,Math.sqrt,(t,e)=>t<e?t:e),a=(t,e)=>t>e?t:e,h=(Number.isNaN,Math.pow,t=>Math.pow(10,t)),u=(Math.sign,t=>0!==t?t<0:1/t<0)})),r.register("j3EDv",(function(e,n){t(e.exports,"createEncoder",(function(){return h})),t(e.exports,"encode",(function(){return u})),t(e.exports,"toUint8Array",(function(){return d})),t(e.exports,"write",(function(){return f})),t(e.exports,"writeUint8",(function(){return g})),t(e.exports,"writeVarUint",(function(){return p})),t(e.exports,"writeVarInt",(function(){return w})),t(e.exports,"writeVarUint8Array",(function(){return x})),t(e.exports,"writeVarString",(function(){return b})),t(e.exports,"writeBinaryEncoder",(function(){return k})),t(e.exports,"writeUint8Array",(function(){return _})),t(e.exports,"writeAny",(function(){return C})),t(e.exports,"RleEncoder",(function(){return D})),t(e.exports,"UintOptRleEncoder",(function(){return v})),t(e.exports,"IntDiffOptRleEncoder",(function(){return A})),t(e.exports,"StringEncoder",(function(){return T}));var s=r("iUL32"),i=r("5ug58"),o=r("diuv2"),c=r("fJq6z"),l=r("kDMzp");class a{constructor(){this.cpos=0,this.cbuf=new Uint8Array(100),this.bufs=[]}}const h=()=>new a,u=t=>{const e=h();return t(e),d(e)},d=t=>{const e=new Uint8Array((t=>{let e=t.cpos;for(let r=0;r<t.bufs.length;r++)e+=t.bufs[r].length;return e})(t));let r=0;for(let n=0;n<t.bufs.length;n++){const s=t.bufs[n];e.set(s,r),r+=s.length}return e.set(new Uint8Array(t.cbuf.buffer,0,t.cpos),r),e},f=(t,e)=>{const r=t.cbuf.length;t.cpos===r&&(t.bufs.push(t.cbuf),t.cbuf=new Uint8Array(2*r),t.cpos=0),t.cbuf[t.cpos++]=e},g=f,p=(t,e)=>{for(;e>o.BITS7;)f(t,o.BIT8|o.BITS7&e),e=s.floor(e/128);f(t,o.BITS7&e)},w=(t,e)=>{const r=s.isNegativeZero(e);for(r&&(e=-e),f(t,(e>o.BITS6?o.BIT8:0)|(r?o.BIT7:0)|o.BITS6&e),e=s.floor(e/64);e>0;)f(t,(e>o.BITS7?o.BIT8:0)|o.BITS7&e),e=s.floor(e/128)},m=new Uint8Array(3e4),y=m.length/3,b=c.utf8TextEncoder&&c.utf8TextEncoder.encodeInto?(t,e)=>{if(e.length<y){const r=c.utf8TextEncoder.encodeInto(e,m).written||0;p(t,r);for(let e=0;e<r;e++)f(t,m[e])}else x(t,c.encodeUtf8(e))}:(t,e)=>{const r=unescape(encodeURIComponent(e)),n=r.length;p(t,n);for(let e=0;e<n;e++)f(t,r.codePointAt(e))},k=(t,e)=>_(t,d(e)),_=(t,e)=>{const r=t.cbuf.length,n=t.cpos,i=s.min(r-n,e.length),o=e.length-i;t.cbuf.set(e.subarray(0,i),n),t.cpos+=i,o>0&&(t.bufs.push(t.cbuf),t.cbuf=new Uint8Array(s.max(2*r,o)),t.cbuf.set(e.subarray(i)),t.cpos=o)},x=(t,e)=>{p(t,e.byteLength),_(t,e)},S=(t,e)=>{((t,e)=>{const r=t.cbuf.length;r-t.cpos<e&&(t.bufs.push(new Uint8Array(t.cbuf.buffer,0,t.cpos)),t.cbuf=new Uint8Array(2*s.max(r,e)),t.cpos=0)})(t,e);const r=new DataView(t.cbuf.buffer,t.cpos,e);return t.cpos+=e,r},E=new DataView(new ArrayBuffer(4)),C=(t,e)=>{switch(typeof e){case"string":f(t,119),b(t,e);break;case"number":i.isInteger(e)&&s.abs(e)<=o.BITS31?(f(t,125),w(t,e)):(r=e,E.setFloat32(0,r),E.getFloat32(0)===r?(f(t,124),((t,e)=>{S(t,4).setFloat32(0,e,!1)})(t,e)):(f(t,123),((t,e)=>{S(t,8).setFloat64(0,e,!1)})(t,e)));break;case"bigint":f(t,122),((t,e)=>{S(t,8).setBigInt64(0,e,!1)})(t,e);break;case"object":if(null===e)f(t,126);else if(l.isArray(e)){f(t,117),p(t,e.length);for(let r=0;r<e.length;r++)C(t,e[r])}else if(e instanceof Uint8Array)f(t,116),x(t,e);else{f(t,118);const r=Object.keys(e);p(t,r.length);for(let n=0;n<r.length;n++){const s=r[n];b(t,s),C(t,e[s])}}break;case"boolean":f(t,e?120:121);break;default:f(t,127)}var r};class D extends a{constructor(t){super(),this.w=t,this.s=null,this.count=0}write(t){this.s===t?this.count++:(this.count>0&&p(this,this.count-1),this.count=1,this.w(this,t),this.s=t)}}const U=t=>{t.count>0&&(w(t.encoder,1===t.count?t.s:-t.s),t.count>1&&p(t.encoder,t.count-2))};class v{constructor(){this.encoder=new a,this.s=0,this.count=0}write(t){this.s===t?this.count++:(U(this),this.count=1,this.s=t)}toUint8Array(){return U(this),d(this.encoder)}}const I=t=>{if(t.count>0){const e=2*t.diff+(1===t.count?0:1);w(t.encoder,e),t.count>1&&p(t.encoder,t.count-2)}};class A{constructor(){this.encoder=new a,this.s=0,this.count=0,this.diff=0}write(t){this.diff===t-this.s?(this.s=t,this.count++):(I(this),this.count=1,this.diff=t-this.s,this.s=t)}toUint8Array(){return I(this),d(this.encoder)}}class T{constructor(){this.sarr=[],this.s="",this.lensE=new v}write(t){this.s+=t,this.s.length>19&&(this.sarr.push(this.s),this.s=""),this.lensE.write(t.length)}toUint8Array(){const t=new a;return this.sarr.push(this.s),this.s="",b(t,this.sarr.join("")),_(t,this.lensE.toUint8Array()),d(t)}}})),r.register("5ug58",(function(e,n){t(e.exports,"MAX_SAFE_INTEGER",(function(){return o})),t(e.exports,"isInteger",(function(){return c}));var s=r("iUL32"),i=r("diuv2");const o=Number.MAX_SAFE_INTEGER,c=(Number.MIN_SAFE_INTEGER,i.BITS31,i.BITS32,Number.isInteger||(t=>"number"==typeof t&&isFinite(t)&&s.floor(t)===t));Number.isNaN,Number.parseInt})),r.register("diuv2",(function(e,r){t(e.exports,"BIT1",(function(){return n})),t(e.exports,"BIT2",(function(){return s})),t(e.exports,"BIT3",(function(){return i})),t(e.exports,"BIT4",(function(){return o})),t(e.exports,"BIT6",(function(){return c})),t(e.exports,"BIT7",(function(){return l})),t(e.exports,"BIT8",(function(){return a})),t(e.exports,"BITS5",(function(){return h})),t(e.exports,"BITS6",(function(){return u})),t(e.exports,"BITS7",(function(){return d})),t(e.exports,"BITS8",(function(){return f})),t(e.exports,"BITS21",(function(){return g})),t(e.exports,"BITS31",(function(){return p})),t(e.exports,"BITS32",(function(){return w}));const n=1,s=2,i=4,o=8,c=32,l=64,a=128,h=31,u=63,d=127,f=255,g=2097151,p=2147483647,w=4294967295})),r.register("fJq6z",(function(e,n){t(e.exports,"fromCharCode",(function(){return i})),t(e.exports,"fromCamelCase",(function(){return l})),t(e.exports,"utf8TextEncoder",(function(){return a})),t(e.exports,"encodeUtf8",(function(){return h})),t(e.exports,"utf8TextDecoder",(function(){return u})),t(e.exports,"decodeUtf8",(function(){return d})),t(e.exports,"repeat",(function(){return f}));var s=r("kDMzp");const i=String.fromCharCode,o=(String.fromCodePoint,i(65535),/^\s*/g),c=/([A-Z])/g,l=(t,e)=>(t=>t.replace(o,""))(t.replace(c,(t=>`${e}${(t=>t.toLowerCase())(t)}`))),a="undefined"!=typeof TextEncoder?new TextEncoder:null,h=a?t=>a.encode(t):t=>{const e=unescape(encodeURIComponent(t)),r=e.length,n=new Uint8Array(r);for(let t=0;t<r;t++)n[t]=e.codePointAt(t);return n};let u="undefined"==typeof TextDecoder?null:new TextDecoder("utf-8",{fatal:!0,ignoreBOM:!0});u&&1===u.decode(new Uint8Array).length&&(u=null);const d=u?t=>u.decode(t):t=>{let e=t.length,r="",n=0;for(;e>0;){const s=e<1e4?e:1e4,i=t.subarray(n,n+s);n+=s,r+=String.fromCodePoint.apply(null,i),e-=s}return decodeURIComponent(escape(r))},f=(t,e)=>s.unfold(e,(()=>t)).join("")})),r.register("heYZO",(function(e,n){t(e.exports,"createDecoder",(function(){return d})),t(e.exports,"hasContent",(function(){return f})),t(e.exports,"readVarUint8Array",(function(){return g})),t(e.exports,"readVarUint",(function(){return w})),t(e.exports,"readUint8",(function(){return p})),t(e.exports,"readVarInt",(function(){return m})),t(e.exports,"readVarString",(function(){return y})),t(e.exports,"readAny",(function(){return _})),t(e.exports,"RleDecoder",(function(){return x})),t(e.exports,"UintOptRleDecoder",(function(){return S})),t(e.exports,"IntDiffOptRleDecoder",(function(){return E})),t(e.exports,"StringDecoder",(function(){return C}));var s=r("diuv2"),i=r("iUL32"),o=r("5ug58"),c=r("fJq6z"),l=r("jtAN9");r("j3EDv");const a=l.create("Unexpected end of array"),h=l.create("Integer out of Range");class u{constructor(t){this.arr=t,this.pos=0}}const d=t=>new u(t),f=t=>t.pos!==t.arr.length,g=t=>((t,e)=>{const r=new Uint8Array(t.arr.buffer,t.pos+t.arr.byteOffset,e);return t.pos+=e,r})(t,w(t)),p=t=>t.arr[t.pos++],w=t=>{let e=0,r=1;const n=t.arr.length;for(;t.pos<n;){const n=t.arr[t.pos++];if(e+=(n&s.BITS7)*r,r*=128,n<s.BIT8)return e;if(e>o.MAX_SAFE_INTEGER)throw h}throw a},m=t=>{let e=t.arr[t.pos++],r=e&s.BITS6,n=64;const i=(e&s.BIT7)>0?-1:1;if(!(e&s.BIT8))return i*r;const c=t.arr.length;for(;t.pos<c;){if(e=t.arr[t.pos++],r+=(e&s.BITS7)*n,n*=128,e<s.BIT8)return i*r;if(r>o.MAX_SAFE_INTEGER)throw h}throw a},y=c.utf8TextDecoder?t=>c.utf8TextDecoder.decode(g(t)):t=>{let e=w(t);if(0===e)return"";{let r=String.fromCodePoint(p(t));if(--e<100)for(;e--;)r+=String.fromCodePoint(p(t));else for(;e>0;){const n=e<1e4?e:1e4,s=t.arr.subarray(t.pos,t.pos+n);t.pos+=n,r+=String.fromCodePoint.apply(null,s),e-=n}return decodeURIComponent(escape(r))}},b=(t,e)=>{const r=new DataView(t.arr.buffer,t.arr.byteOffset+t.pos,e);return t.pos+=e,r},k=[t=>{},t=>null,m,t=>b(t,4).getFloat32(0,!1),t=>b(t,8).getFloat64(0,!1),t=>b(t,8).getBigInt64(0,!1),t=>!1,t=>!0,y,t=>{const e=w(t),r={};for(let n=0;n<e;n++)r[y(t)]=_(t);return r},t=>{const e=w(t),r=[];for(let n=0;n<e;n++)r.push(_(t));return r},g],_=t=>k[127-p(t)](t);class x extends u{constructor(t,e){super(t),this.reader=e,this.s=null,this.count=0}read(){return 0===this.count&&(this.s=this.reader(this),f(this)?this.count=w(this)+1:this.count=-1),this.count--,this.s}}class S extends u{constructor(t){super(t),this.s=0,this.count=0}read(){if(0===this.count){this.s=m(this);const t=i.isNegativeZero(this.s);this.count=1,t&&(this.s=-this.s,this.count=w(this)+2)}return this.count--,this.s}}class E extends u{constructor(t){super(t),this.s=0,this.count=0,this.diff=0}read(){if(0===this.count){const t=m(this),e=1&t;this.diff=i.floor(t/2),this.count=1,e&&(this.count=w(this)+2)}return this.s+=this.diff,this.count--,this.s}}class C{constructor(t){this.decoder=new S(t),this.str=y(this.decoder),this.spos=0}read(){const t=this.spos+this.decoder.read(),e=this.str.slice(this.spos,t);return this.spos=t,e}}})),r.register("jtAN9",(function(e,r){t(e.exports,"create",(function(){return n})),t(e.exports,"methodUnimplemented",(function(){return s})),t(e.exports,"unexpectedCase",(function(){return i}));const n=t=>new Error(t),s=()=>{throw n("Method unimplemented")},i=()=>{throw n("Unexpected case")}})),r.register("9c5sf",(function(e,n){t(e.exports,"uint32",(function(){return i})),t(e.exports,"uuidv4",(function(){return o})),r("iUL32"),r("diuv2");var s=r("56GYt");Math.random;const i=()=>(0,s.getRandomValues)(new Uint32Array(1))[0],o=()=>"10000000-1000-4000-8000-100000000000".replace(/[018]/g,(t=>(t^i()&15>>t/4).toString(16)))})),r.register("56GYt",(function(e,r){t(e.exports,"getRandomValues",(function(){return n})),crypto.subtle;const n=crypto.getRandomValues.bind(crypto)})),r.register("hpG0a",(function(e,n){t(e.exports,"create",(function(){return s})),r("k2yVv");const s=t=>new Promise(t);Promise.all.bind(Promise)})),r.register("k2yVv",(function(e,n){t(e.exports,"getUnixTime",(function(){return s})),r("4OCIJ"),r("iUL32");const s=Date.now})),r.register("4OCIJ",(function(e,n){t(e.exports,"prefix",(function(){return c}));var s=r("iUL32");const i=["","k","M","G","T","P","E","Z","Y"],o=["","m","μ","n","p","f","a","z","y"],c=(t,e=0)=>{const r=0===t?0:s.log10(t);let n=0;for(;r<3*n&&e>-8;)e--,n--;for(;r>=3+3*n&&e<8;)e++,n++;const c=e<0?o[-e]:i[e];return{n:s.round(1e12*(n>0?t/s.exp10(3*n):t*s.exp10(-3*n)))/1e12,prefix:c}}})),r.register("f6bdK",(function(e,n){t(e.exports,"copyUint8Array",(function(){return i}));r("fJq6z");var s=r("1TTGp");r("kDMzp"),r("iUL32"),r("j3EDv"),r("heYZO"),r("1D1do").Buffer;const i=(s.isBrowser,s.isBrowser,t=>{const e=(t=>new Uint8Array(t))(t.byteLength);return e.set(t),e})})),r.register("1TTGp",(function(e,n){t(e.exports,"isBrowser",(function(){return u})),t(e.exports,"getVariable",(function(){return p})),t(e.exports,"supportsColor",(function(){return m}));var s=r("cuboK"),i=r("fJq6z"),o=r("buSng"),c=r("0ztOM"),l=r("ixCIn"),a=r("5Cbw2");const h=void 0!==a&&a.release&&/node|io\.js/.test(a.release.name)&&"[object process]"===Object.prototype.toString.call(void 0!==a?a:0),u="undefined"!=typeof window&&"undefined"!=typeof document&&!h;let d;"undefined"!=typeof navigator&&/Mac/.test(navigator.platform);const f=[],g=t=>(()=>{if(void 0===d)if(h){d=s.create();const t=a.argv;let e=null;for(let r=0;r<t.length;r++){const n=t[r];"-"===n[0]?(null!==e&&d.set(e,""),e=n):null!==e?(d.set(e,n),e=null):f.push(n)}null!==e&&d.set(e,"")}else"object"==typeof location?(d=s.create(),(location.search||"?").slice(1).split("&").forEach((t=>{if(0!==t.length){const[e,r]=t.split("=");d.set(`--${i.fromCamelCase(e,"-")}`,r),d.set(`-${i.fromCamelCase(e,"-")}`,r)}}))):d=s.create();return d})().has(t),p=t=>h?o.undefinedToNull(a.env[t.toUpperCase()]):o.undefinedToNull(c.varStorage.getItem(t));g("--"+"production")||p("production");const w=h&&l.isOneOf(void 0,["true","1","2"]),m=!g("no-colors")&&(!h||a.stdout.isTTY||w)&&(!h||g("color")||w||null!==p("COLORTERM")||(p("TERM")||"").includes("color"))})),r.register("buSng",(function(e,r){t(e.exports,"undefinedToNull",(function(){return n}));const n=t=>void 0===t?null:t})),r.register("0ztOM",(function(e,r){t(e.exports,"varStorage",(function(){return i}));let n=new class{constructor(){this.map=new Map}setItem(t,e){this.map.set(t,e)}getItem(t){return this.map.get(t)}},s=!0;try{"undefined"!=typeof localStorage&&localStorage&&(n=localStorage,s=!1)}catch(t){}const i=n})),r.register("ixCIn",(function(e,n){t(e.exports,"callAll",(function(){return i})),t(e.exports,"nop",(function(){return o})),t(e.exports,"id",(function(){return c})),t(e.exports,"isOneOf",(function(){return l}));var s=r("kDMzp");r("gBQSU");const i=(t,e,r=0)=>{try{for(;r<t.length;r++)t[r](...e)}finally{r<t.length&&i(t,e,r+1)}},o=()=>{},c=t=>t,l=(t,e)=>e.includes(t);s.isArray})),r.register("gBQSU",(function(e,r){t(e.exports,"assign",(function(){return n})),t(e.exports,"forEach",(function(){return i})),t(e.exports,"length",(function(){return o})),t(e.exports,"isEmpty",(function(){return c})),t(e.exports,"hasProperty",(function(){return l})),t(e.exports,"equalFlat",(function(){return a}));const n=Object.assign,s=Object.keys,i=(t,e)=>{for(const r in t)e(t[r],r)},o=t=>s(t).length,c=t=>{for(const e in t)return!1;return!0},l=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),a=(t,e)=>t===e||o(t)===o(e)&&((t,e)=>{for(const r in t)if(!e(t[r],r))return!1;return!0})(t,((t,r)=>(void 0!==t||l(e,r))&&e[r]===t))})),r.register("5Cbw2",(function(t,e){var r,n,s=t.exports={};function i(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function c(t){if(r===setTimeout)return setTimeout(t,0);if((r===i||!r)&&setTimeout)return r=setTimeout,setTimeout(t,0);try{return r(t,0)}catch(e){try{return r.call(null,t,0)}catch(e){return r.call(this,t,0)}}}!function(){try{r="function"==typeof setTimeout?setTimeout:i}catch(t){r=i}try{n="function"==typeof clearTimeout?clearTimeout:o}catch(t){n=o}}();var l,a=[],h=!1,u=-1;function d(){h&&l&&(h=!1,l.length?a=l.concat(a):u=-1,a.length&&f())}function f(){if(!h){var t=c(d);h=!0;for(var e=a.length;e;){for(l=a,a=[];++u<e;)l&&l[u].run();u=-1,e=a.length}l=null,h=!1,function(t){if(n===clearTimeout)return clearTimeout(t);if((n===o||!n)&&clearTimeout)return n=clearTimeout,clearTimeout(t);try{n(t)}catch(e){try{return n.call(null,t)}catch(e){return n.call(this,t)}}}(t)}}function g(t,e){this.fun=t,this.array=e}function p(){}s.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)e[r-1]=arguments[r];a.push(new g(t,e)),1!==a.length||h||c(f)},g.prototype.run=function(){this.fun.apply(null,this.array)},s.title="browser",s.browser=!0,s.env={},s.argv=[],s.version="",s.versions={},s.on=p,s.addListener=p,s.once=p,s.off=p,s.removeListener=p,s.removeAllListeners=p,s.emit=p,s.prependListener=p,s.prependOnceListener=p,s.listeners=function(t){return[]},s.binding=function(t){throw new Error("process.binding is not supported")},s.cwd=function(){return"/"},s.chdir=function(t){throw new Error("process.chdir is not supported")},s.umask=function(){return 0}})),r.register("fK7I3",(function(e,n){t(e.exports,"print",(function(){return d})),t(e.exports,"warn",(function(){return f})),t(e.exports,"BOLD",(function(){return r("37RhN").BOLD})),t(e.exports,"UNBOLD",(function(){return r("37RhN").UNBOLD})),t(e.exports,"RED",(function(){return r("37RhN").RED})),t(e.exports,"ORANGE",(function(){return r("37RhN").ORANGE}));var s=r("1TTGp"),i=r("aYKIU"),o=r("cGRJO"),c=r("7Nfk8"),l=(r("4RKQg"),r("cuboK")),a=(r("92eZa"),r("iUL32"),r("37RhN"));const h={[(a=r("37RhN")).BOLD]:o.create("font-weight","bold"),[a.UNBOLD]:o.create("font-weight","normal"),[a.BLUE]:o.create("color","blue"),[a.GREEN]:o.create("color","green"),[a.GREY]:o.create("color","grey"),[a.RED]:o.create("color","red"),[a.PURPLE]:o.create("color","purple"),[a.ORANGE]:o.create("color","orange"),[a.UNCOLOR]:o.create("color","black")},u=s.supportsColor?t=>{const e=[],r=[],n=l.create();let s=[],i=0;for(;i<t.length;i++){const s=t[i],o=h[s];if(void 0!==o)n.set(o.left,o.right);else{if(s.constructor!==String&&s.constructor!==Number)break;{const t=c.mapToStyleString(n);i>0||t.length>0?(e.push("%c"+s),r.push(t)):e.push(s)}}}for(i>0&&(s=r,s.unshift(e.join("")));i<t.length;i++){const e=t[i];e instanceof Symbol||s.push(e)}return s}:a.computeNoColorLoggingArgs,d=(...t)=>{console.log(...u(t)),g.forEach((e=>e.print(t)))},f=(...t)=>{console.warn(...u(t)),t.unshift(a.ORANGE),g.forEach((e=>e.print(t)))},g=i.create()})),r.register("cGRJO",(function(e,r){t(e.exports,"create",(function(){return s})),t(e.exports,"forEach",(function(){return i}));class n{constructor(t,e){this.left=t,this.right=e}}const s=(t,e)=>new n(t,e),i=(t,e)=>t.forEach((t=>e(t.left,t.right)))})),r.register("7Nfk8",(function(e,n){t(e.exports,"append",(function(){return l})),t(e.exports,"addEventListener",(function(){return a})),t(e.exports,"element",(function(){return h})),t(e.exports,"text",(function(){return u})),t(e.exports,"mapToStyleString",(function(){return d}));var s=r("cGRJO"),i=r("cuboK");const o="undefined"!=typeof document?document:{},c=("undefined"!=typeof DOMParser&&new DOMParser,t=>{const e=o.createDocumentFragment();for(let r=0;r<t.length;r++)f(e,t[r]);return e}),l=(t,e)=>(f(t,c(e)),t),a=(t,e,r)=>t.addEventListener(e,r),h=(t,e=[],r=[])=>l(((t,e)=>(s.forEach(e,((e,r)=>{!1===r?t.removeAttribute(e):!0===r?t.setAttribute(e,""):t.setAttribute(e,r)})),t))((t=>o.createElement(t))(t),e),r),u=t=>o.createTextNode(t),d=t=>i.map(t,((t,e)=>`${e}:${t};`)).join(""),f=(t,e)=>t.appendChild(e);o.ELEMENT_NODE,o.TEXT_NODE,o.CDATA_SECTION_NODE,o.COMMENT_NODE,o.DOCUMENT_NODE,o.DOCUMENT_TYPE_NODE,o.DOCUMENT_FRAGMENT_NODE})),r.register("4RKQg",(function(e,r){t(e.exports,"stringify",(function(){return n}));const n=JSON.stringify;JSON.parse})),r.register("92eZa",(function(e,r){t(e.exports,"enqueue",(function(){return i}));let n=[];const s=()=>{for(let t=0;t<n.length;t++)n[t]();n=[]},i=t=>{n.push(t),1===n.length&&setTimeout(s,0)},o=t=>class{constructor(t){this._=t}destroy(){t(this._)}};o(clearTimeout),o(clearInterval),o((t=>"undefined"!=typeof requestAnimationFrame&&cancelAnimationFrame(t))),o((t=>"undefined"!=typeof cancelIdleCallback&&cancelIdleCallback(t)))})),r.register("37RhN",(function(e,n){t(e.exports,"BOLD",(function(){return l})),t(e.exports,"UNBOLD",(function(){return a})),t(e.exports,"BLUE",(function(){return h})),t(e.exports,"GREY",(function(){return u})),t(e.exports,"GREEN",(function(){return d})),t(e.exports,"RED",(function(){return f})),t(e.exports,"PURPLE",(function(){return g})),t(e.exports,"ORANGE",(function(){return p})),t(e.exports,"UNCOLOR",(function(){return w})),t(e.exports,"computeNoColorLoggingArgs",(function(){return m})),t(e.exports,"createModuleLogger",(function(){return _}));var s=r("jR3GT"),i=r("k2yVv"),o=r("1TTGp"),c=r("ixCIn");const l=s.create(),a=s.create(),h=s.create(),u=s.create(),d=s.create(),f=s.create(),g=s.create(),p=s.create(),w=s.create(),m=t=>{const e=[],r=[];let n=0;for(;n<t.length;n++){const s=t[n];s.constructor===String||s.constructor===Number?e.push(s):s.constructor===Object&&r.push(JSON.stringify(s))}return r},y=[d,g,p,h];let b=0,k=i.getUnixTime();const _=(t,e)=>{const r=y[b],n=o.getVariable("log"),s=null!==n&&("*"===n||"true"===n||new RegExp(n,"gi").test(e));return b=(b+1)%y.length,e+=": ",s?(...n)=>{const s=i.getUnixTime(),o=s-k;k=s,t(r,e,w,...n.map((t=>"string"==typeof t||"symbol"==typeof t?t:JSON.stringify(t))),r," +"+o+"ms")}:c.nop}})),r.register("jR3GT",(function(e,r){t(e.exports,"create",(function(){return n}));const n=Symbol})),r.register("fiX3Z",(function(e,r){t(e.exports,"iteratorFilter",(function(){return s})),t(e.exports,"iteratorMap",(function(){return i}));const n=t=>({[Symbol.iterator](){return this},next:t}),s=(t,e)=>n((()=>{let r;do{r=t.next()}while(!r.done&&!e(r.value));return r})),i=(t,e)=>n((()=>{const{done:r,value:n}=t.next();return{done:r,value:r?void 0:e(n)}}))})),r.register("g4rKG",(function(e,n){t(e.exports,"YKeyValue",(function(){return i}));var s=r("fACbm");class i extends s.Observable{constructor(t){super(),this.yarray=t,this.doc=t.doc,this.map=new Map;{const e=t.toArray();this.doc.transact((()=>{for(let r=e.length-1;r>=0;r--){const n=e[r];this.map.has(n.key)?t.delete(r):this.map.set(n.key,n)}}))}t.observe(((e,r)=>{const n=new Map,s=Array.from(e.changes.added);e.changes.deleted.forEach((t=>{t.content.getContent().forEach((t=>{this.map.get(t.key)===t&&(this.map.delete(t.key),n.set(t.key,{action:"delete",oldValue:t.val}))}))}));const i=new Map;s.map((t=>t.content.getContent())).flat().forEach((t=>{i.set(t.key,t)}));const o=new Set,c=t.toArray();this.doc.transact((e=>{for(let e=c.length-1;e>=0&&(i.size>0||o.size>0);e--){const r=c[e];if(o.has(r.key))o.delete(r.key),t.delete(e,1);else if(i.get(r.key)===r){const t=this.map.get(r.key);if(t)o.add(r.key),n.set(r.key,{action:"update",oldValue:t.val,newValue:r.val});else{const t=n.get(r.key);t&&"delete"===t.action?n.set(r.key,{action:"update",newValue:r.val,oldValue:t.oldValue}):n.set(r.key,{action:"add",newValue:r.val})}i.delete(r.key),this.map.set(r.key,r)}else i.has(r.key)&&(o.add(r.key),i.delete(r.key))}})),n.size>0&&this.emit("change",[n,r])}))}set(t,e){this.doc.transact((r=>{this.map.has(t)&&this.delete(t),this.yarray.push([{key:t,val:e}])}))}delete(t){let e=0;for(const r of this.yarray){if(r.key===t){this.yarray.delete(e);break}e++}}get(t){const e=this.map.get(t);return e&&e.val}has(t){return this.map.has(t)}}})),r.register("3Lnfd",(function(e,r){t(e.exports,"encode",(function(){return s})),t(e.exports,"decode",(function(){return o}));const{fromCharCode:n}=String,s=t=>{const e=[];for(let r=0,{length:s}=t;r<s;r++)e.push(n(t[r]));return btoa(e.join(""))},i=t=>t.charCodeAt(0),o=t=>Uint8Array.from(atob(t),i)}))}();
|
package/dist/Edrys.947d4ad2.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function t(t,e,r,n){Object.defineProperty(t,e,{get:r,set:n,enumerable:!0,configurable:!0})}var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},r=e.parcelRequirea18f;r.register("bQEo7",(function(e,n){t(e.exports,"uint8_to_base64",(()=>c)),t(e.exports,"base64_to_unit8",(()=>l)),t(e.exports,"Sync",(()=>h));var s=r("8kr9p"),i=r("bDw11"),o=r("gjWRH");function c(t){return(0,o.encode)(t)}function l(t){return(0,o.decode)(t)}function a(t=16){let e="";for(let r=0;r<t;r++)e+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".charAt(Math.floor(62*Math.random()));return e}class h{isConnected=!1;replyOnReceive=!1;constructor(t,e,r,n,o=!1,c=!0){let l;try{l=window.localStorage.getItem("lia-token"),l||(l=a(),window.localStorage.setItem("lia-token",l))}catch(t){console.warn("cannot write to localStorage"),l=a()}this.token=l,this.urlCounter=0,this.cbConnection=t,this.cbRelay=e,this.onConnect=r,this.onReceive=n,this.replyOnReceive=o;const h=this,d=function(t){let e=null;function r(){return 200*(t.db.getPeers().length+1)+(t.db.initialized?5e3:1e3)}function n(){if(t.isConnected)try{t.broadcast(!0,t.db.encode()),e=window.setTimeout(n,r())}catch(t){e=null}}return()=>{e&&window.clearTimeout(e),e=window.setTimeout(n,r())}}(h);this.gossip=d;const u=s.throttle((()=>{h.broadcast(!0,h.db.encode()),d()}),1e3);this.db=new(0,i.CRDT)(l,c?(t,e)=>{if(h.db){switch(e){case"cursor":this.sync("update",{cmd:"cursor",param:t});break;case"peer":this.sync("update",{cmd:"peer",param:t});break;case"code":this.sync("update",{cmd:"code",param:t});break;case"quiz":this.sync("update",{cmd:"quiz",param:t});break;case"survey":this.sync("update",{cmd:"survey",param:t});break;case"chat":this.sync("update",{cmd:"chat",param:t});break;case"exit":try{e=null,this.broadcast(!0,t),this.destroy()}catch(t){}break;default:console.warn("Sync unknown origin",e)}e&&u()}}:void 0)}connect(t){this.room=t.room,this.course=t.course,this.password=t.password,this.isConnected=!0}destroy(){this.db.destroy(),this.cbConnection("disconnect",this.token),this.isConnected=!1}disconnect(){this.db.removePeer()}uniqueID(){return"string"==typeof this.room&&(this.room.startsWith('"')&&this.room.endsWith('"')||this.room.startsWith("'")&&this.room.endsWith("'"))?this.room:this.course&&this.room?JSON.stringify({course:this.course,room:this.room,pw:s.getHashCode(this.password||"")}):(console.warn("Sync: no uniqueID"),null)}sendToLia(t){this.cbRelay(t)}sync(t,e=null){this.cbConnection(t,e)}sendDisconnectError(t){this.sync("error",t)}sendConnect(){this.sync("connect",this.token),this.onConnect&&this.onConnect()}pubsubSend(t,e){const r=JSON.stringify({topic:t,message:e}),n=new TextEncoder;this.broadcast(!1,n.encode(r)),this.replyOnReceive&&this.onReceive?.(t,e)}pubsubReceive(t){try{const e=(new TextDecoder).decode(t),r=JSON.parse(e);this.onReceive?.(r.topic,r.message)}catch(t){console.warn("Sync: pubsubReceive",t.message)}}broadcast(t,e){console.warn("broadcast needs to be implemented")}load(t,e){try{for(let r=0;r<t.length;r++){const n=document.createElement("script");n.async=!1,n.defer=!0,n.src=t[r],this.urlCounter++;let s=this;n.onload=function(){console.log("successfully loaded =>",t),s.urlCounter--,0==s.urlCounter&&e.init(!0)},n.onerror=function(r){console.warn("could not load =>",t,r),s.urlCounter=0,e.init(!1,`could not load => ${t}`)},document.head.appendChild(n)}}catch(t){console.error("load: ",t),e.init(!1,t.message)}}publish(t){switch(t.message.cmd){case"update":break;case"join":this.db.init(t.message.param),this.gossip();break;case"chat":this.db.addChatMessage(t.message.param);break;case"quiz":"quiz"===t.track?.[0][0]&&"id"===t.track?.[1][0]?this.db.addQuiz(t.track[0][1],t.track[1][1],t.message.param):console.warn("SyncTX wrong event ->",t);break;case"survey":"survey"===t.track?.[0][0]&&"id"===t.track?.[1][0]?this.db.addSurvey(t.track[0][1],t.track[1][1],t.message.param):console.warn("SyncTX wrong event ->",t);break;case"code":"code"===t.track?.[0][0]&&"id"===t.track?.[1][0]?this.db.updateCode(t.track[0][1],t.track[1][1],t.message.param.j,t.message.param.msg):console.warn("SyncTX wrong event ->",t);break;case"codes":if("code"===t.track?.[0][0]&&1===t.track.length)for(let e=0;e<t.message.param.length;e++)for(let r=0;r<t.message.param[e].length;r++)this.db.initCode(t.track[0][1],e,r,t.message.param[e][r]);else console.warn("SyncTX wrong event ->",t);break;case"cursor":"code"==t.track?.[0][0]&&this.db.setCursor(t.track[0][1],t.message.param);break;case"broadcast":this.broadcast(!0,t.message.param);default:console.warn("SyncTX unknown command:",t.message)}}applyUpdate(t,e=!1){this.db.applyUpdate(t,e)}}})),r.register("bDw11",(function(e,n){t(e.exports,"CRDT",(()=>a));var s=r("bx9uf"),i=r("8kr9p"),o=r("7X7lt");const c="peers",l="cursors";class a{timestamp=Date.now();initialized=!1;constructor(t,e){this.doc=new s.Doc,this.callback=e||((t,e)=>{console.warn("SyncDB: no callback provided")}),this.length=0,this.peerID=t,this.peers=this.doc.getMap(c),this.cursors=this.doc.getMap(l),this.codes=this.doc.getMap("c"),this.quizzes=new(0,o.YKeyValue)(this.doc.getArray("q")),this.surveys=new(0,o.YKeyValue)(this.doc.getArray("s")),this.chat=new(0,o.YKeyValue)(this.doc.getArray("chat"));const r=this;setTimeout((()=>{r.initialized=!0}),5e3)}init(t){this.initState=t,this.length=Math.max(this.length,t.length);const e=this;this.doc.transact((()=>{for(let r=0;r<t.length;r++)e.initMap(this.quizzes,r,t[r].q),e.initMap(this.surveys,r,t[r].s),e.initText(r,t[r].c);e.peers.set(e.peerID,!0)}),this.peerID),this.registerCallbacks()}registerCallbacks(){this.peers.observe((t=>{const e=this.getPeers();this.callback(e,"peer")})),this.cursors.observe((t=>{const e=this.getPeers();this.callback(this.getCursors(e),"cursor")})),this.quizzes.on("change",(t=>{const e=this.getUpdates(this.quizzes,t);e&&this.callback(e,"quiz")})),this.surveys.on("change",(t=>{const e=this.getUpdates(this.surveys,t);e&&this.callback(e,"survey")})),this.chat.on("change",(t=>{const e=[];let r;for(let[n,s]of t)"add"===s.action&&(r=s.newValue,r.id=parseInt(n),e.push(r));e.length>0&&this.callback(e,"chat")})),this.codes.observeDeep((t=>{const e=new Set;for(const r of t){const n=r.currentTarget.keys();for(const r of n)try{const[t]=JSON.parse(r);e.add(t)}catch(t){}}e.size>0&&this.callback(this.getCode(e),"code")})),this.peers.set(this.peerID,!0)}encode(){return s.encodeStateAsUpdate(this.doc)}destroy(){this.doc.destroy()}applyUpdate(t,e=!1){this.doc.transact((()=>{e?(this.doc.destroy(),this.doc=new s.Doc,s.applyUpdate(this.doc,t),this.peers=this.doc.getMap(c),this.cursors=this.doc.getMap(l),this.codes=this.doc.getMap("c"),this.quizzes=new(0,o.YKeyValue)(this.doc.getArray("q")),this.surveys=new(0,o.YKeyValue)(this.doc.getArray("s")),this.chat=new(0,o.YKeyValue)(this.doc.getArray("chat")),this.init(this.initState)):s.applyUpdate(this.doc,t)}))}log(){console.warn("*********** PEERS ***********"),console.warn(this.peers.toJSON()),console.warn("*********** STATE ***********"),console.warn(this.doc.toJSON())}initMap(t,e,r){if(0===r.length)return;let n;for(let s=0;s<r.length;s++){n=t.get(this.id(e,s)),n||(n={});for(const t in r[s])n[t]=r[s][t];t.set(this.id(e,s),n)}}initText(t,e){if(0!==e.length)for(let r=0;r<e.length;r++)for(let n=0;n<e[r].length;n++)this.initCode(t,r,n,e[r][n])}diff(t){return s.encodeStateAsUpdate(this.doc,t)}getCode(t){let e=[];for(const r of t)e.push({id:r,data:this.getAllTexts(r)});return e}getCursors(t){const e=[],r=this.cursors.toJSON();for(let n of t)n!==this.peerID&&void 0!==r[n]&&e.push(r[n]);return e}getPeers(){const t=this.peers.toJSON();return t?Object.entries(t).filter((([t,e])=>e)).map((([t,e])=>t)):[]}removePeer(t){this.doc.transact((()=>{this.peers.set(t||this.peerID,!1)})),void 0===t&&this.callback(this.encode(),"exit")}id(t,e,r){return void 0===r?JSON.stringify([t,e]):JSON.stringify([t,e,r])}getMap(t,e,r){return this.doc.getMap(this.id(e,r))}getAllMaps(t){const e=[];for(let r=0;r<this.length;r++){let n=[];for(let e=0;t.has(this.id(r,e));e++)n.push(t.get(this.id(r,e)));e.push(n)}return e}getMaps(t,e){const r=[];for(let n=0;e.has(this.id(t,n));n++)r.push(e.get(this.id(t,n)));return r}getAllTexts(t){let e,r=[];for(let n=0;this.codes.has(this.id(t,n,0));n++){let s=[];for(let r=0;this.codes.has(this.id(t,n,r));r++)e=this.codes.get(this.id(t,n,r)),s.push(e?.toString()||"");r.push(s)}return r}addQuiz(t,e,r){this.addRecord(this.quizzes,t,e,r)}addSurvey(t,e,r){this.addRecord(this.surveys,t,e,r)}addRecord(t,e,r,n){let s=t.get(this.id(e,r));s||(s={}),s[this.peerID]=n,t.set(this.id(e,r),s)}initCode(t,e,r,n){if(!this.codes.has(this.id(t,e,r))){const i=this.doc.clientID;this.doc.clientID=0;const o=new s.Text;o.insert(0,n),this.codes.set(this.id(t,e,r),o),this.doc.clientID=i}}addChatMessage(t){this.chat.set(""+Date.now(),{color:this.getColor(),message:t,user:this.peerID})}updateCode(t,e,r,n){this.codes.has(this.id(t,e,r))&&this.doc.transact((()=>{const s=this.codes.get(this.id(t,e,r));if(void 0!==s)for(let t of n)switch(t.action){case"insert":s.insert(t.index,t.content);break;case"remove":s.delete(t.index,t.content.length);break;default:console.warn("Sync code, unknown action ->",t)}}),"code")}getColor(){return this.color||(this.color=i.getColorFor(this.peerID)),this.color}setCursor(t,e){this.doc.transact((()=>{this.cursors.set(this.peerID,{id:this.peerID,section:t,project:e.project,file:e.file,state:e.state,color:this.getColor()})}),"cursor")}removeCursor(){this.cursors.delete(this.peerID)}getUpdates(t,e){const r=new Set,n=[];for(const[s,i]of e)switch(i.action){case"update":if(JSON.stringify(Object.keys(i.oldValue).sort())!==JSON.stringify(Object.keys(i.newValue).sort())){n.push([s,{...i.oldValue,...i.newValue}]);continue}case"add":try{const[t]=JSON.parse(s);r.add(t)}catch(t){}}const s=[];for(const e of r)s.push({id:e,data:this.getMaps(e,t)});for(const[e,r]of n)t.set(e,r);return s.length>0?s:null}}})),r.register("bx9uf",(function(n,s){t(n.exports,"Doc",(()=>M)),t(n.exports,"Text",(()=>Se)),t(n.exports,"applyUpdate",(()=>q)),t(n.exports,"encodeStateAsUpdate",(()=>Y));var i=r("8Gyr5"),o=r("9GMWx"),c=r("bGsfJ"),l=r("96q9T"),a=r("7BTJz"),h=r("l5188"),d=r("ouOhr"),u=r("fJEwH"),g=r("jx2H5"),f=r("3Y8uz"),p=r("bcXZT"),w=r("4H1bc"),m=(w=r("4H1bc"),r("5zT0w")),y=r("9hwjE"),b=r("9okbY"),k=(r("16gRh"),r("8drkQ"),r("iRxFz")),_=r("7C9F2");i.Observable;class x{constructor(t,e){this.clock=t,this.len=e}}class S{constructor(){this.clients=new Map}}const E=(t,e,r)=>e.clients.forEach(((e,n)=>{const s=t.doc.store.clients.get(n);for(let n=0;n<e.length;n++){const i=e[n];pt(t,s,i.clock,i.len,r)}})),C=(t,e)=>{const r=t.clients.get(e.client);return void 0!==r&&null!==((t,e)=>{let r=0,n=t.length-1;for(;r<=n;){const s=c.floor((r+n)/2),i=t[s],o=i.clock;if(o<=e){if(e<o+i.len)return s;r=s+1}else n=s-1}return null})(r,e.clock)},D=t=>{t.clients.forEach((t=>{let e,r;for(t.sort(((t,e)=>t.clock-e.clock)),e=1,r=1;e<t.length;e++){const n=t[r-1],s=t[e];n.clock+n.len>=s.clock?n.len=c.max(n.len,s.clock+s.len-n.clock):(r<e&&(t[r]=s),r++)}t.length=r}))},U=t=>{const e=new S;for(let r=0;r<t.length;r++)t[r].clients.forEach(((n,s)=>{if(!e.clients.has(s)){const i=n.slice();for(let e=r+1;e<t.length;e++)o.appendTo(i,t[e].clients.get(s)||[]);e.clients.set(s,i)}}));return D(e),e},v=(t,e,r,n)=>{l.setIfUndefined(t.clients,e,(()=>[])).push(new x(r,n))},A=()=>new S,T=(t,e)=>{a.writeVarUint(t.restEncoder,e.clients.size),o.from(e.clients.entries()).sort(((t,e)=>e[0]-t[0])).forEach((([e,r])=>{t.resetDsCurVal(),a.writeVarUint(t.restEncoder,e);const n=r.length;a.writeVarUint(t.restEncoder,n);for(let e=0;e<n;e++){const n=r[e];t.writeDsClock(n.clock),t.writeDsLen(n.len)}}))},I=t=>{const e=new S,r=h.readVarUint(t.restDecoder);for(let n=0;n<r;n++){t.resetDsCurVal();const r=h.readVarUint(t.restDecoder),n=h.readVarUint(t.restDecoder);if(n>0){const s=l.setIfUndefined(e.clients,r,(()=>[]));for(let e=0;e<n;e++)s.push(new x(t.readDsClock(),t.readDsLen()))}}return e},O=(t,e,r)=>{const n=new S,s=h.readVarUint(t.restDecoder);for(let i=0;i<s;i++){t.resetDsCurVal();const s=h.readVarUint(t.restDecoder),i=h.readVarUint(t.restDecoder),o=r.clients.get(s)||[],c=lt(r,s);for(let r=0;r<i;r++){const r=t.readDsClock(),i=r+t.readDsLen();if(r<c){c<i&&v(n,s,c,i-c);let t=ht(o,r),l=o[t];for(!l.deleted&&l.id.clock<r&&(o.splice(t+1,0,Ke(e,l,r-l.id.clock)),t++);t<o.length&&(l=o[t++],l.id.clock<i);)l.deleted||(i<l.id.clock+l.length&&o.splice(t,0,Ke(e,l,i-l.id.clock)),l.delete(e))}else v(n,s,r,i-r)}}if(n.clients.size>0){const t=new F;return a.writeVarUint(t.restEncoder,0),T(t,n),t.toUint8Array()}return null},V=d.uint32;class M extends i.Observable{constructor({guid:t=d.uuidv4(),collectionid:e=null,gc:r=!0,gcFilter:n=(()=>!0),meta:s=null,autoLoad:i=!1,shouldLoad:o=!0}={}){super(),this.gc=r,this.gcFilter=n,this.clientID=V(),this.guid=t,this.collectionid=e,this.share=new Map,this.store=new ot,this._transaction=null,this._transactionCleanups=[],this.subdocs=new Set,this._item=null,this.shouldLoad=o,this.autoLoad=i,this.meta=s,this.isLoaded=!1,this.isSynced=!1,this.whenLoaded=u.create((t=>{this.on("load",(()=>{this.isLoaded=!0,t(this)}))}));const c=()=>u.create((t=>{const e=r=>{void 0!==r&&!0!==r||(this.off("sync",e),t())};this.on("sync",e)}));this.on("sync",(t=>{!1===t&&this.isSynced&&(this.whenSynced=c()),this.isSynced=void 0===t||!0===t,this.isSynced&&!this.isLoaded&&this.emit("load",[])})),this.whenSynced=c()}load(){const t=this._item;null===t||this.shouldLoad||_t(t.parent.doc,(t=>{t.subdocsLoaded.add(this)}),null,!0),this.shouldLoad=!0}getSubdocs(){return this.subdocs}getSubdocGuids(){return new Set(o.from(this.subdocs).map((t=>t.guid)))}transact(t,e=null){return _t(this,t,e)}get(t,e=jt){const r=l.setIfUndefined(this.share,t,(()=>{const t=new e;return t._integrate(this,null),t})),n=r.constructor;if(e!==jt&&n!==e){if(n===jt){const n=new e;n._map=r._map,r._map.forEach((t=>{for(;null!==t;t=t.left)t.parent=n})),n._start=r._start;for(let t=n._start;null!==t;t=t.right)t.parent=n;return n._length=r._length,this.share.set(t,n),n._integrate(this,null),n}throw new Error(`Type with the name ${t} has already been defined with a different constructor`)}return r}getArray(t=""){return this.get(t,ie)}getText(t=""){return this.get(t,Se)}getMap(t=""){return this.get(t,ce)}getXmlElement(t=""){return this.get(t,De)}getXmlFragment(t=""){return this.get(t,Ce)}toJSON(){const t={};return this.share.forEach(((e,r)=>{t[r]=e.toJSON()})),t}destroy(){o.from(this.subdocs).forEach((t=>t.destroy()));const t=this._item;if(null!==t){this._item=null;const e=t.content;e.doc=new M({guid:this.guid,...e.opts,shouldLoad:!1}),e.doc._item=t,_t(t.parent.doc,(r=>{const n=e.doc;t.deleted||r.subdocsAdded.add(n),r.subdocsRemoved.add(this)}),null,!0)}this.emit("destroyed",[!0]),this.emit("destroy",[this]),super.destroy()}on(t,e){super.on(t,e)}off(t,e){super.off(t,e)}}class N{constructor(t){this.restDecoder=t}resetDsCurVal(){}readDsClock(){return h.readVarUint(this.restDecoder)}readDsLen(){return h.readVarUint(this.restDecoder)}}class R extends N{readLeftID(){return rt(h.readVarUint(this.restDecoder),h.readVarUint(this.restDecoder))}readRightID(){return rt(h.readVarUint(this.restDecoder),h.readVarUint(this.restDecoder))}readClient(){return h.readVarUint(this.restDecoder)}readInfo(){return h.readUint8(this.restDecoder)}readString(){return h.readVarString(this.restDecoder)}readParentInfo(){return 1===h.readVarUint(this.restDecoder)}readTypeRef(){return h.readVarUint(this.restDecoder)}readLen(){return h.readVarUint(this.restDecoder)}readAny(){return h.readAny(this.restDecoder)}readBuf(){return g.copyUint8Array(h.readVarUint8Array(this.restDecoder))}readJSON(){return JSON.parse(h.readVarString(this.restDecoder))}readKey(){return h.readVarString(this.restDecoder)}}class B{constructor(t){this.dsCurrVal=0,this.restDecoder=t}resetDsCurVal(){this.dsCurrVal=0}readDsClock(){return this.dsCurrVal+=h.readVarUint(this.restDecoder),this.dsCurrVal}readDsLen(){const t=h.readVarUint(this.restDecoder)+1;return this.dsCurrVal+=t,t}}class L extends B{constructor(t){super(t),this.keys=[],h.readVarUint(t),this.keyClockDecoder=new h.IntDiffOptRleDecoder(h.readVarUint8Array(t)),this.clientDecoder=new h.UintOptRleDecoder(h.readVarUint8Array(t)),this.leftClockDecoder=new h.IntDiffOptRleDecoder(h.readVarUint8Array(t)),this.rightClockDecoder=new h.IntDiffOptRleDecoder(h.readVarUint8Array(t)),this.infoDecoder=new h.RleDecoder(h.readVarUint8Array(t),h.readUint8),this.stringDecoder=new h.StringDecoder(h.readVarUint8Array(t)),this.parentInfoDecoder=new h.RleDecoder(h.readVarUint8Array(t),h.readUint8),this.typeRefDecoder=new h.UintOptRleDecoder(h.readVarUint8Array(t)),this.lenDecoder=new h.UintOptRleDecoder(h.readVarUint8Array(t))}readLeftID(){return new tt(this.clientDecoder.read(),this.leftClockDecoder.read())}readRightID(){return new tt(this.clientDecoder.read(),this.rightClockDecoder.read())}readClient(){return this.clientDecoder.read()}readInfo(){return this.infoDecoder.read()}readString(){return this.stringDecoder.read()}readParentInfo(){return 1===this.parentInfoDecoder.read()}readTypeRef(){return this.typeRefDecoder.read()}readLen(){return this.lenDecoder.read()}readAny(){return h.readAny(this.restDecoder)}readBuf(){return h.readVarUint8Array(this.restDecoder)}readJSON(){return h.readAny(this.restDecoder)}readKey(){const t=this.keyClockDecoder.read();if(t<this.keys.length)return this.keys[t];{const t=this.stringDecoder.read();return this.keys.push(t),t}}}class J{constructor(){this.restEncoder=a.createEncoder()}toUint8Array(){return a.toUint8Array(this.restEncoder)}resetDsCurVal(){}writeDsClock(t){a.writeVarUint(this.restEncoder,t)}writeDsLen(t){a.writeVarUint(this.restEncoder,t)}}class z extends J{writeLeftID(t){a.writeVarUint(this.restEncoder,t.client),a.writeVarUint(this.restEncoder,t.clock)}writeRightID(t){a.writeVarUint(this.restEncoder,t.client),a.writeVarUint(this.restEncoder,t.clock)}writeClient(t){a.writeVarUint(this.restEncoder,t)}writeInfo(t){a.writeUint8(this.restEncoder,t)}writeString(t){a.writeVarString(this.restEncoder,t)}writeParentInfo(t){a.writeVarUint(this.restEncoder,t?1:0)}writeTypeRef(t){a.writeVarUint(this.restEncoder,t)}writeLen(t){a.writeVarUint(this.restEncoder,t)}writeAny(t){a.writeAny(this.restEncoder,t)}writeBuf(t){a.writeVarUint8Array(this.restEncoder,t)}writeJSON(t){a.writeVarString(this.restEncoder,JSON.stringify(t))}writeKey(t){a.writeVarString(this.restEncoder,t)}}class j{constructor(){this.restEncoder=a.createEncoder(),this.dsCurrVal=0}toUint8Array(){return a.toUint8Array(this.restEncoder)}resetDsCurVal(){this.dsCurrVal=0}writeDsClock(t){const e=t-this.dsCurrVal;this.dsCurrVal=t,a.writeVarUint(this.restEncoder,e)}writeDsLen(t){0===t&&f.unexpectedCase(),a.writeVarUint(this.restEncoder,t-1),this.dsCurrVal+=t}}class F extends j{constructor(){super(),this.keyMap=new Map,this.keyClock=0,this.keyClockEncoder=new a.IntDiffOptRleEncoder,this.clientEncoder=new a.UintOptRleEncoder,this.leftClockEncoder=new a.IntDiffOptRleEncoder,this.rightClockEncoder=new a.IntDiffOptRleEncoder,this.infoEncoder=new a.RleEncoder(a.writeUint8),this.stringEncoder=new a.StringEncoder,this.parentInfoEncoder=new a.RleEncoder(a.writeUint8),this.typeRefEncoder=new a.UintOptRleEncoder,this.lenEncoder=new a.UintOptRleEncoder}toUint8Array(){const t=a.createEncoder();return a.writeVarUint(t,0),a.writeVarUint8Array(t,this.keyClockEncoder.toUint8Array()),a.writeVarUint8Array(t,this.clientEncoder.toUint8Array()),a.writeVarUint8Array(t,this.leftClockEncoder.toUint8Array()),a.writeVarUint8Array(t,this.rightClockEncoder.toUint8Array()),a.writeVarUint8Array(t,a.toUint8Array(this.infoEncoder)),a.writeVarUint8Array(t,this.stringEncoder.toUint8Array()),a.writeVarUint8Array(t,a.toUint8Array(this.parentInfoEncoder)),a.writeVarUint8Array(t,this.typeRefEncoder.toUint8Array()),a.writeVarUint8Array(t,this.lenEncoder.toUint8Array()),a.writeUint8Array(t,a.toUint8Array(this.restEncoder)),a.toUint8Array(t)}writeLeftID(t){this.clientEncoder.write(t.client),this.leftClockEncoder.write(t.clock)}writeRightID(t){this.clientEncoder.write(t.client),this.rightClockEncoder.write(t.clock)}writeClient(t){this.clientEncoder.write(t)}writeInfo(t){this.infoEncoder.write(t)}writeString(t){this.stringEncoder.write(t)}writeParentInfo(t){this.parentInfoEncoder.write(t?1:0)}writeTypeRef(t){this.typeRefEncoder.write(t)}writeLen(t){this.lenEncoder.write(t)}writeAny(t){a.writeAny(this.restEncoder,t)}writeBuf(t){a.writeVarUint8Array(this.restEncoder,t)}writeJSON(t){a.writeAny(this.restEncoder,t)}writeKey(t){const e=this.keyMap.get(t);void 0===e?(this.keyClockEncoder.write(this.keyClock++),this.stringEncoder.write(t)):this.keyClockEncoder.write(e)}}const P=(t,e,r)=>{const n=new Map;r.forEach(((t,r)=>{lt(e,r)>t&&n.set(r,t)})),ct(e).forEach(((t,e)=>{r.has(e)||n.set(e,0)})),a.writeVarUint(t.restEncoder,n.size),o.from(n.entries()).sort(((t,e)=>e[0]-t[0])).forEach((([r,n])=>{((t,e,r,n)=>{n=c.max(n,e[0].id.clock);const s=ht(e,n);a.writeVarUint(t.restEncoder,e.length-s),t.writeClient(r),a.writeVarUint(t.restEncoder,n);const i=e[s];i.write(t,n-i.id.clock);for(let r=s+1;r<e.length;r++)e[r].write(t,0)})(t,e.clients.get(r),r,n)}))},G=(t,e,r,n=L)=>{const s=h.createDecoder(e);((t,e,r,n=new L(t))=>{_t(e,(t=>{t.local=!1;let e=!1;const r=t.doc,s=r.store,i=((t,e)=>{const r=l.create(),n=h.readVarUint(t.restDecoder);for(let s=0;s<n;s++){const n=h.readVarUint(t.restDecoder),s=new Array(n),i=t.readClient();let o=h.readVarUint(t.restDecoder);r.set(i,{i:0,refs:s});for(let r=0;r<n;r++){const n=t.readInfo();switch(p.BITS5&n){case 0:{const e=t.readLen();s[r]=new Ie(rt(i,o),e),o+=e;break}case 10:{const e=h.readVarUint(t.restDecoder);s[r]=new tr(rt(i,o),e),o+=e;break}default:{const c=!(n&(p.BIT7|p.BIT8)),l=new $e(rt(i,o),null,(n&p.BIT8)===p.BIT8?t.readLeftID():null,null,(n&p.BIT7)===p.BIT7?t.readRightID():null,c?t.readParentInfo()?e.get(t.readString()):t.readLeftID():null,c&&(n&p.BIT6)===p.BIT6?t.readString():null,Qe(t,n));s[r]=l,o+=l.length}}}}return r})(n,r),c=((t,e,r)=>{const n=[];let s=o.from(r.keys()).sort(((t,e)=>t-e));if(0===s.length)return null;const i=()=>{if(0===s.length)return null;let t=r.get(s[s.length-1]);for(;t.refs.length===t.i;){if(s.pop(),!(s.length>0))return null;t=r.get(s[s.length-1])}return t};let c=i();if(null===c)return null;const h=new ot,d=new Map,u=(t,e)=>{const r=d.get(t);(null==r||r>e)&&d.set(t,e)};let g=c.refs[c.i++];const f=new Map,p=()=>{for(const t of n){const e=t.id.client,n=r.get(e);n?(n.i--,h.clients.set(e,n.refs.slice(n.i)),r.delete(e),n.i=0,n.refs=[]):h.clients.set(e,[t]),s=s.filter((t=>t!==e))}n.length=0};for(;;){if(g.constructor!==tr){const s=l.setIfUndefined(f,g.id.client,(()=>lt(e,g.id.client)))-g.id.clock;if(s<0)n.push(g),u(g.id.client,g.id.clock-1),p();else{const i=g.getMissing(t,e);if(null!==i){n.push(g);const t=r.get(i)||{refs:[],i:0};if(t.refs.length!==t.i){g=t.refs[t.i++];continue}u(i,lt(e,i)),p()}else(0===s||s<g.length)&&(g.integrate(t,s),f.set(g.id.client,g.id.clock+g.length))}}if(n.length>0)g=n.pop();else if(null!==c&&c.i<c.refs.length)g=c.refs[c.i++];else{if(c=i(),null===c)break;g=c.refs[c.i++]}}if(h.clients.size>0){const t=new F;return P(t,h,new Map),a.writeVarUint(t.restEncoder,0),{missing:d,update:t.toUint8Array()}}return null})(t,s,i),d=s.pendingStructs;if(d){for(const[t,r]of d.missing)if(r<lt(s,t)){e=!0;break}if(c){for(const[t,e]of c.missing){const r=d.missing.get(t);(null==r||r>e)&&d.missing.set(t,e)}d.update=Dt([d.update,c.update])}}else s.pendingStructs=c;const u=O(n,t,s);if(s.pendingDs){const e=new L(h.createDecoder(s.pendingDs));h.readVarUint(e.restDecoder);const r=O(e,t,s);s.pendingDs=u&&r?Dt([u,r]):u||r}else s.pendingDs=u;if(e){const e=s.pendingStructs.update;s.pendingStructs=null,G(t.doc,e)}}),r,!1)})(s,t,r,new n(s))},q=(t,e,r)=>G(t,e,r,R),W=(t,e=new Uint8Array([0]),r=new F)=>{((t,e,r=new Map)=>{P(t,e.store,r),T(t,(t=>{const e=A();return t.clients.forEach(((t,r)=>{const n=[];for(let e=0;e<t.length;e++){const r=t[e];if(r.deleted){const s=r.id.clock;let i=r.length;if(e+1<t.length)for(let r=t[e+1];e+1<t.length&&r.deleted;r=t[1+ ++e])i+=r.length;n.push(new x(s,i))}}n.length>0&&e.clients.set(r,n)})),e})(e.store))})(r,t,X(e));const n=[r.toUint8Array()];if(t.store.pendingDs&&n.push(t.store.pendingDs),t.store.pendingStructs&&n.push(Ut(t.store.pendingStructs.update,e)),n.length>1){if(r.constructor===z)return Et(n.map(((t,e)=>0===e?t:It(t))));if(r.constructor===F)return Dt(n)}return n[0]},Y=(t,e)=>W(t,e,new z),X=t=>(t=>{const e=new Map,r=h.readVarUint(t.restDecoder);for(let n=0;n<r;n++){const r=h.readVarUint(t.restDecoder),n=h.readVarUint(t.restDecoder);e.set(r,n)}return e})(new N(h.createDecoder(t)));class H{constructor(){this.l=[]}}const K=()=>new H,$=(t,e)=>t.l.push(e),Q=(t,e)=>{const r=t.l,n=r.length;t.l=r.filter((t=>e!==t)),n===t.l.length&&console.error("[yjs] Tried to remove event handler that doesn't exist.")},Z=(t,e,r)=>w.callAll(t.l,[e,r]);class tt{constructor(t,e){this.client=t,this.clock=e}}const et=(t,e)=>t===e||null!==t&&null!==e&&t.client===e.client&&t.clock===e.clock,rt=(t,e)=>new tt(t,e);class nt{constructor(t,e){this.ds=t,this.sv=e}}const st=(((t,e)=>{new nt(t,e)})(A(),new Map),(t,e)=>void 0===e?!t.deleted:e.sv.has(t.id.client)&&(e.sv.get(t.id.client)||0)>t.id.clock&&!C(e.ds,t.id)),it=(t,e)=>{const r=l.setIfUndefined(t.meta,it,m.create),n=t.doc.store;r.has(e)||(e.sv.forEach(((e,r)=>{e<lt(n,r)&>(t,rt(r,e))})),E(t,e.ds,(t=>{})),r.add(e))};class ot{constructor(){this.clients=new Map,this.pendingStructs=null,this.pendingDs=null}}const ct=t=>{const e=new Map;return t.clients.forEach(((t,r)=>{const n=t[t.length-1];e.set(r,n.id.clock+n.length)})),e},lt=(t,e)=>{const r=t.clients.get(e);if(void 0===r)return 0;const n=r[r.length-1];return n.id.clock+n.length},at=(t,e)=>{let r=t.clients.get(e.id.client);if(void 0===r)r=[],t.clients.set(e.id.client,r);else{const t=r[r.length-1];if(t.id.clock+t.length!==e.id.clock)throw f.unexpectedCase()}r.push(e)},ht=(t,e)=>{let r=0,n=t.length-1,s=t[n],i=s.id.clock;if(i===e)return n;let o=c.floor(e/(i+s.length-1)*n);for(;r<=n;){if(s=t[o],i=s.id.clock,i<=e){if(e<i+s.length)return o;r=o+1}else n=o-1;o=c.floor((r+n)/2)}throw f.unexpectedCase()},dt=(t,e)=>{const r=t.clients.get(e.client);return r[ht(r,e.clock)]},ut=(t,e,r)=>{const n=ht(e,r),s=e[n];return s.id.clock<r&&s instanceof $e?(e.splice(n+1,0,Ke(t,s,r-s.id.clock)),n+1):n},gt=(t,e)=>{const r=t.doc.store.clients.get(e.client);return r[ut(t,r,e.clock)]},ft=(t,e,r)=>{const n=e.clients.get(r.client),s=ht(n,r.clock),i=n[s];return r.clock!==i.id.clock+i.length-1&&i.constructor!==Ie&&n.splice(s+1,0,Ke(t,i,r.clock-i.id.clock+1)),i},pt=(t,e,r,n,s)=>{if(0===n)return;const i=r+n;let o,c=ut(t,e,r);do{o=e[c++],i<o.id.clock+o.length&&ut(t,e,i),s(o)}while(c<e.length&&e[c].id.clock<i)};class wt{constructor(t,e,r){this.doc=t,this.deleteSet=new S,this.beforeState=ct(t.store),this.afterState=new Map,this.changed=new Map,this.changedParentTypes=new Map,this._mergeStructs=[],this.origin=e,this.meta=new Map,this.local=r,this.subdocsAdded=new Set,this.subdocsRemoved=new Set,this.subdocsLoaded=new Set,this._needFormattingCleanup=!1}}const mt=(t,e)=>!(0===e.deleteSet.clients.size&&!l.any(e.afterState,((t,r)=>e.beforeState.get(r)!==t))||(D(e.deleteSet),((t,e)=>{P(t,e.doc.store,e.beforeState)})(t,e),T(t,e.deleteSet),0)),yt=(t,e,r)=>{const n=e._item;(null===n||n.id.clock<(t.beforeState.get(n.id.client)||0)&&!n.deleted)&&l.setIfUndefined(t.changed,e,m.create).add(r)},bt=(t,e)=>{let r=t[e],n=t[e-1],s=e;for(;s>0&&n.deleted===r.deleted&&n.constructor===r.constructor&&n.mergeWith(r);r=n,n=t[--s-1])r instanceof $e&&null!==r.parentSub&&r.parent._map.get(r.parentSub)===r&&r.parent._map.set(r.parentSub,n);const i=e-s;return i&&t.splice(e+1-i,i),i},kt=(t,e)=>{if(e<t.length){const r=t[e],n=r.doc,s=n.store,i=r.deleteSet,o=r._mergeStructs;try{D(i),r.afterState=ct(r.doc.store),n.emit("beforeObserverCalls",[r,n]);const t=[];r.changed.forEach(((e,n)=>t.push((()=>{null!==n._item&&n._item.deleted||n._callObserver(r,e)})))),t.push((()=>{r.changedParentTypes.forEach(((t,e)=>{e._dEH.l.length>0&&(null===e._item||!e._item.deleted)&&((t=t.filter((t=>null===t.target._item||!t.target._item.deleted))).forEach((t=>{t.currentTarget=e,t._path=null})),t.sort(((t,e)=>t.path.length-e.path.length)),Z(e._dEH,t,r))}))})),t.push((()=>n.emit("afterTransaction",[r,n]))),(0,w.callAll)(t,[]),r._needFormattingCleanup&&ke(r)}finally{n.gc&&((t,e,r)=>{for(const[n,s]of t.clients.entries()){const t=e.clients.get(n);for(let n=s.length-1;n>=0;n--){const i=s[n],o=i.clock+i.len;for(let n=ht(t,i.clock),s=t[n];n<t.length&&s.id.clock<o;s=t[++n]){const s=t[n];if(i.clock+i.len<=s.id.clock)break;s instanceof $e&&s.deleted&&!s.keep&&r(s)&&s.gc(e,!1)}}}})(i,s,n.gcFilter),((t,e)=>{t.clients.forEach(((t,r)=>{const n=e.clients.get(r);for(let e=t.length-1;e>=0;e--){const r=t[e];for(let t=c.min(n.length-1,1+ht(n,r.clock+r.len-1)),e=n[t];t>0&&e.id.clock>=r.clock;e=n[t])t-=1+bt(n,t)}}))})(i,s),r.afterState.forEach(((t,e)=>{const n=r.beforeState.get(e)||0;if(n!==t){const t=s.clients.get(e),r=c.max(ht(t,n),1);for(let e=t.length-1;e>=r;)e-=1+bt(t,e)}}));for(let t=o.length-1;t>=0;t--){const{client:e,clock:r}=o[t].id,n=s.clients.get(e),i=ht(n,r);i+1<n.length&&bt(n,i+1)>1||i>0&&bt(n,i)}if(r.local||r.afterState.get(n.clientID)===r.beforeState.get(n.clientID)||(y.print(b.ORANGE,b.BOLD,"[yjs] ",b.UNBOLD,b.RED,"Changed the client-id because another client seems to be using it."),n.clientID=V()),n.emit("afterTransactionCleanup",[r,n]),n._observers.has("update")){const t=new z;mt(t,r)&&n.emit("update",[t.toUint8Array(),r.origin,n,r])}if(n._observers.has("updateV2")){const t=new F;mt(t,r)&&n.emit("updateV2",[t.toUint8Array(),r.origin,n,r])}const{subdocsAdded:l,subdocsLoaded:a,subdocsRemoved:h}=r;(l.size>0||h.size>0||a.size>0)&&(l.forEach((t=>{t.clientID=n.clientID,null==t.collectionid&&(t.collectionid=n.collectionid),n.subdocs.add(t)})),h.forEach((t=>n.subdocs.delete(t))),n.emit("subdocs",[{loaded:a,added:l,removed:h},n,r]),h.forEach((t=>t.destroy()))),t.length<=e+1?(n._transactionCleanups=[],n.emit("afterAllTransactions",[n,t])):kt(t,e+1)}}},_t=(t,e,r=null,n=!0)=>{const s=t._transactionCleanups;let i=!1,o=null;null===t._transaction&&(i=!0,t._transaction=new wt(t,r,n),s.push(t._transaction),1===s.length&&t.emit("beforeAllTransactions",[t]),t.emit("beforeTransaction",[t._transaction,t]));try{o=e(t._transaction)}finally{if(i){const e=t._transaction===s[0];t._transaction=null,e&&kt(s,0)}}return o};i.Observable;class xt{constructor(t,e){this.gen=function*(t){const e=h.readVarUint(t.restDecoder);for(let r=0;r<e;r++){const e=h.readVarUint(t.restDecoder),r=t.readClient();let n=h.readVarUint(t.restDecoder);for(let s=0;s<e;s++){const e=t.readInfo();if(10===e){const e=h.readVarUint(t.restDecoder);yield new tr(rt(r,n),e),n+=e}else if(p.BITS5&e){const s=!(e&(p.BIT7|p.BIT8)),i=new $e(rt(r,n),null,(e&p.BIT8)===p.BIT8?t.readLeftID():null,null,(e&p.BIT7)===p.BIT7?t.readRightID():null,s?t.readParentInfo()?t.readString():t.readLeftID():null,s&&(e&p.BIT6)===p.BIT6?t.readString():null,Qe(t,e));yield i,n+=i.length}else{const e=t.readLen();yield new Ie(rt(r,n),e),n+=e}}}}(t),this.curr=null,this.done=!1,this.filterSkips=e,this.next()}next(){do{this.curr=this.gen.next().value||null}while(this.filterSkips&&null!==this.curr&&this.curr.constructor===tr);return this.curr}}class St{constructor(t){this.currClient=0,this.startClock=0,this.written=0,this.encoder=t,this.clientStructs=[]}}const Et=t=>Dt(t,R,z),Ct=(t,e)=>{if(t.constructor===Ie){const{client:r,clock:n}=t.id;return new Ie(rt(r,n+e),t.length-e)}if(t.constructor===tr){const{client:r,clock:n}=t.id;return new tr(rt(r,n+e),t.length-e)}{const r=t,{client:n,clock:s}=r.id;return new $e(rt(n,s+e),null,rt(n,s+e-1),null,r.rightOrigin,r.parent,r.parentSub,r.content.splice(e))}},Dt=(t,e=L,r=F)=>{if(1===t.length)return t[0];const n=t.map((t=>new e(h.createDecoder(t))));let s=n.map((t=>new xt(t,!0))),i=null;const o=new r,c=new St(o);for(;s=s.filter((t=>null!==t.curr)),s.sort(((t,e)=>{if(t.curr.id.client===e.curr.id.client){const r=t.curr.id.clock-e.curr.id.clock;return 0===r?t.curr.constructor===e.curr.constructor?0:t.curr.constructor===tr?1:-1:r}return e.curr.id.client-t.curr.id.client})),0!==s.length;){const t=s[0],e=t.curr.id.client;if(null!==i){let r=t.curr,n=!1;for(;null!==r&&r.id.clock+r.length<=i.struct.id.clock+i.struct.length&&r.id.client>=i.struct.id.client;)r=t.next(),n=!0;if(null===r||r.id.client!==e||n&&r.id.clock>i.struct.id.clock+i.struct.length)continue;if(e!==i.struct.id.client)At(c,i.struct,i.offset),i={struct:r,offset:0},t.next();else if(i.struct.id.clock+i.struct.length<r.id.clock)if(i.struct.constructor===tr)i.struct.length=r.id.clock+r.length-i.struct.id.clock;else{At(c,i.struct,i.offset);const t=r.id.clock-i.struct.id.clock-i.struct.length;i={struct:new tr(rt(e,i.struct.id.clock+i.struct.length),t),offset:0}}else{const e=i.struct.id.clock+i.struct.length-r.id.clock;e>0&&(i.struct.constructor===tr?i.struct.length-=e:r=Ct(r,e)),i.struct.mergeWith(r)||(At(c,i.struct,i.offset),i={struct:r,offset:0},t.next())}}else i={struct:t.curr,offset:0},t.next();for(let r=t.curr;null!==r&&r.id.client===e&&r.id.clock===i.struct.id.clock+i.struct.length&&r.constructor!==tr;r=t.next())At(c,i.struct,i.offset),i={struct:r,offset:0}}null!==i&&(At(c,i.struct,i.offset),i=null),Tt(c);const l=n.map((t=>I(t))),a=U(l);return T(o,a),o.toUint8Array()},Ut=(t,e,r=L,n=F)=>{const s=X(e),i=new n,o=new St(i),l=new r(h.createDecoder(t)),a=new xt(l,!1);for(;a.curr;){const t=a.curr,e=t.id.client,r=s.get(e)||0;if(a.curr.constructor!==tr)if(t.id.clock+t.length>r)for(At(o,t,c.max(r-t.id.clock,0)),a.next();a.curr&&a.curr.id.client===e;)At(o,a.curr,0),a.next();else for(;a.curr&&a.curr.id.client===e&&a.curr.id.clock+a.curr.length<=r;)a.next();else a.next()}Tt(o);const d=I(l);return T(i,d),i.toUint8Array()},vt=t=>{t.written>0&&(t.clientStructs.push({written:t.written,restEncoder:a.toUint8Array(t.encoder.restEncoder)}),t.encoder.restEncoder=a.createEncoder(),t.written=0)},At=(t,e,r)=>{t.written>0&&t.currClient!==e.id.client&&vt(t),0===t.written&&(t.currClient=e.id.client,t.encoder.writeClient(e.id.client),a.writeVarUint(t.encoder.restEncoder,e.id.clock+r)),e.write(t.encoder,r),t.written++},Tt=t=>{vt(t);const e=t.encoder.restEncoder;a.writeVarUint(e,t.clientStructs.length);for(let r=0;r<t.clientStructs.length;r++){const n=t.clientStructs[r];a.writeVarUint(e,n.written),a.writeUint8Array(e,n.restEncoder)}},It=t=>((t,e,r,n)=>{const s=new r(h.createDecoder(t)),i=new xt(s,!1),o=new n,c=new St(o);for(let t=i.curr;null!==t;t=i.next())At(c,e(t),0);Tt(c);const l=I(s);return T(o,l),o.toUint8Array()})(t,w.id,L,z),Ot="You must not compute changes after the event-handler fired.";class Vt{constructor(t,e){this.target=t,this.currentTarget=t,this.transaction=e,this._changes=null,this._keys=null,this._delta=null,this._path=null}get path(){return this._path||(this._path=Mt(this.currentTarget,this.target))}deletes(t){return C(this.transaction.deleteSet,t.id)}get keys(){if(null===this._keys){if(0===this.transaction.doc._transactionCleanups.length)throw f.create(Ot);const t=new Map,e=this.target;this.transaction.changed.get(e).forEach((r=>{if(null!==r){const n=e._map.get(r);let s,i;if(this.adds(n)){let t=n.left;for(;null!==t&&this.adds(t);)t=t.left;if(this.deletes(n)){if(null===t||!this.deletes(t))return;s="delete",i=o.last(t.content.getContent())}else null!==t&&this.deletes(t)?(s="update",i=o.last(t.content.getContent())):(s="add",i=void 0)}else{if(!this.deletes(n))return;s="delete",i=o.last(n.content.getContent())}t.set(r,{action:s,oldValue:i})}})),this._keys=t}return this._keys}get delta(){return this.changes.delta}adds(t){return t.id.clock>=(this.transaction.beforeState.get(t.id.client)||0)}get changes(){let t=this._changes;if(null===t){if(0===this.transaction.doc._transactionCleanups.length)throw f.create(Ot);const e=this.target,r=m.create(),n=m.create(),s=[];if(t={added:r,deleted:n,delta:s,keys:this.keys},this.transaction.changed.get(e).has(null)){let t=null;const i=()=>{t&&s.push(t)};for(let s=e._start;null!==s;s=s.right)s.deleted?this.deletes(s)&&!this.adds(s)&&(null!==t&&void 0!==t.delete||(i(),t={delete:0}),t.delete+=s.length,n.add(s)):this.adds(s)?(null!==t&&void 0!==t.insert||(i(),t={insert:[]}),t.insert=t.insert.concat(s.content.getContent()),r.add(s)):(null!==t&&void 0!==t.retain||(i(),t={retain:0}),t.retain+=s.length);null!==t&&void 0===t.retain&&i()}this._changes=t}return t}}const Mt=(t,e)=>{const r=[];for(;null!==e._item&&e!==t;){if(null!==e._item.parentSub)r.unshift(e._item.parentSub);else{let t=0,n=e._item.parent._start;for(;n!==e._item&&null!==n;)n.deleted||t++,n=n.right;r.unshift(t)}e=e._item.parent}return r};let Nt=0;class Rt{constructor(t,e){t.marker=!0,this.p=t,this.index=e,this.timestamp=Nt++}}const Bt=(t,e,r)=>{t.p.marker=!1,t.p=e,e.marker=!0,t.index=r,t.timestamp=Nt++},Lt=(t,e)=>{if(null===t._start||0===e||null===t._searchMarker)return null;const r=0===t._searchMarker.length?null:t._searchMarker.reduce(((t,r)=>c.abs(e-t.index)<c.abs(e-r.index)?t:r));let n=t._start,s=0;for(null!==r&&(n=r.p,s=r.index,(t=>{t.timestamp=Nt++})(r));null!==n.right&&s<e;){if(!n.deleted&&n.countable){if(e<s+n.length)break;s+=n.length}n=n.right}for(;null!==n.left&&s>e;)n=n.left,!n.deleted&&n.countable&&(s-=n.length);for(;null!==n.left&&n.left.id.client===n.id.client&&n.left.id.clock+n.left.length===n.id.clock;)n=n.left,!n.deleted&&n.countable&&(s-=n.length);return null!==r&&c.abs(r.index-s)<n.parent.length/80?(Bt(r,n,s),r):((t,e,r)=>{if(t.length>=80){const n=t.reduce(((t,e)=>t.timestamp<e.timestamp?t:e));return Bt(n,e,r),n}{const n=new Rt(e,r);return t.push(n),n}})(t._searchMarker,n,s)},Jt=(t,e,r)=>{for(let n=t.length-1;n>=0;n--){const s=t[n];if(r>0){let e=s.p;for(e.marker=!1;e&&(e.deleted||!e.countable);)e=e.left,e&&!e.deleted&&e.countable&&(s.index-=e.length);if(null===e||!0===e.marker){t.splice(n,1);continue}s.p=e,e.marker=!0}(e<s.index||r>0&&e===s.index)&&(s.index=c.max(e,s.index+r))}},zt=(t,e,r)=>{const n=t,s=e.changedParentTypes;for(;l.setIfUndefined(s,t,(()=>[])).push(r),null!==t._item;)t=t._item.parent;Z(n._eH,r,e)};class jt{constructor(){this._item=null,this._map=new Map,this._start=null,this.doc=null,this._length=0,this._eH=K(),this._dEH=K(),this._searchMarker=null}get parent(){return this._item?this._item.parent:null}_integrate(t,e){this.doc=t,this._item=e}_copy(){throw f.methodUnimplemented()}clone(){throw f.methodUnimplemented()}_write(t){}get _first(){let t=this._start;for(;null!==t&&t.deleted;)t=t.right;return t}_callObserver(t,e){!t.local&&this._searchMarker&&(this._searchMarker.length=0)}observe(t){$(this._eH,t)}observeDeep(t){$(this._dEH,t)}unobserve(t){Q(this._eH,t)}unobserveDeep(t){Q(this._dEH,t)}toJSON(){}}const Ft=(t,e,r)=>{e<0&&(e=t._length+e),r<0&&(r=t._length+r);let n=r-e;const s=[];let i=t._start;for(;null!==i&&n>0;){if(i.countable&&!i.deleted){const t=i.content.getContent();if(t.length<=e)e-=t.length;else{for(let r=e;r<t.length&&n>0;r++)s.push(t[r]),n--;e=0}}i=i.right}return s},Pt=t=>{const e=[];let r=t._start;for(;null!==r;){if(r.countable&&!r.deleted){const t=r.content.getContent();for(let r=0;r<t.length;r++)e.push(t[r])}r=r.right}return e},Gt=(t,e)=>{let r=0,n=t._start;for(;null!==n;){if(n.countable&&!n.deleted){const s=n.content.getContent();for(let n=0;n<s.length;n++)e(s[n],r++,t)}n=n.right}},qt=(t,e)=>{const r=[];return Gt(t,((n,s)=>{r.push(e(n,s,t))})),r},Wt=t=>{let e=t._start,r=null,n=0;return{[Symbol.iterator](){return this},next:()=>{if(null===r){for(;null!==e&&e.deleted;)e=e.right;if(null===e)return{done:!0,value:void 0};r=e.content.getContent(),n=0,e=e.right}const t=r[n++];return r.length<=n&&(r=null),{done:!1,value:t}}}},Yt=(t,e)=>{const r=Lt(t,e);let n=t._start;for(null!==r&&(n=r.p,e-=r.index);null!==n;n=n.right)if(!n.deleted&&n.countable){if(e<n.length)return n.content.getContent()[e];e-=n.length}},Xt=(t,e,r,n)=>{let s=r;const i=t.doc,o=i.clientID,c=i.store,l=null===r?e._start:r.right;let a=[];const h=()=>{a.length>0&&(s=new $e(rt(o,lt(c,o)),s,s&&s.lastId,l,l&&l.id,e,null,new Je(a)),s.integrate(t,0),a=[])};n.forEach((r=>{if(null===r)a.push(r);else switch(r.constructor){case Number:case Object:case Boolean:case Array:case String:a.push(r);break;default:switch(h(),r.constructor){case Uint8Array:case ArrayBuffer:s=new $e(rt(o,lt(c,o)),s,s&&s.lastId,l,l&&l.id,e,null,new Oe(new Uint8Array(r))),s.integrate(t,0);break;case M:s=new $e(rt(o,lt(c,o)),s,s&&s.lastId,l,l&&l.id,e,null,new Ne(r)),s.integrate(t,0);break;default:if(!(r instanceof jt))throw new Error("Unexpected content type in insert operation");s=new $e(rt(o,lt(c,o)),s,s&&s.lastId,l,l&&l.id,e,null,new He(r)),s.integrate(t,0)}}})),h()},Ht=()=>f.create("Length exceeded!"),Kt=(t,e,r,n)=>{if(r>e._length)throw Ht();if(0===r)return e._searchMarker&&Jt(e._searchMarker,r,n.length),Xt(t,e,null,n);const s=r,i=Lt(e,r);let o=e._start;for(null!==i&&(o=i.p,0==(r-=i.index)&&(o=o.prev,r+=o&&o.countable&&!o.deleted?o.length:0));null!==o;o=o.right)if(!o.deleted&&o.countable){if(r<=o.length){r<o.length&>(t,rt(o.id.client,o.id.clock+r));break}r-=o.length}return e._searchMarker&&Jt(e._searchMarker,s,n.length),Xt(t,e,o,n)},$t=(t,e,r,n)=>{if(0===n)return;const s=r,i=n,o=Lt(e,r);let c=e._start;for(null!==o&&(c=o.p,r-=o.index);null!==c&&r>0;c=c.right)!c.deleted&&c.countable&&(r<c.length&>(t,rt(c.id.client,c.id.clock+r)),r-=c.length);for(;n>0&&null!==c;)c.deleted||(n<c.length&>(t,rt(c.id.client,c.id.clock+n)),c.delete(t),n-=c.length),c=c.right;if(n>0)throw Ht();e._searchMarker&&Jt(e._searchMarker,s,-i+n)},Qt=(t,e,r)=>{const n=e._map.get(r);void 0!==n&&n.delete(t)},Zt=(t,e,r,n)=>{const s=e._map.get(r)||null,i=t.doc,o=i.clientID;let c;if(null==n)c=new Je([n]);else switch(n.constructor){case Number:case Object:case Boolean:case Array:case String:c=new Je([n]);break;case Uint8Array:c=new Oe(n);break;case M:c=new Ne(n);break;default:if(!(n instanceof jt))throw new Error("Unexpected content type");c=new He(n)}new $e(rt(o,lt(i.store,o)),s,s&&s.lastId,null,null,e,r,c).integrate(t,0)},te=(t,e)=>{const r=t._map.get(e);return void 0===r||r.deleted?void 0:r.content.getContent()[r.length-1]},ee=t=>{const e={};return t._map.forEach(((t,r)=>{t.deleted||(e[r]=t.content.getContent()[t.length-1])})),e},re=(t,e)=>{const r=t._map.get(e);return void 0!==r&&!r.deleted},ne=t=>k.iteratorFilter(t.entries(),(t=>!t[1].deleted));class se extends Vt{constructor(t,e){super(t,e),this._transaction=e}}class ie extends jt{constructor(){super(),this._prelimContent=[],this._searchMarker=[]}static from(t){const e=new ie;return e.push(t),e}_integrate(t,e){super._integrate(t,e),this.insert(0,this._prelimContent),this._prelimContent=null}_copy(){return new ie}clone(){const t=new ie;return t.insert(0,this.toArray().map((t=>t instanceof jt?t.clone():t))),t}get length(){return null===this._prelimContent?this._length:this._prelimContent.length}_callObserver(t,e){super._callObserver(t,e),zt(this,t,new se(this,t))}insert(t,e){null!==this.doc?_t(this.doc,(r=>{Kt(r,this,t,e)})):this._prelimContent.splice(t,0,...e)}push(t){null!==this.doc?_t(this.doc,(e=>{((t,e,r)=>{let n=(e._searchMarker||[]).reduce(((t,e)=>e.index>t.index?e:t),{index:0,p:e._start}).p;if(n)for(;n.right;)n=n.right;Xt(t,e,n,r)})(e,this,t)})):this._prelimContent.push(...t)}unshift(t){this.insert(0,t)}delete(t,e=1){null!==this.doc?_t(this.doc,(r=>{$t(r,this,t,e)})):this._prelimContent.splice(t,e)}get(t){return Yt(this,t)}toArray(){return Pt(this)}slice(t=0,e=this.length){return Ft(this,t,e)}toJSON(){return this.map((t=>t instanceof jt?t.toJSON():t))}map(t){return qt(this,t)}forEach(t){Gt(this,t)}[Symbol.iterator](){return Wt(this)}_write(t){t.writeTypeRef(Fe)}}class oe extends Vt{constructor(t,e,r){super(t,e),this.keysChanged=r}}class ce extends jt{constructor(t){super(),this._prelimContent=null,this._prelimContent=void 0===t?new Map:new Map(t)}_integrate(t,e){super._integrate(t,e),this._prelimContent.forEach(((t,e)=>{this.set(e,t)})),this._prelimContent=null}_copy(){return new ce}clone(){const t=new ce;return this.forEach(((e,r)=>{t.set(r,e instanceof jt?e.clone():e)})),t}_callObserver(t,e){zt(this,t,new oe(this,t,e))}toJSON(){const t={};return this._map.forEach(((e,r)=>{if(!e.deleted){const n=e.content.getContent()[e.length-1];t[r]=n instanceof jt?n.toJSON():n}})),t}get size(){return[...ne(this._map)].length}keys(){return k.iteratorMap(ne(this._map),(t=>t[0]))}values(){return k.iteratorMap(ne(this._map),(t=>t[1].content.getContent()[t[1].length-1]))}entries(){return k.iteratorMap(ne(this._map),(t=>[t[0],t[1].content.getContent()[t[1].length-1]]))}forEach(t){this._map.forEach(((e,r)=>{e.deleted||t(e.content.getContent()[e.length-1],r,this)}))}[Symbol.iterator](){return this.entries()}delete(t){null!==this.doc?_t(this.doc,(e=>{Qt(e,this,t)})):this._prelimContent.delete(t)}set(t,e){return null!==this.doc?_t(this.doc,(r=>{Zt(r,this,t,e)})):this._prelimContent.set(t,e),e}get(t){return te(this,t)}has(t){return re(this,t)}clear(){null!==this.doc?_t(this.doc,(t=>{this.forEach((function(e,r,n){Qt(t,n,r)}))})):this._prelimContent.clear()}_write(t){t.writeTypeRef(Pe)}}const le=(t,e)=>t===e||"object"==typeof t&&"object"==typeof e&&t&&e&&_.equalFlat(t,e);class ae{constructor(t,e,r,n){this.left=t,this.right=e,this.index=r,this.currentAttributes=n}forward(){null===this.right&&f.unexpectedCase(),this.right.content.constructor===Be?this.right.deleted||ge(this.currentAttributes,this.right.content):this.right.deleted||(this.index+=this.right.length),this.left=this.right,this.right=this.right.right}}const he=(t,e,r)=>{for(;null!==e.right&&r>0;)e.right.content.constructor===Be?e.right.deleted||ge(e.currentAttributes,e.right.content):e.right.deleted||(r<e.right.length&>(t,rt(e.right.id.client,e.right.id.clock+r)),e.index+=e.right.length,r-=e.right.length),e.left=e.right,e.right=e.right.right;return e},de=(t,e,r,n)=>{const s=new Map,i=n?Lt(e,r):null;if(i){const e=new ae(i.p.left,i.p,i.index,s);return he(t,e,r-i.index)}{const n=new ae(null,e._start,0,s);return he(t,n,r)}},ue=(t,e,r,n)=>{for(;null!==r.right&&(!0===r.right.deleted||r.right.content.constructor===Be&&le(n.get(r.right.content.key),r.right.content.value));)r.right.deleted||n.delete(r.right.content.key),r.forward();const s=t.doc,i=s.clientID;n.forEach(((n,o)=>{const c=r.left,l=r.right,a=new $e(rt(i,lt(s.store,i)),c,c&&c.lastId,l,l&&l.id,e,null,new Be(o,n));a.integrate(t,0),r.right=a,r.forward()}))},ge=(t,e)=>{const{key:r,value:n}=e;null===n?t.delete(r):t.set(r,n)},fe=(t,e)=>{for(;null!==t.right&&(t.right.deleted||t.right.content.constructor===Be&&le(e[t.right.content.key]||null,t.right.content.value));)t.forward()},pe=(t,e,r,n)=>{const s=t.doc,i=s.clientID,o=new Map;for(const c in n){const l=n[c],a=r.currentAttributes.get(c)||null;if(!le(a,l)){o.set(c,a);const{left:n,right:h}=r;r.right=new $e(rt(i,lt(s.store,i)),n,n&&n.lastId,h,h&&h.id,e,null,new Be(c,l)),r.right.integrate(t,0),r.forward()}}return o},we=(t,e,r,n,s)=>{r.currentAttributes.forEach(((t,e)=>{void 0===s[e]&&(s[e]=null)}));const i=t.doc,o=i.clientID;fe(r,s);const c=pe(t,e,r,s),l=n.constructor===String?new ze(n):n instanceof jt?new He(n):new Re(n);let{left:a,right:h,index:d}=r;e._searchMarker&&Jt(e._searchMarker,r.index,l.getLength()),h=new $e(rt(o,lt(i.store,o)),a,a&&a.lastId,h,h&&h.id,e,null,l),h.integrate(t,0),r.right=h,r.index=d,r.forward(),ue(t,e,r,c)},me=(t,e,r,n,s)=>{const i=t.doc,o=i.clientID;fe(r,s);const c=pe(t,e,r,s);t:for(;null!==r.right&&(n>0||c.size>0&&(r.right.deleted||r.right.content.constructor===Be));){if(!r.right.deleted)switch(r.right.content.constructor){case Be:{const{key:e,value:i}=r.right.content,o=s[e];if(void 0!==o){if(le(o,i))c.delete(e);else{if(0===n)break t;c.set(e,i)}r.right.delete(t)}else r.currentAttributes.set(e,i);break}default:n<r.right.length&>(t,rt(r.right.id.client,r.right.id.clock+n)),n-=r.right.length}r.forward()}if(n>0){let s="";for(;n>0;n--)s+="\n";r.right=new $e(rt(o,lt(i.store,o)),r.left,r.left&&r.left.lastId,r.right,r.right&&r.right.id,e,null,new ze(s)),r.right.integrate(t,0),r.forward()}ue(t,e,r,c)},ye=(t,e,r,n,s)=>{let i=e;const o=l.create();for(;i&&(!i.countable||i.deleted);){if(!i.deleted&&i.content.constructor===Be){const t=i.content;o.set(t.key,t)}i=i.right}let c=0,a=!1;for(;e!==i;){if(r===e&&(a=!0),!e.deleted){const r=e.content;switch(r.constructor){case Be:{const{key:i,value:l}=r,h=n.get(i)||null;o.get(i)===r&&h!==l||(e.delete(t),c++,a||(s.get(i)||null)!==l||h===l||(null===h?s.delete(i):s.set(i,h))),a||e.deleted||ge(s,r);break}}}e=e.right}return c},be=t=>{let e=0;return _t(t.doc,(r=>{let n=t._start,s=t._start,i=l.create();const o=l.copy(i);for(;s;)!1===s.deleted&&(s.content.constructor===Be?ge(o,s.content):(e+=ye(r,n,s,i,o),i=l.copy(o),n=s)),s=s.right})),e},ke=t=>{const e=new Set,r=t.doc;for(const[n,s]of t.afterState.entries()){const i=t.beforeState.get(n)||0;s!==i&&pt(t,r.store.clients.get(n),i,s,(t=>{t.deleted||t.content.constructor!==Be||t.constructor===Ie||e.add(t.parent)}))}_t(r,(r=>{E(t,t.deleteSet,(t=>{if(t instanceof Ie||!t.parent._hasFormatting||e.has(t.parent))return;const n=t.parent;t.content.constructor===Be?e.add(n):((t,e)=>{for(;e&&e.right&&(e.right.deleted||!e.right.countable);)e=e.right;const r=new Set;for(;e&&(e.deleted||!e.countable);){if(!e.deleted&&e.content.constructor===Be){const n=e.content.key;r.has(n)?e.delete(t):r.add(n)}e=e.left}})(r,t)}));for(const t of e)be(t)}))},_e=(t,e,r)=>{const n=r,s=l.copy(e.currentAttributes),i=e.right;for(;r>0&&null!==e.right;){if(!1===e.right.deleted)switch(e.right.content.constructor){case He:case Re:case ze:r<e.right.length&>(t,rt(e.right.id.client,e.right.id.clock+r)),r-=e.right.length,e.right.delete(t)}e.forward()}i&&ye(t,i,e.right,s,e.currentAttributes);const o=(e.left||e.right).parent;return o._searchMarker&&Jt(o._searchMarker,e.index,-n+r),e};class xe extends Vt{constructor(t,e,r){super(t,e),this.childListChanged=!1,this.keysChanged=new Set,r.forEach((t=>{null===t?this.childListChanged=!0:this.keysChanged.add(t)}))}get changes(){if(null===this._changes){const t={keys:this.keys,delta:this.delta,added:new Set,deleted:new Set};this._changes=t}return this._changes}get delta(){if(null===this._delta){const t=this.target.doc,e=[];_t(t,(t=>{const r=new Map,n=new Map;let s=this.target._start,i=null;const o={};let c="",l=0,a=0;const h=()=>{if(null!==i){let t=null;switch(i){case"delete":a>0&&(t={delete:a}),a=0;break;case"insert":("object"==typeof c||c.length>0)&&(t={insert:c},r.size>0&&(t.attributes={},r.forEach(((e,r)=>{null!==e&&(t.attributes[r]=e)})))),c="";break;case"retain":l>0&&(t={retain:l},_.isEmpty(o)||(t.attributes=_.assign({},o))),l=0}t&&e.push(t),i=null}};for(;null!==s;){switch(s.content.constructor){case He:case Re:this.adds(s)?this.deletes(s)||(h(),i="insert",c=s.content.getContent()[0],h()):this.deletes(s)?("delete"!==i&&(h(),i="delete"),a+=1):s.deleted||("retain"!==i&&(h(),i="retain"),l+=1);break;case ze:this.adds(s)?this.deletes(s)||("insert"!==i&&(h(),i="insert"),c+=s.content.str):this.deletes(s)?("delete"!==i&&(h(),i="delete"),a+=s.length):s.deleted||("retain"!==i&&(h(),i="retain"),l+=s.length);break;case Be:{const{key:e,value:c}=s.content;if(this.adds(s)){if(!this.deletes(s)){const l=r.get(e)||null;le(l,c)?null!==c&&s.delete(t):("retain"===i&&h(),le(c,n.get(e)||null)?delete o[e]:o[e]=c)}}else if(this.deletes(s)){n.set(e,c);const t=r.get(e)||null;le(t,c)||("retain"===i&&h(),o[e]=t)}else if(!s.deleted){n.set(e,c);const r=o[e];void 0!==r&&(le(r,c)?null!==r&&s.delete(t):("retain"===i&&h(),null===c?delete o[e]:o[e]=c))}s.deleted||("insert"===i&&h(),ge(r,s.content));break}}s=s.right}for(h();e.length>0;){const t=e[e.length-1];if(void 0===t.retain||void 0!==t.attributes)break;e.pop()}})),this._delta=e}return this._delta}}class Se extends jt{constructor(t){super(),this._pending=void 0!==t?[()=>this.insert(0,t)]:[],this._searchMarker=[],this._hasFormatting=!1}get length(){return this._length}_integrate(t,e){super._integrate(t,e);try{this._pending.forEach((t=>t()))}catch(t){console.error(t)}this._pending=null}_copy(){return new Se}clone(){const t=new Se;return t.applyDelta(this.toDelta()),t}_callObserver(t,e){super._callObserver(t,e);const r=new xe(this,t,e);zt(this,t,r),!t.local&&this._hasFormatting&&(t._needFormattingCleanup=!0)}toString(){let t="",e=this._start;for(;null!==e;)!e.deleted&&e.countable&&e.content.constructor===ze&&(t+=e.content.str),e=e.right;return t}toJSON(){return this.toString()}applyDelta(t,{sanitize:e=!0}={}){null!==this.doc?_t(this.doc,(r=>{const n=new ae(null,this._start,0,new Map);for(let s=0;s<t.length;s++){const i=t[s];if(void 0!==i.insert){const o=e||"string"!=typeof i.insert||s!==t.length-1||null!==n.right||"\n"!==i.insert.slice(-1)?i.insert:i.insert.slice(0,-1);("string"!=typeof o||o.length>0)&&we(r,this,n,o,i.attributes||{})}else void 0!==i.retain?me(r,this,n,i.retain,i.attributes||{}):void 0!==i.delete&&_e(r,n,i.delete)}})):this._pending.push((()=>this.applyDelta(t)))}toDelta(t,e,r){const n=[],s=new Map,i=this.doc;let o="",c=this._start;function l(){if(o.length>0){const t={};let e=!1;s.forEach(((r,n)=>{e=!0,t[n]=r}));const r={insert:o};e&&(r.attributes=t),n.push(r),o=""}}const a=()=>{for(;null!==c;){if(st(c,t)||void 0!==e&&st(c,e))switch(c.content.constructor){case ze:{const n=s.get("ychange");void 0===t||st(c,t)?void 0===e||st(c,e)?void 0!==n&&(l(),s.delete("ychange")):void 0!==n&&n.user===c.id.client&&"added"===n.type||(l(),s.set("ychange",r?r("added",c.id):{type:"added"})):void 0!==n&&n.user===c.id.client&&"removed"===n.type||(l(),s.set("ychange",r?r("removed",c.id):{type:"removed"})),o+=c.content.str;break}case He:case Re:{l();const t={insert:c.content.getContent()[0]};if(s.size>0){const e={};t.attributes=e,s.forEach(((t,r)=>{e[r]=t}))}n.push(t);break}case Be:st(c,t)&&(l(),ge(s,c.content))}c=c.right}l()};return t||e?_t(i,(r=>{t&&it(r,t),e&&it(r,e),a()}),"cleanup"):a(),n}insert(t,e,r){if(e.length<=0)return;const n=this.doc;null!==n?_t(n,(n=>{const s=de(n,this,t,!r);r||(r={},s.currentAttributes.forEach(((t,e)=>{r[e]=t}))),we(n,this,s,e,r)})):this._pending.push((()=>this.insert(t,e,r)))}insertEmbed(t,e,r){const n=this.doc;null!==n?_t(n,(n=>{const s=de(n,this,t,!r);we(n,this,s,e,r||{})})):this._pending.push((()=>this.insertEmbed(t,e,r||{})))}delete(t,e){if(0===e)return;const r=this.doc;null!==r?_t(r,(r=>{_e(r,de(r,this,t,!0),e)})):this._pending.push((()=>this.delete(t,e)))}format(t,e,r){if(0===e)return;const n=this.doc;null!==n?_t(n,(n=>{const s=de(n,this,t,!1);null!==s.right&&me(n,this,s,e,r)})):this._pending.push((()=>this.format(t,e,r)))}removeAttribute(t){null!==this.doc?_t(this.doc,(e=>{Qt(e,this,t)})):this._pending.push((()=>this.removeAttribute(t)))}setAttribute(t,e){null!==this.doc?_t(this.doc,(r=>{Zt(r,this,t,e)})):this._pending.push((()=>this.setAttribute(t,e)))}getAttribute(t){return te(this,t)}getAttributes(){return ee(this)}_write(t){t.writeTypeRef(Ge)}}class Ee{constructor(t,e=(()=>!0)){this._filter=e,this._root=t,this._currentNode=t._start,this._firstCall=!0}[Symbol.iterator](){return this}next(){let t=this._currentNode,e=t&&t.content&&t.content.type;if(null!==t&&(!this._firstCall||t.deleted||!this._filter(e)))do{if(e=t.content.type,t.deleted||e.constructor!==De&&e.constructor!==Ce||null===e._start)for(;null!==t;){if(null!==t.right){t=t.right;break}t=t.parent===this._root?null:t.parent._item}else t=e._start}while(null!==t&&(t.deleted||!this._filter(t.content.type)));return this._firstCall=!1,null===t?{value:void 0,done:!0}:(this._currentNode=t,{value:t.content.type,done:!1})}}class Ce extends jt{constructor(){super(),this._prelimContent=[]}get firstChild(){const t=this._first;return t?t.content.getContent()[0]:null}_integrate(t,e){super._integrate(t,e),this.insert(0,this._prelimContent),this._prelimContent=null}_copy(){return new Ce}clone(){const t=new Ce;return t.insert(0,this.toArray().map((t=>t instanceof jt?t.clone():t))),t}get length(){return null===this._prelimContent?this._length:this._prelimContent.length}createTreeWalker(t){return new Ee(this,t)}querySelector(t){t=t.toUpperCase();const e=new Ee(this,(e=>e.nodeName&&e.nodeName.toUpperCase()===t)).next();return e.done?null:e.value}querySelectorAll(t){return t=t.toUpperCase(),o.from(new Ee(this,(e=>e.nodeName&&e.nodeName.toUpperCase()===t)))}_callObserver(t,e){zt(this,t,new Ue(this,e,t))}toString(){return qt(this,(t=>t.toString())).join("")}toJSON(){return this.toString()}toDOM(t=document,e={},r){const n=t.createDocumentFragment();return void 0!==r&&r._createAssociation(n,this),Gt(this,(s=>{n.insertBefore(s.toDOM(t,e,r),null)})),n}insert(t,e){null!==this.doc?_t(this.doc,(r=>{Kt(r,this,t,e)})):this._prelimContent.splice(t,0,...e)}insertAfter(t,e){if(null!==this.doc)_t(this.doc,(r=>{const n=t&&t instanceof jt?t._item:t;Xt(r,this,n,e)}));else{const r=this._prelimContent,n=null===t?0:r.findIndex((e=>e===t))+1;if(0===n&&null!==t)throw f.create("Reference item not found");r.splice(n,0,...e)}}delete(t,e=1){null!==this.doc?_t(this.doc,(r=>{$t(r,this,t,e)})):this._prelimContent.splice(t,e)}toArray(){return Pt(this)}push(t){this.insert(this.length,t)}unshift(t){this.insert(0,t)}get(t){return Yt(this,t)}slice(t=0,e=this.length){return Ft(this,t,e)}forEach(t){Gt(this,t)}_write(t){t.writeTypeRef(We)}}class De extends Ce{constructor(t="UNDEFINED"){super(),this.nodeName=t,this._prelimAttrs=new Map}get nextSibling(){const t=this._item?this._item.next:null;return t?t.content.type:null}get prevSibling(){const t=this._item?this._item.prev:null;return t?t.content.type:null}_integrate(t,e){super._integrate(t,e),this._prelimAttrs.forEach(((t,e)=>{this.setAttribute(e,t)})),this._prelimAttrs=null}_copy(){return new De(this.nodeName)}clone(){const t=new De(this.nodeName),e=this.getAttributes();return _.forEach(e,((e,r)=>{"string"==typeof e&&t.setAttribute(r,e)})),t.insert(0,this.toArray().map((t=>t instanceof jt?t.clone():t))),t}toString(){const t=this.getAttributes(),e=[],r=[];for(const e in t)r.push(e);r.sort();const n=r.length;for(let s=0;s<n;s++){const n=r[s];e.push(n+'="'+t[n]+'"')}const s=this.nodeName.toLocaleLowerCase();return`<${s}${e.length>0?" "+e.join(" "):""}>${super.toString()}</${s}>`}removeAttribute(t){null!==this.doc?_t(this.doc,(e=>{Qt(e,this,t)})):this._prelimAttrs.delete(t)}setAttribute(t,e){null!==this.doc?_t(this.doc,(r=>{Zt(r,this,t,e)})):this._prelimAttrs.set(t,e)}getAttribute(t){return te(this,t)}hasAttribute(t){return re(this,t)}getAttributes(t){return t?((t,e)=>{const r={};return this._map.forEach(((t,n)=>{let s=t;for(;null!==s&&(!e.sv.has(s.id.client)||s.id.clock>=(e.sv.get(s.id.client)||0));)s=s.left;null!==s&&st(s,e)&&(r[n]=s.content.getContent()[s.length-1])})),r})(0,t):ee(this)}toDOM(t=document,e={},r){const n=t.createElement(this.nodeName),s=this.getAttributes();for(const t in s){const e=s[t];"string"==typeof e&&n.setAttribute(t,e)}return Gt(this,(s=>{n.appendChild(s.toDOM(t,e,r))})),void 0!==r&&r._createAssociation(n,this),n}_write(t){t.writeTypeRef(qe),t.writeKey(this.nodeName)}}class Ue extends Vt{constructor(t,e,r){super(t,r),this.childListChanged=!1,this.attributesChanged=new Set,e.forEach((t=>{null===t?this.childListChanged=!0:this.attributesChanged.add(t)}))}}class ve extends ce{constructor(t){super(),this.hookName=t}_copy(){return new ve(this.hookName)}clone(){const t=new ve(this.hookName);return this.forEach(((e,r)=>{t.set(r,e)})),t}toDOM(t=document,e={},r){const n=e[this.hookName];let s;return s=void 0!==n?n.createDom(this):document.createElement(this.hookName),s.setAttribute("data-yjs-hook",this.hookName),void 0!==r&&r._createAssociation(s,this),s}_write(t){t.writeTypeRef(Ye),t.writeKey(this.hookName)}}class Ae extends Se{get nextSibling(){const t=this._item?this._item.next:null;return t?t.content.type:null}get prevSibling(){const t=this._item?this._item.prev:null;return t?t.content.type:null}_copy(){return new Ae}clone(){const t=new Ae;return t.applyDelta(this.toDelta()),t}toDOM(t=document,e,r){const n=t.createTextNode(this.toString());return void 0!==r&&r._createAssociation(n,this),n}toString(){return this.toDelta().map((t=>{const e=[];for(const r in t.attributes){const n=[];for(const e in t.attributes[r])n.push({key:e,value:t.attributes[r][e]});n.sort(((t,e)=>t.key<e.key?-1:1)),e.push({nodeName:r,attrs:n})}e.sort(((t,e)=>t.nodeName<e.nodeName?-1:1));let r="";for(let t=0;t<e.length;t++){const n=e[t];r+=`<${n.nodeName}`;for(let t=0;t<n.attrs.length;t++){const e=n.attrs[t];r+=` ${e.key}="${e.value}"`}r+=">"}r+=t.insert;for(let t=e.length-1;t>=0;t--)r+=`</${e[t].nodeName}>`;return r})).join("")}toJSON(){return this.toString()}_write(t){t.writeTypeRef(Xe)}}class Te{constructor(t,e){this.id=t,this.length=e}get deleted(){throw f.methodUnimplemented()}mergeWith(t){return!1}write(t,e,r){throw f.methodUnimplemented()}integrate(t,e){throw f.methodUnimplemented()}}class Ie extends Te{get deleted(){return!0}delete(){}mergeWith(t){return this.constructor===t.constructor&&(this.length+=t.length,!0)}integrate(t,e){e>0&&(this.id.clock+=e,this.length-=e),at(t.doc.store,this)}write(t,e){t.writeInfo(0),t.writeLen(this.length-e)}getMissing(t,e){return null}}class Oe{constructor(t){this.content=t}getLength(){return 1}getContent(){return[this.content]}isCountable(){return!0}copy(){return new Oe(this.content)}splice(t){throw f.methodUnimplemented()}mergeWith(t){return!1}integrate(t,e){}delete(t){}gc(t){}write(t,e){t.writeBuf(this.content)}getRef(){return 3}}class Ve{constructor(t){this.len=t}getLength(){return this.len}getContent(){return[]}isCountable(){return!1}copy(){return new Ve(this.len)}splice(t){const e=new Ve(this.len-t);return this.len=t,e}mergeWith(t){return this.len+=t.len,!0}integrate(t,e){v(t.deleteSet,e.id.client,e.id.clock,this.len),e.markDeleted()}delete(t){}gc(t){}write(t,e){t.writeLen(this.len-e)}getRef(){return 1}}const Me=(t,e)=>new M({guid:t,...e,shouldLoad:e.shouldLoad||e.autoLoad||!1});class Ne{constructor(t){t._item&&console.error("This document was already integrated as a sub-document. You should create a second instance instead with the same guid."),this.doc=t;const e={};this.opts=e,t.gc||(e.gc=!1),t.autoLoad&&(e.autoLoad=!0),null!==t.meta&&(e.meta=t.meta)}getLength(){return 1}getContent(){return[this.doc]}isCountable(){return!0}copy(){return new Ne(Me(this.doc.guid,this.opts))}splice(t){throw f.methodUnimplemented()}mergeWith(t){return!1}integrate(t,e){this.doc._item=e,t.subdocsAdded.add(this.doc),this.doc.shouldLoad&&t.subdocsLoaded.add(this.doc)}delete(t){t.subdocsAdded.has(this.doc)?t.subdocsAdded.delete(this.doc):t.subdocsRemoved.add(this.doc)}gc(t){}write(t,e){t.writeString(this.doc.guid),t.writeAny(this.opts)}getRef(){return 9}}class Re{constructor(t){this.embed=t}getLength(){return 1}getContent(){return[this.embed]}isCountable(){return!0}copy(){return new Re(this.embed)}splice(t){throw f.methodUnimplemented()}mergeWith(t){return!1}integrate(t,e){}delete(t){}gc(t){}write(t,e){t.writeJSON(this.embed)}getRef(){return 5}}class Be{constructor(t,e){this.key=t,this.value=e}getLength(){return 1}getContent(){return[]}isCountable(){return!1}copy(){return new Be(this.key,this.value)}splice(t){throw f.methodUnimplemented()}mergeWith(t){return!1}integrate(t,e){const r=e.parent;r._searchMarker=null,r._hasFormatting=!0}delete(t){}gc(t){}write(t,e){t.writeKey(this.key),t.writeJSON(this.value)}getRef(){return 6}}class Le{constructor(t){this.arr=t}getLength(){return this.arr.length}getContent(){return this.arr}isCountable(){return!0}copy(){return new Le(this.arr)}splice(t){const e=new Le(this.arr.slice(t));return this.arr=this.arr.slice(0,t),e}mergeWith(t){return this.arr=this.arr.concat(t.arr),!0}integrate(t,e){}delete(t){}gc(t){}write(t,e){const r=this.arr.length;t.writeLen(r-e);for(let n=e;n<r;n++){const e=this.arr[n];t.writeString(void 0===e?"undefined":JSON.stringify(e))}}getRef(){return 2}}class Je{constructor(t){this.arr=t}getLength(){return this.arr.length}getContent(){return this.arr}isCountable(){return!0}copy(){return new Je(this.arr)}splice(t){const e=new Je(this.arr.slice(t));return this.arr=this.arr.slice(0,t),e}mergeWith(t){return this.arr=this.arr.concat(t.arr),!0}integrate(t,e){}delete(t){}gc(t){}write(t,e){const r=this.arr.length;t.writeLen(r-e);for(let n=e;n<r;n++){const e=this.arr[n];t.writeAny(e)}}getRef(){return 8}}class ze{constructor(t){this.str=t}getLength(){return this.str.length}getContent(){return this.str.split("")}isCountable(){return!0}copy(){return new ze(this.str)}splice(t){const e=new ze(this.str.slice(t));this.str=this.str.slice(0,t);const r=this.str.charCodeAt(t-1);return r>=55296&&r<=56319&&(this.str=this.str.slice(0,t-1)+"�",e.str="�"+e.str.slice(1)),e}mergeWith(t){return this.str+=t.str,!0}integrate(t,e){}delete(t){}gc(t){}write(t,e){t.writeString(0===e?this.str:this.str.slice(e))}getRef(){return 4}}const je=[t=>new ie,t=>new ce,t=>new Se,t=>new De(t.readKey()),t=>new Ce,t=>new ve(t.readKey()),t=>new Ae],Fe=0,Pe=1,Ge=2,qe=3,We=4,Ye=5,Xe=6;class He{constructor(t){this.type=t}getLength(){return 1}getContent(){return[this.type]}isCountable(){return!0}copy(){return new He(this.type._copy())}splice(t){throw f.methodUnimplemented()}mergeWith(t){return!1}integrate(t,e){this.type._integrate(t.doc,e)}delete(t){let e=this.type._start;for(;null!==e;)e.deleted?e.id.clock<(t.beforeState.get(e.id.client)||0)&&t._mergeStructs.push(e):e.delete(t),e=e.right;this.type._map.forEach((e=>{e.deleted?e.id.clock<(t.beforeState.get(e.id.client)||0)&&t._mergeStructs.push(e):e.delete(t)})),t.changed.delete(this.type)}gc(t){let e=this.type._start;for(;null!==e;)e.gc(t,!0),e=e.right;this.type._start=null,this.type._map.forEach((e=>{for(;null!==e;)e.gc(t,!0),e=e.left})),this.type._map=new Map}write(t,e){this.type._write(t)}getRef(){return 7}}const Ke=(t,e,r)=>{const{client:n,clock:s}=e.id,i=new $e(rt(n,s+r),e,rt(n,s+r-1),e.right,e.rightOrigin,e.parent,e.parentSub,e.content.splice(r));return e.deleted&&i.markDeleted(),e.keep&&(i.keep=!0),null!==e.redone&&(i.redone=rt(e.redone.client,e.redone.clock+r)),e.right=i,null!==i.right&&(i.right.left=i),t._mergeStructs.push(i),null!==i.parentSub&&null===i.right&&i.parent._map.set(i.parentSub,i),e.length=r,i};class $e extends Te{constructor(t,e,r,n,s,i,o,c){super(t,c.getLength()),this.origin=r,this.left=e,this.right=n,this.rightOrigin=s,this.parent=i,this.parentSub=o,this.redone=null,this.content=c,this.info=this.content.isCountable()?p.BIT2:0}set marker(t){(this.info&p.BIT4)>0!==t&&(this.info^=p.BIT4)}get marker(){return(this.info&p.BIT4)>0}get keep(){return(this.info&p.BIT1)>0}set keep(t){this.keep!==t&&(this.info^=p.BIT1)}get countable(){return(this.info&p.BIT2)>0}get deleted(){return(this.info&p.BIT3)>0}set deleted(t){this.deleted!==t&&(this.info^=p.BIT3)}markDeleted(){this.info|=p.BIT3}getMissing(t,e){if(this.origin&&this.origin.client!==this.id.client&&this.origin.clock>=lt(e,this.origin.client))return this.origin.client;if(this.rightOrigin&&this.rightOrigin.client!==this.id.client&&this.rightOrigin.clock>=lt(e,this.rightOrigin.client))return this.rightOrigin.client;if(this.parent&&this.parent.constructor===tt&&this.id.client!==this.parent.client&&this.parent.clock>=lt(e,this.parent.client))return this.parent.client;if(this.origin&&(this.left=ft(t,e,this.origin),this.origin=this.left.lastId),this.rightOrigin&&(this.right=gt(t,this.rightOrigin),this.rightOrigin=this.right.id),this.left&&this.left.constructor===Ie||this.right&&this.right.constructor===Ie)this.parent=null;else if(this.parent){if(this.parent.constructor===tt){const t=dt(e,this.parent);t.constructor===Ie?this.parent=null:this.parent=t.content.type}}else this.left&&this.left.constructor===$e&&(this.parent=this.left.parent,this.parentSub=this.left.parentSub),this.right&&this.right.constructor===$e&&(this.parent=this.right.parent,this.parentSub=this.right.parentSub);return null}integrate(t,e){if(e>0&&(this.id.clock+=e,this.left=ft(t,t.doc.store,rt(this.id.client,this.id.clock-1)),this.origin=this.left.lastId,this.content=this.content.splice(e),this.length-=e),this.parent){if(!this.left&&(!this.right||null!==this.right.left)||this.left&&this.left.right!==this.right){let e,r=this.left;if(null!==r)e=r.right;else if(null!==this.parentSub)for(e=this.parent._map.get(this.parentSub)||null;null!==e&&null!==e.left;)e=e.left;else e=this.parent._start;const n=new Set,s=new Set;for(;null!==e&&e!==this.right;){if(s.add(e),n.add(e),et(this.origin,e.origin)){if(e.id.client<this.id.client)r=e,n.clear();else if(et(this.rightOrigin,e.rightOrigin))break}else{if(null===e.origin||!s.has(dt(t.doc.store,e.origin)))break;n.has(dt(t.doc.store,e.origin))||(r=e,n.clear())}e=e.right}this.left=r}if(null!==this.left){const t=this.left.right;this.right=t,this.left.right=this}else{let t;if(null!==this.parentSub)for(t=this.parent._map.get(this.parentSub)||null;null!==t&&null!==t.left;)t=t.left;else t=this.parent._start,this.parent._start=this;this.right=t}null!==this.right?this.right.left=this:null!==this.parentSub&&(this.parent._map.set(this.parentSub,this),null!==this.left&&this.left.delete(t)),null===this.parentSub&&this.countable&&!this.deleted&&(this.parent._length+=this.length),at(t.doc.store,this),this.content.integrate(t,this),yt(t,this.parent,this.parentSub),(null!==this.parent._item&&this.parent._item.deleted||null!==this.parentSub&&null!==this.right)&&this.delete(t)}else new Ie(this.id,this.length).integrate(t,0)}get next(){let t=this.right;for(;null!==t&&t.deleted;)t=t.right;return t}get prev(){let t=this.left;for(;null!==t&&t.deleted;)t=t.left;return t}get lastId(){return 1===this.length?this.id:rt(this.id.client,this.id.clock+this.length-1)}mergeWith(t){if(this.constructor===t.constructor&&et(t.origin,this.lastId)&&this.right===t&&et(this.rightOrigin,t.rightOrigin)&&this.id.client===t.id.client&&this.id.clock+this.length===t.id.clock&&this.deleted===t.deleted&&null===this.redone&&null===t.redone&&this.content.constructor===t.content.constructor&&this.content.mergeWith(t.content)){const e=this.parent._searchMarker;return e&&e.forEach((e=>{e.p===t&&(e.p=this,!this.deleted&&this.countable&&(e.index-=this.length))})),t.keep&&(this.keep=!0),this.right=t.right,null!==this.right&&(this.right.left=this),this.length+=t.length,!0}return!1}delete(t){if(!this.deleted){const e=this.parent;this.countable&&null===this.parentSub&&(e._length-=this.length),this.markDeleted(),v(t.deleteSet,this.id.client,this.id.clock,this.length),yt(t,e,this.parentSub),this.content.delete(t)}}gc(t,e){if(!this.deleted)throw f.unexpectedCase();this.content.gc(t),e?((t,e,r)=>{const n=t.clients.get(e.id.client);n[ht(n,e.id.clock)]=r})(t,this,new Ie(this.id,this.length)):this.content=new Ve(this.length)}write(t,e){const r=e>0?rt(this.id.client,this.id.clock+e-1):this.origin,n=this.rightOrigin,s=this.parentSub,i=this.content.getRef()&p.BITS5|(null===r?0:p.BIT8)|(null===n?0:p.BIT7)|(null===s?0:p.BIT6);if(t.writeInfo(i),null!==r&&t.writeLeftID(r),null!==n&&t.writeRightID(n),null===r&&null===n){const e=this.parent;if(void 0!==e._item){const r=e._item;if(null===r){const r=(t=>{for(const[e,r]of t.doc.share.entries())if(r===t)return e;throw f.unexpectedCase()})(e);t.writeParentInfo(!0),t.writeString(r)}else t.writeParentInfo(!1),t.writeLeftID(r.id)}else e.constructor===String?(t.writeParentInfo(!0),t.writeString(e)):e.constructor===tt?(t.writeParentInfo(!1),t.writeLeftID(e)):f.unexpectedCase();null!==s&&t.writeString(s)}this.content.write(t,e)}}const Qe=(t,e)=>Ze[e&p.BITS5](t),Ze=[()=>{f.unexpectedCase()},t=>new Ve(t.readLen()),t=>{const e=t.readLen(),r=[];for(let n=0;n<e;n++){const e=t.readString();"undefined"===e?r.push(void 0):r.push(JSON.parse(e))}return new Le(r)},t=>new Oe(t.readBuf()),t=>new ze(t.readString()),t=>new Re(t.readJSON()),t=>new Be(t.readKey(),t.readJSON()),t=>new He(je[t.readTypeRef()](t)),t=>{const e=t.readLen(),r=[];for(let n=0;n<e;n++)r.push(t.readAny());return new Je(r)},t=>new Ne(Me(t.readString(),t.readAny())),()=>{f.unexpectedCase()}];class tr extends Te{get deleted(){return!0}delete(){}mergeWith(t){return this.constructor===t.constructor&&(this.length+=t.length,!0)}integrate(t,e){f.unexpectedCase()}write(t,e){t.writeInfo(10),a.writeVarUint(t.restEncoder,this.length-e)}getMissing(t,e){return null}}const er="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==e?e:{},rr="__ $YJS$ __";!0===er[rr]&&console.error("Yjs was already imported. This breaks constructor checks and will lead to issues! - https://github.com/yjs/yjs/issues/438"),er[rr]=!0})),r.register("8Gyr5",(function(e,n){t(e.exports,"Observable",(()=>c));var s=r("96q9T"),i=r("5zT0w"),o=r("9GMWx");class c{constructor(){this._observers=s.create()}on(t,e){s.setIfUndefined(this._observers,t,i.create).add(e)}once(t,e){const r=(...n)=>{this.off(t,r),e(...n)};this.on(t,r)}off(t,e){const r=this._observers.get(t);void 0!==r&&(r.delete(e),0===r.size&&this._observers.delete(t))}emit(t,e){return o.from((this._observers.get(t)||s.create()).values()).forEach((t=>t(...e)))}destroy(){this._observers=s.create()}}})),r.register("96q9T",(function(e,r){t(e.exports,"create",(()=>n)),t(e.exports,"copy",(()=>s)),t(e.exports,"setIfUndefined",(()=>i)),t(e.exports,"map",(()=>o)),t(e.exports,"any",(()=>c));const n=()=>new Map,s=t=>{const e=n();return t.forEach(((t,r)=>{e.set(r,t)})),e},i=(t,e,r)=>{let n=t.get(e);return void 0===n&&t.set(e,n=r()),n},o=(t,e)=>{const r=[];for(const[n,s]of t)r.push(e(s,n));return r},c=(t,e)=>{for(const[r,n]of t)if(e(n,r))return!0;return!1}})),r.register("5zT0w",(function(e,r){t(e.exports,"create",(()=>n)),t(e.exports,"from",(()=>s));const n=()=>new Set,s=t=>new Set(t)})),r.register("9GMWx",(function(e,n){t(e.exports,"last",(()=>s)),t(e.exports,"appendTo",(()=>i)),t(e.exports,"from",(()=>o)),t(e.exports,"some",(()=>c)),t(e.exports,"equalFlat",(()=>l)),t(e.exports,"unfold",(()=>a)),t(e.exports,"isArray",(()=>h)),t(e.exports,"map",(()=>d)),r("5zT0w");const s=t=>t[t.length-1],i=(t,e)=>{for(let r=0;r<e.length;r++)t.push(e[r])},o=Array.from,c=(t,e)=>{for(let r=0;r<t.length;r++)if(e(t[r],r,t))return!0;return!1},l=(t,e)=>t.length===e.length&&((t,e)=>{for(let r=0;r<t.length;r++)if(!e(t[r],r))return!1;return!0})(t,((t,r)=>t===e[r])),a=(t,e)=>{const r=new Array(t);for(let n=0;n<t;n++)r[n]=e(n,r);return r},h=Array.isArray,d=(t,e)=>{const r=Array(t.length);for(let n=0;n<t.length;n++)r[n]=e(t[n],n,t);return r}})),r.register("bGsfJ",(function(e,r){t(e.exports,"floor",(()=>n)),t(e.exports,"ceil",(()=>s)),t(e.exports,"abs",(()=>i)),t(e.exports,"round",(()=>o)),t(e.exports,"log10",(()=>c)),t(e.exports,"min",(()=>l)),t(e.exports,"max",(()=>a)),t(e.exports,"exp10",(()=>h)),t(e.exports,"isNegativeZero",(()=>d));const n=Math.floor,s=Math.ceil,i=Math.abs,o=(Math.imul,Math.round),c=Math.log10,l=(Math.log2,Math.log,Math.sqrt,(t,e)=>t<e?t:e),a=(t,e)=>t>e?t:e,h=(Number.isNaN,Math.pow,t=>Math.pow(10,t)),d=(Math.sign,t=>0!==t?t<0:1/t<0)})),r.register("7BTJz",(function(e,n){t(e.exports,"createEncoder",(()=>h)),t(e.exports,"encode",(()=>d)),t(e.exports,"toUint8Array",(()=>u)),t(e.exports,"write",(()=>g)),t(e.exports,"writeUint8",(()=>f)),t(e.exports,"writeVarUint",(()=>p)),t(e.exports,"writeVarInt",(()=>w)),t(e.exports,"writeVarUint8Array",(()=>x)),t(e.exports,"writeVarString",(()=>b)),t(e.exports,"writeBinaryEncoder",(()=>k)),t(e.exports,"writeUint8Array",(()=>_)),t(e.exports,"writeAny",(()=>C)),t(e.exports,"RleEncoder",(()=>D)),t(e.exports,"UintOptRleEncoder",(()=>v)),t(e.exports,"IntDiffOptRleEncoder",(()=>T)),t(e.exports,"StringEncoder",(()=>I));var s=r("bGsfJ"),i=r("5es75"),o=r("bcXZT"),c=r("8drkQ"),l=r("9GMWx");class a{constructor(){this.cpos=0,this.cbuf=new Uint8Array(100),this.bufs=[]}}const h=()=>new a,d=t=>{const e=h();return t(e),u(e)},u=t=>{const e=new Uint8Array((t=>{let e=t.cpos;for(let r=0;r<t.bufs.length;r++)e+=t.bufs[r].length;return e})(t));let r=0;for(let n=0;n<t.bufs.length;n++){const s=t.bufs[n];e.set(s,r),r+=s.length}return e.set(new Uint8Array(t.cbuf.buffer,0,t.cpos),r),e},g=(t,e)=>{const r=t.cbuf.length;t.cpos===r&&(t.bufs.push(t.cbuf),t.cbuf=new Uint8Array(2*r),t.cpos=0),t.cbuf[t.cpos++]=e},f=g,p=(t,e)=>{for(;e>o.BITS7;)g(t,o.BIT8|o.BITS7&e),e=s.floor(e/128);g(t,o.BITS7&e)},w=(t,e)=>{const r=s.isNegativeZero(e);for(r&&(e=-e),g(t,(e>o.BITS6?o.BIT8:0)|(r?o.BIT7:0)|o.BITS6&e),e=s.floor(e/64);e>0;)g(t,(e>o.BITS7?o.BIT8:0)|o.BITS7&e),e=s.floor(e/128)},m=new Uint8Array(3e4),y=m.length/3,b=c.utf8TextEncoder&&c.utf8TextEncoder.encodeInto?(t,e)=>{if(e.length<y){const r=c.utf8TextEncoder.encodeInto(e,m).written||0;p(t,r);for(let e=0;e<r;e++)g(t,m[e])}else x(t,c.encodeUtf8(e))}:(t,e)=>{const r=unescape(encodeURIComponent(e)),n=r.length;p(t,n);for(let e=0;e<n;e++)g(t,r.codePointAt(e))},k=(t,e)=>_(t,u(e)),_=(t,e)=>{const r=t.cbuf.length,n=t.cpos,i=s.min(r-n,e.length),o=e.length-i;t.cbuf.set(e.subarray(0,i),n),t.cpos+=i,o>0&&(t.bufs.push(t.cbuf),t.cbuf=new Uint8Array(s.max(2*r,o)),t.cbuf.set(e.subarray(i)),t.cpos=o)},x=(t,e)=>{p(t,e.byteLength),_(t,e)},S=(t,e)=>{((t,e)=>{const r=t.cbuf.length;r-t.cpos<e&&(t.bufs.push(new Uint8Array(t.cbuf.buffer,0,t.cpos)),t.cbuf=new Uint8Array(2*s.max(r,e)),t.cpos=0)})(t,e);const r=new DataView(t.cbuf.buffer,t.cpos,e);return t.cpos+=e,r},E=new DataView(new ArrayBuffer(4)),C=(t,e)=>{switch(typeof e){case"string":g(t,119),b(t,e);break;case"number":i.isInteger(e)&&s.abs(e)<=o.BITS31?(g(t,125),w(t,e)):(r=e,E.setFloat32(0,r),E.getFloat32(0)===r?(g(t,124),((t,e)=>{S(t,4).setFloat32(0,e,!1)})(t,e)):(g(t,123),((t,e)=>{S(t,8).setFloat64(0,e,!1)})(t,e)));break;case"bigint":g(t,122),((t,e)=>{S(t,8).setBigInt64(0,e,!1)})(t,e);break;case"object":if(null===e)g(t,126);else if(l.isArray(e)){g(t,117),p(t,e.length);for(let r=0;r<e.length;r++)C(t,e[r])}else if(e instanceof Uint8Array)g(t,116),x(t,e);else{g(t,118);const r=Object.keys(e);p(t,r.length);for(let n=0;n<r.length;n++){const s=r[n];b(t,s),C(t,e[s])}}break;case"boolean":g(t,e?120:121);break;default:g(t,127)}var r};class D extends a{constructor(t){super(),this.w=t,this.s=null,this.count=0}write(t){this.s===t?this.count++:(this.count>0&&p(this,this.count-1),this.count=1,this.w(this,t),this.s=t)}}const U=t=>{t.count>0&&(w(t.encoder,1===t.count?t.s:-t.s),t.count>1&&p(t.encoder,t.count-2))};class v{constructor(){this.encoder=new a,this.s=0,this.count=0}write(t){this.s===t?this.count++:(U(this),this.count=1,this.s=t)}toUint8Array(){return U(this),u(this.encoder)}}const A=t=>{if(t.count>0){const e=2*t.diff+(1===t.count?0:1);w(t.encoder,e),t.count>1&&p(t.encoder,t.count-2)}};class T{constructor(){this.encoder=new a,this.s=0,this.count=0,this.diff=0}write(t){this.diff===t-this.s?(this.s=t,this.count++):(A(this),this.count=1,this.diff=t-this.s,this.s=t)}toUint8Array(){return A(this),u(this.encoder)}}class I{constructor(){this.sarr=[],this.s="",this.lensE=new v}write(t){this.s+=t,this.s.length>19&&(this.sarr.push(this.s),this.s=""),this.lensE.write(t.length)}toUint8Array(){const t=new a;return this.sarr.push(this.s),this.s="",b(t,this.sarr.join("")),_(t,this.lensE.toUint8Array()),u(t)}}})),r.register("5es75",(function(e,n){t(e.exports,"MAX_SAFE_INTEGER",(()=>o)),t(e.exports,"isInteger",(()=>c));var s=r("bGsfJ"),i=r("bcXZT");const o=Number.MAX_SAFE_INTEGER,c=(Number.MIN_SAFE_INTEGER,i.BITS31,i.BITS32,Number.isInteger||(t=>"number"==typeof t&&isFinite(t)&&s.floor(t)===t));Number.isNaN,Number.parseInt})),r.register("bcXZT",(function(e,r){t(e.exports,"BIT1",(()=>n)),t(e.exports,"BIT2",(()=>s)),t(e.exports,"BIT3",(()=>i)),t(e.exports,"BIT4",(()=>o)),t(e.exports,"BIT6",(()=>c)),t(e.exports,"BIT7",(()=>l)),t(e.exports,"BIT8",(()=>a)),t(e.exports,"BITS5",(()=>h)),t(e.exports,"BITS6",(()=>d)),t(e.exports,"BITS7",(()=>u)),t(e.exports,"BITS8",(()=>g)),t(e.exports,"BITS21",(()=>f)),t(e.exports,"BITS31",(()=>p)),t(e.exports,"BITS32",(()=>w));const n=1,s=2,i=4,o=8,c=32,l=64,a=128,h=31,d=63,u=127,g=255,f=2097151,p=2147483647,w=4294967295})),r.register("8drkQ",(function(e,n){t(e.exports,"fromCharCode",(()=>i)),t(e.exports,"fromCamelCase",(()=>l)),t(e.exports,"utf8TextEncoder",(()=>a)),t(e.exports,"encodeUtf8",(()=>h)),t(e.exports,"utf8TextDecoder",(()=>d)),t(e.exports,"decodeUtf8",(()=>u)),t(e.exports,"repeat",(()=>g));var s=r("9GMWx");const i=String.fromCharCode,o=(String.fromCodePoint,i(65535),/^\s*/g),c=/([A-Z])/g,l=(t,e)=>(t=>t.replace(o,""))(t.replace(c,(t=>`${e}${(t=>t.toLowerCase())(t)}`))),a="undefined"!=typeof TextEncoder?new TextEncoder:null,h=a?t=>a.encode(t):t=>{const e=unescape(encodeURIComponent(t)),r=e.length,n=new Uint8Array(r);for(let t=0;t<r;t++)n[t]=e.codePointAt(t);return n};let d="undefined"==typeof TextDecoder?null:new TextDecoder("utf-8",{fatal:!0,ignoreBOM:!0});d&&1===d.decode(new Uint8Array).length&&(d=null);const u=d?t=>d.decode(t):t=>{let e=t.length,r="",n=0;for(;e>0;){const s=e<1e4?e:1e4,i=t.subarray(n,n+s);n+=s,r+=String.fromCodePoint.apply(null,i),e-=s}return decodeURIComponent(escape(r))},g=(t,e)=>s.unfold(e,(()=>t)).join("")})),r.register("l5188",(function(e,n){t(e.exports,"createDecoder",(()=>u)),t(e.exports,"hasContent",(()=>g)),t(e.exports,"readVarUint8Array",(()=>f)),t(e.exports,"readVarUint",(()=>w)),t(e.exports,"readUint8",(()=>p)),t(e.exports,"readVarInt",(()=>m)),t(e.exports,"readVarString",(()=>y)),t(e.exports,"readAny",(()=>_)),t(e.exports,"RleDecoder",(()=>x)),t(e.exports,"UintOptRleDecoder",(()=>S)),t(e.exports,"IntDiffOptRleDecoder",(()=>E)),t(e.exports,"StringDecoder",(()=>C));var s=r("bcXZT"),i=r("bGsfJ"),o=r("5es75"),c=r("8drkQ"),l=r("3Y8uz");r("7BTJz");const a=l.create("Unexpected end of array"),h=l.create("Integer out of Range");class d{constructor(t){this.arr=t,this.pos=0}}const u=t=>new d(t),g=t=>t.pos!==t.arr.length,f=t=>((t,e)=>{const r=new Uint8Array(t.arr.buffer,t.pos+t.arr.byteOffset,e);return t.pos+=e,r})(t,w(t)),p=t=>t.arr[t.pos++],w=t=>{let e=0,r=1;const n=t.arr.length;for(;t.pos<n;){const n=t.arr[t.pos++];if(e+=(n&s.BITS7)*r,r*=128,n<s.BIT8)return e;if(e>o.MAX_SAFE_INTEGER)throw h}throw a},m=t=>{let e=t.arr[t.pos++],r=e&s.BITS6,n=64;const i=(e&s.BIT7)>0?-1:1;if(!(e&s.BIT8))return i*r;const c=t.arr.length;for(;t.pos<c;){if(e=t.arr[t.pos++],r+=(e&s.BITS7)*n,n*=128,e<s.BIT8)return i*r;if(r>o.MAX_SAFE_INTEGER)throw h}throw a},y=c.utf8TextDecoder?t=>c.utf8TextDecoder.decode(f(t)):t=>{let e=w(t);if(0===e)return"";{let r=String.fromCodePoint(p(t));if(--e<100)for(;e--;)r+=String.fromCodePoint(p(t));else for(;e>0;){const n=e<1e4?e:1e4,s=t.arr.subarray(t.pos,t.pos+n);t.pos+=n,r+=String.fromCodePoint.apply(null,s),e-=n}return decodeURIComponent(escape(r))}},b=(t,e)=>{const r=new DataView(t.arr.buffer,t.arr.byteOffset+t.pos,e);return t.pos+=e,r},k=[t=>{},t=>null,m,t=>b(t,4).getFloat32(0,!1),t=>b(t,8).getFloat64(0,!1),t=>b(t,8).getBigInt64(0,!1),t=>!1,t=>!0,y,t=>{const e=w(t),r={};for(let n=0;n<e;n++)r[y(t)]=_(t);return r},t=>{const e=w(t),r=[];for(let n=0;n<e;n++)r.push(_(t));return r},f],_=t=>k[127-p(t)](t);class x extends d{constructor(t,e){super(t),this.reader=e,this.s=null,this.count=0}read(){return 0===this.count&&(this.s=this.reader(this),g(this)?this.count=w(this)+1:this.count=-1),this.count--,this.s}}class S extends d{constructor(t){super(t),this.s=0,this.count=0}read(){if(0===this.count){this.s=m(this);const t=i.isNegativeZero(this.s);this.count=1,t&&(this.s=-this.s,this.count=w(this)+2)}return this.count--,this.s}}class E extends d{constructor(t){super(t),this.s=0,this.count=0,this.diff=0}read(){if(0===this.count){const t=m(this),e=1&t;this.diff=i.floor(t/2),this.count=1,e&&(this.count=w(this)+2)}return this.s+=this.diff,this.count--,this.s}}class C{constructor(t){this.decoder=new S(t),this.str=y(this.decoder),this.spos=0}read(){const t=this.spos+this.decoder.read(),e=this.str.slice(this.spos,t);return this.spos=t,e}}})),r.register("3Y8uz",(function(e,r){t(e.exports,"create",(()=>n)),t(e.exports,"methodUnimplemented",(()=>s)),t(e.exports,"unexpectedCase",(()=>i));const n=t=>new Error(t),s=()=>{throw n("Method unimplemented")},i=()=>{throw n("Unexpected case")}})),r.register("ouOhr",(function(e,n){t(e.exports,"uint32",(()=>i)),t(e.exports,"uuidv4",(()=>o)),r("bGsfJ"),r("bcXZT");var s=r("2grmT");Math.random;const i=()=>(0,s.getRandomValues)(new Uint32Array(1))[0],o=()=>"10000000-1000-4000-8000-100000000000".replace(/[018]/g,(t=>(t^i()&15>>t/4).toString(16)))})),r.register("2grmT",(function(e,r){t(e.exports,"getRandomValues",(()=>n)),crypto.subtle;const n=crypto.getRandomValues.bind(crypto)})),r.register("fJEwH",(function(e,n){t(e.exports,"create",(()=>s)),r("16gRh");const s=t=>new Promise(t);Promise.all.bind(Promise)})),r.register("16gRh",(function(e,n){t(e.exports,"getUnixTime",(()=>s)),r("cdEUL"),r("bGsfJ");const s=Date.now})),r.register("cdEUL",(function(e,n){t(e.exports,"prefix",(()=>c));var s=r("bGsfJ");const i=["","k","M","G","T","P","E","Z","Y"],o=["","m","μ","n","p","f","a","z","y"],c=(t,e=0)=>{const r=0===t?0:s.log10(t);let n=0;for(;r<3*n&&e>-8;)e--,n--;for(;r>=3+3*n&&e<8;)e++,n++;const c=e<0?o[-e]:i[e];return{n:s.round(1e12*(n>0?t/s.exp10(3*n):t*s.exp10(-3*n)))/1e12,prefix:c}}})),r.register("jx2H5",(function(e,n){t(e.exports,"copyUint8Array",(()=>i));r("8drkQ");var s=r("isVtz");r("9GMWx"),r("bGsfJ"),r("7BTJz"),r("l5188"),r("laHbQ").Buffer;const i=(s.isBrowser,s.isBrowser,t=>{const e=(t=>new Uint8Array(t))(t.byteLength);return e.set(t),e})})),r.register("isVtz",(function(e,n){t(e.exports,"isBrowser",(()=>d)),t(e.exports,"getVariable",(()=>p)),t(e.exports,"supportsColor",(()=>m));var s=r("96q9T"),i=r("8drkQ"),o=r("9xF6A"),c=r("hpXBJ"),l=r("4H1bc"),a=r("b3MRX");const h=void 0!==a&&a.release&&/node|io\.js/.test(a.release.name)&&"[object process]"===Object.prototype.toString.call(void 0!==a?a:0),d="undefined"!=typeof window&&"undefined"!=typeof document&&!h;let u;"undefined"!=typeof navigator&&/Mac/.test(navigator.platform);const g=[],f=t=>(()=>{if(void 0===u)if(h){u=s.create();const t=a.argv;let e=null;for(let r=0;r<t.length;r++){const n=t[r];"-"===n[0]?(null!==e&&u.set(e,""),e=n):null!==e?(u.set(e,n),e=null):g.push(n)}null!==e&&u.set(e,"")}else"object"==typeof location?(u=s.create(),(location.search||"?").slice(1).split("&").forEach((t=>{if(0!==t.length){const[e,r]=t.split("=");u.set(`--${i.fromCamelCase(e,"-")}`,r),u.set(`-${i.fromCamelCase(e,"-")}`,r)}}))):u=s.create();return u})().has(t),p=t=>h?o.undefinedToNull(a.env[t.toUpperCase()]):o.undefinedToNull(c.varStorage.getItem(t));f("--"+"production")||p("production");const w=h&&l.isOneOf(void 0,["true","1","2"]),m=!f("no-colors")&&(!h||a.stdout.isTTY||w)&&(!h||f("color")||w||null!==p("COLORTERM")||(p("TERM")||"").includes("color"))})),r.register("9xF6A",(function(e,r){t(e.exports,"undefinedToNull",(()=>n));const n=t=>void 0===t?null:t})),r.register("hpXBJ",(function(e,r){t(e.exports,"varStorage",(()=>i));let n=new class{constructor(){this.map=new Map}setItem(t,e){this.map.set(t,e)}getItem(t){return this.map.get(t)}},s=!0;try{"undefined"!=typeof localStorage&&localStorage&&(n=localStorage,s=!1)}catch(t){}const i=n})),r.register("4H1bc",(function(e,n){t(e.exports,"callAll",(()=>i)),t(e.exports,"nop",(()=>o)),t(e.exports,"id",(()=>c)),t(e.exports,"isOneOf",(()=>l));var s=r("9GMWx");r("7C9F2");const i=(t,e,r=0)=>{try{for(;r<t.length;r++)t[r](...e)}finally{r<t.length&&i(t,e,r+1)}},o=()=>{},c=t=>t,l=(t,e)=>e.includes(t);s.isArray})),r.register("7C9F2",(function(e,r){t(e.exports,"assign",(()=>n)),t(e.exports,"forEach",(()=>i)),t(e.exports,"length",(()=>o)),t(e.exports,"isEmpty",(()=>c)),t(e.exports,"hasProperty",(()=>l)),t(e.exports,"equalFlat",(()=>a));const n=Object.assign,s=Object.keys,i=(t,e)=>{for(const r in t)e(t[r],r)},o=t=>s(t).length,c=t=>{for(const e in t)return!1;return!0},l=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),a=(t,e)=>t===e||o(t)===o(e)&&((t,e)=>{for(const r in t)if(!e(t[r],r))return!1;return!0})(t,((t,r)=>(void 0!==t||l(e,r))&&e[r]===t))})),r.register("b3MRX",(function(t,e){var r,n,s=t.exports={};function i(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function c(t){if(r===setTimeout)return setTimeout(t,0);if((r===i||!r)&&setTimeout)return r=setTimeout,setTimeout(t,0);try{return r(t,0)}catch(e){try{return r.call(null,t,0)}catch(e){return r.call(this,t,0)}}}!function(){try{r="function"==typeof setTimeout?setTimeout:i}catch(t){r=i}try{n="function"==typeof clearTimeout?clearTimeout:o}catch(t){n=o}}();var l,a=[],h=!1,d=-1;function u(){h&&l&&(h=!1,l.length?a=l.concat(a):d=-1,a.length&&g())}function g(){if(!h){var t=c(u);h=!0;for(var e=a.length;e;){for(l=a,a=[];++d<e;)l&&l[d].run();d=-1,e=a.length}l=null,h=!1,function(t){if(n===clearTimeout)return clearTimeout(t);if((n===o||!n)&&clearTimeout)return n=clearTimeout,clearTimeout(t);try{n(t)}catch(e){try{return n.call(null,t)}catch(e){return n.call(this,t)}}}(t)}}function f(t,e){this.fun=t,this.array=e}function p(){}s.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)e[r-1]=arguments[r];a.push(new f(t,e)),1!==a.length||h||c(g)},f.prototype.run=function(){this.fun.apply(null,this.array)},s.title="browser",s.browser=!0,s.env={},s.argv=[],s.version="",s.versions={},s.on=p,s.addListener=p,s.once=p,s.off=p,s.removeListener=p,s.removeAllListeners=p,s.emit=p,s.prependListener=p,s.prependOnceListener=p,s.listeners=function(t){return[]},s.binding=function(t){throw new Error("process.binding is not supported")},s.cwd=function(){return"/"},s.chdir=function(t){throw new Error("process.chdir is not supported")},s.umask=function(){return 0}})),r.register("9hwjE",(function(e,n){t(e.exports,"print",(()=>u)),t(e.exports,"warn",(()=>g)),t(e.exports,"BOLD",(()=>r("9okbY").BOLD)),t(e.exports,"UNBOLD",(()=>r("9okbY").UNBOLD)),t(e.exports,"RED",(()=>r("9okbY").RED)),t(e.exports,"ORANGE",(()=>r("9okbY").ORANGE));var s=r("isVtz"),i=r("5zT0w"),o=r("2djb1"),c=r("8kkbA"),l=(r("kQNaO"),r("96q9T")),a=(r("kdpDU"),r("bGsfJ"),r("9okbY"));const h={[(a=r("9okbY")).BOLD]:o.create("font-weight","bold"),[a.UNBOLD]:o.create("font-weight","normal"),[a.BLUE]:o.create("color","blue"),[a.GREEN]:o.create("color","green"),[a.GREY]:o.create("color","grey"),[a.RED]:o.create("color","red"),[a.PURPLE]:o.create("color","purple"),[a.ORANGE]:o.create("color","orange"),[a.UNCOLOR]:o.create("color","black")},d=s.supportsColor?t=>{const e=[],r=[],n=l.create();let s=[],i=0;for(;i<t.length;i++){const s=t[i],o=h[s];if(void 0!==o)n.set(o.left,o.right);else{if(s.constructor!==String&&s.constructor!==Number)break;{const t=c.mapToStyleString(n);i>0||t.length>0?(e.push("%c"+s),r.push(t)):e.push(s)}}}for(i>0&&(s=r,s.unshift(e.join("")));i<t.length;i++){const e=t[i];e instanceof Symbol||s.push(e)}return s}:a.computeNoColorLoggingArgs,u=(...t)=>{console.log(...d(t)),f.forEach((e=>e.print(t)))},g=(...t)=>{console.warn(...d(t)),t.unshift(a.ORANGE),f.forEach((e=>e.print(t)))},f=i.create()})),r.register("2djb1",(function(e,r){t(e.exports,"create",(()=>s)),t(e.exports,"forEach",(()=>i));class n{constructor(t,e){this.left=t,this.right=e}}const s=(t,e)=>new n(t,e),i=(t,e)=>t.forEach((t=>e(t.left,t.right)))})),r.register("8kkbA",(function(e,n){t(e.exports,"append",(()=>l)),t(e.exports,"addEventListener",(()=>a)),t(e.exports,"element",(()=>h)),t(e.exports,"text",(()=>d)),t(e.exports,"mapToStyleString",(()=>u));var s=r("2djb1"),i=r("96q9T");const o="undefined"!=typeof document?document:{},c=("undefined"!=typeof DOMParser&&new DOMParser,t=>{const e=o.createDocumentFragment();for(let r=0;r<t.length;r++)g(e,t[r]);return e}),l=(t,e)=>(g(t,c(e)),t),a=(t,e,r)=>t.addEventListener(e,r),h=(t,e=[],r=[])=>l(((t,e)=>(s.forEach(e,((e,r)=>{!1===r?t.removeAttribute(e):!0===r?t.setAttribute(e,""):t.setAttribute(e,r)})),t))((t=>o.createElement(t))(t),e),r),d=t=>o.createTextNode(t),u=t=>i.map(t,((t,e)=>`${e}:${t};`)).join(""),g=(t,e)=>t.appendChild(e);o.ELEMENT_NODE,o.TEXT_NODE,o.CDATA_SECTION_NODE,o.COMMENT_NODE,o.DOCUMENT_NODE,o.DOCUMENT_TYPE_NODE,o.DOCUMENT_FRAGMENT_NODE})),r.register("kQNaO",(function(e,r){t(e.exports,"stringify",(()=>n));const n=JSON.stringify;JSON.parse})),r.register("kdpDU",(function(e,r){t(e.exports,"enqueue",(()=>i));let n=[];const s=()=>{for(let t=0;t<n.length;t++)n[t]();n=[]},i=t=>{n.push(t),1===n.length&&setTimeout(s,0)},o=t=>class{constructor(t){this._=t}destroy(){t(this._)}};o(clearTimeout),o(clearInterval),o((t=>"undefined"!=typeof requestAnimationFrame&&cancelAnimationFrame(t))),o((t=>"undefined"!=typeof cancelIdleCallback&&cancelIdleCallback(t)))})),r.register("9okbY",(function(e,n){t(e.exports,"BOLD",(()=>l)),t(e.exports,"UNBOLD",(()=>a)),t(e.exports,"BLUE",(()=>h)),t(e.exports,"GREY",(()=>d)),t(e.exports,"GREEN",(()=>u)),t(e.exports,"RED",(()=>g)),t(e.exports,"PURPLE",(()=>f)),t(e.exports,"ORANGE",(()=>p)),t(e.exports,"UNCOLOR",(()=>w)),t(e.exports,"computeNoColorLoggingArgs",(()=>m)),t(e.exports,"createModuleLogger",(()=>_));var s=r("9Juxm"),i=r("16gRh"),o=r("isVtz"),c=r("4H1bc");const l=s.create(),a=s.create(),h=s.create(),d=s.create(),u=s.create(),g=s.create(),f=s.create(),p=s.create(),w=s.create(),m=t=>{const e=[],r=[];let n=0;for(;n<t.length;n++){const s=t[n];s.constructor===String||s.constructor===Number?e.push(s):s.constructor===Object&&r.push(JSON.stringify(s))}return r},y=[u,f,p,h];let b=0,k=i.getUnixTime();const _=(t,e)=>{const r=y[b],n=o.getVariable("log"),s=null!==n&&("*"===n||"true"===n||new RegExp(n,"gi").test(e));return b=(b+1)%y.length,e+=": ",s?(...n)=>{const s=i.getUnixTime(),o=s-k;k=s,t(r,e,w,...n.map((t=>"string"==typeof t||"symbol"==typeof t?t:JSON.stringify(t))),r," +"+o+"ms")}:c.nop}})),r.register("9Juxm",(function(e,r){t(e.exports,"create",(()=>n));const n=Symbol})),r.register("iRxFz",(function(e,r){t(e.exports,"iteratorFilter",(()=>s)),t(e.exports,"iteratorMap",(()=>i));const n=t=>({[Symbol.iterator](){return this},next:t}),s=(t,e)=>n((()=>{let r;do{r=t.next()}while(!r.done&&!e(r.value));return r})),i=(t,e)=>n((()=>{const{done:r,value:n}=t.next();return{done:r,value:r?void 0:e(n)}}))})),r.register("7X7lt",(function(e,n){t(e.exports,"YKeyValue",(()=>i));var s=r("8Gyr5");class i extends s.Observable{constructor(t){super(),this.yarray=t,this.doc=t.doc,this.map=new Map;{const e=t.toArray();this.doc.transact((()=>{for(let r=e.length-1;r>=0;r--){const n=e[r];this.map.has(n.key)?t.delete(r):this.map.set(n.key,n)}}))}t.observe(((e,r)=>{const n=new Map,s=Array.from(e.changes.added);e.changes.deleted.forEach((t=>{t.content.getContent().forEach((t=>{this.map.get(t.key)===t&&(this.map.delete(t.key),n.set(t.key,{action:"delete",oldValue:t.val}))}))}));const i=new Map;s.map((t=>t.content.getContent())).flat().forEach((t=>{i.set(t.key,t)}));const o=new Set,c=t.toArray();this.doc.transact((e=>{for(let e=c.length-1;e>=0&&(i.size>0||o.size>0);e--){const r=c[e];if(o.has(r.key))o.delete(r.key),t.delete(e,1);else if(i.get(r.key)===r){const t=this.map.get(r.key);if(t)o.add(r.key),n.set(r.key,{action:"update",oldValue:t.val,newValue:r.val});else{const t=n.get(r.key);t&&"delete"===t.action?n.set(r.key,{action:"update",newValue:r.val,oldValue:t.oldValue}):n.set(r.key,{action:"add",newValue:r.val})}i.delete(r.key),this.map.set(r.key,r)}else i.has(r.key)&&(o.add(r.key),i.delete(r.key))}})),n.size>0&&this.emit("change",[n,r])}))}set(t,e){this.doc.transact((r=>{this.map.has(t)&&this.delete(t),this.yarray.push([{key:t,val:e}])}))}delete(t){let e=0;for(const r of this.yarray){if(r.key===t){this.yarray.delete(e);break}e++}}get(t){const e=this.map.get(t);return e&&e.val}has(t){return this.map.has(t)}}})),r.register("gjWRH",(function(e,r){t(e.exports,"encode",(()=>s)),t(e.exports,"decode",(()=>o));const{fromCharCode:n}=String,s=t=>{const e=[];for(let r=0,{length:s}=t;r<s;r++)e.push(n(t[r]));return btoa(e.join(""))},i=t=>t.charCodeAt(0),o=t=>Uint8Array.from(atob(t),i)}));
|
package/dist/Edrys.a72376e3.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e=("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{}).parcelRequirea18f;e.register("hCvHz",(function(s,t){var n,i,o,c;n=s.exports,i="Sync",o=()=>r,Object.defineProperty(n,i,{get:o,set:c,enumerable:!0,configurable:!0});var d=e("bQEo7"),a=e("gjWRH");class r extends d.Sync{subject="liasync";connected=!1;async connect(e){super.connect(e),this.init(!0)}destroy(){this.listener&&window.removeEventListener("message",this.listener),super.destroy()}init(e,s){if(e){this.subject=this.room||"liasync";let e=this;this.listener=function(s){try{let t=s.data;switch(t.subject){case"init":t.body&&(e.connected=!0,e.sendConnect());break;case"publish":t.body&&e.pubsubReceive(t.body);break;default:t.body&&e.applyUpdate((0,a.decode)(t.body))}}catch(e){console.warn("Edrys",e.message)}},window.addEventListener("message",this.listener),this.broadcast(!0,null,"init"),setTimeout((function(){e.connected||e.sendDisconnectError("This seems not to be an Edrys classroom")}),2e3)}}broadcast(e,s,t){let n=e?t||this.subject:"publish";window.parent.postMessage({subject:n,body:s?(0,a.encode)(s):null},"*")}}}));
|
package/dist/Gun.11528a5e.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function t(t,e,n,s){Object.defineProperty(t,e,{get:n,set:s,enumerable:!0,configurable:!0})}var e=("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{}).parcelRequirea18f;e.register("cR697",(function(n,s){t(n.exports,"Sync",(()=>i));var r=e("bQEo7"),o=e("kPRWr");Object.defineProperty(Array.prototype,"flat",{value:function(t=1){return this.reduce((function(e,n){return e.concat(Array.isArray(n)&&t>1?n.flat(t-1):n)}),[])}});class i extends r.Sync{store="";gunServer=[];persistent=!1;destroy(){this.gunServer=[],delete this.gun,super.destroy()}uniqueID(){const t=super.uniqueID();return t?btoa(t+(this.persistent?"p":"")):null}async connect(t){super.connect(t),this.gunServer=t.config?.urls||[],this.persistent=t.config?.persistent||!1,window.Gun?this.init(!0):this.load(["https://cdn.jsdelivr.net/npm/gun/gun.js",o.Crypto.url],this)}init(t,e){if(0==this.gunServer.length)return this.sendDisconnectError("You have to provide at least one relay server.");const n=this.uniqueID();if(t&&window.Gun&&n){this.gun=window.Gun({peers:this.gunServer}),this.store=n,o.Crypto.init(this.password);let t=this;this.persistent&&this.gun.get(this.store).once((e=>{if(e&&e.msg)try{const[n,s]=o.Crypto.decode(e.msg);setTimeout((function(){t.gun?.get(t.store).put({msg:o.Crypto.encode(["",s])})}),1e3)}catch(t){console.warn("GunDB:",t.message)}})),this.gun.get(this.store).on((function(e,n){try{const[n,s,i]=o.Crypto.decode(e.msg);n!=t.token&&null!=s&&(i==t.db.timestamp?t.applyUpdate(r.base64_to_unit8(s)):i>t.db.timestamp?t.broadcast(!0,t.db.encode()):(t.applyUpdate(r.base64_to_unit8(s),!0),t.db.timestamp=i))}catch(t){console.warn("GunDB",t.message)}})),this.gun.get(this.store+"pubsub").on((function(e,n){try{const[n,s,i]=o.Crypto.decode(e.msg);n!=t.token&&null!=s&&t.pubsubReceive(r.base64_to_unit8(s))}catch(t){console.warn("GunDB",t.message)}})),this.persistent||(this.broadcast(!0,null),this.broadcast(!1,null)),this.sendConnect()}else{let t="GunDB unknown error";e?t="Could not load resource: "+e:window.Gun||(t="Could not load GunDB interface"),this.sendDisconnectError(t)}}broadcast(t,e){if(this.gun){const n=null==e?null:r.uint8_to_base64(e);this.gun.get(this.store+(t?"":"pubsub")).put({msg:o.Crypto.encode(["",n])})}}}})),e.register("kPRWr",(function(e,n){t(e.exports,"Crypto",(()=>s));const s={url:"https://cdn.jsdelivr.net/npm/simple-crypto-js@2.5.0/dist/SimpleCrypto.min.js",crypt:null,check:function(){return!!window.SimpleCrypto},init:function(t){try{"string"==typeof t&&t.length>0?this.crypt=new SimpleCrypto(t):this.crypt=null}catch(t){console.warn("Crypto: ",t),this.crypt=null}},encode:function(t){return this.crypt?this.crypt.encrypt(btoa(encodeURIComponent(JSON.stringify(t)))):JSON.stringify(t)},decode:function(t){return this.crypt?JSON.parse(decodeURIComponent(atob(this.crypt.decrypt(t)))):JSON.parse(t)}}}));
|
package/dist/Gun.a8998ad8.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
!function(){function t(t,e,n,s){Object.defineProperty(t,e,{get:n,set:s,enumerable:!0,configurable:!0})}var e=("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{}).parcelRequirea18f;e.register("ioxdd",(function(n,s){t(n.exports,"Sync",(function(){return i}));var r=e("9Xb5B"),o=e("6LsB2");Object.defineProperty(Array.prototype,"flat",{value:function(t=1){return this.reduce((function(e,n){return e.concat(Array.isArray(n)&&t>1?n.flat(t-1):n)}),[])}});class i extends r.Sync{store="";gunServer=[];persistent=!1;destroy(){this.gunServer=[],delete this.gun,super.destroy()}uniqueID(){const t=super.uniqueID();return t?btoa(t+(this.persistent?"p":"")):null}async connect(t){super.connect(t),this.gunServer=t.config?.urls||[],this.persistent=t.config?.persistent||!1,window.Gun?this.init(!0):this.load(["https://cdn.jsdelivr.net/npm/gun/gun.js",o.Crypto.url],this)}init(t,e){if(0==this.gunServer.length)return this.sendDisconnectError("You have to provide at least one relay server.");const n=this.uniqueID();if(t&&window.Gun&&n){this.gun=window.Gun({peers:this.gunServer}),this.store=n,o.Crypto.init(this.password);let t=this;this.persistent&&this.gun.get(this.store).once((e=>{if(e&&e.msg)try{const[n,s]=o.Crypto.decode(e.msg);setTimeout((function(){t.gun?.get(t.store).put({msg:o.Crypto.encode(["",s])})}),1e3)}catch(t){console.warn("GunDB:",t.message)}})),this.gun.get(this.store).on((function(e,n){try{const[n,s,i]=o.Crypto.decode(e.msg);n!=t.token&&null!=s&&(i==t.db.timestamp?t.applyUpdate(r.base64_to_unit8(s)):i>t.db.timestamp?t.broadcast(!0,t.db.encode()):(t.applyUpdate(r.base64_to_unit8(s),!0),t.db.timestamp=i))}catch(t){console.warn("GunDB",t.message)}})),this.gun.get(this.store+"pubsub").on((function(e,n){try{const[n,s,i]=o.Crypto.decode(e.msg);n!=t.token&&null!=s&&t.pubsubReceive(r.base64_to_unit8(s))}catch(t){console.warn("GunDB",t.message)}})),this.persistent||(this.broadcast(!0,null),this.broadcast(!1,null)),this.sendConnect()}else{let t="GunDB unknown error";e?t="Could not load resource: "+e:window.Gun||(t="Could not load GunDB interface"),this.sendDisconnectError(t)}}broadcast(t,e){if(this.gun){const n=null==e?null:r.uint8_to_base64(e);this.gun.get(this.store+(t?"":"pubsub")).put({msg:o.Crypto.encode(["",n])})}}}})),e.register("6LsB2",(function(e,n){t(e.exports,"Crypto",(function(){return s}));const s={url:"https://cdn.jsdelivr.net/npm/simple-crypto-js@2.5.0/dist/SimpleCrypto.min.js",crypt:null,check:function(){return!!window.SimpleCrypto},init:function(t){try{"string"==typeof t&&t.length>0?this.crypt=new SimpleCrypto(t):this.crypt=null}catch(t){console.warn("Crypto: ",t),this.crypt=null}},encode:function(t){return this.crypt?this.crypt.encrypt(btoa(encodeURIComponent(JSON.stringify(t)))):JSON.stringify(t)},decode:function(t){return this.crypt?JSON.parse(decodeURIComponent(atob(this.crypt.decrypt(t)))):JSON.parse(t)}}}))}();
|
package/dist/P2PT.54680aa5.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
!function(){function e(e,t,n,o){Object.defineProperty(e,t,{get:n,set:o,enumerable:!0,configurable:!0})}var t=("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{}).parcelRequirea18f;t.register("3h1D8",(function(n,o){e(n.exports,"Sync",(function(){return i}));var s=t("9Xb5B"),r=t("6LsB2");class i extends s.Sync{trackersAnnounceURLs=[];peers={};tokens={};is_connected=!1;destroy(){this.trackersAnnounceURLs=[],this.p2pt?.destroy(),super.destroy()}async connect(e){super.connect(e),this.trackersAnnounceURLs=e.config||[],window.P2PT?this.init(!0):(window.P2PT=await t("fUgGS"),this.load([r.Crypto.url],this))}init(e,t){if(0==this.trackersAnnounceURLs.length)return this.sendDisconnectError("You have to provide at least one WebTorrent tracker.");const n=this.uniqueID();if(e&&window.P2PT&&n){this.p2pt=new window.P2PT(this.trackersAnnounceURLs,n),r.Crypto.init(this.password);const e=this;this.p2pt.on("trackerconnect",((t,n)=>{console.log("Connected to tracker : "+t.announceUrl),console.log("Tracker stats : "+JSON.stringify(n)),e.is_connected||(e.is_connected=!0,e.sendConnect())})),this.p2pt.on("trackerwarning",((e,t)=>{console.log("Connected to tracker : ",e),console.log("Tracker stats : "+JSON.stringify(t))})),this.p2pt.on("peerconnect",(t=>{console.warn("Peer connected : "+t.id,t),e.peers[t.id]=t})),this.p2pt.on("peerclose",(t=>{console.warn("Peer disconnected : "+t);const n=e.tokens[t.id];n&&(e.db.removePeer(n),delete e.tokens[t.id]),delete e.peers[t.id]})),this.p2pt.on("msg",((t,n)=>{if(n)try{const[o,i,c,p]=r.Crypto.decode(n);o!=e.token&&(i?p==e.db.timestamp?e.applyUpdate(s.base64_to_unit8(c)):p>e.db.timestamp?e.broadcast(!0,e.db.encode()):(e.db.timestamp=p,e.applyUpdate(s.base64_to_unit8(c),!0)):e.pubsubReceive(s.base64_to_unit8(c)),e.tokens[t.id]||(e.tokens[t.id]=o))}catch(e){console.warn("P2PT",e.message)}})),this.p2pt.start()}else{let e="P2PT unknown error";t?e="Could not load resource: "+t:window.P2PT||(e="Could not load P2PT interface"),this.sendDisconnectError(e)}}broadcast(e,t){if(!this.p2pt)return;const n=null==t?null:s.uint8_to_base64(t),o=r.Crypto.encode([this.token,e,n,this.db.timestamp]);for(const e in this.peers)this.p2pt.send(this.peers[e],o)}}})),t.register("6LsB2",(function(t,n){e(t.exports,"Crypto",(function(){return o}));const o={url:"https://cdn.jsdelivr.net/npm/simple-crypto-js@2.5.0/dist/SimpleCrypto.min.js",crypt:null,check:function(){return!!window.SimpleCrypto},init:function(e){try{"string"==typeof e&&e.length>0?this.crypt=new SimpleCrypto(e):this.crypt=null}catch(e){console.warn("Crypto: ",e),this.crypt=null}},encode:function(e){return this.crypt?this.crypt.encrypt(btoa(encodeURIComponent(JSON.stringify(e)))):JSON.stringify(e)},decode:function(e){return this.crypt?JSON.parse(decodeURIComponent(atob(this.crypt.decrypt(e)))):JSON.parse(e)}}})),t.register("fUgGS",(function(e,n){e.exports=t("itSdq")(t("kXp5m").getBundleURL("jlqW1")+t("eX2dU").resolve("dQZWG")).then((()=>t("6Nj57")))}))}();
|
package/dist/P2PT.e8e586dc.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function e(e,t,n,o){Object.defineProperty(e,t,{get:n,set:o,enumerable:!0,configurable:!0})}var t=("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{}).parcelRequirea18f;t.register("k1yCh",(function(n,o){e(n.exports,"Sync",(()=>i));var s=t("bQEo7"),r=t("kPRWr");class i extends s.Sync{trackersAnnounceURLs=[];peers={};tokens={};is_connected=!1;destroy(){this.trackersAnnounceURLs=[],this.p2pt?.destroy(),super.destroy()}async connect(e){super.connect(e),this.trackersAnnounceURLs=e.config||[],window.P2PT?this.init(!0):(window.P2PT=await t("bIRai"),this.load([r.Crypto.url],this))}init(e,t){if(0==this.trackersAnnounceURLs.length)return this.sendDisconnectError("You have to provide at least one WebTorrent tracker.");const n=this.uniqueID();if(e&&window.P2PT&&n){this.p2pt=new window.P2PT(this.trackersAnnounceURLs,n),r.Crypto.init(this.password);const e=this;this.p2pt.on("trackerconnect",((t,n)=>{console.log("Connected to tracker : "+t.announceUrl),console.log("Tracker stats : "+JSON.stringify(n)),e.is_connected||(e.is_connected=!0,e.sendConnect())})),this.p2pt.on("trackerwarning",((e,t)=>{console.log("Connected to tracker : ",e),console.log("Tracker stats : "+JSON.stringify(t))})),this.p2pt.on("peerconnect",(t=>{console.warn("Peer connected : "+t.id,t),e.peers[t.id]=t})),this.p2pt.on("peerclose",(t=>{console.warn("Peer disconnected : "+t);const n=e.tokens[t.id];n&&(e.db.removePeer(n),delete e.tokens[t.id]),delete e.peers[t.id]})),this.p2pt.on("msg",((t,n)=>{if(n)try{const[o,i,c,p]=r.Crypto.decode(n);o!=e.token&&(i?p==e.db.timestamp?e.applyUpdate(s.base64_to_unit8(c)):p>e.db.timestamp?e.broadcast(!0,e.db.encode()):(e.db.timestamp=p,e.applyUpdate(s.base64_to_unit8(c),!0)):e.pubsubReceive(s.base64_to_unit8(c)),e.tokens[t.id]||(e.tokens[t.id]=o))}catch(e){console.warn("P2PT",e.message)}})),this.p2pt.start()}else{let e="P2PT unknown error";t?e="Could not load resource: "+t:window.P2PT||(e="Could not load P2PT interface"),this.sendDisconnectError(e)}}broadcast(e,t){if(!this.p2pt)return;const n=null==t?null:s.uint8_to_base64(t),o=r.Crypto.encode([this.token,e,n,this.db.timestamp]);for(const e in this.peers)this.p2pt.send(this.peers[e],o)}}})),t.register("kPRWr",(function(t,n){e(t.exports,"Crypto",(()=>o));const o={url:"https://cdn.jsdelivr.net/npm/simple-crypto-js@2.5.0/dist/SimpleCrypto.min.js",crypt:null,check:function(){return!!window.SimpleCrypto},init:function(e){try{"string"==typeof e&&e.length>0?this.crypt=new SimpleCrypto(e):this.crypt=null}catch(e){console.warn("Crypto: ",e),this.crypt=null}},encode:function(e){return this.crypt?this.crypt.encrypt(btoa(encodeURIComponent(JSON.stringify(e)))):JSON.stringify(e)},decode:function(e){return this.crypt?JSON.parse(decodeURIComponent(atob(this.crypt.decrypt(e)))):JSON.parse(e)}}})),t.register("bIRai",(function(e,n){e.exports=import("./"+t("68DXD").resolve("5QBLP")).then((()=>t("5snUO")))}));
|
package/dist/PubNub.5e938410.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e=("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{}).parcelRequirea18f;e.register("jy5vU",(function(s,t){var i,n;i=s.exports,n=()=>a,Object.defineProperty(i,"Sync",{get:n,set:undefined,enumerable:!0,configurable:!0});var u=e("bQEo7"),b=e("1XWyF");class a extends u.Sync{channel="";destroy(){this.pubnub&&(this.pubnub.unsubscribeAll(),this.pubnub.stop()),super.destroy()}async connect(e){super.connect(e),this.publishKey=e.config.publishKey,this.subscribeKey=e.config.subscribeKey,window.PubNub?this.init(!0):this.load(["//cdn.pubnub.com/sdk/javascript/pubnub.4.33.1.min.js"],this)}init(e,s){if(!this.publishKey||!this.subscribeKey)return this.sendDisconnectError("You have to provide a valid pair of keys");const t=this.uniqueID();if(e&&window.PubNub&&t){this.channel=btoa(t),this.pubnub=new PubNub({publishKey:this.publishKey,subscribeKey:this.subscribeKey,uuid:this.token,heartbeatInterval:30,cipherKey:this.password}),this.pubnub.subscribe({channels:[this.channel],withPresence:!0,restore:!1});let e=this;this.pubnub.addListener({status:function(s){b.default.info("PUBNUB status:",s),"PNConnectedCategory"===s.category?e.sendConnect():"PNBadRequestCategory"===s.category&&e.sendDisconnectError(s.errorData.message)},message:function(s){if(s.publisher!==e.token){const[t,i,n]=s.message;t?n==e.db.timestamp?e.applyUpdate(u.base64_to_unit8(i)):n>e.db.timestamp?e.broadcast(!0,e.db.encode()):(e.db.timestamp=n,e.applyUpdate(u.base64_to_unit8(i),!0)):e.pubsubReceive(u.base64_to_unit8(i))}},presence:function(s){"leave"===s.action&&e.db.removePeer(s.uuid)}})}}broadcast(e,s){this.pubnub&&this.pubnub.publish({channel:this.channel,message:[e,u.uint8_to_base64(s),this.db.timestamp],storeInHistory:!1},(function(e,s){}))}}}));
|
package/dist/PubNub.909274ea.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
!function(){var e=("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{}).parcelRequirea18f;e.register("gZyoX",(function(s,t){var n,i;n=s.exports,i=function(){return o},Object.defineProperty(n,"Sync",{get:i,set:undefined,enumerable:!0,configurable:!0});var u=e("9Xb5B"),b=e("jofQX");class o extends u.Sync{channel="";destroy(){this.pubnub&&(this.pubnub.unsubscribeAll(),this.pubnub.stop()),super.destroy()}async connect(e){super.connect(e),this.publishKey=e.config.publishKey,this.subscribeKey=e.config.subscribeKey,window.PubNub?this.init(!0):this.load(["//cdn.pubnub.com/sdk/javascript/pubnub.4.33.1.min.js"],this)}init(e,s){if(!this.publishKey||!this.subscribeKey)return this.sendDisconnectError("You have to provide a valid pair of keys");const t=this.uniqueID();if(e&&window.PubNub&&t){this.channel=btoa(t),this.pubnub=new PubNub({publishKey:this.publishKey,subscribeKey:this.subscribeKey,uuid:this.token,heartbeatInterval:30,cipherKey:this.password}),this.pubnub.subscribe({channels:[this.channel],withPresence:!0,restore:!1});let e=this;this.pubnub.addListener({status:function(s){b.default.info("PUBNUB status:",s),"PNConnectedCategory"===s.category?e.sendConnect():"PNBadRequestCategory"===s.category&&e.sendDisconnectError(s.errorData.message)},message:function(s){if(s.publisher!==e.token){const[t,n,i]=s.message;t?i==e.db.timestamp?e.applyUpdate(u.base64_to_unit8(n)):i>e.db.timestamp?e.broadcast(!0,e.db.encode()):(e.db.timestamp=i,e.applyUpdate(u.base64_to_unit8(n),!0)):e.pubsubReceive(u.base64_to_unit8(n))}},presence:function(s){"leave"===s.action&&e.db.removePeer(s.uuid)}})}}broadcast(e,s){this.pubnub&&this.pubnub.publish({channel:this.channel,message:[e,u.uint8_to_base64(s),this.db.timestamp],storeInHistory:!1},(function(e,s){}))}}}))}();
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e=("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{}).parcelRequirea18f;e.register("aU86M",(function(t,n){var s,i,r,o;s=t.exports,i="Sync",r=()=>d,Object.defineProperty(s,i,{get:r,set:o,enumerable:!0,configurable:!0});var a=e("bQEo7"),c={nostr:null,mqtt:null,torrent:null};class d extends a.Sync{constructor(e,t,n,s,i,r=!1,o=!0){super(t,n,s,i,r,o),this.backend=e}destroy(){this.connection&&this.connection.leave(),super.destroy()}async connect(t){if(super.connect(t),c[this.backend])this.init(!0);else switch(this.backend){case"nostr":e("dIaeg").then((e=>{c.nostr=e.joinRoom,this.init(!0)})).catch((e=>{this.init(!1,e.message)}));break;case"mqtt":e("bKAIj").then((e=>{c.mqtt=e.joinRoom,this.init(!0)})).catch((e=>{this.init(!1,e.message)}));break;case"torrent":e("jV0Zk").then((e=>{c.torrent=e.joinRoom,this.init(!0)})).catch((e=>{this.init(!1,e.message)}))}}init(e,t){const n=this.uniqueID();if(e&&n){const e={appId:"liascript"};this.password&&(e.password=this.password);const t=JSON.parse('{"iceServers":[{"urls":"stun:stun.relay.metered.ca:80"},{"urls":"turn:standard.relay.metered.ca:80","username":"1d901429597d3b1332b481d2","credential":"9eGxvnGUtRfCt6/N"},{"urls":"turn:standard.relay.metered.ca:80?transport=tcp","username":"1d901429597d3b1332b481d2","credential":"9eGxvnGUtRfCt6/N"},{"urls":"turn:standard.relay.metered.ca:443","username":"1d901429597d3b1332b481d2","credential":"9eGxvnGUtRfCt6/N"},{"urls":"turns:standard.relay.metered.ca:443?transport=tcp","username":"1d901429597d3b1332b481d2","credential":"9eGxvnGUtRfCt6/N"}]}');t&&(e.rtcConfig=t),this.connection=c[this.backend](e,n),this.connection.onPeerJoin((e=>console.log(`${e} joined`))),this.connection.onPeerLeave((e=>console.log(`${e} left`)));const[s,i]=this.connection.makeAction("message");this.pub=s,this.sub=i;const r=this;this.sub(((e,t)=>{if(e)try{const[t,n,s]=e;if(t){if(null===n)return;s==r.db.timestamp?r.applyUpdate(a.base64_to_unit8(n)):s>r.db.timestamp?r.broadcast(!0,r.db.encode()):(r.db.timestamp=s,r.applyUpdate(a.base64_to_unit8(n),!0))}else r.pubsubReceive(a.base64_to_unit8(n))}catch(e){console.warn(r.backend,e.message)}})),this.sendConnect()}else{let e=this.backend+" unknown error";t&&(e="Could not load resource: "+t),this.sendDisconnectError(e)}}broadcast(e,t){if(!this.publish)return;const n=null==t?null:a.uint8_to_base64(t);this.pub([e,n,this.db.timestamp])}}})),e.register("dIaeg",(function(t,n){t.exports=import("./"+e("68DXD").resolve("hsbPz")).then((()=>e("5lNoZ")))})),e.register("bKAIj",(function(t,n){t.exports=import("./"+e("68DXD").resolve("57ZQF")).then((()=>e("7JPv4")))})),e.register("jV0Zk",(function(t,n){t.exports=import("./"+e("68DXD").resolve("aJ1LK")).then((()=>e("b1IkL")))}));
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
!function(){var e=("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{}).parcelRequirea18f;e.register("6NhiE",(function(t,n){var s,i,r,o;s=t.exports,i="Sync",r=function(){return d},Object.defineProperty(s,i,{get:r,set:o,enumerable:!0,configurable:!0});var a=e("9Xb5B"),c={nostr:null,mqtt:null,torrent:null};class d extends a.Sync{constructor(e,t,n,s,i,r=!1,o=!0){super(t,n,s,i,r,o),this.backend=e}destroy(){this.connection&&this.connection.leave(),super.destroy()}async connect(t){if(super.connect(t),c[this.backend])this.init(!0);else switch(this.backend){case"nostr":e("lWTed").then((e=>{c.nostr=e.joinRoom,this.init(!0)})).catch((e=>{this.init(!1,e.message)}));break;case"mqtt":e("8K9NW").then((e=>{c.mqtt=e.joinRoom,this.init(!0)})).catch((e=>{this.init(!1,e.message)}));break;case"torrent":e("2tf9W").then((e=>{c.torrent=e.joinRoom,this.init(!0)})).catch((e=>{this.init(!1,e.message)}))}}init(e,t){const n=this.uniqueID();if(e&&n){const e={appId:"liascript"};this.password&&(e.password=this.password);const t=JSON.parse('{"iceServers":[{"urls":"stun:stun.relay.metered.ca:80"},{"urls":"turn:standard.relay.metered.ca:80","username":"1d901429597d3b1332b481d2","credential":"9eGxvnGUtRfCt6/N"},{"urls":"turn:standard.relay.metered.ca:80?transport=tcp","username":"1d901429597d3b1332b481d2","credential":"9eGxvnGUtRfCt6/N"},{"urls":"turn:standard.relay.metered.ca:443","username":"1d901429597d3b1332b481d2","credential":"9eGxvnGUtRfCt6/N"},{"urls":"turns:standard.relay.metered.ca:443?transport=tcp","username":"1d901429597d3b1332b481d2","credential":"9eGxvnGUtRfCt6/N"}]}');t&&(e.rtcConfig=t),this.connection=c[this.backend](e,n),this.connection.onPeerJoin((e=>console.log(`${e} joined`))),this.connection.onPeerLeave((e=>console.log(`${e} left`)));const[s,i]=this.connection.makeAction("message");this.pub=s,this.sub=i;const r=this;this.sub(((e,t)=>{if(e)try{const[t,n,s]=e;if(t){if(null===n)return;s==r.db.timestamp?r.applyUpdate(a.base64_to_unit8(n)):s>r.db.timestamp?r.broadcast(!0,r.db.encode()):(r.db.timestamp=s,r.applyUpdate(a.base64_to_unit8(n),!0))}else r.pubsubReceive(a.base64_to_unit8(n))}catch(e){console.warn(r.backend,e.message)}})),this.sendConnect()}else{let e=this.backend+" unknown error";t&&(e="Could not load resource: "+t),this.sendDisconnectError(e)}}broadcast(e,t){if(!this.publish)return;const n=null==t?null:a.uint8_to_base64(t);this.pub([e,n,this.db.timestamp])}}})),e.register("lWTed",(function(t,n){t.exports=e("itSdq")(e("kXp5m").getBundleURL("6nGoM")+e("eX2dU").resolve("8oYtX")).then((()=>e("9ZhAU")))})),e.register("8K9NW",(function(t,n){t.exports=e("itSdq")(e("kXp5m").getBundleURL("6nGoM")+e("eX2dU").resolve("cWg6A")).then((()=>e("f5HAI")))})),e.register("2tf9W",(function(t,n){t.exports=e("itSdq")(e("kXp5m").getBundleURL("6nGoM")+e("eX2dU").resolve("hSnuQ")).then((()=>e("k0jqy")))}))}();
|