export const nutritionRecords = { title: '营养记录', listTitle: '今日餐食', recordCount: '{{count}} 条记录', empty: { title: '今天还没有记录', action: '记一笔', }, footer: { end: '- 已经到底啦 -', loadMore: '加载更多', }, delete: { title: '确认删除', message: '确定要删除这条营养记录吗?此操作无法撤销。', cancel: '取消', confirm: '删除', }, mealTypes: { breakfast: '早餐', lunch: '午餐', dinner: '晚餐', snack: '加餐', other: '其他', }, nutrients: { protein: '蛋白质', fat: '脂肪', carbs: '碳水', unit: 'g', caloriesUnit: '千卡', }, overlay: { title: '记录方式', scan: 'AI识别', foodLibrary: '食物库', voiceRecord: '一句话记录', }, chart: { remaining: '还能吃', formula: '还能吃 = 代谢 + 运动 - 饮食', metabolism: '代谢', exercise: '运动', diet: '饮食', }, }; export const foodCamera = { title: '食物拍摄', hint: '确保食物在取景框内', permission: { title: '需要相机权限', description: '为了拍摄食物并进行AI识别,需要访问您的相机', button: '授权访问', }, guide: { title: '拍摄示例', description: '请上传或拍摄清晰的食物照片,有助于提高识别准确率', button: '知道了', good: '光线充足,主体清晰', bad: '模糊不清,光线昏暗', }, buttons: { album: '相册', capture: '拍照', help: '帮助', }, alerts: { captureFailed: { title: '拍照失败', message: '请重试', }, pickFailed: { title: '选择失败', message: '请重试', }, }, }; export const foodRecognition = { title: '食物识别', header: { confirm: '确认食物', recognizing: 'AI 识别中', }, errors: { noImage: '未找到图片', generic: '食物识别失败,请重试', unknown: '未知错误', noFoodDetected: '识别失败:未检测到食物', processError: '识别过程出错', }, logs: { uploading: '📤 正在上传图片到云端...', uploadSuccess: '✅ 图片上传完成', analyzing: '🤖 AI大模型分析中...', analysisSuccess: '✅ AI分析完成', confidence: '🎯 识别置信度: {{value}}%', itemsFound: '🍽️ 识别到 {{count}} 种食物', failed: '❌ 识别失败:未检测到食物', error: '❌ 识别过程出错', }, status: { idle: { title: '准备就绪', subtitle: '请稍候...', }, uploading: { title: '上传图片', subtitle: '正在上传图片到云端服务器...', }, recognizing: { title: 'AI 分析中', subtitle: '智能模型正在分析食物成分...', }, completed: { title: '识别成功', subtitle: '即将跳转到分析结果页面', }, failed: { title: '识别失败', subtitle: '请检查网络或稍后重试', }, processing: { title: '处理中...', subtitle: '请稍候...', }, }, mealTypes: { breakfast: '早餐', lunch: '午餐', dinner: '晚餐', snack: '加餐', unknown: '未知', }, info: { title: '智能食物识别', description: 'AI 将分析照片,自动识别食物种类并估算营养成分,生成详细报告。', }, actions: { start: '开始识别', retry: '返回重试', logs: '处理日志', logsPlaceholder: '准备开始...', }, alerts: { recognizing: { title: '正在识别中', message: '识别过程尚未完成,确定要返回吗?', continue: '继续识别', back: '返回', }, }, }; export const foodAnalysisResult = { title: '分析结果', error: { notFound: '未找到图片或识别结果', }, placeholder: '营养记录', nutrients: { caloriesUnit: '千卡', protein: '蛋白质', fat: '脂肪', carbs: '碳水', unit: '克', }, sections: { recognitionResult: '识别结果', foodIntake: '食物摄入', }, nonFood: { title: '未识别到食物', suggestions: { title: '建议:', item1: '• 确保图片中包含食物', item2: '• 尝试更清晰的照片角度', item3: '• 避免过度模糊或光线不足', }, }, actions: { retake: '重新拍照', record: '记录', close: '关闭', }, mealSelector: { title: '选择餐次', }, editModal: { title: '编辑食物信息', fields: { name: '食物名称', namePlaceholder: '输入食物名称', amount: '重量 (克)', amountPlaceholder: '输入重量', calories: '卡路里 (千卡)', caloriesPlaceholder: '输入卡路里', }, actions: { cancel: '取消', save: '保存', }, }, confidence: '置信度: {{value}}%', dateFormats: { today: 'YYYY年M月D日', full: 'YYYY年M月D日 HH:mm', }, }; export const foodLibrary = { title: '食物库', custom: '自定义', search: { placeholder: '搜索食物...', loading: '搜索中...', empty: '未找到相关食物', noData: '暂无食物数据', }, loading: '加载食物库中...', retry: '重试', mealTypes: { breakfast: '早餐', lunch: '午餐', dinner: '晚餐', snack: '加餐', }, actions: { record: '记录', selectMeal: '选择餐次', }, alerts: { deleteFailed: { title: '删除失败', message: '删除食物时发生错误,请稍后重试', }, createFailed: { title: '创建失败', message: '创建自定义食物时发生错误,请稍后重试', }, }, }; export const createCustomFood = { title: '创建自定义食物', save: '保存', preview: { title: '效果预览', defaultName: '食物名称', }, basicInfo: { title: '基本信息', name: '食物名称', namePlaceholder: '例如,汉堡', defaultAmount: '默认数量', calories: '食物热量', }, optionalInfo: { title: '可选信息', photo: '照片', addPhoto: '添加照片', protein: '蛋白质', fat: '脂肪', carbohydrate: '碳水化合物', }, units: { kcal: '千卡', g: 'g', gram: '克', }, alerts: { permissionDenied: { title: '权限不足', message: '需要相册权限以选择照片', }, uploadFailed: { title: '上传失败', message: '照片上传失败,请重试', }, error: { title: '发生错误', message: '选择照片失败,请重试', }, validation: { title: '提示', nameRequired: '请输入食物名称', caloriesRequired: '请输入有效的热量值', }, }, }; export const voiceRecord = { title: '一句话记录', intro: { description: '通过语音描述您的饮食内容,AI将智能分析营养成分和卡路里', }, status: { idle: '轻触麦克风开始录音', listening: '正在聆听中,请开始说话...', processing: 'AI正在处理语音内容...', analyzing: 'AI大模型深度分析营养成分中...', result: '语音识别完成,请确认结果', }, hints: { listening: '说出您想记录的食物内容', }, examples: { title: '记录示例:', items: [ '今早吃了两个煎蛋、一片全麦面包和一杯牛奶', '午饭吃了红烧肉约150克、米饭一小碗、青菜一份', '晚饭吃了蒸蛋羹、紫菜蛋花汤、小米粥一碗', ], }, analysis: { progress: '分析进度: {{progress}}%', hint: 'AI正在深度分析您的食物描述...', }, result: { label: '识别结果:', }, actions: { retry: '重新录音', confirm: '确认使用', }, alerts: { noVoiceInput: '没有检测到语音输入,请重试', networkError: '网络连接异常,请检查网络后重试', voiceError: '语音识别出现问题,请重试', noValidContent: '未识别到有效内容,请重新录音', pleaseRecordFirst: '请先进行语音识别', recordingFailed: '录音失败', recordingPermissionError: '无法启动语音识别,请检查麦克风权限设置', analysisFailed: '分析失败', }, }; export const nutritionLabelAnalysis = { title: '成分表分析', camera: { permissionDenied: '权限不足', permissionMessage: '需要相机权限才能拍摄成分表', }, actions: { takePhoto: '拍摄', selectFromAlbum: '相册', startAnalysis: '开始分析', close: '关闭', }, placeholder: { text: '拍摄或选择成分表照片', }, status: { uploading: '正在上传图片...', analyzing: '正在分析成分表...', }, errors: { analysisFailed: { title: '分析失败', message: '分析图片时发生错误,请重试', defaultMessage: '分析服务暂时不可用', }, cannotRecognize: '无法识别成分表,请尝试拍摄更清晰的照片', cameraPermissionDenied: '需要相机权限才能拍摄成分表', }, results: { title: '营养成分详细分析', detailedAnalysis: '营养成分详细分析', }, imageViewer: { close: '关闭', dateFormat: 'YYYY年M月D日 HH:mm', }, }; export const nutritionAnalysisHistory = { title: '历史记录', dateFormat: 'YYYY年M月D日 HH:mm', recognized: '识别 {{count}} 项营养素', loadingMore: '加载更多...', loading: '加载历史记录...', filter: { all: '全部', }, filters: { all: '全部', success: '成功', failed: '失败', }, status: { success: '成功', failed: '失败', processing: '处理中', unknown: '未知', }, nutrients: { energy: '热量', protein: '蛋白质', carbs: '碳水', fat: '脂肪', }, delete: { confirmTitle: '确认删除', confirmMessage: '确定要删除这条记录吗?', cancel: '取消', delete: '删除', successTitle: '删除成功', successMessage: '记录已成功删除', }, actions: { expand: '展开详情', collapse: '收起详情', expandDetails: '展开详情', collapseDetails: '收起详情', confirmDelete: '确认删除', delete: '删除', cancel: '取消', retry: '重试', }, empty: { title: '暂无历史记录', subtitle: '开始识别营养成分表吧', }, errors: { error: '错误', loadFailed: '加载失败', unknownError: '未知错误', fetchFailed: '获取历史记录失败', fetchFailedRetry: '获取历史记录失败,请重试', deleteFailed: '删除失败,请稍后重试', }, loadingState: { records: '加载历史记录...', more: '加载更多...', }, details: { title: '详细营养成分', nutritionDetails: '详细营养成分', aiModel: 'AI 模型', provider: '服务提供商', serviceProvider: '服务提供商', }, records: { nutritionCount: '识别 {{count}} 项营养素', }, imageViewer: { close: '关闭', }, }; export const waterDetail = { title: '饮水详情', waterRecord: '饮水记录', today: '今日', total: '总计:', goal: '目标:', noRecords: '暂无饮水记录', noRecordsSubtitle: '点击"添加记录"开始记录饮水量', deleteConfirm: { title: '确认删除', message: '确定要删除这条饮水记录吗?此操作无法撤销。', cancel: '取消', confirm: '删除', }, deleteButton: '删除', water: '水', loadingUserPreferences: '加载用户偏好设置失败', }; export const waterSettings = { title: '饮水设置', sections: { dailyGoal: '每日饮水目标', quickAdd: '快速添加默认值', reminder: '喝水提醒', }, descriptions: { quickAdd: '设置点击"+"按钮时添加的默认饮水量', reminder: '设置定时提醒您补充水分', }, labels: { ml: 'ml', disabled: '已关闭', }, alerts: { goalSuccess: { title: '设置成功', message: '每日饮水目标已设置为 {{amount}}ml', }, quickAddSuccess: { title: '设置成功', message: '快速添加默认值已设置为 {{amount}}ml', }, quickAddFailed: { title: '设置失败', message: '无法保存快速添加默认值,请重试', }, }, buttons: { cancel: '取消', confirm: '确定', }, status: { reminderEnabled: '{{startTime}}-{{endTime}}, 每{{interval}}分钟', }, }; export const waterReminderSettings = { title: '喝水提醒', sections: { notifications: '推送提醒', timeRange: '提醒时间段', interval: '提醒间隔', }, descriptions: { notifications: '开启后将在指定时间段内定期推送喝水提醒', timeRange: '只在指定时间段内发送提醒,避免打扰您的休息', interval: '选择提醒的频率,建议30-120分钟为宜', }, labels: { startTime: '开始时间', endTime: '结束时间', interval: '提醒间隔', saveSettings: '保存设置', hours: '小时', timeRangePreview: '时间段预览', minutes: '分钟', }, alerts: { timeValidation: { title: '时间设置提示', startTimeInvalid: '开始时间不能晚于或等于结束时间,请重新选择', endTimeInvalid: '结束时间不能早于或等于开始时间,请重新选择', }, success: { enabled: '设置成功', enabledMessage: '喝水提醒已开启\n\n时间段:{{timeRange}}\n提醒间隔:{{interval}}\n\n我们将在指定时间段内定期提醒您喝水', disabled: '设置成功', disabledMessage: '喝水提醒已关闭', }, error: { title: '保存失败', message: '无法保存喝水提醒设置,请重试', }, }, buttons: { confirm: '确定', cancel: '取消', }, };