aboutsummaryrefslogtreecommitdiff
path: root/src/fields/ObjectField.ts
diff options
context:
space:
mode:
authorbobzel <zzzman@gmail.com>2024-08-13 15:14:05 -0400
committerbobzel <zzzman@gmail.com>2024-08-13 15:14:05 -0400
commit4d45f8a046ce5300f0b046457a381d219eef3363 (patch)
treeb4f1a2fcff857840e5b281b25729a8f378467ef6 /src/fields/ObjectField.ts
parent5c7964173d80752200727d8340825210c2704265 (diff)
cleaning up database types
Diffstat (limited to 'src/fields/ObjectField.ts')
-rw-r--r--src/fields/ObjectField.ts15
1 files changed, 11 insertions, 4 deletions
diff --git a/src/fields/ObjectField.ts b/src/fields/ObjectField.ts
index 21c4af608..5f31208eb 100644
--- a/src/fields/ObjectField.ts
+++ b/src/fields/ObjectField.ts
@@ -2,11 +2,18 @@ import { ScriptingGlobals } from '../client/util/ScriptingGlobals';
import { Copy, FieldChanged, Parent, ToJavascriptString, ToScriptString, ToString } from './FieldSymbols';
import { RefField } from './RefField';
+export type serializedFieldType = { fieldId: string; heading?: string; __type: string };
+export type serializedFieldsType = { [key: string]: { fields: serializedFieldType[] } };
+export interface serializedDoctype {
+ readonly id: string;
+ readonly fields?: serializedFieldsType;
+}
+
export type serverOpType = {
- $set?: { [key: string]: unknown }; //
+ $set?: serializedFieldsType; //
$unset?: { [key: string]: unknown };
- $remFromSet?: { [key: string]: unknown };
- $addToSet?: { [key: string]: unknown };
+ $remFromSet?: { [key: string]: { fields: serializedFieldType[] } | { deleteCount: number; start: number } | undefined; hint?: { deleteCount: number; start: number } };
+ $addToSet?: serializedFieldsType;
length?: number;
};
export abstract class ObjectField {
@@ -15,7 +22,7 @@ export abstract class ObjectField {
// eslint-disable-next-line no-use-before-define
items: FieldType[] | undefined;
length: number | undefined;
- hint?: unknown },
+ hint?: { deleteCount: number, start: number} },
serverOp?: serverOpType) => void;
// eslint-disable-next-line no-use-before-define
public [Parent]?: RefField | ObjectField;