From 74eb25519762d4526e0f1bdb54455cc908e695d5 Mon Sep 17 00:00:00 2001 From: Bibash Shrestha Date: Tue, 15 Aug 2023 18:22:56 +0545 Subject: [PATCH] refactor: Update presentation submission json when it is list --- lib/scan/cubit/scan_cubit.dart | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/lib/scan/cubit/scan_cubit.dart b/lib/scan/cubit/scan_cubit.dart index 18c0ce1cf..d99de4410 100644 --- a/lib/scan/cubit/scan_cubit.dart +++ b/lib/scan/cubit/scan_cubit.dart @@ -658,27 +658,34 @@ class ScanCubit extends Cubit { final inputDescriptors = >[]; - for (final inputDescriptor in presentationDefinition.inputDescriptors) { + if (presentationDefinition.inputDescriptors.length == 1) { inputDescriptors.add({ - 'id': inputDescriptor.id, + 'id': presentationDefinition.inputDescriptors[0].id, 'format': 'ldp_vc', // type of the VC 'path': r'$.verifiableCredential' }); + } else { + for (int i = 0; + i < presentationDefinition.inputDescriptors.length; + i++) { + inputDescriptors.add({ + 'id': presentationDefinition.inputDescriptors[i].id, + 'format': 'ldp_vc', // type of the VC + // ignore: prefer_interpolation_to_compose_strings + 'path': r'$.verifiableCredential[' + i.toString() + ']' + }); + } } presentationSubmission['descriptor_map'] = inputDescriptors; final presentationSubmissionString = jsonEncode(presentationSubmission); - print(presentationSubmissionString); - final formData = FormData.fromMap({ 'vp_token': vpToken, 'presentation_submission': presentationSubmissionString, }); - print(formData); - final result = await client.post( redirectUri, data: formData, @@ -687,8 +694,6 @@ class ScanCubit extends Cubit { }, ); - print(result); - if (result['status_code'] == 200) { await presentationActivity( credentialModels: credentialsToBePresented,