onSnapshot method

Future<void> onSnapshot(
  1. List<int> bytes,
  2. int width,
  3. int height,
  4. UriData uri,
)

Implementation

Future<void> onSnapshot(
    List<int> bytes, int width, int height, UriData uri) async {
  // detect in stream
  if (widget.model.detectors != null) {
    DetectableImage? detectable =
        DetectableImage.fromRgba(bytes, width, height);
    widget.model.detectInImage(detectable);
  }

  // save file
  Blob blob = Blob(bytes);
  final url = Url.createObjectUrlFromBlob(blob);

  String name = "${newId()}.pdf";

  var file = File(blob, url, name, await Mime.type(name), bytes.length);
  widget.model.onFile(file);
}