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
2023-03-09 14:08:03 +01:00
31 changed files with 1105 additions and 1005 deletions

View File

@ -1,14 +1,13 @@
GEM
remote: https://rubygems.org/
specs:
CFPropertyList (3.0.5)
CFPropertyList (3.0.6)
rexml
activesupport (6.1.7)
activesupport (7.0.4.2)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (>= 1.6, < 2)
minitest (>= 5.1)
tzinfo (~> 2.0)
zeitwerk (~> 2.3)
addressable (2.8.1)
public_suffix (>= 2.0.2, < 6.0)
algoliasearch (1.27.5)
@ -17,16 +16,16 @@ GEM
artifactory (3.0.15)
atomos (0.1.3)
aws-eventstream (1.2.0)
aws-partitions (1.687.0)
aws-sdk-core (3.168.4)
aws-partitions (1.722.0)
aws-sdk-core (3.170.0)
aws-eventstream (~> 1, >= 1.0.2)
aws-partitions (~> 1, >= 1.651.0)
aws-sigv4 (~> 1.5)
jmespath (~> 1, >= 1.6.1)
aws-sdk-kms (1.61.0)
aws-sdk-kms (1.63.0)
aws-sdk-core (~> 3, >= 3.165.0)
aws-sigv4 (~> 1.1)
aws-sdk-s3 (1.117.2)
aws-sdk-s3 (1.119.1)
aws-sdk-core (~> 3, >= 3.165.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.4)
@ -34,15 +33,15 @@ GEM
aws-eventstream (~> 1, >= 1.0.2)
babosa (1.0.4)
claide (1.1.0)
cocoapods (1.11.3)
cocoapods (1.12.0)
addressable (~> 2.8)
claide (>= 1.0.2, < 2.0)
cocoapods-core (= 1.11.3)
cocoapods-core (= 1.12.0)
cocoapods-deintegrate (>= 1.0.3, < 2.0)
cocoapods-downloader (>= 1.4.0, < 2.0)
cocoapods-downloader (>= 1.6.0, < 2.0)
cocoapods-plugins (>= 1.0.0, < 2.0)
cocoapods-search (>= 1.0.0, < 2.0)
cocoapods-trunk (>= 1.4.0, < 2.0)
cocoapods-trunk (>= 1.6.0, < 2.0)
cocoapods-try (>= 1.1.0, < 2.0)
colored2 (~> 3.1)
escape (~> 0.0.4)
@ -50,10 +49,10 @@ GEM
gh_inspector (~> 1.0)
molinillo (~> 0.8.0)
nap (~> 1.0)
ruby-macho (>= 1.0, < 3.0)
ruby-macho (>= 2.3.0, < 3.0)
xcodeproj (>= 1.21.0, < 2.0)
cocoapods-core (1.11.3)
activesupport (>= 5.0, < 7)
cocoapods-core (1.12.0)
activesupport (>= 5.0, < 8)
addressable (~> 2.8)
algoliasearch (~> 1.0)
concurrent-ruby (~> 1.1)
@ -75,7 +74,7 @@ GEM
colored2 (3.1.2)
commander (4.6.0)
highline (~> 2.0.0)
concurrent-ruby (1.1.10)
concurrent-ruby (1.2.2)
declarative (0.0.20)
digest-crc (0.6.4)
rake (>= 12.0.0, < 14.0.0)
@ -84,10 +83,10 @@ GEM
dotenv (2.8.1)
emoji_regex (3.2.3)
escape (0.0.4)
ethon (0.15.0)
ethon (0.16.0)
ffi (>= 1.15.0)
excon (0.95.0)
faraday (1.10.2)
excon (0.99.0)
faraday (1.10.3)
faraday-em_http (~> 1.0)
faraday-em_synchrony (~> 1.0)
faraday-excon (~> 1.1)
@ -116,7 +115,7 @@ GEM
faraday_middleware (1.2.0)
faraday (~> 1.0)
fastimage (2.2.6)
fastlane (2.211.0)
fastlane (2.212.1)
CFPropertyList (>= 2.3, < 4.0.0)
addressable (>= 2.8, < 3.0.0)
artifactory (~> 3.0)
@ -158,15 +157,15 @@ GEM
fastlane-plugin-json (1.1.0)
fastlane-plugin-sentry (1.15.0)
os (~> 1.1, >= 1.1.4)
fastlane-plugin-versioning_android (0.1.0)
fastlane-plugin-versioning_android (0.1.1)
fastlane-plugin-yarn (1.2)
ffi (1.15.5)
fourflusher (2.3.1)
fuzzy_match (2.0.4)
gh_inspector (1.1.3)
google-apis-androidpublisher_v3 (0.32.0)
google-apis-core (>= 0.9.1, < 2.a)
google-apis-core (0.9.2)
google-apis-androidpublisher_v3 (0.35.0)
google-apis-core (>= 0.11.0, < 2.a)
google-apis-core (0.11.0)
addressable (~> 2.5, >= 2.5.1)
googleauth (>= 0.16.2, < 2.a)
httpclient (>= 2.8.1, < 3.a)
@ -175,10 +174,10 @@ GEM
retriable (>= 2.0, < 4.a)
rexml
webrick
google-apis-iamcredentials_v1 (0.16.0)
google-apis-core (>= 0.9.1, < 2.a)
google-apis-playcustomapp_v1 (0.12.0)
google-apis-core (>= 0.9.1, < 2.a)
google-apis-iamcredentials_v1 (0.17.0)
google-apis-core (>= 0.11.0, < 2.a)
google-apis-playcustomapp_v1 (0.13.0)
google-apis-core (>= 0.11.0, < 2.a)
google-apis-storage_v1 (0.19.0)
google-apis-core (>= 0.9.0, < 2.a)
google-cloud-core (1.6.0)
@ -186,7 +185,7 @@ GEM
google-cloud-errors (~> 1.0)
google-cloud-env (1.6.0)
faraday (>= 0.17.3, < 3.0)
google-cloud-errors (1.3.0)
google-cloud-errors (1.3.1)
google-cloud-storage (1.44.0)
addressable (~> 2.8)
digest-crc (~> 0.4)
@ -210,11 +209,11 @@ GEM
concurrent-ruby (~> 1.0)
jmespath (1.6.2)
json (2.6.3)
jwt (2.6.0)
jwt (2.7.0)
memoist (0.16.2)
mini_magick (4.12.0)
mini_mime (1.1.2)
minitest (5.16.3)
minitest (5.18.0)
molinillo (0.8.0)
multi_json (1.15.0)
multipart-post (2.0.0)
@ -224,7 +223,7 @@ GEM
netrc (0.11.0)
optparse (0.1.1)
os (1.1.4)
plist (3.6.0)
plist (3.7.0)
public_suffix (4.0.7)
rake (13.0.6)
representable (3.2.0)
@ -243,7 +242,7 @@ GEM
faraday (>= 0.17.5, < 3.a)
jwt (>= 1.5, < 3.0)
multi_json (~> 1.10)
simctl (1.6.8)
simctl (1.6.10)
CFPropertyList
naturally
terminal-notifier (2.0.0)
@ -256,14 +255,14 @@ GEM
tty-cursor (~> 0.7)
typhoeus (1.4.0)
ethon (>= 0.9.0)
tzinfo (2.0.5)
tzinfo (2.0.6)
concurrent-ruby (~> 1.0)
uber (0.1.0)
unf (0.1.4)
unf_ext
unf_ext (0.0.8.2)
unicode-display_width (1.8.0)
webrick (1.7.0)
webrick (1.8.1)
word_wrap (1.0.0)
xcodeproj (1.22.0)
CFPropertyList (>= 2.3.3, < 4.0)
@ -276,7 +275,6 @@ GEM
rouge (~> 2.0.7)
xcpretty-travis-formatter (1.0.1)
xcpretty (~> 0.2, >= 0.0.7)
zeitwerk (2.6.1)
PLATFORMS
arm64-darwin-22

View File

