import 'dart:convert'; import 'package:flutter/material.dart'; import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:queuedisplay/model/error_msg_model.dart'; import 'package:queuedisplay/provider/all_service_provider.dart'; import '../../app/constant.dart'; Future myErrorDialogState(BuildContext context, String header) { return showDialog( barrierDismissible: false, context: context, builder: (BuildContext context) => HookConsumer(builder: (context, ref, child) { return Dialog( child: Padding( padding: const EdgeInsets.all(20), child: Column( mainAxisSize: MainAxisSize.min, mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( "Error", style: Constant.subTitle(context: context), ), const SizedBox( height: 10, ), SizedBox( width: Constant.getActualX(context: context, x: 700), child: const Divider()), SizedBox( height: Constant.getActualY(context: context, y: 500), width: Constant.getActualX(context: context, x: 700), child: ListView( // children: [Text(jsonEncode(ref.watch(errorListMsgProvider)))], children: ref .watch(errorListMsgProvider) .map((e) => Column( crossAxisAlignment: CrossAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.start, children: [ Text( e.title.toString(), style: TextStyle(color: Colors.red), ), Text(e.msg.toString()), // Text(jsonEncode(ref.watch(errorListMsgProvider))), SizedBox( height: Constant.getActualY( context: context, y: 20), ) ], )) .toList(), ), ), SizedBox( width: Constant.getActualX(context: context, x: 700), child: const Divider()), const SizedBox( height: 10, ), SizedBox( width: Constant.getActualX(context: context, x: 700), child: Row( mainAxisAlignment: MainAxisAlignment.end, children: [ TextButton( onPressed: () { Navigator.pop(context); ref.read(errorListMsgProvider.notifier).state = List.empty(growable: true); }, child: const Text('Tutup'), ), ], ), ), ], ), ), ); }), ); }