diff options
author | madelinegr <laura_wilson@brown.edu> | 2019-02-28 00:20:14 -0500 |
---|---|---|
committer | madelinegr <laura_wilson@brown.edu> | 2019-02-28 00:20:14 -0500 |
commit | 23387df535e9ab87a08196aab19de6f937ae9bba (patch) | |
tree | ef5ea77a362d0884ee1cbfe7fa87bfe88c6f4e87 /src/fields/KVPField.ts | |
parent | 4d356d098e44d3d736358d166e905aec1de9c4d6 (diff) |
finished kvp
Diffstat (limited to 'src/fields/KVPField.ts')
-rw-r--r-- | src/fields/KVPField.ts | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/fields/KVPField.ts b/src/fields/KVPField.ts new file mode 100644 index 000000000..a7ecc0768 --- /dev/null +++ b/src/fields/KVPField.ts @@ -0,0 +1,30 @@ +import { BasicField } from "./BasicField" +import { FieldId } from "./Field"; +import { Types } from "../server/Message"; +import { Document } from "./Document" + +export class KVPField extends BasicField<Document> { + constructor(data: Document | undefined = undefined, id?: FieldId, save: boolean = true) { + super(data == undefined ? new Document() : data, save, id); + } + + toString(): string { + return this.Data.Title; + } + + ToScriptString(): string { + return `new KVPField("${this.Data}")`; + } + + Copy() { + return new KVPField(this.Data); + } + + ToJson(): { type: Types, data: Document, _id: string } { + return { + type: Types.Text, + data: this.Data, + _id: this.Id + } + } +}
\ No newline at end of file |