@ -11,6 +11,7 @@ Please **do not** create a pull request to update translation. tooot's translati
## Special thanks
- [@dzmitry.zubialevich](https://crowdin.com/profile/dzmitry.zubialevich) for Belarusian translation
- [@amrtf](https://crowdin.com/profile/amrtf) for Catalan and Spanish translation
- [@forenta](https://github.com/forenta) for German translation
- [@pat](https://piaille.fr/@pat) for French translation

View File

@ -1,4 +1,2 @@
Enjoy toooting! This version includes following improvements and fixes:
- Added following remote instance
- Added set note of followed users
- Best effort load remote user's toots
- Added Belarusian language

View File

@ -1,4 +1,2 @@
toooting愉快此版本包括以下改进和修复
- 新增关注远程实例功能
- 新增关注用户备注功能
- 加载远程用户的嘟文
- 新增白俄罗斯语

View File

@ -52,19 +52,19 @@ PODS:
- EXSplashScreen (0.18.1):
- ExpoModulesCore
- React-Core
- FBLazyVector (0.71.3)
- FBReactNativeSpec (0.71.3):
- FBLazyVector (0.71.4)
- FBReactNativeSpec (0.71.4):
- RCT-Folly (= 2021.07.22.00)
- RCTRequired (= 0.71.3)
- RCTTypeSafety (= 0.71.3)
- React-Core (= 0.71.3)
- React-jsi (= 0.71.3)
- ReactCommon/turbomodule/core (= 0.71.3)
- RCTRequired (= 0.71.4)
- RCTTypeSafety (= 0.71.4)
- React-Core (= 0.71.4)
- React-jsi (= 0.71.4)
- ReactCommon/turbomodule/core (= 0.71.4)
- fmt (6.2.1)
- glog (0.3.5)
- hermes-engine (0.71.3):
- hermes-engine/Pre-built (= 0.71.3)
- hermes-engine/Pre-built (0.71.3)
- hermes-engine (0.71.4):
- hermes-engine/Pre-built (= 0.71.4)
- hermes-engine/Pre-built (0.71.4)
- libaom (2.0.2):
- libvmaf
- libavif (0.10.1):
@ -104,26 +104,26 @@ PODS:
- fmt (~> 6.2.1)
- glog
- libevent
- RCTRequired (0.71.3)
- RCTTypeSafety (0.71.3):
- FBLazyVector (= 0.71.3)
- RCTRequired (= 0.71.3)
- React-Core (= 0.71.3)
- React (0.71.3):
- React-Core (= 0.71.3)
- React-Core/DevSupport (= 0.71.3)
- React-Core/RCTWebSocket (= 0.71.3)
- React-RCTActionSheet (= 0.71.3)
- React-RCTAnimation (= 0.71.3)
- React-RCTBlob (= 0.71.3)
- React-RCTImage (= 0.71.3)
- React-RCTLinking (= 0.71.3)
- React-RCTNetwork (= 0.71.3)
- React-RCTSettings (= 0.71.3)
- React-RCTText (= 0.71.3)
- React-RCTVibration (= 0.71.3)
- React-callinvoker (0.71.3)
- React-Codegen (0.71.3):
- RCTRequired (0.71.4)
- RCTTypeSafety (0.71.4):
- FBLazyVector (= 0.71.4)
- RCTRequired (= 0.71.4)
- React-Core (= 0.71.4)
- React (0.71.4):
- React-Core (= 0.71.4)
- React-Core/DevSupport (= 0.71.4)
- React-Core/RCTWebSocket (= 0.71.4)
- React-RCTActionSheet (= 0.71.4)
- React-RCTAnimation (= 0.71.4)
- React-RCTBlob (= 0.71.4)
- React-RCTImage (= 0.71.4)
- React-RCTLinking (= 0.71.4)
- React-RCTNetwork (= 0.71.4)
- React-RCTSettings (= 0.71.4)
- React-RCTText (= 0.71.4)
- React-RCTVibration (= 0.71.4)
- React-callinvoker (0.71.4)
- React-Codegen (0.71.4):
- FBReactNativeSpec
- hermes-engine
- RCT-Folly
@ -134,209 +134,209 @@ PODS:
- React-jsiexecutor
- ReactCommon/turbomodule/bridging
- ReactCommon/turbomodule/core
- React-Core (0.71.3):
- React-Core (0.71.4):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default (= 0.71.3)
- React-cxxreact (= 0.71.3)
- React-Core/Default (= 0.71.4)
- React-cxxreact (= 0.71.4)
- React-hermes
- React-jsi (= 0.71.3)
- React-jsiexecutor (= 0.71.3)
- React-perflogger (= 0.71.3)
- React-jsi (= 0.71.4)
- React-jsiexecutor (= 0.71.4)
- React-perflogger (= 0.71.4)
- Yoga
- React-Core/CoreModulesHeaders (0.71.3):
- React-Core/CoreModulesHeaders (0.71.4):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.3)
- React-cxxreact (= 0.71.4)
- React-hermes
- React-jsi (= 0.71.3)
- React-jsiexecutor (= 0.71.3)
- React-perflogger (= 0.71.3)
- React-jsi (= 0.71.4)
- React-jsiexecutor (= 0.71.4)
- React-perflogger (= 0.71.4)
- Yoga
- React-Core/Default (0.71.3):
- React-Core/Default (0.71.4):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-cxxreact (= 0.71.3)
- React-cxxreact (= 0.71.4)
- React-hermes
- React-jsi (= 0.71.3)
- React-jsiexecutor (= 0.71.3)
- React-perflogger (= 0.71.3)
- React-jsi (= 0.71.4)
- React-jsiexecutor (= 0.71.4)
- React-perflogger (= 0.71.4)
- Yoga
- React-Core/DevSupport (0.71.3):
- React-Core/DevSupport (0.71.4):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default (= 0.71.3)
- React-Core/RCTWebSocket (= 0.71.3)
- React-cxxreact (= 0.71.3)
- React-Core/Default (= 0.71.4)
- React-Core/RCTWebSocket (= 0.71.4)
- React-cxxreact (= 0.71.4)
- React-hermes
- React-jsi (= 0.71.3)
- React-jsiexecutor (= 0.71.3)
- React-jsinspector (= 0.71.3)
- React-perflogger (= 0.71.3)
- React-jsi (= 0.71.4)
- React-jsiexecutor (= 0.71.4)
- React-jsinspector (= 0.71.4)
- React-perflogger (= 0.71.4)
- Yoga
- React-Core/RCTActionSheetHeaders (0.71.3):
- React-Core/RCTActionSheetHeaders (0.71.4):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.3)
- React-cxxreact (= 0.71.4)
- React-hermes
- React-jsi (= 0.71.3)
- React-jsiexecutor (= 0.71.3)
- React-perflogger (= 0.71.3)
- React-jsi (= 0.71.4)
- React-jsiexecutor (= 0.71.4)
- React-perflogger (= 0.71.4)
- Yoga
- React-Core/RCTAnimationHeaders (0.71.3):
- React-Core/RCTAnimationHeaders (0.71.4):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.3)
- React-cxxreact (= 0.71.4)
- React-hermes
- React-jsi (= 0.71.3)
- React-jsiexecutor (= 0.71.3)
- React-perflogger (= 0.71.3)
- React-jsi (= 0.71.4)
- React-jsiexecutor (= 0.71.4)
- React-perflogger (= 0.71.4)
- Yoga
- React-Core/RCTBlobHeaders (0.71.3):
- React-Core/RCTBlobHeaders (0.71.4):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.3)
- React-cxxreact (= 0.71.4)
- React-hermes
- React-jsi (= 0.71.3)
- React-jsiexecutor (= 0.71.3)
- React-perflogger (= 0.71.3)
- React-jsi (= 0.71.4)
- React-jsiexecutor (= 0.71.4)
- React-perflogger (= 0.71.4)
- Yoga
- React-Core/RCTImageHeaders (0.71.3):
- React-Core/RCTImageHeaders (0.71.4):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.3)
- React-cxxreact (= 0.71.4)
- React-hermes
- React-jsi (= 0.71.3)
- React-jsiexecutor (= 0.71.3)
- React-perflogger (= 0.71.3)
- React-jsi (= 0.71.4)
- React-jsiexecutor (= 0.71.4)
- React-perflogger (= 0.71.4)
- Yoga
- React-Core/RCTLinkingHeaders (0.71.3):
- React-Core/RCTLinkingHeaders (0.71.4):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.3)
- React-cxxreact (= 0.71.4)
- React-hermes
- React-jsi (= 0.71.3)
- React-jsiexecutor (= 0.71.3)
- React-perflogger (= 0.71.3)
- React-jsi (= 0.71.4)
- React-jsiexecutor (= 0.71.4)
- React-perflogger (= 0.71.4)
- Yoga
- React-Core/RCTNetworkHeaders (0.71.3):
- React-Core/RCTNetworkHeaders (0.71.4):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.3)
- React-cxxreact (= 0.71.4)
- React-hermes
- React-jsi (= 0.71.3)
- React-jsiexecutor (= 0.71.3)
- React-perflogger (= 0.71.3)
- React-jsi (= 0.71.4)
- React-jsiexecutor (= 0.71.4)
- React-perflogger (= 0.71.4)
- Yoga
- React-Core/RCTSettingsHeaders (0.71.3):
- React-Core/RCTSettingsHeaders (0.71.4):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.3)
- React-cxxreact (= 0.71.4)
- React-hermes
- React-jsi (= 0.71.3)
- React-jsiexecutor (= 0.71.3)
- React-perflogger (= 0.71.3)
- React-jsi (= 0.71.4)
- React-jsiexecutor (= 0.71.4)
- React-perflogger (= 0.71.4)
- Yoga
- React-Core/RCTTextHeaders (0.71.3):
- React-Core/RCTTextHeaders (0.71.4):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.3)
- React-cxxreact (= 0.71.4)
- React-hermes
- React-jsi (= 0.71.3)
- React-jsiexecutor (= 0.71.3)
- React-perflogger (= 0.71.3)
- React-jsi (= 0.71.4)
- React-jsiexecutor (= 0.71.4)
- React-perflogger (= 0.71.4)
- Yoga
- React-Core/RCTVibrationHeaders (0.71.3):
- React-Core/RCTVibrationHeaders (0.71.4):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- React-cxxreact (= 0.71.3)
- React-cxxreact (= 0.71.4)
- React-hermes
- React-jsi (= 0.71.3)
- React-jsiexecutor (= 0.71.3)
- React-perflogger (= 0.71.3)
- React-jsi (= 0.71.4)
- React-jsiexecutor (= 0.71.4)
- React-perflogger (= 0.71.4)
- Yoga
- React-Core/RCTWebSocket (0.71.3):
- React-Core/RCTWebSocket (0.71.4):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default (= 0.71.3)
- React-cxxreact (= 0.71.3)
- React-Core/Default (= 0.71.4)
- React-cxxreact (= 0.71.4)
- React-hermes
- React-jsi (= 0.71.3)
- React-jsiexecutor (= 0.71.3)
- React-perflogger (= 0.71.3)
- React-jsi (= 0.71.4)
- React-jsiexecutor (= 0.71.4)
- React-perflogger (= 0.71.4)
- Yoga
- React-CoreModules (0.71.3):
- React-CoreModules (0.71.4):
- RCT-Folly (= 2021.07.22.00)
- RCTTypeSafety (= 0.71.3)
- React-Codegen (= 0.71.3)
- React-Core/CoreModulesHeaders (= 0.71.3)
- React-jsi (= 0.71.3)
- RCTTypeSafety (= 0.71.4)
- React-Codegen (= 0.71.4)
- React-Core/CoreModulesHeaders (= 0.71.4)
- React-jsi (= 0.71.4)
- React-RCTBlob
- React-RCTImage (= 0.71.3)
- ReactCommon/turbomodule/core (= 0.71.3)
- React-cxxreact (0.71.3):
- React-RCTImage (= 0.71.4)
- ReactCommon/turbomodule/core (= 0.71.4)
- React-cxxreact (0.71.4):
- boost (= 1.76.0)
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-callinvoker (= 0.71.3)
- React-jsi (= 0.71.3)
- React-jsinspector (= 0.71.3)
- React-logger (= 0.71.3)
- React-perflogger (= 0.71.3)
- React-runtimeexecutor (= 0.71.3)
- React-hermes (0.71.3):
- React-callinvoker (= 0.71.4)
- React-jsi (= 0.71.4)
- React-jsinspector (= 0.71.4)
- React-logger (= 0.71.4)
- React-perflogger (= 0.71.4)
- React-runtimeexecutor (= 0.71.4)
- React-hermes (0.71.4):
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- RCT-Folly/Futures (= 2021.07.22.00)
- React-cxxreact (= 0.71.3)
- React-cxxreact (= 0.71.4)
- React-jsi
- React-jsiexecutor (= 0.71.3)
- React-jsinspector (= 0.71.3)
- React-perflogger (= 0.71.3)
- React-jsi (0.71.3):
- React-jsiexecutor (= 0.71.4)
- React-jsinspector (= 0.71.4)
- React-perflogger (= 0.71.4)
- React-jsi (0.71.4):
- boost (= 1.76.0)
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-jsiexecutor (0.71.3):
- React-jsiexecutor (0.71.4):
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-cxxreact (= 0.71.3)
- React-jsi (= 0.71.3)
- React-perflogger (= 0.71.3)
- React-jsinspector (0.71.3)
- React-logger (0.71.3):
- React-cxxreact (= 0.71.4)
- React-jsi (= 0.71.4)
- React-perflogger (= 0.71.4)
- React-jsinspector (0.71.4)
- React-logger (0.71.4):
- glog
- react-native-blur (4.3.0):
- React-Core
@ -368,97 +368,97 @@ PODS:
- ReactCommon/turbomodule/core
- react-native-segmented-control (2.4.0):
- React-Core
- React-perflogger (0.71.3)
- React-RCTActionSheet (0.71.3):
- React-Core/RCTActionSheetHeaders (= 0.71.3)
- React-RCTAnimation (0.71.3):
- React-perflogger (0.71.4)
- React-RCTActionSheet (0.71.4):
- React-Core/RCTActionSheetHeaders (= 0.71.4)
- React-RCTAnimation (0.71.4):
- RCT-Folly (= 2021.07.22.00)
- RCTTypeSafety (= 0.71.3)
- React-Codegen (= 0.71.3)
- React-Core/RCTAnimationHeaders (= 0.71.3)
- React-jsi (= 0.71.3)
- ReactCommon/turbomodule/core (= 0.71.3)
- React-RCTAppDelegate (0.71.3):
- RCTTypeSafety (= 0.71.4)
- React-Codegen (= 0.71.4)
- React-Core/RCTAnimationHeaders (= 0.71.4)
- React-jsi (= 0.71.4)
- ReactCommon/turbomodule/core (= 0.71.4)
- React-RCTAppDelegate (0.71.4):
- RCT-Folly
- RCTRequired
- RCTTypeSafety
- React-Core
- ReactCommon/turbomodule/core
- React-RCTBlob (0.71.3):
- React-RCTBlob (0.71.4):
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Codegen (= 0.71.3)
- React-Core/RCTBlobHeaders (= 0.71.3)
- React-Core/RCTWebSocket (= 0.71.3)
- React-jsi (= 0.71.3)
- React-RCTNetwork (= 0.71.3)
- ReactCommon/turbomodule/core (= 0.71.3)
- React-RCTImage (0.71.3):
- React-Codegen (= 0.71.4)
- React-Core/RCTBlobHeaders (= 0.71.4)
- React-Core/RCTWebSocket (= 0.71.4)
- React-jsi (= 0.71.4)
- React-RCTNetwork (= 0.71.4)
- ReactCommon/turbomodule/core (= 0.71.4)
- React-RCTImage (0.71.4):
- RCT-Folly (= 2021.07.22.00)
- RCTTypeSafety (= 0.71.3)
- React-Codegen (= 0.71.3)
- React-Core/RCTImageHeaders (= 0.71.3)
- React-jsi (= 0.71.3)
- React-RCTNetwork (= 0.71.3)
- ReactCommon/turbomodule/core (= 0.71.3)
- React-RCTLinking (0.71.3):
- React-Codegen (= 0.71.3)
- React-Core/RCTLinkingHeaders (= 0.71.3)
- React-jsi (= 0.71.3)
- ReactCommon/turbomodule/core (= 0.71.3)
- React-RCTNetwork (0.71.3):
- RCTTypeSafety (= 0.71.4)
- React-Codegen (= 0.71.4)
- React-Core/RCTImageHeaders (= 0.71.4)
- React-jsi (= 0.71.4)
- React-RCTNetwork (= 0.71.4)
- ReactCommon/turbomodule/core (= 0.71.4)
- React-RCTLinking (0.71.4):
- React-Codegen (= 0.71.4)
- React-Core/RCTLinkingHeaders (= 0.71.4)
- React-jsi (= 0.71.4)
- ReactCommon/turbomodule/core (= 0.71.4)
- React-RCTNetwork (0.71.4):
- RCT-Folly (= 2021.07.22.00)
- RCTTypeSafety (= 0.71.3)
- React-Codegen (= 0.71.3)
- React-Core/RCTNetworkHeaders (= 0.71.3)
- React-jsi (= 0.71.3)
- ReactCommon/turbomodule/core (= 0.71.3)
- React-RCTSettings (0.71.3):
- RCTTypeSafety (= 0.71.4)
- React-Codegen (= 0.71.4)
- React-Core/RCTNetworkHeaders (= 0.71.4)
- React-jsi (= 0.71.4)
- ReactCommon/turbomodule/core (= 0.71.4)
- React-RCTSettings (0.71.4):
- RCT-Folly (= 2021.07.22.00)
- RCTTypeSafety (= 0.71.3)
- React-Codegen (= 0.71.3)
- React-Core/RCTSettingsHeaders (= 0.71.3)
- React-jsi (= 0.71.3)
- ReactCommon/turbomodule/core (= 0.71.3)
- React-RCTText (0.71.3):
- React-Core/RCTTextHeaders (= 0.71.3)
- React-RCTVibration (0.71.3):
- RCTTypeSafety (= 0.71.4)
- React-Codegen (= 0.71.4)
- React-Core/RCTSettingsHeaders (= 0.71.4)
- React-jsi (= 0.71.4)
- ReactCommon/turbomodule/core (= 0.71.4)
- React-RCTText (0.71.4):
- React-Core/RCTTextHeaders (= 0.71.4)
- React-RCTVibration (0.71.4):
- RCT-Folly (= 2021.07.22.00)
- React-Codegen (= 0.71.3)
- React-Core/RCTVibrationHeaders (= 0.71.3)
- React-jsi (= 0.71.3)
- ReactCommon/turbomodule/core (= 0.71.3)
- React-runtimeexecutor (0.71.3):
- React-jsi (= 0.71.3)
- ReactCommon/turbomodule/bridging (0.71.3):
- React-Codegen (= 0.71.4)
- React-Core/RCTVibrationHeaders (= 0.71.4)
- React-jsi (= 0.71.4)
- ReactCommon/turbomodule/core (= 0.71.4)
- React-runtimeexecutor (0.71.4):
- React-jsi (= 0.71.4)
- ReactCommon/turbomodule/bridging (0.71.4):
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-callinvoker (= 0.71.3)
- React-Core (= 0.71.3)
- React-cxxreact (= 0.71.3)
- React-jsi (= 0.71.3)
- React-logger (= 0.71.3)
- React-perflogger (= 0.71.3)
- ReactCommon/turbomodule/core (0.71.3):
- React-callinvoker (= 0.71.4)
- React-Core (= 0.71.4)
- React-cxxreact (= 0.71.4)
- React-jsi (= 0.71.4)
- React-logger (= 0.71.4)
- React-perflogger (= 0.71.4)
- ReactCommon/turbomodule/core (0.71.4):
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-callinvoker (= 0.71.3)
- React-Core (= 0.71.3)
- React-cxxreact (= 0.71.3)
- React-jsi (= 0.71.3)
- React-logger (= 0.71.3)
- React-perflogger (= 0.71.3)
- React-callinvoker (= 0.71.4)
- React-Core (= 0.71.4)
- React-cxxreact (= 0.71.4)
- React-jsi (= 0.71.4)
- React-logger (= 0.71.4)
- React-perflogger (= 0.71.4)
- RNCAsyncStorage (1.17.11):
- React-Core
- RNCClipboard (1.11.1):
- RNCClipboard (1.11.2):
- React-Core
- RNGestureHandler (2.9.0):
- React-Core
- RNReanimated (3.0.0-rc.10):
- RNReanimated (3.0.2):
- DoubleConversion
- FBLazyVector
- FBReactNativeSpec
@ -488,16 +488,16 @@ PODS:
- RNScreens (3.20.0):
- React-Core
- React-RCTImage
- RNSentry (5.0.0):
- RNSentry (5.1.0):
- React-Core
- Sentry/HybridSDK (= 8.0.0)
- Sentry/HybridSDK (= 8.2.0)
- RNShareMenu (6.0.0):
- React
- RNSVG (13.8.0):
- React-Core
- SDWebImage (5.15.4):
- SDWebImage/Core (= 5.15.4)
- SDWebImage/Core (5.15.4)
- SDWebImage (5.15.5):
- SDWebImage/Core (= 5.15.5)
- SDWebImage/Core (5.15.5)
- SDWebImageAVIFCoder (0.9.5):
- libavif (>= 0.9.1)
- SDWebImage (~> 5.10)
@ -506,9 +506,9 @@ PODS:
- SDWebImageWebPCoder (0.9.1):
- libwebp (~> 1.0)
- SDWebImage/Core (~> 5.13)
- Sentry/HybridSDK (8.0.0):
- SentryPrivate (= 8.0.0)
- SentryPrivate (8.0.0)
- Sentry/HybridSDK (8.2.0):
- SentryPrivate (= 8.2.0)
- SentryPrivate (8.2.0)
- Swime (3.0.6)
- Yoga (1.14.0)
@ -785,11 +785,11 @@ SPEC CHECKSUMS:
EXScreenOrientation: 52220f8f2477ed25a37e3b2cdbbaa8635d250256
EXSecureStore: e8923258361cc406d0401af380f12bd05b2b720f
EXSplashScreen: cd7fb052dff5ba8311d5c2455ecbebffe1b7a8ca
FBLazyVector: 60195509584153283780abdac5569feffb8f08cc
FBReactNativeSpec: 9c191fb58d06dc05ab5559a5505fc32139e9e4a2
FBLazyVector: 446e84642979fff0ba57f3c804c2228a473aeac2
FBReactNativeSpec: 241709e132e3bf1526c1c4f00bc5384dd39dfba9
fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9
glog: 04b94705f318337d7ead9e6d17c019bd9b1f6b1b
hermes-engine: 38bfe887e456b33b697187570a08de33969f5db7
hermes-engine: a1f157c49ea579c28b0296bda8530e980c45bdb3
libaom: 9bb51e0f8f9192245e3ca2a1c9e4375d9cbccc52
libavif: e242998ccec1c83bcba0bbdc256f460ad5077348
libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913
@ -798,19 +798,19 @@ SPEC CHECKSUMS:
MMKV: 7f34558bbb5a33b0eaefae2de4b6a20a2ffdad6f
MMKVCore: ddf41b9d9262f058419f9ba7598719af56c02cd3
RCT-Folly: 424b8c9a7a0b9ab2886ffe9c3b041ef628fd4fb1
RCTRequired: bec48f07daf7bcdc2655a0cde84e07d24d2a9e2a
RCTTypeSafety: 171394eebacf71e1cfad79dbfae7ee8fc16ca80a
React: d7433ccb6a8c36e4cbed59a73c0700fc83c3e98a
React-callinvoker: 15f165009bd22ae829b2b600e50bcc98076ce4b8
React-Codegen: b5910000eaf1e0c2f47d29be6f82f5f1264420d7
React-Core: b6f2f78d580a90b83fd7b0d1c6911c799f6eac82
React-CoreModules: e0cbc1a4f4f3f60e23c476fef7ab37be363ea8c1
React-cxxreact: c87f3f124b2117d00d410b35f16c2257e25e50fa
React-hermes: c64ca6bdf16a7069773103c9bedaf30ec90ab38f
React-jsi: 39729361645568e238081b3b3180fbad803f25a4
React-jsiexecutor: 515b703d23ffadeac7687bc2d12fb08b90f0aaa1
React-jsinspector: 9f7c9137605e72ca0343db4cea88006cb94856dd
React-logger: 957e5dc96d9dbffc6e0f15e0ee4d2b42829ff207
RCTRequired: 5a024fdf458fa8c0d82fc262e76f982d4dcdecdd
RCTTypeSafety: b6c253064466411c6810b45f66bc1e43ce0c54ba
React: 715292db5bd46989419445a5547954b25d2090f0
React-callinvoker: 105392d1179058585b564d35b4592fe1c46d6fba
React-Codegen: b75333b93d835afce84b73472927cccaef2c9f8c
React-Core: 88838ed1724c64905fc6c0811d752828a92e395b
React-CoreModules: cd238b4bb8dc8529ccc8b34ceae7267b04ce1882
React-cxxreact: 291bfab79d8098dc5ebab98f62e6bdfe81b3955a
React-hermes: b1e67e9a81c71745704950516f40ee804349641c
React-jsi: c9d5b563a6af6bb57034a82c2b0d39d0a7483bdc
React-jsiexecutor: d6b7fa9260aa3cb40afee0507e3bc1d17ecaa6f2
React-jsinspector: 1f51e775819199d3fe9410e69ee8d4c4161c7b06
React-logger: 0d58569ec51d30d1792c5e86a8e3b78d24b582c6
react-native-blur: 50c9feabacbc5f49b61337ebc32192c6be7ec3c3
react-native-cameraroll: cb752fda6d5268f1646b4390bd5be1f27706b9a0
react-native-image-picker: c33d4e79f0a14a2b66e5065e14946ae63749660b
@ -823,36 +823,36 @@ SPEC CHECKSUMS:
react-native-quick-base64: e657e9197e61b60a9dec49807843052b830da254
react-native-safe-area-context: 39c2d8be3328df5d437ac1700f4f3a4f75716acc
react-native-segmented-control: 06607462630512ff8eef652ec560e6235a30cc3e
React-perflogger: af8a3d31546077f42d729b949925cc4549f14def
React-RCTActionSheet: 57cc5adfefbaaf0aae2cf7e10bccd746f2903673
React-RCTAnimation: 11c61e94da700c4dc915cf134513764d87fc5e2b
React-RCTAppDelegate: c3980adeaadcfd6cb495532e928b36ac6db3c14a
React-RCTBlob: ccc5049d742b41971141415ca86b83b201495695
React-RCTImage: 7a9226b0944f1e76e8e01e35a9245c2477cdbabb
React-RCTLinking: bbe8cc582046a9c04f79c235b73c93700263e8b4
React-RCTNetwork: fc2ca322159dc54e06508d4f5c3e934da63dc013
React-RCTSettings: f1e9db2cdf946426d3f2b210e4ff4ce0f0d842ef
React-RCTText: 1c41dd57e5d742b1396b4eeb251851ce7ff0fca1
React-RCTVibration: 5199a180d04873366a83855de55ac33ce60fe4d5
React-runtimeexecutor: 7bf0dafc7b727d93c8cb94eb00a9d3753c446c3e
ReactCommon: 6f65ea5b7d84deb9e386f670dd11ce499ded7b40
React-perflogger: 0bb0522a12e058f6eb69d888bc16f40c16c4b907
React-RCTActionSheet: bfd675a10f06a18728ea15d82082d48f228a213a
React-RCTAnimation: 2fa220b2052ec75b733112aca39143d34546a941
React-RCTAppDelegate: 8564f93c1d9274e95e3b0c746d08a87ff5a621b2
React-RCTBlob: d0336111f46301ae8aba2e161817e451aad72dd6
React-RCTImage: fec592c46edb7c12a9cde08780bdb4a688416c62
React-RCTLinking: 14eccac5d2a3b34b89dbfa29e8ef6219a153fe2d
React-RCTNetwork: 1fbce92e772e39ca3687a2ebb854501ff6226dd7
React-RCTSettings: 1abea36c9bb16d9979df6c4b42e2ea281b4bbcc5
React-RCTText: 15355c41561a9f43dfd23616d0a0dd40ba05ed61
React-RCTVibration: ad17efcfb2fa8f6bfd8ac0cf48d96668b8b28e0b
React-runtimeexecutor: 8fa50b38df6b992c76537993a2b0553d3b088004
ReactCommon: b49a4b00ca6d181ff74b17c12b2d59ac4add0bde
RNCAsyncStorage: 8616bd5a58af409453ea4e1b246521bb76578d60
RNCClipboard: 2834e1c4af68697089cdd455ee4a4cdd198fa7dd
RNCClipboard: 3f0451a8100393908bea5c5c5b16f96d45f30bfc
RNGestureHandler: 071d7a9ad81e8b83fe7663b303d132406a7d8f39
RNReanimated: fbc356493970e3acddc15586b1bccb5eab3ff1ec
RNReanimated: f0dd6b881808e635ef0673f89642937d6c141314
RNScreens: 218801c16a2782546d30bd2026bb625c0302d70f
RNSentry: eff1f32fe84682feb09a36c5e5f513d6ef964b70
RNSentry: bf01c99057573813a9b965d213801bac4c6a661b
RNShareMenu: cb9dac548c8bf147d06f0bf07296ad51ea9f5fc3
RNSVG: c1e76b81c76cdcd34b4e1188852892dc280eb902
SDWebImage: 1c39de67663e5eebb2f41324d5d580eeea12dd4c
SDWebImage: fd7e1a22f00303e058058278639bf6196ee431fe
SDWebImageAVIFCoder: d759e21cf4efb640cc97250566aa556ad8bb877c
SDWebImageSVGCoder: 6fc109f9c2a82ab44510fff410b88b1a6c271ee8
SDWebImageWebPCoder: 18503de6621dd2c420d680e33d46bf8e1d5169b0
Sentry: 2158a4621096dcd0a3a4f7c80b84b04dde261035
SentryPrivate: 1e3acf96ee818a8d0d95b8e922d39ab6be338ea0
Sentry: cf1d35c866266da58964fe7b62526bda93ffcb38
SentryPrivate: 2909bcc7b19a827b49e9bde0e56116b08d40dfdf
Swime: d7b2c277503b6cea317774aedc2dce05613f8b0b
Yoga: 5ed1699acbba8863755998a4245daa200ff3817b
Yoga: 79dd7410de6f8ad73a77c868d3d368843f0c93e0
PODFILE CHECKSUM: 61a84f1ad8a466fbbbf09e0f8bb3ed30b2d5e301
COCOAPODS: 1.11.3
COCOAPODS: 1.12.0

