diff options
author | yipstanley <stanley_yip@brown.edu> | 2019-02-11 20:32:22 -0500 |
---|---|---|
committer | yipstanley <stanley_yip@brown.edu> | 2019-02-11 20:32:22 -0500 |
commit | 7d30ae6c423290e502f72be566c4aba4fe62f9ff (patch) | |
tree | 53141e505c042cc69d481e4c731cc727728888a3 /src | |
parent | 867fd2bffb67be06e889d3ac0fb6603bc8c4d92a (diff) |
asdkjfl
Diffstat (limited to 'src')
-rw-r--r-- | src/fields/Document.ts | 2 | ||||
-rw-r--r-- | src/fields/Field.ts | 18 | ||||
-rw-r--r-- | src/fields/Key.ts | 4 |
3 files changed, 15 insertions, 9 deletions
diff --git a/src/fields/Document.ts b/src/fields/Document.ts index e32e03070..004bfa4c0 100644 --- a/src/fields/Document.ts +++ b/src/fields/Document.ts @@ -160,7 +160,7 @@ export class Document extends Field { let fields: [string, string][] = [] this._proxies.forEach((field, key) => { if (field) { - fields.push([key.Name, field as string]) + fields.push([key.Id as string, field as string]) } }); diff --git a/src/fields/Field.ts b/src/fields/Field.ts index f55a80db4..03c2da7be 100644 --- a/src/fields/Field.ts +++ b/src/fields/Field.ts @@ -4,7 +4,7 @@ import { Types } from "../server/Message"; import { NumberField } from "./NumberField"; import { TextField } from "./TextField"; import { RichTextField } from "./RichTextField"; -import { KeyStore } from "./Key"; +import { KeyStore, Key } from "./Key"; import { ImageField } from "./ImageField"; import { ListField } from "./ListField"; import { Document } from "./Document"; @@ -78,7 +78,7 @@ export abstract class Field { case Types.RichText: return new RichTextField(data, id) case Types.Key: - return KeyStore.Get(data) + return new Key(data, id) case Types.Image: return new ImageField(data, id) case Types.List: @@ -87,11 +87,17 @@ export abstract class Field { let doc: Document = new Document(id) let fields: [string, string][] = data as [string, string][] fields.forEach(element => { - let keyName: string = element[0] + let keyId: string = element[0] let valueId: string = element[1] - let key = KeyStore.Get(keyName) - Server.GetField(valueId, (field: Field) => { - doc.Set(key, field) + Server.GetField(keyId, (key: Field) => { + if (key instanceof Key) { + Server.GetField(valueId, (field: Field) => { + doc.Set(key as Key, field) + }) + } + else { + console.log("how did you get a key that isnt a key wtf") + } }) }); return doc diff --git a/src/fields/Key.ts b/src/fields/Key.ts index a7303f351..084b444a6 100644 --- a/src/fields/Key.ts +++ b/src/fields/Key.ts @@ -10,8 +10,8 @@ export class Key extends Field { return this.name; } - constructor(name: string) { - super(Utils.GenerateDeterministicGuid(name)); + constructor(name: string, id?: string) { + super(id || Utils.GenerateDeterministicGuid(name)); this.name = name; } |