stable but not actively maintained
conditional_parent_widget
Conditionally wrap a subtree with a parent widget without breaking the code tree.
condition: the condition depending on which the subtreechildis wrapped with the parent.child: The subtree that should always be build.parentBuilder: builds the parent with the subtreechildiffconditionis true.parentBuilderElse: optional builder to wrapchildiffconditionis false. (returns justchildwhen this is null)
Usage:
return ConditionalParentWidget(
condition: shouldIncludeParent,
parentBuilder: (Widget child) => SomeParentWidget(child: child),
child: Widget1(
child: Widget2(
child: Widget3(),
),
),
);
Instead of:
Widget child = Widget1(
child: Widget2(
child: Widget3(),
),
);
///
return shouldIncludeParent ? SomeParentWidget(child: child) : child;