끝난 이클립스 합류 문구 · HOME 헤더 POP · 다국어 HOME 레이아웃 · 캠페인 표시 수정

This commit is contained in:
Sn-Kinos
2026-10-08 19:00:24 +09:00
parent a74edaef6b
commit 40b2c0e6f6
40 changed files with 1649 additions and 845 deletions
+8 -2
View File
@@ -509,6 +509,7 @@ class _Map extends StatelessWidget {
child: _LiveFlash(
repository: eclipseRepository,
fandomId: eclipse?.fandomId ?? data.mine?.id,
eclipse: eclipse,
fallback: data.event,
),
),
@@ -1050,12 +1051,16 @@ class _LiveFlash extends StatelessWidget {
const _LiveFlash({
required this.repository,
required this.fandomId,
required this.eclipse,
required this.fallback,
});
final EclipseRepository repository;
final String? fandomId;
/// 진행 중인 회차. 끝난 회차의 방어 합류는 흘리지 않는다([liveEventsFor]).
final EclipseState? eclipse;
/// 라이브 이벤트가 없을 때 그릴 기존 `galaxyEvents` 한 건.
final GalaxyEvent? fallback;
@@ -1073,8 +1078,9 @@ class _LiveFlash extends StatelessWidget {
return LiveStreamBuilder<List<LiveEvent>>(
key: ValueKey('flash-$fandomId'),
create: () => repository.liveEvents(fandomId: fandomId, limit: 5),
builder: (context, events) {
if (events == null || events.isEmpty) {
builder: (context, all) {
final events = liveEventsFor(all ?? const [], eclipse, DateTime.now());
if (events.isEmpty) {
return fallback == null
? const SizedBox.shrink()
: _EventTicker(