From 67fa5af1ba4a3b57b136b0a55d55f10e4d2de680 Mon Sep 17 00:00:00 2001 From: Nils-Johan Gynther Date: Thu, 30 Apr 2026 12:25:13 +0200 Subject: [PATCH] feat: enhance import functionality to handle markdown responses in addition to parsed items Co-authored-by: Copilot --- .../features/import/data/import_repository.dart | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/flutter/lib/features/import/data/import_repository.dart b/flutter/lib/features/import/data/import_repository.dart index a498bd4f..8e6b4490 100644 --- a/flutter/lib/features/import/data/import_repository.dart +++ b/flutter/lib/features/import/data/import_repository.dart @@ -73,11 +73,17 @@ class ImportRepository { final parsed = _parseResponse(response); // Check if the response is a ReceiptImportResult - if (parsed is Map && parsed.containsKey('items')) { - final items = (parsed['items'] as List?)?.map((e) => ParsedReceiptItem.fromJson(e)).toList(); - if (items != null) { - developer.log('Successfully parsed ${items.length} items', name: 'ImportRepository'); - return items; + if (parsed is Map) { + if (parsed.containsKey('items')) { + final items = (parsed['items'] as List?)?.map((e) => ParsedReceiptItem.fromJson(e)).toList(); + if (items != null) { + developer.log('Successfully parsed ${items.length} items', name: 'ImportRepository'); + return items; + } + } else if (parsed.containsKey('markdown')) { + // Handle the case where the response is a QuickImportResult + developer.log('Successfully parsed markdown', name: 'ImportRepository'); + return [ParsedReceiptItem(name: parsed['markdown'], quantity: 1, price: 0)]; } }