Compare commits

...

7 Commits

Author SHA1 Message Date
xmflsct e53a1a753f
Merge pull request #349 from tooot-app/main
Release v4.1.5
2022-06-21 23:57:19 +02:00
xmflsct 239de22116
New Crowdin updates (#346)
* New translations instance.json (Italian)

* New translations timeline.json (Italian)

* New translations mediaSelector.json (Italian)

* New translations actions.json (Italian)

* New translations compose.json (Italian)

* New translations tabs.json (Italian)

* New translations contextMenu.json (Italian)

* New translations mediaSelector.json (Italian)

* New translations contextMenu.json (Italian)
2022-06-21 23:56:45 +02:00
Zhiyuan Zheng 0f8befc89c Fixed #348 2022-06-21 23:50:49 +02:00
Zhiyuan Zheng 29977b6c9e Fixed #347 2022-06-21 23:45:11 +02:00
Zhiyuan Zheng 41d85bf738 Fix row flexbox 2022-06-21 23:31:31 +02:00
Zhiyuan Zheng ca810065f8 Force clearing push count 2022-06-21 23:10:40 +02:00
Zhiyuan Zheng 869524eb84 Fix uploading avatar 2022-06-21 23:05:29 +02:00
13 changed files with 50 additions and 52 deletions

View File

@ -4,7 +4,7 @@
"native": "220603",
"major": 4,
"minor": 1,
"patch": 4,
"patch": 5,
"expo": "45.0.0"
},
"description": "tooot app for Mastodon",

View File

