diff --git a/packages/client/src/automerge-editor.ts b/packages/client/src/automerge-editor.ts index 33916eb..4926229 100644 --- a/packages/client/src/automerge-editor.ts +++ b/packages/client/src/automerge-editor.ts @@ -138,7 +138,12 @@ export const AutomergeEditor = { Promise.resolve().then(_ => (e.isRemote = false)) } } catch (e) { - console.error(e) + // unset remove flag + if (e.isRemote) { + e.isRemote = false + } + + throw e } }, diff --git a/packages/client/src/withAutomerge.ts b/packages/client/src/withAutomerge.ts index 581dc03..e5b9109 100644 --- a/packages/client/src/withAutomerge.ts +++ b/packages/client/src/withAutomerge.ts @@ -108,7 +108,12 @@ const withAutomerge = ( e.receiveOperation = data => { if (docId !== data.docId) return - AutomergeEditor.applyOperation(e, docId, data, preserveExternalHistory) + try { + AutomergeEditor.applyOperation(e, docId, data, preserveExternalHistory) + } catch (err) { + // report any errors during apply operation + onError(err) + } } return e