From 7e4d793eaa7e5b6b564355a11fa02a5611645f20 Mon Sep 17 00:00:00 2001
From: bobzel <zzzman@gmail.com>
Date: Fri, 21 Mar 2025 18:58:21 -0400
Subject: trying to improve how data / layout / root and templtae docs are
 accessed.

---
 src/client/views/DashboardView.tsx | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

(limited to 'src/client/views/DashboardView.tsx')

diff --git a/src/client/views/DashboardView.tsx b/src/client/views/DashboardView.tsx
index 7f0118ed3..f61f6db18 100644
--- a/src/client/views/DashboardView.tsx
+++ b/src/client/views/DashboardView.tsx
@@ -6,7 +6,7 @@ import * as React from 'react';
 import { FaPlus } from 'react-icons/fa';
 import { ClientUtils } from '../../ClientUtils';
 import { Doc, DocListCast } from '../../fields/Doc';
-import { AclPrivate, DocAcl, DocData } from '../../fields/DocSymbols';
+import { AclPrivate, DocAcl } from '../../fields/DocSymbols';
 import { Id } from '../../fields/FieldSymbols';
 import { List } from '../../fields/List';
 import { PrefetchProxy } from '../../fields/Proxy';
@@ -113,7 +113,7 @@ export class DashboardView extends ObservableReactComponent<object> {
 
     getDashboards = (whichGroup: DashboardGroup) => {
         if (whichGroup === DashboardGroup.MyDashboards) {
-            return DocListCast(Doc.MyDashboards.data).filter(dashboard => dashboard[DocData].author === ClientUtils.CurrentUserEmail());
+            return DocListCast(Doc.MyDashboards.data).filter(dashboard => dashboard.$author === ClientUtils.CurrentUserEmail());
         }
         return DocListCast(Doc.MySharedDocs.data_dashboards).filter(doc => doc.dockingConfig);
     };
@@ -226,7 +226,7 @@ export class DashboardView extends ObservableReactComponent<object> {
                                                   color={color}
                                                   val={StrCast(dashboard.title)}
                                                   setVal={val => {
-                                                      dashboard[DocData].title = val;
+                                                      dashboard.$title = val;
                                                   }}
                                               />
                                               {this.selectedDashboardGroup === DashboardGroup.SharedDashboards && this.isUnviewedSharedDashboard(dashboard) ? <div>unviewed</div> : <div />}
@@ -403,8 +403,8 @@ export class DashboardView extends ObservableReactComponent<object> {
                 },
             ],
         };
-        if (dashboard.dockingConfig && dashboard.dockingConfig !== dashboard[DocData].dockingConfig) dashboard.dockingConfig = JSON.stringify(reset);
-        else Doc.SetInPlace(dashboard, 'dockingConfig', JSON.stringify(reset), true);
+        const dockingOnLayout = dashboard._dockingConfig && dashboard._dockingConfig !== dashboard.$dockingConfig;
+        dashboard[`${dockingOnLayout ? '_' : '$'}dockingConfig`] = JSON.stringify(reset);
         return reset;
     };
 
@@ -427,14 +427,14 @@ export class DashboardView extends ObservableReactComponent<object> {
 
         Doc.AddDocToList(Doc.MyHeaderBar, 'data', freeformDoc, undefined, undefined, true);
         Doc.AddDocToList(Doc.MyDashboards, 'data', dashboardDoc);
-        dashboardDoc.pane_count = 1;
-        freeformDoc.embedContainer = dashboardDoc;
-        dashboardDoc.myOverlayDocs = new List<Doc>();
-        dashboardDoc[DocData].myPublishedDocs = new List<Doc>();
-        dashboardDoc[DocData].myTagCollections = new List<Doc>();
-        dashboardDoc[DocData].myUniqueFaces = new List<Doc>();
-        dashboardDoc[DocData].myTrails = DashboardView.SetupDashboardTrails();
-        dashboardDoc[DocData].myCalendars = DashboardView.SetupDashboardCalendars();
+        freeformDoc._embedContainer = dashboardDoc;
+        dashboardDoc.$myPaneCount = 1;
+        dashboardDoc.$myOverlayDocs = new List<Doc>();
+        dashboardDoc.$myPublishedDocs = new List<Doc>();
+        dashboardDoc.$myTagCollections = new List<Doc>();
+        dashboardDoc.$myUniqueFaces = new List<Doc>();
+        dashboardDoc.$myTrails = DashboardView.SetupDashboardTrails();
+        dashboardDoc.$myCalendars = DashboardView.SetupDashboardCalendars();
         // open this new dashboard
         Doc.ActiveDashboard = dashboardDoc;
         Doc.ActivePage = 'dashboard';
-- 
cgit v1.2.3-70-g09d2

