diff options
Diffstat (limited to 'StoneIsland/platforms/ios')
69 files changed, 3043 insertions, 2007 deletions
diff --git a/StoneIsland/platforms/ios/Stone Island.xcodeproj/project.pbxproj b/StoneIsland/platforms/ios/Stone Island.xcodeproj/project.pbxproj index 9124f869..69471aa0 100755 --- a/StoneIsland/platforms/ios/Stone Island.xcodeproj/project.pbxproj +++ b/StoneIsland/platforms/ios/Stone Island.xcodeproj/project.pbxproj @@ -7,7 +7,6 @@ objects = { /* Begin PBXBuildFile section */ 0207DA581B56EA530066E2B4 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 0207DA571B56EA530066E2B4 /* Images.xcassets */; }; - 0245BD3C98FD4F04A11BBCAA /* libsqlite3.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 4A4D6FDE815144E3BC47859B /* libsqlite3.dylib */; }; 099C5D0E05AF43F4B95AAA4A /* CDVNotification.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 2F49F2111FC649498658CF3B /* CDVNotification.bundle */; }; 0EB9CC91D14946018E9E8959 /* NSString+URLEncoding.m in Sources */ = {isa = PBXBuildFile; fileRef = B67D2EE318FB494FA66C6A82 /* NSString+URLEncoding.m */; }; 1D3623260D0F684500981E51 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D3623250D0F684500981E51 /* AppDelegate.m */; }; @@ -21,12 +20,9 @@ 3F54272035164B97980AEFF8 /* Social.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6C144F975307417B892CAC2C /* Social.framework */; }; 4A6286E85D8E48729B679999 /* SocialSharing.m in Sources */ = {isa = PBXBuildFile; fileRef = DDCE40E086B24A98A0490DA7 /* SocialSharing.m */; }; 5246BFCFEB754DCC9DD156F5 /* CDVDevice.m in Sources */ = {isa = PBXBuildFile; fileRef = F6093E605D6D49D1918413AA /* CDVDevice.m */; }; - 600310C41D3B400498A5890B /* libGoogleAnalyticsServices.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 281039EFAD1B4A8C90FDC17F /* libGoogleAnalyticsServices.a */; }; 62A7DCEB605B49F4BD73FFF0 /* CDVSplashScreen.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A7B4D488DBC402C922C7574 /* CDVSplashScreen.m */; }; 6AFF5BF91D6E424B00AB3073 /* CDVLaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6AFF5BF81D6E424B00AB3073 /* CDVLaunchScreen.storyboard */; }; - 6B52986769BB47ED98DF12F6 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 5133B28F80C74DA0A4EF900A /* libz.dylib */; }; 76C30D264E504728A7F0FD0C /* PushPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = B195BD92B31445039168DCCC /* PushPlugin.m */; }; - 7739C5D961784F519029D858 /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BBF0272D99FA4D308445B382 /* CoreData.framework */; }; 84B2CD60DA194555B86E263D /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 81D376C7F9874FA1B2318AFA /* AudioToolbox.framework */; }; 84D89679250B4DF4ABF3BE7F /* CDVNotification.m in Sources */ = {isa = PBXBuildFile; fileRef = 6921995B5AF0481CA93F7A5D /* CDVNotification.m */; }; 8568F48189D243CA91300537 /* CDVLogger.m in Sources */ = {isa = PBXBuildFile; fileRef = 63D8B1ADC251482C8620B623 /* CDVLogger.m */; }; @@ -35,17 +31,25 @@ 9E26B81E92624D9896571609 /* MessageUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FCCC22BF4385472E88382D56 /* MessageUI.framework */; settings = {ATTRIBUTES = (Weak, ); }; }; A9267928B9A04BE29B534458 /* AddressBook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6940DEA5B3084B54B48BD8F1 /* AddressBook.framework */; }; B88B1D224DEA4E699F7502F8 /* CDVReachability.m in Sources */ = {isa = PBXBuildFile; fileRef = E0008CA3AF7D47F497F52E48 /* CDVReachability.m */; }; - C4E60C33635D44649CAAF727 /* libAdIdAccess.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 92230324A2954C6AADBA989A /* libAdIdAccess.a */; }; D126BF4289EA4FE087802574 /* CoreTelephony.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 44965ED7EC514AD283A3DAA2 /* CoreTelephony.framework */; }; - D54B6FB071A94BED99CBF7E6 /* AdSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A3D8D77BE5A0496891F24BF9 /* AdSupport.framework */; }; E162E7029FC24C4595D1D82D /* IonicKeyboard.m in Sources */ = {isa = PBXBuildFile; fileRef = 738136BA596342BB82CCDD80 /* IonicKeyboard.m */; }; E5CA6AAEC723E2850C15309E /* libPods-Stone Island.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1827DA33B918A624C9D0E74D /* libPods-Stone Island.a */; }; E761267B18B0459FA2514AE8 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 85D3B0CF3FF74E3D97E33BF4 /* SystemConfiguration.framework */; }; - EE465A3641884122A7088AC5 /* UniversalAnalyticsPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = FFB5E8C21AD14D10A7088119 /* UniversalAnalyticsPlugin.m */; }; EF28FE2B49A344FBA3F7306F /* CDVInAppBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 729B6141DF9D4C1BB64A7097 /* CDVInAppBrowser.m */; }; F4862C5594894163A3C3AB06 /* CDVConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = 6E7CCBA15DC14F20830BD1B3 /* CDVConnection.m */; }; F990B4C12C3746EAA8C30F8D /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 6465D215A1B148A387730F27 /* libz.tbd */; }; 9DF0159ECE654EF1921606B9 /* CDVStatusBar.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CDFA08638E64E9F9CDB1109 /* CDVStatusBar.m */; }; + BC359FDFB50941649B56E28F /* AppDelegate+FirebasePlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = 5EC39C5B4DAE4FAD8CF8695D /* AppDelegate+FirebasePlugin.m */; }; + C866439BEFD34ABD84D2C187 /* FirebasePlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C3DDD8A49E340CF957F7B1F /* FirebasePlugin.m */; }; + 0FB747315D6F471689E642F5 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 2C70563D47C64AF3ACAF61E0 /* GoogleService-Info.plist */; }; + 5E621514A94641479C72A50D /* FirebaseAnalytics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F685F82C990346D690E3964A /* FirebaseAnalytics.framework */; }; + 1D5CAB42B5DE48328017C472 /* FirebaseCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FD9D2163E342476EB5E0C76F /* FirebaseCore.framework */; }; + F5C11F2CB8FA4EDE90455B16 /* FirebaseInstanceID.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 07EDF5A22AD84B9A9589735F /* FirebaseInstanceID.framework */; }; + 248907F240C5452893560A33 /* GoogleToolboxForMac.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 618739808BC6467DA23E8206 /* GoogleToolboxForMac.framework */; }; + AEAE498777844A5280FD25F4 /* Protobuf.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 608DE9DAFDE94B8A861130BD /* Protobuf.framework */; }; + 605B0C4C903B4FD8B1F0F694 /* FirebaseMessaging.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DC38B894F8C343BCA787D906 /* FirebaseMessaging.framework */; }; + 7C872490D5A94AEBBBD1349E /* FirebaseCrash.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0710864CDF044948B1C18450 /* FirebaseCrash.framework */; }; + 2082C1FBFC0E43BB8C609980 /* FirebaseRemoteConfig.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4398FE67A32F4A6CA63E3979 /* FirebaseRemoteConfig.framework */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -71,7 +75,6 @@ 0207DA571B56EA530066E2B4 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = "Stone Island/Images.xcassets"; sourceTree = SOURCE_ROOT; }; 0B1CCEFB092F4CECA26CD473 /* CDVNotification.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = CDVNotification.h; path = "cordova-plugin-dialogs/CDVNotification.h"; sourceTree = "<group>"; }; 126A7C33C770436081C4808A /* CDVLocation.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = CDVLocation.h; path = "cordova-plugin-geolocation/CDVLocation.h"; sourceTree = "<group>"; }; - 1380CC4A1CFE434BB20950B7 /* GAIFields.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = GAIFields.h; path = "cordova-plugin-google-analytics/GAIFields.h"; sourceTree = "<group>"; }; 15B798542A834D5F9C46B593 /* CDVLogger.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = CDVLogger.h; path = "cordova-plugin-console/CDVLogger.h"; sourceTree = "<group>"; }; 1827DA33B918A624C9D0E74D /* libPods-Stone Island.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Stone Island.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 1A7B4D488DBC402C922C7574 /* CDVSplashScreen.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = CDVSplashScreen.m; path = "cordova-plugin-splashscreen/CDVSplashScreen.m"; sourceTree = "<group>"; }; @@ -80,8 +83,6 @@ 1D6058910D05DD3D006BFB54 /* Stone Island.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Stone Island.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 202110AF22594D0F9C1A334F /* AppDelegate+notification.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = "AppDelegate+notification.m"; path = "phonegap-plugin-push/AppDelegate+notification.m"; sourceTree = "<group>"; }; 2371391E63BB4E19BE123F25 /* NSString+URLEncoding.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = "NSString+URLEncoding.h"; path = "cordova-plugin-x-socialsharing/NSString+URLEncoding.h"; sourceTree = "<group>"; }; - 281039EFAD1B4A8C90FDC17F /* libGoogleAnalyticsServices.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; name = libGoogleAnalyticsServices.a; path = "Stone Island/Plugins/cordova-plugin-google-analytics/libGoogleAnalyticsServices.a"; sourceTree = "<group>"; }; - 2953CC1328564E13AE3FE7CD /* GAIEcommerceFields.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = GAIEcommerceFields.h; path = "cordova-plugin-google-analytics/GAIEcommerceFields.h"; sourceTree = "<group>"; }; 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; }; 2AF51DC70C6443E88037BD84 /* CoreLocation.framework */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = wrapper.framework; name = CoreLocation.framework; path = System/Library/Frameworks/CoreLocation.framework; sourceTree = SDKROOT; }; 2F49F2111FC649498658CF3B /* CDVNotification.bundle */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.plug-in"; path = CDVNotification.bundle; sourceTree = "<group>"; }; @@ -94,14 +95,11 @@ 3047A5101AB8059700498E2A /* build-release.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = "build-release.xcconfig"; path = "cordova/build-release.xcconfig"; sourceTree = SOURCE_ROOT; }; 3047A5111AB8059700498E2A /* build.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = build.xcconfig; path = cordova/build.xcconfig; sourceTree = SOURCE_ROOT; }; 32CA4F630368D1EE00C91783 /* Stone Island-Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "Stone Island-Prefix.pch"; sourceTree = "<group>"; }; - 36C6224E10CC4C1DB3DEAAF4 /* GAIDictionaryBuilder.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = GAIDictionaryBuilder.h; path = "cordova-plugin-google-analytics/GAIDictionaryBuilder.h"; sourceTree = "<group>"; }; 40CE234F002F419597A039E4 /* AppDelegate+notification.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = "AppDelegate+notification.h"; path = "phonegap-plugin-push/AppDelegate+notification.h"; sourceTree = "<group>"; }; 4258DE006F82471E996DD840 /* CDVViewController+SplashScreen.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = "CDVViewController+SplashScreen.m"; path = "cordova-plugin-splashscreen/CDVViewController+SplashScreen.m"; sourceTree = "<group>"; }; 44965ED7EC514AD283A3DAA2 /* CoreTelephony.framework */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = wrapper.framework; name = CoreTelephony.framework; path = System/Library/Frameworks/CoreTelephony.framework; sourceTree = SDKROOT; }; 47F2E7D4A25F4BC1BF2C5DA9 /* CDVReachability.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = CDVReachability.h; path = "cordova-plugin-network-information/CDVReachability.h"; sourceTree = "<group>"; }; - 4A4D6FDE815144E3BC47859B /* libsqlite3.dylib */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "compiled.mach-o.dylib"; name = libsqlite3.dylib; path = usr/lib/libsqlite3.dylib; sourceTree = SDKROOT; }; 4E80481E26EC4E568CC3903D /* CDVViewController+SplashScreen.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = "CDVViewController+SplashScreen.h"; path = "cordova-plugin-splashscreen/CDVViewController+SplashScreen.h"; sourceTree = "<group>"; }; - 5133B28F80C74DA0A4EF900A /* libz.dylib */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = usr/lib/libz.dylib; sourceTree = SDKROOT; }; 627E8711314C4B91BFAABD62 /* IonicKeyboard.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = IonicKeyboard.h; path = "ionic-plugin-keyboard/IonicKeyboard.h"; sourceTree = "<group>"; }; 63D8B1ADC251482C8620B623 /* CDVLogger.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = CDVLogger.m; path = "cordova-plugin-console/CDVLogger.m"; sourceTree = "<group>"; }; 6465D215A1B148A387730F27 /* 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; }; @@ -112,39 +110,41 @@ 6AFF5BF81D6E424B00AB3073 /* CDVLaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = CDVLaunchScreen.storyboard; path = "Stone Island/CDVLaunchScreen.storyboard"; sourceTree = SOURCE_ROOT; }; 6C144F975307417B892CAC2C /* Social.framework */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = wrapper.framework; name = Social.framework; path = System/Library/Frameworks/Social.framework; sourceTree = SDKROOT; }; 6E7CCBA15DC14F20830BD1B3 /* CDVConnection.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = CDVConnection.m; path = "cordova-plugin-network-information/CDVConnection.m"; sourceTree = "<group>"; }; - 71D1AD5902B0425F8154F30F /* GAILogger.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = GAILogger.h; path = "cordova-plugin-google-analytics/GAILogger.h"; sourceTree = "<group>"; }; 729B6141DF9D4C1BB64A7097 /* CDVInAppBrowser.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = CDVInAppBrowser.m; path = "cordova-plugin-inappbrowser/CDVInAppBrowser.m"; sourceTree = "<group>"; }; 738136BA596342BB82CCDD80 /* IonicKeyboard.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = IonicKeyboard.m; path = "ionic-plugin-keyboard/IonicKeyboard.m"; sourceTree = "<group>"; }; - 7EECC2D2BFEA43FE966814C6 /* GAI.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = GAI.h; path = "cordova-plugin-google-analytics/GAI.h"; sourceTree = "<group>"; }; 81D376C7F9874FA1B2318AFA /* AudioToolbox.framework */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; 85D3B0CF3FF74E3D97E33BF4 /* SystemConfiguration.framework */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; }; 876C6279414F4D5A82514049 /* CDVDevice.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = CDVDevice.h; path = "cordova-plugin-device/CDVDevice.h"; sourceTree = "<group>"; }; - 8A49AF7CDE3040039CE14E5A /* GAIEcommerceProductAction.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = GAIEcommerceProductAction.h; path = "cordova-plugin-google-analytics/GAIEcommerceProductAction.h"; sourceTree = "<group>"; }; 8D1107310486CEB800E47090 /* Stone Island-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = "Stone Island-Info.plist"; path = "Stone Island/Stone Island-Info.plist"; plistStructureDefinitionIdentifier = "com.apple.xcode.plist.structure-definition.iphone.info-plist"; sourceTree = SOURCE_ROOT; }; - 92230324A2954C6AADBA989A /* libAdIdAccess.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; name = libAdIdAccess.a; path = "Stone Island/Plugins/cordova-plugin-google-analytics/libAdIdAccess.a"; sourceTree = "<group>"; }; - 9A8A8193C2794F48888355D3 /* GAITrackedViewController.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = GAITrackedViewController.h; path = "cordova-plugin-google-analytics/GAITrackedViewController.h"; sourceTree = "<group>"; }; 9AA8E7740E114B6E967452F8 /* PushPlugin.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = PushPlugin.h; path = "phonegap-plugin-push/PushPlugin.h"; sourceTree = "<group>"; }; 9F81F9288C7B4B628408E9AF /* CDVInAppBrowser.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = CDVInAppBrowser.h; path = "cordova-plugin-inappbrowser/CDVInAppBrowser.h"; sourceTree = "<group>"; }; - A37B0133EF7A42B6BAF5F317 /* UniversalAnalyticsPlugin.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = UniversalAnalyticsPlugin.h; path = "cordova-plugin-google-analytics/UniversalAnalyticsPlugin.h"; sourceTree = "<group>"; }; - A3D8D77BE5A0496891F24BF9 /* AdSupport.framework */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = wrapper.framework; name = AdSupport.framework; path = System/Library/Frameworks/AdSupport.framework; sourceTree = SDKROOT; }; B195BD92B31445039168DCCC /* PushPlugin.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = PushPlugin.m; path = "phonegap-plugin-push/PushPlugin.m"; sourceTree = "<group>"; }; B67D2EE318FB494FA66C6A82 /* NSString+URLEncoding.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = "NSString+URLEncoding.m"; path = "cordova-plugin-x-socialsharing/NSString+URLEncoding.m"; sourceTree = "<group>"; }; - BBF0272D99FA4D308445B382 /* CoreData.framework */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; }; - CAAD7EE259C942989156C616 /* GAIEcommerceProduct.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = GAIEcommerceProduct.h; path = "cordova-plugin-google-analytics/GAIEcommerceProduct.h"; sourceTree = "<group>"; }; DDCE40E086B24A98A0490DA7 /* SocialSharing.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = SocialSharing.m; path = "cordova-plugin-x-socialsharing/SocialSharing.m"; sourceTree = "<group>"; }; E0008CA3AF7D47F497F52E48 /* CDVReachability.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = CDVReachability.m; path = "cordova-plugin-network-information/CDVReachability.m"; sourceTree = "<group>"; }; - E2AFABA192234A0E9C198427 /* GAIEcommercePromotion.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = GAIEcommercePromotion.h; path = "cordova-plugin-google-analytics/GAIEcommercePromotion.h"; sourceTree = "<group>"; }; EB87FDF31871DA8E0020F90C /* www */ = {isa = PBXFileReference; lastKnownFileType = folder; name = www; path = ../../www; sourceTree = "<group>"; }; EB87FDF41871DAF40020F90C /* config.xml */ = {isa = PBXFileReference; lastKnownFileType = text.xml; name = config.xml; path = ../../config.xml; sourceTree = "<group>"; }; ED33DF2A687741AEAF9F8254 /* Bridging-Header.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "Bridging-Header.h"; sourceTree = "<group>"; }; EFE07C93437141668090A998 /* SocialSharing.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = SocialSharing.h; path = "cordova-plugin-x-socialsharing/SocialSharing.h"; sourceTree = "<group>"; }; - F52665B1E3624AACB50A72B1 /* GAITracker.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = GAITracker.h; path = "cordova-plugin-google-analytics/GAITracker.h"; sourceTree = "<group>"; }; F6093E605D6D49D1918413AA /* CDVDevice.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = CDVDevice.m; path = "cordova-plugin-device/CDVDevice.m"; sourceTree = "<group>"; }; F840E1F0165FE0F500CFE078 /* config.xml */ = {isa = PBXFileReference; lastKnownFileType = text.xml; name = config.xml; path = "Stone Island/config.xml"; sourceTree = "<group>"; }; FCCC22BF4385472E88382D56 /* MessageUI.framework */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = wrapper.framework; name = MessageUI.framework; path = System/Library/Frameworks/MessageUI.framework; sourceTree = SDKROOT; }; - FFB5E8C21AD14D10A7088119 /* UniversalAnalyticsPlugin.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = UniversalAnalyticsPlugin.m; path = "cordova-plugin-google-analytics/UniversalAnalyticsPlugin.m"; sourceTree = "<group>"; }; 4CDFA08638E64E9F9CDB1109 /* CDVStatusBar.m */ = {isa = PBXFileReference; name = "CDVStatusBar.m"; path = "cordova-plugin-statusbar/CDVStatusBar.m"; sourceTree = "<group>"; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; 80A8B3832B6347E09B3FB7EF /* CDVStatusBar.h */ = {isa = PBXFileReference; name = "CDVStatusBar.h"; path = "cordova-plugin-statusbar/CDVStatusBar.h"; sourceTree = "<group>"; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + 5EC39C5B4DAE4FAD8CF8695D /* AppDelegate+FirebasePlugin.m */ = {isa = PBXFileReference; name = "AppDelegate+FirebasePlugin.m"; path = "cordova-plugin-firebase/AppDelegate+FirebasePlugin.m"; sourceTree = "<group>"; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; + 3C3DDD8A49E340CF957F7B1F /* FirebasePlugin.m */ = {isa = PBXFileReference; name = "FirebasePlugin.m"; path = "cordova-plugin-firebase/FirebasePlugin.m"; sourceTree = "<group>"; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; }; + 8214BDBCCC7A406D97F13D14 /* AppDelegate+FirebasePlugin.h */ = {isa = PBXFileReference; name = "AppDelegate+FirebasePlugin.h"; path = "cordova-plugin-firebase/AppDelegate+FirebasePlugin.h"; sourceTree = "<group>"; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + 6733A6B615EC46D9A22EF1BB /* FirebasePlugin.h */ = {isa = PBXFileReference; name = "FirebasePlugin.h"; path = "cordova-plugin-firebase/FirebasePlugin.h"; sourceTree = "<group>"; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + BB95C4F62552438CBF008B58 /* Firebase.h */ = {isa = PBXFileReference; name = "Firebase.h"; path = "cordova-plugin-firebase/Firebase.h"; sourceTree = "<group>"; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; }; + 2C70563D47C64AF3ACAF61E0 /* GoogleService-Info.plist */ = {isa = PBXFileReference; name = "GoogleService-Info.plist"; path = "GoogleService-Info.plist"; sourceTree = "<group>"; fileEncoding = 4; lastKnownFileType = text.plist.xml; explicitFileType = undefined; includeInIndex = 0; }; + F685F82C990346D690E3964A /* FirebaseAnalytics.framework */ = {isa = PBXFileReference; name = "FirebaseAnalytics.framework"; path = "Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = wrapper.framework; explicitFileType = undefined; includeInIndex = 0; }; + FD9D2163E342476EB5E0C76F /* FirebaseCore.framework */ = {isa = PBXFileReference; name = "FirebaseCore.framework"; path = "Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = wrapper.framework; explicitFileType = undefined; includeInIndex = 0; }; + 07EDF5A22AD84B9A9589735F /* FirebaseInstanceID.framework */ = {isa = PBXFileReference; name = "FirebaseInstanceID.framework"; path = "Stone Island/Plugins/cordova-plugin-firebase/FirebaseInstanceID.framework"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = wrapper.framework; explicitFileType = undefined; includeInIndex = 0; }; + 618739808BC6467DA23E8206 /* GoogleToolboxForMac.framework */ = {isa = PBXFileReference; name = "GoogleToolboxForMac.framework"; path = "Stone Island/Plugins/cordova-plugin-firebase/GoogleToolboxForMac.framework"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = wrapper.framework; explicitFileType = undefined; includeInIndex = 0; }; + 608DE9DAFDE94B8A861130BD /* Protobuf.framework */ = {isa = PBXFileReference; name = "Protobuf.framework"; path = "Stone Island/Plugins/cordova-plugin-firebase/Protobuf.framework"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = wrapper.framework; explicitFileType = undefined; includeInIndex = 0; }; + DC38B894F8C343BCA787D906 /* FirebaseMessaging.framework */ = {isa = PBXFileReference; name = "FirebaseMessaging.framework"; path = "Stone Island/Plugins/cordova-plugin-firebase/FirebaseMessaging.framework"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = wrapper.framework; explicitFileType = undefined; includeInIndex = 0; }; + 0710864CDF044948B1C18450 /* FirebaseCrash.framework */ = {isa = PBXFileReference; name = "FirebaseCrash.framework"; path = "Stone Island/Plugins/cordova-plugin-firebase/FirebaseCrash.framework"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = wrapper.framework; explicitFileType = undefined; includeInIndex = 0; }; + 4398FE67A32F4A6CA63E3979 /* FirebaseRemoteConfig.framework */ = {isa = PBXFileReference; name = "FirebaseRemoteConfig.framework"; path = "Stone Island/Plugins/cordova-plugin-firebase/FirebaseRemoteConfig.framework"; sourceTree = "<group>"; fileEncoding = undefined; lastKnownFileType = wrapper.framework; explicitFileType = undefined; includeInIndex = 0; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -163,12 +163,14 @@ A9267928B9A04BE29B534458 /* AddressBook.framework in Frameworks */, 36186AA3639F426384682A75 /* libsqlite3.tbd in Frameworks */, F990B4C12C3746EAA8C30F8D /* libz.tbd in Frameworks */, - 600310C41D3B400498A5890B /* libGoogleAnalyticsServices.a in Frameworks */, - C4E60C33635D44649CAAF727 /* libAdIdAccess.a in Frameworks */, - 7739C5D961784F519029D858 /* CoreData.framework in Frameworks */, - D54B6FB071A94BED99CBF7E6 /* AdSupport.framework in Frameworks */, - 6B52986769BB47ED98DF12F6 /* libz.dylib in Frameworks */, - 0245BD3C98FD4F04A11BBCAA /* libsqlite3.dylib in Frameworks */, + 5E621514A94641479C72A50D /* FirebaseAnalytics.framework in Frameworks */, + 1D5CAB42B5DE48328017C472 /* FirebaseCore.framework in Frameworks */, + F5C11F2CB8FA4EDE90455B16 /* FirebaseInstanceID.framework in Frameworks */, + 248907F240C5452893560A33 /* GoogleToolboxForMac.framework in Frameworks */, + AEAE498777844A5280FD25F4 /* Protobuf.framework in Frameworks */, + 605B0C4C903B4FD8B1F0F694 /* FirebaseMessaging.framework in Frameworks */, + 7C872490D5A94AEBBBD1349E /* FirebaseCrash.framework in Frameworks */, + 2082C1FBFC0E43BB8C609980 /* FirebaseRemoteConfig.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -233,6 +235,7 @@ 8D1107310486CEB800E47090 /* Stone Island-Info.plist */, 6AFF5BF81D6E424B00AB3073 /* CDVLaunchScreen.storyboard */, 2F49F2111FC649498658CF3B /* CDVNotification.bundle */, + 2C70563D47C64AF3ACAF61E0 /* GoogleService-Info.plist */, ); name = Resources; path = "Stone Island/Resources"; @@ -251,12 +254,14 @@ 6940DEA5B3084B54B48BD8F1 /* AddressBook.framework */, 014A3BF81C154724B8D195A5 /* libsqlite3.tbd */, 6465D215A1B148A387730F27 /* libz.tbd */, - 281039EFAD1B4A8C90FDC17F /* libGoogleAnalyticsServices.a */, - 92230324A2954C6AADBA989A /* libAdIdAccess.a */, - BBF0272D99FA4D308445B382 /* CoreData.framework */, - A3D8D77BE5A0496891F24BF9 /* AdSupport.framework */, - 5133B28F80C74DA0A4EF900A /* libz.dylib */, - 4A4D6FDE815144E3BC47859B /* libsqlite3.dylib */, + F685F82C990346D690E3964A /* FirebaseAnalytics.framework */, + FD9D2163E342476EB5E0C76F /* FirebaseCore.framework */, + 07EDF5A22AD84B9A9589735F /* FirebaseInstanceID.framework */, + 618739808BC6467DA23E8206 /* GoogleToolboxForMac.framework */, + 608DE9DAFDE94B8A861130BD /* Protobuf.framework */, + DC38B894F8C343BCA787D906 /* FirebaseMessaging.framework */, + 0710864CDF044948B1C18450 /* FirebaseCrash.framework */, + 4398FE67A32F4A6CA63E3979 /* FirebaseRemoteConfig.framework */, ); name = Frameworks; sourceTree = "<group>"; @@ -310,20 +315,13 @@ B195BD92B31445039168DCCC /* PushPlugin.m */, 40CE234F002F419597A039E4 /* AppDelegate+notification.h */, 9AA8E7740E114B6E967452F8 /* PushPlugin.h */, - FFB5E8C21AD14D10A7088119 /* UniversalAnalyticsPlugin.m */, - A37B0133EF7A42B6BAF5F317 /* UniversalAnalyticsPlugin.h */, - 36C6224E10CC4C1DB3DEAAF4 /* GAIDictionaryBuilder.h */, - 1380CC4A1CFE434BB20950B7 /* GAIFields.h */, - 71D1AD5902B0425F8154F30F /* GAILogger.h */, - 9A8A8193C2794F48888355D3 /* GAITrackedViewController.h */, - 7EECC2D2BFEA43FE966814C6 /* GAI.h */, - F52665B1E3624AACB50A72B1 /* GAITracker.h */, - 2953CC1328564E13AE3FE7CD /* GAIEcommerceFields.h */, - CAAD7EE259C942989156C616 /* GAIEcommerceProduct.h */, - 8A49AF7CDE3040039CE14E5A /* GAIEcommerceProductAction.h */, - E2AFABA192234A0E9C198427 /* GAIEcommercePromotion.h */, 4CDFA08638E64E9F9CDB1109 /* CDVStatusBar.m */, 80A8B3832B6347E09B3FB7EF /* CDVStatusBar.h */, + 5EC39C5B4DAE4FAD8CF8695D /* AppDelegate+FirebasePlugin.m */, + 3C3DDD8A49E340CF957F7B1F /* FirebasePlugin.m */, + 8214BDBCCC7A406D97F13D14 /* AppDelegate+FirebasePlugin.h */, + 6733A6B615EC46D9A22EF1BB /* FirebasePlugin.h */, + BB95C4F62552438CBF008B58 /* Firebase.h */, ); name = Plugins; path = "Stone Island/Plugins"; @@ -426,6 +424,7 @@ 0207DA581B56EA530066E2B4 /* Images.xcassets in Resources */, 6AFF5BF91D6E424B00AB3073 /* CDVLaunchScreen.storyboard in Resources */, 099C5D0E05AF43F4B95AAA4A /* CDVNotification.bundle in Resources */, + 0FB747315D6F471689E642F5 /* GoogleService-Info.plist in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -516,8 +515,9 @@ E162E7029FC24C4595D1D82D /* IonicKeyboard.m in Sources */, 35DC9CF8FDC24E6DA829674B /* AppDelegate+notification.m in Sources */, 76C30D264E504728A7F0FD0C /* PushPlugin.m in Sources */, - EE465A3641884122A7088AC5 /* UniversalAnalyticsPlugin.m in Sources */, 9DF0159ECE654EF1921606B9 /* CDVStatusBar.m in Sources */, + BC359FDFB50941649B56E28F /* AppDelegate+FirebasePlugin.m in Sources */, + C866439BEFD34ABD84D2C187 /* FirebasePlugin.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -548,6 +548,14 @@ "$(inherited)", "\"Stone Island/Plugins/com.parse.cordova.core.pushplugin\"", "\"Stone Island/Plugins/com.parse.cordova.core.pushplugin\"", + "\"Stone Island/Plugins/cordova-plugin-firebase\"", + "\"Stone Island/Plugins/cordova-plugin-firebase\"", + "\"Stone Island/Plugins/cordova-plugin-firebase\"", + "\"Stone Island/Plugins/cordova-plugin-firebase\"", + "\"Stone Island/Plugins/cordova-plugin-firebase\"", + "\"Stone Island/Plugins/cordova-plugin-firebase\"", + "\"Stone Island/Plugins/cordova-plugin-firebase\"", + "\"Stone Island/Plugins/cordova-plugin-firebase\"", ); GCC_DYNAMIC_NO_PIC = NO; GCC_OPTIMIZATION_LEVEL = 0; @@ -560,8 +568,6 @@ LD_RUNPATH_SEARCH_PATHS = "@executable_path/Frameworks"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", - "\"$(SRCROOT)/Stone Island/Plugins/cordova-plugin-google-analytics\"", - "\"$(SRCROOT)/Stone Island/Plugins/cordova-plugin-google-analytics\"", ); PRODUCT_BUNDLE_IDENTIFIER = us.okfoc.stoneisland; PRODUCT_NAME = "Stone Island"; @@ -585,6 +591,14 @@ "$(inherited)", "\"Stone Island/Plugins/com.parse.cordova.core.pushplugin\"", "\"Stone Island/Plugins/com.parse.cordova.core.pushplugin\"", + "\"Stone Island/Plugins/cordova-plugin-firebase\"", + "\"Stone Island/Plugins/cordova-plugin-firebase\"", + "\"Stone Island/Plugins/cordova-plugin-firebase\"", + "\"Stone Island/Plugins/cordova-plugin-firebase\"", + "\"Stone Island/Plugins/cordova-plugin-firebase\"", + "\"Stone Island/Plugins/cordova-plugin-firebase\"", + "\"Stone Island/Plugins/cordova-plugin-firebase\"", + "\"Stone Island/Plugins/cordova-plugin-firebase\"", ); GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "Stone Island/Stone Island-Prefix.pch"; @@ -595,8 +609,6 @@ LD_RUNPATH_SEARCH_PATHS = "@executable_path/Frameworks"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", - "\"$(SRCROOT)/Stone Island/Plugins/cordova-plugin-google-analytics\"", - "\"$(SRCROOT)/Stone Island/Plugins/cordova-plugin-google-analytics\"", ); PRODUCT_BUNDLE_IDENTIFIER = us.okfoc.stoneisland; PRODUCT_NAME = "Stone Island"; diff --git a/StoneIsland/platforms/ios/Stone Island.xcworkspace/xcuserdata/user.xcuserdatad/UserInterfaceState.xcuserstate b/StoneIsland/platforms/ios/Stone Island.xcworkspace/xcuserdata/user.xcuserdatad/UserInterfaceState.xcuserstate Binary files differindex c4d6d031..1a91f77a 100644 --- a/StoneIsland/platforms/ios/Stone Island.xcworkspace/xcuserdata/user.xcuserdatad/UserInterfaceState.xcuserstate +++ b/StoneIsland/platforms/ios/Stone Island.xcworkspace/xcuserdata/user.xcuserdatad/UserInterfaceState.xcuserstate diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/AppDelegate+FirebasePlugin.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/AppDelegate+FirebasePlugin.h new file mode 100755 index 00000000..210cbb65 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/AppDelegate+FirebasePlugin.h @@ -0,0 +1,5 @@ +#import "AppDelegate.h"
+
+@interface AppDelegate (FirebasePlugin)
+@property (nonatomic, strong) NSNumber *applicationInBackground;
+@end
diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/AppDelegate+FirebasePlugin.m b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/AppDelegate+FirebasePlugin.m new file mode 100755 index 00000000..c4c45778 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/AppDelegate+FirebasePlugin.m @@ -0,0 +1,132 @@ +#import "AppDelegate+FirebasePlugin.h"
+#import "FirebasePlugin.h"
+#import "Firebase.h"
+#import <objc/runtime.h>
+
+#if defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
+@import UserNotifications;
+#endif
+
+// Implement UNUserNotificationCenterDelegate to receive display notification via APNS for devices
+// running iOS 10 and above. Implement FIRMessagingDelegate to receive data message via FCM for
+// devices running iOS 10 and above.
+#if defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
+@interface AppDelegate () <UNUserNotificationCenterDelegate, FIRMessagingDelegate>
+@end
+#endif
+
+#define kApplicationInBackgroundKey @"applicationInBackground"
+
+@implementation AppDelegate (FirebasePlugin)
+
++ (void)load {
+ Method original = class_getInstanceMethod(self, @selector(application:didFinishLaunchingWithOptions:));
+ Method swizzled = class_getInstanceMethod(self, @selector(application:swizzledDidFinishLaunchingWithOptions:));
+ method_exchangeImplementations(original, swizzled);
+}
+
+- (void)setApplicationInBackground:(NSNumber *)applicationInBackground {
+ objc_setAssociatedObject(self, kApplicationInBackgroundKey, applicationInBackground, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
+}
+
+- (NSNumber *)applicationInBackground {
+ return objc_getAssociatedObject(self, kApplicationInBackgroundKey);
+}
+
+- (BOOL)application:(UIApplication *)application swizzledDidFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
+ [self application:application swizzledDidFinishLaunchingWithOptions:launchOptions];
+
+ if(![FIRApp defaultApp]) {
+ [FIRApp configure];
+ }
+
+ [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(tokenRefreshNotification:)
+ name:kFIRInstanceIDTokenRefreshNotification object:nil];
+
+ self.applicationInBackground = @(YES);
+
+ return YES;
+}
+
+- (void)applicationDidBecomeActive:(UIApplication *)application {
+ [self connectToFcm];
+ self.applicationInBackground = @(NO);
+}
+
+- (void)applicationDidEnterBackground:(UIApplication *)application {
+ [[FIRMessaging messaging] disconnect];
+ self.applicationInBackground = @(YES);
+ NSLog(@"Disconnected from FCM");
+}
+
+- (void)tokenRefreshNotification:(NSNotification *)notification {
+ // Note that this callback will be fired everytime a new token is generated, including the first
+ // time. So if you need to retrieve the token as soon as it is available this is where that
+ // should be done.
+ NSString *refreshedToken = [[FIRInstanceID instanceID] token];
+ NSLog(@"InstanceID token: %@", refreshedToken);
+
+ // Connect to FCM since connection may have failed when attempted before having a token.
+ [self connectToFcm];
+
+ [FirebasePlugin.firebasePlugin sendToken:refreshedToken];
+}
+
+- (void)connectToFcm {
+ [[FIRMessaging messaging] connectWithCompletion:^(NSError * _Nullable error) {
+ if (error != nil) {
+ NSLog(@"Unable to connect to FCM. %@", error);
+ } else {
+ NSLog(@"Connected to FCM.");
+ NSString *refreshedToken = [[FIRInstanceID instanceID] token];
+ NSLog(@"InstanceID token: %@", refreshedToken);
+ }
+ }];
+}
+
+- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
+ NSDictionary *mutableUserInfo = [userInfo mutableCopy];
+
+ [mutableUserInfo setValue:self.applicationInBackground forKey:@"tap"];
+
+ // Pring full message.
+ NSLog(@"%@", mutableUserInfo);
+
+ [FirebasePlugin.firebasePlugin sendNotification:mutableUserInfo];
+}
+
+- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
+ fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
+
+ NSDictionary *mutableUserInfo = [userInfo mutableCopy];
+
+ [mutableUserInfo setValue:self.applicationInBackground forKey:@"tap"];
+
+ // Pring full message.
+ NSLog(@"%@", mutableUserInfo);
+
+ [FirebasePlugin.firebasePlugin sendNotification:mutableUserInfo];
+}
+
+#if defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
+- (void)userNotificationCenter:(UNUserNotificationCenter *)center
+ willPresentNotification:(UNNotification *)notification
+ withCompletionHandler:(void (^)(UNNotificationPresentationOptions))completionHandler {
+ NSDictionary *mutableUserInfo = [notification.request.content.userInfo mutableCopy];
+
+ [mutableUserInfo setValue:self.applicationInBackground forKey:@"tap"];
+
+ // Pring full message.
+ NSLog(@"%@", mutableUserInfo);
+
+ [FirebasePlugin.firebasePlugin sendNotification:mutableUserInfo];
+}
+
+// Receive data message on iOS 10 devices.
+- (void)applicationReceivedRemoteMessage:(FIRMessagingRemoteMessage *)remoteMessage {
+ // Print full message
+ NSLog(@"%@", [remoteMessage appData]);
+}
+#endif
+
+@end
diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/Firebase.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/Firebase.h new file mode 100644 index 00000000..90798a6a --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/Firebase.h @@ -0,0 +1,52 @@ +#import <FirebaseAnalytics/FirebaseAnalytics.h> +#import <FirebaseCore/FirebaseCore.h> + +#if !defined(__has_include) + #error "Firebase.h won't import anything if your compiler doesn't support __has_include. Please \ + import the headers individually." +#else + #if __has_include(<FirebaseAppIndexing/FirebaseAppIndexing.h>) + #import <FirebaseAppIndexing/FirebaseAppIndexing.h> + #endif + + #if __has_include(<FirebaseAuth/FirebaseAuth.h>) + #import <FirebaseAuth/FirebaseAuth.h> + #endif + + #if __has_include(<FirebaseCrash/FirebaseCrash.h>) + #import <FirebaseCrash/FirebaseCrash.h> + #endif + + #if __has_include(<FirebaseDatabase/FirebaseDatabase.h>) + #import <FirebaseDatabase/FirebaseDatabase.h> + #endif + + #if __has_include(<FirebaseDynamicLinks/FirebaseDynamicLinks.h>) + #import <FirebaseDynamicLinks/FirebaseDynamicLinks.h> + #endif + + #if __has_include(<FirebaseInstanceID/FirebaseInstanceID.h>) + #import <FirebaseInstanceID/FirebaseInstanceID.h> + #endif + + #if __has_include(<FirebaseInvites/FirebaseInvites.h>) + #import <FirebaseInvites/FirebaseInvites.h> + #endif + + #if __has_include(<FirebaseMessaging/FirebaseMessaging.h>) + #import <FirebaseMessaging/FirebaseMessaging.h> + #endif + + #if __has_include(<FirebaseRemoteConfig/FirebaseRemoteConfig.h>) + #import <FirebaseRemoteConfig/FirebaseRemoteConfig.h> + #endif + + #if __has_include(<FirebaseStorage/FirebaseStorage.h>) + #import <FirebaseStorage/FirebaseStorage.h> + #endif + + #if __has_include(<GoogleMobileAds/GoogleMobileAds.h>) + #import <GoogleMobileAds/GoogleMobileAds.h> + #endif + +#endif // defined(__has_include) diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/FirebaseAnalytics b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/FirebaseAnalytics Binary files differnew file mode 100755 index 00000000..61f61cd1 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/FirebaseAnalytics diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h new file mode 100755 index 00000000..e3ff4c12 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h @@ -0,0 +1,57 @@ +#import <Foundation/Foundation.h> + +#import "FIRAnalytics.h" + +/** + * Provides App Delegate handlers to be used in your App Delegate. + * + * To save time integrating Firebase Analytics in an application, Firebase Analytics does not + * require delegation implementation from the AppDelegate. Instead this is automatically done by + * Firebase Analytics. Should you choose instead to delegate manually, you can turn off the App + * Delegate Proxy by adding FirebaseAppDelegateProxyEnabled into your app's Info.plist and setting + * it to NO, and adding the methods in this category to corresponding delegation handlers. + * + * To handle Universal Links, you must return YES in + * [UIApplicationDelegate application:didFinishLaunchingWithOptions:]. + */ +@interface FIRAnalytics (AppDelegate) + +/** + * Handles events related to a URL session that are waiting to be processed. + * + * For optimal use of Firebase Analytics, call this method from the + * [UIApplicationDelegate application:handleEventsForBackgroundURLSession:completionHandler] + * method of the app delegate in your app. + * + * @param identifier The identifier of the URL session requiring attention. + * @param completionHandler The completion handler to call when you finish processing the events. + * Calling this completion handler lets the system know that your app's user interface is + * updated and a new snapshot can be taken. + */ ++ (void)handleEventsForBackgroundURLSession:(NSString *)identifier + completionHandler:(void (^)(void))completionHandler; + +/** + * Handles the event when the app is launched by a URL. + * + * Call this method from [UIApplicationDelegate application:openURL:options:] (on iOS 9.0 and + * above), or [UIApplicationDelegate application:openURL:sourceApplication:annotation:] (on iOS 8.x + * and below) in your app. + * + * @param url The URL resource to open. This resource can be a network resource or a file. + */ ++ (void)handleOpenURL:(NSURL *)url; + +/** + * Handles the event when the app receives data associated with user activity that includes a + * Universal Link (on iOS 9.0 and above). + * + * Call this method from [UIApplication continueUserActivity:restorationHandler:] in your app + * delegate (on iOS 9.0 and above). + * + * @param userActivity The activity object containing the data associated with the task the user + * was performing. + */ ++ (void)handleUserActivity:(id)userActivity; + +@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRAnalytics.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRAnalytics.h new file mode 100755 index 00000000..f5023f57 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRAnalytics.h @@ -0,0 +1,102 @@ +#import <Foundation/Foundation.h> + +#import "FIREventNames.h" +#import "FIRParameterNames.h" +#import "FIRUserPropertyNames.h" + +NS_ASSUME_NONNULL_BEGIN + +/// The top level Firebase Analytics singleton that provides methods for logging events and setting +/// user properties. See <a href="http://goo.gl/gz8SLz">the developer guides</a> for general +/// information on using Firebase Analytics in your apps. +@interface FIRAnalytics : NSObject + +/// Logs an app event. The event can have up to 25 parameters. Events with the same name must have +/// the same parameters. Up to 500 event names are supported. Using predefined events and/or +/// parameters is recommended for optimal reporting. +/// +/// The following event names are reserved and cannot be used: +/// <ul> +/// <li>app_clear_data</li> +/// <li>app_remove</li> +/// <li>app_update</li> +/// <li>error</li> +/// <li>first_open</li> +/// <li>in_app_purchase</li> +/// <li>notification_dismiss</li> +/// <li>notification_foreground</li> +/// <li>notification_open</li> +/// <li>notification_receive</li> +/// <li>os_update</li> +/// <li>session_start</li> +/// <li>user_engagement</li> +/// </ul> +/// +/// @param name The name of the event. Should contain 1 to 40 alphanumeric characters or +/// underscores. The name must start with an alphabetic character. Some event names are +/// reserved. See FIREventNames.h for the list of reserved event names. The "firebase_" prefix +/// is reserved and should not be used. Note that event names are case-sensitive and that +/// logging two events whose names differ only in case will result in two distinct events. +/// @param parameters The dictionary of event parameters. Passing nil indicates that the event has +/// no parameters. Parameter names can be up to 40 characters long and must start with an +/// alphabetic character and contain only alphanumeric characters and underscores. Only NSString +/// and NSNumber (signed 64-bit integer and 64-bit floating-point number) parameter types are +/// supported. NSString parameter values can be up to 100 characters long. The "firebase_" +/// prefix is reserved and should not be used for parameter names. ++ (void)logEventWithName:(NSString *)name + parameters:(nullable NSDictionary<NSString *, NSObject *> *)parameters; + +/// Sets a user property to a given value. Up to 25 user property names are supported. Once set, +/// user property values persist throughout the app lifecycle and across sessions. +/// +/// The following user property names are reserved and cannot be used: +/// <ul> +/// <li>first_open_time</li> +/// <li>last_deep_link_referrer</li> +/// <li>user_id</li> +/// </ul> +/// +/// @param value The value of the user property. Values can be up to 36 characters long. Setting the +/// value to nil removes the user property. +/// @param name The name of the user property to set. Should contain 1 to 24 alphanumeric characters +/// or underscores and must start with an alphabetic character. The "firebase_" prefix is +/// reserved and should not be used for user property names. ++ (void)setUserPropertyString:(nullable NSString *)value forName:(NSString *)name; + +/// Sets the user ID property. This feature must be used in accordance with +/// <a href="https://www.google.com/policies/privacy">Google's Privacy Policy</a> +/// +/// @param userID The user ID to ascribe to the user of this app on this device, which must be +/// non-empty and no more than 36 characters long. Setting userID to nil removes the user ID. ++ (void)setUserID:(nullable NSString *)userID; + +/// Sets the current screen name, which specifies the current visual context in your app. This helps +/// identify the areas in your app where users spend their time and how they interact with your app. +/// +/// Note that screen reporting is enabled automatically and records the class name of the current +/// UIViewController for you without requiring you to call this method. If you implement +/// viewDidAppear in your UIViewController but do not call [super viewDidAppear:], that screen class +/// will not be automatically tracked. The class name can optionally be overridden by calling this +/// method in the viewDidAppear callback of your UIViewController and specifying the +/// screenClassOverride parameter. +/// +/// If your app does not use a distinct UIViewController for each screen, you should call this +/// method and specify a distinct screenName each time a new screen is presented to the user. +/// +/// The screen name and screen class remain in effect until the current UIViewController changes or +/// a new call to setScreenName:screenClass: is made. +/// +/// @param screenName The name of the current screen. Should contain 1 to 100 characters. Set to nil +/// to clear the current screen name. +/// @param screenClassOverride The name of the screen class. Should contain 1 to 100 characters. By +/// default this is the class name of the current UIViewController. Set to nil to revert to the +/// default class name. ++ (void)setScreenName:(nullable NSString *)screenName + screenClass:(nullable NSString *)screenClassOverride; + +/// The unique ID for this instance of the application. ++ (NSString *)appInstanceID; + +@end + +NS_ASSUME_NONNULL_END diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRAnalyticsConfiguration.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRAnalyticsConfiguration.h new file mode 100755 index 00000000..dc227a4c --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRAnalyticsConfiguration.h @@ -0,0 +1 @@ +#import <FirebaseCore/FIRAnalyticsConfiguration.h> diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRApp.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRApp.h new file mode 100755 index 00000000..de24da17 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRApp.h @@ -0,0 +1 @@ +#import <FirebaseCore/FIRApp.h> diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRConfiguration.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRConfiguration.h new file mode 100755 index 00000000..be2ff7bf --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRConfiguration.h @@ -0,0 +1 @@ +#import <FirebaseCore/FIRConfiguration.h> diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIREventNames.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIREventNames.h new file mode 100755 index 00000000..3b40eecf --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIREventNames.h @@ -0,0 +1,336 @@ +/// @file FIREventNames.h +/// +/// Predefined event names. +/// +/// An Event is an important occurrence in your app that you want to measure. You can report up to +/// 500 different types of Events per app and you can associate up to 25 unique parameters with each +/// Event type. Some common events are suggested below, but you may also choose to specify custom +/// Event types that are associated with your specific app. Each event type is identified by a +/// unique name. Event names can be up to 40 characters long, may only contain alphanumeric +/// characters and underscores ("_"), and must start with an alphabetic character. The "firebase_" +/// prefix is reserved and should not be used. + +/// Add Payment Info event. This event signifies that a user has submitted their payment information +/// to your app. +static NSString *const kFIREventAddPaymentInfo = @"add_payment_info"; + +/// E-Commerce Add To Cart event. This event signifies that an item was added to a cart for +/// purchase. Add this event to a funnel with kFIREventEcommercePurchase to gauge the effectiveness +/// of your checkout process. Note: If you supply the @c kFIRParameterValue parameter, you must +/// also supply the @c kFIRParameterCurrency parameter so that revenue metrics can be computed +/// accurately. Params: +/// +/// <ul> +/// <li>@c kFIRParameterQuantity (signed 64-bit integer as NSNumber)</li> +/// <li>@c kFIRParameterItemID (NSString)</li> +/// <li>@c kFIRParameterItemName (NSString)</li> +/// <li>@c kFIRParameterItemCategory (NSString)</li> +/// <li>@c kFIRParameterItemLocationID (NSString) (optional)</li> +/// <li>@c kFIRParameterPrice (double as NSNumber) (optional)</li> +/// <li>@c kFIRParameterCurrency (NSString) (optional)</li> +/// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li> +/// <li>@c kFIRParameterOrigin (NSString) (optional)</li> +/// <li>@c kFIRParameterDestination (NSString) (optional)</li> +/// <li>@c kFIRParameterStartDate (NSString) (optional)</li> +/// <li>@c kFIRParameterEndDate (NSString) (optional)</li> +/// </ul> +static NSString *const kFIREventAddToCart = @"add_to_cart"; + +/// E-Commerce Add To Wishlist event. This event signifies that an item was added to a wishlist. +/// Use this event to identify popular gift items in your app. Note: If you supply the +/// @c kFIRParameterValue parameter, you must also supply the @c kFIRParameterCurrency +/// parameter so that revenue metrics can be computed accurately. Params: +/// +/// <ul> +/// <li>@c kFIRParameterQuantity (signed 64-bit integer as NSNumber)</li> +/// <li>@c kFIRParameterItemID (NSString)</li> +/// <li>@c kFIRParameterItemName (NSString)</li> +/// <li>@c kFIRParameterItemCategory (NSString)</li> +/// <li>@c kFIRParameterItemLocationID (NSString) (optional)</li> +/// <li>@c kFIRParameterPrice (double as NSNumber) (optional)</li> +/// <li>@c kFIRParameterCurrency (NSString) (optional)</li> +/// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li> +/// </ul> +static NSString *const kFIREventAddToWishlist = @"add_to_wishlist"; + +/// App Open event. By logging this event when an App is moved to the foreground, developers can +/// understand how often users leave and return during the course of a Session. Although Sessions +/// are automatically reported, this event can provide further clarification around the continuous +/// engagement of app-users. +static NSString *const kFIREventAppOpen = @"app_open"; + +/// E-Commerce Begin Checkout event. This event signifies that a user has begun the process of +/// checking out. Add this event to a funnel with your kFIREventEcommercePurchase event to gauge the +/// effectiveness of your checkout process. Note: If you supply the @c kFIRParameterValue +/// parameter, you must also supply the @c kFIRParameterCurrency parameter so that revenue +/// metrics can be computed accurately. Params: +/// +/// <ul> +/// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li> +/// <li>@c kFIRParameterCurrency (NSString) (optional)</li> +/// <li>@c kFIRParameterTransactionID (NSString) (optional)</li> +/// <li>@c kFIRParameterStartDate (NSString) (optional)</li> +/// <li>@c kFIRParameterEndDate (NSString) (optional)</li> +/// <li>@c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for +/// hotel bookings</li> +/// <li>@c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for +/// hotel bookings</li> +/// <li>@c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional) +/// for travel bookings</li> +/// <li>@c kFIRParameterOrigin (NSString) (optional)</li> +/// <li>@c kFIRParameterDestination (NSString) (optional)</li> +/// <li>@c kFIRParameterTravelClass (NSString) (optional) for travel bookings</li> +/// </ul> +static NSString *const kFIREventBeginCheckout = @"begin_checkout"; + +/// Campaign Detail event. Log this event to supply the referral details of a re-engagement +/// campaign. Note: you must supply at least one of the required parameters kFIRParameterSource, +/// kFIRParameterMedium or kFIRParameterCampaign. Params: +/// +/// <ul> +/// <li>@c kFIRParameterSource (NSString)</li> +/// <li>@c kFIRParameterMedium (NSString)</li> +/// <li>@c kFIRParameterCampaign (NSString)</li> +/// <li>@c kFIRParameterTerm (NSString) (optional)</li> +/// <li>@c kFIRParameterContent (NSString) (optional)</li> +/// <li>@c kFIRParameterAdNetworkClickID (NSString) (optional)</li> +/// <li>@c kFIRParameterCP1 (NSString) (optional)</li> +/// </ul> +static NSString *const kFIREventCampaignDetails = @"campaign_details"; + +/// Earn Virtual Currency event. This event tracks the awarding of virtual currency in your app. Log +/// this along with @c kFIREventSpendVirtualCurrency to better understand your virtual economy. +/// Params: +/// +/// <ul> +/// <li>@c kFIRParameterVirtualCurrencyName (NSString)</li> +/// <li>@c kFIRParameterValue (signed 64-bit integer or double as NSNumber)</li> +/// </ul> +static NSString *const kFIREventEarnVirtualCurrency = @"earn_virtual_currency"; + +/// E-Commerce Purchase event. This event signifies that an item was purchased by a user. Note: +/// This is different from the in-app purchase event, which is reported automatically for App +/// Store-based apps. Note: If you supply the @c kFIRParameterValue parameter, you must also +/// supply the @c kFIRParameterCurrency parameter so that revenue metrics can be computed +/// accurately. Params: +/// +/// <ul> +/// <li>@c kFIRParameterCurrency (NSString) (optional)</li> +/// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li> +/// <li>@c kFIRParameterTransactionID (NSString) (optional)</li> +/// <li>@c kFIRParameterTax (double as NSNumber) (optional)</li> +/// <li>@c kFIRParameterShipping (double as NSNumber) (optional)</li> +/// <li>@c kFIRParameterCoupon (NSString) (optional)</li> +/// <li>@c kFIRParameterLocation (NSString) (optional)</li> +/// <li>@c kFIRParameterStartDate (NSString) (optional)</li> +/// <li>@c kFIRParameterEndDate (NSString) (optional)</li> +/// <li>@c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for +/// hotel bookings</li> +/// <li>@c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for +/// hotel bookings</li> +/// <li>@c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional) +/// for travel bookings</li> +/// <li>@c kFIRParameterOrigin (NSString) (optional)</li> +/// <li>@c kFIRParameterDestination (NSString) (optional)</li> +/// <li>@c kFIRParameterTravelClass (NSString) (optional) for travel bookings</li> +/// </ul> +static NSString *const kFIREventEcommercePurchase = @"ecommerce_purchase"; + +/// Generate Lead event. Log this event when a lead has been generated in the app to understand the +/// efficacy of your install and re-engagement campaigns. Note: If you supply the +/// @c kFIRParameterValue parameter, you must also supply the @c kFIRParameterCurrency +/// parameter so that revenue metrics can be computed accurately. Params: +/// +/// <ul> +/// <li>@c kFIRParameterCurrency (NSString) (optional)</li> +/// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li> +/// </ul> +static NSString *const kFIREventGenerateLead = @"generate_lead"; + +/// Join Group event. Log this event when a user joins a group such as a guild, team or family. Use +/// this event to analyze how popular certain groups or social features are in your app. Params: +/// +/// <ul> +/// <li>@c kFIRParameterGroupID (NSString)</li> +/// </ul> +static NSString *const kFIREventJoinGroup = @"join_group"; + +/// Level Up event. This event signifies that a player has leveled up in your gaming app. It can +/// help you gauge the level distribution of your userbase and help you identify certain levels that +/// are difficult to pass. Params: +/// +/// <ul> +/// <li>@c kFIRParameterLevel (signed 64-bit integer as NSNumber)</li> +/// <li>@c kFIRParameterCharacter (NSString) (optional)</li> +/// </ul> +static NSString *const kFIREventLevelUp = @"level_up"; + +/// Login event. Apps with a login feature can report this event to signify that a user has logged +/// in. +static NSString *const kFIREventLogin = @"login"; + +/// Post Score event. Log this event when the user posts a score in your gaming app. This event can +/// help you understand how users are actually performing in your game and it can help you correlate +/// high scores with certain audiences or behaviors. Params: +/// +/// <ul> +/// <li>@c kFIRParameterScore (signed 64-bit integer as NSNumber)</li> +/// <li>@c kFIRParameterLevel (signed 64-bit integer as NSNumber) (optional)</li> +/// <li>@c kFIRParameterCharacter (NSString) (optional)</li> +/// </ul> +static NSString *const kFIREventPostScore = @"post_score"; + +/// Present Offer event. This event signifies that the app has presented a purchase offer to a user. +/// Add this event to a funnel with the kFIREventAddToCart and kFIREventEcommercePurchase to gauge +/// your conversion process. Note: If you supply the @c kFIRParameterValue parameter, you must +/// also supply the @c kFIRParameterCurrency parameter so that revenue metrics can be computed +/// accurately. Params: +/// +/// <ul> +/// <li>@c kFIRParameterQuantity (signed 64-bit integer as NSNumber)</li> +/// <li>@c kFIRParameterItemID (NSString)</li> +/// <li>@c kFIRParameterItemName (NSString)</li> +/// <li>@c kFIRParameterItemCategory (NSString)</li> +/// <li>@c kFIRParameterItemLocationID (NSString) (optional)</li> +/// <li>@c kFIRParameterPrice (double as NSNumber) (optional)</li> +/// <li>@c kFIRParameterCurrency (NSString) (optional)</li> +/// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li> +/// </ul> +static NSString *const kFIREventPresentOffer = @"present_offer"; + +/// E-Commerce Purchase Refund event. This event signifies that an item purchase was refunded. +/// Note: If you supply the @c kFIRParameterValue parameter, you must also supply the +/// @c kFIRParameterCurrency parameter so that revenue metrics can be computed accurately. +/// Params: +/// +/// <ul> +/// <li>@c kFIRParameterCurrency (NSString) (optional)</li> +/// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li> +/// <li>@c kFIRParameterTransactionID (NSString) (optional)</li> +/// </ul> +static NSString *const kFIREventPurchaseRefund = @"purchase_refund"; + +/// Search event. Apps that support search features can use this event to contextualize search +/// operations by supplying the appropriate, corresponding parameters. This event can help you +/// identify the most popular content in your app. Params: +/// +/// <ul> +/// <li>@c kFIRParameterSearchTerm (NSString)</li> +/// <li>@c kFIRParameterStartDate (NSString) (optional)</li> +/// <li>@c kFIRParameterEndDate (NSString) (optional)</li> +/// <li>@c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for +/// hotel bookings</li> +/// <li>@c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for +/// hotel bookings</li> +/// <li>@c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional) +/// for travel bookings</li> +/// <li>@c kFIRParameterOrigin (NSString) (optional)</li> +/// <li>@c kFIRParameterDestination (NSString) (optional)</li> +/// <li>@c kFIRParameterTravelClass (NSString) (optional) for travel bookings</li> +/// </ul> +static NSString *const kFIREventSearch = @"search"; + +/// Select Content event. This general purpose event signifies that a user has selected some content +/// of a certain type in an app. The content can be any object in your app. This event can help you +/// identify popular content and categories of content in your app. Params: +/// +/// <ul> +/// <li>@c kFIRParameterContentType (NSString)</li> +/// <li>@c kFIRParameterItemID (NSString)</li> +/// </ul> +static NSString *const kFIREventSelectContent = @"select_content"; + +/// Share event. Apps with social features can log the Share event to identify the most viral +/// content. Params: +/// +/// <ul> +/// <li>@c kFIRParameterContentType (NSString)</li> +/// <li>@c kFIRParameterItemID (NSString)</li> +/// </ul> +static NSString *const kFIREventShare = @"share"; + +/// Sign Up event. This event indicates that a user has signed up for an account in your app. The +/// parameter signifies the method by which the user signed up. Use this event to understand the +/// different behaviors between logged in and logged out users. Params: +/// +/// <ul> +/// <li>@c kFIRParameterSignUpMethod (NSString)</li> +/// </ul> +static NSString *const kFIREventSignUp = @"sign_up"; + +/// Spend Virtual Currency event. This event tracks the sale of virtual goods in your app and can +/// help you identify which virtual goods are the most popular objects of purchase. Params: +/// +/// <ul> +/// <li>@c kFIRParameterItemName (NSString)</li> +/// <li>@c kFIRParameterVirtualCurrencyName (NSString)</li> +/// <li>@c kFIRParameterValue (signed 64-bit integer or double as NSNumber)</li> +/// </ul> +static NSString *const kFIREventSpendVirtualCurrency = @"spend_virtual_currency"; + +/// Tutorial Begin event. This event signifies the start of the on-boarding process in your app. Use +/// this in a funnel with kFIREventTutorialComplete to understand how many users complete this +/// process and move on to the full app experience. +static NSString *const kFIREventTutorialBegin = @"tutorial_begin"; + +/// Tutorial End event. Use this event to signify the user's completion of your app's on-boarding +/// process. Add this to a funnel with kFIREventTutorialBegin to gauge the completion rate of your +/// on-boarding process. +static NSString *const kFIREventTutorialComplete = @"tutorial_complete"; + +/// Unlock Achievement event. Log this event when the user has unlocked an achievement in your +/// game. Since achievements generally represent the breadth of a gaming experience, this event can +/// help you understand how many users are experiencing all that your game has to offer. Params: +/// +/// <ul> +/// <li>@c kFIRParameterAchievementID (NSString)</li> +/// </ul> +static NSString *const kFIREventUnlockAchievement = @"unlock_achievement"; + +/// View Item event. This event signifies that some content was shown to the user. This content may +/// be a product, a webpage or just a simple image or text. Use the appropriate parameters to +/// contextualize the event. Use this event to discover the most popular items viewed in your app. +/// Note: If you supply the @c kFIRParameterValue parameter, you must also supply the +/// @c kFIRParameterCurrency parameter so that revenue metrics can be computed accurately. +/// Params: +/// +/// <ul> +/// <li>@c kFIRParameterItemID (NSString)</li> +/// <li>@c kFIRParameterItemName (NSString)</li> +/// <li>@c kFIRParameterItemCategory (NSString)</li> +/// <li>@c kFIRParameterItemLocationID (NSString) (optional)</li> +/// <li>@c kFIRParameterPrice (double as NSNumber) (optional)</li> +/// <li>@c kFIRParameterQuantity (signed 64-bit integer as NSNumber) (optional)</li> +/// <li>@c kFIRParameterCurrency (NSString) (optional)</li> +/// <li>@c kFIRParameterValue (double as NSNumber) (optional)</li> +/// <li>@c kFIRParameterStartDate (NSString) (optional)</li> +/// <li>@c kFIRParameterEndDate (NSString) (optional)</li> +/// <li>@c kFIRParameterFlightNumber (NSString) (optional) for travel bookings</li> +/// <li>@c kFIRParameterNumberOfPassengers (signed 64-bit integer as NSNumber) (optional) +/// for travel bookings</li> +/// <li>@c kFIRParameterNumberOfNights (signed 64-bit integer as NSNumber) (optional) for +/// travel bookings</li> +/// <li>@c kFIRParameterNumberOfRooms (signed 64-bit integer as NSNumber) (optional) for +/// travel bookings</li> +/// <li>@c kFIRParameterOrigin (NSString) (optional)</li> +/// <li>@c kFIRParameterDestination (NSString) (optional)</li> +/// <li>@c kFIRParameterSearchTerm (NSString) (optional) for travel bookings</li> +/// <li>@c kFIRParameterTravelClass (NSString) (optional) for travel bookings</li> +/// </ul> +static NSString *const kFIREventViewItem = @"view_item"; + +/// View Item List event. Log this event when the user has been presented with a list of items of a +/// certain category. Params: +/// +/// <ul> +/// <li>@c kFIRParameterItemCategory (NSString)</li> +/// </ul> +static NSString *const kFIREventViewItemList = @"view_item_list"; + +/// View Search Results event. Log this event when the user has been presented with the results of a +/// search. Params: +/// +/// <ul> +/// <li>@c kFIRParameterSearchTerm (NSString)</li> +/// </ul> +static NSString *const kFIREventViewSearchResults = @"view_search_results"; diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIROptions.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIROptions.h new file mode 100755 index 00000000..126824b0 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIROptions.h @@ -0,0 +1 @@ +#import <FirebaseCore/FIROptions.h> diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRParameterNames.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRParameterNames.h new file mode 100755 index 00000000..a43e3473 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRParameterNames.h @@ -0,0 +1,369 @@ +/// @file FIRParameterNames.h +/// +/// Predefined event parameter names. +/// +/// Params supply information that contextualize Events. You can associate up to 25 unique Params +/// with each Event type. Some Params are suggested below for certain common Events, but you are +/// not limited to these. You may supply extra Params for suggested Events or custom Params for +/// Custom events. Param names can be up to 40 characters long, may only contain alphanumeric +/// characters and underscores ("_"), and must start with an alphabetic character. Param values can +/// be up to 100 characters long. The "firebase_" prefix is reserved and should not be used. + +/// Game achievement ID (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterAchievementID : @"10_matches_won", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterAchievementID = @"achievement_id"; + +/// Ad Network Click ID (NSString). Used for network-specific click IDs which vary in format. +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterAdNetworkClickID : @"1234567", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterAdNetworkClickID = @"aclid"; + +/// The individual campaign name, slogan, promo code, etc. Some networks have pre-defined macro to +/// capture campaign information, otherwise can be populated by developer. Highly Recommended +/// (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterCampaign : @"winter_promotion", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterCampaign = @"campaign"; + +/// Character used in game (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterCharacter : @"beat_boss", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterCharacter = @"character"; + +/// Campaign content (NSString). +static NSString *const kFIRParameterContent = @"content"; + +/// Type of content selected (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterContentType : @"news article", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterContentType = @"content_type"; + +/// Coupon code for a purchasable item (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterCoupon : @"zz123", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterCoupon = @"coupon"; + +/// Campaign custom parameter (NSString). Used as a method of capturing custom data in a campaign. +/// Use varies by network. +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterCP1 : @"custom_data", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterCP1 = @"cp1"; + +/// Purchase currency in 3-letter <a href="http://en.wikipedia.org/wiki/ISO_4217#Active_codes"> +/// ISO_4217</a> format (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterCurrency : @"USD", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterCurrency = @"currency"; + +/// Flight or Travel destination (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterDestination : @"Mountain View, CA", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterDestination = @"destination"; + +/// The arrival date, check-out date or rental end date for the item. This should be in +/// YYYY-MM-DD format (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterEndDate : @"2015-09-14", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterEndDate = @"end_date"; + +/// Flight number for travel events (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterFlightNumber : @"ZZ800", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterFlightNumber = @"flight_number"; + +/// Group/clan/guild ID (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterGroupID : @"g1", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterGroupID = @"group_id"; + +/// Item category (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterItemCategory : @"t-shirts", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterItemCategory = @"item_category"; + +/// Item ID (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterItemID : @"p7654", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterItemID = @"item_id"; + +/// The Google <a href="https://developers.google.com/places/place-id">Place ID</a> (NSString) that +/// corresponds to the associated item. Alternatively, you can supply your own custom Location ID. +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterItemLocationID : @"ChIJiyj437sx3YAR9kUWC8QkLzQ", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterItemLocationID = @"item_location_id"; + +/// Item name (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterItemName : @"abc", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterItemName = @"item_name"; + +/// Level in game (signed 64-bit integer as NSNumber). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterLevel : @(42), +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterLevel = @"level"; + +/// Location (NSString). The Google <a href="https://developers.google.com/places/place-id">Place ID +/// </a> that corresponds to the associated event. Alternatively, you can supply your own custom +/// Location ID. +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterLocation : @"ChIJiyj437sx3YAR9kUWC8QkLzQ", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterLocation = @"location"; + +/// The advertising or marketing medium, for example: cpc, banner, email, push. Highly recommended +/// (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterMedium : @"email", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterMedium = @"medium"; + +/// Number of nights staying at hotel (signed 64-bit integer as NSNumber). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterNumberOfNights : @(3), +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterNumberOfNights = @"number_of_nights"; + +/// Number of passengers traveling (signed 64-bit integer as NSNumber). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterNumberOfPassengers : @(11), +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterNumberOfPassengers = @"number_of_passengers"; + +/// Number of rooms for travel events (signed 64-bit integer as NSNumber). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterNumberOfRooms : @(2), +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterNumberOfRooms = @"number_of_rooms"; + +/// Flight or Travel origin (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterOrigin : @"Mountain View, CA", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterOrigin = @"origin"; + +/// Purchase price (double as NSNumber). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterPrice : @(1.0), +/// kFIRParameterCurrency : @"USD", // e.g. $1.00 USD +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterPrice = @"price"; + +/// Purchase quantity (signed 64-bit integer as NSNumber). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterQuantity : @(1), +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterQuantity = @"quantity"; + +/// Score in game (signed 64-bit integer as NSNumber). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterScore : @(4200), +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterScore = @"score"; + +/// The search string/keywords used (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterSearchTerm : @"periodic table", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterSearchTerm = @"search_term"; + +/// Shipping cost (double as NSNumber). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterShipping : @(9.50), +/// kFIRParameterCurrency : @"USD", // e.g. $9.50 USD +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterShipping = @"shipping"; + +/// Sign up method (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterSignUpMethod : @"google", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterSignUpMethod = @"sign_up_method"; + +/// The origin of your traffic, such as an Ad network (for example, google) or partner (urban +/// airship). Identify the advertiser, site, publication, etc. that is sending traffic to your +/// property. Highly recommended (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterSource : @"InMobi", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterSource = @"source"; + +/// The departure date, check-in date or rental start date for the item. This should be in +/// YYYY-MM-DD format (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterStartDate : @"2015-09-14", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterStartDate = @"start_date"; + +/// Tax amount (double as NSNumber). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterTax : @(1.0), +/// kFIRParameterCurrency : @"USD", // e.g. $1.00 USD +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterTax = @"tax"; + +/// If you're manually tagging keyword campaigns, you should use utm_term to specify the keyword +/// (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterTerm : @"game", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterTerm = @"term"; + +/// A single ID for a ecommerce group transaction (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterTransactionID : @"ab7236dd9823", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterTransactionID = @"transaction_id"; + +/// Travel class (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterTravelClass : @"business", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterTravelClass = @"travel_class"; + +/// A context-specific numeric value which is accumulated automatically for each event type. This is +/// a general purpose parameter that is useful for accumulating a key metric that pertains to an +/// event. Examples include revenue, distance, time and points. Value should be specified as signed +/// 64-bit integer or double as NSNumber. Notes: Values for pre-defined currency-related events +/// (such as @c kFIREventAddToCart) should be supplied using double as NSNumber and must be +/// accompanied by a @c kFIRParameterCurrency parameter. The valid range of accumulated values is +/// [-9,223,372,036,854.77, 9,223,372,036,854.77]. +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterValue : @(3.99), +/// kFIRParameterCurrency : @"USD", // e.g. $3.99 USD +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterValue = @"value"; + +/// Name of virtual currency type (NSString). +/// <pre> +/// NSDictionary *params = @{ +/// kFIRParameterVirtualCurrencyName : @"virtual_currency_name", +/// // ... +/// }; +/// </pre> +static NSString *const kFIRParameterVirtualCurrencyName = @"virtual_currency_name"; diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h new file mode 100755 index 00000000..54cf1c20 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h @@ -0,0 +1,13 @@ +/// @file FIRUserPropertyNames.h +/// +/// Predefined user property names. +/// +/// A UserProperty is an attribute that describes the app-user. By supplying UserProperties, you can +/// later analyze different behaviors of various segments of your userbase. You may supply up to 25 +/// unique UserProperties per app, and you can use the name and value of your choosing for each one. +/// UserProperty names can be up to 24 characters long, may only contain alphanumeric characters and +/// underscores ("_"), and must start with an alphabetic character. UserProperty values can be up to +/// 36 characters long. The "firebase_" prefix is reserved and should not be used. + +/// The method used to sign in. For example, "google", "facebook" or "twitter". +static NSString *const kFIRUserPropertySignUpMethod = @"sign_up_method"; diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h new file mode 100755 index 00000000..3142c97b --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h @@ -0,0 +1,9 @@ +#import "FIRAnalyticsConfiguration.h" +#import "FIRApp.h" +#import "FIRConfiguration.h" +#import "FIROptions.h" +#import "FIRAnalytics+AppDelegate.h" +#import "FIRAnalytics.h" +#import "FIREventNames.h" +#import "FIRParameterNames.h" +#import "FIRUserPropertyNames.h" diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Modules/module.modulemap b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Modules/module.modulemap new file mode 100755 index 00000000..c9bd66bc --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseAnalytics.framework/Modules/module.modulemap @@ -0,0 +1,10 @@ +framework module FirebaseAnalytics { + umbrella header "FirebaseAnalytics.h" + export * + module * { export *} + link "sqlite3" + link "z" + link framework "CoreGraphics" + link framework "Foundation" + link framework "UIKit" +}
\ No newline at end of file diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/FirebaseCore b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/FirebaseCore Binary files differnew file mode 100755 index 00000000..364c6d67 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/FirebaseCore diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Headers/FIRAnalyticsConfiguration.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Headers/FIRAnalyticsConfiguration.h new file mode 100755 index 00000000..667d5a4b --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Headers/FIRAnalyticsConfiguration.h @@ -0,0 +1,38 @@ +#import <Foundation/Foundation.h> + +/** + * This class provides configuration fields for Firebase Analytics. + */ +@interface FIRAnalyticsConfiguration : NSObject + +/** + * Returns the shared instance of FIRAnalyticsConfiguration. + */ ++ (FIRAnalyticsConfiguration *)sharedInstance; + +/** + * Sets the minimum engagement time in seconds required to start a new session. The default value + * is 10 seconds. + */ +- (void)setMinimumSessionInterval:(NSTimeInterval)minimumSessionInterval; + +/** + * Sets the interval of inactivity in seconds that terminates the current session. The default + * value is 1800 seconds (30 minutes). + */ +- (void)setSessionTimeoutInterval:(NSTimeInterval)sessionTimeoutInterval; + +/** + * Sets whether analytics collection is enabled for this app on this device. This setting is + * persisted across app sessions. By default it is enabled. + */ +- (void)setAnalyticsCollectionEnabled:(BOOL)analyticsCollectionEnabled; + +/** + * Deprecated. Sets whether measurement and reporting are enabled for this app on this device. By + * default they are enabled. + */ +- (void)setIsEnabled:(BOOL)isEnabled + DEPRECATED_MSG_ATTRIBUTE("Use setAnalyticsCollectionEnabled: instead."); + +@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Headers/FIRApp.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Headers/FIRApp.h new file mode 100755 index 00000000..263c4bef --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Headers/FIRApp.h @@ -0,0 +1,98 @@ +#import <Foundation/Foundation.h> +#import <UIKit/UIKit.h> + +@class FIROptions; + +NS_ASSUME_NONNULL_BEGIN + +/** A block that takes a BOOL and has no return value. */ +typedef void (^FIRAppVoidBoolCallback)(BOOL success); + +/** + * The entry point of Firebase SDKs. + * + * Initialize and configure FIRApp using +[FIRApp configure] + * or other customized ways as shown below. + * + * The logging system has two modes: default mode and debug mode. In default mode, only logs with + * log level Notice, Warning and Error will be sent to device. In debug mode, all logs will be sent + * to device. The log levels that Firebase uses are consistent with the ASL log levels. + * + * Enable debug mode by passing the -FIRDebugEnabled argument to the application. You can add this + * argument in the application's Xcode scheme. When debug mode is enabled via -FIRDebugEnabled, + * further executions of the application will also be in debug mode. In order to return to default + * mode, you must explicitly disable the debug mode with the application argument -FIRDebugDisabled. + * + * It is also possible to change the default logging level in code by calling setLoggerLevel: on + * the FIRConfiguration interface. + */ +@interface FIRApp : NSObject + +/** + * Configures a default Firebase app. Raises an exception if any configuration step fails. The + * default app is named "__FIRAPP_DEFAULT". This method should be called after the app is launched + * and before using Firebase services. This method is thread safe. + */ ++ (void)configure; + +/** + * Configures the default Firebase app with the provided options. The default app is named + * "__FIRAPP_DEFAULT". Raises an exception if any configuration step fails. This method is thread + * safe. + * + * @param options The Firebase application options used to configure the service. + */ ++ (void)configureWithOptions:(FIROptions *)options; + +/** + * Configures a Firebase app with the given name and options. Raises an exception if any + * configuration step fails. This method is thread safe. + * + * @param name The application's name given by the developer. The name should should only contain + Letters, Numbers and Underscore. + * @param options The Firebase application options used to configure the services. + */ ++ (void)configureWithName:(NSString *)name options:(FIROptions *)options; + +/** + * Returns the default app, or nil if the default app does not exist. + */ ++ (nullable FIRApp *)defaultApp NS_SWIFT_NAME(defaultApp()); + +/** + * Returns a previously created FIRApp instance with the given name, or nil if no such app exists. + * This method is thread safe. + */ ++ (nullable FIRApp *)appNamed:(NSString *)name; + +/** + * Returns the set of all extant FIRApp instances, or nil if there are no FIRApp instances. This + * method is thread safe. + */ ++ (nullable NSDictionary *)allApps; + +/** + * Cleans up the current FIRApp, freeing associated data and returning its name to the pool for + * future use. This method is thread safe. + */ +- (void)deleteApp:(FIRAppVoidBoolCallback)completion; + +/** + * FIRApp instances should not be initialized directly. Call +[FIRApp configure], + * +[FIRApp configureWithOptions:], or +[FIRApp configureWithNames:options:] directly. + */ +- (instancetype)init NS_UNAVAILABLE; + +/** + * Gets the name of this app. + */ +@property(nonatomic, copy, readonly) NSString *name; + +/** + * Gets the options for this app. + */ +@property(nonatomic, readonly) FIROptions *options; + +@end + +NS_ASSUME_NONNULL_END diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Headers/FIRConfiguration.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Headers/FIRConfiguration.h new file mode 100755 index 00000000..a25647b4 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Headers/FIRConfiguration.h @@ -0,0 +1,52 @@ +#import <Foundation/Foundation.h> + +#import "FIRAnalyticsConfiguration.h" +#import "FIRLoggerLevel.h" + +/** + * The log levels used by FIRConfiguration. + */ +typedef NS_ENUM(NSInteger, FIRLogLevel) { + /** Error */ + kFIRLogLevelError __deprecated = 0, + /** Warning */ + kFIRLogLevelWarning __deprecated, + /** Info */ + kFIRLogLevelInfo __deprecated, + /** Debug */ + kFIRLogLevelDebug __deprecated, + /** Assert */ + kFIRLogLevelAssert __deprecated, + /** Max */ + kFIRLogLevelMax __deprecated = kFIRLogLevelAssert +} DEPRECATED_MSG_ATTRIBUTE( + "Use -FIRDebugEnabled and -FIRDebugDisabled or setLoggerLevel. See FIRApp.h for more details."); + +/** + * This interface provides global level properties that the developer can tweak, and the singleton + * of the Firebase Analytics configuration class. + */ +@interface FIRConfiguration : NSObject + +/** Returns the shared configuration object. */ ++ (FIRConfiguration *)sharedInstance; + +/** The configuration class for Firebase Analytics. */ +@property(nonatomic, readwrite) FIRAnalyticsConfiguration *analyticsConfiguration; + +/** Global log level. Defaults to kFIRLogLevelError. */ +@property(nonatomic, readwrite, assign) FIRLogLevel logLevel DEPRECATED_MSG_ATTRIBUTE( + "Use -FIRDebugEnabled and -FIRDebugDisabled or setLoggerLevel. See FIRApp.h for more details."); + +/** + * Sets the logging level for internal Firebase logging. Firebase will only log messages + * that are logged at or below loggerLevel. The messages are logged both to the Xcode + * console and to the device's log. Note that if an app is running from AppStore, it will + * never log above FIRLoggerLevelNotice even if loggerLevel is set to a higher (more verbose) + * setting. + * + * @param loggerLevel The maximum logging level. The default level is set to FIRLoggerLevelNotice. + */ +- (void)setLoggerLevel:(FIRLoggerLevel)loggerLevel; + +@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Headers/FIRLoggerLevel.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Headers/FIRLoggerLevel.h new file mode 100755 index 00000000..ddf683f7 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Headers/FIRLoggerLevel.h @@ -0,0 +1,12 @@ +/** + * The log levels used by internal logging. + */ +typedef NS_ENUM(NSInteger, FIRLoggerLevel) { + FIRLoggerLevelError = 3 /*ASL_LEVEL_ERR*/, + FIRLoggerLevelWarning = 4 /*ASL_LEVEL_WARNING*/, + FIRLoggerLevelNotice = 5 /*ASL_LEVEL_NOTICE*/, + FIRLoggerLevelInfo = 6 /*ASL_LEVEL_INFO*/, + FIRLoggerLevelDebug = 7 /*ASL_LEVEL_DEBUG*/, + FIRLoggerLevelMin = FIRLoggerLevelError, + FIRLoggerLevelMax = FIRLoggerLevelDebug +}; diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Headers/FIROptions.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Headers/FIROptions.h new file mode 100755 index 00000000..083082ab --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Headers/FIROptions.h @@ -0,0 +1,93 @@ +#import <Foundation/Foundation.h> + +/** + * This class provides constant fields of Google APIs. + */ +@interface FIROptions : NSObject<NSCopying> + +/** + * Returns the default options. + */ ++ (FIROptions *)defaultOptions; + +/** + * An iOS API key used for authenticating requests from your app, e.g. + * @"AIzaSyDdVgKwhZl0sTTTLZ7iTmt1r3N2cJLnaDk", used to identify your app to Google servers. + */ +@property(nonatomic, readonly, copy) NSString *APIKey; + +/** + * The OAuth2 client ID for iOS application used to authenticate Google users, for example + * @"12345.apps.googleusercontent.com", used for signing in with Google. + */ +@property(nonatomic, readonly, copy) NSString *clientID; + +/** + * The tracking ID for Google Analytics, e.g. @"UA-12345678-1", used to configure Google Analytics. + */ +@property(nonatomic, readonly, copy) NSString *trackingID; + +/** + * The Project Number from the Google Developer's console, for example @"012345678901", used to + * configure Google Cloud Messaging. + */ +@property(nonatomic, readonly, copy) NSString *GCMSenderID; + +/** + * The Project ID from the Firebase console, for example @"abc-xyz-123". Currently only populated + * when using [FIROptions defaultOptions]. + */ +@property(nonatomic, readonly, copy) NSString *projectID; + +/** + * The Android client ID used in Google AppInvite when an iOS app has its Android version, for + * example @"12345.apps.googleusercontent.com". + */ +@property(nonatomic, readonly, copy) NSString *androidClientID; + +/** + * The Google App ID that is used to uniquely identify an instance of an app. + */ +@property(nonatomic, readonly, copy) NSString *googleAppID; + +/** + * The database root URL, e.g. @"http://abc-xyz-123.firebaseio.com". + */ +@property(nonatomic, readonly, copy) NSString *databaseURL; + +/** + * The URL scheme used to set up Durable Deep Link service. + */ +@property(nonatomic, readwrite, copy) NSString *deepLinkURLScheme; + +/** + * The Google Cloud Storage bucket name, e.g. @"abc-xyz-123.storage.firebase.com". + */ +@property(nonatomic, readonly, copy) NSString *storageBucket; + +/** + * Initializes a customized instance of FIROptions with keys. googleAppID, bundleID and GCMSenderID + * are required. Other keys may required for configuring specific services. + */ +- (instancetype)initWithGoogleAppID:(NSString *)googleAppID + bundleID:(NSString *)bundleID + GCMSenderID:(NSString *)GCMSenderID + APIKey:(NSString *)APIKey + clientID:(NSString *)clientID + trackingID:(NSString *)trackingID + androidClientID:(NSString *)androidClientID + databaseURL:(NSString *)databaseURL + storageBucket:(NSString *)storageBucket + deepLinkURLScheme:(NSString *)deepLinkURLScheme; + +/** + * Initializes a customized instance of FIROptions from the file at the given plist file path. + * For example, + * NSString *filePath = + * [[NSBundle mainBundle] pathForResource:@"GoogleService-Info" ofType:@"plist"]; + * FIROptions *options = [[FIROptions alloc] initWithContentsOfFile:filePath]; + * Returns nil if the plist file does not exist or is invalid. + */ +- (instancetype)initWithContentsOfFile:(NSString *)plistPath; + +@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Headers/FirebaseCore.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Headers/FirebaseCore.h new file mode 100755 index 00000000..52a222f5 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Headers/FirebaseCore.h @@ -0,0 +1,5 @@ +#import "FIRAnalyticsConfiguration.h" +#import "FIRApp.h" +#import "FIRConfiguration.h" +#import "FIRLoggerLevel.h" +#import "FIROptions.h" diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Modules/module.modulemap b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Modules/module.modulemap new file mode 100755 index 00000000..f3db90d8 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCore.framework/Modules/module.modulemap @@ -0,0 +1,8 @@ +framework module FirebaseCore { + umbrella header "FirebaseCore.h" + export * + module * { export *} + link "z" + link framework "Foundation" + link framework "UIKit" +}
\ No newline at end of file diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCrash.framework/FirebaseCrash b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCrash.framework/FirebaseCrash Binary files differnew file mode 100755 index 00000000..7cf08c10 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCrash.framework/FirebaseCrash diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCrash.framework/Headers/FIRCrashLog.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCrash.framework/Headers/FIRCrashLog.h new file mode 100755 index 00000000..ac446a62 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCrash.framework/Headers/FIRCrashLog.h @@ -0,0 +1,164 @@ +#import <Foundation/Foundation.h> + +NS_ASSUME_NONNULL_BEGIN + +/** + * @abstract Logs a message to the Firebase Crash Reporter system. + * + * @discussion This method adds a message to the crash reporter + * logging system. The recent logs will be sent with the crash + * report when the application exits abnormally. Note that the + * timestamp of this message and the timestamp of the console + * message may differ by a few milliseconds. + * + * Messages should be brief as the total size of the message payloads + * is limited by the uploader and may change between releases of the + * crash reporter. Excessively long messages will be truncated + * safely but that will introduce a delay in submitting the message. + * + * @warning Raises an NSInvalidArgumentException if @p format is nil. + * + * @param format A format string. + * + * @param ap A variable argument list. + */ +FOUNDATION_EXTERN NS_FORMAT_FUNCTION(1, 0) +void FIRCrashLogv(NSString *format, va_list ap); + +/** + * @abstract Logs a message to the Firebase Crash Reporter system. + * + * @discussion This method adds a message to the crash reporter + * logging system. The recent logs will be sent with the crash + * report when the application exits abnormally. Note that the + * timestamp of this message and the timestamp of the console + * message may differ by a few milliseconds. + * + * Messages should be brief as the total size of the message payloads + * is limited by the uploader and may change between releases of the + * crash reporter. Excessively long messages will be truncated + * safely but that will introduce a delay in submitting the message. + * + * @warning Raises an NSInvalidArgumentException if @p format is nil. + * + * @param format A format string. + * + * @param ... A comma-separated list of arguments to substitute into + * format. + * + * @see FIRCrashLogv(format, ap) + */ +FOUNDATION_STATIC_INLINE NS_FORMAT_FUNCTION(1, 2) +void FIRCrashLog(NSString *format, ...) { + va_list ap; + + va_start(ap, format); + FIRCrashLogv(format, ap); + va_end(ap); +} + +/** + * @abstract Logs a message to the Firebase Crash Reporter system as + * well as <code>NSLog()</code>. + * + * @discussion This method adds a message to the crash reporter + * logging system. The recent logs will be sent with the crash + * report when the application exits abnormally. Note that the + * timestamp of this message and the timestamp of the console + * message may differ by a few milliseconds. + * + * Messages should be brief as the total size of the message payloads + * is limited by the uploader and may change between releases of the + * crash reporter. Excessively long messages will be truncated + * safely but that will introduce a delay in submitting the message. + * + * @warning Raises an NSInvalidArgumentException if @p format is nil. + * + * @param format A format string. + * + * @param ap A variable argument list. + */ +FOUNDATION_STATIC_INLINE NS_FORMAT_FUNCTION(1, 0) +void FIRCrashNSLogv(NSString *format, va_list ap) { + va_list ap2; + + va_copy(ap2, ap); + NSLogv(format, ap); + FIRCrashLogv(format, ap2); + va_end(ap2); +} + +/** + * @abstract Logs a message to the Firebase Crash Reporter system as + * well as <code>NSLog()</code>. + * + * @discussion This method adds a message to the crash reporter + * logging system. The recent logs will be sent with the crash + * report when the application exits abnormally. Note that the + * timestamp of this message and the timestamp of the console + * message may differ by a few milliseconds. + * + * Messages should be brief as the total size of the message payloads + * is limited by the uploader and may change between releases of the + * crash reporter. Excessively long messages will be truncated + * safely but that will introduce a delay in submitting the message. + * + * @warning Raises an NSInvalidArgumentException if @p format is nil. + * + * @param format A format string. + * + * @param ... A comma-separated list of arguments to substitute into + * format. + * + * @see FIRCrashLogv(format, ap) + */ +FOUNDATION_STATIC_INLINE NS_FORMAT_FUNCTION(1, 2) +void FIRCrashNSLog(NSString *format, ...) { + va_list ap; + + va_start(ap, format); + FIRCrashNSLogv(format, ap); + va_end(ap); +} + +/** + * @abstract Logs a message to the Firebase Crash Reporter system in + * a way that is easily called from Swift code. + * + * @discussion This method adds a message to the crash reporter + * logging system. Similar to FIRCrashLog, but with a call signature + * that is more Swift friendly. Unlike FIRCrashLog, callers + * use string interpolation instead of formatting arguments. + * + * @code + * public func mySwiftFunction() { + * let unexpected_number = 10; + * FIRCrashMessage("This number doesn't seem right: \(unexpected_number)"); + * } + * @endcode + * + * Messages should be brief as the total size of the message payloads + * is limited by the uploader and may change between releases of the + * crash reporter. Excessively long messages will be truncated + * safely but that will introduce a delay in submitting the message. + * + * @param Message A log message + * + * @see FIRCrashLog(format, ...) + */ +FOUNDATION_STATIC_INLINE +void FIRCrashMessage(NSString *message) { + FIRCrashLog(@"%@", message); +} + +NS_ASSUME_NONNULL_END + +#ifdef FIRCRASH_REPLACE_NSLOG +#if defined(DEBUG) || defined(FIRCRASH_LOG_TO_CONSOLE) +#define NSLog(...) FIRCrashNSLog(__VA_ARGS__) +#define NSLogv(...) FIRCrashNSLogv(__VA_ARGS__) +#else +#define NSLog(...) FIRCrashLog(__VA_ARGS__) +#define NSLogv(...) FIRCrashLogv(__VA_ARGS__) +#endif +#endif diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCrash.framework/Headers/FirebaseCrash.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCrash.framework/Headers/FirebaseCrash.h new file mode 100755 index 00000000..18659214 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCrash.framework/Headers/FirebaseCrash.h @@ -0,0 +1 @@ +#import "FIRCrashLog.h" diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCrash.framework/Modules/module.modulemap b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCrash.framework/Modules/module.modulemap new file mode 100755 index 00000000..537a790a --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseCrash.framework/Modules/module.modulemap @@ -0,0 +1,12 @@ +framework module FirebaseCrash { + umbrella header "FirebaseCrash.h" + export * + module * { export *} + link "sqlite3" + link "z" + link framework "CoreGraphics" + link framework "CoreTelephony" + link framework "Foundation" + link framework "SystemConfiguration" + link framework "UIKit" +}
\ No newline at end of file diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseInstanceID.framework/FirebaseInstanceID b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseInstanceID.framework/FirebaseInstanceID Binary files differnew file mode 100755 index 00000000..2ebc6e68 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseInstanceID.framework/FirebaseInstanceID diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseInstanceID.framework/Headers/FIRInstanceID.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseInstanceID.framework/Headers/FIRInstanceID.h new file mode 100755 index 00000000..5ff8372e --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseInstanceID.framework/Headers/FIRInstanceID.h @@ -0,0 +1,245 @@ +#import <Foundation/Foundation.h> + +/** + * @memberof FIRInstanceID + * + * The scope to be used when fetching/deleting a token for Firebase Messaging. + */ +FOUNDATION_EXPORT NSString * __nonnull const kFIRInstanceIDScopeFirebaseMessaging; + +/** + * Called when the system determines that tokens need to be refreshed. + * This method is also called if Instance ID has been reset in which + * case, tokens and FCM topic subscriptions also need to be refreshed. + * + * Instance ID service will throttle the refresh event across all devices + * to control the rate of token updates on application servers. + */ +FOUNDATION_EXPORT NSString * __nonnull const kFIRInstanceIDTokenRefreshNotification; + +/** + * @related FIRInstanceID + * + * The completion handler invoked when the InstanceID token returns. If + * the call fails we return the appropriate `error code` as described below. + * + * @param token The valid token as returned by InstanceID backend. + * + * @param error The error describing why generating a new token + * failed. See the error codes below for a more detailed + * description. + */ +typedef void(^FIRInstanceIDTokenHandler)( NSString * __nullable token, NSError * __nullable error); + + +/** + * @related FIRInstanceID + * + * The completion handler invoked when the InstanceID `deleteToken` returns. If + * the call fails we return the appropriate `error code` as described below + * + * @param error The error describing why deleting the token failed. + * See the error codes below for a more detailed description. + */ +typedef void(^FIRInstanceIDDeleteTokenHandler)(NSError * __nullable error); + +/** + * @related FIRInstanceID + * + * The completion handler invoked when the app identity is created. If the + * identity wasn't created for some reason we return the appropriate error code. + * + * @param identity A valid identity for the app instance, nil if there was an error + * while creating an identity. + * @param error The error if fetching the identity fails else nil. + */ +typedef void(^FIRInstanceIDHandler)(NSString * __nullable identity, NSError * __nullable error); + +/** + * @related FIRInstanceID + * + * The completion handler invoked when the app identity and all the tokens associated + * with it are deleted. Returns a valid error object in case of failure else nil. + * + * @param error The error if deleting the identity and all the tokens associated with + * it fails else nil. + */ +typedef void(^FIRInstanceIDDeleteHandler)(NSError * __nullable error); + +/** + * @enum FIRInstanceIDError + */ +typedef NS_ENUM(NSUInteger, FIRInstanceIDError) { + // Http related errors. + + /// Unknown error. + FIRInstanceIDErrorUnknown = 0, + + /// Auth Error -- GCM couldn't validate request from this client. + FIRInstanceIDErrorAuthentication = 1, + + /// NoAccess -- InstanceID service cannot be accessed. + FIRInstanceIDErrorNoAccess = 2, + + /// Timeout -- Request to InstanceID backend timed out. + FIRInstanceIDErrorTimeout = 3, + + /// Network -- No network available to reach the servers. + FIRInstanceIDErrorNetwork = 4, + + /// OperationInProgress -- Another similar operation in progress, + /// bailing this one. + FIRInstanceIDErrorOperationInProgress = 5, + + /// InvalidRequest -- Some parameters of the request were invalid. + FIRInstanceIDErrorInvalidRequest = 7, +}; + +/** + * The APNS token type for the app. If the token type is set to `UNKNOWN` + * InstanceID will implicitly try to figure out what the actual token type + * is from the provisioning profile. + */ +typedef NS_ENUM(NSInteger, FIRInstanceIDAPNSTokenType) { + /// Unknown token type. + FIRInstanceIDAPNSTokenTypeUnknown, + /// Sandbox token type. + FIRInstanceIDAPNSTokenTypeSandbox, + /// Production token type. + FIRInstanceIDAPNSTokenTypeProd, +}; + +/** + * Instance ID provides a unique identifier for each app instance and a mechanism + * to authenticate and authorize actions (for example, sending a GCM message). + * + * Instance ID is long lived but, may be reset if the device is not used for + * a long time or the Instance ID service detects a problem. + * If Instance ID is reset, the app will be notified via + * `kFIRInstanceIDTokenRefreshNotification`. + * + * If the Instance ID has become invalid, the app can request a new one and + * send it to the app server. + * To prove ownership of Instance ID and to allow servers to access data or + * services associated with the app, call + * `[FIRInstanceID tokenWithAuthorizedEntity:scope:options:handler]`. + */ +@interface FIRInstanceID : NSObject + +/** + * FIRInstanceID. + * + * @return A shared instance of FIRInstanceID. + */ ++ (nonnull instancetype)instanceID NS_SWIFT_NAME(instanceID()); + +/** + * Unavailable. Use +instanceID instead. + */ +- (nonnull instancetype)init __attribute__((unavailable("Use +instanceID instead."))); + +/** + * Set APNS token for the application. This APNS token will be used to register + * with Firebase Messaging using `token` or + * `tokenWithAuthorizedEntity:scope:options:handler`. If the token type is set to + * `FIRInstanceIDAPNSTokenTypeUnknown` InstanceID will read the provisioning profile + * to find out the token type. + * + * @param token The APNS token for the application. + * @param type The APNS token type for the above token. + */ +- (void)setAPNSToken:(nonnull NSData *)token + type:(FIRInstanceIDAPNSTokenType)type; + +#pragma mark - Tokens + +/** + * Returns a Firebase Messaging scoped token for the firebase app. + * + * @return Null Returns null if the device has not yet been registerd with + * Firebase Message else returns a valid token. + */ +- (nullable NSString *)token; + +/** + * Returns a token that authorizes an Entity (example: cloud service) to perform + * an action on behalf of the application identified by Instance ID. + * + * This is similar to an OAuth2 token except, it applies to the + * application instance instead of a user. + * + * This is an asynchronous call. If the token fetching fails for some reason + * we invoke the completion callback with nil `token` and the appropriate + * error. + * + * Note, you can only have one `token` or `deleteToken` call for a given + * authorizedEntity and scope at any point of time. Making another such call with the + * same authorizedEntity and scope before the last one finishes will result in an + * error with code `OperationInProgress`. + * + * @see FIRInstanceID deleteTokenWithAuthorizedEntity:scope:handler: + * + * @param authorizedEntity Entity authorized by the token. + * @param scope Action authorized for authorizedEntity. + * @param options The extra options to be sent with your token request. The + * value for the `apns_token` should be the NSData object + * passed to UIApplication's + * `didRegisterForRemoteNotificationsWithDeviceToken` method. + * All other keys and values in the options dict need to be + * instances of NSString or else they will be discarded. Bundle + * keys starting with 'GCM.' and 'GOOGLE.' are reserved. + * @param handler The callback handler which is invoked when the token is + * successfully fetched. In case of success a valid `token` and + * `nil` error are returned. In case of any error the `token` + * is nil and a valid `error` is returned. The valid error + * codes have been documented above. + */ +- (void)tokenWithAuthorizedEntity:(nonnull NSString *)authorizedEntity + scope:(nonnull NSString *)scope + options:(nullable NSDictionary *)options + handler:(nonnull FIRInstanceIDTokenHandler)handler; + +/** + * Revokes access to a scope (action) for an entity previously + * authorized by `[FIRInstanceID tokenWithAuthorizedEntity:scope:options:handler]`. + * + * This is an asynchronous call. Call this on the main thread since InstanceID lib + * is not thread safe. In case token deletion fails for some reason we invoke the + * `handler` callback passed in with the appropriate error code. + * + * Note, you can only have one `token` or `deleteToken` call for a given + * authorizedEntity and scope at a point of time. Making another such call with the + * same authorizedEntity and scope before the last one finishes will result in an error + * with code `OperationInProgress`. + * + * @param authorizedEntity Entity that must no longer have access. + * @param scope Action that entity is no longer authorized to perform. + * @param handler The handler that is invoked once the unsubscribe call ends. + * In case of error an appropriate error object is returned + * else error is nil. + */ +- (void)deleteTokenWithAuthorizedEntity:(nonnull NSString *)authorizedEntity + scope:(nonnull NSString *)scope + handler:(nonnull FIRInstanceIDDeleteTokenHandler)handler; + +#pragma mark - Identity + +/** + * Asynchronously fetch a stable identifier that uniquely identifies the app + * instance. If the identifier has been revoked or has expired, this method will + * return a new identifier. + * + * + * @param handler The handler to invoke once the identifier has been fetched. + * In case of error an appropriate error object is returned else + * a valid identifier is returned and a valid identifier for the + * application instance. + */ +- (void)getIDWithHandler:(nonnull FIRInstanceIDHandler)handler; + +/** + * Resets Instance ID and revokes all tokens. + */ +- (void)deleteIDWithHandler:(nonnull FIRInstanceIDDeleteHandler)handler; + +@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseInstanceID.framework/Headers/FirebaseInstanceID.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseInstanceID.framework/Headers/FirebaseInstanceID.h new file mode 100755 index 00000000..053ec2b1 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseInstanceID.framework/Headers/FirebaseInstanceID.h @@ -0,0 +1 @@ +#import "FIRInstanceID.h" diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseInstanceID.framework/Modules/module.modulemap b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseInstanceID.framework/Modules/module.modulemap new file mode 100755 index 00000000..267c0356 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseInstanceID.framework/Modules/module.modulemap @@ -0,0 +1,7 @@ +framework module FirebaseInstanceID { + umbrella header "FirebaseInstanceID.h" + export * + module * { export *} + link framework "Foundation" + link framework "UIKit" +}
\ No newline at end of file diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseMessaging.framework/FirebaseMessaging b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseMessaging.framework/FirebaseMessaging Binary files differnew file mode 100755 index 00000000..a0573d06 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseMessaging.framework/FirebaseMessaging diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseMessaging.framework/Headers/FIRMessaging.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseMessaging.framework/Headers/FIRMessaging.h new file mode 100755 index 00000000..a0ae2e90 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseMessaging.framework/Headers/FIRMessaging.h @@ -0,0 +1,227 @@ +#import <Foundation/Foundation.h> + +/** + * The completion handler invoked once the data connection with FIRMessaging is + * established. The data connection is used to send a continous stream of + * data and all the FIRMessaging data notifications arrive through this connection. + * Once the connection is established we invoke the callback with `nil` error. + * Correspondingly if we get an error while trying to establish a connection + * we invoke the handler with an appropriate error object and do an + * exponential backoff to try and connect again unless successful. + * + * @param error The error object if any describing why the data connection + * to FIRMessaging failed. + */ +typedef void(^FIRMessagingConnectCompletion)(NSError * __nullable error); + +/** + * Notification sent when the upstream message has been delivered + * successfully to the server. The notification object will be the messageID + * of the successfully delivered message. + */ +FOUNDATION_EXPORT NSString * __nonnull const FIRMessagingSendSuccessNotification; + +/** + * Notification sent when the upstream message was failed to be sent to the + * server. The notification object will be the messageID of the failed + * message. The userInfo dictionary will contain the relevant error + * information for the failure. + */ +FOUNDATION_EXPORT NSString * __nonnull const FIRMessagingSendErrorNotification; + +/** + * Notification sent when the Firebase messaging server deletes pending + * messages due to exceeded storage limits. This may occur, for example, when + * the device cannot be reached for an extended period of time. + * + * It is recommended to retrieve any missing messages directly from the + * server. + */ +FOUNDATION_EXPORT NSString * __nonnull const FIRMessagingMessagesDeletedNotification; + +/** + * @enum FIRMessagingError + */ +typedef NS_ENUM(NSUInteger, FIRMessagingError) { + /// Unknown error. + FIRMessagingErrorUnknown = 0, + + /// FIRMessaging couldn't validate request from this client. + FIRMessagingErrorAuthentication = 1, + + /// InstanceID service cannot be accessed. + FIRMessagingErrorNoAccess = 2, + + /// Request to InstanceID backend timed out. + FIRMessagingErrorTimeout = 3, + + /// No network available to reach the servers. + FIRMessagingErrorNetwork = 4, + + /// Another similar operation in progress, bailing this one. + FIRMessagingErrorOperationInProgress = 5, + + /// Some parameters of the request were invalid. + FIRMessagingErrorInvalidRequest = 7, +}; + +/// Status for the downstream message received by the app. +typedef NS_ENUM(NSInteger, FIRMessagingMessageStatus) { + /// Unknown status. + FIRMessagingMessageStatusUnknown, + /// New downstream message received by the app. + FIRMessagingMessageStatusNew, +}; + +/// Information about a downstream message received by the app. +@interface FIRMessagingMessageInfo : NSObject + +/// The status of the downstream message +@property(nonatomic, readonly, assign) FIRMessagingMessageStatus status; + +@end + +/** + * A remote data message received by the app via FCM (not just the APNs interface). + * + * This is only for devices running iOS 10 or above. To support devices running iOS 9 or below, use + * the local and remote notifications handlers defined in UIApplicationDelegate protocol. + */ +@interface FIRMessagingRemoteMessage : NSObject + +/// The downstream message received by the application. +@property(nonatomic, readonly, strong, nonnull) NSDictionary *appData; + +@end + +/** + * A protocol to receive data message via FCM for devices running iOS 10 or above. + * + * To support devices running iOS 9 or below, use the local and remote notifications handlers + * defined in UIApplicationDelegate protocol. + */ +@protocol FIRMessagingDelegate <NSObject> + +/// The callback to handle data message received via FCM for devices running iOS 10 or above. +- (void)applicationReceivedRemoteMessage:(nonnull FIRMessagingRemoteMessage *)remoteMessage; + +@end + +/** + * Firebase Messaging lets you reliably deliver messages at no cost. + * + * To send or receive messages, the app must get a + * registration token from FIRInstanceID. This token authorizes an + * app server to send messages to an app instance. + * + * In order to receive FIRMessaging messages, declare `application:didReceiveRemoteNotification:`. + * + * + */ +@interface FIRMessaging : NSObject + +/** + * Delegate to handle remote data messages received via FCM for devices running iOS 10 or above. + */ +@property(nonatomic, weak, nullable) id<FIRMessagingDelegate> remoteMessageDelegate; + +/** + * FIRMessaging + * + * @return An instance of FIRMessaging. + */ ++ (nonnull instancetype)messaging NS_SWIFT_NAME(messaging()); + +/** + * Unavailable. Use +messaging instead. + */ +- (nonnull instancetype)init __attribute__((unavailable("Use +messaging instead."))); + +#pragma mark - Connect + +/** + * Create a FIRMessaging data connection which will be used to send the data notifications + * sent by your server. It will also be used to send ACKS and other messages based + * on the FIRMessaging ACKS and other messages based on the FIRMessaging protocol. + * + * + * @param handler The handler to be invoked once the connection is established. + * If the connection fails we invoke the handler with an + * appropriate error code letting you know why it failed. At + * the same time, FIRMessaging performs exponential backoff to retry + * establishing a connection and invoke the handler when successful. + */ +- (void)connectWithCompletion:(nonnull FIRMessagingConnectCompletion)handler; + +/** + * Disconnect the current FIRMessaging data connection. This stops any attempts to + * connect to FIRMessaging. Calling this on an already disconnected client is a no-op. + * + * Call this before `teardown` when your app is going to the background. + * Since the FIRMessaging connection won't be allowed to live when in background it is + * prudent to close the connection. + */ +- (void)disconnect; + +#pragma mark - Topics + +/** + * Asynchronously subscribes to a topic. + * + * @param topic The name of the topic, for example, @"sports". + */ +- (void)subscribeToTopic:(nonnull NSString *)topic; + +/** + * Asynchronously unsubscribe from a topic. + * + * @param topic The name of the topic, for example @"sports". + */ +- (void)unsubscribeFromTopic:(nonnull NSString *)topic; + +#pragma mark - Upstream + +/** + * Sends an upstream ("device to cloud") message. + * + * The message is queued if we don't have an active connection. + * You can only use the upstream feature if your FCM implementation + * uses the XMPP server protocol. + * + * @param message Key/Value pairs to be sent. Values must be String, any + * other type will be ignored. + * @param to A string identifying the receiver of the message. For FCM + * project IDs the value is `SENDER_ID@gcm.googleapis.com`. + * @param messageID The ID of the message. This is generated by the application. It + * must be unique for each message generated by this application. + * It allows error callbacks and debugging, to uniquely identify + * each message. + * @param ttl The time to live for the message. In case we aren't able to + * send the message before the TTL expires we will send you a + * callback. If 0, we'll attempt to send immediately and return + * an error if we're not connected. Otherwise, the message will + * be queued. As for server-side messages, we don't return an error + * if the message has been dropped because of TTL; this can happen + * on the server side, and it would require extra communication. + */ +- (void)sendMessage:(nonnull NSDictionary *)message + to:(nonnull NSString *)receiver + withMessageID:(nonnull NSString *)messageID + timeToLive:(int64_t)ttl; + +#pragma mark - Analytics + +/** + * Use this to track message delivery and analytics for messages, typically + * when you receive a notification in `application:didReceiveRemoteNotification:`. + * However, you only need to call this if you set the `FirebaseAppDelegateProxyEnabled` + * flag to NO in your Info.plist. If `FirebaseAppDelegateProxyEnabled` is either missing + * or set to YES in your Info.plist, the library will call this automatically. + * + * @param message The downstream message received by the application. + * + * @return Information about the downstream message. + */ +- (nonnull FIRMessagingMessageInfo *)appDidReceiveMessage:(nonnull NSDictionary *)message; + +@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseMessaging.framework/Headers/FirebaseMessaging.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseMessaging.framework/Headers/FirebaseMessaging.h new file mode 100755 index 00000000..ef49e7ff --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseMessaging.framework/Headers/FirebaseMessaging.h @@ -0,0 +1 @@ +#import "FIRMessaging.h" diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseMessaging.framework/Modules/module.modulemap b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseMessaging.framework/Modules/module.modulemap new file mode 100755 index 00000000..80bc59c1 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseMessaging.framework/Modules/module.modulemap @@ -0,0 +1,11 @@ +framework module FirebaseMessaging { + umbrella header "FirebaseMessaging.h" + export * + module * { export *} + link "sqlite3" + link "z" + link framework "CoreGraphics" + link framework "Foundation" + link framework "SystemConfiguration" + link framework "UIKit" +}
\ No newline at end of file diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebasePlugin.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebasePlugin.h new file mode 100755 index 00000000..93542737 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebasePlugin.h @@ -0,0 +1,30 @@ +#import <Cordova/CDV.h>
+#import "AppDelegate.h"
+
+@interface FirebasePlugin : CDVPlugin
++ (FirebasePlugin *) firebasePlugin;
+- (void)getInstanceId:(CDVInvokedUrlCommand*)command;
+- (void)getToken:(CDVInvokedUrlCommand*)command;
+- (void)grantPermission:(CDVInvokedUrlCommand*)command;
+- (void)hasPermission:(CDVInvokedUrlCommand*)command;
+- (void)setBadgeNumber:(CDVInvokedUrlCommand*)command;
+- (void)getBadgeNumber:(CDVInvokedUrlCommand*)command;
+- (void)subscribe:(CDVInvokedUrlCommand*)command;
+- (void)unsubscribe:(CDVInvokedUrlCommand*)command;
+- (void)unregister:(CDVInvokedUrlCommand*)command;
+- (void)onNotificationOpen:(CDVInvokedUrlCommand*)command;
+- (void)onTokenRefresh:(CDVInvokedUrlCommand*)command;
+- (void)sendNotification:(NSDictionary*)userInfo;
+- (void)sendToken:(NSString*)token;
+- (void)logEvent:(CDVInvokedUrlCommand*)command;
+- (void)setScreenName:(CDVInvokedUrlCommand*)command;
+- (void)setUserId:(CDVInvokedUrlCommand*)command;
+- (void)setUserProperty:(CDVInvokedUrlCommand*)command;
+- (void)fetch:(CDVInvokedUrlCommand*)command;
+- (void)activateFetched:(CDVInvokedUrlCommand*)command;
+- (void)getValue:(CDVInvokedUrlCommand*)command;
+@property (nonatomic, copy) NSString *notificationCallbackId;
+@property (nonatomic, copy) NSString *tokenRefreshCallbackId;
+@property (nonatomic, retain) NSMutableArray *notificationStack;
+
+@end
diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebasePlugin.m b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebasePlugin.m new file mode 100644 index 00000000..580fb760 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebasePlugin.m @@ -0,0 +1,331 @@ +#import "FirebasePlugin.h" +#import <Cordova/CDV.h> +#import "AppDelegate.h" +#import "Firebase.h" +@import FirebaseInstanceID; +@import FirebaseMessaging; +@import FirebaseAnalytics; +@import FirebaseRemoteConfig; + +#if defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0 +@import UserNotifications; +#endif + +#ifndef NSFoundationVersionNumber_iOS_9_x_Max +#define NSFoundationVersionNumber_iOS_9_x_Max 1299 +#endif + +@implementation FirebasePlugin + +@synthesize notificationCallbackId; +@synthesize tokenRefreshCallbackId; +@synthesize notificationStack; + +static NSInteger const kNotificationStackSize = 10; +static FirebasePlugin *firebasePlugin; + ++ (FirebasePlugin *) firebasePlugin { + return firebasePlugin; +} + +- (void)pluginInitialize { + NSLog(@"Starting Firebase plugin"); + firebasePlugin = self; +} + +// DEPRECATED - alias of getToken +- (void)getInstanceId:(CDVInvokedUrlCommand *)command { + CDVPluginResult *pluginResult; + + pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString: + [[FIRInstanceID instanceID] token]]; + + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; +} + +- (void)getToken:(CDVInvokedUrlCommand *)command { + CDVPluginResult *pluginResult; + + pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString: + [[FIRInstanceID instanceID] token]]; + + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; +} +- (void)hasPermission:(CDVInvokedUrlCommand *)command +{ + BOOL enabled = NO; + UIApplication *application = [UIApplication sharedApplication]; + if ([[UIApplication sharedApplication] respondsToSelector:@selector(registerUserNotificationSettings:)]) { + enabled = application.currentUserNotificationSettings.types != UIUserNotificationTypeNone; + } else { +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" + enabled = application.enabledRemoteNotificationTypes != UIRemoteNotificationTypeNone; +#pragma GCC diagnostic pop + } + + NSMutableDictionary* message = [NSMutableDictionary dictionaryWithCapacity:1]; + [message setObject:[NSNumber numberWithBool:enabled] forKey:@"isEnabled"]; + CDVPluginResult *commandResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsDictionary:message]; + [self.commandDelegate sendPluginResult:commandResult callbackId:command.callbackId]; +} +- (void)grantPermission:(CDVInvokedUrlCommand *)command { + if (floor(NSFoundationVersionNumber) <= NSFoundationVersionNumber_iOS_9_x_Max) { + if ([[UIApplication sharedApplication]respondsToSelector:@selector(registerUserNotificationSettings:)]) { + UIUserNotificationType notificationTypes = + (UIUserNotificationTypeSound | UIUserNotificationTypeAlert | UIUserNotificationTypeBadge); + UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:notificationTypes categories:nil]; + [[UIApplication sharedApplication] registerUserNotificationSettings:settings]; + [[UIApplication sharedApplication] registerForRemoteNotifications]; + } else { + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wdeprecated-declarations" + [[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound)]; + #pragma GCC diagnostic pop + } + + CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; + return; + } + + + + #if defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0 + BOOL isIOS10 = TRUE; + #else + BOOL isIOS10 = FALSE; + #endif + + + if ( !isIOS10 ) { + [[UIApplication sharedApplication] registerForRemoteNotifications]; + CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; + return; + } + + + + // IOS 10 + UNAuthorizationOptions authOptions = UNAuthorizationOptionAlert|UNAuthorizationOptionSound|UNAuthorizationOptionBadge; + [[UNUserNotificationCenter currentNotificationCenter] + requestAuthorizationWithOptions:authOptions + completionHandler:^(BOOL granted, NSError * _Nullable error) { + + if ( ![NSThread isMainThread] ) { + dispatch_sync(dispatch_get_main_queue(), ^{ + [[UNUserNotificationCenter currentNotificationCenter] setDelegate:self]; + [[FIRMessaging messaging] setRemoteMessageDelegate:self]; + [[UIApplication sharedApplication] registerForRemoteNotifications]; + + CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus: granted ? CDVCommandStatus_OK : CDVCommandStatus_ERROR]; + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; + }); + } + else { + [[UNUserNotificationCenter currentNotificationCenter] setDelegate:self]; + [[FIRMessaging messaging] setRemoteMessageDelegate:self]; + [[UIApplication sharedApplication] registerForRemoteNotifications]; + CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; + } + } + ]; + + return; +} + +- (void)setBadgeNumber:(CDVInvokedUrlCommand *)command { + int number = [[command.arguments objectAtIndex:0] intValue]; + + [self.commandDelegate runInBackground:^{ + [[UIApplication sharedApplication] setApplicationIconBadgeNumber:number]; + + CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; + }]; +} + +- (void)getBadgeNumber:(CDVInvokedUrlCommand *)command { + [self.commandDelegate runInBackground:^{ + long badge = [[UIApplication sharedApplication] applicationIconBadgeNumber]; + + CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsDouble:badge]; + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; + }]; +} + +- (void)subscribe:(CDVInvokedUrlCommand *)command { + NSString* topic = [NSString stringWithFormat:@"/topics/%@", [command.arguments objectAtIndex:0]]; + + [[FIRMessaging messaging] subscribeToTopic: topic]; + + CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; +} + +- (void)unsubscribe:(CDVInvokedUrlCommand *)command { + NSString* topic = [NSString stringWithFormat:@"/topics/%@", [command.arguments objectAtIndex:0]]; + + [[FIRMessaging messaging] unsubscribeFromTopic: topic]; + + CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; +} + +- (void)unregister:(CDVInvokedUrlCommand *)command { + [[FIRInstanceID instanceID] deleteIDWithHandler:^void(NSError *_Nullable error){ + if (error) { + NSLog(@"Unable to delete instance"); + } else { + NSString* currentToken = [[FIRInstanceID instanceID] token]; + if (currentToken != nil) { + [self sendToken:currentToken]; + } + CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; + } + }]; +} + +- (void)onNotificationOpen:(CDVInvokedUrlCommand *)command { + self.notificationCallbackId = command.callbackId; + + if (self.notificationStack != nil && [self.notificationStack count]) { + for (NSDictionary *userInfo in self.notificationStack) { + [self sendNotification:userInfo]; + } + [self.notificationStack removeAllObjects]; + } +} + +- (void)onTokenRefresh:(CDVInvokedUrlCommand *)command { + self.tokenRefreshCallbackId = command.callbackId; + NSString* currentToken = [[FIRInstanceID instanceID] token]; + if (currentToken != nil) { + [self sendToken:currentToken]; + } +} + +- (void)sendNotification:(NSDictionary *)userInfo { + if (self.notificationCallbackId != nil) { + CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsDictionary:userInfo]; + [pluginResult setKeepCallbackAsBool:YES]; + [self.commandDelegate sendPluginResult:pluginResult callbackId:self.notificationCallbackId]; + } else { + if (!self.notificationStack) { + self.notificationStack = [[NSMutableArray alloc] init]; + } + + // stack notifications until a callback has been registered + [self.notificationStack addObject:userInfo]; + + if ([self.notificationStack count] >= kNotificationStackSize) { + [self.notificationStack removeLastObject]; + } + } +} + +- (void)sendToken:(NSString *)token { + if (self.tokenRefreshCallbackId != nil) { + CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString:token]; + [pluginResult setKeepCallbackAsBool:YES]; + [self.commandDelegate sendPluginResult:pluginResult callbackId:self.tokenRefreshCallbackId]; + } +} + +- (void)logEvent:(CDVInvokedUrlCommand *)command { + [self.commandDelegate runInBackground:^{ + NSString* name = [command.arguments objectAtIndex:0]; + NSDictionary* parameters = [command.arguments objectAtIndex:1]; + + [FIRAnalytics logEventWithName:name parameters:parameters]; + + CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; + }]; +} + +- (void)setScreenName:(CDVInvokedUrlCommand *)command { + NSString* name = [command.arguments objectAtIndex:0]; + + [FIRAnalytics setScreenName:name screenClass:NULL]; + + CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; +} + +- (void)setUserId:(CDVInvokedUrlCommand *)command { + [self.commandDelegate runInBackground:^{ + NSString* id = [command.arguments objectAtIndex:0]; + + [FIRAnalytics setUserID:id]; + + CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; + }]; +} + +- (void)setUserProperty:(CDVInvokedUrlCommand *)command { + [self.commandDelegate runInBackground:^{ + NSString* name = [command.arguments objectAtIndex:0]; + NSString* value = [command.arguments objectAtIndex:1]; + + [FIRAnalytics setUserPropertyString:value forName:name]; + + CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; + }]; +} + +- (void)fetch:(CDVInvokedUrlCommand *)command { + [self.commandDelegate runInBackground:^{ + FIRRemoteConfig* remoteConfig = [FIRRemoteConfig remoteConfig]; + + if ([command.arguments count] > 0){ + int expirationDuration = [[command.arguments objectAtIndex:0] intValue]; + + [remoteConfig fetchWithExpirationDuration:expirationDuration completionHandler:^(FIRRemoteConfigFetchStatus status, NSError * _Nullable error) { + if (status == FIRRemoteConfigFetchStatusSuccess) { + CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; + } + }]; + } else { + [remoteConfig fetchWithCompletionHandler:^(FIRRemoteConfigFetchStatus status, NSError * _Nullable error) { + if (status == FIRRemoteConfigFetchStatusSuccess) { + CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; + } + }]; + } + }]; +} + +- (void)activateFetched:(CDVInvokedUrlCommand *)command { + [self.commandDelegate runInBackground:^{ + FIRRemoteConfig* remoteConfig = [FIRRemoteConfig remoteConfig]; + BOOL activated = [remoteConfig activateFetched]; + CDVPluginResult *pluginResult; + if (activated) { + pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; + } else { + pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR]; + } + + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; + }]; +} + +- (void)getValue:(CDVInvokedUrlCommand *)command { + [self.commandDelegate runInBackground:^{ + NSString* key = [command.arguments objectAtIndex:0]; + FIRRemoteConfig* remoteConfig = [FIRRemoteConfig remoteConfig]; + NSString* value = remoteConfig[key].stringValue; + CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString:value]; + [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; + }]; +} + +@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseRemoteConfig.framework/FirebaseRemoteConfig b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseRemoteConfig.framework/FirebaseRemoteConfig Binary files differnew file mode 100755 index 00000000..45637862 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseRemoteConfig.framework/FirebaseRemoteConfig diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseRemoteConfig.framework/Headers/FIRRemoteConfig.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseRemoteConfig.framework/Headers/FIRRemoteConfig.h new file mode 100755 index 00000000..395020ca --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseRemoteConfig.framework/Headers/FIRRemoteConfig.h @@ -0,0 +1,224 @@ +// +// FIRRemoteConfig.h +// Firebase Remote Config service SDK +// Copyright 2016 Google Inc. All rights reserved. +// +#import <Foundation/Foundation.h> + +/// The Firebase Remote Config service default namespace, to be used if the API method does not +/// specify a different namespace. Use the default namespace if configuring from the Google Firebase +/// service. +extern NSString *const __nonnull FIRNamespaceGoogleMobilePlatform; + +/// Key used to manage throttling in NSError user info when the refreshing of Remote Config +/// parameter values (data) is throttled. The value of this key is the elapsed time since 1970, +/// measured in seconds. +extern NSString *const __nonnull FIRRemoteConfigThrottledEndTimeInSecondsKey; + +/// Indicates whether updated data was successfully fetched. +typedef NS_ENUM(NSInteger, FIRRemoteConfigFetchStatus) { + /// Config has never been fetched. + FIRRemoteConfigFetchStatusNoFetchYet, + /// Config fetch succeeded. + FIRRemoteConfigFetchStatusSuccess, + /// Config fetch failed. + FIRRemoteConfigFetchStatusFailure, + /// Config fetch was throttled. + FIRRemoteConfigFetchStatusThrottled, +}; + +/// Remote Config error domain that handles errors when fetching data from the service. +extern NSString *const __nonnull FIRRemoteConfigErrorDomain; +/// Firebase Remote Config service fetch error. +typedef NS_ENUM(NSInteger, FIRRemoteConfigError) { + /// Unknown or no error. + FIRRemoteConfigErrorUnknown = 8001, + /// Frequency of fetch requests exceeds throttled limit. + FIRRemoteConfigErrorThrottled = 8002, + /// Internal error that covers all internal HTTP errors. + FIRRemoteConfigErrorInternalError = 8003, +}; + +/// Enumerated value that indicates the source of Remote Config data. Data can come from +/// the Remote Config service, the DefaultConfig that is available when the app is first installed, +/// or a static initialized value if data is not available from the service or DefaultConfig. +typedef NS_ENUM(NSInteger, FIRRemoteConfigSource) { + FIRRemoteConfigSourceRemote, ///< The data source is the Remote Config service. + FIRRemoteConfigSourceDefault, ///< The data source is the DefaultConfig defined for this app. + FIRRemoteConfigSourceStatic, ///< The data doesn't exist, return a static initialized value. +}; + +/// Completion handler invoked by fetch methods when they get a response from the server. +/// +/// @param status Config fetching status. +/// @param error Error message on failure. +typedef void (^FIRRemoteConfigFetchCompletion)(FIRRemoteConfigFetchStatus status, + NSError *__nullable error); + +#pragma mark - FIRRemoteConfigValue +/// This class provides a wrapper for Remote Config parameter values, with methods to get parameter +/// values as different data types. +@interface FIRRemoteConfigValue : NSObject<NSCopying> +/// Gets the value as a string. +@property(nonatomic, readonly, nullable) NSString *stringValue; +/// Gets the value as a number value. +@property(nonatomic, readonly, nullable) NSNumber *numberValue; +/// Gets the value as a NSData object. +@property(nonatomic, readonly, nonnull) NSData *dataValue; +/// Gets the value as a boolean. +@property(nonatomic, readonly) BOOL boolValue; +/// Identifies the source of the fetched value. +@property(nonatomic, readonly) FIRRemoteConfigSource source; +@end + +#pragma mark - FIRRemoteConfigSettings +/// Firebase Remote Config settings. +@interface FIRRemoteConfigSettings : NSObject +/// Indicates whether Developer Mode is enabled. +@property(nonatomic, readonly) BOOL isDeveloperModeEnabled; +/// Initializes FIRRemoteConfigSettings, which is used to set properties for custom settings. To +/// make custom settings take effect, pass the FIRRemoteConfigSettings instance to the +/// configSettings property of FIRRemoteConfig. +- (nullable FIRRemoteConfigSettings *)initWithDeveloperModeEnabled:(BOOL)developerModeEnabled + NS_DESIGNATED_INITIALIZER; +@end + +#pragma mark - FIRRemoteConfig +/// Firebase Remote Config class. The shared instance method +remoteConfig can be created and used +/// to fetch, activate and read config results and set default config results. +@interface FIRRemoteConfig : NSObject<NSFastEnumeration> +/// Last successful fetch completion time. +@property(nonatomic, readonly, strong, nullable) NSDate *lastFetchTime; +/// Last fetch status. The status can be any enumerated value from FIRRemoteConfigFetchStatus. +@property(nonatomic, readonly, assign) FIRRemoteConfigFetchStatus lastFetchStatus; +/// Config settings are custom settings. +@property(nonatomic, readwrite, strong, nonnull) FIRRemoteConfigSettings *configSettings; + +/// Returns the FIRRemoteConfig instance shared throughout your app. This singleton object contains +/// the complete set of Remote Config parameter values available to the app, including the Active +/// Config and Default Config. This object also caches values fetched from the Remote Config Server +/// until they are copied to the Active Config by calling activateFetched. +/// When you fetch values from the Remote Config Server using the default Firebase namespace +/// service, you should use this class method to create a shared instance of the FIRRemoteConfig +/// object to ensure that your app will function properly with the Remote Config Server and the +/// Firebase service. ++ (nonnull FIRRemoteConfig *)remoteConfig NS_SWIFT_NAME(remoteConfig()); + +/// Unavailable. Use +remoteConfig instead. +- (nonnull instancetype)init __attribute__((unavailable("Use +remoteConfig instead."))); + +#pragma mark - Fetch +/// Fetches Remote Config data with a callback. Call activateFetched to make fetched data available +/// to your app. +/// @param completionHandler Fetch operation callback. +- (void)fetchWithCompletionHandler:(nullable FIRRemoteConfigFetchCompletion)completionHandler; + +/// Fetches Remote Config data and sets a duration that specifies how long config data lasts. +/// Call activateFetched to make fetched data available to your app. +/// @param expirationDuration Duration that defines how long fetched config data is available, in +/// seconds. When the config data expires, a new fetch is required. +/// @param completionHandler Fetch operation callback. +- (void)fetchWithExpirationDuration:(NSTimeInterval)expirationDuration + completionHandler:(nullable FIRRemoteConfigFetchCompletion)completionHandler; + +#pragma mark - Apply +/// Applies Fetched Config data to the Active Config, causing updates to the behavior and appearance +/// of the app to take effect (depending on how config data is used in the app). +/// Returns true if there was a Fetched Config, and it was activated. +/// Returns false if no Fetched Config was found, or the Fetched Config was already activated. +- (BOOL)activateFetched; + +#pragma mark - Get Config +/// Enables access to configuration values by using object subscripting syntax. +/// This is used to get the config value of the default namespace. +/// <pre> +/// // Example: +/// FIRRemoteConfig *config = [FIRRemoteConfig remoteConfig]; +/// FIRRemoteConfigValue *value = config[@"yourKey"]; +/// BOOL b = value.boolValue; +/// NSNumber *number = config[@"yourKey"].numberValue; +/// </pre> +- (nonnull FIRRemoteConfigValue *)objectForKeyedSubscript:(nonnull NSString *)key; + +/// Gets the config value of the default namespace. +/// @param key Config key. +- (nonnull FIRRemoteConfigValue *)configValueForKey:(nullable NSString *)key; + +/// Gets the config value of a given namespace. +/// @param key Config key. +/// @param aNamespace Config results under a given namespace. +- (nonnull FIRRemoteConfigValue *)configValueForKey:(nullable NSString *)key + namespace:(nullable NSString *)aNamespace; + +/// Gets the config value of a given namespace and a given source. +/// @param key Config key. +/// @param aNamespace Config results under a given namespace. +/// @param source Config value source. +- (nonnull FIRRemoteConfigValue *)configValueForKey:(nullable NSString *)key + namespace:(nullable NSString *)aNamespace + source:(FIRRemoteConfigSource)source; + +/// Gets all the parameter keys from a given source and a given namespace. +/// +/// @param source The config data source. +/// @param aNamespace The config data namespace. +/// @return An array of keys under the given source and namespace. +- (nonnull NSArray<NSString *> *)allKeysFromSource:(FIRRemoteConfigSource)source + namespace:(nullable NSString *)aNamespace; + +/// Returns the set of parameter keys that start with the given prefix, from the default namespace +/// in the active config. +/// +/// @param prefix The key prefix to look for. If prefix is nil or empty, returns all the +/// keys. +/// @return The set of parameter keys that start with the specified prefix. +- (nonnull NSSet<NSString *> *)keysWithPrefix:(nullable NSString *)prefix; + +/// Returns the set of parameter keys that start with the given prefix, from the given namespace in +/// the active config. +/// +/// @param prefix The key prefix to look for. If prefix is nil or empty, returns all the +/// keys in the given namespace. +/// @param aNamespace The namespace in which to look up the keys. If the namespace is invalid, +/// returns an empty set. +/// @return The set of parameter keys that start with the specified prefix. +- (nonnull NSSet<NSString *> *)keysWithPrefix:(nullable NSString *)prefix + namespace:(nullable NSString *)aNamespace; + +#pragma mark - Defaults +/// Sets config defaults for parameter keys and values in the default namespace config. +/// +/// @param defaultConfig A dictionary mapping a NSString * key to a NSObject * value. +- (void)setDefaults:(nullable NSDictionary<NSString *, NSObject *> *)defaults; + +/// Sets config defaults for parameter keys and values in the default namespace config. +/// +/// @param defaultConfig A dictionary mapping a NSString * key to a NSObject * value. +/// @param aNamespace Config under a given namespace. +- (void)setDefaults:(nullable NSDictionary<NSString *, NSObject *> *)defaultConfig + namespace:(nullable NSString *)aNamespace; + +/// Sets default configs from plist for default namespace; +/// @param fileName The plist file name, with no file name extension. For example, if the plist file +/// is defaultSamples.plist, call: +/// [[FIRRemoteConfig remoteConfig] setDefaultsFromPlistFileName:@"defaultSamples"]; +- (void)setDefaultsFromPlistFileName:(nullable NSString *)fileName; + +/// Sets default configs from plist for a given namespace; +/// @param fileName The plist file name, with no file name extension. For example, if the plist file +/// is defaultSamples.plist, call: +/// [[FIRRemoteConfig remoteConfig] setDefaultsFromPlistFileName:@"defaultSamples"]; +/// @param aNamespace The namespace where the default config is set. +- (void)setDefaultsFromPlistFileName:(nullable NSString *)fileName + namespace:(nullable NSString *)aNamespace; + +/// Returns the default value of a given key and a given namespace from the default config. +/// +/// @param key The parameter key of default config. +/// @param aNamespace The namespace of default config. +/// @return Returns the default value of the specified key and namespace. Returns +/// nil if the key or namespace doesn't exist in the default config. +- (nullable FIRRemoteConfigValue *)defaultValueForKey:(nullable NSString *)key + namespace:(nullable NSString *)aNamespace; + +@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseRemoteConfig.framework/Headers/FirebaseRemoteConfig.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseRemoteConfig.framework/Headers/FirebaseRemoteConfig.h new file mode 100755 index 00000000..eedc4fce --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseRemoteConfig.framework/Headers/FirebaseRemoteConfig.h @@ -0,0 +1 @@ +#import "FIRRemoteConfig.h" diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseRemoteConfig.framework/Modules/module.modulemap b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseRemoteConfig.framework/Modules/module.modulemap new file mode 100755 index 00000000..a6627f5e --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/FirebaseRemoteConfig.framework/Modules/module.modulemap @@ -0,0 +1,11 @@ +framework module FirebaseRemoteConfig { + umbrella header "FirebaseRemoteConfig.h" + export * + module * { export *} + link "c++" + link "sqlite3" + link "z" + link framework "CoreGraphics" + link framework "Foundation" + link framework "UIKit" +}
\ No newline at end of file diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/GoogleToolboxForMac.framework/GoogleToolboxForMac b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/GoogleToolboxForMac.framework/GoogleToolboxForMac Binary files differnew file mode 100644 index 00000000..345b889c --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/GoogleToolboxForMac.framework/GoogleToolboxForMac diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/Protobuf.framework/Protobuf b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/Protobuf.framework/Protobuf Binary files differnew file mode 100644 index 00000000..546e02ec --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-firebase/Protobuf.framework/Protobuf diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAI.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAI.h deleted file mode 100644 index 7f3f7029..00000000 --- a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAI.h +++ /dev/null @@ -1,192 +0,0 @@ -/*! - @header GAI.h - @abstract Google Analytics iOS SDK Header - @version 3.14 - @copyright Copyright 2015 Google Inc. All rights reserved. - */ - -#import <Foundation/Foundation.h> - -#import "GAILogger.h" -#import "GAITrackedViewController.h" -#import "GAITracker.h" - -typedef NS_ENUM(NSUInteger, GAIDispatchResult) { - kGAIDispatchNoData, - kGAIDispatchGood, - kGAIDispatchError -}; - -/*! Google Analytics product string. */ -extern NSString *const kGAIProduct; - -/*! Google Analytics version string. */ -extern NSString *const kGAIVersion; - -/*! - NSError objects returned by the Google Analytics SDK may have this error domain - to indicate that the error originated in the Google Analytics SDK. - */ -extern NSString *const kGAIErrorDomain; - -/*! Google Analytics error codes. */ -typedef enum { - // This error code indicates that there was no error. Never used. - kGAINoError = 0, - - // This error code indicates that there was a database-related error. - kGAIDatabaseError, - - // This error code indicates that there was a network-related error. - kGAINetworkError, -} GAIErrorCode; - -/*! - Google Analytics iOS top-level class. Provides facilities to create trackers - and set behaviorial flags. - */ -@interface GAI : NSObject - -/*! - For convenience, this class exposes a default tracker instance. - This is initialized to `nil` and will be set to the first tracker that is - instantiated in trackerWithTrackingId:. It may be overridden as desired. - - The GAITrackedViewController class will, by default, use this tracker instance. - */ -@property(nonatomic, assign) id<GAITracker> defaultTracker; - -/*! - The GAILogger to use. - */ -@property(nonatomic, retain) id<GAILogger> logger; - -/*! - When this is true, no tracking information will be gathered; tracking calls - will effectively become no-ops. When set to true, all tracking information that - has not yet been submitted. The value of this flag will be persisted - automatically by the SDK. Developers can optionally use this flag to implement - an opt-out setting in the app to allows users to opt out of Google Analytics - tracking. - - This is set to `NO` the first time the Google Analytics SDK is used on a - device, and is persisted thereafter. - */ -@property(nonatomic, assign) BOOL optOut; - -/*! - If this value is positive, tracking information will be automatically - dispatched every dispatchInterval seconds. Otherwise, tracking information must - be sent manually by calling dispatch. - - By default, this is set to `120`, which indicates tracking information should - be dispatched automatically every 120 seconds. - */ -@property(nonatomic, assign) NSTimeInterval dispatchInterval; - -/*! - When set to true, the SDK will record the currently registered uncaught - exception handler, and then register an uncaught exception handler which tracks - the exceptions that occurred using defaultTracker. If defaultTracker is not - `nil`, this function will track the exception on the tracker and attempt to - dispatch any outstanding tracking information for 5 seconds. It will then call - the previously registered exception handler, if any. When set back to false, - the previously registered uncaught exception handler will be restored. - */ -@property(nonatomic, assign) BOOL trackUncaughtExceptions; - -/*! - When this is 'YES', no tracking information will be sent. Defaults to 'NO'. - */ -@property(nonatomic, assign) BOOL dryRun; - -/*! Get the shared instance of the Google Analytics for iOS class. */ -+ (GAI *)sharedInstance; - -/*! - Creates or retrieves a GAITracker implementation with the specified name and - tracking ID. If the tracker for the specified name does not already exist, then - it will be created and returned; otherwise, the existing tracker will be - returned. If the existing tracker for the respective name has a different - tracking ID, that tracking ID is not changed by this method. If defaultTracker - is not set, it will be set to the tracker instance returned here. - - @param name The name of this tracker. Must not be `nil` or empty. - - @param trackingId The tracking ID to use for this tracker. It should be of - the form `UA-xxxxx-y`. - - @return A GAITracker associated with the specified name. The tracker - can be used to send tracking data to Google Analytics. The first time this - method is called with a particular name, the tracker for that name will be - returned, and subsequent calls with the same name will return the same - instance. It is not necessary to retain the tracker because the tracker will be - retained internally by the library. - - If an error occurs or the name is not valid, this method will return - `nil`. - */ -- (id<GAITracker>)trackerWithName:(NSString *)name - trackingId:(NSString *)trackingId; - -/*! - Creates or retrieves a GAITracker implementation with name equal to - the specified tracking ID. If the tracker for the respective name does not - already exist, it is created, has it's tracking ID set to |trackingId|, - and is returned; otherwise, the existing tracker is returned. If the existing - tracker for the respective name has a different tracking ID, that tracking ID - is not changed by this method. If defaultTracker is not set, it is set to the - tracker instance returned here. - - @param trackingId The tracking ID to use for this tracker. It should be of - the form `UA-xxxxx-y`. The name of the tracker will be the same as trackingID. - - @return A GAITracker associated with the specified trackingID. The tracker - can be used to send tracking data to Google Analytics. The first time this - method is called with a particular trackingID, the tracker for the respective - name will be returned, and subsequent calls with the same trackingID - will return the same instance. It is not necessary to retain the tracker - because the tracker will be retained internally by the library. - - If an error occurs or the trackingId is not valid, this method will return - `nil`. - */ -- (id<GAITracker>)trackerWithTrackingId:(NSString *)trackingId; - -/*! - Remove a tracker from the trackers dictionary. If it is the default tracker, - clears the default tracker as well. - - @param name The name of the tracker. - */ -- (void)removeTrackerByName:(NSString *)name; - -/*! - Dispatches any pending tracking information. - - Note that this does not have any effect on dispatchInterval, and can be used in - conjunction with periodic dispatch. */ -- (void)dispatch; - -/*! - Dispatches the next tracking beacon in the queue, calling completionHandler when - the tracking beacon has either been sent (returning kGAIDispatchGood) or an error has resulted - (returning kGAIDispatchError). If there is no network connection or there is no data to send, - kGAIDispatchNoData is returned. - - Note that calling this method with a non-nil completionHandler disables periodic dispatch. - Periodic dispatch can be reenabled by setting the dispatchInterval to a positive number when - the app resumes from the background. - - Calling this method with a nil completionHandler is the same as calling the dispatch - above. - - This method can be used for background data fetching in iOS 7.0 or later. It would be wise to - call this when the application is exiting to initiate the submission of any unsubmitted - tracking information. - - @param completionHandler The block to run after a single dispatch request. The GAIDispatchResult - param indicates whether the dispatch succeeded, had an error, or had no hits to dispatch. - */ -- (void)dispatchWithCompletionHandler:(void (^)(GAIDispatchResult result))completionHandler; -@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAIDictionaryBuilder.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAIDictionaryBuilder.h deleted file mode 100644 index b8c5fdab..00000000 --- a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAIDictionaryBuilder.h +++ /dev/null @@ -1,217 +0,0 @@ -/*! - @header GAIDictionaryBuilder.h - @abstract Google Analytics iOS SDK Hit Format Header - @copyright Copyright 2013 Google Inc. All rights reserved. - */ - -#import <Foundation/Foundation.h> - -#import "GAIEcommerceProduct.h" -#import "GAIEcommerceProductAction.h" -#import "GAIEcommercePromotion.h" - -/*! - * Helper class to build a dictionary of hit parameters and values. - * <br> - * Examples: - * <code> - * id<GAITracker> t = // get a tracker. - * [t send:[[[GAIDictionaryBuilder createEventWithCategory:@"EventCategory" - * action:@"EventAction" - * label:nil - * value:nil] - * set:@"dimension1" forKey:[GAIFields customDimensionForIndex:1]] build]]; - * </code> - * This will send an event hit type with the specified parameters - * and a custom dimension parameter. - * <br> - * If you want to send a parameter with all hits, set it on GAITracker directly. - * <code> - * [t set:kGAIScreenName value:@"Home"]; - * [t send:[[GAIDictionaryBuilder createSocialWithNetwork:@"Google+" - * action:@"PlusOne" - * target:@"SOME_URL"] build]]; - * [t send:[[GAIDictionaryBuilder createSocialWithNetwork:@"Google+" - * action:@"Share" - * target:@"SOME_POST"] build]]; - * [t send:[[GAIDictionaryBuilder createSocialWithNetwork:@"Google+" - * action:@"HangOut" - * target:@"SOME_CIRCLE"] - * build]]; - * </code> - * You can override a value set on the tracker by adding it to the dictionary. - * <code> - * [t set:kGAIScreenName value:@"Home"]; - * [t send:...]; - * [t send[[[GAIDictionaryBuilder createEventWithCategory:@"click" - * action:@"popup" - * label:nil - * value:nil] - * set:@"popup title" forKey:kGAIScreenName] build]]; - * </code> - * The values set via [GAIDictionaryBuilder set] or - * [GAIDictionaryBuilder setAll] will override any existing values in the - * GAIDictionaryBuilder object (i.e. initialized by - * [GAIDictionaryBuilder createXYZ]). e.g. - * <code> - * GAIDictionaryBuilder *m = - * GAIDictionaryBuilder createTimingWithCategory:@"category" - * interval:@0 - * name:@"name" - * label:nil]; - * [t send:[m.set:@"10" forKey:kGAITimingVar] build]; - * [t send:[m.set:@"20" forKey:kGAITimingVar] build]; - * </code> - */ -@interface GAIDictionaryBuilder : NSObject - -- (GAIDictionaryBuilder *)set:(NSString *)value - forKey:(NSString *)key; - -/*! - * Copies all the name-value pairs from params into this object, ignoring any - * keys that are not NSString and any values that are neither NSString or - * NSNull. - */ -- (GAIDictionaryBuilder *)setAll:(NSDictionary *)params; - -/*! - * Returns the value for the input parameter paramName, or nil if paramName - * is not present. - */ -- (NSString *)get:(NSString *)paramName; - -/*! - * Return an NSMutableDictionary object with all the parameters set in this - */ -- (NSMutableDictionary *)build; - -/*! - * Parses and translates utm campaign parameters to analytics campaign param - * and returns them as a map. - * - * @param urlString url containing utm campaign parameters. - * - * Valid campaign parameters are: - * <ul> - * <li>utm_id</li> - * <li>utm_campaign</li> - * <li>utm_content</li> - * <li>utm_medium</li> - * <li>utm_source</li> - * <li>utm_term</li> - * <li>dclid</li> - * <li>gclid</li> - * <li>gmob_t</li> - * <li>aclid</li> - * <li>anid</li> - * </ul> - * <p> - * Example: - * http://my.site.com/index.html?utm_campaign=wow&utm_source=source - * utm_campaign=wow&utm_source=source. - * <p> - * For more information on auto-tagging, see - * http://support.google.com/googleanalytics/bin/answer.py?hl=en&answer=55590 - * <p> - * For more information on manual tagging, see - * http://support.google.com/googleanalytics/bin/answer.py?hl=en&answer=55518 - */ -- (GAIDictionaryBuilder *)setCampaignParametersFromUrl:(NSString *)urlString; - -/*! - Returns a GAIDictionaryBuilder object with parameters specific to an appview - hit. - - Note that using this method will not set the screen name for followon hits. To - do that you need to call set:kGAIDescription value:<screenName> on the - GAITracker instance. - - This method is deprecated. Use createScreenView instead. - */ -+ (GAIDictionaryBuilder *)createAppView DEPRECATED_MSG_ATTRIBUTE("Use createScreenView instead."); - -/*! - Returns a GAIDictionaryBuilder object with parameters specific to a screenview - hit. - - Note that using this method will not set the screen name for followon hits. To - do that you need to call set:kGAIDescription value:<screenName> on the - GAITracker instance. - */ -+ (GAIDictionaryBuilder *)createScreenView; - -/*! - Returns a GAIDictionaryBuilder object with parameters specific to an event hit. - */ -+ (GAIDictionaryBuilder *)createEventWithCategory:(NSString *)category - action:(NSString *)action - label:(NSString *)label - value:(NSNumber *)value; - -/*! - Returns a GAIDictionaryBuilder object with parameters specific to an exception - hit. - */ -+ (GAIDictionaryBuilder *)createExceptionWithDescription:(NSString *)description - withFatal:(NSNumber *)fatal; - -/*! - Returns a GAIDictionaryBuilder object with parameters specific to an item hit. - */ -+ (GAIDictionaryBuilder *)createItemWithTransactionId:(NSString *)transactionId - name:(NSString *)name - sku:(NSString *)sku - category:(NSString *)category - price:(NSNumber *)price - quantity:(NSNumber *)quantity - currencyCode:(NSString *)currencyCode; - -/*! - Returns a GAIDictionaryBuilder object with parameters specific to a social hit. - */ -+ (GAIDictionaryBuilder *)createSocialWithNetwork:(NSString *)network - action:(NSString *)action - target:(NSString *)target; - -/*! - Returns a GAIDictionaryBuilder object with parameters specific to a timing hit. - */ -+ (GAIDictionaryBuilder *)createTimingWithCategory:(NSString *)category - interval:(NSNumber *)intervalMillis - name:(NSString *)name - label:(NSString *)label; - -/*! - Returns a GAIDictionaryBuilder object with parameters specific to a transaction - hit. - */ -+ (GAIDictionaryBuilder *)createTransactionWithId:(NSString *)transactionId - affiliation:(NSString *)affiliation - revenue:(NSNumber *)revenue - tax:(NSNumber *)tax - shipping:(NSNumber *)shipping - currencyCode:(NSString *)currencyCode; - -/*! - Set the product action field for this hit. - */ -- (GAIDictionaryBuilder *)setProductAction:(GAIEcommerceProductAction *)productAction; - -/*! - Adds a product to this hit. - */ -- (GAIDictionaryBuilder *)addProduct:(GAIEcommerceProduct *)product; - -/*! - Add a product impression to this hit. - */ -- (GAIDictionaryBuilder *)addProductImpression:(GAIEcommerceProduct *)product - impressionList:(NSString *)name - impressionSource:(NSString *)source; - -/*! - Add a promotion to this hit. - */ -- (GAIDictionaryBuilder *)addPromotion:(GAIEcommercePromotion *)promotion; -@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAIEcommerceFields.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAIEcommerceFields.h deleted file mode 100644 index b3ba60ae..00000000 --- a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAIEcommerceFields.h +++ /dev/null @@ -1,124 +0,0 @@ -/*! - @header GAIEcommerceFields.h - @abstract Google Analytics iOS SDK Ecommerce Hit Format Header - @copyright Copyright 2014 Google Inc. All rights reserved. - */ - -#import <Foundation/Foundation.h> - -/*! - This class provides several fields and methods useful as wire format parameters for - Enhanced Ecommerce. See the online developer guides for Enhanced Ecommerce for details - on how to use the Enhanced Ecommerce features. - */ - -// Enhanced Ecommerce Product fields -extern NSString *const kGAIProductId; -extern NSString *const kGAIProductName; -extern NSString *const kGAIProductBrand; -extern NSString *const kGAIProductCategory; -extern NSString *const kGAIProductVariant; -extern NSString *const kGAIProductPrice; -extern NSString *const kGAIProductQuantity; -extern NSString *const kGAIProductCouponCode; -extern NSString *const kGAIProductPosition; - -extern NSString *const kGAIProductAction; - -// product action values -extern NSString *const kGAIPADetail; -extern NSString *const kGAIPAClick; -extern NSString *const kGAIPAAdd; -extern NSString *const kGAIPARemove; -extern NSString *const kGAIPACheckout; -extern NSString *const kGAIPACheckoutOption; -extern NSString *const kGAIPAPurchase; -extern NSString *const kGAIPARefund; - -// product action fields -// used for 'purchase' and 'refund' actions -extern NSString *const kGAIPATransactionId; -extern NSString *const kGAIPAAffiliation; -extern NSString *const kGAIPARevenue; -extern NSString *const kGAIPATax; -extern NSString *const kGAIPAShipping; -extern NSString *const kGAIPACouponCode; -// used for 'checkout' action -extern NSString *const kGAICheckoutStep; -extern NSString *const kGAICheckoutOption; -// used for 'detail' and 'click' actions -extern NSString *const kGAIProductActionList; -extern NSString *const kGAIProductListSource; - -// Enhanced Ecommerce Impressions fields -extern NSString *const kGAIImpressionName; -extern NSString *const kGAIImpressionListSource; -extern NSString *const kGAIImpressionProduct; -extern NSString *const kGAIImpressionProductId; -extern NSString *const kGAIImpressionProductName; -extern NSString *const kGAIImpressionProductBrand; -extern NSString *const kGAIImpressionProductCategory; -extern NSString *const kGAIImpressionProductVariant; -extern NSString *const kGAIImpressionProductPosition; -extern NSString *const kGAIImpressionProductPrice; - -// Enhanced Ecommerce Promotions fields -extern NSString *const kGAIPromotionId; -extern NSString *const kGAIPromotionName; -extern NSString *const kGAIPromotionCreative; -extern NSString *const kGAIPromotionPosition; - -// Promotion actions -extern NSString *const kGAIPromotionAction; -extern NSString *const kGAIPromotionView; -extern NSString *const kGAIPromotionClick; - -@interface GAIEcommerceFields : NSObject - -/*! - Generates an enhanced ecommerce product field. Note that field names generated by - customDimensionForIndex and customMetricForIndex can be used as suffixes. - - @param index the index of the product - @param suffix the product field suffix (such as kGAIProductPrice). - - @return an NSString representing the product field parameter - */ -+ (NSString *)productFieldForIndex:(NSUInteger)index suffix:(NSString *)suffix; - -/*! - Genrates an enhanced ecommerce impression list field name with an index. The return value of - this method should also be used as input to the productImpressionForList method below. - - @param index the index of the impression list - - @return an NSString representing the impression list parameter - */ -+ (NSString *)impressionListForIndex:(NSUInteger)index; - -/*! - Generates an enhanced ecommerce product impression field with the impression list, product index - and product suffix as parameters. The output of the method impressionListForIndex above should be - used as the input list for this method. The output of customDimensionForIndex and - customMetricForIndex can be used as suffixes. - - @param list the impression list for this product impression - @param index the index of this product in the impression list - @param suffix the product impression suffix for this field - - @return an NSString representing this product impression field parameter - */ -+ (NSString *)productImpressionForList:(NSString *)list - index:(NSUInteger)index - suffix:(NSString *)Suffix; - -/*! - Generates an enhanced ecommerce promotion field with an index and suffix. - - @param index the index of the promotion - @param suffix the promotion suffix (such as kGAIPromotionId) - - @return an NSString representing this promotion field paramter - */ -+ (NSString *)promotionForIndex:(NSUInteger)index suffix:(NSString *)suffix; -@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAIEcommerceProduct.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAIEcommerceProduct.h deleted file mode 100644 index 029f7638..00000000 --- a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAIEcommerceProduct.h +++ /dev/null @@ -1,102 +0,0 @@ -/*! - @header GAIEcommerceProduct.h - @abstract Google Analytics iOS SDK Hit Format Header - @copyright Copyright 2014 Google Inc. All rights reserved. - */ - -#import <Foundation/Foundation.h> - -/*! - * Class to construct product related information for a Google Analytics beacon. Use this class to - * report information about products sold by merchants or impressions of products seen by users. - * Instances of this class can be associated with both Product Actions and Product - * Impression Lists. - * <br> - * Typical usage: - * <code> - * [tracker set:kGAIScreenName value:@"MyScreen"]; - * GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createScreenView]; - * GAIEcommerceProduct *product = [[GAIEcommerceProduct alloc] init]; - * [product setId:@""PID-1234""]; - * [product setName:@"Space Monkeys!"]; - * [product setPrice:@100]; - * [product setQuantity:@2]; - * [builder addProductImpression:product impressionList:@"listName"]; - * [tracker send:[builder build]]; - * </code> - */ -@interface GAIEcommerceProduct : NSObject - -/*! - Sets the id that is used to identify a product in GA reports. - */ -- (GAIEcommerceProduct *)setId:(NSString *)productId; - -/*! - Sets the name that is used to indentify the product in GA reports. - */ -- (GAIEcommerceProduct *)setName:(NSString *)productName; - -/*! - Sets the brand associated with the product in GA reports. - */ -- (GAIEcommerceProduct *)setBrand:(NSString *)productBrand; - -/*! - Sets the category associated with the product in GA reports. - */ -- (GAIEcommerceProduct *)setCategory:(NSString *)productCategory; - -/*! - Sets the variant of the product. - */ -- (GAIEcommerceProduct *)setVariant:(NSString *)productVariant; - -/*! - Sets the price of the product. - */ -- (GAIEcommerceProduct *)setPrice:(NSNumber *)productPrice; - -/*! - Sets the quantity of the product. This field is usually not used with product impressions. - */ -- (GAIEcommerceProduct *)setQuantity:(NSNumber *)productQuantity; - -/*! - Sets the coupon code associated with the product. This field is usually not used with product - impressions. - */ -- (GAIEcommerceProduct *)setCouponCode:(NSString *)productCouponCode; - -/*! - Sets the position of the product on the screen/product impression list, etc. - */ -- (GAIEcommerceProduct *)setPosition:(NSNumber *)productPosition; - -/*! - Sets the custom dimension associated with this product. - */ -- (GAIEcommerceProduct *)setCustomDimension:(NSUInteger)index value:(NSString *)value; - -/*! - Sets the custom metric associated with this product. - */ -- (GAIEcommerceProduct *)setCustomMetric:(NSUInteger)index value:(NSNumber *)value; - -/*! - Builds an NSDictionary of fields stored in this instance suitable for a product action. The - index parameter is the index of this product in the product action list. - <br> - Normally, users will have no need to call this method. - */ -- (NSDictionary *)buildWithIndex:(NSUInteger)index; - -/*! - Builds an NSDictionary of fields stored in this instance suitable for an impression list. The - lIndex parameter is the index of the product impression list while the index parameter is the - index of this product in that impression list. - <br> - Normally, users will have no need to call this method. - */ -- (NSDictionary *)buildWithListIndex:(NSUInteger)lIndex index:(NSUInteger)index; -@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAIEcommerceProductAction.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAIEcommerceProductAction.h deleted file mode 100644 index e3da1c15..00000000 --- a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAIEcommerceProductAction.h +++ /dev/null @@ -1,107 +0,0 @@ -/*! - @header GAIProductAction.h - @abstract Google Analytics iOS SDK Hit Format Header - @copyright Copyright 2014 Google Inc. All rights reserved. - */ - -#import <Foundation/Foundation.h> - -/*! - * Class to construct transaction/checkout or other product interaction related information for a - * Google Analytics hit. Use this class to report information about products sold, viewed or - * refunded. This class is intended to be used with GAIDictionaryBuilder. - * <br> - * Typical usage: - * <code> - * [tracker set:kGAIScreenName value:@"MyScreen"]; - * GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createScreenView]; - * GAIEcommerceProductAction *action = [[GAIEcommerceProductAction alloc] init]; - * [action setAction:kGAIPAPurchase]; - * [action setTransactionId:@"TT-1234"]; - * [action setRevenue:@3.14]; - * [action setCouponCode:@"EXTRA100"]; - * [builder setProductAction:action]; - * GAIEcommerceProduct *product = [[GAIEcommerceProduct alloc] init]; - * [product setId:@""PID-1234""]; - * [product setName:@"Space Monkeys!"]; - * [product setPrice:@100]; - * [product setQuantity:@2]; - * [builder addProduct:product]; - * [tracker send:[builder build]]; - * </code> - */ -@interface GAIEcommerceProductAction : NSObject - -/*! - Sets the product action field for this product action. Valid values can be found in - GAIEcommerceFields.h under "product action values". - */ -- (GAIEcommerceProductAction *)setAction:(NSString *)productAction; - -/*! - The unique id associated with the transaction. This value is used for kGAIPAPurchase and - kGAIPARefund product actions. - */ -- (GAIEcommerceProductAction *)setTransactionId:(NSString *)transactionId; - -/*! - Sets the transaction's affiliation value. This value is used for kGAIPAPurchase and - kGAIPARefund product actions. - */ -- (GAIEcommerceProductAction *)setAffiliation:(NSString *)affiliation; - -/*! - Sets the transaction's total revenue. This value is used for kGAIPAPurchase and kGAIPARefund - product actions. - */ -- (GAIEcommerceProductAction *)setRevenue:(NSNumber *)revenue; - -/*! - Sets the transaction's total tax. This value is used for kGAIPAPurchase and kGAIPARefund - product actions. - */ -- (GAIEcommerceProductAction *)setTax:(NSNumber *)tax; - -/*! - Sets the transaction's total shipping costs. This value is used for kGAIPAPurchase and - kGAIPARefund product actions. - */ -- (GAIEcommerceProductAction *)setShipping:(NSNumber *)shipping; - -/*! - Sets the coupon code used in this transaction. This value is used for kGAIPAPurchase and - kGAIPARefund product actions. - */ -- (GAIEcommerceProductAction *)setCouponCode:(NSString *)couponCode; - -/*! - Sets the checkout process's progress. This value is used for kGAICheckout and - kGAICheckoutOptions product actions. - */ -- (GAIEcommerceProductAction *)setCheckoutStep:(NSNumber *)checkoutStep; - -/*! - Sets the option associated with the checkout. This value is used for kGAICheckout and - kGAICheckoutOptions product actions. - */ -- (GAIEcommerceProductAction *)setCheckoutOption:(NSString *)checkoutOption; - -/*! - Sets the list name associated with the products in Google Analytics beacons. This value is - used in kGAIPADetail and kGAIPAClick product actions. - */ -- (GAIEcommerceProductAction *)setProductActionList:(NSString *)productActionList; - -/*! - Sets the list source name associated with the products in Google Analytics beacons. This value - is used in kGAIPADetail and kGAIPAClick product actions. - */ -- (GAIEcommerceProductAction *)setProductListSource:(NSString *)productListSource; - -/*! - Builds an NSDictionary of fields stored in this instance representing this product action. - <br> - Normally, users will have no need to call this method. - */ -- (NSDictionary *)build; -@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAIEcommercePromotion.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAIEcommercePromotion.h deleted file mode 100644 index c7bf25af..00000000 --- a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAIEcommercePromotion.h +++ /dev/null @@ -1,54 +0,0 @@ -/*! - @header GAIEcommercePromotion.h - @abstract Google Analytics iOS SDK Hit Format Header - @copyright Copyright 2014 Google Inc. All rights reserved. - */ - -#import <Foundation/Foundation.h> - -/*! - * Class to construct promotion related fields for Google Analytics hits. The fields from this class - * can be used to represent internal promotions that run within an app, such as banners, banner ads - * etc. - * - * Typical usage: - * <code> - * GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createScreenView]; - * GAIEcommercePromotion *promotion = [[GAIEcommercePromotion alloc] init]; - * [promotion setId:@"PROMO-ID1234"]; - * [promotion setName:@"Home screen banner"]; - * [builder set:kGAIPromotionClick forKey:kGAIPromotionAction]; - * [builder addPromotion:promotion]; - * [tracker send:builder.build]]; - * </code> - */ -@interface GAIEcommercePromotion : NSObject - -/*! - Sets the id that is used to identify a promotion in GA reports. - */ -- (GAIEcommercePromotion *)setId:(NSString *)pid; - -/*! - Sets the name that is used to identify a promotion in GA reports. - */ -- (GAIEcommercePromotion *)setName:(NSString *)name; - -/*! - Sets the name of the creative associated with the promotion. - */ -- (GAIEcommercePromotion *)setCreative:(NSString *)creative; - -/*! - Sets the position of the promotion. - */ -- (GAIEcommercePromotion *)setPosition:(NSString *)position; - -/*! - Builds an NSDictionary of fields stored in this instance. The index parameter is the - index of this promotion in that promotion list. - <br> - Normally, users will have no need to call this method. - */ -- (NSDictionary *)buildWithIndex:(NSUInteger)index; -@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAIFields.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAIFields.h deleted file mode 100644 index e54cef03..00000000 --- a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAIFields.h +++ /dev/null @@ -1,133 +0,0 @@ -/*! - @header GAIFields.h - @abstract Google Analytics iOS SDK Hit Format Header - @copyright Copyright 2013 Google Inc. All rights reserved. - */ - -#import <Foundation/Foundation.h> - -/*! - These fields can be used for the wire format parameter names required by - the |GAITracker| get, set and send methods as well as the set methods in the - |GAIDictionaryBuilder| class. - */ -extern NSString *const kGAIUseSecure; - -extern NSString *const kGAIHitType; -extern NSString *const kGAITrackingId; -extern NSString *const kGAIClientId; -extern NSString *const kGAIDataSource; -extern NSString *const kGAIAnonymizeIp; -extern NSString *const kGAISessionControl; -extern NSString *const kGAIDeviceModelVersion; -extern NSString *const kGAIScreenResolution; -extern NSString *const kGAIViewportSize; -extern NSString *const kGAIEncoding; -extern NSString *const kGAIScreenColors; -extern NSString *const kGAILanguage; -extern NSString *const kGAIJavaEnabled; -extern NSString *const kGAIFlashVersion; -extern NSString *const kGAINonInteraction; -extern NSString *const kGAIReferrer; -extern NSString *const kGAILocation; -extern NSString *const kGAIHostname; -extern NSString *const kGAIPage; -extern NSString *const kGAIDescription; // synonym for kGAIScreenName -extern NSString *const kGAIScreenName; // synonym for kGAIDescription -extern NSString *const kGAITitle; -extern NSString *const kGAIAdMobHitId; -extern NSString *const kGAIAppName; -extern NSString *const kGAIAppVersion; -extern NSString *const kGAIAppId; -extern NSString *const kGAIAppInstallerId; -extern NSString *const kGAIUserId; - -extern NSString *const kGAIEventCategory; -extern NSString *const kGAIEventAction; -extern NSString *const kGAIEventLabel; -extern NSString *const kGAIEventValue; - -extern NSString *const kGAISocialNetwork; -extern NSString *const kGAISocialAction; -extern NSString *const kGAISocialTarget; - -extern NSString *const kGAITransactionId; -extern NSString *const kGAITransactionAffiliation; -extern NSString *const kGAITransactionRevenue; -extern NSString *const kGAITransactionShipping; -extern NSString *const kGAITransactionTax; -extern NSString *const kGAICurrencyCode; - -extern NSString *const kGAIItemPrice; -extern NSString *const kGAIItemQuantity; -extern NSString *const kGAIItemSku; -extern NSString *const kGAIItemName; -extern NSString *const kGAIItemCategory; - -extern NSString *const kGAICampaignSource; -extern NSString *const kGAICampaignMedium; -extern NSString *const kGAICampaignName; -extern NSString *const kGAICampaignKeyword; -extern NSString *const kGAICampaignContent; -extern NSString *const kGAICampaignId; -extern NSString *const kGAICampaignAdNetworkClickId; -extern NSString *const kGAICampaignAdNetworkId; - -extern NSString *const kGAITimingCategory; -extern NSString *const kGAITimingVar; -extern NSString *const kGAITimingValue; -extern NSString *const kGAITimingLabel; - -extern NSString *const kGAIExDescription; -extern NSString *const kGAIExFatal; - -extern NSString *const kGAISampleRate; - -extern NSString *const kGAIIdfa; -extern NSString *const kGAIAdTargetingEnabled; - -// hit types -extern NSString *const kGAIAppView DEPRECATED_MSG_ATTRIBUTE("Use kGAIScreenView instead."); -extern NSString *const kGAIScreenView; -extern NSString *const kGAIEvent; -extern NSString *const kGAISocial; -extern NSString *const kGAITransaction; -extern NSString *const kGAIItem; -extern NSString *const kGAIException; -extern NSString *const kGAITiming; - -/*! - This class provides several fields and methods useful as wire format parameter - names. The methods are used for wire format parameter names that are indexed. - */ - -@interface GAIFields : NSObject - -/*! - Generates the correct parameter name for a content group with an index. - - @param index the index of the content group. - - @return an NSString representing the content group parameter for the index. - */ -+ (NSString *)contentGroupForIndex:(NSUInteger)index; - -/*! - Generates the correct parameter name for a custon dimension with an index. - - @param index the index of the custom dimension. - - @return an NSString representing the custom dimension parameter for the index. - */ -+ (NSString *)customDimensionForIndex:(NSUInteger)index; - -/*! - Generates the correct parameter name for a custom metric with an index. - - @param index the index of the custom metric. - - @return an NSString representing the custom metric parameter for the index. - */ -+ (NSString *)customMetricForIndex:(NSUInteger)index; - -@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAILogger.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAILogger.h deleted file mode 100644 index 06291f2c..00000000 --- a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAILogger.h +++ /dev/null @@ -1,49 +0,0 @@ -/*! - @header GAILogger.h - @abstract Google Analytics iOS SDK Source - @copyright Copyright 2011 Google Inc. All rights reserved. - */ - -#import <Foundation/Foundation.h> - -typedef NS_ENUM(NSUInteger, GAILogLevel) { - kGAILogLevelNone = 0, - kGAILogLevelError = 1, - kGAILogLevelWarning = 2, - kGAILogLevelInfo = 3, - kGAILogLevelVerbose = 4 -}; - -/*! - Protocol to be used for logging debug and informational messages from the SDK. - Implementations of this protocol can be provided to the |GAI| class, - to be used as the logger by the SDK. See the |logger| property in GAI.h. - */ -@protocol GAILogger<NSObject> -@required - -/*! - Only messages of |logLevel| and below are logged. - */ -@property (nonatomic, assign) GAILogLevel logLevel; - -/*! - Logs message with log level |kGAILogLevelVerbose|. - */ -- (void)verbose:(NSString *)message; - -/*! - Logs message with log level |kGAILogLevelInfo|. - */ -- (void)info:(NSString *)message; - -/*! - Logs message with log level |kGAILogLevelWarning|. - */ -- (void)warning:(NSString *)message; - -/*! - Logs message with log level |kGAILogLevelError|. - */ -- (void)error:(NSString *)message; -@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAITrackedViewController.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAITrackedViewController.h deleted file mode 100644 index de19def0..00000000 --- a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAITrackedViewController.h +++ /dev/null @@ -1,33 +0,0 @@ -/*! - @header GAITrackedViewController.h - @abstract Google Analytics for iOS Tracked View Controller Header - @copyright Copyright 2012 Google Inc. All rights reserved. - */ - -#import <Foundation/Foundation.h> -#import <UIKit/UIKit.h> - -@protocol GAITracker; - -/*! - Extends UIViewController to generate Google Analytics screenview calls - whenever the view appears; this is done by overriding the `viewDidAppear:` - method. The screen name must be set for any tracking calls to be made. - - By default, this will use [GAI defaultTracker] for tracking calls, but one can - override this by setting the tracker property. - */ -@interface GAITrackedViewController : UIViewController - -/*! - The tracker on which view tracking calls are be made, or `nil`, in which case - [GAI defaultTracker] will be used. - */ -@property(nonatomic, assign) id<GAITracker> tracker; -/*! - The screen name, for purposes of Google Analytics tracking. If this is `nil`, - no tracking calls will be made. - */ -@property(nonatomic, copy) NSString *screenName; - -@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAITracker.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAITracker.h deleted file mode 100644 index fdc5c5df..00000000 --- a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/GAITracker.h +++ /dev/null @@ -1,57 +0,0 @@ -/*! - @header GAITracker.h - @abstract Google Analytics iOS SDK Tracker Header - @copyright Copyright 2013 Google Inc. All rights reserved. -*/ - -#import <Foundation/Foundation.h> - -/*! - Google Analytics tracking interface. Obtain instances of this interface from - [GAI trackerWithTrackingId:] to track screens, events, transactions, timing, - and exceptions. The implementation of this interface is thread-safe, and no - calls are expected to block or take a long time. All network and disk activity - will take place in the background. - */ -@protocol GAITracker<NSObject> - -/*! - Name of this tracker. - */ -@property(nonatomic, readonly) NSString *name; - -/*! - Allow collection of IDFA and related fields if set to true. Default is false. - */ -@property(nonatomic) BOOL allowIDFACollection; - -/*! - Set a tracking parameter. - - @param parameterName The parameter name. - - @param value The value to set for the parameter. If this is nil, the - value for the parameter will be cleared. - */ -- (void)set:(NSString *)parameterName - value:(NSString *)value; - -/*! - Get a tracking parameter. - - @param parameterName The parameter name. - - @returns The parameter value, or nil if no value for the given parameter is - set. - */ -- (NSString *)get:(NSString *)parameterName; - -/*! - Queue tracking information with the given parameter values. - - @param parameters A map from parameter names to parameter values which will be - set just for this piece of tracking information, or nil for none. - */ -- (void)send:(NSDictionary *)parameters; - -@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/UniversalAnalyticsPlugin.h b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/UniversalAnalyticsPlugin.h deleted file mode 100644 index dde480ac..00000000 --- a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/UniversalAnalyticsPlugin.h +++ /dev/null @@ -1,34 +0,0 @@ -//UniversalAnalyticsPlugin.h -//Created by Daniel Wilson 2013-09-19 - -#import <Foundation/Foundation.h> -#import <Cordova/CDV.h> -#import "GAI.h" - -@interface UniversalAnalyticsPlugin : CDVPlugin { - bool _trackerStarted; - bool _debugMode; - NSMutableDictionary *_customDimensions; -} - -- (void) startTrackerWithId: (CDVInvokedUrlCommand*)command; -- (void) setAllowIDFACollection: (CDVInvokedUrlCommand*) command; -- (void) setUserId: (CDVInvokedUrlCommand*)command; -- (void) setAppVersion: (CDVInvokedUrlCommand*)command; -- (void) getVar: (CDVInvokedUrlCommand*)command; -- (void) setVar: (CDVInvokedUrlCommand*)command; -- (void) dispatch: (CDVInvokedUrlCommand*)command; -- (void) debugMode: (CDVInvokedUrlCommand*)command; -- (void) setOptOut: (CDVInvokedUrlCommand*)command; -- (void) enableUncaughtExceptionReporting: (CDVInvokedUrlCommand*)command; -- (void) addCustomDimension: (CDVInvokedUrlCommand*)command; -- (void) trackEvent: (CDVInvokedUrlCommand*)command; -- (void) trackMetric: (CDVInvokedUrlCommand*)command; -- (void) trackTiming: (CDVInvokedUrlCommand*)command; -- (void) trackView: (CDVInvokedUrlCommand*)command; -- (void) trackException: (CDVInvokedUrlCommand*)command; -- (void) addTransaction: (CDVInvokedUrlCommand*)command; -- (void) addTransactionItem: (CDVInvokedUrlCommand*)command; - -@end - diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/UniversalAnalyticsPlugin.m b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/UniversalAnalyticsPlugin.m deleted file mode 100644 index 12355da6..00000000 --- a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/UniversalAnalyticsPlugin.m +++ /dev/null @@ -1,543 +0,0 @@ -//UniversalAnalyticsPlugin.m -//Created by Daniel Wilson 2013-09-19 - -#import "UniversalAnalyticsPlugin.h" -#import "GAI.h" -#import "GAIDictionaryBuilder.h" -#import "GAIFields.h" - -@implementation UniversalAnalyticsPlugin - -- (void) pluginInitialize -{ - _debugMode = false; - _trackerStarted = false; - _customDimensions = nil; -} - -- (void) startTrackerWithId: (CDVInvokedUrlCommand*)command -{ - [self.commandDelegate runInBackground:^{ - CDVPluginResult* pluginResult = nil; - NSString* accountId = [command.arguments objectAtIndex:0]; - NSNumber* dispatchPeriod = [command.arguments objectAtIndex:1]; - - if ([dispatchPeriod isKindOfClass:[NSNumber class]]) - [GAI sharedInstance].dispatchInterval = [dispatchPeriod doubleValue]; - else - [GAI sharedInstance].dispatchInterval = 30; - - [[GAI sharedInstance] trackerWithTrackingId:accountId]; - - _trackerStarted = true; - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - }]; - /* NSLog(@"successfully started GAI tracker"); */ -} - -- (void) setAllowIDFACollection: (CDVInvokedUrlCommand*) command -{ - CDVPluginResult* pluginResult = nil; - if ( ! _trackerStarted) { - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:@"Tracker not started"]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - return; - } - - id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker]; - tracker.allowIDFACollection = [[command argumentAtIndex:0 withDefault:@(NO)] boolValue]; -} - -- (void) addCustomDimensionsToTracker: (id<GAITracker>)tracker -{ - if (_customDimensions) { - for (NSString *key in _customDimensions.allKeys) { - NSString *value = [_customDimensions objectForKey:key]; - - NSNumberFormatter *f = [[NSNumberFormatter alloc] init]; - f.numberStyle = NSNumberFormatterDecimalStyle; - NSNumber *myKey = [f numberFromString:key]; - - /* NSLog(@"Setting tracker dimension slot %@: <%@>", key, value); */ - [tracker set:[GAIFields customDimensionForIndex:myKey.unsignedIntegerValue] - value:value]; - } - } -} - -- (void) getVar: (CDVInvokedUrlCommand*) command -{ - [self.commandDelegate runInBackground:^{ - CDVPluginResult* pluginResult = nil; - if ( ! _trackerStarted) { - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:@"Tracker not started"]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - return; - } - - id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker]; - NSString* parameterName = [command.arguments objectAtIndex:0]; - NSString* result = [tracker get:parameterName]; - - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString:result]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - }]; -} - -- (void) setVar: (CDVInvokedUrlCommand*) command -{ - [self.commandDelegate runInBackground:^{ - CDVPluginResult* pluginResult = nil; - if ( ! _trackerStarted) { - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:@"Tracker not started"]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - return; - } - - id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker]; - NSString* parameterName = [command.arguments objectAtIndex:0]; - NSString* parameter = [command.arguments objectAtIndex:1]; - [tracker set:parameterName value:parameter]; - - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - }]; -} - -- (void) dispatch: (CDVInvokedUrlCommand*) command -{ - [[GAI sharedInstance] dispatch]; -} - -- (void) debugMode: (CDVInvokedUrlCommand*) command -{ - _debugMode = true; - [[GAI sharedInstance].logger setLogLevel:kGAILogLevelVerbose]; -} - -- (void) setUserId: (CDVInvokedUrlCommand*)command -{ - CDVPluginResult* pluginResult = nil; - NSString* userId = [command.arguments objectAtIndex:0]; - - if ( ! _trackerStarted) { - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:@"Tracker not started"]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - return; - } - - id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker]; - [tracker set:@"&uid" value: userId]; - - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; -} - -- (void) setAnonymizeIp: (CDVInvokedUrlCommand*)command -{ - CDVPluginResult* pluginResult = nil; - NSString* anonymize = [command.arguments objectAtIndex:0]; - - if ( ! _trackerStarted) { - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:@"Tracker not started"]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - return; - } - - id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker]; - [tracker set:kGAIAnonymizeIp value:anonymize]; - - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; -} - -- (void) setOptOut: (CDVInvokedUrlCommand*)command -{ - CDVPluginResult* pluginResult = nil; - bool optout = [[command.arguments objectAtIndex:0] boolValue]; - - if ( ! _trackerStarted) { - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:@"Tracker not started"]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - return; - } - - [[GAI sharedInstance] setOptOut:optout]; - - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; -} - -- (void) setAppVersion: (CDVInvokedUrlCommand*)command -{ - CDVPluginResult* pluginResult = nil; - NSString* version = [command.arguments objectAtIndex:0]; - - if ( ! _trackerStarted) { - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:@"Tracker not started"]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - return; - } - - id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker]; - [tracker set:@"&av" value: version]; - - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; -} - -- (void) enableUncaughtExceptionReporting: (CDVInvokedUrlCommand*)command -{ - CDVPluginResult* pluginResult = nil; - - if ( ! _trackerStarted) { - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:@"Tracker not started"]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - return; - } - - bool enabled = [[command.arguments objectAtIndex:0] boolValue]; - [[GAI sharedInstance] setTrackUncaughtExceptions:enabled]; - - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; -} - -- (void) addCustomDimension: (CDVInvokedUrlCommand*)command -{ - CDVPluginResult* pluginResult = nil; - NSNumber* key = [command.arguments objectAtIndex:0]; - NSString* value = [command.arguments objectAtIndex:1]; - - if ( ! _customDimensions) { - _customDimensions = [[NSMutableDictionary alloc] init]; - } - - _customDimensions[key.stringValue] = value; - - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; -} - -- (void) trackMetric: (CDVInvokedUrlCommand*)command -{ - CDVPluginResult* pluginResult = nil; - - if ( ! _trackerStarted) { - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:@"Tracker not started"]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - return; - } - - [self.commandDelegate runInBackground:^{ - CDVPluginResult* pluginResult = nil; - NSNumber *key = nil; - NSString *value = nil; - - if ([command.arguments count] > 0) - key = [command.arguments objectAtIndex:0]; - - if ([command.arguments count] > 1) - value = [command.arguments objectAtIndex:1]; - - id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker]; - - [tracker set:[GAIFields customMetricForIndex:[key intValue]] value:value]; - - - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - }]; -} - -- (void) trackEvent: (CDVInvokedUrlCommand*)command -{ - CDVPluginResult* pluginResult = nil; - - if ( ! _trackerStarted) { - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:@"Tracker not started"]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - return; - } - - [self.commandDelegate runInBackground:^{ - CDVPluginResult* pluginResult = nil; - NSString *category = nil; - NSString *action = nil; - NSString *label = nil; - NSNumber *value = nil; - - if ([command.arguments count] > 0) - category = [command.arguments objectAtIndex:0]; - - if ([command.arguments count] > 1) - action = [command.arguments objectAtIndex:1]; - - if ([command.arguments count] > 2) - label = [command.arguments objectAtIndex:2]; - - if ([command.arguments count] > 3) - value = [command.arguments objectAtIndex:3]; - - bool newSession = [[command argumentAtIndex:4 withDefault:@(NO)] boolValue]; - - id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker]; - - [self addCustomDimensionsToTracker:tracker]; - - GAIDictionaryBuilder *builder = [GAIDictionaryBuilder - createEventWithCategory: category //required - action: action //required - label: label - value: value]; - if(newSession){ - [builder set:@"start" forKey:kGAISessionControl]; - } - [tracker send:[builder build]]; - - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - - }]; - -} - -- (void) trackException: (CDVInvokedUrlCommand*)command -{ - CDVPluginResult* pluginResult = nil; - - if ( ! _trackerStarted) { - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:@"Tracker not started"]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - return; - } - - [self.commandDelegate runInBackground:^{ - CDVPluginResult* pluginResult = nil; - NSString *description = nil; - NSNumber *fatal = nil; - - if ([command.arguments count] > 0) - description = [command.arguments objectAtIndex:0]; - - if ([command.arguments count] > 1) - fatal = [command.arguments objectAtIndex:1]; - - id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker]; - - [self addCustomDimensionsToTracker:tracker]; - - [tracker send:[[GAIDictionaryBuilder createScreenView] build]]; - - [tracker send:[[GAIDictionaryBuilder - createExceptionWithDescription: description - withFatal: fatal] build]]; - - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - }]; -} - -- (void) trackView: (CDVInvokedUrlCommand*)command -{ - CDVPluginResult* pluginResult = nil; - - if ( ! _trackerStarted) { - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:@"Tracker not started"]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - return; - } - - [self.commandDelegate runInBackground:^{ - CDVPluginResult* pluginResult = nil; - NSString* screenName = [command.arguments objectAtIndex:0]; - - id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker]; - [self addCustomDimensionsToTracker:tracker]; - - NSString* deepLinkUrl = [command.arguments objectAtIndex:1]; - GAIDictionaryBuilder* openParams = [[GAIDictionaryBuilder alloc] init]; - - if (deepLinkUrl && deepLinkUrl != (NSString *)[NSNull null]) { - [[openParams setCampaignParametersFromUrl:deepLinkUrl] build]; - } - - bool newSession = [[command argumentAtIndex:2 withDefault:@(NO)] boolValue]; - if(newSession){ - [openParams set:@"start" forKey:kGAISessionControl]; - } - - NSDictionary *hitParamsDict = [openParams build]; - - [tracker set:kGAIScreenName value:screenName]; - [tracker send:[[[GAIDictionaryBuilder createScreenView] setAll:hitParamsDict] build]]; - - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - }]; -} - -- (void) trackTiming: (CDVInvokedUrlCommand*)command -{ - CDVPluginResult* pluginResult = nil; - - if ( ! _trackerStarted) { - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:@"Tracker not started"]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - return; - } - - [self.commandDelegate runInBackground:^{ - CDVPluginResult* pluginResult = nil; - - NSString *category = nil; - NSNumber *intervalInMilliseconds = nil; - NSString *name = nil; - NSString *label = nil; - - if ([command.arguments count] > 0) - category = [command.arguments objectAtIndex:0]; - - if ([command.arguments count] > 1) - intervalInMilliseconds = [command.arguments objectAtIndex:1]; - - if ([command.arguments count] > 2) - name = [command.arguments objectAtIndex:2]; - - if ([command.arguments count] > 3) - label = [command.arguments objectAtIndex:3]; - - id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker]; - - [self addCustomDimensionsToTracker:tracker]; - - [tracker send:[[GAIDictionaryBuilder - createTimingWithCategory: category //required - interval: intervalInMilliseconds //required - name: name - label: label] build]]; - - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - }]; -} - -- (void) addTransaction: (CDVInvokedUrlCommand*)command -{ - CDVPluginResult* pluginResult = nil; - - if ( ! _trackerStarted) { - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:@"Tracker not started"]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - return; - } - - [self.commandDelegate runInBackground:^{ - CDVPluginResult* pluginResult = nil; - - NSString *transactionId = nil; - NSString *affiliation = nil; - NSNumber *revenue = nil; - NSNumber *tax = nil; - NSNumber *shipping = nil; - NSString *currencyCode = nil; - - - if ([command.arguments count] > 0) - transactionId = [command.arguments objectAtIndex:0]; - - if ([command.arguments count] > 1) - affiliation = [command.arguments objectAtIndex:1]; - - if ([command.arguments count] > 2) - revenue = [command.arguments objectAtIndex:2]; - - if ([command.arguments count] > 3) - tax = [command.arguments objectAtIndex:3]; - - if ([command.arguments count] > 4) - shipping = [command.arguments objectAtIndex:4]; - - if ([command.arguments count] > 5) - currencyCode = [command.arguments objectAtIndex:5]; - - id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker]; - - - [tracker send:[[GAIDictionaryBuilder createTransactionWithId:transactionId // (NSString) Transaction ID - affiliation:affiliation // (NSString) Affiliation - revenue:revenue // (NSNumber) Order revenue (including tax and shipping) - tax:tax // (NSNumber) Tax - shipping:shipping // (NSNumber) Shipping - currencyCode:currencyCode] build]]; // (NSString) Currency code - - - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - }]; -} - - - -- (void) addTransactionItem: (CDVInvokedUrlCommand*)command -{ - CDVPluginResult* pluginResult = nil; - - if ( ! _trackerStarted) { - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:@"Tracker not started"]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - return; - } - - [self.commandDelegate runInBackground:^{ - - CDVPluginResult* pluginResult = nil; - NSString *transactionId = nil; - NSString *name = nil; - NSString *sku = nil; - NSString *category = nil; - NSNumber *price = nil; - NSNumber *quantity = nil; - NSString *currencyCode = nil; - - - if ([command.arguments count] > 0) - transactionId = [command.arguments objectAtIndex:0]; - - if ([command.arguments count] > 1) - name = [command.arguments objectAtIndex:1]; - - if ([command.arguments count] > 2) - sku = [command.arguments objectAtIndex:2]; - - if ([command.arguments count] > 3) - category = [command.arguments objectAtIndex:3]; - - if ([command.arguments count] > 4) - price = [command.arguments objectAtIndex:4]; - - if ([command.arguments count] > 5) - quantity = [command.arguments objectAtIndex:5]; - - if ([command.arguments count] > 6) - currencyCode = [command.arguments objectAtIndex:6]; - - id<GAITracker> tracker = [[GAI sharedInstance] defaultTracker]; - - - [tracker send:[[GAIDictionaryBuilder createItemWithTransactionId:transactionId // (NSString) Transaction ID - name:name // (NSString) Product Name - sku:sku // (NSString) Product SKU - category:category // (NSString) Product category - price:price // (NSNumber) Product price - quantity:quantity // (NSNumber) Product quantity - currencyCode:currencyCode] build]]; // (NSString) Currency code - - - pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK]; - [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; - }]; -} - -@end diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/libAdIdAccess.a b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/libAdIdAccess.a Binary files differdeleted file mode 100644 index 9813beaf..00000000 --- a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/libAdIdAccess.a +++ /dev/null diff --git a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/libGoogleAnalyticsServices.a b/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/libGoogleAnalyticsServices.a Binary files differdeleted file mode 100644 index 45ca87e8..00000000 --- a/StoneIsland/platforms/ios/Stone Island/Plugins/cordova-plugin-google-analytics/libGoogleAnalyticsServices.a +++ /dev/null diff --git a/StoneIsland/platforms/ios/Stone Island/Resources/GoogleService-Info.plist b/StoneIsland/platforms/ios/Stone Island/Resources/GoogleService-Info.plist new file mode 100644 index 00000000..5516ebf3 --- /dev/null +++ b/StoneIsland/platforms/ios/Stone Island/Resources/GoogleService-Info.plist @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> +</dict> +</plist>
\ No newline at end of file diff --git a/StoneIsland/platforms/ios/Stone Island/config.xml b/StoneIsland/platforms/ios/Stone Island/config.xml index 409c6a57..d955ecf8 100755 --- a/StoneIsland/platforms/ios/Stone Island/config.xml +++ b/StoneIsland/platforms/ios/Stone Island/config.xml @@ -47,9 +47,6 @@ <feature name="PushNotification"> <param name="ios-package" value="PushPlugin" /> </feature> - <feature name="UniversalAnalytics"> - <param name="ios-package" value="UniversalAnalyticsPlugin" /> - </feature> <feature name="StatusBar"> <param name="ios-package" value="CDVStatusBar" /> <param name="onload" value="true" /> @@ -93,4 +90,8 @@ <preference name="SplashMaintainAspectRatio" value="true" /> <preference name="ShowSplashScreenSpinner" value="false" /> <preference name="AutoHideSplashScreen" value="false" /> + <feature name="FirebasePlugin"> + <param name="ios-package" value="FirebasePlugin" /> + <param name="onload" value="true" /> + </feature> </widget> diff --git a/StoneIsland/platforms/ios/frameworks.json b/StoneIsland/platforms/ios/frameworks.json index dc881b1d..6cb97880 100644 --- a/StoneIsland/platforms/ios/frameworks.json +++ b/StoneIsland/platforms/ios/frameworks.json @@ -2,14 +2,10 @@ "AudioToolbox.framework": 1, "CoreLocation.framework": 1, "Social.framework": 1, - "SystemConfiguration.framework": 2, + "SystemConfiguration.framework": 1, "CoreTelephony.framework": 1, "MessageUI.framework": 1, "AddressBook.framework": 1, "libsqlite3.tbd": 1, - "libz.tbd": 1, - "CoreData.framework": 1, - "AdSupport.framework": 1, - "libz.dylib": 1, - "libsqlite3.dylib": 1 + "libz.tbd": 1 }
\ No newline at end of file diff --git a/StoneIsland/platforms/ios/ios.json b/StoneIsland/platforms/ios/ios.json index 741c049c..9596fcd6 100644 --- a/StoneIsland/platforms/ios/ios.json +++ b/StoneIsland/platforms/ios/ios.json @@ -49,10 +49,6 @@ "count": 1 }, { - "xml": "<feature name=\"UniversalAnalytics\"><param name=\"ios-package\" value=\"UniversalAnalyticsPlugin\" /></feature>", - "count": 1 - }, - { "xml": "<feature name=\"StatusBar\"><param name=\"ios-package\" value=\"CDVStatusBar\" /><param name=\"onload\" value=\"true\" /></feature>", "count": 1 }, @@ -63,6 +59,10 @@ { "xml": "<preference name=\"StatusBarStyle\" value=\"lightcontent\" />", "count": 1 + }, + { + "xml": "<feature name=\"FirebasePlugin\"><param name=\"ios-package\" value=\"FirebasePlugin\" /><param name=\"onload\" value=\"true\" /></feature>", + "count": 1 } ] } @@ -120,6 +120,26 @@ } ] } + }, + "*/Entitlements-Debug.plist": { + "parents": { + "aps-environment": [ + { + "xml": "<string>development</string>", + "count": 1 + } + ] + } + }, + "*/Entitlements-Release.plist": { + "parents": { + "aps-environment": [ + { + "xml": "<string>production</string>", + "count": 1 + } + ] + } } } }, @@ -165,10 +185,10 @@ "SENDER_ID": "XXXXXXX", "PACKAGE_NAME": "us.okfoc.stoneisland" }, - "cordova-plugin-google-analytics": { + "cordova-plugin-statusbar": { "PACKAGE_NAME": "us.okfoc.stoneisland" }, - "cordova-plugin-statusbar": { + "cordova-plugin-firebase": { "PACKAGE_NAME": "us.okfoc.stoneisland" } }, @@ -306,21 +326,20 @@ ] }, { - "id": "cordova-plugin-google-analytics.UniversalAnalytics", - "file": "plugins/cordova-plugin-google-analytics/www/analytics.js", - "pluginId": "cordova-plugin-google-analytics", - "clobbers": [ - "analytics", - "ga" - ] - }, - { "id": "cordova-plugin-statusbar.statusbar", "file": "plugins/cordova-plugin-statusbar/www/statusbar.js", "pluginId": "cordova-plugin-statusbar", "clobbers": [ "window.StatusBar" ] + }, + { + "id": "cordova-plugin-firebase.FirebasePlugin", + "file": "plugins/cordova-plugin-firebase/www/firebase.js", + "pluginId": "cordova-plugin-firebase", + "clobbers": [ + "FirebasePlugin" + ] } ], "plugin_metadata": { @@ -337,7 +356,7 @@ "cordova-plugin-x-socialsharing": "5.1.3", "ionic-plugin-keyboard": "2.2.1", "phonegap-plugin-push": "1.9.2", - "cordova-plugin-google-analytics": "1.8.3", - "cordova-plugin-statusbar": "2.2.3" + "cordova-plugin-statusbar": "2.2.3", + "cordova-plugin-firebase": "0.1.24" } }
\ No newline at end of file diff --git a/StoneIsland/platforms/ios/platform_www/cordova_plugins.js b/StoneIsland/platforms/ios/platform_www/cordova_plugins.js index e80f5bbb..e39888f0 100644 --- a/StoneIsland/platforms/ios/platform_www/cordova_plugins.js +++ b/StoneIsland/platforms/ios/platform_www/cordova_plugins.js @@ -132,21 +132,20 @@ module.exports = [ ] }, { - "id": "cordova-plugin-google-analytics.UniversalAnalytics", - "file": "plugins/cordova-plugin-google-analytics/www/analytics.js", - "pluginId": "cordova-plugin-google-analytics", - "clobbers": [ - "analytics", - "ga" - ] - }, - { "id": "cordova-plugin-statusbar.statusbar", "file": "plugins/cordova-plugin-statusbar/www/statusbar.js", "pluginId": "cordova-plugin-statusbar", "clobbers": [ "window.StatusBar" ] + }, + { + "id": "cordova-plugin-firebase.FirebasePlugin", + "file": "plugins/cordova-plugin-firebase/www/firebase.js", + "pluginId": "cordova-plugin-firebase", + "clobbers": [ + "FirebasePlugin" + ] } ]; module.exports.metadata = @@ -165,8 +164,8 @@ module.exports.metadata = "cordova-plugin-x-socialsharing": "5.1.3", "ionic-plugin-keyboard": "2.2.1", "phonegap-plugin-push": "1.9.2", - "cordova-plugin-google-analytics": "1.8.3", - "cordova-plugin-statusbar": "2.2.3" + "cordova-plugin-statusbar": "2.2.3", + "cordova-plugin-firebase": "0.1.24" }; // BOTTOM OF METADATA });
\ No newline at end of file diff --git a/StoneIsland/platforms/ios/platform_www/plugins/cordova-plugin-firebase/www/firebase.js b/StoneIsland/platforms/ios/platform_www/plugins/cordova-plugin-firebase/www/firebase.js new file mode 100644 index 00000000..e1e423d1 --- /dev/null +++ b/StoneIsland/platforms/ios/platform_www/plugins/cordova-plugin-firebase/www/firebase.js @@ -0,0 +1,124 @@ +cordova.define("cordova-plugin-firebase.FirebasePlugin", function(require, exports, module) { +var exec = require('cordova/exec'); + +exports.getInstanceId = function(success, error) { + exec(success, error, "FirebasePlugin", "getInstanceId", []); +}; + +exports.getToken = function(success, error) { + exec(success, error, "FirebasePlugin", "getToken", []); +}; + +exports.onNotificationOpen = function(success, error) { + exec(success, error, "FirebasePlugin", "onNotificationOpen", []); +}; + +exports.onTokenRefresh = function(success, error) { + exec(success, error, "FirebasePlugin", "onTokenRefresh", []); +}; + +exports.grantPermission = function(success, error) { + exec(success, error, "FirebasePlugin", "grantPermission", []); +}; + +exports.hasPermission = function(success, error) { + exec(success, error, "FirebasePlugin", "hasPermission", []); +}; + +exports.setBadgeNumber = function(number, success, error) { + exec(success, error, "FirebasePlugin", "setBadgeNumber", [number]); +}; + +exports.getBadgeNumber = function(success, error) { + exec(success, error, "FirebasePlugin", "getBadgeNumber", []); +}; + +exports.subscribe = function(topic, success, error) { + exec(success, error, "FirebasePlugin", "subscribe", [topic]); +}; + +exports.unsubscribe = function(topic, success, error) { + exec(success, error, "FirebasePlugin", "unsubscribe", [topic]); +}; + +exports.unregister = function(success, error) { + exec(success, error, "FirebasePlugin", "unregister", []); +}; + +exports.logEvent = function(name, params, success, error) { + exec(success, error, "FirebasePlugin", "logEvent", [name, params]); +}; + +exports.logError = function(message, success, error) { + exec(success, error, "FirebasePlugin", "logError", [message]); +}; + +exports.setScreenName = function(name, success, error) { + exec(success, error, "FirebasePlugin", "setScreenName", [name]); +}; + +exports.setUserId = function(id, success, error) { + exec(success, error, "FirebasePlugin", "setUserId", [id]); +}; + +exports.setUserProperty = function(name, value, success, error) { + exec(success, error, "FirebasePlugin", "setUserProperty", [name, value]); +}; + +exports.activateFetched = function (success, error) { + exec(success, error, "FirebasePlugin", "activateFetched", []); +}; + +exports.fetch = function (cacheExpirationSeconds, success, error) { + var args = []; + if (typeof cacheExpirationSeconds === 'number') { + args.push(cacheExpirationSeconds); + } else { + error = success; + success = cacheExpirationSeconds; + } + exec(success, error, "FirebasePlugin", "fetch", args); +}; + +exports.getByteArray = function (key, namespace, success, error) { + var args = [key]; + if (typeof namespace === 'string') { + args.push(namespace); + } else { + error = success; + success = namespace; + } + exec(success, error, "FirebasePlugin", "getByteArray", args); +}; + +exports.getValue = function (key, namespace, success, error) { + var args = [key]; + if (typeof namespace === 'string') { + args.push(namespace); + } else { + error = success; + success = namespace; + } + exec(success, error, "FirebasePlugin", "getValue", args); +}; + +exports.getInfo = function (success, error) { + exec(success, error, "FirebasePlugin", "getInfo", []); +}; + +exports.setConfigSettings = function (settings, success, error) { + exec(success, error, "FirebasePlugin", "setConfigSettings", [settings]); +}; + +exports.setDefaults = function (defaults, namespace, success, error) { + var args = [defaults]; + if (typeof namespace === 'string') { + args.push(namespace); + } else { + error = success; + success = namespace; + } + exec(success, error, "FirebasePlugin", "setDefaults", args); +}; + +}); diff --git a/StoneIsland/platforms/ios/platform_www/plugins/cordova-plugin-google-analytics/www/analytics.js b/StoneIsland/platforms/ios/platform_www/plugins/cordova-plugin-google-analytics/www/analytics.js deleted file mode 100644 index b46b19ea..00000000 --- a/StoneIsland/platforms/ios/platform_www/plugins/cordova-plugin-google-analytics/www/analytics.js +++ /dev/null @@ -1,130 +0,0 @@ -cordova.define("cordova-plugin-google-analytics.UniversalAnalytics", function(require, exports, module) { -function UniversalAnalyticsPlugin() {} - -UniversalAnalyticsPlugin.prototype.startTrackerWithId = function(id, dispatchPeriod, success, error) { - if (typeof dispatchPeriod === 'undefined' || dispatchPeriod === null) { - dispatchPeriod = 30; - } else if (typeof dispatchPeriod === 'function' && typeof error === 'undefined') { - // Called without dispatchPeriod but with a callback. - // Looks like the original API was used so shift parameters over to remain compatible. - error = success; - success = dispatchPeriod; - dispatchPeriod = 30; - } - cordova.exec(success, error, 'UniversalAnalytics', 'startTrackerWithId', [id, dispatchPeriod]); -}; - -UniversalAnalyticsPlugin.prototype.setAllowIDFACollection = function(enable, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'setAllowIDFACollection', [enable]); -}; - -UniversalAnalyticsPlugin.prototype.setUserId = function(id, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'setUserId', [id]); -}; - -UniversalAnalyticsPlugin.prototype.setAnonymizeIp = function(anonymize, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'setAnonymizeIp', [anonymize]); -}; - -UniversalAnalyticsPlugin.prototype.setOptOut = function(optout, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'setOptOut', [optout]); -}; - -UniversalAnalyticsPlugin.prototype.setAppVersion = function(version, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'setAppVersion', [version]); -}; - -UniversalAnalyticsPlugin.prototype.getVar = function(variable, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'getVar', [variable]); -}; - -UniversalAnalyticsPlugin.prototype.setVar = function(variable, value, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'setVar', [variable, value]); -}; - -UniversalAnalyticsPlugin.prototype.dispatch = function(success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'dispatch', []); -}; - -/* enables verbose logging */ -UniversalAnalyticsPlugin.prototype.debugMode = function(success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'debugMode', []); -}; - -UniversalAnalyticsPlugin.prototype.trackMetric = function(key, value, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'trackMetric', [key, value]); -}; - -UniversalAnalyticsPlugin.prototype.trackView = function(screen, campaignUrl, newSession, success, error) { - if (typeof campaignUrl === 'undefined' || campaignUrl === null) { - campaignUrl = ''; - } - - if (typeof newSession === 'undefined' || newSession === null) { - newSession = false; - } - - cordova.exec(success, error, 'UniversalAnalytics', 'trackView', [screen, campaignUrl, newSession]); -}; - -UniversalAnalyticsPlugin.prototype.addCustomDimension = function(key, value, success, error) { - if (typeof key !== "number") { - throw Error("key must be a valid integer not '" + typeof key + "'"); - } - cordova.exec(success, error, 'UniversalAnalytics', 'addCustomDimension', [key, value]); -}; - -UniversalAnalyticsPlugin.prototype.trackEvent = function(category, action, label, value, newSession, success, error) { - if (typeof label === 'undefined' || label === null) { - label = ''; - } - if (typeof value === 'undefined' || value === null) { - value = 0; - } - - if (typeof newSession === 'undefined' || newSession === null) { - newSession = false; - } - - cordova.exec(success, error, 'UniversalAnalytics', 'trackEvent', [category, action, label, value, newSession]); -}; - -/** - * https://developers.google.com/analytics/devguides/collection/android/v3/exceptions - */ -UniversalAnalyticsPlugin.prototype.trackException = function(description, fatal, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'trackException', [description, fatal]); -}; - -UniversalAnalyticsPlugin.prototype.trackTiming = function(category, intervalInMilliseconds, name, label, success, error) { - if (typeof intervalInMilliseconds === 'undefined' || intervalInMilliseconds === null) { - intervalInMilliseconds = 0; - } - if (typeof name === 'undefined' || name === null) { - name = ''; - } - if (typeof label === 'undefined' || label === null) { - label = ''; - } - - cordova.exec(success, error, 'UniversalAnalytics', 'trackTiming', [category, intervalInMilliseconds, name, label]); -}; - -/* Google Analytics e-Commerce Tracking */ -/* https://developers.google.com/analytics/devguides/collection/analyticsjs/ecommerce */ -UniversalAnalyticsPlugin.prototype.addTransaction = function(transactionId, affiliation, revenue, tax, shipping, currencyCode, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'addTransaction', [transactionId, affiliation, revenue, tax, shipping, currencyCode]); -}; - -UniversalAnalyticsPlugin.prototype.addTransactionItem = function(transactionId, name ,sku, category, price, quantity, currencyCode, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'addTransactionItem', [transactionId, name ,sku, category, price, quantity, currencyCode]); -}; - -/* automatic uncaught exception tracking */ -UniversalAnalyticsPlugin.prototype.enableUncaughtExceptionReporting = function (enable, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'enableUncaughtExceptionReporting', [enable]); -}; - -module.exports = new UniversalAnalyticsPlugin(); - -}); diff --git a/StoneIsland/platforms/ios/www/cordova_plugins.js b/StoneIsland/platforms/ios/www/cordova_plugins.js index e80f5bbb..e39888f0 100644 --- a/StoneIsland/platforms/ios/www/cordova_plugins.js +++ b/StoneIsland/platforms/ios/www/cordova_plugins.js @@ -132,21 +132,20 @@ module.exports = [ ] }, { - "id": "cordova-plugin-google-analytics.UniversalAnalytics", - "file": "plugins/cordova-plugin-google-analytics/www/analytics.js", - "pluginId": "cordova-plugin-google-analytics", - "clobbers": [ - "analytics", - "ga" - ] - }, - { "id": "cordova-plugin-statusbar.statusbar", "file": "plugins/cordova-plugin-statusbar/www/statusbar.js", "pluginId": "cordova-plugin-statusbar", "clobbers": [ "window.StatusBar" ] + }, + { + "id": "cordova-plugin-firebase.FirebasePlugin", + "file": "plugins/cordova-plugin-firebase/www/firebase.js", + "pluginId": "cordova-plugin-firebase", + "clobbers": [ + "FirebasePlugin" + ] } ]; module.exports.metadata = @@ -165,8 +164,8 @@ module.exports.metadata = "cordova-plugin-x-socialsharing": "5.1.3", "ionic-plugin-keyboard": "2.2.1", "phonegap-plugin-push": "1.9.2", - "cordova-plugin-google-analytics": "1.8.3", - "cordova-plugin-statusbar": "2.2.3" + "cordova-plugin-statusbar": "2.2.3", + "cordova-plugin-firebase": "0.1.24" }; // BOTTOM OF METADATA });
\ No newline at end of file diff --git a/StoneIsland/platforms/ios/www/plugins/cordova-plugin-firebase/www/firebase.js b/StoneIsland/platforms/ios/www/plugins/cordova-plugin-firebase/www/firebase.js new file mode 100644 index 00000000..e1e423d1 --- /dev/null +++ b/StoneIsland/platforms/ios/www/plugins/cordova-plugin-firebase/www/firebase.js @@ -0,0 +1,124 @@ +cordova.define("cordova-plugin-firebase.FirebasePlugin", function(require, exports, module) { +var exec = require('cordova/exec'); + +exports.getInstanceId = function(success, error) { + exec(success, error, "FirebasePlugin", "getInstanceId", []); +}; + +exports.getToken = function(success, error) { + exec(success, error, "FirebasePlugin", "getToken", []); +}; + +exports.onNotificationOpen = function(success, error) { + exec(success, error, "FirebasePlugin", "onNotificationOpen", []); +}; + +exports.onTokenRefresh = function(success, error) { + exec(success, error, "FirebasePlugin", "onTokenRefresh", []); +}; + +exports.grantPermission = function(success, error) { + exec(success, error, "FirebasePlugin", "grantPermission", []); +}; + +exports.hasPermission = function(success, error) { + exec(success, error, "FirebasePlugin", "hasPermission", []); +}; + +exports.setBadgeNumber = function(number, success, error) { + exec(success, error, "FirebasePlugin", "setBadgeNumber", [number]); +}; + +exports.getBadgeNumber = function(success, error) { + exec(success, error, "FirebasePlugin", "getBadgeNumber", []); +}; + +exports.subscribe = function(topic, success, error) { + exec(success, error, "FirebasePlugin", "subscribe", [topic]); +}; + +exports.unsubscribe = function(topic, success, error) { + exec(success, error, "FirebasePlugin", "unsubscribe", [topic]); +}; + +exports.unregister = function(success, error) { + exec(success, error, "FirebasePlugin", "unregister", []); +}; + +exports.logEvent = function(name, params, success, error) { + exec(success, error, "FirebasePlugin", "logEvent", [name, params]); +}; + +exports.logError = function(message, success, error) { + exec(success, error, "FirebasePlugin", "logError", [message]); +}; + +exports.setScreenName = function(name, success, error) { + exec(success, error, "FirebasePlugin", "setScreenName", [name]); +}; + +exports.setUserId = function(id, success, error) { + exec(success, error, "FirebasePlugin", "setUserId", [id]); +}; + +exports.setUserProperty = function(name, value, success, error) { + exec(success, error, "FirebasePlugin", "setUserProperty", [name, value]); +}; + +exports.activateFetched = function (success, error) { + exec(success, error, "FirebasePlugin", "activateFetched", []); +}; + +exports.fetch = function (cacheExpirationSeconds, success, error) { + var args = []; + if (typeof cacheExpirationSeconds === 'number') { + args.push(cacheExpirationSeconds); + } else { + error = success; + success = cacheExpirationSeconds; + } + exec(success, error, "FirebasePlugin", "fetch", args); +}; + +exports.getByteArray = function (key, namespace, success, error) { + var args = [key]; + if (typeof namespace === 'string') { + args.push(namespace); + } else { + error = success; + success = namespace; + } + exec(success, error, "FirebasePlugin", "getByteArray", args); +}; + +exports.getValue = function (key, namespace, success, error) { + var args = [key]; + if (typeof namespace === 'string') { + args.push(namespace); + } else { + error = success; + success = namespace; + } + exec(success, error, "FirebasePlugin", "getValue", args); +}; + +exports.getInfo = function (success, error) { + exec(success, error, "FirebasePlugin", "getInfo", []); +}; + +exports.setConfigSettings = function (settings, success, error) { + exec(success, error, "FirebasePlugin", "setConfigSettings", [settings]); +}; + +exports.setDefaults = function (defaults, namespace, success, error) { + var args = [defaults]; + if (typeof namespace === 'string') { + args.push(namespace); + } else { + error = success; + success = namespace; + } + exec(success, error, "FirebasePlugin", "setDefaults", args); +}; + +}); diff --git a/StoneIsland/platforms/ios/www/plugins/cordova-plugin-google-analytics/www/analytics.js b/StoneIsland/platforms/ios/www/plugins/cordova-plugin-google-analytics/www/analytics.js deleted file mode 100644 index b46b19ea..00000000 --- a/StoneIsland/platforms/ios/www/plugins/cordova-plugin-google-analytics/www/analytics.js +++ /dev/null @@ -1,130 +0,0 @@ -cordova.define("cordova-plugin-google-analytics.UniversalAnalytics", function(require, exports, module) { -function UniversalAnalyticsPlugin() {} - -UniversalAnalyticsPlugin.prototype.startTrackerWithId = function(id, dispatchPeriod, success, error) { - if (typeof dispatchPeriod === 'undefined' || dispatchPeriod === null) { - dispatchPeriod = 30; - } else if (typeof dispatchPeriod === 'function' && typeof error === 'undefined') { - // Called without dispatchPeriod but with a callback. - // Looks like the original API was used so shift parameters over to remain compatible. - error = success; - success = dispatchPeriod; - dispatchPeriod = 30; - } - cordova.exec(success, error, 'UniversalAnalytics', 'startTrackerWithId', [id, dispatchPeriod]); -}; - -UniversalAnalyticsPlugin.prototype.setAllowIDFACollection = function(enable, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'setAllowIDFACollection', [enable]); -}; - -UniversalAnalyticsPlugin.prototype.setUserId = function(id, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'setUserId', [id]); -}; - -UniversalAnalyticsPlugin.prototype.setAnonymizeIp = function(anonymize, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'setAnonymizeIp', [anonymize]); -}; - -UniversalAnalyticsPlugin.prototype.setOptOut = function(optout, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'setOptOut', [optout]); -}; - -UniversalAnalyticsPlugin.prototype.setAppVersion = function(version, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'setAppVersion', [version]); -}; - -UniversalAnalyticsPlugin.prototype.getVar = function(variable, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'getVar', [variable]); -}; - -UniversalAnalyticsPlugin.prototype.setVar = function(variable, value, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'setVar', [variable, value]); -}; - -UniversalAnalyticsPlugin.prototype.dispatch = function(success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'dispatch', []); -}; - -/* enables verbose logging */ -UniversalAnalyticsPlugin.prototype.debugMode = function(success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'debugMode', []); -}; - -UniversalAnalyticsPlugin.prototype.trackMetric = function(key, value, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'trackMetric', [key, value]); -}; - -UniversalAnalyticsPlugin.prototype.trackView = function(screen, campaignUrl, newSession, success, error) { - if (typeof campaignUrl === 'undefined' || campaignUrl === null) { - campaignUrl = ''; - } - - if (typeof newSession === 'undefined' || newSession === null) { - newSession = false; - } - - cordova.exec(success, error, 'UniversalAnalytics', 'trackView', [screen, campaignUrl, newSession]); -}; - -UniversalAnalyticsPlugin.prototype.addCustomDimension = function(key, value, success, error) { - if (typeof key !== "number") { - throw Error("key must be a valid integer not '" + typeof key + "'"); - } - cordova.exec(success, error, 'UniversalAnalytics', 'addCustomDimension', [key, value]); -}; - -UniversalAnalyticsPlugin.prototype.trackEvent = function(category, action, label, value, newSession, success, error) { - if (typeof label === 'undefined' || label === null) { - label = ''; - } - if (typeof value === 'undefined' || value === null) { - value = 0; - } - - if (typeof newSession === 'undefined' || newSession === null) { - newSession = false; - } - - cordova.exec(success, error, 'UniversalAnalytics', 'trackEvent', [category, action, label, value, newSession]); -}; - -/** - * https://developers.google.com/analytics/devguides/collection/android/v3/exceptions - */ -UniversalAnalyticsPlugin.prototype.trackException = function(description, fatal, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'trackException', [description, fatal]); -}; - -UniversalAnalyticsPlugin.prototype.trackTiming = function(category, intervalInMilliseconds, name, label, success, error) { - if (typeof intervalInMilliseconds === 'undefined' || intervalInMilliseconds === null) { - intervalInMilliseconds = 0; - } - if (typeof name === 'undefined' || name === null) { - name = ''; - } - if (typeof label === 'undefined' || label === null) { - label = ''; - } - - cordova.exec(success, error, 'UniversalAnalytics', 'trackTiming', [category, intervalInMilliseconds, name, label]); -}; - -/* Google Analytics e-Commerce Tracking */ -/* https://developers.google.com/analytics/devguides/collection/analyticsjs/ecommerce */ -UniversalAnalyticsPlugin.prototype.addTransaction = function(transactionId, affiliation, revenue, tax, shipping, currencyCode, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'addTransaction', [transactionId, affiliation, revenue, tax, shipping, currencyCode]); -}; - -UniversalAnalyticsPlugin.prototype.addTransactionItem = function(transactionId, name ,sku, category, price, quantity, currencyCode, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'addTransactionItem', [transactionId, name ,sku, category, price, quantity, currencyCode]); -}; - -/* automatic uncaught exception tracking */ -UniversalAnalyticsPlugin.prototype.enableUncaughtExceptionReporting = function (enable, success, error) { - cordova.exec(success, error, 'UniversalAnalytics', 'enableUncaughtExceptionReporting', [enable]); -}; - -module.exports = new UniversalAnalyticsPlugin(); - -}); |
