diff options
Diffstat (limited to 'src/fields/Document.ts')
-rw-r--r-- | src/fields/Document.ts | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/fields/Document.ts b/src/fields/Document.ts index 0551a74b0..5c0a9caf0 100644 --- a/src/fields/Document.ts +++ b/src/fields/Document.ts @@ -3,6 +3,7 @@ import { Key, KeyStore } from "./Key" import { NumberField } from "./NumberField"; import { ObservableMap, computed } from "mobx"; import { TextField } from "./TextField"; +import { ListField } from "./ListField"; export class Document extends Field { private fields: ObservableMap<Key, Field> = new ObservableMap(); @@ -51,14 +52,18 @@ export class Document extends Field { return vval; } - GetNumberValue(key: Key, defaultVal: number): number { + GetNumberField(key: Key, defaultVal: number): number { return this.GetFieldValue(key, NumberField, defaultVal); } - GetTextValue(key: Key, defaultVal: string): string { + GetTextField(key: Key, defaultVal: string): string { return this.GetFieldValue(key, TextField, defaultVal); } + GetListField<T extends Field>(key: Key, defaultVal: T[]): T[] { + return this.GetFieldValue<T[], ListField<T>>(key, ListField, defaultVal) + } + SetField(key: Key, field: Field | undefined): void { if (field) { this.fields.set(key, field); |