parseAddress function
Parse mailbox address from string format
Implementation
MailboxAddress parseAddress(String addressStr, {MailboxType? type}) {
// If type is provided explicitly, use it; otherwise try to parse from address string
if (type != null) {
return MailboxAddress.parse(addressStr, type: type);
}
// Address format: peerId/type/folder
final parts = addressStr.split('/');
if (parts.length < 2) {
throw FormatException('Invalid mailbox address format: $addressStr');
}
final parsedType = MailboxType.values.firstWhere(
(e) => e.name == parts[1],
orElse: () => MailboxType.private,
);
return MailboxAddress.parse(addressStr, type: parsedType);
}