@dittolive/ditto
Version:
Ditto is a cross-platform SDK that allows apps to sync with and even without internet connectivity.
1 lines • 179 kB
JavaScript
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Ditto={})}(this,(function(e){"use strict";class KeepAlive{get isActive(){return null!==this.intervalID}constructor(){this.countsByID={},this.intervalID=null}retain(e){if(void 0===this.countsByID[e]&&(this.countsByID[e]=0),this.countsByID[e]+=1,null===this.intervalID){const e=2147483647;this.intervalID=setInterval((()=>{}),e),KeepAlive.finalizationRegistry.register(this,this.intervalID,this)}}release(e){if(void 0===this.countsByID[e])throw new Error(`Internal inconsistency, trying to release a keep-alive ID that hasn't been retained before or isn't tracked anymore: ${e}`);this.countsByID[e]-=1,0===this.countsByID[e]&&delete this.countsByID[e],0===Object.keys(this.countsByID).length&&(KeepAlive.finalizationRegistry.unregister(this),clearInterval(this.intervalID),this.intervalID=null)}currentIDs(){return Object.keys(this.countsByID)}countForID(e){var t;return null!==(t=this.countsByID[e])&&void 0!==t?t:null}}KeepAlive.finalizationRegistry=new FinalizationRegistry(clearInterval);class Observer{get token(){return this._token}constructor(e,t,n={}){this.observerManager=e,this._token=t,this.options=n,n.stopsWhenFinalized&&Observer.finalizationRegistry.register(this,{observerManager:e,token:t},this)}get isStopped(){return void 0!==this.token&&this.observerManager.hasObserver(this.token)}stop(){const e=this.token;e&&(delete this._token,Observer.finalizationRegistry.unregister(this),this.observerManager.removeObserver(e))}static finalize(e){const{observerManager:t,token:n}=e;t.removeObserver(n)}}Observer.finalizationRegistry=new FinalizationRegistry(Observer.finalize);const t=Symbol("privateConstructorToken");class Counter{get value(){return this._value}constructor(){this._value=0}static"@ditto.create"(e,n,r){const i=e?new MutableCounter(t):new Counter;return i.mutDoc=e,i.path=n,i._value=r,i}}class MutableCounter extends Counter{increment(e){const t=this.mutDoc,n=this.path;if(!t)throw new Error("Can't increment counter, only possible within the closure of a collection's update() method.");t.at(n)["@ditto.increment"](e),this._value+=e}constructor(){if(arguments[0]!==t)throw new Error("MutableCounter constructor is for internal use only.");super()}}const n="@ditto.ff82dae89821c5ab822a8b539056bce4";class Register{get value(){return this["@ditto.value"]}constructor(e){this["@ditto.value"]=e}static"@ditto.create"(e,t,r){const i=e?new MutableRegister(r,n):new Register(r);return i["@ditto.mutableDocument"]=e,i["@ditto.path"]=t,i["@ditto.value"]=r,i}}class MutableRegister extends Register{get value(){return super.value}set value(e){this.set(e)}set(e){const t=this["@ditto.mutableDocument"],n=this["@ditto.path"];t.at(n)["@ditto.set"](e),this["@ditto.value"]=e}constructor(e){if(arguments[1]!==n)throw new Error("MutableRegister constructor is for internal use only.");super(e)}}function to_string(e){return e.toString()}function from_string(e){return BigInt(e)}const r=Object.freeze({__proto__:null,from_string:from_string,is_number:function is_number(e){return"number"==typeof e},to_string:to_string,try_downsize:function try_downsize(e){switch(typeof e){case"bigint":if(-Number.MAX_SAFE_INTEGER<=e&&e<=Number.MAX_SAFE_INTEGER)return Number(e);case"number":return e;default:throw new Error(`number or bigint expected, got \`${e}\``)}}});const i=Object.freeze({__proto__:null,mk_send_ret:function mk_send_ret(){return function send_ret(e){return e}}});let o;const a="undefined"!=typeof TextDecoder?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};"undefined"!=typeof TextDecoder&&a.decode();let s=null;function getUint8ArrayMemory0(){return null!==s&&0!==s.byteLength||(s=new Uint8Array(o.memory.buffer)),s}function getStringFromWasm0(e,t){return e>>>=0,a.decode(getUint8ArrayMemory0().subarray(e,e+t))}function addToExternrefTable0(e){const t=o.__externref_table_alloc();return o.__wbindgen_export_2.set(t,e),t}function handleError(e,t){try{return e.apply(this,t)}catch(e){const t=addToExternrefTable0(e);o.__wbindgen_exn_store(t)}}let c=0;const l="undefined"!=typeof TextEncoder?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},u="function"==typeof l.encodeInto?function(e,t){return l.encodeInto(e,t)}:function(e,t){const n=l.encode(e);return t.set(n),{read:e.length,written:n.length}};function passStringToWasm0(e,t,n){if(void 0===n){const n=l.encode(e),r=t(n.length,1)>>>0;return getUint8ArrayMemory0().subarray(r,r+n.length).set(n),c=n.length,r}let r=e.length,i=t(r,1)>>>0;const o=getUint8ArrayMemory0();let a=0;for(;a<r;a++){const t=e.charCodeAt(a);if(t>127)break;o[i+a]=t}if(a!==r){0!==a&&(e=e.slice(a)),i=n(i,r,r=a+3*e.length,1)>>>0;const t=getUint8ArrayMemory0().subarray(i+a,i+r);a+=u(e,t).written,i=n(i,r,a,1)>>>0}return c=a,i}let d=null;function getDataViewMemory0(){return(null===d||!0===d.buffer.detached||void 0===d.buffer.detached&&d.buffer!==o.memory.buffer)&&(d=new DataView(o.memory.buffer)),d}function isLikeNone(e){return null==e}const f="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>{o.__wbindgen_export_6.get(e.dtor)(e.a,e.b)}));function makeMutClosure(e,t,n,r){const i={a:e,b:t,cnt:1,dtor:n},real=(...e)=>{i.cnt++;const t=i.a;i.a=0;try{return r(t,i.b,...e)}finally{0==--i.cnt?(o.__wbindgen_export_6.get(i.dtor)(t,i.b),f.unregister(i)):i.a=t}};return real.original=i,f.register(real,i,i),real}function debugString(e){const t=typeof e;if("number"==t||"boolean"==t||null==e)return`${e}`;if("string"==t)return`"${e}"`;if("symbol"==t){const t=e.description;return null==t?"Symbol":`Symbol(${t})`}if("function"==t){const t=e.name;return"string"==typeof t&&t.length>0?`Function(${t})`:"Function"}if(Array.isArray(e)){const t=e.length;let n="[";t>0&&(n+=debugString(e[0]));for(let r=1;r<t;r++)n+=", "+debugString(e[r]);return n+="]",n}const n=/\[object ([^\]]+)\]/.exec(toString.call(e));let r;if(!(n&&n.length>1))return toString.call(e);if(r=n[1],"Object"==r)try{return"Object("+JSON.stringify(e)+")"}catch(e){return"Object"}return e instanceof Error?`${e.name}: ${e.message}\n${e.stack}`:r}function takeFromExternrefTable0(e){const t=o.__wbindgen_export_2.get(e);return o.__externref_table_dealloc(e),t}function ditto_logger_set_custom_log_cb(e){const t=o.ditto_logger_set_custom_log_cb(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}function ditto_register_transport_condition_changed_callback(e,t){const n=o.ditto_register_transport_condition_changed_callback(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}function dittoffi_presence_set_connection_request_handler(e,t){const n=o.dittoffi_presence_set_connection_request_handler(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}function dittoffi_query_result_mutated_document_id_at(e,t){const n=o.dittoffi_query_result_mutated_document_id_at(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}function dittoffi_query_result_item_at(e,t){const n=o.dittoffi_query_result_item_at(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}function ditto_error_message(){const e=o.ditto_error_message();if(e[2])throw takeFromExternrefTable0(e[1]);return takeFromExternrefTable0(e[0])}function boxCStringIntoString(e){const t=o.boxCStringIntoString(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}function refCStringToString(e){const t=o.refCStringToString(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}function boxCBytesIntoBuffer(e){const t=o.boxCBytesIntoBuffer(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}function refCBytesIntoBuffer(e){const t=o.refCBytesIntoBuffer(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}function __wbg_adapter_34(e,t,n){o.closure4333_externref_shim(e,t,n)}function __wbg_adapter_37(e,t,n){o.closure4457_externref_shim(e,t,n)}function __wbg_adapter_40(e,t){o._dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h39f1de63b83eb400(e,t)}function __wbg_adapter_43(e,t,n){o.closure10081_externref_shim(e,t,n)}const h=["blob","arraybuffer"],g=["omit","same-origin","include"],_=["same-origin","no-cors","cors","navigate"];function __wbg_get_imports(){const e={wbg:{}};return e.wbg.__wbg_abort_775ef1d17fc65868=function(e){e.abort()},e.wbg.__wbg_append_299d5d48292c0495=function(){return handleError((function(e,t,n,r,i){e.append(getStringFromWasm0(t,n),getStringFromWasm0(r,i))}),arguments)},e.wbg.__wbg_append_8c7dd8d641a5f01b=function(){return handleError((function(e,t,n,r,i){e.append(getStringFromWasm0(t,n),getStringFromWasm0(r,i))}),arguments)},e.wbg.__wbg_append_b2d1fc16de2a0e81=function(){return handleError((function(e,t,n,r,i,o){e.append(getStringFromWasm0(t,n),r,getStringFromWasm0(i,o))}),arguments)},e.wbg.__wbg_append_b44785ebeb668479=function(){return handleError((function(e,t,n,r){e.append(getStringFromWasm0(t,n),r)}),arguments)},e.wbg.__wbg_apply_36be6a55257c99bf=function(){return handleError((function(e,t,n){return e.apply(t,n)}),arguments)},e.wbg.__wbg_arrayBuffer_d1b44c4390db422f=function(){return handleError((function(e){return e.arrayBuffer()}),arguments)},e.wbg.__wbg_buffer_609cc3eee51ed158=function(e){return e.buffer},e.wbg.__wbg_call_672a4d21634d4a24=function(){return handleError((function(e,t){return e.call(t)}),arguments)},e.wbg.__wbg_call_7cccdd69e0791ae2=function(){return handleError((function(e,t,n){return e.call(t,n)}),arguments)},e.wbg.__wbg_clearInterval_d0ff292406f98cc3=function(e){return clearInterval(e)},e.wbg.__wbg_clearTimeout_96804de0ab838f26=function(e){return clearTimeout(e)},e.wbg.__wbg_close_2893b7d056a0627d=function(){return handleError((function(e){e.close()}),arguments)},e.wbg.__wbg_code_cfd8f6868bdaed9b=function(e){return e.code},e.wbg.__wbg_code_f4ec1e6e2e1b0417=function(e){return e.code},e.wbg.__wbg_crypto_ed58b8e10a292839=function(e){return e.crypto},e.wbg.__wbg_data_432d9c3df2630942=function(e){return e.data},e.wbg.__wbg_done_769e5ede4b31c67b=function(e){return e.done},e.wbg.__wbg_error_7534b8e9a36f1ab4=function(e,t){let n,r;try{n=e,r=t,console.error(getStringFromWasm0(e,t))}finally{o.__wbindgen_free(n,r,1)}},e.wbg.__wbg_fetch_03b6c973bb6da9b8=function(e){return fetch(e)},e.wbg.__wbg_fetch_509096533071c657=function(e,t){return e.fetch(t)},e.wbg.__wbg_fromstring_de5470cadd25e572=function(e,t){return from_string(getStringFromWasm0(e,t))},e.wbg.__wbg_getRandomValues_bcb4912f16000dc4=function(){return handleError((function(e,t){e.getRandomValues(t)}),arguments)},e.wbg.__wbg_getTime_46267b1c24877e30=function(e){return e.getTime()},e.wbg.__wbg_getTimezoneOffset_6b5752021c499c47=function(e){return e.getTimezoneOffset()},e.wbg.__wbg_get_67b2ba62fc30de12=function(){return handleError((function(e,t){return Reflect.get(e,t)}),arguments)},e.wbg.__wbg_getelement_fd3f268fc32b8d19=function(e,t){return function get_element(e,t){return e[t]}(e,t>>>0)},e.wbg.__wbg_has_a5ea9117f258a0ec=function(){return handleError((function(e,t){return Reflect.has(e,t)}),arguments)},e.wbg.__wbg_headers_9cb51cfd2ac780a4=function(e){return e.headers},e.wbg.__wbg_instanceof_ArrayBuffer_e14585432e3737fc=function(e){let t;try{t=e instanceof ArrayBuffer}catch(e){t=!1}return t},e.wbg.__wbg_instanceof_Blob_ca721ef3bdab15d1=function(e){let t;try{t=e instanceof Blob}catch(e){t=!1}return t},e.wbg.__wbg_instanceof_Function_07c665125a9d8cfc=function(e){let t;try{t=e instanceof Function}catch(e){t=!1}return t},e.wbg.__wbg_instanceof_Object_7f2dcef8f78644a4=function(e){let t;try{t=e instanceof Object}catch(e){t=!1}return t},e.wbg.__wbg_instanceof_Response_f2cc20d9f7dfd644=function(e){let t;try{t=e instanceof Response}catch(e){t=!1}return t},e.wbg.__wbg_instanceof_Uint8Array_17156bcf118086a9=function(e){let t;try{t=e instanceof Uint8Array}catch(e){t=!1}return t},e.wbg.__wbg_iterator_9a24c88df860dc65=function(){return Symbol.iterator},e.wbg.__wbg_length_a446193dc22c12f8=function(e){return e.length},e.wbg.__wbg_log_4dcc98b185543bcb=function(e,t){let n,r;try{n=e,r=t,console.log(getStringFromWasm0(e,t))}finally{o.__wbindgen_free(n,r,1)}},e.wbg.__wbg_msCrypto_0a36e2ec3a343d26=function(e){return e.msCrypto},e.wbg.__wbg_new0_f788a2397c7ca929=function(){return new Date},e.wbg.__wbg_new_018dcc2d6c8c2f6a=function(){return handleError((function(){return new Headers}),arguments)},e.wbg.__wbg_new_23a2665fac83c611=function(e,t){try{var n={a:e,b:t};const r=new Promise(((e,t)=>{const r=n.a;n.a=0;try{return function __wbg_adapter_455(e,t,n,r){o.closure10127_externref_shim(e,t,n,r)}(r,n.b,e,t)}finally{n.a=r}}));return r}finally{n.a=n.b=0}},e.wbg.__wbg_new_31a97dac4f10fab7=function(e){return new Date(e)},e.wbg.__wbg_new_405e22f390576ce2=function(){return new Object},e.wbg.__wbg_new_78feb108b6472713=function(){return new Array},e.wbg.__wbg_new_8a6f238a6ece86ea=function(){return new Error},e.wbg.__wbg_new_92c54fc74574ef55=function(){return handleError((function(e,t){return new WebSocket(getStringFromWasm0(e,t))}),arguments)},e.wbg.__wbg_new_9fd39a253424609a=function(){return handleError((function(){return new FormData}),arguments)},e.wbg.__wbg_new_a12002a7f91c75be=function(e){return new Uint8Array(e)},e.wbg.__wbg_new_c68d7209be747379=function(e,t){return new Error(getStringFromWasm0(e,t))},e.wbg.__wbg_new_cdd9942127fcb1fd=function(e,t){return new Error(getStringFromWasm0(e,t))},e.wbg.__wbg_new_e25e5aab09ff45db=function(){return handleError((function(){return new AbortController}),arguments)},e.wbg.__wbg_newnoargs_105ed471475aaf50=function(e,t){return new Function(getStringFromWasm0(e,t))},e.wbg.__wbg_newwithbyteoffsetandlength_d97e637ebe145a9a=function(e,t,n){return new Uint8Array(e,t>>>0,n>>>0)},e.wbg.__wbg_newwithlength_a381634e90c276d4=function(e){return new Uint8Array(e>>>0)},e.wbg.__wbg_newwithstrandinit_06c535e0a867c635=function(){return handleError((function(e,t,n){return new Request(getStringFromWasm0(e,t),n)}),arguments)},e.wbg.__wbg_newwithstrsequence_6e9d6479e1cf978d=function(){return handleError((function(e,t,n){return new WebSocket(getStringFromWasm0(e,t),n)}),arguments)},e.wbg.__wbg_newwithu8arraysequenceandoptions_068570c487f69127=function(){return handleError((function(e,t){return new Blob(e,t)}),arguments)},e.wbg.__wbg_newwithyearmonthdayhrminsec_72c204d952ef4426=function(e,t,n,r,i,o){return new Date(e>>>0,t,n,r,i,o)},e.wbg.__wbg_next_25feadfc0913fea9=function(e){return e.next},e.wbg.__wbg_next_6574e1a8a62d1055=function(){return handleError((function(e){return e.next()}),arguments)},e.wbg.__wbg_node_02999533c4ea02e3=function(e){return e.node},e.wbg.__wbg_now_807e54c39636c349=function(){return Date.now()},e.wbg.__wbg_now_d18023d54d4e5500=function(e){return e.now()},e.wbg.__wbg_process_5c1d670bc53614b8=function(e){return e.process},e.wbg.__wbg_push_737cfc8c1432c2c6=function(e,t){return e.push(t)},e.wbg.__wbg_queueMicrotask_97d92b4fcc8a61c5=function(e){queueMicrotask(e)},e.wbg.__wbg_queueMicrotask_d3219def82552485=function(e){return e.queueMicrotask},e.wbg.__wbg_randomFillSync_ab2cfe79ebbf2740=function(){return handleError((function(e,t){e.randomFillSync(t)}),arguments)},e.wbg.__wbg_readyState_7ef6e63c349899ed=function(e){return e.readyState},e.wbg.__wbg_reason_49f1cede8bcf23dd=function(e,t){const n=passStringToWasm0(t.reason,o.__wbindgen_malloc,o.__wbindgen_realloc),r=c;getDataViewMemory0().setInt32(e+4,r,!0),getDataViewMemory0().setInt32(e+0,n,!0)},e.wbg.__wbg_require_79b1e9274cde3c87=function(){return handleError((function(){return module.require}),arguments)},e.wbg.__wbg_resolve_4851785c9c5f573d=function(e){return Promise.resolve(e)},e.wbg.__wbg_send_0293179ba074ffb4=function(){return handleError((function(e,t,n){e.send(getStringFromWasm0(t,n))}),arguments)},e.wbg.__wbg_send_fc0c204e8a1757f4=function(){return handleError((function(e,t,n){e.send(function getArrayU8FromWasm0(e,t){return e>>>=0,getUint8ArrayMemory0().subarray(e/1,e/1+t)}(t,n))}),arguments)},e.wbg.__wbg_setInterval_bede69d6c8f41bb4=function(){return handleError((function(e,t){return setInterval(e,t)}),arguments)},e.wbg.__wbg_setTimeout_eefe7f4c234b0c6b=function(){return handleError((function(e,t){return setTimeout(e,t)}),arguments)},e.wbg.__wbg_set_65595bdd868b3009=function(e,t,n){e.set(t,n>>>0)},e.wbg.__wbg_set_bb8cecf6a62b9f46=function(){return handleError((function(e,t,n){return Reflect.set(e,t,n)}),arguments)},e.wbg.__wbg_setbinaryType_92fa1ffd873b327c=function(e,t){e.binaryType=h[t]},e.wbg.__wbg_setbody_5923b78a95eedf29=function(e,t){e.body=t},e.wbg.__wbg_setcredentials_c3a22f1cd105a2c6=function(e,t){e.credentials=g[t]},e.wbg.__wbg_setheaders_834c0bdb6a8949ad=function(e,t){e.headers=t},e.wbg.__wbg_setmethod_3c5280fe5d890842=function(e,t,n){e.method=getStringFromWasm0(t,n)},e.wbg.__wbg_setmode_5dc300b865044b65=function(e,t){e.mode=_[t]},e.wbg.__wbg_setonclose_14fc475a49d488fc=function(e,t){e.onclose=t},e.wbg.__wbg_setonerror_8639efe354b947cd=function(e,t){e.onerror=t},e.wbg.__wbg_setonmessage_6eccab530a8fb4c7=function(e,t){e.onmessage=t},e.wbg.__wbg_setonopen_2da654e1f39745d5=function(e,t){e.onopen=t},e.wbg.__wbg_setsignal_75b21ef3a81de905=function(e,t){e.signal=t},e.wbg.__wbg_settype_39ed370d3edd403c=function(e,t,n){e.type=getStringFromWasm0(t,n)},e.wbg.__wbg_signal_aaf9ad74119f20a4=function(e){return e.signal},e.wbg.__wbg_stack_0ed75d68575b0f3c=function(e,t){const n=passStringToWasm0(t.stack,o.__wbindgen_malloc,o.__wbindgen_realloc),r=c;getDataViewMemory0().setInt32(e+4,r,!0),getDataViewMemory0().setInt32(e+0,n,!0)},e.wbg.__wbg_stack_5184e86c2ee98052=function(e,t){const n=passStringToWasm0(t.stack,o.__wbindgen_malloc,o.__wbindgen_realloc),r=c;getDataViewMemory0().setInt32(e+4,r,!0),getDataViewMemory0().setInt32(e+0,n,!0)},e.wbg.__wbg_static_accessor_GLOBAL_88a902d13a557d07=function(){const e="undefined"==typeof global?null:global;return isLikeNone(e)?0:addToExternrefTable0(e)},e.wbg.__wbg_static_accessor_GLOBAL_THIS_56578be7e9f832b0=function(){const e="undefined"==typeof globalThis?null:globalThis;return isLikeNone(e)?0:addToExternrefTable0(e)},e.wbg.__wbg_static_accessor_SELF_37c5d418e4bf5819=function(){const e="undefined"==typeof self?null:self;return isLikeNone(e)?0:addToExternrefTable0(e)},e.wbg.__wbg_static_accessor_WINDOW_5de37043a91a9c40=function(){const e="undefined"==typeof window?null:window;return isLikeNone(e)?0:addToExternrefTable0(e)},e.wbg.__wbg_status_f6360336ca686bf0=function(e){return e.status},e.wbg.__wbg_stringify_f7ed6987935b4a24=function(){return handleError((function(e){return JSON.stringify(e)}),arguments)},e.wbg.__wbg_subarray_aa9065fa9dc5df96=function(e,t,n){return e.subarray(t>>>0,n>>>0)},e.wbg.__wbg_then_44b73946d2fb3e7d=function(e,t){return e.then(t)},e.wbg.__wbg_then_48b406749878a531=function(e,t,n){return e.then(t,n)},e.wbg.__wbg_tostring_da980fc4fe2711a0=function(e,t){const n=passStringToWasm0(to_string(t),o.__wbindgen_malloc,o.__wbindgen_realloc),r=c;getDataViewMemory0().setInt32(e+4,r,!0),getDataViewMemory0().setInt32(e+0,n,!0)},e.wbg.__wbg_typeof_2e6e8f97a58dc821=function(e,t){const n=passStringToWasm0(function typeof_(e){return typeof e}(t),o.__wbindgen_malloc,o.__wbindgen_realloc),r=c;getDataViewMemory0().setInt32(e+4,r,!0),getDataViewMemory0().setInt32(e+0,n,!0)},e.wbg.__wbg_url_ae10c34ca209681d=function(e,t){const n=passStringToWasm0(t.url,o.__wbindgen_malloc,o.__wbindgen_realloc),r=c;getDataViewMemory0().setInt32(e+4,r,!0),getDataViewMemory0().setInt32(e+0,n,!0)},e.wbg.__wbg_url_ce9ab75bf9627ae4=function(e,t){const n=passStringToWasm0(t.url,o.__wbindgen_malloc,o.__wbindgen_realloc),r=c;getDataViewMemory0().setInt32(e+4,r,!0),getDataViewMemory0().setInt32(e+0,n,!0)},e.wbg.__wbg_valueOf_7392193dd78c6b97=function(e){return e.valueOf()},e.wbg.__wbg_valueOf_fdbb54fcdfe33477=function(e){return e.valueOf()},e.wbg.__wbg_value_cd1ffa7b1ab794f1=function(e){return e.value},e.wbg.__wbg_versions_c71aa1626a93e0a1=function(e){return e.versions},e.wbg.__wbg_wasClean_605b4fd66d44354a=function(e){return e.wasClean},e.wbg.__wbindgen_cb_drop=function(e){const t=e.original;if(1==t.cnt--)return t.a=0,!0;return!1},e.wbg.__wbindgen_closure_wrapper13115=function(e,t,n){return makeMutClosure(e,t,4334,__wbg_adapter_34)},e.wbg.__wbindgen_closure_wrapper13285=function(e,t,n){return makeMutClosure(e,t,4458,__wbg_adapter_37)},e.wbg.__wbindgen_closure_wrapper26917=function(e,t,n){return makeMutClosure(e,t,9534,__wbg_adapter_40)},e.wbg.__wbindgen_closure_wrapper28875=function(e,t,n){return makeMutClosure(e,t,10082,__wbg_adapter_43)},e.wbg.__wbindgen_debug_string=function(e,t){const n=passStringToWasm0(debugString(t),o.__wbindgen_malloc,o.__wbindgen_realloc),r=c;getDataViewMemory0().setInt32(e+4,r,!0),getDataViewMemory0().setInt32(e+0,n,!0)},e.wbg.__wbindgen_error_new=function(e,t){return new Error(getStringFromWasm0(e,t))},e.wbg.__wbindgen_init_externref_table=function(){const e=o.__wbindgen_export_2,t=e.grow(4);e.set(0,void 0),e.set(t+0,void 0),e.set(t+1,null),e.set(t+2,!0),e.set(t+3,!1)},e.wbg.__wbindgen_is_function=function(e){return"function"==typeof e},e.wbg.__wbindgen_is_null=function(e){return null===e},e.wbg.__wbindgen_is_object=function(e){return"object"==typeof e&&null!==e},e.wbg.__wbindgen_is_string=function(e){return"string"==typeof e},e.wbg.__wbindgen_is_undefined=function(e){return void 0===e},e.wbg.__wbindgen_memory=function(){return o.memory},e.wbg.__wbindgen_number_new=function(e){return e},e.wbg.__wbindgen_string_get=function(e,t){const n="string"==typeof t?t:void 0;var r=isLikeNone(n)?0:passStringToWasm0(n,o.__wbindgen_malloc,o.__wbindgen_realloc),i=c;getDataViewMemory0().setInt32(e+4,i,!0),getDataViewMemory0().setInt32(e+0,r,!0)},e.wbg.__wbindgen_string_new=function(e,t){return getStringFromWasm0(e,t)},e.wbg.__wbindgen_throw=function(e,t){throw new Error(getStringFromWasm0(e,t))},e["./snippets/napi-dispatcher-wasm-2f83e9bddb5a9c18/inline0.js"]=r,e["./snippets/safer-ffi-bece3b9eaa5b1be9/inline0.js"]=i,e}async function init$2(e){if(void 0!==o)return o;if(void 0!==e&&(Object.getPrototypeOf(e)===Object.prototype?({module_or_path:e}=e):console.warn("using deprecated parameters for the initialization function; pass a single object instead")),void 0===e)throw new Error("Can't load ditto.wasm, expected module to be provided at initialization time but got nothing.");const t=__wbg_get_imports();("string"==typeof e||"function"==typeof Request&&e instanceof Request||"function"==typeof URL&&e instanceof URL)&&(e=fetch(e));const{instance:n,module:r}=await async function __wbg_load(e,t){if("function"==typeof Response&&e instanceof Response){if("function"==typeof WebAssembly.instantiateStreaming)try{return await WebAssembly.instantiateStreaming(e,t)}catch(t){if("application/wasm"==e.headers.get("Content-Type"))throw t;console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",t)}const n=await e.arrayBuffer();return await WebAssembly.instantiate(n,t)}{const n=await WebAssembly.instantiate(e,t);return n instanceof WebAssembly.Instance?{instance:n,module:e}:n}}(await e,t);return function __wbg_finalize_init(e,t){return o=e.exports,init$2.__wbindgen_wasm_module=t,d=null,s=null,o.__wbindgen_start(),o}(n,r)}const m=new RegExp(/^<.*?>\s*/);class DittoFFIError extends Error{constructor(e,t,n){const r=function ffiErrorMessage(){return boxCStringIntoString(ditto_error_message())}();super(t||r||n),this.code=e}}function throwOnErrorResult(e,t){if(null!==e){let n,r;try{n=function dittoffi_error_code(e){const t=o.dittoffi_error_code(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e),r=boxCStringIntoString(function dittoffi_error_description(e){const t=o.dittoffi_error_description(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e)),function dittoffi_error_free(e){const t=o.dittoffi_error_free(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e)}catch(e){throw new DittoFFIError(-1,`Failed to retrieve Ditto core error message: ${e.message}`)}throw r=null==r?`${t}() failed with error code: ${n}`:r.replace(m,""),new DittoFFIError(n,r)}}const b="_ditto_internal_type_jkb12973t4b",w="_value";var y;function differNew(){return ensureInitialized(),function dittoffi_differ_new(){const e=o.dittoffi_differ_new();if(e[2])throw takeFromExternrefTable0(e[1]);return takeFromExternrefTable0(e[0])}()}function differDiff(e,t){return ensureInitialized(),function dittoffi_differ_diff(e,t){const n=o.dittoffi_differ_diff(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}(e,t)}function dittoPointerToStorePointer(e){return{addr:e.addr,type:"dittoffi_store_t const *"}}function documentSetCBORWithTimestamp(e,t,n,r){ensureInitialized();const i=function ditto_document_set_cbor_with_timestamp(e,t,n,r){const i=o.ditto_document_set_cbor_with_timestamp(e,t,n,r);if(i[2])throw takeFromExternrefTable0(i[1]);return takeFromExternrefTable0(i[0])}(e,bytesFromString(t),n,r);if(0!==i)throw new Error(errorMessage()||`ditto_document_set_cbor_with_timestamp() failed with error code: ${i}`)}function documentSetCBOR(e,t,n){ensureInitialized();const r=function ditto_document_set_cbor(e,t,n){const r=o.ditto_document_set_cbor(e,t,n);if(r[2])throw takeFromExternrefTable0(r[1]);return takeFromExternrefTable0(r[0])}(e,bytesFromString(t),n);if(0!==r)throw new Error(errorMessage()||`ditto_document_set_cbor() failed with error code: ${r}`)}function documentID(e){ensureInitialized();return boxCBytesIntoBuffer(function ditto_document_id(e){const t=o.ditto_document_id(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e))}function documentGetCBORWithPathType(e,t,n){ensureInitialized();const r=function ditto_document_get_cbor_with_path_type(e,t,n){const r=o.ditto_document_get_cbor_with_path_type(e,t,n);if(r[2])throw takeFromExternrefTable0(r[1]);return takeFromExternrefTable0(r[0])}(e,bytesFromString(t),n);return{statusCode:r.status_code,cbor:boxCBytesIntoBuffer(r.cbor)}}function documentRemove(e,t){ensureInitialized();const n=function ditto_document_remove(e,t){const n=o.ditto_document_remove(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}(e,bytesFromString(t));if(0!==n)throw new Error(errorMessage()||`ditto_document_remove() failed with error code: ${n}`)}function documentIncrementCounter(e,t,n){ensureInitialized();const r=function ditto_document_increment_counter(e,t,n){const r=o.ditto_document_increment_counter(e,t,n);if(r[2])throw takeFromExternrefTable0(r[1]);return takeFromExternrefTable0(r[0])}(e,bytesFromString(t),n);if(0!==r)throw new Error(errorMessage()||`ditto_document_increment_counter() failed with error code: ${r}`)}function documentFree(e){ensureInitialized(),function ditto_document_free(e){const t=o.ditto_document_free(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e)}function documentIDQueryCompatible(e,t){ensureInitialized();return boxCStringIntoString(function ditto_document_id_query_compatible(e,t){const n=o.ditto_document_id_query_compatible(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}(e,t))}function validateDocumentID(e){ensureInitialized();return boxCBytesIntoBuffer(function withOutBoxCBytes(e){const t=o.withOutBoxCBytes(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}((t=>{const n=function ditto_validate_document_id(e,t){const n=o.ditto_validate_document_id(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}(e,t);if(0!==n)throw new Error(errorMessage()||`ditto_validate_document_id() failed with error code: ${n}`);return t})))}async function collectionGet(e,t,n,r){ensureInitialized();const i=bytesFromString(t),{status_code:a,document:s}=await function ditto_collection_get(e,t,n,r){const i=o.ditto_collection_get(e,t,n,r);if(i[2])throw takeFromExternrefTable0(i[1]);return takeFromExternrefTable0(i[0])}(e,i,n,r);if(a===v)return null;if(0!==a)throw new Error(errorMessage()||`ditto_collection_get() failed with error code: ${a}`);return s}async function collectionGetWithWriteTransaction(e,t,n,r){ensureInitialized();const i=bytesFromString(t),{status_code:a,document:s}=await function ditto_collection_get_with_write_transaction(e,t,n,r){const i=o.ditto_collection_get_with_write_transaction(e,t,n,r);if(i[2])throw takeFromExternrefTable0(i[1]);return takeFromExternrefTable0(i[0])}(e,i,n,r);if(a===v)return null;if(0!==a)throw new Error(errorMessage()||`ditto_collection_get_with_write_transaction() failed with error code: ${a}`);return s}async function collectionInsertValue(e,t,n,r,i){ensureInitialized();const a=bytesFromString(t);let s;switch(r){case"merge":s="Merge";break;case"insertIfAbsent":s="InsertIfAbsent";break;case"insertDefaultIfAbsent":s="InsertDefaultIfAbsent";break;case"updateDifferentValues":s="UpdateDifferentValues";break;default:throw new Error(`Unsupported write strategy '${r}' provided.`)}const{status_code:c,id:l}=await function ditto_collection_insert_value(e,t,n,r,i,a){const s=o.ditto_collection_insert_value(e,t,n,r,i,a);if(s[2])throw takeFromExternrefTable0(s[1]);return takeFromExternrefTable0(s[0])}(e,a,n,s,null,null!=i?i:null);if(0!==c)throw new Error(errorMessage()||`ditto_collection_insert_value() failed with error code: ${c}`);return boxCBytesIntoBuffer(l)}async function collectionRemove(e,t,n,r){ensureInitialized();const i=bytesFromString(t),{status_code:a,bool_value:s}=await function ditto_collection_remove(e,t,n,r){const i=o.ditto_collection_remove(e,t,n,r);if(i[2])throw takeFromExternrefTable0(i[1]);return takeFromExternrefTable0(i[0])}(e,i,n,r);if(0!==a)throw new Error(errorMessage()||`ditto_collection_remove() failed with error code: ${a}`);return s}async function collectionEvict(e,t,n,r){ensureInitialized();const i=bytesFromString(t),{status_code:a,bool_value:s}=await function ditto_collection_evict(e,t,n,r){const i=o.ditto_collection_evict(e,t,n,r);if(i[2])throw takeFromExternrefTable0(i[1]);return takeFromExternrefTable0(i[0])}(e,i,n,r);if(0!==a)throw new Error(errorMessage()||`ditto_collection_evict() failed with error code: ${a}`);return s}async function collectionUpdate(e,t,n,r){ensureInitialized();const i=bytesFromString(t),a=await function ditto_collection_update(e,t,n,r){const i=o.ditto_collection_update(e,t,n,r);if(i[2])throw takeFromExternrefTable0(i[1]);return takeFromExternrefTable0(i[0])}(e,i,n,r);if(0!==a)throw new Error(errorMessage()||`ditto_collection_update() failed with error code: ${a}`)}async function collectionUpdateMultiple(e,t,n,r){ensureInitialized();const i=bytesFromString(t),a=function jsDocsToCDocs(e){const t=o.jsDocsToCDocs(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(r),s=await function ditto_collection_update_multiple(e,t,n,r){const i=o.ditto_collection_update_multiple(e,t,n,r);if(i[2])throw takeFromExternrefTable0(i[1]);return takeFromExternrefTable0(i[0])}(e,i,n,a);if(0!==s)throw new Error(errorMessage()||`ditto_collection_update_multiple() failed with error code: ${s}`)}async function collectionExecQueryStr(e,t,n,r,i,a,s,c){ensureInitialized();const l=bytesFromString(t),u=bytesFromString(r);return await function ditto_collection_exec_query_str(e,t,n,r,i,a,s,c){const l=o.ditto_collection_exec_query_str(e,t,n,r,i,a,s,c);if(l[2])throw takeFromExternrefTable0(l[1]);return takeFromExternrefTable0(l[0])}(e,l,n,u,i,a,s,c)}async function collectionRemoveQueryStr(e,t,n,r,i,a,s,c){ensureInitialized();const l=bytesFromString(t),u=bytesFromString(r);return await function ditto_collection_remove_query_str(e,t,n,r,i,a,s,c){const l=o.ditto_collection_remove_query_str(e,t,n,r,i,a,s,c);if(l[2])throw takeFromExternrefTable0(l[1]);return takeFromExternrefTable0(l[0])}(e,l,n,u,i,a,s,c)}async function collectionEvictQueryStr(e,t,n,r,i,a,s,c){ensureInitialized();const l=bytesFromString(t),u=bytesFromString(r);return await function ditto_collection_evict_query_str(e,t,n,r,i,a,s,c){const l=o.ditto_collection_evict_query_str(e,t,n,r,i,a,s,c);if(l[2])throw takeFromExternrefTable0(l[1]);return takeFromExternrefTable0(l[0])}(e,l,n,u,i,a,s,c)}async function tryExecStatement(e,t,n){ensureInitialized();const r=bytesFromString(t),i=await function dittoffi_try_exec_statement(e,t,n){const r=o.dittoffi_try_exec_statement(e,t,n);if(r[2])throw takeFromExternrefTable0(r[1]);return takeFromExternrefTable0(r[0])}(e,r,n);return throwOnErrorResult(i.error,"dittoffi_try_exec_statement"),i.success}function addSubscription(e,t,n,r,i,a,s){ensureInitialized();const c=function ditto_add_subscription(e,t,n,r,i,a,s){const c=o.ditto_add_subscription(e,t,n,r,i,a,s);if(c[2])throw takeFromExternrefTable0(c[1]);return takeFromExternrefTable0(c[0])}(e,bytesFromString(t),bytesFromString(n),r,i,a,s);if(0!==c)throw new Error(errorMessage()||`ditto_add_subscription() failed with error code: ${c}`)}function removeSubscription(e,t,n,r,i,a,s){ensureInitialized();const c=function ditto_remove_subscription(e,t,n,r,i,a,s){const c=o.ditto_remove_subscription(e,t,n,r,i,a,s);if(c[2])throw takeFromExternrefTable0(c[1]);return takeFromExternrefTable0(c[0])}(e,bytesFromString(t),bytesFromString(n),r,i,a,s);if(0!==c)throw new Error(errorMessage()||`ditto_remove_subscription() failed with error code: ${c}`)}function tryAddSyncSubscription(e,t,n){ensureInitialized();const r=function dittoffi_try_add_sync_subscription(e,t,n){const r=o.dittoffi_try_add_sync_subscription(e,t,n);if(r[2])throw takeFromExternrefTable0(r[1]);return takeFromExternrefTable0(r[0])}(e,bytesFromString(t),n);throwOnErrorResult(r.error,"dittoffi_try_add_sync_subscription")}function tryRemoveSyncSubscription(e,t,n){ensureInitialized();const r=function dittoffi_try_remove_sync_subscription(e,t,n){const r=o.dittoffi_try_remove_sync_subscription(e,t,n);if(r[2])throw takeFromExternrefTable0(r[1]);return takeFromExternrefTable0(r[0])}(e,bytesFromString(t),n);throwOnErrorResult(r.error,"dittoffi_try_remove_sync_subscription")}function queryResultItems(e){ensureInitialized();const t=[],n=function dittoffi_query_result_item_count(e){const t=o.dittoffi_query_result_item_count(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e);for(let r=0;r<n;r++)t.push(dittoffi_query_result_item_at(e,r));return t}function queryResultMutatedDocumentIDs(e){ensureInitialized();const t=[],n=function dittoffi_query_result_mutated_document_id_count(e){const t=o.dittoffi_query_result_mutated_document_id_count(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e);for(let r=0;r<n;r++){const n=dittoffi_query_result_mutated_document_id_at(e,r);t.push(boxCBytesIntoBuffer(n))}return t}function queryResultItemCBOR(e){ensureInitialized();return boxCBytesIntoBuffer(function dittoffi_query_result_item_cbor(e){const t=o.dittoffi_query_result_item_cbor(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e))}function queryResultItemJSON(e){ensureInitialized();return boxCStringIntoString(function dittoffi_query_result_item_json(e){const t=o.dittoffi_query_result_item_json(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e))}function queryResultItemNew(e){ensureInitialized();const t=function dittoffi_query_result_item_new(e){const t=o.dittoffi_query_result_item_new(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e);return throwOnErrorResult(t.error,"dittoffi_query_result_item_new"),t.success}function liveQueryRegister(e,t,n,r,i,a,s,c,l){ensureInitialized();const u=bytesFromString(t),d=bytesFromString(n),{status_code:f,i64:h}=function ditto_live_query_register_str_detached(e,t,n,r,i,a,s,c){const l=o.ditto_live_query_register_str_detached(e,t,n,r,i,a,s,c);if(l[2])throw takeFromExternrefTable0(l[1]);return takeFromExternrefTable0(l[0])}(e,u,d,r,i,a,s,wrapBackgroundCbForFFI(l,c));if(0!==f)throw new Error(errorMessage()||`\`ditto_live_query_register_str()\` failed with error code: ${f}`);return h}function tryExperimentalRegisterChangeObserver(e,t,n,r){ensureInitialized();const i=wrapBackgroundCbForFFI((e=>log("Error",`The registered store observer callback failed with ${e}`)),r),a=function dittoffi_try_experimental_register_change_observer_str_detached(e,t,n,r){const i=o.dittoffi_try_experimental_register_change_observer_str_detached(e,t,n,r);if(i[2])throw takeFromExternrefTable0(i[1]);return takeFromExternrefTable0(i[0])}(e,bytesFromString(t),n,i);return throwOnErrorResult(a.error,"dittoffi_try_experimental_register_change_observer_str_detached"),a.success}async function liveQueryStart(e,t){ensureInitialized();const n=await function ditto_live_query_start(e,t){const n=o.ditto_live_query_start(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}(e,t);if(0!==n)throw new Error(errorMessage()||`\`ditto_live_query_start()\` failed with error code: ${n}`)}function liveQueryStop(e,t){ensureInitialized(),function ditto_live_query_stop(e,t){const n=o.ditto_live_query_stop(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}(e,t)}async function liveQuerySignalAvailableNext(e,t){ensureInitialized(),await function ditto_live_query_signal_available_next(e,t){const n=o.ditto_live_query_signal_available_next(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}(e,t)}async function readTransaction(e){ensureInitialized();const{status_code:t,txn:n}=await function ditto_read_transaction(e){const t=o.ditto_read_transaction(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e);if(0!==t)throw new Error(errorMessage()||`\`ditto_read_transaction()\` failed with error code: ${t}`);return n}function readTransactionFree(e){return ensureInitialized(),function ditto_read_transaction_free(e){const t=o.ditto_read_transaction_free(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e)}async function writeTransaction(e){ensureInitialized();const{status_code:t,txn:n}=await function ditto_write_transaction(e,t){const n=o.ditto_write_transaction(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}(e,null);if(0!==t)throw new Error(errorMessage()||`ditto_write_transaction() failed with error code: ${t}`);return n}async function writeTransactionCommit(e,t){ensureInitialized();const n=await function ditto_write_transaction_commit(e,t){const n=o.ditto_write_transaction_commit(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}(e,t);if(0!==n)throw new Error(errorMessage()||`ditto_write_transaction_commit() failed with error code: ${n}`)}async function writeTransactionRollback(e,t){ensureInitialized();const n=await function ditto_write_transaction_rollback(e,t){const n=o.ditto_write_transaction_rollback(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}(e,t);if(0!==n)throw new Error(errorMessage()||`ditto_write_transaction_rollback() failed with error code: ${n}`)}function loggerInit(){ensureInitialized(),function ditto_logger_init(){const e=o.ditto_logger_init();if(e[2])throw takeFromExternrefTable0(e[1]);return takeFromExternrefTable0(e[0])}()}async function loggerSetCustomLogCb(e){if(ensureInitialized(),null===e)await ditto_logger_set_custom_log_cb(null);else{const t=wrapBackgroundCbForFFI(null,((t,n)=>{try{const r=boxCStringIntoString(n);e(t,r)}catch(e){log("Error",`The registered cb in \`ditto_logger_set_custom_log_cb()\` failed with: ${e}`)}}));await ditto_logger_set_custom_log_cb(t)}}function loggerEnabled(e){ensureInitialized(),function ditto_logger_enabled(e){const t=o.ditto_logger_enabled(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(!!e)}function loggerEnabledGet(){return ensureInitialized(),!!function ditto_logger_enabled_get(){const e=o.ditto_logger_enabled_get();if(e[2])throw takeFromExternrefTable0(e[1]);return takeFromExternrefTable0(e[0])}()}function loggerEmojiHeadingsEnabled(e){ensureInitialized(),function ditto_logger_emoji_headings_enabled(e){const t=o.ditto_logger_emoji_headings_enabled(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e)}function loggerEmojiHeadingsEnabledGet(){return ensureInitialized(),function ditto_logger_emoji_headings_enabled_get(){const e=o.ditto_logger_emoji_headings_enabled_get();if(e[2])throw takeFromExternrefTable0(e[1]);return takeFromExternrefTable0(e[0])}()}function loggerMinimumLogLevel(e){ensureInitialized(),function ditto_logger_minimum_log_level(e){const t=o.ditto_logger_minimum_log_level(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e)}function loggerMinimumLogLevelGet(){return ensureInitialized(),function ditto_logger_minimum_log_level_get(){const e=o.ditto_logger_minimum_log_level_get();if(e[2])throw takeFromExternrefTable0(e[1]);return takeFromExternrefTable0(e[0])}()}function loggerSetLogFile(e){ensureInitialized();if(0!==function ditto_logger_set_log_file(e){const t=o.ditto_logger_set_log_file(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e?bytesFromString(e):null)){const e=errorMessage();throw new Error(`Can't set log file, due to error: ${e}`)}}async function loggerTryExportToFileAsync(e){ensureInitialized();const t=bytesFromString(e),n=await new Promise(((e,n)=>{const r=wrapBackgroundCbForFFI(n,e);!function dittoffi_logger_try_export_to_file_async(e,t){const n=o.dittoffi_logger_try_export_to_file_async(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}(t,r)}));return throwOnErrorResult(n.error,"dittoffi_logger_try_export_to_file_async"),n.success}function log(e,t){ensureInitialized();!function ditto_log(e,t){const n=o.ditto_log(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}(e,bytesFromString(t))}function dittoIdentityConfigMakeOnlinePlayground(e,t,n){ensureInitialized();const r=bytesFromString(e),i=bytesFromString(t),a=bytesFromString(n),{status_code:s,identity_config:c}=function ditto_identity_config_make_online_playground(e,t,n){const r=o.ditto_identity_config_make_online_playground(e,t,n);if(r[2])throw takeFromExternrefTable0(r[1]);return takeFromExternrefTable0(r[0])}(r,i,a);if(0!==s)throw new Error(errorMessage()||`ditto_identity_config_make_online_playground() failed with error code: ${s}`);return c}function dittoIdentityConfigMakeOnlineWithAuthentication(e,t){ensureInitialized();const n=bytesFromString(e),r=bytesFromString(t),{status_code:i,identity_config:a}=function ditto_identity_config_make_online_with_authentication(e,t){const n=o.ditto_identity_config_make_online_with_authentication(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}(n,r);if(0!==i)throw new Error(errorMessage()||`ditto_identity_config_make_online_with_authentication() failed with error code: ${i}`);return a}function dittoIdentityConfigMakeOfflinePlayground(e,t){ensureInitialized();const n=bytesFromString(e),r=Number(t),{status_code:i,identity_config:a}=function ditto_identity_config_make_offline_playground(e,t){const n=o.ditto_identity_config_make_offline_playground(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}(n,r);if(0!==i)throw new Error(errorMessage()||`ditto_identity_config_make_offline_playground() failed with error code: ${i}`);return a}function dittoIdentityConfigMakeSharedKey(e,t,n){ensureInitialized();const r=bytesFromString(e),i=bytesFromString(t),a=Number(n),{status_code:s,identity_config:c}=function ditto_identity_config_make_shared_key(e,t,n){const r=o.ditto_identity_config_make_shared_key(e,t,n);if(r[2])throw takeFromExternrefTable0(r[1]);return takeFromExternrefTable0(r[0])}(r,i,a);if(0!==s)throw new Error(errorMessage()||`ditto_identity_config_make_shared_key() failed with error code: ${s}`);return c}function dittoIdentityConfigMakeManual(e){ensureInitialized();const t=bytesFromString(e),{status_code:n,identity_config:r}=function ditto_identity_config_make_manual_v0(e){const t=o.ditto_identity_config_make_manual_v0(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(t);if(0!==n)throw new Error(errorMessage()||`ditto_identity_config_make_manual_v0() failed with error code: ${n}`);return r}function dittoAuthClientGetSiteID(e){return ensureInitialized(),function ditto_auth_client_get_site_id(e){const t=o.ditto_auth_client_get_site_id(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e)}function dittoAuthClientGetAppID(e){ensureInitialized();const t=function ditto_auth_client_get_app_id(e){const t=o.ditto_auth_client_get_app_id(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e);return boxCStringIntoString(t)}function dittoAuthClientUserID(e){ensureInitialized();const t=function ditto_auth_client_user_id(e){const t=o.ditto_auth_client_user_id(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e);return boxCStringIntoString(t)}function dittoAuthClientIsWebValid(e){return ensureInitialized(),0!==function ditto_auth_client_is_web_valid(e){const t=o.ditto_auth_client_is_web_valid(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e)}async function dittoAuthClientLoginWithTokenAndFeedback(e,t,n){ensureInitialized();const r=bytesFromString(t),i=bytesFromString(n),a=await function ditto_auth_client_login_with_token_and_feedback(e,t,n){const r=o.ditto_auth_client_login_with_token_and_feedback(e,t,n);if(r[2])throw takeFromExternrefTable0(r[1]);return takeFromExternrefTable0(r[0])}(e,r,i);return{error:0===a.status_code?null:new DittoFFIError(a.status_code,void 0,"Ditto failed to authenticate."),clientInfo:a.c_string?boxCStringIntoString(a.c_string):null}}async function dittoAuthClientLoginWithToken(e,t,n){ensureInitialized();const r=bytesFromString(t),i=bytesFromString(n),a=await function ditto_auth_client_login_with_token(e,t,n){const r=o.ditto_auth_client_login_with_token(e,t,n);if(r[2])throw takeFromExternrefTable0(r[1]);return takeFromExternrefTable0(r[0])}(e,r,i);if(0!==a)throw new Error(errorMessage()||`Ditto failed to authenticate (error code: ${a}).`)}async function dittoAuthClientLoginWithUsernameAndPassword(e,t,n,r){ensureInitialized();const i=bytesFromString(t),a=bytesFromString(n),s=bytesFromString(r),c=await function ditto_auth_client_login_with_credentials(e,t,n,r){const i=o.ditto_auth_client_login_with_credentials(e,t,n,r);if(i[2])throw takeFromExternrefTable0(i[1]);return takeFromExternrefTable0(i[0])}(e,i,a,s);if(0!==c)throw new Error(errorMessage()||`Ditto failed to authenticate (error code: ${c}).`)}async function dittoAuthClientLogout(e){ensureInitialized();const t=await function ditto_auth_client_logout(e){const t=o.ditto_auth_client_logout(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e);if(0!==t)throw new Error(errorMessage()||`Ditto failed to logout (error code: ${t}).`)}function dittoSetAuthenticationStatusHandler(e,t,n){ensureInitialized(),function dittoffi_ditto_set_authentication_status_handler(e,t){const n=o.dittoffi_ditto_set_authentication_status_handler(e,t);if(n[2])throw takeFromExternrefTable0(n[1]);return takeFromExternrefTable0(n[0])}(e,wrapBackgroundCbForFFI(n,t))}function authenticationStatusUserID(e){return ensureInitialized(),boxCStringIntoString(function dittoffi_authentication_status_user_id(e){const t=o.dittoffi_authentication_status_user_id(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e))}function authenticationStatusIsAuthenticated(e){return ensureInitialized(),function dittoffi_authentication_status_is_authenticated(e){const t=o.dittoffi_authentication_status_is_authenticated(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e)}function authenticationStatusFree(e){ensureInitialized(),function dittoffi_authentication_status_free(e){const t=o.dittoffi_authentication_status_free(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e)}function storeTransactions(e){ensureInitialized();return boxCBytesIntoBuffer(function dittoffi_store_transactions(e){const t=o.dittoffi_store_transactions(e);if(t[2])throw takeFromExternrefTable0(t[1]);return takeFromExternrefTable0(t[0])}(e))}async function storeBeginTransaction(e,t){ensureInitialized();const n={is_read_only:t.isReadOnly,hint:bytesFromString(t.hint)};return new Promise(((t,r)=>{const i=wrapBackgroundCbForFFI(r,(e=>{throwOnErrorResult(e.error,"dittoffi_store_begin_transaction_async_throws"),t(e.success)}));!function dittoffi_store_begin_transaction_async_throws(e,t,n){const r=o.dittoffi_store_begin_transaction_async_throws(e,t,n);if(r[2])throw takeFromExternrefTable0(r[1]);return takeFromExternrefTable0(r[0])}(e,n,i)}))}async function transactionCompleteAsync(e,t){return ensureInitialized(),new Promise(((n,r)=>{const i=wrapBackgroundCbForFFI(r,(e=>{throwOnErrorResult(e.error,"dittoffi_transaction_complete_async_throws");const t=e.success;n(t)}));!function dittoffi_transaction_complete_async_throws(e,t,n){const r=o.dittoffi_transaction_complete_async_throws(e,t,n);if(r[2])throw takeFromExternrefTable0(r[1]);return takeFromExternrefTable0(r[0])}(e,t,i)}))}async function transactionExecuteAsync(e,t,n){return ensureInitialized(),new Promise(((r,i)=>{const a=wrapBackgroundCbForFFI(i,(e=>{throwOnErrorResult(e.error,"dittoffi_transaction_execute_asy