|
|
|
1
|
+// ignore: unused_import
|
|
|
|
2
|
+import 'package:intl/intl.dart' as intl;
|
|
1
|
import 'app_localizations.dart';
|
3
|
import 'app_localizations.dart';
|
|
2
|
|
4
|
|
|
3
|
// ignore_for_file: type=lint
|
5
|
// ignore_for_file: type=lint
|
|
@@ -67,10 +69,12 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -67,10 +69,12 @@ class AppLocalizationsEn extends AppLocalizations { |
|
67
|
String get settings => 'Settings';
|
69
|
String get settings => 'Settings';
|
|
68
|
|
70
|
|
|
69
|
@override
|
71
|
@override
|
|
70
|
- String get onboardingIntroTitle => 'DoubleFeel is a health companion app built for Apple Watch';
|
72
|
+ String get onboardingIntroTitle =>
|
|
|
|
73
|
+ 'DoubleFeel is a health companion app built for Apple Watch';
|
|
71
|
|
74
|
|
|
72
|
@override
|
75
|
@override
|
|
73
|
- String get onboardingIntroBody => 'We hope to help you\n<em>notice changes in your mind and body, and help the people who love you</em> see when you are <em>tired or need support</em>';
|
76
|
+ String get onboardingIntroBody =>
|
|
|
|
77
|
+ 'We hope to help you\n<em>notice changes in your mind and body, and help the people who love you</em> see when you are <em>tired or need support</em>';
|
|
74
|
|
78
|
|
|
75
|
@override
|
79
|
@override
|
|
76
|
String get onboardingStateQuestion => 'Which of these often happens to you?';
|
80
|
String get onboardingStateQuestion => 'Which of these often happens to you?';
|
|
@@ -82,16 +86,19 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -82,16 +86,19 @@ class AppLocalizationsEn extends AppLocalizations { |
|
82
|
String get onboardingStateTired => 'I get tired easily';
|
86
|
String get onboardingStateTired => 'I get tired easily';
|
|
83
|
|
87
|
|
|
84
|
@override
|
88
|
@override
|
|
85
|
- String get onboardingStatePoorRest => 'I wake up but still do not feel rested';
|
89
|
+ String get onboardingStatePoorRest =>
|
|
|
|
90
|
+ 'I wake up but still do not feel rested';
|
|
86
|
|
91
|
|
|
87
|
@override
|
92
|
@override
|
|
88
|
- String get onboardingStateNeedStimulants => 'I rely on cigarettes, alcohol, coffee, or other stimulants to stay alert';
|
93
|
+ String get onboardingStateNeedStimulants =>
|
|
|
|
94
|
+ 'I rely on cigarettes, alcohol, coffee, or other stimulants to stay alert';
|
|
89
|
|
95
|
|
|
90
|
@override
|
96
|
@override
|
|
91
|
String get onboardingStateNone => 'None of the above';
|
97
|
String get onboardingStateNone => 'None of the above';
|
|
92
|
|
98
|
|
|
93
|
@override
|
99
|
@override
|
|
94
|
- String get onboardingStressGoalQuestion => 'What do you want to learn by understanding stress?';
|
100
|
+ String get onboardingStressGoalQuestion =>
|
|
|
|
101
|
+ 'What do you want to learn by understanding stress?';
|
|
95
|
|
102
|
|
|
96
|
@override
|
103
|
@override
|
|
97
|
String get onboardingStressGoalSource => 'Understand where stress comes from';
|
104
|
String get onboardingStressGoalSource => 'Understand where stress comes from';
|
|
@@ -100,7 +107,8 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -100,7 +107,8 @@ class AppLocalizationsEn extends AppLocalizations { |
|
100
|
String get onboardingStressGoalReminder => 'Get reminded when stress appears';
|
107
|
String get onboardingStressGoalReminder => 'Get reminded when stress appears';
|
|
101
|
|
108
|
|
|
102
|
@override
|
109
|
@override
|
|
103
|
- String get onboardingStressGoalLovedOnes => 'Let people who care about me know my stress state';
|
110
|
+ String get onboardingStressGoalLovedOnes =>
|
|
|
|
111
|
+ 'Let people who care about me know my stress state';
|
|
104
|
|
112
|
|
|
105
|
@override
|
113
|
@override
|
|
106
|
String get onboardingStressGoalRelax => 'Understand stress and feel lighter';
|
114
|
String get onboardingStressGoalRelax => 'Understand stress and feel lighter';
|
|
@@ -109,7 +117,8 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -109,7 +117,8 @@ class AppLocalizationsEn extends AppLocalizations { |
|
109
|
String get onboardingStressGoalBodyTalk => 'Communicate better with my body';
|
117
|
String get onboardingStressGoalBodyTalk => 'Communicate better with my body';
|
|
110
|
|
118
|
|
|
111
|
@override
|
119
|
@override
|
|
112
|
- String get onboardingReliefQuestion => 'Which methods do you think can ease stress?';
|
120
|
+ String get onboardingReliefQuestion =>
|
|
|
|
121
|
+ 'Which methods do you think can ease stress?';
|
|
113
|
|
122
|
|
|
114
|
@override
|
123
|
@override
|
|
115
|
String get onboardingReliefSleep => 'Regular sleep';
|
124
|
String get onboardingReliefSleep => 'Regular sleep';
|
|
@@ -133,7 +142,8 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -133,7 +142,8 @@ class AppLocalizationsEn extends AppLocalizations { |
|
133
|
String get onboardingKeyDataTitle => 'Did you know?';
|
142
|
String get onboardingKeyDataTitle => 'Did you know?';
|
|
134
|
|
143
|
|
|
135
|
@override
|
144
|
@override
|
|
136
|
- String get onboardingKeyDataSubtitle => 'Everyone has a magical and important body metric that can help us:';
|
145
|
+ String get onboardingKeyDataSubtitle =>
|
|
|
|
146
|
+ 'Everyone has a magical and important body metric that can help us:';
|
|
137
|
|
147
|
|
|
138
|
@override
|
148
|
@override
|
|
139
|
String get onboardingKeyDataStress => 'Monitor stress';
|
149
|
String get onboardingKeyDataStress => 'Monitor stress';
|
|
@@ -148,7 +158,8 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -148,7 +158,8 @@ class AppLocalizationsEn extends AppLocalizations { |
|
148
|
String get onboardingKeyDataHabits => 'Build healthy habits';
|
158
|
String get onboardingKeyDataHabits => 'Build healthy habits';
|
|
149
|
|
159
|
|
|
150
|
@override
|
160
|
@override
|
|
151
|
- String get onboardingKeyDataLovedOnes => 'Help important people care about your state in time';
|
161
|
+ String get onboardingKeyDataLovedOnes =>
|
|
|
|
162
|
+ 'Help important people care about your state in time';
|
|
152
|
|
163
|
|
|
153
|
@override
|
164
|
@override
|
|
154
|
String get onboardingTellMeWhatItIs => 'Tell me what it is!';
|
165
|
String get onboardingTellMeWhatItIs => 'Tell me what it is!';
|
|
@@ -157,16 +168,19 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -157,16 +168,19 @@ class AppLocalizationsEn extends AppLocalizations { |
|
157
|
String get onboardingHrvTitle => 'It is HRV, heart rate variability';
|
168
|
String get onboardingHrvTitle => 'It is HRV, heart rate variability';
|
|
158
|
|
169
|
|
|
159
|
@override
|
170
|
@override
|
|
160
|
- String get onboardingHrvSubtitle => 'It helps us measure overall stress and health';
|
171
|
+ String get onboardingHrvSubtitle =>
|
|
|
|
172
|
+ 'It helps us measure overall stress and health';
|
|
161
|
|
173
|
|
|
162
|
@override
|
174
|
@override
|
|
163
|
- String get onboardingHrvDescription => 'Heart rate variability (HRV) is the tiny variation in time between heartbeats. It reflects autonomic nervous system activity and how the body responds to stress.';
|
175
|
+ String get onboardingHrvDescription =>
|
|
|
|
176
|
+ 'Heart rate variability (HRV) is the tiny variation in time between heartbeats. It reflects autonomic nervous system activity and how the body responds to stress.';
|
|
164
|
|
177
|
|
|
165
|
@override
|
178
|
@override
|
|
166
|
String get onboardingTellMeMore => 'Tell me more';
|
179
|
String get onboardingTellMeMore => 'Tell me more';
|
|
167
|
|
180
|
|
|
168
|
@override
|
181
|
@override
|
|
169
|
- String get onboardingResearchTitle => 'Many studies show that HRV changes are closely related to how our body and mind feel';
|
182
|
+ String get onboardingResearchTitle =>
|
|
|
|
183
|
+ 'Many studies show that HRV changes are closely related to how our body and mind feel';
|
|
170
|
|
184
|
|
|
171
|
@override
|
185
|
@override
|
|
172
|
String get onboardingResearchFatigue => 'Physical fatigue';
|
186
|
String get onboardingResearchFatigue => 'Physical fatigue';
|
|
@@ -184,25 +198,30 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -184,25 +198,30 @@ class AppLocalizationsEn extends AppLocalizations { |
|
184
|
String get onboardingHealthPermissionTitle => 'Allow health data access';
|
198
|
String get onboardingHealthPermissionTitle => 'Allow health data access';
|
|
185
|
|
199
|
|
|
186
|
@override
|
200
|
@override
|
|
187
|
- String get onboardingHealthPermissionBody => 'DoubleFeel needs connected wearable health data to send reminders, count stress moments, and provide suggestions.';
|
201
|
+ String get onboardingHealthPermissionBody =>
|
|
|
|
202
|
+ 'DoubleFeel needs connected wearable health data to send reminders, count stress moments, and provide suggestions.';
|
|
188
|
|
203
|
|
|
189
|
@override
|
204
|
@override
|
|
190
|
- String get onboardingHealthPermissionPrivacy => 'Your health data is stored locally. We do not upload any related data.';
|
205
|
+ String get onboardingHealthPermissionPrivacy =>
|
|
|
|
206
|
+ 'Your health data is stored locally. We do not upload any related data.';
|
|
191
|
|
207
|
|
|
192
|
@override
|
208
|
@override
|
|
193
|
String get onboardingNotificationTitle => 'Turn on notifications';
|
209
|
String get onboardingNotificationTitle => 'Turn on notifications';
|
|
194
|
|
210
|
|
|
195
|
@override
|
211
|
@override
|
|
196
|
- String get onboardingNotificationSubtitle => 'Learn about every body change in time';
|
212
|
+ String get onboardingNotificationSubtitle =>
|
|
|
|
213
|
+ 'Learn about every body change in time';
|
|
197
|
|
214
|
|
|
198
|
@override
|
215
|
@override
|
|
199
|
- String get onboardingNotificationBody => 'After Apple Watch data updates, we can remind you in time and help you act to improve your stress state.';
|
216
|
+ String get onboardingNotificationBody =>
|
|
|
|
217
|
+ 'After Apple Watch data updates, we can remind you in time and help you act to improve your stress state.';
|
|
200
|
|
218
|
|
|
201
|
@override
|
219
|
@override
|
|
202
|
String get onboardingMemberTitle => 'Get an annual membership offer';
|
220
|
String get onboardingMemberTitle => 'Get an annual membership offer';
|
|
203
|
|
221
|
|
|
204
|
@override
|
222
|
@override
|
|
205
|
- String get onboardingMemberBody => 'Start your pressure alert and health companion journey, so love and care are always present.';
|
223
|
+ String get onboardingMemberBody =>
|
|
|
|
224
|
+ 'Start your pressure alert and health companion journey, so love and care are always present.';
|
|
206
|
|
225
|
|
|
207
|
@override
|
226
|
@override
|
|
208
|
String get onboardingMemberOriginalPrice => 'Original ¥72.00/year';
|
227
|
String get onboardingMemberOriginalPrice => 'Original ¥72.00/year';
|
|
@@ -217,13 +236,16 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -217,13 +236,16 @@ class AppLocalizationsEn extends AppLocalizations { |
|
217
|
String get onboardingMemberAllOptions => 'View all purchase options';
|
236
|
String get onboardingMemberAllOptions => 'View all purchase options';
|
|
218
|
|
237
|
|
|
219
|
@override
|
238
|
@override
|
|
220
|
- String get healthCompanionIsNowAvailable => 'Health Companion is now available';
|
239
|
+ String get healthCompanionIsNowAvailable =>
|
|
|
|
240
|
+ 'Health Companion is now available';
|
|
221
|
|
241
|
|
|
222
|
@override
|
242
|
@override
|
|
223
|
- String get youCanNowViewEachOtherSHrvStressLevelsAndSleepPatternsAndReachOutToCheckInWhenTheOtherPersonSeemsTired => 'You can now view each other\'s HRV, stress levels, and sleep patterns, and reach out to check in when the other person seems tired.';
|
243
|
+ String get youCanNowViewEachOtherSHrvStressLevelsAndSleepPatternsAndReachOutToCheckInWhenTheOtherPersonSeemsTired =>
|
|
|
|
244
|
+ 'You can now view each other\'s HRV, stress levels, and sleep patterns, and reach out to check in when the other person seems tired.';
|
|
224
|
|
245
|
|
|
225
|
@override
|
246
|
@override
|
|
226
|
- String get bindPartnerTitle => 'Add a Close Contact\nOne more person to care about your health';
|
247
|
+ String get bindPartnerTitle =>
|
|
|
|
248
|
+ 'Add a Close Contact\nOne more person to care about your health';
|
|
227
|
|
249
|
|
|
228
|
@override
|
250
|
@override
|
|
229
|
String get bindPartnerMyId => 'My ID';
|
251
|
String get bindPartnerMyId => 'My ID';
|
|
@@ -262,7 +284,8 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -262,7 +284,8 @@ class AppLocalizationsEn extends AppLocalizations { |
|
262
|
String get onboardingResearchGoodSleep => 'Good Sleep';
|
284
|
String get onboardingResearchGoodSleep => 'Good Sleep';
|
|
263
|
|
285
|
|
|
264
|
@override
|
286
|
@override
|
|
265
|
- String get loginSlogan => 'Start your pressure alert and health companion journey\nso love and care are always present';
|
287
|
+ String get loginSlogan =>
|
|
|
|
288
|
+ 'Start your pressure alert and health companion journey\nso love and care are always present';
|
|
266
|
|
289
|
|
|
267
|
@override
|
290
|
@override
|
|
268
|
String get loginWithPhone => 'Sign in with Phone';
|
291
|
String get loginWithPhone => 'Sign in with Phone';
|
|
@@ -312,13 +335,15 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -312,13 +335,15 @@ class AppLocalizationsEn extends AppLocalizations { |
|
312
|
String get phoneLoginCodeHint => 'Enter verification code';
|
335
|
String get phoneLoginCodeHint => 'Enter verification code';
|
|
313
|
|
336
|
|
|
314
|
@override
|
337
|
@override
|
|
315
|
- String get phoneLoginAutoRegisterHint => 'Unregistered numbers will be registered automatically';
|
338
|
+ String get phoneLoginAutoRegisterHint =>
|
|
|
|
339
|
+ 'Unregistered numbers will be registered automatically';
|
|
316
|
|
340
|
|
|
317
|
@override
|
341
|
@override
|
|
318
|
String get phoneLoginLoggingIn => 'Signing in...';
|
342
|
String get phoneLoginLoggingIn => 'Signing in...';
|
|
319
|
|
343
|
|
|
320
|
@override
|
344
|
@override
|
|
321
|
- String get loginAgreeToTermsToast => 'Please read and agree to the Terms of Service and Privacy Policy first';
|
345
|
+ String get loginAgreeToTermsToast =>
|
|
|
|
346
|
+ 'Please read and agree to the Terms of Service and Privacy Policy first';
|
|
322
|
|
347
|
|
|
323
|
@override
|
348
|
@override
|
|
324
|
String get phoneLoginInvalidPhone => 'Invalid phone number';
|
349
|
String get phoneLoginInvalidPhone => 'Invalid phone number';
|
|
@@ -330,10 +355,12 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -330,10 +355,12 @@ class AppLocalizationsEn extends AppLocalizations { |
|
330
|
String get phoneLoginInvalidCode => 'Invalid verification code';
|
355
|
String get phoneLoginInvalidCode => 'Invalid verification code';
|
|
331
|
|
356
|
|
|
332
|
@override
|
357
|
@override
|
|
333
|
- String get todayHealthDataAuthTitle => 'Unable to access heart rate health data';
|
358
|
+ String get todayHealthDataAuthTitle =>
|
|
|
|
359
|
+ 'Unable to access heart rate health data';
|
|
334
|
|
360
|
|
|
335
|
@override
|
361
|
@override
|
|
336
|
- String get todayHealthDataAuthDescription => 'DoubleFeel needs permission to access your health data to provide stress reminders, real-time stress statistics, and health suggestions. Otherwise, some app features may not work properly. Your health data is stored locally only and will not be uploaded to any server.';
|
362
|
+ String get todayHealthDataAuthDescription =>
|
|
|
|
363
|
+ 'DoubleFeel needs permission to access your health data to provide stress reminders, real-time stress statistics, and health suggestions. Otherwise, some app features may not work properly. Your health data is stored locally only and will not be uploaded to any server.';
|
|
337
|
|
364
|
|
|
338
|
@override
|
365
|
@override
|
|
339
|
String get todayHealthDataAuthAction => 'Authorize health data access';
|
366
|
String get todayHealthDataAuthAction => 'Authorize health data access';
|
|
@@ -354,19 +381,24 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -354,19 +381,24 @@ class AppLocalizationsEn extends AppLocalizations { |
|
354
|
String get todayFaqLinkNoData => 'What if the app or watch face has no data?';
|
381
|
String get todayFaqLinkNoData => 'What if the app or watch face has no data?';
|
|
355
|
|
382
|
|
|
356
|
@override
|
383
|
@override
|
|
357
|
- String get todayFaqLinkHrvRealtimeUpdate => 'How can HRV data update in real time?';
|
384
|
+ String get todayFaqLinkHrvRealtimeUpdate =>
|
|
|
|
385
|
+ 'How can HRV data update in real time?';
|
|
358
|
|
386
|
|
|
359
|
@override
|
387
|
@override
|
|
360
|
- String get todayFaqLinkWatchNoStatusNotification => 'Why can\'t my watch receive status notifications?';
|
388
|
+ String get todayFaqLinkWatchNoStatusNotification =>
|
|
|
|
389
|
+ 'Why can\'t my watch receive status notifications?';
|
|
361
|
|
390
|
|
|
362
|
@override
|
391
|
@override
|
|
363
|
- String get todayFaqLinkWatchNoStatusAndInteractionNotification => 'Why can\'t my watch receive status and interaction notifications?';
|
392
|
+ String get todayFaqLinkWatchNoStatusAndInteractionNotification =>
|
|
|
|
393
|
+ 'Why can\'t my watch receive status and interaction notifications?';
|
|
364
|
|
394
|
|
|
365
|
@override
|
395
|
@override
|
|
366
|
- String get todayFaqLinkWatchFaceDataDelay => 'Why is watch face data delayed or not updating?';
|
396
|
+ String get todayFaqLinkWatchFaceDataDelay =>
|
|
|
|
397
|
+ 'Why is watch face data delayed or not updating?';
|
|
367
|
|
398
|
|
|
368
|
@override
|
399
|
@override
|
|
369
|
- String get todayFaqLinkWatchFaceBlackScreen => 'Why does the watch face turn black?';
|
400
|
+ String get todayFaqLinkWatchFaceBlackScreen =>
|
|
|
|
401
|
+ 'Why does the watch face turn black?';
|
|
370
|
|
402
|
|
|
371
|
@override
|
403
|
@override
|
|
372
|
String get todayStressStatusTitle => 'Overall stress status';
|
404
|
String get todayStressStatusTitle => 'Overall stress status';
|
|
@@ -393,136 +425,176 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -393,136 +425,176 @@ class AppLocalizationsEn extends AppLocalizations { |
|
393
|
String get todayStressStatusInsufficientData => 'Insufficient data';
|
425
|
String get todayStressStatusInsufficientData => 'Insufficient data';
|
|
394
|
|
426
|
|
|
395
|
@override
|
427
|
@override
|
|
396
|
- String get todayStressStatusOverloadDescription => 'Your current HRV is much lower than your long-term average, which may indicate fatigue, high stress, or insufficient recovery. Rest is recommended.';
|
428
|
+ String get todayStressStatusOverloadDescription =>
|
|
|
|
429
|
+ 'Your current HRV is much lower than your long-term average, which may indicate fatigue, high stress, or insufficient recovery. Rest is recommended.';
|
|
397
|
|
430
|
|
|
398
|
@override
|
431
|
@override
|
|
399
|
- String get todayStressStatusCautionDescription => 'Your current HRV is below the normal range, and your body may be accumulating stress. Pay attention to rest and recovery.';
|
432
|
+ String get todayStressStatusCautionDescription =>
|
|
|
|
433
|
+ 'Your current HRV is below the normal range, and your body may be accumulating stress. Pay attention to rest and recovery.';
|
|
400
|
|
434
|
|
|
401
|
@override
|
435
|
@override
|
|
402
|
- String get todayStressStatusNormalDescription => 'Your current body state is within your normal fluctuation range.';
|
436
|
+ String get todayStressStatusNormalDescription =>
|
|
|
|
437
|
+ 'Your current body state is within your normal fluctuation range.';
|
|
403
|
|
438
|
|
|
404
|
@override
|
439
|
@override
|
|
405
|
- String get todayStressStatusExcellentDescription => 'Your current HRV is higher than your recent average, indicating better recovery and overall state.';
|
440
|
+ String get todayStressStatusExcellentDescription =>
|
|
|
|
441
|
+ 'Your current HRV is higher than your recent average, indicating better recovery and overall state.';
|
|
406
|
|
442
|
|
|
407
|
@override
|
443
|
@override
|
|
408
|
- String get todayStressStatusInsufficientDataDescription => 'There is not enough available data to accurately assess your stress state yet.';
|
444
|
+ String get todayStressStatusInsufficientDataDescription =>
|
|
|
|
445
|
+ 'There is not enough available data to accurately assess your stress state yet.';
|
|
409
|
|
446
|
|
|
410
|
@override
|
447
|
@override
|
|
411
|
- String get todayHrvMeasurementIntro => 'Apple Watch measures HRV every 2-5 hours by default. If you want to measure it manually right now, follow these steps:';
|
448
|
+ String get todayHrvMeasurementIntro =>
|
|
|
|
449
|
+ 'Apple Watch measures HRV every 2-5 hours by default. If you want to measure it manually right now, follow these steps:';
|
|
412
|
|
450
|
|
|
413
|
@override
|
451
|
@override
|
|
414
|
- String get todayHrvMeasurementStep1 => '1. Wear your Apple Watch snugly, sit down, and stay calm';
|
452
|
+ String get todayHrvMeasurementStep1 =>
|
|
|
|
453
|
+ '1. Wear your Apple Watch snugly, sit down, and stay calm';
|
|
415
|
|
454
|
|
|
416
|
@override
|
455
|
@override
|
|
417
|
- String get todayHrvMeasurementStep2 => '2. Open Mindfulness on Apple Watch and start Breathe';
|
456
|
+ String get todayHrvMeasurementStep2 =>
|
|
|
|
457
|
+ '2. Open Mindfulness on Apple Watch and start Breathe';
|
|
418
|
|
458
|
|
|
419
|
@override
|
459
|
@override
|
|
420
|
- String get todayHrvMeasurementStep3 => '3. Keep breathing steadily and wait 1-3 minutes';
|
460
|
+ String get todayHrvMeasurementStep3 =>
|
|
|
|
461
|
+ '3. Keep breathing steadily and wait 1-3 minutes';
|
|
421
|
|
462
|
|
|
422
|
@override
|
463
|
@override
|
|
423
|
- String get todayHrvMeasurementStep4 => '4. After breathing is complete, lock and unlock your iPhone once';
|
464
|
+ String get todayHrvMeasurementStep4 =>
|
|
|
|
465
|
+ '4. After breathing is complete, lock and unlock your iPhone once';
|
|
424
|
|
466
|
|
|
425
|
@override
|
467
|
@override
|
|
426
|
- String get todayHrvMeasurementStep5 => '5. Wait about one minute. StressWatch will receive and display your data';
|
468
|
+ String get todayHrvMeasurementStep5 =>
|
|
|
|
469
|
+ '5. Wait about one minute. StressWatch will receive and display your data';
|
|
427
|
|
470
|
|
|
428
|
@override
|
471
|
@override
|
|
429
|
- String get todayHrvMeasurementHint => 'Tip: Data comes from Apple Watch. After measurement, there may be delays or data may not sync immediately. If this happens, measure again and wait for the data to be read.';
|
472
|
+ String get todayHrvMeasurementHint =>
|
|
|
|
473
|
+ 'Tip: Data comes from Apple Watch. After measurement, there may be delays or data may not sync immediately. If this happens, measure again and wait for the data to be read.';
|
|
430
|
|
474
|
|
|
431
|
@override
|
475
|
@override
|
|
432
|
- String get todayHrvMeasurementWarning => 'Note: Health permissions must be enabled, and Low Power Mode must be turned off.';
|
476
|
+ String get todayHrvMeasurementWarning =>
|
|
|
|
477
|
+ 'Note: Health permissions must be enabled, and Low Power Mode must be turned off.';
|
|
433
|
|
478
|
|
|
434
|
@override
|
479
|
@override
|
|
435
|
String get todayStressStatusWhatTitle => 'What is overall stress status?';
|
480
|
String get todayStressStatusWhatTitle => 'What is overall stress status?';
|
|
436
|
|
481
|
|
|
437
|
@override
|
482
|
@override
|
|
438
|
- String get todayStressStatusWhatDescription1 => 'DoubleFeel combines your HRV (heart rate variability), resting heart rate, and body-state changes from the past 30 days to assess your overall stress level.';
|
483
|
+ String get todayStressStatusWhatDescription1 =>
|
|
|
|
484
|
+ 'DoubleFeel combines your HRV (heart rate variability), resting heart rate, and body-state changes from the past 30 days to assess your overall stress level.';
|
|
439
|
|
485
|
|
|
440
|
@override
|
486
|
@override
|
|
441
|
- String get todayStressStatusWhatDescription2 => 'Because HRV fluctuates with emotions, exercise, sleep, and fatigue, a single reading has limited value. We recommend focusing on your overall stress status across the day, which is more stable and useful. It helps you understand your body state and helps close contacts notice changes in time.';
|
487
|
+ String get todayStressStatusWhatDescription2 =>
|
|
|
|
488
|
+ 'Because HRV fluctuates with emotions, exercise, sleep, and fatigue, a single reading has limited value. We recommend focusing on your overall stress status across the day, which is more stable and useful. It helps you understand your body state and helps close contacts notice changes in time.';
|
|
442
|
|
489
|
|
|
443
|
@override
|
490
|
@override
|
|
444
|
- String get todayStressStatusWhyHrvTitle => 'Why use HRV (heart rate variability)?';
|
491
|
+ String get todayStressStatusWhyHrvTitle =>
|
|
|
|
492
|
+ 'Why use HRV (heart rate variability)?';
|
|
445
|
|
493
|
|
|
446
|
@override
|
494
|
@override
|
|
447
|
- String get todayStressStatusWhyHrvDescription => 'HRV is an important metric for measuring body stress and recovery capacity.';
|
495
|
+ String get todayStressStatusWhyHrvDescription =>
|
|
|
|
496
|
+ 'HRV is an important metric for measuring body stress and recovery capacity.';
|
|
448
|
|
497
|
|
|
449
|
@override
|
498
|
@override
|
|
450
|
String get todayStressStatusUsually => 'In general:';
|
499
|
String get todayStressStatusUsually => 'In general:';
|
|
451
|
|
500
|
|
|
452
|
@override
|
501
|
@override
|
|
453
|
- String get todayStressStatusHrvHigher => '· Higher HRV usually means better recovery';
|
502
|
+ String get todayStressStatusHrvHigher =>
|
|
|
|
503
|
+ '· Higher HRV usually means better recovery';
|
|
454
|
|
504
|
|
|
455
|
@override
|
505
|
@override
|
|
456
|
- String get todayStressStatusHrvLower => '· Lower HRV may indicate fatigue, stress, or insufficient sleep';
|
506
|
+ String get todayStressStatusHrvLower =>
|
|
|
|
507
|
+ '· Lower HRV may indicate fatigue, stress, or insufficient sleep';
|
|
457
|
|
508
|
|
|
458
|
@override
|
509
|
@override
|
|
459
|
- String get todayStressStatusHrvChangesFast => '· HRV changes quickly, making it useful for short-term body-state changes.';
|
510
|
+ String get todayStressStatusHrvChangesFast =>
|
|
|
|
511
|
+ '· HRV changes quickly, making it useful for short-term body-state changes.';
|
|
460
|
|
512
|
|
|
461
|
@override
|
513
|
@override
|
|
462
|
- String get todayStressStatusAppWatchDifferenceTitle => 'How are stress statuses on the phone app and Apple Watch different?';
|
514
|
+ String get todayStressStatusAppWatchDifferenceTitle =>
|
|
|
|
515
|
+ 'How are stress statuses on the phone app and Apple Watch different?';
|
|
463
|
|
516
|
|
|
464
|
@override
|
517
|
@override
|
|
465
|
- String get todayStressStatusAppWatchDifferenceApp => 'The phone app home page shows the day\'s overall stress status, combining HRV, resting heart rate, and overall trends.';
|
518
|
+ String get todayStressStatusAppWatchDifferenceApp =>
|
|
|
|
519
|
+ 'The phone app home page shows the day\'s overall stress status, combining HRV, resting heart rate, and overall trends.';
|
|
466
|
|
520
|
|
|
467
|
@override
|
521
|
@override
|
|
468
|
- String get todayStressStatusAppWatchDifferenceWatch => 'Apple Watch shows the most recent real-time stress status, which is better for quickly checking your current body changes.';
|
522
|
+ String get todayStressStatusAppWatchDifferenceWatch =>
|
|
|
|
523
|
+ 'Apple Watch shows the most recent real-time stress status, which is better for quickly checking your current body changes.';
|
|
469
|
|
524
|
|
|
470
|
@override
|
525
|
@override
|
|
471
|
- String get todayStressStatusWaitingDataTitle => 'Why does Waiting for data appear?';
|
526
|
+ String get todayStressStatusWaitingDataTitle =>
|
|
|
|
527
|
+ 'Why does Waiting for data appear?';
|
|
472
|
|
528
|
|
|
473
|
@override
|
529
|
@override
|
|
474
|
- String get todayStressStatusWaitingDataDescription1 => 'Waiting for data means the current amount of collected data is not enough to generate a reliable stress assessment.';
|
530
|
+ String get todayStressStatusWaitingDataDescription1 =>
|
|
|
|
531
|
+ 'Waiting for data means the current amount of collected data is not enough to generate a reliable stress assessment.';
|
|
475
|
|
532
|
|
|
476
|
@override
|
533
|
@override
|
|
477
|
- String get todayStressStatusWaitingDataDescription2 => 'Please keep wearing your Apple Watch and wait for the system to collect data automatically.';
|
534
|
+ String get todayStressStatusWaitingDataDescription2 =>
|
|
|
|
535
|
+ 'Please keep wearing your Apple Watch and wait for the system to collect data automatically.';
|
|
478
|
|
536
|
|
|
479
|
@override
|
537
|
@override
|
|
480
|
- String get todayStressStatusWaitingDataReasonsIntro => 'Possible reasons include:';
|
538
|
+ String get todayStressStatusWaitingDataReasonsIntro =>
|
|
|
|
539
|
+ 'Possible reasons include:';
|
|
481
|
|
540
|
|
|
482
|
@override
|
541
|
@override
|
|
483
|
String get todayStressStatusWaitingDataReason1 => '1. Not enough HRV samples';
|
542
|
String get todayStressStatusWaitingDataReason1 => '1. Not enough HRV samples';
|
|
484
|
|
543
|
|
|
485
|
@override
|
544
|
@override
|
|
486
|
- String get todayStressStatusWaitingDataReason2 => '2. Missing resting heart rate data';
|
545
|
+ String get todayStressStatusWaitingDataReason2 =>
|
|
|
|
546
|
+ '2. Missing resting heart rate data';
|
|
487
|
|
547
|
|
|
488
|
@override
|
548
|
@override
|
|
489
|
- String get todayStressStatusWaitingDataReason3 => '3. Apple Watch has not been worn long enough';
|
549
|
+ String get todayStressStatusWaitingDataReason3 =>
|
|
|
|
550
|
+ '3. Apple Watch has not been worn long enough';
|
|
490
|
|
551
|
|
|
491
|
@override
|
552
|
@override
|
|
492
|
- String get todayStressStatusWaitingDataReason4 => '4. Apple Health permissions are not enabled';
|
553
|
+ String get todayStressStatusWaitingDataReason4 =>
|
|
|
|
554
|
+ '4. Apple Health permissions are not enabled';
|
|
493
|
|
555
|
|
|
494
|
@override
|
556
|
@override
|
|
495
|
- String get todayHrvPrincipleHowMeasureTitle => 'How does DoubleFeel measure stress status?';
|
557
|
+ String get todayHrvPrincipleHowMeasureTitle =>
|
|
|
|
558
|
+ 'How does DoubleFeel measure stress status?';
|
|
496
|
|
559
|
|
|
497
|
@override
|
560
|
@override
|
|
498
|
- String get todayHrvPrincipleHowMeasureDescription1 => 'When you wear Apple Watch normally, the system automatically collects your heart rate data and syncs it to Apple Health.';
|
561
|
+ String get todayHrvPrincipleHowMeasureDescription1 =>
|
|
|
|
562
|
+ 'When you wear Apple Watch normally, the system automatically collects your heart rate data and syncs it to Apple Health.';
|
|
499
|
|
563
|
|
|
500
|
@override
|
564
|
@override
|
|
501
|
- String get todayHrvPrincipleHowMeasureDescription2 => 'DoubleFeel calculates HRV (heart rate variability) indicators based on this data to assess your body stress and recovery state.';
|
565
|
+ String get todayHrvPrincipleHowMeasureDescription2 =>
|
|
|
|
566
|
+ 'DoubleFeel calculates HRV (heart rate variability) indicators based on this data to assess your body stress and recovery state.';
|
|
502
|
|
567
|
|
|
503
|
@override
|
568
|
@override
|
|
504
|
- String get todayHrvPrincipleHowMeasureDescription3 => 'HRV is sensitive to stress, fatigue, sleep, emotions, and recovery, so it helps us notice body-state changes earlier.';
|
569
|
+ String get todayHrvPrincipleHowMeasureDescription3 =>
|
|
|
|
570
|
+ 'HRV is sensitive to stress, fatigue, sleep, emotions, and recovery, so it helps us notice body-state changes earlier.';
|
|
505
|
|
571
|
|
|
506
|
@override
|
572
|
@override
|
|
507
|
- String get todayHrvPrincipleHowMeasureDescription4 => 'To make results more accurate, DoubleFeel compares your current HRV state with your own 30-day average instead of comparing it directly with other people.';
|
573
|
+ String get todayHrvPrincipleHowMeasureDescription4 =>
|
|
|
|
574
|
+ 'To make results more accurate, DoubleFeel compares your current HRV state with your own 30-day average instead of comparing it directly with other people.';
|
|
508
|
|
575
|
|
|
509
|
@override
|
576
|
@override
|
|
510
|
String get todayRealtimeStressWhatTitle => 'What is real-time stress?';
|
577
|
String get todayRealtimeStressWhatTitle => 'What is real-time stress?';
|
|
511
|
|
578
|
|
|
512
|
@override
|
579
|
@override
|
|
513
|
- String get todayRealtimeStressWhatDescription1 => 'Real-time stress is a body stress indicator dynamically generated by DoubleFeel based on your current HRV, heart rate state, and changes in your personal history.';
|
580
|
+ String get todayRealtimeStressWhatDescription1 =>
|
|
|
|
581
|
+ 'Real-time stress is a body stress indicator dynamically generated by DoubleFeel based on your current HRV, heart rate state, and changes in your personal history.';
|
|
514
|
|
582
|
|
|
515
|
@override
|
583
|
@override
|
|
516
|
- String get todayRealtimeStressWhatDescription2 => 'A higher stress value means your body state is deviating more from your usual baseline and may reflect fatigue, insufficient recovery, or high stress.';
|
584
|
+ String get todayRealtimeStressWhatDescription2 =>
|
|
|
|
585
|
+ 'A higher stress value means your body state is deviating more from your usual baseline and may reflect fatigue, insufficient recovery, or high stress.';
|
|
517
|
|
586
|
|
|
518
|
@override
|
587
|
@override
|
|
519
|
- String get todayRealtimeStressWhatDescription3 => 'It helps you notice body changes faster and adjust rest, exercise, and daily rhythm in time.';
|
588
|
+ String get todayRealtimeStressWhatDescription3 =>
|
|
|
|
589
|
+ 'It helps you notice body changes faster and adjust rest, exercise, and daily rhythm in time.';
|
|
520
|
|
590
|
|
|
521
|
@override
|
591
|
@override
|
|
522
|
- String get todayRealtimeStressDivisionTitle => 'How is real-time stress divided?';
|
592
|
+ String get todayRealtimeStressDivisionTitle =>
|
|
|
|
593
|
+ 'How is real-time stress divided?';
|
|
523
|
|
594
|
|
|
524
|
@override
|
595
|
@override
|
|
525
|
- String get todayRealtimeStressDivisionIntro => 'Real-time stress is shown as a percentage:';
|
596
|
+ String get todayRealtimeStressDivisionIntro =>
|
|
|
|
597
|
+ 'Real-time stress is shown as a percentage:';
|
|
526
|
|
598
|
|
|
527
|
@override
|
599
|
@override
|
|
528
|
String get todayRealtimeStressExcellentRange => 'Excellent: 1%-20%';
|
600
|
String get todayRealtimeStressExcellentRange => 'Excellent: 1%-20%';
|
|
@@ -537,79 +609,103 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -537,79 +609,103 @@ class AppLocalizationsEn extends AppLocalizations { |
|
537
|
String get todayRealtimeStressOverloadRange => 'Stress overload: 81%-100%';
|
609
|
String get todayRealtimeStressOverloadRange => 'Stress overload: 81%-100%';
|
|
538
|
|
610
|
|
|
539
|
@override
|
611
|
@override
|
|
540
|
- String get todayRealtimeStressExcellentDescription => 'Your recovery state is good and you are generally relaxed.';
|
612
|
+ String get todayRealtimeStressExcellentDescription =>
|
|
|
|
613
|
+ 'Your recovery state is good and you are generally relaxed.';
|
|
541
|
|
614
|
|
|
542
|
@override
|
615
|
@override
|
|
543
|
- String get todayRealtimeStressNormalDescription => 'Your body is within the normal fluctuation range.';
|
616
|
+ String get todayRealtimeStressNormalDescription =>
|
|
|
|
617
|
+ 'Your body is within the normal fluctuation range.';
|
|
544
|
|
618
|
|
|
545
|
@override
|
619
|
@override
|
|
546
|
- String get todayRealtimeStressCautionDescription => 'Your body may be accumulating stress and needs proper rest and recovery.';
|
620
|
+ String get todayRealtimeStressCautionDescription =>
|
|
|
|
621
|
+ 'Your body may be accumulating stress and needs proper rest and recovery.';
|
|
547
|
|
622
|
|
|
548
|
@override
|
623
|
@override
|
|
549
|
- String get todayRealtimeStressOverloadDescription => 'Your body stress is clearly high. Reduce load and pay attention to sleep and recovery.';
|
624
|
+ String get todayRealtimeStressOverloadDescription =>
|
|
|
|
625
|
+ 'Your body stress is clearly high. Reduce load and pay attention to sleep and recovery.';
|
|
550
|
|
626
|
|
|
551
|
@override
|
627
|
@override
|
|
552
|
- String get todayRealtimeStressDivisionBaseline => 'These ranges are adjusted dynamically based on your personal baseline and should not be directly compared between users.';
|
628
|
+ String get todayRealtimeStressDivisionBaseline =>
|
|
|
|
629
|
+ 'These ranges are adjusted dynamically based on your personal baseline and should not be directly compared between users.';
|
|
553
|
|
630
|
|
|
554
|
@override
|
631
|
@override
|
|
555
|
- String get todayRealtimeStressDivisionAwake => 'Real-time stress mainly reflects body stress changes while awake.';
|
632
|
+ String get todayRealtimeStressDivisionAwake =>
|
|
|
|
633
|
+ 'Real-time stress mainly reflects body stress changes while awake.';
|
|
556
|
|
634
|
|
|
557
|
@override
|
635
|
@override
|
|
558
|
- String get todayRealtimeStressLowBetterTitle => 'Is lower real-time stress always better?';
|
636
|
+ String get todayRealtimeStressLowBetterTitle =>
|
|
|
|
637
|
+ 'Is lower real-time stress always better?';
|
|
559
|
|
638
|
|
|
560
|
@override
|
639
|
@override
|
|
561
|
String get todayRealtimeStressLowBetterNo => 'Not necessarily.';
|
640
|
String get todayRealtimeStressLowBetterNo => 'Not necessarily.';
|
|
562
|
|
641
|
|
|
563
|
@override
|
642
|
@override
|
|
564
|
- String get todayRealtimeStressLowBetterType => 'Body stress can be normal or abnormal.';
|
643
|
+ String get todayRealtimeStressLowBetterType =>
|
|
|
|
644
|
+ 'Body stress can be normal or abnormal.';
|
|
565
|
|
645
|
|
|
566
|
@override
|
646
|
@override
|
|
567
|
- String get todayRealtimeStressLowBetterExample => 'For example, real-time stress rising briefly during or after exercise is a normal recovery response. It can also rise temporarily during focused work or emotional excitement, which are normal body adjustments.';
|
647
|
+ String get todayRealtimeStressLowBetterExample =>
|
|
|
|
648
|
+ 'For example, real-time stress rising briefly during or after exercise is a normal recovery response. It can also rise temporarily during focused work or emotional excitement, which are normal body adjustments.';
|
|
568
|
|
649
|
|
|
569
|
@override
|
650
|
@override
|
|
570
|
- String get todayRealtimeStressLowBetterHighStress => 'But if stress remains high while resting, sitting for a long time, or after poor sleep, it may indicate physical fatigue, mental stress, insufficient sleep recovery, incomplete exercise recovery, too much caffeine, alcohol, stimulants, or possible discomfort.';
|
651
|
+ String get todayRealtimeStressLowBetterHighStress =>
|
|
|
|
652
|
+ 'But if stress remains high while resting, sitting for a long time, or after poor sleep, it may indicate physical fatigue, mental stress, insufficient sleep recovery, incomplete exercise recovery, too much caffeine, alcohol, stimulants, or possible discomfort.';
|
|
571
|
|
653
|
|
|
572
|
@override
|
654
|
@override
|
|
573
|
- String get todayRealtimeStressLowBetterTrend => 'DoubleFeel focuses more on your long-term trend than on a single fluctuation.';
|
655
|
+ String get todayRealtimeStressLowBetterTrend =>
|
|
|
|
656
|
+ 'DoubleFeel focuses more on your long-term trend than on a single fluctuation.';
|
|
574
|
|
657
|
|
|
575
|
@override
|
658
|
@override
|
|
576
|
- String get todayRealtimeStressScenarioTitle => 'When should HRV and real-time stress be used?';
|
659
|
+ String get todayRealtimeStressScenarioTitle =>
|
|
|
|
660
|
+ 'When should HRV and real-time stress be used?';
|
|
577
|
|
661
|
|
|
578
|
@override
|
662
|
@override
|
|
579
|
- String get todayRealtimeStressScenarioHrvDefault => 'With Apple Watch default settings, HRV updates every 2-5 hours.';
|
663
|
+ String get todayRealtimeStressScenarioHrvDefault =>
|
|
|
|
664
|
+ 'With Apple Watch default settings, HRV updates every 2-5 hours.';
|
|
580
|
|
665
|
|
|
581
|
@override
|
666
|
@override
|
|
582
|
- String get todayRealtimeStressScenarioRegionLimit => 'In some regions, Apple Watch breathing features may be limited, which can affect HRV update frequency. Turning on breathing features may also consume more battery.';
|
667
|
+ String get todayRealtimeStressScenarioRegionLimit =>
|
|
|
|
668
|
+ 'In some regions, Apple Watch breathing features may be limited, which can affect HRV update frequency. Turning on breathing features may also consume more battery.';
|
|
583
|
|
669
|
|
|
584
|
@override
|
670
|
@override
|
|
585
|
- String get todayRealtimeStressScenarioIntro => 'To address the long interval between HRV updates, DoubleFeel designed real-time stress:';
|
671
|
+ String get todayRealtimeStressScenarioIntro =>
|
|
|
|
672
|
+ 'To address the long interval between HRV updates, DoubleFeel designed real-time stress:';
|
|
586
|
|
673
|
|
|
587
|
@override
|
674
|
@override
|
|
588
|
- String get todayRealtimeStressScenarioUpdateEvery6Min => '· Real-time stress updates every 6 minutes';
|
675
|
+ String get todayRealtimeStressScenarioUpdateEvery6Min =>
|
|
|
|
676
|
+ '· Real-time stress updates every 6 minutes';
|
|
589
|
|
677
|
|
|
590
|
@override
|
678
|
@override
|
|
591
|
- String get todayRealtimeStressScenarioTimely => '· It can reflect body-state changes more promptly';
|
679
|
+ String get todayRealtimeStressScenarioTimely =>
|
|
|
|
680
|
+ '· It can reflect body-state changes more promptly';
|
|
592
|
|
681
|
|
|
593
|
@override
|
682
|
@override
|
|
594
|
- String get todayRealtimeStressScenarioConsistentTrend => '· In most cases, the real-time stress trend is consistent with the HRV trend';
|
683
|
+ String get todayRealtimeStressScenarioConsistentTrend =>
|
|
|
|
684
|
+ '· In most cases, the real-time stress trend is consistent with the HRV trend';
|
|
595
|
|
685
|
|
|
596
|
@override
|
686
|
@override
|
|
597
|
- String get todayRealtimeStressScenarioSummary => 'This lets users see long-term HRV trends while also using real-time stress as a short-term body-state reference.';
|
687
|
+ String get todayRealtimeStressScenarioSummary =>
|
|
|
|
688
|
+ 'This lets users see long-term HRV trends while also using real-time stress as a short-term body-state reference.';
|
|
598
|
|
689
|
|
|
599
|
@override
|
690
|
@override
|
|
600
|
- String get todayFaqNoDataTitle => 'What if the app or watch face has no data?';
|
691
|
+ String get todayFaqNoDataTitle =>
|
|
|
|
692
|
+ 'What if the app or watch face has no data?';
|
|
601
|
|
693
|
|
|
602
|
@override
|
694
|
@override
|
|
603
|
- String get todayFaqNoDataDescription1 => '1. Confirm that Apple Watch is on watchOS 10.0 or above and iPhone is on iOS 14 or above. You can check system versions in About.';
|
695
|
+ String get todayFaqNoDataDescription1 =>
|
|
|
|
696
|
+ '1. Confirm that Apple Watch is on watchOS 10.0 or above and iPhone is on iOS 14 or above. You can check system versions in About.';
|
|
604
|
|
697
|
|
|
605
|
@override
|
698
|
@override
|
|
606
|
- String get todayFaqNoDataDescription2 => '2. Confirm all permissions are enabled: iPhone Health > Sharing > Apps > DoubleFeel > Turn On All Permissions.';
|
699
|
+ String get todayFaqNoDataDescription2 =>
|
|
|
|
700
|
+ '2. Confirm all permissions are enabled: iPhone Health > Sharing > Apps > DoubleFeel > Turn On All Permissions.';
|
|
607
|
|
701
|
|
|
608
|
@override
|
702
|
@override
|
|
609
|
- String get todayFaqNoDataDescription3 => '3. Confirm the device is not in Low Power Mode, low battery, or worn too loosely, as these can affect data collection.';
|
703
|
+ String get todayFaqNoDataDescription3 =>
|
|
|
|
704
|
+ '3. Confirm the device is not in Low Power Mode, low battery, or worn too loosely, as these can affect data collection.';
|
|
610
|
|
705
|
|
|
611
|
@override
|
706
|
@override
|
|
612
|
- String get todayFaqContactPrefix => 'If everything above is correct, you can ';
|
707
|
+ String get todayFaqContactPrefix =>
|
|
|
|
708
|
+ 'If everything above is correct, you can ';
|
|
613
|
|
709
|
|
|
614
|
@override
|
710
|
@override
|
|
615
|
String get todayFaqContactAction => 'contact us';
|
711
|
String get todayFaqContactAction => 'contact us';
|
|
@@ -618,70 +714,90 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -618,70 +714,90 @@ class AppLocalizationsEn extends AppLocalizations { |
|
618
|
String get todayFaqContactSuffix => '.';
|
714
|
String get todayFaqContactSuffix => '.';
|
|
619
|
|
715
|
|
|
620
|
@override
|
716
|
@override
|
|
621
|
- String get todayFaqWatchNoNotificationTitle => 'Watch cannot receive status notifications?';
|
717
|
+ String get todayFaqWatchNoNotificationTitle =>
|
|
|
|
718
|
+ 'Watch cannot receive status notifications?';
|
|
622
|
|
719
|
|
|
623
|
@override
|
720
|
@override
|
|
624
|
- String get todayFaqWatchNoNotificationDescription1 => 'Apple Watch and iPhone notifications have priority rules: when your iPhone is unlocked and the screen is on, notifications only appear on the phone and will not appear on the watch.';
|
721
|
+ String get todayFaqWatchNoNotificationDescription1 =>
|
|
|
|
722
|
+ 'Apple Watch and iPhone notifications have priority rules: when your iPhone is unlocked and the screen is on, notifications only appear on the phone and will not appear on the watch.';
|
|
625
|
|
723
|
|
|
626
|
@override
|
724
|
@override
|
|
627
|
- String get todayFaqWatchNoNotificationDescription2 => 'If stress data displays and updates normally but your watch does not receive notifications, try the following:';
|
725
|
+ String get todayFaqWatchNoNotificationDescription2 =>
|
|
|
|
726
|
+ 'If stress data displays and updates normally but your watch does not receive notifications, try the following:';
|
|
628
|
|
727
|
|
|
629
|
@override
|
728
|
@override
|
|
630
|
- String get todayFaqWatchNoNotificationCheckPhoneNotification => '1. Check whether iPhone notifications are enabled (Settings > DoubleFeel > Notifications).';
|
729
|
+ String get todayFaqWatchNoNotificationCheckPhoneNotification =>
|
|
|
|
730
|
+ '1. Check whether iPhone notifications are enabled (Settings > DoubleFeel > Notifications).';
|
|
631
|
|
731
|
|
|
632
|
@override
|
732
|
@override
|
|
633
|
- String get todayFaqWatchNoNotificationCheckPhoneBackgroundRefresh => '2. Check whether iPhone Background App Refresh is enabled (Settings > DoubleFeel > Background App Refresh).';
|
733
|
+ String get todayFaqWatchNoNotificationCheckPhoneBackgroundRefresh =>
|
|
|
|
734
|
+ '2. Check whether iPhone Background App Refresh is enabled (Settings > DoubleFeel > Background App Refresh).';
|
|
634
|
|
735
|
|
|
635
|
@override
|
736
|
@override
|
|
636
|
- String get todayFaqWatchNoNotificationCheckWatchBackgroundRefresh => '3. Check whether Apple Watch Background App Refresh is enabled (Settings > General > Background App Refresh, and make sure DoubleFeel is enabled).';
|
737
|
+ String get todayFaqWatchNoNotificationCheckWatchBackgroundRefresh =>
|
|
|
|
738
|
+ '3. Check whether Apple Watch Background App Refresh is enabled (Settings > General > Background App Refresh, and make sure DoubleFeel is enabled).';
|
|
637
|
|
739
|
|
|
638
|
@override
|
740
|
@override
|
|
639
|
- String get todayFaqWatchNoNotificationCheckModes => '4. Make sure Low Power, Focus, Do Not Disturb, Theater, Sleep, and similar modes are off.';
|
741
|
+ String get todayFaqWatchNoNotificationCheckModes =>
|
|
|
|
742
|
+ '4. Make sure Low Power, Focus, Do Not Disturb, Theater, Sleep, and similar modes are off.';
|
|
640
|
|
743
|
|
|
641
|
@override
|
744
|
@override
|
|
642
|
- String get todayFaqWatchNoNotificationReinstall => '5. Reinstall DoubleFeel and restart Apple Watch and iPhone.';
|
745
|
+ String get todayFaqWatchNoNotificationReinstall =>
|
|
|
|
746
|
+ '5. Reinstall DoubleFeel and restart Apple Watch and iPhone.';
|
|
643
|
|
747
|
|
|
644
|
@override
|
748
|
@override
|
|
645
|
- String get todayFaqWatchFaceDelayTitle => 'Watch face data not updating or delayed?';
|
749
|
+ String get todayFaqWatchFaceDelayTitle =>
|
|
|
|
750
|
+ 'Watch face data not updating or delayed?';
|
|
646
|
|
751
|
|
|
647
|
@override
|
752
|
@override
|
|
648
|
- String get todayFaqWatchFaceDelayDescription1 => 'Due to Apple system limits, all watch faces, third-party or official, may have delays from a few minutes to half an hour. Developers cannot control the refresh frequency.';
|
753
|
+ String get todayFaqWatchFaceDelayDescription1 =>
|
|
|
|
754
|
+ 'Due to Apple system limits, all watch faces, third-party or official, may have delays from a few minutes to half an hour. Developers cannot control the refresh frequency.';
|
|
649
|
|
755
|
|
|
650
|
@override
|
756
|
@override
|
|
651
|
- String get todayFaqWatchFaceDelayIfOverOneHour => 'If the phone data refreshes but the watch face still has not updated after more than 1 hour:';
|
757
|
+ String get todayFaqWatchFaceDelayIfOverOneHour =>
|
|
|
|
758
|
+ 'If the phone data refreshes but the watch face still has not updated after more than 1 hour:';
|
|
652
|
|
759
|
|
|
653
|
@override
|
760
|
@override
|
|
654
|
- String get todayFaqWatchFaceDelayOpenWatchApp => 'Manually open DoubleFeel on Apple Watch and wait about 1 minute.';
|
761
|
+ String get todayFaqWatchFaceDelayOpenWatchApp =>
|
|
|
|
762
|
+ 'Manually open DoubleFeel on Apple Watch and wait about 1 minute.';
|
|
655
|
|
763
|
|
|
656
|
@override
|
764
|
@override
|
|
657
|
String get todayFaqWatchFaceDelayIfStill => 'If it still does not update:';
|
765
|
String get todayFaqWatchFaceDelayIfStill => 'If it still does not update:';
|
|
658
|
|
766
|
|
|
659
|
@override
|
767
|
@override
|
|
660
|
- String get todayFaqWatchFaceDelayRestartApp => 'Close the DoubleFeel background process and restart it.';
|
768
|
+ String get todayFaqWatchFaceDelayRestartApp =>
|
|
|
|
769
|
+ 'Close the DoubleFeel background process and restart it.';
|
|
661
|
|
770
|
|
|
662
|
@override
|
771
|
@override
|
|
663
|
- String get todayFaqWatchFaceDelayCheckIntro => 'If it still does not work, check:';
|
772
|
+ String get todayFaqWatchFaceDelayCheckIntro =>
|
|
|
|
773
|
+ 'If it still does not work, check:';
|
|
664
|
|
774
|
|
|
665
|
@override
|
775
|
@override
|
|
666
|
- String get todayFaqWatchFaceDelayCheckData => '· Whether both phone and watch apps can show HRV data normally.';
|
776
|
+ String get todayFaqWatchFaceDelayCheckData =>
|
|
|
|
777
|
+ '· Whether both phone and watch apps can show HRV data normally.';
|
|
667
|
|
778
|
|
|
668
|
@override
|
779
|
@override
|
|
669
|
- String get todayFaqWatchFaceDelayCheckPhoneHealth => '· Make sure all permissions are enabled on iPhone: iOS Settings > Privacy & Security > Health > DoubleFeel.';
|
780
|
+ String get todayFaqWatchFaceDelayCheckPhoneHealth =>
|
|
|
|
781
|
+ '· Make sure all permissions are enabled on iPhone: iOS Settings > Privacy & Security > Health > DoubleFeel.';
|
|
670
|
|
782
|
|
|
671
|
@override
|
783
|
@override
|
|
672
|
- String get todayFaqWatchFaceDelayCheckWatchHealth => '· Make sure all permissions are enabled on Apple Watch: Settings > Health > Data Sources & Access > DoubleFeel.';
|
784
|
+ String get todayFaqWatchFaceDelayCheckWatchHealth =>
|
|
|
|
785
|
+ '· Make sure all permissions are enabled on Apple Watch: Settings > Health > Data Sources & Access > DoubleFeel.';
|
|
673
|
|
786
|
|
|
674
|
@override
|
787
|
@override
|
|
675
|
- String get todayFaqWatchFaceDelayCheckBackgroundRefresh => '· Confirm DoubleFeel is enabled in Apple Watch > Settings > General > Background App Refresh.';
|
788
|
+ String get todayFaqWatchFaceDelayCheckBackgroundRefresh =>
|
|
|
|
789
|
+ '· Confirm DoubleFeel is enabled in Apple Watch > Settings > General > Background App Refresh.';
|
|
676
|
|
790
|
|
|
677
|
@override
|
791
|
@override
|
|
678
|
- String get todayFaqWatchFaceDelayRestartWatch => '· If it still does not refresh automatically, restart Apple Watch. Long runtimes or high background usage may cause watch face updates to pause.';
|
792
|
+ String get todayFaqWatchFaceDelayRestartWatch =>
|
|
|
|
793
|
+ '· If it still does not refresh automatically, restart Apple Watch. Long runtimes or high background usage may cause watch face updates to pause.';
|
|
679
|
|
794
|
|
|
680
|
@override
|
795
|
@override
|
|
681
|
String get todayFaqWatchFaceBlackScreenTitle => 'Watch face turns black?';
|
796
|
String get todayFaqWatchFaceBlackScreenTitle => 'Watch face turns black?';
|
|
682
|
|
797
|
|
|
683
|
@override
|
798
|
@override
|
|
684
|
- String get todayFaqWatchFaceBlackScreenDescription => 'If the custom interactive watch face turns black after being added and only shows time and date, long-press the watch face, tap Edit, swipe left to Complications, choose DoubleFeel, and add each component again as needed.';
|
799
|
+ String get todayFaqWatchFaceBlackScreenDescription =>
|
|
|
|
800
|
+ 'If the custom interactive watch face turns black after being added and only shows time and date, long-press the watch face, tap Edit, swipe left to Complications, choose DoubleFeel, and add each component again as needed.';
|
|
685
|
|
801
|
|
|
686
|
@override
|
802
|
@override
|
|
687
|
String get today => 'Today';
|
803
|
String get today => 'Today';
|
|
@@ -699,16 +815,19 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -699,16 +815,19 @@ class AppLocalizationsEn extends AppLocalizations { |
|
699
|
String get allPlans => 'All Plans';
|
815
|
String get allPlans => 'All Plans';
|
|
700
|
|
816
|
|
|
701
|
@override
|
817
|
@override
|
|
702
|
- String get clickToAddTheHrvThemedWatchFace => 'Click to add the HRV-themed watch face';
|
818
|
+ String get clickToAddTheHrvThemedWatchFace =>
|
|
|
|
819
|
+ 'Click to add the HRV-themed watch face';
|
|
703
|
|
820
|
|
|
704
|
@override
|
821
|
@override
|
|
705
|
- String get stayOnTopOfYourHealthFluctuations => 'Stay on top of your health fluctuations';
|
822
|
+ String get stayOnTopOfYourHealthFluctuations =>
|
|
|
|
823
|
+ 'Stay on top of your health fluctuations';
|
|
706
|
|
824
|
|
|
707
|
@override
|
825
|
@override
|
|
708
|
String get addACloseContact => 'Add a close contact';
|
826
|
String get addACloseContact => 'Add a close contact';
|
|
709
|
|
827
|
|
|
710
|
@override
|
828
|
@override
|
|
711
|
- String get oneMorePersonLookingOutForYourHealth => 'One more person looking out for your health';
|
829
|
+ String get oneMorePersonLookingOutForYourHealth =>
|
|
|
|
830
|
+ 'One more person looking out for your health';
|
|
712
|
|
831
|
|
|
713
|
@override
|
832
|
@override
|
|
714
|
String get addAFriend => 'Add a friend';
|
833
|
String get addAFriend => 'Add a friend';
|
|
@@ -765,7 +884,8 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -765,7 +884,8 @@ class AppLocalizationsEn extends AppLocalizations { |
|
765
|
String get questionsAndFeedback => 'Questions and Feedback';
|
884
|
String get questionsAndFeedback => 'Questions and Feedback';
|
|
766
|
|
885
|
|
|
767
|
@override
|
886
|
@override
|
|
768
|
- String get ifYouWouldLikeUsToReplyPleaseProvideYourEmailAddress => 'If you would like us to reply, please provide your email address';
|
887
|
+ String get ifYouWouldLikeUsToReplyPleaseProvideYourEmailAddress =>
|
|
|
|
888
|
+ 'If you would like us to reply, please provide your email address';
|
|
769
|
|
889
|
|
|
770
|
@override
|
890
|
@override
|
|
771
|
String get uploadProof => 'Upload Proof';
|
891
|
String get uploadProof => 'Upload Proof';
|
|
@@ -774,7 +894,8 @@ class AppLocalizationsEn extends AppLocalizations { |
|
@@ -774,7 +894,8 @@ class AppLocalizationsEn extends AppLocalizations { |
|
774
|
String get frequentlyAskedQuestions => 'Frequently Asked Questions';
|
894
|
String get frequentlyAskedQuestions => 'Frequently Asked Questions';
|
|
775
|
|
895
|
|
|
776
|
@override
|
896
|
@override
|
|
777
|
- String get areYouSureYouWantToDeleteYourAccount => 'Are you sure you want to delete your account?';
|
897
|
+ String get areYouSureYouWantToDeleteYourAccount =>
|
|
|
|
898
|
+ 'Are you sure you want to delete your account?';
|
|
778
|
|
899
|
|
|
779
|
@override
|
900
|
@override
|
|
780
|
String get accountSettings => 'Account Settings';
|
901
|
String get accountSettings => 'Account Settings';
|