diff options
| author | Bob Zeleznik <zzzman@gmail.com> | 2019-06-08 09:18:46 -0400 |
|---|---|---|
| committer | Bob Zeleznik <zzzman@gmail.com> | 2019-06-08 09:18:46 -0400 |
| commit | 39be491bf3c750902250a0afe0321a05b7643026 (patch) | |
| tree | 54efa68a347369f9837b9b8e11b194a1719d79a5 /src/new_fields/util.ts | |
| parent | 7c32a4f51fd921a0a093bc285e22a5a617c4ad83 (diff) | |
fixed deletion of keys to actually remove them on the server. added '=' syntax on kvp to set on proto. := sets a computed script. =:= sets computed script on proto
Diffstat (limited to 'src/new_fields/util.ts')
| -rw-r--r-- | src/new_fields/util.ts | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/new_fields/util.ts b/src/new_fields/util.ts index ad07d05a3..fe0da2e7a 100644 --- a/src/new_fields/util.ts +++ b/src/new_fields/util.ts @@ -44,7 +44,8 @@ export const setter = action(function (target: any, prop: string | symbol | numb } else { target.__fields[prop] = value; } - target[Update]({ '$set': { ["fields." + prop]: value instanceof ObjectField ? SerializationHelper.Serialize(value) : (value === undefined ? null : value) } }); + if (value === undefined) target[Update]({ '$unset': { ["fields." + prop]: "" } }); + else target[Update]({ '$set': { ["fields." + prop]: value instanceof ObjectField ? SerializationHelper.Serialize(value) : (value === undefined ? null : value) } }); UndoManager.AddEvent({ redo: () => receiver[prop] = value, undo: () => receiver[prop] = curValue |
