From f406985efcb9228885ef18e608c28a37461d1227 Mon Sep 17 00:00:00 2001 From: Bibash Shrestha Date: Wed, 20 Mar 2024 11:16:05 +0545 Subject: [PATCH] Show VC cards or image in claims page #2518 --- .../detail/view/credentials_details_page.dart | 18 +---------- .../view/selective_disclosure_pick_page.dart | 5 ++- .../credentials/widgets/list_item.dart | 18 +---------- .../credentials/widgets/picture_display.dart | 32 +++++++++++++++++++ .../tab_bar/credentials/widgets/widgets.dart | 1 + 5 files changed, 39 insertions(+), 35 deletions(-) create mode 100644 lib/dashboard/home/tab_bar/credentials/widgets/picture_display.dart diff --git a/lib/dashboard/home/tab_bar/credentials/detail/view/credentials_details_page.dart b/lib/dashboard/home/tab_bar/credentials/detail/view/credentials_details_page.dart index d2036234d..581b48e95 100644 --- a/lib/dashboard/home/tab_bar/credentials/detail/view/credentials_details_page.dart +++ b/lib/dashboard/home/tab_bar/credentials/detail/view/credentials_details_page.dart @@ -201,23 +201,7 @@ class _CredentialsDetailsViewState extends State { crossAxisAlignment: CrossAxisAlignment.start, children: [ if (credentialImage != null) - AspectRatio( - aspectRatio: Sizes.credentialAspectRatio, - child: ClipRRect( - borderRadius: BorderRadius.circular( - Sizes.credentialBorderRadius, - ), - child: CachedImageFromNetwork( - credentialImage, - fit: BoxFit.contain, - width: double.infinity, - bgColor: Colors.transparent, - height: double.infinity, - errorMessage: '', - showLoading: false, - ), - ), - ) + PictureDisplay(credentialImage: credentialImage) else CredentialDisplay( credentialModel: widget.credentialModel, diff --git a/lib/dashboard/home/tab_bar/credentials/present/pick/selective_disclosure/view/selective_disclosure_pick_page.dart b/lib/dashboard/home/tab_bar/credentials/present/pick/selective_disclosure/view/selective_disclosure_pick_page.dart index bf586d599..eeeb3248b 100644 --- a/lib/dashboard/home/tab_bar/credentials/present/pick/selective_disclosure/view/selective_disclosure_pick_page.dart +++ b/lib/dashboard/home/tab_bar/credentials/present/pick/selective_disclosure/view/selective_disclosure_pick_page.dart @@ -105,12 +105,15 @@ class SelectiveDisclosurePickView extends StatelessWidget { ), body: Column( children: [ - if (credentialImage == null) + if (credentialImage != null) + PictureDisplay(credentialImage: credentialImage) + else CredentialDisplay( credentialModel: credentialToBePresented, credDisplayType: CredDisplayType.List, profileSetting: profileSetting, ), + const SizedBox(height: 20), DisplaySelectiveDisclosure( credentialModel: credentialToBePresented, claims: null, diff --git a/lib/dashboard/home/tab_bar/credentials/widgets/list_item.dart b/lib/dashboard/home/tab_bar/credentials/widgets/list_item.dart index 885bc8e24..070c328e3 100644 --- a/lib/dashboard/home/tab_bar/credentials/widgets/list_item.dart +++ b/lib/dashboard/home/tab_bar/credentials/widgets/list_item.dart @@ -155,23 +155,7 @@ class DisplayCard extends StatelessWidget { final credentialImage = SelectiveDisclosure(credentialModel).getPicture; return selected != null && credentialImage != null - ? AspectRatio( - aspectRatio: Sizes.credentialAspectRatio, - child: ClipRRect( - borderRadius: BorderRadius.circular( - Sizes.credentialBorderRadius, - ), - child: CachedImageFromNetwork( - credentialImage, - fit: BoxFit.contain, - width: double.infinity, - bgColor: Colors.transparent, - height: double.infinity, - errorMessage: '', - showLoading: false, - ), - ), - ) + ? PictureDisplay(credentialImage: credentialImage) : CredentialDisplay( credentialModel: credentialModel, credDisplayType: CredDisplayType.List, diff --git a/lib/dashboard/home/tab_bar/credentials/widgets/picture_display.dart b/lib/dashboard/home/tab_bar/credentials/widgets/picture_display.dart new file mode 100644 index 000000000..bf64e87d8 --- /dev/null +++ b/lib/dashboard/home/tab_bar/credentials/widgets/picture_display.dart @@ -0,0 +1,32 @@ +import 'package:altme/app/app.dart'; +import 'package:flutter/material.dart'; + +class PictureDisplay extends StatelessWidget { + const PictureDisplay({ + super.key, + required this.credentialImage, + }); + + final String credentialImage; + + @override + Widget build(BuildContext context) { + return AspectRatio( + aspectRatio: Sizes.credentialAspectRatio, + child: ClipRRect( + borderRadius: BorderRadius.circular( + Sizes.credentialBorderRadius, + ), + child: CachedImageFromNetwork( + credentialImage, + fit: BoxFit.contain, + width: double.infinity, + bgColor: Colors.transparent, + height: double.infinity, + errorMessage: '', + showLoading: false, + ), + ), + ); + } +} diff --git a/lib/dashboard/home/tab_bar/credentials/widgets/widgets.dart b/lib/dashboard/home/tab_bar/credentials/widgets/widgets.dart index 8f18765da..ef1239775 100644 --- a/lib/dashboard/home/tab_bar/credentials/widgets/widgets.dart +++ b/lib/dashboard/home/tab_bar/credentials/widgets/widgets.dart @@ -24,6 +24,7 @@ export 'display_wiget.dart'; export 'dummy_credential_image.dart'; export 'labeled_display_mapping_widget.dart'; export 'list_item.dart'; +export 'picture_display.dart'; export 'skills_list_display.dart'; export 'star_rating.dart'; export 'white_close_button.dart';