import 'package:cached_network_image/cached_network_image.dart'; import 'package:flutter/material.dart'; import '../routes.dart'; import 'utils.dart'; import 'package:hive/hive.dart'; import 'package:path_provider/path_provider.dart'; class Util { static Future getBox() async { final dir = await getApplicationDocumentsDirectory(); Hive.init(dir.path); Box box = await Hive.openBox('app_data'); return box; } static Widget showImage(String imageUrl, {double width, double height, BoxFit fit, Widget Function(BuildContext, String, dynamic) errorWidget}) { if (imageUrl == null || imageUrl.isEmpty) { return Container( width: width, height: height, child: Text(''), ); } return CachedNetworkImage( imageUrl: imageUrl, width: width, height: width, fit: fit, placeholder: (context, url) => Utils.imageLoadingIndicator(), errorWidget: errorWidget != null ? errorWidget : (context, url, error) { return Image.asset( 'assets/images/not_found.png', width: width, height: height, fit: fit, ); }, ); } static void openWebUrl(BuildContext context, String link) { Routes.router.navigateTo(context, '/webview/$link'); } }