TF-495 Implement linter for mailbox view

This commit is contained in:
dab246
2022-04-22 10:47:52 +07:00
committed by Dat H. Pham
parent a305ba1826
commit 3c44d9aa93
24 changed files with 207 additions and 219 deletions
@@ -6,7 +6,7 @@ import 'package:model/mailbox/presentation_mailbox.dart';
import 'package:model/mailbox/select_mode.dart';
class MailboxNode with EquatableMixin{
static PresentationMailbox _root = PresentationMailbox(MailboxId(Id('root')));
static final PresentationMailbox _root = PresentationMailbox(MailboxId(Id('root')));
PresentationMailbox item;
List<MailboxNode>? childrenItems;
@@ -29,14 +29,12 @@ class MailboxNode with EquatableMixin{
);
void addChildNode(MailboxNode node) {
if (childrenItems == null) {
childrenItems = [];
}
childrenItems ??= [];
childrenItems?.add(node);
}
List<MailboxNode>? updateNode(MailboxId mailboxId, MailboxNode newNode, {MailboxNode? parent}) {
List<MailboxNode>? _children = parent == null ? this.childrenItems : parent.childrenItems;
List<MailboxNode>? _children = parent == null ? childrenItems : parent.childrenItems;
return _children?.map((MailboxNode child) {
if (child.item.id == mailboxId) {
return newNode;
@@ -66,15 +64,15 @@ class MailboxNode with EquatableMixin{
listOfNodes.add(node);
List<MailboxNode>? childrenItems = node.childrenItems;
if (childrenItems != null) {
childrenItems.forEach((child) {
for (var child in childrenItems) {
_appendDescendants(child, listOfNodes);
});
}
}
}
}
List<MailboxNode>? toggleSelectNode(MailboxNode selectedMailboxMode, {MailboxNode? parent}) {
List<MailboxNode>? _children = parent == null ? this.childrenItems : parent.childrenItems;
List<MailboxNode>? _children = parent == null ? childrenItems : parent.childrenItems;
return _children?.map((MailboxNode child) {
if (child.item.id == selectedMailboxMode.item.id) {
return child.toggleSelectMailboxNode();
@@ -88,7 +86,7 @@ class MailboxNode with EquatableMixin{
}
List<MailboxNode>? toSelectedNode({required SelectMode selectMode, ExpandMode? newExpandMode, MailboxNode? parent}) {
List<MailboxNode>? _children = parent == null ? this.childrenItems : parent.childrenItems;
List<MailboxNode>? _children = parent == null ? childrenItems : parent.childrenItems;
return _children?.map((MailboxNode child) {
if (child.hasChildren()) {
return child.copyWith(
@@ -15,7 +15,7 @@ class MailboxTree with EquatableMixin {
MailboxTree(this.root);
MailboxNode? findNode(NodeQuery nodeQuery) {
var result;
MailboxNode? result;
final queue = ListQueue<MailboxNode>();
queue.addLast(root);
while (queue.isNotEmpty) {
@@ -13,10 +13,10 @@ class TreeBuilder {
final Map<MailboxId, MailboxNode> mailboxDictionary = HashMap();
final tree = MailboxTree(MailboxNode.root());
mailboxesList.forEach((mailbox) {
for (var mailbox in mailboxesList) {
mailboxDictionary[mailbox.id] = MailboxNode(mailbox);
});
mailboxesList.forEach((mailbox) {
}
for (var mailbox in mailboxesList) {
final parentId = mailbox.parentId;
final parentNode = mailboxDictionary[parentId];
final node = mailboxDictionary[mailbox.id];
@@ -35,7 +35,7 @@ class TreeBuilder {
);
}
}
});
}
return tree;
}
@@ -45,11 +45,11 @@ class TreeBuilder {
final defaultTree = MailboxTree(MailboxNode.root());
final folderTree = MailboxTree(MailboxNode.root());
allMailboxes.forEach((mailbox) {
for (var mailbox in allMailboxes) {
mailboxDictionary[mailbox.id] = MailboxNode(mailbox);
});
}
allMailboxes.forEach((mailbox) {
for (var mailbox in allMailboxes) {
final parentId = mailbox.parentId;
final parentNode = mailboxDictionary[parentId];
final node = mailboxDictionary[mailbox.id];
@@ -70,7 +70,7 @@ class TreeBuilder {
);
}
}
});
}
defaultTree.root.childrenItems?.sort((thisMailbox, thatMailbox) => thisMailbox.compareTo(thatMailbox));
return Tuple2(defaultTree, folderTree);
@@ -86,7 +86,7 @@ class TreeBuilder {
final newDefaultTree = MailboxTree(MailboxNode.root());
final newFolderTree = MailboxTree(MailboxNode.root());
allMailboxes.forEach((mailbox) {
for (var mailbox in allMailboxes) {
final mailboxNodeBeforeChanges = defaultTreeBeforeChanges.findNode((node) => node.item.id == mailbox.id) ??
folderTreeBeforeChanges.findNode((node) => node.item.id == mailbox.id);
if (mailboxNodeBeforeChanges != null) {
@@ -97,9 +97,9 @@ class TreeBuilder {
} else {
mailboxDictionary[mailbox.id] = MailboxNode(mailbox);
}
});
}
allMailboxes.forEach((mailbox) {
for (var mailbox in allMailboxes) {
final parentId = mailbox.parentId;
final parentNode = mailboxDictionary[parentId];
final node = mailboxDictionary[mailbox.id];
@@ -120,7 +120,7 @@ class TreeBuilder {
);
}
}
});
}
newDefaultTree.root.childrenItems?.sort((thisMailbox, thatMailbox) => thisMailbox.compareTo(thatMailbox));
return Tuple2(newDefaultTree, newFolderTree);