@ghostlytools/cli 1.3.2 → 1.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/README.md +7 -7
  2. package/SKILL.md +2 -1
  3. package/dist/assets/{api-SYPJgFRU.js → api-BCwaCbKh.js} +2 -2
  4. package/dist/assets/{api-aup3Amud.js → api-Bp_hWAiU.js} +100 -20
  5. package/dist/assets/api-Bp_hWAiU.js.map +1 -0
  6. package/dist/assets/{apiKit-DYkVEs6r.js → apiKit-3MLUyuhL.js} +21 -6
  7. package/dist/assets/apiKit-3MLUyuhL.js.map +1 -0
  8. package/dist/assets/{apps-DcZKu29s.js → apps-B6gqk4GD.js} +1 -1
  9. package/dist/assets/{apps-Rbk2HHXb.js → apps-BXw3Ui_3.js} +91 -24
  10. package/dist/assets/apps-BXw3Ui_3.js.map +1 -0
  11. package/dist/assets/{arkade-CuWlNnCz.js → arkade-CyplNY_v.js} +2 -2
  12. package/dist/assets/{arkade-CuWlNnCz.js.map → arkade-CyplNY_v.js.map} +1 -1
  13. package/dist/assets/{backup-CJWLDHuS.js → backup-BGE4BDzf.js} +6 -6
  14. package/dist/assets/{backup-CJWLDHuS.js.map → backup-BGE4BDzf.js.map} +1 -1
  15. package/dist/assets/{backup-CSMw2GHv.js → backup-Cm8ptQQA.js} +1 -1
  16. package/dist/assets/bark_ffi_wasm_bg-EY2uc0Bx.js.map +1 -1
  17. package/dist/assets/{buttons-QEnAGWoC.js → buttons-52NT4sA_.js} +4 -4
  18. package/dist/assets/{buttons-QEnAGWoC.js.map → buttons-52NT4sA_.js.map} +1 -1
  19. package/dist/assets/buttons-PCvHRlkS.js +2 -0
  20. package/dist/assets/{envelope-K27mzoyu.js → envelope-CsRRCrL3.js} +2 -2
  21. package/dist/assets/{envelope-K27mzoyu.js.map → envelope-CsRRCrL3.js.map} +1 -1
  22. package/dist/assets/{errors-DO5z6h_l.js → errors-B-zMxbcd.js} +6 -5
  23. package/dist/assets/{errors-DO5z6h_l.js.map → errors-B-zMxbcd.js.map} +1 -1
  24. package/dist/assets/fedimint_client_wasm_bg-BtHHlFpp.js.map +1 -1
  25. package/dist/assets/{ghostly_iroh_web-Dvzh3Y6E.js → ghostly_iroh_web-BsAEFIjl.js} +30 -36
  26. package/dist/assets/ghostly_iroh_web-BsAEFIjl.js.map +1 -0
  27. package/dist/assets/ghostly_iroh_web_bg.wasm +0 -0
  28. package/dist/assets/{groupFiles-DHTrTA4I.js → groupFiles-BurezP4Z.js} +47 -21
  29. package/dist/assets/{groupFiles-DHTrTA4I.js.map → groupFiles-BurezP4Z.js.map} +1 -1
  30. package/dist/assets/{host-C7hA-Za7.js → host-C74Sy5jT.js} +211 -42
  31. package/dist/assets/host-C74Sy5jT.js.map +1 -0
  32. package/dist/assets/{hyperdhtRelay-BVoWY2ua.js → hyperdhtRelay-D0MvfMzX.js} +2 -2
  33. package/dist/assets/{hyperdhtRelay-BVoWY2ua.js.map → hyperdhtRelay-D0MvfMzX.js.map} +1 -1
  34. package/dist/assets/{irohWeb-BJPk9bMn.js → irohWeb-DynqwRwl.js} +3 -3
  35. package/dist/assets/{irohWeb-BJPk9bMn.js.map → irohWeb-DynqwRwl.js.map} +1 -1
  36. package/dist/assets/{main-DC8cUkDx.js → main-DNzQOdNG.js} +168 -57
  37. package/dist/assets/main-DNzQOdNG.js.map +1 -0
  38. package/dist/assets/{mainline-CxbxpoU4.js → mainline-COqCHn1R.js} +2 -2
  39. package/dist/assets/{mainline-CxbxpoU4.js.map → mainline-COqCHn1R.js.map} +1 -1
  40. package/dist/assets/{networkReason-D42iNuUB.js → networkReason-WikfjkIw.js} +2 -2
  41. package/dist/assets/{networkReason-D42iNuUB.js.map → networkReason-WikfjkIw.js.map} +1 -1
  42. package/dist/assets/{nwc-Cm4sYgLv.js → nwc-ClsjYuyP.js} +3 -3
  43. package/dist/assets/{nwc-Cm4sYgLv.js.map → nwc-ClsjYuyP.js.map} +1 -1
  44. package/dist/assets/{nwcProvider-0D7vdPDd.js → nwcProvider-ksMYZra9.js} +2 -2
  45. package/dist/assets/{nwcProvider-0D7vdPDd.js.map → nwcProvider-ksMYZra9.js.map} +1 -1
  46. package/dist/assets/{profiles-BHc9pEYg.js → profiles-gPCjLOQq.js} +2 -2
  47. package/dist/assets/{profiles-BHc9pEYg.js.map → profiles-gPCjLOQq.js.map} +1 -1
  48. package/dist/assets/{registry-CVdSZW5l.js → registry-CJh9L_kF.js} +17 -32
  49. package/dist/assets/registry-CJh9L_kF.js.map +1 -0
  50. package/dist/assets/{registry-CLolR0kM.js → registry-S7SFF_JB.js} +1 -1
  51. package/dist/assets/{resolve-BnlEajYz.js → resolve-BJxBhU5j.js} +18 -3
  52. package/dist/assets/resolve-BJxBhU5j.js.map +1 -0
  53. package/dist/assets/{server-CJNEKxzE.js → server-C05N9q4G.js} +298 -100
  54. package/dist/assets/server-C05N9q4G.js.map +1 -0
  55. package/dist/assets/{src-yMUQvdyL.js → src-RQ6OJOUO.js} +322 -104
  56. package/dist/assets/src-RQ6OJOUO.js.map +1 -0
  57. package/dist/assets/{turnRefs-B2a8to9q.js → turnRefs-u-U75DFx.js} +2 -2
  58. package/dist/assets/{turnRefs-B2a8to9q.js.map → turnRefs-u-U75DFx.js.map} +1 -1
  59. package/dist/assets/{usdt-DesFeDiG.js → usdt-A1B3r3Mq.js} +3 -3
  60. package/dist/assets/{usdt-DesFeDiG.js.map → usdt-A1B3r3Mq.js.map} +1 -1
  61. package/dist/ghostly.mjs +1 -1
  62. package/package.json +1 -1
  63. package/dist/assets/api-aup3Amud.js.map +0 -1
  64. package/dist/assets/apiKit-DYkVEs6r.js.map +0 -1
  65. package/dist/assets/apps-Rbk2HHXb.js.map +0 -1
  66. package/dist/assets/buttons-CGRqZ7z0.js +0 -2
  67. package/dist/assets/ghostly_iroh_web-Dvzh3Y6E.js.map +0 -1
  68. package/dist/assets/host-C7hA-Za7.js.map +0 -1
  69. package/dist/assets/main-DC8cUkDx.js.map +0 -1
  70. package/dist/assets/registry-CVdSZW5l.js.map +0 -1
  71. package/dist/assets/resolve-BnlEajYz.js.map +0 -1
  72. package/dist/assets/server-CJNEKxzE.js.map +0 -1
  73. package/dist/assets/src-yMUQvdyL.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ghostly_iroh_web-BsAEFIjl.js","names":["ret"],"sources":["../../../iroh-web/pkg/ghostly_iroh_web.js"],"sourcesContent":["let wasm;\n\nfunction addHeapObject(obj) {\n if (heap_next === heap.length) heap.push(heap.length + 1);\n const idx = heap_next;\n heap_next = heap[idx];\n\n heap[idx] = obj;\n return idx;\n}\n\nconst CLOSURE_DTORS = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(state => state.dtor(state.a, state.b));\n\nfunction debugString(val) {\n // primitive types\n const type = typeof val;\n if (type == 'number' || type == 'boolean' || val == null) {\n return `${val}`;\n }\n if (type == 'string') {\n return `\"${val}\"`;\n }\n if (type == 'symbol') {\n const description = val.description;\n if (description == null) {\n return 'Symbol';\n } else {\n return `Symbol(${description})`;\n }\n }\n if (type == 'function') {\n const name = val.name;\n if (typeof name == 'string' && name.length > 0) {\n return `Function(${name})`;\n } else {\n return 'Function';\n }\n }\n // objects\n if (Array.isArray(val)) {\n const length = val.length;\n let debug = '[';\n if (length > 0) {\n debug += debugString(val[0]);\n }\n for(let i = 1; i < length; i++) {\n debug += ', ' + debugString(val[i]);\n }\n debug += ']';\n return debug;\n }\n // Test for built-in\n const builtInMatches = /\\[object ([^\\]]+)\\]/.exec(toString.call(val));\n let className;\n if (builtInMatches && builtInMatches.length > 1) {\n className = builtInMatches[1];\n } else {\n // Failed to match the standard '[object ClassName]'\n return toString.call(val);\n }\n if (className == 'Object') {\n // we're a user defined class or Object\n // JSON.stringify avoids problems with cycles, and is generally much\n // easier than looping through ownProperties of `val`.\n try {\n return 'Object(' + JSON.stringify(val) + ')';\n } catch (_) {\n return 'Object';\n }\n }\n // errors\n if (val instanceof Error) {\n return `${val.name}: ${val.message}\\n${val.stack}`;\n }\n // TODO we could test for more things here, like `Set`s and `Map`s.\n return className;\n}\n\nfunction dropObject(idx) {\n if (idx < 132) return;\n heap[idx] = heap_next;\n heap_next = idx;\n}\n\nfunction getArrayU8FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);\n}\n\nlet cachedDataViewMemory0 = null;\nfunction getDataViewMemory0() {\n if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || (cachedDataViewMemory0.buffer.detached === undefined && cachedDataViewMemory0.buffer !== wasm.memory.buffer)) {\n cachedDataViewMemory0 = new DataView(wasm.memory.buffer);\n }\n return cachedDataViewMemory0;\n}\n\nfunction getStringFromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return decodeText(ptr, len);\n}\n\nlet cachedUint8ArrayMemory0 = null;\nfunction getUint8ArrayMemory0() {\n if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {\n cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);\n }\n return cachedUint8ArrayMemory0;\n}\n\nfunction getObject(idx) { return heap[idx]; }\n\nfunction handleError(f, args) {\n try {\n return f.apply(this, args);\n } catch (e) {\n wasm.__wbindgen_export3(addHeapObject(e));\n }\n}\n\nlet heap = new Array(128).fill(undefined);\nheap.push(undefined, null, true, false);\n\nlet heap_next = heap.length;\n\nfunction isLikeNone(x) {\n return x === undefined || x === null;\n}\n\nfunction makeClosure(arg0, arg1, dtor, f) {\n const state = { a: arg0, b: arg1, cnt: 1, dtor };\n const real = (...args) => {\n\n // First up with a closure we increment the internal reference\n // count. This ensures that the Rust closure environment won't\n // be deallocated while we're invoking it.\n state.cnt++;\n try {\n return f(state.a, state.b, ...args);\n } finally {\n real._wbg_cb_unref();\n }\n };\n real._wbg_cb_unref = () => {\n if (--state.cnt === 0) {\n state.dtor(state.a, state.b);\n state.a = 0;\n CLOSURE_DTORS.unregister(state);\n }\n };\n CLOSURE_DTORS.register(real, state, state);\n return real;\n}\n\nfunction makeMutClosure(arg0, arg1, dtor, f) {\n const state = { a: arg0, b: arg1, cnt: 1, dtor };\n const real = (...args) => {\n\n // First up with a closure we increment the internal reference\n // count. This ensures that the Rust closure environment won't\n // be deallocated while we're invoking it.\n state.cnt++;\n const a = state.a;\n state.a = 0;\n try {\n return f(a, state.b, ...args);\n } finally {\n state.a = a;\n real._wbg_cb_unref();\n }\n };\n real._wbg_cb_unref = () => {\n if (--state.cnt === 0) {\n state.dtor(state.a, state.b);\n state.a = 0;\n CLOSURE_DTORS.unregister(state);\n }\n };\n CLOSURE_DTORS.register(real, state, state);\n return real;\n}\n\nfunction passArray8ToWasm0(arg, malloc) {\n const ptr = malloc(arg.length * 1, 1) >>> 0;\n getUint8ArrayMemory0().set(arg, ptr / 1);\n WASM_VECTOR_LEN = arg.length;\n return ptr;\n}\n\nfunction passArrayJsValueToWasm0(array, malloc) {\n const ptr = malloc(array.length * 4, 4) >>> 0;\n const mem = getDataViewMemory0();\n for (let i = 0; i < array.length; i++) {\n mem.setUint32(ptr + 4 * i, addHeapObject(array[i]), true);\n }\n WASM_VECTOR_LEN = array.length;\n return ptr;\n}\n\nfunction passStringToWasm0(arg, malloc, realloc) {\n if (realloc === undefined) {\n const buf = cachedTextEncoder.encode(arg);\n const ptr = malloc(buf.length, 1) >>> 0;\n getUint8ArrayMemory0().subarray(ptr, ptr + buf.length).set(buf);\n WASM_VECTOR_LEN = buf.length;\n return ptr;\n }\n\n let len = arg.length;\n let ptr = malloc(len, 1) >>> 0;\n\n const mem = getUint8ArrayMemory0();\n\n let offset = 0;\n\n for (; offset < len; offset++) {\n const code = arg.charCodeAt(offset);\n if (code > 0x7F) break;\n mem[ptr + offset] = code;\n }\n if (offset !== len) {\n if (offset !== 0) {\n arg = arg.slice(offset);\n }\n ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;\n const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);\n const ret = cachedTextEncoder.encodeInto(arg, view);\n\n offset += ret.written;\n ptr = realloc(ptr, len, offset, 1) >>> 0;\n }\n\n WASM_VECTOR_LEN = offset;\n return ptr;\n}\n\nfunction takeObject(idx) {\n const ret = getObject(idx);\n dropObject(idx);\n return ret;\n}\n\nlet cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true });\ncachedTextDecoder.decode();\nconst MAX_SAFARI_DECODE_BYTES = 2146435072;\nlet numBytesDecoded = 0;\nfunction decodeText(ptr, len) {\n numBytesDecoded += len;\n if (numBytesDecoded >= MAX_SAFARI_DECODE_BYTES) {\n cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true });\n cachedTextDecoder.decode();\n numBytesDecoded = len;\n }\n return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));\n}\n\nconst cachedTextEncoder = new TextEncoder();\n\nif (!('encodeInto' in cachedTextEncoder)) {\n cachedTextEncoder.encodeInto = function (arg, view) {\n const buf = cachedTextEncoder.encode(arg);\n view.set(buf);\n return {\n read: arg.length,\n written: buf.length\n };\n }\n}\n\nlet WASM_VECTOR_LEN = 0;\n\nfunction __wasm_bindgen_func_elem_3292(arg0, arg1) {\n wasm.__wasm_bindgen_func_elem_3292(arg0, arg1);\n}\n\nfunction __wasm_bindgen_func_elem_3635(arg0, arg1) {\n wasm.__wasm_bindgen_func_elem_3635(arg0, arg1);\n}\n\nfunction __wasm_bindgen_func_elem_1637(arg0, arg1, arg2) {\n wasm.__wasm_bindgen_func_elem_1637(arg0, arg1, addHeapObject(arg2));\n}\n\nfunction __wasm_bindgen_func_elem_8949(arg0, arg1, arg2) {\n wasm.__wasm_bindgen_func_elem_8949(arg0, arg1, addHeapObject(arg2));\n}\n\nfunction __wasm_bindgen_func_elem_4181(arg0, arg1, arg2) {\n wasm.__wasm_bindgen_func_elem_4181(arg0, arg1, addHeapObject(arg2));\n}\n\nfunction __wasm_bindgen_func_elem_8897(arg0, arg1) {\n wasm.__wasm_bindgen_func_elem_8897(arg0, arg1);\n}\n\nfunction __wasm_bindgen_func_elem_9032(arg0, arg1, arg2, arg3) {\n wasm.__wasm_bindgen_func_elem_9032(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3));\n}\n\nconst __wbindgen_enum_BinaryType = [\"blob\", \"arraybuffer\"];\n\nconst __wbindgen_enum_ReadableStreamType = [\"bytes\"];\n\nconst __wbindgen_enum_RequestCache = [\"default\", \"no-store\", \"reload\", \"no-cache\", \"force-cache\", \"only-if-cached\"];\n\nconst __wbindgen_enum_RequestCredentials = [\"omit\", \"same-origin\", \"include\"];\n\nconst __wbindgen_enum_RequestMode = [\"same-origin\", \"no-cors\", \"cors\", \"navigate\"];\n\nconst IntoUnderlyingByteSourceFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_intounderlyingbytesource_free(ptr >>> 0, 1));\n\nconst IntoUnderlyingSinkFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_intounderlyingsink_free(ptr >>> 0, 1));\n\nconst IntoUnderlyingSourceFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_intounderlyingsource_free(ptr >>> 0, 1));\n\nconst IrohConnFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_irohconn_free(ptr >>> 0, 1));\n\nconst IrohNodeFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_irohnode_free(ptr >>> 0, 1));\n\nexport class IntoUnderlyingByteSource {\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n IntoUnderlyingByteSourceFinalization.unregister(this);\n return ptr;\n }\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_intounderlyingbytesource_free(ptr, 0);\n }\n /**\n * @returns {number}\n */\n get autoAllocateChunkSize() {\n const ret = wasm.intounderlyingbytesource_autoAllocateChunkSize(this.__wbg_ptr);\n return ret >>> 0;\n }\n /**\n * @param {ReadableByteStreamController} controller\n * @returns {Promise<any>}\n */\n pull(controller) {\n const ret = wasm.intounderlyingbytesource_pull(this.__wbg_ptr, addHeapObject(controller));\n return takeObject(ret);\n }\n /**\n * @param {ReadableByteStreamController} controller\n */\n start(controller) {\n wasm.intounderlyingbytesource_start(this.__wbg_ptr, addHeapObject(controller));\n }\n /**\n * @returns {ReadableStreamType}\n */\n get type() {\n const ret = wasm.intounderlyingbytesource_type(this.__wbg_ptr);\n return __wbindgen_enum_ReadableStreamType[ret];\n }\n cancel() {\n const ptr = this.__destroy_into_raw();\n wasm.intounderlyingbytesource_cancel(ptr);\n }\n}\nif (Symbol.dispose) IntoUnderlyingByteSource.prototype[Symbol.dispose] = IntoUnderlyingByteSource.prototype.free;\n\nexport class IntoUnderlyingSink {\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n IntoUnderlyingSinkFinalization.unregister(this);\n return ptr;\n }\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_intounderlyingsink_free(ptr, 0);\n }\n /**\n * @param {any} reason\n * @returns {Promise<any>}\n */\n abort(reason) {\n const ptr = this.__destroy_into_raw();\n const ret = wasm.intounderlyingsink_abort(ptr, addHeapObject(reason));\n return takeObject(ret);\n }\n /**\n * @returns {Promise<any>}\n */\n close() {\n const ptr = this.__destroy_into_raw();\n const ret = wasm.intounderlyingsink_close(ptr);\n return takeObject(ret);\n }\n /**\n * @param {any} chunk\n * @returns {Promise<any>}\n */\n write(chunk) {\n const ret = wasm.intounderlyingsink_write(this.__wbg_ptr, addHeapObject(chunk));\n return takeObject(ret);\n }\n}\nif (Symbol.dispose) IntoUnderlyingSink.prototype[Symbol.dispose] = IntoUnderlyingSink.prototype.free;\n\nexport class IntoUnderlyingSource {\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n IntoUnderlyingSourceFinalization.unregister(this);\n return ptr;\n }\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_intounderlyingsource_free(ptr, 0);\n }\n /**\n * @param {ReadableStreamDefaultController} controller\n * @returns {Promise<any>}\n */\n pull(controller) {\n const ret = wasm.intounderlyingsource_pull(this.__wbg_ptr, addHeapObject(controller));\n return takeObject(ret);\n }\n cancel() {\n const ptr = this.__destroy_into_raw();\n wasm.intounderlyingsource_cancel(ptr);\n }\n}\nif (Symbol.dispose) IntoUnderlyingSource.prototype[Symbol.dispose] = IntoUnderlyingSource.prototype.free;\n\n/**\n * One paired channel: a single bidirectional stream of text frames.\n */\nexport class IrohConn {\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(IrohConn.prototype);\n obj.__wbg_ptr = ptr;\n IrohConnFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n IrohConnFinalization.unregister(this);\n return ptr;\n }\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_irohconn_free(ptr, 0);\n }\n /**\n * Round-trip time in milliseconds, as QUIC measures it.\n * @returns {number}\n */\n rtt() {\n const ret = wasm.irohconn_rtt(this.__wbg_ptr);\n return ret;\n }\n /**\n * The next text frame, or `undefined` once the channel is closed.\n * @returns {Promise<any>}\n */\n recv() {\n const ret = wasm.irohconn_recv(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Sends one text frame. Callers serialise sends; a concurrent call fails.\n * @param {string} text\n * @returns {Promise<any>}\n */\n send(text) {\n const ptr0 = passStringToWasm0(text, wasm.__wbindgen_export, wasm.__wbindgen_export2);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.irohconn_send(this.__wbg_ptr, ptr0, len0);\n return takeObject(ret);\n }\n close() {\n wasm.irohconn_close(this.__wbg_ptr);\n }\n /**\n * @returns {any}\n */\n binding() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.irohconn_binding(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * The contact's endpoint id.\n * @returns {string}\n */\n remoteId() {\n let deferred1_0;\n let deferred1_1;\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.irohconn_remoteId(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n deferred1_0 = r0;\n deferred1_1 = r1;\n return getStringFromWasm0(r0, r1);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n wasm.__wbindgen_export4(deferred1_0, deferred1_1, 1);\n }\n }\n}\nif (Symbol.dispose) IrohConn.prototype[Symbol.dispose] = IrohConn.prototype.free;\n\n/**\n * One Iroh endpoint for one paired chat, homed on a relay.\n */\nexport class IrohNode {\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(IrohNode.prototype);\n obj.__wbg_ptr = ptr;\n IrohNodeFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n IrohNodeFinalization.unregister(this);\n return ptr;\n }\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_irohnode_free(ptr, 0);\n }\n /**\n * @returns {Promise<any>}\n */\n close() {\n const ret = wasm.irohnode_close(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * Binds an endpoint for a 32-byte seed and waits until it is reachable\n * through the first relay that answers. `relays` is a list of relay URLs.\n * @param {Uint8Array} seed\n * @param {string[]} relays\n * @param {number} online_ms\n * @returns {Promise<any>}\n */\n static start(seed, relays, online_ms) {\n const ptr0 = passArray8ToWasm0(seed, wasm.__wbindgen_export);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passArrayJsValueToWasm0(relays, wasm.__wbindgen_export);\n const len1 = WASM_VECTOR_LEN;\n const ret = wasm.irohnode_start(ptr0, len0, ptr1, len1, online_ms);\n return takeObject(ret);\n }\n /**\n * Resolves with the next incoming connection, or `undefined` once closed.\n * @returns {Promise<any>}\n */\n accept() {\n const ret = wasm.irohnode_accept(this.__wbg_ptr);\n return takeObject(ret);\n }\n /**\n * `{ id, relay, addresses: [] }`, the same shape the Desktop publishes.\n * @returns {any}\n */\n address() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.irohnode_address(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * @param {any} descriptor\n * @param {number} timeout_ms\n * @returns {Promise<any>}\n */\n connect(descriptor, timeout_ms) {\n const ret = wasm.irohnode_connect(this.__wbg_ptr, addHeapObject(descriptor), timeout_ms);\n return takeObject(ret);\n }\n}\nif (Symbol.dispose) IrohNode.prototype[Symbol.dispose] = IrohNode.prototype.free;\n\nconst EXPECTED_RESPONSE_TYPES = new Set(['basic', 'cors', 'default']);\n\nasync function __wbg_load(module, imports) {\n if (typeof Response === 'function' && module instanceof Response) {\n if (typeof WebAssembly.instantiateStreaming === 'function') {\n try {\n return await WebAssembly.instantiateStreaming(module, imports);\n } catch (e) {\n const validResponse = module.ok && EXPECTED_RESPONSE_TYPES.has(module.type);\n\n if (validResponse && module.headers.get('Content-Type') !== 'application/wasm') {\n 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\", e);\n\n } else {\n throw e;\n }\n }\n }\n\n const bytes = await module.arrayBuffer();\n return await WebAssembly.instantiate(bytes, imports);\n } else {\n const instance = await WebAssembly.instantiate(module, imports);\n\n if (instance instanceof WebAssembly.Instance) {\n return { instance, module };\n } else {\n return instance;\n }\n }\n}\n\nfunction __wbg_get_imports() {\n const imports = {};\n imports.wbg = {};\n imports.wbg.__wbg_Error_52673b7de5a0ca89 = function(arg0, arg1) {\n const ret = Error(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg___wbindgen_boolean_get_dea25b33882b895b = function(arg0) {\n const v = getObject(arg0);\n const ret = typeof(v) === 'boolean' ? v : undefined;\n return isLikeNone(ret) ? 0xFFFFFF : ret ? 1 : 0;\n };\n imports.wbg.__wbg___wbindgen_debug_string_adfb662ae34724b6 = function(arg0, arg1) {\n const ret = debugString(getObject(arg1));\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);\n const len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbg___wbindgen_is_function_8d400b8b1af978cd = function(arg0) {\n const ret = typeof(getObject(arg0)) === 'function';\n return ret;\n };\n imports.wbg.__wbg___wbindgen_is_object_ce774f3490692386 = function(arg0) {\n const val = getObject(arg0);\n const ret = typeof(val) === 'object' && val !== null;\n return ret;\n };\n imports.wbg.__wbg___wbindgen_is_string_704ef9c8fc131030 = function(arg0) {\n const ret = typeof(getObject(arg0)) === 'string';\n return ret;\n };\n imports.wbg.__wbg___wbindgen_is_undefined_f6b95eab589e0269 = function(arg0) {\n const ret = getObject(arg0) === undefined;\n return ret;\n };\n imports.wbg.__wbg___wbindgen_string_get_a2a31e16edf96e42 = function(arg0, arg1) {\n const obj = getObject(arg1);\n const ret = typeof(obj) === 'string' ? obj : undefined;\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);\n var len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbg___wbindgen_throw_dd24417ed36fc46e = function(arg0, arg1) {\n throw new Error(getStringFromWasm0(arg0, arg1));\n };\n imports.wbg.__wbg__wbg_cb_unref_87dfb5aaa0cbcea7 = function(arg0) {\n getObject(arg0)._wbg_cb_unref();\n };\n imports.wbg.__wbg_abort_07646c894ebbf2bd = function(arg0) {\n getObject(arg0).abort();\n };\n imports.wbg.__wbg_abort_399ecbcfd6ef3c8e = function(arg0, arg1) {\n getObject(arg0).abort(getObject(arg1));\n };\n imports.wbg.__wbg_addEventListener_e792423147a80626 = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n getObject(arg0).addEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3));\n }, arguments) };\n imports.wbg.__wbg_append_c5cbdf46455cc776 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).append(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));\n }, arguments) };\n imports.wbg.__wbg_body_947b901c33f7fe32 = function(arg0) {\n const ret = getObject(arg0).body;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_buffer_6cb2fecb1f253d71 = function(arg0) {\n const ret = getObject(arg0).buffer;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_byobRequest_f8e3517f5f8ad284 = function(arg0) {\n const ret = getObject(arg0).byobRequest;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_byteLength_faa9938885bdeee6 = function(arg0) {\n const ret = getObject(arg0).byteLength;\n return ret;\n };\n imports.wbg.__wbg_byteOffset_3868b6a19ba01dea = function(arg0) {\n const ret = getObject(arg0).byteOffset;\n return ret;\n };\n imports.wbg.__wbg_call_3020136f7a2d6e44 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).call(getObject(arg1), getObject(arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_call_abb4ff46ce38be40 = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg0).call(getObject(arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_cancel_a65cf45dca50ba4c = function(arg0) {\n const ret = getObject(arg0).cancel();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_catch_b9db41d97d42bd02 = function(arg0, arg1) {\n const ret = getObject(arg0).catch(getObject(arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_clearTimeout_3b5c565a5ec539dd = function(arg0) {\n const ret = clearTimeout(takeObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_clearTimeout_5e42188b495715bb = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).clearTimeout(takeObject(arg1));\n }, arguments) };\n imports.wbg.__wbg_close_0af5661bf3d335f2 = function() { return handleError(function (arg0) {\n getObject(arg0).close();\n }, arguments) };\n imports.wbg.__wbg_close_1db3952de1b5b1cf = function() { return handleError(function (arg0) {\n getObject(arg0).close();\n }, arguments) };\n imports.wbg.__wbg_close_3ec111e7b23d94d8 = function() { return handleError(function (arg0) {\n getObject(arg0).close();\n }, arguments) };\n imports.wbg.__wbg_code_85a811fe6ca962be = function(arg0) {\n const ret = getObject(arg0).code;\n return ret;\n };\n imports.wbg.__wbg_code_c2a85f2863ec11b3 = function(arg0) {\n const ret = getObject(arg0).code;\n return ret;\n };\n imports.wbg.__wbg_crypto_86f2631e91b51511 = function(arg0) {\n const ret = getObject(arg0).crypto;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_data_8bf4ae669a78a688 = function(arg0) {\n const ret = getObject(arg0).data;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_done_62ea16af4ce34b24 = function(arg0) {\n const ret = getObject(arg0).done;\n return ret;\n };\n imports.wbg.__wbg_enqueue_a7e6b1ee87963aad = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).enqueue(getObject(arg1));\n }, arguments) };\n imports.wbg.__wbg_entries_13da0847a5239578 = function(arg0) {\n const ret = getObject(arg0).entries();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_fetch_16dcf1cfbbc66b3c = function(arg0) {\n const ret = fetch(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_fetch_90447c28cc0b095e = function(arg0, arg1) {\n const ret = getObject(arg0).fetch(getObject(arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_getRandomValues_a8ddca022803a145 = function() { return handleError(function (arg0, arg1) {\n globalThis.crypto.getRandomValues(getArrayU8FromWasm0(arg0, arg1));\n }, arguments) };\n imports.wbg.__wbg_getRandomValues_b3f15fcbfabb0f8b = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).getRandomValues(getObject(arg1));\n }, arguments) };\n imports.wbg.__wbg_getReader_48e00749fe3f6089 = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).getReader();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_get_6b7bd52aca3f9671 = function(arg0, arg1) {\n const ret = getObject(arg0)[arg1 >>> 0];\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_get_af9dab7e9603ea93 = function() { return handleError(function (arg0, arg1) {\n const ret = Reflect.get(getObject(arg0), getObject(arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_get_done_f98a6e62c4e18fb9 = function(arg0) {\n const ret = getObject(arg0).done;\n return isLikeNone(ret) ? 0xFFFFFF : ret ? 1 : 0;\n };\n imports.wbg.__wbg_get_value_63e39884ef11812e = function(arg0) {\n const ret = getObject(arg0).value;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_has_0e670569d65d3a45 = function() { return handleError(function (arg0, arg1) {\n const ret = Reflect.has(getObject(arg0), getObject(arg1));\n return ret;\n }, arguments) };\n imports.wbg.__wbg_headers_654c30e1bcccc552 = function(arg0) {\n const ret = getObject(arg0).headers;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_instanceof_ArrayBuffer_f3320d2419cd0355 = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof ArrayBuffer;\n } catch (_) {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_instanceof_Blob_e9c51ce33a4b6181 = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof Blob;\n } catch (_) {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_instanceof_Response_cd74d1c2ac92cb0b = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof Response;\n } catch (_) {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_irohconn_new = function(arg0) {\n const ret = IrohConn.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_irohnode_new = function(arg0) {\n const ret = IrohNode.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_isArray_51fd9e6422c0a395 = function(arg0) {\n const ret = Array.isArray(getObject(arg0));\n return ret;\n };\n imports.wbg.__wbg_length_22ac23eaec9d8053 = function(arg0) {\n const ret = getObject(arg0).length;\n return ret;\n };\n imports.wbg.__wbg_message_a4e9a39ee8f92b17 = function(arg0, arg1) {\n const ret = getObject(arg1).message;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);\n const len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbg_msCrypto_d562bbe83e0d4b91 = function(arg0) {\n const ret = getObject(arg0).msCrypto;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_1ba21ce319a06297 = function() {\n const ret = new Object();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_25f239778d6112b9 = function() {\n const ret = new Array();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_3c79b3bb1b32b7d3 = function() { return handleError(function () {\n const ret = new Headers();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_new_6421f6084cc5bc5a = function(arg0) {\n const ret = new Uint8Array(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_7c30d1f874652e62 = function() { return handleError(function (arg0, arg1) {\n const ret = new WebSocket(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_new_881a222c65f168fc = function() { return handleError(function () {\n const ret = new AbortController();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_new_df1173567d5ff028 = function(arg0, arg1) {\n const ret = new Error(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_ff12d2b041fb48f1 = function(arg0, arg1) {\n try {\n var state0 = {a: arg0, b: arg1};\n var cb0 = (arg0, arg1) => {\n const a = state0.a;\n state0.a = 0;\n try {\n return __wasm_bindgen_func_elem_9032(a, state0.b, arg0, arg1);\n } finally {\n state0.a = a;\n }\n };\n const ret = new Promise(cb0);\n return addHeapObject(ret);\n } finally {\n state0.a = state0.b = 0;\n }\n };\n imports.wbg.__wbg_new_from_slice_f9c22b9153b26992 = function(arg0, arg1) {\n const ret = new Uint8Array(getArrayU8FromWasm0(arg0, arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_no_args_cb138f77cf6151ee = function(arg0, arg1) {\n const ret = new Function(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_with_byte_offset_and_length_d85c3da1fd8df149 = function(arg0, arg1, arg2) {\n const ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_with_length_aa5eaf41d35235e5 = function(arg0) {\n const ret = new Uint8Array(arg0 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_with_str_and_init_c5748f76f5108934 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = new Request(getStringFromWasm0(arg0, arg1), getObject(arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_new_with_str_sequence_073466a4a5387941 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = new WebSocket(getStringFromWasm0(arg0, arg1), getObject(arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_next_3cfe5c0fe2a4cc53 = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).next();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_node_e1f24f89a7336c2e = function(arg0) {\n const ret = getObject(arg0).node;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_now_2c95c9de01293173 = function(arg0) {\n const ret = getObject(arg0).now();\n return ret;\n };\n imports.wbg.__wbg_now_69d776cd24f5215b = function() {\n const ret = Date.now();\n return ret;\n };\n imports.wbg.__wbg_parse_a09a54cf72639456 = function() { return handleError(function (arg0, arg1) {\n const ret = JSON.parse(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_performance_7a3ffd0b17f663ad = function(arg0) {\n const ret = getObject(arg0).performance;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_process_3975fd6c72f520aa = function(arg0) {\n const ret = getObject(arg0).process;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_protocol_a74f36816d507cab = function(arg0, arg1) {\n const ret = getObject(arg1).protocol;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);\n const len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbg_prototypesetcall_dfe9b766cdc1f1fd = function(arg0, arg1, arg2) {\n Uint8Array.prototype.set.call(getArrayU8FromWasm0(arg0, arg1), getObject(arg2));\n };\n imports.wbg.__wbg_push_7d9be8f38fc13975 = function(arg0, arg1) {\n const ret = getObject(arg0).push(getObject(arg1));\n return ret;\n };\n imports.wbg.__wbg_queueMicrotask_9b549dfce8865860 = function(arg0) {\n const ret = getObject(arg0).queueMicrotask;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_queueMicrotask_fca69f5bfad613a5 = function(arg0) {\n queueMicrotask(getObject(arg0));\n };\n imports.wbg.__wbg_randomFillSync_f8c153b79f285817 = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).randomFillSync(takeObject(arg1));\n }, arguments) };\n imports.wbg.__wbg_read_39c4b35efcd03c25 = function(arg0) {\n const ret = getObject(arg0).read();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_readyState_9d0976dcad561aa9 = function(arg0) {\n const ret = getObject(arg0).readyState;\n return ret;\n };\n imports.wbg.__wbg_reason_d4eb9e40592438c2 = function(arg0, arg1) {\n const ret = getObject(arg1).reason;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);\n const len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbg_releaseLock_a5912f590b185180 = function(arg0) {\n getObject(arg0).releaseLock();\n };\n imports.wbg.__wbg_removeEventListener_54bf92f4a849bd7d = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n getObject(arg0).removeEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3));\n }, arguments) };\n imports.wbg.__wbg_require_b74f47fc2d022fd6 = function() { return handleError(function () {\n const ret = module.require;\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_resolve_fd5bfbaa4ce36e1e = function(arg0) {\n const ret = Promise.resolve(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_respond_9f7fc54636c4a3af = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).respond(arg1 >>> 0);\n }, arguments) };\n imports.wbg.__wbg_send_7cc36bb628044281 = function() { return handleError(function (arg0, arg1, arg2) {\n getObject(arg0).send(getStringFromWasm0(arg1, arg2));\n }, arguments) };\n imports.wbg.__wbg_send_ea59e150ab5ebe08 = function() { return handleError(function (arg0, arg1, arg2) {\n getObject(arg0).send(getArrayU8FromWasm0(arg1, arg2));\n }, arguments) };\n imports.wbg.__wbg_setTimeout_2b111259203a2623 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).setTimeout(takeObject(arg1), arg2);\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_setTimeout_cb2a856ba8315e7a = function(arg0, arg1) {\n const ret = setTimeout(getObject(arg0), arg1);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_set_169e13b608078b7b = function(arg0, arg1, arg2) {\n getObject(arg0).set(getArrayU8FromWasm0(arg1, arg2));\n };\n imports.wbg.__wbg_set_binaryType_73e8c75df97825f8 = function(arg0, arg1) {\n getObject(arg0).binaryType = __wbindgen_enum_BinaryType[arg1];\n };\n imports.wbg.__wbg_set_body_8e743242d6076a4f = function(arg0, arg1) {\n getObject(arg0).body = getObject(arg1);\n };\n imports.wbg.__wbg_set_cache_0e437c7c8e838b9b = function(arg0, arg1) {\n getObject(arg0).cache = __wbindgen_enum_RequestCache[arg1];\n };\n imports.wbg.__wbg_set_credentials_55ae7c3c106fd5be = function(arg0, arg1) {\n getObject(arg0).credentials = __wbindgen_enum_RequestCredentials[arg1];\n };\n imports.wbg.__wbg_set_handle_event_14baa3949ef6909d = function(arg0, arg1) {\n getObject(arg0).handleEvent = getObject(arg1);\n };\n imports.wbg.__wbg_set_headers_5671cf088e114d2b = function(arg0, arg1) {\n getObject(arg0).headers = getObject(arg1);\n };\n imports.wbg.__wbg_set_method_76c69e41b3570627 = function(arg0, arg1, arg2) {\n getObject(arg0).method = getStringFromWasm0(arg1, arg2);\n };\n imports.wbg.__wbg_set_mode_611016a6818fc690 = function(arg0, arg1) {\n getObject(arg0).mode = __wbindgen_enum_RequestMode[arg1];\n };\n imports.wbg.__wbg_set_onclose_032729b3d7ed7a9e = function(arg0, arg1) {\n getObject(arg0).onclose = getObject(arg1);\n };\n imports.wbg.__wbg_set_onerror_7819daa6af176ddb = function(arg0, arg1) {\n getObject(arg0).onerror = getObject(arg1);\n };\n imports.wbg.__wbg_set_onmessage_71321d0bed69856c = function(arg0, arg1) {\n getObject(arg0).onmessage = getObject(arg1);\n };\n imports.wbg.__wbg_set_onopen_6d4abedb27ba5656 = function(arg0, arg1) {\n getObject(arg0).onopen = getObject(arg1);\n };\n imports.wbg.__wbg_set_signal_e89be862d0091009 = function(arg0, arg1) {\n getObject(arg0).signal = getObject(arg1);\n };\n imports.wbg.__wbg_signal_3c14fbdc89694b39 = function(arg0) {\n const ret = getObject(arg0).signal;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_static_accessor_GLOBAL_769e6b65d6557335 = function() {\n const ret = typeof global === 'undefined' ? null : global;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_static_accessor_GLOBAL_THIS_60cf02db4de8e1c1 = function() {\n const ret = typeof globalThis === 'undefined' ? null : globalThis;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_static_accessor_SELF_08f5a74c69739274 = function() {\n const ret = typeof self === 'undefined' ? null : self;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_static_accessor_WINDOW_a8924b26aa92d024 = function() {\n const ret = typeof window === 'undefined' ? null : window;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_status_9bfc680efca4bdfd = function(arg0) {\n const ret = getObject(arg0).status;\n return ret;\n };\n imports.wbg.__wbg_stringify_655a6390e1f5eb6b = function() { return handleError(function (arg0) {\n const ret = JSON.stringify(getObject(arg0));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_subarray_845f2f5bce7d061a = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).subarray(arg1 >>> 0, arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_then_429f7caf1026411d = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).then(getObject(arg1), getObject(arg2));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_then_4f95312d68691235 = function(arg0, arg1) {\n const ret = getObject(arg0).then(getObject(arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_url_b6d11838a4f95198 = function(arg0, arg1) {\n const ret = getObject(arg1).url;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);\n const len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbg_url_df28eef824b04410 = function(arg0, arg1) {\n const ret = getObject(arg1).url;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2);\n const len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n };\n imports.wbg.__wbg_value_57b7b035e117f7ee = function(arg0) {\n const ret = getObject(arg0).value;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_versions_4e31226f5e8dc909 = function(arg0) {\n const ret = getObject(arg0).versions;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_view_788aaf149deefd2f = function(arg0) {\n const ret = getObject(arg0).view;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_wasClean_4154a2d59fdb4dd7 = function(arg0) {\n const ret = getObject(arg0).wasClean;\n return ret;\n };\n imports.wbg.__wbindgen_cast_16e2773336b2d687 = function(arg0, arg1) {\n // Cast intrinsic for `Closure(Closure { dtor_idx: 181, function: Function { arguments: [NamedExternref(\"CloseEvent\")], shim_idx: 213, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.\n const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_1135, __wasm_bindgen_func_elem_1637);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_cast_2241b6af4c4b2941 = function(arg0, arg1) {\n // Cast intrinsic for `Ref(String) -> Externref`.\n const ret = getStringFromWasm0(arg0, arg1);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_cast_467eda6bdea4bc38 = function(arg0, arg1) {\n // Cast intrinsic for `Closure(Closure { dtor_idx: 2722, function: Function { arguments: [Externref], shim_idx: 2723, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.\n const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_8940, __wasm_bindgen_func_elem_8949);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_cast_8107477189a212c0 = function(arg0, arg1) {\n // Cast intrinsic for `Closure(Closure { dtor_idx: 1280, function: Function { arguments: [], shim_idx: 1282, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.\n const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_3277, __wasm_bindgen_func_elem_3292);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_cast_a724fac821e668fe = function(arg0, arg1) {\n // Cast intrinsic for `Closure(Closure { dtor_idx: 1352, function: Function { arguments: [], shim_idx: 1353, ret: Unit, inner_ret: Some(Unit) }, mutable: false }) -> Externref`.\n const ret = makeClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_3619, __wasm_bindgen_func_elem_3635);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_cast_c6a557b04b57c6c0 = function(arg0, arg1) {\n // Cast intrinsic for `Closure(Closure { dtor_idx: 1638, function: Function { arguments: [NamedExternref(\"MessageEvent\")], shim_idx: 1642, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.\n const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_4149, __wasm_bindgen_func_elem_4181);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_cast_cb9088102bce6b30 = function(arg0, arg1) {\n // Cast intrinsic for `Ref(Slice(U8)) -> NamedExternref(\"Uint8Array\")`.\n const ret = getArrayU8FromWasm0(arg0, arg1);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_cast_e6d515b161eabad7 = function(arg0, arg1) {\n // Cast intrinsic for `Closure(Closure { dtor_idx: 2714, function: Function { arguments: [], shim_idx: 2715, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.\n const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_8892, __wasm_bindgen_func_elem_8897);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_object_clone_ref = function(arg0) {\n const ret = getObject(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_object_drop_ref = function(arg0) {\n takeObject(arg0);\n };\n\n return imports;\n}\n\nfunction __wbg_finalize_init(instance, module) {\n wasm = instance.exports;\n __wbg_init.__wbindgen_wasm_module = module;\n cachedDataViewMemory0 = null;\n cachedUint8ArrayMemory0 = null;\n\n\n\n return wasm;\n}\n\nfunction initSync(module) {\n if (wasm !== undefined) return wasm;\n\n\n if (typeof module !== 'undefined') {\n if (Object.getPrototypeOf(module) === Object.prototype) {\n ({module} = module)\n } else {\n console.warn('using deprecated parameters for `initSync()`; pass a single object instead')\n }\n }\n\n const imports = __wbg_get_imports();\n if (!(module instanceof WebAssembly.Module)) {\n module = new WebAssembly.Module(module);\n }\n const instance = new WebAssembly.Instance(module, imports);\n return __wbg_finalize_init(instance, module);\n}\n\nasync function __wbg_init(module_or_path) {\n if (wasm !== undefined) return wasm;\n\n\n if (typeof module_or_path !== 'undefined') {\n if (Object.getPrototypeOf(module_or_path) === Object.prototype) {\n ({module_or_path} = module_or_path)\n } else {\n console.warn('using deprecated parameters for the initialization function; pass a single object instead')\n }\n }\n\n if (typeof module_or_path === 'undefined') {\n module_or_path = new URL('ghostly_iroh_web_bg.wasm', import.meta.url);\n }\n const imports = __wbg_get_imports();\n\n if (typeof module_or_path === 'string' || (typeof Request === 'function' && module_or_path instanceof Request) || (typeof URL === 'function' && module_or_path instanceof URL)) {\n module_or_path = fetch(module_or_path);\n }\n\n const { instance, module } = await __wbg_load(await module_or_path, imports);\n\n return __wbg_finalize_init(instance, module);\n}\n\nexport { initSync };\nexport default __wbg_init;\n"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { $n as GROUP_HAVE_FRAME, Ea as RateWindow, Fn as resolveLightningDestination, In as decodeBolt11, Ir as ChatFiles, Pn as requestLnurlInvoice, Qn as GROUP_FILE_LIMITS, Rr as transferEnded, Wa as replySnippet, Xn as engineError, Zn as engineText, bl as randomBytes, cr as readGroupWantNo, fn as WALLET_NETWORKS, ir as isGroupMessageId, nr as fetchesByItself, or as readGroupHave, rr as groupFileFallback, sr as readGroupWant, tr as GROUP_WANT_NO_FRAME, va as fileMessageText, vn as walletNetworkOf, xl as toBase64Url } from "./src-yMUQvdyL.js";
1
+ import { $n as GROUP_FILE_LIMITS, Cl as randomBytes, Da as RateWindow, Fn as resolveLightningDestination, Ga as replySnippet, In as decodeBolt11, Lr as ChatFiles, Pn as requestLnurlInvoice, Xn as engineError, Zn as engineText, ar as isGroupMessageId, cr as readGroupWant, er as GROUP_HAVE_FRAME, fn as WALLET_NETWORKS, ir as groupFileFallback, lr as readGroupWantNo, nr as GROUP_WANT_NO_FRAME, rr as fetchesByItself, sr as readGroupHave, vn as walletNetworkOf, wl as toBase64Url, ya as fileMessageText, zr as transferEnded } from "./src-RQ6OJOUO.js";
2
2
  import { a as describeProvider, c as offeredIn, d as sourceProblem, n as PROVIDER_PLATFORMS, o as isNothingSpentError, s as networkMode, t as NothingSpentError, u as redact } from "./types-C4_KafL_.js";
3
3
  import { c as fileStore, f as store, i as STORES, m as wrap, o as databaseName, p as transact } from "./idb-B5L8wuOm.js";
4
- import { a as sealSeed, i as newDeviceKey, o as unsealSeed, t as networkReason } from "./networkReason-D42iNuUB.js";
4
+ import { a as sealSeed, i as newDeviceKey, o as unsealSeed, t as networkReason } from "./networkReason-WikfjkIw.js";
5
5
  import { t as BITCOIN_INVOICE_ON_TESTNET, u as mintNetwork } from "./mints-BrlY773j.js";
6
6
  import { f as FILE_BYTES_STEP, o as fileBytes, s as fileBytesOf } from "./fileBytes-Di7VZtmU.js";
7
7
  import { sha256 } from "@noble/hashes/sha2.js";
@@ -2296,6 +2296,7 @@ var GroupFileDesk = class {
2296
2296
  if (kept.held || kept.mine) return;
2297
2297
  const want = this.wants.get(kept.id);
2298
2298
  this.wants.delete(kept.id);
2299
+ if (want?.wire && want.holder) kept.left = want.holder;
2299
2300
  const edge = want?.wire && want.linkId ? this.edgesById.get(want.linkId) : void 0;
2300
2301
  const record = edge?.files.get("in", want.wire);
2301
2302
  const { size } = kept.meta;
@@ -2546,6 +2547,7 @@ var GroupFileDesk = class {
2546
2547
  kept.holders = newestHolder(peer, kept.holders);
2547
2548
  want.wire = frame.id;
2548
2549
  want.why = void 0;
2550
+ want.moved = -1;
2549
2551
  want.movedAt = this.deps.now();
2550
2552
  }
2551
2553
  return edge.files.handle(frame);
@@ -2561,6 +2563,7 @@ var GroupFileDesk = class {
2561
2563
  }
2562
2564
  if (now - (want.wire ? want.movedAt : want.at) < GROUP_FILE_LIMITS.wantWaitMs) continue;
2563
2565
  if (want.wire) {
2566
+ kept.left = want.holder;
2564
2567
  const edge = want.linkId ? this.edgesById.get(want.linkId) : void 0;
2565
2568
  if (edge?.files.get("in", want.wire) && !transferEnded(edge.files.get("in", want.wire))) {
2566
2569
  edge.files.cancel("in", want.wire);
@@ -2631,16 +2634,16 @@ var GroupFileDesk = class {
2631
2634
  return [kept.author, ...kept.holders.filter((key) => key !== kept.author)].filter((key) => membership && key !== membership.me && membership.inRoster(key));
2632
2635
  }
2633
2636
  /**
2634
- * A known holder that answered busy, or the author whose edge another file of this device's is asked of, its edge up,
2635
- * serves when its place frees: the others are asked only when no known holder is worth waiting for (none in reach, or
2636
- * every one gone), as after a restart here. Only the author's edge holds them back while it is asked of: any member
2637
- * can say it holds files, and one that serves the file asked of it slowly would keep every other file it named here.
2637
+ * The author, its edge up, that answered busy or whose edge another file of this device's is asked of, serves when its
2638
+ * place frees: the others are asked only when it is not worth waiting for (out of reach), as after a restart here.
2639
+ * Only the author holds them back: any member can say it holds files, and one that answers busy, or serves the file
2640
+ * asked of it slowly, would keep every file it named here from coming while the author is away. Its busy only skips
2641
+ * it for the round.
2638
2642
  */
2639
2643
  waitForKnown(kept, want, known, edges) {
2640
- return known.some((key) => {
2641
- const linkId = edges.get(key) ?? "";
2642
- return this.deps.ready(linkId) && (want.busy?.has(key) || key === kept.author && this.askedOf(linkId, want));
2643
- });
2644
+ if (!known.includes(kept.author)) return false;
2645
+ const linkId = edges.get(kept.author) ?? "";
2646
+ return this.deps.ready(linkId) && (!!want.busy?.has(kept.author) || this.askedOf(linkId, want));
2644
2647
  }
2645
2648
  /** The want may ask this member in this round: not asked yet, it did not serve it damaged, and did not say it is gone. */
2646
2649
  mayAsk(kept, want, key, linkId) {
@@ -2667,6 +2670,7 @@ var GroupFileDesk = class {
2667
2670
  }
2668
2671
  const others = this.waitForKnown(kept, want, known, edges) ? [] : [...edges.keys()].filter((key) => !known.includes(key) && membership && key !== membership.me && membership.couldRead(key, kept.message));
2669
2672
  const order = [...known, ...others].filter((key) => this.mayAsk(kept, want, key, edges.get(key)));
2673
+ if (kept.left && order.includes(kept.left)) order.push(...order.splice(order.indexOf(kept.left), 1));
2670
2674
  let behind = false;
2671
2675
  for (const key of order) {
2672
2676
  const linkId = edges.get(key);
@@ -2822,7 +2826,8 @@ var GroupFileDesk = class {
2822
2826
  edge.serving.set(wire, kept.id);
2823
2827
  edge.servedMoved.set(wire, {
2824
2828
  confirmed: 0,
2825
- at: this.deps.now()
2829
+ at: this.deps.now(),
2830
+ from: this.deps.now()
2826
2831
  });
2827
2832
  const { name, mime, size, voice, video, image } = kept.meta;
2828
2833
  const file = {
@@ -2849,20 +2854,37 @@ var GroupFileDesk = class {
2849
2854
  if (!this.deps.settings().serveFiles || !edge.files.live) return "busy";
2850
2855
  this.letGo();
2851
2856
  const active = this.servingNow();
2852
- if (active.length >= GROUP_FILE_LIMITS.serveAtOnce) {
2857
+ const theirs = active.filter((a) => a.peer === edge.peer);
2858
+ const placed = theirs.length > 1 || theirs.some((a) => a.sending || this.deps.now() - a.since >= GROUP_FILE_LIMITS.doneWaitMs);
2859
+ if (active.length >= GROUP_FILE_LIMITS.serveAtOnce && (placed || !this.makeRoom())) {
2853
2860
  edge.busy.add(messageId);
2854
2861
  return "busy";
2855
2862
  }
2856
- const theirs = active.filter((a) => a.peer === edge.peer);
2857
- if (theirs.length > 1 || theirs.some((a) => a.sending || this.deps.now() - a.since >= GROUP_FILE_LIMITS.doneWaitMs)) return "busy";
2863
+ if (placed) return "busy";
2858
2864
  const today = Math.floor(this.deps.now() / 864e5);
2859
2865
  if (this.served.day !== today) this.served = {
2860
2866
  day: today,
2861
2867
  bytes: 0
2862
2868
  };
2863
- const reserved = active.reduce((sum, a) => sum + a.size, 0);
2869
+ const reserved = this.servingNow().reduce((sum, a) => sum + a.size, 0);
2864
2870
  return this.served.bytes + reserved + kept.meta.size > GROUP_FILE_LIMITS.serveBytesPerDay ? "busy" : null;
2865
2871
  }
2872
+ /** Ends the served transfer that has held its place longest, once past `servePlaceMs`: false when none has. */
2873
+ makeRoom() {
2874
+ const now = this.deps.now();
2875
+ let oldest;
2876
+ for (const edge of this.edgesById.values()) for (const wire of edge.serving.keys()) {
2877
+ const record = edge.files.get("out", wire), from = edge.servedMoved.get(wire)?.from ?? now;
2878
+ if (record && !transferEnded(record) && now - from >= GROUP_FILE_LIMITS.servePlaceMs && (!oldest || from < oldest.from)) oldest = {
2879
+ edge,
2880
+ wire,
2881
+ from
2882
+ };
2883
+ }
2884
+ if (!oldest) return false;
2885
+ oldest.edge.files.cancel("out", oldest.wire);
2886
+ return true;
2887
+ }
2866
2888
  /**
2867
2889
  * Transfers served now, all groups together: to whom, what each takes of the day (its size, or what it sent when that
2868
2890
  * is more), whether bytes are still to go, and since when it has not gone further.
@@ -2894,8 +2916,9 @@ var GroupFileDesk = class {
2894
2916
  }
2895
2917
  /**
2896
2918
  * Served transfers that no longer count end, their places free for others (WISP 503 § Serving limits): the asker's
2897
- * session closed, it is not in the roster any more, its bytes have not gone further for `wantWaitMs` (the asker has
2898
- * moved on by then), or it has all its bytes and the member's next want has overtaken its word for `doneWaitMs`.
2919
+ * session closed, it is not in the roster any more, it has not had `serveMoveBytes` more confirmed (or the rest of
2920
+ * its file) for `wantWaitMs` (the asker has moved on by then), or it has all its bytes and the member's next want has
2921
+ * overtaken its word for `doneWaitMs`.
2899
2922
  */
2900
2923
  letGo() {
2901
2924
  const now = this.deps.now();
@@ -2907,7 +2930,8 @@ var GroupFileDesk = class {
2907
2930
  let moved = edge.servedMoved.get(wire);
2908
2931
  if (!moved) edge.servedMoved.set(wire, moved = {
2909
2932
  confirmed: record.confirmed,
2910
- at: now
2933
+ at: now,
2934
+ from: now
2911
2935
  });
2912
2936
  const gone = !edge.files.live || !this.deps.membership(edge.groupId)?.inRoster(edge.peer);
2913
2937
  const overtaken = record.confirmed === record.file.size && theirs.get(edge.peer) > 1 && now - moved.at >= GROUP_FILE_LIMITS.doneWaitMs;
@@ -3057,7 +3081,8 @@ var GroupFileDesk = class {
3057
3081
  if (transferEnded(record)) this.transferOver(edge, record);
3058
3082
  if (record.direction === "out") {
3059
3083
  const moved = edge.servedMoved.get(record.id);
3060
- if (moved && record.confirmed > moved.confirmed) edge.servedMoved.set(record.id, {
3084
+ if (moved && record.confirmed > moved.confirmed && (record.confirmed - moved.confirmed >= GROUP_FILE_LIMITS.serveMoveBytes || record.confirmed === record.file.size)) edge.servedMoved.set(record.id, {
3085
+ ...moved,
3061
3086
  confirmed: record.confirmed,
3062
3087
  at: this.deps.now()
3063
3088
  });
@@ -3080,7 +3105,8 @@ var GroupFileDesk = class {
3080
3105
  }
3081
3106
  const kept = this.kept.get(edge.taking.get(record.id) ?? ""), want = kept && this.wants.get(kept.id);
3082
3107
  if (!kept || !want || want.wire !== record.id || want.linkId !== edge.linkId) return;
3083
- if (transferred !== want.moved) {
3108
+ if (want.moved < 0) want.moved = transferred;
3109
+ else if (transferred - want.moved >= Math.min(GROUP_FILE_LIMITS.wantMoveBytes, kept.meta.size - want.moved)) {
3084
3110
  want.moved = transferred;
3085
3111
  want.movedAt = this.deps.now();
3086
3112
  }
@@ -3226,4 +3252,4 @@ function messageFile(kept) {
3226
3252
  //#endregion
3227
3253
  export { setSingleWriterGate as $, LightningCards as A, breezDatabaseInUse as B, FileAppender as C, streamStored as D, storedSize as E, ProviderSources as F, ModeChanged as G, dropBreezDatabase as H, sourceKey as I, networkLabel as J, ModeGate as K, CASHU_MINT_SOURCE as L, isRecoveryPhrase as M, normalizePhrase as N, waitingGroupFile as O, lightningPaying as P, setAwayWallets as Q, cashuMint as R, WALLET_TYPES as S, removeStored as T, iceServerProblem as U, breezDatabasesFor as V, iceServerSetting as W, refuseAway as X, awayFrom as Y, requireTurn as Z, crossNetwork as _, storedGroupFiles as a, walletInstances as b, receivedPairedReply as c, paymentAlias as d, paymentWireId as f, createTiming as g, createFailure as h, groupOfFile as i, cardsKey as j, CASHU_CARD as k, replyRef as l, assertConfirmedReal as m, groupFileId as n, groupReply as o, WALLET_NAMES as p, WrongNetworkError as q, groupFileText as r, pairedWireReply as s, GroupFileDesk as t, replyTo as u, paymentNetwork as v, readStored as w, MESSAGE_DETAILS_MAX_BYTES as x, paymentNetworksOf as y, breezDatabase as z };
3228
3254
 
3229
- //# sourceMappingURL=groupFiles-DHTrTA4I.js.map
3255
+ //# sourceMappingURL=groupFiles-BurezP4Z.js.map