improvements

main_production_attahment_type
Sikander Saleem 16 hours ago
parent 63d4c79a73
commit 3412345a4a

@ -31,7 +31,6 @@ class _AssetDetailPageState extends State<AssetDetailPage> {
AssetProvider? _assetProvider; AssetProvider? _assetProvider;
AssetByIdModel? assetModel; AssetByIdModel? assetModel;
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
assetId ??= ModalRoute.of(context)?.settings.arguments as int; assetId ??= ModalRoute.of(context)?.settings.arguments as int;
@ -93,10 +92,7 @@ class _AssetDetailPageState extends State<AssetDetailPage> {
12.height, 12.height,
TabBarView( TabBarView(
children: [ children: [
AssetDetailsView( AssetDetailsView(assetModel: assetModel!, onUpload: _upload),
assetModel: assetModel!,
onUpload: _upload,
),
const AssetDocumentHistoryView(), const AssetDocumentHistoryView(),
], ],
).expanded, ).expanded,

@ -17,12 +17,12 @@ class AssetDocumentHistoryView extends StatelessWidget {
]; ];
return SingleChildScrollView( return SingleChildScrollView(
padding: EdgeInsets.symmetric(horizontal: 16.toScreenWidth), padding: const EdgeInsets.symmetric(horizontal: 16),
child: FilesList( child: FilesList(
showAsListView: true, showAsListView: true,
// itemGap: 12.toScreenHeight,
showDownloadButton: true, showDownloadButton: true,
images: dummyDocuments, images: dummyDocuments,
separator: const Divider().defaultStyle(context),
).toShadowContainer(context), ).toShadowContainer(context),
); );
} }

@ -22,8 +22,9 @@ class FilesList extends StatelessWidget {
final bool showAsListView; final bool showAsListView;
final bool showDownloadButton; final bool showDownloadButton;
final double? itemGap; final double? itemGap;
final Widget? separator;
const FilesList({Key? key, this.images = const <String>[], this.types = const <String>[], this.padding, this.showAsListView = false, this.showDownloadButton = false, this.itemGap}) const FilesList({Key? key, this.separator, this.images = const <String>[], this.types = const <String>[], this.padding, this.showAsListView = false, this.showDownloadButton = false, this.itemGap})
: super(key: key); : super(key: key);
@override @override
@ -31,7 +32,7 @@ class FilesList extends StatelessWidget {
return showAsListView return showAsListView
? ListView.separated( ? ListView.separated(
shrinkWrap: true, shrinkWrap: true,
padding: padding ?? const EdgeInsets.only(top: 8), padding: padding ?? const EdgeInsets.only(top: 0),
physics: const NeverScrollableScrollPhysics(), physics: const NeverScrollableScrollPhysics(),
itemBuilder: (cxt, itemIndex) { itemBuilder: (cxt, itemIndex) {
if (!images[itemIndex].contains(".")) { if (!images[itemIndex].contains(".")) {
@ -74,14 +75,14 @@ class FilesList extends StatelessWidget {
children: [ children: [
EllipsizedText( EllipsizedText(
images[itemIndex].split("/").last, images[itemIndex].split("/").last,
style: AppTextStyles.heading6.copyWith(color: AppColor.black10), style: AppTextStyles.bodyText.copyWith(color: AppColor.textStyleColor(context)),
type: EllipsisType.start, // or EllipsisType.middle type: EllipsisType.start, // or EllipsisType.middle
), ),
4.height, 2.height,
RichText( RichText(
text: TextSpan( text: TextSpan(
text: '${types.isEmpty ? "Asset Guide" : types[itemIndex]} | ', text: '${types.isEmpty ? "Asset Guide" : types[itemIndex]} | ',
style: AppTextStyles.bodyText.copyWith(color: AppColor.neutral120), style: AppTextStyles.tinyFont.copyWith(color: AppColor.labelTextStyleColor(context)),
children: <TextSpan>[ children: <TextSpan>[
TextSpan( TextSpan(
text: 'View', text: 'View',
@ -109,21 +110,24 @@ class FilesList extends StatelessWidget {
), ),
], ],
).expanded, ).expanded,
showDownloadButton if (showDownloadButton)
? 'download'.toSvgAsset().onPress(() async { IconButton(
icon: "download".toSvgAsset(height: 24, width: 24, color: AppColor.icon2Color(context)),
padding: EdgeInsets.zero,
visualDensity: VisualDensity.compact,
tooltip: "Download",
onPressed: () async {
if (Utils.isLocalFile(images[itemIndex])) { if (Utils.isLocalFile(images[itemIndex])) {
await OpenFile.open(images[itemIndex]); await OpenFile.open(images[itemIndex]);
} else { } else {
await Utils.downloadFile(images[itemIndex], autoOpen: true, showToast: true); await Utils.downloadFile(images[itemIndex], autoOpen: true, showToast: true);
} }
}) },
: const SizedBox.shrink() ),
], ],
); );
}, },
separatorBuilder: (cxt, index) => SizedBox( separatorBuilder: (cxt, index) => separator ?? SizedBox(height: itemGap ?? 8.toScreenHeight),
height: itemGap ?? 8.toScreenHeight,
),
itemCount: images.length) itemCount: images.length)
: GridView.builder( : GridView.builder(
padding: padding ?? const EdgeInsets.only(top: 8, bottom: 8), padding: padding ?? const EdgeInsets.only(top: 8, bottom: 8),

@ -139,7 +139,7 @@ class _AttachmentPickerState extends State<AttachmentPicker> with SingleTickerPr
}, },
); );
}, },
separatorBuilder: (cxt, index) => 8.height, separatorBuilder: (cxt, index) => const Divider().defaultStyle(context),
itemCount: widget.attachment.length) itemCount: widget.attachment.length)
: Wrap( : Wrap(
spacing: 8.toScreenWidth, spacing: 8.toScreenWidth,

Loading…
Cancel
Save