import 'package:flutter/material.dart'; import 'package:get/get.dart'; class BankController extends GetxController { String selectedBank = ''; // Map bankNames = { // 'CIB Bank'.tr: 'CIB', // 'National Bank of Egypt'.tr: 'NBE', // 'QNB Al Ahli'.tr: 'QNB', // 'Bank Misr'.tr: 'BM', // // Add other bank full names and short names here // }; Map bankNames = { 'Commercial International Bank (CIB)'.tr: 'CIB', 'National Bank of Egypt'.tr: 'NBE', 'Qatar National Bank (QNB Alahli)'.tr: 'QNB', 'Banque Misr'.tr: 'BM', 'Banque du Caire (BDC)'.tr: 'BDC', 'HSBC Bank Egypt'.tr: 'HSBC', 'Faisal Islamic Bank of Egypt (FAIB)'.tr: 'FAIB', 'Arab African International Bank (AAIB)'.tr: 'AAIB', 'Export Development Bank of Egypt (EDBE)'.tr: 'EDBE', 'Industrial Development Bank of Egypt (IDB)'.tr: 'IDB', 'Suez Canal Bank (SCB)'.tr: 'SCB', 'Bank Audi Egypt'.tr: 'BAE', 'Union National Bank Egypt'.tr: 'UNB', 'Al Baraka Bank Egypt'.tr: 'ABE', 'Egyptian Gulf Bank (EG Bank)'.tr: 'EGB', 'Housing and Development Bank (HDB)'.tr: 'HDB', 'The United Bank of Egypt (UB)'.tr: 'UB', 'Emirates NBD (ENBD)'.tr: 'ENBD', 'Al Ahli Bank of Kuwait - Egypt (ABK-Egypt)'.tr: 'ABK', 'National Bank of Kuwait - Egypt (NBK-Egypt)'.tr: 'NBK', 'First Abu Dhabi Bank (FAB)'.tr: 'FAB', 'Abu Dhabi Islamic Bank (ADIB)'.tr: 'ADIB', 'Arab African International Bank (AAIB)'.tr: 'AAIB', 'Egyptian Arab Land Bank (EALB)'.tr: 'EALB', 'Faisal Islamic Bank of Egypt (FAIB)'.tr: 'FAIB', 'Blom Bank (BLOM)'.tr: 'BLOM', 'Abu Dhabi Commercial Bank - Egypt (ADCB)'.tr: 'ADCB', 'Nasser Social Bank (NSB)'.tr: 'NSB', 'Industrial Development Bank of Egypt (IDB)'.tr: 'IDB', 'Arab International Bank (AIB)'.tr: 'AIB', 'Arab Investment Bank (AIBK)'.tr: 'ARIB', 'Central Bank of Egypt (CBE)'.tr: 'CBE', 'Barclays Egypt (BBE)'.tr: 'BBE', // Add other bank full names and short names here as needed }; @override void onInit() { super.onInit(); selectedBank = bankNames.values.first; } void updateSelectedBank(String? bankShortName) { selectedBank = bankShortName ?? ''; update(); } List> getDropdownItems() { return bankNames.keys.map>((bankFullName) { return DropdownMenuItem( value: bankNames[bankFullName], child: Text(bankFullName), ); }).toList(); } } class BankDropdown extends StatelessWidget { final BankController bankController = Get.put(BankController()); @override Widget build(BuildContext context) { return GetBuilder( init: bankController, builder: (controller) { return DropdownButton( value: controller.selectedBank, onChanged: controller.updateSelectedBank, items: controller.getDropdownItems(), ); }, ); } }