aboutsummaryrefslogtreecommitdiff
path: root/src/client/views/collections/CollectionDockingView.tsx
diff options
context:
space:
mode:
authorbobzel <zzzman@gmail.com>2021-03-12 22:18:10 -0500
committerbobzel <zzzman@gmail.com>2021-03-12 22:18:10 -0500
commitb18d4d2b9a4a624e61116642d4dbfe9a53437d0c (patch)
tree95ad9705ebcff19597f8422a67918e53708daf7d /src/client/views/collections/CollectionDockingView.tsx
parent86d5114cfc8b541438dcbdfb059693763c78a986 (diff)
prevent anything but Docs from being written to offScreenTabs. fixed tabs to activate an unrendered tab when it is uncovered for the first time.
Diffstat (limited to 'src/client/views/collections/CollectionDockingView.tsx')
-rw-r--r--src/client/views/collections/CollectionDockingView.tsx9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/client/views/collections/CollectionDockingView.tsx b/src/client/views/collections/CollectionDockingView.tsx
index 5da75b1b7..3556e74bc 100644
--- a/src/client/views/collections/CollectionDockingView.tsx
+++ b/src/client/views/collections/CollectionDockingView.tsx
@@ -372,16 +372,17 @@ export class CollectionDockingView extends CollectionSubView(doc => doc) {
this.props.Document.dockingConfig = json;
setTimeout(async () => {
- const sublists = DocListCast(this.props.Document[this.props.fieldKey]);
- const tabs = Cast(sublists[0], Doc, null);
- const other = Cast(sublists[1], Doc, null);
+ const sublists = await DocListCastAsync(this.props.Document[this.props.fieldKey]);
+ const tabs = sublists && Cast(sublists[0], Doc, null);
+ const other = sublists && Cast(sublists[1], Doc, null);
const tabdocs = await DocListCastAsync(tabs?.data);
const otherdocs = await DocListCastAsync(other?.data);
tabs && (Doc.GetProto(tabs).data = new List<Doc>(docs));
const otherSet = new Set<Doc>();
otherdocs?.filter(doc => !docs.includes(doc)).forEach(doc => otherSet.add(doc));
tabdocs?.filter(doc => !docs.includes(doc) && doc.type !== DocumentType.KVP).forEach(doc => otherSet.add(doc));
- other && (Doc.GetProto(other).data = new List<Doc>(Array.from(otherSet.values())));
+ const vals = Array.from(otherSet.values()).filter(val => val instanceof Doc).map(d => d as Doc).filter(d => d.type !== DocumentType.KVP);
+ other && (Doc.GetProto(other).data = new List<Doc>(vals));
}, 0);
}