Skip to content

Commit 617a61b

Browse files
committed
feat(router): Pass initial filter data to page
- Pass data via state.extra - Simplify SourceFilterPage init
1 parent d5036dd commit 617a61b

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

lib/router/router.dart

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -400,7 +400,21 @@ GoRouter createRouter({
400400
context
401401
.read<HtDataRepository<Country>>(),
402402
),
403-
child: const SourceFilterPage(),
403+
// Pass initialSelectedSources, country ISO codes, and source types from state.extra
404+
child: Builder(
405+
builder: (context) {
406+
final extraData = state.extra as Map<String, dynamic>? ?? const {};
407+
final initialSources = extraData[keySelectedSources] as List<Source>? ?? const [];
408+
final initialCountryIsoCodes = extraData[keySelectedCountryIsoCodes] as Set<String>? ?? const {};
409+
final initialSourceTypes = extraData[keySelectedSourceTypes] as Set<SourceType>? ?? const {};
410+
411+
return SourceFilterPage(
412+
initialSelectedSources: initialSources,
413+
initialSelectedCountryIsoCodes: initialCountryIsoCodes,
414+
initialSelectedSourceTypes: initialSourceTypes,
415+
);
416+
},
417+
),
404418
),
405419
),
406420
// Sub-route for country selection REMOVED

0 commit comments

Comments
 (0)