aboutsummaryrefslogtreecommitdiff
path: root/src/fields/util.ts
diff options
context:
space:
mode:
authorbobzel <zzzman@gmail.com>2025-04-14 18:35:49 -0400
committerbobzel <zzzman@gmail.com>2025-04-14 18:35:49 -0400
commitd818ef151ca65008e5c6bb5e92b709decb3026d8 (patch)
treeae1d821c717cfb4b38c36b519d03b45ed90e9831 /src/fields/util.ts
parent1525fe600142d955fa24e939322f45cbca9d1cba (diff)
fixed how templates are expanded to avoid template sub-component conflicts by changing how field keys are named. fixed various Cast functions to be more typesafe by including undefined as part of return type. overhaul of Doc.MakeClone, MakeCopy, FindRefernces - makeClone is no longer async. fixed inlined docs in text docs.
Diffstat (limited to 'src/fields/util.ts')
-rw-r--r--src/fields/util.ts10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/fields/util.ts b/src/fields/util.ts
index 205c500a5..799fa3758 100644
--- a/src/fields/util.ts
+++ b/src/fields/util.ts
@@ -241,19 +241,19 @@ export function distributeAcls(key: string, acl: SharingPermissions, target: Doc
dataDoc[DirectLinks].forEach(link => distributeAcls(key, acl, link, visited, !!allowUpgrade));
- DocListCast(dataDoc[Doc.LayoutFieldKey(dataDoc)]).forEach(d => {
+ DocListCast(dataDoc[Doc.LayoutDataKey(dataDoc)]).forEach(d => {
distributeAcls(key, acl, d, visited, !!allowUpgrade);
d !== d[DocData] && distributeAcls(key, acl, d[DocData], visited, !!allowUpgrade);
});
- DocListCast(dataDoc[Doc.LayoutFieldKey(dataDoc) + '_annotations']).forEach(d => {
+ DocListCast(dataDoc[Doc.LayoutDataKey(dataDoc) + '_annotations']).forEach(d => {
distributeAcls(key, acl, d, visited, !!allowUpgrade);
d !== d[DocData] && distributeAcls(key, acl, d[DocData], visited, !!allowUpgrade);
});
- Object.keys(target) // share expanded layout templates (eg, for presElementBox'es )
- .filter(lkey => lkey.includes('layout[') && DocCast(target[lkey]))
- .forEach(lkey => distributeAcls(key, acl, DocCast(target[lkey]), visited, !!allowUpgrade));
+ Object.keys(target) // share expanded layout templates (eg, for PresSlideBox'es )
+ .filter(lkey => lkey.includes('layout_[') && DocCast(target[lkey]))
+ .forEach(lkey => distributeAcls(key, acl, DocCast(target[lkey])!, visited, !!allowUpgrade));
if (GetEffectiveAcl(dataDoc) === AclAdmin) {
dataDoc[key] = acl;