diff --git a/README.md b/README.md
index fb8dc4df..89d1a492 100644
--- a/README.md
+++ b/README.md
@@ -8,14 +8,14 @@
Please **do not** create a pull request to update translation. tooot's translation is managed through [https://crowdin.tooot.app/](https://crowdin.tooot.app/) and Crowdin struggles to properly sync two ways. If there is a minor update and you do not want to register an account on Crowdin, please open an issue.
-
## Special thanks
- [@a_mento](https://crowdin.com/profile/a_mento) for Basques translation
- [@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
+- [@forenta](https://github.com/forenta) for German translation
+- [@heracl.es](https://heracl.es/) for Greek translation
- [@andrigamerita](https://github.com/andrigamerita) for Italian translation
- [@Hikaru](https://github.com/Hikali-47041) and [@la_la](https://mstdn.jp/@la_la_la) for Japanese translation
- [@hellojaccc](https://github.com/hellojaccc) for Korean translation
diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml
index b59f9ac8..973ebcfd 100644
--- a/android/app/src/main/AndroidManifest.xml
+++ b/android/app/src/main/AndroidManifest.xml
@@ -13,7 +13,7 @@
-
+
diff --git a/fastlane/metadata/en-US/release_notes.txt b/fastlane/metadata/en-US/release_notes.txt
index bf034b53..4cacb69f 100644
--- a/fastlane/metadata/en-US/release_notes.txt
+++ b/fastlane/metadata/en-US/release_notes.txt
@@ -1,3 +1,2 @@
Enjoy toooting! This version includes following improvements and fixes:
-- Added Basque language
-- Added Polish language
\ No newline at end of file
+- Added Greek translation
\ No newline at end of file
diff --git a/fastlane/metadata/zh-Hans/release_notes.txt b/fastlane/metadata/zh-Hans/release_notes.txt
index 40cc3d46..e358eec0 100644
--- a/fastlane/metadata/zh-Hans/release_notes.txt
+++ b/fastlane/metadata/zh-Hans/release_notes.txt
@@ -1,4 +1,3 @@
toooting愉快!此版本包括以下改进和修复:
-- 添加neodb.social书影音展示卡片
-- 新增巴斯克语
-- 新增波兰语
\ No newline at end of file
+- 新增希腊语
+- 新增neodb专辑、播客及剧集卡片
\ No newline at end of file
diff --git a/ios/Podfile.lock b/ios/Podfile.lock
index 72afa9af..4b76475d 100644
--- a/ios/Podfile.lock
+++ b/ios/Podfile.lock
@@ -14,13 +14,13 @@ PODS:
- ExpoModulesCore
- EXNotifications (0.18.1):
- ExpoModulesCore
- - Expo (48.0.7):
+ - Expo (48.0.11):
- ExpoModulesCore
- - ExpoCrypto (12.2.1):
+ - ExpoCrypto (12.2.2):
- ExpoModulesCore
- ExpoHaptics (12.2.1):
- ExpoModulesCore
- - ExpoImage (1.0.0):
+ - ExpoImage (1.2.1):
- ExpoModulesCore
- SDWebImage (~> 5.15.0)
- SDWebImageAVIFCoder (~> 0.9.4)
@@ -30,7 +30,7 @@ PODS:
- ExpoModulesCore
- ExpoLocalization (14.1.1):
- ExpoModulesCore
- - ExpoModulesCore (1.2.5):
+ - ExpoModulesCore (1.2.6):
- React-Core
- React-RCTAppDelegate
- ReactCommon/turbomodule/core
@@ -50,19 +50,19 @@ PODS:
- EXSplashScreen (0.18.1):
- ExpoModulesCore
- React-Core
- - FBLazyVector (0.71.4)
- - FBReactNativeSpec (0.71.4):
+ - FBLazyVector (0.71.7)
+ - FBReactNativeSpec (0.71.7):
- RCT-Folly (= 2021.07.22.00)
- - RCTRequired (= 0.71.4)
- - RCTTypeSafety (= 0.71.4)
- - React-Core (= 0.71.4)
- - React-jsi (= 0.71.4)
- - ReactCommon/turbomodule/core (= 0.71.4)
+ - RCTRequired (= 0.71.7)
+ - RCTTypeSafety (= 0.71.7)
+ - React-Core (= 0.71.7)
+ - React-jsi (= 0.71.7)
+ - ReactCommon/turbomodule/core (= 0.71.7)
- fmt (6.2.1)
- glog (0.3.5)
- - hermes-engine (0.71.4):
- - hermes-engine/Pre-built (= 0.71.4)
- - hermes-engine/Pre-built (0.71.4)
+ - hermes-engine (0.71.7):
+ - hermes-engine/Pre-built (= 0.71.7)
+ - hermes-engine/Pre-built (0.71.7)
- libaom (2.0.2):
- libvmaf
- libavif (0.10.1):
@@ -102,26 +102,26 @@ PODS:
- fmt (~> 6.2.1)
- glog
- libevent
- - 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):
+ - RCTRequired (0.71.7)
+ - RCTTypeSafety (0.71.7):
+ - FBLazyVector (= 0.71.7)
+ - RCTRequired (= 0.71.7)
+ - React-Core (= 0.71.7)
+ - React (0.71.7):
+ - React-Core (= 0.71.7)
+ - React-Core/DevSupport (= 0.71.7)
+ - React-Core/RCTWebSocket (= 0.71.7)
+ - React-RCTActionSheet (= 0.71.7)
+ - React-RCTAnimation (= 0.71.7)
+ - React-RCTBlob (= 0.71.7)
+ - React-RCTImage (= 0.71.7)
+ - React-RCTLinking (= 0.71.7)
+ - React-RCTNetwork (= 0.71.7)
+ - React-RCTSettings (= 0.71.7)
+ - React-RCTText (= 0.71.7)
+ - React-RCTVibration (= 0.71.7)
+ - React-callinvoker (0.71.7)
+ - React-Codegen (0.71.7):
- FBReactNativeSpec
- hermes-engine
- RCT-Folly
@@ -132,209 +132,209 @@ PODS:
- React-jsiexecutor
- ReactCommon/turbomodule/bridging
- ReactCommon/turbomodule/core
- - React-Core (0.71.4):
+ - React-Core (0.71.7):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - React-Core/Default (= 0.71.4)
- - React-cxxreact (= 0.71.4)
+ - React-Core/Default (= 0.71.7)
+ - React-cxxreact (= 0.71.7)
- React-hermes
- - React-jsi (= 0.71.4)
- - React-jsiexecutor (= 0.71.4)
- - React-perflogger (= 0.71.4)
+ - React-jsi (= 0.71.7)
+ - React-jsiexecutor (= 0.71.7)
+ - React-perflogger (= 0.71.7)
- Yoga
- - React-Core/CoreModulesHeaders (0.71.4):
+ - React-Core/CoreModulesHeaders (0.71.7):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.4)
+ - React-cxxreact (= 0.71.7)
- React-hermes
- - React-jsi (= 0.71.4)
- - React-jsiexecutor (= 0.71.4)
- - React-perflogger (= 0.71.4)
+ - React-jsi (= 0.71.7)
+ - React-jsiexecutor (= 0.71.7)
+ - React-perflogger (= 0.71.7)
- Yoga
- - React-Core/Default (0.71.4):
+ - React-Core/Default (0.71.7):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - React-cxxreact (= 0.71.4)
+ - React-cxxreact (= 0.71.7)
- React-hermes
- - React-jsi (= 0.71.4)
- - React-jsiexecutor (= 0.71.4)
- - React-perflogger (= 0.71.4)
+ - React-jsi (= 0.71.7)
+ - React-jsiexecutor (= 0.71.7)
+ - React-perflogger (= 0.71.7)
- Yoga
- - React-Core/DevSupport (0.71.4):
+ - React-Core/DevSupport (0.71.7):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - React-Core/Default (= 0.71.4)
- - React-Core/RCTWebSocket (= 0.71.4)
- - React-cxxreact (= 0.71.4)
+ - React-Core/Default (= 0.71.7)
+ - React-Core/RCTWebSocket (= 0.71.7)
+ - React-cxxreact (= 0.71.7)
- React-hermes
- - React-jsi (= 0.71.4)
- - React-jsiexecutor (= 0.71.4)
- - React-jsinspector (= 0.71.4)
- - React-perflogger (= 0.71.4)
+ - React-jsi (= 0.71.7)
+ - React-jsiexecutor (= 0.71.7)
+ - React-jsinspector (= 0.71.7)
+ - React-perflogger (= 0.71.7)
- Yoga
- - React-Core/RCTActionSheetHeaders (0.71.4):
+ - React-Core/RCTActionSheetHeaders (0.71.7):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.4)
+ - React-cxxreact (= 0.71.7)
- React-hermes
- - React-jsi (= 0.71.4)
- - React-jsiexecutor (= 0.71.4)
- - React-perflogger (= 0.71.4)
+ - React-jsi (= 0.71.7)
+ - React-jsiexecutor (= 0.71.7)
+ - React-perflogger (= 0.71.7)
- Yoga
- - React-Core/RCTAnimationHeaders (0.71.4):
+ - React-Core/RCTAnimationHeaders (0.71.7):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.4)
+ - React-cxxreact (= 0.71.7)
- React-hermes
- - React-jsi (= 0.71.4)
- - React-jsiexecutor (= 0.71.4)
- - React-perflogger (= 0.71.4)
+ - React-jsi (= 0.71.7)
+ - React-jsiexecutor (= 0.71.7)
+ - React-perflogger (= 0.71.7)
- Yoga
- - React-Core/RCTBlobHeaders (0.71.4):
+ - React-Core/RCTBlobHeaders (0.71.7):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.4)
+ - React-cxxreact (= 0.71.7)
- React-hermes
- - React-jsi (= 0.71.4)
- - React-jsiexecutor (= 0.71.4)
- - React-perflogger (= 0.71.4)
+ - React-jsi (= 0.71.7)
+ - React-jsiexecutor (= 0.71.7)
+ - React-perflogger (= 0.71.7)
- Yoga
- - React-Core/RCTImageHeaders (0.71.4):
+ - React-Core/RCTImageHeaders (0.71.7):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.4)
+ - React-cxxreact (= 0.71.7)
- React-hermes
- - React-jsi (= 0.71.4)
- - React-jsiexecutor (= 0.71.4)
- - React-perflogger (= 0.71.4)
+ - React-jsi (= 0.71.7)
+ - React-jsiexecutor (= 0.71.7)
+ - React-perflogger (= 0.71.7)
- Yoga
- - React-Core/RCTLinkingHeaders (0.71.4):
+ - React-Core/RCTLinkingHeaders (0.71.7):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.4)
+ - React-cxxreact (= 0.71.7)
- React-hermes
- - React-jsi (= 0.71.4)
- - React-jsiexecutor (= 0.71.4)
- - React-perflogger (= 0.71.4)
+ - React-jsi (= 0.71.7)
+ - React-jsiexecutor (= 0.71.7)
+ - React-perflogger (= 0.71.7)
- Yoga
- - React-Core/RCTNetworkHeaders (0.71.4):
+ - React-Core/RCTNetworkHeaders (0.71.7):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.4)
+ - React-cxxreact (= 0.71.7)
- React-hermes
- - React-jsi (= 0.71.4)
- - React-jsiexecutor (= 0.71.4)
- - React-perflogger (= 0.71.4)
+ - React-jsi (= 0.71.7)
+ - React-jsiexecutor (= 0.71.7)
+ - React-perflogger (= 0.71.7)
- Yoga
- - React-Core/RCTSettingsHeaders (0.71.4):
+ - React-Core/RCTSettingsHeaders (0.71.7):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.4)
+ - React-cxxreact (= 0.71.7)
- React-hermes
- - React-jsi (= 0.71.4)
- - React-jsiexecutor (= 0.71.4)
- - React-perflogger (= 0.71.4)
+ - React-jsi (= 0.71.7)
+ - React-jsiexecutor (= 0.71.7)
+ - React-perflogger (= 0.71.7)
- Yoga
- - React-Core/RCTTextHeaders (0.71.4):
+ - React-Core/RCTTextHeaders (0.71.7):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.4)
+ - React-cxxreact (= 0.71.7)
- React-hermes
- - React-jsi (= 0.71.4)
- - React-jsiexecutor (= 0.71.4)
- - React-perflogger (= 0.71.4)
+ - React-jsi (= 0.71.7)
+ - React-jsiexecutor (= 0.71.7)
+ - React-perflogger (= 0.71.7)
- Yoga
- - React-Core/RCTVibrationHeaders (0.71.4):
+ - React-Core/RCTVibrationHeaders (0.71.7):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.4)
+ - React-cxxreact (= 0.71.7)
- React-hermes
- - React-jsi (= 0.71.4)
- - React-jsiexecutor (= 0.71.4)
- - React-perflogger (= 0.71.4)
+ - React-jsi (= 0.71.7)
+ - React-jsiexecutor (= 0.71.7)
+ - React-perflogger (= 0.71.7)
- Yoga
- - React-Core/RCTWebSocket (0.71.4):
+ - React-Core/RCTWebSocket (0.71.7):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - React-Core/Default (= 0.71.4)
- - React-cxxreact (= 0.71.4)
+ - React-Core/Default (= 0.71.7)
+ - React-cxxreact (= 0.71.7)
- React-hermes
- - React-jsi (= 0.71.4)
- - React-jsiexecutor (= 0.71.4)
- - React-perflogger (= 0.71.4)
+ - React-jsi (= 0.71.7)
+ - React-jsiexecutor (= 0.71.7)
+ - React-perflogger (= 0.71.7)
- Yoga
- - React-CoreModules (0.71.4):
+ - React-CoreModules (0.71.7):
- RCT-Folly (= 2021.07.22.00)
- - RCTTypeSafety (= 0.71.4)
- - React-Codegen (= 0.71.4)
- - React-Core/CoreModulesHeaders (= 0.71.4)
- - React-jsi (= 0.71.4)
+ - RCTTypeSafety (= 0.71.7)
+ - React-Codegen (= 0.71.7)
+ - React-Core/CoreModulesHeaders (= 0.71.7)
+ - React-jsi (= 0.71.7)
- React-RCTBlob
- - React-RCTImage (= 0.71.4)
- - ReactCommon/turbomodule/core (= 0.71.4)
- - React-cxxreact (0.71.4):
+ - React-RCTImage (= 0.71.7)
+ - ReactCommon/turbomodule/core (= 0.71.7)
+ - React-cxxreact (0.71.7):
- boost (= 1.76.0)
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - 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):
+ - React-callinvoker (= 0.71.7)
+ - React-jsi (= 0.71.7)
+ - React-jsinspector (= 0.71.7)
+ - React-logger (= 0.71.7)
+ - React-perflogger (= 0.71.7)
+ - React-runtimeexecutor (= 0.71.7)
+ - React-hermes (0.71.7):
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- RCT-Folly/Futures (= 2021.07.22.00)
- - React-cxxreact (= 0.71.4)
+ - React-cxxreact (= 0.71.7)
- React-jsi
- - React-jsiexecutor (= 0.71.4)
- - React-jsinspector (= 0.71.4)
- - React-perflogger (= 0.71.4)
- - React-jsi (0.71.4):
+ - React-jsiexecutor (= 0.71.7)
+ - React-jsinspector (= 0.71.7)
+ - React-perflogger (= 0.71.7)
+ - React-jsi (0.71.7):
- boost (= 1.76.0)
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - React-jsiexecutor (0.71.4):
+ - React-jsiexecutor (0.71.7):
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - 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):
+ - React-cxxreact (= 0.71.7)
+ - React-jsi (= 0.71.7)
+ - React-perflogger (= 0.71.7)
+ - React-jsinspector (0.71.7)
+ - React-logger (0.71.7):
- glog
- react-native-blur (4.3.0):
- React-Core
@@ -346,110 +346,110 @@ PODS:
- React-Core
- react-native-language-detection (0.2.2):
- React
- - react-native-mmkv (2.7.0):
+ - react-native-mmkv (2.8.0):
- MMKV (>= 1.2.13)
- React-Core
- - react-native-netinfo (9.3.7):
+ - react-native-netinfo (9.3.9):
- React-Core
- - react-native-pager-view (6.1.4):
+ - react-native-pager-view (6.2.0):
- React-Core
- react-native-paste-input (0.6.2):
- React-Core
- Swime (= 3.0.6)
- react-native-quick-base64 (2.0.5):
- React-Core
- - react-native-safe-area-context (4.5.0):
+ - react-native-safe-area-context (4.5.1):
- RCT-Folly
- RCTRequired
- RCTTypeSafety
- React-Core
- ReactCommon/turbomodule/core
- - react-native-segmented-control (2.4.0):
+ - react-native-segmented-control (2.4.1):
- React-Core
- - React-perflogger (0.71.4)
- - React-RCTActionSheet (0.71.4):
- - React-Core/RCTActionSheetHeaders (= 0.71.4)
- - React-RCTAnimation (0.71.4):
+ - React-perflogger (0.71.7)
+ - React-RCTActionSheet (0.71.7):
+ - React-Core/RCTActionSheetHeaders (= 0.71.7)
+ - React-RCTAnimation (0.71.7):
- RCT-Folly (= 2021.07.22.00)
- - 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):
+ - RCTTypeSafety (= 0.71.7)
+ - React-Codegen (= 0.71.7)
+ - React-Core/RCTAnimationHeaders (= 0.71.7)
+ - React-jsi (= 0.71.7)
+ - ReactCommon/turbomodule/core (= 0.71.7)
+ - React-RCTAppDelegate (0.71.7):
- RCT-Folly
- RCTRequired
- RCTTypeSafety
- React-Core
- ReactCommon/turbomodule/core
- - React-RCTBlob (0.71.4):
+ - React-RCTBlob (0.71.7):
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - 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):
+ - React-Codegen (= 0.71.7)
+ - React-Core/RCTBlobHeaders (= 0.71.7)
+ - React-Core/RCTWebSocket (= 0.71.7)
+ - React-jsi (= 0.71.7)
+ - React-RCTNetwork (= 0.71.7)
+ - ReactCommon/turbomodule/core (= 0.71.7)
+ - React-RCTImage (0.71.7):
- RCT-Folly (= 2021.07.22.00)
- - 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):
+ - RCTTypeSafety (= 0.71.7)
+ - React-Codegen (= 0.71.7)
+ - React-Core/RCTImageHeaders (= 0.71.7)
+ - React-jsi (= 0.71.7)
+ - React-RCTNetwork (= 0.71.7)
+ - ReactCommon/turbomodule/core (= 0.71.7)
+ - React-RCTLinking (0.71.7):
+ - React-Codegen (= 0.71.7)
+ - React-Core/RCTLinkingHeaders (= 0.71.7)
+ - React-jsi (= 0.71.7)
+ - ReactCommon/turbomodule/core (= 0.71.7)
+ - React-RCTNetwork (0.71.7):
- RCT-Folly (= 2021.07.22.00)
- - 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):
+ - RCTTypeSafety (= 0.71.7)
+ - React-Codegen (= 0.71.7)
+ - React-Core/RCTNetworkHeaders (= 0.71.7)
+ - React-jsi (= 0.71.7)
+ - ReactCommon/turbomodule/core (= 0.71.7)
+ - React-RCTSettings (0.71.7):
- RCT-Folly (= 2021.07.22.00)
- - 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):
+ - RCTTypeSafety (= 0.71.7)
+ - React-Codegen (= 0.71.7)
+ - React-Core/RCTSettingsHeaders (= 0.71.7)
+ - React-jsi (= 0.71.7)
+ - ReactCommon/turbomodule/core (= 0.71.7)
+ - React-RCTText (0.71.7):
+ - React-Core/RCTTextHeaders (= 0.71.7)
+ - React-RCTVibration (0.71.7):
- RCT-Folly (= 2021.07.22.00)
- - 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):
+ - React-Codegen (= 0.71.7)
+ - React-Core/RCTVibrationHeaders (= 0.71.7)
+ - React-jsi (= 0.71.7)
+ - ReactCommon/turbomodule/core (= 0.71.7)
+ - React-runtimeexecutor (0.71.7):
+ - React-jsi (= 0.71.7)
+ - ReactCommon/turbomodule/bridging (0.71.7):
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - 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):
+ - React-callinvoker (= 0.71.7)
+ - React-Core (= 0.71.7)
+ - React-cxxreact (= 0.71.7)
+ - React-jsi (= 0.71.7)
+ - React-logger (= 0.71.7)
+ - React-perflogger (= 0.71.7)
+ - ReactCommon/turbomodule/core (0.71.7):
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - 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)
+ - React-callinvoker (= 0.71.7)
+ - React-Core (= 0.71.7)
+ - React-cxxreact (= 0.71.7)
+ - React-jsi (= 0.71.7)
+ - React-logger (= 0.71.7)
+ - React-perflogger (= 0.71.7)
- RNCAsyncStorage (1.17.11):
- React-Core
- RNCClipboard (1.11.2):
@@ -486,12 +486,12 @@ PODS:
- RNScreens (3.20.0):
- React-Core
- React-RCTImage
- - RNSentry (5.1.1):
+ - RNSentry (5.3.1):
- React-Core
- - Sentry/HybridSDK (= 8.3.0)
+ - Sentry/HybridSDK (= 8.4.0)
- RNShareMenu (6.0.0):
- React
- - RNSVG (13.8.0):
+ - RNSVG (13.9.0):
- React-Core
- SDWebImage (5.15.5):
- SDWebImage/Core (= 5.15.5)
@@ -504,9 +504,9 @@ PODS:
- SDWebImageWebPCoder (0.9.1):
- libwebp (~> 1.0)
- SDWebImage/Core (~> 5.13)
- - Sentry/HybridSDK (8.3.0):
- - SentryPrivate (= 8.3.0)
- - SentryPrivate (8.3.0)
+ - Sentry/HybridSDK (8.4.0):
+ - SentryPrivate (= 8.4.0)
+ - SentryPrivate (8.4.0)
- Swime (3.0.6)
- Yoga (1.14.0)
@@ -765,13 +765,13 @@ SPEC CHECKSUMS:
EXFileSystem: 844e86ca9b5375486ecc4ef06d3838d5597d895d
EXFont: 6ea3800df746be7233208d80fe379b8ed74f4272
EXNotifications: dd628737af60fc8cc62dccebacd326b0fbbc0dcb
- Expo: 707f9b0039eacc6a1dce90c08c9e37b9c417bba2
- ExpoCrypto: 477dfe89c81527b376f2c344ca1d2a01244b243c
+ Expo: 81418098ffb16914b2e190f54e06db923248e4a1
+ ExpoCrypto: 9105610a09cd6290b900bd82fc5d190e489125a3
ExpoHaptics: 5156bc5160d8e04c170dd6e645a71154951a2ad9
- ExpoImage: b6a65c4aa891cdf00bfba0da46df14b27ae09cc7
+ ExpoImage: 09d394e082cdd18d946f10a522d566dfca019fb8
ExpoKeepAwake: 69f5f627670d62318410392d03e0b5db0f85759a
ExpoLocalization: f26cd431ad9ea3533c5b08c4fabd879176a794bb
- ExpoModulesCore: 397fc99e9d6c9dcc010f36d5802097c17b90424c
+ ExpoModulesCore: 6e0259511f4c4341b6b8357db393624df2280828
ExpoStoreReview: d057dcca4b9c95f3c9db11bd2e168dab9cba59f3
ExpoVideoThumbnails: 0021303b614a89fcc5df8b59d9d37ddf14a7d4cf
ExpoWebBrowser: 033d34c478d9986da2f1679729041423837626e0
@@ -779,11 +779,11 @@ SPEC CHECKSUMS:
EXScreenOrientation: 52220f8f2477ed25a37e3b2cdbbaa8635d250256
EXSecureStore: e8923258361cc406d0401af380f12bd05b2b720f
EXSplashScreen: cd7fb052dff5ba8311d5c2455ecbebffe1b7a8ca
- FBLazyVector: 446e84642979fff0ba57f3c804c2228a473aeac2
- FBReactNativeSpec: 241709e132e3bf1526c1c4f00bc5384dd39dfba9
+ FBLazyVector: a89a0525bc7ca174675045c2b492b5280d5a2470
+ FBReactNativeSpec: 7714e6bc1e9ea23df6c4cb42f0b2fd9c6a3a559c
fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9
glog: 04b94705f318337d7ead9e6d17c019bd9b1f6b1b
- hermes-engine: a1f157c49ea579c28b0296bda8530e980c45bdb3
+ hermes-engine: 4438d2b8bf8bebaba1b1ac0451160bab59e491f8
libaom: 9bb51e0f8f9192245e3ca2a1c9e4375d9cbccc52
libavif: e242998ccec1c83bcba0bbdc256f460ad5077348
libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913
@@ -792,60 +792,60 @@ SPEC CHECKSUMS:
MMKV: 7f34558bbb5a33b0eaefae2de4b6a20a2ffdad6f
MMKVCore: ddf41b9d9262f058419f9ba7598719af56c02cd3
RCT-Folly: 424b8c9a7a0b9ab2886ffe9c3b041ef628fd4fb1
- 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
+ RCTRequired: 5a4a30ac20c86eeadd6844a9328f78d4168cf9b2
+ RCTTypeSafety: 279fc5861a89f0f37db3a585f27f971485b4b734
+ React: 88307a9be3bd0e71a6822271cf28b84a587fb97f
+ React-callinvoker: 35fb980c454104ebe82f0afb9826830089248e08
+ React-Codegen: a8dbde3b7476d5c19437d2adb9e8ea1b426b9595
+ React-Core: 385cb6fa78762c6409ff39faeb0dd9ad664b6e84
+ React-CoreModules: c2b7db313b04d9b71954ffd55d0c2e46bc40e9fb
+ React-cxxreact: 845fefb889132e5d004ff818f7a599e32c52e7d6
+ React-hermes: 86135f35e1dd2dfccfb97afe96d0c06f6a3970c4
+ React-jsi: 39c116aa6c3d6f3d9874eff6998a670b47882a28
+ React-jsiexecutor: eaa5f71eb8f6861cf0e57f1a0f52aeb020d9e18e
+ React-jsinspector: 9885f6f94d231b95a739ef7bb50536fb87ce7539
+ React-logger: 3f8ebad1be1bf3299d1ab6d7f971802d7395c7ef
react-native-blur: 50c9feabacbc5f49b61337ebc32192c6be7ec3c3
react-native-cameraroll: f3050460fe1708378698c16686bfaa5f34099be2
react-native-image-picker: ec9b713e248760bfa0f879f0715391de4651a7cb
react-native-ios-context-menu: e529171ba760a1af7f2ef0729f5a7f4d226171c5
react-native-language-detection: f414937fa715108ab50a6269a3de0bcb95e4ceb0
- react-native-mmkv: a2a40a0458bdbc9d43c4e7752ecfc5e3a87b66dd
- react-native-netinfo: 2517ad504b3d303e90d7a431b0fcaef76d207983
- react-native-pager-view: b58cb9e9f42f64e50cab3040815772c1d119a2e2
+ react-native-mmkv: 7da5e18e55c04a9af9a7e0ab9792a1e8d33765a1
+ react-native-netinfo: 22c082970cbd99071a4e5aa7a612ac20d66b08f0
+ react-native-pager-view: 0ccb8bf60e2ebd38b1f3669fa3650ecce81db2df
react-native-paste-input: 3392800944a47c00dddbff23c31c281482209679
react-native-quick-base64: e657e9197e61b60a9dec49807843052b830da254
- react-native-safe-area-context: 39c2d8be3328df5d437ac1700f4f3a4f75716acc
- react-native-segmented-control: 06607462630512ff8eef652ec560e6235a30cc3e
- 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
+ react-native-safe-area-context: f5549f36508b1b7497434baa0cd97d7e470920d4
+ react-native-segmented-control: 0e4b5d93911e2234f110057df2b41738b326ab3e
+ React-perflogger: 2d505bbe298e3b7bacdd9e542b15535be07220f6
+ React-RCTActionSheet: 0e96e4560bd733c9b37efbf68f5b1a47615892fb
+ React-RCTAnimation: fd138e26f120371c87e406745a27535e2c8a04ef
+ React-RCTAppDelegate: 4a9fd1230a98dc3d4382f8a934dc9f50834d8335
+ React-RCTBlob: 38a7185f06a0ce8153a023e63b406a28d67b955d
+ React-RCTImage: 92b0966e7c1cadda889e961c474397ad5180e194
+ React-RCTLinking: b80f8d0c6e94c54294b0048def51f57eaa9a27af
+ React-RCTNetwork: 491b0c65ac22edbd6695d12d084b4943103b009b
+ React-RCTSettings: 97af3e8abe0023349ec015910df3bda1a0380117
+ React-RCTText: 33c85753bd714d527d2ae538dc56ec24c6783d84
+ React-RCTVibration: 08f132cad9896458776f37c112e71d60aef1c6ae
+ React-runtimeexecutor: c5c89f8f543842dd864b63ded1b0bbb9c9445328
+ ReactCommon: dbfbe2f7f3c5ce4ce44f43f2fd0d5950d1eb67c5
RNCAsyncStorage: 8616bd5a58af409453ea4e1b246521bb76578d60
RNCClipboard: 3f0451a8100393908bea5c5c5b16f96d45f30bfc
RNGestureHandler: 071d7a9ad81e8b83fe7663b303d132406a7d8f39
RNReanimated: f0dd6b881808e635ef0673f89642937d6c141314
RNScreens: 218801c16a2782546d30bd2026bb625c0302d70f
- RNSentry: 43658c8c327376e0c06149ce981899f5f84e90d9
+ RNSentry: 68d5b2339fc7cd864e8076279345cc90174fa583
RNShareMenu: cb9dac548c8bf147d06f0bf07296ad51ea9f5fc3
- RNSVG: c1e76b81c76cdcd34b4e1188852892dc280eb902
+ RNSVG: 53c661b76829783cdaf9b7a57258f3d3b4c28315
SDWebImage: fd7e1a22f00303e058058278639bf6196ee431fe
SDWebImageAVIFCoder: d759e21cf4efb640cc97250566aa556ad8bb877c
SDWebImageSVGCoder: 6fc109f9c2a82ab44510fff410b88b1a6c271ee8
SDWebImageWebPCoder: 18503de6621dd2c420d680e33d46bf8e1d5169b0
- Sentry: 757565eb01e2a6ef6b26e897e4e47e8213e12f06
- SentryPrivate: 668d6ce46835769b32e61dc8b5c78ef0b6cdcef8
+ Sentry: 16d46dd5ca10e7f4469a2611805a3de123188add
+ SentryPrivate: 2bb4f8d9ff558b25ac70b66c1dedc58a7c43630b
Swime: d7b2c277503b6cea317774aedc2dce05613f8b0b
- Yoga: 79dd7410de6f8ad73a77c868d3d368843f0c93e0
+ Yoga: d56980c8914db0b51692f55533409e844b66133c
PODFILE CHECKSUM: 61a84f1ad8a466fbbbf09e0f8bb3ed30b2d5e301
diff --git a/ios/el.lproj/InfoPlist.strings b/ios/el.lproj/InfoPlist.strings
new file mode 100644
index 00000000..9324bf1e
--- /dev/null
+++ b/ios/el.lproj/InfoPlist.strings
@@ -0,0 +1,2 @@
+"NSPhotoLibraryAddUsageDescription" = "Επιτρέψτε στο tooot να αποθηκεύει εικόνες στο ρολό της κάμερας";
+"NSPhotoLibraryUsageDescription" = "Επιτρέψτε στο tooot να αποθηκεύει εικόνες στο ρολό της κάμερας";
diff --git a/ios/tooot.xcodeproj/project.pbxproj b/ios/tooot.xcodeproj/project.pbxproj
index ee7c7442..43a26986 100644
--- a/ios/tooot.xcodeproj/project.pbxproj
+++ b/ios/tooot.xcodeproj/project.pbxproj
@@ -77,6 +77,7 @@
E633A42F281EAF38000E540F /* ShareViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ShareViewController.swift; path = "../../node_modules/react-native-share-menu/ios/ShareViewController.swift"; sourceTree = ""; };
E633A431281EB55C000E540F /* ShareExtension-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "ShareExtension-Bridging-Header.h"; sourceTree = ""; };
E63E7FF0292A828100C76FD4 /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/InfoPlist.strings; sourceTree = ""; };
+ E65BA25629EDEF8C008E0BBC /* el */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = el; path = el.lproj/InfoPlist.strings; sourceTree = ""; };
E66C0842291F095800DFFF60 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/InfoPlist.strings; sourceTree = ""; };
E671BDF8290EAFB800287BD0 /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "zh-Hant.lproj/InfoPlist.strings"; sourceTree = ""; };
E690907B29C1133000489554 /* eu */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = eu; path = eu.lproj/InfoPlist.strings; sourceTree = ""; };
@@ -308,6 +309,7 @@
be,
eu,
pl,
+ el,
);
mainGroup = 83CBB9F61A601CBA00E9B192;
productRefGroup = 83CBBA001A601CBA00E9B192 /* Products */;
@@ -545,6 +547,7 @@
E6179D6E29B94551001930D5 /* be */,
E690907B29C1133000489554 /* eu */,
E6B76A1E29C1147B00187ABB /* pl */,
+ E65BA25629EDEF8C008E0BBC /* el */,
);
name = InfoPlist.strings;
sourceTree = "";
diff --git a/package.json b/package.json
index 1c7747be..d51330da 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "tooot",
- "version": "4.9.3",
+ "version": "4.9.4",
"description": "tooot for Mastodon",
"author": "xmflsct ",
"license": "GPL-3.0-or-later",
@@ -19,39 +19,39 @@
},
"dependencies": {
"@expo/react-native-action-sheet": "^4.0.1",
- "@formatjs/intl-datetimeformat": "^6.5.1",
+ "@formatjs/intl-datetimeformat": "^6.7.0",
"@formatjs/intl-getcanonicallocales": "^2.1.0",
- "@formatjs/intl-locale": "^3.1.1",
- "@formatjs/intl-numberformat": "^8.3.5",
- "@formatjs/intl-pluralrules": "^5.1.10",
- "@formatjs/intl-relativetimeformat": "^11.1.10",
+ "@formatjs/intl-locale": "^3.2.1",
+ "@formatjs/intl-numberformat": "^8.4.1",
+ "@formatjs/intl-pluralrules": "^5.2.1",
+ "@formatjs/intl-relativetimeformat": "^11.2.1",
"@mattermost/react-native-paste-input": "^0.6.2",
"@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.3.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.2",
+ "@react-native-community/netinfo": "9.3.9",
+ "@react-native-firebase/app": "^17.4.2",
"@react-native-menu/menu": "^0.7.3",
- "@react-native-segmented-control/segmented-control": "^2.4.0",
+ "@react-native-segmented-control/segmented-control": "^2.4.1",
"@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.1",
- "@sharcoux/slider": "^6.1.1",
- "@tanstack/react-query": "^4.26.1",
- "axios": "^1.3.4",
+ "@sentry/react-native": "5.3.1",
+ "@sharcoux/slider": "^6.1.2",
+ "@tanstack/react-query": "^4.29.3",
+ "axios": "^1.3.6",
"diff": "^5.1.0",
- "expo": "48.0.7",
+ "expo": "48.0.11",
"expo-auth-session": "^4.0.3",
"expo-av": "^13.2.1",
"expo-constants": "^14.2.1",
- "expo-crypto": "^12.2.1",
+ "expo-crypto": "^12.2.2",
"expo-file-system": "^15.2.2",
"expo-haptics": "^12.2.1",
- "expo-image": "^1.0.0",
+ "expo-image": "^1.2.1",
"expo-linking": "^4.0.1",
"expo-localization": "^14.1.1",
"expo-notifications": "^0.18.1",
@@ -62,43 +62,43 @@
"expo-store-review": "^6.2.1",
"expo-video-thumbnails": "^7.2.1",
"expo-web-browser": "~12.1.1",
- "htmlparser2": "^8.0.1",
- "i18next": "^22.4.11",
+ "htmlparser2": "^8.0.2",
+ "i18next": "^22.4.15",
"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.4",
- "react-native-flash-message": "^0.4.0",
+ "react-intl": "^6.4.1",
+ "react-native": "^0.71.7",
+ "react-native-flash-message": "^0.4.1",
"react-native-gesture-handler": "~2.9.0",
"react-native-image-picker": "^5.3.1",
"react-native-ios-context-menu": "^1.15.3",
"react-native-language-detection": "^0.2.2",
- "react-native-mmkv": "~2.7.0",
- "react-native-pager-view": "^6.1.4",
+ "react-native-mmkv": "~2.8.0",
+ "react-native-pager-view": "^6.2.0",
"react-native-quick-base64": "^2.0.5",
"react-native-reanimated": "^3.0.2",
"react-native-reanimated-zoom": "^0.3.3",
- "react-native-safe-area-context": "^4.5.0",
+ "react-native-safe-area-context": "^4.5.1",
"react-native-screens": "^3.20.0",
"react-native-share-menu": "^6.0.0",
- "react-native-svg": "^13.8.0",
+ "react-native-svg": "^13.9.0",
"react-native-swipe-list-view": "^3.2.9",
"react-native-tab-view": "^3.5.1",
"rn-placeholder": "^3.0.3",
- "zeego": "^1.4.1"
+ "zeego": "^1.4.2"
},
"devDependencies": {
- "@babel/core": "^7.21.3",
+ "@babel/core": "^7.21.4",
"@babel/plugin-proposal-optional-chaining": "^7.21.0",
- "@babel/preset-typescript": "^7.21.0",
+ "@babel/preset-typescript": "^7.21.4",
"@expo/config": "^8.0.2",
- "@types/diff": "^5.0.2",
+ "@types/diff": "^5.0.3",
"@types/linkify-it": "^3.0.2",
- "@types/lodash": "^4.14.191",
- "@types/react": "^18.0.28",
+ "@types/lodash": "^4.14.194",
+ "@types/react": "^18.0.37",
"@types/react-dom": "^18.0.11",
"@types/react-native-share-menu": "^5.0.2",
"babel-plugin-module-resolver": "^5.0.0",
@@ -107,7 +107,7 @@
"deprecated-react-native-prop-types": "^4.0.0",
"dotenv": "^16.0.3",
"react-native-clean-project": "^4.0.1",
- "typescript": "^4.9.5"
+ "typescript": "^5.0.4"
},
"packageManager": "yarn@3.3.1",
"resolutions": {
diff --git a/src/components/Hashtag.tsx b/src/components/Hashtag.tsx
index 355e39d2..6b094ccd 100644
--- a/src/components/Hashtag.tsx
+++ b/src/components/Hashtag.tsx
@@ -4,9 +4,10 @@ import { TabLocalStackParamList } from '@utils/navigation/navigators'
import { StyleConstants } from '@utils/styles/constants'
import { useTheme } from '@utils/styles/ThemeManager'
import React, { PropsWithChildren, useState } from 'react'
-import { Dimensions, Pressable, View } from 'react-native'
+import { Dimensions, Pressable, Text, View } from 'react-native'
import Sparkline from './Sparkline'
import CustomText from './Text'
+import { sumBy } from 'lodash'
export interface Props {
hashtag: Mastodon.Tag
@@ -29,6 +30,8 @@ const ComponentHashtag: React.FC = ({
const width = Dimensions.get('window').width / 4
const [height, setHeight] = useState(0)
+ const sum = sumBy(hashtag.history, h => parseInt(h.uses))
+
return (
= ({
}}
onPress={customOnPress || onPress}
>
-
- #{hashtag.name}
-
+
+ #{hashtag.name}
+ {sum ? (
+ <>
+ {' '}
+
+ ({sumBy(hashtag.history, h => parseInt(h.uses))})
+
+ >
+ ) : null}
+
+
{hashtag.history?.length ? (
= ({
width={width}
height={height}
margin={children ? StyleConstants.Spacing.S : undefined}
+ color={!sum ? colors.disabled : undefined}
/>
{children}
diff --git a/src/components/Instance/index.tsx b/src/components/Instance/index.tsx
index 5ea043cd..80906e4a 100644
--- a/src/components/Instance/index.tsx
+++ b/src/components/Instance/index.tsx
@@ -22,7 +22,6 @@ import * as AuthSession from 'expo-auth-session'
import * as Crypto from 'expo-crypto'
import { Image } from 'expo-image'
import * as Linking from 'expo-linking'
-import * as WebBrowser from 'expo-web-browser'
import { debounce } from 'lodash'
import React, { RefObject, useCallback, useState } from 'react'
import { Trans, useTranslation } from 'react-i18next'
@@ -30,6 +29,7 @@ import { Alert, KeyboardAvoidingView, Platform, TextInput, View } from 'react-na
import { ScrollView } from 'react-native-gesture-handler'
import { fromByteArray } from 'react-native-quick-base64'
import CustomText from '../Text'
+import openLink from '@components/openLink'
export interface Props {
scrollViewRef?: RefObject
@@ -80,7 +80,7 @@ const ComponentInstance: React.FC = ({
clientSecret,
scopes: variables.scopes,
redirectUri,
- usePKCE: !['pawoo.net'].includes(domain)
+ usePKCE: !['pawoo.net', 'mao.mastodonhub.com'].includes(domain)
})
await request.makeAuthUrlAsync(discovery)
@@ -386,20 +386,12 @@ const ComponentInstance: React.FC = ({
- WebBrowser.openBrowserAsync('https://tooot.app/privacy-policy', {
- ...(await browserPackage())
- })
- }
+ onPress={async () => openLink('https://tooot.app/privacy-policy')}
/>,
- WebBrowser.openBrowserAsync('https://tooot.app/terms-of-service', {
- ...(await browserPackage())
- })
- }
+ onPress={async () => openLink('https://tooot.app/terms-of-service')}
/>
]}
/>
diff --git a/src/components/Parse/HTML.tsx b/src/components/Parse/HTML.tsx
index 8057cc6e..ba94896b 100644
--- a/src/components/Parse/HTML.tsx
+++ b/src/components/Parse/HTML.tsx
@@ -223,7 +223,7 @@ const ParseHTML: React.FC = ({
key={index}
style={{ lineHeight: adaptedLineheight ? adaptedLineheight / 2 : undefined }}
>
- {'\n'}
+ {'\n\n'}
)
case 'p':
diff --git a/src/components/Sparkline.tsx b/src/components/Sparkline.tsx
index 8ef25c37..72f3371d 100644
--- a/src/components/Sparkline.tsx
+++ b/src/components/Sparkline.tsx
@@ -8,9 +8,10 @@ export interface Props {
width: number
height: number
margin?: number
+ color?: string
}
-const Sparkline: React.FC = ({ data, width, height, margin = 0 }) => {
+const Sparkline: React.FC = ({ data, width, height, margin = 0, color }) => {
const { colors } = useTheme()
const dataToPoints = ({
@@ -70,10 +71,10 @@ const Sparkline: React.FC = ({ data, width, height, margin = 0 }) => {
return (