Skip to content

Commit cc1c9de

Browse files
committed
feat(router): navigate to entity details using path parameters
- Replace context.push with context.pushNamed for topic and source details - Use path parameters instead of extra to pass entity information - Update imports and remove unused EntityDetailsPage
1 parent 39e66c5 commit cc1c9de

File tree

3 files changed

+36
-39
lines changed

3 files changed

+36
-39
lines changed

lib/shared/widgets/feed_core/headline_tile_image_start.dart

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import 'package:core/core.dart';
22
import 'package:flutter/material.dart';
3-
import 'package:flutter_news_app_mobile_client_full_source_code/entity_details/view/entity_details_page.dart';
43
import 'package:flutter_news_app_mobile_client_full_source_code/router/routes.dart';
54
import 'package:go_router/go_router.dart';
65
import 'package:timeago/timeago.dart' as timeago;
@@ -176,12 +175,12 @@ class _HeadlineMetadataRow extends StatelessWidget {
176175
),
177176
GestureDetector(
178177
onTap: () {
179-
context.push(
180-
Routes.topicDetails,
181-
extra: EntityDetailsPageArguments(
182-
entityId: headline.topic.id,
183-
contentType: ContentType.topic,
184-
),
178+
context.pushNamed(
179+
Routes.entityDetailsName,
180+
pathParameters: {
181+
'type': ContentType.topic.name,
182+
'id': headline.topic.id,
183+
},
185184
);
186185
},
187186
child: Text(headline.topic.name, style: metadataTextStyle),
@@ -200,12 +199,12 @@ class _HeadlineMetadataRow extends StatelessWidget {
200199
),
201200
GestureDetector(
202201
onTap: () {
203-
context.push(
204-
Routes.sourceDetails,
205-
extra: EntityDetailsPageArguments(
206-
entityId: headline.source.id,
207-
contentType: ContentType.source,
208-
),
202+
context.pushNamed(
203+
Routes.entityDetailsName,
204+
pathParameters: {
205+
'type': ContentType.source.name,
206+
'id': headline.source.id,
207+
},
209208
);
210209
},
211210
child: Text(headline.source.name, style: metadataTextStyle),

lib/shared/widgets/feed_core/headline_tile_image_top.dart

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import 'package:core/core.dart';
22
import 'package:flutter/material.dart';
3-
import 'package:flutter_news_app_mobile_client_full_source_code/entity_details/view/entity_details_page.dart';
43
import 'package:flutter_news_app_mobile_client_full_source_code/router/routes.dart';
54
import 'package:go_router/go_router.dart';
65
import 'package:timeago/timeago.dart' as timeago;
@@ -187,12 +186,12 @@ class _HeadlineMetadataRow extends StatelessWidget {
187186
),
188187
GestureDetector(
189188
onTap: () {
190-
context.push(
191-
Routes.topicDetails,
192-
extra: EntityDetailsPageArguments(
193-
entityId: headline.topic.id,
194-
contentType: ContentType.topic,
195-
),
189+
context.pushNamed(
190+
Routes.entityDetailsName,
191+
pathParameters: {
192+
'type': ContentType.topic.name,
193+
'id': headline.topic.id,
194+
},
196195
);
197196
},
198197
child: Text(headline.topic.name, style: metadataTextStyle),
@@ -211,12 +210,12 @@ class _HeadlineMetadataRow extends StatelessWidget {
211210
),
212211
GestureDetector(
213212
onTap: () {
214-
context.push(
215-
Routes.sourceDetails,
216-
extra: EntityDetailsPageArguments(
217-
entityId: headline.source.id,
218-
contentType: ContentType.source,
219-
),
213+
context.pushNamed(
214+
Routes.entityDetailsName,
215+
pathParameters: {
216+
'type': ContentType.source.name,
217+
'id': headline.source.id,
218+
},
220219
);
221220
},
222221
child: Text(headline.source.name, style: metadataTextStyle),

lib/shared/widgets/feed_core/headline_tile_text_only.dart

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import 'package:core/core.dart';
22
import 'package:flutter/material.dart';
3-
import 'package:flutter_news_app_mobile_client_full_source_code/entity_details/view/entity_details_page.dart';
43
import 'package:flutter_news_app_mobile_client_full_source_code/router/routes.dart';
54
import 'package:go_router/go_router.dart';
65
import 'package:timeago/timeago.dart' as timeago;
@@ -148,12 +147,12 @@ class _HeadlineMetadataRow extends StatelessWidget {
148147
),
149148
GestureDetector(
150149
onTap: () {
151-
context.push(
152-
Routes.topicDetails,
153-
extra: EntityDetailsPageArguments(
154-
entityId: headline.topic.id,
155-
contentType: ContentType.topic,
156-
),
150+
context.pushNamed(
151+
Routes.entityDetailsName,
152+
pathParameters: {
153+
'type': ContentType.topic.name,
154+
'id': headline.topic.id,
155+
},
157156
);
158157
},
159158
child: Text(headline.topic.name, style: metadataTextStyle),
@@ -172,12 +171,12 @@ class _HeadlineMetadataRow extends StatelessWidget {
172171
),
173172
GestureDetector(
174173
onTap: () {
175-
context.push(
176-
Routes.sourceDetails,
177-
extra: EntityDetailsPageArguments(
178-
entityId: headline.source.id,
179-
contentType: ContentType.source,
180-
),
174+
context.pushNamed(
175+
Routes.entityDetailsName,
176+
pathParameters: {
177+
'type': ContentType.source.name,
178+
'id': headline.source.id,
179+
},
181180
);
182181
},
183182
child: Text(headline.source.name, style: metadataTextStyle),

0 commit comments

Comments
 (0)