fix(mobile): show the memories date in every app language (#32262)

fix(mobile): show the memories date in every app language (#32259)

(cherry picked from commit 116a9436ad1f8164d9dee904551e5067d724be99)

Co-authored-by: Santo Shakil <santoshakil@users.noreply.github.com>
This commit is contained in:
immich-push-o-matic[bot]
2026-10-09 09:04:03 +00:00
committed by GitHub
co-authored by Santo Shakil
parent db6e11ecc8
commit 762748f9ea
2 changed files with 12 additions and 1 deletions
@@ -1,6 +1,7 @@
import 'package:flutter/material.dart';
import 'package:immich_mobile/domain/models/asset/base_asset.model.dart';
import 'package:immich_mobile/domain/models/memory.model.dart';
import 'package:immich_mobile/extensions/datetime_extensions.dart';
import 'package:immich_mobile/extensions/object_extensions.dart';
import 'package:immich_mobile/generated/translations.g.dart';
import 'package:intl/intl.dart';
@@ -10,7 +11,7 @@ String getMemoryTitle(Translations t, Memory memory, {RemoteAsset? asset, bool p
switch (memory.type) {
MemoryTypeEnum.onThisDay =>
preferDate
? DateFormat.yMMMMd().format(memory.memoryAt)
? DateFormat.yMMMMd(resolvedDateTimeLocale()).format(memory.memoryAt)
: t.years_ago(years: DateTime.now().year - memory.data.year),
MemoryTypeEnum.birthday => _getBirthdayTitle(t, memory.data, asset),
};
@@ -2,6 +2,7 @@ import 'package:flutter_test/flutter_test.dart';
import 'package:immich_mobile/domain/models/memory.model.dart';
import 'package:immich_mobile/presentation/pages/memory_list.page.dart';
import 'package:immich_mobile/providers/infrastructure/memory.provider.dart';
import 'package:intl/intl.dart';
import '../factories/remote_asset_factory.dart';
import 'presentation_context.dart';
@@ -44,6 +45,15 @@ void main() {
expect(find.textContaining('ago'), findsNothing);
});
testWidgets('shows the date when intl has no date formats for the app language', (tester) async {
Intl.defaultLocale = 'kab';
addTearDown(() => Intl.defaultLocale = null);
await pumpPage(tester, [newMemory(type: MemoryTypeEnum.onThisDay, memoryAt: DateTime(2025, 10, 7))]);
await tester.pump();
expect(find.text('October 7, 2025'), findsOneWidget);
});
testWidgets('shows the person name for a birthday memory', (tester) async {
await pumpPage(tester, [
newMemory(type: MemoryTypeEnum.birthday, memoryAt: DateTime(2025, 10, 7), personName: 'Alice'),