Skip to content

Commit c51d9b8

Browse files
committed
Fix View All with object tags inside Collapse tag
Collapse.Panel renders content lazily leading to permanent `isReady=false` for object tags inside, hanging old View All. Interactive View All renders tags usually and don't need any fixes.
1 parent 85e1652 commit c51d9b8

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

web/libs/editor/src/tags/visual/Collapse.jsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,13 +120,16 @@ const CollapseModel = types.compose("CollapseModel", Model, ProcessAttrsMixin);
120120

121121
const HtxCollapse = observer(({ item }) => {
122122
const isBulkMode = isFF(FF_BULK_ANNOTATION) && !isSelfServe() && item.store.hasInterface("annotation:bulk");
123+
// forceRender is needed to have proper `isReady` for nested object tags.
124+
// with Interactive View All we won't need it, because tags are rendered as usual.
125+
const extraProps = ff.isActive(FF_DEV_3391) ? {} : { forceRender: true };
123126

124127
return (
125128
<Collapse bordered={item.bordered} accordion={item.accordion}>
126129
{item.children
127130
.filter((i) => i.type === "panel" && (!isBulkMode || i.isIndependent))
128131
.map((i) => (
129-
<Panel key={i._value} header={i._value}>
132+
<Panel key={i._value} header={i._value} {...extraProps}>
130133
{Tree.renderChildren(i, item.annotation)}
131134
</Panel>
132135
))}

0 commit comments

Comments
 (0)