Skip to content

Conversation

@daisuke-awaji
Copy link
Collaborator

@daisuke-awaji daisuke-awaji commented Dec 5, 2025

Description of Changes

Mermaid diagram support across the application and enhances the meeting minutes feature with diagram generation capabilities.

Checklist

  • Modified relevant documentation
  • Verified operation in local environment
  • Executed npm run cdk:test and if there are snapshot differences, execute npm run cdk:test:update-snapshot to update snapshots

Related Issues

#1349
#1330
#1331

Screenshot / ChatPage (AFTER)

スクリーンショット 2025-12-06 13 55 18 スクリーンショット 2025-12-06 13 56 13

Screenshot / Meeting Minutes Page (BEFORE)

image image

Screenshot / Meeting Minutes Page (AFTER)

スクリーンショット 2025-12-06 13 48 59 スクリーンショット 2025-12-06 13 49 07 スクリーンショット 2025-12-06 13 49 24 スクリーンショット 2025-12-06 13 49 48 スクリーンショット 2025-12-06 13 51 11 スクリーンショット 2025-12-06 13 51 24 image

- Create MermaidWithToggle component for rendering Mermaid diagrams
- Add toggle functionality to switch between diagram and source code view
- Support SVG and PNG export/download options
- Add PreRenderer to skip prose styling for mermaid blocks
- Integrate mermaid rendering into Markdown CodeRenderer
- Re-export MermaidWithToggle for backward compatibility
Add instruction for AI to use Mermaid diagrams in code blocks when
explaining processes, relationships, or structures in chat responses.
This enables visual representation of complex concepts.
- Change initial view mode from 'diagram' to 'code' during streaming
- Add debounce mechanism (500ms) to detect when code stops changing
- Automatically switch to diagram view once code becomes stable
- Improves UX by preventing incomplete diagram renders during streaming
Add new "diagram" style to meeting minutes generation feature that
creates visual diagram representations of meeting content. Includes:
- New style_diagram translations for all supported languages
- Updated style selector in MeetingMinutesGeneration component
- Added diagram type to MeetingMinutesStyle union
- Added prompt template for diagram generation
Replace inline arrow functions with useCallback-memoized handlers for
onRecordingStateChange props in MeetingMinutesTranscription and
MeetingMinutesRealtimeTranslation components to prevent re-render loops.

以下のエラーが無限に表示されます。

installHook.js:1 Warning: Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render. Error Component Stack
    at MeetingMinutesTranscription (MeetingMinutesTranscription.tsx:48:8)
    at div (<anonymous>)
    at div (<anonymous>)
    at div (<anonymous>)
    at Card (Card.tsx:17:15)
    at div (<anonymous>)
    at div (<anonymous>)
    at div (<anonymous>)
    at MeetingMinutesPage (MeetingMinutesPage.tsx:51:17)
    at App (App.tsx:71:17)
    at AuthWithUserpool (AuthWithUserpool.tsx:20:23)
- Add translation keys for panel selection UI (both_panel,
  generation_panel, transcription_panel) across en, ja, ko, th, vi
- Update MeetingMinutesTranscription component layout with
  improved spacing and flex properties
- Add 'summary' and 'detail' styles to MeetingMinutesParams type
- Change default minutes style from 'faq' to 'summary'
- Centralize style type definition in prompts/index.ts
- Reorder style options in dropdown for better UX
- Remove duplicate MeetingMinutesStyle type from hook
- Add diagram generation options (flowchart, mindmap, sequence, timeline)
- Implement settings modal with gear icon for configuration
- Add toggle functionality for selecting multiple diagram types
- Add i18n translations for diagram options and settings in en/ja
…onent

- Move settings modal UI from MeetingMinutesGeneration to dedicated component
- Remove unused imports (Checkbox, ModalDialog, Select, Switch, Textarea)
- Improve code organization and maintainability
…gle UI

- Replace separate mic/screen audio toggles with TogglePillButton component
- Add input source selection dropdown with desktop and microphone options
- Add translation keys for input_source, microphone, and option in EN/JA
- Relocate start/stop recording buttons to transcript panel header
- Integrate Help component for improved UI consistency
- Streamline audio control interface for better user experience
- Lighten placeholder text color from gray-500 to gray-400 for better visual hierarchy
- Add horizontal scroll to tab headers for better mobile experience
- Reduce tab text size to improve spacing and readability
- Ensure tab content containers use full height for proper layout
- Remove unnecessary flexbox classes from select containers
- Reduce bottom padding in settings panel
- Remove outlined prop from start recording button
- Increase mobile icon sizes from 7x7 to 10x10 for better touch targets
- Simplify div styling by removing redundant flex properties
- Add mobile detection using useIsMobile hook
- Make settings panel collapsible on mobile devices to save screen space
- Add gear and caret icons to settings header for better UX
- Settings expand/collapse based on screen size (collapsed on mobile, expanded on desktop)
- Improve responsive design for meeting minutes translation interface
- Extract recording control buttons into reusable MeetingMinutesControlButtons component
- Add collapsible settings panel with speaker configuration options
- Improve component organization and mobile responsiveness
- Add screen audio support and speaker label management
@daisuke-awaji daisuke-awaji requested a review from Sugi275 December 6, 2025 05:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant