urlFull method
Resolves full URL with HtmlWidget.baseUrl
if available.
Implementation
String? urlFull(String url) {
if (url.isEmpty) {
return null;
}
if (url.startsWith('data:')) {
return url;
}
final uri = Uri.tryParse(url);
if (uri == null) {
return null;
}
if (uri.hasScheme) {
return url;
}
final baseUrl = _widget?.baseUrl;
if (baseUrl == null) {
if (uri.hasAuthority) {
// special handling for protocol relative URL without base: assume HTTPS
return Uri(scheme: 'https').resolveUri(uri).toString();
}
return null;
}
return baseUrl.resolveUri(uri).toString();
}