{
  "version": 3,
  "sources": ["ssg:https://ga.jspm.io/npm:@liveblocks/core@1.1.6/dist/index.mjs", "ssg:https://ga.jspm.io/npm:@liveblocks/client@1.1.6/dist/index.mjs", "ssg:https://ga.jspm.io/npm:use-sync-external-store@1.2.0/shim/index.js", "ssg:https://ga.jspm.io/npm:use-sync-external-store@1.2.0/shim/with-selector.js", "ssg:https://ga.jspm.io/npm:@liveblocks/react@1.1.6/dist/index.mjs"],
  "sourcesContent": ["var e=\"@liveblocks/core\";var t=\"1.1.6\";var n=\"esm\";var o=\"undefined\"!==typeof globalThis?globalThis:\"undefined\"!==typeof window?window:\"undefined\"!==typeof global?global:{};var s=\"https://liveblocks.io/docs/errors/cross-linked\";var i=\"https://liveblocks.io/docs/errors/dupes\";var r=\" \";function error(e){if(\"production\"!==process.env.NODE_ENV)throw new Error(e);console.error(e)}function detectDupes(n,a,c){const d=Symbol.for(n);const l=c?`${a||\"dev\"} (${c})`:a||\"dev\";if(o[d])if(o[d]===l);else{const e=[`Multiple copies of Liveblocks are being loaded in your project. This will cause issues! See ${i+r}`,\"\",\"Conflicts:\",`- ${n} ${o[d]} (already loaded)`,`- ${n} ${l} (trying to load this now)`].join(\"\\n\");error(e)}else o[d]=l;a&&t&&a!==t&&error([`Cross-linked versions of Liveblocks found, which will cause issues! See ${s+r}`,\"\",\"Conflicts:\",`- ${e} is at ${t}`,`- ${n} is at ${a}`,\"\",\"Always upgrade all Liveblocks packages to the same version number.\"].join(\"\\n\"))}function makeEventSource(){const e=new Set;const t=new Set;let n=null;function pause(){n=[]}function unpause(){if(null!==n){for(const e of n)notify(e);n=null}}function subscribe(e){t.add(e);return()=>t.delete(e)}function subscribeOnce(t){e.add(t);return()=>e.delete(t)}async function waitUntil(e){let t;return new Promise((n=>{t=subscribe((t=>{(void 0===e||e(t))&&n(t)}))})).finally((()=>t?.()))}function notifyOrBuffer(e){null!==n?n.push(e):notify(e)}function notify(n){e.forEach((e=>e(n)));e.clear();t.forEach((e=>e(n)))}function clear(){e.clear();t.clear()}function count(){return e.size+t.size}return{notify:notifyOrBuffer,subscribe:subscribe,subscribeOnce:subscribeOnce,clear:clear,count:count,waitUntil:waitUntil,pause:pause,unpause:unpause,observable:{subscribe:subscribe,subscribeOnce:subscribeOnce,waitUntil:waitUntil}}}var a=false;function activateBridge(e){a=e}function sendToPanel(e,t){if(\"production\"===process.env.NODE_ENV||\"undefined\"===typeof window)return;const n={...e,source:\"liveblocks-devtools-client\"};(t?.force||a)&&window.postMessage(n,\"*\")}var c=makeEventSource();\"production\"!==process.env.NODE_ENV&&\"undefined\"!==typeof window&&window.addEventListener(\"message\",(e=>{e.source===window&&\"liveblocks-devtools-panel\"===e.data?.source&&c.notify(e.data)}));var d=c.observable;var l=t||\"dev\";var u=false;function setupDevTools(e){if(\"production\"!==process.env.NODE_ENV&&\"undefined\"!==typeof window&&!u){u=true;d.subscribe((t=>{switch(t.msg){case\"connect\":activateBridge(true);for(const t of e())sendToPanel({msg:\"room::available\",roomId:t,clientVersion:l});break}}));sendToPanel({msg:\"wake-up-devtools\"},{force:true})}}var p=new Map;function stopSyncStream(e){const t=p.get(e)??[];p.delete(e);for(const e of t)e()}function startSyncStream(e){stopSyncStream(e.id);fullSync(e);p.set(e.id,[e.events.status.subscribe((()=>partialSyncConnection(e))),e.events.storageDidLoad.subscribeOnce((()=>partialSyncStorage(e))),e.events.storage.subscribe((()=>partialSyncStorage(e))),e.events.me.subscribe((()=>partialSyncMe(e))),e.events.others.subscribe((()=>partialSyncOthers(e)))])}function partialSyncConnection(e){sendToPanel({msg:\"room::sync::partial\",roomId:e.id,status:e.getStatus()})}function partialSyncStorage(e){const t=e.getStorageSnapshot();t&&sendToPanel({msg:\"room::sync::partial\",roomId:e.id,storage:t.toTreeNode(\"root\").payload})}function partialSyncMe(e){const t=e.__internal.getSelf_forDevTools();t&&sendToPanel({msg:\"room::sync::partial\",roomId:e.id,me:t})}function partialSyncOthers(e){const t=e.__internal.getOthers_forDevTools();t&&sendToPanel({msg:\"room::sync::partial\",roomId:e.id,others:t})}function fullSync(e){const t=e.getStorageSnapshot();const n=e.__internal.getSelf_forDevTools();const o=e.__internal.getOthers_forDevTools();sendToPanel({msg:\"room::sync::full\",roomId:e.id,status:e.getStatus(),storage:t?.toTreeNode(\"root\").payload??null,me:n,others:o})}var h=new Map;function stopRoomChannelListener(e){const t=h.get(e);h.delete(e);t&&t()}function linkDevTools(e,t){if(\"production\"!==process.env.NODE_ENV&&\"undefined\"!==typeof window){sendToPanel({msg:\"room::available\",roomId:e,clientVersion:l});stopRoomChannelListener(e);h.set(e,d.subscribe((n=>{switch(n.msg){case\"room::subscribe\":n.roomId===e&&startSyncStream(t);break;case\"room::unsubscribe\":n.roomId===e&&stopSyncStream(e);break}})))}}function unlinkDevTools(e){if(\"production\"!==process.env.NODE_ENV&&\"undefined\"!==typeof window){stopSyncStream(e);stopRoomChannelListener(e);sendToPanel({msg:\"room::unavailable\",roomId:e})}}var f=\"background:#0e0d12;border-radius:9999px;color:#fff;padding:3px 7px;font-family:sans-serif;font-weight:600;\";var _=\"font-weight:600\";function wrap(e){return\"undefined\"===typeof window||\"test\"===process.env.NODE_ENV?console[e]:(t,...n)=>console[e](\"%cLiveblocks\",f,t,...n)}var v=wrap(\"warn\");var m=wrap(\"error\");function wrapWithTitle(e){return\"undefined\"===typeof window||\"test\"===process.env.NODE_ENV?console[e]:(t,n,...o)=>console[e](`%cLiveblocks%c ${t}`,f,_,n,...o)}var y=wrapWithTitle(\"warn\");var g=wrapWithTitle(\"error\");var b=new Set;function deprecate(e,t=e){if(\"production\"!==process.env.NODE_ENV&&!b.has(t)){b.add(t);g(\"Deprecation warning\",e)}}function deprecateIf(e,t,n=t){\"production\"!==process.env.NODE_ENV&&e&&deprecate(t,n)}function throwUsageError(e){if(\"production\"!==process.env.NODE_ENV){const t=new Error(e);t.name=\"Usage error\";g(\"Usage error\",e);throw t}}function errorIf(e,t){\"production\"!==process.env.NODE_ENV&&e&&throwUsageError(t)}function assertNever(e,t){throw new Error(t)}function assert(e,t){if(\"production\"!==process.env.NODE_ENV&&!e){const e=new Error(t);e.name=\"Assertion failure\";throw e}}function nn(e,t=\"Expected value to be non-nullable\"){assert(null!==e&&void 0!==e,t);return e}function distance(e,t){if(e===t)return[0,0];const n=e.split(\".\");const o=t.split(\".\");const s=Math.min(n.length,o.length);let i=0;for(;i<s;i++)if(n[i]!==o[i])break;const r=n.length-i;const a=o.length-i;return[r,a]}function patterns(e,t){const n=e.split(\".\");if(t<1||t>n.length+1)throw new Error(\"Invalid number of levels\");const o=[];t>n.length&&o.push(\"*\");for(let e=n.length-t+1;e<n.length;e++){const t=n.slice(0,e);t.length>0&&o.push(t.join(\".\")+\".*\")}o.push(e);return o}var S=class{constructor(e){this.curr=e}get current(){return this.curr}allowPatching(e){const t=this;let n=true;const o={...this.curr,patch(e){if(!n)throw new Error(\"Can no longer patch stale context\");t.curr=Object.assign({},t.curr,e);for(const t of Object.entries(e)){const[e,n]=t;\"patch\"!==e&&(this[e]=n)}}};e(o);n=false}};var E=1;var w=class{get initialState(){const e=this.states.values()[Symbol.iterator]().next();if(e.done)throw new Error(\"No states defined yet\");return e.value}get currentState(){if(null===this.currentStateOrNull)throw 0===this.runningState?new Error(\"Not started yet\"):new Error(\"Already stopped\");return this.currentStateOrNull}start(){if(0!==this.runningState)throw new Error(\"State machine has already started\");this.runningState=1;this.currentStateOrNull=this.initialState;this.enter(null);return this}stop(){if(1!==this.runningState)throw new Error(\"Cannot stop a state machine that hasn't started yet\");this.exit(null);this.runningState=2;this.currentStateOrNull=null}constructor(e){this.id=E++;this.runningState=0;this.currentStateOrNull=null;this.states=new Set;this.enterFns=new Map;this.cleanupStack=[];this.knownEventTypes=new Set;this.allowedTransitions=new Map;this.currentContext=new S(e);this.eventHub={didReceiveEvent:makeEventSource(),willTransition:makeEventSource(),didIgnoreEvent:makeEventSource(),willExitState:makeEventSource(),didEnterState:makeEventSource()};this.events={didReceiveEvent:this.eventHub.didReceiveEvent.observable,willTransition:this.eventHub.willTransition.observable,didIgnoreEvent:this.eventHub.didIgnoreEvent.observable,willExitState:this.eventHub.willExitState.observable,didEnterState:this.eventHub.didEnterState.observable}}get context(){return this.currentContext.current}addState(e){if(0!==this.runningState)throw new Error(\"Already started\");this.states.add(e);return this}onEnter(e,t){if(0!==this.runningState)throw new Error(\"Already started\");if(this.enterFns.has(e))throw new Error(`enter/exit function for ${e} already exists`);this.enterFns.set(e,t);return this}onEnterAsync(e,t,n,o){return this.onEnter(e,(()=>{let e=false;void t(this.currentContext.current).then((t=>{e||this.transition({type:\"ASYNC_OK\",data:t},n)}),(t=>{e||this.transition({type:\"ASYNC_ERROR\",reason:t},o)}));return()=>{e=true}}))}getStatesMatching(e){const t=[];if(\"*\"===e)for(const e of this.states)t.push(e);else if(e.endsWith(\".*\")){const n=e.slice(0,-1);for(const e of this.states)e.startsWith(n)&&t.push(e)}else{const n=e;this.states.has(n)&&t.push(n)}if(0===t.length)throw new Error(`No states match ${JSON.stringify(e)}`);return t}addTransitions(e,t){if(0!==this.runningState)throw new Error(\"Already started\");for(const n of this.getStatesMatching(e)){let o=this.allowedTransitions.get(n);if(void 0===o){o=new Map;this.allowedTransitions.set(n,o)}for(const[s,i]of Object.entries(t)){if(o.has(s))throw new Error(`Trying to set transition \"${s}\" on \"${n}\" (via \"${e}\"), but a transition already exists there.`);const t=i;this.knownEventTypes.add(s);if(void 0!==t){const e=\"function\"===typeof t?t:()=>t;o.set(s,e)}}}return this}\n/**\n   * Like `.addTransition()`, but takes an (anonymous) transition whenever the\n   * timer fires.\n   *\n   * @param stateOrPattern The state name, or state group pattern name.\n   * @param after          Number of milliseconds after which to take the\n   *                       transition. If in the mean time, another transition\n   *                       is taken, the timer will get cancelled.\n   * @param target     The target state to go to.\n   */addTimedTransition(e,t,n){return this.onEnter(e,(()=>{const e=\"function\"===typeof t?t(this.currentContext.current):t;const o=setTimeout((()=>{this.transition({type:\"TIMER\"},n)}),e);return()=>{clearTimeout(o)}}))}getTargetFn(e){return this.allowedTransitions.get(this.currentState)?.get(e)}\n/**\n   * Exits the current state, and executes any necessary cleanup functions.\n   * Call this before changing the current state to the next state.\n   *\n   * @param levels Defines how many \"levels\" of nesting will be\n   * exited. For example, if you transition from `foo.bar.qux` to\n   * `foo.bar.baz`, then the level is 1. But if you transition from\n   * `foo.bar.qux` to `bla.bla`, then the level is 3.\n   * If `null`, it will exit all levels.\n   */exit(e){this.eventHub.willExitState.notify(this.currentState);this.currentContext.allowPatching((t=>{e=e??this.cleanupStack.length;for(let n=0;n<e;n++)this.cleanupStack.pop()?.(t)}))}enter(e){const t=patterns(this.currentState,e??this.currentState.split(\".\").length+1);this.currentContext.allowPatching((e=>{for(const n of t){const t=this.enterFns.get(n);const o=t?.(e);\"function\"===typeof o?this.cleanupStack.push(o):this.cleanupStack.push(null)}}));this.eventHub.didEnterState.notify(this.currentState)}send(e){if(!this.knownEventTypes.has(e.type))throw new Error(`Invalid event ${JSON.stringify(e.type)}`);if(2===this.runningState)return;const t=this.getTargetFn(e.type);if(void 0!==t)return this.transition(e,t);this.eventHub.didIgnoreEvent.notify(e)}transition(e,t){this.eventHub.didReceiveEvent.notify(e);const n=this.currentState;const o=\"function\"===typeof t?t:()=>t;const s=o(e,this.currentContext.current);let i;let r;if(null===s){this.eventHub.didIgnoreEvent.notify(e);return}if(\"string\"===typeof s)i=s;else{i=s.target;r=Array.isArray(s.effect)?s.effect:[s.effect]}if(!this.states.has(i))throw new Error(`Invalid next state name: ${JSON.stringify(i)}`);this.eventHub.willTransition.notify({from:n,to:i});const[a,c]=distance(this.currentState,i);a>0&&this.exit(a);this.currentStateOrNull=i;if(void 0!==r){const t=r;this.currentContext.allowPatching((n=>{for(const o of t)\"function\"===typeof o?o(n,e):n.patch(o)}))}c>0&&this.enter(c)}};function isPlainObject(e){return null!==e&&\"object\"===typeof e&&\"[object Object]\"===Object.prototype.toString.call(e)}function entries(e){return Object.entries(e)}function tryParseJson(e){try{return JSON.parse(e)}catch(e){return}}function deepClone(e){return JSON.parse(JSON.stringify(e))}function b64decode(e){try{const t=e.replace(/-/g,\"+\").replace(/_/g,\"/\");const n=decodeURIComponent(atob(t).split(\"\").map((function(e){return\"%\"+(\"00\"+e.charCodeAt(0).toString(16)).slice(-2)})).join(\"\"));return n}catch(t){return atob(e)}}function compact(e){return e.filter((e=>null!==e&&void 0!==e))}function compactObject(e){const t={...e};Object.keys(e).forEach((e=>{const n=e;void 0===t[n]&&delete t[n]}));return t}async function withTimeout(e,t,n=\"Timed out\"){let o;const s=new Promise(((e,s)=>{o=setTimeout((()=>{s(new Error(n))}),t)}));return Promise.race([e,s]).finally((()=>clearTimeout(o)))}function newToLegacyStatus(e){switch(e){case\"connecting\":return\"connecting\";case\"connected\":return\"open\";case\"reconnecting\":return\"unavailable\";case\"disconnected\":return\"failed\";case\"initial\":return\"closed\";default:return\"closed\"}}function toNewConnectionStatus(e){const t=e.currentState;switch(t){case\"@ok.connected\":case\"@ok.awaiting-pong\":return\"connected\";case\"@idle.initial\":return\"initial\";case\"@auth.busy\":case\"@auth.backoff\":case\"@connecting.busy\":case\"@connecting.backoff\":return e.context.successCount>0?\"reconnecting\":\"connecting\";case\"@idle.failed\":return\"disconnected\";default:return assertNever(t,\"Unknown state\")}}var O=[250,500,1e3,2e3,4e3,8e3,1e4];var k=O[0]-1;var T=[2e3,3e4,6e4,3e5];var I=3e4;var L=2e3;var C=1e4;var N=1e4;var P=class extends Error{constructor(e){super(e)}};var A=class extends Error{constructor(e,t){super(e);this.code=t}};function nextBackoffDelay(e,t=O){return t.find((t=>t>e))??t[t.length-1]}function increaseBackoffDelay(e){e.patch({backoffDelay:nextBackoffDelay(e.backoffDelay)})}function increaseBackoffDelayAggressively(e){e.patch({backoffDelay:nextBackoffDelay(e.backoffDelay,T)})}function resetSuccessCount(e){e.patch({successCount:0})}function log(e,t){const n=2===e?m:1===e?v:()=>{};return()=>{n(t)}}function logPrematureErrorOrCloseEvent(e){const t=\"Connection to Liveblocks websocket server\";return n=>{e instanceof Error?v(`${t} could not be established. ${String(e)}`):v(isCloseEvent(e)?`${t} closed prematurely (code: ${e.code}). Retrying in ${n.backoffDelay}ms.`:`${t} could not be established.`)}}function logCloseEvent(e){return t=>{v(`Connection to Liveblocks websocket server closed (code: ${e.code}). Retrying in ${t.backoffDelay}ms.`)}}var D=log(1,\"Connection to WebSocket closed permanently. Won't retry.\");function isCloseEvent(e){return!(e instanceof Error)&&\"close\"===e.type}function isCustomCloseEvent(e){return isCloseEvent(e)&&e.code>=4e3&&e.code<4100}function enableTracing(e){const t=(new Date).getTime();function log2(...n){v(`${(((new Date).getTime()-t)/1e3).toFixed(2)} [FSM #${e.id}]`,...n)}const n=[e.events.didReceiveEvent.subscribe((e=>log2(`Event ${e.type}`))),e.events.willTransition.subscribe((({from:e,to:t})=>log2(\"Transitioning\",e,\"\u2192\",t))),e.events.didIgnoreEvent.subscribe((e=>log2(\"Ignored event\",e.type,e,\"(current state won't handle it)\")))];return()=>{for(const e of n)e()}}function defineConnectivityEvents(e){const t=makeEventSource();const n=makeEventSource();const o=makeEventSource();let s=null;const i=e.events.didEnterState.subscribe((()=>{const i=toNewConnectionStatus(e);i!==s&&t.notify(i);\"connected\"===s&&\"connected\"!==i?o.notify():\"connected\"!==s&&\"connected\"===i&&n.notify();s=i}));return{statusDidChange:t.observable,didConnect:n.observable,didDisconnect:o.observable,unsubscribe:i}}var assign=e=>t=>t.patch(e);function createConnectionStateMachine(e,t){const n=makeEventSource();n.pause();const o=makeEventSource();const s={successCount:0,token:null,socket:null,backoffDelay:k};const i=new w(s).addState(\"@idle.initial\").addState(\"@idle.failed\").addState(\"@auth.busy\").addState(\"@auth.backoff\").addState(\"@connecting.busy\").addState(\"@connecting.backoff\").addState(\"@ok.connected\").addState(\"@ok.awaiting-pong\");i.addTransitions(\"*\",{RECONNECT:{target:\"@auth.backoff\",effect:[increaseBackoffDelay,resetSuccessCount]},DISCONNECT:\"@idle.initial\"});i.onEnter(\"@idle.*\",resetSuccessCount).addTransitions(\"@idle.*\",{CONNECT:(e,t)=>null!==t.token?\"@connecting.busy\":\"@auth.busy\"});i.addTransitions(\"@auth.backoff\",{NAVIGATOR_ONLINE:{target:\"@auth.busy\",effect:assign({backoffDelay:k})}}).addTimedTransition(\"@auth.backoff\",(e=>e.backoffDelay),\"@auth.busy\").onEnterAsync(\"@auth.busy\",(()=>withTimeout(e.authenticate(),C)),(e=>({target:\"@connecting.busy\",effect:assign({token:e.data,backoffDelay:k})})),(e=>e.reason instanceof P?{target:\"@idle.failed\",effect:log(2,e.reason.message)}:{target:\"@auth.backoff\",effect:[increaseBackoffDelay,log(2,`Authentication failed: ${e.reason instanceof Error?e.reason.message:String(e.reason)}`)]}));const onSocketError=e=>i.send({type:\"EXPLICIT_SOCKET_ERROR\",event:e});const onSocketClose=e=>i.send({type:\"EXPLICIT_SOCKET_CLOSE\",event:e});const onSocketMessage=e=>\"pong\"===e.data?i.send({type:\"PONG\"}):n.notify(e);function teardownSocket(e){if(e){e.removeEventListener(\"error\",onSocketError);e.removeEventListener(\"close\",onSocketClose);e.removeEventListener(\"message\",onSocketMessage);e.close()}}i.addTransitions(\"@connecting.backoff\",{NAVIGATOR_ONLINE:{target:\"@connecting.busy\",effect:assign({backoffDelay:k})}}).addTimedTransition(\"@connecting.backoff\",(e=>e.backoffDelay),\"@connecting.busy\").onEnterAsync(\"@connecting.busy\",(async t=>{let n=null;const o=new Promise(((o,s)=>{if(null===t.token)throw new Error(\"No auth token\");const i=e.createSocket(t.token);function reject(e){n=e;i.removeEventListener(\"message\",onSocketMessage);s(e)}i.addEventListener(\"message\",onSocketMessage);i.addEventListener(\"error\",reject);i.addEventListener(\"close\",reject);i.addEventListener(\"open\",(()=>{i.addEventListener(\"error\",onSocketError);i.addEventListener(\"close\",onSocketClose);const unsub=()=>{i.removeEventListener(\"error\",reject);i.removeEventListener(\"close\",reject)};o([i,unsub])}))}));return withTimeout(o,N).then((([e,t])=>{t();if(n)throw n;return e}))}),(e=>({target:\"@ok.connected\",effect:assign({socket:e.data,backoffDelay:k})})),(e=>{const t=e.reason;return t instanceof P?{target:\"@idle.failed\",effect:log(2,t.message)}:isCloseEvent(t)&&4999===t.code?{target:\"@idle.failed\",effect:log(2,t.reason)}:isCustomCloseEvent(t)&&4001!==t.code?{target:\"@connecting.backoff\",effect:[increaseBackoffDelayAggressively,logPrematureErrorOrCloseEvent(t)]}:{target:\"@auth.backoff\",effect:[increaseBackoffDelay,logPrematureErrorOrCloseEvent(t)]}}));const r={target:\"@ok.awaiting-pong\",effect:e=>{e.socket?.send(\"ping\")}};i.addTimedTransition(\"@ok.connected\",I,r).addTransitions(\"@ok.connected\",{NAVIGATOR_OFFLINE:r,WINDOW_GOT_FOCUS:r});i.onEnter(\"@ok.*\",(e=>{e.patch({successCount:e.successCount+1});const t=setTimeout(n.unpause,0);return e=>{teardownSocket(e.socket);e.patch({socket:null});clearTimeout(t);n.pause()}})).addTransitions(\"@ok.awaiting-pong\",{PONG:\"@ok.connected\"}).addTimedTransition(\"@ok.awaiting-pong\",L,{target:\"@connecting.busy\",effect:log(1,\"Received no pong from server, assume implicit connection loss.\")}).addTransitions(\"@ok.*\",{EXPLICIT_SOCKET_ERROR:(e,t)=>1===t.socket?.readyState?null:{target:\"@connecting.backoff\",effect:increaseBackoffDelay},EXPLICIT_SOCKET_CLOSE:e=>4999===e.event.code?{target:\"@idle.failed\",effect:D}:4001===e.event.code?{target:\"@auth.backoff\",effect:[increaseBackoffDelay,logCloseEvent(e.event)]}:isCustomCloseEvent(e.event)?{target:\"@connecting.backoff\",effect:[increaseBackoffDelayAggressively,logCloseEvent(e.event),()=>{const t=new A(e.event.reason,e.event.code);o.notify(t)}]}:{target:\"@connecting.backoff\",effect:[increaseBackoffDelay,logCloseEvent(e.event)]}});if(\"undefined\"!==typeof document){const e=\"undefined\"!==typeof document?document:void 0;const t=\"undefined\"!==typeof window?window:void 0;const n=t??e;i.onEnter(\"*\",(o=>{function onNetworkOffline(){i.send({type:\"NAVIGATOR_OFFLINE\"})}function onNetworkBackOnline(){i.send({type:\"NAVIGATOR_ONLINE\"})}function onVisibilityChange(){\"visible\"===e?.visibilityState&&i.send({type:\"WINDOW_GOT_FOCUS\"})}t?.addEventListener(\"online\",onNetworkBackOnline);t?.addEventListener(\"offline\",onNetworkOffline);n?.addEventListener(\"visibilitychange\",onVisibilityChange);return()=>{n?.removeEventListener(\"visibilitychange\",onVisibilityChange);t?.removeEventListener(\"online\",onNetworkBackOnline);t?.removeEventListener(\"offline\",onNetworkOffline);teardownSocket(o.socket)}}))}const a=[];const{statusDidChange:c,didConnect:d,didDisconnect:l,unsubscribe:u}=defineConnectivityEvents(i);a.push(u);t&&a.push(enableTracing(i));i.start();return{machine:i,cleanups:a,events:{statusDidChange:c,didConnect:d,didDisconnect:l,onMessage:n.observable,onLiveblocksError:o.observable}}}var U=class{constructor(e,t=false){const{machine:n,events:o,cleanups:s}=createConnectionStateMachine(e,t);this.machine=n;this.events=o;this.cleanups=s}getLegacyStatus(){return newToLegacyStatus(this.getStatus())}getStatus(){try{return toNewConnectionStatus(this.machine)}catch{return\"initial\"}}get token(){return this.machine.context.token}connect(){this.machine.send({type:\"CONNECT\"})}reconnect(){this.machine.send({type:\"RECONNECT\"})}disconnect(){this.machine.send({type:\"DISCONNECT\"})}destroy(){this.machine.stop();let e;while(e=this.cleanups.pop())e()}send(e){const t=this.machine.context?.socket;null===t?v(\"Cannot send: not connected yet\",e):1!==t.readyState?v(\"Cannot send: WebSocket no longer open\",e):t.send(e)}_privateSendMachineEvent(e){this.machine.send(e)}};var R=32;var x=126;var j=x-R+1;var M=nthDigit(0);var K=nthDigit(1);var $=M+nthDigit(-1);function nthDigit(e){const t=R+(e<0?j+e:e);if(t<R||t>x)throw new Error(`Invalid n value: ${e}`);return String.fromCharCode(t)}function makePosition(e,t){return void 0!==e&&void 0!==t?between(e,t):void 0!==e?after(e):void 0!==t?before(t):K}function before(e){const t=e.length-1;for(let n=0;n<=t;n++){const o=e.charCodeAt(n);if(!(o<=R))return n===t?o===R+1?e.substring(0,n)+$:e.substring(0,n)+String.fromCharCode(o-1):e.substring(0,n+1)}return K}function after(e){for(let t=0;t<=e.length-1;t++){const n=e.charCodeAt(t);if(!(n>=x))return e.substring(0,t)+String.fromCharCode(n+1)}return e+K}function between(e,t){if(e<t)return _between(e,t);if(e>t)return _between(t,e);throw new Error(\"Cannot compute value between two equal positions\")}function _between(e,t){let n=0;const o=e.length;const s=t.length;while(true){const i=n<o?e.charCodeAt(n):R;const r=n<s?t.charCodeAt(n):x;if(i!==r){if(r-i===1){const t=e.substring(0,n+1);const o=e.substring(n+1);const s=\"\";return t+_between(o,s)}return takeN(e,n)+String.fromCharCode(r+i>>1)}n++}}function takeN(e,t){return t<e.length?e.substring(0,t):e+M.repeat(t-e.length)}var J=R+1;function isPos(e){if(\"\"===e)return false;const t=e.length-1;const n=e.charCodeAt(t);if(n<J||n>x)return false;for(let n=0;n<t;n++){const t=e.charCodeAt(n);if(t<R||t>x)return false}return true}function convertToPos(e){const t=[];for(let n=0;n<e.length;n++){const o=e.charCodeAt(n);t.push(o<R?R:o>x?x:o)}while(t.length>0&&t[t.length-1]===R)t.length--;return t.length>0?String.fromCharCode(...t):K}function asPos(e){return isPos(e)?e:convertToPos(e)}var H=(e=>{e[e.INIT=0]=\"INIT\";e[e.SET_PARENT_KEY=1]=\"SET_PARENT_KEY\";e[e.CREATE_LIST=2]=\"CREATE_LIST\";e[e.UPDATE_OBJECT=3]=\"UPDATE_OBJECT\";e[e.CREATE_OBJECT=4]=\"CREATE_OBJECT\";e[e.DELETE_CRDT=5]=\"DELETE_CRDT\";e[e.DELETE_OBJECT_KEY=6]=\"DELETE_OBJECT_KEY\";e[e.CREATE_MAP=7]=\"CREATE_MAP\";e[e.CREATE_REGISTER=8]=\"CREATE_REGISTER\";return e})(H||{});function isAckOp(e){return 5===e.type&&\"ACK\"===e.id}function crdtAsLiveNode(e){return e}function HasParent(e,t,n=asPos(t)){return Object.freeze({type:\"HasParent\",node:e,key:t,pos:n})}var z=Object.freeze({type:\"NoParent\"});function Orphaned(e,t=asPos(e)){return Object.freeze({type:\"Orphaned\",oldKey:e,oldPos:t})}var B=class{constructor(){this._parent=z}_getParentKeyOrThrow(){switch(this.parent.type){case\"HasParent\":return this.parent.key;case\"NoParent\":throw new Error(\"Parent key is missing\");case\"Orphaned\":return this.parent.oldKey;default:return assertNever(this.parent,\"Unknown state\")}}get _parentPos(){switch(this.parent.type){case\"HasParent\":return this.parent.pos;case\"NoParent\":throw new Error(\"Parent key is missing\");case\"Orphaned\":return this.parent.oldPos;default:return assertNever(this.parent,\"Unknown state\")}}get _pool(){return this.__pool}get roomId(){return this.__pool?this.__pool.roomId:null}get _id(){return this.__id}get parent(){return this._parent}get _parentKey(){switch(this.parent.type){case\"HasParent\":return this.parent.key;case\"NoParent\":return null;case\"Orphaned\":return this.parent.oldKey;default:return assertNever(this.parent,\"Unknown state\")}}_apply(e,t){switch(e.type){case 5:return\"HasParent\"===this.parent.type?this.parent.node._detachChild(crdtAsLiveNode(this)):{modified:false}}return{modified:false}}_setParentLink(e,t){switch(this.parent.type){case\"HasParent\":if(this.parent.node!==e)throw new Error(\"Cannot set parent: node already has a parent\");this._parent=HasParent(e,t);return;case\"Orphaned\":case\"NoParent\":this._parent=HasParent(e,t);return;default:return assertNever(this.parent,\"Unknown state\")}}_attach(e,t){if(this.__id||this.__pool)throw new Error(\"Cannot attach node: already attached\");t.addNode(e,crdtAsLiveNode(this));this.__id=e;this.__pool=t}_detach(){this.__pool&&this.__id&&this.__pool.deleteNode(this.__id);switch(this.parent.type){case\"HasParent\":this._parent=Orphaned(this.parent.key,this.parent.pos);break;case\"NoParent\":this._parent=z;break;case\"Orphaned\":break;default:assertNever(this.parent,\"Unknown state\")}this.__pool=void 0}invalidate(){if(void 0!==this._cachedImmutable||void 0!==this._cachedTreeNode){this._cachedImmutable=void 0;this._cachedTreeNode=void 0;\"HasParent\"===this.parent.type&&this.parent.node.invalidate()}}toTreeNode(e){if(void 0===this._cachedTreeNode||this._cachedTreeNodeKey!==e){this._cachedTreeNodeKey=e;this._cachedTreeNode=this._toTreeNode(e)}return this._cachedTreeNode}toImmutable(){void 0===this._cachedImmutable&&(this._cachedImmutable=this._toImmutable());return this._cachedImmutable}};var F=(e=>{e[e.OBJECT=0]=\"OBJECT\";e[e.LIST=1]=\"LIST\";e[e.MAP=2]=\"MAP\";e[e.REGISTER=3]=\"REGISTER\";return e})(F||{});function isRootCrdt(e){return 0===e.type&&!isChildCrdt(e)}function isChildCrdt(e){return void 0!==e.parentId&&void 0!==e.parentKey}function nanoid(e=7){const t=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789,./;[]~!@#$%&*()_+=-\";const n=t.length;return Array.from({length:e},(()=>t.charAt(Math.floor(Math.random()*n)))).join(\"\")}var V=class _LiveRegister extends B{constructor(e){super();this._data=e}get data(){return this._data}static _deserialize([e,t],n,o){const s=new _LiveRegister(t.data);s._attach(e,o);return s}_toOps(e,t,n){if(void 0===this._id)throw new Error(\"Cannot serialize register if parentId or parentKey is undefined\");return[{type:8,opId:n?.generateOpId(),id:this._id,parentId:e,parentKey:t,data:this.data}]}_serialize(){if(\"HasParent\"!==this.parent.type)throw new Error(\"Cannot serialize LiveRegister if parent is missing\");return{type:3,parentId:nn(this.parent.node._id,\"Parent node expected to have ID\"),parentKey:this.parent.key,data:this.data}}_attachChild(e){throw new Error(\"Method not implemented.\")}_detachChild(e){throw new Error(\"Method not implemented.\")}_apply(e,t){return super._apply(e,t)}_toTreeNode(e){return{type:\"Json\",id:this._id??nanoid(),key:e,payload:this._data}}_toImmutable(){return this._data}};function compareNodePosition(e,t){const n=e._parentPos;const o=t._parentPos;return n===o?0:n<o?-1:1}var W=class _LiveList extends B{constructor(e=[]){super();this._items=[];this._implicitlyDeletedItems=new WeakSet;this._unacknowledgedSets=new Map;let t;for(const n of e){const e=makePosition(t);const o=lsonToLiveNode(n);o._setParentLink(this,e);this._items.push(o);t=e}}static _deserialize([e],t,n){const o=new _LiveList;o._attach(e,n);const s=t.get(e);if(void 0===s)return o;for(const[e,i]of s){const s=deserialize([e,i],t,n);s._setParentLink(o,i.parentKey);o._insertAndSort(s)}return o}_toOps(e,t,n){if(void 0===this._id)throw new Error(\"Cannot serialize item is not attached\");const o=[];const s={id:this._id,opId:n?.generateOpId(),type:2,parentId:e,parentKey:t};o.push(s);for(const e of this._items)o.push(...e._toOps(this._id,e._getParentKeyOrThrow(),n));return o}_insertAndSort(e){this._items.push(e);this._sortItems()}_sortItems(){this._items.sort(compareNodePosition);this.invalidate()}_indexOfPosition(e){return this._items.findIndex((t=>t._getParentKeyOrThrow()===e))}_attach(e,t){super._attach(e,t);for(const e of this._items)e._attach(t.generateId(),t)}_detach(){super._detach();for(const e of this._items)e._detach()}_applySetRemote(e){if(void 0===this._pool)throw new Error(\"Can't attach child if managed pool is not present\");const{id:t,parentKey:n}=e;const o=creationOpToLiveNode(e);o._attach(t,this._pool);o._setParentLink(this,n);const s=e.deletedId;const i=this._indexOfPosition(n);if(-1!==i){const t=this._items[i];if(t._id===s){t._detach();this._items[i]=o;return{modified:makeUpdate(this,[setDelta(i,o)]),reverse:[]}}{this._implicitlyDeletedItems.add(t);this._items[i]=o;const n=[setDelta(i,o)];const s=this._detachItemAssociatedToSetOperation(e.deletedId);s&&n.push(s);return{modified:makeUpdate(this,n),reverse:[]}}}{const t=[];const s=this._detachItemAssociatedToSetOperation(e.deletedId);s&&t.push(s);this._insertAndSort(o);t.push(insertDelta(this._indexOfPosition(n),o));return{reverse:[],modified:makeUpdate(this,t)}}}_applySetAck(e){if(void 0===this._pool)throw new Error(\"Can't attach child if managed pool is not present\");const t=[];const n=this._detachItemAssociatedToSetOperation(e.deletedId);n&&t.push(n);const o=this._unacknowledgedSets.get(e.parentKey);if(void 0!==o){if(o!==e.opId)return 0===t.length?{modified:false}:{modified:makeUpdate(this,t),reverse:[]};this._unacknowledgedSets.delete(e.parentKey)}const s=this._indexOfPosition(e.parentKey);const i=this._items.find((t=>t._id===e.id));if(void 0!==i){if(i._parentKey===e.parentKey)return{modified:t.length>0&&makeUpdate(this,t),reverse:[]};if(-1!==s){this._implicitlyDeletedItems.add(this._items[s]);this._items.splice(s,1);t.push(deleteDelta(s))}const n=this._items.indexOf(i);i._setParentLink(this,e.parentKey);this._sortItems();const o=this._items.indexOf(i);o!==n&&t.push(moveDelta(n,o,i));return{modified:t.length>0&&makeUpdate(this,t),reverse:[]}}{const n=this._pool.getNode(e.id);if(n&&this._implicitlyDeletedItems.has(n)){n._setParentLink(this,e.parentKey);this._implicitlyDeletedItems.delete(n);this._insertAndSort(n);const o=this._items.indexOf(n);return{modified:makeUpdate(this,[-1===s?insertDelta(o,n):setDelta(o,n),...t]),reverse:[]}}{-1!==s&&this._items.splice(s,1);const{newItem:n,newIndex:o}=this._createAttachItemAndSort(e,e.parentKey);return{modified:makeUpdate(this,[-1===s?insertDelta(o,n):setDelta(o,n),...t]),reverse:[]}}}}_detachItemAssociatedToSetOperation(e){if(void 0===e||void 0===this._pool)return null;const t=this._pool.getNode(e);if(void 0===t)return null;const n=this._detachChild(t);return false===n.modified?null:n.modified.updates[0]}_applyRemoteInsert(e){if(void 0===this._pool)throw new Error(\"Can't attach child if managed pool is not present\");const t=asPos(e.parentKey);const n=this._indexOfPosition(t);-1!==n&&this._shiftItemPosition(n,t);const{newItem:o,newIndex:s}=this._createAttachItemAndSort(e,t);return{modified:makeUpdate(this,[insertDelta(s,o)]),reverse:[]}}_applyInsertAck(e){const t=this._items.find((t=>t._id===e.id));const n=asPos(e.parentKey);const o=this._indexOfPosition(n);if(t){if(t._parentKey===n)return{modified:false};{const e=this._items.indexOf(t);-1!==o&&this._shiftItemPosition(o,n);t._setParentLink(this,n);this._sortItems();const s=this._indexOfPosition(n);return s===e?{modified:false}:{modified:makeUpdate(this,[moveDelta(e,s,t)]),reverse:[]}}}{const t=nn(this._pool).getNode(e.id);if(t&&this._implicitlyDeletedItems.has(t)){t._setParentLink(this,n);this._implicitlyDeletedItems.delete(t);this._insertAndSort(t);const e=this._indexOfPosition(n);return{modified:makeUpdate(this,[insertDelta(e,t)]),reverse:[]}}{-1!==o&&this._shiftItemPosition(o,n);const{newItem:t,newIndex:s}=this._createAttachItemAndSort(e,n);return{modified:makeUpdate(this,[insertDelta(s,t)]),reverse:[]}}}}_applyInsertUndoRedo(e){const{id:t,parentKey:n}=e;const o=creationOpToLiveNode(e);if(void 0!==this._pool?.getNode(t))return{modified:false};o._attach(t,nn(this._pool));o._setParentLink(this,n);const s=this._indexOfPosition(n);let i=n;if(-1!==s){const e=this._items[s]?._parentPos;const t=this._items[s+1]?._parentPos;i=makePosition(e,t);o._setParentLink(this,i)}this._insertAndSort(o);const r=this._indexOfPosition(i);return{modified:makeUpdate(this,[insertDelta(r,o)]),reverse:[{type:5,id:t}]}}_applySetUndoRedo(e){const{id:t,parentKey:n}=e;const o=creationOpToLiveNode(e);if(void 0!==this._pool?.getNode(t))return{modified:false};this._unacknowledgedSets.set(n,nn(e.opId));const s=this._indexOfPosition(n);o._attach(t,nn(this._pool));o._setParentLink(this,n);const i=n;if(-1!==s){const t=this._items[s];t._detach();this._items[s]=o;const i=HACK_addIntentAndDeletedIdToOperation(t._toOps(nn(this._id),n,this._pool),e.id);const r=[setDelta(s,o)];const a=this._detachItemAssociatedToSetOperation(e.deletedId);a&&r.push(a);return{modified:makeUpdate(this,r),reverse:i}}{this._insertAndSort(o);this._detachItemAssociatedToSetOperation(e.deletedId);const n=this._indexOfPosition(i);return{reverse:[{type:5,id:t}],modified:makeUpdate(this,[insertDelta(n,o)])}}}_attachChild(e,t){if(void 0===this._pool)throw new Error(\"Can't attach child if managed pool is not present\");let n;n=\"set\"===e.intent?1===t?this._applySetRemote(e):2===t?this._applySetAck(e):this._applySetUndoRedo(e):1===t?this._applyRemoteInsert(e):2===t?this._applyInsertAck(e):this._applyInsertUndoRedo(e);false!==n.modified&&this.invalidate();return n}_detachChild(e){if(e){const t=nn(e._parentKey);const n=e._toOps(nn(this._id),t,this._pool);const o=this._items.indexOf(e);if(-1===o)return{modified:false};this._items.splice(o,1);this.invalidate();e._detach();return{modified:makeUpdate(this,[deleteDelta(o)]),reverse:n}}return{modified:false}}_applySetChildKeyRemote(e,t){if(this._implicitlyDeletedItems.has(t)){this._implicitlyDeletedItems.delete(t);t._setParentLink(this,e);this._insertAndSort(t);const n=this._items.indexOf(t);return{modified:makeUpdate(this,[insertDelta(n,t)]),reverse:[]}}const n=t._parentKey;if(e===n)return{modified:false};const o=this._indexOfPosition(e);if(-1===o){const n=this._items.indexOf(t);t._setParentLink(this,e);this._sortItems();const o=this._items.indexOf(t);return o===n?{modified:false}:{modified:makeUpdate(this,[moveDelta(n,o,t)]),reverse:[]}}{this._items[o]._setParentLink(this,makePosition(e,this._items[o+1]?._parentPos));const n=this._items.indexOf(t);t._setParentLink(this,e);this._sortItems();const s=this._items.indexOf(t);return s===n?{modified:false}:{modified:makeUpdate(this,[moveDelta(n,s,t)]),reverse:[]}}}_applySetChildKeyAck(e,t){const n=nn(t._parentKey);if(this._implicitlyDeletedItems.has(t)){const n=this._indexOfPosition(e);this._implicitlyDeletedItems.delete(t);-1!==n&&this._items[n]._setParentLink(this,makePosition(e,this._items[n+1]?._parentPos));t._setParentLink(this,e);this._insertAndSort(t);return{modified:false}}{if(e===n)return{modified:false};const o=this._items.indexOf(t);const s=this._indexOfPosition(e);-1!==s&&this._items[s]._setParentLink(this,makePosition(e,this._items[s+1]?._parentPos));t._setParentLink(this,e);this._sortItems();const i=this._items.indexOf(t);return o===i?{modified:false}:{modified:makeUpdate(this,[moveDelta(o,i,t)]),reverse:[]}}}_applySetChildKeyUndoRedo(e,t){const n=nn(t._parentKey);const o=this._items.indexOf(t);const s=this._indexOfPosition(e);-1!==s&&this._items[s]._setParentLink(this,makePosition(e,this._items[s+1]?._parentPos));t._setParentLink(this,e);this._sortItems();const i=this._items.indexOf(t);return o===i?{modified:false}:{modified:makeUpdate(this,[moveDelta(o,i,t)]),reverse:[{type:1,id:nn(t._id),parentKey:n}]}}_setChildKey(e,t,n){return 1===n?this._applySetChildKeyRemote(e,t):2===n?this._applySetChildKeyAck(e,t):this._applySetChildKeyUndoRedo(e,t)}_apply(e,t){return super._apply(e,t)}_serialize(){if(\"HasParent\"!==this.parent.type)throw new Error(\"Cannot serialize LiveList if parent is missing\");return{type:1,parentId:nn(this.parent.node._id,\"Parent node expected to have ID\"),parentKey:this.parent.key}}get length(){return this._items.length}\n/**\n   * Adds one element to the end of the LiveList.\n   * @param element The element to add to the end of the LiveList.\n   */push(e){this._pool?.assertStorageIsWritable();return this.insert(e,this.length)}\n/**\n   * Inserts one element at a specified index.\n   * @param element The element to insert.\n   * @param index The index at which you want to insert the element.\n   */insert(e,t){this._pool?.assertStorageIsWritable();if(t<0||t>this._items.length)throw new Error(`Cannot insert list item at index \"\u001D${t}\". index should be between 0 and ${this._items.length}`);const n=this._items[t-1]?this._items[t-1]._parentPos:void 0;const o=this._items[t]?this._items[t]._parentPos:void 0;const s=makePosition(n,o);const i=lsonToLiveNode(e);i._setParentLink(this,s);this._insertAndSort(i);if(this._pool&&this._id){const e=this._pool.generateId();i._attach(e,this._pool);this._pool.dispatch(i._toOps(this._id,s,this._pool),[{type:5,id:e}],new Map([[this._id,makeUpdate(this,[insertDelta(t,i)])]]))}}\n/**\n   * Move one element from one index to another.\n   * @param index The index of the element to move\n   * @param targetIndex The index where the element should be after moving.\n   */move(e,t){this._pool?.assertStorageIsWritable();if(t<0)throw new Error(\"targetIndex cannot be less than 0\");if(t>=this._items.length)throw new Error(\"targetIndex cannot be greater or equal than the list length\");if(e<0)throw new Error(\"index cannot be less than 0\");if(e>=this._items.length)throw new Error(\"index cannot be greater or equal than the list length\");let n=null;let o=null;if(e<t){o=t===this._items.length-1?void 0:this._items[t+1]._parentPos;n=this._items[t]._parentPos}else{o=this._items[t]._parentPos;n=0===t?void 0:this._items[t-1]._parentPos}const s=makePosition(n,o);const i=this._items[e];const r=i._getParentKeyOrThrow();i._setParentLink(this,s);this._sortItems();if(this._pool&&this._id){const n=new Map([[this._id,makeUpdate(this,[moveDelta(e,t,i)])]]);this._pool.dispatch([{type:1,id:nn(i._id),opId:this._pool.generateOpId(),parentKey:s}],[{type:1,id:nn(i._id),parentKey:r}],n)}}\n/**\n   * Deletes an element at the specified index\n   * @param index The index of the element to delete\n   */delete(e){this._pool?.assertStorageIsWritable();if(e<0||e>=this._items.length)throw new Error(`Cannot delete list item at index \"\u001D${e}\". index should be between 0 and ${this._items.length-1}`);const t=this._items[e];t._detach();this._items.splice(e,1);this.invalidate();if(this._pool){const n=t._id;if(n){const o=new Map;o.set(nn(this._id),makeUpdate(this,[deleteDelta(e)]));this._pool.dispatch([{id:n,opId:this._pool.generateOpId(),type:5}],t._toOps(nn(this._id),t._getParentKeyOrThrow()),o)}}}clear(){this._pool?.assertStorageIsWritable();if(this._pool){const e=[];const t=[];const n=[];for(const o of this._items){o._detach();const s=o._id;if(s){e.push({type:5,id:s,opId:this._pool.generateOpId()});t.push(...o._toOps(nn(this._id),o._getParentKeyOrThrow()));n.push(deleteDelta(0))}}this._items=[];this.invalidate();const o=new Map;o.set(nn(this._id),makeUpdate(this,n));this._pool.dispatch(e,t,o)}else{for(const e of this._items)e._detach();this._items=[];this.invalidate()}}set(e,t){this._pool?.assertStorageIsWritable();if(e<0||e>=this._items.length)throw new Error(`Cannot set list item at index \"\u001D${e}\". index should be between 0 and ${this._items.length-1}`);const n=this._items[e];const o=n._getParentKeyOrThrow();const s=n._id;n._detach();const i=lsonToLiveNode(t);i._setParentLink(this,o);this._items[e]=i;this.invalidate();if(this._pool&&this._id){const t=this._pool.generateId();i._attach(t,this._pool);const r=new Map;r.set(this._id,makeUpdate(this,[setDelta(e,i)]));const a=HACK_addIntentAndDeletedIdToOperation(i._toOps(this._id,o,this._pool),s);this._unacknowledgedSets.set(o,nn(a[0].opId));const c=HACK_addIntentAndDeletedIdToOperation(n._toOps(this._id,o,void 0),t);this._pool.dispatch(a,c,r)}}toArray(){return this._items.map((e=>liveNodeToLson(e)))}\n/**\n   * Tests whether all elements pass the test implemented by the provided function.\n   * @param predicate Function to test for each element, taking two arguments (the element and its index).\n   * @returns true if the predicate function returns a truthy value for every element. Otherwise, false.\n   */every(e){return this.toArray().every(e)}\n/**\n   * Creates an array with all elements that pass the test implemented by the provided function.\n   * @param predicate Function to test each element of the LiveList. Return a value that coerces to true to keep the element, or to false otherwise.\n   * @returns An array with the elements that pass the test.\n   */filter(e){return this.toArray().filter(e)}\n/**\n   * Returns the first element that satisfies the provided testing function.\n   * @param predicate Function to execute on each value.\n   * @returns The value of the first element in the LiveList that satisfies the provided testing function. Otherwise, undefined is returned.\n   */find(e){return this.toArray().find(e)}\n/**\n   * Returns the index of the first element in the LiveList that satisfies the provided testing function.\n   * @param predicate Function to execute on each value until the function returns true, indicating that the satisfying element was found.\n   * @returns The index of the first element in the LiveList that passes the test. Otherwise, -1.\n   */findIndex(e){return this.toArray().findIndex(e)}\n/**\n   * Executes a provided function once for each element.\n   * @param callbackfn Function to execute on each element.\n   */forEach(e){return this.toArray().forEach(e)}\n/**\n   * Get the element at the specified index.\n   * @param index The index on the element to get.\n   * @returns The element at the specified index or undefined.\n   */get(e){if(!(e<0||e>=this._items.length))return liveNodeToLson(this._items[e])}\n/**\n   * Returns the first index at which a given element can be found in the LiveList, or -1 if it is not present.\n   * @param searchElement Element to locate.\n   * @param fromIndex The index to start the search at.\n   * @returns The first index of the element in the LiveList; -1 if not found.\n   */indexOf(e,t){return this.toArray().indexOf(e,t)}\n/**\n   * Returns the last index at which a given element can be found in the LiveList, or -1 if it is not present. The LiveLsit is searched backwards, starting at fromIndex.\n   * @param searchElement Element to locate.\n   * @param fromIndex The index at which to start searching backwards.\n   * @returns\n   */lastIndexOf(e,t){return this.toArray().lastIndexOf(e,t)}\n/**\n   * Creates an array populated with the results of calling a provided function on every element.\n   * @param callback Function that is called for every element.\n   * @returns An array with each element being the result of the callback function.\n   */map(e){return this._items.map(((t,n)=>e(liveNodeToLson(t),n)))}\n/**\n   * Tests whether at least one element in the LiveList passes the test implemented by the provided function.\n   * @param predicate Function to test for each element.\n   * @returns true if the callback function returns a truthy value for at least one element. Otherwise, false.\n   */some(e){return this.toArray().some(e)}[Symbol.iterator](){return new G(this._items)}_createAttachItemAndSort(e,t){const n=creationOpToLiveNode(e);n._attach(e.id,nn(this._pool));n._setParentLink(this,t);this._insertAndSort(n);const o=this._indexOfPosition(t);return{newItem:n,newIndex:o}}_shiftItemPosition(e,t){const n=makePosition(t,this._items.length>e+1?this._items[e+1]?._parentPos:void 0);this._items[e]._setParentLink(this,n)}_toTreeNode(e){return{type:\"LiveList\",id:this._id??nanoid(),key:e,payload:this._items.map(((e,t)=>e.toTreeNode(t.toString())))}}toImmutable(){return super.toImmutable()}_toImmutable(){const e=this._items.map((e=>e.toImmutable()));return\"production\"===process.env.NODE_ENV?e:Object.freeze(e)}};var G=class{constructor(e){this._innerIterator=e[Symbol.iterator]()}[Symbol.iterator](){return this}next(){const e=this._innerIterator.next();if(e.done)return{done:true,value:void 0};const t=liveNodeToLson(e.value);return{value:t}}};function makeUpdate(e,t){return{node:e,type:\"LiveList\",updates:t}}function setDelta(e,t){return{index:e,type:\"set\",item:t instanceof V?t.data:t}}function deleteDelta(e){return{index:e,type:\"delete\"}}function insertDelta(e,t){return{index:e,type:\"insert\",item:t instanceof V?t.data:t}}function moveDelta(e,t,n){return{index:t,type:\"move\",previousIndex:e,item:n instanceof V?n.data:n}}function HACK_addIntentAndDeletedIdToOperation(e,t){return e.map(((e,n)=>{if(0===n){const n=e;return{...n,intent:\"set\",deletedId:t}}return e}))}var Y=\"production\"===process.env.NODE_ENV?e=>e:Object.freeze;var X=class _LiveMap extends B{constructor(e){super();this.unacknowledgedSet=new Map;if(e){const t=[];for(const n of e){const e=lsonToLiveNode(n[1]);e._setParentLink(this,n[0]);t.push([n[0],e])}this._map=new Map(t)}else this._map=new Map}_toOps(e,t,n){if(void 0===this._id)throw new Error(\"Cannot serialize item is not attached\");const o=[];const s={id:this._id,opId:n?.generateOpId(),type:7,parentId:e,parentKey:t};o.push(s);for(const[e,t]of this._map)o.push(...t._toOps(this._id,e,n));return o}static _deserialize([e,t],n,o){const s=new _LiveMap;s._attach(e,o);const i=n.get(e);if(void 0===i)return s;for(const[e,t]of i){const i=deserialize([e,t],n,o);i._setParentLink(s,t.parentKey);s._map.set(t.parentKey,i);s.invalidate()}return s}_attach(e,t){super._attach(e,t);for(const[e,n]of this._map)isLiveNode(n)&&n._attach(t.generateId(),t)}_attachChild(e,t){if(void 0===this._pool)throw new Error(\"Can't attach child if managed pool is not present\");const{id:n,parentKey:o,opId:s}=e;const i=o;const r=creationOpToLiveNode(e);if(void 0!==this._pool.getNode(n))return{modified:false};if(2===t){const e=this.unacknowledgedSet.get(i);if(e===s){this.unacknowledgedSet.delete(i);return{modified:false}}if(void 0!==e)return{modified:false}}else 1===t&&this.unacknowledgedSet.delete(i);const a=this._map.get(i);let c;if(a){const e=nn(this._id);c=a._toOps(e,i);a._detach()}else c=[{type:5,id:n}];r._setParentLink(this,i);r._attach(n,this._pool);this._map.set(i,r);this.invalidate();return{modified:{node:this,type:\"LiveMap\",updates:{[i]:{type:\"update\"}}},reverse:c}}_detach(){super._detach();for(const e of this._map.values())e._detach()}_detachChild(e){const t=nn(this._id);const n=nn(e._parentKey);const o=e._toOps(t,n,this._pool);for(const[t,n]of this._map)if(n===e){this._map.delete(t);this.invalidate()}e._detach();const s={node:this,type:\"LiveMap\",updates:{[n]:{type:\"delete\"}}};return{modified:s,reverse:o}}_serialize(){if(\"HasParent\"!==this.parent.type)throw new Error(\"Cannot serialize LiveMap if parent is missing\");return{type:2,parentId:nn(this.parent.node._id,\"Parent node expected to have ID\"),parentKey:this.parent.key}}\n/**\n   * Returns a specified element from the LiveMap.\n   * @param key The key of the element to return.\n   * @returns The element associated with the specified key, or undefined if the key can't be found in the LiveMap.\n   */get(e){const t=this._map.get(e);if(void 0!==t)return liveNodeToLson(t)}\n/**\n   * Adds or updates an element with a specified key and a value.\n   * @param key The key of the element to add. Should be a string.\n   * @param value The value of the element to add. Should be serializable to JSON.\n   */set(e,t){this._pool?.assertStorageIsWritable();const n=this._map.get(e);n&&n._detach();const o=lsonToLiveNode(t);o._setParentLink(this,e);this._map.set(e,o);this.invalidate();if(this._pool&&this._id){const t=this._pool.generateId();o._attach(t,this._pool);const s=new Map;s.set(this._id,{node:this,type:\"LiveMap\",updates:{[e]:{type:\"update\"}}});const i=o._toOps(this._id,e,this._pool);this.unacknowledgedSet.set(e,nn(i[0].opId));this._pool.dispatch(o._toOps(this._id,e,this._pool),n?n._toOps(this._id,e):[{type:5,id:t}],s)}}get size(){return this._map.size}\n/**\n   * Returns a boolean indicating whether an element with the specified key exists or not.\n   * @param key The key of the element to test for presence.\n   */has(e){return this._map.has(e)}\n/**\n   * Removes the specified element by key.\n   * @param key The key of the element to remove.\n   * @returns true if an element existed and has been removed, or false if the element does not exist.\n   */delete(e){this._pool?.assertStorageIsWritable();const t=this._map.get(e);if(void 0===t)return false;t._detach();this._map.delete(e);this.invalidate();if(this._pool&&t._id){const n=nn(this._id);const o=new Map;o.set(n,{node:this,type:\"LiveMap\",updates:{[e]:{type:\"delete\"}}});this._pool.dispatch([{type:5,id:t._id,opId:this._pool.generateOpId()}],t._toOps(n,e),o)}return true}entries(){const e=this._map.entries();return{[Symbol.iterator](){return this},next(){const t=e.next();if(t.done)return{done:true,value:void 0};const n=t.value;const o=n[0];const s=liveNodeToLson(t.value[1]);return{value:[o,s]}}}}[Symbol.iterator](){return this.entries()}keys(){return this._map.keys()}values(){const e=this._map.values();return{[Symbol.iterator](){return this},next(){const t=e.next();if(t.done)return{done:true,value:void 0};const n=liveNodeToLson(t.value);return{value:n}}}}\n/**\n   * Executes a provided function once per each key/value pair in the Map object, in insertion order.\n   * @param callback Function to execute for each entry in the map.\n   */forEach(e){for(const t of this)e(t[1],t[0],this)}_toTreeNode(e){return{type:\"LiveMap\",id:this._id??nanoid(),key:e,payload:Array.from(this._map.entries()).map((([e,t])=>t.toTreeNode(e)))}}toImmutable(){return super.toImmutable()}_toImmutable(){const e=new Map;for(const[t,n]of this._map)e.set(t,n.toImmutable());return Y(e)}};var q=class _LiveObject extends B{constructor(e={}){super();this._propToLastUpdate=new Map;for(const t in e){const n=e[t];void 0!==n&&(isLiveNode(n)&&n._setParentLink(this,t))}this._map=new Map(Object.entries(e))}static _buildRootAndParentToChildren(e){const t=new Map;let n=null;for(const[o,s]of e)if(isRootCrdt(s))n=[o,s];else{const e=[o,s];const n=t.get(s.parentId);void 0!==n?n.push(e):t.set(s.parentId,[e])}if(null===n)throw new Error(\"Root can't be null\");return[n,t]}static _fromItems(e,t){const[n,o]=_LiveObject._buildRootAndParentToChildren(e);return _LiveObject._deserialize(n,o,t)}_toOps(e,t,n){if(void 0===this._id)throw new Error(\"Cannot serialize item is not attached\");const o=n?.generateOpId();const s=[];const i=void 0!==e&&void 0!==t?{type:4,id:this._id,opId:o,parentId:e,parentKey:t,data:{}}:{type:4,id:this._id,opId:o,data:{}};s.push(i);for(const[e,t]of this._map)isLiveNode(t)?s.push(...t._toOps(this._id,e,n)):i.data[e]=t;return s}static _deserialize([e,t],n,o){const s=new _LiveObject(t.data);s._attach(e,o);return this._deserializeChildren(s,n,o)}static _deserializeChildren(e,t,n){const o=t.get(nn(e._id));if(void 0===o)return e;for(const[s,i]of o){const o=deserializeToLson([s,i],t,n);isLiveStructure(o)&&o._setParentLink(e,i.parentKey);e._map.set(i.parentKey,o);e.invalidate()}return e}_attach(e,t){super._attach(e,t);for(const[e,n]of this._map)isLiveNode(n)&&n._attach(t.generateId(),t)}_attachChild(e,t){if(void 0===this._pool)throw new Error(\"Can't attach child if managed pool is not present\");const{id:n,opId:o,parentKey:s}=e;const i=creationOpToLson(e);if(void 0!==this._pool.getNode(n)){this._propToLastUpdate.get(s)===o&&this._propToLastUpdate.delete(s);return{modified:false}}if(0===t)this._propToLastUpdate.set(s,nn(o));else if(void 0!==this._propToLastUpdate.get(s)){if(this._propToLastUpdate.get(s)===o){this._propToLastUpdate.delete(s);return{modified:false}}return{modified:false}}const r=nn(this._id);const a=this._map.get(s);let c;if(isLiveNode(a)){c=a._toOps(r,s);a._detach()}else c=void 0===a?[{type:6,id:r,key:s}]:[{type:3,id:r,data:{[s]:a}}];this._map.set(s,i);this.invalidate();if(isLiveStructure(i)){i._setParentLink(this,s);i._attach(n,this._pool)}return{reverse:c,modified:{node:this,type:\"LiveObject\",updates:{[s]:{type:\"update\"}}}}}_detachChild(e){if(e){const t=nn(this._id);const n=nn(e._parentKey);const o=e._toOps(t,n,this._pool);for(const[t,n]of this._map)if(n===e){this._map.delete(t);this.invalidate()}e._detach();const s={node:this,type:\"LiveObject\",updates:{[n]:{type:\"delete\"}}};return{modified:s,reverse:o}}return{modified:false}}_detach(){super._detach();for(const e of this._map.values())isLiveNode(e)&&e._detach()}_apply(e,t){return 3===e.type?this._applyUpdate(e,t):6===e.type?this._applyDeleteObjectKey(e,t):super._apply(e,t)}_serialize(){const e={};for(const[t,n]of this._map)isLiveNode(n)||(e[t]=n);return\"HasParent\"===this.parent.type&&this.parent.node._id?{type:0,parentId:this.parent.node._id,parentKey:this.parent.key,data:e}:{type:0,data:e}}_applyUpdate(e,t){let n=false;const o=nn(this._id);const s=[];const i={type:3,id:o,data:{}};for(const t in e.data){const e=this._map.get(t);if(isLiveNode(e)){s.push(...e._toOps(o,t));e._detach()}else void 0!==e?i.data[t]=e:void 0===e&&s.push({type:6,id:o,key:t})}const r={};for(const o in e.data){const s=e.data[o];if(void 0===s)continue;if(t)this._propToLastUpdate.set(o,nn(e.opId));else{if(void 0!==this._propToLastUpdate.get(o)){if(this._propToLastUpdate.get(o)===e.opId){this._propToLastUpdate.delete(o);continue}continue}n=true}const i=this._map.get(o);isLiveNode(i)&&i._detach();n=true;r[o]={type:\"update\"};this._map.set(o,s);this.invalidate()}0!==Object.keys(i.data).length&&s.unshift(i);return n?{modified:{node:this,type:\"LiveObject\",updates:r},reverse:s}:{modified:false}}_applyDeleteObjectKey(e,t){const n=e.key;if(false===this._map.has(n))return{modified:false};if(!t&&void 0!==this._propToLastUpdate.get(n))return{modified:false};const o=this._map.get(n);const s=nn(this._id);let i=[];if(isLiveNode(o)){i=o._toOps(s,e.key);o._detach()}else void 0!==o&&(i=[{type:3,id:s,data:{[n]:o}}]);this._map.delete(n);this.invalidate();return{modified:{node:this,type:\"LiveObject\",updates:{[e.key]:{type:\"delete\"}}},reverse:i}}toObject(){return Object.fromEntries(this._map)}\n/**\n   * Adds or updates a property with a specified key and a value.\n   * @param key The key of the property to add\n   * @param value The value of the property to add\n   */set(e,t){this._pool?.assertStorageIsWritable();this.update({[e]:t})}\n/**\n   * Returns a specified property from the LiveObject.\n   * @param key The key of the property to get\n   */get(e){return this._map.get(e)}\n/**\n   * Deletes a key from the LiveObject\n   * @param key The key of the property to delete\n   */delete(e){this._pool?.assertStorageIsWritable();const t=e;const n=this._map.get(t);if(void 0===n)return;if(void 0===this._pool||void 0===this._id){isLiveNode(n)&&n._detach();this._map.delete(t);this.invalidate();return}let o;if(isLiveNode(n)){n._detach();o=n._toOps(this._id,t)}else o=[{type:3,data:{[t]:n},id:this._id}];this._map.delete(t);this.invalidate();const s=new Map;s.set(this._id,{node:this,type:\"LiveObject\",updates:{[e]:{type:\"delete\"}}});this._pool.dispatch([{type:6,key:t,id:this._id,opId:this._pool.generateOpId()}],o,s)}\n/**\n   * Adds or updates multiple properties at once with an object.\n   * @param patch The object used to overrides properties\n   */update(e){this._pool?.assertStorageIsWritable();if(void 0===this._pool||void 0===this._id){for(const t in e){const n=e[t];if(void 0===n)continue;const o=this._map.get(t);isLiveNode(o)&&o._detach();isLiveNode(n)&&n._setParentLink(this,t);this._map.set(t,n);this.invalidate()}return}const t=[];const n=[];const o=this._pool.generateOpId();const s={};const i={id:this._id,type:3,data:{}};const r={};for(const a in e){const c=e[a];if(void 0===c)continue;const d=this._map.get(a);if(isLiveNode(d)){n.push(...d._toOps(this._id,a));d._detach()}else void 0===d?n.push({type:6,id:this._id,key:a}):i.data[a]=d;if(isLiveNode(c)){c._setParentLink(this,a);c._attach(this._pool.generateId(),this._pool);const e=c._toOps(this._id,a,this._pool);const n=e.find((e=>e.parentId===this._id));n&&this._propToLastUpdate.set(a,nn(n.opId));t.push(...e)}else{s[a]=c;this._propToLastUpdate.set(a,o)}this._map.set(a,c);this.invalidate();r[a]={type:\"update\"}}0!==Object.keys(i.data).length&&n.unshift(i);0!==Object.keys(s).length&&t.unshift({opId:o,id:this._id,type:3,data:s});const a=new Map;a.set(this._id,{node:this,type:\"LiveObject\",updates:r});this._pool.dispatch(t,n,a)}toImmutable(){return super.toImmutable()}toTreeNode(e){return super.toTreeNode(e)}_toTreeNode(e){const t=this._id??nanoid();return{type:\"LiveObject\",id:t,key:e,payload:Array.from(this._map.entries()).map((([e,n])=>isLiveNode(n)?n.toTreeNode(e):{type:\"Json\",id:`${t}:${e}`,key:e,payload:n}))}}_toImmutable(){const e={};for(const[t,n]of this._map)e[t]=isLiveStructure(n)?n.toImmutable():n;return\"production\"===process.env.NODE_ENV?e:Object.freeze(e)}};function creationOpToLiveNode(e){return lsonToLiveNode(creationOpToLson(e))}function creationOpToLson(e){switch(e.type){case 8:return e.data;case 4:return new q(e.data);case 7:return new X;case 2:return new W;default:return assertNever(e,\"Unknown creation Op\")}}function isSameNodeOrChildOf(e,t){return e===t||\"HasParent\"===e.parent.type&&isSameNodeOrChildOf(e.parent.node,t)}function deserialize([e,t],n,o){switch(t.type){case 0:return q._deserialize([e,t],n,o);case 1:return W._deserialize([e,t],n,o);case 2:return X._deserialize([e,t],n,o);case 3:return V._deserialize([e,t],n,o);default:throw new Error(\"Unexpected CRDT type\")}}function deserializeToLson([e,t],n,o){switch(t.type){case 0:return q._deserialize([e,t],n,o);case 1:return W._deserialize([e,t],n,o);case 2:return X._deserialize([e,t],n,o);case 3:return t.data;default:throw new Error(\"Unexpected CRDT type\")}}function isLiveStructure(e){return isLiveList(e)||isLiveMap(e)||isLiveObject(e)}function isLiveNode(e){return isLiveStructure(e)||isLiveRegister(e)}function isLiveList(e){return e instanceof W}function isLiveMap(e){return e instanceof X}function isLiveObject(e){return e instanceof q}function isLiveRegister(e){return e instanceof V}function liveNodeToLson(e){return e instanceof V?e.data:e instanceof W||e instanceof X||e instanceof q?e:assertNever(e,\"Unknown AbstractCrdt\")}function lsonToLiveNode(e){return e instanceof q||e instanceof X||e instanceof W?e:new V(e)}function getTreesDiffOperations(e,t){const n=[];e.forEach(((e,o)=>{t.get(o)||n.push({type:5,id:o})}));t.forEach(((t,o)=>{const s=e.get(o);if(s){0===t.type&&(0===s.type&&JSON.stringify(t.data)===JSON.stringify(s.data)||n.push({type:3,id:o,data:t.data}));t.parentKey!==s.parentKey&&n.push({type:1,id:o,parentKey:nn(t.parentKey,\"Parent key must not be missing\")})}else switch(t.type){case 3:n.push({type:8,id:o,parentId:t.parentId,parentKey:t.parentKey,data:t.data});break;case 1:n.push({type:2,id:o,parentId:t.parentId,parentKey:t.parentKey});break;case 0:n.push(t.parentId?{type:4,id:o,parentId:t.parentId,parentKey:t.parentKey,data:t.data}:{type:4,id:o,data:t.data});break;case 2:n.push({type:7,id:o,parentId:t.parentId,parentKey:t.parentKey});break}}));return n}function mergeObjectStorageUpdates(e,t){const n=e.updates;for(const[e,o]of entries(t.updates))n[e]=o;return{...t,updates:n}}function mergeMapStorageUpdates(e,t){const n=e.updates;for(const[e,o]of entries(t.updates))n[e]=o;return{...t,updates:n}}function mergeListStorageUpdates(e,t){const n=e.updates;return{...t,updates:n.concat(t.updates)}}function mergeStorageUpdates(e,t){return void 0===e?t:\"LiveObject\"===e.type&&\"LiveObject\"===t.type?mergeObjectStorageUpdates(e,t):\"LiveMap\"===e.type&&\"LiveMap\"===t.type?mergeMapStorageUpdates(e,t):\"LiveList\"===e.type&&\"LiveList\"===t.type?mergeListStorageUpdates(e,t):t}function isPlain(e){const t=typeof e;return void 0===e||null===e||\"string\"===t||\"boolean\"===t||\"number\"===t||Array.isArray(e)||isPlainObject(e)}function findNonSerializableValue(e,t=\"\"){if(!isPlain)return{path:t||\"root\",value:e};if(\"object\"!==typeof e||null===e)return false;for(const[n,o]of Object.entries(e)){const e=t?t+\".\"+n:n;if(!isPlain(o))return{path:e,value:o};if(\"object\"===typeof o){const t=findNonSerializableValue(o,e);if(t)return t}}return false}function captureStackTrace(e,t){const n={name:e};if(\"function\"===typeof Error.captureStackTrace){Error.captureStackTrace(n,t);return n.stack}}function isJsonScalar(e){return null===e||\"string\"===typeof e||\"number\"===typeof e||\"boolean\"===typeof e}function isJsonArray(e){return Array.isArray(e)}function isJsonObject(e){return!isJsonScalar(e)&&!isJsonArray(e)}function isTokenExpired(e){const t=Date.now()/1e3;const n=t<=e.exp-300&&t>=e.iat-300;return!n}function isStringList(e){return Array.isArray(e)&&e.every((e=>\"string\"===typeof e))}function isMinimalTokenPayload(e){return isPlainObject(e)&&\"number\"===typeof e.iat&&\"number\"===typeof e.exp&&\"number\"===typeof e.actor&&(void 0===e.id||\"string\"===typeof e.id)&&isStringList(e.scopes)}function parseAuthToken(e){const t=e.split(\".\");if(3!==t.length)throw new Error(\"Authentication error: invalid JWT token\");const n=tryParseJson(b64decode(t[1]));if(!(n&&isMinimalTokenPayload(n)))throw new Error(\"Authentication error: we expected a room token but did not get one. Hint: if you are using a callback, ensure the room is passed when creating the token. For more information: https://liveblocks.io/docs/api-reference/liveblocks-client#createClientCallback\");return{raw:e,parsed:n}}var Q=(e=>{e[e.UPDATE_PRESENCE=100]=\"UPDATE_PRESENCE\";e[e.BROADCAST_EVENT=103]=\"BROADCAST_EVENT\";e[e.FETCH_STORAGE=200]=\"FETCH_STORAGE\";e[e.UPDATE_STORAGE=201]=\"UPDATE_STORAGE\";e[e.FETCH_YDOC=300]=\"FETCH_YDOC\";e[e.UPDATE_YDOC=301]=\"UPDATE_YDOC\";return e})(Q||{});var Z=(e=>{e[e.UPDATE_PRESENCE=100]=\"UPDATE_PRESENCE\";e[e.USER_JOINED=101]=\"USER_JOINED\";e[e.USER_LEFT=102]=\"USER_LEFT\";e[e.BROADCASTED_EVENT=103]=\"BROADCASTED_EVENT\";e[e.ROOM_STATE=104]=\"ROOM_STATE\";e[e.INITIAL_STORAGE_STATE=200]=\"INITIAL_STORAGE_STATE\";e[e.UPDATE_STORAGE=201]=\"UPDATE_STORAGE\";e[e.REJECT_STORAGE_OP=299]=\"REJECT_STORAGE_OP\";e[e.UPDATE_YDOC=300]=\"UPDATE_YDOC\";return e})(Z||{});function asArrayWithLegacyMethods(e){Object.defineProperty(e,\"count\",{value:e.length,enumerable:false});Object.defineProperty(e,\"toArray\",{value:()=>e,enumerable:false});return Y(e)}function merge(e,t){let n=false;const o={...e};Object.keys(t).forEach((e=>{const s=e;const i=t[s];if(o[s]!==i){void 0===i?delete o[s]:o[s]=i;n=true}}));return n?o:e}var ee=class{constructor(){this._ev=makeEventSource()}get didInvalidate(){return this._ev.observable}invalidate(){if(void 0!==this._cache){this._cache=void 0;this._ev.notify()}}get current(){return this._cache??(this._cache=this._toImmutable())}};function makeUser(e,t){return Y(compactObject({...e,presence:t}))}var te=class extends ee{constructor(){super();this._connections={};this._presences={};this._users={}}_toImmutable(){const e=compact(Object.keys(this._presences).map((e=>this.getUser(Number(e)))));return asArrayWithLegacyMethods(e)}clearOthers(){this._connections={};this._presences={};this._users={};this.invalidate()}_getUser(e){const t=this._connections[e];const n=this._presences[e];if(void 0!==t&&void 0!==n)return makeUser(t,n)}getUser(e){const t=this._users[e];if(t)return t;const n=this._getUser(e);if(n){this._users[e]=n;return n}}_invalidateUser(e){void 0!==this._users[e]&&delete this._users[e];this.invalidate()}setConnection(e,t,n,o){this._connections[e]=Y({connectionId:e,id:t,info:n,isReadOnly:o});void 0!==this._presences[e]&&this._invalidateUser(e)}removeConnection(e){delete this._connections[e];delete this._presences[e];this._invalidateUser(e)}setOther(e,t){this._presences[e]=Y(compactObject(t));void 0!==this._connections[e]&&this._invalidateUser(e)}patchOther(e,t){const n=this._presences[e];if(void 0===n)return;const o=merge(n,t);if(n!==o){this._presences[e]=Y(o);this._invalidateUser(e)}}};var ne=class extends ee{constructor(e){super();this._data=Y(compactObject(e))}_toImmutable(){return this._data}patch(e){const t=this._data;const n=merge(t,e);if(t!==n){this._data=Y(n);this.invalidate()}}};var oe=class extends ee{constructor(e){super();this._value=Y(e)}_toImmutable(){return this._value}set(e){this._value=Y(e);this.invalidate()}};var se=class extends ee{constructor(...e){super();const t=e.pop();const n=e;this._refs=n;this._refs.forEach((e=>{e.didInvalidate.subscribe((()=>this.invalidate()))}));this._transform=t}_toImmutable(){return this._transform(...this._refs.map((e=>e.current)))}};var ie=1048448;function makeIdFactory(e){let t=0;return()=>`${e}:${t++}`}function userToTreeNode(e,t){return{type:\"User\",id:`${t.connectionId}`,key:e,payload:t}}function createRoom(e,t){const n=\"function\"===typeof e.initialPresence?e.initialPresence(t.roomId):e.initialPresence;const o=\"function\"===typeof e.initialStorage?e.initialStorage(t.roomId):e.initialStorage;const s=t.delegates??{authenticate:makeAuthDelegateForRoom(t.roomId,t.authentication,t.polyfills?.fetch),createSocket:makeCreateSocketDelegateForRoom(t.liveblocksServer,t.polyfills?.WebSocket)};const i=new U(s,t.enableDebugLogging);const r={buffer:{flushTimerID:void 0,lastFlushedAt:0,presenceUpdates:{type:\"full\",data:n},messages:[],storageOperations:[]},sessionInfo:new oe(null),me:new ne(n),others:new te,initialStorage:o,idFactory:null,clock:0,opClock:0,nodes:new Map,root:void 0,undoStack:[],redoStack:[],pausedHistory:null,activeBatch:null,unacknowledgedOps:new Map,opStackTraces:\"production\"!==process.env.NODE_ENV?new Map:void 0};const doNotBatchUpdates=e=>e();const a=t.unstable_batchedUpdates??doNotBatchUpdates;let c;function onStatusDidChange(e){const t=i.token?.parsed;if(void 0!==t&&t!==c){r.sessionInfo.set({userInfo:t.info,userId:t.id,actor:t.actor,isReadOnly:isStorageReadOnly(t.scopes)});c=t}a((()=>{p.status.notify(e);p.connection.notify(newToLegacyStatus(e))}))}let d;let l=false;function handleConnectionLossEvent(e){if(\"reconnecting\"===e)d=setTimeout((()=>{a((()=>{p.lostConnection.notify(\"lost\");l=true;r.others.clearOthers();notify({others:[{type:\"reset\"}]},doNotBatchUpdates)}))}),t.lostConnectionTimeout);else{clearTimeout(d);if(l){a(\"disconnected\"===e?()=>{p.lostConnection.notify(\"failed\")}:()=>{p.lostConnection.notify(\"restored\")});l=false}}}function onDidConnect(){const e=r.sessionInfo.current;if(null===e)throw new Error(\"Unexpected missing session info\");r.buffer.presenceUpdates={type:\"full\",data:{...r.me.current}};r.idFactory=makeIdFactory(e.actor);null!==_&&refreshStorage({flush:false});flushNowOrSoon()}function onDidDisconnect(){clearTimeout(r.buffer.flushTimerID)}i.events.onMessage.subscribe(handleServerMessage);i.events.statusDidChange.subscribe(onStatusDidChange);i.events.statusDidChange.subscribe(handleConnectionLossEvent);i.events.didConnect.subscribe(onDidConnect);i.events.didDisconnect.subscribe(onDidDisconnect);i.events.onLiveblocksError.subscribe((e=>{a((()=>{\"production\"!==process.env.NODE_ENV&&m(`Connection to websocket server closed. Reason: ${e.message} (code: ${e.code}).`);p.error.notify(e)}))}));const u={roomId:t.roomId,getNode:e=>r.nodes.get(e),addNode:(e,t)=>{r.nodes.set(e,t)},deleteNode:e=>{r.nodes.delete(e)},generateId:()=>`${getConnectionId()}:${r.clock++}`,generateOpId:()=>`${getConnectionId()}:${r.opClock++}`,dispatch(e,t,n){const o=r.activeBatch;if(\"production\"!==process.env.NODE_ENV){const t=captureStackTrace(\"Storage mutation\",this.dispatch);if(t)for(const n of e)n.opId&&nn(r.opStackTraces).set(n.opId,t)}if(o){o.ops.push(...e);for(const[e,t]of n)o.updates.storageUpdates.set(e,mergeStorageUpdates(o.updates.storageUpdates.get(e),t));o.reverseOps.unshift(...t)}else a((()=>{addToUndoStack(t,doNotBatchUpdates);r.redoStack=[];dispatchOps(e);notify({storageUpdates:n},doNotBatchUpdates)}))},assertStorageIsWritable:()=>{if(r.sessionInfo.current?.isReadOnly)throw new Error(\"Cannot write to storage with a read only user, please ensure the user has write permissions\")}};const p={connection:makeEventSource(),status:makeEventSource(),lostConnection:makeEventSource(),customEvent:makeEventSource(),me:makeEventSource(),others:makeEventSource(),error:makeEventSource(),storage:makeEventSource(),history:makeEventSource(),storageDidLoad:makeEventSource(),storageStatus:makeEventSource(),ydoc:makeEventSource()};function sendMessages(e){const n=JSON.stringify(e);if(t.unstable_fallbackToHTTP){const e=(new TextEncoder).encode(n).length;if(e>ie&&i.token?.raw&&t.httpSendEndpoint){if(isTokenExpired(i.token.parsed))return i.reconnect();void httpSend(n,i.token.raw,t.httpSendEndpoint,t.polyfills?.fetch);v(\"Message was too large for websockets and sent over HTTP instead\");return}}i.send(n)}const h=new se(r.sessionInfo,r.me,((e,t)=>null!==e?{connectionId:e.actor,id:e.userId,info:e.userInfo,presence:t,isReadOnly:e.isReadOnly}:null));const f=new se(h,(e=>null!==e?userToTreeNode(\"Me\",e):null));function createOrUpdateRootFromMessage(e,t){if(0===e.items.length)throw new Error(\"Internal error: cannot load storage without items\");void 0!==r.root?updateRoot(e.items,t):r.root=q._fromItems(e.items,u);for(const e in r.initialStorage)void 0===r.root.get(e)&&r.root.set(e,r.initialStorage[e])}function updateRoot(e,t){if(void 0===r.root)return;const n=new Map;for(const[e,t]of r.nodes)n.set(e,t._serialize());const o=getTreesDiffOperations(n,new Map(e));const s=applyOps(o,false);notify(s.updates,t)}function _addToRealUndoStack(e,t){r.undoStack.length>=50&&r.undoStack.shift();r.undoStack.push(e);onHistoryChange(t)}function addToUndoStack(e,t){null!==r.pausedHistory?r.pausedHistory.unshift(...e):_addToRealUndoStack(e,t)}function notify({storageUpdates:e=new Map,presence:t=false,others:n=[]},o){o((()=>{if(n.length>0){const e=r.others.current;for(const t of n)p.others.notify({others:e,event:t})}t&&p.me.notify(r.me.current);if(e.size>0){const t=Array.from(e.values());p.storage.notify(t)}}))}function getConnectionId(){const e=r.sessionInfo.current;if(e)return e.actor;throw new Error(\"Internal. Tried to get connection id but connection was never open\")}function applyOps(e,t){const n={reverse:[],storageUpdates:new Map,presence:false};const o=new Set;const s=e.map((e=>\"presence\"===e.type||e.opId?e:{...e,opId:u.generateOpId()}));for(const e of s)if(\"presence\"===e.type){const t={type:\"presence\",data:{}};for(const n in e.data)t.data[n]=r.me.current[n];r.me.patch(e.data);if(null===r.buffer.presenceUpdates)r.buffer.presenceUpdates={type:\"partial\",data:e.data};else for(const t in e.data)r.buffer.presenceUpdates.data[t]=e.data[t];n.reverse.unshift(t);n.presence=true}else{let s;if(t)s=0;else{const t=nn(e.opId);\"production\"!==process.env.NODE_ENV&&nn(r.opStackTraces).delete(t);const n=r.unacknowledgedOps.delete(t);s=n?2:1}const i=applyOp(e,s);if(i.modified){const t=i.modified.node._id;if(!(t&&o.has(t))){n.storageUpdates.set(nn(i.modified.node._id),mergeStorageUpdates(n.storageUpdates.get(nn(i.modified.node._id)),i.modified));n.reverse.unshift(...i.reverse)}2!==e.type&&7!==e.type&&4!==e.type||o.add(nn(e.id))}}notifyStorageStatus();return{ops:s,reverse:n.reverse,updates:{storageUpdates:n.storageUpdates,presence:n.presence}}}function applyOp(e,t){if(isAckOp(e))return{modified:false};switch(e.type){case 6:case 3:case 5:{const n=r.nodes.get(e.id);return void 0===n?{modified:false}:n._apply(e,0===t)}case 1:{const n=r.nodes.get(e.id);return void 0===n?{modified:false}:\"HasParent\"===n.parent.type&&isLiveList(n.parent.node)?n.parent.node._setChildKey(asPos(e.parentKey),n,t):{modified:false}}case 4:case 2:case 7:case 8:{if(void 0===e.parentId)return{modified:false};const n=r.nodes.get(e.parentId);return void 0===n?{modified:false}:n._attachChild(e,t)}}}function updatePresence(e,t){const n={};null===r.buffer.presenceUpdates&&(r.buffer.presenceUpdates={type:\"partial\",data:{}});for(const t in e){const o=e[t];if(void 0!==o){r.buffer.presenceUpdates.data[t]=o;n[t]=r.me.current[t]}}r.me.patch(e);if(r.activeBatch){t?.addToHistory&&r.activeBatch.reverseOps.unshift({type:\"presence\",data:n});r.activeBatch.updates.presence=true}else{flushNowOrSoon();a((()=>{t?.addToHistory&&addToUndoStack([{type:\"presence\",data:n}],doNotBatchUpdates);notify({presence:true},doNotBatchUpdates)}))}}function isStorageReadOnly(e){return e.includes(\"room:read\")&&e.includes(\"room:presence:write\")&&!e.includes(\"room:write\")}function onUpdatePresenceMessage(e){if(void 0!==e.targetActor){const t=r.others.getUser(e.actor);r.others.setOther(e.actor,e.data);const n=r.others.getUser(e.actor);if(void 0===t&&void 0!==n)return{type:\"enter\",user:n}}else r.others.patchOther(e.actor,e.data),e;const t=r.others.getUser(e.actor);return t?{type:\"update\",updates:e.data,user:t}:void 0}function onUserLeftMessage(e){const t=r.others.getUser(e.actor);if(t){r.others.removeConnection(e.actor);return{type:\"leave\",user:t}}return null}function onRoomStateMessage(e){for(const t in r.others._connections){const n=e.users[t];void 0===n&&r.others.removeConnection(Number(t))}for(const t in e.users){const n=e.users[t];const o=Number(t);r.others.setConnection(o,n.id,n.info,isStorageReadOnly(n.scopes))}return{type:\"reset\"}}function canUndo(){return r.undoStack.length>0}function canRedo(){return r.redoStack.length>0}function onHistoryChange(e){e((()=>{p.history.notify({canUndo:canUndo(),canRedo:canRedo()})}))}function onUserJoinedMessage(e){r.others.setConnection(e.actor,e.id,e.info,isStorageReadOnly(e.scopes));r.buffer.messages.push({type:100,data:r.me.current,targetActor:e.actor});flushNowOrSoon();const t=r.others.getUser(e.actor);return t?{type:\"enter\",user:t}:void 0}function parseServerMessage(e){return isJsonObject(e)?e:null}function parseServerMessages(e){const t=tryParseJson(e);return void 0===t?null:isJsonArray(t)?compact(t.map((e=>parseServerMessage(e)))):compact([parseServerMessage(t)])}function applyAndSendOps(e,t){if(0===e.size)return;const n=[];const o=Array.from(e.values());const s=applyOps(o,true);n.push({type:201,ops:s.ops});notify(s.updates,t);sendMessages(n)}function handleServerMessage(e){if(\"string\"!==typeof e.data)return;const t=parseServerMessages(e.data);if(null===t||0===t.length)return;const n={storageUpdates:new Map,others:[]};a((()=>{for(const e of t)switch(e.type){case 101:{const t=onUserJoinedMessage(e);t&&n.others.push(t);break}case 100:{const t=onUpdatePresenceMessage(e);t&&n.others.push(t);break}case 103:p.customEvent.notify({connectionId:e.actor,event:e.event});break;case 102:{const t=onUserLeftMessage(e);t&&n.others.push(t);break}case 300:p.ydoc.notify(e.update);break;case 104:n.others.push(onRoomStateMessage(e));break;case 200:{const t=new Map(r.unacknowledgedOps);createOrUpdateRootFromMessage(e,doNotBatchUpdates);applyAndSendOps(t,doNotBatchUpdates);b?.();notifyStorageStatus();p.storageDidLoad.notify();break}case 201:{const t=applyOps(e.ops,false);for(const[e,o]of t.updates.storageUpdates)n.storageUpdates.set(e,mergeStorageUpdates(n.storageUpdates.get(e),o));break}case 299:g(\"Storage mutation rejection error\",e.reason);if(\"production\"!==process.env.NODE_ENV){const t=new Set;for(const n of e.opIds){const e=r.opStackTraces?.get(n);e&&t.add(e)}t.size>0&&y(\"The following function calls caused the rejected storage mutations:\",`\\n\\n${Array.from(t).join(\"\\n\\n\")}`);throw new Error(`Storage mutations rejected by server: ${e.reason}`)}break}notify(n,doNotBatchUpdates)}))}function flushNowOrSoon(){const e=r.buffer.storageOperations;if(e.length>0){for(const t of e)r.unacknowledgedOps.set(nn(t.opId),t);notifyStorageStatus()}if(\"connected\"!==i.getStatus()){r.buffer.storageOperations=[];return}const n=Date.now();const o=n-r.buffer.lastFlushedAt;if(o>t.throttleDelay){const e=serializeBuffer();if(0===e.length)return;sendMessages(e);r.buffer={flushTimerID:void 0,lastFlushedAt:n,messages:[],storageOperations:[],presenceUpdates:null}}else{clearTimeout(r.buffer.flushTimerID);r.buffer.flushTimerID=setTimeout(flushNowOrSoon,t.throttleDelay-o)}}function serializeBuffer(){const e=[];r.buffer.presenceUpdates&&e.push(\"full\"===r.buffer.presenceUpdates.type?{type:100,targetActor:-1,data:r.buffer.presenceUpdates.data}:{type:100,data:r.buffer.presenceUpdates.data});for(const t of r.buffer.messages)e.push(t);r.buffer.storageOperations.length>0&&e.push({type:201,ops:r.buffer.storageOperations});return e}function updateYDoc(e){r.buffer.messages.push({type:301,update:e});flushNowOrSoon()}function broadcastEvent(e,t={shouldQueueEventIfNotReady:false}){if(\"connected\"===i.getStatus()||t.shouldQueueEventIfNotReady){r.buffer.messages.push({type:103,event:e});flushNowOrSoon()}}function dispatchOps(e){r.buffer.storageOperations.push(...e);flushNowOrSoon()}let _=null;let b=null;function refreshStorage(e){const t=r.buffer.messages;t.some((e=>200===e.type))||t.push({type:200});e.flush&&flushNowOrSoon()}function startLoadingStorage(){if(null===_){refreshStorage({flush:true});_=new Promise((e=>{b=e}));notifyStorageStatus()}return _}function getStorageSnapshot(){const e=r.root;if(void 0!==e)return e;void startLoadingStorage();return null}async function getStorage(){if(void 0!==r.root)return Promise.resolve({root:r.root});await startLoadingStorage();return{root:nn(r.root)}}function fetchYDoc(e){r.buffer.messages.push({type:300,vector:e});flushNowOrSoon()}function undo(){if(r.activeBatch)throw new Error(\"undo is not allowed during a batch\");const e=r.undoStack.pop();if(void 0===e)return;r.pausedHistory=null;const t=applyOps(e,true);a((()=>{notify(t.updates,doNotBatchUpdates);r.redoStack.push(t.reverse);onHistoryChange(doNotBatchUpdates)}));for(const e of t.ops)\"presence\"!==e.type&&r.buffer.storageOperations.push(e);flushNowOrSoon()}function redo(){if(r.activeBatch)throw new Error(\"redo is not allowed during a batch\");const e=r.redoStack.pop();if(void 0===e)return;r.pausedHistory=null;const t=applyOps(e,true);a((()=>{notify(t.updates,doNotBatchUpdates);r.undoStack.push(t.reverse);onHistoryChange(doNotBatchUpdates)}));for(const e of t.ops)\"presence\"!==e.type&&r.buffer.storageOperations.push(e);flushNowOrSoon()}function batch(e){if(r.activeBatch)return e();let t;a((()=>{r.activeBatch={ops:[],updates:{storageUpdates:new Map,presence:false,others:[]},reverseOps:[]};try{t=e()}finally{const e=r.activeBatch;r.activeBatch=null;e.reverseOps.length>0&&addToUndoStack(e.reverseOps,doNotBatchUpdates);e.ops.length>0&&(r.redoStack=[]);e.ops.length>0&&dispatchOps(e.ops);notify(e.updates,doNotBatchUpdates);flushNowOrSoon()}}));return t}function pauseHistory(){r.pausedHistory=[]}function resumeHistory(){const e=r.pausedHistory;r.pausedHistory=null;null!==e&&e.length>0&&_addToRealUndoStack(e,a)}function getStorageStatus(){return void 0===r.root?null===_?\"not-loaded\":\"loading\":0===r.unacknowledgedOps.size?\"synchronized\":\"synchronizing\"}let S=getStorageStatus();function notifyStorageStatus(){const e=getStorageStatus();if(S!==e){S=e;p.storageStatus.notify(e)}}const E=new se(r.others,(e=>e.map(((e,t)=>userToTreeNode(`Other ${t}`,e)))));const w={connection:p.connection.observable,status:p.status.observable,lostConnection:p.lostConnection.observable,customEvent:p.customEvent.observable,others:p.others.observable,me:p.me.observable,error:p.error.observable,storage:p.storage.observable,history:p.history.observable,storageDidLoad:p.storageDidLoad.observable,storageStatus:p.storageStatus.observable,ydoc:p.ydoc.observable};return Object.defineProperty({__internal:{get presenceBuffer(){return deepClone(r.buffer.presenceUpdates?.data??null)},get undoStack(){return deepClone(r.undoStack)},get nodeCount(){return r.nodes.size},getSelf_forDevTools:()=>f.current,getOthers_forDevTools:()=>E.current,send:{explicitClose:e=>i._privateSendMachineEvent({type:\"EXPLICIT_SOCKET_CLOSE\",event:e}),implicitClose:()=>i._privateSendMachineEvent({type:\"NAVIGATOR_OFFLINE\"})}},id:t.roomId,subscribe:makeClassicSubscribeFn(w),connect:()=>i.connect(),reconnect:()=>i.reconnect(),disconnect:()=>i.disconnect(),destroy:()=>i.destroy(),updatePresence:updatePresence,updateYDoc:updateYDoc,broadcastEvent:broadcastEvent,batch:batch,history:{undo:undo,redo:redo,canUndo:canUndo,canRedo:canRedo,pause:pauseHistory,resume:resumeHistory},fetchYDoc:fetchYDoc,getStorage:getStorage,getStorageSnapshot:getStorageSnapshot,getStorageStatus:getStorageStatus,events:w,getStatus:()=>i.getStatus(),getConnectionState:()=>i.getLegacyStatus(),isSelfAware:()=>null!==r.sessionInfo.current,getSelf:()=>h.current,getPresence:()=>r.me.current,getOthers:()=>r.others.current},\"__internal\",{enumerable:false})}function makeClassicSubscribeFn(e){function subscribeToLiveStructureDeeply(t,n){return e.storage.subscribe((e=>{const o=e.filter((e=>isSameNodeOrChildOf(e.node,t)));o.length>0&&n(o)}))}function subscribeToLiveStructureShallowly(t,n){return e.storage.subscribe((e=>{for(const o of e)o.node._id===t._id&&n(o.node)}))}function subscribe(t,n,o){if(\"string\"===typeof t&&isRoomEventName(t)){if(\"function\"!==typeof n)throw new Error(\"Second argument must be a callback function\");const o=n;switch(t){case\"event\":return e.customEvent.subscribe(o);case\"my-presence\":return e.me.subscribe(o);case\"others\":{const t=o;return e.others.subscribe((({others:e,event:n})=>t(e,n)))}case\"error\":return e.error.subscribe(o);case\"connection\":return e.connection.subscribe(o);case\"status\":return e.status.subscribe(o);case\"lost-connection\":return e.lostConnection.subscribe(o);case\"history\":return e.history.subscribe(o);case\"storage-status\":return e.storageStatus.subscribe(o);default:return assertNever(t,\"Unknown event\")}}if(void 0===n||\"function\"===typeof t){if(\"function\"===typeof t){const n=t;return e.storage.subscribe(n)}throw new Error(\"Please specify a listener callback\")}if(isLiveNode(t)){const e=t;if(o?.isDeep){const t=n;return subscribeToLiveStructureDeeply(e,t)}{const t=n;return subscribeToLiveStructureShallowly(e,t)}}throw new Error(`\"${String(t)}\" is not a valid event name`)}return subscribe}function isRoomEventName(e){return\"my-presence\"===e||\"others\"===e||\"event\"===e||\"error\"===e||\"history\"===e||\"status\"===e||\"storage-status\"===e||\"lost-connection\"===e||\"connection\"===e}function makeCreateSocketDelegateForRoom(e,n){return o=>{const s=n??(\"undefined\"===typeof WebSocket?void 0:WebSocket);if(void 0===s)throw new P(\"To use Liveblocks client in a non-dom environment, you need to provide a WebSocket polyfill.\");const i=o.raw;return new s(`${e}/?token=${i}&version=${t||\"dev\"}`)}}async function httpSend(e,t,n,o){const s=o||fetch;return s(n,{method:\"POST\",headers:{\"Content-Type\":\"application/json\",Authorization:`Bearer ${t}`},body:e})}function makeAuthDelegateForRoom(e,t,n){const o=n??(\"undefined\"===typeof window?void 0:window.fetch);if(\"public\"===t.type)return async()=>{if(void 0===o)throw new P(\"To use Liveblocks client in a non-dom environment with a publicApiKey, you need to provide a fetch polyfill.\");return fetchAuthEndpoint(o,t.url,{room:e,publicApiKey:t.publicApiKey}).then((({token:e})=>parseAuthToken(e)))};if(\"private\"===t.type)return async()=>{if(void 0===o)throw new P(\"To use Liveblocks client in a non-dom environment with a url as auth endpoint, you need to provide a fetch polyfill.\");return fetchAuthEndpoint(o,t.url,{room:e}).then((({token:e})=>parseAuthToken(e)))};if(\"custom\"===t.type)return async()=>{const n=await t.callback(e);if(!n||!n.token)throw new Error('We expect the authentication callback to return a token, but it does not. Hint: the return value should look like: { token: \"...\" }');return parseAuthToken(n.token)};throw new Error(\"Internal error. Unexpected authentication type\")}async function fetchAuthEndpoint(e,t,n){const o=await e(t,{method:\"POST\",headers:{\"Content-Type\":\"application/json\"},credentials:\"include\",body:JSON.stringify(n)});if(!o.ok){const e=`${(await o.text()).trim()||\"reason not provided in auth response\"} (${o.status} returned by POST ${t})`;throw 401===o.status||403===o.status?new P(`Unauthorized: ${e}`):new Error(`Failed to authenticate: ${e}`)}let s;try{s=await o.json()}catch(e){throw new Error(`Expected a JSON response when doing a POST request on \"${t}\". ${String(e)}`)}if(!isPlainObject(s)||\"string\"!==typeof s.token)throw new Error(`Expected a JSON response of the form \\`{ token: \"...\" }\\` when doing a POST request on \"${t}\", but got ${JSON.stringify(s)}`);const{token:i}=s;return{token:i}}var re=16;var ae=1e3;var ce=100;var de=200;var le=1e3;var ue=3e4;var pe=5e3;function getServerFromClientOptions(e){const t=e;return\"string\"===typeof t.liveblocksServer?t.liveblocksServer:\"wss://api.liveblocks.io/v6\"}function createClient(e){const t=e;const n=getThrottle(t.throttle??ce);const o=getLostConnectionTimeout(t.lostConnectionTimeout??pe);const s=new Map;function getRoom(e){const t=s.get(e);return t||null}function enter(e,i){const r=s.get(e);if(void 0!==r)return r;deprecateIf(null===i.initialPresence||void 0===i.initialPresence,\"Please provide an initial presence value for the current user when entering the room.\");const a=createRoom({initialPresence:i.initialPresence??{},initialStorage:i.initialStorage},{roomId:e,throttleDelay:n,lostConnectionTimeout:o,polyfills:t.polyfills,delegates:t.mockedDelegates,enableDebugLogging:t.enableDebugLogging,unstable_batchedUpdates:i?.unstable_batchedUpdates,liveblocksServer:getServerFromClientOptions(t),authentication:prepareAuthentication(t,e),httpSendEndpoint:buildLiveblocksHttpSendEndpoint(t,e),unstable_fallbackToHTTP:!!t.unstable_fallbackToHTTP});s.set(e,a);setupDevTools((()=>Array.from(s.keys())));linkDevTools(e,a);const c=i.shouldInitiallyConnect??true;if(c){if(\"undefined\"===typeof atob){if(void 0===t.polyfills?.atob)throw new Error(\"You need to polyfill atob to use the client in your environment. Please follow the instructions at https://liveblocks.io/docs/errors/liveblocks-client/atob-polyfill\");global.atob=t.polyfills.atob}a.connect()}return a}function leave(e){unlinkDevTools(e);const t=s.get(e);if(void 0!==t){t.destroy();s.delete(e)}}return{getRoom:getRoom,enter:enter,leave:leave}}function checkBounds(e,t,n,o,s){if(\"number\"!==typeof t||t<n||t>o)throw new Error(`${e} should be a number between ${s??n} and ${o}.`);return t}function getThrottle(e){return checkBounds(\"throttle\",e,re,ae)}function getLostConnectionTimeout(e){return checkBounds(\"lostConnectionTimeout\",e,de,ue,le)}function prepareAuthentication(e,t){const{publicApiKey:n,authEndpoint:o}=e;if(void 0!==o&&void 0!==n)throw new Error(\"You cannot use both publicApiKey and authEndpoint. Please use either publicApiKey or authEndpoint, but not both. For more information: https://liveblocks.io/docs/api-reference/liveblocks-client#createClient\");if(\"string\"===typeof n){if(n.startsWith(\"sk_\"))throw new Error(\"Invalid publicApiKey. You are using the secret key which is not supported. Please use the public key instead. For more information: https://liveblocks.io/docs/api-reference/liveblocks-client#createClientPublicKey\");if(!n.startsWith(\"pk_\"))throw new Error(\"Invalid key. Please use the public key format: pk_<public key>. For more information: https://liveblocks.io/docs/api-reference/liveblocks-client#createClientPublicKey\");return{type:\"public\",publicApiKey:n,url:buildLiveblocksPublicAuthorizeEndpoint(e,t)}}if(\"string\"===typeof o)return{type:\"private\",url:o};if(\"function\"===typeof o)return{type:\"custom\",callback:o};if(void 0!==o)throw new Error(\"authEndpoint must be a string or a function. For more information: https://liveblocks.io/docs/api-reference/liveblocks-client#createClientAuthEndpoint\");throw new Error(\"Invalid Liveblocks client options. For more information: https://liveblocks.io/docs/api-reference/liveblocks-client#createClient\")}function buildLiveblocksHttpSendEndpoint(e,t){return e.httpSendEndpoint?e.httpSendEndpoint.replace(\"{roomId}\",t):`https://api.liveblocks.io/v2/rooms/${encodeURIComponent(t)}/send-message`}function buildLiveblocksPublicAuthorizeEndpoint(e,t){return e.publicAuthorizeEndpoint?e.publicAuthorizeEndpoint.replace(\"{roomId}\",t):`https://api.liveblocks.io/v2/rooms/${encodeURIComponent(t)}/public/authorize`}function toPlainLson(e){return e instanceof q?{liveblocksType:\"LiveObject\",data:Object.fromEntries(Object.entries(e.toObject()).map((([e,t])=>[e,t?toPlainLson(t):\"\"])))}:e instanceof X?{liveblocksType:\"LiveMap\",data:Object.fromEntries([...e].map((([e,t])=>[e,toPlainLson(t)])))}:e instanceof W?{liveblocksType:\"LiveList\",data:[...e].map((e=>toPlainLson(e)))}:e}function lsonObjectToJson(e){const t={};for(const n in e){const o=e[n];void 0!==o&&(t[n]=lsonToJson(o))}return t}function liveObjectToJson(e){return lsonObjectToJson(e.toObject())}function liveMapToJson(e){const t={};for(const[n,o]of e.entries())t[n]=lsonToJson(o);return t}function lsonListToJson(e){return e.map(lsonToJson)}function liveListToJson(e){return lsonListToJson(e.toArray())}function lsonToJson(e){return e instanceof q?liveObjectToJson(e):e instanceof W?liveListToJson(e):e instanceof X?liveMapToJson(e):e instanceof V?e.data:Array.isArray(e)?lsonListToJson(e):isPlainObject(e)?lsonObjectToJson(e):e}function deepLiveify(e){if(Array.isArray(e))return new W(e.map(deepLiveify));if(isPlainObject(e)){const t={};for(const n in e){const o=e[n];void 0!==o&&(t[n]=deepLiveify(o))}return new q(t)}return e}function patchLiveList(e,t,n){let o=0;let s=t.length-1;let i=n.length-1;let r=t[0];let a=n[0];e:{while(r===a){++o;if(o>s||o>i)break e;r=t[o];a=n[o]}r=t[s];a=n[i];while(r===a){s--;i--;if(o>s||o>i)break e;r=t[s];a=n[i]}}if(o>s){if(o<=i)while(o<=i){e.insert(deepLiveify(n[o]),o);o++}}else if(o>i){let t=o;while(t<=s){e.delete(o);t++}}else{while(o<=s&&o<=i){r=t[o];a=n[o];const s=e.get(o);isLiveObject(s)&&isPlainObject(r)&&isPlainObject(a)?patchLiveObject(s,r,a):e.set(o,deepLiveify(a));o++}while(o<=i){e.insert(deepLiveify(n[o]),o);o++}let c=o;while(c<=s){e.delete(o);c++}}}function patchLiveObjectKey(e,t,n,o){if(\"production\"!==process.env.NODE_ENV){const e=findNonSerializableValue(o);if(e){m(`New state path: '${e.path}' value: '${String(e.value)}' is not serializable.\\nOnly serializable value can be synced with Liveblocks.`);return}}const s=e.get(t);if(void 0===o)e.delete(t);else if(void 0===s)e.set(t,deepLiveify(o));else{if(n===o)return;isLiveList(s)&&Array.isArray(n)&&Array.isArray(o)?patchLiveList(s,n,o):isLiveObject(s)&&isPlainObject(n)&&isPlainObject(o)?patchLiveObject(s,n,o):e.set(t,deepLiveify(o))}}function patchLiveObject(e,t,n){const o={};for(const o in n)patchLiveObjectKey(e,o,t[o],n[o]);for(const o in t)void 0===n[o]&&e.delete(o);Object.keys(o).length>0&&e.update(o)}function getParentsPath(e){const t=[];while(\"HasParent\"===e.parent.type){isLiveList(e.parent.node)?t.push(e.parent.node._indexOfPosition(e.parent.key)):t.push(e.parent.key);e=e.parent.node}return t}function legacy_patchImmutableObject(e,t){return t.reduce(((e,t)=>legacy_patchImmutableObjectWithUpdate(e,t)),e)}function legacy_patchImmutableObjectWithUpdate(e,t){const n=getParentsPath(t.node);return legacy_patchImmutableNode(e,n,t)}function legacy_patchImmutableNode(e,t,n){const o=t.pop();if(void 0===o)switch(n.type){case\"LiveObject\":{if(!isJsonObject(e))throw new Error(\"Internal: received update on LiveObject but state was not an object\");const t=Object.assign({},e);for(const e in n.updates)if(\"update\"===n.updates[e]?.type){const o=n.node.get(e);void 0!==o&&(t[e]=lsonToJson(o))}else\"delete\"===n.updates[e]?.type&&delete t[e];return t}case\"LiveList\":{if(!Array.isArray(e))throw new Error(\"Internal: received update on LiveList but state was not an array\");let t=e.map((e=>e));for(const e of n.updates)\"set\"===e.type?t=t.map(((t,n)=>n===e.index?lsonToJson(e.item):t)):\"insert\"===e.type?e.index===t.length?t.push(lsonToJson(e.item)):t=[...t.slice(0,e.index),lsonToJson(e.item),...t.slice(e.index)]:\"delete\"===e.type?t.splice(e.index,1):\"move\"===e.type&&(t=e.previousIndex>e.index?[...t.slice(0,e.index),lsonToJson(e.item),...t.slice(e.index,e.previousIndex),...t.slice(e.previousIndex+1)]:[...t.slice(0,e.previousIndex),...t.slice(e.previousIndex+1,e.index+1),lsonToJson(e.item),...t.slice(e.index+1)]);return t}case\"LiveMap\":{if(!isJsonObject(e))throw new Error(\"Internal: received update on LiveMap but state was not an object\");const t=Object.assign({},e);for(const e in n.updates)if(\"update\"===n.updates[e]?.type){const o=n.node.get(e);void 0!==o&&(t[e]=lsonToJson(o))}else\"delete\"===n.updates[e]?.type&&delete t[e];return t}}if(Array.isArray(e)){const s=[...e];s[o]=legacy_patchImmutableNode(e[o],t,n);return s}if(isJsonObject(e)){const s=e[o];if(void 0===s)return e;{const i=e;return{...i,[o]:legacy_patchImmutableNode(s,t,n)}}}return e}function shallowArray(e,t){if(e.length!==t.length)return false;for(let n=0;n<e.length;n++)if(!Object.is(e[n],t[n]))return false;return true}function shallowObj(e,t){if(\"object\"!==typeof e||null===e||\"object\"!==typeof t||null===t||\"[object Object]\"!==Object.prototype.toString.call(e)||\"[object Object]\"!==Object.prototype.toString.call(t))return false;const n=Object.keys(e);return n.length===Object.keys(t).length&&n.every((n=>Object.prototype.hasOwnProperty.call(t,n)&&Object.is(e[n],t[n])))}function shallow(e,t){if(Object.is(e,t))return true;const n=Array.isArray(e);const o=Array.isArray(t);return n||o?!(!n||!o)&&shallowArray(e,t):shallowObj(e,t)}var he=(e=>{e[e.CLOSE_ABNORMAL=1006]=\"CLOSE_ABNORMAL\";e[e.INVALID_MESSAGE_FORMAT=4e3]=\"INVALID_MESSAGE_FORMAT\";e[e.NOT_ALLOWED=4001]=\"NOT_ALLOWED\";e[e.MAX_NUMBER_OF_MESSAGES_PER_SECONDS=4002]=\"MAX_NUMBER_OF_MESSAGES_PER_SECONDS\";e[e.MAX_NUMBER_OF_CONCURRENT_CONNECTIONS=4003]=\"MAX_NUMBER_OF_CONCURRENT_CONNECTIONS\";e[e.MAX_NUMBER_OF_MESSAGES_PER_DAY_PER_APP=4004]=\"MAX_NUMBER_OF_MESSAGES_PER_DAY_PER_APP\";e[e.MAX_NUMBER_OF_CONCURRENT_CONNECTIONS_PER_ROOM=4005]=\"MAX_NUMBER_OF_CONCURRENT_CONNECTIONS_PER_ROOM\";e[e.CLOSE_WITHOUT_RETRY=4999]=\"CLOSE_WITHOUT_RETRY\";return e})(he||{});detectDupes(e,t,n);export{Q as ClientMsgCode,F as CrdtType,W as LiveList,X as LiveMap,q as LiveObject,H as OpCode,Z as ServerMsgCode,he as WebsocketCloseCodes,asArrayWithLegacyMethods,asPos,assert,assertNever,b64decode,createClient,deprecate,deprecateIf,detectDupes,errorIf,Y as freeze,isChildCrdt,isJsonArray,isJsonObject,isJsonScalar,isPlainObject,isRootCrdt,legacy_patchImmutableObject,lsonToJson,makePosition,nn,patchLiveObjectKey,shallow,throwUsageError,toPlainLson,tryParseJson,withTimeout};\n\n//# sourceMappingURL=index.mjs.map", "import{detectDupes as e}from\"@liveblocks/core\";export{LiveList,LiveMap,LiveObject,createClient,shallow,toPlainLson}from\"@liveblocks/core\";var o=\"@liveblocks/client\";var i=\"1.1.6\";var l=\"esm\";e(o,i,l);\n\n//# sourceMappingURL=index.mjs.map", "import*as e from\"react\";var n=\"default\"in e?e.default:e;var u={};var o=n;function h(e,n){return e===n&&(0!==e||1/e===1/n)||e!==e&&n!==n}var a=\"function\"===typeof Object.is?Object.is:h,i=o.useState,c=o.useEffect,f=o.useLayoutEffect,s=o.useDebugValue;function q(e,n){var u=n(),o=i({inst:{value:u,getSnapshot:n}}),a=o[0].inst,d=o[1];f((function(){a.value=u;a.getSnapshot=n;r(a)&&d({inst:a})}),[e,u,n]);c((function(){r(a)&&d({inst:a});return e((function(){r(a)&&d({inst:a})}))}),[e]);s(u);return u}function r(e){var n=e.getSnapshot;e=e.value;try{var u=n();return!a(e,u)}catch(e){return!0}}function t(e,n){return n()}var d=\"undefined\"===typeof window||\"undefined\"===typeof window.document||\"undefined\"===typeof window.document.createElement?t:q;u.useSyncExternalStore=void 0!==o.useSyncExternalStore?o.useSyncExternalStore:d;const l=u.useSyncExternalStore;export{u as default,l as useSyncExternalStore};\n\n//# sourceMappingURL=index.js.map", "import*as e from\"react\";import*as r from\"use-sync-external-store/shim\";var t=\"default\"in e?e.default:e;var u=\"default\"in r?r.default:r;var n={};var l=t,i=u;function p(e,r){return e===r&&(0!==e||1/e===1/r)||e!==e&&r!==r}var o=\"function\"===typeof Object.is?Object.is:p,f=i.useSyncExternalStore,c=l.useRef,s=l.useEffect,v=l.useMemo,d=l.useDebugValue;n.useSyncExternalStoreWithSelector=function(e,r,t,u,n){var l=c(null);if(null===l.current){var i={hasValue:!1,value:null};l.current=i}else i=l.current;l=v((function(){function a(r){if(!f){f=!0;e=r;r=u(r);if(void 0!==n&&i.hasValue){var t=i.value;if(n(t,r))return l=t}return l=r}t=l;if(o(e,r))return t;var c=u(r);if(void 0!==n&&n(t,c))return t;e=r;return l=c}var e,l,f=!1,c=void 0===t?null:t;return[function(){return a(r())},null===c?void 0:function(){return a(c())}]}),[r,t,u,n]);var S=f(e,l[0],l[1]);s((function(){i.hasValue=!0;i.value=S}),[S]);d(S);return S};const S=n.useSyncExternalStoreWithSelector;export{n as default,S as useSyncExternalStoreWithSelector};\n\n//# sourceMappingURL=with-selector.js.map", "import{asArrayWithLegacyMethods as e,errorIf as t,deprecateIf as s,detectDupes as n}from\"@liveblocks/core\";import*as o from\"react\";import{useReducer as r,useRef as u}from\"react\";import{shallow as c}from\"@liveblocks/client\";export{shallow}from\"@liveblocks/client\";import{useSyncExternalStoreWithSelector as i}from\"use-sync-external-store/shim/with-selector.js\";var a=\"@liveblocks/react\";var l=\"1.1.6\";var d=\"esm\";function ClientSideSuspense(e){const[t,s]=o.useState(false);o.useEffect((()=>{s(true)}),[]);return o.createElement(o.Suspense,{fallback:e.fallback},t?e.children():e.fallback)}function useRerender(){const[,e]=r((e=>e+1),0);return e}function useInitial(e){return u(e).current}var noop=()=>{};var identity=e=>e;var missing_unstable_batchedUpdates=(e,t)=>`We noticed you\u2019re using React ${e}. Please pass unstable_batchedUpdates at the RoomProvider level until you\u2019re ready to upgrade to React 18:\\n\\n    import { unstable_batchedUpdates } from \"react-dom\";  // or \"react-native\"\\n\\n    <RoomProvider id=${JSON.stringify(t)} ... unstable_batchedUpdates={unstable_batchedUpdates}>\\n      ...\\n    </RoomProvider>\\n\\nWhy? Please see https://liveblocks.io/docs/guides/troubleshooting#stale-props-zombie-child for more information`;var f=\"You don\u2019t need to pass unstable_batchedUpdates to RoomProvider anymore, since you\u2019re on React 18+ already.\";function useSyncExternalStore(e,t,s){return i(e,t,s,identity)}var h=e([]);function getEmptyOthers(){return h}function makeMutationContext(e){const t=\"This mutation cannot be used until connected to the Liveblocks room\";return{get storage(){const s=e.getStorageSnapshot();if(null===s)throw new Error(t);return s},get self(){const s=e.getSelf();if(null===s)throw new Error(t);return s},get others(){const s=e.getOthers();if(!e.isSelfAware())throw new Error(t);return s},setMyPresence:e.updatePresence}}function createRoomContext(e){const n=o.createContext(null);function RoomProvider(r){const{id:u,initialPresence:c,initialStorage:i,unstable_batchedUpdates:a,shouldInitiallyConnect:l}=r;if(\"production\"!==process.env.NODE_ENV){if(!u)throw new Error(\"RoomProvider id property is required. For more information: https://liveblocks.io/docs/errors/liveblocks-react/RoomProvider-id-property-is-required\");if(\"string\"!==typeof u)throw new Error(\"RoomProvider id property should be a string.\");const e=parseInt(o.version)||1;const n=e<18;t(n&&void 0===r.unstable_batchedUpdates,missing_unstable_batchedUpdates(e,u));s(!n&&void 0!==r.unstable_batchedUpdates,f)}const d=useInitial({initialPresence:c,initialStorage:i,unstable_batchedUpdates:a,shouldInitiallyConnect:void 0===l?\"undefined\"!==typeof window:l});const[h,p]=o.useState((()=>e.enter(u,{initialPresence:d.initialPresence,initialStorage:d.initialStorage,shouldInitiallyConnect:d.shouldInitiallyConnect,unstable_batchedUpdates:d.unstable_batchedUpdates})));o.useEffect((()=>{p(e.enter(u,{initialPresence:d.initialPresence,initialStorage:d.initialStorage,shouldInitiallyConnect:d.shouldInitiallyConnect,unstable_batchedUpdates:d.unstable_batchedUpdates}));return()=>{e.leave(u)}}),[u,d]);return o.createElement(n.Provider,{value:h},r.children)}function connectionIdSelector(e){return e.map((e=>e.connectionId))}function useRoom(){const e=o.useContext(n);if(null===e)throw new Error(\"RoomProvider is missing from the react tree\");return e}function useStatus(){const e=useRoom();const t=e.events.status.subscribe;const s=e.getStatus;return useSyncExternalStore(t,s,s)}function useMyPresence(){const e=useRoom();const t=e.events.me.subscribe;const s=e.getPresence;const n=useSyncExternalStore(t,s,s);const o=e.updatePresence;return[n,o]}function useUpdateMyPresence(){return useRoom().updatePresence}function useOthers(e,t){const s=useRoom();const n=s.events.others.subscribe;const o=s.getOthers;const r=getEmptyOthers;return i(n,o,r,e??identity,t)}function useOthersConnectionIds(){return useOthers(connectionIdSelector,c)}function useOthersMapped(e,t){const s=o.useCallback((t=>t.map((t=>[t.connectionId,e(t)]))),[e]);const n=o.useCallback(((e,s)=>{const n=t??Object.is;return e.length===s.length&&e.every(((e,t)=>{const o=s[t];return e[0]===o[0]&&n(e[1],o[1])}))}),[t]);return useOthers(s,n)}const r=Symbol();function useOther(e,t,s){const n=o.useCallback((s=>{const n=s.find((t=>t.connectionId===e));return void 0!==n?t(n):r}),[e,t]);const u=o.useCallback(((e,t)=>{if(e===r||t===r)return e===t;const n=s??Object.is;return n(e,t)}),[s]);const c=useOthers(n,u);if(c===r)throw new Error(`No such other user with connection id ${e} exists`);return c}function useBroadcastEvent(){const e=useRoom();return o.useCallback(((t,s={shouldQueueEventIfNotReady:false})=>{e.broadcastEvent(t,s)}),[e])}function useLostConnectionListener(e){const t=useRoom();const s=o.useRef(e);o.useEffect((()=>{s.current=e}));o.useEffect((()=>t.events.lostConnection.subscribe((e=>s.current(e)))),[t])}function useErrorListener(e){const t=useRoom();const s=o.useRef(e);o.useEffect((()=>{s.current=e}));o.useEffect((()=>t.events.error.subscribe((e=>s.current(e)))),[t])}function useEventListener(e){const t=useRoom();const s=o.useRef(e);o.useEffect((()=>{s.current=e}));o.useEffect((()=>{const listener=e=>{s.current(e)};return t.events.customEvent.subscribe(listener)}),[t])}function useSelf(e,t){const s=useRoom();const n=o.useCallback((e=>{const t=s.events.me.subscribe(e);const n=s.events.connection.subscribe(e);return()=>{t();n()}}),[s]);const r=s.getSelf;const u=e??identity;const c=o.useCallback((e=>null!==e?u(e):null),[u]);const a=o.useCallback((()=>null),[]);return i(n,r,a,c,t)}function useMutableStorageRoot(){const e=useRoom();const t=e.events.storageDidLoad.subscribeOnce;const s=e.getStorageSnapshot;const n=o.useCallback((()=>null),[]);return useSyncExternalStore(t,s,n)}function useStorageRoot(){return[useMutableStorageRoot()]}function useHistory(){return useRoom().history}function useUndo(){return useHistory().undo}function useRedo(){return useHistory().redo}function useCanUndo(){const e=useRoom();const t=e.events.history.subscribe;const s=e.history.canUndo;return useSyncExternalStore(t,s,s)}function useCanRedo(){const e=useRoom();const t=e.events.history.subscribe;const s=e.history.canRedo;return useSyncExternalStore(t,s,s)}function useBatch(){return useRoom().batch}function useLegacyKey(e){const t=useRoom();const s=useMutableStorageRoot();const n=useRerender();o.useEffect((()=>{if(null===s)return;let o=s.get(e);function onRootChange(){const u=s.get(e);if(u!==o){r();o=u;r=t.subscribe(o,n);n()}}let r=t.subscribe(o,n);const u=t.subscribe(s,onRootChange);n();return()=>{u();r()}}),[s,t,e,n]);return null===s?null:s.get(e)}function useStorage(e,t){const s=useRoom();const n=useMutableStorageRoot();const r=o.useCallback((t=>null!==t?e(t):null),[e]);const u=o.useCallback((e=>null!==n?s.subscribe(n,e,{isDeep:true}):noop),[s,n]);const c=o.useCallback((()=>{if(null===n)return null;{const e=n;const t=e.toImmutable();return t}}),[n]);const a=o.useCallback((()=>null),[]);return i(u,c,a,r,t)}function ensureNotServerSide(){if(\"undefined\"===typeof window)throw new Error(\"You cannot use the Suspense version of this hook on the server side. Make sure to only call them on the client side.\\nFor tips, see https://liveblocks.io/docs/api-reference/liveblocks-react#suspense-avoid-ssr\")}function useSuspendUntilStorageLoaded(){const e=useRoom();if(null===e.getStorageSnapshot()){ensureNotServerSide();throw new Promise((t=>{e.events.storageDidLoad.subscribeOnce((()=>t()))}))}}function useSuspendUntilPresenceLoaded(){const e=useRoom();if(!e.isSelfAware()){ensureNotServerSide();throw new Promise((t=>{e.events.connection.subscribeOnce((()=>t()))}))}}function useMutation(e,t){const s=useRoom();return o.useMemo((()=>(...t)=>s.batch((()=>e(makeMutationContext(s),...t)))),[s,...t])}function useStorageSuspense(e,t){useSuspendUntilStorageLoaded();return useStorage(e,t)}function useSelfSuspense(e,t){useSuspendUntilPresenceLoaded();return useSelf(e,t)}function useOthersSuspense(e,t){useSuspendUntilPresenceLoaded();return useOthers(e,t)}function useOthersConnectionIdsSuspense(){useSuspendUntilPresenceLoaded();return useOthersConnectionIds()}function useOthersMappedSuspense(e,t){useSuspendUntilPresenceLoaded();return useOthersMapped(e,t)}function useOtherSuspense(e,t,s){useSuspendUntilPresenceLoaded();return useOther(e,t,s)}function useLegacyKeySuspense(e){useSuspendUntilStorageLoaded();return useLegacyKey(e)}return{RoomContext:n,RoomProvider:RoomProvider,useRoom:useRoom,useStatus:useStatus,useBatch:useBatch,useBroadcastEvent:useBroadcastEvent,useLostConnectionListener:useLostConnectionListener,useErrorListener:useErrorListener,useEventListener:useEventListener,useHistory:useHistory,useUndo:useUndo,useRedo:useRedo,useCanRedo:useCanRedo,useCanUndo:useCanUndo,useList:useLegacyKey,useMap:useLegacyKey,useObject:useLegacyKey,useStorageRoot:useStorageRoot,useStorage:useStorage,useSelf:useSelf,useMyPresence:useMyPresence,useUpdateMyPresence:useUpdateMyPresence,useOthers:useOthers,useOthersMapped:useOthersMapped,useOthersConnectionIds:useOthersConnectionIds,useOther:useOther,useMutation:useMutation,suspense:{RoomContext:n,RoomProvider:RoomProvider,useRoom:useRoom,useStatus:useStatus,useBatch:useBatch,useBroadcastEvent:useBroadcastEvent,useLostConnectionListener:useLostConnectionListener,useErrorListener:useErrorListener,useEventListener:useEventListener,useHistory:useHistory,useUndo:useUndo,useRedo:useRedo,useCanRedo:useCanRedo,useCanUndo:useCanUndo,useList:useLegacyKeySuspense,useMap:useLegacyKeySuspense,useObject:useLegacyKeySuspense,useStorageRoot:useStorageRoot,useStorage:useStorageSuspense,useSelf:useSelfSuspense,useMyPresence:useMyPresence,useUpdateMyPresence:useUpdateMyPresence,useOthers:useOthersSuspense,useOthersMapped:useOthersMappedSuspense,useOthersConnectionIds:useOthersConnectionIdsSuspense,useOther:useOtherSuspense,useMutation:useMutation}}}n(a,l,d);export{ClientSideSuspense,createRoomContext};\n\n//# sourceMappingURL=index.mjs.map"],
  "mappings": "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",
  "names": ["e", "t", "n", "o", "window", "global", "s", "i", "r", "error", "detectDupes", "a", "c", "d", "l", "makeEventSource", "pause", "unpause", "notify", "subscribe", "subscribeOnce", "waitUntil", "notifyOrBuffer", "clear", "count", "c", "makeEventSource", "d", "f", "_", "wrap", "e", "window", "t", "v", "m", "wrapWithTitle", "o", "y", "g", "assertNever", "e", "t", "nn", "e", "t", "distance", "o", "s", "a", "patterns", "S", "n", "E", "w", "makeEventSource", "c", "isPlainObject", "entries", "tryParseJson", "deepClone", "b64decode", "compact", "compactObject", "withTimeout", "newToLegacyStatus", "toNewConnectionStatus", "assertNever", "O", "k", "T", "I", "L", "C", "N", "P", "A", "nextBackoffDelay", "increaseBackoffDelay", "increaseBackoffDelayAggressively", "resetSuccessCount", "log", "m", "v", "logPrematureErrorOrCloseEvent", "isCloseEvent", "logCloseEvent", "D", "isCustomCloseEvent", "enableTracing", "log2", "defineConnectivityEvents", "i", "assign", "createConnectionStateMachine", "onSocketError", "onSocketClose", "onSocketMessage", "teardownSocket", "reject", "r", "window", "onNetworkOffline", "onNetworkBackOnline", "onVisibilityChange", "d", "l", "u", "U", "R", "x", "j", "M", "nthDigit", "K", "$", "makePosition", "between", "after", "before", "_between", "takeN", "J", "isPos", "convertToPos", "asPos", "H", "isAckOp", "HasParent", "e", "t", "asPos", "z", "Orphaned", "B", "assertNever", "F", "isRootCrdt", "isChildCrdt", "nanoid", "V", "_LiveRegister", "n", "s", "nn", "compareNodePosition", "o", "W", "_LiveList", "makePosition", "lsonToLiveNode", "i", "deserialize", "creationOpToLiveNode", "makeUpdate", "setDelta", "insertDelta", "deleteDelta", "moveDelta", "r", "HACK_addIntentAndDeletedIdToOperation", "a", "c", "liveNodeToLson", "G", "X", "_LiveMap", "isLiveNode", "q", "_LiveObject", "deserializeToLson", "isLiveStructure", "creationOpToLson", "d", "isSameNodeOrChildOf", "isLiveList", "isLiveMap", "isLiveObject", "isLiveRegister", "getTreesDiffOperations", "mergeObjectStorageUpdates", "entries", "mergeMapStorageUpdates", "mergeListStorageUpdates", "mergeStorageUpdates", "isJsonScalar", "e", "isJsonArray", "isJsonObject", "isTokenExpired", "t", "isStringList", "isMinimalTokenPayload", "isPlainObject", "parseAuthToken", "tryParseJson", "b64decode", "Q", "Z", "asArrayWithLegacyMethods", "merge", "o", "s", "i", "ee", "makeEventSource", "makeUser", "compactObject", "te", "compact", "ne", "oe", "se", "ie", "makeIdFactory", "userToTreeNode", "createRoom", "makeAuthDelegateForRoom", "makeCreateSocketDelegateForRoom", "U", "doNotBatchUpdates", "a", "c", "onStatusDidChange", "isStorageReadOnly", "p", "newToLegacyStatus", "d", "l", "handleConnectionLossEvent", "notify", "onDidConnect", "_", "refreshStorage", "flushNowOrSoon", "onDidDisconnect", "handleServerMessage", "u", "getConnectionId", "n", "mergeStorageUpdates", "addToUndoStack", "dispatchOps", "sendMessages", "httpSend", "v", "h", "f", "createOrUpdateRootFromMessage", "updateRoot", "q", "getTreesDiffOperations", "applyOps", "_addToRealUndoStack", "onHistoryChange", "nn", "applyOp", "notifyStorageStatus", "isAckOp", "isLiveList", "asPos", "updatePresence", "onUpdatePresenceMessage", "onUserLeftMessage", "onRoomStateMessage", "canUndo", "canRedo", "onUserJoinedMessage", "parseServerMessage", "parseServerMessages", "applyAndSendOps", "b", "g", "serializeBuffer", "updateYDoc", "broadcastEvent", "startLoadingStorage", "getStorageSnapshot", "getStorage", "fetchYDoc", "undo", "redo", "batch", "pauseHistory", "resumeHistory", "getStorageStatus", "S", "E", "w", "deepClone", "makeClassicSubscribeFn", "subscribeToLiveStructureDeeply", "isSameNodeOrChildOf", "subscribeToLiveStructureShallowly", "subscribe", "isRoomEventName", "assertNever", "isLiveNode", "P", "window", "fetchAuthEndpoint", "re", "ae", "ce", "de", "le", "ue", "pe", "getServerFromClientOptions", "createClient", "getThrottle", "getLostConnectionTimeout", "getRoom", "enter", "r", "prepareAuthentication", "buildLiveblocksHttpSendEndpoint", "global", "leave", "checkBounds", "buildLiveblocksPublicAuthorizeEndpoint", "shallowArray", "e", "t", "shallowObj", "n", "shallow", "o", "he", "detectDupes", "o", "i", "l", "detectDupes", "shim_exports", "__export", "u", "l", "n", "npm_react_18_2_exports", "e", "u", "o", "h", "a", "i", "c", "f", "s", "q", "d", "r", "t", "window", "l", "t", "npm_react_18_2_exports", "e", "u", "shim_exports", "n", "l", "i", "p", "r", "o", "f", "c", "s", "v", "d", "a", "S", "a", "l", "d", "useRerender", "e", "le", "useInitial", "pe", "noop", "identity", "useSyncExternalStore", "e", "t", "s", "S", "identity", "h", "asArrayWithLegacyMethods", "getEmptyOthers", "makeMutationContext", "createRoomContext", "n", "z", "RoomProvider", "r", "u", "c", "i", "a", "l", "d", "useInitial", "window", "p", "ye", "ue", "B", "connectionIdSelector", "useRoom", "re", "useStatus", "useMyPresence", "o", "useUpdateMyPresence", "useOthers", "useOthersConnectionIds", "shallow", "useOthersMapped", "te", "useOther", "useBroadcastEvent", "useLostConnectionListener", "pe", "useErrorListener", "useEventListener", "listener", "useSelf", "useMutableStorageRoot", "useStorageRoot", "useHistory", "useUndo", "useRedo", "useCanUndo", "useCanRedo", "useBatch", "useLegacyKey", "useRerender", "onRootChange", "useStorage", "noop", "ensureNotServerSide", "useSuspendUntilStorageLoaded", "useSuspendUntilPresenceLoaded", "useMutation", "se", "useStorageSuspense", "useSelfSuspense", "useOthersSuspense", "useOthersConnectionIdsSuspense", "useOthersMappedSuspense", "useOtherSuspense", "useLegacyKeySuspense", "detectDupes"]
}
