aboutsummaryrefslogtreecommitdiff
path: root/src/new_fields
diff options
context:
space:
mode:
Diffstat (limited to 'src/new_fields')
-rw-r--r--src/new_fields/Doc.ts6
-rw-r--r--src/new_fields/LinkButtonField.ts35
2 files changed, 41 insertions, 0 deletions
diff --git a/src/new_fields/Doc.ts b/src/new_fields/Doc.ts
index cce4fff5d..f6fd44d61 100644
--- a/src/new_fields/Doc.ts
+++ b/src/new_fields/Doc.ts
@@ -8,6 +8,8 @@ import { listSpec } from "./Schema";
import { ObjectField } from "./ObjectField";
import { RefField, FieldId } from "./RefField";
import { ToScriptString, SelfProxy, Parent, OnUpdate, Self, HandleUpdate, Update, Id } from "./FieldSymbols";
+import { LinkManager } from "../client/util/LinkManager";
+import { DocUtils } from "../client/documents/Documents";
export namespace Field {
export function toScriptString(field: Field): string {
@@ -258,14 +260,18 @@ export namespace Doc {
}
} else {
if (field instanceof RefField) {
+ console.log("equals field, ref", key);
copy[key] = field;
} else if (field instanceof ObjectField) {
+ console.log("copy field, object", key);
copy[key] = ObjectField.MakeCopy(field);
} else {
+ console.log("equals field", key);
copy[key] = field;
}
}
});
+
return copy;
}
diff --git a/src/new_fields/LinkButtonField.ts b/src/new_fields/LinkButtonField.ts
new file mode 100644
index 000000000..e6d1de749
--- /dev/null
+++ b/src/new_fields/LinkButtonField.ts
@@ -0,0 +1,35 @@
+// import { Deserializable } from "../client/util/SerializationHelper";
+// import { serializable, primitive, createSimpleSchema, object } from "serializr";
+// import { ObjectField } from "./ObjectField";
+// import { Copy, ToScriptString } from "./FieldSymbols";
+// import { Doc } from "./Doc";
+// import { DocumentView } from "../client/views/nodes/DocumentView";
+
+// export type LinkButtonData = {
+// sourceViewId: string,
+// targetViewId: string
+// };
+
+// const LinkButtonSchema = createSimpleSchema({
+// sourceViewId: true,
+// targetViewId: true
+// });
+
+// @Deserializable("linkButton")
+// export class LinkButtonField extends ObjectField {
+// @serializable(object(LinkButtonSchema))
+// readonly data: LinkButtonData;
+
+// constructor(data: LinkButtonData) {
+// super();
+// this.data = data;
+// }
+
+// [Copy]() {
+// return new LinkButtonField(this.data);
+// }
+
+// [ToScriptString]() {
+// return "invalid";
+// }
+// }