aboutsummaryrefslogtreecommitdiff
path: root/src/server/websocket.ts
diff options
context:
space:
mode:
authorbobzel <zzzman@gmail.com>2020-10-10 20:49:26 -0400
committerbobzel <zzzman@gmail.com>2020-10-10 20:49:26 -0400
commit858fdbf31c9ddbf00eae692cd43e70455a19e1b5 (patch)
treec3756fb8b91e95d2fb98cad8d519d6bb8b2ff790 /src/server/websocket.ts
parentc63aeeb0010a79f0b19d8719f97d98b7a83baf3b (diff)
fixed docFilters to use up one string field, not 3. makes adding/removing to lists incrementally work with new server code.
Diffstat (limited to 'src/server/websocket.ts')
-rw-r--r--src/server/websocket.ts4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/server/websocket.ts b/src/server/websocket.ts
index 03795d254..1e02b9e58 100644
--- a/src/server/websocket.ts
+++ b/src/server/websocket.ts
@@ -276,7 +276,7 @@ export namespace WebSocket {
const updatefield = Array.from(Object.keys(diff.diff.$set))[0];
const newListItems = diff.diff.$set[updatefield].fields;
const curList = (curListItems as any)?.fields?.[updatefield.replace("fields.", "")]?.fields || [];
- diff.diff.$set[updatefield].fields = [...curList, ...newListItems.filter((newItem: any) => !curList.some((curItem: any) => curItem.fieldId ? curItem.fieldId === newItem.fieldId : curItem.heading ? curItem.heading === newItem.heading : false))];
+ diff.diff.$set[updatefield].fields = [...curList, ...newListItems.filter((newItem: any) => !curList.some((curItem: any) => curItem.fieldId ? curItem.fieldId === newItem.fieldId : curItem.heading ? curItem.heading === newItem.heading : curItem === newItem))];
const sendBack = diff.diff.length !== diff.diff.$set[updatefield].fields.length;
delete diff.diff.length;
Database.Instance.update(diff.id, diff.diff,
@@ -295,7 +295,7 @@ export namespace WebSocket {
const updatefield = Array.from(Object.keys(diff.diff.$set))[0];
const remListItems = diff.diff.$set[updatefield].fields;
const curList = (curListItems as any)?.fields?.[updatefield.replace("fields.", "")]?.fields || [];
- diff.diff.$set[updatefield].fields = curList?.filter((curItem: any) => !remListItems.some((remItem: any) => remItem.fieldId ? remItem.fieldId === curItem.fieldId : remItem.heading ? remItem.heading === curItem.heading : false));
+ diff.diff.$set[updatefield].fields = curList?.filter((curItem: any) => !remListItems.some((remItem: any) => remItem.fieldId ? remItem.fieldId === curItem.fieldId : remItem.heading ? remItem.heading === curItem.heading : remItem === curItem));
const sendBack = diff.diff.length !== diff.diff.$set[updatefield].fields.length;
delete diff.diff.length;
Database.Instance.update(diff.id, diff.diff,