i8n과 광고 수정
This commit is contained in:
@@ -68,11 +68,13 @@ class AppLocalizations {
|
||||
String get selectIcon => _localizedStrings['selectIcon'] ?? 'Select Icon';
|
||||
String get addCategory => _localizedStrings['addCategory'] ?? 'Add Category';
|
||||
String get settings => _localizedStrings['settings'] ?? 'Settings';
|
||||
String get theme => _localizedStrings['theme'] ?? 'Theme';
|
||||
String get darkMode => _localizedStrings['darkMode'] ?? 'Dark Mode';
|
||||
String get language => _localizedStrings['language'] ?? 'Language';
|
||||
String get notifications =>
|
||||
_localizedStrings['notifications'] ?? 'Notifications';
|
||||
String get appLock => _localizedStrings['appLock'] ?? 'App Lock';
|
||||
String get appLocked => _localizedStrings['appLocked'] ?? 'App is locked';
|
||||
String get paymentCard => _localizedStrings['paymentCard'] ?? 'Payment Card';
|
||||
String get paymentCardManagement =>
|
||||
_localizedStrings['paymentCardManagement'] ?? 'Payment Card Management';
|
||||
@@ -173,6 +175,8 @@ class AppLocalizations {
|
||||
String get notificationPermissionDenied =>
|
||||
_localizedStrings['notificationPermissionDenied'] ??
|
||||
'Notification permission denied';
|
||||
String get permissionGranted =>
|
||||
_localizedStrings['permissionGranted'] ?? 'Permission granted.';
|
||||
// 앱 정보
|
||||
String get appInfo => _localizedStrings['appInfo'] ?? 'App Info';
|
||||
String get version => _localizedStrings['version'] ?? 'Version';
|
||||
@@ -207,6 +211,8 @@ class AppLocalizations {
|
||||
String get requiredFieldsError =>
|
||||
_localizedStrings['requiredFieldsError'] ??
|
||||
'Please fill in all required fields';
|
||||
String get categoryNameRequired =>
|
||||
_localizedStrings['categoryNameRequired'] ?? 'Please enter category name';
|
||||
String get subscriptionUpdated =>
|
||||
_localizedStrings['subscriptionUpdated'] ??
|
||||
'Subscription information has been updated';
|
||||
@@ -259,6 +265,9 @@ class AppLocalizations {
|
||||
String get authenticationFailed =>
|
||||
_localizedStrings['authenticationFailed'] ??
|
||||
'Authentication failed. Please try again.';
|
||||
String get nextBillingDateAdjusted =>
|
||||
_localizedStrings['nextBillingDateAdjusted'] ??
|
||||
'Saved as the next billing date';
|
||||
String get smsPermissionRequired =>
|
||||
_localizedStrings['smsPermissionRequired'] ?? 'SMS permission required';
|
||||
String get noSubscriptionSmsFound =>
|
||||
@@ -467,6 +476,8 @@ class AppLocalizations {
|
||||
String get foundSubscription =>
|
||||
_localizedStrings['foundSubscription'] ?? 'Found subscription';
|
||||
String get serviceName => _localizedStrings['serviceName'] ?? 'Service Name';
|
||||
String get unknownService =>
|
||||
_localizedStrings['unknownService'] ?? 'Unknown service';
|
||||
String get latestSmsMessage =>
|
||||
_localizedStrings['latestSmsMessage'] ?? 'Latest SMS message';
|
||||
String smsDetectedDate(String date) {
|
||||
@@ -669,6 +680,49 @@ class AppLocalizations {
|
||||
_localizedStrings['invalidAmount'] ?? 'Please enter a valid amount';
|
||||
String get featureComingSoon =>
|
||||
_localizedStrings['featureComingSoon'] ?? 'This feature is coming soon';
|
||||
String get exactAlarmPermission =>
|
||||
_localizedStrings['exactAlarmPermission'] ??
|
||||
'Exact alarm permission (Alarms & Reminders)';
|
||||
String get exactAlarmPermissionDesc =>
|
||||
_localizedStrings['exactAlarmPermissionDesc'] ??
|
||||
'We need permission to guarantee precise alarms.';
|
||||
String get allowAlarmsInSettings =>
|
||||
_localizedStrings['allowAlarmsInSettings'] ??
|
||||
'Please allow "Alarms & reminders" in Settings.';
|
||||
String get testNotification =>
|
||||
_localizedStrings['testNotification'] ?? 'Test notification';
|
||||
|
||||
String testSubscriptionBody(String amountText) {
|
||||
final template =
|
||||
_localizedStrings['testSubscriptionBody'] ?? 'Test subscription • @';
|
||||
return template.replaceAll('@', amountText);
|
||||
}
|
||||
|
||||
String expirationReminderBody(String serviceName, int days) {
|
||||
final template = _localizedStrings['expirationReminderBody'] ??
|
||||
'@ subscription expires in # days.';
|
||||
return template
|
||||
.replaceAll('@', serviceName)
|
||||
.replaceAll('#', days.toString());
|
||||
}
|
||||
|
||||
String get eventEndNotificationTitle =>
|
||||
_localizedStrings['eventEndNotificationTitle'] ??
|
||||
'Event end notification';
|
||||
|
||||
String eventEndNotificationBody(String serviceName) {
|
||||
final template = _localizedStrings['eventEndNotificationBody'] ??
|
||||
"@'s discount event has ended.";
|
||||
return template.replaceAll('@', serviceName);
|
||||
}
|
||||
|
||||
String paymentChargeNotification(String serviceName, String amountText) {
|
||||
final template = _localizedStrings['paymentChargeNotification'] ??
|
||||
'@ subscription charge @ was completed.';
|
||||
return template
|
||||
.replaceFirst('@', serviceName)
|
||||
.replaceFirst('@', amountText);
|
||||
}
|
||||
|
||||
// 결제 주기를 키값으로 변환하여 번역된 이름 반환
|
||||
String getBillingCycleName(String billingCycleKey) {
|
||||
|
||||
Reference in New Issue
Block a user