wrap method
Wraps the given child in widgets that re-establish and observe the captured scopes.
Implementation
Widget wrap(Widget child) =>
theme == null && accessibility == null && platform == null ? child : _CapturedTheme(captured: this, child: child);