feat(mobile): add Notes tab and structured meeting-notes screen#7
feat(mobile): add Notes tab and structured meeting-notes screen#7
Conversation
There was a problem hiding this comment.
Pull request overview
Adds an on-device “Notes” workflow to the mobile app by introducing a new bottom-tab screen that turns raw meeting memos into a structured, shareable minutes format.
Changes:
- Added a new
Notestab to the bottom navigator inpackages/mobile/App.tsx. - Implemented
NotesScreenwith memo/member inputs, local note structuring (buildNotes), and native share support.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
packages/mobile/App.tsx |
Registers the new Notes tab in the bottom-tab navigator. |
packages/mobile/src/screens/NotesScreen.tsx |
New screen for generating and sharing structured meeting notes from raw text input. |
Comments suppressed due to low confidence (1)
packages/mobile/App.tsx:13
- App.tsx defines its own
themeobject while the screens (including the newly addedNotesScreen) importthemefromsrc/styles/theme. This creates two sources of truth and can lead to subtle UI drift when colors/tokens change. Consider importing and reusing the shared theme here as well (or renaming the local theme to make the split explicit).
import NotesScreen from './src/screens/NotesScreen'
const Tab = createBottomTabNavigator()
const theme = {
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| const handleShare = async () => { | ||
| if (!generated) return | ||
| await Share.share({ message: generated }) | ||
| } |
There was a problem hiding this comment.
Share.share can reject (e.g., user cancels or OS share sheet fails). Right now an exception would propagate as an unhandled promise rejection and there’s no user feedback. Wrap the call in try/catch (and optionally ignore the common “dismissed/cancelled” case) and show a lightweight error UI (e.g., Alert) on real failures.
Motivation
Description
Notestab to the mobile bottom navigator by importingNotesScreenand registering the screen inpackages/mobile/App.tsx.NotesScreenatpackages/mobile/src/screens/NotesScreen.tsxwhich accepts raw memo and optional participant input and produces a structured output (## サマリー / ## 参加メンバー / ## アクションアイテム / ## 決定事項 / ## 次のステップ).buildNotes) to extract action candidates, decisions, and next steps from lines and format them as checklist items, and added a native share action viaShare.sharefor the generated notes.Testing
npm install, but dependency installation failed due to registry access (403 Forbiddenwhile fetching@anthropic-ai/sdk), so full dependency resolution could not be completed.npm run typecheck, but it failed becauseturbois not available in the environment (sh: 1: turbo: not found), so workspace type checks were not executed.Codex Task