diff options
author | Bob Zeleznik <zzzman@gmail.com> | 2020-02-14 16:20:17 -0500 |
---|---|---|
committer | Bob Zeleznik <zzzman@gmail.com> | 2020-02-14 16:20:17 -0500 |
commit | 4bd2312dd1c6d8dd76ef1c39db8b371f99a99f5f (patch) | |
tree | 789ac33b1200bfdeddd855df574ab04c694a6bc1 /src/client/documents/Documents.ts | |
parent | 8941c28ef2974d0d4de2729d5a65bcd9511fe505 (diff) | |
parent | 26ea3d99185ff68f86db27f3dbef92cbd2df42d0 (diff) |
Merge branch 'master' of https://github.com/browngraphicslab/Dash-Web
Diffstat (limited to 'src/client/documents/Documents.ts')
-rw-r--r-- | src/client/documents/Documents.ts | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/client/documents/Documents.ts b/src/client/documents/Documents.ts index 53671707e..072e8c612 100644 --- a/src/client/documents/Documents.ts +++ b/src/client/documents/Documents.ts @@ -357,6 +357,8 @@ export namespace Docs { }); const parentProto = Doc.GetProto(parent); const { _socket } = DocServer; + _socket.off(MessageStore.BuxtonDocumentResult.Message); + _socket.off(MessageStore.BuxtonImportComplete.Message); Utils.AddServerHandler(_socket, MessageStore.BuxtonDocumentResult, ({ device, errors }) => { if (!responded) { responded = true; @@ -688,15 +690,12 @@ export namespace Docs { if (input === undefined || input === null || ![...primitives, "object"].includes(typeof input)) { return undefined; } - let parsed = input; - if (typeof input === "string") { - parsed = JSONUtils.tryParse(input); - } + input = JSON.parse(typeof input === "string" ? input : JSON.stringify(input)); let converted: Doc; - if (typeof parsed === "object" && !(parsed instanceof Array)) { - converted = convertObject(parsed, title, appendToTarget); + if (typeof input === "object" && !(input instanceof Array)) { + converted = convertObject(input, title, appendToTarget); } else { - (converted = new Doc).json = toField(parsed); + (converted = new Doc).json = toField(input); } title && (converted.title = title); return converted; |