(frontend) add quick action to open transcription menu

Implement quick access button to open the transcription menu directly,
providing faster navigation to transcript controls and settings.
This commit is contained in:
lebaudantoine
2025-09-08 21:19:50 +02:00
committed by aleb_the_flash
parent bcdc93f405
commit 7c16852a56
6 changed files with 35 additions and 0 deletions

View File

@@ -5,6 +5,7 @@ import { SettingsMenuItem } from './SettingsMenuItem'
import { FeedbackMenuItem } from './FeedbackMenuItem'
import { EffectsMenuItem } from './EffectsMenuItem'
import { SupportMenuItem } from './SupportMenuItem'
import { TranscriptMenuItem } from './TranscriptMenuItem'
import { ScreenRecordingMenuItem } from './ScreenRecordingMenuItem'
// @todo try refactoring it to use MenuList component
@@ -17,6 +18,7 @@ export const OptionsMenuItems = () => {
}}
>
<MenuSection>
<TranscriptMenuItem />
<ScreenRecordingMenuItem />
<FullScreenMenuItem />
<EffectsMenuItem />

View File

@@ -0,0 +1,29 @@
import { RiFileTextLine } from '@remixicon/react'
import { MenuItem } from 'react-aria-components'
import { useTranslation } from 'react-i18next'
import { menuRecipe } from '@/primitives/menuRecipe'
import { useSidePanel } from '@/features/rooms/livekit/hooks/useSidePanel'
import { RecordingMode, useHasRecordingAccess } from '@/features/recording'
import { FeatureFlags } from '@/features/analytics/enums'
export const TranscriptMenuItem = () => {
const { t } = useTranslation('rooms', { keyPrefix: 'options.items' })
const { isTranscriptOpen, openTranscript, toggleTools } = useSidePanel()
const hasTranscriptAccess = useHasRecordingAccess(
RecordingMode.Transcript,
FeatureFlags.Transcript
)
if (!hasTranscriptAccess) return null
return (
<MenuItem
className={menuRecipe({ icon: true, variant: 'dark' }).item}
onAction={() => (!isTranscriptOpen ? openTranscript() : toggleTools())}
>
<RiFileTextLine size={20} />
{t('transcript')}
</MenuItem>
)
}

View File

@@ -207,6 +207,7 @@
"feedback": "Feedback geben",
"settings": "Einstellungen",
"screenRecording": "Aufzeichnung",
"transcript": "Transkription",
"username": "Ihren Namen aktualisieren",
"effects": "Effekte anwenden",
"switchCamera": "Kamera wechseln",

View File

@@ -207,6 +207,7 @@
"feedback": "Give us feedback",
"settings": "Settings",
"screenRecording": "Screen recording",
"transcript": "Transcription",
"username": "Update Your Name",
"effects": "Apply effects",
"switchCamera": "Switch camera",

View File

@@ -207,6 +207,7 @@
"feedback": "Partager votre avis",
"settings": "Paramètres",
"screenRecording": "Enregistrement",
"transcript": "Transcription",
"username": "Choisir votre nom",
"effects": "Effets d'arrière-plan",
"switchCamera": "Changer de caméra",

View File

@@ -206,6 +206,7 @@
"items": {
"feedback": "Geef ons feedback",
"settings": "Instellingen",
"transcript": "Transcriptie",
"screenRecording": "Schermopname",
"username": "Verander uw naam",
"effects": "Pas effecten toe",