diff --git a/android/app/build.gradle b/android/app/build.gradle
index a2231784..9826e70f 100644
--- a/android/app/build.gradle
+++ b/android/app/build.gradle
@@ -337,5 +337,3 @@ def isNewArchitectureEnabled() {
// - Set an environment variable `ORG_GRADLE_PROJECT_newArchEnabled=true`
return project.hasProperty("newArchEnabled") && project.newArchEnabled == "true"
}
-
-apply plugin: 'com.google.gms.google-services'
diff --git a/android/app/google-services.json b/android/app/google-services.json
deleted file mode 100644
index d833db99..00000000
--- a/android/app/google-services.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "project_info": {
- "project_number": "661638997772",
- "project_id": "xmflsct-mastodon-app",
- "storage_bucket": "xmflsct-mastodon-app.appspot.com"
- },
- "client": [
- {
- "client_info": {
- "mobilesdk_app_id": "1:661638997772:android:4fd02851f757f8fa9f8b29",
- "android_client_info": {
- "package_name": "com.xmflsct.app.tooot"
- }
- },
- "oauth_client": [
- {
- "client_id": "661638997772-6aiqk97aema0rt280i7nfar3ha2mlgno.apps.googleusercontent.com",
- "client_type": 3
- }
- ],
- "api_key": [
- {
- "current_key": "AIzaSyDUw4s-mhQsHvs4hdIsldsi68ZIygM5MC4"
- }
- ],
- "services": {
- "appinvite_service": {
- "other_platform_oauth_client": [
- {
- "client_id": "661638997772-6aiqk97aema0rt280i7nfar3ha2mlgno.apps.googleusercontent.com",
- "client_type": 3
- },
- {
- "client_id": "661638997772-sqa4raeghhrieqt9guljhcul9b51dvna.apps.googleusercontent.com",
- "client_type": 2,
- "ios_info": {
- "bundle_id": "com.xmflsct.app.mastodon"
- }
- }
- ]
- }
- }
- }
- ],
- "configuration_version": "1"
-}
\ No newline at end of file
diff --git a/android/build.gradle b/android/build.gradle
index 0872442c..e90d3c65 100644
--- a/android/build.gradle
+++ b/android/build.gradle
@@ -22,7 +22,6 @@ buildscript {
jcenter()
}
dependencies {
- classpath 'com.google.gms:google-services:4.3.3'
classpath("com.android.tools.build:gradle:7.2.1")
classpath("com.facebook.react:react-native-gradle-plugin")
classpath("de.undercouch:gradle-download-task:5.0.1")
diff --git a/app.config.ts b/app.config.ts
index 4b34421b..0afae03f 100644
--- a/app.config.ts
+++ b/app.config.ts
@@ -15,7 +15,6 @@ export default (): ExpoConfig => ({
},
android: {
package: 'com.xmflsct.app.tooot',
- googleServicesFile: './configs/google-services.json',
permissions: ['CAMERA', 'VIBRATE'],
blockedPermissions: ['USE_BIOMETRIC', 'USE_FINGERPRINT']
},
diff --git a/configs/GoogleService-Info.plist b/configs/GoogleService-Info.plist
deleted file mode 100644
index 553df7ab..00000000
--- a/configs/GoogleService-Info.plist
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
- CLIENT_ID
- 661638997772-65g8ce369ugck3ii4ulk6jhb3ijg51kl.apps.googleusercontent.com
- REVERSED_CLIENT_ID
- com.googleusercontent.apps.661638997772-65g8ce369ugck3ii4ulk6jhb3ijg51kl
- API_KEY
- AIzaSyAOS1Yq_uNVctG89LB6Dl1PVhb_FAQRbRg
- GCM_SENDER_ID
- 661638997772
- PLIST_VERSION
- 1
- BUNDLE_ID
- com.xmflsct.app.tooot
- PROJECT_ID
- xmflsct-mastodon-app
- STORAGE_BUCKET
- xmflsct-mastodon-app.appspot.com
- IS_ADS_ENABLED
-
- IS_ANALYTICS_ENABLED
-
- IS_APPINVITE_ENABLED
-
- IS_GCM_ENABLED
-
- IS_SIGNIN_ENABLED
-
- GOOGLE_APP_ID
- 1:661638997772:ios:c8d2e09264a344b09f8b29
-
-
\ No newline at end of file
diff --git a/configs/google-services.json b/configs/google-services.json
deleted file mode 100644
index d833db99..00000000
--- a/configs/google-services.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "project_info": {
- "project_number": "661638997772",
- "project_id": "xmflsct-mastodon-app",
- "storage_bucket": "xmflsct-mastodon-app.appspot.com"
- },
- "client": [
- {
- "client_info": {
- "mobilesdk_app_id": "1:661638997772:android:4fd02851f757f8fa9f8b29",
- "android_client_info": {
- "package_name": "com.xmflsct.app.tooot"
- }
- },
- "oauth_client": [
- {
- "client_id": "661638997772-6aiqk97aema0rt280i7nfar3ha2mlgno.apps.googleusercontent.com",
- "client_type": 3
- }
- ],
- "api_key": [
- {
- "current_key": "AIzaSyDUw4s-mhQsHvs4hdIsldsi68ZIygM5MC4"
- }
- ],
- "services": {
- "appinvite_service": {
- "other_platform_oauth_client": [
- {
- "client_id": "661638997772-6aiqk97aema0rt280i7nfar3ha2mlgno.apps.googleusercontent.com",
- "client_type": 3
- },
- {
- "client_id": "661638997772-sqa4raeghhrieqt9guljhcul9b51dvna.apps.googleusercontent.com",
- "client_type": 2,
- "ios_info": {
- "bundle_id": "com.xmflsct.app.mastodon"
- }
- }
- ]
- }
- }
- }
- ],
- "configuration_version": "1"
-}
\ No newline at end of file
diff --git a/ios/Podfile b/ios/Podfile
index 98b9127d..ce23340c 100644
--- a/ios/Podfile
+++ b/ios/Podfile
@@ -15,12 +15,6 @@ target 'tooot' do
# Flags change depending on the env values.
flags = get_default_flags()
- # https://stackoverflow.com/questions/72289521/swift-pods-cannot-yet-be-integrated-as-static-libraries-firebasecoreinternal-lib/72969220#72969220
- pod 'Firebase', :modular_headers => true
- pod 'FirebaseCore', :modular_headers => true
- pod 'GoogleUtilities', :modular_headers => true
- $RNFirebaseAsStaticFramework = true
-
use_react_native!(
:path => config[:reactNativePath],
:hermes_enabled => true,
diff --git a/ios/Podfile.lock b/ios/Podfile.lock
index 6e5e751f..80c3ab78 100644
--- a/ios/Podfile.lock
+++ b/ios/Podfile.lock
@@ -12,13 +12,6 @@ PODS:
- ExpoModulesCore
- EXFileSystem (15.1.1):
- ExpoModulesCore
- - EXFirebaseAnalytics (8.0.0):
- - EXFirebaseCore
- - ExpoModulesCore
- - Firebase/Core (= 9.5.0)
- - EXFirebaseCore (6.0.0):
- - ExpoModulesCore
- - Firebase/Core (= 9.5.0)
- EXFont (11.0.1):
- ExpoModulesCore
- EXNotifications (0.17.0):
@@ -59,107 +52,8 @@ PODS:
- React-Core (= 0.70.6)
- React-jsi (= 0.70.6)
- ReactCommon/turbomodule/core (= 0.70.6)
- - Firebase (9.5.0):
- - Firebase/Core (= 9.5.0)
- - Firebase/Core (9.5.0):
- - Firebase/CoreOnly
- - FirebaseAnalytics (~> 9.5.0)
- - Firebase/CoreOnly (9.5.0):
- - FirebaseCore (= 9.5.0)
- - FirebaseAnalytics (9.5.0):
- - FirebaseAnalytics/AdIdSupport (= 9.5.0)
- - FirebaseCore (~> 9.0)
- - FirebaseInstallations (~> 9.0)
- - GoogleUtilities/AppDelegateSwizzler (~> 7.7)
- - GoogleUtilities/MethodSwizzler (~> 7.7)
- - GoogleUtilities/Network (~> 7.7)
- - "GoogleUtilities/NSData+zlib (~> 7.7)"
- - nanopb (< 2.30910.0, >= 2.30908.0)
- - FirebaseAnalytics/AdIdSupport (9.5.0):
- - FirebaseCore (~> 9.0)
- - FirebaseInstallations (~> 9.0)
- - GoogleAppMeasurement (= 9.5.0)
- - GoogleUtilities/AppDelegateSwizzler (~> 7.7)
- - GoogleUtilities/MethodSwizzler (~> 7.7)
- - GoogleUtilities/Network (~> 7.7)
- - "GoogleUtilities/NSData+zlib (~> 7.7)"
- - nanopb (< 2.30910.0, >= 2.30908.0)
- - FirebaseCore (9.5.0):
- - FirebaseCoreDiagnostics (~> 9.0)
- - FirebaseCoreInternal (~> 9.0)
- - GoogleUtilities/Environment (~> 7.7)
- - GoogleUtilities/Logger (~> 7.7)
- - FirebaseCoreDiagnostics (9.6.0):
- - GoogleDataTransport (< 10.0.0, >= 9.1.4)
- - GoogleUtilities/Environment (~> 7.7)
- - GoogleUtilities/Logger (~> 7.7)
- - nanopb (< 2.30910.0, >= 2.30908.0)
- - FirebaseCoreInternal (9.6.0):
- - "GoogleUtilities/NSData+zlib (~> 7.7)"
- - FirebaseInstallations (9.6.0):
- - FirebaseCore (~> 9.0)
- - GoogleUtilities/Environment (~> 7.7)
- - GoogleUtilities/UserDefaults (~> 7.7)
- - PromisesObjC (~> 2.1)
- fmt (6.2.1)
- glog (0.3.5)
- - GoogleAppMeasurement (9.5.0):
- - GoogleAppMeasurement/AdIdSupport (= 9.5.0)
- - GoogleUtilities/AppDelegateSwizzler (~> 7.7)
- - GoogleUtilities/MethodSwizzler (~> 7.7)
- - GoogleUtilities/Network (~> 7.7)
- - "GoogleUtilities/NSData+zlib (~> 7.7)"
- - nanopb (< 2.30910.0, >= 2.30908.0)
- - GoogleAppMeasurement/AdIdSupport (9.5.0):
- - GoogleAppMeasurement/WithoutAdIdSupport (= 9.5.0)
- - GoogleUtilities/AppDelegateSwizzler (~> 7.7)
- - GoogleUtilities/MethodSwizzler (~> 7.7)
- - GoogleUtilities/Network (~> 7.7)
- - "GoogleUtilities/NSData+zlib (~> 7.7)"
- - nanopb (< 2.30910.0, >= 2.30908.0)
- - GoogleAppMeasurement/WithoutAdIdSupport (9.5.0):
- - GoogleUtilities/AppDelegateSwizzler (~> 7.7)
- - GoogleUtilities/MethodSwizzler (~> 7.7)
- - GoogleUtilities/Network (~> 7.7)
- - "GoogleUtilities/NSData+zlib (~> 7.7)"
- - nanopb (< 2.30910.0, >= 2.30908.0)
- - GoogleDataTransport (9.2.0):
- - GoogleUtilities/Environment (~> 7.7)
- - nanopb (< 2.30910.0, >= 2.30908.0)
- - PromisesObjC (< 3.0, >= 1.2)
- - GoogleUtilities (7.10.0):
- - GoogleUtilities/AppDelegateSwizzler (= 7.10.0)
- - GoogleUtilities/Environment (= 7.10.0)
- - GoogleUtilities/ISASwizzler (= 7.10.0)
- - GoogleUtilities/Logger (= 7.10.0)
- - GoogleUtilities/MethodSwizzler (= 7.10.0)
- - GoogleUtilities/Network (= 7.10.0)
- - "GoogleUtilities/NSData+zlib (= 7.10.0)"
- - GoogleUtilities/Reachability (= 7.10.0)
- - GoogleUtilities/SwizzlerTestHelpers (= 7.10.0)
- - GoogleUtilities/UserDefaults (= 7.10.0)
- - GoogleUtilities/AppDelegateSwizzler (7.10.0):
- - GoogleUtilities/Environment
- - GoogleUtilities/Logger
- - GoogleUtilities/Network
- - GoogleUtilities/Environment (7.10.0):
- - PromisesObjC (< 3.0, >= 1.2)
- - GoogleUtilities/ISASwizzler (7.10.0)
- - GoogleUtilities/Logger (7.10.0):
- - GoogleUtilities/Environment
- - GoogleUtilities/MethodSwizzler (7.10.0):
- - GoogleUtilities/Logger
- - GoogleUtilities/Network (7.10.0):
- - GoogleUtilities/Logger
- - "GoogleUtilities/NSData+zlib"
- - GoogleUtilities/Reachability
- - "GoogleUtilities/NSData+zlib (7.10.0)"
- - GoogleUtilities/Reachability (7.10.0):
- - GoogleUtilities/Logger
- - GoogleUtilities/SwizzlerTestHelpers (7.10.0):
- - GoogleUtilities/MethodSwizzler
- - GoogleUtilities/UserDefaults (7.10.0):
- - GoogleUtilities/Logger
- hermes-engine (0.70.6)
- libevent (2.1.12)
- libwebp (1.2.4):
@@ -171,12 +65,6 @@ PODS:
- libwebp/mux (1.2.4):
- libwebp/demux
- libwebp/webp (1.2.4)
- - nanopb (2.30909.0):
- - nanopb/decode (= 2.30909.0)
- - nanopb/encode (= 2.30909.0)
- - nanopb/decode (2.30909.0)
- - nanopb/encode (2.30909.0)
- - PromisesObjC (2.1.1)
- RCT-Folly (2021.07.22.00):
- boost
- DoubleConversion
@@ -563,8 +451,6 @@ DEPENDENCIES:
- EXConstants (from `../node_modules/expo-constants/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`)
- EXNotifications (from `../node_modules/expo-notifications/ios`)
- Expo (from `../node_modules/expo`)
@@ -582,10 +468,7 @@ DEPENDENCIES:
- EXVideoThumbnails (from `../node_modules/expo-video-thumbnails/ios`)
- FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector`)
- FBReactNativeSpec (from `../node_modules/react-native/React/FBReactNativeSpec`)
- - Firebase
- - FirebaseCore
- glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`)
- - GoogleUtilities
- hermes-engine (from `../node_modules/react-native/sdks/hermes/hermes-engine.podspec`)
- libevent (~> 2.1.12)
- RCT-Folly (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`)
@@ -641,20 +524,9 @@ DEPENDENCIES:
SPEC REPOS:
trunk:
- - Firebase
- - FirebaseAnalytics
- - FirebaseCore
- - FirebaseCoreDiagnostics
- - FirebaseCoreInternal
- - FirebaseInstallations
- fmt
- - GoogleAppMeasurement
- - GoogleDataTransport
- - GoogleUtilities
- libevent
- libwebp
- - nanopb
- - PromisesObjC
- SDWebImage
- SDWebImageWebPCoder
- Sentry
@@ -675,10 +547,6 @@ EXTERNAL SOURCES:
:path: "../node_modules/expo-error-recovery/ios"
EXFileSystem:
:path: "../node_modules/expo-file-system/ios"
- EXFirebaseAnalytics:
- :path: "../node_modules/expo-firebase-analytics/ios"
- EXFirebaseCore:
- :path: "../node_modules/expo-firebase-core/ios"
EXFont:
:path: "../node_modules/expo-font/ios"
EXNotifications:
@@ -824,8 +692,6 @@ SPEC CHECKSUMS:
EXConstants: 3c86653c422dd77e40d10cbbabb3025003977415
EXErrorRecovery: ae43433feb0608a64dc5b1c8363b3e7769a9ea24
EXFileSystem: 60602b6eefa6873f97172c684b7537c9760b50d6
- EXFirebaseAnalytics: 58d70e698859b070b2450ad8664d7b5bc6c6e3e1
- EXFirebaseCore: d0d88cb904e893af07f809ab08c0892489bc6956
EXFont: 319606bfe48c33b5b5063fb0994afdc496befe80
EXNotifications: babce2a87b7922051354fcfe7a74dd279b7e272a
Expo: 36b5f625d36728adbdd1934d4d57182f319ab832
@@ -843,22 +709,11 @@ SPEC CHECKSUMS:
EXVideoThumbnails: 8b3e48f3716679dd0cbf949217a31eab5c555799
FBLazyVector: 48289402952f4f7a4e235de70a9a590aa0b79ef4
FBReactNativeSpec: dd1186fd05255e3457baa2f4ca65e94c2cd1e3ac
- Firebase: 800f16f07af493d98d017446a315c27af0552f41
- FirebaseAnalytics: 1b60984a408320dda637306f3f733699ef8473d7
- FirebaseCore: 25c0400b670fd1e2f2104349cd3b5dcce8d9418f
- FirebaseCoreDiagnostics: 99a495094b10a57eeb3ae8efa1665700ad0bdaa6
- FirebaseCoreInternal: bca76517fe1ed381e989f5e7d8abb0da8d85bed3
- FirebaseInstallations: 0a115432c4e223c5ab20b0dbbe4cbefa793a0e8e
fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9
glog: 04b94705f318337d7ead9e6d17c019bd9b1f6b1b
- GoogleAppMeasurement: 6ee231473fbd75c11221dfce489894334024eead
- GoogleDataTransport: 1c8145da7117bd68bbbed00cf304edb6a24de00f
- GoogleUtilities: bad72cb363809015b1f7f19beb1f1cd23c589f95
hermes-engine: 2af7b7a59128f250adfd86f15aa1d5a2ecd39995
libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913
libwebp: f62cb61d0a484ba548448a4bd52aabf150ff6eef
- nanopb: b552cce312b6c8484180ef47159bc0f65a1f0431
- PromisesObjC: ab77feca74fa2823e7af4249b8326368e61014cb
RCT-Folly: 0080d0a6ebf2577475bda044aa59e2ca1f909cda
RCTRequired: e1866f61af7049eb3d8e08e8b133abd38bc1ca7a
RCTTypeSafety: 27c2ac1b00609a432ced1ae701247593f07f901e
@@ -913,6 +768,6 @@ SPEC CHECKSUMS:
Swime: d7b2c277503b6cea317774aedc2dce05613f8b0b
Yoga: 99caf8d5ab45e9d637ee6e0174ec16fbbb01bcfc
-PODFILE CHECKSUM: e4191b63c8f15031b2365226730770e7978dca41
+PODFILE CHECKSUM: 05bf71d31ba782dfda5a6b47d38e98a6f6bc079a
COCOAPODS: 1.11.3
diff --git a/ios/tooot.xcodeproj/project.pbxproj b/ios/tooot.xcodeproj/project.pbxproj
index 6af87ad9..811bb728 100644
--- a/ios/tooot.xcodeproj/project.pbxproj
+++ b/ios/tooot.xcodeproj/project.pbxproj
@@ -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 */; };
- 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 */; };
E633A42B281EAEAB000E540F /* ShareExtension.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = E633A420281EAEAB000E540F /* ShareExtension.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
@@ -69,7 +68,6 @@
7A4D352CD337FB3A3BF06240 /* Pods-tooot.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-tooot.release.xcconfig"; path = "Target Support Files/Pods-tooot/Pods-tooot.release.xcconfig"; sourceTree = ""; };
9D878F932AF7A9974E06E461 /* ExpoModulesProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExpoModulesProvider.swift; path = "Pods/Target Support Files/Pods-tooot/ExpoModulesProvider.swift"; sourceTree = ""; };
AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = SplashScreen.storyboard; path = tooot/SplashScreen.storyboard; sourceTree = ""; };
- 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 = ""; };
DF8133F098604A10B0D94952 /* boop.mp3 */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = boop.mp3; path = tooot/boop.mp3; sourceTree = ""; };
E613A80A28282A01003C97D6 /* AppDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = AppDelegate.mm; path = tooot/AppDelegate.mm; sourceTree = ""; };
E633A420281EAEAB000E540F /* ShareExtension.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = ShareExtension.appex; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -122,7 +120,6 @@
13B07FB71A68108700A75B9A /* main.m */,
AA286B85B6C04FC6940260E9 /* SplashScreen.storyboard */,
5E36538225C9B8BD009F93EE /* RootViewColor.xcassets */,
- B96B72E5384D44A7B240B27E /* GoogleService-Info.plist */,
5EE088CB26297820007E5FEC /* InfoPlist.strings */,
DF8133F098604A10B0D94952 /* boop.mp3 */,
);
@@ -319,7 +316,6 @@
13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */,
13B07FBD1A68108700A75B9A /* LaunchScreen.xib in Resources */,
3E461D99554A48A4959DE609 /* SplashScreen.storyboard in Resources */,
- DA8B5B7F0DED488CAC0FF169 /* GoogleService-Info.plist in Resources */,
4986628FD0DD4630BFE5F388 /* boop.mp3 in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
diff --git a/ios/tooot/GoogleService-Info.plist b/ios/tooot/GoogleService-Info.plist
deleted file mode 100644
index 553df7ab..00000000
--- a/ios/tooot/GoogleService-Info.plist
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
- CLIENT_ID
- 661638997772-65g8ce369ugck3ii4ulk6jhb3ijg51kl.apps.googleusercontent.com
- REVERSED_CLIENT_ID
- com.googleusercontent.apps.661638997772-65g8ce369ugck3ii4ulk6jhb3ijg51kl
- API_KEY
- AIzaSyAOS1Yq_uNVctG89LB6Dl1PVhb_FAQRbRg
- GCM_SENDER_ID
- 661638997772
- PLIST_VERSION
- 1
- BUNDLE_ID
- com.xmflsct.app.tooot
- PROJECT_ID
- xmflsct-mastodon-app
- STORAGE_BUCKET
- xmflsct-mastodon-app.appspot.com
- IS_ADS_ENABLED
-
- IS_ANALYTICS_ENABLED
-
- IS_APPINVITE_ENABLED
-
- IS_GCM_ENABLED
-
- IS_SIGNIN_ENABLED
-
- GOOGLE_APP_ID
- 1:661638997772:ios:c8d2e09264a344b09f8b29
-
-
\ No newline at end of file
diff --git a/package.json b/package.json
index fce73f57..4e43b860 100644
--- a/package.json
+++ b/package.json
@@ -47,7 +47,6 @@
"expo-constants": "^14.0.2",
"expo-crypto": "^12.0.0",
"expo-file-system": "^15.1.1",
- "expo-firebase-analytics": "^8.0.0",
"expo-haptics": "^12.0.1",
"expo-linking": "^3.2.3",
"expo-localization": "^14.0.0",
diff --git a/src/Screens.tsx b/src/Screens.tsx
index 82e09f8c..59c7c3b1 100644
--- a/src/Screens.tsx
+++ b/src/Screens.tsx
@@ -1,4 +1,3 @@
-import analytics from '@components/analytics'
import { HeaderLeft } from '@components/Header'
import { displayMessage, Message } from '@components/Message'
import navigationRef from '@helpers/navigationRef'
@@ -113,7 +112,6 @@ const Screens: React.FC = ({ localCorrupt }) => {
}
if (previousRoute?.name !== currentRoute?.name) {
- analytics('screen_view', { screen_name: currentRoute?.name })
Sentry.setContext('page', {
previous: previousRoute,
current: currentRoute
diff --git a/src/components/Account.tsx b/src/components/Account.tsx
index 103ded66..a59684b7 100644
--- a/src/components/Account.tsx
+++ b/src/components/Account.tsx
@@ -6,29 +6,19 @@ import { StyleConstants } from '@utils/styles/constants'
import { useTheme } from '@utils/styles/ThemeManager'
import React, { useCallback } from 'react'
import { Pressable, View } from 'react-native'
-import analytics from './analytics'
import GracefullyImage from './GracefullyImage'
import CustomText from './Text'
export interface Props {
account: Mastodon.Account
onPress?: () => void
- origin?: string
}
-const ComponentAccount: React.FC = ({
- account,
- onPress: customOnPress,
- origin
-}) => {
+const ComponentAccount: React.FC = ({ account, onPress: customOnPress }) => {
const { colors } = useTheme()
- const navigation =
- useNavigation>()
+ const navigation = useNavigation>()
- const onPress = useCallback(() => {
- analytics('search_account_press', { page: origin })
- navigation.push('Tab-Shared-Account', { account })
- }, [])
+ const onPress = useCallback(() => navigation.push('Tab-Shared-Account', { account }), [])
return (
{
- analytics('timeline_shared_headeractions_domain_block_confirm', {
- page: queryKey && queryKey[1].page
- })
mutation.mutate({
type: 'domainBlock',
queryKey,
diff --git a/src/components/ContextMenu/share.ts b/src/components/ContextMenu/share.ts
index 03401876..9bc5c465 100644
--- a/src/components/ContextMenu/share.ts
+++ b/src/components/ContextMenu/share.ts
@@ -1,4 +1,3 @@
-import analytics from '@components/analytics'
import { displayMessage } from '@components/Message'
import Clipboard from '@react-native-clipboard/clipboard'
import { useTheme } from '@utils/styles/ThemeManager'
@@ -39,7 +38,6 @@ const contextMenuShare = ({ copiableContent, actions, type, url }: Props) => {
return // For Android
}
if (actions[index].id === 'copy') {
- analytics('timeline_shared_headeractions_copy_press')
Clipboard.setString(copiableContent?.current.content || '')
displayMessage({
theme,
@@ -48,7 +46,6 @@ const contextMenuShare = ({ copiableContent, actions, type, url }: Props) => {
})
}
if (actions[index].id === 'share') {
- analytics('timeline_shared_headeractions_share_press')
switch (Platform.OS) {
case 'ios':
Share.share({ url })
diff --git a/src/components/ContextMenu/status.ts b/src/components/ContextMenu/status.ts
index 8e98f7fc..b5cc3402 100644
--- a/src/components/ContextMenu/status.ts
+++ b/src/components/ContextMenu/status.ts
@@ -1,5 +1,4 @@
import apiInstance from '@api/instance'
-import analytics from '@components/analytics'
import { displayMessage } from '@components/Message'
import { useNavigation } from '@react-navigation/native'
import { NativeStackNavigationProp } from '@react-navigation/native-stack'
@@ -107,17 +106,11 @@ const contextMenuStatus = ({ actions, status, queryKey, rootQueryKey }: Props) =
return // For Android
}
if (actions[index].id === 'status-delete') {
- analytics('timeline_shared_headeractions_status_delete_press', {
- page: queryKey && queryKey[1].page
- })
Alert.alert(t('status.delete.alert.title'), t('status.delete.alert.message'), [
{
text: t('status.delete.alert.buttons.confirm'),
style: 'destructive',
onPress: async () => {
- analytics('timeline_shared_headeractions_status_delete_confirm', {
- page: queryKey && queryKey[1].page
- })
mutation.mutate({
type: 'deleteItem',
source: 'statuses',
@@ -133,17 +126,11 @@ const contextMenuStatus = ({ actions, status, queryKey, rootQueryKey }: Props) =
])
}
if (actions[index].id === 'status-delete-edit') {
- analytics('timeline_shared_headeractions_status_deleteedit_press', {
- page: queryKey && queryKey[1].page
- })
Alert.alert(t('status.deleteEdit.alert.title'), t('status.deleteEdit.alert.message'), [
{
text: t('status.deleteEdit.alert.buttons.confirm'),
style: 'destructive',
onPress: async () => {
- analytics('timeline_shared_headeractions_status_deleteedit_confirm', {
- page: queryKey && queryKey[1].page
- })
let replyToStatus: Mastodon.Status | undefined = undefined
if (status.in_reply_to_id) {
replyToStatus = await apiInstance({
@@ -174,9 +161,6 @@ const contextMenuStatus = ({ actions, status, queryKey, rootQueryKey }: Props) =
])
}
if (actions[index].id === 'status-mute') {
- analytics('timeline_shared_headeractions_status_mute_press', {
- page: queryKey && queryKey[1].page
- })
mutation.mutate({
type: 'updateStatusProperty',
queryKey,
@@ -191,9 +175,6 @@ const contextMenuStatus = ({ actions, status, queryKey, rootQueryKey }: Props) =
})
}
if (actions[index].id === 'status-edit') {
- analytics('timeline_shared_headeractions_status_edit_press', {
- page: queryKey && queryKey[1].page
- })
let replyToStatus: Mastodon.Status | undefined = undefined
if (status.in_reply_to_id) {
replyToStatus = await apiInstance({
@@ -224,9 +205,6 @@ const contextMenuStatus = ({ actions, status, queryKey, rootQueryKey }: Props) =
}
if (actions[index].id === 'status-pin') {
// Also note that reblogs cannot be pinned.
- analytics('timeline_shared_headeractions_status_pin_press', {
- page: queryKey && queryKey[1].page
- })
mutation.mutate({
type: 'updateStatusProperty',
queryKey,
diff --git a/src/components/Hashtag.tsx b/src/components/Hashtag.tsx
index 7efccdf3..aebb1adc 100644
--- a/src/components/Hashtag.tsx
+++ b/src/components/Hashtag.tsx
@@ -5,7 +5,6 @@ import { StyleConstants } from '@utils/styles/constants'
import { useTheme } from '@utils/styles/ThemeManager'
import React, { useCallback } from 'react'
import { Pressable } from 'react-native'
-import analytics from './analytics'
import CustomText from './Text'
export interface Props {
@@ -24,7 +23,6 @@ const ComponentHashtag: React.FC = ({
useNavigation>()
const onPress = useCallback(() => {
- analytics('search_account_press', { page: origin })
navigation.push('Tab-Shared-Hashtag', { hashtag: hashtag.name })
}, [])
diff --git a/src/components/Instance.tsx b/src/components/Instance.tsx
index b37361c2..46be34e8 100644
--- a/src/components/Instance.tsx
+++ b/src/components/Instance.tsx
@@ -9,18 +9,10 @@ import * as WebBrowser from 'expo-web-browser'
import { debounce } from 'lodash'
import React, { RefObject, useCallback, useMemo, useState } from 'react'
import { Trans, useTranslation } from 'react-i18next'
-import {
- Alert,
- Image,
- KeyboardAvoidingView,
- Platform,
- TextInput,
- View
-} from 'react-native'
+import { Alert, Image, KeyboardAvoidingView, Platform, TextInput, View } from 'react-native'
import { ScrollView } from 'react-native-gesture-handler'
import { useSelector } from 'react-redux'
import { Placeholder } from 'rn-placeholder'
-import analytics from './analytics'
import InstanceAuth from './Instance/Auth'
import InstanceInfo from './Instance/Info'
import CustomText from './Text'
@@ -65,11 +57,7 @@ const ComponentInstance: React.FC = ({
const processUpdate = useCallback(() => {
if (domain) {
- analytics('instance_login')
- if (
- instances &&
- instances.filter(instance => instance.url === domain).length
- ) {
+ if (instances && instances.filter(instance => instance.url === domain).length) {
Alert.alert(t('update.alert.title'), t('update.alert.message'), [
{
text: t('update.alert.buttons.cancel'),
@@ -142,9 +130,7 @@ const ComponentInstance: React.FC = ({
borderBottomWidth: 1,
...StyleConstants.FontStyle.M,
color: colors.primaryDefault,
- borderBottomColor: instanceQuery.isError
- ? colors.red
- : colors.border
+ borderBottomColor: instanceQuery.isError ? colors.red : colors.border
}}
editable={false}
defaultValue='https://'
@@ -156,9 +142,7 @@ const ComponentInstance: React.FC = ({
...StyleConstants.FontStyle.M,
marginRight: StyleConstants.Spacing.M,
color: colors.primaryDefault,
- borderBottomColor: instanceQuery.isError
- ? colors.red
- : colors.border
+ borderBottomColor: instanceQuery.isError ? colors.red : colors.border
}}
onChangeText={onChangeText}
autoCapitalize='none'
@@ -166,7 +150,6 @@ const ComponentInstance: React.FC = ({
keyboardType='url'
textContentType='URL'
onSubmitEditing={({ nativeEvent: { text } }) => {
- analytics('instance_textinput_submit', { match: text === domain })
if (
text === domain &&
instanceQuery.isSuccess &&
@@ -182,11 +165,7 @@ const ComponentInstance: React.FC = ({
keyboardAppearance={mode}
{...(scrollViewRef && {
onFocus: () =>
- setTimeout(
- () =>
- scrollViewRef.current?.scrollTo({ y: 0, animated: true }),
- 150
- )
+ setTimeout(() => scrollViewRef.current?.scrollTo({ y: 0, animated: true }), 150)
})}
autoCorrect={false}
spellCheck={false}
@@ -211,27 +190,19 @@ const ComponentInstance: React.FC = ({
@@ -248,17 +219,11 @@ const ComponentInstance: React.FC = ({
size={StyleConstants.Font.Size.S}
color={colors.secondary}
style={{
- marginTop:
- (StyleConstants.Font.LineHeight.S -
- StyleConstants.Font.Size.S) /
- 2,
+ marginTop: (StyleConstants.Font.LineHeight.S - StyleConstants.Font.Size.S) / 2,
marginRight: StyleConstants.Spacing.XS
}}
/>
-
+
{t('server.disclaimer.base')}
@@ -274,10 +239,7 @@ const ComponentInstance: React.FC = ({
size={StyleConstants.Font.Size.S}
color={colors.secondary}
style={{
- marginTop:
- (StyleConstants.Font.LineHeight.S -
- StyleConstants.Font.Size.S) /
- 2,
+ marginTop: (StyleConstants.Font.LineHeight.S - StyleConstants.Font.Size.S) / 2,
marginRight: StyleConstants.Spacing.XS
}}
/>
@@ -292,22 +254,14 @@ const ComponentInstance: React.FC = ({
{
- analytics('view_privacy')
- WebBrowser.openBrowserAsync(
- 'https://tooot.app/privacy-policy'
- )
- }}
+ onPress={() => WebBrowser.openBrowserAsync('https://tooot.app/privacy-policy')}
/>,
{
- analytics('view_tos')
- WebBrowser.openBrowserAsync(
- 'https://tooot.app/terms-of-service'
- )
- }}
+ onPress={() =>
+ WebBrowser.openBrowserAsync('https://tooot.app/terms-of-service')
+ }
/>
]}
/>
diff --git a/src/components/Parse/HTML.tsx b/src/components/Parse/HTML.tsx
index e68b3d30..b619b144 100644
--- a/src/components/Parse/HTML.tsx
+++ b/src/components/Parse/HTML.tsx
@@ -1,4 +1,3 @@
-import analytics from '@components/analytics'
import Icon from '@components/Icon'
import openLink from '@components/openLink'
import ParseEmojis from '@components/Parse/Emojis'
@@ -63,7 +62,6 @@ const renderNode = ({
lineHeight: adaptedLineheight
}}
onPress={() => {
- analytics('status_hashtag_press')
!disableDetails &&
differentTag &&
navigation.push('Tab-Shared-Hashtag', {
@@ -89,7 +87,6 @@ const renderNode = ({
lineHeight: adaptedLineheight
}}
onPress={() => {
- analytics('status_mention_press')
accountIndex !== -1 &&
!disableDetails &&
differentAccount &&
@@ -118,7 +115,6 @@ const renderNode = ({
lineHeight: adaptedLineheight
}}
onPress={async () => {
- analytics('status_link_press')
if (!disableDetails) {
if (shouldBeTag) {
navigation.push('Tab-Shared-Hashtag', {
@@ -255,7 +251,6 @@ const ParseHTML = React.memo(
{
- analytics('status_readmore', { totalLines, expanded })
layoutAnimation()
setExpanded(!expanded)
}}
diff --git a/src/components/Relationship/Incoming.tsx b/src/components/Relationship/Incoming.tsx
index feb97340..d6eb633c 100644
--- a/src/components/Relationship/Incoming.tsx
+++ b/src/components/Relationship/Incoming.tsx
@@ -1,11 +1,7 @@
-import analytics from '@components/analytics'
import Button from '@components/Button'
import haptics from '@components/haptics'
import { displayMessage } from '@components/Message'
-import {
- QueryKeyRelationship,
- useRelationshipMutation
-} from '@utils/queryHooks/relationship'
+import { QueryKeyRelationship, useRelationshipMutation } from '@utils/queryHooks/relationship'
import { QueryKeyTimeline } from '@utils/queryHooks/timeline'
import { StyleConstants } from '@utils/styles/constants'
import { useTheme } from '@utils/styles/ThemeManager'
@@ -23,17 +19,12 @@ const RelationshipIncoming: React.FC = ({ id }) => {
const { t } = useTranslation()
const queryKeyRelationship: QueryKeyRelationship = ['Relationship', { id }]
- const queryKeyNotification: QueryKeyTimeline = [
- 'Timeline',
- { page: 'Notifications' }
- ]
+ const queryKeyNotification: QueryKeyTimeline = ['Timeline', { page: 'Notifications' }]
const queryClient = useQueryClient()
const mutation = useRelationshipMutation({
onSuccess: res => {
haptics('Success')
- queryClient.setQueryData(queryKeyRelationship, [
- res
- ])
+ queryClient.setQueryData(queryKeyRelationship, [res])
queryClient.refetchQueries(queryKeyNotification)
},
onError: (err: any, { type }) => {
@@ -62,28 +53,26 @@ const RelationshipIncoming: React.FC = ({ id }) => {
type='icon'
content='X'
loading={mutation.isLoading}
- onPress={() => {
- analytics('relationship_incoming_press_reject')
+ onPress={() =>
mutation.mutate({
id,
type: 'incoming',
payload: { action: 'reject' }
})
- }}
+ }
/>