Skip to content

Commit

Permalink
feat: migrate util l10n to new ap_common_flutter_core
Browse files Browse the repository at this point in the history
  • Loading branch information
abc873693 committed Oct 13, 2024
1 parent 7d02199 commit be152ba
Show file tree
Hide file tree
Showing 54 changed files with 421 additions and 227 deletions.
4 changes: 2 additions & 2 deletions analysis_options.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ include: package:lint/strict.yaml
analyzer:
exclude:
# l10n generated code
- packages/ap_common/lib/l10n/intl/*.dart
- packages/ap_common/lib/l10n/l10n.dart
- packages/ap_common_flutter_core/lib/src/l10n/intl/*.dart
- packages/ap_common_flutter_core/lib/src/l10n/l10n.dart
- apps/example/lib/l10n/intl/*.dart
- apps/example/lib/l10n/l10n.dart
# example
Expand Down
6 changes: 6 additions & 0 deletions melos_ap_common.iml
Original file line number Diff line number Diff line change
Expand Up @@ -1216,6 +1216,12 @@
<excludeFolder url="file://$MODULE_DIR$/packages/ap_common_plugin/.dart_tool" />
<excludeFolder url="file://$MODULE_DIR$/packages/ap_common_plugin/.pub" />
<excludeFolder url="file://$MODULE_DIR$/packages/ap_common_plugin/build" />
<excludeFolder url="file://$MODULE_DIR$/packages/ap_common_core_flutter/.dart_tool" />
<excludeFolder url="file://$MODULE_DIR$/packages/ap_common_core_flutter/.pub" />
<excludeFolder url="file://$MODULE_DIR$/packages/ap_common_core_flutter/build" />
<excludeFolder url="file://$MODULE_DIR$/packages/ap_common_flutter_core/.dart_tool" />
<excludeFolder url="file://$MODULE_DIR$/packages/ap_common_flutter_core/.pub" />
<excludeFolder url="file://$MODULE_DIR$/packages/ap_common_flutter_core/build" />
</content>
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Dart SDK" level="project" />
Expand Down
4 changes: 1 addition & 3 deletions packages/ap_common/lib/api/announcement_helper.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,9 @@ import 'dart:async';
import 'dart:convert';
import 'dart:ui' show Locale;

import 'package:ap_common/callback/general_callback.dart';
import 'package:ap_common/l10n/l10n.dart';
import 'package:ap_common_core/ap_common_core.dart';
import 'package:ap_common_flutter_core/ap_common_flutter_core.dart';

export 'package:ap_common/callback/general_callback.dart';
export 'package:ap_common_core/ap_common_core.dart';

enum AnnouncementLoginType {
Expand Down
2 changes: 1 addition & 1 deletion packages/ap_common/lib/api/github_helper.dart
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import 'dart:convert';

import 'package:ap_common/callback/general_callback.dart';
import 'package:ap_common_core/ap_common_core.dart';
import 'package:ap_common_flutter_core/ap_common_flutter_core.dart';
import 'package:cookie_jar/cookie_jar.dart';
import 'package:dio_cookie_manager/dio_cookie_manager.dart';

Expand Down
4 changes: 1 addition & 3 deletions packages/ap_common/lib/api/imgur_helper.dart
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
import 'dart:async';
import 'dart:typed_data';

import 'package:ap_common/callback/general_callback.dart';
import 'package:ap_common/utils/ap_localizations.dart';
import 'package:ap_common/utils/ap_utils.dart';
import 'package:ap_common_core/ap_common_core.dart';
import 'package:ap_common_flutter_core/ap_common_flutter_core.dart';
import 'package:path/path.dart' as p;

export 'package:ap_common/callback/general_callback.dart';
export 'package:ap_common_core/ap_common_core.dart';

class ImgurHelper {
Expand Down
7 changes: 3 additions & 4 deletions packages/ap_common/lib/pages/about_us_page.dart
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
import 'package:ap_common/resources/ap_icon.dart';
import 'package:ap_common/resources/ap_theme.dart';
import 'package:ap_common/resources/resources.dart';
import 'package:ap_common/utils/ap_localizations.dart';
import 'package:ap_common/utils/ap_utils.dart';
import 'package:ap_common_core/ap_common_core.dart';
import 'package:ap_common_flutter_core/ap_common_flutter_core.dart';
import 'package:flutter/material.dart';
import 'package:flutter_linkify/flutter_linkify.dart';

Expand Down Expand Up @@ -208,7 +207,7 @@ class AboutUsPageState extends State<AboutUsPage> {
.catchError(
(dynamic onError) {
if (!context.mounted) return;
ApUtils.showToast(
UiUtil.instance.showToast(
context,
app.platformError,
);
Expand All @@ -226,7 +225,7 @@ class AboutUsPageState extends State<AboutUsPage> {
.catchError(
(dynamic onError) {
if (!context.mounted) return;
ApUtils.showToast(
UiUtil.instance.showToast(
context,
app.platformError,
);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
import 'package:ap_common/api/announcement_helper.dart';
import 'package:ap_common/resources/ap_icon.dart';
import 'package:ap_common/resources/ap_theme.dart';
import 'package:ap_common/utils/ap_localizations.dart';
import 'package:ap_common/utils/ap_utils.dart';
import 'package:ap_common/widgets/hint_content.dart';
import 'package:ap_common_flutter_core/ap_common_flutter_core.dart';
import 'package:flutter/material.dart';

enum _State { loading, done, error }
Expand Down
27 changes: 16 additions & 11 deletions packages/ap_common/lib/pages/announcement/edit_page.dart
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
import 'package:ap_common/api/announcement_helper.dart';
import 'package:ap_common/api/imgur_helper.dart';
import 'package:ap_common/pages/announcement/home_page.dart' show TagColors;
import 'package:ap_common/resources/ap_icon.dart';
import 'package:ap_common/resources/ap_theme.dart';
import 'package:ap_common/utils/ap_localizations.dart';
import 'package:ap_common/utils/ap_utils.dart';
import 'package:ap_common/widgets/ap_network_image.dart';
import 'package:ap_common/widgets/default_dialog.dart';
import 'package:ap_common_flutter_core/ap_common_flutter_core.dart';
import 'package:flutter/material.dart';
import 'package:flutter_keyboard_visibility/flutter_keyboard_visibility.dart';

Expand Down Expand Up @@ -199,7 +198,8 @@ class _AnnouncementEditPageState extends State<AnnouncementEditPage> {
actionText: ApLocalizations.of(context).confirm,
actionFunction: () {
if (_newTag.text.isEmpty) {
ApUtils.showToast(context, app.doNotEmpty);
UiUtil.instance
.showToast(context, app.doNotEmpty);
} else {
final String newTag = _newTag.text;
final int index = tags.indexOf(newTag);
Expand All @@ -208,7 +208,8 @@ class _AnnouncementEditPageState extends State<AnnouncementEditPage> {
Navigator.of(context, rootNavigator: true)
.pop();
} else {
ApUtils.showToast(context, app.tagRepeatHint);
UiUtil.instance
.showToast(context, app.tagRepeatHint);
}
}
},
Expand Down Expand Up @@ -289,7 +290,7 @@ class _AnnouncementEditPageState extends State<AnnouncementEditPage> {
),
),
onPressed: () async {
final XFile? image = await ApUtils.pickImage();
final XFile? image = await MediaUtil.instance.pickImage();
if (image != null) {
setState(
() => imgurUploadState = _ImgurUploadState.uploading,
Expand All @@ -298,15 +299,19 @@ class _AnnouncementEditPageState extends State<AnnouncementEditPage> {
file: image,
callback: GeneralCallback<ImgurUploadData>(
onFailure: (DioException dioException) {
ApUtils.showToast(context, dioException.message);
if (dioException.message
case final String message?) {
UiUtil.instance.showToast(context, message);
}
setState(
() => imgurUploadState = _imgUrl.text.isEmpty
? _ImgurUploadState.noFile
: _ImgurUploadState.done,
);
},
onError: (GeneralResponse generalResponse) {
ApUtils.showToast(context, generalResponse.message);
UiUtil.instance
.showToast(context, generalResponse.message);
setState(
() => imgurUploadState = _imgUrl.text.isEmpty
? _ImgurUploadState.noFile
Expand Down Expand Up @@ -655,13 +660,13 @@ class _AnnouncementEditPageState extends State<AnnouncementEditPage> {
(_) async {
switch (widget.mode) {
case Mode.add:
ApUtils.showToast(context, app.addSuccess);
UiUtil.instance.showToast(context, app.addSuccess);
case Mode.edit:
ApUtils.showToast(context, app.updateSuccess);
UiUtil.instance.showToast(context, app.updateSuccess);
case Mode.application:
ApUtils.showToast(context, app.applicationSubmitSuccess);
UiUtil.instance.showToast(context, app.applicationSubmitSuccess);
case Mode.editApplication:
ApUtils.showToast(context, app.updateSuccess);
UiUtil.instance.showToast(context, app.updateSuccess);
if (isApproval != null) {
if (isApproval) {
await AnnouncementHelper.instance.approveApplication(
Expand Down
23 changes: 12 additions & 11 deletions packages/ap_common/lib/pages/announcement/home_page.dart
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,13 @@ import 'dart:io';
import 'package:ap_common/api/announcement_helper.dart';
import 'package:ap_common/pages/announcement/black_list_page.dart';
import 'package:ap_common/pages/announcement/edit_page.dart';
import 'package:ap_common/resources/ap_icon.dart';
import 'package:ap_common/resources/ap_theme.dart';
import 'package:ap_common/scaffold/login_scaffold.dart';
import 'package:ap_common/utils/ap_localizations.dart';
import 'package:ap_common/utils/ap_utils.dart';
import 'package:ap_common/widgets/hint_content.dart';
import 'package:ap_common/widgets/progress_dialog.dart';
import 'package:ap_common/widgets/yes_no_dialog.dart';
import 'package:ap_common_flutter_core/ap_common_flutter_core.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/gestures.dart';
import 'package:flutter/material.dart';
Expand Down Expand Up @@ -481,7 +480,7 @@ class _AnnouncementHomePageState extends State<AnnouncementHomePage> {
callback: GeneralCallback.simple(
context,
(_) {
ApUtils.showToast(
UiUtil.instance.showToast(
context,
ap.updateSuccess,
);
Expand Down Expand Up @@ -516,7 +515,7 @@ class _AnnouncementHomePageState extends State<AnnouncementHomePage> {
callback: GeneralCallback.simple(
context,
(_) {
ApUtils.showToast(
UiUtil.instance.showToast(
context,
ap.updateSuccess,
);
Expand All @@ -535,7 +534,7 @@ class _AnnouncementHomePageState extends State<AnnouncementHomePage> {
callback: GeneralCallback.simple(
context,
(_) {
ApUtils.showToast(
UiUtil.instance.showToast(
context,
ap.updateSuccess,
);
Expand Down Expand Up @@ -724,7 +723,7 @@ class _AnnouncementHomePageState extends State<AnnouncementHomePage> {
Future<void> _login(AnnouncementLoginType loginType) async {
if (loginType == AnnouncementLoginType.normal &&
(_username.text.isEmpty || _password.text.isEmpty)) {
ApUtils.showToast(context, ap.doNotEmpty);
UiUtil.instance.showToast(context, ap.doNotEmpty);
} else {
final bool isNotLogin = !PreferenceUtil.instance
.getBool(ApConstants.announcementIsLogin, false);
Expand Down Expand Up @@ -752,11 +751,13 @@ class _AnnouncementHomePageState extends State<AnnouncementHomePage> {
GeneralCallback<AnnouncementLoginData>(
onError: (GeneralResponse response) {
if (isNotLogin) Navigator.of(context, rootNavigator: true).pop();
ApUtils.showToast(context, response.message);
UiUtil.instance.showToast(context, response.message);
},
onFailure: (DioException dioException) async {
if (isNotLogin) Navigator.of(context, rootNavigator: true).pop();
ApUtils.showToast(context, dioException.i18nMessage);
if (dioException.i18nMessage case final String message?) {
UiUtil.instance.showToast(context, message);
}
if (dioException.type == DioExceptionType.badResponse &&
dioException.response!.statusCode == 403) {
if (loginType == AnnouncementLoginType.google) {
Expand All @@ -780,7 +781,7 @@ class _AnnouncementHomePageState extends State<AnnouncementHomePage> {
idToken!,
);
}
ApUtils.showToast(context, ap.loginSuccess);
UiUtil.instance.showToast(context, ap.loginSuccess);
PreferenceUtil.instance
.setBool(ApConstants.announcementIsLogin, true);
PreferenceUtil.instance.setInt(
Expand Down Expand Up @@ -823,7 +824,7 @@ class _AnnouncementHomePageState extends State<AnnouncementHomePage> {
}
} catch (e, s) {
if (!mounted) return;
ApUtils.showToast(context, ap.thirdPartyLoginFail);
UiUtil.instance.showToast(context, ap.thirdPartyLoginFail);
CrashlyticsUtil.instance?.recordError(e, s);
if (isNotLogin) Navigator.of(context, rootNavigator: true).pop();
if (CrashlyticsUtil.instance != null) rethrow;
Expand All @@ -841,7 +842,7 @@ class _AnnouncementHomePageState extends State<AnnouncementHomePage> {
.appleLogin(idToken: idToken!, callback: callback);
} catch (e, s) {
if (!mounted) return;
ApUtils.showToast(context, ap.thirdPartyLoginFail);
UiUtil.instance.showToast(context, ap.thirdPartyLoginFail);
if (isNotLogin) Navigator.of(context, rootNavigator: true).pop();
CrashlyticsUtil.instance?.recordError(e, s);
}
Expand Down
3 changes: 1 addition & 2 deletions packages/ap_common/lib/pages/announcement_content_page.dart
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
import 'package:ap_common/resources/ap_icon.dart';
import 'package:ap_common/resources/ap_theme.dart';
import 'package:ap_common/utils/ap_localizations.dart';
import 'package:ap_common/utils/ap_utils.dart';
import 'package:ap_common/widgets/ap_network_image.dart';
import 'package:ap_common/widgets/hint_content.dart';
import 'package:ap_common_core/ap_common_core.dart';
import 'package:ap_common_flutter_core/ap_common_flutter_core.dart';
import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart';
import 'package:flutter_linkify/flutter_linkify.dart';
Expand Down
17 changes: 7 additions & 10 deletions packages/ap_common/lib/scaffold/course_scaffold.dart
Original file line number Diff line number Diff line change
@@ -1,19 +1,17 @@
import 'dart:io';
import 'dart:ui' as ui;

import 'package:add_2_calendar/add_2_calendar.dart';
import 'package:ap_common/resources/ap_colors.dart';
import 'package:ap_common/resources/ap_icon.dart';
import 'package:ap_common/resources/ap_theme.dart';
import 'package:ap_common/resources/resources.dart';
import 'package:ap_common/utils/ap_localizations.dart';
import 'package:ap_common/utils/ap_utils.dart';
import 'package:ap_common/utils/notification_utils.dart';
import 'package:ap_common/widgets/default_dialog.dart';
import 'package:ap_common/widgets/hint_content.dart';
import 'package:ap_common/widgets/item_picker.dart';
import 'package:ap_common/widgets/option_dialog.dart';
import 'package:ap_common_core/ap_common_core.dart';
import 'package:ap_common_flutter_core/ap_common_flutter_core.dart';
import 'package:auto_size_text_pk/auto_size_text_pk.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
Expand Down Expand Up @@ -429,7 +427,7 @@ class CourseScaffoldState extends State<CourseScaffold> {
_repaintBoundaryGlobalKey.currentContext!.findRenderObject()
as RenderRepaintBoundary?;
if (boundary == null) {
ApUtils.showToast(context, app.unknownError);
UiUtil.instance.showToast(context, app.unknownError);
return;
}
final ui.Image image = await boundary.toImage(pixelRatio: 3.0);
Expand All @@ -439,7 +437,7 @@ class CourseScaffoldState extends State<CourseScaffold> {
final String formattedDate = DateFormat('yyyyMMdd_hhmmss').format(now);
if (byteData != null) {
if (!mounted) return;
await ApUtils.saveImage(
await MediaUtil.instance.saveImage(
context,
byteData: byteData,
fileName: 'course_table_$formattedDate',
Expand All @@ -456,7 +454,7 @@ class CourseScaffoldState extends State<CourseScaffold> {
AnalyticsUtil.instance?.logEvent('export_course_table_image_success');
} else {
if (!mounted) return;
ApUtils.showToast(context, app.unknownError);
UiUtil.instance.showToast(context, app.unknownError);
}
}

Expand Down Expand Up @@ -772,14 +770,13 @@ class _CourseContentState extends State<CourseContent> {
format.parse(widget.timeCode.startTime);
final DateTime endTime =
format.parse(widget.timeCode.endTime);
final Event event = Event(
PlatformCalendarUtil.instance.addToApp(
title: widget.course.title,
location: widget.course.location?.toString() ?? '',
startDate: startTime.weekTime(widget.weekday),
endDate: endTime.weekTime(widget.weekday),
timeZone: 'GMT+8',
);
Add2Calendar.addEvent2Cal(event);
AnalyticsUtil.instance
?.logEvent('course_export_to_calendar');
},
Expand Down Expand Up @@ -828,7 +825,7 @@ class _CourseContentState extends State<CourseContent> {
widget.notifyData!.lastId++;
widget.notifyData!.data.add(courseNotify);
if (!context.mounted) return;
ApUtils.showToast(
UiUtil.instance.showToast(
context,
ApLocalizations.of(context).courseNotifyHint,
);
Expand All @@ -843,7 +840,7 @@ class _CourseContentState extends State<CourseContent> {
return data.id == courseNotify!.id;
});
if (!context.mounted) return;
ApUtils.showToast(
UiUtil.instance.showToast(
context,
ApLocalizations.of(context).cancelNotifySuccess,
);
Expand Down
3 changes: 1 addition & 2 deletions packages/ap_common/lib/scaffold/home_page_scaffold.dart
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
import 'dart:async';
import 'dart:io';

import 'package:ap_common/resources/ap_icon.dart';
import 'package:ap_common/resources/ap_theme.dart';
import 'package:ap_common/utils/ap_localizations.dart';
import 'package:ap_common/widgets/ap_network_image.dart';
import 'package:ap_common/widgets/hint_content.dart';
import 'package:ap_common/widgets/yes_no_dialog.dart';
import 'package:ap_common_core/ap_common_core.dart';
import 'package:ap_common_flutter_core/ap_common_flutter_core.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';

Expand Down
Loading

0 comments on commit be152ba

Please sign in to comment.