fromUri static method

SmartLinkData? fromUri(
  1. Uri uri, {
  2. SmartLinkSource source = SmartLinkSource.unknown,
  3. bool isDeferred = false,
})

Implementation

static SmartLinkData? fromUri(
  Uri uri, {
  SmartLinkSource source = SmartLinkSource.unknown,
  bool isDeferred = false,
}) {
  try {
    if (!uri.hasScheme && !uri.hasAuthority && uri.path.isEmpty) {
      return null;
    }

    final path = _normalizePath(uri);
    final queryParams = Map<String, String>.from(uri.queryParameters);

    return SmartLinkData(
      uri: uri,
      path: path,
      queryParams: queryParams,
      isDeferred: isDeferred,
      source: source,
    );
  } catch (_) {
    return null;
  }
}