diff --git a/App/Modules/Play/Player/Styles.js b/App/Modules/Play/Player/Styles.js index 4f2cd67..9e354e3 100644 --- a/App/Modules/Play/Player/Styles.js +++ b/App/Modules/Play/Player/Styles.js @@ -2,10 +2,13 @@ import { StyleSheet } from 'react-native' import { Styles, Colors, Metrics } from 'App/Themes' +import { isIphoneX } from 'App/Services/Properties' + export default StyleSheet.create({ ...Styles, header: { margin: Metrics.unit * 2, + marginTop: (isIphoneX) ? Metrics.unit * 4 : Metrics.unit * 2, marginBottom: 0, flexDirection: 'row' }, diff --git a/App/Services/Bluetooth/Simulator/index.js b/App/Services/Bluetooth/Simulator/index.js index e24c235..80d9635 100644 --- a/App/Services/Bluetooth/Simulator/index.js +++ b/App/Services/Bluetooth/Simulator/index.js @@ -29,14 +29,14 @@ const list = async () => { } const scan = async () => { - // Wait 2 seconds to mimic scanning - await new Promise(resolve => setTimeout(resolve, 2000)) + // Wait 0.5 seconds to mimic scanning + await new Promise(resolve => setTimeout(resolve, 500)) return {devices: simulator.devices.concat(simulator.unpairedDevices), error: null} } const connect = async (device) => { - // Wait 2 seconds to mimic connecting - await new Promise(resolve => setTimeout(resolve, 2000)) + // Wait 0.5 seconds to mimic connecting + await new Promise(resolve => setTimeout(resolve, 500)) if (device && device.id === '2') { return {connected: false, error: {message: 'Not able to connect'}} diff --git a/App/Services/CrashReporting/index.js b/App/Services/CrashReporting/index.js index b049555..26e8777 100644 --- a/App/Services/CrashReporting/index.js +++ b/App/Services/CrashReporting/index.js @@ -1,11 +1,17 @@ import Config from 'react-native-config' -import { Sentry, SentrySeverity } from 'react-native-sentry' +import { Platform } from 'react-native' +import { Sentry, SentrySeverity } from '@sentry/react-native' import { enrichProperties } from 'App/Services/Properties' +// TODO Fix for iOS +const isCrashReportingEnabled = () => { + return (!__DEV__ && Platform.OS !== 'ios') +} + export const initCrashReporting = () => { - if (!__DEV__) { - Sentry.config(Config.SENTRY_URL).install() + if (isCrashReportingEnabled()) { + Sentry.init({dsn: Config.SENTRY_URL}) } } @@ -13,7 +19,7 @@ export const captureUser = (user) => { if (!user) { return } - if (!__DEV__) { + if (isCrashReportingEnabled()) { Sentry.setUserContext({ // email: user.email, // TODO Probably NOT a good idea to share the user's email with Sentry for security purposes userID: user.id, @@ -23,7 +29,7 @@ export const captureUser = (user) => { } export const resetUser = () => { - if (!__DEV__) { + if (isCrashReportingEnabled()) { Sentry.setUserContext({ // email: null, // TODO See TODO in captureUser method userID: null, @@ -36,7 +42,7 @@ export const captureAPIError = (message, errorResponse) => { console.warn(message) console.warn(errorResponse) - if (!__DEV__) { + if (isCrashReportingEnabled()) { const extra = (errorResponse) ? { errorResponse } : {} @@ -51,7 +57,7 @@ export const captureException = (message, e) => { console.error(message) console.error(e) - if (!__DEV__) { + if (isCrashReportingEnabled()) { const extra = { message } Sentry.captureException(e, { extra: enrichProperties(extra) diff --git a/Tests/Modules/Play/Player/__snapshots__/PlayerTest.js.snap b/Tests/Modules/Play/Player/__snapshots__/PlayerTest.js.snap index cca16e7..0b58661 100644 --- a/Tests/Modules/Play/Player/__snapshots__/PlayerTest.js.snap +++ b/Tests/Modules/Play/Player/__snapshots__/PlayerTest.js.snap @@ -10,6 +10,7 @@ exports[`Player Component renders correctly 1`] = ` "flexDirection": "row", "margin": 16, "marginBottom": 0, + "marginTop": 32, } } > diff --git a/android/app/build.gradle b/android/app/build.gradle index 515385e..28393bc 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -77,6 +77,7 @@ project.ext.react = [ ] apply from: "../../node_modules/react-native/react.gradle" +apply from: "../../node_modules/@sentry/react-native/sentry.gradle" // apply from: "../../node_modules/react-native-sentry/sentry.gradle" // TODO getting bad sentry url // See https://github.com/luggit/react-native-config#setup @@ -171,13 +172,13 @@ android { } dependencies { + implementation project(':@sentry_react-native') implementation project(':react-native-webview') compile project(':react-native-ble-plx') compile project(':react-native-bluetooth-serial') compile project(':react-native-video') compile project(':react-native-linear-gradient') compile project(':react-native-app-settings') - compile project(':react-native-sentry') implementation(project(':react-native-firebase')) { transitive = false } diff --git a/android/app/src/main/java/com/ottodiy/MainApplication.java b/android/app/src/main/java/com/ottodiy/MainApplication.java index 6682d95..9b2b0f5 100644 --- a/android/app/src/main/java/com/ottodiy/MainApplication.java +++ b/android/app/src/main/java/com/ottodiy/MainApplication.java @@ -3,13 +3,13 @@ import android.app.Application; import com.facebook.react.ReactApplication; +import io.sentry.RNSentryPackage; import com.reactnativecommunity.webview.RNCWebViewPackage; import com.polidea.reactnativeble.BlePackage; import com.rusel.RCTBluetoothSerial.RCTBluetoothSerialPackage; import com.brentvatne.react.ReactVideoPackage; import com.BV.LinearGradient.LinearGradientPackage; import com.krazylabs.OpenAppSettingsPackage; -import io.sentry.RNSentryPackage; import io.invertase.firebase.RNFirebasePackage; import io.invertase.firebase.auth.RNFirebaseAuthPackage; import io.invertase.firebase.messaging.RNFirebaseMessagingPackage; @@ -40,13 +40,13 @@ public boolean getUseDeveloperSupport() { protected List getPackages() { return Arrays.asList( new MainReactPackage(), + new RNSentryPackage(), new RNCWebViewPackage(), new BlePackage(), new RCTBluetoothSerialPackage(), new ReactVideoPackage(), new LinearGradientPackage(), new OpenAppSettingsPackage(), - new RNSentryPackage(), new RNFirebasePackage(), new RNFirebaseAuthPackage(), new RNFirebaseMessagingPackage(), diff --git a/android/settings.gradle b/android/settings.gradle index 9d417d3..15f5778 100644 --- a/android/settings.gradle +++ b/android/settings.gradle @@ -1,4 +1,6 @@ rootProject.name = 'CodeAndRobots' +include ':@sentry_react-native' +project(':@sentry_react-native').projectDir = new File(rootProject.projectDir, '../node_modules/@sentry/react-native/android') include ':react-native-webview' project(':react-native-webview').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-webview/android') include ':react-native-ble-plx' @@ -11,8 +13,6 @@ include ':react-native-linear-gradient' project(':react-native-linear-gradient').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-linear-gradient/android') include ':react-native-app-settings' project(':react-native-app-settings').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-app-settings/android') -include ':react-native-sentry' -project(':react-native-sentry').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-sentry/android') include ':react-native-firebase' project(':react-native-firebase').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-firebase/android') include ':react-native-version-number' diff --git a/ios/Otto.xcodeproj/project.pbxproj b/ios/Otto.xcodeproj/project.pbxproj index a5e72e3..eb6d2ff 100644 --- a/ios/Otto.xcodeproj/project.pbxproj +++ b/ios/Otto.xcodeproj/project.pbxproj @@ -5,8 +5,8 @@ }; objectVersion = 46; objects = { + /* Begin PBXBuildFile section */ - 00523F7841D441AE8D5178FB /* libRNSentry.a in Frameworks */ = {isa = PBXBuildFile; fileRef = E1E2FA9064FD4F5CBDEC1D68 /* libRNSentry.a */; }; 00C302E51ABCBA2D00DB3ED1 /* libRCTActionSheet.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302AC1ABCB8CE00DB3ED1 /* libRCTActionSheet.a */; }; 00C302E71ABCBA2D00DB3ED1 /* libRCTGeolocation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302BA1ABCB90400DB3ED1 /* libRCTGeolocation.a */; }; 00C302E81ABCBA2D00DB3ED1 /* libRCTImage.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302C01ABCB91800DB3ED1 /* libRCTImage.a */; }; @@ -64,23 +64,25 @@ 5E9157361DD0AC6A00FF2AA8 /* libRCTAnimation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5E9157331DD0AC6500FF2AA8 /* libRCTAnimation.a */; }; 686178080E9543A6AEE7B1BB /* EvilIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 88A12421F8684296BC83C698 /* EvilIcons.ttf */; }; 72076B6549534E7682E28AA0 /* MaterialCommunityIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = E9FE5B898B0D407B8B6F7AC1 /* MaterialCommunityIcons.ttf */; }; + 73FCFCACD4054001A4EA49D7 /* libRNSentry.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BABCE79C5C674FFA9AAC0E81 /* libRNSentry.a */; }; + 7B79D650F5E94719A11BB6F3 /* libRNCWebView.a in Frameworks */ = {isa = PBXBuildFile; fileRef = C0E85C1C93614FF486CF48F5 /* libRNCWebView.a */; }; 7CF02086C8534962B98627C8 /* SimpleLineIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 788EBE27BF4B4636AD85A925 /* SimpleLineIcons.ttf */; }; 7E8088348EF64BD591BCB07B /* Ionicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = F68BAD0B69AB4D6EA37B0369 /* Ionicons.ttf */; }; 832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 832341B51AAA6A8300B99B32 /* libRCTText.a */; }; - 8B50DC86979B4A27BCAE9A11 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 504204A088D04865AAB0456E /* libz.tbd */; }; A83EA7FAC219423CB4137527 /* libyoga.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1E0748876A1A4BABB1C157F9 /* libyoga.a */; }; ADBDB9381DFEBF1600ED6528 /* libRCTBlob.a in Frameworks */ = {isa = PBXBuildFile; fileRef = ADBDB9271DFEBF0700ED6528 /* libRCTBlob.a */; }; BE91C7965D2F425CA6F0292B /* libRNVersionNumber.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 59AAB9A4BCAC43C7ADD55200 /* libRNVersionNumber.a */; }; BE9B5CA5219C4FF09A60CB22 /* Entypo.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 8FBD1976DDDD4753A78F7ED2 /* Entypo.ttf */; }; C19BFB28A3F54A7699203D76 /* libRNFirebase.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 8DCE7B9F57D34FC18AA1F0BA /* libRNFirebase.a */; }; + CDFC7FFFF2B643A7A2DA2503 /* libRNSentry-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2F766213077F400FA299F11E /* libRNSentry-tvOS.a */; }; D398DAB119A8499EB9122F84 /* libRNVectorIcons.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 671610D992A242D2B577E4EA /* libRNVectorIcons.a */; }; D59344C07A6B43089A051A76 /* Zocial.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 31222A8C46B24E699C4B5AF9 /* Zocial.ttf */; }; E4174D6755BD427D9F055803 /* libRCTVideo.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B70893341FE94B688CC47C7A /* libRCTVideo.a */; }; ECD1608B830D47CA9BD36BED /* libRNDeviceInfo.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4A506294C7804F59B9BC8540 /* libRNDeviceInfo.a */; }; + EEADC531112844AC87EE6CCE /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = CB4DF67CF4E1475A9BF8F76B /* libz.tbd */; }; F411788F3A03408DA04375E2 /* libRCTBluetoothSerial.a in Frameworks */ = {isa = PBXBuildFile; fileRef = E7043272667B49B5941885D9 /* libRCTBluetoothSerial.a */; }; F97CCD46D3B9427A98096C92 /* Octicons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 408BDF84B2A14BBA9FF4AB9F /* Octicons.ttf */; }; FC74D31C87254E3692E7F91B /* Foundation.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 117723CE7BB54684B689930C /* Foundation.ttf */; }; - 7B79D650F5E94719A11BB6F3 /* libRNCWebView.a in Frameworks */ = {isa = PBXBuildFile; fileRef = C0E85C1C93614FF486CF48F5 /* libRNCWebView.a */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -273,13 +275,20 @@ remoteGlobalIDString = 64AA15081EF7F30100718508; remoteInfo = "BVLinearGradient-tvOS"; }; - 23CF45FD212D5D3D0085F0A9 /* PBXContainerItemProxy */ = { + 23C28B5023D278D500E71EA2 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = 7656FFF0A9494CBB993B55D5 /* RNSentry.xcodeproj */; + containerPortal = D7D4F057D8264BD08B0EC746 /* RNSentry.xcodeproj */; proxyType = 2; remoteGlobalIDString = 134814201AA4EA6300B7C361; remoteInfo = RNSentry; }; + 23C28B5223D278D500E71EA2 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D7D4F057D8264BD08B0EC746 /* RNSentry.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = 274692C321B4414400BF91A8; + remoteInfo = "RNSentry-tvOS"; + }; 23D1A343227C8F3C009CB6D3 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = B878BD9E77914666B5636D5D /* RCTBluetoothSerial.xcodeproj */; @@ -350,12 +359,12 @@ remoteGlobalIDString = ED296FEE214C9CF800B7C4FE; remoteInfo = "jsiexecutor-tvOS"; }; - 23DC35E1230E73B40000C391 /* PBXContainerItemProxy */ = { + 23EC3ACA23D1B609004CE18E /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = 7656FFF0A9494CBB993B55D5 /* RNSentry.xcodeproj */; + containerPortal = CEE19B8CCC0546338000A24C /* RNCWebView.xcodeproj */; proxyType = 2; - remoteGlobalIDString = 274692C321B4414400BF91A8; - remoteInfo = "RNSentry-tvOS"; + remoteGlobalIDString = 134814201AA4EA6300B7C361; + remoteInfo = RNCWebView; }; 2D02E4911E0B4A5D006451C7 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; @@ -550,6 +559,7 @@ 2D02E4901E0B4A5D006451C7 /* Otto-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Otto-tvOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; 2D06B00211EF48E18CF50AAB /* RNFirebase.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNFirebase.xcodeproj; path = "../node_modules/react-native-firebase/ios/RNFirebase.xcodeproj"; sourceTree = ""; }; 2D16E6891FA4F8E400B85C8A /* libReact.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = libReact.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 2F766213077F400FA299F11E /* libRNSentry-tvOS.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = "libRNSentry-tvOS.a"; sourceTree = ""; }; 30DE76568AD942F1A39FBBF1 /* SplashScreen.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = SplashScreen.xcodeproj; path = "../node_modules/react-native-splash-screen/ios/SplashScreen.xcodeproj"; sourceTree = ""; }; 31222A8C46B24E699C4B5AF9 /* Zocial.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Zocial.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Zocial.ttf"; sourceTree = ""; }; 317F8ABEB3884A30831C9395 /* RNOpenAppSettings.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNOpenAppSettings.xcodeproj; path = "../node_modules/react-native-app-settings/ios/RNOpenAppSettings.xcodeproj"; sourceTree = ""; }; @@ -558,13 +568,11 @@ 4A4FBB52EB724EEB8680F3C2 /* libReactNativeConfig.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libReactNativeConfig.a; sourceTree = ""; }; 4A506294C7804F59B9BC8540 /* libRNDeviceInfo.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNDeviceInfo.a; sourceTree = ""; }; 5002CE609FEA482A96F27695 /* MaterialIcons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = MaterialIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf"; sourceTree = ""; }; - 504204A088D04865AAB0456E /* libz.tbd */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; }; 58209E8CCCB14540947C9FAE /* RNI18n.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNI18n.xcodeproj; path = "../node_modules/react-native-i18n/RNI18n.xcodeproj"; sourceTree = ""; }; 59AAB9A4BCAC43C7ADD55200 /* libRNVersionNumber.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNVersionNumber.a; sourceTree = ""; }; 5E91572D1DD0AC6500FF2AA8 /* RCTAnimation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTAnimation.xcodeproj; path = "../node_modules/react-native/Libraries/NativeAnimation/RCTAnimation.xcodeproj"; sourceTree = ""; }; 652F9218FF3D4BD5A956C677 /* libRNOpenAppSettings.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNOpenAppSettings.a; sourceTree = ""; }; 671610D992A242D2B577E4EA /* libRNVectorIcons.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNVectorIcons.a; sourceTree = ""; }; - 7656FFF0A9494CBB993B55D5 /* RNSentry.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNSentry.xcodeproj; path = "../node_modules/react-native-sentry/ios/RNSentry.xcodeproj"; sourceTree = ""; }; 776F9825A23E43019EFFB6D6 /* BleClient.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = BleClient.xcodeproj; path = "../node_modules/react-native-ble-plx/ios/BleClient.xcodeproj"; sourceTree = ""; }; 782B25072DB94F90845D0FCB /* libBleClient.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libBleClient.a; sourceTree = ""; }; 788EBE27BF4B4636AD85A925 /* SimpleLineIcons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = SimpleLineIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf"; sourceTree = ""; }; @@ -579,16 +587,18 @@ B70893341FE94B688CC47C7A /* libRCTVideo.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRCTVideo.a; sourceTree = ""; }; B878BD9E77914666B5636D5D /* RCTBluetoothSerial.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RCTBluetoothSerial.xcodeproj; path = "../node_modules/react-native-bluetooth-serial/ios/RCTBluetoothSerial.xcodeproj"; sourceTree = ""; }; B8CA89F690CA490A85205D11 /* ReactNativeConfig.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = ReactNativeConfig.xcodeproj; path = "../node_modules/react-native-config/ios/ReactNativeConfig.xcodeproj"; sourceTree = ""; }; + BABCE79C5C674FFA9AAC0E81 /* libRNSentry.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNSentry.a; sourceTree = ""; }; BC2063D680AA4BF49C7463F3 /* FontAwesome.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = FontAwesome.ttf; path = "../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf"; sourceTree = ""; }; + C0E85C1C93614FF486CF48F5 /* libRNCWebView.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNCWebView.a; sourceTree = ""; }; + CB4DF67CF4E1475A9BF8F76B /* libz.tbd */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; }; + CEE19B8CCC0546338000A24C /* RNCWebView.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNCWebView.xcodeproj; path = "../node_modules/react-native-webview/ios/RNCWebView.xcodeproj"; sourceTree = ""; }; + D7D4F057D8264BD08B0EC746 /* RNSentry.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNSentry.xcodeproj; path = "../node_modules/@sentry/react-native/ios/RNSentry.xcodeproj"; sourceTree = ""; }; DA0A2DF28EED4C66AD2C004A /* RCTVideo.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RCTVideo.xcodeproj; path = "../node_modules/react-native-video/ios/RCTVideo.xcodeproj"; sourceTree = ""; }; - E1E2FA9064FD4F5CBDEC1D68 /* libRNSentry.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNSentry.a; sourceTree = ""; }; E7043272667B49B5941885D9 /* libRCTBluetoothSerial.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRCTBluetoothSerial.a; sourceTree = ""; }; E9E43B9775A64CF08F66E683 /* RNVersionNumber.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNVersionNumber.xcodeproj; path = "../node_modules/react-native-version-number/ios/RNVersionNumber.xcodeproj"; sourceTree = ""; }; E9FE5B898B0D407B8B6F7AC1 /* MaterialCommunityIcons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = MaterialCommunityIcons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf"; sourceTree = ""; }; F68BAD0B69AB4D6EA37B0369 /* Ionicons.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = Ionicons.ttf; path = "../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf"; sourceTree = ""; }; F825B18C613A440E93F87FF7 /* libjschelpers.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libjschelpers.a; sourceTree = ""; }; - CEE19B8CCC0546338000A24C /* RNCWebView.xcodeproj */ = {isa = PBXFileReference; name = "RNCWebView.xcodeproj"; path = "../node_modules/react-native-webview/ios/RNCWebView.xcodeproj"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = wrapper.pb-project; explicitFileType = undefined; includeInIndex = 0; }; - C0E85C1C93614FF486CF48F5 /* libRNCWebView.a */ = {isa = PBXFileReference; name = "libRNCWebView.a"; path = "libRNCWebView.a"; sourceTree = ""; fileEncoding = undefined; lastKnownFileType = archive.ar; explicitFileType = undefined; includeInIndex = 0; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -637,8 +647,6 @@ 0BD713CA69A54771AAFE2F39 /* libSplashScreen.a in Frameworks */, BE91C7965D2F425CA6F0292B /* libRNVersionNumber.a in Frameworks */, C19BFB28A3F54A7699203D76 /* libRNFirebase.a in Frameworks */, - 00523F7841D441AE8D5178FB /* libRNSentry.a in Frameworks */, - 8B50DC86979B4A27BCAE9A11 /* libz.tbd in Frameworks */, 1EE87A3AB81C4F3281A06347 /* libRNOpenAppSettings.a in Frameworks */, 0363B7F228794868A471DC4C /* libBVLinearGradient.a in Frameworks */, E4174D6755BD427D9F055803 /* libRCTVideo.a in Frameworks */, @@ -646,6 +654,8 @@ 175BDDCD16134D0D9AD54357 /* libBleClient.a in Frameworks */, 2397367523132F9F00724B1B /* Protobuf.framework in Frameworks */, 7B79D650F5E94719A11BB6F3 /* libRNCWebView.a in Frameworks */, + 73FCFCACD4054001A4EA49D7 /* libRNSentry.a in Frameworks */, + EEADC531112844AC87EE6CCE /* libz.tbd in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -661,6 +671,7 @@ 2D02E4C61E0B4AEC006451C7 /* libRCTSettings-tvOS.a in Frameworks */, 2D02E4C71E0B4AEC006451C7 /* libRCTText-tvOS.a in Frameworks */, 2D02E4C81E0B4AEC006451C7 /* libRCTWebSocket-tvOS.a in Frameworks */, + CDFC7FFFF2B643A7A2DA2503 /* libRNSentry-tvOS.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -838,12 +849,14 @@ 2AF38BF7740943F8AF722187 /* libSplashScreen.a */, 59AAB9A4BCAC43C7ADD55200 /* libRNVersionNumber.a */, 8DCE7B9F57D34FC18AA1F0BA /* libRNFirebase.a */, - E1E2FA9064FD4F5CBDEC1D68 /* libRNSentry.a */, 652F9218FF3D4BD5A956C677 /* libRNOpenAppSettings.a */, 1DDB46D021824DD6AF617CBC /* libBVLinearGradient.a */, B70893341FE94B688CC47C7A /* libRCTVideo.a */, E7043272667B49B5941885D9 /* libRCTBluetoothSerial.a */, 782B25072DB94F90845D0FCB /* libBleClient.a */, + C0E85C1C93614FF486CF48F5 /* libRNCWebView.a */, + BABCE79C5C674FFA9AAC0E81 /* libRNSentry.a */, + 2F766213077F400FA299F11E /* libRNSentry-tvOS.a */, ); name = "Recovered References"; sourceTree = ""; @@ -936,11 +949,11 @@ path = Analytics; sourceTree = ""; }; - 23CF45FA212D5D3D0085F0A9 /* Products */ = { + 23C28B4C23D278D500E71EA2 /* Products */ = { isa = PBXGroup; children = ( - 23CF45FE212D5D3D0085F0A9 /* libRNSentry.a */, - 23DC35E2230E73B40000C391 /* libRNSentry-tvOS.a */, + 23C28B5123D278D500E71EA2 /* libRNSentry.a */, + 23C28B5323D278D500E71EA2 /* libRNSentry-tvOS.a */, ); name = Products; sourceTree = ""; @@ -970,12 +983,20 @@ name = Products; sourceTree = ""; }; + 23EC3AC723D1B609004CE18E /* Products */ = { + isa = PBXGroup; + children = ( + 23EC3ACB23D1B609004CE18E /* libRNCWebView.a */, + ); + name = Products; + sourceTree = ""; + }; 2D16E6871FA4F8E400B85C8A /* Frameworks */ = { isa = PBXGroup; children = ( 23DC35E8230E741C0000C391 /* JavaScriptCore.framework */, 2D16E6891FA4F8E400B85C8A /* libReact.a */, - 504204A088D04865AAB0456E /* libz.tbd */, + CB4DF67CF4E1475A9BF8F76B /* libz.tbd */, ); name = Frameworks; sourceTree = ""; @@ -1042,13 +1063,13 @@ 30DE76568AD942F1A39FBBF1 /* SplashScreen.xcodeproj */, E9E43B9775A64CF08F66E683 /* RNVersionNumber.xcodeproj */, 2D06B00211EF48E18CF50AAB /* RNFirebase.xcodeproj */, - 7656FFF0A9494CBB993B55D5 /* RNSentry.xcodeproj */, 317F8ABEB3884A30831C9395 /* RNOpenAppSettings.xcodeproj */, AB68D73B6C7A415E812FCE04 /* BVLinearGradient.xcodeproj */, DA0A2DF28EED4C66AD2C004A /* RCTVideo.xcodeproj */, B878BD9E77914666B5636D5D /* RCTBluetoothSerial.xcodeproj */, 776F9825A23E43019EFFB6D6 /* BleClient.xcodeproj */, CEE19B8CCC0546338000A24C /* RNCWebView.xcodeproj */, + D7D4F057D8264BD08B0EC746 /* RNSentry.xcodeproj */, ); name = Libraries; sourceTree = ""; @@ -1186,11 +1207,11 @@ TargetAttributes = { 00E356ED1AD99517003FC87E = { CreatedOnToolsVersion = 6.2; - DevelopmentTeam = B423242B9Q; + DevelopmentTeam = G549W9SJ4D; TestTargetID = 13B07F861A680F5B00A75B9A; }; 13B07F861A680F5B00A75B9A = { - DevelopmentTeam = B423242B9Q; + DevelopmentTeam = G549W9SJ4D; LastSwiftMigration = 1010; SystemCapabilities = { com.apple.BackgroundModes = { @@ -1292,6 +1313,10 @@ ProductGroup = 237DB07B20F7AD1D00B6E4A6 /* Products */; ProjectRef = B8CA89F690CA490A85205D11 /* ReactNativeConfig.xcodeproj */; }, + { + ProductGroup = 23EC3AC723D1B609004CE18E /* Products */; + ProjectRef = CEE19B8CCC0546338000A24C /* RNCWebView.xcodeproj */; + }, { ProductGroup = 23D1A346227C8F68009CB6D3 /* Products */; ProjectRef = 23D1A345227C8F68009CB6D3 /* RNDeviceInfo.xcodeproj */; @@ -1309,8 +1334,8 @@ ProjectRef = 317F8ABEB3884A30831C9395 /* RNOpenAppSettings.xcodeproj */; }, { - ProductGroup = 23CF45FA212D5D3D0085F0A9 /* Products */; - ProjectRef = 7656FFF0A9494CBB993B55D5 /* RNSentry.xcodeproj */; + ProductGroup = 23C28B4C23D278D500E71EA2 /* Products */; + ProjectRef = D7D4F057D8264BD08B0EC746 /* RNSentry.xcodeproj */; }, { ProductGroup = 237DB02320F7ABBB00B6E4A6 /* Products */; @@ -1518,11 +1543,18 @@ remoteRef = 2396A76921DFA586007C79F2 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 23CF45FE212D5D3D0085F0A9 /* libRNSentry.a */ = { + 23C28B5123D278D500E71EA2 /* libRNSentry.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; path = libRNSentry.a; - remoteRef = 23CF45FD212D5D3D0085F0A9 /* PBXContainerItemProxy */; + remoteRef = 23C28B5023D278D500E71EA2 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 23C28B5323D278D500E71EA2 /* libRNSentry-tvOS.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = "libRNSentry-tvOS.a"; + remoteRef = 23C28B5223D278D500E71EA2 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; 23D1A344227C8F3C009CB6D3 /* libRCTBluetoothSerial.a */ = { @@ -1595,11 +1627,11 @@ remoteRef = 23DC35D6230E73B40000C391 /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; - 23DC35E2230E73B40000C391 /* libRNSentry-tvOS.a */ = { + 23EC3ACB23D1B609004CE18E /* libRNCWebView.a */ = { isa = PBXReferenceProxy; fileType = archive.ar; - path = "libRNSentry-tvOS.a"; - remoteRef = 23DC35E1230E73B40000C391 /* PBXContainerItemProxy */; + path = libRNCWebView.a; + remoteRef = 23EC3ACA23D1B609004CE18E /* PBXContainerItemProxy */; sourceTree = BUILT_PRODUCTS_DIR; }; 2D16E6721FA4F8DC00B85C8A /* libRCTBlob-tvOS.a */ = { @@ -1888,7 +1920,7 @@ buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; BUNDLE_LOADER = "$(TEST_HOST)"; - DEVELOPMENT_TEAM = B423242B9Q; + DEVELOPMENT_TEAM = G549W9SJ4D; GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", "$(inherited)", @@ -1902,13 +1934,13 @@ "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", "$(SRCROOT)/../node_modules/react-native-version-number/ios", "$(SRCROOT)/../node_modules/react-native-firebase/ios/RNFirebase/**", - "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", "$(SRCROOT)/../node_modules/react-native-app-settings/ios", "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", "$(SRCROOT)/../node_modules/react-native-video/ios/**", "$(SRCROOT)/../node_modules/react-native-bluetooth-serial/ios/RCTBluetoothSerial", "$(SRCROOT)/../node_modules/react-native-ble-plx/ios/**", "$(SRCROOT)/../node_modules/react-native-webview/ios", + "$(SRCROOT)/../node_modules/@sentry/react-native/ios/**", ); INFOPLIST_FILE = OttoTests/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 8.0; @@ -1916,6 +1948,7 @@ LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); OTHER_LDFLAGS = ( "-ObjC", @@ -1932,7 +1965,7 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; BUNDLE_LOADER = "$(TEST_HOST)"; COPY_PHASE_STRIP = NO; - DEVELOPMENT_TEAM = B423242B9Q; + DEVELOPMENT_TEAM = G549W9SJ4D; HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/../node_modules/react-native-device-info/RNDeviceInfo", @@ -1942,13 +1975,13 @@ "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", "$(SRCROOT)/../node_modules/react-native-version-number/ios", "$(SRCROOT)/../node_modules/react-native-firebase/ios/RNFirebase/**", - "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", "$(SRCROOT)/../node_modules/react-native-app-settings/ios", "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", "$(SRCROOT)/../node_modules/react-native-video/ios/**", "$(SRCROOT)/../node_modules/react-native-bluetooth-serial/ios/RCTBluetoothSerial", "$(SRCROOT)/../node_modules/react-native-ble-plx/ios/**", "$(SRCROOT)/../node_modules/react-native-webview/ios", + "$(SRCROOT)/../node_modules/@sentry/react-native/ios/**", ); INFOPLIST_FILE = OttoTests/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 8.0; @@ -1956,6 +1989,7 @@ LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); OTHER_LDFLAGS = ( "-ObjC", @@ -1971,13 +2005,13 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = "AppIcon${BUNDLE_ID_SUFFIX}"; ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; - BUNDLE_ID_PREFIX = "Otto-Dev"; + BUNDLE_ID_PREFIX = "OttoDIY-Dev"; BUNDLE_ID_SUFFIX = .dev; CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = "Otto/Otto Dev.entitlements"; CURRENT_PROJECT_VERSION = 1; DEAD_CODE_STRIPPING = NO; - DEVELOPMENT_TEAM = B423242B9Q; + DEVELOPMENT_TEAM = G549W9SJ4D; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Firebase", @@ -1995,7 +2029,6 @@ "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", "$(SRCROOT)/../node_modules/react-native-version-number/ios", "$(SRCROOT)/../node_modules/react-native-firebase/ios/RNFirebase/**", - "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", "$(SRCROOT)/../node_modules/react-native-app-settings/ios", "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", "$(SRCROOT)/../node_modules/react-native-video/ios/**", @@ -2003,6 +2036,7 @@ "$(SRCROOT)/../node_modules/react-native-ble-plx/ios/**", "$(SRCROOT)/Firebase", "$(SRCROOT)/../node_modules/react-native-webview/ios", + "$(SRCROOT)/../node_modules/@sentry/react-native/ios/**", ); INFOPLIST_FILE = Otto/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 9.0; @@ -2012,6 +2046,7 @@ "-ObjC", "-lc++", ); + PRODUCT_BUNDLE_IDENTIFIER = com.ottodiy.OttoDIY; PRODUCT_NAME = "Otto Dev"; SWIFT_OBJC_BRIDGING_HEADER = "Otto-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; @@ -2026,12 +2061,12 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = "AppIcon${BUNDLE_ID_SUFFIX}"; ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; - BUNDLE_ID_PREFIX = Otto; + BUNDLE_ID_PREFIX = OttoDIY; BUNDLE_ID_SUFFIX = ""; CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = "Otto/Otto Dev.entitlements"; CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_TEAM = B423242B9Q; + DEVELOPMENT_TEAM = G549W9SJ4D; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Firebase", @@ -2049,7 +2084,6 @@ "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", "$(SRCROOT)/../node_modules/react-native-version-number/ios", "$(SRCROOT)/../node_modules/react-native-firebase/ios/RNFirebase/**", - "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", "$(SRCROOT)/../node_modules/react-native-app-settings/ios", "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", "$(SRCROOT)/../node_modules/react-native-video/ios/**", @@ -2057,6 +2091,7 @@ "$(SRCROOT)/../node_modules/react-native-ble-plx/ios/**", "$(SRCROOT)/Firebase", "$(SRCROOT)/../node_modules/react-native-webview/ios", + "$(SRCROOT)/../node_modules/@sentry/react-native/ios/**", ); INFOPLIST_FILE = Otto/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 9.0; @@ -2066,6 +2101,7 @@ "-ObjC", "-lc++", ); + PRODUCT_BUNDLE_IDENTIFIER = com.ottodiy.OttoDIY; PRODUCT_NAME = Otto; SWIFT_OBJC_BRIDGING_HEADER = "Otto-Bridging-Header.h"; SWIFT_VERSION = 4.2; @@ -2114,14 +2150,14 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = "AppIcon${BUNDLE_ID_SUFFIX}"; ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; - BUNDLE_ID_PREFIX = "Otto-Beta"; + BUNDLE_ID_PREFIX = "OttoDIY-Beta"; BUNDLE_ID_SUFFIX = .beta; CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = "Otto/Otto Dev.entitlements"; CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)"; CONFIGURATION_TEMP_DIR = "$(PROJECT_TEMP_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)"; CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_TEAM = B423242B9Q; + DEVELOPMENT_TEAM = G549W9SJ4D; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Firebase", @@ -2140,7 +2176,6 @@ "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", "$(SRCROOT)/../node_modules/react-native-version-number/ios", "$(SRCROOT)/../node_modules/react-native-firebase/ios/RNFirebase/**", - "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", "$(SRCROOT)/../node_modules/react-native-app-settings/ios", "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", "$(SRCROOT)/../node_modules/react-native-video/ios/**", @@ -2148,6 +2183,7 @@ "$(SRCROOT)/../node_modules/react-native-ble-plx/ios/**", "$(SRCROOT)/Firebase", "$(SRCROOT)/../node_modules/react-native-webview/ios", + "$(SRCROOT)/../node_modules/@sentry/react-native/ios/**", ); INFOPLIST_FILE = Otto/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 9.0; @@ -2158,6 +2194,7 @@ "-ObjC", "-lc++", ); + PRODUCT_BUNDLE_IDENTIFIER = com.ottodiy.OttoDIY; PRODUCT_NAME = "Otto Beta"; SWIFT_OBJC_BRIDGING_HEADER = "Otto-Bridging-Header.h"; SWIFT_VERSION = 4.2; @@ -2174,7 +2211,7 @@ CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)"; CONFIGURATION_TEMP_DIR = "$(PROJECT_TEMP_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)"; COPY_PHASE_STRIP = NO; - DEVELOPMENT_TEAM = B423242B9Q; + DEVELOPMENT_TEAM = G549W9SJ4D; HEADER_SEARCH_PATHS = ( "$(inherited)", "$(SRCROOT)/../node_modules/react-native-device-info/RNDeviceInfo", @@ -2184,13 +2221,13 @@ "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", "$(SRCROOT)/../node_modules/react-native-version-number/ios", "$(SRCROOT)/../node_modules/react-native-firebase/ios/RNFirebase/**", - "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", "$(SRCROOT)/../node_modules/react-native-app-settings/ios", "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", "$(SRCROOT)/../node_modules/react-native-video/ios/**", "$(SRCROOT)/../node_modules/react-native-bluetooth-serial/ios/RCTBluetoothSerial", "$(SRCROOT)/../node_modules/react-native-ble-plx/ios/**", "$(SRCROOT)/../node_modules/react-native-webview/ios", + "$(SRCROOT)/../node_modules/@sentry/react-native/ios/**", ); INFOPLIST_FILE = OttoTests/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 8.0; @@ -2198,6 +2235,7 @@ LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); OTHER_LDFLAGS = ( "-ObjC", @@ -2229,19 +2267,20 @@ "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", "$(SRCROOT)/../node_modules/react-native-version-number/ios", "$(SRCROOT)/../node_modules/react-native-firebase/ios/RNFirebase/**", - "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", "$(SRCROOT)/../node_modules/react-native-app-settings/ios", "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", "$(SRCROOT)/../node_modules/react-native-video/ios/**", "$(SRCROOT)/../node_modules/react-native-bluetooth-serial/ios/RCTBluetoothSerial", "$(SRCROOT)/../node_modules/react-native-ble-plx/ios/**", "$(SRCROOT)/../node_modules/react-native-webview/ios", + "$(SRCROOT)/../node_modules/@sentry/react-native/ios/**", ); INFOPLIST_FILE = "Otto-tvOS/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); OTHER_LDFLAGS = ( "-ObjC", @@ -2271,6 +2310,7 @@ LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.Otto-tvOSTests"; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -2301,19 +2341,20 @@ "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", "$(SRCROOT)/../node_modules/react-native-version-number/ios", "$(SRCROOT)/../node_modules/react-native-firebase/ios/RNFirebase/**", - "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", "$(SRCROOT)/../node_modules/react-native-app-settings/ios", "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", "$(SRCROOT)/../node_modules/react-native-video/ios/**", "$(SRCROOT)/../node_modules/react-native-bluetooth-serial/ios/RCTBluetoothSerial", "$(SRCROOT)/../node_modules/react-native-ble-plx/ios/**", "$(SRCROOT)/../node_modules/react-native-webview/ios", + "$(SRCROOT)/../node_modules/@sentry/react-native/ios/**", ); INFOPLIST_FILE = "Otto-tvOS/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); OTHER_LDFLAGS = ( "-ObjC", @@ -2348,19 +2389,20 @@ "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", "$(SRCROOT)/../node_modules/react-native-version-number/ios", "$(SRCROOT)/../node_modules/react-native-firebase/ios/RNFirebase/**", - "$(SRCROOT)/../node_modules/react-native-sentry/ios/**", "$(SRCROOT)/../node_modules/react-native-app-settings/ios", "$(SRCROOT)/../node_modules/react-native-linear-gradient/BVLinearGradient", "$(SRCROOT)/../node_modules/react-native-video/ios/**", "$(SRCROOT)/../node_modules/react-native-bluetooth-serial/ios/RCTBluetoothSerial", "$(SRCROOT)/../node_modules/react-native-ble-plx/ios/**", "$(SRCROOT)/../node_modules/react-native-webview/ios", + "$(SRCROOT)/../node_modules/@sentry/react-native/ios/**", ); INFOPLIST_FILE = "Otto-tvOS/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); OTHER_LDFLAGS = ( "-ObjC", @@ -2390,6 +2432,7 @@ LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.Otto-tvOSTests"; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -2415,6 +2458,7 @@ LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/$(TARGET_NAME)\"", + "\"$(SRCROOT)/$(TARGET_NAME)\"", ); PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.Otto-tvOSTests"; PRODUCT_NAME = "$(TARGET_NAME)"; diff --git a/ios/Otto.xcodeproj/xcshareddata/xcschemes/Otto.xcscheme b/ios/Otto.xcodeproj/xcshareddata/xcschemes/Otto.xcscheme index 343ecc0..90311a2 100644 --- a/ios/Otto.xcodeproj/xcshareddata/xcschemes/Otto.xcscheme +++ b/ios/Otto.xcodeproj/xcshareddata/xcschemes/Otto.xcscheme @@ -54,7 +54,6 @@ buildConfiguration = "Debug" selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" - language = "" shouldUseLaunchSchemeArgsEnv = "YES"> + BuildableName = "Otto.app" + BlueprintName = "Otto" + ReferencedContainer = "container:Otto.xcodeproj"> + BuildableName = "OttoTests.xctest" + BlueprintName = "OttoTests" + ReferencedContainer = "container:Otto.xcodeproj"> @@ -65,24 +65,14 @@ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" shouldUseLaunchSchemeArgsEnv = "YES"> - - - - + BlueprintIdentifier = "83CBBA2D1A601D0E00E9B192" + BuildableName = "libReact.a" + BlueprintName = "React" + ReferencedContainer = "container:../node_modules/react-native/React/React.xcodeproj"> @@ -98,16 +88,15 @@ debugDocumentVersioning = "YES" debugServiceExtension = "internal" allowLocationSimulation = "YES"> - + + BlueprintIdentifier = "83CBBA2D1A601D0E00E9B192" + BuildableName = "libReact.a" + BlueprintName = "React" + ReferencedContainer = "container:../node_modules/react-native/React/React.xcodeproj"> - + @@ -117,16 +106,15 @@ savedToolIdentifier = "" useCustomWorkingDirectory = "NO" debugDocumentVersioning = "YES"> - + + BlueprintIdentifier = "83CBBA2D1A601D0E00E9B192" + BuildableName = "libReact.a" + BlueprintName = "React" + ReferencedContainer = "container:../node_modules/react-native/React/React.xcodeproj"> - + diff --git a/ios/Otto.xcodeproj/xcshareddata/xcschemes/CodeAndRobotsProduction.xcscheme b/ios/Otto.xcodeproj/xcshareddata/xcschemes/OttoProduction.xcscheme similarity index 71% rename from ios/Otto.xcodeproj/xcshareddata/xcschemes/CodeAndRobotsProduction.xcscheme rename to ios/Otto.xcodeproj/xcshareddata/xcschemes/OttoProduction.xcscheme index 7a9a7b8..4d89375 100644 --- a/ios/Otto.xcodeproj/xcshareddata/xcschemes/CodeAndRobotsProduction.xcscheme +++ b/ios/Otto.xcodeproj/xcshareddata/xcschemes/OttoProduction.xcscheme @@ -38,9 +38,9 @@ + BuildableName = "Otto.app" + BlueprintName = "Otto" + ReferencedContainer = "container:Otto.xcodeproj"> + BuildableName = "OttoTests.xctest" + BlueprintName = "OttoTests" + ReferencedContainer = "container:Otto.xcodeproj"> @@ -65,16 +65,6 @@ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" shouldUseLaunchSchemeArgsEnv = "YES"> - - - - - + + BlueprintIdentifier = "83CBBA2D1A601D0E00E9B192" + BuildableName = "libReact.a" + BlueprintName = "React" + ReferencedContainer = "container:../node_modules/react-native/React/React.xcodeproj"> - + @@ -117,16 +106,6 @@ savedToolIdentifier = "" useCustomWorkingDirectory = "NO" debugDocumentVersioning = "YES"> - - - - diff --git a/ios/Otto/AppDelegate.m b/ios/Otto/AppDelegate.m index ed4db2f..e345397 100644 --- a/ios/Otto/AppDelegate.m +++ b/ios/Otto/AppDelegate.m @@ -15,44 +15,40 @@ #import #import #import -#if __has_include() -#import // This is used for versions of react >= 0.40 -#else -#import "RNSentry.h" // This is used for versions of react < 0.40 -#endif #import "SplashScreen.h" -#import "Firebase.h" -#import "RNFirebaseNotifications.h" -#import "RNFirebaseMessaging.h" +// TODO Configure Firebase +//#import "Firebase.h" +//#import "RNFirebaseNotifications.h" +//#import "RNFirebaseMessaging.h" @implementation AppDelegate - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { - // Configure Firebase - #if BETA - NSLog(@"[FIREBASE] Beta mode."); - NSString *filePath; - filePath = [[NSBundle mainBundle] pathForResource:@"GoogleService-Info-Beta" ofType:@"plist"]; - FIROptions *options = [[FIROptions alloc] initWithContentsOfFile:filePath]; - [FIRApp configureWithOptions:options]; - #elif DEBUG - NSLog(@"[FIREBASE] Debug mode."); - NSString *filePath; - filePath = [[NSBundle mainBundle] pathForResource:@"GoogleService-Info-Dev" ofType:@"plist"]; - FIROptions *options = [[FIROptions alloc] initWithContentsOfFile:filePath]; - [FIRApp configureWithOptions:options]; - #else - NSLog(@"[FIREBASE] Default mode."); - [FIRApp configure]; - #endif - - #if !(TARGET_IPHONE_SIMULATOR) - // The following crashes the app in the simulator for some reason - [RNFirebaseNotifications configure]; - #endif + // TODO Configure Firebase, e.g. fix GoogleService-Info files for all environments +// #if BETA +// NSLog(@"[FIREBASE] Beta mode."); +// NSString *filePath; +// filePath = [[NSBundle mainBundle] pathForResource:@"GoogleService-Info-Beta" ofType:@"plist"]; +// FIROptions *options = [[FIROptions alloc] initWithContentsOfFile:filePath]; +// [FIRApp configureWithOptions:options]; +// #elif DEBUG +// NSLog(@"[FIREBASE] Debug mode."); +// NSString *filePath; +// filePath = [[NSBundle mainBundle] pathForResource:@"GoogleService-Info-Dev" ofType:@"plist"]; +// FIROptions *options = [[FIROptions alloc] initWithContentsOfFile:filePath]; +// [FIRApp configureWithOptions:options]; +// #else +// NSLog(@"[FIREBASE] Default mode."); +// [FIRApp configure]; +// #endif +// +// #if !(TARGET_IPHONE_SIMULATOR) +// // The following crashes the app in the simulator for some reason +// [RNFirebaseNotifications configure]; +// #endif // Set the Audio Session Category to Playback // https://developer.apple.com/library/content/qa/qa1668/_index.html @@ -71,9 +67,6 @@ - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:( RCTBridge *bridge = [[RCTBridge alloc] initWithDelegate:self launchOptions:launchOptions]; RCTRootView *rootView = [[RCTRootView alloc] initWithBridge:bridge moduleName:@"Otto" initialProperties:nil]; - - [RNSentry installWithRootView:rootView]; - rootView.backgroundColor = [[UIColor alloc] initWithRed:1.0f green:1.0f blue:1.0f alpha:1]; self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; @@ -95,17 +88,18 @@ - (NSURL *)sourceURLForBridge:(RCTBridge *)bridge #endif } -- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification { - [[RNFirebaseNotifications instance] didReceiveLocalNotification:notification]; -} - -- (void)application:(UIApplication *)application didReceiveRemoteNotification:(nonnull NSDictionary *)userInfo -fetchCompletionHandler:(nonnull void (^)(UIBackgroundFetchResult))completionHandler{ - [[RNFirebaseNotifications instance] didReceiveRemoteNotification:userInfo fetchCompletionHandler:completionHandler]; -} - -- (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings { - [[RNFirebaseMessaging instance] didRegisterUserNotificationSettings:notificationSettings]; -} +// TODO Configure Firebase +//- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification { +// [[RNFirebaseNotifications instance] didReceiveLocalNotification:notification]; +//} +// +//- (void)application:(UIApplication *)application didReceiveRemoteNotification:(nonnull NSDictionary *)userInfo +//fetchCompletionHandler:(nonnull void (^)(UIBackgroundFetchResult))completionHandler{ +// [[RNFirebaseNotifications instance] didReceiveRemoteNotification:userInfo fetchCompletionHandler:completionHandler]; +//} +// +//- (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings { +// [[RNFirebaseMessaging instance] didRegisterUserNotificationSettings:notificationSettings]; +//} @end diff --git a/ios/Otto/Info.plist b/ios/Otto/Info.plist index f3b173f..52bf547 100644 --- a/ios/Otto/Info.plist +++ b/ios/Otto/Info.plist @@ -17,7 +17,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 1.0.2 + 1.0.6 CFBundleSignature ???? CFBundleURLTypes @@ -34,15 +34,19 @@ CFBundleVersion - 4 + 9 ITSAppUsesNonExemptEncryption + LSApplicationQueriesSchemes + + itms + LSRequiresIPhoneOS NSAppTransportSecurity NSAllowsArbitraryLoads - + NSExceptionDomains localhost @@ -52,25 +56,27 @@ ottodiy.com - NSIncludesSubdomains - NSExceptionAllowsInsecureHTTPLoads + NSIncludesSubdomains + + NSBluetoothPeripheralUsageDescription + This app uses bluetooth to connect to devices. + NSBluetoothAlwaysUsageDescription + This app uses bluetooth to connect to devices. NSContactsUsageDescription Making it quick and easy to share with your friends NSHumanReadableCopyright - Copyright © 2019 Code and Robots. All rights reserved. + Copyright © Otto DIY. All rights reserved. NSLocationAlwaysUsageDescription This app might use your location if required NSLocationWhenInUseUsageDescription This app might use your location if required NSMicrophoneUsageDescription This app uses the microphone to record audio. - NSBluetoothPeripheralUsageDescription - This app uses bluetooth to connect to devices. UIAppFonts Helvetica.ttc @@ -105,9 +111,5 @@ UIViewControllerBasedStatusBarAppearance - LSApplicationQueriesSchemes - - itms - diff --git a/ios/fastlane/Appfile b/ios/fastlane/Appfile index 7b0d6a3..fffc9c5 100644 --- a/ios/fastlane/Appfile +++ b/ios/fastlane/Appfile @@ -1,8 +1,8 @@ -app_identifier ENV["APP_IDENTIFIER"] || "com.codeandrobots.CodeAndRobots-Beta.beta" # The bundle identifier of your app +app_identifier ENV["APP_IDENTIFIER"] || "com.ottodiy.OttoDIY" # The bundle identifier of your app apple_id("chico.charlesworth@googlemail.com") # Your Apple email address -itc_team_id("1053963") # App Store Connect Team ID - see https://stackoverflow.com/a/46415415 -team_id("B423242B9Q") # Developer Portal Team ID - go to https://developer.apple.com/account/#/membership +itc_team_id("120954391") # App Store Connect Team ID - see https://stackoverflow.com/a/46415415 +team_id("G549W9SJ4D") # Developer Portal Team ID - go to https://developer.apple.com/account/#/membership # For more information about the Appfile, see: # https://docs.fastlane.tools/advanced/#appfile diff --git a/ios/fastlane/Fastfile b/ios/fastlane/Fastfile index 5e619da..d1051da 100644 --- a/ios/fastlane/Fastfile +++ b/ios/fastlane/Fastfile @@ -18,19 +18,19 @@ default_platform(:ios) platform :ios do desc "Push a new beta build to TestFlight" lane :beta do - ENV["APP_IDENTIFIER"] = "com.codeandrobots.CodeAndRobots-Beta.beta" + ENV["APP_IDENTIFIER"] = "com.ottodiy.OttoDIY-Beta.beta" match(type: "appstore") # more information: https://codesigning.guide # increment_build_number build_number: ENV["CIRCLE_BUILD_NUM"] # unique circleci build number, testflight builds must be unique and also useful to link testflight build with circleci build - gym(scheme: "CodeAndRobotsBeta") # Build your app - more options available + gym(scheme: "OttoBeta") # Build your app - more options available pilot(skip_submission: true, skip_waiting_for_build_processing: true) # Upload to TestFlight and notify testers, skip submission prevents sending the build for external testing review end desc "Push a new release build" lane :release do - ENV["APP_IDENTIFIER"] = "com.codeandrobots.CodeAndRobots" + ENV["APP_IDENTIFIER"] = "com.ottodiy.OttoDIY" match(type: "appstore") # more information: https://codesigning.guide # increment_build_number build_number: ENV["CIRCLE_BUILD_NUM"] # unique circleci build number, testflight builds must be unique and also useful to link testflight build with circleci build - gym(scheme: "CodeAndRobotsProduction") # Build your app - more options available + gym(scheme: "OttoProduction") # Build your app - more options available pilot(skip_submission: true, skip_waiting_for_build_processing: true) # Upload to TestFlight and notify testers, skip submission prevents sending the build for external testing review end end diff --git a/ios/fastlane/Matchfile b/ios/fastlane/Matchfile index 4d9634f..b1dbda7 100644 --- a/ios/fastlane/Matchfile +++ b/ios/fastlane/Matchfile @@ -1,4 +1,4 @@ -git_url("git@gitlab.com:codeandrobots/app-certs.git") +git_url("git@gitlab.com:ottodiy/ottodiy-app-certs.git") type("development") # The default type, can be: appstore, adhoc, enterprise or development diff --git a/package.json b/package.json index 24dd26f..64ac6d1 100644 --- a/package.json +++ b/package.json @@ -33,6 +33,7 @@ "settings": {} }, "dependencies": { + "@sentry/react-native": "^1.2.1", "analytics-react-native": "^1.2.0", "apisauce": "^0.14.2", "core-js": "2.6.5", @@ -58,7 +59,6 @@ "react-native-firebase": "5.2.5", "react-native-i18n": "1.0.0", "react-native-linear-gradient": "^2.5.3", - "react-native-sentry": "^0.43.2", "react-native-sortable-list": "^0.0.22", "react-native-splash-screen": "3.0.9", "react-native-swipe-gestures": "^1.0.3", diff --git a/yarn.lock b/yarn.lock index 94361ca..2d3b241 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1215,26 +1215,101 @@ shell-quote "1.6.1" ws "^1.1.0" -"@sentry/cli@^1.43.0": - version "1.47.1" - resolved "https://registry.yarnpkg.com/@sentry/cli/-/cli-1.47.1.tgz#6a3238e5bfa4f618867bc0bc145b8e2ba191ff46" +"@sentry/browser@^5.10.0": + version "5.11.1" + resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-5.11.1.tgz#337ffcb52711b23064c847a07629e966f54a5ebb" + integrity sha512-oqOX/otmuP92DEGRyZeBuQokXdeT9HQRxH73oqIURXXNLMP3PWJALSb4HtT4AftEt/2ROGobZLuA4TaID6My/Q== + dependencies: + "@sentry/core" "5.11.1" + "@sentry/types" "5.11.0" + "@sentry/utils" "5.11.1" + tslib "^1.9.3" + +"@sentry/cli@^1.48.0": + version "1.49.0" + resolved "https://registry.yarnpkg.com/@sentry/cli/-/cli-1.49.0.tgz#174152978acbe6023986a8fb0b247cf58b4653d8" + integrity sha512-Augz7c42Cxz/xWQ/NOVjUGePKVA370quvskWbCICMUwxcTvKnCLI+7KDdzEoCexj4MSuxFfBzLnrrn4w2+c9TQ== dependencies: fs-copy-file-sync "^1.1.1" - https-proxy-agent "^2.2.1" + https-proxy-agent "^3.0.0" mkdirp "^0.5.1" node-fetch "^2.1.2" progress "2.0.0" proxy-from-env "^1.0.0" -"@sentry/wizard@^0.13.0": - version "0.13.0" - resolved "https://registry.yarnpkg.com/@sentry/wizard/-/wizard-0.13.0.tgz#9eb2c2a9051f849815856293bca086725ecfc298" +"@sentry/core@5.11.1", "@sentry/core@^5.10.0": + version "5.11.1" + resolved "https://registry.yarnpkg.com/@sentry/core/-/core-5.11.1.tgz#9e2da485e196ae32971545c1c49ee6fe719930e2" + integrity sha512-BpvPosVNT20Xso4gAV54Lu3KqDmD20vO63HYwbNdST5LUi8oYV4JhvOkoBraPEM2cbBwQvwVcFdeEYKk4tin9A== + dependencies: + "@sentry/hub" "5.11.1" + "@sentry/minimal" "5.11.1" + "@sentry/types" "5.11.0" + "@sentry/utils" "5.11.1" + tslib "^1.9.3" + +"@sentry/hub@5.11.1": + version "5.11.1" + resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-5.11.1.tgz#ddcb865563fae53852d405885c46b4c6de68a91b" + integrity sha512-ucKprYCbGGLLjVz4hWUqHN9KH0WKUkGf5ZYfD8LUhksuobRkYVyig0ZGbshECZxW5jcDTzip4Q9Qimq/PkkXBg== + dependencies: + "@sentry/types" "5.11.0" + "@sentry/utils" "5.11.1" + tslib "^1.9.3" + +"@sentry/integrations@^5.10.0": + version "5.11.1" + resolved "https://registry.yarnpkg.com/@sentry/integrations/-/integrations-5.11.1.tgz#6612efc620c187ba85a57c6e70e69d9474af7fb6" + integrity sha512-zubOE9zQ4qSutS0ZTnAteDnzbVcHSI2bXD/0nTD3t3ljY+OWgcluBXYCAeAp8vOv2qCoef5ySdQa1DBCW7NQ3Q== + dependencies: + "@sentry/types" "5.11.0" + "@sentry/utils" "5.11.1" + tslib "^1.9.3" + +"@sentry/minimal@5.11.1": + version "5.11.1" + resolved "https://registry.yarnpkg.com/@sentry/minimal/-/minimal-5.11.1.tgz#0e705d01a567282d8fbbda2aed848b4974cc3cec" + integrity sha512-HK8zs7Pgdq7DsbZQTThrhQPrJsVWzz7MaluAbQA0rTIAJ3TvHKQpsVRu17xDpjZXypqWcKCRsthDrC4LxDM1Bg== + dependencies: + "@sentry/hub" "5.11.1" + "@sentry/types" "5.11.0" + tslib "^1.9.3" + +"@sentry/react-native@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@sentry/react-native/-/react-native-1.2.1.tgz#a015ed280ffa8afde3f775b91d173ad7c884e169" + integrity sha512-JE2B/pMvd7+3TFdzs03+DOdrALAHd8bAphJ8tk+nWjX7oQVJNgVn/IvnJfKxasHHBXQ2z+42Xy9n2Fqam/Gq0w== + dependencies: + "@sentry/browser" "^5.10.0" + "@sentry/core" "^5.10.0" + "@sentry/integrations" "^5.10.0" + "@sentry/types" "^5.10.0" + "@sentry/utils" "^5.10.0" + "@sentry/wizard" "^1.0.2" + +"@sentry/types@5.11.0", "@sentry/types@^5.10.0": + version "5.11.0" + resolved "https://registry.yarnpkg.com/@sentry/types/-/types-5.11.0.tgz#40f0f3174362928e033ddd9725d55e7c5cb7c5b6" + integrity sha512-1Uhycpmeo1ZK2GLvrtwZhTwIodJHcyIS6bn+t4IMkN9MFoo6ktbAfhvexBDW/IDtdLlCGJbfm8nIZerxy0QUpg== + +"@sentry/utils@5.11.1", "@sentry/utils@^5.10.0": + version "5.11.1" + resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-5.11.1.tgz#aa19fcc234cf632257b2281261651d2fac967607" + integrity sha512-O0Zl4R2JJh8cTkQ8ZL2cDqGCmQdpA5VeXpuBbEl1v78LQPkBDISi35wH4mKmLwMsLBtTVpx2UeUHBj0KO5aLlA== + dependencies: + "@sentry/types" "5.11.0" + tslib "^1.9.3" + +"@sentry/wizard@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@sentry/wizard/-/wizard-1.0.2.tgz#346d1ecbeef7b765120ec8627053443456660f0d" + integrity sha512-/mS9SWcgc8uqrOhiwyGqusGnWXf4hvIiYpUGJGw4vxL8gZ3k+UMSKaEw46p+ND1X8y2RRgFJh7h7q2dtXa8QvQ== dependencies: - "@sentry/cli" "^1.43.0" + "@sentry/cli" "^1.48.0" chalk "^2.4.1" glob "^7.1.3" inquirer "^6.2.0" - lodash "^4.17.11" + lodash "^4.17.15" opn "^5.4.0" r2 "^2.0.1" read-env "^1.3.0" @@ -5553,9 +5628,10 @@ https-browserify@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" -https-proxy-agent@^2.2.1: - version "2.2.2" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-2.2.2.tgz#271ea8e90f836ac9f119daccd39c19ff7dfb0793" +https-proxy-agent@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-3.0.1.tgz#b8c286433e87602311b01c8ea34413d856a4af81" + integrity sha512-+ML2Rbh6DAuee7d07tYGEKOEi2voWPUGan+ExdPbPW6Z3svq+JCqr0v8WmKPOkz1vOVykPCBSuobe7G8GJUtVg== dependencies: agent-base "^4.3.0" debug "^3.1.0" @@ -9035,10 +9111,6 @@ range-parser@^1.2.1, range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" -raven-js@^3.27.1: - version "3.27.2" - resolved "https://registry.yarnpkg.com/raven-js/-/raven-js-3.27.2.tgz#6c33df952026cd73820aa999122b7b7737a66775" - raw-body@2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.0.tgz#a1ce6fb9c9bc356ca52e89256ab59059e13d0332" @@ -9314,13 +9386,6 @@ react-native-schemes-manager@^1.0.4: xcode "^0.9.1" yargs "^6.6.0" -react-native-sentry@^0.43.2: - version "0.43.2" - resolved "https://registry.yarnpkg.com/react-native-sentry/-/react-native-sentry-0.43.2.tgz#1505d16d334656f25f4d515e004d0c5a4ac5a01b" - dependencies: - "@sentry/wizard" "^0.13.0" - raven-js "^3.27.1" - react-native-sortable-list@^0.0.22: version "0.0.22" resolved "https://registry.yarnpkg.com/react-native-sortable-list/-/react-native-sortable-list-0.0.22.tgz#f23d2626ef0e625836205d46e48b97eb04169ec0" @@ -11122,7 +11187,7 @@ ts-pnp@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.1.2.tgz#be8e4bfce5d00f0f58e0666a82260c34a57af552" -tslib@^1.9.0: +tslib@^1.9.0, tslib@^1.9.3: version "1.10.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a"