@ -87,7 +87,7 @@ const MenuRow: React.FC<Props> = ({
>
<View
style={{
flex: 3,
flexGrow: 3,
flexDirection: 'row',
alignItems: 'center'
}}
@ -111,15 +111,13 @@ const MenuRow: React.FC<Props> = ({
}}
/>
) : null}
<View style={{ flex: 1 }}>
<CustomText
fontStyle='M'
style={{ color: colors.primaryDefault }}
numberOfLines={1}
>
{title}
</CustomText>
</View>
<CustomText
fontStyle='M'
style={{ color: colors.primaryDefault }}
numberOfLines={1}
>
{title}
</CustomText>
</View>
{content || switchValue !== undefined || iconBack ? (

View File

@ -150,7 +150,7 @@ const mediaSelector = async ({
for (const image of images) {
const croppedImage = await ImagePicker.openCropper({
mediaType: 'photo',
path: image.path,
path: image.sourceURL || image.path,
width: resize.width,
height: resize.height,
cropperChooseText: i18next.t('common:buttons.apply'),

View File

@ -1,25 +1,25 @@
{
"accessibilityHint": "Azioni per questo toot, per l'utente che l'ha pubblicato o per il toot stesso",
"account": {
"title": "",
"title": "Azioni utente",
"mute": {
"action_false": "Muta utente",
"action_true": ""
"action_true": "Riattiva utente"
},
"block": {
"action_false": "Blocca utente",
"action_true": ""
"action_true": "Sblocca utente"
},
"reports": {
"action": "Segnala utente"
}
},
"instance": {
"title": "",
"title": "Azione sull'istanza",
"block": {
"action": "Blocca istanza {{instance}}",
"alert": {
"title": "",
"title": "Confermi di voler bloccare l'istanza {{instance}}?",
"message": "Sarebbe meglio mutare o bloccare singoli utenti.\n\nSe blocchi un'istanza, tutti i suoi contenuti a te relativi, inclusi tutti i tuoi seguaci da questa, saranno rimossi.",
"buttons": {
"confirm": "Ho capito"
@ -36,7 +36,7 @@
}
},
"status": {
"title": "",
"title": "Azioni sul toot",
"edit": {
"action": "Modifica toot"
},
@ -44,29 +44,29 @@
"action": "Cancella toot",
"alert": {
"title": "Conferma?",
"message": "",
"message": "Tutti i retoot, gli apprezzamenti, e le risposte, saranno cancellati.",
"buttons": {
"confirm": "Ho capito"
}
}
},
"deleteEdit": {
"action": "",
"action": "Cancella e ripubblica toot",
"alert": {
"title": "",
"message": "",
"title": "Confermi cancellazione e ripubblicazione?",
"message": "Tutti i retoot, gli apprezzamenti, e le risposte, saranno cancellati.",
"buttons": {
"confirm": "Ho capito"
}
}
},
"mute": {
"action_false": "",
"action_true": ""
"action_false": "Muta toot e le sue risposte",
"action_true": "Riattiva toot e le sue risposte"
},
"pin": {
"action_false": "",
"action_true": ""
"action_false": "Fissa toot",
"action_true": "Togli toot all'alto"
}
}
}

View File

@ -14,7 +14,7 @@
"base": "Per accedere, verrà aperta una pagina del browser di sistema. I dati di accesso del tuo account sono protetti."
},
"terms": {
"base": ""
"base": "Accedendo, accetti la <0>politica sulla privacy</0> e i <1>termini di servizio</1>."
}
},
"update": {

View File

@ -1,10 +1,10 @@
{
"title": "Seleziona origine media",
"options": {
"image": "",
"image_max": "",
"video": "",
"video_max": ""
"image": "Carica foto",
"image_max": "Carica foto (massimo {{max}})",
"video": "Carica video",
"video_max": "Carica video (max {{max}})"
},
"library": {
"alert": {

View File

@ -30,7 +30,7 @@
"default": "{{name}} ha ricondiviso",
"notification": "{{name}} ha ricondiviso il tuo toot"
},
"update": ""
"update": "Retoot ha subito una modifica"
},
"actions": {
"reply": {

View File

@ -1,7 +1,7 @@
{
"content": {
"altText": {
"heading": ""
"heading": "Testo descrittivo"
},
"notificationsFilter": {
"heading": "Filtra notifiche per tipo",
@ -12,8 +12,8 @@
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "",
"update": ""
"status": "Toot da utenti seguiti",
"update": "Retoot ha subito una modifica"
}
}
}

View File

@ -168,7 +168,7 @@
"header": {
"title": "Bozza"
},
"warning": "",
"warning": "Le bozze sono salvate solo in locale, e potrebbero essere perse in seguito a problemi. Evita di usarle per archiviazione a lungo termine.",
"content": {
"accessibilityHint": "Bozza salvata, premi per modificarla",
"textEmpty": "Testo vuoto"

View File

@ -170,7 +170,7 @@
"heading": "Nuovi seguaci"
},
"follow_request": {
"heading": ""
"heading": "Richiesta di seguirti"
},
"favourite": {
"heading": "Apprezzamenti"
@ -185,7 +185,7 @@
"heading": "Novità sui sondaggi"
},
"status": {
"heading": ""
"heading": "Toot da utenti seguiti"
},
"howitworks": "Scopri come funziona il traversamento dei messaggi"
},

View File

@ -1,9 +1,8 @@
import Button from '@components/Button'
import { useAccessibility } from '@utils/accessibility/AccessibilityManager'
import GracefullyImage from '@components/GracefullyImage'
import { useTheme } from '@utils/styles/ThemeManager'
import React from 'react'
import { Dimensions, View } from 'react-native'
import FastImage from 'react-native-fast-image'
import { useSafeAreaInsets } from 'react-native-safe-area-context'
export interface Props {
@ -13,16 +12,13 @@ export interface Props {
const AccountHeader = React.memo(
({ account, edit }: Props) => {
const { reduceMotionEnabled } = useAccessibility()
const { colors } = useTheme()
const topInset = useSafeAreaInsets().top
return (
<View>
<FastImage
source={{
uri: reduceMotionEnabled ? account?.header_static : account?.header
}}
<GracefullyImage
uri={{ original: account?.header, static: account?.header_static }}
style={{
height: Dimensions.get('screen').width / 3 + topInset,
backgroundColor: colors.disabled

View File

@ -94,8 +94,8 @@ const pushUseConnect = ({ t, instances }: Params) => {
}, [expoToken, pushEnabled.length])
return useEffect(() => {
Notifications.setBadgeCountAsync(0)
if (expoToken && pushEnabled.length) {
Notifications.setBadgeCountAsync(0)
connect()
}
}, [expoToken, pushEnabled.length])

View File

@ -64,14 +64,18 @@ type MutationVarsProfile = MutationVarsProfileBase & {
const mutationFunction = async ({ type, data }: MutationVarsProfile) => {
const formData = new FormData()
if (type === 'fields_attributes') {
const tempData = data as { name: string; value: string }[]
tempData.forEach((d, index) => {
formData.append(`fields_attributes[${index}][name]`, d.name)
formData.append(`fields_attributes[${index}][value]`, d.value)
})
if (!data.length) {
formData.append('fields_attributes[]', '')
} else {
const tempData = data as { name: string; value: string }[]
tempData.forEach((d, index) => {
formData.append(`fields_attributes[${index}][name]`, d.name)
formData.append(`fields_attributes[${index}][value]`, d.value)
})
}
} else if (type === 'avatar' || type === 'header') {
formData.append(type, {
uri: `file://${data}`,
uri: data,
name: 'image/jpeg',
type: 'image/jpeg'
} as any)