Files
maternal-app/maternal-web/locales/en/ai.json
Andrei e4b97df0c0
Some checks failed
CI/CD Pipeline / Lint and Test (push) Has been cancelled
CI/CD Pipeline / E2E Tests (push) Has been cancelled
CI/CD Pipeline / Build Application (push) Has been cancelled
feat: Implement AI response feedback UI and complete high-priority features
Frontend Features:
- Add MessageFeedback component with thumbs up/down buttons
- Positive feedback submits immediately with success toast
- Negative feedback opens dialog for optional text input
- Integrate feedback buttons on all AI assistant messages
- Add success Snackbar confirmation message
- Translation keys added to ai.json (feedback section)

Backend Features:
- Add POST /api/v1/ai/feedback endpoint
- Create FeedbackDto with conversation ID validation
- Implement submitFeedback service method
- Store feedback in conversation metadata with timestamps
- Add audit logging for feedback submissions
- Fix conversationId regex validation to support nanoid format

Legal & Compliance:
- Implement complete EULA acceptance flow with modal
- Create reusable legal content components (Terms, Privacy, EULA)
- Add LegalDocumentViewer for nested modal viewing
- Cookie Consent Banner with GDPR compliance
- Legal pages with AppShell navigation
- EULA acceptance tracking in user entity

Branding Updates:
- Rebrand from "Maternal App" to "ParentFlow"
- Update all icons (72px to 512px) from high-res source
- PWA manifest updated with ParentFlow branding
- Contact email: hello@parentflow.com
- Address: Serbota 3, Bucharest, Romania

Bug Fixes:
- Fix chat endpoint validation (support nanoid conversation IDs)
- Fix EULA acceptance API call (use apiClient vs hardcoded localhost)
- Fix icon loading errors with proper PNG generation

Documentation:
- Mark 11 high-priority features as complete in REMAINING_FEATURES.md
- Update feature statistics: 73/139 complete (53%)
- All high-priority features now complete! 🎉

Files Changed:
Frontend: 21 files (components, pages, locales, icons)
Backend: 6 files (controller, service, DTOs, migrations)
Docs: 1 file (REMAINING_FEATURES.md)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-04 11:39:02 +00:00

118 lines
4.7 KiB
JSON

{
"title": "AI Assistant",
"subtitle": "24/7 Parenting Support",
"chat": {
"placeholder": "Ask me anything about parenting...",
"send": "Send",
"listening": "Listening...",
"processing": "Processing...",
"thinking": "Thinking...",
"typing": "AI is typing...",
"voiceInput": "Voice Input",
"textInput": "Text Input",
"newChat": "New Chat",
"clearChat": "Clear Chat",
"confirmClear": "Are you sure you want to clear this chat?",
"noMessages": "No messages yet",
"startConversation": "Start a conversation with your AI assistant"
},
"suggestions": {
"title": "Suggested Questions",
"sleepPattern": "How can I improve my baby's sleep pattern?",
"feeding": "How much should my baby be eating?",
"development": "What milestones should I expect this month?",
"health": "When should I be concerned about a fever?"
},
"context": {
"analyzing": "Analyzing your child's patterns...",
"usingRecent": "Using recent activity data",
"basedOn": "Based on {{childName}}'s profile"
},
"disclaimer": {
"title": "Important Disclaimer",
"message": "This AI assistant provides general parenting guidance and is not a substitute for professional medical advice. Always consult with your pediatrician for medical concerns.",
"emergency": "In case of emergency, call emergency services immediately.",
"understand": "I Understand"
},
"limits": {
"dailyLimit": "Daily question limit reached",
"dailyLimitMessage": "You've reached your daily limit of {{limit}} questions. Upgrade to premium for unlimited access.",
"upgrade": "Upgrade to Premium"
},
"history": {
"title": "Chat History",
"today": "Today",
"yesterday": "Yesterday",
"thisWeek": "This Week",
"older": "Older",
"noHistory": "No chat history",
"delete": "Delete Chat",
"confirmDelete": "Are you sure you want to delete this chat?"
},
"topics": {
"sleep": "Sleep",
"feeding": "Feeding",
"development": "Development",
"health": "Health",
"behavior": "Behavior",
"safety": "Safety",
"nutrition": "Nutrition",
"general": "General"
},
"interface": {
"assistantTitle": "AI Parenting Assistant",
"assistantSubtitle": "Ask me anything about parenting and childcare",
"greeting": "Hi {{name}}! How can I help you today?",
"inputPlaceholder": "Ask me anything...",
"closeDrawer": "Close drawer",
"moreOptions": "More options",
"deleteConversation": "Delete conversation",
"chatCount": "{{count}} chat",
"chatCount_plural": "{{count}} chats",
"ungrouped": "Ungrouped",
"errorMessage": "Sorry, I encountered an error. Please try again.",
"disclaimerFooter": "This AI assistant provides general information. Always consult healthcare professionals for medical advice.",
"deleteDialogTitle": "Delete Conversation",
"deleteDialogMessage": "Are you sure you want to delete this conversation? This action cannot be undone.",
"cancel": "Cancel",
"delete": "Delete",
"moveToGroup": "Move to Group",
"createNewGroup": "Create New Group",
"groupNameLabel": "Group Name",
"create": "Create",
"suggestedQuestion1": "How much should my baby sleep at 3 months?",
"suggestedQuestion2": "What are normal feeding patterns?",
"suggestedQuestion3": "When should I introduce solid foods?",
"suggestedQuestion4": "Tips for better sleep routine",
"thinking1": "Gathering baby wisdom...",
"thinking2": "Consulting the baby books...",
"thinking3": "Mixing up the perfect answer...",
"thinking4": "Warming up some advice...",
"thinking5": "Preparing your bottle of knowledge...",
"thinking6": "Counting tiny fingers and toes...",
"thinking7": "Connecting the building blocks...",
"thinking8": "Peeking into the toy box...",
"thinking9": "Arranging the puzzle pieces...",
"thinking10": "Stirring the baby food jar...",
"thinking11": "Polishing the pacifier of wisdom...",
"thinking12": "Tiptoeing through naptime...",
"thinking13": "Organizing the diaper bag...",
"thinking14": "Wrapping up your answer with love...",
"thinking15": "Brewing a warm cup of guidance...",
"thinking16": "Knitting together some thoughts...",
"thinking17": "Tucking in the details...",
"thinking18": "Sprinkling some magic dust...",
"thinking19": "Humming a lullaby while I think..."
},
"feedback": {
"helpful": "This was helpful",
"notHelpful": "This wasn't helpful",
"dialogTitle": "Help us improve",
"dialogMessage": "What could have been better about this response?",
"placeholder": "Your feedback (optional)",
"cancel": "Cancel",
"submit": "Submit",
"thankYou": "Thank you for your feedback!"
}
}