aboutsummaryrefslogtreecommitdiff
path: root/src/new_fields/util.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/new_fields/util.ts')
-rw-r--r--src/new_fields/util.ts12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/new_fields/util.ts b/src/new_fields/util.ts
index 19ca8a7ee..2768f1213 100644
--- a/src/new_fields/util.ts
+++ b/src/new_fields/util.ts
@@ -112,7 +112,11 @@ export function setter(target: any, in_prop: string | symbol | number, value: an
}
const resolvedLayout = getFieldImpl(target, getFieldImpl(target, "layoutKey", receiver), receiver);
if (resolvedLayout instanceof Doc) {
- resolvedLayout[prop] = value;
+ let x = resolvedLayout[Id];
+ let layout = (resolvedLayout.layout as string).split("'")[1];
+ let expanded = getFieldImpl(target, layout + "-layout[" + x + "]", receiver);
+ expanded && (expanded[prop] = value);
+ // resolvedLayout[prop] = value;
return true;
}
}
@@ -129,7 +133,11 @@ export function getter(target: any, in_prop: string | symbol | number, receiver:
}
const resolvedLayout = getFieldImpl(target, getFieldImpl(target, "layoutKey", receiver), receiver);
if (resolvedLayout instanceof Doc) {
- return resolvedLayout[prop];
+ let x = resolvedLayout[Id];
+ let layout = (resolvedLayout.layout as string).split("'")[1];
+ let expanded = getFieldImpl(target, layout + "-layout[" + x + "]", receiver);
+ return expanded?.[prop];
+ //return resolvedLayout[prop];
}
}
if (prop === "then") {//If we're being awaited