getAll method

Future<List<T>> getAll({
  1. int? parentId,
})

Get All in Box<T>

Implementation

Future<List<T>> getAll({int? parentId}) async {
  final res = await _indexedDB.db.readAll();
  // print('box list: $res');
  List<T> list = [];
  for (var record in res) {
    // json ပဲရယူမယ်
    if (record.status == RecordStatus.delete ||
        record.type != RecordType.json) {
      continue;
    }
    final jsr = record as JsonRecord;
    // print(jsr.toJson());

    if (jsr.adapterTypeId != _adapter.getUniqueFieldId) continue;
    // filter parent Id
    if (parentId != null && jsr.parentId != -1 && jsr.parentId != parentId) {
      continue;
    }
    // read json data
    final raf = await _indexedDB.dbFile.open();
    final data = await jsr.getJsonData(raf);
    await raf.close();
    if (data == null) continue;
    //add
    list.add(_adapter.fromMap(_adapter.decodeData(data)));
  }
  return list;
}