View File

@ -0,0 +1,2 @@
"NSPhotoLibraryAddUsageDescription" = "Дазвольце tooot захоўваць выявы ў папку камеры";
"NSPhotoLibraryUsageDescription" = "Дазвольце tooot захоўваць выявы ў папку камеры";

View File

@ -70,6 +70,7 @@
AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = SplashScreen.storyboard; path = tooot/SplashScreen.storyboard; sourceTree = "<group>"; };
DF8133F098604A10B0D94952 /* boop.mp3 */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = boop.mp3; path = tooot/boop.mp3; sourceTree = "<group>"; };
E613A80A28282A01003C97D6 /* AppDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = AppDelegate.mm; path = tooot/AppDelegate.mm; sourceTree = "<group>"; };
E6179D6E29B94551001930D5 /* be */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = be; path = be.lproj/InfoPlist.strings; sourceTree = "<group>"; };
E6217B7E293C1EBF00B1755E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/InfoPlist.strings; sourceTree = "<group>"; };
E633A420281EAEAB000E540F /* ShareExtension.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = ShareExtension.appex; sourceTree = BUILT_PRODUCTS_DIR; };
E633A427281EAEAB000E540F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
@ -302,6 +303,7 @@
ca,
uk,
nb,
be,
);
mainGroup = 83CBB9F61A601CBA00E9B192;
productRefGroup = 83CBBA001A601CBA00E9B192 /* Products */;
@ -536,6 +538,7 @@
E6A4895D293C1F740047951A /* ca */,
E6D64C7A294A90840098F3AC /* uk */,
E6FD3AA7299EE8A900774C18 /* nb */,
E6179D6E29B94551001930D5 /* be */,
);
name = InfoPlist.strings;
sourceTree = "<group>";

