getGrouped method

List<List<MyFlexItem>> getGrouped(
  1. MyScreenMediaType type
)

Implementation

List<List<MyFlexItem>> getGrouped(MyScreenMediaType type) {
  List<List<MyFlexItem>> list = [];
  var flexCount = 0;
  List<MyFlexItem> iList = [];
  for (MyFlexItem col in children) {
    if (col.display[type]!.isBlock) {
      int flex = col.flex[type]!;
      if (flexCount + flex <= 12) {
        iList.add(col);
        flexCount += flex;
      } else {
        list.add(iList);
        iList = [];
        iList.add(col);
        flexCount = 0;
      }
    }
  }
  if (iList.isNotEmpty) {
    list.add(iList);
  }
  return list;
}