🔥(frontend) remove transcription menu item
This menu item was replaced by a side panel.
This commit is contained in:
committed by
aleb_the_flash
parent
0f64d3cf3a
commit
d9a84e5f0f
@@ -10,7 +10,6 @@ import { DialogState } from './OptionsButton'
|
|||||||
import { Separator } from '@/primitives/Separator'
|
import { Separator } from '@/primitives/Separator'
|
||||||
import { useSidePanel } from '../../../hooks/useSidePanel'
|
import { useSidePanel } from '../../../hooks/useSidePanel'
|
||||||
import { menuRecipe } from '@/primitives/menuRecipe.ts'
|
import { menuRecipe } from '@/primitives/menuRecipe.ts'
|
||||||
import { TranscriptMenuItem } from './TranscriptMenuItem'
|
|
||||||
|
|
||||||
// @todo try refactoring it to use MenuList component
|
// @todo try refactoring it to use MenuList component
|
||||||
export const OptionsMenuItems = ({
|
export const OptionsMenuItems = ({
|
||||||
@@ -35,7 +34,6 @@ export const OptionsMenuItems = ({
|
|||||||
<RiAccountBoxLine size={20} />
|
<RiAccountBoxLine size={20} />
|
||||||
{t('effects')}
|
{t('effects')}
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
<TranscriptMenuItem />
|
|
||||||
</Section>
|
</Section>
|
||||||
<Separator />
|
<Separator />
|
||||||
<Section>
|
<Section>
|
||||||
|
|||||||
@@ -1,71 +0,0 @@
|
|||||||
import { RiRecordCircleLine, RiStopCircleLine } from '@remixicon/react'
|
|
||||||
import { useTranslation } from 'react-i18next'
|
|
||||||
import { menuRecipe } from '@/primitives/menuRecipe'
|
|
||||||
import { MenuItem } from 'react-aria-components'
|
|
||||||
import {
|
|
||||||
RecordingMode,
|
|
||||||
useStartRecording,
|
|
||||||
} from '@/features/rooms/api/startRecording'
|
|
||||||
import { useStopRecording } from '@/features/rooms/api/stopRecording'
|
|
||||||
import { useRoomContext } from '@livekit/components-react'
|
|
||||||
import { useRoomData } from '@/features/rooms/livekit/hooks/useRoomData'
|
|
||||||
import { useConfig } from '@/api/useConfig'
|
|
||||||
|
|
||||||
export const TranscriptMenuItem = () => {
|
|
||||||
const { t } = useTranslation('rooms', { keyPrefix: 'options.items' })
|
|
||||||
|
|
||||||
const apiRoomData = useRoomData()
|
|
||||||
|
|
||||||
const { mutateAsync: startRecordingRoom } = useStartRecording()
|
|
||||||
const { mutateAsync: stopRecordingRoom } = useStopRecording()
|
|
||||||
|
|
||||||
const { data } = useConfig()
|
|
||||||
|
|
||||||
const room = useRoomContext()
|
|
||||||
|
|
||||||
const handleTranscript = async () => {
|
|
||||||
const roomId = apiRoomData?.livekit?.room
|
|
||||||
|
|
||||||
if (!roomId) {
|
|
||||||
console.warn('No room ID found')
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
try {
|
|
||||||
if (room.isRecording) {
|
|
||||||
await stopRecordingRoom({ id: roomId })
|
|
||||||
} else {
|
|
||||||
await startRecordingRoom({ id: roomId, mode: RecordingMode.Transcript })
|
|
||||||
}
|
|
||||||
} catch (error) {
|
|
||||||
console.error('Failed to handle transcript:', error)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (
|
|
||||||
!data?.recording?.is_enabled ||
|
|
||||||
!data?.recording?.available_modes?.includes(RecordingMode.Transcript) ||
|
|
||||||
!apiRoomData?.is_administrable
|
|
||||||
) {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
return (
|
|
||||||
<MenuItem
|
|
||||||
className={menuRecipe({ icon: true }).item}
|
|
||||||
onAction={async () => await handleTranscript()}
|
|
||||||
>
|
|
||||||
{room.isRecording ? (
|
|
||||||
<>
|
|
||||||
<RiRecordCircleLine size={20} />
|
|
||||||
{t('transcript.stop')}
|
|
||||||
</>
|
|
||||||
) : (
|
|
||||||
<>
|
|
||||||
<RiStopCircleLine size={20} />
|
|
||||||
{t('transcript.start')}
|
|
||||||
</>
|
|
||||||
)}
|
|
||||||
</MenuItem>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
@@ -83,11 +83,7 @@
|
|||||||
"feedbacks": "",
|
"feedbacks": "",
|
||||||
"settings": "",
|
"settings": "",
|
||||||
"username": "",
|
"username": "",
|
||||||
"effects": "",
|
"effects": ""
|
||||||
"transcript": {
|
|
||||||
"start": "",
|
|
||||||
"stop": ""
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"effects": {
|
"effects": {
|
||||||
|
|||||||
@@ -82,11 +82,7 @@
|
|||||||
"feedbacks": "Give us feedbacks",
|
"feedbacks": "Give us feedbacks",
|
||||||
"settings": "Settings",
|
"settings": "Settings",
|
||||||
"username": "Update Your Name",
|
"username": "Update Your Name",
|
||||||
"effects": "Apply effects",
|
"effects": "Apply effects"
|
||||||
"transcript": {
|
|
||||||
"start": "Start meeting transcription",
|
|
||||||
"stop": "Stop ongoing transcription"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"effects": {
|
"effects": {
|
||||||
|
|||||||
@@ -82,11 +82,7 @@
|
|||||||
"feedbacks": "Partager votre avis",
|
"feedbacks": "Partager votre avis",
|
||||||
"settings": "Paramètres",
|
"settings": "Paramètres",
|
||||||
"username": "Choisir votre nom",
|
"username": "Choisir votre nom",
|
||||||
"effects": "Appliquer des effets",
|
"effects": "Appliquer des effets"
|
||||||
"transcript": {
|
|
||||||
"start": "Démarrer la transcription",
|
|
||||||
"stop": "Arrêter la transcription en cours"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"effects": {
|
"effects": {
|
||||||
|
|||||||
Reference in New Issue
Block a user