build method
dynamic
build( - dynamic context,
- dynamic ref
)
Implementation
@override
Widget build(BuildContext context, WidgetRef ref) {
final pinsLoader = ref.watch(pinsFoundProvider);
return pinsLoader.when(
loading: () => Text(L10n.of(context).loading),
error: (e, s) {
_log.severe('Failed to search pins', e, s);
return Text(L10n.of(context).searchingFailed(e));
},
data: (pins) => Padding(
padding: const EdgeInsets.only(top: 10),
child: Column(
children: [
Text(L10n.of(context).pins),
const SizedBox(height: 15),
if (pins.isEmpty)
Text(L10n.of(context).noMatchingPinsFound)
else
SingleChildScrollView(
scrollDirection: Axis.horizontal,
child: Row(
children: pins.map((pin) {
return InkWell(
child: Padding(
padding: const EdgeInsets.all(10),
child: Row(
children: [
pin.icon,
const SizedBox(width: 5),
Text(pin.name),
],
),
),
onTap: () {
if (popBeforeRoute) Navigator.pop(context);
context.pushNamed(
Routes.pin.name,
pathParameters: {'pinId': pin.navigationTargetId},
);
},
);
}).toList(),
),
),
const SizedBox(height: 10),
],
),
),
skipLoadingOnRefresh: true,
skipLoadingOnReload: true,
);
}