// ignore_for_file: use_build_context_synchronously import 'package:flutter/material.dart'; import '../../../product/constant/image/image_constants.dart'; import '../../../product/extention/context_extention.dart'; import '../../../product/services/language_services.dart'; import '../../../product/utils/device_utils.dart'; import '../../../product/constant/icon/icon_constants.dart'; Future notificationCard( BuildContext context, String notiticationType, String notificationTitle, String notificationDevicename, String notificationLocation) async { String location = await DeviceUtils.instance .getFullDeviceLocation(context, notificationLocation); String path = ""; DateTime time = DateTime.now(); if (notiticationType == "lowBattery") { path = ImageConstants.instance.getImage("low_battery"); } return Card( child: Padding( padding: context.paddingLow, child: Column( mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start, mainAxisSize: MainAxisSize.min, children: [ Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Column( mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start, children: [ SizedBox( child: Text( notificationTitle, style: const TextStyle( letterSpacing: 1, fontWeight: FontWeight.bold, color: Color.fromARGB(255, 250, 84, 34), fontSize: 18, ), ), ), SizedBox(height: context.lowValue), SizedBox( child: Text( "${appLocalization(context).device_title} $notificationDevicename", style: const TextStyle( fontWeight: FontWeight.bold, fontSize: 18, ), maxLines: 2, overflow: TextOverflow.ellipsis, softWrap: true, textAlign: TextAlign.start, ), ), ], ), SizedBox( height: context.dynamicWidth(0.15), width: context.dynamicWidth(0.15), child: Image.asset(path), ), ], ), SizedBox(height: context.lowValue), Row( children: [ IconConstants.instance .getMaterialIcon(Icons.location_on_outlined), SizedBox( width: context.lowValue, ), Expanded( child: Text( location, style: const TextStyle(fontSize: 15), maxLines: 2, overflow: TextOverflow.ellipsis, softWrap: true, textAlign: TextAlign.start, ), ), ], ), SizedBox(height: context.lowValue), Row( children: [ IconConstants.instance.getMaterialIcon(Icons.schedule), SizedBox( width: context.lowValue, ), Expanded( child: Text( time.toString(), style: const TextStyle(fontSize: 15), maxLines: 2, overflow: TextOverflow.ellipsis, softWrap: true, textAlign: TextAlign.start, ), ), ], ), Align( alignment: Alignment.centerRight, child: OutlinedButton( style: const ButtonStyle( backgroundColor: MaterialStatePropertyAll(Colors.blueAccent)), onPressed: () {}, child: Text( appLocalization(context).detail_message, style: const TextStyle( color: Colors.white, ), ), ), ), ], ), ), ); }