toggleItemNotification method Null safety

void toggleItemNotification(
  1. String prefsKey,
  2. dynamic e
)

Implementation

void toggleItemNotification(String prefsKey, dynamic e) async {
  Map<String, dynamic>? data = getJson(prefsKey);
  if (data == null) {
    await init();
    data = getJson(prefsKey);
  }

  List<dynamic> items = data!["items"] as List<dynamic>;
  items = items.map((item) {
    String code = "";
    if (e is ActionType) {
      code = e.code;
    } else if (e is ReportType) {
      code = e.code;
    }
    if (item["action"] == code) {
      if (item["on"]) {
        item["on"] = false;
      } else {
        item["on"] = true;
      }
    }
    return item;
  }).toList();
  data["items"] = items;

  setJson(prefsKey, data);
  notifyListeners();
}