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:
		
							
								
								
									
										5
									
								
								.github/workflows/build.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								.github/workflows/build.yml
									
									
									
									
										vendored
									
									
								
							| @@ -25,8 +25,9 @@ jobs: | ||||
|         run: bundle install | ||||
|       - name: -- Step 5 -- Run fastlane | ||||
|         env: | ||||
|           DEVELOPER_DIR: /Applications/Xcode_13.4.1.app/Contents/Developer | ||||
|           DEVELOPER_DIR: /Applications/Xcode_14.0.app/Contents/Developer | ||||
|           ENVIRONMENT: ${{ steps.branch.outputs.branch }} | ||||
|           SENTRY_ENVIRONMENT: ${{ steps.branch.outputs.branch }} | ||||
|           LC_ALL: en_US.UTF-8 | ||||
|           LANG: en_US.UTF-8 | ||||
|           SENTRY_ORGANIZATION: ${{ secrets.SENTRY_ORGANIZATION }} | ||||
| @@ -67,6 +68,7 @@ jobs: | ||||
|       - name: -- Step 6 -- Run fastlane | ||||
|         env: | ||||
|           ENVIRONMENT: ${{ steps.branch.outputs.branch }} | ||||
|           SENTRY_ENVIRONMENT: ${{ steps.branch.outputs.branch }} | ||||
|           LC_ALL: en_US.UTF-8 | ||||
|           LANG: en_US.UTF-8 | ||||
|           ANDROID_KEYSTORE: ${{ secrets.ANDROID_KEYSTORE }} | ||||
| @@ -103,6 +105,7 @@ jobs: | ||||
|       - name: -- Step 6 -- Run fastlane | ||||
|         env: | ||||
|           ENVIRONMENT: ${{ steps.branch.outputs.branch }} | ||||
|           SENTRY_ENVIRONMENT: ${{ steps.branch.outputs.branch }} | ||||
|           LC_ALL: en_US.UTF-8 | ||||
|           LANG: en_US.UTF-8 | ||||
|           SENTRY_ORGANIZATION: ${{ secrets.SENTRY_ORGANIZATION }} | ||||
|   | ||||
							
								
								
									
										70
									
								
								.github/workflows/codeql-analysis.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										70
									
								
								.github/workflows/codeql-analysis.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,70 +0,0 @@ | ||||
