aboutsummaryrefslogtreecommitdiff
path: root/src/fields
diff options
context:
space:
mode:
Diffstat (limited to 'src/fields')
-rw-r--r--src/fields/AudioField.ts4
-rw-r--r--src/fields/BooleanField.ts4
-rw-r--r--src/fields/Document.ts17
-rw-r--r--src/fields/DocumentReference.ts4
-rw-r--r--src/fields/Field.ts4
-rw-r--r--src/fields/HtmlField.ts4
-rw-r--r--src/fields/ImageField.ts4
-rw-r--r--src/fields/InkField.ts4
-rw-r--r--src/fields/Key.ts4
-rw-r--r--src/fields/KeyStore.ts3
-rw-r--r--src/fields/ListField.ts4
-rw-r--r--src/fields/NumberField.ts4
-rw-r--r--src/fields/PDFField.ts4
-rw-r--r--src/fields/RichTextField.ts4
-rw-r--r--src/fields/ScriptField.ts4
-rw-r--r--src/fields/TextField.ts4
-rw-r--r--src/fields/TupleField.ts4
-rw-r--r--src/fields/VideoField.ts4
-rw-r--r--src/fields/WebField.ts4
19 files changed, 46 insertions, 42 deletions
diff --git a/src/fields/AudioField.ts b/src/fields/AudioField.ts
index 996d2556d..87e47a715 100644
--- a/src/fields/AudioField.ts
+++ b/src/fields/AudioField.ts
@@ -20,11 +20,11 @@ export class AudioField extends BasicField<URL> {
return new AudioField(this.Data);
}
- ToJson(): { type: Types, data: string, _id: string } {
+ ToJson() {
return {
type: Types.Audio,
data: this.Data.href,
- _id: this.Id
+ id: this.Id
};
}
diff --git a/src/fields/BooleanField.ts b/src/fields/BooleanField.ts
index d319b4021..d49bfe82b 100644
--- a/src/fields/BooleanField.ts
+++ b/src/fields/BooleanField.ts
@@ -15,11 +15,11 @@ export class BooleanField extends BasicField<boolean> {
return new BooleanField(this.Data);
}
- ToJson(): { type: Types; data: boolean; _id: string } {
+ ToJson() {
return {
type: Types.Boolean,
data: this.Data,
- _id: this.Id
+ id: this.Id
};
}
}
diff --git a/src/fields/Document.ts b/src/fields/Document.ts
index 628fe684c..7cf784f0e 100644
--- a/src/fields/Document.ts
+++ b/src/fields/Document.ts
@@ -26,6 +26,12 @@ export class Document extends Field {
Server.UpdateField(this);
}
}
+ static FromJson(data: any, id: string, save: boolean): Document {
+ let doc = new Document(id, save);
+ let fields = data as [string, string][];
+ fields.forEach(pair => doc._proxies.set(pair[0], pair[1]));
+ return doc;
+ }
UpdateFromServer(data: [string, string][]) {
for (const key in data) {
@@ -410,18 +416,15 @@ export class Document extends Field {
return copy;
}
- ToJson(): { type: Types; data: [string, string][]; _id: string } {
+ ToJson() {
let fields: [string, string][] = [];
- this._proxies.forEach((field, key) => {
- if (field) {
- fields.push([key, field]);
- }
- });
+ this._proxies.forEach((field, key) =>
+ field && fields.push([key, field]));
return {
type: Types.Document,
data: fields,
- _id: this.Id
+ id: this.Id
};
}
}
diff --git a/src/fields/DocumentReference.ts b/src/fields/DocumentReference.ts
index 6c0c1ef82..303754177 100644
--- a/src/fields/DocumentReference.ts
+++ b/src/fields/DocumentReference.ts
@@ -47,11 +47,11 @@ export class DocumentReference extends Field {
return "";
}
- ToJson(): { type: Types, data: FieldId, _id: string } {
+ ToJson() {
return {
type: Types.DocumentReference,
data: this.document.Id,
- _id: this.Id
+ id: this.Id
};
}
} \ No newline at end of file
diff --git a/src/fields/Field.ts b/src/fields/Field.ts
index d9db23b9e..3b3e95c2b 100644
--- a/src/fields/Field.ts
+++ b/src/fields/Field.ts
@@ -1,6 +1,6 @@
import { Utils } from "../Utils";
-import { Types } from "../server/Message";
+import { Types, Transferable } from "../server/Message";
import { computed } from "mobx";
export function Cast<T extends Field>(field: FieldValue<Field>, ctor: { new(): T }): Opt<T> {
@@ -65,5 +65,5 @@ export abstract class Field {
abstract Copy(): Field;
- abstract ToJson(): { _id: string, type: Types, data: any };
+ abstract ToJson(): Transferable;
} \ No newline at end of file
diff --git a/src/fields/HtmlField.ts b/src/fields/HtmlField.ts
index 65665cf7a..a1d880070 100644
--- a/src/fields/HtmlField.ts
+++ b/src/fields/HtmlField.ts
@@ -15,11 +15,11 @@ export class HtmlField extends BasicField<string> {
return new HtmlField(this.Data);
}
- ToJson(): { _id: string; type: Types; data: string; } {
+ ToJson() {
return {
type: Types.Html,
data: this.Data,
- _id: this.Id,
+ id: this.Id,
};
}
} \ No newline at end of file
diff --git a/src/fields/ImageField.ts b/src/fields/ImageField.ts
index dd843026f..bce20f242 100644
--- a/src/fields/ImageField.ts
+++ b/src/fields/ImageField.ts
@@ -19,11 +19,11 @@ export class ImageField extends BasicField<URL> {
return new ImageField(this.Data);
}
- ToJson(): { type: Types, data: string, _id: string } {
+ ToJson() {
return {
type: Types.Image,
data: this.Data.href,
- _id: this.Id
+ id: this.Id
};
}
} \ No newline at end of file
diff --git a/src/fields/InkField.ts b/src/fields/InkField.ts
index ab706ee30..2eacd7d0c 100644
--- a/src/fields/InkField.ts
+++ b/src/fields/InkField.ts
@@ -31,11 +31,11 @@ export class InkField extends BasicField<StrokeMap> {
return new InkField(this.Data);
}
- ToJson(): { _id: string; type: Types; data: any; } {
+ ToJson() {
return {
type: Types.Ink,
data: this.Data,
- _id: this.Id,
+ id: this.Id,
};
}
diff --git a/src/fields/Key.ts b/src/fields/Key.ts
index c7f806b88..57e2dadf0 100644
--- a/src/fields/Key.ts
+++ b/src/fields/Key.ts
@@ -40,11 +40,11 @@ export class Key extends Field {
return name;
}
- ToJson(): { type: Types, data: string, _id: string } {
+ ToJson() {
return {
type: Types.Key,
data: this.name,
- _id: this.Id
+ id: this.Id
};
}
} \ No newline at end of file
diff --git a/src/fields/KeyStore.ts b/src/fields/KeyStore.ts
index da2d7268f..16a909eb8 100644
--- a/src/fields/KeyStore.ts
+++ b/src/fields/KeyStore.ts
@@ -15,6 +15,7 @@ export namespace KeyStore {
export const Width = new Key("Width");
export const Height = new Key("Height");
export const ZIndex = new Key("ZIndex");
+ export const Zoom = new Key("Zoom");
export const Data = new Key("Data");
export const Annotations = new Key("Annotations");
export const ViewType = new Key("ViewType");
@@ -48,7 +49,7 @@ export namespace KeyStore {
export const CopyDraggedItems = new Key("CopyDraggedItems");
export const KeyList: Key[] = [Prototype, X, Y, Page, Title, Author, PanX, PanY, Scale, NativeWidth, NativeHeight,
- Width, Height, ZIndex, Data, Annotations, ViewType, Layout, BackgroundColor, BackgroundLayout, OverlayLayout, LayoutKeys,
+ Width, Height, ZIndex, Zoom, Data, Annotations, ViewType, Layout, BackgroundColor, BackgroundLayout, OverlayLayout, LayoutKeys,
LayoutFields, ColumnsKey, SchemaSplitPercentage, Caption, ActiveWorkspace, DocumentText, BrushingDocs, LinkedToDocs, LinkedFromDocs,
LinkDescription, LinkTags, Thumbnail, ThumbnailPage, CurPage, AnnotationOn, NumPages, Ink, Cursors, OptionalRightCollection,
Archives, Workspaces, Minimized, CopyDraggedItems
diff --git a/src/fields/ListField.ts b/src/fields/ListField.ts
index 8311e737b..e24099126 100644
--- a/src/fields/ListField.ts
+++ b/src/fields/ListField.ts
@@ -176,14 +176,14 @@ export class ListField<T extends Field> extends BasicField<T[]> {
this._proxies = data.fields;
this._scriptIds = data.scripts;
}
- ToJson(): { type: Types, data: { fields: string[], scripts: string[] }, _id: string } {
+ ToJson() {
return {
type: Types.List,
data: {
fields: this._proxies,
scripts: this._scriptIds,
},
- _id: this.Id
+ id: this.Id
};
}
diff --git a/src/fields/NumberField.ts b/src/fields/NumberField.ts
index 45b920e31..7eea360c0 100644
--- a/src/fields/NumberField.ts
+++ b/src/fields/NumberField.ts
@@ -15,9 +15,9 @@ export class NumberField extends BasicField<number> {
return new NumberField(this.Data);
}
- ToJson(): { _id: string, type: Types, data: number } {
+ ToJson() {
return {
- _id: this.Id,
+ id: this.Id,
type: Types.Number,
data: this.Data
};
diff --git a/src/fields/PDFField.ts b/src/fields/PDFField.ts
index 65e179894..718a1a4c0 100644
--- a/src/fields/PDFField.ts
+++ b/src/fields/PDFField.ts
@@ -22,11 +22,11 @@ export class PDFField extends BasicField<URL> {
return `new PDFField("${this.Data}")`;
}
- ToJson(): { type: Types, data: string, _id: string } {
+ ToJson() {
return {
type: Types.PDF,
data: this.Data.href,
- _id: this.Id
+ id: this.Id
};
}
diff --git a/src/fields/RichTextField.ts b/src/fields/RichTextField.ts
index 6f7b3074a..f53f48ca6 100644
--- a/src/fields/RichTextField.ts
+++ b/src/fields/RichTextField.ts
@@ -15,11 +15,11 @@ export class RichTextField extends BasicField<string> {
return new RichTextField(this.Data);
}
- ToJson(): { type: Types, data: string, _id: string } {
+ ToJson() {
return {
type: Types.RichText,
data: this.Data,
- _id: this.Id
+ id: this.Id
};
}
diff --git a/src/fields/ScriptField.ts b/src/fields/ScriptField.ts
index 34c8a7544..7f87be45d 100644
--- a/src/fields/ScriptField.ts
+++ b/src/fields/ScriptField.ts
@@ -73,7 +73,7 @@ export class ScriptField extends Field {
});
}
- ToJson(): { _id: string, type: Types, data: ScriptData } {
+ ToJson() {
const { options, originalScript } = this.script;
let capturedIds: { [id: string]: string } = {};
for (const capt in options.capturedVariables) {
@@ -85,7 +85,7 @@ export class ScriptField extends Field {
};
delete (opts as any).capturedVariables;
return {
- _id: this.Id,
+ id: this.Id,
type: Types.Script,
data: {
script: originalScript,
diff --git a/src/fields/TextField.ts b/src/fields/TextField.ts
index 69d26f42f..ddedec9b1 100644
--- a/src/fields/TextField.ts
+++ b/src/fields/TextField.ts
@@ -15,11 +15,11 @@ export class TextField extends BasicField<string> {
return new TextField(this.Data);
}
- ToJson(): { type: Types, data: string, _id: string } {
+ ToJson() {
return {
type: Types.Text,
data: this.Data,
- _id: this.Id
+ id: this.Id
};
}
} \ No newline at end of file
diff --git a/src/fields/TupleField.ts b/src/fields/TupleField.ts
index ad0f6f350..347f1fa05 100644
--- a/src/fields/TupleField.ts
+++ b/src/fields/TupleField.ts
@@ -49,11 +49,11 @@ export class TupleField<T, U> extends BasicField<[T, U]> {
return new TupleField<T, U>(this.Data);
}
- ToJson(): { type: Types, data: [T, U], _id: string } {
+ ToJson() {
return {
type: Types.Tuple,
data: this.Data,
- _id: this.Id
+ id: this.Id
};
}
} \ No newline at end of file
diff --git a/src/fields/VideoField.ts b/src/fields/VideoField.ts
index d7cd7e968..838b811b1 100644
--- a/src/fields/VideoField.ts
+++ b/src/fields/VideoField.ts
@@ -19,11 +19,11 @@ export class VideoField extends BasicField<URL> {
return new VideoField(this.Data);
}
- ToJson(): { type: Types, data: string, _id: string } {
+ ToJson() {
return {
type: Types.Video,
data: this.Data.href,
- _id: this.Id
+ id: this.Id
};
}
diff --git a/src/fields/WebField.ts b/src/fields/WebField.ts
index 6023e9e6b..8b276a552 100644
--- a/src/fields/WebField.ts
+++ b/src/fields/WebField.ts
@@ -19,11 +19,11 @@ export class WebField extends BasicField<URL> {
return new WebField(this.Data);
}
- ToJson(): { type: Types, data: string, _id: string } {
+ ToJson() {
return {
type: Types.Web,
data: this.Data.href,
- _id: this.Id
+ id: this.Id
};
}