View File

@ -1,6 +1,6 @@
{
"name": "tooot",
"version": "4.9.0",
"version": "4.9.1",
"description": "tooot for Mastodon",
"author": "xmflsct <me@xmflsct.com>",
"license": "GPL-3.0-or-later",
@ -29,19 +29,19 @@
"@neverdull-agency/expo-unlimited-secure-store": "^1.0.10",
"@react-native-async-storage/async-storage": "~1.17.11",
"@react-native-camera-roll/camera-roll": "^5.2.4",
"@react-native-clipboard/clipboard": "^1.11.1",
"@react-native-clipboard/clipboard": "^1.11.2",
"@react-native-community/blur": "^4.3.0",
"@react-native-community/netinfo": "9.3.7",
"@react-native-firebase/app": "^17.3.1",
"@react-native-firebase/app": "^17.3.2",
"@react-native-menu/menu": "^0.7.3",
"@react-native-segmented-control/segmented-control": "^2.4.0",
"@react-navigation/bottom-tabs": "^6.5.6",
"@react-navigation/native": "^6.1.5",
"@react-navigation/native-stack": "^6.9.11",
"@react-navigation/stack": "^6.3.15",
"@sentry/react-native": "5.0.0",
"@react-navigation/bottom-tabs": "^6.5.7",
"@react-navigation/native": "^6.1.6",
"@react-navigation/native-stack": "^6.9.12",
"@react-navigation/stack": "^6.3.16",
"@sentry/react-native": "5.1.0",
"@sharcoux/slider": "^6.1.1",
"@tanstack/react-query": "^4.24.10",
"@tanstack/react-query": "^4.26.1",
"axios": "^1.3.4",
"diff": "^5.1.0",
"expo": "48.0.0-beta.2",
@ -63,14 +63,14 @@
"expo-video-thumbnails": "^7.2.1",
"expo-web-browser": "~12.1.1",
"htmlparser2": "^8.0.1",
"i18next": "^22.4.10",
"i18next": "^22.4.11",
"linkify-it": "^4.0.1",
"lodash": "^4.17.21",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-i18next": "^12.2.0",
"react-intl": "^6.2.10",
"react-native": "^0.71.3",
"react-native": "^0.71.4",
"react-native-flash-message": "^0.4.0",
"react-native-gesture-handler": "~2.9.0",
"react-native-image-picker": "^5.1.0",
@ -79,17 +79,17 @@
"react-native-mmkv": "~2.7.0",
"react-native-pager-view": "^6.1.4",
"react-native-quick-base64": "^2.0.5",
"react-native-reanimated": "^3.0.0-rc.10",
"react-native-reanimated": "^3.0.2",
"react-native-reanimated-zoom": "^0.3.3",
"react-native-safe-area-context": "^4.5.0",
"react-native-screens": "^3.20.0",
"react-native-share-menu": "^6.0.0",
"react-native-svg": "^13.8.0",
"react-native-swipe-list-view": "^3.2.9",
"react-native-tab-view": "^3.5.0",
"react-native-tab-view": "^3.5.1",
"rn-placeholder": "^3.0.3",
"url-parse": "^1.5.10",
"zeego": "^1.0.2"
"zeego": "^1.1.0"
},
"devDependencies": {
"@babel/core": "^7.21.0",

View File

@ -42,7 +42,6 @@ export interface Props {
'notifyOnChangeProps' | 'getNextPageParam' | 'getPreviousPageParam' | 'select' | 'onSuccess'
>
disableRefresh?: boolean
refreshAutoRefetch?: boolean
disableInfinity?: boolean
readMarker?: 'read_marker_following'
customProps?: Partial<FlatListProps<any>>
@ -53,7 +52,6 @@ const Timeline: React.FC<Props> = ({
queryKey,
queryOptions,
disableRefresh = false,
refreshAutoRefetch = true,
disableInfinity = false,
readMarker = undefined,
customProps
@ -156,7 +154,6 @@ const Timeline: React.FC<Props> = ({
if (
curr === true &&
prev === false &&
refreshAutoRefetch &&
!isFetchingPrev.value &&
fetchingType.value === 0 &&
shouldAutoFetch.value &&
@ -268,7 +265,7 @@ const Timeline: React.FC<Props> = ({
initialNumToRender={3}
maxToRenderPerBatch={2}
onEndReached={() => !disableInfinity && !isFetchingNextPage && fetchNextPage()}
onEndReachedThreshold={0.75}
onEndReachedThreshold={0.8}
ListFooterComponent={
<TimelineFooter queryKey={queryKey} disableInfinity={disableInfinity} />
}

View File

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

View File

@ -38,7 +38,7 @@
},
"update": "Пашырэнне было адрэдагавана",
"admin.sign_up": "{{name}} далучыўся да інстанса",
"admin.report": ""
"admin.report": "{{name}} паскардзіўся на:"
},
"actions": {
"reply": {
@ -100,9 +100,9 @@
},
"filtered": {
"reveal": "Усё роўна паказаць",
"match_v1": "",
"match_v2_one": "",
"match_v2_other": ""
"match_v1": "Адфільтравана: {{phrase}}.",
"match_v2_one": "Адфільтравана па {{filters}}.",
"match_v2_other": "Адфільтравана {{count}} фільтрамі, {{filters}}."
},
"fullConversation": "Чытаць размовы",
"translate": {
@ -116,7 +116,7 @@
"shared": {
"account": {
"name": {
"accessibilityHint": ""
"accessibilityHint": "Бачнае імя карыстальніка"
},
"account": {
"accessibilityHint": "Профіль карыстальніка"
@ -127,22 +127,22 @@
"accessibilityLabel": "Допіс адрэдагаваны"
},
"muted": {
"accessibilityLabel": ""
"accessibilityLabel": "Допіс ігнаруецца"
},
"replies": "",
"replies": "Адказы <0 />",
"visibility": {
"direct": {
"accessibilityLabel": ""
"accessibilityLabel": "Адправіць асабістае паведамленне"
},
"private": {
"accessibilityLabel": ""
"accessibilityLabel": "Допіс бачны толькі падпісчыкам"
}
}
},
"conversation": {
"withAccounts": "З",
"delete": {
"function": ""
"function": "Выдаліць асабістае паведамленне"
}
}
},

17
src/i18n/be/index.ts Normal file
View File

@ -0,0 +1,17 @@
export default {
common: require('./common'),
screens: require('./screens'),
screenAnnouncements: require('./screens/announcements'),
screenCompose: require('./screens/compose'),
screenImageViewer: require('./screens/imageViewer'),
screenTabs: require('./screens/tabs'),
componentContextMenu: require('./components/contextMenu'),
componentEmojis: require('./components/emojis'),
componentInstance: require('./components/instance'),
componentMediaSelector: require('./components/mediaSelector'),
componentParse: require('./components/parse'),
componentRelationship: require('./components/relationship'),
componentTimeline: require('./components/timeline')
}

View File

@ -16,102 +16,102 @@
"exploring": {
"heading": "Агляд",
"trending": "Папулярныя",
"followRemote": "",
"noTitle": "",
"followRemote": "Падпісацца на аддалены інстанс",
"noTitle": "Няма загалоўка",
"errors": {
"existed": "",
"notAvailable": ""
"existed": "Вы ўжо падпісаныя на гэты аддалены інстанс.",
"notAvailable": "Стужка гэтага інстанса недаступная для ўсіх. Паспрабуйце іншы інстанс."
}
}
},
"notifications": {
"name": ""
"name": "Апавяшчэнні"
}
},
"common": {
"search": {
"accessibilityLabel": "",
"accessibilityHint": ""
"accessibilityLabel": "Пошук",
"accessibilityHint": "Шукаць па хэштэгах, карыстальніках ці допісах"
}
},
"notifications": {
"filters": {
"accessibilityLabel": "",
"accessibilityHint": "",
"title": ""
"accessibilityLabel": "Фільтр",
"accessibilityHint": "Адфільтраваць тыпы апавяшчэнняў, якія паказваюцца",
"title": "Паказваць апавяшчэнні"
}
},
"me": {
"stacks": {
"bookmarks": {
"name": ""
"name": "Закладкі"
},
"conversations": {
"name": ""
"name": "Асабістыя паведамленні"
},
"favourites": {
"name": ""
"name": "Абранае"
},
"followedTags": {
"name": ""
"name": "Хэштэгі, на якія вы падпісаліся"
},
"fontSize": {
"name": ""
"name": "Памер шрыфту"
},
"language": {
"name": ""
"name": "Мова"
},
"list": {
"name": ""
"name": "Спіс: {{list}}"
},
"listAccounts": {
"name": ""
"name": "Карыстальнікі ў спісе: {{list}}"
},
"listAdd": {
"name": ""
"name": "Стварыць спіс"
},
"listEdit": {
"name": ""
"name": "Рэдагаваць дэталі спісу"
},
"lists": {
"name": ""
"name": "Спісы"
},
"push": {
"name": ""
"name": "Push-апавяшчэнні"
},
"preferences": {
"name": ""
"name": "Параметры"
},
"preferencesFilters": {
"name": ""
"name": "Усе фільтры змесціва"
},
"preferencesFilterAdd": {
"name": ""
"name": "Стварыць фільтр"
},
"preferencesFilterEdit": {
"name": ""
"name": "Рэдагаваць фільтр"
},
"profile": {
"name": ""
"name": "Рэдагаваць Профіль"
},
"profileName": {
"name": ""
"name": "Рэдагаваць бачнае імя"
},
"profileNote": {
"name": ""
"name": "Рэдагаваць апісанне"
},
"profileFields": {
"name": ""
"name": "Рэдагаваць метаданыя"
},
"settings": {
"name": ""
"name": "Налады праграмы"
},
"switch": {
"name": ""
"name": "Змяніць уліковы запіс"
}
},
"fontSize": {
"demo": "",
"demo": "<p>Гэта дэма допіс😊. Вы можаце выбраць адзін з некалькіх варыянтаў, прыведзеных ніжэй.<br /><br />Гэты параметр уплывае толькі на асноўны змест допісаў, але не на іншыя памеры шрыфтоў.</p>",
"sizes": {
"S": "S",
"M": "M - Стандартны",
@ -129,73 +129,73 @@
"heading": "Рэдагаваць дэталі спісу",
"title": "Назва",
"repliesPolicy": {
"heading": "Адказы будуць бачныя для:",
"heading": "Паказваць адказы:",
"options": {
"none": "",
"list": "",
"followed": ""
"none": "Нікому",
"list": "Удзельнікам спіса",
"followed": "Любому карыстальніку, на якога вы падпісаліся"
}
}
},
"listDelete": {
"heading": "",
"heading": "Выдаліць спіс",
"confirm": {
"title": "",
"message": ""
"title": "Выдаліць спіс \"{{list}}\"?",
"message": "Гэта дзеянне нельга будзе адмяніць."
}
},
"preferences": {
"visibility": {
"title": "",
"title": "Прадвызначаная бачнасць допісаў",
"options": {
"public": "",
"unlisted": "",
"private": ""
"public": "Публічны",
"unlisted": "Прыватны",
"private": "Толькі для падпісчыкаў"
}
},
"sensitive": {
"title": ""
"title": "Прадвызначана пазначаць медыя як далікатныя"
},
"media": {
"title": "",
"title": "Паказ медыя",
"options": {
"default": "",
"show_all": "",
"hide_all": ""
"default": "Схаваць медыя, пазначаныя як далікатныя",
"show_all": "Заўсёды паказваць медыя",
"hide_all": "Заўсёды хаваць медыя"
}
},
"spoilers": {
"title": ""
"title": "Аўтаматычна разгортваць допісы з папярэджаннем аб змесце"
},
"autoplay_gifs": {
"title": ""
"title": "Аўтапрайграванне GIF у допісах"
},
"filters": {
"title": "",
"content": ""
"title": "Фільтры змесціва",
"content": "{{count}} актыўны"
},
"web_only": {
"title": "",
"description": ""
"title": "Абнавіць налады",
"description": "Наступныя налады можна абнавіць толькі праз вэб-інтэрфейс"
}
},
"preferencesFilters": {
"expired": "",
"keywords_one": "",
"keywords_other": "",
"statuses_one": "",
"statuses_other": "",
"context": "",
"expired": "Тэрмін дзеяння скончыўся",
"keywords_one": "{{count}} ключавое слова",
"keywords_other": "{{count}} ключавых слоў",
"statuses_one": "{{count}} допіс",
"statuses_other": "{{count}} допісаў",
"context": "Ужываецца ў <0 />",
"contexts": {
"home": "",
"notifications": "",
"public": "",
"thread": "",
"account": ""
"home": "падпіскі і спісы",
"notifications": "апавяшчэнне",
"public": "глабальнае",
"thread": "размова",
"account": "профіль"
}
},
"preferencesFilter": {
"name": "",
"name": "Імя",
"expiration": "Заканчэнне тэрміну дзеяння",
"expirationOptions": {
"0": "Ніколі",
@ -206,31 +206,31 @@
"604800": "Праз 1 тыдзень",
"18144000": "Праз 1 месяц"
},
"context": "",
"context": "Ужываецца ў",
"contexts": {
"home": "",
"home": "Падпіскі і спісы",
"notifications": "Апавяшчэнне",
"public": "",
"thread": "",
"account": ""
"public": "Глабальная стужка",
"thread": "Выгляд размовы",
"account": "Выгляд профілю"
},
"action": "",
"action": "Пры супадзенні",
"actions": {
"warn": "",
"hide": ""
"warn": "Згорнуты, але можа быць раскрыты",
"hide": "Цалкам схаваны"
},
"keywords": "",
"keyword": "",
"keyword": "Ключавое слова",
"statuses": ""
},
"profile": {
"feedback": {
"succeed": "",
"succeed": "{{type}} абноўлена",
"failed": ""
},
"root": {
"name": {
"title": ""
"title": "Бачная назва"
},
"avatar": {
"title": "Аватар",
@ -244,35 +244,35 @@
"title": "Апісанне"
},
"fields": {
"title": "",
"total_one": "",
"total_other": ""
"title": "Метаданыя",
"total_one": "{{count}} поле",
"total_other": "{{count}} палей"
},
"lock": {
"title": "",
"description": ""
"title": "Зрабіце ўліковы запіс прыватным",
"description": "Вам трэба будзе ўручную зацвярджаць новых падпісчыкаў"
},
"bot": {
"title": "",
"description": ""
"title": "Уліковы запіс бота",
"description": "Гэты ўліковы запіс у асноўным выконвае аўтаматызаваныя дзеянні і можа не кантралявацца"
}
},
"fields": {
"group": "",
"label": "",
"content": ""
"group": "Група {{index}}",
"label": "Назва",
"content": "Змесціва"
},
"mediaSelectionFailed": ""
},
"push": {
"notAvailable": "",
"notAvailable": "Ваш тэлефон не падтрымлівае push-апавяшчэнні",
"enable": {
"direct": "",
"settings": ""
"direct": "Уключыць push-апавяшчэнні",
"settings": "Уключыць у наладах"
},
"missingServerKey": {
"message": "",
"description": ""
"message": "Сервер няправільна наладжаны для push",
"description": "Звярніцеся да адміністратара вашага сервера, каб наладзіць падтрымку push"
},
"global": {
"heading": "",
@ -283,13 +283,13 @@
"description": ""
},
"default": {
"heading": ""
"heading": "Прадвызначана"
},
"follow": {
"heading": ""
"heading": "Новыя падпісчыкі"
},
"follow_request": {
"heading": ""
"heading": "Запыты на падпіску"
},
"favourite": {
"heading": ""
@ -345,22 +345,22 @@
"heading": "Знешні выгляд",
"options": {
"auto": "",
"light": "",
"dark": ""
"light": "Светлы рэжым",
"dark": "Цёмны рэжым"
}
},
"darkTheme": {
"heading": "",
"heading": "Цёмная тэма",
"options": {
"lighter": "",
"darker": ""
"lighter": "Прадвызначаная",
"darker": "Сапраўдны чорны"
}
},
"browser": {
"heading": "",
"heading": "Адкрыццё спасылак",
"options": {
"internal": "",
"external": ""
"internal": "Унутры праграмы",
"external": "Выкарыстоўваць сістэмны браўзер"
}
},
"autoplayGifv": {
@ -376,11 +376,11 @@
"heading": ""
},
"version": "",
"instanceVersion": ""
"instanceVersion": "Версія Mastodon: v{{version}}"
},
"switch": {
"existing": "",
"new": ""
"new": "Увайсці ў інстанс"
}
},
"shared": {
@ -394,24 +394,24 @@
"moved": "",
"created_at": "",
"summary": {
"statuses_count": ""
"statuses_count": "{{count}} допісаў"
},
"toots": {
"default": "",
"all": ""
"default": "Допісы",
"all": "Допісы і адказы"
},
"suspended": ""
"suspended": "Уліковы запіс прыпынены мадэратарамі вашага сервера"
},
"accountInLists": {
"name": "",
"inLists": "",
"notInLists": ""
"name": "Спісы @{{username}}",
"inLists": "У спісах",
"notInLists": "Іншыя спісы"
},
"attachments": {
"name": ""
"name": "<0 /><1> медыя</1>"
},
"filter": {
"name": "",
"name": "Дадаць у фільтр",
"existed": ""
},
"history": {
@ -421,16 +421,16 @@
"name": "",
"report": "",
"forward": {
"heading": ""
"heading": "Ананімна пераслаць на аддалены сервер {{instance}}"
},
"reasons": {
"heading": "",
"heading": "Што не так з гэтым уліковым запісам?",
"spam": "Гэта спам",
"other": "Гэта нешта іншае",
"violation": "Гэта парушае правілы сервера"
},
"comment": {
"heading": ""
"heading": "Вы хочаце яшчэ што-небудзь дадаць?"
},
"violatedRules": {
"heading": "Парушэнне правіл сервера"
@ -442,30 +442,30 @@
"placeholder": "..."
},
"empty": {
"general": "",
"general": "Увядзіце ключавое слова для пошуку <bold>$t(screenTabs:shared.search.sections.accounts)</bold>、<bold>$t(screenTabs:shared.search.sections.hashtags)</bold> або <bold> $t(screenTabs:shared.search.sections.statuses)</bold>",
"advanced": {
"header": "",
"header": "Пашыраны пошук",
"example": {
"account": "",
"hashtag": "",
"statusLink": "",
"accountLink": ""
"account": "$t(shared.search.header.prefix) $t(shared.search.sections.accounts)",
"hashtag": "$t(shared.search.header.prefix) $t(shared.search.sections.hashtags)",
"statusLink": "$t(shared.search.header.prefix) $t(shared.search.sections.statuses)",
"accountLink": "$t(shared.search.header.prefix) $t(shared.search.sections.accounts)"
}
},
"trending": {
"tags": ""
"tags": "Папулярныя тэгі"
}
},
"sections": {
"accounts": "",
"hashtags": "",
"statuses": ""
"accounts": "Карыстальнік",
"hashtags": "Хэштэг",
"statuses": "Допіс"
},
"notFound": "",
"noResult": ""
"notFound": "Немагчыма знайсці <bold>{{searchTerm}}</bold>, звязаны з {{type}}",
"noResult": "Нічога не знойдзена, паспрабуйце іншы тэрмін"
},
"toot": {
"name": "",
"name": "Абмеркаванні",
"remoteFetch": {
"title": "",
"message": ""
@ -480,7 +480,7 @@
"reblogged_by": "",
"favourited_by": ""
},
"resultIncomplete": ""
"resultIncomplete": "Вынікі з аддаленага інстанса няпоўныя"
}
}
}

View File

@ -19,8 +19,8 @@
"followRemote": "Segueix la instància remota",
"noTitle": "Sense títol",
"errors": {
"existed": "",
"notAvailable": ""
"existed": "Ja segueixes aquesta instància remota.",
"notAvailable": "Aquesta cronologia no és accessible públicament. Prova-ho amb una altra instància."
}
}
},

View File

@ -19,8 +19,8 @@
"followRemote": "Seguir instancia remota",
"noTitle": "Sin título",
"errors": {
"existed": "",
"notAvailable": ""
"existed": "Ya estás siguiendo esta instancia remota.",
"notAvailable": "Esta cronología no es accesible públicamente. Por favor, prueba con otra instancia."
}
}
},

View File

@ -17,40 +17,40 @@
},
"followAs": {
"trigger": "Honela jarraitu...",
"succeed_default": "",
"succeed_locked": "",
"failed": ""
"succeed_default": "Orain @{{target}} jarraitzen duzu @{{source}} bezala",
"succeed_locked": "@{{target}}-(r)i jarraitzeko eskaera bidali diozu {{source}} bezala, onarpena itxaroten",
"failed": "Jarraitu honela"
},
"blockReport": "Blokeatu eta salatu",
"block": {
"action_false": "",
"action_true": "",
"action_false": "Blokeatu erabiltzailea",
"action_true": "Desblokeatu erabiltzailea",
"alert": {
"title": ""
"title": "@{{username}} erabiltzailea blokeatzea berresten duzu?"
}
},
"reports": {
"action": "",
"action": "Salatu eta blokeatu erabiltzailea",
"alert": {
"title": ""
"title": "@{{username}} erabiltzailea salatzea eta blokeatzea berresten duzu?"
}
}
},
"at": {
"direct": "",
"public": ""
"direct": "Mezu zuzena",
"public": "Mezu publikoa"
},
"copy": {
"action": "",
"succeed": ""
"action": "Kopiatu tuta",
"succeed": "Kopiatuta"
},
"instance": {
"title": "",
"title": "Instantziarekiko ekintza",
"block": {
"action": "",
"action": "Blokeatu {{instance}} instantzia",
"alert": {
"title": "",
"message": ""
"title": "{{instance}} instantzia blokeatzea berresten duzu?",
"message": "Erabiltzaile konkretu bat mututu edo blokeatu dezakezu.\n\nInstantzia blokeatu ondoren, horren eduki osoa, baita instantzia horretan dituzun jarraitzaileak ere ezabatuak izango dira!"
}
}
},
@ -65,21 +65,21 @@
},
"share": {
"status": {
"action": ""
"action": "Partekatu tuta"
},
"account": {
"action": ""
"action": "Partekatu erabiltzailea"
}
},
"status": {
"title": "",
"title": "Tutarekiko ekintzak",
"edit": {
"action": ""
"action": "Editatu tuta"
},
"delete": {
"action": "",
"action": "Ezabatu tuta",
"alert": {
"title": "",
"title": "Ezabaketa berretsi?",
"message": ""
}
},

View File

@ -1,17 +1,17 @@
{
"screenshot": {
"title": "",
"message": ""
"title": "Pribatutasun-babesa",
"message": "Mesedez, ez ezagutarazi besteen identitatea, adibidez: erabiltzailea, abatarra, etab. Eskerrik asko!"
},
"localCorrupt": {
"message": ""
"message": "Saioa iraungita, mesedez, hasi saioa berriro"
},
"pushError": {
"message": "",
"description": ""
"message": "Push zerbitzuaren errorea",
"description": "Mesedez, gaitu berriro push jakinarazpenak ezarpenetan"
},
"shareError": {
"imageNotSupported": "",
"videoNotSupported": ""
"imageNotSupported": "{{type}} irudi-mota ez da bateragarria",
"videoNotSupported": "{{type}} bideo-mota ez da bateragarria"
}
}

View File

@ -36,136 +36,136 @@
"header": {
"postingAs": "@{{acct}}@{{domain}} bezala tut egiten",
"spoilerInput": {
"placeholder": ""
"placeholder": "Spoilerraren abisu-mezua"
},
"textInput": {
"placeholder": "",
"placeholder": "Zer duzu buruan?",
"keyboardImage": {
"exceedMaximum": {
"title": ""
"title": "Gehienezko eranskin kopurura iritsita"
}
}
}
},
"footer": {
"attachments": {
"sensitive": "",
"sensitive": "Ezarri eranskinak hunkigarri gisa",
"remove": {
"accessibilityLabel": ""
"accessibilityLabel": "Ezabatu igotako eranskina, {{attachment}} zenbakia"
},
"edit": {
"accessibilityLabel": ""
"accessibilityLabel": "Editatu igotako eranskina, {{attachment}} zenbakia"
},
"upload": {
"accessibilityLabel": ""
"accessibilityLabel": "Igo eranskin gehiago"
}
},
"emojis": {
"accessibilityHint": ""
"accessibilityHint": "Sakatu tutari emojiak gehitzeko"
},
"poll": {
"option": {
"placeholder": {
"accessibilityLabel": "",
"single": "",
"multiple": ""
"accessibilityLabel": "Bozketa aukera {{index}}",
"single": "Erantzun bakarra",
"multiple": "Erantzun anitz"
}
},
"quantity": {
"reduce": {
"accessibilityLabel": "",
"accessibilityHint": ""
"accessibilityLabel": "Gutxiagotu bozketaren aukerak {{amount}}-(e)ra",
"accessibilityHint": "Bozketaren gutxieneko aukeretara iritsita, orain {{amount}} daude"
},
"increase": {
"accessibilityLabel": "",
"accessibilityHint": ""
"accessibilityLabel": "Areagotu bozketaren aukerak {{amount}}-(e)ra",
"accessibilityHint": "Bozketaren gehienezko aukeretara iritsita, orain {{amount}} daude"
}
},
"multiple": {
"heading": "",
"heading": "Bozketa-mota",
"options": {
"single": "",
"multiple": ""
"single": "Erantzun bakarra",
"multiple": "Erantzun anitz"
}
},
"expiration": {
"heading": "",
"heading": "Iraungipena",
"options": {
"300": "",
"1800": "",
"3600": "",
"21600": "",
"86400": "",
"259200": "",
"604800": ""
"300": "5 minutu",
"1800": "30 minutu",
"3600": "Ordu 1",
"21600": "6 ordu",
"86400": "Egun 1",
"259200": "3 egun",
"604800": "7 egun"
}
}
}
},
"actions": {
"attachment": {
"accessibilityLabel": "",
"accessibilityHint": "",
"accessibilityLabel": "Igo eranskina",
"accessibilityHint": "Bozketa desgaituko da eranskinen bat badago",
"failed": {
"alert": {
"title": "",
"button": ""
"title": "Igoerak huts egin du",
"button": "Saiatu berriro"
}
}
},
"poll": {
"accessibilityLabel": "",
"accessibilityHint": ""
"accessibilityLabel": "Gehitu bozketa",
"accessibilityHint": "Eranskinak gehitzeko aukera desgaituko da bozketa gaituta badago"
},
"visibility": {
"accessibilityLabel": "",
"title": "",
"accessibilityLabel": "Tutaren ikusgarritasuna {{visibility}} da",
"title": "Tutaren ikusgarritasuna",
"options": {
"public": "",
"unlisted": "",
"private": "",
"direct": ""
"public": "Publiko",
"unlisted": "Zerrendatu gabea",
"private": "Jarraitzaileak soilik",
"direct": "Mezu zuzena"
}
},
"spoiler": {
"accessibilityLabel": ""
"accessibilityLabel": "Spoiler"
},
"emoji": {
"accessibilityLabel": "",
"accessibilityHint": ""
"accessibilityLabel": "Gehitu emojia",
"accessibilityHint": "Ireki emojiak hautatzeko panela, horizontalki irrist egin orriz aldatzeko"
}
},
"drafts_one": "",
"drafts_other": ""
"drafts_one": "Zirriborroa ({{count}})",
"drafts_other": "Zirriborroak ({{count}})"
},
"editAttachment": {
"header": {
"title": "",
"title": "Editatu eranskina",
"right": {
"accessibilityLabel": "",
"accessibilityLabel": "Aldaketak gorde",
"failed": {
"title": "",
"button": ""
"title": "Editatzeak huts egin du",
"button": "Saiatu berriro"
}
}
},
"content": {
"altText": {
"heading": "",
"placeholder": ""
"heading": "Deskribatu edukia ikusmen arazoak dituztenentzat",
"placeholder": "Deskribapen bat gehi diezaiokezu zure edukiari, batzuetan, testu alternatibo bezala ezaguna. Horrela, jende gehiagora iritsiko da, bereziki, itsuak direnei edo ikusmen arazoak dituztenei.\n\nZehatza bada hobe, hala ere, aurkeztu zure edukian azaltzen dena zehazki, honen testuingurua uler ahal izateko."
}
}
},
"draftsList": {
"header": {
"title": ""
"title": "Zirriborroa"
},
"warning": "",
"warning": "Zirriborroak lokalki soilik gordetzen dira, eta gal daitezke. Ez da gomendagarria zirriborroak luzaro gordetzea.",
"content": {
"accessibilityHint": "",
"textEmpty": ""
"accessibilityHint": "Zirriborroa gordeta, sakatu zirriborro hau editatzeko",
"textEmpty": "Eduki hutsa"
},
"checkAttachment": ""
"checkAttachment": "Zerbitzariko eranskinak egiaztatzen..."
}
}
}

