defaultItemBuilder<T, K> static method
ListItemBuilder<T, K>
defaultItemBuilder<T, K>(
- TListCardTheme? theme,
- ItemTextAccessor<
T> ? itemTitle, - ItemTextAccessor<
T> ? itemSubTitle, - ItemTextAccessor<
T> ? itemImageUrl, - ListItemTap<
T, K> ? onTap,
Implementation
static ListItemBuilder<T, K> defaultItemBuilder<T, K>(
TListCardTheme? theme,
ItemTextAccessor<T>? itemTitle,
ItemTextAccessor<T>? itemSubTitle,
ItemTextAccessor<T>? itemImageUrl,
ListItemTap<T, K>? onTap,
) {
return (ctx, item, index) {
final controller = TListScope.of(ctx).controller;
TListCard toListCard(TListItem<T, K> item) {
return TListCard(
title: itemTitle?.call(item.data) ?? '',
subTitle: itemSubTitle?.call(item.data),
imageUrl: itemImageUrl?.call(item.data),
isSelected: item.isSelected,
isExpanded: item.isExpanded,
level: item.level,
theme: theme,
multiple: controller.isMultiSelect,
onTap: () => onTap?.call(item),
children: item.children?.map((child) => toListCard(child)).toList(),
);
}
return toListCard(item);
};
}