Attachment.fromICalString constructor
Attachment.fromICalString(
- String icalString
Implementation
factory Attachment.fromICalString(String icalString) {
icalString = _removeNonPrintable(icalString);
final uriPattern = RegExp(r'https?://\S+');
final uriMatch = uriPattern.firstMatch(icalString);
final uriString = uriMatch != null ? uriMatch.group(0) : '';
final mimeType = icalString.contains(';FMTTYPE=')
? icalString.split(';FMTTYPE=').last.split(';').first.split(':').first
: null;
final fileName = icalString.contains(';FILENAME=')
? Uri.decodeComponent(icalString
.split(';FILENAME=')
.last
.split(';')
.first
.split(':')
.first)
: null;
if (uriString == '') {
throw ArgumentError('The iCal string does not contain a valid URI.');
}
return Attachment(
uri: Uri.parse(uriString ?? ''),
mimeType: mimeType,
fileName: fileName,
);
}