View File

@ -1,16 +1,16 @@
{
"tabs": {
"local": {
"name": "",
"name": "Jarraitutakoak",
"options": {
"showBoosts": "",
"showReplies": ""
"showBoosts": "Erakutsi bultzadak",
"showReplies": "Erakutsi erantzunak"
}
},
"public": {
"segments": {
"federated": "",
"local": "",
"federated": "Federatua",
"local": "Bertakoa",
"explore": "Arakatu"
},
"exploring": {
@ -19,183 +19,183 @@
"followRemote": "Jarraitu urrutiko instantzia",
"noTitle": "Izenbururik ez",
"errors": {
"existed": "",
"notAvailable": ""
"existed": "Jada jarraitzen duzu urrutiko instantzia hau.",
"notAvailable": "Instantzia honetako denbora-lerroa ez da publikoki eskuragarria. Mesedez, saia zaitez beste batekin."
}
}
},
"notifications": {
"name": ""
"name": "Jakinarazpenak"
}
},
"common": {
"search": {
"accessibilityLabel": "",
"accessibilityHint": ""
"accessibilityLabel": "Bilatu",
"accessibilityHint": "Bilatu traolak, erabiltzaileak edo tutak"
}
},
"notifications": {
"filters": {
"accessibilityLabel": "",
"accessibilityHint": "",
"title": ""
"accessibilityLabel": "Iragazi",
"accessibilityHint": "Iragazi erakutsitako jakinarazpenen motak",
"title": "Erakutsi jakinarazpenak"
}
},
"me": {
"stacks": {
"bookmarks": {
"name": ""
"name": "Laster-markak"
},
"conversations": {
"name": ""
"name": "Mezu zuzenak"
},
"favourites": {
"name": ""
"name": "Gogokoak"
},
"followedTags": {
"name": ""
"name": "Jarraitutako traolak"
},
"fontSize": {
"name": ""
"name": "Tuten letra-tamaina"
},
"language": {
"name": ""
"name": "Hizkuntza"
},
"list": {
"name": ""
"name": "Zerrenda: {{list}}"
},
"listAccounts": {
"name": ""
"name": "Zerrendako erabiltzaileak: {{list}}"
},
"listAdd": {
"name": ""
"name": "Sortu zerrenda"
},
"listEdit": {
"name": ""
"name": "Editatu zerrendaren xehetasunak"
},
"lists": {
"name": ""
"name": "Zerrendak"
},
"push": {
"name": ""
"name": "Push jakinarazpenak"
},
"preferences": {
"name": ""
"name": "Ezarpenak"
},
"preferencesFilters": {
"name": ""
"name": "Edukien iragazi guztiak"
},
"preferencesFilterAdd": {
"name": ""
"name": "Sortu iragazkia"
},
"preferencesFilterEdit": {
"name": ""
"name": "Editatu iragazkia"
},
"profile": {
"name": ""
"name": "Editatu profila"
},
"profileName": {
"name": ""
"name": "Editatu bistaratutako izena"
},
"profileNote": {
"name": ""
"name": "Editatu deskribapena"
},
"profileFields": {
"name": ""
"name": "Editatu metadatuak"
},
"settings": {
"name": ""
"name": "Aplikazioaren ezarpenak"
},
"switch": {
"name": ""
"name": "Aldatu kontuz"
}
},
"fontSize": {
"demo": "",
"demo": "<p>Tut hau proba bat da 😊. Azpiko aukera ugari erabil ditzakezu.<br /><br />Ezarpen honek soilik tuten eduki nagusian eragiten du, ez bestelakoen testu-tamainan.</p>",
"sizes": {
"S": "",
"M": "",
"L": "",
"XL": "",
"XXL": ""
"S": "S",
"M": "M - Lehenetsia",
"L": "L",
"XL": "XL",
"XXL": "XXL"
}
},
"listAccounts": {
"heading": "",
"error": "",
"empty": ""
"heading": "Kudeatu erabiltzaileak",
"error": "Ezabatu erabiltzailea zerrendatik",
"empty": "Erabiltzailerik ez zerrenda honetan"
},
"listEdit": {
"heading": "",
"title": "",
"heading": "Editatu zerrendaren xehetasunak",
"title": "Izenburua",
"repliesPolicy": {
"heading": "",
"heading": "Erakutsi hauei erantzunak:",
"options": {
"none": "",
"list": "",
"followed": ""
"none": "Inori",
"list": "Zerrendako kideei",
"followed": "Jarraitutako edozeini"
}
}
},
"listDelete": {
"heading": "",
"heading": "Ezabatu zerrenda",
"confirm": {
"title": "",
"message": ""
"title": "{{list}} zerrenda ezabatu?",
"message": "Ekintza honen ondoren ezin da atzera egin."
}
},
"preferences": {
"visibility": {
"title": "",
"title": "Bidalketaren ikusgarritasun lehenetsia",
"options": {
"public": "",
"unlisted": "",
"private": ""
"public": "Publiko",
"unlisted": "Zerrendatu gabea",
"private": "Jarraitzaileak soilik"
}
},
"sensitive": {
"title": ""
"title": "Ezarri edukia hunkigarri gisa lehenespenez"
},
"media": {
"title": "",
"title": "Edukien bistaratzea",
"options": {
"default": "",
"show_all": "",
"hide_all": ""
"default": "Ezkutatu hunkigarri gisa ezarritako edukiak",
"show_all": "Erakutsi beti edukia",
"hide_all": "Ezkutatu beti edukia"
}
},
"spoilers": {
"title": ""
"title": "Automatikoki zabaldu edukiaren abisua duten tutak"
},
"autoplay_gifs": {
"title": ""
"title": "Automatikoki erreproduzitu tutetako GIFak"
},
"filters": {
"title": "",
"content": ""
"title": "Edukien iragazkiak",
"content": "{{count}} aktibo"
},
"web_only": {
"title": "",
"description": ""
"title": "Eguneratu ezarpenak",
"description": "Hurrengo ezarpenak soilik web-interfaze bitartez egunera daitezke"
}
},
"preferencesFilters": {
"expired": "",
"keywords_one": "",
"keywords_other": "",
"statuses_one": "",
"statuses_other": "",
"context": "",
"expired": "Iraungita",
"keywords_one": "Gako-hitz {{count}}",
"keywords_other": "{{count}} gako-hitz",
"statuses_one": "Tut {{count}}",
"statuses_other": "{{count}} tut",
"context": "<0 />-(e)tarako aplikatzen da",
"contexts": {
"home": "",
"notifications": "",
"public": "",
"thread": "",
"account": ""
"home": "jarraitutakoak eta zerrendak",
"notifications": "jakinarazpenak",
"public": "federatua",
"thread": "elkarrizketa",
"account": "profila"
}
},
"preferencesFilter": {
"name": "",
"name": "Izena",
"expiration": "",
"expirationOptions": {
"0": "",
@ -289,123 +289,123 @@
"heading": ""
},
"follow_request": {
"heading": ""
"heading": "Jarraitzeko eskaera"
},
"favourite": {
"heading": ""
"heading": "Gogokoak"
},
"reblog": {
"heading": ""
"heading": "Bultzada"
},
"mention": {
"heading": ""
"heading": "Zuri eginiko aipamena"
},
"poll": {
"heading": ""
"heading": "Bozketen eguneraketak"
},
"status": {
"heading": ""
"heading": "Harpidetutako erabiltzaileen tutak"
},
"update": {
"heading": ""
"heading": "Bultzada editatua izan da"
},
"admin.sign_up": {
"heading": ""
"heading": "Administrazioa: izen-emateak"
},
"admin.report": {
"heading": ""
"heading": "Administrazioa: salaketak"
},
"howitworks": ""
"howitworks": "Informazio gehiago push jakinarazpenen inguruan"
},
"root": {
"announcements": {
"content": {
"unread": "",
"read": "",
"empty": ""
"unread": "{{amount}} irakurri gabe",
"read": "Dena irakurria",
"empty": "Bat ere ez"
}
},
"push": {
"content_true": "",
"content_false": ""
"content_true": "Gaituta",
"content_false": "Desgaituta"
},
"logout": {
"button": "",
"button": "Saioa amaitu",
"alert": {
"title": "",
"message": "",
"title": "Saioa amaitu?",
"message": "Saioa amaitu ondoren, berriro hasi behar duzu saioa",
"buttons": {
"logout": ""
"logout": "Saioa amaitu"
}
}
}
},
"settings": {
"theme": {
"heading": "",
"heading": "Itxura",
"options": {
"auto": "",
"light": "",
"dark": ""
"auto": "Sistemakoa",
"light": "Modu argia",
"dark": "Modu iluna"
}
},
"darkTheme": {
"heading": "",
"heading": "Gai iluna",
"options": {
"lighter": "",
"darker": ""
"lighter": "Lehenetsia",
"darker": "Beltz-beltza"
}
},
"browser": {
"heading": "",
"heading": "Estekak ireki",
"options": {
"internal": "",
"external": ""
"internal": "Aplikazio barruan",
"external": "Sistemako nabigatzailearekin"
}
},
"autoplayGifv": {
"heading": ""
"heading": "Automatikoki erreproduzitu GIFak"
},
"feedback": {
"heading": ""
"heading": "Proposamenak"
},
"support": {
"heading": ""
"heading": "tooot lagundu"
},
"contact": {
"heading": ""
"heading": "tooot-ekin harremanetan jarri"
},
"version": "",
"instanceVersion": ""
"version": "v{{version}} bertsioa",
"instanceVersion": "Mastodonen v{{version}} bertsioa"
},
"switch": {
"existing": "",
"new": ""
"existing": "Aukeratu saioa hasita dutenetatik",
"new": "Saioa hasi instantzian"
}
},
"shared": {
"account": {
"actions": {
"accessibilityLabel": "",
"accessibilityHint": ""
"accessibilityLabel": "{{user}} erabiltzailearekiko ekintzak",
"accessibilityHint": "Erabiltzaile hau mututu, blokeatu, salatu edo partekatu dezakezu"
},
"followed_by": "",
"privateNote": "",
"moved": "",
"created_at": "",
"followed_by": " jarraitzen zaitu",
"privateNote": "Ezarri ohar pribatua",
"moved": "Erabiltzailea mugitu da",
"created_at": "Bateratze-data: {{date}}",
"summary": {
"statuses_count": ""
"statuses_count": "{{count}} tut"
},
"toots": {
"default": "",
"all": ""
"default": "Tutak",
"all": "Tutak eta erantzunak"
},
"suspended": ""
"suspended": "Kontu hau bertan behera utzi dute zure zerbitzariko moderatzaileek"
},
"accountInLists": {
"name": "",
"inLists": "",
"notInLists": ""
"name": "@{{username}}-(r)en zerrendak",
"inLists": "Zerrenda hauetan",
"notInLists": "Beste zerrendak"
},
"attachments": {
"name": ""

View File

@ -2,6 +2,7 @@ import * as Localization from 'expo-localization'
import i18n from 'i18next'
import { initReactI18next } from 'react-i18next'
import be from './be'
import ca from './ca'
import de from './de'
import en from './en'
@ -23,6 +24,7 @@ import '@formatjs/intl-getcanonicallocales/polyfill'
import '@formatjs/intl-locale/polyfill'
import '@formatjs/intl-pluralrules/polyfill'
import '@formatjs/intl-pluralrules/locale-data/be'
import '@formatjs/intl-pluralrules/locale-data/ca'
import '@formatjs/intl-pluralrules/locale-data/de'
import '@formatjs/intl-pluralrules/locale-data/en'
@ -40,6 +42,7 @@ import '@formatjs/intl-pluralrules/locale-data/vi'
import '@formatjs/intl-pluralrules/locale-data/zh'
import '@formatjs/intl-numberformat/polyfill'
import '@formatjs/intl-numberformat/locale-data/be'
import '@formatjs/intl-numberformat/locale-data/ca'
import '@formatjs/intl-numberformat/locale-data/de'
import '@formatjs/intl-numberformat/locale-data/en'
@ -59,6 +62,7 @@ import '@formatjs/intl-numberformat/locale-data/zh-Hant'
import '@formatjs/intl-datetimeformat/polyfill'
import '@formatjs/intl-datetimeformat/add-all-tz'
import '@formatjs/intl-datetimeformat/locale-data/be'
import '@formatjs/intl-datetimeformat/locale-data/ca'
import '@formatjs/intl-datetimeformat/locale-data/de'
import '@formatjs/intl-datetimeformat/locale-data/en'
@ -77,6 +81,7 @@ import '@formatjs/intl-datetimeformat/locale-data/zh-Hans'
import '@formatjs/intl-datetimeformat/locale-data/zh-Hant'
import '@formatjs/intl-relativetimeformat/polyfill'
import '@formatjs/intl-relativetimeformat/locale-data/be'
import '@formatjs/intl-relativetimeformat/locale-data/ca'
import '@formatjs/intl-relativetimeformat/locale-data/de'
import '@formatjs/intl-relativetimeformat/locale-data/en'
@ -102,6 +107,7 @@ i18n.use(initReactI18next).init({
defaultNS: 'common',
resources: {
be,
ca,
de,
en,

View File

@ -1,4 +1,5 @@
const LOCALES = {
be: 'Беларуская',
ca: 'Català',
de: 'Deutsch',
en: 'English',

View File

@ -19,8 +19,8 @@
"followRemote": "Volg externe server",
"noTitle": "Geen Titel",
"errors": {
"existed": "",
"notAvailable": ""
"existed": "Je volgt deze externe instantie al.",
"notAvailable": "De tijdlijn van deze instantie is niet publiek toegankelijk. Probeer een andere instantie."
}
}
},

View File

@ -19,8 +19,8 @@
"followRemote": "Følg annen instans",
"noTitle": "Uten tittel",
"errors": {
"existed": "",
"notAvailable": ""
"existed": "Du følger allerede denne eksterne instansen.",
"notAvailable": "Denne instansens tidslinje er ikke offentlig tilgjengelig. Prøv en annen instans."
}
}
},

View File

@ -19,8 +19,8 @@
"followRemote": "",
"noTitle": "",
"errors": {
"existed": "",
"notAvailable": ""
"existed": "Você já está seguindo esta instância.",
"notAvailable": "A linha do tempo desta instância não é acessível ao público. Por favor, tente outra instância."
}
}
},

View File

@ -19,8 +19,8 @@
"followRemote": "Стежити за віддаленим сервером",
"noTitle": "Без назви",
"errors": {
"existed": "",
"notAvailable": ""
"existed": "Ви вже слідкуєте за цим віддаленим сервером.",
"notAvailable": "Стрічка цього сервера не загальнодоступна. Спробуйте інший сервер."
}
}
},

