aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBob Zeleznik <zzzman@gmail.com>2020-02-19 21:31:59 -0500
committerBob Zeleznik <zzzman@gmail.com>2020-02-19 21:31:59 -0500
commit918db102f808084a7e58832e4c196c0655fd6730 (patch)
treeec4493a61284a05ba587f845d4ed69d430bfde33 /src
parente625ff09a94160e28f0afda56f4ae7e48b58c0b3 (diff)
fixed displaying docs in fields
Diffstat (limited to 'src')
-rw-r--r--src/client/views/nodes/FieldView.tsx6
-rw-r--r--src/new_fields/Doc.ts6
2 files changed, 5 insertions, 7 deletions
diff --git a/src/client/views/nodes/FieldView.tsx b/src/client/views/nodes/FieldView.tsx
index f5c85e143..55d23da12 100644
--- a/src/client/views/nodes/FieldView.tsx
+++ b/src/client/views/nodes/FieldView.tsx
@@ -2,7 +2,7 @@ import React = require("react");
import { computed } from "mobx";
import { observer } from "mobx-react";
import { DateField } from "../../../new_fields/DateField";
-import { Doc, FieldResult, Opt } from "../../../new_fields/Doc";
+import { Doc, FieldResult, Opt, Field } from "../../../new_fields/Doc";
import { List } from "../../../new_fields/List";
import { ScriptField } from "../../../new_fields/ScriptField";
import { AudioField, VideoField } from "../../../new_fields/URLField";
@@ -107,9 +107,7 @@ export class FieldView extends React.Component<FieldViewProps> {
// );
}
else if (field instanceof List) {
- return (<div>
- {field.map(f => f instanceof Doc ? f.title : (f && f.toString && f.toString())).join(", ")}
- </div>);
+ return <div> {field.map(f => Field.toString(f)).join(", ")} </div>;
}
// bcz: this belongs here, but it doesn't render well so taking it out for now
// else if (field instanceof HtmlField) {
diff --git a/src/new_fields/Doc.ts b/src/new_fields/Doc.ts
index 2c7fc6672..0af345a98 100644
--- a/src/new_fields/Doc.ts
+++ b/src/new_fields/Doc.ts
@@ -17,7 +17,6 @@ import { listSpec } from "./Schema";
import { ComputedField } from "./ScriptField";
import { Cast, FieldValue, NumCast, StrCast, ToConstructor } from "./Types";
import { deleteProperty, getField, getter, makeEditable, makeReadOnly, setter, updateFunction } from "./util";
-import { DatasetAbout } from "../client/northstar/model/idea/idea";
export namespace Field {
export function toKeyValueString(doc: Doc, key: string): string {
@@ -191,8 +190,8 @@ export class Doc extends RefField {
return undefined;
}
- [ToScriptString]() { return "invalid"; }
- [ToString]() { return "Doc"; }
+ [ToScriptString]() { return `DOC-"${this[Self][Id]}"-`; }
+ [ToString]() { return `Doc(${this.title})`; }
private [CachedUpdates]: { [key: string]: () => void | Promise<any> } = {};
public static CurrentUserEmail: string = "";
@@ -845,6 +844,7 @@ Scripting.addGlobal(function sameDocs(doc1: any, doc2: any) { return Doc.AreProt
Scripting.addGlobal(function setNativeView(doc: any) { Doc.setNativeView(doc); });
Scripting.addGlobal(function undo() { return UndoManager.Undo(); });
Scripting.addGlobal(function redo() { return UndoManager.Redo(); });
+Scripting.addGlobal(function DOC(id: string) { console.log("Can't parse a document id in a script"); return "invalid"; });
Scripting.addGlobal(function curPresentationItem() {
const curPres = Doc.UserDoc().curPresentation as Doc;
return curPres && DocListCast(curPres[Doc.LayoutFieldKey(curPres)])[NumCast(curPres._itemIndex)];