getContentsFromTreeNodes method

List<CustomerPlaceContent> getContentsFromTreeNodes(
  1. List<TreeNode> children, {
  2. bool flattened = false,
})

Implementation

List<CustomerPlaceContent> getContentsFromTreeNodes(List<TreeNode> children, {bool flattened = false}) {
  List<CustomerPlaceContent> contents = [];
  for (var treeNode in children) {
    CustomerPlaceContent content =
        all.firstWhere((content) => content.uuid == treeNode.contentUuid, orElse: () => CustomerPlaceContent.empty());
    if (content.uuid.isNotEmpty) {
      if (content.templateKey == TemplateKeys.content_list_template && flattened) {
        content = _setKeyboard(content, treeNode);
        contents.add(content);
        _tree.setCurrentNode(treeNode: treeNode);
        var contentListChildren = getContentsFromTreeNodes(_tree.currentChildrenNodes);
        contents.addAll(contentListChildren);
        _tree.cleanCurrentNode();
      } else {
        content = _setKeyboard(content, treeNode);
        contents.add(content);
      }
    }
  }
  return contents;
}