mirror of https://github.com/tooot-app/app
Improve ML translation by removing HTML tags
This commit is contained in:
parent
72eee3600f
commit
7adc09f624
|
@ -30,35 +30,41 @@ const TimelineTranslate = React.memo(
|
||||||
const { t } = useTranslation('componentTimeline')
|
const { t } = useTranslation('componentTimeline')
|
||||||
const { colors } = useTheme()
|
const { colors } = useTheme()
|
||||||
|
|
||||||
let text = status.spoiler_text
|
const text = status.spoiler_text
|
||||||
? [status.spoiler_text, status.content]
|
? [status.spoiler_text, status.content]
|
||||||
: [status.content]
|
: [status.content]
|
||||||
|
|
||||||
for (const i in text) {
|
for (const i in text) {
|
||||||
for (const emoji of status.emojis) {
|
for (const emoji of status.emojis) {
|
||||||
text[i] = text[i].replaceAll(`:${emoji.shortcode}:`, '')
|
text[i] = text[i].replaceAll(`:${emoji.shortcode}:`, ' ')
|
||||||
}
|
}
|
||||||
|
text[i] = text[i]
|
||||||
|
.replace(/(<([^>]+)>)/gi, ' ')
|
||||||
|
.replace(/@.*? /gi, ' ')
|
||||||
|
.replace(/#.*? /gi, ' ')
|
||||||
|
.replace(/http(s):\/\/.*? /gi, ' ')
|
||||||
}
|
}
|
||||||
|
|
||||||
const [detectedLanguage, setDetectedLanguage] = useState<string>('')
|
const [detectedLanguage, setDetectedLanguage] = useState<string>('')
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const detect = async () => {
|
const detect = async () => {
|
||||||
const result = await detectLanguage(text.join(`\n`))
|
const result = await detectLanguage(text.join(`\n\n`))
|
||||||
setDetectedLanguage(result.detected.slice(0, 2))
|
setDetectedLanguage(result.detected.slice(0, 2))
|
||||||
}
|
}
|
||||||
detect()
|
detect()
|
||||||
}, [])
|
}, [])
|
||||||
|
|
||||||
const settingsLanguage = useSelector(getSettingsLanguage)
|
const settingsLanguage = useSelector(getSettingsLanguage)
|
||||||
|
const targetLanguage = settingsLanguage || Localization.locale || 'en'
|
||||||
|
|
||||||
const [enabled, setEnabled] = useState(false)
|
const [enabled, setEnabled] = useState(false)
|
||||||
const { refetch, data, isLoading, isSuccess, isError } = useTranslateQuery({
|
const { refetch, data, isLoading, isSuccess, isError } = useTranslateQuery({
|
||||||
source: detectedLanguage,
|
source: detectedLanguage,
|
||||||
target: Localization.locale || settingsLanguage || 'en',
|
target: targetLanguage,
|
||||||
text,
|
text,
|
||||||
options: { enabled }
|
options: { enabled }
|
||||||
})
|
})
|
||||||
console.log('detectedLanguage', detectedLanguage)
|
|
||||||
if (!detectedLanguage) {
|
if (!detectedLanguage) {
|
||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
|
@ -118,9 +124,7 @@ const TimelineTranslate = React.memo(
|
||||||
</CustomText>
|
</CustomText>
|
||||||
<CustomText>
|
<CustomText>
|
||||||
{__DEV__
|
{__DEV__
|
||||||
? ` Source: ${detectedLanguage}; Target: ${
|
? ` Source: ${detectedLanguage}; Target: ${targetLanguage}`
|
||||||
Localization.locale || settingsLanguage || 'en'
|
|
||||||
}`
|
|
||||||
: undefined}
|
: undefined}
|
||||||
</CustomText>
|
</CustomText>
|
||||||
{isLoading ? (
|
{isLoading ? (
|
||||||
|
|
Loading…
Reference in New Issue