View File

@ -19,8 +19,8 @@
"followRemote": "跟隨遠端站點",
"noTitle": "無標題",
"errors": {
"existed": "",
"notAvailable": ""
"existed": "你已經跟隨了這個遠端站台",
"notAvailable": "這個站台的時間軸無法直接訪問。請嘗試其它站台。"
}
}
},

View File

@ -146,7 +146,6 @@ const Explore = ({ route: { key: page } }: { route: { key: 'Explore' } }) => {
flRef={flRef}
queryKey={queryKey}
disableRefresh={!remoteActive}
refreshAutoRefetch={false}
customProps={{
keyboardDismissMode: 'on-drag',
keyboardShouldPersistTaps: 'always',

View File

@ -111,7 +111,7 @@ const TabSharedToot: React.FC<TabSharedStackScreenProps<'Tab-Shared-Toot'>> = ({
}
)
setTimeout(() => {
flRef.current?.props.data?.length && setTimeout(() => {
flRef.current?.scrollToIndex({
index: ancestorsCache.current?.length || 0,
viewOffset: 50

View File

@ -14,7 +14,7 @@ export type Params = {
export const TOOOT_API_DOMAIN = mapEnvironment({
release: 'api.tooot.app',
candidate: 'api-candidate.tooot.app',
candidate: 'api.tooot.app',
development: 'api-development.tooot.app'
})

View File

@ -11,7 +11,18 @@ export const updateExpoToken = async (): Promise<string> => {
await setChannels()
}
const getAndSetToken = () =>
Notifications.getExpoPushTokenAsync({
projectId: '3288313f-3ff0-496a-a5a9-d8985e7cad5f',
applicationId: 'com.xmflsct.app.tooot',
devicePushToken: { type: Platform.OS === 'android' ? 'android' : 'ios', data: 'unknown' }
}).then(({ data }) => {
setGlobalStorage('app.expo_token', data)
return data
})
if (expoToken?.length) {
getAndSetToken()
return Promise.resolve(expoToken)
} else {
if (isDevelopment) {
@ -19,12 +30,6 @@ export const updateExpoToken = async (): Promise<string> => {
return Promise.resolve('ExponentPushToken[DEVELOPMENT_1]')
}
return await Notifications.getExpoPushTokenAsync({
experienceId: '@xmflsct/tooot',
applicationId: 'com.xmflsct.app.tooot'
}).then(({ data }) => {
setGlobalStorage('app.expo_token', data)
return data
})
return await getAndSetToken()
}
}

713
yarn.lock

File diff suppressed because it is too large Load Diff