1
0
mirror of https://github.com/tooot-app/app synced 2025-06-05 22:19:13 +02:00

Merge branch 'main' into candidate

This commit is contained in:
xmflsct
2022-12-15 01:41:53 +01:00
146 changed files with 2299 additions and 938 deletions

View File

@ -1,7 +1,10 @@
Enjoy toooting! This version includes following improvements and fixes: Enjoy toooting! This version includes following improvements and fixes:
- Added 🇺🇦 Slava Ukraini
- Automatic setting detected language when tooting - Automatic setting detected language when tooting
- Remember public timeline type selection - Remember public timeline type selection
- Show diffing of edit history - Show diffing of edit history
- Allow hiding boosts and replies in home timeline
- Support toot in RTL languages
- Added notification for admins - Added notification for admins
- Fix whole word filter matching - Fix whole word filter matching
- Fix tablet cannot delete toot drafts - Fix tablet cannot delete toot drafts

View File

@ -1,7 +1,10 @@
toooting愉快此版本包括以下改进和修复 toooting愉快此版本包括以下改进和修复
- 增加 🇺🇦 Slava Ukraini
- 自动识别发嘟语言 - 自动识别发嘟语言
- 记住上次公共时间轴选项 - 记住上次公共时间轴选项
- 显示编辑历史的差异 - 显示编辑历史的差异
- 关注列表可隐藏转嘟和回复
- 新增管理员推送通知 - 新增管理员推送通知
- 支持嘟文右到左文字
- 修复过滤整词功能 - 修复过滤整词功能
- 修复平板不能删除草稿 - 修复平板不能删除草稿

View File

@ -86,6 +86,7 @@
E69EBACE28DF28560057EDEC /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/InfoPlist.strings; sourceTree = "<group>"; }; E69EBACE28DF28560057EDEC /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/InfoPlist.strings; sourceTree = "<group>"; };
E6A4895D293C1F740047951A /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/InfoPlist.strings; sourceTree = "<group>"; }; E6A4895D293C1F740047951A /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/InfoPlist.strings; sourceTree = "<group>"; };
E6C8B26628F5F9FC0062CF2E /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = ja.lproj/InfoPlist.strings; sourceTree = "<group>"; }; E6C8B26628F5F9FC0062CF2E /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = ja.lproj/InfoPlist.strings; sourceTree = "<group>"; };
E6D64C7A294A90840098F3AC /* uk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = uk; path = uk.lproj/InfoPlist.strings; sourceTree = "<group>"; };
ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; };
ED2971642150620600B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS12.0.sdk/System/Library/Frameworks/JavaScriptCore.framework; sourceTree = DEVELOPER_DIR; }; ED2971642150620600B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS12.0.sdk/System/Library/Frameworks/JavaScriptCore.framework; sourceTree = DEVELOPER_DIR; };
/* End PBXFileReference section */ /* End PBXFileReference section */
@ -298,6 +299,7 @@
sv, sv,
nl, nl,
ca, ca,
uk,
); );
mainGroup = 83CBB9F61A601CBA00E9B192; mainGroup = 83CBB9F61A601CBA00E9B192;
productRefGroup = 83CBBA001A601CBA00E9B192 /* Products */; productRefGroup = 83CBBA001A601CBA00E9B192 /* Products */;
@ -530,6 +532,7 @@
E63E7FF0292A828100C76FD4 /* sv */, E63E7FF0292A828100C76FD4 /* sv */,
E6217B7E293C1EBF00B1755E /* nl */, E6217B7E293C1EBF00B1755E /* nl */,
E6A4895D293C1F740047951A /* ca */, E6A4895D293C1F740047951A /* ca */,
E6D64C7A294A90840098F3AC /* uk */,
); );
name = InfoPlist.strings; name = InfoPlist.strings;
sourceTree = "<group>"; sourceTree = "<group>";

View File

@ -0,0 +1,2 @@
"NSPhotoLibraryAddUsageDescription" = "Дозвольте tooot зберігати зображення у вашій папці фотоапарата";
"NSPhotoLibraryUsageDescription" = "Дозвольте tooot зберігати зображення у вашій папці фотоапарата";

View File

@ -93,6 +93,7 @@
"react-redux": "^8.0.5", "react-redux": "^8.0.5",
"redux-persist": "^6.0.0", "redux-persist": "^6.0.0",
"rn-placeholder": "^3.0.3", "rn-placeholder": "^3.0.3",
"rtl-detect": "^1.0.4",
"valid-url": "^1.0.9", "valid-url": "^1.0.9",
"zeego": "^0.5.0" "zeego": "^0.5.0"
}, },

4
src/@types/app.d.ts vendored
View File

@ -8,9 +8,7 @@ declare namespace App {
| 'Hashtag' | 'Hashtag'
| 'List' | 'List'
| 'Toot' | 'Toot'
| 'Account_Default' | 'Account'
| 'Account_All'
| 'Account_Attachments'
| 'Conversations' | 'Conversations'
| 'Bookmarks' | 'Bookmarks'
| 'Favourites' | 'Favourites'

View File

@ -3,6 +3,7 @@ declare module 'htmlparser2-without-node-native'
declare module 'react-native-feather' declare module 'react-native-feather'
declare module 'react-native-htmlview' declare module 'react-native-htmlview'
declare module 'react-native-toast-message' declare module 'react-native-toast-message'
declare module 'rtl-detect'
declare module '@helpers/features' { declare module '@helpers/features' {
const features: { feature: string; version: number; reference?: string }[] const features: { feature: string; version: number; reference?: string }[]

View File

@ -47,9 +47,27 @@ const apiGeneral = async <T = unknown>({
...(body && { data: body }) ...(body && { data: body })
}) })
.then(response => { .then(response => {
return Promise.resolve({ let links: {
body: response.data prev?: { id: string; isOffset: boolean }
}) next?: { id: string; isOffset: boolean }
} = {}
if (response.headers?.link) {
const linksParsed = response.headers.link.matchAll(
new RegExp('[?&](.*?_id|offset)=(.*?)>; *rel="(.*?)"', 'gi')
)
for (const link of linksParsed) {
switch (link[3]) {
case 'prev':
links.prev = { id: link[2], isOffset: link[1].includes('offset') }
break
case 'next':
links.next = { id: link[2], isOffset: link[1].includes('offset') }
break
}
}
}
return Promise.resolve({ body: response.data, links })
}) })
.catch(handleError()) .catch(handleError())
} }

View File

@ -1,6 +1,4 @@
import Icon from '@components/Icon'
import CustomText from '@components/Text' import CustomText from '@components/Text'
import { StyleConstants } from '@utils/styles/constants'
import { useTheme } from '@utils/styles/ThemeManager' import { useTheme } from '@utils/styles/ThemeManager'
import React from 'react' import React from 'react'
import { View } from 'react-native' import { View } from 'react-native'
@ -9,16 +7,10 @@ export interface Props {
content?: string content?: string
inverted?: boolean inverted?: boolean
onPress?: () => void onPress?: () => void
dropdown?: boolean
} }
// Used for Android mostly // Used for Android mostly
const HeaderCenter: React.FC<Props> = ({ const HeaderCenter: React.FC<Props> = ({ content, inverted = false, onPress }) => {
content,
inverted = false,
onPress,
dropdown = false
}) => {
const { colors } = useTheme() const { colors } = useTheme()
return ( return (
@ -33,13 +25,6 @@ const HeaderCenter: React.FC<Props> = ({
children={content} children={content}
{...(onPress && { onPress })} {...(onPress && { onPress })}
/> />
<Icon
name='ChevronDown'
size={StyleConstants.Font.Size.M}
color={colors.primaryDefault}
style={{ marginLeft: StyleConstants.Spacing.XS, opacity: dropdown ? undefined : 0 }}
strokeWidth={3}
/>
</View> </View>
) )
} }

View File

@ -11,6 +11,7 @@ export interface Props {
fill?: string fill?: string
strokeWidth?: number strokeWidth?: number
style?: StyleProp<ViewStyle> style?: StyleProp<ViewStyle>
crossOut?: boolean
} }
const Icon: React.FC<Props> = ({ const Icon: React.FC<Props> = ({
@ -20,7 +21,8 @@ const Icon: React.FC<Props> = ({
color, color,
fill, fill,
strokeWidth = 2, strokeWidth = 2,
style style,
crossOut = false
}) => { }) => {
return ( return (
<View <View
@ -42,6 +44,17 @@ const Icon: React.FC<Props> = ({
fill, fill,
strokeWidth strokeWidth
})} })}
{crossOut ? (
<View
style={{
position: 'absolute',
transform: [{ rotate: '45deg' }],
width: size * 1.35,
borderBottomColor: color,
borderBottomWidth: strokeWidth
}}
/>
) : null}
</View> </View>
) )
} }

View File

