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

Merge pull request #459 from tooot-app/main

Test building
This commit is contained in:
xmflsct
2022-11-14 16:12:22 +01:00
committed by GitHub
55 changed files with 1932 additions and 85 deletions

View File

@ -6,14 +6,10 @@ buildscript {
minSdkVersion = 21 minSdkVersion = 21
compileSdkVersion = 31 compileSdkVersion = 31
targetSdkVersion = 31 targetSdkVersion = 31
kotlinVersion = '1.6.10'
if (System.properties['os.arch'] == "aarch64") { if (System.properties['os.arch'] == "aarch64") {
// For M1 Users we need to use the NDK 24 which added support for aarch64 // For M1 Users we need to use the NDK 24 which added support for aarch64
ndkVersion = "24.0.8215888" ndkVersion = "24.0.8215888"
} else if (Os.isFamily(Os.FAMILY_WINDOWS)) {
// For Android Users, we need to use NDK 23, otherwise the build will
// fail due to paths longer than the OS limit
ndkVersion = "23.1.7779620"
} else { } else {
// Otherwise we default to the side-by-side NDK version from AGP. // Otherwise we default to the side-by-side NDK version from AGP.
ndkVersion = "21.4.7075529" ndkVersion = "21.4.7075529"

View File

@ -127,38 +127,38 @@ PODS:
- GoogleUtilities/Environment (~> 7.7) - GoogleUtilities/Environment (~> 7.7)
- nanopb (< 2.30910.0, >= 2.30908.0) - nanopb (< 2.30910.0, >= 2.30908.0)
- PromisesObjC (< 3.0, >= 1.2) - PromisesObjC (< 3.0, >= 1.2)
- GoogleUtilities (7.8.0): - GoogleUtilities (7.10.0):
- GoogleUtilities/AppDelegateSwizzler (= 7.8.0) - GoogleUtilities/AppDelegateSwizzler (= 7.10.0)
- GoogleUtilities/Environment (= 7.8.0) - GoogleUtilities/Environment (= 7.10.0)
- GoogleUtilities/ISASwizzler (= 7.8.0) - GoogleUtilities/ISASwizzler (= 7.10.0)
- GoogleUtilities/Logger (= 7.8.0) - GoogleUtilities/Logger (= 7.10.0)
- GoogleUtilities/MethodSwizzler (= 7.8.0) - GoogleUtilities/MethodSwizzler (= 7.10.0)
- GoogleUtilities/Network (= 7.8.0) - GoogleUtilities/Network (= 7.10.0)
- "GoogleUtilities/NSData+zlib (= 7.8.0)" - "GoogleUtilities/NSData+zlib (= 7.10.0)"
- GoogleUtilities/Reachability (= 7.8.0) - GoogleUtilities/Reachability (= 7.10.0)
- GoogleUtilities/SwizzlerTestHelpers (= 7.8.0) - GoogleUtilities/SwizzlerTestHelpers (= 7.10.0)
- GoogleUtilities/UserDefaults (= 7.8.0) - GoogleUtilities/UserDefaults (= 7.10.0)
- GoogleUtilities/AppDelegateSwizzler (7.8.0): - GoogleUtilities/AppDelegateSwizzler (7.10.0):
- GoogleUtilities/Environment - GoogleUtilities/Environment
- GoogleUtilities/Logger - GoogleUtilities/Logger
- GoogleUtilities/Network - GoogleUtilities/Network
- GoogleUtilities/Environment (7.8.0): - GoogleUtilities/Environment (7.10.0):
- PromisesObjC (< 3.0, >= 1.2) - PromisesObjC (< 3.0, >= 1.2)
- GoogleUtilities/ISASwizzler (7.8.0) - GoogleUtilities/ISASwizzler (7.10.0)
- GoogleUtilities/Logger (7.8.0): - GoogleUtilities/Logger (7.10.0):
- GoogleUtilities/Environment - GoogleUtilities/Environment
- GoogleUtilities/MethodSwizzler (7.8.0): - GoogleUtilities/MethodSwizzler (7.10.0):
- GoogleUtilities/Logger - GoogleUtilities/Logger
- GoogleUtilities/Network (7.8.0): - GoogleUtilities/Network (7.10.0):
- GoogleUtilities/Logger - GoogleUtilities/Logger
- "GoogleUtilities/NSData+zlib" - "GoogleUtilities/NSData+zlib"
- GoogleUtilities/Reachability - GoogleUtilities/Reachability
- "GoogleUtilities/NSData+zlib (7.8.0)" - "GoogleUtilities/NSData+zlib (7.10.0)"
- GoogleUtilities/Reachability (7.8.0): - GoogleUtilities/Reachability (7.10.0):
- GoogleUtilities/Logger - GoogleUtilities/Logger
- GoogleUtilities/SwizzlerTestHelpers (7.8.0): - GoogleUtilities/SwizzlerTestHelpers (7.10.0):
- GoogleUtilities/MethodSwizzler - GoogleUtilities/MethodSwizzler
- GoogleUtilities/UserDefaults (7.8.0): - GoogleUtilities/UserDefaults (7.10.0):
- GoogleUtilities/Logger - GoogleUtilities/Logger
- hermes-engine (0.70.5) - hermes-engine (0.70.5)
- libevent (2.1.12) - libevent (2.1.12)
@ -504,7 +504,7 @@ PODS:
- React-Core - React-Core
- RNFastImage (8.6.3): - RNFastImage (8.6.3):
- React-Core - React-Core
- SDWebImage (~> 5.14.1) - SDWebImage (~> 5.14.2)
- SDWebImageWebPCoder (~> 0.9.1) - SDWebImageWebPCoder (~> 0.9.1)
- RNGestureHandler (2.8.0): - RNGestureHandler (2.8.0):
- React-Core - React-Core
@ -545,9 +545,9 @@ PODS:
- React - React
- RNSVG (13.5.0): - RNSVG (13.5.0):
- React-Core - React-Core
- SDWebImage (5.14.1): - SDWebImage (5.14.2):
- SDWebImage/Core (= 5.14.1) - SDWebImage/Core (= 5.14.2)
- SDWebImage/Core (5.14.1) - SDWebImage/Core (5.14.2)
- SDWebImageWebPCoder (0.9.1): - SDWebImageWebPCoder (0.9.1):
- libwebp (~> 1.0) - libwebp (~> 1.0)
- SDWebImage/Core (~> 5.13) - SDWebImage/Core (~> 5.13)
@ -855,7 +855,7 @@ SPEC CHECKSUMS:
glog: 04b94705f318337d7ead9e6d17c019bd9b1f6b1b glog: 04b94705f318337d7ead9e6d17c019bd9b1f6b1b
GoogleAppMeasurement: 6ee231473fbd75c11221dfce489894334024eead GoogleAppMeasurement: 6ee231473fbd75c11221dfce489894334024eead
GoogleDataTransport: 1c8145da7117bd68bbbed00cf304edb6a24de00f GoogleDataTransport: 1c8145da7117bd68bbbed00cf304edb6a24de00f
GoogleUtilities: 1d20a6ad97ef46f67bbdec158ce00563a671ebb7 GoogleUtilities: bad72cb363809015b1f7f19beb1f1cd23c589f95
hermes-engine: 7fe5fc6ef707b7fdcb161b63898ec500e285653d hermes-engine: 7fe5fc6ef707b7fdcb161b63898ec500e285653d
libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913 libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913
libwebp: f62cb61d0a484ba548448a4bd52aabf150ff6eef libwebp: f62cb61d0a484ba548448a4bd52aabf150ff6eef
@ -902,14 +902,14 @@ SPEC CHECKSUMS:
ReactCommon: c9246996e73bf75a2c6c3ff15f1e16707cdc2da9 ReactCommon: c9246996e73bf75a2c6c3ff15f1e16707cdc2da9
RNCAsyncStorage: 8616bd5a58af409453ea4e1b246521bb76578d60 RNCAsyncStorage: 8616bd5a58af409453ea4e1b246521bb76578d60
RNCClipboard: 2834e1c4af68697089cdd455ee4a4cdd198fa7dd RNCClipboard: 2834e1c4af68697089cdd455ee4a4cdd198fa7dd
RNFastImage: 0211f5ebb561956cbb14d822606a6dce9d88e9c7 RNFastImage: c5dd1b551779c5826fe43b7d36788385da2021e2
RNGestureHandler: 62232ba8f562f7dea5ba1b3383494eb5bf97a4d3 RNGestureHandler: 62232ba8f562f7dea5ba1b3383494eb5bf97a4d3
RNReanimated: 2a91e85fcd343f8af3c58d3425b99fdd285590a5 RNReanimated: 2a91e85fcd343f8af3c58d3425b99fdd285590a5
RNScreens: 34cc502acf1b916c582c60003dc3089fa01dc66d RNScreens: 34cc502acf1b916c582c60003dc3089fa01dc66d
RNSentry: db7fd7b66efda28885e4e904a8b5e7349aec61c1 RNSentry: db7fd7b66efda28885e4e904a8b5e7349aec61c1
RNShareMenu: cb9dac548c8bf147d06f0bf07296ad51ea9f5fc3 RNShareMenu: cb9dac548c8bf147d06f0bf07296ad51ea9f5fc3
RNSVG: 38ca962c970dbce1ca38991a5aebf26d163f9efb RNSVG: 38ca962c970dbce1ca38991a5aebf26d163f9efb
SDWebImage: e1b3c38f170c6100130fce6856e423ed9e5f4fce SDWebImage: b9a731e1d6307f44ca703b3976d18c24ca561e84
SDWebImageWebPCoder: 18503de6621dd2c420d680e33d46bf8e1d5169b0 SDWebImageWebPCoder: 18503de6621dd2c420d680e33d46bf8e1d5169b0
Sentry: 4272663eb0eda312024d795ca3f5a562a8ce5e18 Sentry: 4272663eb0eda312024d795ca3f5a562a8ce5e18
Swime: d7b2c277503b6cea317774aedc2dce05613f8b0b Swime: d7b2c277503b6cea317774aedc2dce05613f8b0b

View File

@ -1,5 +1,5 @@
diff --git a/node_modules/react-native-fast-image/RNFastImage.podspec b/node_modules/react-native-fast-image/RNFastImage.podspec diff --git a/node_modules/react-native-fast-image/RNFastImage.podspec b/node_modules/react-native-fast-image/RNFastImage.podspec
index db0fada..a752393 100644 index db0fada..b23cd91 100644
--- a/node_modules/react-native-fast-image/RNFastImage.podspec --- a/node_modules/react-native-fast-image/RNFastImage.podspec
+++ b/node_modules/react-native-fast-image/RNFastImage.podspec +++ b/node_modules/react-native-fast-image/RNFastImage.podspec
@@ -16,6 +16,6 @@ Pod::Spec.new do |s| @@ -16,6 +16,6 @@ Pod::Spec.new do |s|
@ -8,7 +8,7 @@ index db0fada..a752393 100644
s.dependency 'React-Core' s.dependency 'React-Core'
- s.dependency 'SDWebImage', '~> 5.11.1' - s.dependency 'SDWebImage', '~> 5.11.1'
- s.dependency 'SDWebImageWebPCoder', '~> 0.8.4' - s.dependency 'SDWebImageWebPCoder', '~> 0.8.4'
+ s.dependency 'SDWebImage', '~> 5.14.1' + s.dependency 'SDWebImage', '~> 5.14.2'
+ s.dependency 'SDWebImageWebPCoder', '~> 0.9.1' + s.dependency 'SDWebImageWebPCoder', '~> 0.9.1'
end end
diff --git a/node_modules/react-native-fast-image/android/build.gradle b/node_modules/react-native-fast-image/android/build.gradle diff --git a/node_modules/react-native-fast-image/android/build.gradle b/node_modules/react-native-fast-image/android/build.gradle

View File

@ -88,7 +88,7 @@
"content": { "content": {
"expandHint": "Ausgeblendeter Inhalt" "expandHint": "Ausgeblendeter Inhalt"
}, },
"filtered": "Ausgeblendet", "filtered": "",
"fullConversation": "Unterhaltung anzeigen", "fullConversation": "Unterhaltung anzeigen",
"translate": { "translate": {
"default": "Übersetzen", "default": "Übersetzen",

22
src/i18n/es/common.json Normal file
View File

@ -0,0 +1,22 @@
{
"buttons": {
"OK": "",
"apply": "",
"cancel": ""
},
"customEmoji": {
"accessibilityLabel": ""
},
"message": {
"success": {
"message": ""
},
"warning": {
"message": ""
},
"error": {
"message": ""
}
},
"separator": ""
}

View File

@ -0,0 +1,76 @@
{
"accessibilityHint": "",
"account": {
"title": "",
"mute": {
"action_false": "",
"action_true": ""
},
"block": {
"action_false": "",
"action_true": ""
},
"reports": {
"action": ""
}
},
"copy": {
"action": "",
"succeed": ""
},
"instance": {
"title": "",
"block": {
"action": "",
"alert": {
"title": "",
"message": "",
"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 @@
{}

View File

@ -0,0 +1,30 @@
{
"server": {
"textInput": {
"placeholder": ""
},
"button": "",
"information": {
"name": "",
"accounts": "",
"statuses": "",
"domains": ""
},
"disclaimer": {
"base": ""
},
"terms": {
"base": ""
}
},
"update": {
"alert": {
"title": "",
"message": "",
"buttons": {
"cancel": "",
"continue": ""
}
}
}
}

View File

@ -0,0 +1,10 @@
{
"title": "",
"message": "",
"options": {
"image": "",
"image_max": "",
"video": "",
"video_max": ""
}
}

View File

@ -0,0 +1,8 @@
{
"HTML": {
"accessibilityHint": "",
"expanded": "",
"moreLines": "",
"defaultHint": ""
}
}

View File

@ -0,0 +1,16 @@
{
"follow": {
"function": ""
},
"block": {
"function": ""
},
"button": {
"error": "",
"blocked_by": "",
"blocking": "",
"following": "",
"requested": "",
"default": ""
}
}

View File

@ -0,0 +1,152 @@
{
"empty": {
"error": {
"message": "",
"button": ""
},
"success": {
"message": ""
}
},
"end": {
"message": ""
},
"lookback": {
"message": ""
},
"refresh": {
"fetchPreviousPage": "",
"refetch": ""
},
"shared": {
"actioned": {
"pinned": "",
"favourite": "",
"status": "",
"follow": "",
"follow_request": "",
"poll": "",
"reblog": {
"default": "",
"notification": ""
},
"update": ""
},
"actions": {
"reply": {
"accessibilityLabel": ""
},
"reblogged": {
"accessibilityLabel": "",
"function": "",
"options": {
"title": "",
"public": "",
"unlisted": ""
}
},
"favourited": {
"accessibilityLabel": "",
"function": ""
},
"bookmarked": {
"accessibilityLabel": "",
"function": ""
}
},
"actionsUsers": {
"reblogged_by": {
"accessibilityLabel": "",
"accessibilityHint": "",
"text": ""
},
"favourited_by": {
"accessibilityLabel": "",
"accessibilityHint": "",
"text": ""
},
"history": {
"accessibilityLabel": "",
"accessibilityHint": "",
"text_one": "",
"text_other": ""
}
},
"attachment": {
"sensitive": {
"button": ""
},
"unsupported": {
"text": "",
"button": ""
}
},
"avatar": {
"accessibilityLabel": "",
"accessibilityHint": ""
},
"content": {
"expandHint": ""
},
"filtered": "",
"fullConversation": "",
"translate": {
"default": "",
"succeed": "",
"failed": "",
"source_not_supported": "",
"target_not_supported": ""
},
"header": {
"shared": {
"account": {
"name": {
"accessibilityHint": ""
},
"account": {
"accessibilityHint": ""
}
},
"application": "",
"edited": {
"accessibilityLabel": ""
},
"muted": {
"accessibilityLabel": ""
},
"visibility": {
"direct": {
"accessibilityLabel": ""
},
"private": {
"accessibilityLabel": ""
}
}
},
"conversation": {
"withAccounts": "",
"delete": {
"function": ""
}
}
},
"poll": {
"meta": {
"button": {
"vote": "",
"refresh": ""
},
"count": {
"voters_one": "",
"voters_other": "",
"votes_one": "",
"votes_other": ""
},
"expiration": {
"expired": "",
"until": ""
}
}
}
}
}

18
src/i18n/es/screens.json Normal file
View File

@ -0,0 +1,18 @@
{
"screenshot": {
"title": "",
"message": "",
"button": ""
},
"localCorrupt": {
"message": ""
},
"pushError": {
"message": "",
"description": ""
},
"shareError": {
"imageNotSupported": "",
"videoNotSupported": ""
}
}

View File

@ -0,0 +1,6 @@
{
"heading": "",
"content": {
"select_account": ""
}
}

View File

@ -0,0 +1,20 @@
{
"content": {
"altText": {
"heading": ""
},
"notificationsFilter": {
"heading": "",
"content": {
"follow": "",
"follow_request": "",
"favourite": "",
"reblog": "",
"mention": "",
"poll": "",
"status": "",
"update": ""
}
}
}
}

View File

@ -0,0 +1,10 @@
{
"heading": "",
"content": {
"published": "",
"button": {
"read": "",
"unread": ""
}
}
}

View File

@ -0,0 +1,179 @@
{
"heading": {
"left": {
"button": "",
"alert": {
"title": "",
"buttons": {
"save": "",
"delete": "",
"cancel": ""
}
}
},
"right": {
"button": {
"default": "",
"conversation": "",
"reply": "",
"deleteEdit": "",
"edit": "",
"share": ""
},
"alert": {
"default": {
"title": "",
"button": ""
},
"removeReply": {
"title": "",
"description": "",
"cancel": "",
"confirm": ""
}
}
}
},
"content": {
"root": {
"header": {
"postingAs": "",
"spoilerInput": {
"placeholder": ""
},
"textInput": {
"placeholder": "",
"keyboardImage": {
"exceedMaximum": {
"title": "",
"OK": ""
}
}
}
},
"footer": {
"attachments": {
"sensitive": "",
"remove": {
"accessibilityLabel": ""
},
"edit": {
"accessibilityLabel": ""
},
"upload": {
"accessibilityLabel": ""
}
},
"emojis": {
"accessibilityHint": ""
},
"poll": {
"option": {
"placeholder": {
"accessibilityLabel": "",
"single": "",
"multiple": ""
}
},
"quantity": {
"reduce": {
"accessibilityLabel": "",
"accessibilityHint": ""
},
"increase": {
"accessibilityLabel": "",
"accessibilityHint": ""
}
},
"multiple": {
"heading": "",
"options": {
"single": "",
"multiple": "",
"cancel": ""
}
},
"expiration": {
"heading": "",
"options": {
"300": "",
"1800": "",
"3600": "",
"21600": "",
"86400": "",
"259200": "",
"604800": "",
"cancel": ""
}
}
}
},
"actions": {
"attachment": {
"accessibilityLabel": "",
"accessibilityHint": "",
"failed": {
"alert": {
"title": "",
"button": ""
}
}
},
"poll": {
"accessibilityLabel": "",
"accessibilityHint": ""
},
"visibility": {
"accessibilityLabel": "",
"title": "",
"options": {
"public": "",
"unlisted": "",
"private": "",
"direct": "",
"cancel": ""
}
},
"spoiler": {
"accessibilityLabel": ""
},
"emoji": {
"accessibilityLabel": "",
"accessibilityHint": ""
}
},
"drafts_one": "",
"drafts_other": ""
},
"editAttachment": {
"header": {
"title": "",
"right": {
"accessibilityLabel": "",
"failed": {
"title": "",
"button": ""
}
}
},
"content": {
"altText": {
"heading": "",
"placeholder": ""
},
"imageFocus": ""
}
},
"draftsList": {
"header": {
"title": ""
},
"warning": "",
"content": {
"accessibilityHint": "",
"textEmpty": ""
},
"checkAttachment": ""
}
}
}

View File

@ -0,0 +1,17 @@
{
"content": {
"actions": {
"accessibilityLabel": "",
"accessibilityHint": ""
},
"options": {
"save": "",
"share": "",
"cancel": ""
},
"save": {
"succeed": "",
"failed": ""
}
}
}

View File

@ -0,0 +1,354 @@
{
"tabs": {
"local": {
"name": ""
},
"public": {
"name": "",
"segments": {
"left": "",
"right": ""
}
},
"notifications": {
"name": ""
},
"me": {
"name": ""
}
},
"common": {
"search": {
"accessibilityLabel": "",
"accessibilityHint": ""
}
},
"notifications": {
"filter": {
"accessibilityLabel": "",
"accessibilityHint": ""
}
},
"me": {
"stacks": {
"bookmarks": {
"name": ""
},
"conversations": {
"name": ""
},
"favourites": {
"name": ""
},
"fontSize": {
"name": ""
},
"language": {
"name": ""
},
"lists": {
"name": ""
},
"list": {
"name": ""
},
"push": {
"name": ""
},
"profile": {
"name": ""
},
"profileName": {
"name": ""
},
"profileNote": {
"name": ""
},
"profileFields": {
"name": ""
},
"settings": {
"name": ""
},
"webSettings": {
"name": ""
},
"switch": {
"name": ""
}
},
"fontSize": {
"demo": "",
"sizes": {
"S": "",
"M": "",
"L": "",
"XL": "",
"XXL": ""
}
},
"profile": {
"cancellation": {
"title": "",
"message": "",
"buttons": {
"cancel": "",
"discard": ""
}
},
"feedback": {
"succeed": "",
"failed": ""
},
"root": {
"name": {
"title": ""
},
"avatar": {
"title": "",
"description": ""
},
"header": {
"title": "",
"description": ""
},
"note": {
"title": ""
},
"fields": {
"title": "",
"total_one": "",
"total_other": ""
},
"visibility": {
"title": "",
"options": {
"public": "",
"unlisted": "",
"private": "",
"cancel": ""
}
},
"sensitive": {
"title": ""
},
"lock": {
"title": "",
"description": ""
},
"bot": {
"title": "",
"description": ""
}
},
"fields": {
"group": "",
"label": "",
"content": ""
},
"mediaSelectionFailed": ""
},
"push": {
"notAvailable": "",
"enable": {
"direct": "",
"settings": ""
},
"global": {
"heading": "",
"description": ""
},
"decode": {
"heading": "",
"description": ""
},
"default": {
"heading": ""
},
"follow": {
"heading": ""
},
"follow_request": {
"heading": ""
},
"favourite": {
"heading": ""
},
"reblog": {
"heading": ""
},
"mention": {
"heading": ""
},
"poll": {
"heading": ""
},
"status": {
"heading": ""
},
"howitworks": ""
},
"root": {
"announcements": {
"content": {
"unread": "",
"read": "",
"empty": ""
}
},
"push": {
"content": {
"enabled": "",
"disabled": ""
}
},
"update": {
"title": ""
},
"logout": {
"button": "",
"alert": {
"title": "",
"message": "",
"buttons": {
"logout": "",
"cancel": ""
}
}
}
},
"settings": {
"fontsize": {
"heading": "",
"content": {
"S": "",
"M": "",
"L": "",
"XL": "",
"XXL": ""
}
},
"language": {
"heading": "",
"options": {
"cancel": ""
}
},
"theme": {
"heading": "",
"options": {
"auto": "",
"light": "",
"dark": "",
"cancel": ""
}
},
"darkTheme": {
"heading": "",
"options": {
"lighter": "",
"darker": "",
"cancel": ""
}
},
"browser": {
"heading": "",
"options": {
"internal": "",
"external": "",
"cancel": ""
}
},
"staticEmoji": {
"heading": "",
"description": ""
},
"feedback": {
"heading": ""
},
"support": {
"heading": ""
},
"review": {
"heading": ""
},
"contact": {
"heading": ""
},
"analytics": {
"heading": "",
"description": ""
},
"version": "",
"instanceVersion": ""
},
"switch": {
"existing": "",
"new": ""
}
},
"shared": {
"account": {
"actions": {
"accessibilityLabel": "",
"accessibilityHint": ""
},
"followed_by": "",
"moved": "",
"created_at": "",
"summary": {
"statuses_count": "",
"following_count": "",
"followers_count": ""
},
"toots": {
"default": "",
"all": ""
},
"suspended": ""
},
"attachments": {
"name": ""
},
"search": {
"header": {
"prefix": "",
"placeholder": ""
},
"empty": {
"general": "",
"advanced": {
"header": "",
"example": {
"account": "",
"hashtag": "",
"statusLink": "",
"accountLink": ""
}
}
},
"sections": {
"accounts": "",
"hashtags": "",
"statuses": ""
},
"notFound": ""
},
"toot": {
"name": ""
},
"users": {
"accounts": {
"following": "",
"followers": ""
},
"statuses": {
"reblogged_by": "",
"favourited_by": ""
}
},
"history": {
"name": ""
}
}
}

View File

@ -1,5 +1,5 @@
{ {
"accessibilityHint": "Actions pour ce toot, telles que son utilisateur affiché, le toot lui-même", "accessibilityHint": "Actions pour ce Pouet, telles que son utilisateur affiché, le Pouet lui-même",
"account": { "account": {
"title": "Actions de l'utilisateur", "title": "Actions de l'utilisateur",
"mute": { "mute": {
@ -15,7 +15,7 @@
} }
}, },
"copy": { "copy": {
"action": "Copier le pouet", "action": "Copier le Pouet",
"succeed": "Copié" "succeed": "Copié"
}, },
"instance": { "instance": {
@ -55,7 +55,7 @@
} }
}, },
"deleteEdit": { "deleteEdit": {
"action": "Supprimer le pouet et le repost", "action": "Supprimer le pouet et le republié",
"alert": { "alert": {
"title": "Confirmer la suppression et le repost ?", "title": "Confirmer la suppression et le repost ?",
"message": "Tous les boosts et favoris seront effacés, y compris toutes les réponses.", "message": "Tous les boosts et favoris seront effacés, y compris toutes les réponses.",

View File

@ -88,7 +88,7 @@
"content": { "content": {
"expandHint": "Contenu masqué" "expandHint": "Contenu masqué"
}, },
"filtered": "Filtré", "filtered": "Filtré: {{phrase}}.",
"fullConversation": "Conversations lues", "fullConversation": "Conversations lues",
"translate": { "translate": {
"default": "Traduire", "default": "Traduire",

View File

@ -88,7 +88,7 @@
"content": { "content": {
"expandHint": "Contenuto nascosto" "expandHint": "Contenuto nascosto"
}, },
"filtered": "Filtrato", "filtered": "",
"fullConversation": "Leggi la conversazione", "fullConversation": "Leggi la conversazione",
"translate": { "translate": {
"default": "Traduci", "default": "Traduci",

View File

@ -1,6 +1,6 @@
{ {
"title": "メディアソースを選択", "title": "メディアソースを選択",
"message": "", "message": "メディアの EXIF データはアップロードされません",
"options": { "options": {
"image": "写真をアップロード", "image": "写真をアップロード",
"image_max": "写真をアップロード (最大{{max}}枚)", "image_max": "写真をアップロード (最大{{max}}枚)",

View File

@ -2,7 +2,7 @@
"HTML": { "HTML": {
"accessibilityHint": "タップして内容を展開または折りたたむ", "accessibilityHint": "タップして内容を展開または折りたたむ",
"expanded": "{{hint}}{{moreLines}}", "expanded": "{{hint}}{{moreLines}}",
"moreLines": "", "moreLines": " ({{count}} 行以上)",
"defaultHint": "長いトゥート" "defaultHint": "長いトゥート"
} }
} }

View File

@ -40,9 +40,9 @@
"accessibilityLabel": "このトゥートをブーストしますか?", "accessibilityLabel": "このトゥートをブーストしますか?",
"function": "トゥートをブースト", "function": "トゥートをブースト",
"options": { "options": {
"title": "", "title": "ブーストの可視性を選択",
"public": "", "public": "公開ブースト",
"unlisted": "" "unlisted": "未収載ブースト"
} }
}, },
"favourited": { "favourited": {
@ -88,7 +88,7 @@
"content": { "content": {
"expandHint": "内容を非表示にする" "expandHint": "内容を非表示にする"
}, },
"filtered": "フィルター済み", "filtered": "フィルター: {{phrase}}.",
"fullConversation": "スレッドを読む", "fullConversation": "スレッドを読む",
"translate": { "translate": {
"default": "翻訳", "default": "翻訳",

View File

@ -2,10 +2,10 @@
"screenshot": { "screenshot": {
"title": "プライバシー保護", "title": "プライバシー保護",
"message": "ユーザー名やアバターなど、他のユーザーを特定する情報は公開しないでください。", "message": "ユーザー名やアバターなど、他のユーザーを特定する情報は公開しないでください。",
"button": "確" "button": "確"
}, },
"localCorrupt": { "localCorrupt": {
"message": "ログイン期限が切れました。もう一度ログインしてください。" "message": "ログインの有効期限が切れました。もう一度ログインしてください。"
}, },
"pushError": { "pushError": {
"message": "プッシュサービスのエラー", "message": "プッシュサービスのエラー",

View File

@ -305,7 +305,7 @@
"default": "投稿", "default": "投稿",
"all": "投稿と返信" "all": "投稿と返信"
}, },
"suspended": "" "suspended": "あなたのサーバーのモデレーターによって、アカウントは停止されました"
}, },
"attachments": { "attachments": {
"name": "<0 /><1>\" のメディア</1>" "name": "<0 /><1>\" のメディア</1>"

View File

@ -88,7 +88,7 @@
"content": { "content": {
"expandHint": "숨겨진 콘텐츠" "expandHint": "숨겨진 콘텐츠"
}, },
"filtered": "필터됨", "filtered": "",
"fullConversation": "대화 보기", "fullConversation": "대화 보기",
"translate": { "translate": {
"default": "번역", "default": "번역",

22
src/i18n/pl/common.json Normal file
View File

@ -0,0 +1,22 @@
{
"buttons": {
"OK": "Ok",
"apply": "Zastosuj",
"cancel": "Anuluj"
},
"customEmoji": {
"accessibilityLabel": "Własne emoji {{emoji}}"
},
"message": {
"success": {
"message": "{{function}} pomyślnie"
},
"warning": {
"message": ""
},
"error": {
"message": "{{function}} nie powiodło się, spróbuj ponownie"
}
},
"separator": ", "
}

View File

@ -0,0 +1,76 @@
{
"accessibilityHint": "",
"account": {
"title": "",
"mute": {
"action_false": "",
"action_true": ""
},
"block": {
"action_false": "",
"action_true": ""
},
"reports": {
"action": ""
}
},
"copy": {
"action": "",
"succeed": ""
},
"instance": {
"title": "",
"block": {
"action": "",
"alert": {
"title": "",
"message": "",
"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 @@
{}

View File

@ -0,0 +1,30 @@
{
"server": {
"textInput": {
"placeholder": ""
},
"button": "",
"information": {
"name": "",
"accounts": "",
"statuses": "",
"domains": ""
},
"disclaimer": {
"base": ""
},
"terms": {
"base": ""
}
},
"update": {
"alert": {
"title": "",
"message": "",
"buttons": {
"cancel": "",
"continue": ""
}
}
}
}

View File

@ -0,0 +1,10 @@
{
"title": "",
"message": "",
"options": {
"image": "",
"image_max": "",
"video": "",
"video_max": ""
}
}

View File

@ -0,0 +1,8 @@
{
"HTML": {
"accessibilityHint": "",
"expanded": "",
"moreLines": "",
"defaultHint": ""
}
}

View File

@ -0,0 +1,16 @@
{
"follow": {
"function": ""
},
"block": {
"function": ""
},
"button": {
"error": "",
"blocked_by": "",
"blocking": "",
"following": "",
"requested": "",
"default": ""
}
}

View File

@ -0,0 +1,152 @@
{
"empty": {
"error": {
"message": "Błąd wczytania",
"button": "Spróbuj ponownie"
},
"success": {
"message": "Oś czasu pusta"
}
},
"end": {
"message": ""
},
"lookback": {
"message": ""
},
"refresh": {
"fetchPreviousPage": "",
"refetch": ""
},
"shared": {
"actioned": {
"pinned": "",
"favourite": "",
"status": "",
"follow": "",
"follow_request": "",
"poll": "",
"reblog": {
"default": "",
"notification": ""
},
"update": ""
},
"actions": {
"reply": {
"accessibilityLabel": ""
},
"reblogged": {
"accessibilityLabel": "",
"function": "",
"options": {
"title": "",
"public": "",
"unlisted": ""
}
},
"favourited": {
"accessibilityLabel": "",
"function": ""
},
"bookmarked": {
"accessibilityLabel": "",
"function": ""
}
},
"actionsUsers": {
"reblogged_by": {
"accessibilityLabel": "",
"accessibilityHint": "",
"text": ""
},
"favourited_by": {
"accessibilityLabel": "",
"accessibilityHint": "",
"text": ""
},
"history": {
"accessibilityLabel": "",
"accessibilityHint": "",
"text_one": "",
"text_other": ""
}
},
"attachment": {
"sensitive": {
"button": ""
},
"unsupported": {
"text": "",
"button": ""
}
},
"avatar": {
"accessibilityLabel": "",
"accessibilityHint": ""
},
"content": {
"expandHint": ""
},
"filtered": "",
"fullConversation": "",
"translate": {
"default": "",
"succeed": "",
"failed": "",
"source_not_supported": "",
"target_not_supported": ""
},
"header": {
"shared": {
"account": {
"name": {
"accessibilityHint": ""
},
"account": {
"accessibilityHint": ""
}
},
"application": "",
"edited": {
"accessibilityLabel": ""
},
"muted": {
"accessibilityLabel": ""
},
"visibility": {
"direct": {
"accessibilityLabel": ""
},
"private": {
"accessibilityLabel": ""
}
}
},
"conversation": {
"withAccounts": "",
"delete": {
"function": ""
}
}
},
"poll": {
"meta": {
"button": {
"vote": "",
"refresh": ""
},
"count": {
"voters_one": "",
"voters_other": "",
"votes_one": "",
"votes_other": ""
},
"expiration": {
"expired": "",
"until": ""
}
}
}
}
}

18
src/i18n/pl/screens.json Normal file
View File

@ -0,0 +1,18 @@
{
"screenshot": {
"title": "",
"message": "",
"button": ""
},
"localCorrupt": {
"message": ""
},
"pushError": {
"message": "",
"description": ""
},
"shareError": {
"imageNotSupported": "",
"videoNotSupported": ""
}
}

View File

@ -0,0 +1,6 @@
{
"heading": "",
"content": {
"select_account": ""
}
}

View File

@ -0,0 +1,20 @@
{
"content": {
"altText": {
"heading": ""
},
"notificationsFilter": {
"heading": "",
"content": {
"follow": "",
"follow_request": "",
"favourite": "",
"reblog": "",
"mention": "",
"poll": "",
"status": "",
"update": ""
}
}
}
}

View File

@ -0,0 +1,10 @@
{
"heading": "",
"content": {
"published": "",
"button": {
"read": "",
"unread": ""
}
}
}

View File

@ -0,0 +1,179 @@
{
"heading": {
"left": {
"button": "",
"alert": {
"title": "",
"buttons": {
"save": "",
"delete": "",
"cancel": ""
}
}
},
"right": {
"button": {
"default": "",
"conversation": "",
"reply": "",
"deleteEdit": "",
"edit": "",
"share": ""
},
"alert": {
"default": {
"title": "",
"button": ""
},
"removeReply": {
"title": "",
"description": "",
"cancel": "",
"confirm": ""
}
}
}
},
"content": {
"root": {
"header": {
"postingAs": "",
"spoilerInput": {
"placeholder": ""
},
"textInput": {
"placeholder": "",
"keyboardImage": {
"exceedMaximum": {
"title": "",
"OK": ""
}
}
}
},
"footer": {
"attachments": {
"sensitive": "",
"remove": {
"accessibilityLabel": ""
},
"edit": {
"accessibilityLabel": ""
},
"upload": {
"accessibilityLabel": ""
}
},
"emojis": {
"accessibilityHint": ""
},
"poll": {
"option": {
"placeholder": {
"accessibilityLabel": "",
"single": "",
"multiple": ""
}
},
"quantity": {
"reduce": {
"accessibilityLabel": "",
"accessibilityHint": ""
},
"increase": {
"accessibilityLabel": "",
"accessibilityHint": ""
}
},
"multiple": {
"heading": "",
"options": {
"single": "",
"multiple": "",
"cancel": ""
}
},
"expiration": {
"heading": "",
"options": {
"300": "",
"1800": "",
"3600": "",
"21600": "",
"86400": "",
"259200": "",
"604800": "",
"cancel": ""
}
}
}
},
"actions": {
"attachment": {
"accessibilityLabel": "",
"accessibilityHint": "",
"failed": {
"alert": {
"title": "",
"button": ""
}
}
},
"poll": {
"accessibilityLabel": "",
"accessibilityHint": ""
},
"visibility": {
"accessibilityLabel": "",
"title": "",
"options": {
"public": "",
"unlisted": "",
"private": "",
"direct": "",
"cancel": ""
}
},
"spoiler": {
"accessibilityLabel": ""
},
"emoji": {
"accessibilityLabel": "",
"accessibilityHint": ""
}
},
"drafts_one": "",
"drafts_other": ""
},
"editAttachment": {
"header": {
"title": "",
"right": {
"accessibilityLabel": "",
"failed": {
"title": "",
"button": ""
}
}
},
"content": {
"altText": {
"heading": "",
"placeholder": ""
},
"imageFocus": ""
}
},
"draftsList": {
"header": {
"title": ""
},
"warning": "",
"content": {
"accessibilityHint": "",
"textEmpty": ""
},
"checkAttachment": ""
}
}
}

View File

@ -0,0 +1,17 @@
{
"content": {
"actions": {
"accessibilityLabel": "",
"accessibilityHint": ""
},
"options": {
"save": "",
"share": "",
"cancel": ""
},
"save": {
"succeed": "",
"failed": ""
}
}
}

View File

@ -0,0 +1,354 @@
{
"tabs": {
"local": {
"name": ""
},
"public": {
"name": "",
"segments": {
"left": "",
"right": ""
}
},
"notifications": {
"name": ""
},
"me": {
"name": ""
}
},
"common": {
"search": {
"accessibilityLabel": "",
"accessibilityHint": ""
}
},
"notifications": {
"filter": {
"accessibilityLabel": "",
"accessibilityHint": ""
}
},
"me": {
"stacks": {
"bookmarks": {
"name": ""
},
"conversations": {
"name": ""
},
"favourites": {
"name": ""
},
"fontSize": {
"name": ""
},
"language": {
"name": ""
},
"lists": {
"name": ""
},
"list": {
"name": ""
},
"push": {
"name": ""
},
"profile": {
"name": ""
},
"profileName": {
"name": ""
},
"profileNote": {
"name": ""
},
"profileFields": {
"name": ""
},
"settings": {
"name": ""
},
"webSettings": {
"name": ""
},
"switch": {
"name": ""
}
},
"fontSize": {
"demo": "",
"sizes": {
"S": "",
"M": "",
"L": "",
"XL": "",
"XXL": ""
}
},
"profile": {
"cancellation": {
"title": "",
"message": "",
"buttons": {
"cancel": "",
"discard": ""
}
},
"feedback": {
"succeed": "",
"failed": ""
},
"root": {
"name": {
"title": ""
},
"avatar": {
"title": "",
"description": ""
},
"header": {
"title": "",
"description": ""
},
"note": {
"title": ""
},
"fields": {
"title": "",
"total_one": "",
"total_other": ""
},
"visibility": {
"title": "",
"options": {
"public": "",
"unlisted": "",
"private": "",
"cancel": ""
}
},
"sensitive": {
"title": ""
},
"lock": {
"title": "",
"description": ""
},
"bot": {
"title": "",
"description": ""
}
},
"fields": {
"group": "",
"label": "",
"content": ""
},
"mediaSelectionFailed": ""
},
"push": {
"notAvailable": "",
"enable": {
"direct": "",
"settings": ""
},
"global": {
"heading": "",
"description": ""
},
"decode": {
"heading": "",
"description": ""
},
"default": {
"heading": ""
},
"follow": {
"heading": ""
},
"follow_request": {
"heading": ""
},
"favourite": {
"heading": ""
},
"reblog": {
"heading": ""
},
"mention": {
"heading": ""
},
"poll": {
"heading": ""
},
"status": {
"heading": ""
},
"howitworks": ""
},
"root": {
"announcements": {
"content": {
"unread": "",
"read": "",
"empty": ""
}
},
"push": {
"content": {
"enabled": "",
"disabled": ""
}
},
"update": {
"title": ""
},
"logout": {
"button": "",
"alert": {
"title": "",
"message": "",
"buttons": {
"logout": "",
"cancel": ""
}
}
}
},
"settings": {
"fontsize": {
"heading": "",
"content": {
"S": "",
"M": "",
"L": "",
"XL": "",
"XXL": ""
}
},
"language": {
"heading": "",
"options": {
"cancel": ""
}
},
"theme": {
"heading": "",
"options": {
"auto": "",
"light": "",
"dark": "",
"cancel": ""
}
},
"darkTheme": {
"heading": "",
"options": {
"lighter": "",
"darker": "",
"cancel": ""
}
},
"browser": {
"heading": "",
"options": {
"internal": "",
"external": "",
"cancel": ""
}
},
"staticEmoji": {
"heading": "",
"description": ""
},
"feedback": {
"heading": ""
},
"support": {
"heading": ""
},
"review": {
"heading": ""
},
"contact": {
"heading": ""
},
"analytics": {
"heading": "",
"description": ""
},
"version": "",
"instanceVersion": ""
},
"switch": {
"existing": "",
"new": ""
}
},
"shared": {
"account": {
"actions": {
"accessibilityLabel": "",
"accessibilityHint": ""
},
"followed_by": "",
"moved": "",
"created_at": "",
"summary": {
"statuses_count": "",
"following_count": "",
"followers_count": ""
},
"toots": {
"default": "",
"all": ""
},
"suspended": ""
},
"attachments": {
"name": ""
},
"search": {
"header": {
"prefix": "",
"placeholder": ""
},
"empty": {
"general": "",
"advanced": {
"header": "",
"example": {
"account": "",
"hashtag": "",
"statusLink": "",
"accountLink": ""
}
}
},
"sections": {
"accounts": "",
"hashtags": "",
"statuses": ""
},
"notFound": ""
},
"toot": {
"name": ""
},
"users": {
"accounts": {
"following": "",
"followers": ""
},
"statuses": {
"reblogged_by": "",
"favourited_by": ""
}
},
"history": {
"name": ""
}
}
}

View File

@ -88,7 +88,7 @@
"content": { "content": {
"expandHint": "Conteúdo oculto" "expandHint": "Conteúdo oculto"
}, },
"filtered": "Filtrado", "filtered": "",
"fullConversation": "Ler conversas", "fullConversation": "Ler conversas",
"translate": { "translate": {
"default": "Traduzir", "default": "Traduzir",

View File

@ -88,7 +88,7 @@
"content": { "content": {
"expandHint": "Nội dung ẩn" "expandHint": "Nội dung ẩn"
}, },
"filtered": "Đã lọc", "filtered": "Đã lọc: {{phrase}}.",
"fullConversation": "Xem thêm", "fullConversation": "Xem thêm",
"translate": { "translate": {
"default": "Dịch", "default": "Dịch",

View File

@ -305,7 +305,7 @@
"default": "Tút", "default": "Tút",
"all": "Lượt trả lời" "all": "Lượt trả lời"
}, },
"suspended": "" "suspended": "Người này đã bị vô hiệu hóa"
}, },
"attachments": { "attachments": {
"name": "<0 /><1>'s media</1>" "name": "<0 /><1>'s media</1>"

View File

@ -88,7 +88,7 @@
"content": { "content": {
"expandHint": "隐藏内容" "expandHint": "隐藏内容"
}, },
"filtered": "已过滤", "filtered": "已过滤{{phrase}}。",
"fullConversation": "阅读全部对话", "fullConversation": "阅读全部对话",
"translate": { "translate": {
"default": "翻译", "default": "翻译",

View File

@ -88,7 +88,7 @@
"content": { "content": {
"expandHint": "隱藏內容" "expandHint": "隱藏內容"
}, },
"filtered": "已過濾", "filtered": "",
"fullConversation": "閱讀全部對話", "fullConversation": "閱讀全部對話",
"translate": { "translate": {
"default": "翻譯", "default": "翻譯",

View File

@ -4,6 +4,7 @@ import Timeline from '@components/Timeline'
import TimelineDefault from '@components/Timeline/Default' import TimelineDefault from '@components/Timeline/Default'
import { createNativeStackNavigator } from '@react-navigation/native-stack' import { createNativeStackNavigator } from '@react-navigation/native-stack'
import { ScreenTabsScreenProps, TabLocalStackParamList } from '@utils/navigation/navigators' import { ScreenTabsScreenProps, TabLocalStackParamList } from '@utils/navigation/navigators'
import usePopToTop from '@utils/navigation/usePopToTop'
import { useListsQuery } from '@utils/queryHooks/lists' import { useListsQuery } from '@utils/queryHooks/lists'
import { QueryKeyTimeline } from '@utils/queryHooks/timeline' import { QueryKeyTimeline } from '@utils/queryHooks/timeline'
import layoutAnimation from '@utils/styles/layoutAnimation' import layoutAnimation from '@utils/styles/layoutAnimation'
@ -26,6 +27,8 @@ const TabLocal = React.memo(
const [queryKey, setQueryKey] = useState<QueryKeyTimeline>(['Timeline', { page: 'Following' }]) const [queryKey, setQueryKey] = useState<QueryKeyTimeline>(['Timeline', { page: 'Following' }])
usePopToTop()
return ( return (
<Stack.Navigator screenOptions={{ headerShadowVisible: false }}> <Stack.Navigator screenOptions={{ headerShadowVisible: false }}>
<Stack.Screen <Stack.Screen

View File

@ -5,6 +5,7 @@ import TimelineNotifications from '@components/Timeline/Notifications'
import navigationRef from '@helpers/navigationRef' import navigationRef from '@helpers/navigationRef'
import { createNativeStackNavigator } from '@react-navigation/native-stack' import { createNativeStackNavigator } from '@react-navigation/native-stack'
import { TabNotificationsStackParamList } from '@utils/navigation/navigators' import { TabNotificationsStackParamList } from '@utils/navigation/navigators'
import usePopToTop from '@utils/navigation/usePopToTop'
import { QueryKeyTimeline } from '@utils/queryHooks/timeline' import { QueryKeyTimeline } from '@utils/queryHooks/timeline'
import React, { useCallback, useMemo } from 'react' import React, { useCallback, useMemo } from 'react'
import { useTranslation } from 'react-i18next' import { useTranslation } from 'react-i18next'
@ -21,9 +22,7 @@ const TabNotifications = React.memo(
() => ({ () => ({
title: t('tabs.notifications.name'), title: t('tabs.notifications.name'),
...(Platform.OS === 'android' && { ...(Platform.OS === 'android' && {
headerCenter: () => ( headerCenter: () => <HeaderCenter content={t('tabs.notifications.name')} />
<HeaderCenter content={t('tabs.notifications.name')} />
)
}), }),
headerRight: () => ( headerRight: () => (
<HeaderRight <HeaderRight
@ -57,6 +56,8 @@ const TabNotifications = React.memo(
[] []
) )
usePopToTop()
return ( return (
<Stack.Navigator screenOptions={{ headerShadowVisible: false }}> <Stack.Navigator screenOptions={{ headerShadowVisible: false }}>
<Stack.Screen <Stack.Screen

View File

@ -4,15 +4,13 @@ import Timeline from '@components/Timeline'
import TimelineDefault from '@components/Timeline/Default' import TimelineDefault from '@components/Timeline/Default'
import SegmentedControl from '@react-native-community/segmented-control' import SegmentedControl from '@react-native-community/segmented-control'
import { createNativeStackNavigator } from '@react-navigation/native-stack' import { createNativeStackNavigator } from '@react-navigation/native-stack'
import { import { ScreenTabsScreenProps, TabPublicStackParamList } from '@utils/navigation/navigators'
ScreenTabsScreenProps, import usePopToTop from '@utils/navigation/usePopToTop'
TabPublicStackParamList
} from '@utils/navigation/navigators'
import { QueryKeyTimeline } from '@utils/queryHooks/timeline' import { QueryKeyTimeline } from '@utils/queryHooks/timeline'
import { useTheme } from '@utils/styles/ThemeManager' import { useTheme } from '@utils/styles/ThemeManager'
import React, { useCallback, useMemo, useState } from 'react' import React, { useCallback, useMemo, useState } from 'react'
import { useTranslation } from 'react-i18next' import { useTranslation } from 'react-i18next'
import { Dimensions, StyleSheet, View } from 'react-native' import { Dimensions } from 'react-native'
import { TabView } from 'react-native-tab-view' import { TabView } from 'react-native-tab-view'
import TabSharedRoot from './Shared/Root' import TabSharedRoot from './Shared/Root'
@ -44,10 +42,8 @@ const TabPublic = React.memo(
appearance={mode} appearance={mode}
values={pages.map(p => p.title)} values={pages.map(p => p.title)}
selectedIndex={segment} selectedIndex={segment}
onChange={({ nativeEvent }) => onChange={({ nativeEvent }) => setSegment(nativeEvent.selectedSegmentIndex)}
setSegment(nativeEvent.selectedSegmentIndex) style={{ flexBasis: '65%' }}
}
style={styles.segmentsContainer}
/> />
), ),
headerRight: () => ( headerRight: () => (
@ -84,9 +80,7 @@ const TabPublic = React.memo(
queryKey={queryKey} queryKey={queryKey}
lookback={page} lookback={page}
customProps={{ customProps={{
renderItem: ({ item }: any) => ( renderItem: ({ item }: any) => <TimelineDefault item={item} queryKey={queryKey} />
<TimelineDefault item={item} queryKey={queryKey} />
)
}} }}
/> />
) )
@ -108,13 +102,11 @@ const TabPublic = React.memo(
[segment] [segment]
) )
usePopToTop()
return ( return (
<Stack.Navigator screenOptions={{ headerShadowVisible: false }}> <Stack.Navigator screenOptions={{ headerShadowVisible: false }}>
<Stack.Screen <Stack.Screen name='Tab-Public-Root' options={screenOptionsRoot} children={children} />
name='Tab-Public-Root'
options={screenOptionsRoot}
children={children}
/>
{TabSharedRoot({ Stack })} {TabSharedRoot({ Stack })}
</Stack.Navigator> </Stack.Navigator>
) )
@ -122,10 +114,4 @@ const TabPublic = React.memo(
() => true () => true
) )
const styles = StyleSheet.create({
segmentsContainer: {
flexBasis: '65%'
}
})
export default TabPublic export default TabPublic

View File

@ -3,7 +3,6 @@ import { NavigatorScreenParams } from '@react-navigation/native'
import { NativeStackScreenProps } from '@react-navigation/native-stack' import { NativeStackScreenProps } from '@react-navigation/native-stack'
import { StackNavigationProp } from '@react-navigation/stack' import { StackNavigationProp } from '@react-navigation/stack'
import { QueryKeyTimeline } from '@utils/queryHooks/timeline' import { QueryKeyTimeline } from '@utils/queryHooks/timeline'
import React from 'react'
export type RootStackParamList = { export type RootStackParamList = {
'Screen-Tabs': NavigatorScreenParams<ScreenTabsStackParamList> 'Screen-Tabs': NavigatorScreenParams<ScreenTabsStackParamList>

View File

@ -0,0 +1,17 @@
import { StackActions, useNavigation } from '@react-navigation/native'
import { getInstanceActive } from '@utils/slices/instancesSlice'
import { useEffect } from 'react'
import { useSelector } from 'react-redux'
// Mostly used when switching account and sub pages were still querying the old instance
const usePopToTop = () => {
const navigation = useNavigation()
const instanceActive = useSelector(getInstanceActive)
return useEffect(() => {
navigation.dispatch(StackActions.popToTop())
}, [instanceActive])
}
export default usePopToTop

View File

@ -3,6 +3,7 @@ import apiTooot from '@api/tooot'
import { displayMessage } from '@components/Message' import { displayMessage } from '@components/Message'
import navigationRef from '@helpers/navigationRef' import navigationRef from '@helpers/navigationRef'
import { useAppDispatch } from '@root/store' import { useAppDispatch } from '@root/store'
import * as Sentry from '@sentry/react-native'
import { InstanceLatest } from '@utils/migrations/instances/migration' import { InstanceLatest } from '@utils/migrations/instances/migration'
import { getExpoToken, retrieveExpoToken } from '@utils/slices/appSlice' import { getExpoToken, retrieveExpoToken } from '@utils/slices/appSlice'
import { disableAllPushes } from '@utils/slices/instancesSlice' import { disableAllPushes } from '@utils/slices/instancesSlice'
@ -33,6 +34,12 @@ const pushUseConnect = ({ t, instances }: Params) => {
url: `push/connect/${expoToken}`, url: `push/connect/${expoToken}`,
sentry: true sentry: true
}).catch(error => { }).catch(error => {
Sentry.setExtras({
API: 'tooot',
...(error?.response && { response: error.response }),
...(error?.request && { request: error.request })
})
Sentry.captureException(error)
Notifications.setBadgeCountAsync(0) Notifications.setBadgeCountAsync(0)
if (error?.status == 404) { if (error?.status == 404) {
displayMessage({ displayMessage({

View File

@ -18,9 +18,9 @@ export type ContextsState = {
} }
export const contextsInitialState = { export const contextsInitialState = {
// After 3 successful postings // After 10 successful postings
storeReview: { storeReview: {
context: 3, context: 10,
current: 0, current: 0,
shown: false shown: false
}, },