사용자 화면 문구·표본 데이터 · 퀘스트 참여 흐름 · 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
@@ -1,10 +1,11 @@
import 'package:flutter/material.dart';
import '../../core/ui/app_dialog.dart';
import '../../core/data/backend.dart' show BackendException;
import '../../core/i18n/app_locale.dart';
import '../../core/theme/tokens.dart';
import '../../core/ui/app_icons.dart';
import '../../core/ui/mock_tag.dart';
import '../home/home_screen.dart' show formatPop;
import 'campaign_data.dart';
import 'widgets/campaign_period_sheet.dart';
@@ -123,8 +124,6 @@ class _CampaignCreateScreenState extends State<CampaignCreateScreen> {
),
title: Text(context.l10n.campaignNew),
actions: [
// G-08 — 지원 종류 가격은 인스타 광고 300,000 외 자리표시다.
const MockTag(note: '상품 목록은 Catalog 연결 전 표본입니다'),
TextButton(
onPressed: _ready && !_saving ? _confirm : null,
// 시안 — 오른쪽 끝에서 16(x 335).
@@ -457,31 +456,19 @@ class _CampaignCreateScreenState extends State<CampaignCreateScreen> {
);
Future<void> _confirm() async {
final go = await showDialog<bool>(
context: context,
builder: (context) => AlertDialog(
title: Text(context.l10n.campaignSubmitTitle),
content: Text(
context.l10n.campaignSubmitBody(
_title.text.trim(),
formatPop(_goalPop),
'$_days',
formatPop(campaignRegistrationFeePop),
),
),
actions: [
TextButton(
onPressed: () => Navigator.of(context).pop(false),
child: Text(context.l10n.commonKeepEditing),
),
FilledButton(
onPressed: () => Navigator.of(context).pop(true),
child: Text(context.l10n.campaignSubmit),
),
],
final go = await showConfirmDialog(
context,
context.l10n.campaignSubmitTitle,
body: context.l10n.campaignSubmitBody(
_title.text.trim(),
formatPop(_goalPop),
'$_days',
formatPop(campaignRegistrationFeePop),
),
cancelLabel: context.l10n.commonKeepEditing,
confirmLabel: context.l10n.campaignSubmit,
);
if (go != true || !mounted) return;
if (!go || !mounted) return;
setState(() => _saving = true);
final String id;
@@ -511,18 +498,10 @@ class _CampaignCreateScreenState extends State<CampaignCreateScreen> {
}
if (!mounted) return;
// 올린 캠페인은 심사 전이라 목록에 보이지 않는다 — 어디 갔는지 알려 준다.
await showDialog<void>(
context: context,
builder: (context) => AlertDialog(
title: Text(context.l10n.campaignPendingTitle),
content: Text(context.l10n.campaignPendingBody),
actions: [
FilledButton(
onPressed: () => Navigator.of(context).pop(),
child: Text(context.l10n.commonConfirm),
),
],
),
await showAlertDialog(
context,
context.l10n.campaignPendingTitle,
body: context.l10n.campaignPendingBody,
);
if (mounted) Navigator.of(context).pop(id);
}