diff options
author | Bob Zeleznik <zzzman@gmail.com> | 2019-06-25 19:03:25 -0400 |
---|---|---|
committer | Bob Zeleznik <zzzman@gmail.com> | 2019-06-25 19:03:25 -0400 |
commit | e49fa36db6eab77bcd89c48969f555ae0579aa9a (patch) | |
tree | e14bede37e8e7440a41f80629a19500074845443 /src/new_fields/Doc.ts | |
parent | 8af69f89c93b7f4287c1fba237ea42aa741c4137 (diff) |
fixed setup of documents to extend fields
Diffstat (limited to 'src/new_fields/Doc.ts')
-rw-r--r-- | src/new_fields/Doc.ts | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/new_fields/Doc.ts b/src/new_fields/Doc.ts index e0937c619..621f87981 100644 --- a/src/new_fields/Doc.ts +++ b/src/new_fields/Doc.ts @@ -249,6 +249,16 @@ export namespace Doc { return true; } + export function MakeFieldExtension(doc: Doc, fieldKey: string) { + let fieldExtension = new Doc(doc[Id] + fieldKey, true); + fieldExtension.title = "Extension of " + doc.title + "'s field:" + fieldKey; + let proto: Doc | undefined = doc; + while (proto && !Doc.IsPrototype(proto)) { + proto = proto.proto; + } + (proto ? proto : doc)[fieldKey + "_ext"] = fieldExtension; + } + export function MakeAlias(doc: Doc) { if (!GetT(doc, "isPrototype", "boolean", true)) { return Doc.MakeCopy(doc); |