💄 Optimized post category and tag

This commit is contained in:
2025-08-08 22:19:17 +08:00
parent b25e8d661a
commit aa9755e6a7

View File

@@ -572,31 +572,44 @@ class PostItem extends HookConsumerWidget {
), ),
), ),
if (item.tags.isNotEmpty) if (item.tags.isNotEmpty)
Wrap( Column(
spacing: 8, mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.start,
spacing: 2,
children: [ children: [
for (final tag in item.tags) if (item.tags.isNotEmpty)
InkWell( Wrap(
child: Row( runAlignment: WrapAlignment.center,
mainAxisSize: MainAxisSize.min, spacing: 8,
spacing: 4, children: [
children: [ const Icon(Symbols.label, size: 16).padding(top: 2),
const Icon(Symbols.label, size: 16), for (final tag
Text(tag.name ?? tag.slug), in isFullPost ? item.tags : item.tags.take(3))
], InkWell(
), child: Text('#${tag.name ?? tag.slug}'),
onTap: () {}, onTap: () {},
),
if (!isFullPost && item.tags.length > 3)
Text('+${item.tags.length - 3}').opacity(0.6),
],
), ),
for (final category in item.categories) if (item.categories.isNotEmpty)
InkWell( Wrap(
child: Row( runAlignment: WrapAlignment.center,
mainAxisSize: MainAxisSize.min, spacing: 8,
spacing: 4, children: [
children: [ const Icon(Symbols.category, size: 16).padding(top: 2),
const Icon(Symbols.category, size: 16), for (final category
Text(category.categoryDisplayTitle), in isFullPost
], ? item.categories
), : item.categories.take(2))
InkWell(
child: Text(category.categoryDisplayTitle),
onTap: () {},
),
if (!isFullPost && item.categories.length > 2)
Text('+${item.categories.length - 2}').opacity(0.6),
],
), ),
], ],
).padding(horizontal: renderingPadding.horizontal + 4, top: 4), ).padding(horizontal: renderingPadding.horizontal + 4, top: 4),