exec method

Future<MultipartFile> exec(
  1. {required Uint8List photoData}
)

multipart/form-data 形式で送信するために、Uint8ListをMultipartFileに変換する

Implementation

Future<MultipartFile> exec({
  required Uint8List photoData,
}) async {
  try {
    // 処理重いため、アイソレートされたスレッドで実行する
    final image = await compute(decodeImage, photoData);
    final png = await compute(_encodePngWrapper, image);

    return MultipartFile.fromBytes(
      png,
      filename: 'meal_record.png',
    );
  } catch (_) {
    throw ServiceException(
      ServiceErrorType.imageConvertError,
      ServiceErrorType.imageConvertError.message,
    );
  }
}