import 'package:flutter/material.dart'; import 'package:test_sa/extensions/context_extension.dart'; import 'package:test_sa/models/generic_attachment_model.dart'; import 'package:test_sa/models/lookup.dart'; import 'package:test_sa/modules/asset_delivery_module/pages/attachment_view.dart'; import 'package:test_sa/modules/asset_delivery_module/provider/asset_delivery_provider.dart'; import 'package:test_sa/modules/asset_delivery_module/provider/attachment_type_provider.dart'; import 'package:test_sa/new_views/common_widgets/app_lazy_loading.dart'; import 'package:test_sa/new_views/common_widgets/single_item_drop_down_menu.dart'; import 'package:test_sa/views/widgets/loaders/no_data_found.dart'; class HelperFunction { static void attachmentTap({required BuildContext context, required AssetDeliveryProvider assetDeliveryProvider, required dynamic deliveryTableItemId}) async { Lookup? result; result = await showAttachmentTypeBottomSheet(context); List list = []; if (result != null) { showDialog( context: context, barrierDismissible: false, builder: (_) => const AppLazyLoading(), ); list = await assetDeliveryProvider.getAttachments(tableItemId: deliveryTableItemId, attachmentType: result.value); Navigator.pop(context); // if (list.isNotEmpty) { Navigator.push( context, MaterialPageRoute( builder: (context) => AssetDeliveryAttachmentView( tableItemId: deliveryTableItemId, attachmentType: result!.value, attachmentList: list, ))); // } } } static Future showAttachmentTypeBottomSheet(BuildContext context) { return showModalBottomSheet( context: context, isScrollControlled: true, shape: const RoundedRectangleBorder( borderRadius: BorderRadius.vertical(top: Radius.circular(20)), ), builder: (_) { return SafeArea( top: false, child: Padding( padding: const EdgeInsets.only( top: 16, left: 16, right: 16, ), child: Column( mainAxisSize: MainAxisSize.min, children: [ SingleItemDropDownMenu( context: context, title: context.translation.reason, onSelect: (value) { Navigator.pop(context, value); }, ), ], ), ), ); }, ); } }