diff --git a/assets/icons/logo_purple.svg b/assets/icons/logo_purple.svg
new file mode 100644
index 0000000..abcb85d
--- /dev/null
+++ b/assets/icons/logo_purple.svg
@@ -0,0 +1,24 @@
+
diff --git a/assets/icons/logo.svg b/assets/icons/logo_white.svg
similarity index 100%
rename from assets/icons/logo.svg
rename to assets/icons/logo_white.svg
diff --git a/assets/images/landing_1.jpg b/assets/images/landing_1.jpg
deleted file mode 100644
index 5eff078..0000000
Binary files a/assets/images/landing_1.jpg and /dev/null differ
diff --git a/assets/images/landing_1.png b/assets/images/landing_1.png
new file mode 100644
index 0000000..8be1ebd
Binary files /dev/null and b/assets/images/landing_1.png differ
diff --git a/assets/images/landing_2.jpg b/assets/images/landing_2.jpg
deleted file mode 100644
index 8345d37..0000000
Binary files a/assets/images/landing_2.jpg and /dev/null differ
diff --git a/assets/images/landing_2.png b/assets/images/landing_2.png
new file mode 100644
index 0000000..97e6bec
Binary files /dev/null and b/assets/images/landing_2.png differ
diff --git a/assets/images/landing_3.jpg b/assets/images/landing_3.jpg
deleted file mode 100644
index 180fb68..0000000
Binary files a/assets/images/landing_3.jpg and /dev/null differ
diff --git a/assets/images/landing_3.png b/assets/images/landing_3.png
new file mode 100644
index 0000000..e1ddd29
Binary files /dev/null and b/assets/images/landing_3.png differ
diff --git a/assets/images/loading.png b/assets/images/loading.png
deleted file mode 100644
index 8650c79..0000000
Binary files a/assets/images/loading.png and /dev/null differ
diff --git a/assets/translations/am.json b/assets/translations/am.json
index 2a704b6..0147f17 100644
--- a/assets/translations/am.json
+++ b/assets/translations/am.json
@@ -193,7 +193,8 @@
"keep_momentum":"በጣም ጥሩ ስራ! በዚሁ ብርታት ይቀጥሉ።",
"completed_practices": "የተጠናቀቁ ልምምዶች",
"total_practices": "ጠቅላላ ልምምዶች",
- "progress_percentage": "የእድገት መቶኛ"
+ "progress_percentage": "የእድገት መቶኛ",
+ "notifications": "ማሳወቂያዎች"
}
diff --git a/assets/translations/en.json b/assets/translations/en.json
index 52b7365..69ececd 100644
--- a/assets/translations/en.json
+++ b/assets/translations/en.json
@@ -193,5 +193,6 @@
"keep_momentum":"Great job! Keep the momentum.",
"completed_practices": "Completed Practices",
"total_practices": "Total Practices",
- "progress_percentage": "Progress Percentage"
+ "progress_percentage": "Progress Percentage",
+ "notifications": "Notifications"
}
diff --git a/lib/app/app.dart b/lib/app/app.dart
index b50252d..b8493ef 100644
--- a/lib/app/app.dart
+++ b/lib/app/app.dart
@@ -35,7 +35,6 @@ import 'package:yimaru_app/ui/views/learn_practice/learn_practice_view.dart';
import 'package:yimaru_app/ui/views/course_payment/course_payment_view.dart';
import 'package:yimaru_app/ui/views/failure/failure_view.dart';
import 'package:yimaru_app/ui/views/course_lesson_detail/course_lesson_detail_view.dart';
-import 'package:yimaru_app/services/notification_service.dart';
import 'package:yimaru_app/ui/views/duolingo/duolingo_view.dart';
import 'package:yimaru_app/services/smart_auth_service.dart';
import 'package:yimaru_app/services/course_service.dart';
@@ -58,6 +57,9 @@ import 'package:yimaru_app/ui/views/course_module/course_module_view.dart';
import 'package:yimaru_app/services/onboarding_service.dart';
import 'package:yimaru_app/ui/views/learn_course/learn_course_view.dart';
import 'package:yimaru_app/ui/views/payment/payment_view.dart';
+import 'package:yimaru_app/ui/views/notification/notification_view.dart';
+import 'package:yimaru_app/services/in_app_notification_service.dart';
+import 'package:yimaru_app/services/push_notification_service.dart';
// @stacked-import
@StackedApp(
@@ -97,6 +99,7 @@ import 'package:yimaru_app/ui/views/payment/payment_view.dart';
MaterialRoute(page: CourseModuleView),
MaterialRoute(page: LearnCourseView),
MaterialRoute(page: PaymentView),
+ MaterialRoute(page: NotificationView),
// @stacked-route
],
dependencies: [
@@ -112,7 +115,6 @@ import 'package:yimaru_app/ui/views/payment/payment_view.dart';
LazySingleton(classType: ImagePickerService),
LazySingleton(classType: GoogleAuthService),
LazySingleton(classType: ImageDownloaderService),
- LazySingleton(classType: NotificationService),
LazySingleton(classType: SmartAuthService),
LazySingleton(classType: CourseService),
LazySingleton(classType: AudioPlayerService),
@@ -124,6 +126,8 @@ import 'package:yimaru_app/ui/views/payment/payment_view.dart';
LazySingleton(classType: LearnService),
LazySingleton(classType: LocalizationService),
LazySingleton(classType: OnboardingService),
+ LazySingleton(classType: InAppNotificationService),
+ LazySingleton(classType: PushNotificationService),
// @stacked-service
],
bottomsheets: [
diff --git a/lib/app/app.locator.dart b/lib/app/app.locator.dart
index 85eb85a..77de7df 100644
--- a/lib/app/app.locator.dart
+++ b/lib/app/app.locator.dart
@@ -20,13 +20,14 @@ import '../services/dio_service.dart';
import '../services/google_auth_service.dart';
import '../services/image_downloader_service.dart';
import '../services/image_picker_service.dart';
+import '../services/in_app_notification_service.dart';
import '../services/in_app_update_service.dart';
import '../services/learn_service.dart';
import '../services/localization_service.dart';
-import '../services/notification_service.dart';
import '../services/onboarding_service.dart';
import '../services/permission_handler_service.dart';
import '../services/phone_caller_service.dart';
+import '../services/push_notification_service.dart';
import '../services/secure_storage_service.dart';
import '../services/smart_auth_service.dart';
import '../services/status_checker_service.dart';
@@ -55,7 +56,6 @@ Future setupLocator(
locator.registerLazySingleton(() => ImagePickerService());
locator.registerLazySingleton(() => GoogleAuthService());
locator.registerLazySingleton(() => ImageDownloaderService());
- locator.registerLazySingleton(() => NotificationService());
locator.registerLazySingleton(() => SmartAuthService());
locator.registerLazySingleton(() => CourseService());
locator.registerLazySingleton(() => AudioPlayerService());
@@ -67,4 +67,6 @@ Future setupLocator(
locator.registerLazySingleton(() => LearnService());
locator.registerLazySingleton(() => LocalizationService());
locator.registerLazySingleton(() => OnboardingService());
+ locator.registerLazySingleton(() => InAppNotificationService());
+ locator.registerLazySingleton(() => PushNotificationService());
}
diff --git a/lib/app/app.router.dart b/lib/app/app.router.dart
index a8d7e22..2495d89 100644
--- a/lib/app/app.router.dart
+++ b/lib/app/app.router.dart
@@ -7,18 +7,18 @@
// ignore_for_file: no_leading_underscores_for_library_prefixes
import 'package:flutter/material.dart';
-import 'package:flutter/material.dart' as _i37;
+import 'package:flutter/material.dart' as _i38;
import 'package:stacked/stacked.dart' as _i1;
-import 'package:stacked_services/stacked_services.dart' as _i47;
-import 'package:yimaru_app/models/course.dart' as _i42;
-import 'package:yimaru_app/models/course_catalog.dart' as _i44;
-import 'package:yimaru_app/models/course_lesson.dart' as _i43;
-import 'package:yimaru_app/models/course_module.dart' as _i45;
-import 'package:yimaru_app/models/learn_course.dart' as _i38;
-import 'package:yimaru_app/models/learn_lesson.dart' as _i40;
-import 'package:yimaru_app/models/learn_module.dart' as _i39;
-import 'package:yimaru_app/models/learn_subscription.dart' as _i46;
-import 'package:yimaru_app/ui/common/enmus.dart' as _i41;
+import 'package:stacked_services/stacked_services.dart' as _i48;
+import 'package:yimaru_app/models/course.dart' as _i43;
+import 'package:yimaru_app/models/course_catalog.dart' as _i45;
+import 'package:yimaru_app/models/course_lesson.dart' as _i44;
+import 'package:yimaru_app/models/course_module.dart' as _i46;
+import 'package:yimaru_app/models/learn_course.dart' as _i39;
+import 'package:yimaru_app/models/learn_lesson.dart' as _i41;
+import 'package:yimaru_app/models/learn_module.dart' as _i40;
+import 'package:yimaru_app/models/learn_subscription.dart' as _i47;
+import 'package:yimaru_app/ui/common/enmus.dart' as _i42;
import 'package:yimaru_app/ui/views/account_privacy/account_privacy_view.dart'
as _i9;
import 'package:yimaru_app/ui/views/assessment/assessment_view.dart' as _i29;
@@ -57,6 +57,8 @@ import 'package:yimaru_app/ui/views/learn_program/learn_program_view.dart'
import 'package:yimaru_app/ui/views/learn_subscription/learn_subscription_view.dart'
as _i30;
import 'package:yimaru_app/ui/views/login/login_view.dart' as _i17;
+import 'package:yimaru_app/ui/views/notification/notification_view.dart'
+ as _i37;
import 'package:yimaru_app/ui/views/onboarding/onboarding_view.dart' as _i3;
import 'package:yimaru_app/ui/views/payment/payment_view.dart' as _i36;
import 'package:yimaru_app/ui/views/privacy_policy/privacy_policy_view.dart'
@@ -144,6 +146,8 @@ class Routes {
static const paymentView = '/payment-view';
+ static const notificationView = '/notification-view';
+
static const all = {
homeView,
onboardingView,
@@ -180,6 +184,7 @@ class Routes {
courseModuleView,
learnCourseView,
paymentView,
+ notificationView,
};
}
@@ -325,6 +330,10 @@ class StackedRouter extends _i1.RouterBase {
Routes.paymentView,
page: _i36.PaymentView,
),
+ _i1.RouteDef(
+ Routes.notificationView,
+ page: _i37.NotificationView,
+ ),
];
final _pagesMap = {
@@ -332,7 +341,7 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const HomeViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i2.HomeView(key: args.key),
settings: data,
);
@@ -341,7 +350,7 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const OnboardingViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i3.OnboardingView(key: args.key),
settings: data,
);
@@ -350,7 +359,7 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const StartupViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i4.StartupView(key: args.key, label: args.label),
settings: data,
);
@@ -359,7 +368,7 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const ProfileViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i5.ProfileView(key: args.key),
settings: data,
);
@@ -368,7 +377,7 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const ProfileDetailViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i6.ProfileDetailView(key: args.key),
settings: data,
);
@@ -377,7 +386,7 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const DownloadsViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i7.DownloadsView(key: args.key),
settings: data,
);
@@ -386,7 +395,7 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const ProgressViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i8.ProgressView(key: args.key),
settings: data,
);
@@ -395,7 +404,7 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const AccountPrivacyViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i9.AccountPrivacyView(key: args.key),
settings: data,
);
@@ -404,7 +413,7 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const SupportViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i10.SupportView(key: args.key),
settings: data,
);
@@ -413,7 +422,7 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const TelegramSupportViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i11.TelegramSupportView(key: args.key),
settings: data,
);
@@ -422,7 +431,7 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const CallSupportViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i12.CallSupportView(key: args.key),
settings: data,
);
@@ -431,7 +440,7 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const LanguageViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i13.LanguageView(key: args.key),
settings: data,
);
@@ -440,7 +449,7 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const PrivacyPolicyViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i14.PrivacyPolicyView(key: args.key),
settings: data,
);
@@ -449,7 +458,7 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const TermsAndConditionsViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i15.TermsAndConditionsView(key: args.key),
settings: data,
);
@@ -458,7 +467,7 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const RegisterViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i16.RegisterView(key: args.key),
settings: data,
);
@@ -467,14 +476,14 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const LoginViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i17.LoginView(key: args.key),
settings: data,
);
},
_i18.LearnModuleView: (data) {
final args = data.getArgs(nullOk: false);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i18.LearnModuleView(
key: args.key, first: args.first, course: args.course),
settings: data,
@@ -482,7 +491,7 @@ class StackedRouter extends _i1.RouterBase {
},
_i19.LearnLessonView: (data) {
final args = data.getArgs(nullOk: false);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i19.LearnLessonView(
key: args.key, first: args.first, module: args.module),
settings: data,
@@ -492,14 +501,14 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const ForgetPasswordViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i20.ForgetPasswordView(key: args.key),
settings: data,
);
},
_i21.LearnLessonDetailView: (data) {
final args = data.getArgs(nullOk: false);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i21.LearnLessonDetailView(
key: args.key,
index: args.index,
@@ -511,7 +520,7 @@ class StackedRouter extends _i1.RouterBase {
},
_i22.LearnPracticeView: (data) {
final args = data.getArgs(nullOk: false);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i22.LearnPracticeView(
key: args.key,
level: args.level,
@@ -525,7 +534,7 @@ class StackedRouter extends _i1.RouterBase {
},
_i23.CoursePaymentView: (data) {
final args = data.getArgs(nullOk: false);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) =>
_i23.CoursePaymentView(key: args.key, course: args.course),
settings: data,
@@ -533,7 +542,7 @@ class StackedRouter extends _i1.RouterBase {
},
_i24.FailureView: (data) {
final args = data.getArgs(nullOk: false);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i24.FailureView(
key: args.key, onTap: args.onTap, label: args.label),
settings: data,
@@ -541,7 +550,7 @@ class StackedRouter extends _i1.RouterBase {
},
_i25.CourseLessonDetailView: (data) {
final args = data.getArgs(nullOk: false);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) =>
_i25.CourseLessonDetailView(key: args.key, lesson: args.lesson),
settings: data,
@@ -551,7 +560,7 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const DuolingoViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i26.DuolingoView(key: args.key),
settings: data,
);
@@ -560,7 +569,7 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const CourseViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i27.CourseView(key: args.key),
settings: data,
);
@@ -569,14 +578,14 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const LearnProgramViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i28.LearnProgramView(key: args.key),
settings: data,
);
},
_i29.AssessmentView: (data) {
final args = data.getArgs(nullOk: false);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) =>
_i29.AssessmentView(key: args.key, data: args.data),
settings: data,
@@ -586,7 +595,7 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const LearnSubscriptionViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i30.LearnSubscriptionView(key: args.key),
settings: data,
);
@@ -595,14 +604,14 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const CourseCatalogViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i31.CourseCatalogView(key: args.key),
settings: data,
);
},
_i32.CourseUnitView: (data) {
final args = data.getArgs(nullOk: false);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) =>
_i32.CourseUnitView(key: args.key, catalog: args.catalog),
settings: data,
@@ -612,14 +621,14 @@ class StackedRouter extends _i1.RouterBase {
final args = data.getArgs(
orElse: () => const LandingViewArguments(),
);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i33.LandingView(key: args.key),
settings: data,
);
},
_i34.CourseModuleView: (data) {
final args = data.getArgs(nullOk: false);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i34.CourseModuleView(
key: args.key, module: args.module, catalog: args.catalog),
settings: data,
@@ -627,7 +636,7 @@ class StackedRouter extends _i1.RouterBase {
},
_i35.LearnCourseView: (data) {
final args = data.getArgs(nullOk: false);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) =>
_i35.LearnCourseView(key: args.key, id: args.id, first: args.first),
settings: data,
@@ -635,12 +644,21 @@ class StackedRouter extends _i1.RouterBase {
},
_i36.PaymentView: (data) {
final args = data.getArgs(nullOk: false);
- return _i37.MaterialPageRoute(
+ return _i38.MaterialPageRoute(
builder: (context) => _i36.PaymentView(
key: args.key, phone: args.phone, subscription: args.subscription),
settings: data,
);
},
+ _i37.NotificationView: (data) {
+ final args = data.getArgs(
+ orElse: () => const NotificationViewArguments(),
+ );
+ return _i38.MaterialPageRoute(
+ builder: (context) => _i37.NotificationView(key: args.key),
+ settings: data,
+ );
+ },
};
@override
@@ -653,7 +671,7 @@ class StackedRouter extends _i1.RouterBase {
class HomeViewArguments {
const HomeViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -675,7 +693,7 @@ class HomeViewArguments {
class OnboardingViewArguments {
const OnboardingViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -700,7 +718,7 @@ class StartupViewArguments {
this.label,
});
- final _i37.Key? key;
+ final _i38.Key? key;
final String? label;
@@ -724,7 +742,7 @@ class StartupViewArguments {
class ProfileViewArguments {
const ProfileViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -746,7 +764,7 @@ class ProfileViewArguments {
class ProfileDetailViewArguments {
const ProfileDetailViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -768,7 +786,7 @@ class ProfileDetailViewArguments {
class DownloadsViewArguments {
const DownloadsViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -790,7 +808,7 @@ class DownloadsViewArguments {
class ProgressViewArguments {
const ProgressViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -812,7 +830,7 @@ class ProgressViewArguments {
class AccountPrivacyViewArguments {
const AccountPrivacyViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -834,7 +852,7 @@ class AccountPrivacyViewArguments {
class SupportViewArguments {
const SupportViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -856,7 +874,7 @@ class SupportViewArguments {
class TelegramSupportViewArguments {
const TelegramSupportViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -878,7 +896,7 @@ class TelegramSupportViewArguments {
class CallSupportViewArguments {
const CallSupportViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -900,7 +918,7 @@ class CallSupportViewArguments {
class LanguageViewArguments {
const LanguageViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -922,7 +940,7 @@ class LanguageViewArguments {
class PrivacyPolicyViewArguments {
const PrivacyPolicyViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -944,7 +962,7 @@ class PrivacyPolicyViewArguments {
class TermsAndConditionsViewArguments {
const TermsAndConditionsViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -966,7 +984,7 @@ class TermsAndConditionsViewArguments {
class RegisterViewArguments {
const RegisterViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -988,7 +1006,7 @@ class RegisterViewArguments {
class LoginViewArguments {
const LoginViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -1014,11 +1032,11 @@ class LearnModuleViewArguments {
required this.course,
});
- final _i37.Key? key;
+ final _i38.Key? key;
final bool first;
- final _i38.LearnCourse course;
+ final _i39.LearnCourse course;
@override
String toString() {
@@ -1044,11 +1062,11 @@ class LearnLessonViewArguments {
required this.module,
});
- final _i37.Key? key;
+ final _i38.Key? key;
final bool first;
- final _i39.LearnModule module;
+ final _i40.LearnModule module;
@override
String toString() {
@@ -1070,7 +1088,7 @@ class LearnLessonViewArguments {
class ForgetPasswordViewArguments {
const ForgetPasswordViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -1098,13 +1116,13 @@ class LearnLessonDetailViewArguments {
required this.hasPractice,
});
- final _i37.Key? key;
+ final _i38.Key? key;
final int index;
- final _i40.LearnLesson lesson;
+ final _i41.LearnLesson lesson;
- final _i39.LearnModule module;
+ final _i40.LearnModule module;
final bool hasPractice;
@@ -1144,7 +1162,7 @@ class LearnPracticeViewArguments {
required this.subtitle,
});
- final _i37.Key? key;
+ final _i38.Key? key;
final String? level;
@@ -1154,7 +1172,7 @@ class LearnPracticeViewArguments {
final String title;
- final _i41.LearnPractices practice;
+ final _i42.LearnPractices practice;
final String subtitle;
@@ -1193,9 +1211,9 @@ class CoursePaymentViewArguments {
required this.course,
});
- final _i37.Key? key;
+ final _i38.Key? key;
- final _i42.Course course;
+ final _i43.Course course;
@override
String toString() {
@@ -1221,7 +1239,7 @@ class FailureViewArguments {
required this.label,
});
- final _i37.Key? key;
+ final _i38.Key? key;
final void Function() onTap;
@@ -1250,9 +1268,9 @@ class CourseLessonDetailViewArguments {
required this.lesson,
});
- final _i37.Key? key;
+ final _i38.Key? key;
- final _i43.CourseLesson lesson;
+ final _i44.CourseLesson lesson;
@override
String toString() {
@@ -1274,7 +1292,7 @@ class CourseLessonDetailViewArguments {
class DuolingoViewArguments {
const DuolingoViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -1296,7 +1314,7 @@ class DuolingoViewArguments {
class CourseViewArguments {
const CourseViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -1318,7 +1336,7 @@ class CourseViewArguments {
class LearnProgramViewArguments {
const LearnProgramViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -1343,7 +1361,7 @@ class AssessmentViewArguments {
required this.data,
});
- final _i37.Key? key;
+ final _i38.Key? key;
final Map data;
@@ -1367,7 +1385,7 @@ class AssessmentViewArguments {
class LearnSubscriptionViewArguments {
const LearnSubscriptionViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -1389,7 +1407,7 @@ class LearnSubscriptionViewArguments {
class CourseCatalogViewArguments {
const CourseCatalogViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -1414,9 +1432,9 @@ class CourseUnitViewArguments {
required this.catalog,
});
- final _i37.Key? key;
+ final _i38.Key? key;
- final _i44.CourseCatalog catalog;
+ final _i45.CourseCatalog catalog;
@override
String toString() {
@@ -1438,7 +1456,7 @@ class CourseUnitViewArguments {
class LandingViewArguments {
const LandingViewArguments({this.key});
- final _i37.Key? key;
+ final _i38.Key? key;
@override
String toString() {
@@ -1464,11 +1482,11 @@ class CourseModuleViewArguments {
required this.catalog,
});
- final _i37.Key? key;
+ final _i38.Key? key;
- final _i45.CourseModule? module;
+ final _i46.CourseModule? module;
- final _i44.CourseCatalog catalog;
+ final _i45.CourseCatalog catalog;
@override
String toString() {
@@ -1496,7 +1514,7 @@ class LearnCourseViewArguments {
required this.first,
});
- final _i37.Key? key;
+ final _i38.Key? key;
final int id;
@@ -1526,11 +1544,11 @@ class PaymentViewArguments {
required this.subscription,
});
- final _i37.Key? key;
+ final _i38.Key? key;
final String phone;
- final _i46.LearnSubscription subscription;
+ final _i47.LearnSubscription subscription;
@override
String toString() {
@@ -1551,9 +1569,31 @@ class PaymentViewArguments {
}
}
-extension NavigatorStateExtension on _i47.NavigationService {
+class NotificationViewArguments {
+ const NotificationViewArguments({this.key});
+
+ final _i38.Key? key;
+
+ @override
+ String toString() {
+ return '{"key": "$key"}';
+ }
+
+ @override
+ bool operator ==(covariant NotificationViewArguments other) {
+ if (identical(this, other)) return true;
+ return other.key == key;
+ }
+
+ @override
+ int get hashCode {
+ return key.hashCode;
+ }
+}
+
+extension NavigatorStateExtension on _i48.NavigationService {
Future navigateToHomeView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1569,7 +1609,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToOnboardingView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1585,7 +1625,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToStartupView({
- _i37.Key? key,
+ _i38.Key? key,
String? label,
int? routerId,
bool preventDuplicates = true,
@@ -1602,7 +1642,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToProfileView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1618,7 +1658,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToProfileDetailView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1634,7 +1674,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToDownloadsView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1650,7 +1690,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToProgressView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1666,7 +1706,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToAccountPrivacyView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1682,7 +1722,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToSupportView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1698,7 +1738,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToTelegramSupportView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1714,7 +1754,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToCallSupportView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1730,7 +1770,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToLanguageView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1746,7 +1786,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToPrivacyPolicyView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1762,7 +1802,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToTermsAndConditionsView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1778,7 +1818,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToRegisterView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1794,7 +1834,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToLoginView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1810,9 +1850,9 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToLearnModuleView({
- _i37.Key? key,
+ _i38.Key? key,
required bool first,
- required _i38.LearnCourse course,
+ required _i39.LearnCourse course,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1829,9 +1869,9 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToLearnLessonView({
- _i37.Key? key,
+ _i38.Key? key,
required bool first,
- required _i39.LearnModule module,
+ required _i40.LearnModule module,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1848,7 +1888,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToForgetPasswordView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1864,10 +1904,10 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToLearnLessonDetailView({
- _i37.Key? key,
+ _i38.Key? key,
required int index,
- required _i40.LearnLesson lesson,
- required _i39.LearnModule module,
+ required _i41.LearnLesson lesson,
+ required _i40.LearnModule module,
required bool hasPractice,
int? routerId,
bool preventDuplicates = true,
@@ -1889,12 +1929,12 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToLearnPracticeView({
- _i37.Key? key,
+ _i38.Key? key,
String? level,
required int id,
required String label,
required String title,
- required _i41.LearnPractices practice,
+ required _i42.LearnPractices practice,
required String subtitle,
int? routerId,
bool preventDuplicates = true,
@@ -1918,8 +1958,8 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToCoursePaymentView({
- _i37.Key? key,
- required _i42.Course course,
+ _i38.Key? key,
+ required _i43.Course course,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1935,7 +1975,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToFailureView({
- _i37.Key? key,
+ _i38.Key? key,
required void Function() onTap,
required String label,
int? routerId,
@@ -1953,8 +1993,8 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToCourseLessonDetailView({
- _i37.Key? key,
- required _i43.CourseLesson lesson,
+ _i38.Key? key,
+ required _i44.CourseLesson lesson,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1970,7 +2010,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToDuolingoView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -1986,7 +2026,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToCourseView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2002,7 +2042,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToLearnProgramView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2018,7 +2058,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToAssessmentView({
- _i37.Key? key,
+ _i38.Key? key,
required Map data,
int? routerId,
bool preventDuplicates = true,
@@ -2035,7 +2075,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToLearnSubscriptionView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2051,7 +2091,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToCourseCatalogView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2067,8 +2107,8 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToCourseUnitView({
- _i37.Key? key,
- required _i44.CourseCatalog catalog,
+ _i38.Key? key,
+ required _i45.CourseCatalog catalog,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2084,7 +2124,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToLandingView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2100,9 +2140,9 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToCourseModuleView({
- _i37.Key? key,
- required _i45.CourseModule? module,
- required _i44.CourseCatalog catalog,
+ _i38.Key? key,
+ required _i46.CourseModule? module,
+ required _i45.CourseCatalog catalog,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2119,7 +2159,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToLearnCourseView({
- _i37.Key? key,
+ _i38.Key? key,
required int id,
required bool first,
int? routerId,
@@ -2137,9 +2177,9 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future navigateToPaymentView({
- _i37.Key? key,
+ _i38.Key? key,
required String phone,
- required _i46.LearnSubscription subscription,
+ required _i47.LearnSubscription subscription,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2155,8 +2195,24 @@ extension NavigatorStateExtension on _i47.NavigationService {
transition: transition);
}
+ Future navigateToNotificationView({
+ _i38.Key? key,
+ int? routerId,
+ bool preventDuplicates = true,
+ Map? parameters,
+ Widget Function(BuildContext, Animation, Animation, Widget)?
+ transition,
+ }) async {
+ return navigateTo(Routes.notificationView,
+ arguments: NotificationViewArguments(key: key),
+ id: routerId,
+ preventDuplicates: preventDuplicates,
+ parameters: parameters,
+ transition: transition);
+ }
+
Future replaceWithHomeView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2172,7 +2228,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithOnboardingView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2188,7 +2244,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithStartupView({
- _i37.Key? key,
+ _i38.Key? key,
String? label,
int? routerId,
bool preventDuplicates = true,
@@ -2205,7 +2261,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithProfileView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2221,7 +2277,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithProfileDetailView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2237,7 +2293,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithDownloadsView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2253,7 +2309,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithProgressView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2269,7 +2325,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithAccountPrivacyView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2285,7 +2341,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithSupportView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2301,7 +2357,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithTelegramSupportView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2317,7 +2373,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithCallSupportView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2333,7 +2389,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithLanguageView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2349,7 +2405,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithPrivacyPolicyView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2365,7 +2421,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithTermsAndConditionsView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2381,7 +2437,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithRegisterView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2397,7 +2453,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithLoginView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2413,9 +2469,9 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithLearnModuleView({
- _i37.Key? key,
+ _i38.Key? key,
required bool first,
- required _i38.LearnCourse course,
+ required _i39.LearnCourse course,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2432,9 +2488,9 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithLearnLessonView({
- _i37.Key? key,
+ _i38.Key? key,
required bool first,
- required _i39.LearnModule module,
+ required _i40.LearnModule module,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2451,7 +2507,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithForgetPasswordView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2467,10 +2523,10 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithLearnLessonDetailView({
- _i37.Key? key,
+ _i38.Key? key,
required int index,
- required _i40.LearnLesson lesson,
- required _i39.LearnModule module,
+ required _i41.LearnLesson lesson,
+ required _i40.LearnModule module,
required bool hasPractice,
int? routerId,
bool preventDuplicates = true,
@@ -2492,12 +2548,12 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithLearnPracticeView({
- _i37.Key? key,
+ _i38.Key? key,
String? level,
required int id,
required String label,
required String title,
- required _i41.LearnPractices practice,
+ required _i42.LearnPractices practice,
required String subtitle,
int? routerId,
bool preventDuplicates = true,
@@ -2521,8 +2577,8 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithCoursePaymentView({
- _i37.Key? key,
- required _i42.Course course,
+ _i38.Key? key,
+ required _i43.Course course,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2538,7 +2594,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithFailureView({
- _i37.Key? key,
+ _i38.Key? key,
required void Function() onTap,
required String label,
int? routerId,
@@ -2556,8 +2612,8 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithCourseLessonDetailView({
- _i37.Key? key,
- required _i43.CourseLesson lesson,
+ _i38.Key? key,
+ required _i44.CourseLesson lesson,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2573,7 +2629,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithDuolingoView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2589,7 +2645,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithCourseView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2605,7 +2661,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithLearnProgramView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2621,7 +2677,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithAssessmentView({
- _i37.Key? key,
+ _i38.Key? key,
required Map data,
int? routerId,
bool preventDuplicates = true,
@@ -2638,7 +2694,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithLearnSubscriptionView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2654,7 +2710,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithCourseCatalogView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2670,8 +2726,8 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithCourseUnitView({
- _i37.Key? key,
- required _i44.CourseCatalog catalog,
+ _i38.Key? key,
+ required _i45.CourseCatalog catalog,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2687,7 +2743,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithLandingView({
- _i37.Key? key,
+ _i38.Key? key,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2703,9 +2759,9 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithCourseModuleView({
- _i37.Key? key,
- required _i45.CourseModule? module,
- required _i44.CourseCatalog catalog,
+ _i38.Key? key,
+ required _i46.CourseModule? module,
+ required _i45.CourseCatalog catalog,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2722,7 +2778,7 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithLearnCourseView({
- _i37.Key? key,
+ _i38.Key? key,
required int id,
required bool first,
int? routerId,
@@ -2740,9 +2796,9 @@ extension NavigatorStateExtension on _i47.NavigationService {
}
Future replaceWithPaymentView({
- _i37.Key? key,
+ _i38.Key? key,
required String phone,
- required _i46.LearnSubscription subscription,
+ required _i47.LearnSubscription subscription,
int? routerId,
bool preventDuplicates = true,
Map? parameters,
@@ -2757,4 +2813,20 @@ extension NavigatorStateExtension on _i47.NavigationService {
parameters: parameters,
transition: transition);
}
+
+ Future replaceWithNotificationView({
+ _i38.Key? key,
+ int? routerId,
+ bool preventDuplicates = true,
+ Map? parameters,
+ Widget Function(BuildContext, Animation, Animation, Widget)?
+ transition,
+ }) async {
+ return replaceWith(Routes.notificationView,
+ arguments: NotificationViewArguments(key: key),
+ id: routerId,
+ preventDuplicates: preventDuplicates,
+ parameters: parameters,
+ transition: transition);
+ }
}
diff --git a/lib/main.dart b/lib/main.dart
index eee16d1..360d30a 100644
--- a/lib/main.dart
+++ b/lib/main.dart
@@ -7,8 +7,8 @@ import 'package:yimaru_app/app/app.dialogs.dart';
import 'package:yimaru_app/app/app.locator.dart';
import 'package:yimaru_app/app/app.router.dart';
import 'package:stacked_services/stacked_services.dart';
-import 'package:yimaru_app/services/notification_service.dart';
import 'package:easy_localization/easy_localization.dart';
+import 'package:yimaru_app/services/push_notification_service.dart';
import 'package:yimaru_app/ui/common/translations/codegen_loader.g.dart';
import 'firebase_options.dart';
@@ -17,7 +17,7 @@ Future main() async {
await setupLocator();
await Firebase.initializeApp(options: DefaultFirebaseOptions.currentPlatform);
- await locator().initialize();
+ await locator