@ -13,7 +13,7 @@ import { useTheme } from '@utils/styles/ThemeManager'
import { isEqual } from 'lodash' import { isEqual } from 'lodash'
import React, { useCallback, useState } from 'react' import React, { useCallback, useState } from 'react'
import { useTranslation } from 'react-i18next' import { useTranslation } from 'react-i18next'
import { Platform, Pressable, View } from 'react-native' import { Platform, Pressable, TextStyleIOS, View } from 'react-native'
import HTMLView from 'react-native-htmlview' import HTMLView from 'react-native-htmlview'
import { useSelector } from 'react-redux' import { useSelector } from 'react-redux'
@ -154,6 +154,7 @@ const renderNode = ({
export interface Props { export interface Props {
content: string content: string
size?: 'S' | 'M' | 'L' size?: 'S' | 'M' | 'L'
textStyles?: TextStyleIOS
adaptiveSize?: boolean adaptiveSize?: boolean
emojis?: Mastodon.Emoji[] emojis?: Mastodon.Emoji[]
mentions?: Mastodon.Mention[] mentions?: Mastodon.Mention[]
@ -171,6 +172,7 @@ const ParseHTML = React.memo(
({ ({
content, content,
size = 'M', size = 'M',
textStyles,
adaptiveSize = false, adaptiveSize = false,
emojis, emojis,
mentions, mentions,
@ -196,7 +198,7 @@ const ParseHTML = React.memo(
const navigation = useNavigation<StackNavigationProp<TabLocalStackParamList>>() const navigation = useNavigation<StackNavigationProp<TabLocalStackParamList>>()
const route = useRoute() const route = useRoute()
const { colors, theme } = useTheme() const { colors, theme } = useTheme()
const { t, i18n } = useTranslation('componentParse') const { t } = useTranslation('componentParse')
if (!expandHint) { if (!expandHint) {
expandHint = t('HTML.defaultHint') expandHint = t('HTML.defaultHint')
} }
@ -294,6 +296,7 @@ const ParseHTML = React.memo(
} }
}} }}
style={{ style={{
...textStyles,
height: numberOfLines === 1 && !expanded ? 0 : undefined height: numberOfLines === 1 && !expanded ? 0 : undefined
}} }}
numberOfLines={ numberOfLines={
@ -304,7 +307,7 @@ const ParseHTML = React.memo(
</View> </View>
) )
}, },
[theme, i18n.language] [theme]
) )
return ( return (

View File

@ -30,8 +30,8 @@ const RelationshipOutgoing = React.memo(
haptics('Success') haptics('Success')
queryClient.setQueryData<Mastodon.Relationship[]>(queryKeyRelationship, [res]) queryClient.setQueryData<Mastodon.Relationship[]>(queryKeyRelationship, [res])
if (action === 'block') { if (action === 'block') {
const queryKey: QueryKeyTimeline = ['Timeline', { page: 'Following' }] const queryKey = ['Timeline', { page: 'Following' }]
queryClient.invalidateQueries(queryKey) queryClient.invalidateQueries({ queryKey, exact: false })
} }
}, },
onError: (err: any, { payload: { action } }) => { onError: (err: any, { payload: { action } }) => {

View File

@ -2,7 +2,9 @@ import { ParseHTML } from '@components/Parse'
import { getInstanceAccount } from '@utils/slices/instancesSlice' import { getInstanceAccount } from '@utils/slices/instancesSlice'
import React, { useContext } from 'react' import React, { useContext } from 'react'
import { useTranslation } from 'react-i18next' import { useTranslation } from 'react-i18next'
import { Platform } from 'react-native'
import { useSelector } from 'react-redux' import { useSelector } from 'react-redux'
import { isRtlLang } from 'rtl-detect'
import StatusContext from './Context' import StatusContext from './Context'
export interface Props { export interface Props {
@ -31,6 +33,11 @@ const TimelineContent: React.FC<Props> = ({ notificationOwnToot = false, setSpoi
numberOfLines={999} numberOfLines={999}
highlighted={highlighted} highlighted={highlighted}
disableDetails={disableDetails} disableDetails={disableDetails}
textStyles={
Platform.OS === 'ios' && status.language && isRtlLang(status.language)
? { writingDirection: 'rtl' }
: undefined
}
/> />
<ParseHTML <ParseHTML
content={status.content} content={status.content}
@ -50,6 +57,11 @@ const TimelineContent: React.FC<Props> = ({ notificationOwnToot = false, setSpoi
setSpoilerExpanded={setSpoilerExpanded} setSpoilerExpanded={setSpoilerExpanded}
highlighted={highlighted} highlighted={highlighted}
disableDetails={disableDetails} disableDetails={disableDetails}
textStyles={
Platform.OS === 'ios' && status.language && isRtlLang(status.language)
? { writingDirection: 'rtl' }
: undefined
}
/> />
</> </>
) : ( ) : (
@ -62,6 +74,11 @@ const TimelineContent: React.FC<Props> = ({ notificationOwnToot = false, setSpoi
tags={status.tags} tags={status.tags}
numberOfLines={highlighted || inThread ? 999 : notificationOwnToot ? 2 : undefined} numberOfLines={highlighted || inThread ? 999 : notificationOwnToot ? 2 : undefined}
disableDetails={disableDetails} disableDetails={disableDetails}
textStyles={
Platform.OS === 'ios' && status.language && isRtlLang(status.language)
? { writingDirection: 'rtl' }
: undefined
}
/> />
)} )}
</> </>

View File

@ -37,7 +37,7 @@ const TimelineFeedback = () => {
onPress={() => onPress={() =>
navigation.push('Tab-Shared-Users', { navigation.push('Tab-Shared-Users', {
reference: 'statuses', reference: 'statuses',
id: status.id, status,
type: 'reblogged_by', type: 'reblogged_by',
count: status.reblogs_count count: status.reblogs_count
}) })
@ -59,7 +59,7 @@ const TimelineFeedback = () => {
onPress={() => onPress={() =>
navigation.push('Tab-Shared-Users', { navigation.push('Tab-Shared-Users', {
reference: 'statuses', reference: 'statuses',
id: status.id, status,
type: 'favourited_by', type: 'favourited_by',
count: status.favourites_count count: status.favourites_count
}) })

View File

@ -45,6 +45,7 @@ export const shouldFilter = ({
status: Mastodon.Status status: Mastodon.Status
queryKey: QueryKeyTimeline queryKey: QueryKeyTimeline
}): string | null => { }): string | null => {
const page = queryKey[1]
const instance = getInstance(store.getState()) const instance = getInstance(store.getState())
const ownAccount = getInstanceAccount(store.getState())?.id === status.account?.id const ownAccount = getInstanceAccount(store.getState())?.id === status.account?.id
@ -93,11 +94,11 @@ export const shouldFilter = ({
} }
} }
switch (queryKey[1].page) { switch (page.page) {
case 'Following': case 'Following':
case 'Local': case 'Local':
case 'List': case 'List':
case 'Account_Default': case 'Account':
if (filter.context.includes('home')) { if (filter.context.includes('home')) {
checkFilter(filter) checkFilter(filter)
} }

View File

@ -1,5 +1,4 @@
import menuAccount from '@components/contextMenu/account' import menuAccount from '@components/contextMenu/account'
import menuInstance from '@components/contextMenu/instance'
import menuShare from '@components/contextMenu/share' import menuShare from '@components/contextMenu/share'
import menuStatus from '@components/contextMenu/status' import menuStatus from '@components/contextMenu/status'
import Icon from '@components/Icon' import Icon from '@components/Icon'
@ -31,7 +30,6 @@ const TimelineHeaderAndroid: React.FC = () => {
queryKey queryKey
}) })
const mStatus = menuStatus({ status, queryKey, rootQueryKey }) const mStatus = menuStatus({ status, queryKey, rootQueryKey })
const mInstance = menuInstance({ status, queryKey, rootQueryKey })
return ( return (
<View style={{ position: 'absolute', top: 0, right: 0 }}> <View style={{ position: 'absolute', top: 0, right: 0 }}>
@ -77,16 +75,6 @@ const TimelineHeaderAndroid: React.FC = () => {
))} ))}
</DropdownMenu.Group> </DropdownMenu.Group>
))} ))}
{mInstance.map((mGroup, index) => (
<DropdownMenu.Group key={index}>
{mGroup.map(menu => (
<DropdownMenu.Item key={menu.key} {...menu.item}>
<DropdownMenu.ItemTitle children={menu.title} />
</DropdownMenu.Item>
))}
</DropdownMenu.Group>
))}
</DropdownMenu.Content> </DropdownMenu.Content>
</DropdownMenu.Root> </DropdownMenu.Root>
) : null} ) : null}

View File

@ -1,5 +1,4 @@
import menuAccount from '@components/contextMenu/account' import menuAccount from '@components/contextMenu/account'
import menuInstance from '@components/contextMenu/instance'
import menuShare from '@components/contextMenu/share' import menuShare from '@components/contextMenu/share'
import menuStatus from '@components/contextMenu/status' import menuStatus from '@components/contextMenu/status'
import Icon from '@components/Icon' import Icon from '@components/Icon'
@ -38,7 +37,6 @@ const TimelineHeaderDefault: React.FC = () => {
queryKey queryKey
}) })
const mStatus = menuStatus({ status, queryKey, rootQueryKey }) const mStatus = menuStatus({ status, queryKey, rootQueryKey })
const mInstance = menuInstance({ status, queryKey, rootQueryKey })
return ( return (
<View style={{ flex: 1, flexDirection: 'row' }}> <View style={{ flex: 1, flexDirection: 'row' }}>
@ -116,17 +114,6 @@ const TimelineHeaderDefault: React.FC = () => {
))} ))}
</DropdownMenu.Group> </DropdownMenu.Group>
))} ))}
{mInstance.map((mGroup, index) => (
<DropdownMenu.Group key={index}>
{mGroup.map(menu => (
<DropdownMenu.Item key={menu.key} {...menu.item}>
<DropdownMenu.ItemTitle children={menu.title} />
<DropdownMenu.ItemIcon iosIconName={menu.icon} />
</DropdownMenu.Item>
))}
</DropdownMenu.Group>
))}
</DropdownMenu.Content> </DropdownMenu.Content>
</DropdownMenu.Root> </DropdownMenu.Root>
</Pressable> </Pressable>

View File

@ -33,7 +33,7 @@ const TimelinePoll: React.FC = () => {
const poll = status.poll const poll = status.poll
const { colors, theme } = useTheme() const { colors, theme } = useTheme()
const { t, i18n } = useTranslation('componentTimeline') const { t } = useTranslation('componentTimeline')
const [allOptions, setAllOptions] = useState(new Array(status.poll.options.length).fill(false)) const [allOptions, setAllOptions] = useState(new Array(status.poll.options.length).fill(false))
@ -127,7 +127,7 @@ const TimelinePoll: React.FC = () => {
) )
} }
} }
}, [theme, i18n.language, poll.expired, poll.voted, allOptions, mutation.isLoading]) }, [theme, poll.expired, poll.voted, allOptions, mutation.isLoading])
const isSelected = useCallback( const isSelected = useCallback(
(index: number): string => (index: number): string =>

View File

@ -50,7 +50,7 @@ const menuAccount = ({
setEnabled(true) setEnabled(true)
} }
}, [openChange, enabled]) }, [openChange, enabled])
const { data, isFetching } = useRelationshipQuery({ id: account.id, options: { enabled } }) const { data, isFetched } = useRelationshipQuery({ id: account.id, options: { enabled } })
const queryClient = useQueryClient() const queryClient = useQueryClient()
const timelineMutation = useTimelineMutation({ const timelineMutation = useTimelineMutation({
@ -99,8 +99,8 @@ const menuAccount = ({
haptics('Success') haptics('Success')
queryClient.setQueryData<Mastodon.Relationship[]>(queryKeyRelationship, [res]) queryClient.setQueryData<Mastodon.Relationship[]>(queryKeyRelationship, [res])
if (action === 'block') { if (action === 'block') {
const queryKey: QueryKeyTimeline = ['Timeline', { page: 'Following' }] const queryKey = ['Timeline', { page: 'Following' }]
queryClient.invalidateQueries(queryKey) queryClient.invalidateQueries({ queryKey, exact: false })
} }
}, },
onError: (err: any, { payload: { action } }) => { onError: (err: any, { payload: { action } }) => {
@ -131,7 +131,7 @@ const menuAccount = ({
type: 'outgoing', type: 'outgoing',
payload: { action: 'follow', state: !data?.requested ? data.following : true } payload: { action: 'follow', state: !data?.requested ? data.following : true }
}), }),
disabled: !data || isFetching, disabled: !data || !isFetched,
destructive: false, destructive: false,
hidden: false hidden: false
}, },
@ -152,9 +152,9 @@ const menuAccount = ({
key: 'account-list', key: 'account-list',
item: { item: {
onSelect: () => navigation.navigate('Tab-Shared-Account-In-Lists', { account }), onSelect: () => navigation.navigate('Tab-Shared-Account-In-Lists', { account }),
disabled: Platform.OS !== 'android' ? !data || isFetching : false, disabled: Platform.OS !== 'android' ? !data || !isFetched : false,
destructive: false, destructive: false,
hidden: isFetching ? false : !data?.following hidden: !isFetched || !data?.following
}, },
title: t('account.inLists'), title: t('account.inLists'),
icon: 'checklist' icon: 'checklist'
@ -169,7 +169,7 @@ const menuAccount = ({
id: account.id, id: account.id,
payload: { property: 'mute', currentValue: data?.muting } payload: { property: 'mute', currentValue: data?.muting }
}), }),
disabled: Platform.OS !== 'android' ? !data || isFetching : false, disabled: Platform.OS !== 'android' ? !data || !isFetched : false,
destructive: false, destructive: false,
hidden: false hidden: false
}, },
@ -192,7 +192,7 @@ const menuAccount = ({
id: account.id, id: account.id,
payload: { property: 'block', currentValue: data?.blocking } payload: { property: 'block', currentValue: data?.blocking }
}), }),
disabled: Platform.OS !== 'android' ? !data || isFetching : false, disabled: Platform.OS !== 'android' ? !data || !isFetched : false,
destructive: !data?.blocking, destructive: !data?.blocking,
hidden: false hidden: false
}, },

View File

@ -5,6 +5,7 @@
"cancel": "Cancel·la", "cancel": "Cancel·la",
"discard": "Descarta", "discard": "Descarta",
"continue": "Continua", "continue": "Continua",
"create": "Crea",
"delete": "Esborra", "delete": "Esborra",
"done": "Fet" "done": "Fet"
}, },

View File

