builder method
Implementation
Widget builder(Widget? widget,
{String? title,
String? subtitle,
String? buttonText,
TextStyle? titleStyle,
TextStyle? subtitleStyle,
bool isDev = false,
Function? beforeExit}) {
ErrorWidget.builder = (FlutterErrorDetails errorDetails) {
StackTrace stackTrace = errorDetails.stack!;
List<String> filteredStack = [];
stackTrace.toString().split("\n").forEach((e) {
if (!(e.contains("package:flutter/") || e.contains("(dart:"))) {
filteredStack.add(e);
}
});
return TkfScaffold(
onWillPop: () => exit(1),
useSafeAre: true,
appBar: isDev
? TkfAppBar(
backColor: Colors.red,
onPop: () => exit(1),
isLeading: false,
titleWidget: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
const Text("App crashed"),
IconButton(
onPressed: () => exit(1),
icon: const Icon(Icons.exit_to_app))
]),
centerTitle: true,
)
: null,
disableScrollView: !isDev,
body: Padding(
padding: EdgeInsets.only(
left: 24.0, right: 24, top: isDev ? 10 : 0, bottom: 40),
child: isDev
? dev(filteredStack, errorDetails)
: release(filteredStack, errorDetails)),
);
};
return widget!;
}