find method
Busca registros que coincidem com um critério em uma coluna específica. Retorna uma List<Map<String, dynamic>>. Caso não encontre nada, retorna uma lista vazia.
Implementation
Future<List<Map<String, dynamic>>> find({
required String column,
required dynamic value,
}) async {
// 1. Obtém todos os registros da aba (utiliza o cache/processamento do findAll)
final allData = await findAll();
if (allData.isEmpty) return [];
// 2. Filtra os dados onde o valor da coluna corresponde ao critério
// A comparação é feita convertendo para String e ignorando maiúsculas/minúsculas
final List<Map<String, dynamic>> results = allData.where((row) {
final cellValue = row[column]?.toString().toLowerCase() ?? "";
final searchValue = value.toString().toLowerCase();
return cellValue == searchValue;
}).toList();
return results;
}