fromis_9/app/lib/core/constants.dart
caadiq 488e4094c8 Flutter 앱: 멤버 화면 카드 스와이프 UI 및 홈 애니메이션 추가
- 홈 화면에 웹과 동일한 framer-motion 스타일 애니메이션 적용
- 멤버 화면 카드 스와이프 디자인으로 재구현
- 인스타그램 딥링크 지원 (url_launcher, AndroidManifest queries)
- flutter_svg 추가로 SVG 아이콘 동적 strokeWidth 지원
- 바텀 네비게이션 아이콘 strokeWidth 웹과 동일하게 조정
- 멤버 화면 툴바 그림자 제거 및 인디케이터 그림자 최적화
- 탭 전환 시 애니메이션 재생 기능 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-13 00:07:59 +09:00

53 lines
1.4 KiB
Dart

/// 앱 전역 상수 정의
library;
import 'package:flutter/material.dart';
/// API 기본 URL
const String apiBaseUrl = 'https://fromis9.caadiq.co.kr/api';
/// 앱 테마 색상 (웹과 동일)
class AppColors {
// Primary 색상 (프로미스나인 팬덤 컬러)
static const Color primary = Color(0xFF548360);
static const Color primaryLight = Color(0xFF6A9A75);
static const Color primaryDark = Color(0xFF456E50);
// 배경 색상
static const Color background = Color(0xFFFAFAFA);
static const Color surface = Colors.white;
// 텍스트 색상
static const Color textPrimary = Color(0xFF1A1A1A);
static const Color textSecondary = Color(0xFF6B7280);
static const Color textTertiary = Color(0xFF9CA3AF);
// 테두리 색상
static const Color border = Color(0xFFE5E7EB);
static const Color divider = Color(0xFFF3F4F6);
}
/// 앱 텍스트 스타일
class AppTextStyles {
static const TextStyle heading1 = TextStyle(
fontSize: 24,
fontWeight: FontWeight.bold,
color: AppColors.textPrimary,
);
static const TextStyle heading2 = TextStyle(
fontSize: 20,
fontWeight: FontWeight.bold,
color: AppColors.textPrimary,
);
static const TextStyle body = TextStyle(
fontSize: 14,
color: AppColors.textPrimary,
);
static const TextStyle caption = TextStyle(
fontSize: 12,
color: AppColors.textSecondary,
);
}