| # For most projects, this workflow file will not need changing; you simply need | ||||
| # to commit it to your repository. | ||||
| # | ||||
| # You may wish to alter this file to override the set of languages analyzed, | ||||
| # or to provide custom queries or build logic. | ||||
| # | ||||
| # ******** NOTE ******** | ||||
| # We have attempted to detect the languages in your repository. Please check | ||||
| # the `language` matrix defined below to confirm you have the correct set of | ||||
| # supported CodeQL languages. | ||||
| # | ||||
| name: "CodeQL" | ||||
|  | ||||
| on: | ||||
|   push: | ||||
|     branches: [ main ] | ||||
|   # pull_request: | ||||
|   #   # The branches below must be a subset of the branches above | ||||
|   #   branches: [ main ] | ||||
|   # schedule: | ||||
|   #   - cron: '35 4 * * 4' | ||||
|  | ||||
| jobs: | ||||
|   analyze: | ||||
|     name: Analyze | ||||
|     runs-on: ubuntu-latest | ||||
|     permissions: | ||||
|       actions: read | ||||
|       contents: read | ||||
|       security-events: write | ||||
|  | ||||
|     strategy: | ||||
|       fail-fast: false | ||||
|       matrix: | ||||
|         language: [ 'javascript' ] | ||||
|         # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ] | ||||
|         # Learn more about CodeQL language support at https://git.io/codeql-language-support | ||||
|  | ||||
|     steps: | ||||
|     - name: Checkout repository | ||||
|       uses: actions/checkout@v2 | ||||
|  | ||||
|     # Initializes the CodeQL tools for scanning. | ||||
|     - name: Initialize CodeQL | ||||
|       uses: github/codeql-action/init@v1 | ||||
|       with: | ||||
|         languages: ${{ matrix.language }} | ||||
|         # If you wish to specify custom queries, you can do so here or in a config file. | ||||
|         # By default, queries listed here will override any specified in a config file. | ||||
|         # Prefix the list here with "+" to use these queries and those in the config file. | ||||
|         # queries: ./path/to/local/query, your-org/your-repo/queries@main | ||||
|  | ||||
|     # Autobuild attempts to build any compiled languages  (C/C++, C#, or Java). | ||||
|     # If this step fails, then you should remove it and run the build manually (see below) | ||||
|     - name: Autobuild | ||||
|       uses: github/codeql-action/autobuild@v1 | ||||
|  | ||||
|     # ℹ️ Command-line programs to run using the OS shell. | ||||
|     # 📚 https://git.io/JvXDl | ||||
|  | ||||
|     # ✏️ If the Autobuild fails above, remove it and uncomment the following three lines | ||||
|     #    and modify them (or add more) to build your code if your project | ||||
|     #    uses a compiled language | ||||
|  | ||||
|     #- run: | | ||||
|     #   make bootstrap | ||||
|     #   make release | ||||
|  | ||||
|     - name: Perform CodeQL Analysis | ||||
|       uses: github/codeql-action/analyze@v1 | ||||
| @@ -1,8 +1,8 @@ | ||||
| # [tooot](https://tooot.app/) app for Mastodon | ||||
|  | ||||
| [](LICENSE)    [](https://crowdin.tooot.app/project/tooot) | ||||
| [](LICENSE)   [](https://crowdin.tooot.app/project/tooot) | ||||
|  | ||||
|    | ||||
|   | ||||
|  | ||||
| ## Contribute to translation | ||||
|  | ||||
|   | ||||
| @@ -13,9 +13,6 @@ | ||||
|     <!-- [Custom] Expo Notifications --> | ||||
|     <meta-data android:name="expo.modules.notifications.default_notification_icon" android:resource="@drawable/ic_stat_notifications" /> | ||||
|     <!-- [Custom] End Expo Notifications --> | ||||
|     <meta-data android:name="expo.modules.updates.AUTO_SETUP" android:value="false"/> | ||||
|     <meta-data android:name="expo.modules.updates.ENABLED" android:value="false"/> | ||||
|     <meta-data android:name="expo.modules.updates.EXPO_SDK_VERSION" android:value="46.0.0"/> | ||||
|     <activity android:name=".MainActivity" android:label="@string/app_name" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|screenSize|smallestScreenSize|uiMode" android:launchMode="singleTask" android:windowSoftInputMode="adjustResize" android:exported="true" android:theme="@style/Theme.App.SplashScreen" android:screenOrientation="portrait" android:documentLaunchMode="never"> | ||||
|       <intent-filter> | ||||
|         <action android:name="android.intent.action.MAIN"/> | ||||
|   | ||||
							
								
								
									
										4
									
								
								android/sentry.properties
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								android/sentry.properties
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| defaults.url=https://sentry.io/ | ||||
| defaults.org=tooot | ||||
| defaults.project=app | ||||
| auth.token=d8f82bcbb7fe4cebb886d69e8ef32f36c0f19b08e967480a8c1c867b344a13ad | ||||
| @@ -10,20 +10,6 @@ export default (): ExpoConfig => ({ | ||||
|   version, | ||||
|   extra: { environment: process.env.ENVIRONMENT }, | ||||
|   privacy: 'hidden', | ||||
|   hooks: { | ||||
|     postPublish: [ | ||||
|       { | ||||
|         file: 'sentry-expo/upload-sourcemaps', | ||||
|         config: { | ||||
|           organization: process.env.SENTRY_ORGANIZATION, | ||||
|           project: process.env.SENTRY_PROJECT, | ||||
|           authToken: process.env.SENTRY_AUTH_TOKEN, | ||||
|           setCommits: process.env.GITHUB_SHA || undefined, | ||||
|           deployEnv: process.env.ENVIRONMENT | ||||
|         } | ||||
|       } | ||||
|     ] | ||||
|   }, | ||||
|   jsEngine: 'hermes', | ||||
|   ios: { | ||||
|     bundleIdentifier: 'com.xmflsct.app.tooot' | ||||
|   | ||||
| @@ -1,5 +1,3 @@ | ||||
| languages(['de-DE', 'en-US', 'it', 'ko', 'pt-BR', 'vi', 'zh-Hans']) | ||||
|  | ||||
| name({ | ||||
|   'default' => "tooot" | ||||
| }) | ||||
|   | ||||
| @@ -8,7 +8,6 @@ GITHUB_REPO = "tooot-app/app" | ||||
|  | ||||
| XCODEPROJ = "./ios/tooot.xcodeproj" | ||||
| INFO_PLIST = "./ios/tooot/Info.plist" | ||||
| EXPO_PLIST = "./ios/tooot/Supporting/Expo.plist" | ||||
|  | ||||
| desc "ANDROID: Prepare play store" | ||||
| private_lane :prepare_playstore_android do | ||||
| @@ -36,6 +35,7 @@ private_lane :build_ios do | ||||
|   build_ios_app( | ||||
|     export_method: "app-store", | ||||
|     include_symbols: true, | ||||
|     include_bitcode: true, | ||||
|     output_directory: BUILD_DIRECTORY, | ||||
|     silent: false | ||||
|   ) | ||||
|   | ||||
| @@ -1 +0,0 @@ | ||||
| ../en-US/release_notes.txt | ||||
| @@ -1,2 +0,0 @@ | ||||
| Support selecting multiple images | ||||
| Long press toot to show options | ||||
| @@ -1,2 +0,0 @@ | ||||
| 支持同时上传多张图片 | ||||
| 长按嘟文弹出嘟文选项 | ||||
| @@ -1,9 +1,6 @@ | ||||
| PODS: | ||||
|   - ASN1Decoder (1.8.0) | ||||
|   - boost (1.76.0) | ||||
|   - DoubleConversion (1.1.6) | ||||
|   - EASClient (0.3.0): | ||||
|     - ExpoModulesCore | ||||
|   - EXApplication (4.2.2): | ||||
|     - ExpoModulesCore | ||||
|   - EXAV (12.0.4): | ||||
| @@ -12,8 +9,6 @@ PODS: | ||||
|     - ReactCommon | ||||
|   - EXConstants (13.2.4): | ||||
|     - ExpoModulesCore | ||||
|   - EXDevice (4.3.0): | ||||
|     - ExpoModulesCore | ||||
|   - EXErrorRecovery (3.2.0): | ||||
|     - ExpoModulesCore | ||||
|   - EXFileSystem (14.1.0): | ||||
| @@ -27,9 +22,6 @@ PODS: | ||||
|     - Firebase/Core (= 9.5.0) | ||||
|   - EXFont (10.2.0): | ||||
|     - ExpoModulesCore | ||||
|   - EXJSONUtils (0.3.0) | ||||
|   - EXManifests (0.3.1): | ||||
|     - EXJSONUtils | ||||
|   - EXNotifications (0.16.1): | ||||
|     - ExpoModulesCore | ||||
|   - Expo (46.0.10): | ||||
| @@ -58,16 +50,6 @@ PODS: | ||||
|     - React-Core | ||||
|   - EXStoreReview (5.3.0): | ||||
|     - ExpoModulesCore | ||||
|   - EXStructuredHeaders (2.2.1) | ||||
|   - EXUpdates (0.14.5): | ||||
|     - ASN1Decoder (~> 1.8) | ||||
|     - EASClient | ||||
|     - EXManifests | ||||
|     - ExpoModulesCore | ||||
|     - EXStructuredHeaders | ||||
|     - EXUpdatesInterface | ||||
|     - React-Core | ||||
|   - EXUpdatesInterface (0.7.0) | ||||
|   - EXVideoThumbnails (6.4.0): | ||||
|     - ExpoModulesCore | ||||
|   - FBLazyVector (0.69.5) | ||||
| @@ -608,18 +590,14 @@ PODS: | ||||
| DEPENDENCIES: | ||||
|   - boost (from `../node_modules/react-native/third-party-podspecs/boost.podspec`) | ||||
|   - DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`) | ||||
|   - EASClient (from `../node_modules/expo-eas-client/ios`) | ||||
|   - EXApplication (from `../node_modules/expo-application/ios`) | ||||
|   - EXAV (from `../node_modules/expo-av/ios`) | ||||
|   - EXConstants (from `../node_modules/expo-constants/ios`) | ||||
|   - EXDevice (from `../node_modules/expo-device/ios`) | ||||
|   - EXErrorRecovery (from `../node_modules/expo-error-recovery/ios`) | ||||
|   - EXFileSystem (from `../node_modules/expo-file-system/ios`) | ||||
|   - EXFirebaseAnalytics (from `../node_modules/expo-firebase-analytics/ios`) | ||||
|   - EXFirebaseCore (from `../node_modules/expo-firebase-core/ios`) | ||||
|   - EXFont (from `../node_modules/expo-font/ios`) | ||||
|   - EXJSONUtils (from `../node_modules/expo-json-utils/ios`) | ||||
|   - EXManifests (from `../node_modules/expo-manifests/ios`) | ||||
|   - EXNotifications (from `../node_modules/expo-notifications/ios`) | ||||
|   - Expo (from `../node_modules/expo`) | ||||
|   - ExpoCrypto (from `../node_modules/expo-crypto/ios`) | ||||
| @@ -633,9 +611,6 @@ DEPENDENCIES: | ||||
|   - EXSecureStore (from `../node_modules/expo-secure-store/ios`) | ||||
|   - EXSplashScreen (from `../node_modules/expo-splash-screen/ios`) | ||||
|   - EXStoreReview (from `../node_modules/expo-store-review/ios`) | ||||
|   - EXStructuredHeaders (from `../node_modules/expo-structured-headers/ios`) | ||||
|   - EXUpdates (from `../node_modules/expo-updates/ios`) | ||||
|   - EXUpdatesInterface (from `../node_modules/expo-updates-interface/ios`) | ||||
|   - EXVideoThumbnails (from `../node_modules/expo-video-thumbnails/ios`) | ||||
|   - FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector`) | ||||
|   - FBReactNativeSpec (from `../node_modules/react-native/React/FBReactNativeSpec`) | ||||
| @@ -697,7 +672,6 @@ DEPENDENCIES: | ||||
|  | ||||
| SPEC REPOS: | ||||
|   trunk: | ||||
|     - ASN1Decoder | ||||
|     - Firebase | ||||
|     - FirebaseAnalytics | ||||
|     - FirebaseCore | ||||
| @@ -722,16 +696,12 @@ EXTERNAL SOURCES: | ||||
|     :podspec: "../node_modules/react-native/third-party-podspecs/boost.podspec" | ||||
|   DoubleConversion: | ||||
|     :podspec: "../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec" | ||||
|   EASClient: | ||||
|     :path: "../node_modules/expo-eas-client/ios" | ||||
|   EXApplication: | ||||
|     :path: "../node_modules/expo-application/ios" | ||||
|   EXAV: | ||||
|     :path: "../node_modules/expo-av/ios" | ||||
|   EXConstants: | ||||
|     :path: "../node_modules/expo-constants/ios" | ||||
|   EXDevice: | ||||
|     :path: "../node_modules/expo-device/ios" | ||||
|   EXErrorRecovery: | ||||
|     :path: "../node_modules/expo-error-recovery/ios" | ||||
|   EXFileSystem: | ||||
| @@ -742,10 +712,6 @@ EXTERNAL SOURCES: | ||||
|     :path: "../node_modules/expo-firebase-core/ios" | ||||
|   EXFont: | ||||
|     :path: "../node_modules/expo-font/ios" | ||||
|   EXJSONUtils: | ||||
|     :path: "../node_modules/expo-json-utils/ios" | ||||
|   EXManifests: | ||||
|     :path: "../node_modules/expo-manifests/ios" | ||||
|   EXNotifications: | ||||
|     :path: "../node_modules/expo-notifications/ios" | ||||
|   Expo: | ||||
| @@ -772,12 +738,6 @@ EXTERNAL SOURCES: | ||||
|     :path: "../node_modules/expo-splash-screen/ios" | ||||
|   EXStoreReview: | ||||
|     :path: "../node_modules/expo-store-review/ios" | ||||
|   EXStructuredHeaders: | ||||
|     :path: "../node_modules/expo-structured-headers/ios" | ||||
|   EXUpdates: | ||||
|     :path: "../node_modules/expo-updates/ios" | ||||
|   EXUpdatesInterface: | ||||
|     :path: "../node_modules/expo-updates-interface/ios" | ||||
|   EXVideoThumbnails: | ||||
|     :path: "../node_modules/expo-video-thumbnails/ios" | ||||
|   FBLazyVector: | ||||
| @@ -886,21 +846,16 @@ EXTERNAL SOURCES: | ||||
|     :path: "../node_modules/react-native/ReactCommon/yoga" | ||||
|  | ||||
| SPEC CHECKSUMS: | ||||
|   ASN1Decoder: 6110fdeacfdb41559b1481457a1645be716610aa | ||||
|   boost: a7c83b31436843459a1961bfd74b96033dc77234 | ||||
|   DoubleConversion: 5189b271737e1565bdce30deb4a08d647e3f5f54 | ||||
|   EASClient: a2581835cf9b97d0defd5d630fc6eb1bf77045e7 | ||||
|   EXApplication: e418d737a036e788510f2c4ad6c10a7d54d18586 | ||||
|   EXAV: 596506c9bee54ad52f2f3b625cdaeb9d9f2dd6b7 | ||||
|   EXConstants: 7c44785d41d8e959d527d23d29444277a4d1ee73 | ||||
|   EXDevice: 7647ca9b1fd8b269dfd896a7643d659343358054 | ||||
|   EXErrorRecovery: 74d71ee59f6814315457b09d68e86aa95cc7d05d | ||||
|   EXFileSystem: 927e0a8885aa9c49e50fc38eaba2c2389f2f1019 | ||||
|   EXFirebaseAnalytics: 2e478758e153b908b67477dff7adf99ffbf37a1b | ||||
|   EXFirebaseCore: cb1e6afad20c4c32a4966432c78ebfff29d8db6b | ||||
|   EXFont: a5d80bd9b3452b2d5abbce2487da89b0150e6487 | ||||
|   EXJSONUtils: 2a74b8f40f1523cc3f92af99c91aa78201737a77 | ||||
|   EXManifests: b38dc61303f5eede990b4c8ecbfac32f82160e65 | ||||
|   EXNotifications: 9a2aa201deb19dfe1dbe0e370eeb2922de0d2422 | ||||
|   Expo: fcdb32274e2ca9c7638d3b21b30fb665c6869219 | ||||
|   ExpoCrypto: e534314db0e1a17ae12b5140d529bd0c5efcbc6a | ||||
| @@ -914,9 +869,6 @@ SPEC CHECKSUMS: | ||||
|   EXSecureStore: ac4b3c89dd5810528074d9422d5fed5a9e684467 | ||||
|   EXSplashScreen: 799bece80089219b2c989c1082d70f3b00995cda | ||||
|   EXStoreReview: cbb6b2202bb6f831cd3234d9d8b995cec0eb32f2 | ||||
|   EXStructuredHeaders: 5d86829469399370a9fc7cb1e4391b09de87681d | ||||
|   EXUpdates: 664f999db423f90f3fb3d91edcda9bc28cb5a5b4 | ||||
|   EXUpdatesInterface: 2bbc11815dfa2ec3fc02e5534c7592c6b42b5327 | ||||
|   EXVideoThumbnails: 486533e1a66c9859f9b9e3b2e1f9f0b275515b48 | ||||
|   FBLazyVector: 0045cf98ca4a48af3bf7108d85b1c243740fa289 | ||||
|   FBReactNativeSpec: 82e74141263f8c962e288f5cd6b5d149cdc8afe1 | ||||
|   | ||||
							
								
								
									
										2
									
								
								ios/de.lproj/InfoPlist.strings
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								ios/de.lproj/InfoPlist.strings
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,2 @@ | ||||
| "NSPhotoLibraryAddUsageDescription" = "Erlauben Sie tooot, Bilder in Ihrer Kamerarolle zu speichern"; | ||||
| "NSPhotoLibraryUsageDescription" = "Erlauben Sie tooot, Bilder in Ihrer Kamerarolle zu speichern"; | ||||
| @@ -1,10 +1,2 @@ | ||||
| /*  | ||||
|   InfoPlist.strings | ||||
|   tooot | ||||
|  | ||||
|   Created by Zheng Zhiyuan (SEBD) on 2021-04-16. | ||||
|    | ||||
| */ | ||||
|  | ||||
| "NSPhotoLibraryAddUsageDescription" = "Allow tooot to save an image to your camera roll"; | ||||
| "NSPhotoLibraryUsageDescription" = "Allow tooot to access your camera roll to attach photos or videos to your toot"; | ||||
| "NSPhotoLibraryAddUsageDescription" = "Allow tooot to save images to your camera roll"; | ||||
| "NSPhotoLibraryUsageDescription" = "Allow tooot to save images to your camera roll"; | ||||
|   | ||||
							
								
								
									
										2
									
								
								ios/it.lproj/InfoPlist.strings
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								ios/it.lproj/InfoPlist.strings
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,2 @@ | ||||
| "NSPhotoLibraryAddUsageDescription" = "Consentire a tooot di salvare le immagini nel rullino fotografico"; | ||||
| "NSPhotoLibraryUsageDescription" = "Consentire a tooot di salvare le immagini nel rullino fotografico"; | ||||
							
								
								
									
										2
									
								
								ios/ko.lproj/InfoPlist.strings
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								ios/ko.lproj/InfoPlist.strings
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,2 @@ | ||||
| "NSPhotoLibraryAddUsageDescription" = "tooot가 이미지를 카메라 롤에 저장하도록 허용"; | ||||
| "NSPhotoLibraryUsageDescription" = "tooot가 이미지를 카메라 롤에 저장하도록 허용"; | ||||
							
								
								
									
										2
									
								
								ios/pt-BR.lproj/InfoPlist.strings
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								ios/pt-BR.lproj/InfoPlist.strings
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,2 @@ | ||||
| "NSPhotoLibraryAddUsageDescription" = "Permita guardar imagens em seu rolo de câmera"; | ||||
| "NSPhotoLibraryUsageDescription" = "Permita guardar imagens em seu rolo de câmera"; | ||||
							
								
								
									
										4
									
								
								ios/sentry.properties
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								ios/sentry.properties
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| defaults.url=https://sentry.io/ | ||||
| defaults.org=tooot | ||||
| defaults.project=app | ||||
| auth.token=d8f82bcbb7fe4cebb886d69e8ef32f36c0f19b08e967480a8c1c867b344a13ad | ||||
| @@ -17,7 +17,6 @@ | ||||
| 		5EE088C926297820007E5FEC /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 5EE088CB26297820007E5FEC /* InfoPlist.strings */; }; | ||||
| 		5EE44DD62600124E00A9BCED /* File.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EE44DD52600124E00A9BCED /* File.swift */; }; | ||||
| 		96905EF65AED1B983A6B3ABC /* libPods-tooot.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 58EEBF8E8E6FB1BC6CAF49B5 /* libPods-tooot.a */; }; | ||||
| 		BB2F792D24A3F905000567C9 /* Expo.plist in Resources */ = {isa = PBXBuildFile; fileRef = BB2F792C24A3F905000567C9 /* Expo.plist */; }; | ||||
| 		DA8B5B7F0DED488CAC0FF169 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = B96B72E5384D44A7B240B27E /* GoogleService-Info.plist */; }; | ||||
| 		E3BC22F5F8ABE515E14CF199 /* ExpoModulesProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D878F932AF7A9974E06E461 /* ExpoModulesProvider.swift */; }; | ||||
| 		E613A80B28282A01003C97D6 /* AppDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = E613A80A28282A01003C97D6 /* AppDelegate.mm */; }; | ||||
| @@ -71,13 +70,17 @@ | ||||
| 		9D878F932AF7A9974E06E461 /* ExpoModulesProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExpoModulesProvider.swift; path = "Pods/Target Support Files/Pods-tooot/ExpoModulesProvider.swift"; sourceTree = "<group>"; }; | ||||
| 		AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = SplashScreen.storyboard; path = tooot/SplashScreen.storyboard; sourceTree = "<group>"; }; | ||||
| 		B96B72E5384D44A7B240B27E /* GoogleService-Info.plist */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = text.plist.xml; name = "GoogleService-Info.plist"; path = "tooot/GoogleService-Info.plist"; sourceTree = "<group>"; }; | ||||
| 		BB2F792C24A3F905000567C9 /* Expo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Expo.plist; 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>"; }; | ||||
| 		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>"; }; | ||||
| 		E633A42F281EAF38000E540F /* ShareViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ShareViewController.swift; path = "../../node_modules/react-native-share-menu/ios/ShareViewController.swift"; sourceTree = "<group>"; }; | ||||
| 		E633A431281EB55C000E540F /* ShareExtension-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "ShareExtension-Bridging-Header.h"; sourceTree = "<group>"; }; | ||||
| 		E69EBACA28DF282D0057EDEC /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/InfoPlist.strings; sourceTree = "<group>"; }; | ||||
| 		E69EBACB28DF283A0057EDEC /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/InfoPlist.strings; sourceTree = "<group>"; }; | ||||
| 		E69EBACC28DF28420057EDEC /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = ko.lproj/InfoPlist.strings; sourceTree = "<group>"; }; | ||||
| 		E69EBACD28DF284D0057EDEC /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/InfoPlist.strings"; sourceTree = "<group>"; }; | ||||
| 		E69EBACE28DF28560057EDEC /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/InfoPlist.strings; sourceTree = "<group>"; }; | ||||
| 		ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; | ||||
| 		ED2971642150620600B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS12.0.sdk/System/Library/Frameworks/JavaScriptCore.framework; sourceTree = DEVELOPER_DIR; }; | ||||
| /* End PBXFileReference section */ | ||||
| @@ -106,7 +109,6 @@ | ||||
| 			isa = PBXGroup; | ||||
| 			children = ( | ||||
| 				E613A80A28282A01003C97D6 /* AppDelegate.mm */, | ||||
| 				BB2F792B24A3F905000567C9 /* Supporting */, | ||||
| 				008F07F21AC5B25A0029DE68 /* main.jsbundle */, | ||||
| 				13B07FAF1A68108700A75B9A /* AppDelegate.h */, | ||||
| 				13B07FB51A68108700A75B9A /* Images.xcassets */, | ||||
| @@ -183,15 +185,6 @@ | ||||
| 			name = Products; | ||||
| 			sourceTree = "<group>"; | ||||
| 		}; | ||||
| 		BB2F792B24A3F905000567C9 /* Supporting */ = { | ||||
| 			isa = PBXGroup; | ||||
| 			children = ( | ||||
| 				BB2F792C24A3F905000567C9 /* Expo.plist */, | ||||
| 			); | ||||
| 			name = Supporting; | ||||
| 			path = tooot/Supporting; | ||||
| 			sourceTree = "<group>"; | ||||
| 		}; | ||||
| 		D65327D7A22EEC0BE12398D9 /* Pods */ = { | ||||
| 			isa = PBXGroup; | ||||
| 			children = ( | ||||
| @@ -289,6 +282,11 @@ | ||||
| 				en, | ||||
| 				Base, | ||||
| 				"zh-Hans", | ||||
| 				de, | ||||
| 				it, | ||||
| 				ko, | ||||
| 				"pt-BR", | ||||
| 				vi, | ||||
| 			); | ||||
| 			mainGroup = 83CBB9F61A601CBA00E9B192; | ||||
| 			productRefGroup = 83CBBA001A601CBA00E9B192 /* Products */; | ||||
| @@ -308,7 +306,6 @@ | ||||
| 			files = ( | ||||
| 				5E36538325C9B8BD009F93EE /* RootViewColor.xcassets in Resources */, | ||||
| 				5EE088C926297820007E5FEC /* InfoPlist.strings in Resources */, | ||||
| 				BB2F792D24A3F905000567C9 /* Expo.plist in Resources */, | ||||
| 				13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */, | ||||
| 				13B07FBD1A68108700A75B9A /* LaunchScreen.xib in Resources */, | ||||
| 				3E461D99554A48A4959DE609 /* SplashScreen.storyboard in Resources */, | ||||
| @@ -341,7 +338,7 @@ | ||||
| 			); | ||||
| 			runOnlyForDeploymentPostprocessing = 0; | ||||
| 			shellPath = /bin/sh; | ||||
| 			shellScript = "set -e\n\nWITH_ENVIRONMENT=\"../node_modules/react-native/scripts/xcode/with-environment.sh\"\nREACT_NATIVE_XCODE=\"../node_modules/react-native/scripts/react-native-xcode.sh\"\n\n/bin/sh -c \"$WITH_ENVIRONMENT $REACT_NATIVE_XCODE\"\n"; | ||||
| 			shellScript = "set -e\nexport SENTRY_PROPERTIES=sentry.properties\nexport EXTRA_PACKAGER_ARGS=\"--sourcemap-output $DERIVED_FILE_DIR/main.jsbundle.map\"\nset -e\n\nWITH_ENVIRONMENT=\"../node_modules/react-native/scripts/xcode/with-environment.sh\"\nREACT_NATIVE_XCODE=\"../node_modules/react-native/scripts/react-native-xcode.sh\"\nSENTRY_CLI_PATH=\"../node_modules/@sentry/cli/bin/sentry-cli\"\n/bin/sh -c \"$WITH_ENVIRONMENT \\\"$SENTRY_CLI_PATH react-native xcode $REACT_NATIVE_XCODE\\\"\""; | ||||
| 		}; | ||||
| 		08A4A3CD28434E44B6B9DE2E /* [CP] Check Pods Manifest.lock */ = { | ||||
| 			isa = PBXShellScriptBuildPhase; | ||||
| @@ -391,13 +388,11 @@ | ||||
| 			inputPaths = ( | ||||
| 				"${PODS_ROOT}/Target Support Files/Pods-tooot/Pods-tooot-resources.sh", | ||||
| 				"${PODS_CONFIGURATION_BUILD_DIR}/EXConstants/EXConstants.bundle", | ||||
| 				"${PODS_CONFIGURATION_BUILD_DIR}/EXUpdates/EXUpdates.bundle", | ||||
| 				"${PODS_CONFIGURATION_BUILD_DIR}/React-Core/AccessibilityResources.bundle", | ||||
| 			); | ||||
| 			name = "[CP] Copy Pods Resources"; | ||||
| 			outputPaths = ( | ||||
| 				"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EXConstants.bundle", | ||||
| 				"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EXUpdates.bundle", | ||||
| 				"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AccessibilityResources.bundle", | ||||
| 			); | ||||
| 			runOnlyForDeploymentPostprocessing = 0; | ||||
| @@ -511,6 +506,11 @@ | ||||
| 			children = ( | ||||
| 				5EE088CA26297820007E5FEC /* en */, | ||||
| 				5EE088CD2629786B007E5FEC /* zh-Hans */, | ||||
| 				E69EBACA28DF282D0057EDEC /* de */, | ||||
| 				E69EBACB28DF283A0057EDEC /* it */, | ||||
| 				E69EBACC28DF28420057EDEC /* ko */, | ||||
| 				E69EBACD28DF284D0057EDEC /* pt-BR */, | ||||
| 				E69EBACE28DF28560057EDEC /* vi */, | ||||
| 			); | ||||
| 			name = InfoPlist.strings; | ||||
| 			sourceTree = "<group>"; | ||||
|   | ||||
| @@ -1,12 +0,0 @@ | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> | ||||
| <plist version="1.0"> | ||||
|   <dict> | ||||
|     <key>EXUpdatesAutoSetup</key> | ||||
|     <false/> | ||||
|     <key>EXUpdatesEnabled</key> | ||||
|     <false/> | ||||
|     <key>EXUpdatesSDKVersion</key> | ||||
|     <string>46.0.0</string> | ||||
|   </dict> | ||||
| </plist> | ||||
							
								
								
									
										2
									
								
								ios/vi.lproj/InfoPlist.strings
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								ios/vi.lproj/InfoPlist.strings
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,2 @@ | ||||
| "NSPhotoLibraryAddUsageDescription" = "Cho phép quá nhiều để lưu hình ảnh vào thư viện ảnh của bạn"; | ||||
| "NSPhotoLibraryUsageDescription" = "Cho phép quá nhiều để lưu hình ảnh vào thư viện ảnh của bạn"; | ||||
| @@ -1,10 +1,2 @@ | ||||
| /*  | ||||
|   InfoPlist.strings | ||||
|   tooot | ||||
|  | ||||
|   Created by Zheng Zhiyuan (SEBD) on 2021-04-16. | ||||
|    | ||||
| */ | ||||
|  | ||||
| "NSPhotoLibraryAddUsageDescription" = "允许tooot保存图片至相册"; | ||||
| "NSPhotoLibraryUsageDescription" = "允许tooot读取相册图片或视频,以添加嘟文附件"; | ||||
| "NSPhotoLibraryUsageDescription" = "允许tooot保存图片至相册"; | ||||
|   | ||||
| @@ -46,7 +46,6 @@ | ||||
|     "expo-av": "^12.0.4", | ||||
|     "expo-constants": "^13.2.4", | ||||
|     "expo-crypto": "^11.0.0", | ||||
|     "expo-device": "^4.3.0", | ||||
|     "expo-file-system": "^14.1.0", | ||||
|     "expo-firebase-analytics": "^7.2.0", | ||||
|     "expo-haptics": "^11.3.0", | ||||
| @@ -58,7 +57,6 @@ | ||||
|     "expo-secure-store": "^11.3.0", | ||||
|     "expo-splash-screen": "^0.16.2", | ||||
|     "expo-store-review": "^5.3.0", | ||||
|     "expo-updates": "^0.14.5", | ||||
|     "expo-video-thumbnails": "^6.4.0", | ||||
|     "expo-web-browser": "^11.0.0", | ||||
|     "i18next": "^21.9.2", | ||||
| @@ -94,7 +92,6 @@ | ||||
|     "react-redux": "^8.0.4", | ||||
|     "redux-persist": "^6.0.0", | ||||
|     "rn-placeholder": "^3.0.3", | ||||
|     "sentry-expo": "^5.0.2", | ||||
|     "tslib": "^2.4.0", | ||||
|     "valid-url": "^1.0.9" | ||||
|   }, | ||||
|   | ||||
							
								
								
									
										51
									
								
								patches/@sentry+react-native+4.4.0.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										51
									
								
								patches/@sentry+react-native+4.4.0.patch
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,51 @@ | ||||
| diff --git a/node_modules/@sentry/react-native/ios/RNSentry.h b/node_modules/@sentry/react-native/ios/RNSentry.h | ||||
| index 6f7df58..84b50c9 100644 | ||||
| --- a/node_modules/@sentry/react-native/ios/RNSentry.h | ||||
| +++ b/node_modules/@sentry/react-native/ios/RNSentry.h | ||||
| @@ -1,7 +1,7 @@ | ||||
|  #if __has_include(<React/RCTBridge.h>) | ||||
|  #import <React/RCTBridge.h> | ||||
|  #else | ||||
| -#import "RCTBridge.h" | ||||
| +#import <React/RCTBridge.h> | ||||
|  #endif | ||||
|   | ||||
|  @interface RNSentry : NSObject <RCTBridgeModule> | ||||
| diff --git a/node_modules/@sentry/react-native/ios/RNSentry.m b/node_modules/@sentry/react-native/ios/RNSentry.m | ||||
| index 32a6087..003a001 100644 | ||||
| --- a/node_modules/@sentry/react-native/ios/RNSentry.m | ||||
| +++ b/node_modules/@sentry/react-native/ios/RNSentry.m | ||||
| @@ -3,7 +3,7 @@ | ||||
|  #if __has_include(<React/RCTConvert.h>) | ||||
|  #import <React/RCTConvert.h> | ||||
|  #else | ||||
| -#import "RCTConvert.h" | ||||
| +#import <React/RCTConvert.h> | ||||
|  #endif | ||||
|   | ||||
|  #import <Sentry/Sentry.h> | ||||
| diff --git a/node_modules/@sentry/react-native/react-native.config.js b/node_modules/@sentry/react-native/react-native.config.js | ||||
| index f85fa01..053999b 100644 | ||||
| --- a/node_modules/@sentry/react-native/react-native.config.js | ||||
| +++ b/node_modules/@sentry/react-native/react-native.config.js | ||||
| @@ -1,18 +1,10 @@ | ||||
|  module.exports = { | ||||
|    dependency: { | ||||
|      platforms: { | ||||
| -      ios: { | ||||
| -        sharedLibraries: ['libz'] | ||||
| -      }, | ||||
| +      ios: {}, | ||||
|        android: { | ||||
|          packageInstance: 'new RNSentryPackage()' | ||||
|        } | ||||
| -    }, | ||||
| -    hooks: { | ||||
| -      postlink: | ||||
| -        'node node_modules/@sentry/wizard/dist/bin.js -i reactNative -p ios android', | ||||
| -      postunlink: | ||||
| -        'node node_modules/@sentry/wizard/dist/bin.js -i reactNative -p ios android --uninstall' | ||||
|      } | ||||
|    } | ||||
|  }; | ||||
| \ No newline at end of file | ||||
							
								
								
									
										25
									
								
								src/App.tsx
									
									
									
									
									
								
							
							
						
						
									
										25
									
								
								src/App.tsx
									
									
									
									
									
								
							| @@ -10,11 +10,9 @@ import push from '@root/startup/push' | ||||
