Images.parse constructor

Images.parse(
  1. XmlElement element
)

Factory method to parse an XmlElement and create an Images object from it.

The element is an XML element containing the images information.

Returns the parsed Images object.

Implementation

factory Images.parse(XmlElement element) {
  final exp = RegExp(r'(\S+)\s+(\d+)w');
  var srcset = element.getAttribute('srcset');
  if (srcset != null) {
    return Images(
      srcset: srcset
          .split(',')
          .map((e) {
            final matches = exp.allMatches(e).toList();
            if (matches.isNotEmpty) {
              return Src(
                url: matches[0].group(1).toString(),
                width: int.tryParse(matches[0].group(2).toString()),
              );
            } else {
              return null;
            }
          })
          .whereType<Src>()
          .toList(),
    );
  } else {
    return Images(srcset: []);
  }
}