diff options
| author | bob <bcz@cs.brown.edu> | 2019-09-13 09:18:12 -0400 |
|---|---|---|
| committer | bob <bcz@cs.brown.edu> | 2019-09-13 09:18:12 -0400 |
| commit | 32861c7cfcac8c03be5692fb98b5a7dc7786be83 (patch) | |
| tree | 3cb09464277cc020fc1ab772381cc4cbd828b091 /src/new_fields | |
| parent | b3d9c4e3d8c7c425df41b2d8555a7d242771a823 (diff) | |
| parent | e241e61d6521ff5d63de1292f2b4269493f5d7cc (diff) | |
Merge branch 'master' of https://github.com/browngraphicslab/Dash-Web
Diffstat (limited to 'src/new_fields')
| -rw-r--r-- | src/new_fields/Doc.ts | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/new_fields/Doc.ts b/src/new_fields/Doc.ts index e94b9f1eb..29925feb8 100644 --- a/src/new_fields/Doc.ts +++ b/src/new_fields/Doc.ts @@ -475,13 +475,13 @@ export namespace Doc { return { layout: layoutDoc, data: resolvedDataDoc }; } - export function MakeCopy(doc: Doc, copyProto: boolean = false): Doc { - const copy = new Doc; + export function MakeCopy(doc: Doc, copyProto: boolean = false, copyProtoId?: string): Doc { + const copy = new Doc(copyProtoId, true); Object.keys(doc).forEach(key => { const field = ProxyField.WithoutProxy(() => doc[key]); if (key === "proto" && copyProto) { - if (field instanceof Doc) { - copy[key] = Doc.MakeCopy(field); + if (doc[key] instanceof Doc) { + copy[key] = Doc.MakeCopy(doc[key]!, false); } } else { if (field instanceof RefField) { |