@ -1,7 +1,7 @@
{ {
"server": { "server": {
"textInput": { "textInput": {
"placeholder": "Domini de la instància" "placeholder": ""
}, },
"button": "Inicia la sessió", "button": "Inicia la sessió",
"information": { "information": {

View File

@ -30,7 +30,9 @@
"default": "{{name}} ha impulsat", "default": "{{name}} ha impulsat",
"notification": "{{name}} ha impulsat la teva publicació" "notification": "{{name}} ha impulsat la teva publicació"
}, },
"update": "L'impuls ha sigut editat" "update": "L'impuls ha sigut editat",
"admin.sign_up": "",
"admin.report": ""
}, },
"actions": { "actions": {
"reply": { "reply": {
@ -52,7 +54,8 @@
"bookmarked": { "bookmarked": {
"accessibilityLabel": "Afegeix aquesta publicació a marcadors", "accessibilityLabel": "Afegeix aquesta publicació a marcadors",
"function": "Afegeix la publicació a marcadors" "function": "Afegeix la publicació a marcadors"
} },
"openReport": ""
}, },
"actionsUsers": { "actionsUsers": {
"reblogged_by": { "reblogged_by": {

View File

@ -2,19 +2,6 @@
"content": { "content": {
"altText": { "altText": {
"heading": "Text alternatiu" "heading": "Text alternatiu"
},
"notificationsFilter": {
"heading": "Mostra els tipus de notificació",
"content": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "Sol·licitud de seguiment",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "Publicació d'usuaris subscrits",
"update": "L'impuls ha sigut editat"
}
} }
} }
} }

View File

@ -1,13 +1,11 @@
{ {
"heading": { "heading": {
"left": { "left": {
"button": "Cancel·la",
"alert": { "alert": {
"title": "Voleu cancel·lar l'edició?", "title": "Voleu cancel·lar l'edició?",
"buttons": { "buttons": {
"save": "Desa l'esborrany", "save": "Desa l'esborrany",
"delete": "Esborra l'esborrany", "delete": "Esborra l'esborrany"
"cancel": "Cancel·la"
} }
} }
}, },

View File

@ -1,20 +1,21 @@
{ {
"tabs": { "tabs": {
"local": { "local": {
"name": "Seguint" "name": "Seguint",
"options": {
"showBoosts": "",
"showReplies": ""
}
}, },
"public": { "public": {
"name": "",
"segments": { "segments": {
"left": "Federat", "federated": "Federat",
"right": "Local" "local": "Local",
"trending": "En tendència"
} }
}, },
"notifications": { "notifications": {
"name": "Notificacions" "name": "Notificacions"
},
"me": {
"name": "Sobre mi"
} }
}, },
"common": { "common": {
@ -24,9 +25,22 @@
} }
}, },
"notifications": { "notifications": {
"filter": { "filters": {
"accessibilityLabel": "Filtra", "accessibilityLabel": "Filtra",
"accessibilityHint": "Filtra els tipus de notificacions" "accessibilityHint": "Filtra els tipus de notificacions",
"title": "Mostra les notificacions",
"options": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "Sol·licitud de seguiment",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "Publicació d'usuaris subscrits",
"update": "L'impuls ha sigut editat",
"admin.sign_up": "$t(screenTabs:me.push.admin.sign_up.heading)",
"admin.report": "$t(screenTabs:me.push.admin.report.heading)"
}
} }
}, },
"me": { "me": {
@ -40,6 +54,9 @@
"favourites": { "favourites": {
"name": "Favorits" "name": "Favorits"
}, },
"followedTags": {
"name": "Etiquetes seguides"
},
"fontSize": { "fontSize": {
"name": "Mida de la font de la publicació" "name": "Mida de la font de la publicació"
}, },
@ -53,7 +70,7 @@
"name": "Usuaris a la llista: {{list}}" "name": "Usuaris a la llista: {{list}}"
}, },
"listAdd": { "listAdd": {
"name": "Afegeix a la llista" "name": "Crea una llista"
}, },
"listEdit": { "listEdit": {
"name": "Edita els detalls de la llista" "name": "Edita els detalls de la llista"
@ -179,8 +196,8 @@
"settings": "Activa'ls a la configuració" "settings": "Activa'ls a la configuració"
}, },
"missingServerKey": { "missingServerKey": {
"message": "", "message": "Servidor mal configurat per a les notificacions push",
"description": "" "description": "Si us plau, contacta amb l'administrador del teu servidor per a configurar el suport de notificacions push"
}, },
"global": { "global": {
"heading": "Activa per {{acct}}", "heading": "Activa per {{acct}}",
@ -214,6 +231,12 @@
"status": { "status": {
"heading": "Publicació d'usuaris subscrits" "heading": "Publicació d'usuaris subscrits"
}, },
"admin.sign_up": {
"heading": "Administració: Registra"
},
"admin.report": {
"heading": "Administració: denúncies"
},
"howitworks": "Aprèn com funciona" "howitworks": "Aprèn com funciona"
}, },
"root": { "root": {
@ -225,10 +248,8 @@
} }
}, },
"push": { "push": {
"content": { "content_true": "Habilitat",
"enabled": "Habilitat", "content_false": "Deshabilitat"
"disabled": "Deshabilitat"
}
}, },
"update": { "update": {
"title": "Actualitza a la última versió" "title": "Actualitza a la última versió"
@ -290,9 +311,6 @@
"support": { "support": {
"heading": "Dona suport al tooot" "heading": "Dona suport al tooot"
}, },
"review": {
"heading": "Valora al tooot"
},
"contact": { "contact": {
"heading": "Contacta al tooot" "heading": "Contacta al tooot"
}, },
@ -330,7 +348,7 @@
"notInLists": "Altres llistes" "notInLists": "Altres llistes"
}, },
"attachments": { "attachments": {
"name": "Multimèdia de <0 /><1></1>" "name": ""
}, },
"hashtag": { "hashtag": {
"follow": "Segueix", "follow": "Segueix",

View File

@ -5,6 +5,7 @@
"cancel": "", "cancel": "",
"discard": "", "discard": "",
"continue": "", "continue": "",
"create": "",
"delete": "", "delete": "",
"done": "" "done": ""
}, },

View File

@ -30,7 +30,9 @@
"default": "", "default": "",
"notification": "" "notification": ""
}, },
"update": "" "update": "",
"admin.sign_up": "",
"admin.report": ""
}, },
"actions": { "actions": {
"reply": { "reply": {
@ -52,7 +54,8 @@
"bookmarked": { "bookmarked": {
"accessibilityLabel": "", "accessibilityLabel": "",
"function": "" "function": ""
} },
"openReport": ""
}, },
"actionsUsers": { "actionsUsers": {
"reblogged_by": { "reblogged_by": {

View File

@ -2,19 +2,6 @@
"content": { "content": {
"altText": { "altText": {
"heading": "" "heading": ""
},
"notificationsFilter": {
"heading": "",
"content": {
"follow": "",
"follow_request": "",
"favourite": "",
"reblog": "",
"mention": "",
"poll": "",
"status": "",
"update": ""
}
} }
} }
} }

View File

@ -1,13 +1,11 @@
{ {
"heading": { "heading": {
"left": { "left": {
"button": "",
"alert": { "alert": {
"title": "", "title": "",
"buttons": { "buttons": {
"save": "", "save": "",
"delete": "", "delete": ""
"cancel": ""
} }
} }
}, },

View File

@ -1,20 +1,21 @@
{ {
"tabs": { "tabs": {
"local": { "local": {
"name": "" "name": "",
"options": {
"showBoosts": "",
"showReplies": ""
}
}, },
"public": { "public": {
"name": "",
"segments": { "segments": {
"left": "", "federated": "",
"right": "" "local": "",
"trending": ""
} }
}, },
"notifications": { "notifications": {
"name": "" "name": ""
},
"me": {
"name": ""
} }
}, },
"common": { "common": {
@ -24,9 +25,22 @@
} }
}, },
"notifications": { "notifications": {
"filter": { "filters": {
"accessibilityLabel": "", "accessibilityLabel": "",
"accessibilityHint": "" "accessibilityHint": "",
"title": "",
"options": {
"follow": "",
"follow_request": "",
"favourite": "",
"reblog": "",
"mention": "",
"poll": "",
"status": "",
"update": "",
"admin.sign_up": "",
"admin.report": ""
}
} }
}, },
"me": { "me": {
@ -40,6 +54,9 @@
"favourites": { "favourites": {
"name": "" "name": ""
}, },
"followedTags": {
"name": ""
},
"fontSize": { "fontSize": {
"name": "" "name": ""
}, },
@ -214,6 +231,12 @@
"status": { "status": {
"heading": "" "heading": ""
}, },
"admin.sign_up": {
"heading": ""
},
"admin.report": {
"heading": ""
},
"howitworks": "" "howitworks": ""
}, },
"root": { "root": {
@ -225,10 +248,8 @@
} }
}, },
"push": { "push": {
"content": { "content_true": "",
"enabled": "", "content_false": ""
"disabled": ""
}
}, },
"update": { "update": {
"title": "" "title": ""
@ -290,9 +311,6 @@
"support": { "support": {
"heading": "" "heading": ""
}, },
"review": {
"heading": ""
},
"contact": { "contact": {
"heading": "" "heading": ""
}, },

View File

@ -5,8 +5,9 @@
"cancel": "Abbrechen", "cancel": "Abbrechen",
"discard": "Abbrechen", "discard": "Abbrechen",
"continue": "Weiter", "continue": "Weiter",
"create": "Erstellen",
"delete": "Löschen", "delete": "Löschen",
"done": "" "done": "Fertig"
}, },
"customEmoji": { "customEmoji": {
"accessibilityLabel": "Eigenes Emoji {{emoji}}" "accessibilityLabel": "Eigenes Emoji {{emoji}}"

View File

@ -6,7 +6,7 @@
"action_false": "Folgen", "action_false": "Folgen",
"action_true": "Nutzer entfolgen" "action_true": "Nutzer entfolgen"
}, },
"inLists": "", "inLists": "Konten in Listen verwalten",
"mute": { "mute": {
"action_false": "Profil stummschalten", "action_false": "Profil stummschalten",
"action_true": "Stummschaltung des Nutzers aufheben" "action_true": "Stummschaltung des Nutzers aufheben"

View File

@ -1,7 +1,7 @@
{ {
"server": { "server": {
"textInput": { "textInput": {
"placeholder": "Instanz" "placeholder": "Domain der Instanz"
}, },
"button": "Login", "button": "Login",
"information": { "information": {

View File

@ -30,7 +30,9 @@
"default": "{{name}} hat geboostet", "default": "{{name}} hat geboostet",
"notification": "{{name}} hat deinen Tröt geboostet" "notification": "{{name}} hat deinen Tröt geboostet"
}, },
"update": "Boost wurde bearbeitet" "update": "Boost wurde bearbeitet",
"admin.sign_up": "{{name}} ist der Instanz beigetreten",
"admin.report": "{{name}} hat gemeldet:"
}, },
"actions": { "actions": {
"reply": { "reply": {
@ -42,7 +44,7 @@
"options": { "options": {
"title": "Boost-Sichtbarkeit ändern", "title": "Boost-Sichtbarkeit ändern",
"public": "Öffentlicher Boost", "public": "Öffentlicher Boost",
"unlisted": "Boost entfernen" "unlisted": "Privater Boost"
} }
}, },
"favourited": { "favourited": {
@ -52,7 +54,8 @@
"bookmarked": { "bookmarked": {
"accessibilityLabel": "Lesezeichen hinzufügen", "accessibilityLabel": "Lesezeichen hinzufügen",
"function": "Lesezeichen setzen" "function": "Lesezeichen setzen"
} },
"openReport": ""
}, },
"actionsUsers": { "actionsUsers": {
"reblogged_by": { "reblogged_by": {

View File

@ -2,19 +2,6 @@
"content": { "content": {
"altText": { "altText": {
"heading": "Alternativtext" "heading": "Alternativtext"
},
"notificationsFilter": {
"heading": "Benachrichtigungsart anzeigen",
"content": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "Followeranfrage",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "Tröt eines abonnierten Nutzers",
"update": "Boost wurde bearbeitet"
}
} }
} }
} }

View File

@ -1,13 +1,11 @@
{ {
"heading": { "heading": {
"left": { "left": {
"button": "Abbrechen",
"alert": { "alert": {
"title": "Bearbeitung abbrechen?", "title": "Bearbeitung abbrechen?",
"buttons": { "buttons": {
"save": "Entwurf speichern", "save": "Entwurf speichern",
"delete": "Entwurf löschen", "delete": "Entwurf löschen"
"cancel": "Abbrechen"
} }
} }
}, },

View File

@ -1,20 +1,21 @@
{ {
"tabs": { "tabs": {
"local": { "local": {
"name": "Gefolgt" "name": "Gefolgt",
"options": {
"showBoosts": "",
"showReplies": ""
}
}, },
"public": { "public": {
"name": "",
"segments": { "segments": {
"left": "Föderiert", "federated": "Föderiert",
"right": "Lokal" "local": "Lokal",
"trending": "Im Trend"
} }
}, },
"notifications": { "notifications": {
"name": "Benachrichtigungen" "name": "Benachrichtigungen"
},
"me": {
"name": "Über mich"
} }
}, },
"common": { "common": {
@ -24,9 +25,22 @@
} }
}, },
"notifications": { "notifications": {
"filter": { "filters": {
"accessibilityLabel": "Filter", "accessibilityLabel": "Filter",
"accessibilityHint": "Angezeigte Benachrichtigungstypen filtern" "accessibilityHint": "Angezeigte Benachrichtigungstypen filtern",
"title": "Benachrichtigungen anzeigen",
"options": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "Followeranfrage",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "Tröt eines abonnierten Nutzers",
"update": "Boost wurde bearbeitet",
"admin.sign_up": "$t(screenTabs:me.push.admin.sign_up.heading)",
"admin.report": "$t(screenTabs:me.push.admin.report.heading)"
}
} }
}, },
"me": { "me": {
@ -40,6 +54,9 @@
"favourites": { "favourites": {
"name": "Favoriten" "name": "Favoriten"
}, },
"followedTags": {
"name": "Abonnierte Hashtags"
},
"fontSize": { "fontSize": {
"name": "Schriftgröße" "name": "Schriftgröße"
}, },
@ -53,7 +70,7 @@
"name": "Benutzer in dieser Liste: {{list}}" "name": "Benutzer in dieser Liste: {{list}}"
}, },
"listAdd": { "listAdd": {
"name": "Eine Liste hinzufügen" "name": "Eine Liste erstellen"
}, },
"listEdit": { "listEdit": {
"name": "Listendetails bearbeiten" "name": "Listendetails bearbeiten"
@ -179,8 +196,8 @@
"settings": "In den Einstellungen aktivieren" "settings": "In den Einstellungen aktivieren"
}, },
"missingServerKey": { "missingServerKey": {
"message": "", "message": "Server ist nicht für Push-Benachrichtigungen konfiguriert",
"description": "" "description": "Bitte kontaktiere den Administrator deiner Instanz, um Push-Benachrichtigungen zu ermöglichen"
}, },
"global": { "global": {
"heading": "Aktivieren für {{acct}}", "heading": "Aktivieren für {{acct}}",
@ -214,6 +231,12 @@
"status": { "status": {
"heading": "Toot eines abonnierten Nutzers" "heading": "Toot eines abonnierten Nutzers"
}, },
"admin.sign_up": {
"heading": "Admin: Registrierung"
},
"admin.report": {
"heading": "Admin: Meldungen"
},
"howitworks": "Erfahre, wie das Routing funktioniert" "howitworks": "Erfahre, wie das Routing funktioniert"
}, },
"root": { "root": {
@ -225,10 +248,8 @@
} }
}, },
"push": { "push": {
"content": { "content_true": "Aktiviert",
"enabled": "Aktiviert", "content_false": "Deaktiviert"
"disabled": "Deaktiviert"
}
}, },
"update": { "update": {
"title": "Auf neueste Version aktualisiert" "title": "Auf neueste Version aktualisiert"
@ -290,9 +311,6 @@
"support": { "support": {
"heading": "Unterstütze Tooot" "heading": "Unterstütze Tooot"
}, },
"review": {
"heading": "Tooot überprüfen"
},
"contact": { "contact": {
"heading": "Nimm Kontakt mit tooot auf" "heading": "Nimm Kontakt mit tooot auf"
}, },
@ -325,12 +343,12 @@
"suspended": "Konto wurde von den Instanzmoderation gesperrt" "suspended": "Konto wurde von den Instanzmoderation gesperrt"
}, },
"accountInLists": { "accountInLists": {
"name": "", "name": "Listen, in denen @{{username}} aufgeführt ist",
"inLists": "", "inLists": "In Listen",
"notInLists": "" "notInLists": "Andere Listen"
}, },
"attachments": { "attachments": {
"name": "<0 /><1>\"s Medien</1>" "name": "<0 /><1>'s Medien</1>"
}, },
"hashtag": { "hashtag": {
"follow": "Folgen", "follow": "Folgen",

View File

@ -1,7 +1,11 @@
{ {
"tabs": { "tabs": {
"local": { "local": {
"name": "Following" "name": "Following",
"options": {
"showBoosts": "Show boosts",
"showReplies": "Show replies"
}
}, },
"public": { "public": {
"segments": { "segments": {
@ -391,7 +395,8 @@
"statuses": { "statuses": {
"reblogged_by": "{{count}} boosted", "reblogged_by": "{{count}} boosted",
"favourited_by": "{{count}} favourited" "favourited_by": "{{count}} favourited"
} },
"resultIncomplete": "Results from a remote instance is incomplete"
} }
} }
} }

View File

@ -5,6 +5,7 @@
"cancel": "Cancelar", "cancel": "Cancelar",
"discard": "Descartar", "discard": "Descartar",
"continue": "Continuar", "continue": "Continuar",
"create": "Crear",
"delete": "Borrar", "delete": "Borrar",
"done": "Hecho" "done": "Hecho"
}, },

View File

@ -1,7 +1,7 @@
{ {
"server": { "server": {
"textInput": { "textInput": {
"placeholder": "Dominio de la instancia" "placeholder": ""
}, },
"button": "Iniciar sesión", "button": "Iniciar sesión",
"information": { "information": {

View File

@ -30,7 +30,9 @@
"default": "{{name}} ha impulsado", "default": "{{name}} ha impulsado",
"notification": "{{name}} ha impulsado tu toot" "notification": "{{name}} ha impulsado tu toot"
}, },
"update": "El impulso ha sido editado" "update": "El impulso ha sido editado",
"admin.sign_up": "",
"admin.report": ""
}, },
"actions": { "actions": {
"reply": { "reply": {
@ -52,7 +54,8 @@
"bookmarked": { "bookmarked": {
"accessibilityLabel": "Añadir este toot en marcadores", "accessibilityLabel": "Añadir este toot en marcadores",
"function": "Añadir toot a marcadores" "function": "Añadir toot a marcadores"
} },
"openReport": ""
}, },
"actionsUsers": { "actionsUsers": {
"reblogged_by": { "reblogged_by": {

View File

@ -2,19 +2,6 @@
"content": { "content": {
"altText": { "altText": {
"heading": "Texto alternativo" "heading": "Texto alternativo"
},
"notificationsFilter": {
"heading": "Mostrar tipos de notificación",
"content": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "Solicitud de seguimiento",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "Toot de usuarios suscritos",
"update": "El impulso ha sido editado"
}
} }
} }
} }

View File

@ -1,13 +1,11 @@
{ {
"heading": { "heading": {
"left": { "left": {
"button": "Cancelar",
"alert": { "alert": {
"title": "¿Cancelar edición?", "title": "¿Cancelar edición?",
"buttons": { "buttons": {
"save": "Guardar borrador", "save": "Guardar borrador",
"delete": "Eliminar borrador", "delete": "Eliminar borrador"
"cancel": "Cancelar"
} }
} }
}, },

View File

@ -1,20 +1,21 @@
{ {
"tabs": { "tabs": {
"local": { "local": {
"name": "Siguiendo" "name": "Siguiendo",
"options": {
"showBoosts": "",
"showReplies": ""
}
}, },
"public": { "public": {
"name": "",
"segments": { "segments": {
"left": "Federado", "federated": "Federado",
"right": "Local" "local": "Local",
"trending": "En tendencia"
} }
}, },
"notifications": { "notifications": {
"name": "Notificaciones" "name": "Notificaciones"
},
"me": {
"name": "Sobre mí"
} }
}, },
"common": { "common": {
@ -24,9 +25,22 @@
} }
}, },
"notifications": { "notifications": {
"filter": { "filters": {
"accessibilityLabel": "Filtrar", "accessibilityLabel": "Filtrar",
"accessibilityHint": "Filtrar tipos de notificación" "accessibilityHint": "Filtrar tipos de notificación",
"title": "Mostrar las notificaciones",
"options": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "Solicitud de seguimiento",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "Toot de usuarios suscritos",
"update": "El impulso ha sido editado",
"admin.sign_up": "$t(screenTabs:me.push.admin.sign_up.heading)",
"admin.report": "$t(screenTabs:me.push.admin.report.heading)"
}
} }
}, },
"me": { "me": {
@ -40,6 +54,9 @@
"favourites": { "favourites": {
"name": "Favoritos" "name": "Favoritos"
}, },
"followedTags": {
"name": "Hashtags seguidos"
},
"fontSize": { "fontSize": {
"name": "Tamaño de fuente" "name": "Tamaño de fuente"
}, },
@ -53,7 +70,7 @@
"name": "Usuarios en la lista: {{list}}" "name": "Usuarios en la lista: {{list}}"
}, },
"listAdd": { "listAdd": {
"name": "Añadir una lista" "name": "Crea una lista"
}, },
"listEdit": { "listEdit": {
"name": "Editar detalles de lista" "name": "Editar detalles de lista"
@ -179,8 +196,8 @@
"settings": "Activar en Ajustes" "settings": "Activar en Ajustes"
}, },
"missingServerKey": { "missingServerKey": {
"message": "", "message": "Servidor mal configurado para las notificaciones push",
"description": "" "description": "Por favor, contacte con el administrador de su servidor para configurar el soporte de notificaciones push"
}, },
"global": { "global": {
"heading": "Habilitar para {{acct}}", "heading": "Habilitar para {{acct}}",
@ -214,6 +231,12 @@
"status": { "status": {
"heading": "Toot de usuarios suscritos" "heading": "Toot de usuarios suscritos"
}, },
"admin.sign_up": {
"heading": "Administración: Registrarse"
},
"admin.report": {
"heading": "Administración: denuncias"
},
"howitworks": "Más información sobre las notificaciones push" "howitworks": "Más información sobre las notificaciones push"
}, },
"root": { "root": {
@ -225,10 +248,8 @@
} }
}, },
"push": { "push": {
"content": { "content_true": "Habilitado",
"enabled": "Habilitado", "content_false": "Deshabilitado"
"disabled": "Deshabilitado"
}
}, },
"update": { "update": {
"title": "Actualizar a la última versión" "title": "Actualizar a la última versión"
@ -290,9 +311,6 @@
"support": { "support": {
"heading": "Apoyar tooot" "heading": "Apoyar tooot"
}, },
"review": {
"heading": "Valorar tooot"
},
"contact": { "contact": {
"heading": "Contactar tooot" "heading": "Contactar tooot"
}, },
@ -330,7 +348,7 @@
"notInLists": "Otras listas" "notInLists": "Otras listas"
}, },
"attachments": { "attachments": {
"name": "Multimedia de <0 /><1></1>" "name": ""
}, },
"hashtag": { "hashtag": {
"follow": "Seguir", "follow": "Seguir",

View File

@ -3,8 +3,9 @@
"OK": "Ok", "OK": "Ok",
"apply": "Confirmer", "apply": "Confirmer",
"cancel": "Annuler", "cancel": "Annuler",
"discard": "", "discard": "Ne pas tenir compte",
"continue": "", "continue": "Continuer",
"create": "",
"delete": "", "delete": "",
"done": "" "done": ""
}, },
@ -24,7 +25,7 @@
}, },
"separator": ", ", "separator": ", ",
"discard": { "discard": {
"title": "", "title": "Modifications non sauvegardées",
"message": "" "message": "Votre modification n'a pas été enregistrée. Voulez-vous annuler l'enregistrement des modifications ?"
} }
} }

View File

@ -3,7 +3,7 @@
"account": { "account": {
"title": "Actions de l'utilisateur", "title": "Actions de l'utilisateur",
"following": { "following": {
"action_false": "", "action_false": "Suivre l'utilisateur",
"action_true": "" "action_true": ""
}, },
"inLists": "", "inLists": "",
@ -20,7 +20,7 @@
} }
}, },
"at": { "at": {
"direct": "", "direct": "Message direct",
"public": "" "public": ""
}, },
"copy": { "copy": {

View File

@ -1,7 +1,7 @@
{ {
"server": { "server": {
"textInput": { "textInput": {
"placeholder": "Domaine d'instance" "placeholder": ""
}, },
"button": "Connexion", "button": "Connexion",
"information": { "information": {

View File

@ -30,7 +30,9 @@
"default": "{{name}} a partagé", "default": "{{name}} a partagé",
"notification": "{{name}} a partagé votre message" "notification": "{{name}} a partagé votre message"
}, },
"update": "Le reblog a été modifié" "update": "Le reblog a été modifié",
"admin.sign_up": "",
"admin.report": ""
}, },
"actions": { "actions": {
"reply": { "reply": {
@ -52,7 +54,8 @@
"bookmarked": { "bookmarked": {
"accessibilityLabel": "Ajouter ce pouet aux signets", "accessibilityLabel": "Ajouter ce pouet aux signets",
"function": "Pouet de signet" "function": "Pouet de signet"
} },
"openReport": ""
}, },
"actionsUsers": { "actionsUsers": {
"reblogged_by": { "reblogged_by": {

View File

@ -2,19 +2,6 @@
"content": { "content": {
"altText": { "altText": {
"heading": "Texte de remplacement" "heading": "Texte de remplacement"
},
"notificationsFilter": {
"heading": "Afficher les notifications",
"content": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "Demande d'abonnement",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "Pouet des utilisateurs abonnés",
"update": "Le reblog a été modifié"
}
} }
} }
} }

View File

@ -1,13 +1,11 @@
{ {
"heading": { "heading": {
"left": { "left": {
"button": "Abandonner",
"alert": { "alert": {
"title": "Annuler lédition?", "title": "Annuler lédition?",
"buttons": { "buttons": {
"save": "Enregistrer comme brouillon", "save": "Enregistrer comme brouillon",
"delete": "Supprimer le brouillon", "delete": "Supprimer le brouillon"
"cancel": "Abandonner"
} }
} }
}, },

View File

@ -1,20 +1,21 @@
{ {
"tabs": { "tabs": {
"local": { "local": {
"name": "Suit" "name": "Suit",
"options": {
"showBoosts": "",
"showReplies": ""
}
}, },
"public": { "public": {
"name": "",
"segments": { "segments": {
"left": "Fédéré", "federated": "Fédéré",
"right": "Local" "local": "Local",
"trending": ""
} }
}, },
"notifications": { "notifications": {
"name": "Notifications" "name": "Notifications"
},
"me": {
"name": "À propos de moi"
} }
}, },
"common": { "common": {
@ -24,9 +25,22 @@
} }
}, },
"notifications": { "notifications": {
"filter": { "filters": {
"accessibilityLabel": "Filtrer", "accessibilityLabel": "Filtrer",
"accessibilityHint": "Filtrer les types de notifications affichés" "accessibilityHint": "Filtrer les types de notifications affichés",
"title": "",
"options": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "Demande d'abonnement",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "Pouet des utilisateurs inscrits",
"update": "Le reblog a été modifié",
"admin.sign_up": "$t(screenTabs:me.push.admin.sign_up.heading)",
"admin.report": "$t(screenTabs:me.push.admin.report.heading)"
}
} }
}, },
"me": { "me": {
@ -40,6 +54,9 @@
"favourites": { "favourites": {
"name": "Favoris" "name": "Favoris"
}, },
"followedTags": {
"name": ""
},
"fontSize": { "fontSize": {
"name": "Taille de la police de Pouet" "name": "Taille de la police de Pouet"
}, },
@ -214,6 +231,12 @@
"status": { "status": {
"heading": "Pouet des utilisateurs inscrits" "heading": "Pouet des utilisateurs inscrits"
}, },
"admin.sign_up": {
"heading": ""
},
"admin.report": {
"heading": ""
},
"howitworks": "Apprenez comment cela fonctionne" "howitworks": "Apprenez comment cela fonctionne"
}, },
"root": { "root": {
@ -225,10 +248,8 @@
} }
}, },
"push": { "push": {
"content": { "content_true": "Activé",
"enabled": "Activé", "content_false": "Désactivé"
"disabled": "Désactivé"
}
}, },
"update": { "update": {
"title": "Mettre à jour vers la dernière version" "title": "Mettre à jour vers la dernière version"
@ -290,9 +311,6 @@
"support": { "support": {
"heading": "Support de tooot" "heading": "Support de tooot"
}, },
"review": {
"heading": "Examiner le tooot"
},
"contact": { "contact": {
"heading": "Contacter tooot" "heading": "Contacter tooot"
}, },
@ -330,7 +348,7 @@
"notInLists": "" "notInLists": ""
}, },
"attachments": { "attachments": {
"name": "<0 /><1>\"s media</1>" "name": ""
}, },
"hashtag": { "hashtag": {
"follow": "Suivre", "follow": "Suivre",

View File

@ -12,6 +12,7 @@ import ko from '@root/i18n/ko'
import nl from '@root/i18n/nl' import nl from '@root/i18n/nl'
import pt_BR from '@root/i18n/pt_BR' import pt_BR from '@root/i18n/pt_BR'
import sv from '@root/i18n/sv' import sv from '@root/i18n/sv'
import uk from '@root/i18n/uk'
import vi from '@root/i18n/vi' import vi from '@root/i18n/vi'
import zh_Hans from '@root/i18n/zh-Hans' import zh_Hans from '@root/i18n/zh-Hans'
import zh_Hant from '@root/i18n/zh-Hant' import zh_Hant from '@root/i18n/zh-Hant'
@ -31,6 +32,7 @@ import '@formatjs/intl-pluralrules/locale-data/ko'
import '@formatjs/intl-pluralrules/locale-data/nl' import '@formatjs/intl-pluralrules/locale-data/nl'
import '@formatjs/intl-pluralrules/locale-data/pt' import '@formatjs/intl-pluralrules/locale-data/pt'
import '@formatjs/intl-pluralrules/locale-data/sv' import '@formatjs/intl-pluralrules/locale-data/sv'
import '@formatjs/intl-pluralrules/locale-data/uk'
import '@formatjs/intl-pluralrules/locale-data/vi' import '@formatjs/intl-pluralrules/locale-data/vi'
import '@formatjs/intl-pluralrules/locale-data/zh' import '@formatjs/intl-pluralrules/locale-data/zh'
@ -46,6 +48,7 @@ import '@formatjs/intl-numberformat/locale-data/ko'
import '@formatjs/intl-numberformat/locale-data/nl' import '@formatjs/intl-numberformat/locale-data/nl'
import '@formatjs/intl-numberformat/locale-data/pt' import '@formatjs/intl-numberformat/locale-data/pt'
import '@formatjs/intl-numberformat/locale-data/sv' import '@formatjs/intl-numberformat/locale-data/sv'
import '@formatjs/intl-numberformat/locale-data/uk'
import '@formatjs/intl-numberformat/locale-data/vi' import '@formatjs/intl-numberformat/locale-data/vi'
import '@formatjs/intl-numberformat/locale-data/zh-Hans' import '@formatjs/intl-numberformat/locale-data/zh-Hans'
import '@formatjs/intl-numberformat/locale-data/zh-Hant' import '@formatjs/intl-numberformat/locale-data/zh-Hant'
@ -62,6 +65,7 @@ import '@formatjs/intl-datetimeformat/locale-data/ko'
import '@formatjs/intl-datetimeformat/locale-data/nl' import '@formatjs/intl-datetimeformat/locale-data/nl'
import '@formatjs/intl-datetimeformat/locale-data/pt' import '@formatjs/intl-datetimeformat/locale-data/pt'
import '@formatjs/intl-datetimeformat/locale-data/sv' import '@formatjs/intl-datetimeformat/locale-data/sv'
import '@formatjs/intl-datetimeformat/locale-data/uk'
import '@formatjs/intl-datetimeformat/locale-data/vi' import '@formatjs/intl-datetimeformat/locale-data/vi'
import '@formatjs/intl-datetimeformat/locale-data/zh-Hans' import '@formatjs/intl-datetimeformat/locale-data/zh-Hans'
import '@formatjs/intl-datetimeformat/locale-data/zh-Hant' import '@formatjs/intl-datetimeformat/locale-data/zh-Hant'
@ -79,6 +83,7 @@ import '@formatjs/intl-relativetimeformat/locale-data/ko'
import '@formatjs/intl-relativetimeformat/locale-data/nl' import '@formatjs/intl-relativetimeformat/locale-data/nl'
import '@formatjs/intl-relativetimeformat/locale-data/pt' import '@formatjs/intl-relativetimeformat/locale-data/pt'
import '@formatjs/intl-relativetimeformat/locale-data/sv' import '@formatjs/intl-relativetimeformat/locale-data/sv'
import '@formatjs/intl-relativetimeformat/locale-data/uk'
import '@formatjs/intl-relativetimeformat/locale-data/vi' import '@formatjs/intl-relativetimeformat/locale-data/vi'
import '@formatjs/intl-relativetimeformat/locale-data/zh-Hans' import '@formatjs/intl-relativetimeformat/locale-data/zh-Hans'
import '@formatjs/intl-relativetimeformat/locale-data/zh-Hant' import '@formatjs/intl-relativetimeformat/locale-data/zh-Hant'
@ -102,6 +107,7 @@ i18n.use(initReactI18next).init({
nl, nl,
'pt-BR': pt_BR, 'pt-BR': pt_BR,
sv, sv,
uk,
vi, vi,
'zh-Hans': zh_Hans, 'zh-Hans': zh_Hans,
'zh-Hant': zh_Hant 'zh-Hant': zh_Hant

View File

@ -3,8 +3,9 @@
"OK": "OK", "OK": "OK",
"apply": "Applica", "apply": "Applica",
"cancel": "Annulla", "cancel": "Annulla",
"discard": "", "discard": "Scarta",
"continue": "", "continue": "Continua",
"create": "",
"delete": "", "delete": "",
"done": "" "done": ""
}, },
@ -24,7 +25,7 @@
}, },
"separator": ", ", "separator": ", ",
"discard": { "discard": {
"title": "", "title": "Modifiche non salvate",
"message": "" "message": "Le tue modifiche non sono state salvate. Vuoi scartarle?"
} }
} }

View File

@ -3,7 +3,7 @@
"account": { "account": {
"title": "Azioni utente", "title": "Azioni utente",
"following": { "following": {
"action_false": "", "action_false": "Segui utente",
"action_true": "" "action_true": ""
}, },
"inLists": "", "inLists": "",
@ -20,7 +20,7 @@
} }
}, },
"at": { "at": {
"direct": "", "direct": "Messaggio diretto",
"public": "" "public": ""
}, },
"copy": { "copy": {

View File

@ -1,7 +1,7 @@
{ {
"server": { "server": {
"textInput": { "textInput": {
"placeholder": "Dominio dell'istanza" "placeholder": ""
}, },
"button": "Accedi", "button": "Accedi",
"information": { "information": {

View File

@ -30,7 +30,9 @@
"default": "{{name}} ha ricondiviso", "default": "{{name}} ha ricondiviso",
"notification": "{{name}} ha ricondiviso il tuo toot" "notification": "{{name}} ha ricondiviso il tuo toot"
}, },
"update": "Il link è stato modificato" "update": "Il link è stato modificato",
"admin.sign_up": "",
"admin.report": ""
}, },
"actions": { "actions": {
"reply": { "reply": {
@ -52,7 +54,8 @@
"bookmarked": { "bookmarked": {
"accessibilityLabel": "Aggiungi questo toot ai segnalibri", "accessibilityLabel": "Aggiungi questo toot ai segnalibri",
"function": "Aggiungi toot ai segnalibri" "function": "Aggiungi toot ai segnalibri"
} },
"openReport": ""
}, },
"actionsUsers": { "actionsUsers": {
"reblogged_by": { "reblogged_by": {

View File

@ -2,19 +2,6 @@
"content": { "content": {
"altText": { "altText": {
"heading": "Testo descrittivo" "heading": "Testo descrittivo"
},
"notificationsFilter": {
"heading": "Filtra notifiche per tipo",
"content": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "Richiesta di seguirti",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "Toot da utenti seguiti",
"update": "Retoot ha subito una modifica"
}
} }
} }
} }

View File

@ -1,13 +1,11 @@
{ {
"heading": { "heading": {
"left": { "left": {
"button": "Annulla",
"alert": { "alert": {
"title": "Scartare il toot?", "title": "Scartare il toot?",
"buttons": { "buttons": {
"save": "Salva bozza", "save": "Salva bozza",
"delete": "Elimina bozza", "delete": "Elimina bozza"
"cancel": "Annulla"
} }
} }
}, },

View File

@ -1,20 +1,21 @@
{ {
"tabs": { "tabs": {
"local": { "local": {
"name": "Home" "name": "Home",
"options": {
"showBoosts": "",
"showReplies": ""
}
}, },
"public": { "public": {
"name": "",
"segments": { "segments": {
"left": "Federazione", "federated": "Federazione",
"right": "Locale" "local": "Locale",
"trending": ""
} }
}, },
"notifications": { "notifications": {
"name": "Notifiche" "name": "Notifiche"
},
"me": {
"name": "Profilo"
} }
}, },
"common": { "common": {
@ -24,9 +25,22 @@
} }
}, },
"notifications": { "notifications": {
"filter": { "filters": {
"accessibilityLabel": "Filtri", "accessibilityLabel": "Filtri",
"accessibilityHint": "Filtra le notifiche mostrate per tipo" "accessibilityHint": "Filtra le notifiche mostrate per tipo",
"title": "",
"options": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "Richiesta di seguirti",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "Toot da utenti seguiti",
"update": "Il link è stato modificato",
"admin.sign_up": "$t(screenTabs:me.push.admin.sign_up.heading)",
"admin.report": "$t(screenTabs:me.push.admin.report.heading)"
}
} }
}, },
"me": { "me": {
@ -40,6 +54,9 @@
"favourites": { "favourites": {
"name": "Apprezzati" "name": "Apprezzati"
}, },
"followedTags": {
"name": ""
},
"fontSize": { "fontSize": {
"name": "Grandezza del testo dei toot" "name": "Grandezza del testo dei toot"
}, },
@ -214,6 +231,12 @@
"status": { "status": {
"heading": "Toot da utenti seguiti" "heading": "Toot da utenti seguiti"
}, },
"admin.sign_up": {
"heading": ""
},
"admin.report": {
"heading": ""
},
"howitworks": "Scopri come funziona il traversamento dei messaggi" "howitworks": "Scopri come funziona il traversamento dei messaggi"
}, },
"root": { "root": {
@ -225,10 +248,8 @@
} }
}, },
"push": { "push": {
"content": { "content_true": "Abilitato",
"enabled": "Abilitato", "content_false": "Disabilitato"
"disabled": "Disabilitato"
}
}, },
"update": { "update": {
"title": "Aggiorna all'ultima versione" "title": "Aggiorna all'ultima versione"
@ -290,9 +311,6 @@
"support": { "support": {
"heading": "Supporta tooot" "heading": "Supporta tooot"
}, },
"review": {
"heading": "Recensisci tooot"
},
"contact": { "contact": {
"heading": "Contatta tooot" "heading": "Contatta tooot"
}, },
@ -330,7 +348,7 @@
"notInLists": "" "notInLists": ""
}, },
"attachments": { "attachments": {
"name": "Media di <0 /><1>\"</1>" "name": ""
}, },
"hashtag": { "hashtag": {
"follow": "Segui", "follow": "Segui",

View File

@ -5,6 +5,7 @@
"cancel": "キャンセル", "cancel": "キャンセル",
"discard": "変更を破棄", "discard": "変更を破棄",
"continue": "続ける", "continue": "続ける",
"create": "",
"delete": "削除", "delete": "削除",
"done": "完了" "done": "完了"
}, },

View File

@ -30,7 +30,9 @@
"default": "{{name}}さんがブースト", "default": "{{name}}さんがブースト",
"notification": "{{name}}さんがあなたのトゥートをブーストしました" "notification": "{{name}}さんがあなたのトゥートをブーストしました"
}, },
"update": "ブーストしたトゥートが編集されました" "update": "ブーストしたトゥートが編集されました",
"admin.sign_up": "{{name}} がインスタンスに参加しました",
"admin.report": ""
}, },
"actions": { "actions": {
"reply": { "reply": {
@ -52,7 +54,8 @@
"bookmarked": { "bookmarked": {
"accessibilityLabel": "このトゥートをブックマークに追加", "accessibilityLabel": "このトゥートをブックマークに追加",
"function": "ブックマークトゥート" "function": "ブックマークトゥート"
} },
"openReport": ""
}, },
"actionsUsers": { "actionsUsers": {
"reblogged_by": { "reblogged_by": {

View File

@ -2,19 +2,6 @@
"content": { "content": {
"altText": { "altText": {
"heading": "代替テキスト" "heading": "代替テキスト"
},
"notificationsFilter": {
"heading": "通知の種類を表示",
"content": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "フォローリクエスト",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "購読中のユーザーからのトゥート",
"update": "リブログが編集されました"
}
} }
} }
} }

View File

@ -1,13 +1,11 @@
{ {
"heading": { "heading": {
"left": { "left": {
"button": "キャンセル",
"alert": { "alert": {
"title": "編集をキャンセルしますか?", "title": "編集をキャンセルしますか?",
"buttons": { "buttons": {
"save": "下書きを保存", "save": "下書きを保存",
"delete": "下書きを削除", "delete": "下書きを削除"
"cancel": "キャンセル"
} }
} }
}, },

View File

@ -1,20 +1,21 @@
{ {
"tabs": { "tabs": {
"local": { "local": {
"name": "ホーム" "name": "ホーム",
"options": {
"showBoosts": "",
"showReplies": ""
}
}, },
"public": { "public": {
"name": "",
"segments": { "segments": {
"left": "連合", "federated": "連合",
"right": "ローカル" "local": "ローカル",
"trending": "トレンド"
} }
}, },
"notifications": { "notifications": {
"name": "通知" "name": "通知"
},
"me": {
"name": "私について"
} }
}, },
"common": { "common": {
@ -24,9 +25,22 @@
} }
}, },
"notifications": { "notifications": {
"filter": { "filters": {
"accessibilityLabel": "フィルター", "accessibilityLabel": "フィルター",
"accessibilityHint": "表示される通知の種類をフィルターする" "accessibilityHint": "表示される通知の種類をフィルターする",
"title": "",
"options": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "フォローリクエスト",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "購読したユーザーのトゥート",
"update": "ブーストしたトゥートが編集されました",
"admin.sign_up": "$t(screenTabs:me.push.admin.sign_up.heading)",
"admin.report": "$t(screenTabs:me.push.admin.report.heading)"
}
} }
}, },
"me": { "me": {
@ -40,6 +54,9 @@
"favourites": { "favourites": {
"name": "お気に入り" "name": "お気に入り"
}, },
"followedTags": {
"name": ""
},
"fontSize": { "fontSize": {
"name": "トゥートのフォントサイズ" "name": "トゥートのフォントサイズ"
}, },
@ -53,7 +70,7 @@
"name": "リスト {{list}} のユーザー" "name": "リスト {{list}} のユーザー"
}, },
"listAdd": { "listAdd": {
"name": "リストに追加" "name": ""
}, },
"listEdit": { "listEdit": {
"name": "リストの詳細を編集" "name": "リストの詳細を編集"
@ -214,6 +231,12 @@
"status": { "status": {
"heading": "購読したユーザーのトゥート" "heading": "購読したユーザーのトゥート"
}, },
"admin.sign_up": {
"heading": ""
},
"admin.report": {
"heading": ""
},
"howitworks": "通知到達(routing)のしくみを学ぶ" "howitworks": "通知到達(routing)のしくみを学ぶ"
}, },
"root": { "root": {
@ -225,10 +248,8 @@
} }
}, },
"push": { "push": {
"content": { "content_true": "有効",
"enabled": "効", "content_false": "効"
"disabled": "無効"
}
}, },
"update": { "update": {
"title": "最新バージョンへのアップデート" "title": "最新バージョンへのアップデート"
@ -290,9 +311,6 @@
"support": { "support": {
"heading": "tooot をサポート" "heading": "tooot をサポート"
}, },
"review": {
"heading": "tooot をレビュー"
},
"contact": { "contact": {
"heading": "tooot に関する連絡" "heading": "tooot に関する連絡"
}, },
@ -330,7 +348,7 @@
"notInLists": "その他のリスト" "notInLists": "その他のリスト"
}, },
"attachments": { "attachments": {
"name": "<0 /><1>\" のメディア</1>" "name": "<0 /><1>のメディア</1>"
}, },
"hashtag": { "hashtag": {
"follow": "フォロー", "follow": "フォロー",

View File

@ -5,6 +5,7 @@
"cancel": "취소", "cancel": "취소",
"discard": "취소", "discard": "취소",
"continue": "계속", "continue": "계속",
"create": "",
"delete": "삭제", "delete": "삭제",
"done": "완료" "done": "완료"
}, },

View File

@ -20,8 +20,8 @@
} }
}, },
"at": { "at": {
"direct": "", "direct": "개인 메시지",
"public": "" "public": "공개 메시지"
}, },
"copy": { "copy": {
"action": "툿 복사", "action": "툿 복사",

View File

@ -1,7 +1,7 @@
{ {
"server": { "server": {
"textInput": { "textInput": {
"placeholder": "인스턴스의 도메인" "placeholder": ""
}, },
"button": "로그인", "button": "로그인",
"information": { "information": {

View File

@ -30,7 +30,9 @@
"default": "{{name}} 님이 부스트했어요", "default": "{{name}} 님이 부스트했어요",
"notification": "{{name}} 님이 내 툿을 부스트했어요" "notification": "{{name}} 님이 내 툿을 부스트했어요"
}, },
"update": "리블로그가 수정됨" "update": "부스트한 툿이 수정됨",
"admin.sign_up": "",
"admin.report": ""
}, },
"actions": { "actions": {
"reply": { "reply": {
@ -52,7 +54,8 @@
"bookmarked": { "bookmarked": {
"accessibilityLabel": "툿 북마크에 추가", "accessibilityLabel": "툿 북마크에 추가",
"function": "툿 북마크" "function": "툿 북마크"
} },
"openReport": ""
}, },
"actionsUsers": { "actionsUsers": {
"reblogged_by": { "reblogged_by": {

View File

@ -2,19 +2,6 @@
"content": { "content": {
"altText": { "altText": {
"heading": "대체 텍스트" "heading": "대체 텍스트"
},
"notificationsFilter": {
"heading": "알림 종류 표시",
"content": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "팔로우 요청",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "구독한 사용자의 툿",
"update": "리블로그가 수정되었습니다."
}
} }
} }
} }

View File

@ -1,13 +1,11 @@
{ {
"heading": { "heading": {
"left": { "left": {
"button": "취소",
"alert": { "alert": {
"title": "작성을 취소할까요?", "title": "작성을 취소할까요?",
"buttons": { "buttons": {
"save": "임시 저장", "save": "임시 저장",
"delete": "임시 저장한 내용 삭제", "delete": "임시 저장한 내용 삭제"
"cancel": "취소"
} }
} }
}, },

View File

@ -1,20 +1,21 @@
{ {
"tabs": { "tabs": {
"local": { "local": {
"name": "팔로우 중" "name": "팔로우 중",
"options": {
"showBoosts": "",
"showReplies": ""
}
}, },
"public": { "public": {
"name": "",
"segments": { "segments": {
"left": "연합", "federated": "연합",
"right": "로컬" "local": "로컬",
"trending": ""
} }
}, },
"notifications": { "notifications": {
"name": "알림" "name": "알림"
},
"me": {
"name": "내 소개"
} }
}, },
"common": { "common": {
@ -24,9 +25,22 @@
} }
}, },
"notifications": { "notifications": {
"filter": { "filters": {
"accessibilityLabel": "필터", "accessibilityLabel": "필터",
"accessibilityHint": "받는 알림 종류 선택" "accessibilityHint": "받는 알림 종류 선택",
"title": "",
"options": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "팔로우 요청",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "구독한 사용자의 툿",
"update": "부스트한 툿이 수정됨",
"admin.sign_up": "$t(screenTabs:me.push.admin.sign_up.heading)",
"admin.report": "$t(screenTabs:me.push.admin.report.heading)"
}
} }
}, },
"me": { "me": {
@ -40,6 +54,9 @@
"favourites": { "favourites": {
"name": "즐겨찾기" "name": "즐겨찾기"
}, },
"followedTags": {
"name": ""
},
"fontSize": { "fontSize": {
"name": "툿 폰트 크기" "name": "툿 폰트 크기"
}, },
@ -53,7 +70,7 @@
"name": "{{list}} 리스트의 사용자" "name": "{{list}} 리스트의 사용자"
}, },
"listAdd": { "listAdd": {
"name": "리스트에 추가" "name": ""
}, },
"listEdit": { "listEdit": {
"name": "리스트 상세 편집" "name": "리스트 상세 편집"
@ -179,8 +196,8 @@
"settings": "설정에서 활성화" "settings": "설정에서 활성화"
}, },
"missingServerKey": { "missingServerKey": {
"message": "", "message": "서버가 푸시를 지원하지 않음",
"description": "" "description": "서버 관리자에게 푸시 알림을 지원하도록 문의해주세요"
}, },
"global": { "global": {
"heading": "{{acct}} 활성화", "heading": "{{acct}} 활성화",
@ -214,6 +231,12 @@
"status": { "status": {
"heading": "구독한 사용자의 툿" "heading": "구독한 사용자의 툿"
}, },
"admin.sign_up": {
"heading": ""
},
"admin.report": {
"heading": ""
},
"howitworks": "메시지 라우팅 방식 더 알아보기" "howitworks": "메시지 라우팅 방식 더 알아보기"
}, },
"root": { "root": {
@ -225,10 +248,8 @@
} }
}, },
"push": { "push": {
"content": { "content_true": "활성화됨",
"enabled": "활성화됨", "content_false": "활성화됨"
"disabled": "비활성화됨"
}
}, },
"update": { "update": {
"title": "최신 버전으로 업데이트" "title": "최신 버전으로 업데이트"
@ -290,9 +311,6 @@
"support": { "support": {
"heading": "tooot 기부" "heading": "tooot 기부"
}, },
"review": {
"heading": "tooot 리뷰"
},
"contact": { "contact": {
"heading": "tooot 연락" "heading": "tooot 연락"
}, },
@ -330,7 +348,7 @@
"notInLists": "다른 리스트" "notInLists": "다른 리스트"
}, },
"attachments": { "attachments": {
"name": "<0 /><1>의 미디어</1>" "name": ""
}, },
"hashtag": { "hashtag": {
"follow": "팔로우", "follow": "팔로우",

View File

@ -10,6 +10,7 @@ const LOCALES = {
nl: 'Nederlands', nl: 'Nederlands',
'pt-br': 'Português (Brasil)', 'pt-br': 'Português (Brasil)',
sv: 'Svenska', sv: 'Svenska',
uk: 'українська',
vi: 'Tiếng Việt', vi: 'Tiếng Việt',
'zh-hans': '简体中文', 'zh-hans': '简体中文',
'zh-hant': '繁體中文' 'zh-hant': '繁體中文'

View File

@ -5,6 +5,7 @@
"cancel": "Annuleer", "cancel": "Annuleer",
"discard": "Verwijder", "discard": "Verwijder",
"continue": "Ga verder", "continue": "Ga verder",
"create": "Maak",
"delete": "Verwijder", "delete": "Verwijder",
"done": "Gereed" "done": "Gereed"
}, },

View File

@ -30,7 +30,9 @@
"default": "{{name}} boostte", "default": "{{name}} boostte",
"notification": "{{name}} boostte jouw toot" "notification": "{{name}} boostte jouw toot"
}, },
"update": "De reblog is bewerkt" "update": "De reblog is bewerkt",
"admin.sign_up": "{{name}} heeft zich aangesloten bij de instantie",
"admin.report": "{{name}} rapporteerde:"
}, },
"actions": { "actions": {
"reply": { "reply": {
@ -52,7 +54,8 @@
"bookmarked": { "bookmarked": {
"accessibilityLabel": "Toot toevoegen aan bladwijzers", "accessibilityLabel": "Toot toevoegen aan bladwijzers",
"function": "Voeg deze toot toe aan bladwijzers" "function": "Voeg deze toot toe aan bladwijzers"
} },
"openReport": "Rapportage openen"
}, },
"actionsUsers": { "actionsUsers": {
"reblogged_by": { "reblogged_by": {

View File

@ -2,19 +2,6 @@
"content": { "content": {
"altText": { "altText": {
"heading": "Alternatieve tekst" "heading": "Alternatieve tekst"
},
"notificationsFilter": {
"heading": "Melding soorten weergeven",
"content": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "Volgverzoek",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "Toot van geabonneerde gebruikers",
"update": "De reblog is bewerkt"
}
} }
} }
} }

View File

@ -1,13 +1,11 @@
{ {
"heading": { "heading": {
"left": { "left": {
"button": "Annuleer",
"alert": { "alert": {
"title": "Bewerken annuleren?", "title": "Bewerken annuleren?",
"buttons": { "buttons": {
"save": "Concept opslaan", "save": "Concept opslaan",
"delete": "Concept verwijderen", "delete": "Concept verwijderen"
"cancel": "Annuleer"
} }
} }
}, },

View File

@ -1,20 +1,21 @@
{ {
"tabs": { "tabs": {
"local": { "local": {
"name": "Volgend" "name": "Volgend",
"options": {
"showBoosts": "",
"showReplies": ""
}
}, },
"public": { "public": {
"name": "",
"segments": { "segments": {
"left": "Globaal", "federated": "Globaal",
"right": "Lokaal" "local": "Lokaal",
"trending": "Trending"
} }
}, },
"notifications": { "notifications": {
"name": "Meldingen" "name": "Meldingen"
},
"me": {
"name": "Over mij"
} }
}, },
"common": { "common": {
@ -24,9 +25,22 @@
} }
}, },
"notifications": { "notifications": {
"filter": { "filters": {
"accessibilityLabel": "Filter", "accessibilityLabel": "Filter",
"accessibilityHint": "Filter getoonde meldingstypes" "accessibilityHint": "Filter getoonde meldingstypes",
"title": "Notificaties weergeven",
"options": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "Volgverzoek",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "Toot van geabonneerde gebruikers",
"update": "De reblog is bewerkt",
"admin.sign_up": "$t(screenTabs:me.push.admin.sign_up.heading)",
"admin.report": "$t(screenTabs:me.push.admin.report.heading)"
}
} }
}, },
"me": { "me": {
@ -40,6 +54,9 @@
"favourites": { "favourites": {
"name": "Favorieten" "name": "Favorieten"
}, },
"followedTags": {
"name": "Gevolgde hashtags"
},
"fontSize": { "fontSize": {
"name": "Grootte van lettertype" "name": "Grootte van lettertype"
}, },
@ -53,7 +70,7 @@
"name": "Gebruikers in de lijst: {{list}}" "name": "Gebruikers in de lijst: {{list}}"
}, },
"listAdd": { "listAdd": {
"name": "Lijst toevoegen" "name": "Lijst aanmaken"
}, },
"listEdit": { "listEdit": {
"name": "Lijstdetails bewerken" "name": "Lijstdetails bewerken"
@ -179,8 +196,8 @@
"settings": "Inschakelen in instellingen" "settings": "Inschakelen in instellingen"
}, },
"missingServerKey": { "missingServerKey": {
"message": "", "message": "Server is verkeerd geconfigureerd voor push",
"description": "" "description": "Neem contact op met de serverbeheerder om push-ondersteuning te configureren"
}, },
"global": { "global": {
"heading": "Inschakelen voor {{acct}}", "heading": "Inschakelen voor {{acct}}",
@ -214,6 +231,12 @@
"status": { "status": {
"heading": "Toot van geabonneerde gebruikers" "heading": "Toot van geabonneerde gebruikers"
}, },
"admin.sign_up": {
"heading": "Admin: registreren"
},
"admin.report": {
"heading": "Admin: rapporten"
},
"howitworks": "Leer hoe het werkt" "howitworks": "Leer hoe het werkt"
}, },
"root": { "root": {
@ -225,10 +248,8 @@
} }
}, },
"push": { "push": {
"content": { "content_true": "Ingeschakeld",
"enabled": "Ingeschakeld", "content_false": "Uitgeschakeld"
"disabled": "Uitgeschakeld"
}
}, },
"update": { "update": {
"title": "Bijwerken naar de laatste versie" "title": "Bijwerken naar de laatste versie"
@ -290,9 +311,6 @@
"support": { "support": {
"heading": "Tooot ondersteunen" "heading": "Tooot ondersteunen"
}, },
"review": {
"heading": "Tooot beoordelen"
},
"contact": { "contact": {
"heading": "Tooot contacteren" "heading": "Tooot contacteren"
}, },
@ -330,7 +348,7 @@
"notInLists": "Andere lijsten" "notInLists": "Andere lijsten"
}, },
"attachments": { "attachments": {
"name": "<0 /><1>\"s media</1>" "name": "<0 /><1>'s media</1>"
}, },
"hashtag": { "hashtag": {
"follow": "Volg", "follow": "Volg",

View File

@ -3,9 +3,10 @@
"OK": "Ok", "OK": "Ok",
"apply": "Zastosuj", "apply": "Zastosuj",
"cancel": "Anuluj", "cancel": "Anuluj",
"discard": "", "discard": "Anuluj",
"continue": "", "continue": "Dalej",
"delete": "", "create": "",
"delete": "Usuń",
"done": "" "done": ""
}, },
"customEmoji": { "customEmoji": {
@ -24,7 +25,7 @@
}, },
"separator": ", ", "separator": ", ",
"discard": { "discard": {
"title": "", "title": "Zmiany nie zostały zapisane",
"message": "" "message": "Wyjść bez zapisania zmian?"
} }
} }

View File

@ -3,8 +3,8 @@
"account": { "account": {
"title": "", "title": "",
"following": { "following": {
"action_false": "", "action_false": "Obserwuj",
"action_true": "" "action_true": "Przestań obserwować"
}, },
"inLists": "", "inLists": "",
"mute": { "mute": {
@ -16,7 +16,7 @@
"action_true": "" "action_true": ""
}, },
"reports": { "reports": {
"action": "" "action": "Zgłoś i zablokuj"
} }
}, },
"at": { "at": {

View File

@ -30,7 +30,9 @@
"default": "", "default": "",
"notification": "" "notification": ""
}, },
"update": "" "update": "",
"admin.sign_up": "{{name}} dołącza do instancji",
"admin.report": ""
}, },
"actions": { "actions": {
"reply": { "reply": {
@ -52,7 +54,8 @@
"bookmarked": { "bookmarked": {
"accessibilityLabel": "", "accessibilityLabel": "",
"function": "" "function": ""
} },
"openReport": ""
}, },
"actionsUsers": { "actionsUsers": {
"reblogged_by": { "reblogged_by": {

View File

@ -2,19 +2,6 @@
"content": { "content": {
"altText": { "altText": {
"heading": "" "heading": ""
},
"notificationsFilter": {
"heading": "",
"content": {
"follow": "",
"follow_request": "",
"favourite": "",
"reblog": "",
"mention": "",
"poll": "",
"status": "",
"update": ""
}
} }
} }
} }

View File

@ -1,13 +1,11 @@
{ {
"heading": { "heading": {
"left": { "left": {
"button": "",
"alert": { "alert": {
"title": "", "title": "",
"buttons": { "buttons": {
"save": "", "save": "",
"delete": "", "delete": ""
"cancel": ""
} }
} }
}, },

View File

@ -1,20 +1,21 @@
{ {
"tabs": { "tabs": {
"local": { "local": {
"name": "" "name": "",
"options": {
"showBoosts": "",
"showReplies": ""
}
}, },
"public": { "public": {
"name": "",
"segments": { "segments": {
"left": "", "federated": "",
"right": "" "local": "",
"trending": ""
} }
}, },
"notifications": { "notifications": {
"name": "" "name": ""
},
"me": {
"name": ""
} }
}, },
"common": { "common": {
@ -24,9 +25,22 @@
} }
}, },
"notifications": { "notifications": {
"filter": { "filters": {
"accessibilityLabel": "", "accessibilityLabel": "",
"accessibilityHint": "" "accessibilityHint": "",
"title": "",
"options": {
"follow": "",
"follow_request": "",
"favourite": "",
"reblog": "",
"mention": "",
"poll": "",
"status": "",
"update": "",
"admin.sign_up": "",
"admin.report": ""
}
} }
}, },
"me": { "me": {
@ -40,6 +54,9 @@
"favourites": { "favourites": {
"name": "" "name": ""
}, },
"followedTags": {
"name": ""
},
"fontSize": { "fontSize": {
"name": "" "name": ""
}, },
@ -50,13 +67,13 @@
"name": "" "name": ""
}, },
"listAccounts": { "listAccounts": {
"name": "" "name": "Użytkownicy: {{list}}"
}, },
"listAdd": { "listAdd": {
"name": "" "name": ""
}, },
"listEdit": { "listEdit": {
"name": "" "name": "Edycja listy"
}, },
"lists": { "lists": {
"name": "" "name": ""
@ -97,27 +114,27 @@
} }
}, },
"listAccounts": { "listAccounts": {
"heading": "", "heading": "Zarządzanie użytkownikami",
"error": "", "error": "Usuń z listy",
"empty": "" "empty": "Brak użytkowników na liście"
}, },
"listEdit": { "listEdit": {
"heading": "", "heading": "Edytuj szczegóły",
"title": "", "title": "Nazwa listy",
"repliesPolicy": { "repliesPolicy": {
"heading": "", "heading": "Odpowiedzi będą widoczne dla:",
"options": { "options": {
"none": "", "none": "Nikogo",
"list": "", "list": "Członków listy",
"followed": "" "followed": "Wszystkich obserwowanych"
} }
} }
}, },
"listDelete": { "listDelete": {
"heading": "", "heading": "Usuń listę",
"confirm": { "confirm": {
"title": "", "title": "Usunąć listę \"{{list}}\"?",
"message": "" "message": "Nie będzie można cofnąć tej czynności."
} }
}, },
"profile": { "profile": {
@ -214,6 +231,12 @@
"status": { "status": {
"heading": "" "heading": ""
}, },
"admin.sign_up": {
"heading": ""
},
"admin.report": {
"heading": ""
},
"howitworks": "" "howitworks": ""
}, },
"root": { "root": {
@ -225,10 +248,8 @@
} }
}, },
"push": { "push": {
"content": { "content_true": "",
"enabled": "", "content_false": ""
"disabled": ""
}
}, },
"update": { "update": {
"title": "" "title": ""
@ -290,9 +311,6 @@
"support": { "support": {
"heading": "" "heading": ""
}, },
"review": {
"heading": ""
},
"contact": { "contact": {
"heading": "" "heading": ""
}, },
@ -356,7 +374,7 @@
} }
}, },
"trending": { "trending": {
"tags": "" "tags": "Popularne tagi"
} }
}, },
"sections": { "sections": {

View File

@ -3,8 +3,9 @@
"OK": "OK", "OK": "OK",
"apply": "Aplicar", "apply": "Aplicar",
"cancel": "Cancelar", "cancel": "Cancelar",
"discard": "", "discard": "Descartar",
"continue": "", "continue": "Continuar",
"create": "",
"delete": "", "delete": "",
"done": "" "done": ""
}, },
@ -24,7 +25,7 @@
}, },
"separator": ", ", "separator": ", ",
"discard": { "discard": {
"title": "", "title": "Alterações não salvas",
"message": "" "message": "Sua alteração não foi salva. Descartar as alterações?"
} }
} }

View File

@ -3,7 +3,7 @@
"account": { "account": {
"title": "Ações do Usuário", "title": "Ações do Usuário",
"following": { "following": {
"action_false": "", "action_false": "Seguir usuário",
"action_true": "" "action_true": ""
}, },
"inLists": "", "inLists": "",
@ -20,7 +20,7 @@
} }
}, },
"at": { "at": {
"direct": "", "direct": "Mensagem Direta",
"public": "" "public": ""
}, },
"copy": { "copy": {

View File

@ -1,7 +1,7 @@
{ {
"server": { "server": {
"textInput": { "textInput": {
"placeholder": "Domínio da instância" "placeholder": ""
}, },
"button": "Entrar", "button": "Entrar",
"information": { "information": {

View File

@ -30,7 +30,9 @@
"default": "{{name}} boostou", "default": "{{name}} boostou",
"notification": "{{name}} deu boost no teu toot" "notification": "{{name}} deu boost no teu toot"
}, },
"update": "Toot foi editado" "update": "Toot foi editado",
"admin.sign_up": "",
"admin.report": ""
}, },
"actions": { "actions": {
"reply": { "reply": {
@ -52,7 +54,8 @@
"bookmarked": { "bookmarked": {
"accessibilityLabel": "Adicionar este toot aos favoritos", "accessibilityLabel": "Adicionar este toot aos favoritos",
"function": "Salvos" "function": "Salvos"
} },
"openReport": ""
}, },
"actionsUsers": { "actionsUsers": {
"reblogged_by": { "reblogged_by": {

View File

@ -2,19 +2,6 @@
"content": { "content": {
"altText": { "altText": {
"heading": "Texto Alternativo" "heading": "Texto Alternativo"
},
"notificationsFilter": {
"heading": "Exibir notificações",
"content": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "Seguidores pendentes",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "Toot de usuários inscritos",
"update": "Toot foi editado"
}
} }
} }
} }

View File

@ -1,13 +1,11 @@
{ {
"heading": { "heading": {
"left": { "left": {
"button": "Cancelar",
"alert": { "alert": {
"title": "Cancelar edições?", "title": "Cancelar edições?",
"buttons": { "buttons": {
"save": "Salvar rascunho", "save": "Salvar rascunho",
"delete": "Apagar rascunho", "delete": "Apagar rascunho"
"cancel": "Cancelar"
} }
} }
}, },

View File

@ -1,20 +1,21 @@
{ {
"tabs": { "tabs": {
"local": { "local": {
"name": "Seguindo" "name": "Seguindo",
"options": {
"showBoosts": "",
"showReplies": ""
}
}, },
"public": { "public": {
"name": "",
"segments": { "segments": {
"left": "Global", "federated": "Global",
"right": "Local" "local": "Local",
"trending": ""
} }
}, },
"notifications": { "notifications": {
"name": "Notificações" "name": "Notificações"
},
"me": {
"name": "Sobre mim"
} }
}, },
"common": { "common": {
@ -24,9 +25,22 @@
} }
}, },
"notifications": { "notifications": {
"filter": { "filters": {
"accessibilityLabel": "Filtro", "accessibilityLabel": "Filtro",
"accessibilityHint": "Filtrar notificações por tipos" "accessibilityHint": "Filtrar notificações por tipos",
"title": "",
"options": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "Solicitações de seguidores pendentes",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "Toot de usuários inscritos",
"update": "Toot foi editado",
"admin.sign_up": "$t(screenTabs:me.push.admin.sign_up.heading)",
"admin.report": "$t(screenTabs:me.push.admin.report.heading)"
}
} }
}, },
"me": { "me": {
@ -40,6 +54,9 @@
"favourites": { "favourites": {
"name": "Favoritos" "name": "Favoritos"
}, },
"followedTags": {
"name": ""
},
"fontSize": { "fontSize": {
"name": "Tamanho da fonte do Toot" "name": "Tamanho da fonte do Toot"
}, },
@ -214,6 +231,12 @@
"status": { "status": {
"heading": "Toot de usuários inscritos" "heading": "Toot de usuários inscritos"
}, },
"admin.sign_up": {
"heading": ""
},
"admin.report": {
"heading": ""
},
"howitworks": "Saiba como funciona o roteamento" "howitworks": "Saiba como funciona o roteamento"
}, },
"root": { "root": {
@ -225,10 +248,8 @@
} }
}, },
"push": { "push": {
"content": { "content_true": "Habilitado",
"enabled": "Habilitado", "content_false": "Desabilitado"
"disabled": "Desabilitado"
}
}, },
"update": { "update": {
"title": "Atualize para a versão mais recente" "title": "Atualize para a versão mais recente"
@ -290,9 +311,6 @@
"support": { "support": {
"heading": "Suporte tooot" "heading": "Suporte tooot"
}, },
"review": {
"heading": "Revisar tooot"
},
"contact": { "contact": {
"heading": "Contatar tooot" "heading": "Contatar tooot"
}, },
@ -322,7 +340,7 @@
"default": "Toots", "default": "Toots",
"all": "Toots e respostas" "all": "Toots e respostas"
}, },
"suspended": "" "suspended": "Conta suspensa pelos moderadores do seu servidor"
}, },
"accountInLists": { "accountInLists": {
"name": "", "name": "",
@ -330,7 +348,7 @@
"notInLists": "" "notInLists": ""
}, },
"attachments": { "attachments": {
"name": "<0 /><1>\"s mídia</1>" "name": ""
}, },
"hashtag": { "hashtag": {
"follow": "Seguir", "follow": "Seguir",

View File

@ -5,6 +5,7 @@
"cancel": "Avbryt", "cancel": "Avbryt",
"discard": "Kasta bort", "discard": "Kasta bort",
"continue": "Fortsätt", "continue": "Fortsätt",
"create": "Skapa",
"delete": "Radera", "delete": "Radera",
"done": "Klar" "done": "Klar"
}, },

View File

@ -30,7 +30,9 @@
"default": "{{name}} boostade", "default": "{{name}} boostade",
"notification": "{{name}} boostade ditt inlägg" "notification": "{{name}} boostade ditt inlägg"
}, },
"update": "Boosten har redigerats" "update": "Boosten har redigerats",
"admin.sign_up": "{{name}} registrerade sig på servern",
"admin.report": "{{name}} rapporterade:"
}, },
"actions": { "actions": {
"reply": { "reply": {
@ -52,7 +54,8 @@
"bookmarked": { "bookmarked": {
"accessibilityLabel": "Lägg till detta inlägg till dina bokmärken", "accessibilityLabel": "Lägg till detta inlägg till dina bokmärken",
"function": "Bokmärk inlägg" "function": "Bokmärk inlägg"
} },
"openReport": "Öppna rapport"
}, },
"actionsUsers": { "actionsUsers": {
"reblogged_by": { "reblogged_by": {

View File

@ -2,19 +2,6 @@
"content": { "content": {
"altText": { "altText": {
"heading": "Alternativtext" "heading": "Alternativtext"
},
"notificationsFilter": {
"heading": "Visa notistyper",
"content": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "Följarförfrågning",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "Inlägg från följda användare",
"update": "Boosten har redigerats"
}
} }
} }
} }

View File

@ -1,13 +1,11 @@
{ {
"heading": { "heading": {
"left": { "left": {
"button": "Avbryt",
"alert": { "alert": {
"title": "Avbryt redigering?", "title": "Avbryt redigering?",
"buttons": { "buttons": {
"save": "Spara utkast", "save": "Spara utkast",
"delete": "Ta bort utkast", "delete": "Ta bort utkast"
"cancel": "Avbryt"
} }
} }
}, },

View File

@ -1,20 +1,21 @@
{ {
"tabs": { "tabs": {
"local": { "local": {
"name": "Följer" "name": "Följer",
"options": {
"showBoosts": "Visa boostar",
"showReplies": "Visa svar"
}
}, },
"public": { "public": {
"name": "",
"segments": { "segments": {
"left": "Federerat", "federated": "Federerat",
"right": "Lokalt" "local": "Lokalt",
"trending": "Trendar"
} }
}, },
"notifications": { "notifications": {
"name": "Notiser" "name": "Notiser"
},
"me": {
"name": "Om mig"
} }
}, },
"common": { "common": {
@ -24,9 +25,22 @@
} }
}, },
"notifications": { "notifications": {
"filter": { "filters": {
"accessibilityLabel": "Filter", "accessibilityLabel": "Filter",
"accessibilityHint": "Filtrera visade notistyper" "accessibilityHint": "Filtrera visade notistyper",
"title": "Visa notifikationer",
"options": {
"follow": "$t(screenTabs:me.push.follow.heading)",
"follow_request": "Följarförfrågning",
"favourite": "$t(screenTabs:me.push.favourite.heading)",
"reblog": "$t(screenTabs:me.push.reblog.heading)",
"mention": "$t(screenTabs:me.push.mention.heading)",
"poll": "$t(screenTabs:me.push.poll.heading)",
"status": "Inlägg från följda användare",
"update": "Boosten har redigerats",
"admin.sign_up": "$t(screenTabs:me.push.admin.sign_up.heading)",
"admin.report": "$t(screenTabs:me.push.admin.report.heading)"
}
} }
}, },
"me": { "me": {
@ -40,6 +54,9 @@
"favourites": { "favourites": {
"name": "Favoriter" "name": "Favoriter"
}, },
"followedTags": {
"name": "Följda hashtaggar"
},
"fontSize": { "fontSize": {
"name": "Storlek på teckensnitt i inlägg" "name": "Storlek på teckensnitt i inlägg"
}, },
@ -53,7 +70,7 @@
"name": "Användare i listan: {{list}}" "name": "Användare i listan: {{list}}"
}, },
"listAdd": { "listAdd": {
"name": "Lägg till en lista" "name": "Skapa en lista"
}, },
"listEdit": { "listEdit": {
"name": "Redigera listans detaljer" "name": "Redigera listans detaljer"
@ -179,8 +196,8 @@
"settings": "Aktivera i inställningar" "settings": "Aktivera i inställningar"
}, },
"missingServerKey": { "missingServerKey": {
"message": "", "message": "Servern är felkonfigurerad för push",
"description": "" "description": "Kontakta din serveradministratör och be dem konfigurera stöd för push"
}, },
"global": { "global": {
"heading": "Aktivera för {{acct}}", "heading": "Aktivera för {{acct}}",
@ -214,6 +231,12 @@
"status": { "status": {
"heading": "Inlägg från följda användare" "heading": "Inlägg från följda användare"
}, },
"admin.sign_up": {
"heading": "Admin: registrera dig"
},
"admin.report": {
"heading": "Admin: rapporter"
},
"howitworks": "Läs om hur routing fungerar" "howitworks": "Läs om hur routing fungerar"
}, },
"root": { "root": {
@ -225,10 +248,8 @@
} }
}, },
"push": { "push": {
"content": { "content_true": "Aktiverad",
"enabled": "Aktiverad", "content_false": "Inaktiverad"
"disabled": "Inaktiverad"
}
}, },
"update": { "update": {
"title": "Uppdatera till senaste versionen" "title": "Uppdatera till senaste versionen"
@ -290,9 +311,6 @@
"support": { "support": {
"heading": "Stöd tooot" "heading": "Stöd tooot"
}, },
"review": {
"heading": "Recensera tooot"
},
"contact": { "contact": {
"heading": "Kontakta tooot" "heading": "Kontakta tooot"
}, },

31
src/i18n/uk/common.json Normal file
View File

@ -0,0 +1,31 @@
{
"buttons": {
"OK": "OK",
"apply": "Застосувати",
"cancel": "Скасувати",
"discard": "Відхилити",
"continue": "Продовжити",
"create": "Створити",
"delete": "Видалити",
"done": "Готово"
},
"customEmoji": {
"accessibilityLabel": "Власні емодзі {{emoji}}"
},
"message": {
"success": {
"message": "{{function}} успішно"
},
"warning": {
"message": ""
},
"error": {
"message": "{{function}} не вдалося, спробуйте ще раз"
}
},
"separator": ", ",
"discard": {
"title": "Зміни не збережено",
"message": "Зміни не збережено. Зберегти зміни?"
}
}

View File

@ -0,0 +1,85 @@
{
"accessibilityHint": "Дії для цього дмуху, наприклад, його опублікованого користувача, дмуху",
"account": {
"title": "Дії користувача",
"following": {
"action_false": "Підписатися на користувача",
"action_true": "Відписатися від користувача"
},
"inLists": "Керувати списками",
"mute": {
"action_false": "Заглушити користувача",
"action_true": "Зняти заглушення з користувача"
},
"block": {
"action_false": "Заблокувати користувача",
"action_true": "Розблокувати користувача"
},
"reports": {
"action": "Повідомити та заблокувати користувача"
}
},
"at": {
"direct": "Особисті повідомлення",
"public": "Публічне повідомлення"
},
"copy": {
"action": "Скопіювати дмух",
"succeed": "Скопійовано"
},
"instance": {
"title": "Дія інстанса",
"block": {
"action": "Заблокувати інстанс {{instance}}",
"alert": {
"title": "Підтверджуєте блокування інстанса {{instance}}?",
"message": "Здебільшого ви можете вимкнути звук або заблокувати певного користувача.\n\nПісля блокування інстансу весь її контент, включаючи підписників, буде видалено!",
"buttons": {
"confirm": "Підтвердити"
}
}
}
},
"share": {
"status": {
"action": "Поділитися дмухом"
},
"account": {
"action": "Поділитися користувачем"
}
},
"status": {
"title": "Дії дмуха",
"edit": {
"action": "Редагувати дмух"
},
"delete": {
"action": "Видалити дмух",
"alert": {
"title": "Видалити?",
"message": "Всі передмухи і уподобання будуть очищені, включаючи всі відповіді.",
"buttons": {
"confirm": "Підтвердити"
}
}
},
"deleteEdit": {
"action": "Видалити дмух та репост",
"alert": {
"title": "Підтвердьте видалення та повторне розміщення?",
"message": "Всі передмухи і уподобання будуть очищені, включаючи всі відповіді.",
"buttons": {
"confirm": "Підтвердити"
}
}
},
"mute": {
"action_false": "Заглушити дмух та відповіді",
"action_true": "Увімкнути дмух та відповіді"
},
"pin": {
"action_false": "Прикріпити дмух",
"action_true": "Відкріпити дмух"
}
}
}

View File

@ -0,0 +1,3 @@
{
"frequentUsed": "Часто використовувані"
}

View File

@ -0,0 +1,26 @@
{
"server": {
"textInput": {
"placeholder": "Домен інстансу"
},
"button": "Увійти",
"information": {
"name": "Назва",
"accounts": "Користувачі",
"statuses": "Дмухи",
"domains": "Універси"
},
"disclaimer": {
"base": "Для входу в систему використовується системний браузер, тому інформація про ваш обліковий запис не буде видимою для додатку tooot."
},
"terms": {
"base": "Увійшовши в систему, ви приймаєте <0>політику конфіденційності</0> та <1>умови надання послуг</1>."
}
},
"update": {
"alert": {
"title": "Вхід виконано",
"message": "Ви можете увійти під іншим обліковим записом, зберігши існуючий обліковий запис"
}
}
}

View File

@ -0,0 +1,10 @@
{
"title": "Вибір джерела медіа",
"message": "Дані медіа-EXIF не завантажені",
"options": {
"image": "Завантажити фотографії",
"image_max": "Завантажити фотографії (макс. {{max}})",
"video": "Завантажити відео",
"video_max": "Завантажити відео (макс. {{max}})"
}
}

Some files were not shown because too many files have changed in this diff Show More