diff --git a/lib/application/settings/settings_bloc.dart b/lib/application/settings/settings_bloc.dart index a0f91fc34..9ab0c820f 100644 --- a/lib/application/settings/settings_bloc.dart +++ b/lib/application/settings/settings_bloc.dart @@ -84,7 +84,7 @@ class SettingsBloc extends Bloc { }, useOfficialMapChanged: (event) async { _settingsService.useOfficialMap = event.newValue; - _urlPageBloc.add(const UrlPageEvent.init(loadMap: false, loadWishSimulator: false)); + _urlPageBloc.add(const UrlPageEvent.init(loadMap: false, loadWishSimulator: false, loadDailyCheckIn: false)); return currentState.copyWith.call(useOfficialMap: event.newValue); }, ); diff --git a/lib/application/url_page/url_page_bloc.dart b/lib/application/url_page/url_page_bloc.dart index a0122bd62..4f55443c5 100644 --- a/lib/application/url_page/url_page_bloc.dart +++ b/lib/application/url_page/url_page_bloc.dart @@ -15,6 +15,7 @@ class UrlPageBloc extends Bloc { final wishSimulatorUrl = 'https://gi-wish-simulator.uzairashraf.dev'; final officialMapUrl = 'https://webstatic-sea.mihoyo.com/app/ys-map-sea/index.html'; final unofficialMapUrl = 'https://genshin-impact-map.appsample.com'; + final dailyCheckInUrl = 'https://webstatic-sea.mihoyo.com/ys/event/signin-sea/index.html?act_id=e202102251931481&lang=en-us'; final NetworkService _networkService; final TelemetryService _telemetryService; @@ -29,18 +30,17 @@ class UrlPageBloc extends Bloc { ) : super(const UrlPageState.loading()); @override - Stream mapEventToState( - UrlPageEvent event, - ) async* { + Stream mapEventToState(UrlPageEvent event) async* { final s = await event.map( init: (e) async { final finalMapUrl = _settingsService.useOfficialMap ? officialMapUrl : unofficialMapUrl; final isInternetAvailable = await _networkService.isInternetAvailable(); - await _telemetryService.trackUrlOpened(e.loadMap, e.loadWishSimulator, isInternetAvailable); + await _telemetryService.trackUrlOpened(e.loadMap, e.loadWishSimulator, e.loadDailyCheckIn, isInternetAvailable); return UrlPageState.loaded( hasInternetConnection: isInternetAvailable, mapUrl: finalMapUrl, wishSimulatorUrl: wishSimulatorUrl, + dailyCheckInUrl: dailyCheckInUrl, userAgent: _deviceInfoService.userAgent, ); }, diff --git a/lib/application/url_page/url_page_event.dart b/lib/application/url_page/url_page_event.dart index 48be1f6fb..bce20993a 100644 --- a/lib/application/url_page/url_page_event.dart +++ b/lib/application/url_page/url_page_event.dart @@ -5,5 +5,6 @@ abstract class UrlPageEvent with _$UrlPageEvent { const factory UrlPageEvent.init({ @required bool loadMap, @required bool loadWishSimulator, + @required bool loadDailyCheckIn, }) = _Init; } diff --git a/lib/application/url_page/url_page_state.dart b/lib/application/url_page/url_page_state.dart index 93ee5385f..d13930ac8 100644 --- a/lib/application/url_page/url_page_state.dart +++ b/lib/application/url_page/url_page_state.dart @@ -6,6 +6,7 @@ abstract class UrlPageState with _$UrlPageState { const factory UrlPageState.loaded({ @required String wishSimulatorUrl, @required String mapUrl, + @required String dailyCheckInUrl, @required bool hasInternetConnection, @required String userAgent, }) = _Loaded;