getImage property

Image get getImage

Implementation

Image get getImage {
  if ((articlePhoto.source == PhotoSource.unknown ||
      articlePhoto.path.isEmpty ||
      articlePhoto.path == 'photo')) {
    return Loader.blankIcon;
  }
  switch (articlePhoto.source) {
    case PhotoSource.asset:
      if (kIsWeb) {
        return Image.asset(
          'photos/${articlePhoto.path}',
          fit: BoxFit.scaleDown,
          errorBuilder: (_, o, stack) => Loader.blankIcon,
        );
      } else {
        return Image.asset(
          'assets/photos/${articlePhoto.path}',
          fit: BoxFit.scaleDown,
          errorBuilder: (_, o, stack) => Loader.blankIcon,
        );
      }
    case PhotoSource.file:
      return Image.file(
        File(articlePhoto.path),
        fit: BoxFit.scaleDown,
        frameBuilder: ((context, child, frame, wasSynchronouslyLoaded) {
          return child;
          //if (wasSynchronouslyLoaded) return child;
          //return Loader.animatedSwitcher(child, frame);
        }),
        errorBuilder: (_, o, stack) => Loader.blankIcon,
      );
    case PhotoSource.network:
      return Image.network(articlePhoto.path,
          fit: BoxFit.scaleDown,
          frameBuilder: ((context, child, frame, wasSynchronouslyLoaded) {
            return child;
          }),
          errorBuilder: (_, o, stack) => Loader.blankIcon);
    case PhotoSource.memory:
      return Image.memory(base64Decode(articlePhoto.path),
          color: Colors.black, fit: BoxFit.scaleDown,
          frameBuilder: ((context, child, frame, wasSynchronouslyLoaded) {
        // if (wasSynchronouslyLoaded)
        return child;
        // return Loader.animatedSwitcher(child, frame);
      }));
    case PhotoSource.unknown:
      return Image.memory(_blankBytes, height: 1);
    default:
      return Image.memory(_blankBytes, height: 1);
  }
}