updateCPListItem static method

void updateCPListItem(
  1. CPListItem updatedListItem
)

Implementation

static void updateCPListItem(CPListItem updatedListItem) {
  flutterToNativeModule(
    FCPChannelTypes.updateListItem,
    updatedListItem.toJson(),
  ).then((value) {
    if (value != true) return;

    for (var h in templateHistory) {
      switch (h) {
        case CPTabBarTemplate _:
          for (var t in h.templates) {
            if (t is CPListTemplate) {
              for (var s in t.sections) {
                for (var i in s.items) {
                  if (i.uniqueId == updatedListItem.uniqueId &&
                      i is CPListItem) {
                    s.items[s.items.indexOf(i)] = updatedListItem;
                    return;
                  }
                }
              }
            }
          }
          break;
        case CPListTemplate _:
          for (var s in h.sections) {
            for (var i in s.items) {
              if (i.uniqueId == updatedListItem.uniqueId && i is CPListItem) {
                s.items[s.items.indexOf(i)] = updatedListItem;
                return;
              }
            }
          }
          break;
        default:
      }
    }
  });
}