summaryrefslogtreecommitdiff
path: root/StoneIsland/platforms/ios/Pods/FirebaseCoreDiagnostics/Firebase
diff options
context:
space:
mode:
authorJules Laplace <julescarbon@gmail.com>2020-08-31 23:07:20 +0200
committerJules Laplace <julescarbon@gmail.com>2020-08-31 23:07:20 +0200
commit22721a013bdd10d5eb395ba18453585f5f3f1f7f (patch)
tree5a920e31d6026ed5dc55265e5fd057febccc50e3 /StoneIsland/platforms/ios/Pods/FirebaseCoreDiagnostics/Firebase
parentd22d51a1ae49680015326857360eb699f31efced (diff)
rebuild the ios platform and the plugins
Diffstat (limited to 'StoneIsland/platforms/ios/Pods/FirebaseCoreDiagnostics/Firebase')
-rw-r--r--StoneIsland/platforms/ios/Pods/FirebaseCoreDiagnostics/Firebase/CoreDiagnostics/FIRCDLibrary/FIRCoreDiagnostics.m644
-rw-r--r--StoneIsland/platforms/ios/Pods/FirebaseCoreDiagnostics/Firebase/CoreDiagnostics/FIRCDLibrary/Protogen/nanopb/firebasecore.nanopb.c60
-rw-r--r--StoneIsland/platforms/ios/Pods/FirebaseCoreDiagnostics/Firebase/CoreDiagnostics/FIRCDLibrary/Protogen/nanopb/firebasecore.nanopb.h193
3 files changed, 897 insertions, 0 deletions
diff --git a/StoneIsland/platforms/ios/Pods/FirebaseCoreDiagnostics/Firebase/CoreDiagnostics/FIRCDLibrary/FIRCoreDiagnostics.m b/StoneIsland/platforms/ios/Pods/FirebaseCoreDiagnostics/Firebase/CoreDiagnostics/FIRCDLibrary/FIRCoreDiagnostics.m
new file mode 100644
index 00000000..85f6b548
--- /dev/null
+++ b/StoneIsland/platforms/ios/Pods/FirebaseCoreDiagnostics/Firebase/CoreDiagnostics/FIRCDLibrary/FIRCoreDiagnostics.m
@@ -0,0 +1,644 @@
+/*
+ * Copyright 2019 Google
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#import <objc/runtime.h>
+#include <sys/utsname.h>
+
+#import "GoogleDataTransport/GDTCORLibrary/Internal/GoogleDataTransportInternal.h"
+
+#import "GoogleUtilities/Environment/Private/GULAppEnvironmentUtil.h"
+#import "GoogleUtilities/Environment/Private/GULHeartbeatDateStorage.h"
+#import "GoogleUtilities/Logger/Private/GULLogger.h"
+
+#import "Interop/CoreDiagnostics/Public/FIRCoreDiagnosticsData.h"
+#import "Interop/CoreDiagnostics/Public/FIRCoreDiagnosticsInterop.h"
+
+#import <nanopb/pb.h>
+#import <nanopb/pb_decode.h>
+#import <nanopb/pb_encode.h>
+
+#import "FIRCDLibrary/Protogen/nanopb/firebasecore.nanopb.h"
+
+/** The logger service string to use when printing to the console. */
+static GULLoggerService kFIRCoreDiagnostics = @"[FirebaseCoreDiagnostics/FIRCoreDiagnostics]";
+
+#ifdef FIREBASE_BUILD_ZIP_FILE
+static BOOL kUsingZipFile = YES;
+#else // FIREBASE_BUILD_ZIP_FILE
+static BOOL kUsingZipFile = NO;
+#endif // FIREBASE_BUILD_ZIP_FILE
+
+#ifdef FIREBASE_BUILD_CARTHAGE
+#define kDeploymentType logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType_CARTHAGE
+#elif FIREBASE_BUILD_ZIP_FILE
+#define kDeploymentType logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType_ZIP_FILE
+#else
+#define kDeploymentType logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType_COCOAPODS
+#endif
+
+static NSString *const kFIRServiceMLVisionOnDeviceAutoML = @"MLVisionOnDeviceAutoML";
+static NSString *const kFIRServiceMLVisionOnDeviceFace = @"MLVisionOnDeviceFace";
+static NSString *const kFIRServiceMLVisionOnDeviceBarcode = @"MLVisionOnDeviceBarcode";
+static NSString *const kFIRServiceMLVisionOnDeviceText = @"MLVisionOnDeviceText";
+static NSString *const kFIRServiceMLVisionOnDeviceLabel = @"MLVisionOnDeviceLabel";
+static NSString *const kFIRServiceMLVisionOnDeviceObjectDetection =
+ @"MLVisionOnDeviceObjectDetection";
+static NSString *const kFIRServiceMLModelInterpreter = @"MLModelInterpreter";
+
+static NSString *const kFIRServiceAdMob = @"AdMob";
+static NSString *const kFIRServiceAuth = @"Auth";
+static NSString *const kFIRServiceAuthUI = @"AuthUI";
+static NSString *const kFIRServiceCrash = @"Crash";
+static NSString *const kFIRServiceDatabase = @"Database";
+static NSString *const kFIRServiceDynamicLinks = @"DynamicLinks";
+static NSString *const kFIRServiceFirestore = @"Firestore";
+static NSString *const kFIRServiceFunctions = @"Functions";
+static NSString *const kFIRServiceIAM = @"InAppMessaging";
+static NSString *const kFIRServiceInstanceID = @"InstanceID";
+static NSString *const kFIRServiceInvites = @"Invites";
+static NSString *const kFIRServiceMessaging = @"Messaging";
+static NSString *const kFIRServiceMeasurement = @"Measurement";
+static NSString *const kFIRServicePerformance = @"Performance";
+static NSString *const kFIRServiceRemoteConfig = @"RemoteConfig";
+static NSString *const kFIRServiceStorage = @"Storage";
+static NSString *const kGGLServiceAnalytics = @"Analytics";
+static NSString *const kGGLServiceSignIn = @"SignIn";
+static NSString *const kFIRAppDiagnosticsConfigurationTypeKey =
+ @"FIRAppDiagnosticsConfigurationTypeKey";
+static NSString *const kFIRAppDiagnosticsFIRAppKey = @"FIRAppDiagnosticsFIRAppKey";
+static NSString *const kFIRAppDiagnosticsSDKNameKey = @"FIRAppDiagnosticsSDKNameKey";
+static NSString *const kFIRAppDiagnosticsSDKVersionKey = @"FIRAppDiagnosticsSDKVersionKey";
+static NSString *const kFIRCoreDiagnosticsHeartbeatTag = @"FIRCoreDiagnostics";
+
+/**
+ * The file name to the recent heartbeat date.
+ */
+NSString *const kFIRCoreDiagnosticsHeartbeatDateFileName = @"FIREBASE_DIAGNOSTICS_HEARTBEAT_DATE";
+
+/**
+ * @note This should implement the GDTCOREventDataObject protocol, but can't because of
+ * weak-linking.
+ */
+@interface FIRCoreDiagnosticsLog : NSObject
+
+/** The config that will be converted to proto bytes. */
+@property(nonatomic) logs_proto_mobilesdk_ios_ICoreConfiguration config;
+
+@end
+
+@implementation FIRCoreDiagnosticsLog
+
+- (instancetype)initWithConfig:(logs_proto_mobilesdk_ios_ICoreConfiguration)config {
+ self = [super init];
+ if (self) {
+ _config = config;
+ }
+ return self;
+}
+
+// Provided and required by the GDTCOREventDataObject protocol.
+- (NSData *)transportBytes {
+ pb_ostream_t sizestream = PB_OSTREAM_SIZING;
+
+ // Encode 1 time to determine the size.
+ if (!pb_encode(&sizestream, logs_proto_mobilesdk_ios_ICoreConfiguration_fields, &_config)) {
+ GDTCORLogError(GDTCORMCETransportBytesError, @"Error in nanopb encoding for size: %s",
+ PB_GET_ERROR(&sizestream));
+ }
+
+ // Encode a 2nd time to actually get the bytes from it.
+ size_t bufferSize = sizestream.bytes_written;
+ CFMutableDataRef dataRef = CFDataCreateMutable(CFAllocatorGetDefault(), bufferSize);
+ CFDataSetLength(dataRef, bufferSize);
+ pb_ostream_t ostream = pb_ostream_from_buffer((void *)CFDataGetBytePtr(dataRef), bufferSize);
+ if (!pb_encode(&ostream, logs_proto_mobilesdk_ios_ICoreConfiguration_fields, &_config)) {
+ GDTCORLogError(GDTCORMCETransportBytesError, @"Error in nanopb encoding for bytes: %s",
+ PB_GET_ERROR(&ostream));
+ }
+ CFDataSetLength(dataRef, ostream.bytes_written);
+
+ return CFBridgingRelease(dataRef);
+}
+
+- (void)dealloc {
+ pb_release(logs_proto_mobilesdk_ios_ICoreConfiguration_fields, &_config);
+}
+
+@end
+
+NS_ASSUME_NONNULL_BEGIN
+
+/** This class produces a protobuf containing diagnostics and usage data to be logged. */
+@interface FIRCoreDiagnostics : NSObject <FIRCoreDiagnosticsInterop>
+
+/** The queue on which all diagnostics collection will occur. */
+@property(nonatomic, readonly) dispatch_queue_t diagnosticsQueue;
+
+/** The transport object used to send data. */
+@property(nonatomic, readonly) GDTCORTransport *transport;
+
+/** The storage to store the date of the last sent heartbeat. */
+@property(nonatomic, readonly) GULHeartbeatDateStorage *heartbeatDateStorage;
+
+@end
+
+NS_ASSUME_NONNULL_END
+
+@implementation FIRCoreDiagnostics
+
++ (instancetype)sharedInstance {
+ static FIRCoreDiagnostics *sharedInstance;
+ static dispatch_once_t onceToken;
+ dispatch_once(&onceToken, ^{
+ sharedInstance = [[FIRCoreDiagnostics alloc] init];
+ });
+ return sharedInstance;
+}
+
+- (instancetype)init {
+ GDTCORTransport *transport = [[GDTCORTransport alloc] initWithMappingID:@"137"
+ transformers:nil
+ target:kGDTCORTargetFLL];
+
+ GULHeartbeatDateStorage *dateStorage =
+ [[GULHeartbeatDateStorage alloc] initWithFileName:kFIRCoreDiagnosticsHeartbeatDateFileName];
+
+ return [self initWithTransport:transport heartbeatDateStorage:dateStorage];
+}
+
+/** Initializer for unit tests.
+ *
+ * @param transport A `GDTCORTransport` instance which that be used to send event.
+ * @param heartbeatDateStorage An instanse of date storage to track heartbeat sending.
+ * @return Returns the initialized `FIRCoreDiagnostics` instance.
+ */
+- (instancetype)initWithTransport:(GDTCORTransport *)transport
+ heartbeatDateStorage:(GULHeartbeatDateStorage *)heartbeatDateStorage {
+ self = [super init];
+ if (self) {
+ _diagnosticsQueue =
+ dispatch_queue_create("com.google.FIRCoreDiagnostics", DISPATCH_QUEUE_SERIAL);
+ _transport = transport;
+ _heartbeatDateStorage = heartbeatDateStorage;
+ }
+ return self;
+}
+
+#pragma mark - Metadata helpers
+
+/** Returns the model of iOS device. Sample platform strings are @"iPhone7,1" for iPhone 6 Plus,
+ * @"iPhone7,2" for iPhone 6, etc. Refer to the Hardware strings at
+ * https://en.wikipedia.org/wiki/List_of_iOS_devices
+ *
+ * @return The device model as an NSString.
+ */
++ (NSString *)deviceModel {
+ static NSString *deviceModel = nil;
+ if (deviceModel == nil) {
+ struct utsname systemInfo;
+ uname(&systemInfo);
+ deviceModel = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];
+ }
+ return deviceModel;
+}
+
+#pragma mark - nanopb helper functions
+
+/** Callocs a pb_bytes_array and copies the given NSString's bytes into the bytes array.
+ *
+ * @note Memory needs to be free manually, through pb_free or pb_release.
+ * @param string The string to encode as pb_bytes.
+ */
+pb_bytes_array_t *FIREncodeString(NSString *string) {
+ NSData *stringBytes = [string dataUsingEncoding:NSUTF8StringEncoding];
+ return FIREncodeData(stringBytes);
+}
+
+/** Callocs a pb_bytes_array and copies the given NSData bytes into the bytes array.
+ *
+ * @note Memory needs to be free manually, through pb_free or pb_release.
+ * @param data The data to copy into the new bytes array.
+ */
+pb_bytes_array_t *FIREncodeData(NSData *data) {
+ pb_bytes_array_t *pbBytesArray = calloc(1, PB_BYTES_ARRAY_T_ALLOCSIZE(data.length));
+ if (pbBytesArray != NULL) {
+ [data getBytes:pbBytesArray->bytes length:data.length];
+ pbBytesArray->size = (pb_size_t)data.length;
+ }
+ return pbBytesArray;
+}
+
+/** Maps a service string to the representative nanopb enum.
+ *
+ * @param serviceString The SDK service string to convert.
+ * @return The representative nanopb enum.
+ */
+logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType FIRMapFromServiceStringToTypeEnum(
+ NSString *serviceString) {
+ static NSDictionary<NSString *, NSNumber *> *serviceStringToTypeEnum;
+ if (serviceStringToTypeEnum == nil) {
+ serviceStringToTypeEnum = @{
+ kFIRServiceAdMob : @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ADMOB),
+ kFIRServiceMessaging : @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_MESSAGING),
+ kFIRServiceMeasurement :
+ @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_MEASUREMENT),
+ kFIRServiceRemoteConfig :
+ @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_REMOTE_CONFIG),
+ kFIRServiceDatabase : @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_DATABASE),
+ kFIRServiceDynamicLinks :
+ @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_DYNAMIC_LINKS),
+ kFIRServiceAuth : @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_AUTH),
+ kFIRServiceAuthUI : @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_AUTH_UI),
+ kFIRServiceFirestore : @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_FIRESTORE),
+ kFIRServiceFunctions : @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_FUNCTIONS),
+ kFIRServicePerformance :
+ @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_PERFORMANCE),
+ kFIRServiceStorage : @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_STORAGE),
+ kFIRServiceMLVisionOnDeviceAutoML :
+ @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ML_VISION_ON_DEVICE_AUTOML),
+ kFIRServiceMLVisionOnDeviceFace :
+ @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ML_VISION_ON_DEVICE_FACE),
+ kFIRServiceMLVisionOnDeviceBarcode :
+ @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ML_VISION_ON_DEVICE_BARCODE),
+ kFIRServiceMLVisionOnDeviceText :
+ @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ML_VISION_ON_DEVICE_TEXT),
+ kFIRServiceMLVisionOnDeviceLabel :
+ @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ML_VISION_ON_DEVICE_LABEL),
+ kFIRServiceMLVisionOnDeviceObjectDetection : @(
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ML_VISION_ON_DEVICE_OBJECT_DETECTION),
+ kFIRServiceMLModelInterpreter :
+ @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ML_MODEL_INTERPRETER),
+ kGGLServiceAnalytics : @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ANALYTICS),
+ kGGLServiceSignIn : @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_SIGN_IN),
+ kFIRServiceIAM : @(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_IN_APP_MESSAGING),
+ };
+ }
+ if (serviceStringToTypeEnum[serviceString] != nil) {
+ return (int32_t)serviceStringToTypeEnum[serviceString].longLongValue;
+ }
+ return logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_UNKNOWN_SDK_SERVICE;
+}
+
+#pragma mark - Proto population functions
+
+/** Populates the given proto with data related to an SDK logDiagnostics call from the
+ * diagnosticObjects dictionary.
+ *
+ * @param config The proto to populate
+ * @param diagnosticObjects The dictionary of diagnostics objects.
+ */
+void FIRPopulateProtoWithInfoFromUserInfoParams(logs_proto_mobilesdk_ios_ICoreConfiguration *config,
+ NSDictionary<NSString *, id> *diagnosticObjects) {
+ NSNumber *configurationType = diagnosticObjects[kFIRCDConfigurationTypeKey];
+ if (configurationType != nil) {
+ switch (configurationType.integerValue) {
+ case logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType_CORE:
+ config->configuration_type =
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType_CORE;
+ config->has_configuration_type = 1;
+ break;
+ case logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType_SDK:
+ config->configuration_type =
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType_SDK;
+ config->has_configuration_type = 1;
+ break;
+ default:
+ break;
+ }
+ }
+
+ NSString *sdkName = diagnosticObjects[kFIRCDSdkNameKey];
+ if (sdkName) {
+ config->sdk_name = FIRMapFromServiceStringToTypeEnum(sdkName);
+ config->has_sdk_name = 1;
+ }
+
+ NSString *version = diagnosticObjects[kFIRCDSdkVersionKey];
+ if (version) {
+ config->sdk_version = FIREncodeString(version);
+ }
+}
+
+/** Populates the given proto with data from the calling FIRApp using the given
+ * diagnosticObjects dictionary.
+ *
+ * @param config The proto to populate
+ * @param diagnosticObjects The dictionary of diagnostics objects.
+ */
+void FIRPopulateProtoWithCommonInfoFromApp(logs_proto_mobilesdk_ios_ICoreConfiguration *config,
+ NSDictionary<NSString *, id> *diagnosticObjects) {
+ config->pod_name = logs_proto_mobilesdk_ios_ICoreConfiguration_PodName_FIREBASE;
+ config->has_pod_name = 1;
+
+ if (!diagnosticObjects[kFIRCDllAppsCountKey]) {
+ GDTCORLogError(GDTCORMCEGeneralError, @"%@",
+ @"App count is a required value in the data dict.");
+ }
+ config->app_count = (int32_t)[diagnosticObjects[kFIRCDllAppsCountKey] integerValue];
+ config->has_app_count = 1;
+
+ NSString *googleAppID = diagnosticObjects[kFIRCDGoogleAppIDKey];
+ if (googleAppID.length) {
+ config->app_id = FIREncodeString(googleAppID);
+ }
+
+ NSString *bundleID = diagnosticObjects[kFIRCDBundleIDKey];
+ if (bundleID.length) {
+ config->bundle_id = FIREncodeString(bundleID);
+ }
+
+ NSString *firebaseUserAgent = diagnosticObjects[kFIRCDFirebaseUserAgentKey];
+ if (firebaseUserAgent.length) {
+ config->platform_info = FIREncodeString(firebaseUserAgent);
+ }
+
+ NSNumber *usingOptionsFromDefaultPlist = diagnosticObjects[kFIRCDUsingOptionsFromDefaultPlistKey];
+ if (usingOptionsFromDefaultPlist != nil) {
+ config->use_default_app = [usingOptionsFromDefaultPlist boolValue];
+ config->has_use_default_app = 1;
+ }
+
+ NSString *libraryVersionID = diagnosticObjects[kFIRCDLibraryVersionIDKey];
+ if (libraryVersionID) {
+ config->icore_version = FIREncodeString(libraryVersionID);
+ }
+
+ NSString *deviceModel = [FIRCoreDiagnostics deviceModel];
+ if (deviceModel.length) {
+ config->device_model = FIREncodeString(deviceModel);
+ }
+
+ NSString *osVersion = [GULAppEnvironmentUtil systemVersion];
+ if (osVersion.length) {
+ config->os_version = FIREncodeString(osVersion);
+ }
+
+ config->using_zip_file = kUsingZipFile;
+ config->has_using_zip_file = 1;
+ config->deployment_type = kDeploymentType;
+ config->has_deployment_type = 1;
+ config->deployed_in_app_store = [GULAppEnvironmentUtil isFromAppStore];
+ config->has_deployed_in_app_store = 1;
+}
+
+/** Populates the given proto with installed services data.
+ *
+ * @param config The proto to populate
+ */
+void FIRPopulateProtoWithInstalledServices(logs_proto_mobilesdk_ios_ICoreConfiguration *config) {
+ NSMutableArray<NSNumber *> *sdkServiceInstalledArray = [NSMutableArray array];
+
+ // AdMob
+ if (NSClassFromString(@"GADBannerView") != nil) {
+ [sdkServiceInstalledArray addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceAdMob))];
+ }
+ // CloudMessaging
+ if (NSClassFromString(@"FIRMessaging") != nil) {
+ [sdkServiceInstalledArray addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceMessaging))];
+ }
+ // RemoteConfig
+ if (NSClassFromString(@"FIRRemoteConfig") != nil) {
+ [sdkServiceInstalledArray
+ addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceRemoteConfig))];
+ }
+ // Measurement/Analtyics
+ if (NSClassFromString(@"FIRAnalytics") != nil) {
+ [sdkServiceInstalledArray
+ addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceMeasurement))];
+ }
+ // ML Vision On Device AutoML.
+ if (NSClassFromString(@"FIRVisionOnDeviceAutoMLImageLabelerOptions") != nil) {
+ [sdkServiceInstalledArray
+ addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceMLVisionOnDeviceAutoML))];
+ }
+ // ML Vision On Device Face.
+ if (NSClassFromString(@"FIRVisionFaceDetector") != nil &&
+ NSClassFromString(@"GMVFaceDetector") != nil) {
+ [sdkServiceInstalledArray
+ addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceMLVisionOnDeviceFace))];
+ }
+ // ML Vision On Device Barcode.
+ if (NSClassFromString(@"FIRVisionBarcodeDetector") != nil &&
+ NSClassFromString(@"GMVBarcodeDetector") != nil) {
+ [sdkServiceInstalledArray
+ addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceMLVisionOnDeviceBarcode))];
+ }
+ // ML Vision On Device Text.
+ if (NSClassFromString(@"FIRVisionTextDetector") != nil &&
+ NSClassFromString(@"GMVTextDetector") != nil) {
+ [sdkServiceInstalledArray
+ addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceMLVisionOnDeviceText))];
+ }
+ // ML Vision On Device Image Label.
+ if (NSClassFromString(@"FIRVisionLabelDetector") != nil &&
+ NSClassFromString(@"GMVLabelDetector") != nil) {
+ [sdkServiceInstalledArray
+ addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceMLVisionOnDeviceLabel))];
+ }
+ // ML Vision On Device Object.
+ if (NSClassFromString(@"FIRVisionObjectDetector") != nil) {
+ [sdkServiceInstalledArray
+ addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceMLVisionOnDeviceObjectDetection))];
+ }
+ // ML Model Interpreter
+ if (NSClassFromString(@"FIRCustomModelInterpreter") != nil) {
+ [sdkServiceInstalledArray
+ addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceMLModelInterpreter))];
+ }
+ // Database
+ if (NSClassFromString(@"FIRDatabase") != nil) {
+ [sdkServiceInstalledArray addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceDatabase))];
+ }
+ // DynamicDeepLink
+ if (NSClassFromString(@"FIRDynamicLinks") != nil) {
+ [sdkServiceInstalledArray
+ addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceDynamicLinks))];
+ }
+ // Auth
+ if (NSClassFromString(@"FIRAuth") != nil) {
+ [sdkServiceInstalledArray addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceAuth))];
+ }
+ // AuthUI
+ if (NSClassFromString(@"FUIAuth") != nil) {
+ [sdkServiceInstalledArray addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceAuthUI))];
+ }
+ // Firestore
+ if (NSClassFromString(@"FIRFirestore") != nil) {
+ [sdkServiceInstalledArray addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceFirestore))];
+ }
+ // Functions
+ if (NSClassFromString(@"FIRFunctions") != nil) {
+ [sdkServiceInstalledArray addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceFunctions))];
+ }
+ // Performance
+ if (NSClassFromString(@"FIRPerformance") != nil) {
+ [sdkServiceInstalledArray
+ addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServicePerformance))];
+ }
+ // Storage
+ if (NSClassFromString(@"FIRStorage") != nil) {
+ [sdkServiceInstalledArray addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceStorage))];
+ }
+ // SignIn via Google pod
+ if (NSClassFromString(@"GIDSignIn") != nil && NSClassFromString(@"GGLContext") != nil) {
+ [sdkServiceInstalledArray addObject:@(FIRMapFromServiceStringToTypeEnum(kGGLServiceSignIn))];
+ }
+ // Analytics via Google pod
+ if (NSClassFromString(@"GAI") != nil && NSClassFromString(@"GGLContext") != nil) {
+ [sdkServiceInstalledArray addObject:@(FIRMapFromServiceStringToTypeEnum(kGGLServiceAnalytics))];
+ }
+
+ // In-App Messaging
+ if (NSClassFromString(@"FIRInAppMessaging") != nil) {
+ [sdkServiceInstalledArray addObject:@(FIRMapFromServiceStringToTypeEnum(kFIRServiceIAM))];
+ }
+
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType *servicesInstalled =
+ calloc(sdkServiceInstalledArray.count,
+ sizeof(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType));
+ if (servicesInstalled == NULL) {
+ return;
+ }
+ for (NSUInteger i = 0; i < sdkServiceInstalledArray.count; i++) {
+ NSNumber *typeEnum = sdkServiceInstalledArray[i];
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType serviceType =
+ (int32_t)typeEnum.integerValue;
+ servicesInstalled[i] = serviceType;
+ }
+
+ config->sdk_service_installed = servicesInstalled;
+ config->sdk_service_installed_count = (int32_t)sdkServiceInstalledArray.count;
+}
+
+/** Populates the proto with the number of linked frameworks.
+ *
+ * @param config The proto to populate.
+ */
+void FIRPopulateProtoWithNumberOfLinkedFrameworks(
+ logs_proto_mobilesdk_ios_ICoreConfiguration *config) {
+ int numFrameworks = -1; // Subtract the app binary itself.
+ unsigned int numImages;
+ const char **imageNames = objc_copyImageNames(&numImages);
+ for (unsigned int i = 0; i < numImages; i++) {
+ NSString *imageName = [NSString stringWithUTF8String:imageNames[i]];
+ if ([imageName rangeOfString:@"System/Library"].length != 0 // Apple .frameworks
+ || [imageName rangeOfString:@"Developer/Library"].length != 0 // Xcode debug .frameworks
+ || [imageName rangeOfString:@"usr/lib"].length != 0) { // Public .dylibs
+ continue;
+ }
+ numFrameworks++;
+ }
+ free(imageNames);
+ config->dynamic_framework_count = numFrameworks;
+ config->has_dynamic_framework_count = 1;
+}
+
+/** Populates the proto with Info.plist values.
+ *
+ * @param config The proto to populate.
+ */
+void FIRPopulateProtoWithInfoPlistValues(logs_proto_mobilesdk_ios_ICoreConfiguration *config) {
+ NSDictionary<NSString *, id> *info = [[NSBundle mainBundle] infoDictionary];
+
+ NSString *xcodeVersion = info[@"DTXcodeBuild"] ?: @"";
+ NSString *sdkVersion = info[@"DTSDKBuild"] ?: @"";
+ NSString *combinedVersions = [NSString stringWithFormat:@"%@-%@", xcodeVersion, sdkVersion];
+ config->apple_framework_version = FIREncodeString(combinedVersions);
+
+ NSString *minVersion = info[@"MinimumOSVersion"];
+ if (minVersion) {
+ config->min_supported_ios_version = FIREncodeString(minVersion);
+ }
+
+ // Apps can turn off swizzling in the Info.plist, check if they've explicitly set the value and
+ // report it. It's enabled by default.
+ NSNumber *appDelegateSwizzledNum = info[@"FirebaseAppDelegateProxyEnabled"];
+ BOOL appDelegateSwizzled = YES;
+ if ([appDelegateSwizzledNum isKindOfClass:[NSNumber class]]) {
+ appDelegateSwizzled = [appDelegateSwizzledNum boolValue];
+ }
+ config->swizzling_enabled = appDelegateSwizzled;
+ config->has_swizzling_enabled = 1;
+}
+
+#pragma mark - FIRCoreDiagnosticsInterop
+
++ (void)sendDiagnosticsData:(nonnull id<FIRCoreDiagnosticsData>)diagnosticsData {
+ FIRCoreDiagnostics *diagnostics = [FIRCoreDiagnostics sharedInstance];
+ [diagnostics sendDiagnosticsData:diagnosticsData];
+}
+
+- (void)sendDiagnosticsData:(nonnull id<FIRCoreDiagnosticsData>)diagnosticsData {
+ dispatch_async(self.diagnosticsQueue, ^{
+ NSDictionary<NSString *, id> *diagnosticObjects = diagnosticsData.diagnosticObjects;
+ NSNumber *isDataCollectionDefaultEnabled =
+ diagnosticObjects[kFIRCDIsDataCollectionDefaultEnabledKey];
+ if (isDataCollectionDefaultEnabled && ![isDataCollectionDefaultEnabled boolValue]) {
+ return;
+ }
+
+ // Create the proto.
+ logs_proto_mobilesdk_ios_ICoreConfiguration icore_config =
+ logs_proto_mobilesdk_ios_ICoreConfiguration_init_default;
+
+ icore_config.using_gdt = 1;
+ icore_config.has_using_gdt = 1;
+
+ // Populate the proto with information.
+ FIRPopulateProtoWithInfoFromUserInfoParams(&icore_config, diagnosticObjects);
+ FIRPopulateProtoWithCommonInfoFromApp(&icore_config, diagnosticObjects);
+ FIRPopulateProtoWithInstalledServices(&icore_config);
+ FIRPopulateProtoWithNumberOfLinkedFrameworks(&icore_config);
+ FIRPopulateProtoWithInfoPlistValues(&icore_config);
+ [self setHeartbeatFlagIfNeededToConfig:&icore_config];
+
+ // This log object is capable of converting the proto to bytes.
+ FIRCoreDiagnosticsLog *log = [[FIRCoreDiagnosticsLog alloc] initWithConfig:icore_config];
+
+ // Send the log as a telemetry event.
+ GDTCOREvent *event = [self.transport eventForTransport];
+ event.dataObject = (id<GDTCOREventDataObject>)log;
+ [self.transport sendTelemetryEvent:event];
+ });
+}
+
+#pragma mark - Heartbeat
+
+- (void)setHeartbeatFlagIfNeededToConfig:(logs_proto_mobilesdk_ios_ICoreConfiguration *)config {
+ // Check if need to send a heartbeat.
+ NSDate *currentDate = [NSDate date];
+ NSDate *lastCheckin =
+ [self.heartbeatDateStorage heartbeatDateForTag:kFIRCoreDiagnosticsHeartbeatTag];
+ if (lastCheckin) {
+ // Ensure the previous checkin was on a different date in the past.
+ if ([self isDate:currentDate inSameDayOrBeforeThan:lastCheckin]) {
+ return;
+ }
+ }
+
+ // Update heartbeat sent date.
+ [self.heartbeatDateStorage setHearbeatDate:currentDate forTag:kFIRCoreDiagnosticsHeartbeatTag];
+ // Set the flag.
+ config->sdk_name = logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ICORE;
+ config->has_sdk_name = 1;
+}
+
+- (BOOL)isDate:(NSDate *)date1 inSameDayOrBeforeThan:(NSDate *)date2 {
+ return [[NSCalendar currentCalendar] isDate:date1 inSameDayAsDate:date2] ||
+ [date1 compare:date2] == NSOrderedAscending;
+}
+
+@end
diff --git a/StoneIsland/platforms/ios/Pods/FirebaseCoreDiagnostics/Firebase/CoreDiagnostics/FIRCDLibrary/Protogen/nanopb/firebasecore.nanopb.c b/StoneIsland/platforms/ios/Pods/FirebaseCoreDiagnostics/Firebase/CoreDiagnostics/FIRCDLibrary/Protogen/nanopb/firebasecore.nanopb.c
new file mode 100644
index 00000000..0bdb27e2
--- /dev/null
+++ b/StoneIsland/platforms/ios/Pods/FirebaseCoreDiagnostics/Firebase/CoreDiagnostics/FIRCDLibrary/Protogen/nanopb/firebasecore.nanopb.c
@@ -0,0 +1,60 @@
+/*
+ * Copyright 2019 Google
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Automatically generated nanopb constant definitions */
+/* Generated by nanopb-0.3.9.5 */
+
+#include "firebasecore.nanopb.h"
+
+/* @@protoc_insertion_point(includes) */
+#if PB_PROTO_HEADER_VERSION != 30
+#error Regenerate this file with the current version of nanopb generator.
+#endif
+
+
+
+const pb_field_t logs_proto_mobilesdk_ios_ICoreConfiguration_fields[22] = {
+ PB_FIELD( 1, UENUM , OPTIONAL, STATIC , FIRST, logs_proto_mobilesdk_ios_ICoreConfiguration, configuration_type, configuration_type, 0),
+ PB_FIELD( 7, UENUM , REPEATED, POINTER , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, sdk_service_installed, configuration_type, 0),
+ PB_FIELD( 9, BYTES , OPTIONAL, POINTER , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, device_model, sdk_service_installed, 0),
+ PB_FIELD( 10, BYTES , OPTIONAL, POINTER , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, app_id, device_model, 0),
+ PB_FIELD( 12, BYTES , OPTIONAL, POINTER , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, bundle_id, app_id, 0),
+ PB_FIELD( 16, UENUM , OPTIONAL, STATIC , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, pod_name, bundle_id, 0),
+ PB_FIELD( 18, BYTES , OPTIONAL, POINTER , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, icore_version, pod_name, 0),
+ PB_FIELD( 19, BYTES , OPTIONAL, POINTER , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, sdk_version, icore_version, 0),
+ PB_FIELD( 20, UENUM , OPTIONAL, STATIC , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, sdk_name, sdk_version, 0),
+ PB_FIELD( 21, INT32 , OPTIONAL, STATIC , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, app_count, sdk_name, 0),
+ PB_FIELD( 22, BYTES , OPTIONAL, POINTER , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, os_version, app_count, 0),
+ PB_FIELD( 24, BYTES , OPTIONAL, POINTER , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, min_supported_ios_version, os_version, 0),
+ PB_FIELD( 25, BOOL , OPTIONAL, STATIC , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, use_default_app, min_supported_ios_version, 0),
+ PB_FIELD( 26, BOOL , OPTIONAL, STATIC , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, deployed_in_app_store, use_default_app, 0),
+ PB_FIELD( 27, INT32 , OPTIONAL, STATIC , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, dynamic_framework_count, deployed_in_app_store, 0),
+ PB_FIELD( 28, BYTES , OPTIONAL, POINTER , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, apple_framework_version, dynamic_framework_count, 0),
+ PB_FIELD( 29, BOOL , OPTIONAL, STATIC , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, using_zip_file, apple_framework_version, 0),
+ PB_FIELD( 30, UENUM , OPTIONAL, STATIC , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, deployment_type, using_zip_file, 0),
+ PB_FIELD( 31, BYTES , OPTIONAL, POINTER , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, platform_info, deployment_type, 0),
+ PB_FIELD( 33, BOOL , OPTIONAL, STATIC , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, swizzling_enabled, platform_info, 0),
+ PB_FIELD( 36, BOOL , OPTIONAL, STATIC , OTHER, logs_proto_mobilesdk_ios_ICoreConfiguration, using_gdt, swizzling_enabled, 0),
+ PB_LAST_FIELD
+};
+
+
+
+
+
+
+
+/* @@protoc_insertion_point(eof) */
diff --git a/StoneIsland/platforms/ios/Pods/FirebaseCoreDiagnostics/Firebase/CoreDiagnostics/FIRCDLibrary/Protogen/nanopb/firebasecore.nanopb.h b/StoneIsland/platforms/ios/Pods/FirebaseCoreDiagnostics/Firebase/CoreDiagnostics/FIRCDLibrary/Protogen/nanopb/firebasecore.nanopb.h
new file mode 100644
index 00000000..59d1b3b0
--- /dev/null
+++ b/StoneIsland/platforms/ios/Pods/FirebaseCoreDiagnostics/Firebase/CoreDiagnostics/FIRCDLibrary/Protogen/nanopb/firebasecore.nanopb.h
@@ -0,0 +1,193 @@
+/*
+ * Copyright 2019 Google
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Automatically generated nanopb header */
+/* Generated by nanopb-0.3.9.5 */
+
+#ifndef PB_LOGS_PROTO_MOBILESDK_IOS_FIREBASECORE_NANOPB_H_INCLUDED
+#define PB_LOGS_PROTO_MOBILESDK_IOS_FIREBASECORE_NANOPB_H_INCLUDED
+#include <nanopb/pb.h>
+
+/* @@protoc_insertion_point(includes) */
+#if PB_PROTO_HEADER_VERSION != 30
+#error Regenerate this file with the current version of nanopb generator.
+#endif
+
+
+/* Enum definitions */
+typedef enum _logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType {
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType_UNKNOWN_CONFIGURATION_TYPE = 0,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType_CORE = 1,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType_SDK = 2
+} logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType;
+#define _logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType_MIN logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType_UNKNOWN_CONFIGURATION_TYPE
+#define _logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType_MAX logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType_SDK
+#define _logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType_ARRAYSIZE ((logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType)(logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType_SDK+1))
+
+typedef enum _logs_proto_mobilesdk_ios_ICoreConfiguration_BuildType {
+ logs_proto_mobilesdk_ios_ICoreConfiguration_BuildType_UNKNOWN_BUILD_TYPE = 0,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_BuildType_INTERNAL = 1,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_BuildType_EAP = 2,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_BuildType_PROD = 3
+} logs_proto_mobilesdk_ios_ICoreConfiguration_BuildType;
+#define _logs_proto_mobilesdk_ios_ICoreConfiguration_BuildType_MIN logs_proto_mobilesdk_ios_ICoreConfiguration_BuildType_UNKNOWN_BUILD_TYPE
+#define _logs_proto_mobilesdk_ios_ICoreConfiguration_BuildType_MAX logs_proto_mobilesdk_ios_ICoreConfiguration_BuildType_PROD
+#define _logs_proto_mobilesdk_ios_ICoreConfiguration_BuildType_ARRAYSIZE ((logs_proto_mobilesdk_ios_ICoreConfiguration_BuildType)(logs_proto_mobilesdk_ios_ICoreConfiguration_BuildType_PROD+1))
+
+typedef enum _logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType {
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_UNKNOWN_SDK_SERVICE = 0,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ICORE = 1,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ADMOB = 2,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_APP_INVITE = 3,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_SIGN_IN = 5,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_GCM = 6,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_MAPS = 7,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_SCION = 8,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ANALYTICS = 9,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_APP_INDEXING = 10,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_CONFIG = 11,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_DURABLE_DEEP_LINKS = 12,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_CRASH = 13,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_AUTH = 14,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_DATABASE = 15,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_STORAGE = 16,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_MESSAGING = 17,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_MEASUREMENT = 18,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_REMOTE_CONFIG = 19,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_DYNAMIC_LINKS = 20,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_INVITES = 21,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_AUTH_UI = 22,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_FIRESTORE = 23,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_PERFORMANCE = 24,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ML_VISION_ON_DEVICE_FACE = 26,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ML_VISION_ON_DEVICE_BARCODE = 27,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ML_VISION_ON_DEVICE_TEXT = 28,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ML_VISION_ON_DEVICE_LABEL = 29,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ML_MODEL_INTERPRETER = 30,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_IN_APP_MESSAGING = 31,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_FUNCTIONS = 32,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ML_NATURAL_LANGUAGE = 33,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ML_VISION_ON_DEVICE_AUTOML = 34,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ML_VISION_ON_DEVICE_OBJECT_DETECTION = 35
+} logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType;
+#define _logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_MIN logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_UNKNOWN_SDK_SERVICE
+#define _logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_MAX logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ML_VISION_ON_DEVICE_OBJECT_DETECTION
+#define _logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ARRAYSIZE ((logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType)(logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_ML_VISION_ON_DEVICE_OBJECT_DETECTION+1))
+
+typedef enum _logs_proto_mobilesdk_ios_ICoreConfiguration_PodName {
+ logs_proto_mobilesdk_ios_ICoreConfiguration_PodName_UNKNOWN_POD_NAME = 0,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_PodName_GOOGLE = 1,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_PodName_FIREBASE = 2
+} logs_proto_mobilesdk_ios_ICoreConfiguration_PodName;
+#define _logs_proto_mobilesdk_ios_ICoreConfiguration_PodName_MIN logs_proto_mobilesdk_ios_ICoreConfiguration_PodName_UNKNOWN_POD_NAME
+#define _logs_proto_mobilesdk_ios_ICoreConfiguration_PodName_MAX logs_proto_mobilesdk_ios_ICoreConfiguration_PodName_FIREBASE
+#define _logs_proto_mobilesdk_ios_ICoreConfiguration_PodName_ARRAYSIZE ((logs_proto_mobilesdk_ios_ICoreConfiguration_PodName)(logs_proto_mobilesdk_ios_ICoreConfiguration_PodName_FIREBASE+1))
+
+typedef enum _logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType {
+ logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType_UNKNOWN = 0,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType_COCOAPODS = 1,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType_ZIP_FILE = 2,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType_CARTHAGE = 3,
+ logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType_SPM = 4
+} logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType;
+#define _logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType_MIN logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType_UNKNOWN
+#define _logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType_MAX logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType_SPM
+#define _logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType_ARRAYSIZE ((logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType)(logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType_SPM+1))
+
+/* Struct definitions */
+typedef struct _logs_proto_mobilesdk_ios_ICoreConfiguration {
+ bool has_configuration_type;
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType configuration_type;
+ pb_size_t sdk_service_installed_count;
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType *sdk_service_installed;
+ pb_bytes_array_t *device_model;
+ pb_bytes_array_t *app_id;
+ pb_bytes_array_t *bundle_id;
+ bool has_pod_name;
+ logs_proto_mobilesdk_ios_ICoreConfiguration_PodName pod_name;
+ pb_bytes_array_t *icore_version;
+ pb_bytes_array_t *sdk_version;
+ bool has_sdk_name;
+ logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType sdk_name;
+ bool has_app_count;
+ int32_t app_count;
+ pb_bytes_array_t *os_version;
+ pb_bytes_array_t *min_supported_ios_version;
+ bool has_use_default_app;
+ bool use_default_app;
+ bool has_deployed_in_app_store;
+ bool deployed_in_app_store;
+ bool has_dynamic_framework_count;
+ int32_t dynamic_framework_count;
+ pb_bytes_array_t *apple_framework_version;
+ bool has_using_zip_file;
+ bool using_zip_file;
+ bool has_deployment_type;
+ logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType deployment_type;
+ pb_bytes_array_t *platform_info;
+ bool has_swizzling_enabled;
+ bool swizzling_enabled;
+ bool has_using_gdt;
+ bool using_gdt;
+/* @@protoc_insertion_point(struct:logs_proto_mobilesdk_ios_ICoreConfiguration) */
+} logs_proto_mobilesdk_ios_ICoreConfiguration;
+
+/* Default values for struct fields */
+
+/* Initializer values for message structs */
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_init_default {false, _logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType_MIN, 0, NULL, NULL, NULL, NULL, false, _logs_proto_mobilesdk_ios_ICoreConfiguration_PodName_MIN, NULL, NULL, false, _logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_MIN, false, 0, NULL, NULL, false, 0, false, 0, false, 0, NULL, false, 0, false, _logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType_MIN, NULL, false, 0, false, 0}
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_init_zero {false, _logs_proto_mobilesdk_ios_ICoreConfiguration_ConfigurationType_MIN, 0, NULL, NULL, NULL, NULL, false, _logs_proto_mobilesdk_ios_ICoreConfiguration_PodName_MIN, NULL, NULL, false, _logs_proto_mobilesdk_ios_ICoreConfiguration_ServiceType_MIN, false, 0, NULL, NULL, false, 0, false, 0, false, 0, NULL, false, 0, false, _logs_proto_mobilesdk_ios_ICoreConfiguration_DeploymentType_MIN, NULL, false, 0, false, 0}
+
+/* Field tags (for use in manual encoding/decoding) */
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_pod_name_tag 16
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_configuration_type_tag 1
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_icore_version_tag 18
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_sdk_version_tag 19
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_sdk_service_installed_tag 7
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_sdk_name_tag 20
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_device_model_tag 9
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_os_version_tag 22
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_app_id_tag 10
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_bundle_id_tag 12
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_min_supported_ios_version_tag 24
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_use_default_app_tag 25
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_app_count_tag 21
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_deployed_in_app_store_tag 26
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_dynamic_framework_count_tag 27
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_apple_framework_version_tag 28
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_using_zip_file_tag 29
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_deployment_type_tag 30
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_platform_info_tag 31
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_swizzling_enabled_tag 33
+#define logs_proto_mobilesdk_ios_ICoreConfiguration_using_gdt_tag 36
+
+/* Struct field encoding specification for nanopb */
+extern const pb_field_t logs_proto_mobilesdk_ios_ICoreConfiguration_fields[22];
+
+/* Maximum encoded size of messages (where known) */
+/* logs_proto_mobilesdk_ios_ICoreConfiguration_size depends on runtime parameters */
+
+/* Message IDs (where set with "msgid" option) */
+#ifdef PB_MSGID
+
+#define FIREBASECORE_MESSAGES \
+
+
+#endif
+
+/* @@protoc_insertion_point(eof) */
+
+#endif