사용자 화면 문구·표본 데이터 · 퀘스트 참여 흐름 · HOME 진입 구획 · 미니맵 · 공통 확인 창 배치 수정

This commit is contained in:
Sn-Kinos
2026-10-05 00:44:39 +09:00
parent c8d29d032b
commit 8a0297eb92
66 changed files with 1812 additions and 959 deletions
+10 -6
View File
@@ -119,6 +119,7 @@ enum QuestType {
///
/// [musicShake] 와 [streaming] 은 Q-QC-04 회신 대기라 참여를 열지 않는다
/// (해석 확인 요청서 8.1 보류 범위). [unknown] 은 판정 함수를 모른다.
/// 내부 사유(질의 번호 등)는 화면에 내보내지 않는다 — 사용자에게는 한 문구다.
bool get verifiable => switch (this) {
QuestType.attend ||
QuestType.steps ||
@@ -131,12 +132,8 @@ enum QuestType {
};
/// 참여를 열지 않는 사유. 열려 있으면 null 이다.
String? get blockedReason => switch (this) {
QuestType.musicShake || QuestType.streaming =>
'발주사 확인 중입니다 — 스밍·Music Shake 유형은 회신 대기 항목입니다(Q-QC-04).',
QuestType.unknown => appL10n.questTypeUnverifiable,
_ => null,
};
String? get blockedReason =>
verifiable ? null : appL10n.questTypeUnverifiable;
}
/// 서버가 판정하고 지급한 결과 — `fn-quest-*` 응답.
@@ -507,6 +504,10 @@ abstract interface class QuestRepository {
Future<String> create(QuestDraft draft);
/// 보유 일반 POP(`wallet/main.activityBalance`) — 생성 · 보상 뒤 목록 헤더를 다시 맞춘다.
/// 모르면 null(헤더는 받은 값을 유지한다).
Future<int?> popBalance();
/// 진행 중 실측 진행도. 걸음 퀘스트만 값을 낸다.
///
/// 명세 `518:88441` 의 *「시작하기」 버튼 진행중으로 변경 후 실시간 목표 실행률
@@ -730,6 +731,9 @@ class SampleQuestRepository implements QuestRepository {
@override
Future<String> create(QuestDraft draft) async => 'q-new';
@override
Future<int?> popBalance() async => null;
/// **표본은 센서를 읽지 않는다.** 여기서 걸음 수를 지어내면 화면이 카드에 적힌
/// 진행도 대신 만들어 낸 값을 그리게 되고, 목 모드 확인물이 실측처럼 보인다.
@override