aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authoryipstanley <stanley_yip@brown.edu>2019-02-11 20:32:22 -0500
committeryipstanley <stanley_yip@brown.edu>2019-02-11 20:32:22 -0500
commit7d30ae6c423290e502f72be566c4aba4fe62f9ff (patch)
tree53141e505c042cc69d481e4c731cc727728888a3 /src
parent867fd2bffb67be06e889d3ac0fb6603bc8c4d92a (diff)
asdkjfl
Diffstat (limited to 'src')
-rw-r--r--src/fields/Document.ts2
-rw-r--r--src/fields/Field.ts18
-rw-r--r--src/fields/Key.ts4
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;
}