| import sentry from '@root/startup/sentry' | ||||
| import timezone from '@root/startup/timezone' | ||||
| import { persistor, store } from '@root/store' | ||||
| import * as Sentry from '@sentry/react-native' | ||||
| import AccessibilityManager from '@utils/accessibility/AccessibilityManager' | ||||
| import { | ||||
|   changeLanguage, | ||||
|   getSettingsLanguage | ||||
| } from '@utils/slices/settingsSlice' | ||||
| import { changeLanguage, getSettingsLanguage } from '@utils/slices/settingsSlice' | ||||
| import ThemeManager from '@utils/styles/ThemeManager' | ||||
| import * as SplashScreen from 'expo-splash-screen' | ||||
| import React, { useCallback, useEffect, useState } from 'react' | ||||
| @@ -24,7 +22,6 @@ import { enableFreeze } from 'react-native-screens' | ||||
| import { QueryClientProvider } from 'react-query' | ||||
| import { Provider } from 'react-redux' | ||||
| import { PersistGate } from 'redux-persist/integration/react' | ||||
| import * as Sentry from 'sentry-expo' | ||||
|  | ||||
| Platform.select({ | ||||
|   android: LogBox.ignoreLogs(['Setting a timer for a long period of time']) | ||||
| @@ -93,15 +90,13 @@ const App: React.FC = () => { | ||||
|                 } | ||||
|  | ||||
|                 return ( | ||||
|                   <Sentry.Native.TouchEventBoundary> | ||||
|                     <ActionSheetProvider> | ||||
|                       <AccessibilityManager> | ||||
|                         <ThemeManager> | ||||
|                           <Screens localCorrupt={localCorrupt} /> | ||||
|                         </ThemeManager> | ||||
|                       </AccessibilityManager> | ||||
|                     </ActionSheetProvider> | ||||
|                   </Sentry.Native.TouchEventBoundary> | ||||
|                   <ActionSheetProvider> | ||||
|                     <AccessibilityManager> | ||||
|                       <ThemeManager> | ||||
|                         <Screens localCorrupt={localCorrupt} /> | ||||
|                       </ThemeManager> | ||||
|                     </AccessibilityManager> | ||||
|                   </ActionSheetProvider> | ||||
|                 ) | ||||
|               } else { | ||||
|                 return null | ||||
| @@ -114,4 +109,4 @@ const App: React.FC = () => { | ||||
|   ) | ||||
| } | ||||
|  | ||||
| export default React.memo(App, () => true) | ||||
| export default Sentry.wrap(App) | ||||
|   | ||||
| @@ -10,6 +10,7 @@ import ScreenAnnouncements from '@screens/Announcements' | ||||
| import ScreenCompose from '@screens/Compose' | ||||
| import ScreenImagesViewer from '@screens/ImagesViewer' | ||||
| import ScreenTabs from '@screens/Tabs' | ||||
| import * as Sentry from '@sentry/react-native' | ||||
| import initQuery from '@utils/initQuery' | ||||
| import { RootStackParamList } from '@utils/navigation/navigators' | ||||
| import pushUseConnect from '@utils/push/useConnect' | ||||
| @@ -31,7 +32,6 @@ import { IntlProvider } from 'react-intl' | ||||
| import { Alert, Platform, StatusBar } from 'react-native' | ||||
| import ShareMenu from 'react-native-share-menu' | ||||
| import { useSelector } from 'react-redux' | ||||
| import * as Sentry from 'sentry-expo' | ||||
| import { useAppDispatch } from './store' | ||||
|  | ||||
| const Stack = createNativeStackNavigator<RootStackParamList>() | ||||
| @@ -49,10 +49,7 @@ const Screens: React.FC<Props> = ({ localCorrupt }) => { | ||||
|   const routeRef = useRef<{ name?: string; params?: {} }>() | ||||
|  | ||||
|   // Push hooks | ||||
|   const instances = useSelector( | ||||
|     getInstances, | ||||
|     (prev, next) => prev.length === next.length | ||||
|   ) | ||||
|   const instances = useSelector(getInstances, (prev, next) => prev.length === next.length) | ||||
|   pushUseConnect({ t, instances }) | ||||
|   pushUseReceive({ instances }) | ||||
|   pushUseRespond({ instances }) | ||||
| @@ -102,9 +99,7 @@ const Screens: React.FC<Props> = ({ localCorrupt }) => { | ||||
|     const currentRoute = navigationRef.getCurrentRoute() | ||||
|     routeRef.current = { | ||||
|       name: currentRoute?.name, | ||||
|       params: currentRoute?.params | ||||
|         ? JSON.stringify(currentRoute.params) | ||||
|         : undefined | ||||
|       params: currentRoute?.params ? JSON.stringify(currentRoute.params) : undefined | ||||
|     } | ||||
|   }, []) | ||||
|   const navigationContainerOnStateChange = useCallback(() => { | ||||
| @@ -119,7 +114,7 @@ const Screens: React.FC<Props> = ({ localCorrupt }) => { | ||||
|  | ||||
|     if (previousRoute?.name !== currentRoute?.name) { | ||||
|       analytics('screen_view', { screen_name: currentRoute?.name }) | ||||
|       Sentry.Native.setContext('page', { | ||||
|       Sentry.setContext('page', { | ||||
|         previous: previousRoute, | ||||
|         current: currentRoute | ||||
|       }) | ||||
| @@ -316,9 +311,7 @@ const Screens: React.FC<Props> = ({ localCorrupt }) => { | ||||
|               headerShadowVisible: false, | ||||
|               headerTransparent: true, | ||||
|               headerStyle: { backgroundColor: 'transparent' }, | ||||
|               headerLeft: () => ( | ||||
|                 <HeaderLeft content='X' onPress={() => navigation.goBack()} /> | ||||
|               ), | ||||
|               headerLeft: () => <HeaderLeft content='X' onPress={() => navigation.goBack()} />, | ||||
|               title: t('screenAnnouncements:heading') | ||||
|             })} | ||||
|           /> | ||||
|   | ||||
| @@ -1,7 +1,7 @@ | ||||
| import * as Sentry from '@sentry/react-native' | ||||
| import { mapEnvironment } from '@utils/checkEnvironment' | ||||
| import axios from 'axios' | ||||
| import Constants from 'expo-constants' | ||||
| import * as Sentry from 'sentry-expo' | ||||
| import handleError, { ctx } from './handleError' | ||||
|  | ||||
| export type Params = { | ||||
| @@ -31,11 +31,11 @@ const apiTooot = async <T = unknown>({ | ||||
| }: Params): Promise<{ body: T }> => { | ||||
|   console.log( | ||||
|     ctx.bgGreen.bold(' API tooot ') + | ||||
|       ' ' + | ||||
|       method + | ||||
|       ctx.green(' -> ') + | ||||
|       `/${url}` + | ||||
|       (params ? ctx.green(' -> ') : ''), | ||||
|     ' ' + | ||||
|     method + | ||||
|     ctx.green(' -> ') + | ||||
|     `/${url}` + | ||||
|     (params ? ctx.green(' -> ') : ''), | ||||
|     params ? params : '' | ||||
|   ) | ||||
|  | ||||
| @@ -65,12 +65,12 @@ const apiTooot = async <T = unknown>({ | ||||
|     }) | ||||
|     .catch(error => { | ||||
|       if (sentry) { | ||||
|         Sentry.Native.setExtras({ | ||||
|         Sentry.setExtras({ | ||||
|           API: 'tooot', | ||||
|           ...(error?.response && { response: error.response }), | ||||
|           ...(error?.request && { request: error.request }) | ||||
|         }) | ||||
|         Sentry.Native.captureException(error) | ||||
|         Sentry.captureException(error) | ||||
|       } | ||||
|  | ||||
|       return handleError(error) | ||||
|   | ||||
| @@ -7,6 +7,7 @@ import haptics from '@root/components/haptics' | ||||
| import { useAppDispatch } from '@root/store' | ||||
| import formatText from '@screens/Compose/formatText' | ||||
| import ComposeRoot from '@screens/Compose/Root' | ||||
| import * as Sentry from '@sentry/react-native' | ||||
| import { RootStackScreenProps } from '@utils/navigation/navigators' | ||||
| import { QueryKeyTimeline, useTimelineMutation } from '@utils/queryHooks/timeline' | ||||
| import { updateStoreReview } from '@utils/slices/contextsSlice' | ||||
| @@ -24,7 +25,6 @@ import { useTranslation } from 'react-i18next' | ||||
| import { Alert, Keyboard, Platform } from 'react-native' | ||||
| import { useQueryClient } from 'react-query' | ||||
| import { useSelector } from 'react-redux' | ||||
| import * as Sentry from 'sentry-expo' | ||||
| import ComposeDraftsList from './Compose/DraftsList' | ||||
| import ComposeEditAttachment from './Compose/EditAttachment' | ||||
| import { uploadAttachment } from './Compose/Root/Footer/addAttachment' | ||||
| @@ -326,7 +326,7 @@ const ScreenCompose: React.FC<RootStackScreenProps<'Screen-Compose'>> = ({ | ||||
|                   ] | ||||
|                 ) | ||||
|               } else { | ||||
|                 Sentry.Native.captureMessage('Compose posting', { | ||||
|                 Sentry.captureMessage('Compose posting', { | ||||
|                   contexts: { errorObject: error } | ||||
|                 }) | ||||
|                 haptics('Error') | ||||
|   | ||||
| @@ -7,6 +7,7 @@ import { persistor } from '@root/store' | ||||
| import { getInstanceActive, getInstances } from '@utils/slices/instancesSlice' | ||||
| import { StyleConstants } from '@utils/styles/constants' | ||||
| import { useTheme } from '@utils/styles/ThemeManager' | ||||
| import * as Localization from 'expo-localization' | ||||
| import React from 'react' | ||||
| import { DevSettings } from 'react-native' | ||||
| import { useSelector } from 'react-redux' | ||||
| @@ -19,6 +20,16 @@ const SettingsDev: React.FC = () => { | ||||
|  | ||||
|   return ( | ||||
|     <MenuContainer> | ||||
|       <CustomText | ||||
|         fontStyle='S' | ||||
|         selectable | ||||
|         style={{ | ||||
|           paddingHorizontal: StyleConstants.Spacing.Global.PagePadding, | ||||
|           color: colors.primaryDefault | ||||
|         }} | ||||
|       > | ||||
|         {JSON.stringify(Localization.locales)} | ||||
|       </CustomText> | ||||
|       <CustomText | ||||
|         fontStyle='S' | ||||
|         selectable | ||||
|   | ||||
| @@ -1,12 +1,18 @@ | ||||
| import * as Sentry from 'sentry-expo' | ||||
| import * as Sentry from "@sentry/react-native"; | ||||
| import { isDevelopment } from "@utils/checkEnvironment"; | ||||
| import log from './log' | ||||
|  | ||||
| const sentry = () => { | ||||
|   log('log', 'Sentry', 'initializing') | ||||
|   Sentry.init({ | ||||
|     // @ts-ignore | ||||
|     enabled: !isDevelopment, | ||||
|     dsn: 'https://53348b60ff844d52886e90251b3a5f41@o917354.ingest.sentry.io/6410576', | ||||
|     enableInExpoDevelopment: false, | ||||
|     tracesSampleRate: 0.35, | ||||
|     integrations: [ | ||||
|       new Sentry.ReactNativeTracing({ | ||||
|         tracingOrigins: ["tooot.app"], | ||||
|       }), | ||||
|     ], | ||||
|     autoSessionTracking: true | ||||
|   }) | ||||
| } | ||||
|   | ||||
							
								
								
									
										164
									
								
								yarn.lock
									
									
									
									
									
								
							
							
						
						
									
										164
									
								
								yarn.lock
									
									
									
									
									
								
							| @@ -1171,7 +1171,7 @@ | ||||
|     uuid "^3.4.0" | ||||
|     wrap-ansi "^7.0.0" | ||||
|  | ||||
| "@expo/code-signing-certificates@0.0.2", "@expo/code-signing-certificates@^0.0.2": | ||||
| "@expo/code-signing-certificates@^0.0.2": | ||||
|   version "0.0.2" | ||||
|   resolved "https://registry.yarnpkg.com/@expo/code-signing-certificates/-/code-signing-certificates-0.0.2.tgz#65cd615800e6724b54831c966dd1a90145017246" | ||||
|   integrity sha512-vnPHFjwOqxQ1VLztktY+fYCfwvLzjqpzKn09rchcQE7Sdf0wtW5fFtIZBEFOOY5wasp8tXSnp627zrAwazPHzg== | ||||
| @@ -1317,7 +1317,7 @@ | ||||
|     json5 "^1.0.1" | ||||
|     write-file-atomic "^2.3.0" | ||||
|  | ||||
| "@expo/metro-config@~0.3.18", "@expo/metro-config@~0.3.19": | ||||
| "@expo/metro-config@~0.3.18": | ||||
|   version "0.3.22" | ||||
|   resolved "https://registry.yarnpkg.com/@expo/metro-config/-/metro-config-0.3.22.tgz#fa4a0729ec8ecbc9c9fb79c63ecc66a299505c82" | ||||
|   integrity sha512-R81sLbaeUBjN8IXcxiVx7GcpSj8z7szILl1b5yJDb38WdIFwxhrseA5wXaTT1yMhI+59w6n99T2qtFV2yD5qYA== | ||||
| @@ -1413,7 +1413,7 @@ | ||||
|   dependencies: | ||||
|     cross-spawn "^6.0.5" | ||||
|  | ||||
| "@expo/spawn-async@^1.5.0", "@expo/spawn-async@^1.6.0": | ||||
| "@expo/spawn-async@^1.5.0": | ||||
|   version "1.7.0" | ||||
|   resolved "https://registry.yarnpkg.com/@expo/spawn-async/-/spawn-async-1.7.0.tgz#3ab6082b24318cccc4e73b13464da91325555500" | ||||
|   integrity sha512-sqPAjOEFTrjaTybrh9SnPFLInDXcoMC06psEFmH68jLTmoipSQCq8GCEfIoHhxRDALWB+DsiwXJSbXlE/iVIIQ== | ||||
| @@ -2009,16 +2009,6 @@ | ||||
|     "@sentry/utils" "7.12.1" | ||||
|     tslib "^1.9.3" | ||||
|  | ||||
| "@sentry/browser@7.7.0": | ||||
|   version "7.7.0" | ||||
|   resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-7.7.0.tgz#7810ee98d4969bd0367e29ac0af6c5779db7e6c4" | ||||
|   integrity sha512-oyzpWcsjVZTaf14zAL89Ng1DUHlbjN+V8pl8dR9Y9anphbzL5BK9p0fSK4kPIrO4GukK+XrKnLJDPuE/o7WR3g== | ||||
|   dependencies: | ||||
|     "@sentry/core" "7.7.0" | ||||
|     "@sentry/types" "7.7.0" | ||||
|     "@sentry/utils" "7.7.0" | ||||
|     tslib "^1.9.3" | ||||
|  | ||||
| "@sentry/cli@1.74.4": | ||||
|   version "1.74.4" | ||||
|   resolved "https://registry.yarnpkg.com/@sentry/cli/-/cli-1.74.4.tgz#7df82f68045a155e1885bfcbb5d303e5259eb18e" | ||||
| @@ -2055,16 +2045,6 @@ | ||||
|     "@sentry/utils" "7.12.1" | ||||
|     tslib "^1.9.3" | ||||
|  | ||||
| "@sentry/core@7.7.0": | ||||
|   version "7.7.0" | ||||
|   resolved "https://registry.yarnpkg.com/@sentry/core/-/core-7.7.0.tgz#1a2d477897552d179380f7c54c7d81a4e98ea29a" | ||||
|   integrity sha512-Z15ACiuiFINFcK4gbMrnejLn4AVjKBPJOWKrrmpIe8mh+Y9diOuswt5mMUABs+jhpZvqht3PBLLGBL0WMsYMYA== | ||||
|   dependencies: | ||||
|     "@sentry/hub" "7.7.0" | ||||
|     "@sentry/types" "7.7.0" | ||||
|     "@sentry/utils" "7.7.0" | ||||
|     tslib "^1.9.3" | ||||
|  | ||||
| "@sentry/hub@7.12.1": | ||||
|   version "7.12.1" | ||||
|   resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-7.12.1.tgz#dffad40cd2b8f44df2d5f20a89df87879cbbf1c3" | ||||
| @@ -2074,15 +2054,6 @@ | ||||
|     "@sentry/utils" "7.12.1" | ||||
|     tslib "^1.9.3" | ||||
|  | ||||
| "@sentry/hub@7.7.0": | ||||
|   version "7.7.0" | ||||
|   resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-7.7.0.tgz#9ad3471cf5ecaf1a9d3a3a04ca2515ffec9e2c09" | ||||
|   integrity sha512-6gydK234+a0nKhBRDdIJ7Dp42CaiW2juTiHegUVDq+482balVzbZyEAmESCmuzKJhx5BhlCElVxs/cci1NjMpg== | ||||
|   dependencies: | ||||
|     "@sentry/types" "7.7.0" | ||||
|     "@sentry/utils" "7.7.0" | ||||
|     tslib "^1.9.3" | ||||
|  | ||||
| "@sentry/integrations@7.12.1": | ||||
|   version "7.12.1" | ||||
|   resolved "https://registry.yarnpkg.com/@sentry/integrations/-/integrations-7.12.1.tgz#da1dbc5d851f2fc9413883812c436a1540a5b27a" | ||||
| @@ -2093,32 +2064,6 @@ | ||||
|     localforage "^1.8.1" | ||||
|     tslib "^1.9.3" | ||||
|  | ||||
| "@sentry/integrations@7.7.0": | ||||
|   version "7.7.0" | ||||
|   resolved "https://registry.yarnpkg.com/@sentry/integrations/-/integrations-7.7.0.tgz#be4d89ccce756f3decc52b04cc09add19f142715" | ||||
|   integrity sha512-qHIw4JrluVfkcdA6v22KVumhuqdk9I0MxEaiHyP/uzx4xIoi9S4I86YbLHZUpjqreJIQkntsimJSepZJkxvG5g== | ||||
|   dependencies: | ||||
|     "@sentry/types" "7.7.0" | ||||
|     "@sentry/utils" "7.7.0" | ||||
|     localforage "^1.8.1" | ||||
|     tslib "^1.9.3" | ||||
|  | ||||
| "@sentry/react-native@4.2.2": | ||||
|   version "4.2.2" | ||||
|   resolved "https://registry.yarnpkg.com/@sentry/react-native/-/react-native-4.2.2.tgz#613ffa2347746d2ed66200c314092411ad7aa43c" | ||||
|   integrity sha512-2zSgR73/jNByr4WDciE97n78Tj81Lrhhwj1/yMRWFDd9pF802ZYiRVeIkHArEYGHER41fiQojP7wBKftvnKgew== | ||||
|   dependencies: | ||||
|     "@sentry/browser" "7.7.0" | ||||
|     "@sentry/cli" "1.74.4" | ||||
|     "@sentry/core" "7.7.0" | ||||
|     "@sentry/hub" "7.7.0" | ||||
|     "@sentry/integrations" "7.7.0" | ||||
|     "@sentry/react" "7.7.0" | ||||
|     "@sentry/tracing" "7.7.0" | ||||
|     "@sentry/types" "7.7.0" | ||||
|     "@sentry/utils" "7.7.0" | ||||
|     "@sentry/wizard" "1.2.17" | ||||
|  | ||||
| "@sentry/react-native@^4.4.0": | ||||
|   version "4.4.0" | ||||
|   resolved "https://registry.yarnpkg.com/@sentry/react-native/-/react-native-4.4.0.tgz#6db112bb5c8c69d3385de9e81d91e936e0cc31a3" | ||||
| @@ -2146,17 +2091,6 @@ | ||||
|     hoist-non-react-statics "^3.3.2" | ||||
|     tslib "^1.9.3" | ||||
|  | ||||
| "@sentry/react@7.7.0": | ||||
|   version "7.7.0" | ||||
|   resolved "https://registry.yarnpkg.com/@sentry/react/-/react-7.7.0.tgz#a519dd727f863c1abf1a77beac01a3336c856828" | ||||
|   integrity sha512-93Khad3YAln6mKU9E15QH09XC1ARIOpNTRpnBl6AGl3bVhSdLExsbKDLa7Rx0mW2j4z/prOC6VEHf5mBvg4mPg== | ||||
|   dependencies: | ||||
|     "@sentry/browser" "7.7.0" | ||||
|     "@sentry/types" "7.7.0" | ||||
|     "@sentry/utils" "7.7.0" | ||||
|     hoist-non-react-statics "^3.3.2" | ||||
|     tslib "^1.9.3" | ||||
|  | ||||
| "@sentry/tracing@7.12.1": | ||||
|   version "7.12.1" | ||||
|   resolved "https://registry.yarnpkg.com/@sentry/tracing/-/tracing-7.12.1.tgz#9f92985f152054ac90b6ec83a33c44e8084a008e" | ||||
| @@ -2167,26 +2101,11 @@ | ||||
|     "@sentry/utils" "7.12.1" | ||||
|     tslib "^1.9.3" | ||||
|  | ||||
| "@sentry/tracing@7.7.0": | ||||
|   version "7.7.0" | ||||
|   resolved "https://registry.yarnpkg.com/@sentry/tracing/-/tracing-7.7.0.tgz#67324b755a28e115289755e44a0b8b467a63d0b2" | ||||
|   integrity sha512-HNmvTwemuc21q/K6HXsSp9njkne6N1JQ71TB+QGqYU5VtxsVgYSUhhYqV6WcHz7LK4Hj6TvNFoeu69/rO0ysgw== | ||||
|   dependencies: | ||||
|     "@sentry/hub" "7.7.0" | ||||
|     "@sentry/types" "7.7.0" | ||||
|     "@sentry/utils" "7.7.0" | ||||
|     tslib "^1.9.3" | ||||
|  | ||||
| "@sentry/types@7.12.1": | ||||
|   version "7.12.1" | ||||
|   resolved "https://registry.yarnpkg.com/@sentry/types/-/types-7.12.1.tgz#eff76d938f9effc62a2ec76cd5c3f04de37f5c15" | ||||
|   integrity sha512-VGZs39SZgMcCGv7H0VyFy1LEFGsnFZH590JUopmz6nG63EpeYQ2xzhIoPNAiLKbyUvBEwukn+faCg3u3MGqhgQ== | ||||
|  | ||||
| "@sentry/types@7.7.0": | ||||
|   version "7.7.0" | ||||
|   resolved "https://registry.yarnpkg.com/@sentry/types/-/types-7.7.0.tgz#dd6bd3d119d7efea0e85dbaa4b17de1c22b63c7a" | ||||
|   integrity sha512-4x8O7uerSGLnYC10krHl9t8h7xXHn5FextqKYbTCXCnx2hC8D+9lz8wcbQAFo0d97wiUYqI8opmEgFVGx7c5hQ== | ||||
|  | ||||
| "@sentry/utils@7.12.1": | ||||
|   version "7.12.1" | ||||
|   resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-7.12.1.tgz#fcf80fdc332d0bd288e21b13efc7a2f0d604f75a" | ||||
| @@ -2195,14 +2114,6 @@ | ||||
|     "@sentry/types" "7.12.1" | ||||
|     tslib "^1.9.3" | ||||
|  | ||||
| "@sentry/utils@7.7.0": | ||||
|   version "7.7.0" | ||||
|   resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-7.7.0.tgz#013e3097c4268a76de578494c7df999635fb0ad4" | ||||
|   integrity sha512-fD+ROSFpeJlK7bEvUT2LOW7QqgjBpXJwVISKZ0P2fuzclRC3KoB2pbZgBM4PXMMTiSzRGWhvfRRjBiBvQJBBJQ== | ||||
|   dependencies: | ||||
|     "@sentry/types" "7.7.0" | ||||
|     tslib "^1.9.3" | ||||
|  | ||||
| "@sentry/wizard@1.2.17": | ||||
|   version "1.2.17" | ||||
|   resolved "https://registry.yarnpkg.com/@sentry/wizard/-/wizard-1.2.17.tgz#c3247b47129d002cfa45d7a2048d13dc6513457b" | ||||
| @@ -3944,18 +3855,6 @@ expo-crypto@^11.0.0, expo-crypto@~11.0.0: | ||||
|   resolved "https://registry.yarnpkg.com/expo-crypto/-/expo-crypto-11.0.0.tgz#e434ebede6bae20f5a5cf7d7ea99d41e7b67690e" | ||||
|   integrity sha512-EH1Ikcy/HxfLJpo+zVRic4Igl6AovZEksAheKfeM2u+2TfL3FEBiQo+cGkuIa8NQ9ui3xYqQcyMk+IIZ6AO0Xg== | ||||
|  | ||||
| expo-device@^4.3.0: | ||||
|   version "4.3.0" | ||||
|   resolved "https://registry.yarnpkg.com/expo-device/-/expo-device-4.3.0.tgz#a25257febe8dd18378f556ef61b5ff73ee687a6b" | ||||
|   integrity sha512-NRmsEuZVxx0EvD/dHZdng87wDgN9msfyjqp5DbNIyzvMGhxOrGtE/iEivvMyOdQpVotHGK8rBRbFKJzOtYB5lg== | ||||
|   dependencies: | ||||
|     ua-parser-js "^0.7.19" | ||||
|  | ||||
| expo-eas-client@~0.3.0: | ||||
|   version "0.3.0" | ||||
|   resolved "https://registry.yarnpkg.com/expo-eas-client/-/expo-eas-client-0.3.0.tgz#21383fc95a52e71e13c7276456db20388fefcf95" | ||||
|   integrity sha512-dBD00lJ629ayh5abbmgn6I1Z5NOaWM1iea2ODLd/EF1ZcS1P3yiPm6blpvL/tD+uewL8gxxmla/Ac+SiDdYAYA== | ||||
|  | ||||
| expo-error-recovery@~3.2.0: | ||||
|   version "3.2.0" | ||||
|   resolved "https://registry.yarnpkg.com/expo-error-recovery/-/expo-error-recovery-3.2.0.tgz#3a4543382904a5e70829cb41d7fc0f022c2bef6e" | ||||
| @@ -3995,11 +3894,6 @@ expo-haptics@^11.3.0: | ||||
|   resolved "https://registry.yarnpkg.com/expo-haptics/-/expo-haptics-11.3.0.tgz#74283bd212a86f16ff2d6b0125e2a9604c940523" | ||||
|   integrity sha512-mQYSZsJ7LcdM2b8JecrV2qEw9ymNzGleS/+bpufdHZ+n5tCnWZXiMvZFFczaExHfaeGY3nGQvH1RjEOFIXSfig== | ||||
|  | ||||
| expo-json-utils@~0.3.0: | ||||
|   version "0.3.0" | ||||
|   resolved "https://registry.yarnpkg.com/expo-json-utils/-/expo-json-utils-0.3.0.tgz#0c4a0195ee2bbde02cbb5f4d384d1cb63bea7493" | ||||
|   integrity sha512-ceo0pWFJqRAsNjZWX3rVDhy+NDzmrBNFOdvW+HE4EHqlt+OEUu9INIYKO8fU+g3ifI0VcKqHfvvj5wKsSpvPBw== | ||||
|  | ||||
| expo-keep-awake@~10.2.0: | ||||
|   version "10.2.0" | ||||
|   resolved "https://registry.yarnpkg.com/expo-keep-awake/-/expo-keep-awake-10.2.0.tgz#46f04740bccd321732bbbed93491e2076d5dbbd7" | ||||
| @@ -4023,13 +3917,6 @@ expo-localization@^13.1.0: | ||||
|   dependencies: | ||||
|     rtl-detect "^1.0.2" | ||||
|  | ||||
| expo-manifests@~0.3.0: | ||||
|   version "0.3.1" | ||||
|   resolved "https://registry.yarnpkg.com/expo-manifests/-/expo-manifests-0.3.1.tgz#52c3ef41d3b1958039be0434363e6499c773aaf6" | ||||
|   integrity sha512-zv2a4pzhbvxVjrTO4XEiP5THt4RwtxyJjfixFhDNfHtDQR7fS4h9sZSGX9ind+IS5SQJQ2ykfVAi8xnwP6zHaw== | ||||
|   dependencies: | ||||
|     expo-json-utils "~0.3.0" | ||||
|  | ||||
| expo-modules-autolinking@0.10.3: | ||||
|   version "0.10.3" | ||||
|   resolved "https://registry.yarnpkg.com/expo-modules-autolinking/-/expo-modules-autolinking-0.10.3.tgz#31bfcf3e4b613a7c3949fb1f1e9c23eea4c14caf" | ||||
| @@ -4095,34 +3982,6 @@ expo-store-review@^5.3.0: | ||||
|   resolved "https://registry.yarnpkg.com/expo-store-review/-/expo-store-review-5.3.0.tgz#f8b1253a607b13e548889a442d8ee7bb0fa025a3" | ||||
|   integrity sha512-abWgsgXnfeJnAINOVGWxFC0HXizZxBoxNZoekswqW2AtsQ6DR5nvWj5VyovVjd8DktRG/ly1ZKJwP0KNXqWffw== | ||||
|  | ||||
| expo-structured-headers@~2.2.0: | ||||
|   version "2.2.1" | ||||
|   resolved "https://registry.yarnpkg.com/expo-structured-headers/-/expo-structured-headers-2.2.1.tgz#739f969101de6bead921eee59e5899399ad67715" | ||||
|   integrity sha512-nY6GuvoS/U5XdhfBNmvXGRoGzIXywXpSZs2wdiP+FbS79P9UWyEqzgARrBTF+6pQxUVMs6/vdffxRpwhjwYPug== | ||||
|  | ||||
| expo-updates-interface@~0.7.0: | ||||
|   version "0.7.0" | ||||
|   resolved "https://registry.yarnpkg.com/expo-updates-interface/-/expo-updates-interface-0.7.0.tgz#f4f03b61dbdd949cac9fb44e250e1162ba177650" | ||||
|   integrity sha512-saThnbrYDSjKxfMFFguAvh5o5KGabvAOHItkJRwq2L3c0T/3q26Q0kM83880h/+TTtAVsl1+Vhny9d+ImD3yvQ== | ||||
|  | ||||
| expo-updates@^0.14.5: | ||||
|   version "0.14.5" | ||||
|   resolved "https://registry.yarnpkg.com/expo-updates/-/expo-updates-0.14.5.tgz#3de2764b143c93eee636cab538c081a7867aa086" | ||||
|   integrity sha512-m6IOiETTwsJhL93meHG/Y3FWuaRQIbn9LJ5wpWurQ7RniqIV9Ae61SRmJJyYtxk1qLy/dKJ/jHyF1xp8PKIlnQ== | ||||
|   dependencies: | ||||
|     "@expo/code-signing-certificates" "0.0.2" | ||||
|     "@expo/config" "~7.0.1" | ||||
|     "@expo/config-plugins" "~5.0.1" | ||||
|     "@expo/metro-config" "~0.3.19" | ||||
|     arg "4.1.0" | ||||
|     expo-eas-client "~0.3.0" | ||||
|     expo-manifests "~0.3.0" | ||||
|     expo-structured-headers "~2.2.0" | ||||
|     expo-updates-interface "~0.7.0" | ||||
|     fbemitter "^3.0.0" | ||||
|     resolve-from "^5.0.0" | ||||
|     uuid "^3.4.0" | ||||
|  | ||||
| expo-video-thumbnails@^6.4.0: | ||||
|   version "6.4.0" | ||||
|   resolved "https://registry.yarnpkg.com/expo-video-thumbnails/-/expo-video-thumbnails-6.4.0.tgz#59603af06c1d2122c2f7db854562236bbd8319ec" | ||||
| @@ -7624,21 +7483,6 @@ send@0.18.0, send@^0.18.0: | ||||
|     range-parser "~1.2.1" | ||||
|     statuses "2.0.1" | ||||
|  | ||||
| sentry-expo@^5.0.2: | ||||
|   version "5.0.2" | ||||
|   resolved "https://registry.yarnpkg.com/sentry-expo/-/sentry-expo-5.0.2.tgz#2dc1e3b0fb42c130758d1c812979e236a300dd59" | ||||
|   integrity sha512-okDqnFuQ1iQLWAEMW7SbLNcfg9XkKyr1FwP6cuLgVl4sPuZEr5mQtLSp4jXUncWYtIG2gnRkmXmZukkUat/OoQ== | ||||
|   dependencies: | ||||
|     "@expo/config-plugins" "~5.0.0" | ||||
|     "@expo/config-types" "^46.0.1" | ||||
|     "@expo/spawn-async" "^1.6.0" | ||||
|     "@sentry/browser" "7.7.0" | ||||
|     "@sentry/integrations" "7.7.0" | ||||
|     "@sentry/react-native" "4.2.2" | ||||
|     "@sentry/types" "7.7.0" | ||||
|     mkdirp "^1.0.4" | ||||
|     rimraf "^3.0.2" | ||||
|  | ||||
| serialize-error@6.0.0: | ||||
|   version "6.0.0" | ||||
|   resolved "https://registry.yarnpkg.com/serialize-error/-/serialize-error-6.0.0.tgz#ccfb887a1dd1c48d6d52d7863b92544331fd752b" | ||||
| @@ -8336,7 +8180,7 @@ typescript@^4.8.3: | ||||
|   resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.8.3.tgz#d59344522c4bc464a65a730ac695007fdb66dd88" | ||||
|   integrity sha512-goMHfm00nWPa8UvR/CPSvykqf6dVV8x/dp0c5mFTMTIu0u0FlGWRioyy7Nn0PGAdHxpJZnuO/ut+PpQ8UiHAig== | ||||
|  | ||||
| ua-parser-js@^0.7.19, ua-parser-js@^0.7.30: | ||||
| ua-parser-js@^0.7.30: | ||||
|   version "0.7.31" | ||||
|   resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.31.tgz#649a656b191dffab4f21d5e053e27ca17cbff5c6" | ||||
|   integrity sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ== | ||||
|   | ||||
		Reference in New Issue
	
	Block a user