50 lines
1.8 KiB
Dart
50 lines
1.8 KiB
Dart
class AppConstants {
|
|
// App Info
|
|
static const String appName = 'AMORI Menu Recommender';
|
|
static const String appVersion = '1.0.0';
|
|
static const String kafeName = 'Amori Kofie Kediri';
|
|
|
|
// Firebase Collections
|
|
static const String usersCollection = 'users';
|
|
static const String recommendationsCollection = 'recommendations';
|
|
static const String menusCollection = 'menus';
|
|
|
|
// Shared Preferences Keys
|
|
static const String isFirstLaunchKey = 'is_first_launch';
|
|
static const String userPreferencesKey = 'user_preferences';
|
|
static const String themeKey = 'theme_mode';
|
|
|
|
// Hive Boxes
|
|
static const String userPreferencesBox = 'user_preferences';
|
|
static const String recommendationsBox = 'recommendations';
|
|
static const String menusBox = 'menus';
|
|
|
|
// API Keys (akan diisi dari environment variables)
|
|
static const String geminiApiKey = String.fromEnvironment('GEMINI_API_KEY');
|
|
|
|
// Image Picker Settings
|
|
static const int maxImageWidth = 1024;
|
|
static const int maxImageHeight = 1024;
|
|
static const int imageQuality = 85;
|
|
|
|
// OCR Settings
|
|
static const double ocrConfidenceThreshold = 0.7;
|
|
|
|
// UI Constants
|
|
static const double defaultPadding = 16.0;
|
|
static const double smallPadding = 8.0;
|
|
static const double largePadding = 24.0;
|
|
static const double borderRadius = 12.0;
|
|
static const double smallBorderRadius = 8.0;
|
|
static const double largeBorderRadius = 20.0;
|
|
|
|
// Animation Durations
|
|
static const Duration shortAnimation = Duration(milliseconds: 200);
|
|
static const Duration mediumAnimation = Duration(milliseconds: 300);
|
|
static const Duration longAnimation = Duration(milliseconds: 500);
|
|
|
|
// Network Timeouts
|
|
static const Duration connectionTimeout = Duration(seconds: 30);
|
|
static const Duration receiveTimeout = Duration(seconds: 30);
|
|
}
|